@font-face{font-family:"Titillium Web";src:url("/assets/fonts/titillium-web-400.ttf") format("truetype");font-weight:400}@font-face{font-family:"Titillium Web";src:url("/assets/fonts/titillium-web-700.ttf") format("truetype");font-weight:700}*{box-sizing:border-box}body{margin:0;background:#f6f8fb;color:#1f2933;font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.5}.admin-shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.sidebar{background:#17364a;color:#fff;padding:24px 18px;display:flex;flex-direction:column}.sidebar .brand{color:#fff;font-size:19px;font-weight:700;line-height:1.2;margin:0 0 22px;padding:0}.sidebar nav{display:grid;gap:2px}.sidebar a{border-radius:4px;color:#d9edf8;display:block;padding:9px 10px;text-decoration:none}.sidebar a:hover,.sidebar a.active{background:#244d65;color:#fff}.staff-identity{border-top:1px solid #31566c;display:grid;gap:2px;margin-top:auto;padding:18px 10px 0}.staff-identity span{color:#b9d3e1;font-size:12px;overflow-wrap:anywhere}.main{min-width:0;padding:28px}.topline{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.topline h2{font-size:24px;margin:0}.actions,.filters{display:flex;flex-wrap:wrap;gap:8px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}.card,.panel{background:#fff;border:1px solid #d9e2ec;border-radius:6px;padding:16px}.metric{font-size:26px;font-weight:700;margin-top:4px}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #d9e2ec}.table th,.table td{border-bottom:1px solid #e7eef5;padding:10px;text-align:left;vertical-align:top}.table th{background:#edf3f8;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.table form{display:inline}.badge{background:#e7eef5;border-radius:999px;color:#243b53;display:inline-block;font-size:12px;padding:3px 9px}.badge-new,.badge-draft{background:#ffe8d9;color:#8a3a00}.badge-pdf_generated,.badge-active,.badge-generated{background:#d9f3e6;color:#075c36}.badge-viewed{background:#e1efff;color:#174a7c}.badge-archived,.badge-suspended,.badge-deleted,.badge-inactive{background:#eceff3;color:#59636e}.button{background:#bc0a00;border:1px solid #bc0a00;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font:inherit;padding:8px 12px;text-decoration:none}.button:hover{background:#990800}.button.secondary{background:#fff;color:#9f0a02}.button.secondary:hover{background:#fff5f4}.button.danger{background:#fff;border-color:#b42318;color:#b42318}.button.small{font-size:12px;padding:5px 8px}.login{align-items:center;display:flex;justify-content:center;min-height:100vh}.login form,.access-message{background:#fff;border:1px solid #d9e2ec;border-radius:6px;padding:26px;width:min(400px,calc(100vw - 32px))}.field{margin-bottom:14px}.field label,.field-label{display:block;font-weight:700;margin-bottom:5px}.field input,.field select,.field textarea{border:1px solid #9fb3c8;border-radius:4px;font:inherit;padding:9px 10px;width:100%}.field textarea{min-height:92px;resize:vertical}.field small{color:#627d98;display:block;margin-top:4px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.form-grid .span-2{grid-column:1/-1}.error,.notice{border:1px solid;margin-bottom:16px;padding:10px 12px}.error,.notice-error{background:#ffe8e8;border-color:#ffbaba;color:#8a0000}.notice-success{background:#e4f7ec;border-color:#9bd8b5;color:#075c36}.notice-info{background:#e8f2ff;border-color:#abcdf4;color:#174a7c}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pre{background:#101923;color:#d9e8f0;max-height:460px;overflow:auto;padding:14px;white-space:pre-wrap}.timeline{background:#fff;border:1px solid #d9e2ec;border-radius:6px;padding:10px 16px}.timeline-item{border-bottom:1px solid #e7eef5;padding:10px 0}.muted{color:#627d98}.filters{margin-bottom:16px}.permission-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.permission-group{border:1px solid #d9e2ec;border-radius:5px;padding:12px}.permission-group h3{font-size:15px;margin:0 0 8px}.permission-option{align-items:flex-start;display:grid;grid-template-columns:20px 1fr;gap:7px;margin:9px 0}.permission-option input{margin-top:4px}.permission-option span{display:block}.permission-option small{color:#627d98;display:block}.banner-preview{background:#fff;border:1px solid #bcccdc;display:grid;grid-template-columns:1fr 1fr;min-height:300px;overflow:hidden}.banner-preview-media{background:#edf3f8 center/cover no-repeat;min-height:300px}.banner-preview-copy{align-self:center;padding:30px}.banner-preview-copy h3{margin:0 0 12px;white-space:pre-line}.banner-preview-copy h4{margin:0 0 12px;white-space:pre-line}.banner-preview-copy p{white-space:pre-line}.banner-thumbnail{height:58px;object-fit:cover;width:100px}.inline-check{align-items:center;display:flex;gap:8px;margin:8px 0 16px}.inline-check input{width:auto}.audit-json{max-width:360px;white-space:pre-wrap;word-break:break-word}@media(max-width:900px){.admin-shell{grid-template-columns:1fr}.sidebar{position:static}.staff-identity{margin-top:18px}.cards,.detail-grid,.permission-groups,.form-grid,.banner-preview{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.main{padding:20px}.banner-preview-media{min-height:220px}}

.number-suffix{align-items:center;display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px}.number-suffix span{color:#627d98}.reminder-settings-form{max-width:760px}.tag-paths{display:block;max-width:520px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ad-tag-form{max-width:980px}.tag-page-heading{align-items:end;display:flex;gap:18px;justify-content:space-between;margin-top:20px}.tag-page-heading h3,.tag-page-heading p{margin:0}.tag-page-heading input{border:1px solid #9fb3c8;border-radius:4px;font:inherit;max-width:280px;padding:9px 10px;width:100%}.tag-all-pages{background:#edf3f8;border:1px solid #cbd8e2;padding:12px}.tag-page-list{border:1px solid #d9e2ec;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:18px;max-height:480px;overflow:auto;padding:10px 14px}.tag-page-list .permission-option{border-bottom:1px solid #edf1f5;padding-bottom:8px}@media(max-width:900px){.number-suffix{grid-template-columns:90px minmax(0,1fr)}.tag-page-heading{align-items:stretch;flex-direction:column}.tag-page-list{grid-template-columns:1fr}}