:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172b3d;background:#f4f6f8;font-size:15px;line-height:1.5;--accent:#a9430b;--danger:#ac2424;--line:#d8e0e7;--muted:#526575}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,summary,textarea{outline-offset:3px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid #1672b9}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}img{max-width:100%}h1,h2,h3,p{margin:0 0 .8rem}h1{font-size:clamp(1.65rem,3vw,2.15rem);line-height:1.2}h2{font-size:1.2rem}h3{font-size:1rem}small,.muted{color:var(--muted)}small{display:block}.app-shell{display:grid;grid-template-columns:224px minmax(0,1fr);min-height:100dvh}.sidebar{background:#14202d;color:#e9eef4;padding:28px 18px;display:flex;flex-direction:column;gap:28px}.brand{display:block;background:white;border-radius:8px;padding:10px 14px}.brand img{display:block;max-height:76px;margin:auto}nav{display:grid;gap:5px}nav a{padding:11px 12px;border-radius:6px;color:#e9eef4}nav a:hover{background:#243c50}nav a[aria-current=page]{background:#fff;color:#14202d;font-weight:700}.account{margin-top:auto;border-top:1px solid #43515f;padding-top:18px;display:grid;gap:6px}.account small{color:#b7c8d6}.account>a{font-size:.9rem;margin:8px 0}.main-content{min-width:0;padding:32px clamp(18px,3vw,44px);max-width:1600px;width:100%}.page-header{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:25px}.section-label{color:var(--muted);font-weight:700;font-size:.73rem;letter-spacing:.08em;margin-bottom:8px}.timezone{font-size:.85rem;color:var(--muted);white-space:nowrap}.mobile-header{display:none}.panel{background:#fff;border:1px solid var(--line);border-radius:9px;padding:22px;margin-bottom:20px;min-width:0}.panel p:last-child{margin-bottom:0}.section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.section-head h2{margin:0}.two-columns,.signal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.signal-card{border-top:4px solid #9aa8b5}.signal-card.live{border-top-color:#137846}.signal-name{font-weight:750;font-size:1.35rem}.state{display:inline-block;padding:3px 9px;border-radius:4px;background:#eaf0f5;font-size:.86rem;font-weight:650;line-height:1.5}.state.good{background:#e4f3e8;color:#155b31}.state.bad{background:#fbe8e6;color:#962626}.state.warn{background:#fff0d7;color:#7d4b04}.state.neutral{color:#405568}.numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.numbers dt,.metadata dt{font-size:.8rem;color:var(--muted)}.numbers dd{font-size:1.3rem;font-weight:700;margin:3px 0}.metadata{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:15px 0}.metadata dd{margin:3px 0;overflow-wrap:anywhere}.summary-strip{display:flex;flex-wrap:wrap;gap:12px 32px;margin-bottom:22px;padding:16px 0;border-block:1px solid var(--line)}.summary-strip strong{font-size:1.25rem}.button{display:inline-flex;justify-content:center;align-items:center;gap:6px;padding:9px 14px;min-height:42px;border-radius:6px;font-weight:650;border:1px solid transparent;max-width:100%;text-align:center;white-space:normal}.button.primary{background:var(--accent);color:white}.button.secondary{background:white;border-color:#b7c5d2;color:#20384d}.button.danger{background:var(--danger);color:white}.button.subtle-danger{color:var(--danger);background:#fff;border-color:#d6a5a5}.sidebar-logout{color:#e9eef4;background:transparent;border-color:#6b7c8b;width:100%}.text-link{color:#8b390c;font-weight:650;text-decoration:underline;text-underline-offset:3px}.stack{display:grid;gap:9px}.stack>button{justify-self:start;margin-top:7px}.stack label{font-weight:650;font-size:.9rem}input,select,textarea{width:100%;min-width:0;border:1px solid #a8b8c7;border-radius:5px;padding:10px 11px;background:#fff;color:#172b3d;min-height:42px}textarea{min-height:100px;resize:vertical}input[type=checkbox]{width:auto;min-height:20px}label{display:block}form{margin:0}.filters{display:flex;flex-wrap:wrap;gap:14px;align-items:end;margin-bottom:20px}.filters>label{flex:1 1 145px;max-width:260px;font-weight:600}.filters select,.filters input{margin-top:6px}.filters>button{flex:0 0 auto}.table-wrap{min-width:0}table{border-collapse:collapse;width:100%;table-layout:fixed}th{text-align:left;color:#425c70;font-size:.78rem;font-weight:750;padding:12px 10px;border-bottom:2px solid var(--line)}td{padding:15px 10px;border-bottom:1px solid #e5ebf0;vertical-align:top;font-size:.9rem;overflow-wrap:anywhere}tbody tr:last-child td{border-bottom:0}.company-table th:first-child{width:17%}.company-table th:nth-child(2){width:15%}.company-table th:last-child{width:105px}.company-name{font-weight:700}.subline{display:block;color:var(--muted);font-size:.82rem;margin-top:4px}.row-actions{position:relative}.row-actions summary{cursor:pointer;font-size:.86rem;font-weight:650;padding:6px;list-style:none}.row-actions[open]>div{position:absolute;right:0;top:100%;z-index:4;min-width:145px;background:white;border:1px solid #b9c7d3;border-radius:6px;box-shadow:0 8px 25px #172b3d22;padding:7px}.row-actions a,.row-actions button{display:block;width:100%;padding:8px;text-align:left;border:0;border-radius:3px;background:white}.row-actions a:hover{background:#eef3f7}.empty{padding:22px 0;color:var(--muted)}.notice{padding:13px 16px;border-radius:6px;background:#e9f2fb;color:#16456a;margin-bottom:18px;overflow-wrap:anywhere}.notice.error{background:#fbe8e6;color:#8a2424}.risk-zone{border-color:#ddaaaa;background:#fffafa;margin-top:22px}.risk-zone h2{color:var(--danger)}.risk-zone .form-actions{margin-top:15px}.form-actions{display:flex;flex-wrap:wrap;gap:10px}.access-heading{display:flex;justify-content:space-between;align-items:start;gap:15px}.audit-table th:nth-child(1){width:16%}.audit-table th:nth-child(2){width:16%}.audit-table th:nth-child(3){width:23%}.audit-table th:nth-child(4){width:30%}.destination{max-width:100%;min-width:0}.destination summary{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;max-width:100%;padding:2px 0}.destination[open]>div{white-space:normal;overflow-wrap:anywhere;background:#eef3f7;border:1px solid var(--line);padding:10px;margin-top:6px;font-size:.86rem}.state-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.timeline{list-style:none;padding:0}.timeline li{border-left:3px solid #b7c5d2;padding:0 0 18px 16px;margin-left:5px;overflow-wrap:anywhere}.timeline time{font-size:.8rem;color:var(--muted)}.page-footer{margin-top:30px;padding-top:15px;border-top:1px solid var(--line);font-size:.78rem;color:var(--muted)}.auth-page{min-height:100dvh;display:grid;place-items:center;padding:25px 16px}.auth-card{background:white;border:1px solid var(--line);border-radius:10px;padding:32px;max-width:460px;width:100%}.auth-logo{display:block;width:200px;max-height:100px;object-fit:contain;margin:0 auto 25px}.private-value,.recovery-codes code,.temporary-password code{display:block;overflow-wrap:anywhere;padding:12px;background:#edf2f6;margin:12px 0;font-size:.95rem}.temporary-password{margin-top:15px;padding:16px;border:1px solid #b7c5d2;border-radius:6px}.recovery-codes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.recovery-codes code{margin:0}.user-actions{display:grid;gap:7px}.icon-action{border:1px solid #b7c5d2;background:white;border-radius:4px;padding:7px;font-size:.82rem}.icon-action.danger{color:var(--danger);border-color:#d6a5a5}.user-edit-grid{display:grid;gap:7px}.assignment-chip{font-size:.81rem;margin-bottom:10px}.assignment-chip button{margin-top:5px}.user-edit-grid input{font-size:.85rem;padding:6px}.audit-count{font-size:.85rem;color:var(--muted)}dialog{border:1px solid #bac8d5;border-radius:9px;padding:26px;max-width:480px;width:calc(100% - 32px);color:#172b3d}dialog::backdrop{background:#14202d99}.hash{font-family:ui-monospace,monospace;font-size:.78rem;overflow-wrap:anywhere}[hidden]{display:none!important}
@media(max-width:1000px){.app-shell{grid-template-columns:190px minmax(0,1fr)}.main-content{padding:25px 18px}.sidebar{padding:22px 14px}.company-table{font-size:.85rem}td,th{padding-left:7px;padding-right:7px}.two-columns{gap:14px}}
@media(max-width:760px){.app-shell{display:block}.mobile-header{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#14202d;color:white;padding:12px 16px}.mobile-brand{font-weight:750}.mobile-header .button{min-height:36px;padding:6px 12px}.sidebar{display:none;padding:18px 16px;gap:18px}.menu-open .sidebar{display:flex}.sidebar .brand{display:none}.sidebar nav{grid-template-columns:1fr}.sidebar .account{margin:0;padding-top:12px}.main-content{padding:22px 16px}.page-header{display:block;margin-bottom:20px}.timezone{display:block;margin-top:8px}.two-columns,.signal-grid{grid-template-columns:1fr;gap:0}.panel{padding:18px;margin-bottom:16px}.numbers{gap:8px}.numbers dd{font-size:1.12rem}.metadata{grid-template-columns:1fr}.section-head{align-items:start;flex-wrap:wrap}.responsive-table thead{display:none}.responsive-table,.responsive-table tbody,.responsive-table tr,.responsive-table td{display:block;width:100%;min-width:0}.responsive-table tr{border:1px solid var(--line);border-radius:6px;padding:8px 12px;margin-bottom:12px;background:white}.responsive-table td{padding:8px 0;border:0;text-align:left}.responsive-table td[data-label]::before{content:attr(data-label);display:block;font-size:.73rem;font-weight:750;color:var(--muted);margin-bottom:4px}.responsive-table td:last-child{padding-bottom:10px}.row-actions[open]>div{position:static;box-shadow:none;margin-top:8px}.audit-table td,.audit-table th{width:100%!important}.destination summary{max-width:100%;white-space:nowrap}.filters{display:grid;grid-template-columns:1fr;gap:12px}.filters>label{max-width:none}.filters button{width:100%}.access-heading{flex-direction:column}.button{min-height:44px}.auth-card{padding:25px 20px}.recovery-codes{grid-template-columns:1fr}.user-edit-grid input,.user-actions button{min-height:44px}.form-actions .button{flex:1 1 140px}.page-footer{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Operator revision 30 October: compact reception list and tablet monitor. */
.operator-indicators{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}.operator-indicators article{background:#fff;border:1px solid var(--line);border-radius:8px;padding:17px;display:flex;flex-direction:column;gap:7px;min-width:0}.operator-indicators span{font-size:.85rem;color:var(--muted)}.operator-indicators strong{font-size:1.6rem}.operator-indicators .date-value{font-size:1.05rem;overflow-wrap:anywhere}.operator-indicators a{font-size:.85rem;text-decoration:underline}.repeat-count{display:inline-block;padding:3px 8px;background:#eef2f5;border-radius:4px;font-size:.8rem}.active-alerts{border-top:4px solid #b34716}.bottom-navigation{display:none}.monitor-heading{display:flex;gap:25px;align-items:center;justify-content:space-between;margin-bottom:22px}.monitor-mode .sidebar,.monitor-mode .mobile-header,.monitor-mode .page-footer{display:none}.monitor-mode .app-shell{display:block}.monitor-mode .main-content{margin:auto;max-width:1800px}.monitor-mode .signal-card h2{font-size:2rem}.monitor-mode .numbers dd{font-size:2.25rem}.compact-company-table{width:100%;table-layout:fixed}.compact-company-table td{overflow-wrap:anywhere}.signal-card .numbers{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1000px){.operator-indicators{grid-template-columns:repeat(2,minmax(0,1fr))}.monitor-heading{flex-wrap:wrap}.monitor-mode .signal-grid{gap:12px}}
@media(max-width:760px){body{padding-bottom:74px}.bottom-navigation{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:60;background:#14202d;border-top:1px solid #43515f;padding:7px 12px calc(7px + env(safe-area-inset-bottom));gap:8px;min-height:62px}.bottom-navigation a{flex:1;text-align:center;padding:12px 5px;color:#edf3f7;font-weight:650;border-radius:5px}.bottom-navigation a[aria-current=page]{background:#fff;color:#14202d}.operator-indicators{gap:9px}.operator-indicators article{padding:12px}.operator-indicators strong{font-size:1.35rem}.operator-indicators .date-value{font-size:.9rem}.company-table,.compact-company-table{display:table!important;width:100%;border-collapse:collapse;table-layout:fixed}.company-table tbody,.compact-company-table tbody{display:table-row-group!important}.company-table tr,.compact-company-table tr{display:table-row!important;border-bottom:1px solid var(--line)!important;background:transparent!important;margin:0!important;padding:0!important}.company-table td,.compact-company-table td{display:table-cell!important;padding:12px 5px!important;width:auto!important;vertical-align:middle;font-size:.82rem;overflow-wrap:anywhere}.company-table td:before,.compact-company-table td:before{display:none!important}.company-table td:nth-child(n+4){display:none!important}.company-table td:first-child,.compact-company-table td:first-child{width:38%!important}.company-table td:nth-child(2),.compact-company-table td:nth-child(2){width:30%!important}.company-table td:nth-child(3),.compact-company-table td:nth-child(3){width:32%!important}.company-table .state,.compact-company-table .state{font-size:.73rem;padding:3px 5px}.monitor-mode .numbers dd{font-size:1.6rem}.monitor-mode .main-content{padding:18px 12px}.monitor-heading{gap:12px}.monitor-heading .button{width:100%}}

/* Monitor wall/tablet view: distinct dark surface, readable from a distance. */
body.monitor-mode{background:#07121b;color:#eef6fc;--line:#385367;--muted:#b4c9d9}.monitor-mode .main-content{max-width:1900px;padding:28px 32px}.monitor-mode .panel{background:#101f2b;border-color:#385367;border-radius:10px}.monitor-mode .signal-card.live{border-top-color:#3ed59b}.monitor-mode h1,.monitor-mode h2,.monitor-mode h3{color:#f4f9fc}.monitor-mode .monitor-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px}.monitor-toolbar>strong{font-size:1.5rem}.monitor-mode .monitor-toolbar .subline{margin:0;font-size:1rem}.monitor-counters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:22px}.monitor-counters article{padding:22px 28px;background:#102a3a;border:1px solid #385367;border-radius:10px;min-width:0}.monitor-counters article.has-alerts{background:#492914;border-color:#b97637}.monitor-counters span{display:block;font-size:clamp(1.1rem,1.8vw,1.65rem);font-weight:600;color:#d0e0ec}.monitor-counters strong{display:block;font-size:clamp(3.5rem,7vw,7rem);line-height:1.08;font-variant-numeric:tabular-nums}.monitor-counters strong small{display:inline;font-size:.5em;color:#b4c9d9}.monitor-mode .signal-card h2{font-size:clamp(2.3rem,4vw,4rem)}.monitor-mode .signal-card .state{font-size:clamp(1rem,1.8vw,1.6rem);padding:6px 14px}.monitor-mode .numbers{gap:18px}.monitor-mode .numbers dt{font-size:clamp(1rem,1.5vw,1.4rem);color:#c1d4e1}.monitor-mode .numbers dd{font-size:clamp(2rem,3.5vw,3.8rem);line-height:1.15;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.monitor-mode .state.good{background:#104636;color:#bcffe3;border:1px solid #368a6e}.monitor-mode .state.bad{background:#662f37;color:#ffe9ed;border:1px solid #b76e79}.monitor-mode .state.warn{background:#593d19;color:#ffe4b3;border:1px solid #b18547}.monitor-mode .state.neutral{background:#243e50;color:#e2edf5}.monitor-mode .button.secondary{background:#17384d;border-color:#718d9f;color:#f1f7fc}.monitor-mode .compact-company-table th{color:#c6d7e4;background:#152b3a}.monitor-mode .compact-company-table td{font-size:clamp(1rem,1.7vw,1.5rem);padding:18px 14px}.monitor-mode .subline,.monitor-mode .muted,.monitor-mode small{color:#b4c9d9}.monitor-mode .notice{background:#3e321c;color:#ffedcc;border-color:#947947}.monitor-mode .active-alerts{border-top-color:#e4a758}.monitor-mode .responsive-table td{border-color:#385367}.monitor-mode .button:focus-visible,.monitor-mode a:focus-visible{outline-color:#91d5ff}
@media(max-width:900px){.monitor-mode .main-content{padding:20px 18px}.monitor-mode .monitor-toolbar{flex-wrap:wrap}.monitor-counters{gap:12px}.monitor-counters article{padding:18px}.monitor-mode .numbers dd{font-size:2rem}}
@media(max-width:600px){.monitor-mode .main-content{padding:16px 12px}.monitor-counters{grid-template-columns:1fr 1fr;gap:10px}.monitor-counters article{padding:14px 10px}.monitor-counters strong{font-size:3rem}.monitor-counters span{font-size:1rem}.monitor-mode .compact-company-table td{font-size:1rem;padding:13px 5px!important}.monitor-mode .monitor-toolbar .button{width:100%}}
