:root,[data-theme="light"] {
    color-scheme:light;
    --bg:#f4f6fa; --surface:#ffffff; --surface-subtle:#f8fafc; --surface-raised:#ffffff;
    --text:#172033; --muted:#6f7b8d; --line:#e3e8ef; --line-soft:#edf1f5;
    --field:#ffffff; --field-border:#cfd7e3; --sidebar:#171a22; --sidebar-alt:#20242e;
    --sidebar-text:#aeb7c6; --sidebar-strong:#f7f9fc; --sidebar-line:#2c313d;
    --accent:#6d5dfc; --accent-hover:#5948eb; --accent-soft:#edeaff;
    --blue:#3d8bfd; --blue-soft:#e8f2ff; --green:#22a06b; --green-soft:#e5f7ef;
    --orange:#e58a17; --orange-soft:#fff2df; --purple:#8b5cf6; --purple-soft:#f0eafe;
    --danger:#cf3f4f; --danger-soft:#fdecef; --focus:rgba(109,93,252,.24);
    --shadow:0 1px 3px rgba(20,31,50,.06);
    font-family:Inter,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
[data-theme="dark"] {
    color-scheme:dark;
    --bg:#101216; --surface:#191c22; --surface-subtle:#20242b; --surface-raised:#1d2027;
    --text:#f2f4f8; --muted:#939cab; --line:#2e333d; --line-soft:#272b33;
    --field:#15181e; --field-border:#3a414d; --sidebar:#15171c; --sidebar-alt:#1d2027;
    --sidebar-text:#aeb5c2; --sidebar-strong:#ffffff; --sidebar-line:#2b2f37;
    --accent:#7b6cff; --accent-hover:#6a5af0; --accent-soft:#2a254a;
    --blue:#4c9aff; --blue-soft:#182d46; --green:#48b88a; --green-soft:#173a2d;
    --orange:#efaa4f; --orange-soft:#412f19; --purple:#a07bff; --purple-soft:#31234e;
    --danger:#ef6875; --danger-soft:#442129; --focus:rgba(123,108,255,.34);
    --shadow:0 1px 2px rgba(0,0,0,.22);
}

* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--bg); color:var(--text); font-size:14px; line-height:1.5; }
a { color:var(--accent); text-decoration:none; }
a:hover { color:var(--accent-hover); }
button,input,select,textarea { font:inherit; }
button:disabled { opacity:.45; cursor:not-allowed; }
h1,h2,h3,p { margin-top:0; }
h1 { margin-bottom:7px; font-size:28px; line-height:1.18; letter-spacing:-.025em; }
h2 { margin-bottom:0; font-size:17px; line-height:1.3; }
h3 { margin-bottom:4px; font-size:14px; }
small { color:var(--muted); }
code { font-size:12px; }

.app-shell { min-height:100vh; display:grid; grid-template-columns:250px minmax(0,1fr); transition:grid-template-columns .2s ease; }
.workspace { min-width:0; }
.sidebar { width:250px; position:sticky; top:0; height:100vh; z-index:30; display:flex; flex-direction:column; overflow-y:auto; background:var(--sidebar); color:var(--sidebar-strong); border-right:1px solid var(--sidebar-line); transition:transform .2s ease,visibility .2s ease; }
.brand { min-height:70px; display:flex; align-items:center; gap:11px; padding:0 20px; border-bottom:1px solid var(--sidebar-line); }
.brand-mark { width:35px; height:35px; display:grid; place-items:center; flex:none; border-radius:8px; background:var(--accent); color:#fff; font-size:12px; font-weight:800; letter-spacing:.04em; }
.brand-copy,.user-copy { min-width:0; display:grid; }
.brand-copy strong { font-size:16px; letter-spacing:.01em; }
.brand-copy small,.user-copy small { color:var(--sidebar-text); font-size:11px; }
.workspace-card { display:flex; align-items:center; gap:11px; margin:17px 15px 8px; padding:11px; border:1px solid var(--sidebar-line); border-radius:8px; background:var(--sidebar-alt); }
.workspace-card > span:last-child { min-width:0; display:grid; }
.workspace-card small { color:var(--sidebar-text); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.workspace-card strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; }
.workspace-symbol { width:31px; height:31px; display:grid; place-items:center; flex:none; border-radius:6px; background:var(--accent-soft); color:var(--purple); font-weight:800; }
.side-nav { padding:4px 12px 18px; }
.nav-section-title { margin:20px 10px 7px; color:#707988; font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.nav-link { display:flex; align-items:center; gap:11px; min-height:40px; margin:2px 0; padding:8px 10px; border-radius:6px; color:var(--sidebar-text); font-size:13px; font-weight:600; }
.nav-link:hover { background:var(--sidebar-alt); color:var(--sidebar-strong); }
.nav-link.is-active { background:var(--accent); color:#fff; }
.nav-icon { width:22px; height:22px; display:grid; place-items:center; flex:none; font-size:17px; font-weight:400; }
.sidebar-footer { margin-top:auto; min-height:73px; display:grid; grid-template-columns:36px minmax(0,1fr) 32px; align-items:center; gap:10px; padding:14px 16px; border-top:1px solid var(--sidebar-line); background:var(--sidebar-alt); }
.user-avatar { width:36px; height:36px; display:grid; place-items:center; flex:none; border-radius:7px; background:var(--accent); color:#fff; font-size:13px; font-weight:800; }
.user-copy strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; }
.logout-button { width:30px; height:30px; border:0; border-radius:6px; background:transparent; color:var(--sidebar-text); cursor:pointer; font-size:18px; }
.logout-button:hover { background:var(--sidebar-line); color:#fff; }
.sidebar-scrim { display:none; }

.topbar { position:sticky; top:0; z-index:20; min-height:70px; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:0 26px; border-bottom:1px solid var(--line); background:color-mix(in srgb,var(--surface) 94%,transparent); backdrop-filter:blur(10px); }
.topbar-start,.topbar-actions,.topbar-user { display:flex; align-items:center; }
.topbar-start,.topbar-actions { gap:13px; }
.top-menu-button { width:38px; height:38px; display:grid; place-items:center; border:0; border-radius:5px; background:#0d6efd; color:#fff; cursor:pointer; font-size:17px; }
.top-nav { display:flex; align-items:center; gap:3px; }
.top-nav a { padding:10px 12px; border-radius:4px; color:var(--text); font-size:11px; }
.top-nav a:hover,.top-nav a.is-active { background:#0d6efd; color:#fff; }
.breadcrumb { display:flex; align-items:center; gap:9px; color:var(--muted); font-size:12px; }
.breadcrumb b { opacity:.45; }.breadcrumb strong { color:var(--text); }
.icon-button { width:36px; height:36px; display:grid; place-items:center; border:1px solid var(--line); border-radius:7px; background:var(--surface-subtle); color:var(--text); cursor:pointer; }
.icon-button:hover { border-color:var(--accent); color:var(--accent); }
.menu-button { display:none; }
.theme-form { margin:0; }
.topbar-quick { display:inline-flex; align-items:center; gap:5px; height:36px; padding:0 12px; border-radius:6px; background:var(--accent); color:#fff; font-size:12px; font-weight:700; }
.topbar-quick:hover { background:var(--accent-hover); color:#fff; }
.topbar-action { min-height:36px; display:inline-flex; align-items:center; gap:6px; padding:0 9px; border:1px solid var(--line); border-radius:6px; background:var(--surface-subtle); color:var(--text); font-size:10px; font-weight:800; }
.topbar-action > span:first-child { color:var(--accent); font-size:15px; }
.topbar-action:hover,.topbar-action.is-active { border-color:var(--accent); color:var(--accent); }
.topbar-user { gap:9px; padding-left:4px; }
.topbar-user .user-avatar { width:34px; height:34px; }
.topbar-user > span:nth-child(2) { display:grid; }
.topbar-user strong { font-size:12px; }.topbar-user small { font-size:10px; }
.topbar-account { position:relative; }
.topbar-account summary { cursor:pointer; list-style:none; }
.topbar-account summary::-webkit-details-marker { display:none; }
.topbar-account summary > b { color:var(--muted); font-size:11px; transition:transform .15s ease; }
.topbar-account[open] summary > b { transform:rotate(180deg); }
.account-menu { width:250px; position:absolute; top:calc(100% + 12px); right:0; z-index:45; overflow:hidden; border:1px solid var(--line); border-radius:7px; background:var(--surface); box-shadow:0 12px 30px rgba(0,0,0,.2); }
.account-menu > div { display:grid; gap:2px; padding:13px; border-bottom:1px solid var(--line); }
.account-menu > div small { font-size:9px; font-weight:800; letter-spacing:.08em; }
.account-menu > div strong { overflow:hidden; text-overflow:ellipsis; font-size:11px; white-space:nowrap; }
.account-menu > a,.account-menu > button { width:100%; min-height:39px; display:flex; align-items:center; padding:8px 13px; border:0; border-bottom:1px solid var(--line-soft); background:transparent; color:var(--text); cursor:pointer; text-align:left; font-size:11px; font-weight:700; }
.account-menu > :last-child { border-bottom:0; }
.account-menu > a:hover,.account-menu > button:hover { background:var(--surface-subtle); color:var(--accent); }
.main-content { min-width:0; padding:27px; }
.page-header { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; margin-bottom:22px; }
.dashboard-heading { padding-bottom:1px; }
.eyebrow,.panel-kicker { margin:0 0 5px; color:var(--accent); font-size:10px; font-weight:800; letter-spacing:.11em; }
.page-subtitle { max-width:720px; margin:0; color:var(--muted); }
.header-actions { display:flex; align-items:center; gap:9px; padding-top:5px; }
.section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin:30px 0 13px; }
.section-heading > p { max-width:460px; margin:0; color:var(--muted); text-align:right; }
.dashboard-contextbar { min-height:70px; display:flex; align-items:center; justify-content:space-between; gap:20px; margin:-27px -27px 18px; padding:12px 20px; border-bottom:1px solid var(--line); background:var(--surface); }
.dashboard-contextbar h1 { margin:0 0 5px; font-size:14px; letter-spacing:.01em; }
.dashboard-contextbar p { display:flex; gap:8px; margin:0; color:var(--muted); font-size:10px; }
.context-metrics { display:flex; align-items:stretch; }
.context-metrics > a,.context-metrics > div { min-width:142px; display:grid; grid-template-columns:minmax(0,1fr) auto; grid-template-rows:auto auto; column-gap:10px; align-content:center; padding:7px 14px; border-left:1px solid var(--line); color:var(--text); }
.context-metrics > a:hover { background:var(--surface-subtle); color:var(--accent); }
.context-metrics span { color:var(--muted); font-size:9px; font-weight:800; letter-spacing:.04em; }
.context-metrics strong { overflow:hidden; color:var(--green); font-size:13px; text-overflow:ellipsis; white-space:nowrap; }
.context-metrics small { grid-column:1/-1; overflow:hidden; margin-top:1px; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }
.context-metrics b { grid-row:1/3; grid-column:2; align-self:center; color:var(--accent); font-size:17px; }

.button { display:inline-flex; align-items:center; justify-content:center; min-height:37px; padding:8px 13px; border:1px solid var(--field-border); border-radius:6px; background:var(--surface); color:var(--text); cursor:pointer; font-weight:700; font-size:12px; }
.button:hover { border-color:var(--accent); color:var(--accent); }
.button-primary { border-color:var(--accent); background:var(--accent); color:#fff; }
.button-primary:hover { border-color:var(--accent-hover); background:var(--accent-hover); color:#fff; }
.button-danger { border-color:var(--danger); background:var(--danger); color:#fff; }
.button-danger:hover { color:#fff; filter:brightness(.95); }
.button-small { min-height:29px; padding:4px 9px; font-size:11px; }

.kpi-grid { display:grid; gap:12px; margin-bottom:16px; }
.kpi-grid-four { grid-template-columns:repeat(4,minmax(0,1fr)); }
.kpi-card { min-height:122px; display:flex; align-items:center; gap:15px; padding:18px; border:1px solid var(--line); border-radius:9px; background:var(--surface); box-shadow:var(--shadow); overflow:hidden; }
.kpi-card > div { min-width:0; display:grid; }
.kpi-card > div > span { color:var(--muted); font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
.kpi-card strong { margin:3px 0 1px; overflow:hidden; text-overflow:ellipsis; font-size:27px; line-height:1.2; white-space:nowrap; }
.kpi-card small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.kpi-icon { width:46px; height:46px; display:grid; place-items:center; flex:none; border-radius:9px; font-size:21px; font-weight:800; }
.kpi-purple .kpi-icon { background:var(--purple-soft); color:var(--purple); }
.kpi-blue .kpi-icon { background:var(--blue-soft); color:var(--blue); }
.kpi-green .kpi-icon { background:var(--green-soft); color:var(--green); }
.kpi-orange .kpi-icon { background:var(--orange-soft); color:var(--orange); }
.reference-kpi-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:16px; }
.reference-kpi { min-height:112px; position:relative; overflow:hidden; display:flex; flex-direction:column; justify-content:center; padding:18px 20px; border-radius:8px; color:#fff; }
.reference-kpi > span { position:relative; z-index:1; font-size:10px; font-weight:800; letter-spacing:.05em; opacity:.78; }.reference-kpi > strong { position:relative; z-index:1; margin:3px 0; font-size:27px; line-height:1.1; }.reference-kpi > small { position:relative; z-index:1; color:#fff; font-size:9px; opacity:.8; }.reference-kpi > b { position:absolute; right:16px; bottom:-9px; font-size:70px; line-height:1; opacity:.17; }
.reference-kpi.coral { background:#e48b78; }.reference-kpi.cyan { background:#56b6c7; }.reference-kpi.teal { background:#68ada6; }.reference-kpi.lime { background:#9bb964; }.reference-kpi.purple { background:#9570b6; }.reference-kpi.rose { background:#de7885; }.reference-kpi.sky { background:#52a6bd; }.reference-kpi.yellow { background:#b5ad66; }
.reference-analytics { display:grid; grid-template-columns:1.15fr 1.15fr .8fr; gap:14px; margin-bottom:16px; }
.reference-chart-card { min-height:310px; margin:0; padding:18px; }
.reference-chart-card .panel-header h2 { font-size:16px; }.reference-chart-card .panel-header p { margin:3px 0 0; color:var(--muted); font-size:10px; }.reference-chart-card .panel-header > span { color:var(--muted); font-size:18px; }
.collection-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-bottom:11px; }
.collection-summary > div { display:flex; align-items:center; gap:9px; padding:9px; border-radius:6px; background:var(--surface-subtle); }.collection-summary > div > span:last-child { min-width:0; display:grid; }.collection-summary small { font-size:9px; }.collection-summary strong { overflow:hidden; text-overflow:ellipsis; font-size:13px; white-space:nowrap; }
.metric-symbol { width:33px; height:33px; display:grid; place-items:center; flex:none; border-radius:6px; }.metric-symbol.purple { background:var(--purple-soft); color:var(--purple); }.metric-symbol.green { background:var(--green-soft); color:var(--green); }
.compact-bars { height:175px; }.compact-bars .modern-bar-item { grid-template-rows:1fr 18px; }.compact-bars .bar-track i { right:13%; left:13%; }
.agent-rank-list { gap:19px; padding-top:9px; }
.satisfaction-card { display:flex; flex-direction:column; }
.semi-gauge { width:190px; height:96px; position:relative; align-self:center; overflow:hidden; margin:17px auto 14px; background:conic-gradient(from 270deg at 50% 100%, var(--green) 0deg calc(var(--gauge-value) * 1.8deg), var(--surface-subtle) 0deg 180deg, transparent 180deg); border-radius:190px 190px 0 0; }
.semi-gauge::after { content:""; position:absolute; right:24px; bottom:-1px; left:24px; height:72px; border-radius:150px 150px 0 0; background:var(--surface); }
.semi-gauge > div { position:absolute; right:0; bottom:4px; left:0; z-index:1; display:grid; text-align:center; }.semi-gauge strong { font-size:26px; }.semi-gauge span { color:var(--muted); font-size:9px; }
.satisfaction-note { display:flex; align-items:center; gap:9px; margin-top:auto; padding:10px; border-radius:6px; background:var(--surface-subtle); }.satisfaction-note > span { color:var(--green); font-size:20px; }.satisfaction-note p { margin:0; color:var(--muted); font-size:10px; }
.quick-access-strip { display:flex; align-items:center; justify-content:space-between; gap:20px; scroll-margin-top:85px; }.quick-access-actions { display:flex; gap:9px; }.quick-access-actions a { min-width:150px; display:grid; grid-template-columns:35px 1fr; grid-template-rows:auto auto; column-gap:9px; padding:10px 12px; border:1px solid var(--line); border-radius:6px; background:var(--surface-subtle); color:var(--text); }.quick-access-actions a > span { grid-row:1/3; width:35px; height:35px; display:grid; place-items:center; border-radius:6px; background:var(--accent-soft); color:var(--accent); font-size:18px; }.quick-access-actions strong { font-size:10px; }.quick-access-actions small { font-size:9px; }

.panel,.operation-card,.form-section { border:1px solid var(--line); border-radius:9px; background:var(--surface); box-shadow:var(--shadow); }
.panel { padding:19px; margin-bottom:16px; }
.panel-header { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:16px; }
.panel-header .panel-kicker { margin-bottom:3px; }
.panel-meta { align-self:center; color:var(--muted); font-size:11px; }
.analytics-grid { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(260px,.8fr) minmax(280px,.9fr); gap:13px; align-items:stretch; }
.analytics-grid > .panel { min-height:312px; margin:0; }
.agency-analytics { grid-template-columns:minmax(0,1.55fr) minmax(250px,.75fr) minmax(250px,.75fr); margin-bottom:16px; }
.agency-analytics .chart-wide { grid-column:span 2; }
.line-summary { display:flex; align-items:baseline; gap:9px; margin:4px 0 12px; }
.line-summary strong { font-size:26px; }.line-summary span { color:var(--muted); font-size:12px; }
.modern-bar-chart { height:202px; display:grid; grid-template-columns:repeat(7,minmax(22px,1fr)); align-items:end; gap:8px; }
.modern-bar-chart.fourteen-days { grid-template-columns:repeat(14,minmax(16px,1fr)); }
.modern-bar-item { height:100%; display:grid; grid-template-rows:21px 1fr 20px; gap:4px; align-items:end; color:var(--muted); text-align:center; font-size:10px; }
.modern-bar-item > span { color:var(--text); font-size:10px; font-weight:700; }
.bar-track { position:relative; height:100%; overflow:hidden; border-radius:4px 4px 2px 2px; background:var(--surface-subtle); }
.bar-track i { position:absolute; right:18%; bottom:0; left:18%; display:block; border-radius:4px 4px 1px 1px; background:var(--accent); }
.modern-bar-item:nth-child(2n) .bar-track i { background:var(--blue); }
.rank-list { display:grid; gap:16px; padding-top:3px; }
.rank-row > div:first-child { display:flex; justify-content:space-between; gap:10px; margin-bottom:6px; font-size:12px; }
.rank-row strong { color:var(--text); }.rank-row span { color:var(--muted); }
.progress-track { height:7px; overflow:hidden; border-radius:10px; background:var(--surface-subtle); }
.progress-track i { display:block; height:100%; min-width:2px; border-radius:10px; background:var(--accent); }
.rank-row:nth-child(2n) .progress-track i { background:var(--blue); }
.rank-row:nth-child(3n) .progress-track i { background:var(--green); }
.workflow-list { display:grid; }
.workflow-list a { display:grid; grid-template-columns:40px minmax(0,1fr) auto; align-items:center; gap:11px; min-height:59px; padding:9px 0; border-bottom:1px solid var(--line-soft); color:var(--text); }
.workflow-list a:last-child { border-bottom:0; }
.workflow-list a:hover strong { color:var(--accent); }
.workflow-list a > span:nth-child(2) { min-width:0; display:grid; }.workflow-list strong { font-size:12px; }.workflow-list small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:10px; }
.workflow-list b { color:var(--muted); font-size:12px; }
.workflow-icon,.operation-symbol { display:grid; place-items:center; flex:none; border-radius:8px; font-weight:800; }
.workflow-icon { width:38px; height:38px; }.operation-symbol { width:40px; height:40px; }
.workflow-icon.purple,.operation-symbol.purple { background:var(--purple-soft); color:var(--purple); }
.workflow-icon.blue,.operation-symbol.blue { background:var(--blue-soft); color:var(--blue); }
.workflow-icon.green,.operation-symbol.green { background:var(--green-soft); color:var(--green); }
.workflow-icon.orange,.operation-symbol.orange { background:var(--orange-soft); color:var(--orange); }
.performer-stat { display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:center; gap:10px; }
.performer-stat .entity-avatar { width:32px; height:32px; }
.performer-stat > div { display:grid; gap:6px; }.performer-stat > div > span { font-size:12px; }.performer-stat strong { font-size:12px; }

.operations-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; margin-bottom:16px; }
.operation-card { overflow:hidden; }
.operation-card summary { min-height:76px; display:grid; grid-template-columns:42px minmax(0,1fr) auto; align-items:center; gap:12px; padding:16px; cursor:pointer; list-style:none; }
.operation-card summary::-webkit-details-marker { display:none; }
.operation-card summary > span:nth-child(2) { display:grid; }.operation-card summary strong { font-size:13px; }.operation-card summary small { font-size:10px; }
.operation-card summary > b { color:var(--muted); transition:transform .18s ease; }.operation-card[open] summary > b { transform:rotate(180deg); }
.operation-card[open] summary { border-bottom:1px solid var(--line); }
.operation-form { padding:17px; }
.operation-card .operation-form { margin:0; }
.data-operation-tabs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
.data-operation-tabs form + form { border-left:1px solid var(--line); }

.table-panel { padding:0; overflow:hidden; scroll-margin-top:85px; }
.table-panel > .panel-header,.table-toolbar { min-height:70px; margin:0; padding:16px 18px; border-bottom:1px solid var(--line); }
.table-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.table-wrap { width:100%; overflow-x:auto; }
table { width:100%; border-collapse:collapse; }
th { padding:11px 13px; border-bottom:1px solid var(--line); background:var(--surface-subtle); color:var(--muted); text-align:left; font-size:10px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; white-space:nowrap; }
td { padding:12px 13px; border-bottom:1px solid var(--line-soft); vertical-align:middle; font-size:12px; }
tbody tr:last-child td { border-bottom:0; }
tbody tr:hover { background:color-mix(in srgb,var(--surface-subtle) 65%,transparent); }
.entity-cell { display:inline-flex; align-items:center; gap:9px; min-width:0; }
.entity-cell > span:last-child { display:grid; }.entity-cell small { font-size:10px; }
.entity-avatar { width:32px; height:32px; display:grid; place-items:center; flex:none; border-radius:7px; background:var(--purple-soft); color:var(--purple); font-size:11px; font-weight:800; }
.entity-avatar.blue { background:var(--blue-soft); color:var(--blue); }
.status-badge { display:inline-flex; align-items:center; gap:5px; min-height:23px; padding:3px 8px; border-radius:20px; background:var(--surface-subtle); color:var(--muted); font-size:10px; font-weight:800; white-space:nowrap; }
.status-badge.success { background:var(--green-soft); color:var(--green); }.status-badge.info { background:var(--blue-soft); color:var(--blue); }.status-badge.warning { background:var(--orange-soft); color:var(--orange); }.status-badge.neutral { background:var(--surface-subtle); color:var(--muted); }
.status-dot { width:6px; height:6px; display:inline-block; border-radius:50%; background:currentColor; }
.table-action { font-size:11px; font-weight:800; white-space:nowrap; }
.table-search { width:min(350px,100%); position:relative; display:block; }
.table-search > span { position:absolute; left:11px; top:50%; z-index:1; transform:translateY(-50%); color:var(--muted); font-size:16px; }
.table-search input { padding-left:34px; }
.audit-action { padding:3px 7px; border:1px solid var(--line); border-radius:4px; background:var(--surface-subtle); font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:10px; }

.booking-form { display:grid; gap:14px; }
.form-section { padding:20px; }
.form-section-heading { display:flex; align-items:flex-start; gap:12px; margin-bottom:20px; }
.form-section-heading > span { width:31px; height:31px; display:grid; place-items:center; flex:none; border-radius:7px; background:var(--accent-soft); color:var(--accent); font-size:10px; font-weight:800; }
.form-section-heading p { margin:3px 0 0; color:var(--muted); font-size:11px; }
.form-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.form-grid-two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.stack-form { display:grid; gap:12px; margin-top:14px; }
label { display:grid; gap:6px; color:var(--text); font-size:11px; font-weight:700; }
input,select,textarea { width:100%; min-height:39px; padding:9px 10px; border:1px solid var(--field-border); border-radius:6px; background:var(--field); color:var(--text); }
textarea { resize:vertical; }
input::placeholder,textarea::placeholder { color:var(--muted); opacity:.75; }
input:focus,select:focus,textarea:focus { outline:3px solid var(--focus); border-color:var(--accent); }
input[type="checkbox"] { width:16px; min-height:16px; accent-color:var(--accent); }
input[type="file"] { padding:7px; }
.check-label { grid-template-columns:18px 1fr; align-items:center; }
.field-wide { grid-column:1/-1; }
.calculated-field { padding:10px 12px; border-left:3px solid var(--accent); border-radius:4px; background:var(--surface-subtle); }.calculated-field span { display:block; color:var(--muted); font-size:10px; }.calculated-field strong { font-size:18px; }
.performer-fieldset { margin-top:18px; padding:15px; border:1px solid var(--line); border-radius:7px; }.performer-fieldset legend { padding:0 6px; font-size:12px; font-weight:800; }
.performer-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px 20px; }.performer-row { grid-template-columns:18px 1fr 90px 15px; align-items:center; gap:8px; }
.form-actions { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:4px 0 10px; }
.danger-zone { margin-top:20px; padding-top:17px; border-top:1px solid var(--line); }
.help-text { margin:0; color:var(--muted); font-size:10px; font-weight:400; }
.suggestion-form { display:grid; grid-template-columns:170px 1fr 1fr auto; align-items:end; gap:11px; margin-top:15px; }
.review-form { display:grid; grid-template-columns:minmax(130px,1fr) auto auto; align-items:center; gap:5px; }
.inline-confirm { display:grid; grid-template-columns:1fr 280px auto; align-items:end; gap:13px; padding:12px 0; border-top:1px solid var(--line); }.inline-confirm > span { display:grid; }
.warning-panel { border-color:var(--orange); }
.team-layout { display:grid; grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr); gap:24px; }
.team-layout .suggestion-form { grid-template-columns:repeat(3,minmax(0,1fr)) auto; margin:0; }

.notice { display:flex; align-items:center; gap:10px; min-height:46px; margin-bottom:16px; padding:10px 13px; border:1px solid var(--line); border-radius:7px; background:var(--surface); }.notice-icon { width:25px; height:25px; display:grid; place-items:center; flex:none; border-radius:50%; background:var(--surface-subtle); font-weight:800; }.notice-success .notice-icon { background:var(--green-soft); color:var(--green); }.notice-error .notice-icon { background:var(--danger-soft); color:var(--danger); }.notice-warning .notice-icon { background:var(--orange-soft); color:var(--orange); }.form-error { color:var(--danger); font-size:11px; font-weight:700; }
.empty-state { padding:30px !important; color:var(--muted); text-align:center; }.compact-empty { display:grid; place-items:center; min-height:155px; }.compact-empty > span { font-size:25px; }.compact-empty p { margin:5px 0 0; }

.auth-page { min-height:100vh; display:grid; grid-template-columns:minmax(420px,1.05fr) minmax(430px,.95fr); background:var(--bg); }
.auth-showcase { position:relative; display:flex; flex-direction:column; justify-content:space-between; overflow:hidden; padding:44px 56px; background:var(--sidebar); color:var(--sidebar-strong); }
.auth-showcase::after { content:""; position:absolute; right:-120px; bottom:-150px; width:390px; height:390px; border:75px solid var(--accent); border-radius:50%; opacity:.1; }
.auth-brand { position:relative; z-index:1; display:flex; align-items:center; gap:11px; }.auth-brand > span:last-child { display:grid; }.auth-brand strong { font-size:16px; }.auth-brand small { color:var(--sidebar-text); }
.auth-message { position:relative; z-index:1; max-width:630px; padding:70px 0 35px; }.auth-message h1 { max-width:600px; font-size:43px; line-height:1.08; }.auth-message > p:last-child { max-width:580px; margin:16px 0 0; color:var(--sidebar-text); font-size:15px; }
.auth-feature-grid { position:relative; z-index:1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }.auth-feature-grid > div { display:grid; gap:2px; padding:15px; border:1px solid var(--sidebar-line); border-radius:8px; background:var(--sidebar-alt); }.auth-feature-grid > div > span { color:var(--purple); font-size:20px; }.auth-feature-grid strong { margin-top:7px; font-size:12px; }.auth-feature-grid small { color:var(--sidebar-text); font-size:10px; }
.auth-security { position:relative; z-index:1; margin:24px 0 0; color:var(--sidebar-text); font-size:10px; }.auth-security::first-letter { color:var(--green); }
.login-wrap { display:grid; place-items:center; padding:35px; }
.login-panel { width:min(430px,100%); padding:32px; border:1px solid var(--line); border-radius:10px; background:var(--surface); box-shadow:var(--shadow); }
.login-heading { margin-bottom:24px; }.login-heading h2 { font-size:23px; }.login-heading p:last-child { margin:8px 0 0; color:var(--muted); }
.login-form { display:grid; gap:14px; }.login-form .button { width:100%; margin-top:2px; }
.agency-logo { max-width:180px; max-height:48px; object-fit:contain; margin-bottom:15px; }
.login-footnote { margin:18px 0 0; color:var(--muted); text-align:center; font-size:10px; }
.download-panel { max-width:680px; }

@media (min-width:901px) {
    .app-shell.sidebar-collapsed { grid-template-columns:0 minmax(0,1fr); }
    .app-shell.sidebar-collapsed .sidebar { transform:translateX(-100%); visibility:hidden; }
}
@media (max-width:1240px) {
    .topbar-action > span:last-child { display:none; }
    .kpi-grid-four { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .analytics-grid,.agency-analytics { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .reference-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.reference-analytics { grid-template-columns:repeat(2,minmax(0,1fr)); }.reference-analytics > :last-child { grid-column:1/-1; }
    .analytics-grid > .panel:last-child { grid-column:1/-1; min-height:auto; }
    .agency-analytics .chart-wide { grid-column:1/-1; }
}
@media (max-width:900px) {
    .auth-page { grid-template-columns:1fr; }.auth-showcase { min-height:360px; padding:34px; }.auth-message { padding:55px 0 30px; }.auth-message h1 { font-size:34px; }
    .app-shell { display:block; }
    .sidebar { position:fixed; left:-260px; width:250px; transition:left .2s ease; }
    .app-shell.sidebar-open .sidebar { left:0; }
    .sidebar-scrim { position:fixed; inset:0; z-index:25; background:rgba(0,0,0,.48); }
    .app-shell.sidebar-open .sidebar-scrim { display:block; }
    .menu-button { display:grid; }
    .top-menu-button { display:none; }.top-nav { display:none; }
    .main-content { padding:21px; }
    .operations-grid,.team-layout { grid-template-columns:1fr; }
    .dashboard-contextbar { margin:-21px -21px 18px; }.context-metrics > a,.context-metrics > div { min-width:112px; padding:7px 9px; }
    .quick-access-strip { align-items:stretch; flex-direction:column; }.quick-access-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }.quick-access-actions a { min-width:0; }
    .team-layout .suggestion-form { grid-template-columns:1fr; }
}
@media (max-width:680px) {
    h1 { font-size:23px; }
    .topbar { padding:0 14px; }.breadcrumb,.topbar-user > span:nth-child(2),.topbar-action { display:none; }
    .topbar-quick { width:36px; padding:0; justify-content:center; font-size:0; }.topbar-quick span { font-size:16px; }
    .main-content { padding:17px 13px; }
    .page-header,.section-heading,.table-toolbar { align-items:stretch; flex-direction:column; }
    .section-heading > p { text-align:left; }.header-actions { width:100%; }.header-actions .button { flex:1; }
    .kpi-grid-four,.analytics-grid,.agency-analytics,.operations-grid,.form-grid,.performer-grid,.suggestion-form,.data-operation-tabs { grid-template-columns:1fr; }
    .dashboard-contextbar { align-items:flex-start; flex-direction:column; margin:-17px -13px 14px; padding:13px; }.context-metrics { width:100%; }.context-metrics > a,.context-metrics > div { min-width:0; flex:1; padding:7px 8px; }.context-metrics > :first-child { border-left:0; }.context-metrics small { display:none; }.reference-kpi-grid,.reference-analytics { grid-template-columns:1fr; }.reference-analytics > :last-child { grid-column:auto; }.quick-access-actions { grid-template-columns:1fr; }
    .agency-analytics .chart-wide,.analytics-grid > .panel:last-child { grid-column:auto; }
    .data-operation-tabs form + form { border-top:1px solid var(--line); border-left:0; }
    .modern-bar-chart.fourteen-days { gap:3px; overflow-x:auto; }.modern-bar-chart.fourteen-days .modern-bar-item { min-width:27px; }
    .inline-confirm,.review-form { grid-template-columns:1fr; }
    .form-actions { align-items:stretch; flex-direction:column; }.form-actions .button { width:100%; }
    .auth-page { display:block; }.auth-showcase { min-height:auto; padding:25px 22px; }.auth-message { padding:40px 0 14px; }.auth-message h1 { font-size:29px; }.auth-feature-grid { display:none; }.auth-security { margin-top:12px; }.login-wrap { padding:22px 13px; }.login-panel { padding:25px 21px; }
}

/* Dedicated administration pages */
.admin-page-grid { display:grid; grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr); gap:16px; align-items:start; }
.admin-form-card { position:sticky; top:88px; margin:0; }
.admin-table-card { margin:0; }
.catalog-directory { min-width:0; display:grid; gap:16px; }
.catalog-directory .panel { margin:0; }
.data-page-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-bottom:16px; }
.data-page-grid .panel { margin:0; }

/* Security-checkpoint authentication screens, based on the requested industrial reference. */
.checkpoint-body { margin:0; }
.checkpoint-page {
    --checkpoint-bg:#050607; --checkpoint-panel:#0a0c0f; --checkpoint-panel-2:#07090b;
    --checkpoint-line:#282d33; --checkpoint-line-soft:#171b20; --checkpoint-text:#d7dde6;
    --checkpoint-muted:#7f8b9b; --checkpoint-accent:#d946ef; --checkpoint-accent-2:#a78bfa;
    --checkpoint-good:#33d6a6; --checkpoint-bad:#ff5362;
    min-height:100vh; display:grid; grid-template-rows:64px 1fr 42px; overflow:hidden;
    background-color:var(--checkpoint-bg); color:var(--checkpoint-text);
    background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
    background-size:28px 28px; font-family:"IBM Plex Mono","Cascadia Code","SFMono-Regular",Consolas,monospace;
}
.checkpoint-topbar,.checkpoint-footer { position:relative; z-index:4; display:flex; align-items:center; justify-content:space-between; gap:20px; border-color:var(--checkpoint-line); background:#080a0c; }
.checkpoint-topbar { min-width:0; padding:0 28px; border-bottom:1px solid var(--checkpoint-line); }
.checkpoint-footer { padding:0 28px; border-top:1px solid var(--checkpoint-line); color:var(--checkpoint-muted); font-size:9px; letter-spacing:.12em; }
.checkpoint-brand,.checkpoint-state { min-width:0; display:flex; align-items:center; gap:11px; }
.checkpoint-brand strong { overflow:hidden; text-overflow:ellipsis; color:#f0f2f5; font-size:12px; letter-spacing:.15em; white-space:nowrap; }
.checkpoint-dot { width:8px; height:8px; flex:none; background:var(--checkpoint-accent); }
.checkpoint-plate,.checkpoint-state b { padding:4px 8px; border:1px solid #67306f; color:var(--checkpoint-accent-2); font-size:9px; letter-spacing:.14em; }
.checkpoint-state { color:var(--checkpoint-muted); font-size:9px; letter-spacing:.12em; }
.checkpoint-state b { color:var(--checkpoint-good); border-color:#1f5949; }
.checkpoint-stage { min-height:0; display:grid; place-items:center; overflow:auto; padding:32px; }
.checkpoint-frame { width:min(1080px,100%); border:1px solid var(--checkpoint-line); background:var(--checkpoint-panel); }
.checkpoint-frame-head { min-height:39px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:8px 14px; border-bottom:1px solid var(--checkpoint-line); color:#aab2bd; font-size:9px; font-weight:700; letter-spacing:.14em; }
.checkpoint-frame-head b { margin-right:8px; padding:3px 6px; border:1px solid #71313a; color:#ff8994; }
.checkpoint-grid { display:grid; grid-template-columns:minmax(0,1.24fr) minmax(340px,.76fr); }
.identity-scanner { min-width:0; display:grid; grid-template-rows:auto 1fr auto; gap:16px; padding:22px; border-right:1px solid var(--checkpoint-line); background:linear-gradient(135deg,#0b0e12,#07090b); }
.scanner-meta { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.scanner-meta > span { min-width:0; display:grid; gap:3px; padding:10px; border:1px solid var(--checkpoint-line-soft); background:var(--checkpoint-panel-2); }
.scanner-meta small { color:var(--checkpoint-muted); font-size:8px; letter-spacing:.14em; }
.scanner-meta strong { overflow:hidden; text-overflow:ellipsis; color:#c7ced8; font-size:10px; white-space:nowrap; }
.scanner-core { min-height:300px; position:relative; display:grid; place-items:center; overflow:hidden; border:1px solid #20252b; background:radial-gradient(circle at center,rgba(217,70,239,.07),transparent 52%),repeating-linear-gradient(0deg,transparent 0 5px,rgba(255,255,255,.015) 5px 6px),#06080a; }
.scanner-core::before,.scanner-core::after { content:""; position:absolute; width:220px; height:220px; border:1px solid #282d33; transform:rotate(45deg); }
.scanner-core::after { width:150px; height:150px; border-color:#51225b; }
.scanner-emblem { position:relative; z-index:2; display:flex; align-items:center; gap:14px; }
.scanner-emblem > span { width:82px; height:82px; display:grid; place-items:center; border:1px solid var(--checkpoint-accent); color:var(--checkpoint-accent-2); font-size:25px; font-weight:900; letter-spacing:.08em; transform:rotate(45deg); }
.scanner-emblem small { color:#9ca6b3; font-size:9px; letter-spacing:.15em; line-height:1.8; }
.scanner-line { position:absolute; z-index:3; top:0; right:0; left:0; height:1px; background:var(--checkpoint-accent); opacity:.85; animation:checkpoint-scan 3.2s linear infinite; }
@keyframes checkpoint-scan { 0%{top:4%;opacity:0} 12%{opacity:.85} 88%{opacity:.85} 100%{top:96%;opacity:0} }
.scanner-corner { width:22px; height:22px; position:absolute; z-index:4; border-color:var(--checkpoint-accent); opacity:.8; }
.scanner-corner.top-left { top:10px; left:10px; border-top:2px solid; border-left:2px solid; }.scanner-corner.top-right { top:10px; right:10px; border-top:2px solid; border-right:2px solid; }.scanner-corner.bottom-left { bottom:10px; left:10px; border-bottom:2px solid; border-left:2px solid; }.scanner-corner.bottom-right { right:10px; bottom:10px; border-right:2px solid; border-bottom:2px solid; }
.scanner-readout { display:grid; grid-template-columns:auto 1fr; column-gap:12px; padding:11px 13px; border-left:2px solid var(--checkpoint-accent); background:#0e0a11; }
.scanner-readout span { grid-row:1/3; align-self:center; color:var(--checkpoint-accent); font-size:8px; letter-spacing:.12em; }.scanner-readout b { font-size:10px; letter-spacing:.08em; }.scanner-readout small { color:var(--checkpoint-muted); font-size:9px; }
.access-node { display:flex; flex-direction:column; padding:30px 28px 22px; background:#090b0e; }
.access-node-heading { margin-bottom:24px; }.access-code { display:block; margin-bottom:13px; color:var(--checkpoint-accent); font-size:9px; font-weight:800; letter-spacing:.15em; }.access-node-heading h1,.access-node-heading h2 { margin:0 0 9px; color:#edf0f4; font:700 23px/1.2 Inter,"Segoe UI",sans-serif; letter-spacing:-.02em; }.access-node-heading p { margin:0; color:var(--checkpoint-muted); font-size:11px; line-height:1.7; }.access-node-heading .agency-logo { max-height:44px; margin-bottom:18px; }
.checkpoint-form { display:grid; gap:16px; }
.checkpoint-form label { gap:7px; color:#9ba5b2; font-size:9px; letter-spacing:.11em; }
.checkpoint-form input { min-height:46px; padding:11px 12px; border:1px solid #30363e; border-radius:0; background:#06080a; color:#e6e9ed; font-family:inherit; }
.checkpoint-form input:focus { border-color:var(--checkpoint-accent); outline:1px solid var(--checkpoint-accent); outline-offset:2px; }
.checkpoint-submit { min-height:48px; display:flex; align-items:center; justify-content:space-between; gap:15px; margin-top:2px; padding:0 15px; border:1px solid var(--checkpoint-accent); border-radius:0; background:#180b1c; color:var(--checkpoint-accent-2); cursor:pointer; font-family:inherit; font-size:10px; font-weight:900; letter-spacing:.12em; }
.checkpoint-submit:hover { background:var(--checkpoint-accent); color:#0b050d; }.checkpoint-submit:disabled { opacity:.5; cursor:wait; }.checkpoint-submit b { font-size:18px; }
.checkpoint-error { padding:10px 11px; border-left:2px solid var(--checkpoint-bad); background:#211015; color:#ffabb3; font-size:10px; }
.access-foot { display:flex; justify-content:space-between; gap:14px; margin-top:auto; padding-top:22px; color:#616b79; font-size:8px; letter-spacing:.11em; }.access-foot span:first-child { color:var(--checkpoint-good); }
.password-core { min-height:260px; }

@media (prefers-reduced-motion:reduce) { .scanner-line { animation:none; top:50%; } }
@media (max-width:980px) {
    .admin-page-grid { grid-template-columns:1fr; }.admin-form-card { position:static; }.data-page-grid { grid-template-columns:1fr; }
    .checkpoint-page { min-height:100svh; overflow:auto; }.checkpoint-stage { place-items:start center; }.checkpoint-grid { grid-template-columns:1fr; }.identity-scanner { border-right:0; border-bottom:1px solid var(--checkpoint-line); }.scanner-core { min-height:230px; }
}
@media (max-width:620px) {
    .checkpoint-page { grid-template-rows:auto 1fr auto; }.checkpoint-topbar { min-height:58px; padding:10px 15px; }.checkpoint-plate,.checkpoint-state span { display:none; }.checkpoint-state { margin-left:auto; }.checkpoint-stage { padding:14px 10px; }.checkpoint-frame-head { align-items:flex-start; flex-direction:column; gap:7px; }.identity-scanner { padding:14px; }.scanner-core { min-height:175px; }.scanner-emblem > span { width:62px; height:62px; font-size:19px; }.scanner-emblem small { display:none; }.access-node { padding:23px 18px 18px; }.checkpoint-footer { min-height:38px; padding:8px 15px; }.checkpoint-footer span:last-child { display:none; }.scanner-meta { grid-template-columns:1fr; }.scanner-meta > span:last-child { display:none; }
}

/* Operations dashboards: same industrial language as the access checkpoint. */
.command-dashboard {
    --surface:#0a0c0f; --surface-subtle:#07090b; --surface-raised:#0d1014;
    --text:#d7dde6; --muted:#7f8b9b; --line:#292e34; --line-soft:#171b20;
    --field:#06080a; --field-border:#30363e; --accent:#d946ef; --accent-hover:#a78bfa;
    --accent-soft:#251129; --purple:#d946ef; --purple-soft:#251129; --blue:#a78bfa;
    --blue-soft:#201936; --green:#33d6a6; --green-soft:#102c25; --danger:#ff5362;
    color-scheme:dark; min-height:calc(100vh - 70px); margin:-27px; padding:0 27px 27px;
    background-color:#050607; color:var(--text);
    background-image:linear-gradient(rgba(255,255,255,.016) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.016) 1px,transparent 1px);
    background-size:28px 28px; font-family:"IBM Plex Mono","Cascadia Code","SFMono-Regular",Consolas,monospace;
}
.command-dashboard .dashboard-contextbar { min-height:75px; margin:0 -27px 14px; padding:13px 27px; border-color:var(--line); background:#080a0c; }
.command-dashboard .dashboard-contextbar h1 { color:#f0f2f5; font:800 13px/1.25 Inter,"Segoe UI",sans-serif; letter-spacing:.08em; }
.command-dashboard .dashboard-contextbar p,.command-dashboard .dashboard-contextbar a { font-size:9px; letter-spacing:.08em; }
.command-dashboard .context-metrics > a,.command-dashboard .context-metrics > div { border-color:var(--line); }
.command-dashboard .context-metrics > a:hover { background:#0d1014; }
.command-dashboard .context-metrics strong { color:var(--accent-hover); }
.command-status-strip { min-height:34px; display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:14px; padding:7px 11px; border:1px solid var(--line); background:#080a0c; color:var(--muted); font-size:8px; font-weight:700; letter-spacing:.12em; }
.command-online { color:var(--green); }.command-online i { width:6px; height:6px; display:inline-block; margin-right:7px; background:currentColor; }
.command-dashboard .reference-kpi-grid { gap:8px; margin-bottom:14px; }
.command-dashboard .reference-kpi { min-height:116px; justify-content:flex-start; padding:15px 16px; border:1px solid var(--line); border-top:2px solid var(--accent); border-radius:0; background:#0a0c0f; color:var(--text); box-shadow:none; }
.command-dashboard .reference-kpi:nth-child(2n) { border-top-color:var(--accent-hover); }
.command-dashboard .reference-kpi > span { color:#939dac; font-size:8px; letter-spacing:.13em; opacity:1; }
.command-dashboard .reference-kpi > strong { margin:10px 0 3px; color:#f2f4f8; font:800 26px/1 Inter,"Segoe UI",sans-serif; }
.command-dashboard .reference-kpi > small { color:var(--muted); font-size:8px; opacity:1; }
.command-dashboard .reference-kpi > b { right:12px; bottom:8px; color:var(--accent); font-size:34px; opacity:.35; }
.command-dashboard .panel { border-color:var(--line); border-radius:0; background:#0a0c0f; box-shadow:none; }
.command-dashboard .panel-header h2,.command-dashboard .quick-access-strip h2 { color:#edf0f4; font:700 14px/1.3 Inter,"Segoe UI",sans-serif; }
.command-dashboard .panel-header h2::before,.command-dashboard .quick-access-strip h2::before { content:"// "; color:var(--accent); }
.command-dashboard .panel-header p { letter-spacing:.06em; }
.command-dashboard .collection-summary > div,.command-dashboard .satisfaction-note { border:1px solid var(--line-soft); border-radius:0; background:#07090b; }
.command-dashboard .metric-symbol { border:1px solid var(--line); border-radius:0; background:#110914; color:var(--accent-hover); }
.command-dashboard .bar-track { border-radius:0; background:#07090b; }
.command-dashboard .bar-track i,.command-dashboard .modern-bar-item:nth-child(2n) .bar-track i { border-radius:0; background:var(--accent); }
.command-dashboard .progress-track { height:5px; border-radius:0; background:#07090b; }
.command-dashboard .progress-track i,.command-dashboard .rank-row:nth-child(2n) .progress-track i,.command-dashboard .rank-row:nth-child(3n) .progress-track i { border-radius:0; background:var(--accent-hover); }
.command-dashboard .semi-gauge { background:conic-gradient(from 270deg at 50% 100%,var(--accent) 0deg calc(var(--gauge-value) * 1.8deg),#151920 0deg 180deg,transparent 180deg); }
.command-dashboard .semi-gauge::after { background:#0a0c0f; }
.command-dashboard .quick-access-strip { border-top:2px solid var(--accent); }
.command-dashboard .quick-access-actions { flex-wrap:wrap; }
.command-dashboard .quick-access-actions a { border-radius:0; background:#07090b; }
.command-dashboard .quick-access-actions a:hover { border-color:var(--accent); color:#fff; }
.command-dashboard .quick-access-actions a > span { border:1px solid #67306f; border-radius:0; background:#160a19; color:var(--accent-hover); }
.command-dashboard th { background:#07090b; color:#929dab; }
.command-dashboard tbody tr:hover { background:#0d1014; }
.command-dashboard .entity-avatar,.command-dashboard .status-badge { border-radius:0; }
.operator-assignment-form { min-width:210px; display:grid; grid-template-columns:minmax(145px,1fr) 31px; gap:5px; }
.operator-assignment-form select { min-height:31px; padding:4px 7px; font-size:10px; }
.operator-assignment-form button { min-height:31px; border:1px solid var(--accent); background:var(--accent-soft); color:var(--accent); cursor:pointer; font-weight:900; }
.booking-claim-form { margin-top:4px; }
.booking-claim-form button { padding:0; border:0; background:transparent; color:var(--accent); cursor:pointer; font-size:9px; font-weight:800; letter-spacing:.03em; }
.booking-claim-form button:hover { color:var(--accent-hover); }
.operator-owned { display:block; margin-top:4px; color:var(--green); font-size:9px; }

@media (max-width:900px) {
    .command-dashboard { margin:-21px; padding:0 21px 21px; }
    .command-dashboard .dashboard-contextbar { margin:0 -21px 14px; padding-right:21px; padding-left:21px; }
    .command-status-strip { flex-wrap:wrap; justify-content:flex-start; }
}
@media (max-width:680px) {
    .command-dashboard { margin:-17px -13px; padding:0 13px 18px; }
    .command-dashboard .dashboard-contextbar { margin:0 -13px 12px; padding-right:13px; padding-left:13px; }
    .command-status-strip span:nth-child(2),.command-status-strip span:nth-child(3) { display:none; }
}

/* Unified control-shell and vector icon system. */
.ui-icon { width:1.15em; height:1.15em; display:block; flex:none; }
.scanner-emblem > span > b { display:block; transform:rotate(-45deg); color:inherit; font-family:"IBM Plex Mono","Cascadia Code",monospace; font-size:inherit; line-height:1; letter-spacing:.08em; }
.sidebar { border-color:#292e34; background-color:#080a0c; background-image:linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px); background-size:100% 28px; font-family:"IBM Plex Mono","Cascadia Code","SFMono-Regular",Consolas,monospace; }
.brand { min-height:74px; border-color:#292e34; background:#07090b; }
.brand-mark { width:37px; height:37px; overflow:hidden; border:1px solid #67306f; border-radius:0; background:#160a19; color:#d946ef; font-size:10px; letter-spacing:.1em; }
.brand-mark img,.workspace-symbol img,.user-avatar img,.entity-avatar img { width:100%; height:100%; display:block; object-fit:cover; }
.brand-mark img { object-fit:contain; padding:3px; }
.brand-copy strong { font-family:Inter,"Segoe UI",sans-serif; font-size:14px; }
.brand-copy small { font-size:8px; letter-spacing:.08em; text-transform:uppercase; }
.workspace-card { position:relative; margin:14px 12px 6px; border-color:#292e34; border-radius:0; background:#0a0c0f; }
.workspace-card::before { content:""; position:absolute; top:-1px; bottom:-1px; left:-1px; width:2px; background:#d946ef; }
.workspace-symbol { overflow:hidden; border:1px solid #67306f; border-radius:0; background:#160a19; color:#a78bfa; }
.workspace-card small { font-size:8px; letter-spacing:.12em; }.workspace-card strong { color:#e9ecf1; font-size:10px; }
.nav-section-title { margin-top:19px; color:#616b79; font-size:8px; letter-spacing:.15em; }
.nav-link { min-height:43px; gap:9px; margin:3px 0; padding:6px 8px; border:1px solid transparent; border-radius:0; font-size:10px; letter-spacing:.025em; }
.nav-link:hover { border-color:#343a43; background:#0d1014; }
.nav-link.is-active { border-color:#67306f; border-left:2px solid #d946ef; background:#170b1b; color:#f3e8ff; }
.nav-icon { width:29px; height:29px; border:1px solid #2d333b; color:#7f8b9b; }
.nav-link:hover .nav-icon,.nav-link.is-active .nav-icon { border-color:#67306f; color:#d946ef; }
.nav-icon .ui-icon { width:15px; height:15px; }
.sidebar-footer { border-color:#292e34; background:#07090b; }
.user-avatar { overflow:hidden; border:1px solid #67306f; border-radius:0; background:#160a19; color:#d946ef; }
.logout-button { border:1px solid #292e34; border-radius:0; color:#8b96a5; }.logout-button:hover { border-color:#d946ef; background:#170b1b; color:#d946ef; }
.logout-button .ui-icon { width:16px; height:16px; margin:auto; }
.topbar { min-height:70px; border-color:#292e34; background:#0a0c0f; color:#d7dde6; backdrop-filter:none; font-family:"IBM Plex Mono","Cascadia Code","SFMono-Regular",Consolas,monospace; }
.topbar .top-nav a { border:1px solid transparent; border-radius:0; color:#aab2bd; font-size:9px; letter-spacing:.06em; }
.topbar .top-nav a:hover,.topbar .top-nav a.is-active { border-color:#67306f; background:#170b1b; color:#f0d7f6; }
.top-menu-button,.topbar .icon-button { border:1px solid #343a43; border-radius:0; background:#0d1014; color:#a78bfa; }
.top-menu-button:hover,.topbar .icon-button:hover { border-color:#d946ef; color:#d946ef; }
.top-menu-button .ui-icon,.topbar .icon-button .ui-icon { width:17px; height:17px; }
.topbar-quick { border:1px solid #d946ef; border-radius:0; background:#180b1c; color:#e7b7ef; font-size:9px; letter-spacing:.06em; }
.topbar-quick:hover { background:#d946ef; color:#0b050d; }.topbar-quick .ui-icon { width:14px; height:14px; }
.topbar-action { border-color:#343a43; border-radius:0; background:#0d1014; color:#aab2bd; font-size:9px; letter-spacing:.04em; }
.topbar-action:hover,.topbar-action.is-active { border-color:#d946ef; background:#170b1b; color:#d946ef; }
.topbar-action > span:first-child { color:inherit; }.topbar-action .ui-icon { width:15px; height:15px; }
.topbar-user strong { color:#edf0f4; }.topbar-user small { color:#7f8b9b; }
.account-menu { border-color:#343a43; border-radius:0; background:#0a0c0f; }.account-menu > div,.account-menu > a,.account-menu > button { border-color:#292e34; color:#d7dde6; }.account-menu > a:hover,.account-menu > button:hover { background:#170b1b; color:#d946ef; }
.button { border-radius:2px; box-shadow:none; }.button-primary { border-color:#d946ef; background:#180b1c; color:#e7b7ef; }.button-primary:hover { border-color:#d946ef; background:#d946ef; color:#0b050d; }
.context-metrics b .ui-icon { width:19px; height:19px; }
.command-dashboard .reference-kpi > b .ui-icon { width:38px; height:38px; }
.command-dashboard .panel-header > span .ui-icon { width:18px; height:18px; }
.quick-access-actions .ui-icon { width:18px; height:18px; }

/* Semantic data colors keep dense booking rows scannable. */
.booking-register .data-date,.command-dashboard .data-date { color:#55c7d9; }.booking-register .data-date small,.command-dashboard .data-date small { color:#7aaab1; }
.booking-register .data-person strong,.command-dashboard .data-person strong { color:#ff8994; }.booking-register .data-person .entity-avatar,.command-dashboard .data-person .entity-avatar { border:1px solid #71313a; background:#211015; color:#ff8994; }
.booking-register .data-phone,.command-dashboard .data-phone { color:#71b7ff; font-weight:700; }
.booking-register .data-location,.command-dashboard .data-location { color:#e3bd67; }
.booking-register .data-performer,.command-dashboard .data-performer { color:#c2a5ff; }
.booking-register .data-operator,.command-dashboard .data-operator { color:#db8bea; }
.booking-register .data-money { color:#f2c56f; font-weight:800; }.booking-register .data-net { color:#45d3a5; font-weight:900; }

/* Administrator-managed image fields and content tabs. */
.branding-upload-group { min-width:290px; display:grid; gap:5px; }.branding-upload-group form,.avatar-upload-form { display:grid; grid-template-columns:minmax(130px,1fr) auto; align-items:end; gap:6px; }.compact-file { gap:2px; font-size:8px; }.branding-upload-group input[type="file"],.avatar-upload-form input[type="file"] { min-height:31px; max-width:220px; padding:4px; font-size:9px; }
.branding-upload-group input[type="file"]::file-selector-button,.avatar-upload-form input[type="file"]::file-selector-button { margin-right:7px; padding:6px 8px; border:0; border-right:1px solid #49314f; background:#211326; color:#e6b8ff; font:700 8px/1 "IBM Plex Mono","Cascadia Code",monospace; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; }
.entity-avatar { overflow:hidden; }.entity-avatar img { border-radius:inherit; }
.content-editor { position:relative; padding-top:76px; }.content-editor > input[type="radio"] { position:absolute; opacity:0; pointer-events:none; }
.content-tabs { position:absolute; top:18px; left:19px; display:flex; border:1px solid var(--line); }.content-tabs label { min-width:120px; min-height:38px; display:grid; place-items:center; border-right:1px solid var(--line); background:var(--surface-subtle); cursor:pointer; font-size:10px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }.content-tabs label:last-child { border-right:0; }
.content-pane { display:none; }.content-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }.content-grid label { padding:12px; border:1px solid var(--line); background:var(--surface-subtle); }.content-grid label > span { font-weight:800; }.content-grid label > small { font:9px/1.3 "IBM Plex Mono",monospace; }.content-grid textarea { min-height:66px; }
#content-tab-admin:checked ~ .content-tabs label[for="content-tab-admin"],#content-tab-agency:checked ~ .content-tabs label[for="content-tab-agency"],#content-tab-login:checked ~ .content-tabs label[for="content-tab-login"] { background:#180b1c; color:#d946ef; }
#content-tab-admin:checked ~ .content-panes .content-pane-admin,#content-tab-agency:checked ~ .content-panes .content-pane-agency,#content-tab-login:checked ~ .content-panes .content-pane-login { display:block; }
@media (max-width:800px) { .content-grid { grid-template-columns:1fr; }.content-tabs { right:19px; }.content-tabs label { min-width:0; flex:1; } }

/* Unified operations UI ----------------------------------------------------
   Every authenticated screen uses the same industrial visual language as
   the dashboards. Agency light mode keeps the layout while changing only
   the palette; administration remains dark through the document theme. */
body.industrial-ui {
    --accent:#b423cc; --accent-hover:#8429a6; --accent-soft:#f5dff8;
    --purple:#9b35bd; --purple-soft:#f4e4f8; --focus:transparent;
    min-height:100vh;
    background-color:var(--bg);
    background-image:linear-gradient(rgba(23,32,51,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(23,32,51,.025) 1px,transparent 1px);
    background-size:28px 28px;
}
[data-theme="dark"] body.industrial-ui,
body.admin-area.industrial-ui {
    --bg:#050607; --surface:#0a0c0f; --surface-subtle:#07090b; --surface-raised:#0d1014;
    --text:#d7dde6; --muted:#7f8b9b; --line:#292e34; --line-soft:#171b20;
    --field:#06080a; --field-border:#343a43; --accent:#d946ef; --accent-hover:#a78bfa;
    --accent-soft:#251129; --purple:#d946ef; --purple-soft:#251129; --blue:#71b7ff;
    --blue-soft:#15273a; --green:#33d6a6; --green-soft:#102c25; --orange:#e3bd67;
    --orange-soft:#302714; --danger:#ff5362; --danger-soft:#35151a; --focus:transparent;
    color-scheme:dark;
    background-image:linear-gradient(rgba(255,255,255,.016) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.016) 1px,transparent 1px);
}
.industrial-ui .workspace { min-height:100vh; background:transparent; }
.industrial-ui .main-content {
    min-height:calc(100vh - 70px);
    font-family:"IBM Plex Mono","Cascadia Code","SFMono-Regular",Consolas,monospace;
}

/* Page identity strips */
.industrial-ui .page-header {
    min-height:92px; position:relative; align-items:center; margin:-27px -27px 16px; padding:18px 27px;
    border-bottom:1px solid var(--line); background:color-mix(in srgb,var(--surface) 97%,transparent);
}
.industrial-ui .page-header::before { content:""; position:absolute; top:0; bottom:0; left:0; width:2px; background:var(--accent); }
.industrial-ui .page-header h1 { margin-bottom:5px; color:var(--text); font:800 20px/1.2 Inter,"Segoe UI",sans-serif; letter-spacing:.025em; }
.industrial-ui .page-header .page-subtitle { color:var(--muted); font-size:10px; letter-spacing:.025em; }
.industrial-ui .eyebrow,.industrial-ui .panel-kicker { color:var(--accent); font-size:8px; letter-spacing:.15em; text-transform:uppercase; }
.industrial-ui .section-heading h2 { font:700 15px/1.3 Inter,"Segoe UI",sans-serif; }
.industrial-ui .section-heading h2::before { content:"// "; color:var(--accent); }

/* Panels, forms and expandable operation cards */
.industrial-ui .panel,.industrial-ui .operation-card,.industrial-ui .form-section {
    border:1px solid var(--line); border-top:2px solid var(--accent); border-radius:0;
    background:var(--surface); box-shadow:none;
}
.industrial-ui .panel:nth-of-type(even),.industrial-ui .form-section:nth-of-type(even) { border-top-color:var(--accent-hover); }
.industrial-ui .panel-header { align-items:center; }
.industrial-ui .panel:not(.table-panel) > .panel-header {
    margin:-19px -19px 18px; padding:14px 18px; border-bottom:1px solid var(--line); background:var(--surface-subtle);
}
.industrial-ui .panel-header h2,.industrial-ui .form-section-heading h2 {
    color:var(--text); font:700 14px/1.3 Inter,"Segoe UI",sans-serif;
}
.industrial-ui .panel-header h2::before { content:"// "; color:var(--accent); }
.industrial-ui .panel-meta { color:var(--muted); font-size:9px; letter-spacing:.08em; text-transform:uppercase; }
.industrial-ui .operation-card summary { background:var(--surface); }
.industrial-ui .operation-card summary:hover { background:var(--surface-raised); }
.industrial-ui .operation-symbol,.industrial-ui .workflow-icon {
    border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line)); border-radius:0;
    background:color-mix(in srgb,var(--accent-soft) 68%,var(--surface-subtle)); color:var(--accent-hover);
}
.industrial-ui .operation-symbol .ui-icon,.industrial-ui .workflow-icon .ui-icon { width:18px; height:18px; }
.industrial-ui .form-section { padding:20px; }
.industrial-ui .form-section-heading { margin:-20px -20px 20px; padding:15px 20px; border-bottom:1px solid var(--line); background:var(--surface-subtle); }
.industrial-ui .form-section-heading > span {
    border:1px solid color-mix(in srgb,var(--accent) 55%,var(--line)); border-radius:0;
    background:var(--accent-soft); color:var(--accent);
}
.industrial-ui .form-section-heading p { color:var(--muted); font-size:10px; }

/* Inputs and actions */
.industrial-ui label { color:var(--text); font-size:9px; letter-spacing:.035em; }
.industrial-ui input,.industrial-ui select,.industrial-ui textarea {
    border:1px solid var(--field-border); border-radius:0; background:var(--field); color:var(--text); box-shadow:none;
}
.industrial-ui input:hover,.industrial-ui select:hover,.industrial-ui textarea:hover { border-color:color-mix(in srgb,var(--accent) 55%,var(--field-border)); }
.industrial-ui input:focus,.industrial-ui select:focus,.industrial-ui textarea:focus { outline:1px solid var(--accent); outline-offset:-1px; border-color:var(--accent); box-shadow:none; }
.industrial-ui input::placeholder,.industrial-ui textarea::placeholder { color:var(--muted); }
.industrial-ui input[type="file"]::file-selector-button {
    margin:-7px 9px -7px -7px; padding:9px 10px; border:0; border-right:1px solid var(--field-border);
    background:var(--surface-subtle); color:var(--accent-hover); font:700 8px/1 "IBM Plex Mono",monospace;
    letter-spacing:.08em; text-transform:uppercase; cursor:pointer;
}
.industrial-ui .button {
    border:1px solid var(--field-border); border-radius:0; background:var(--surface-subtle); color:var(--text);
    box-shadow:none; font:800 9px/1.25 "IBM Plex Mono",monospace; letter-spacing:.07em; text-transform:uppercase;
}
.industrial-ui .button:hover { border-color:var(--accent); background:var(--accent-soft); color:var(--accent-hover); }
.industrial-ui .button-primary { border-color:var(--accent); background:var(--accent-soft); color:var(--accent-hover); }
.industrial-ui .button-primary:hover { background:var(--accent); color:#09050a; }
.industrial-ui .button-danger { border-color:var(--danger); background:var(--danger-soft); color:var(--danger); }
.industrial-ui .button-danger:hover { background:var(--danger); color:#fff; }
.industrial-ui .calculated-field { border:1px solid var(--line); border-left:3px solid var(--green); border-radius:0; background:var(--surface-subtle); }
.industrial-ui .performer-fieldset { border-color:var(--line); border-radius:0; background:var(--surface-subtle); }
.industrial-ui .performer-fieldset legend { color:var(--accent-hover); font-size:9px; letter-spacing:.08em; text-transform:uppercase; }
.industrial-ui .danger-zone { padding:16px; border:1px solid color-mix(in srgb,var(--danger) 55%,var(--line)); background:var(--danger-soft); }

/* Dense operational tables */
.industrial-ui .table-panel { border-top-color:var(--accent); }
.industrial-ui .table-panel > .panel-header,.industrial-ui .table-toolbar {
    min-height:72px; padding:14px 18px; border-bottom:1px solid var(--line); background:var(--surface-subtle);
}
.industrial-ui .table-toolbar h2 { color:var(--text); font:700 14px/1.3 Inter,"Segoe UI",sans-serif; }
.industrial-ui .table-toolbar h2::before { content:"// "; color:var(--accent); }
.industrial-ui .table-wrap { background:var(--surface); scrollbar-color:var(--accent) var(--surface-subtle); }
.industrial-ui th {
    padding:12px 13px; border-color:var(--line); background:var(--surface-subtle); color:var(--muted);
    font:800 8px/1.3 "IBM Plex Mono",monospace; letter-spacing:.12em;
}
.industrial-ui td { border-color:var(--line-soft); background:transparent; font-size:11px; }
.industrial-ui tbody tr:hover { background:color-mix(in srgb,var(--accent-soft) 42%,transparent); }
.industrial-ui .entity-avatar { border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line)); border-radius:0; }
.industrial-ui .status-badge {
    min-height:23px; border:1px solid currentColor; border-radius:0; background:transparent;
    font-size:8px; letter-spacing:.06em; text-transform:uppercase;
}
.industrial-ui .status-badge.success,.industrial-ui .status-badge.info,.industrial-ui .status-badge.warning,.industrial-ui .status-badge.neutral { background:transparent; }
.industrial-ui .status-badge.status-booked { border-color:#16966a; background:#e3f6ef; color:#087451; }
.industrial-ui .status-badge.status-cancelled { border-color:#dc4055; background:#fde8ec; color:#b6253b; }
.industrial-ui .status-badge.status-pending { border-color:#9d55ca; background:#f1e6f8; color:#71349b; }
.industrial-ui .status-badge.status-custom { border-color:#438ed0; background:#e5f1fb; color:#236da9; }
[data-theme="dark"] body.industrial-ui .status-badge.status-booked,.admin-area.industrial-ui .status-badge.status-booked { border-color:#33d6a6; background:#102c25; color:#63e1bb; }
[data-theme="dark"] body.industrial-ui .status-badge.status-cancelled,.admin-area.industrial-ui .status-badge.status-cancelled { border-color:#ff5362; background:#35151a; color:#ff8994; }
[data-theme="dark"] body.industrial-ui .status-badge.status-pending,.admin-area.industrial-ui .status-badge.status-pending { border-color:#a78bfa; background:#211936; color:#c2a5ff; }
[data-theme="dark"] body.industrial-ui .status-badge.status-custom,.admin-area.industrial-ui .status-badge.status-custom { border-color:#55a8ed; background:#15273a; color:#71b7ff; }
.industrial-ui .audit-action { border-radius:0; background:var(--surface-subtle); color:var(--accent-hover); }
.industrial-ui .table-action { color:var(--accent-hover); font-size:9px; letter-spacing:.04em; text-transform:uppercase; }
.industrial-ui .table-action:hover { color:var(--accent); }
.industrial-ui .table-search input { min-height:38px; }
.industrial-ui .pagination { min-height:58px; display:flex; align-items:center; justify-content:center; gap:15px; padding:10px 18px; border-top:1px solid var(--line); background:var(--surface-subtle); color:var(--muted); font-size:9px; }

/* Specialist admin and agency cards */
.industrial-ui .admin-page-grid,.industrial-ui .data-page-grid,.industrial-ui .catalog-directory,.industrial-ui .booking-form { gap:14px; }
.industrial-ui .team-layout { border-left:2px solid var(--accent); }
.industrial-ui .warning-panel { border-color:var(--orange); border-top-color:var(--orange); }
.industrial-ui .warning-panel .panel-kicker { color:var(--orange); }
.industrial-ui .inline-confirm { border-color:var(--line); }
.industrial-ui .notice { border-radius:0; border-left:2px solid var(--accent); background:var(--surface); box-shadow:none; }
.industrial-ui .notice-icon { border:1px solid currentColor; border-radius:0; background:transparent !important; }
.industrial-ui .content-editor { border-top-color:var(--accent); }
.industrial-ui .content-tabs { border-color:var(--line); }
.industrial-ui .content-tabs label { border-color:var(--line); background:var(--surface-subtle); color:var(--muted); }
.industrial-ui .content-grid label { border-color:var(--line); background:var(--surface-subtle); }
.industrial-ui .branding-upload-group input[type="file"]::file-selector-button,.industrial-ui .avatar-upload-form input[type="file"]::file-selector-button { background:var(--surface-subtle); color:var(--accent-hover); }
.industrial-ui .operator-assignment-form button { border-color:var(--accent); background:var(--accent-soft); color:var(--accent); }
.industrial-ui .operator-assignment-form button:hover { background:var(--accent); color:#09050a; }

/* Dashboards now consume the same palette, including agency light mode. */
.industrial-ui .command-dashboard {
    --surface:inherit; --surface-subtle:inherit; --surface-raised:inherit; --text:inherit; --muted:inherit;
    min-height:calc(100vh - 70px); color:var(--text); background-color:transparent; background-image:none;
}
.industrial-ui .command-dashboard .dashboard-contextbar,.industrial-ui .command-status-strip { background:var(--surface); }
.industrial-ui .command-dashboard .reference-kpi,.industrial-ui .command-dashboard .panel { background:var(--surface); }
.industrial-ui .command-dashboard .collection-summary > div,.industrial-ui .command-dashboard .satisfaction-note,
.industrial-ui .command-dashboard .bar-track,.industrial-ui .command-dashboard .progress-track,
.industrial-ui .command-dashboard .quick-access-actions a,.industrial-ui .command-dashboard th { background:var(--surface-subtle); }
.industrial-ui .command-dashboard .semi-gauge::after { background:var(--surface); }
.industrial-ui .command-dashboard tbody tr:hover,.industrial-ui .command-dashboard .context-metrics > a:hover { background:var(--surface-raised); }

@media (max-width:900px) {
    .industrial-ui .page-header { margin:-21px -21px 16px; padding-right:21px; padding-left:21px; }
    .industrial-ui .admin-form-card { position:static; }
}
@media (max-width:680px) {
    .industrial-ui .page-header { min-height:auto; margin:-17px -13px 14px; padding:16px 13px; }
    .industrial-ui .page-header h1 { font-size:17px; }
    .industrial-ui .topbar { padding-right:10px; padding-left:10px; }
    .industrial-ui .topbar-actions { gap:7px; }
    .industrial-ui .topbar-quick { width:36px; padding:0; justify-content:center; font-size:0; }
    .industrial-ui .topbar-quick span { font-size:15px; }
    .industrial-ui .panel:not(.table-panel) > .panel-header { margin:-19px -19px 16px; }
    .industrial-ui .table-toolbar { align-items:stretch; }
    .industrial-ui .pagination { align-items:stretch; flex-direction:column; text-align:center; }
    .industrial-ui .pagination .button { width:100%; }
}

/* Production-safe authenticated-shell fallback -----------------------------
   Some long-running bare-metal installations can retain a compiled pre-r8
   base template without the body marker. Scope the core operations language
   directly to .app-shell as well, so panels never fall back to the legacy
   rounded cards while the Twig/opcache layers are being refreshed. */
.agency-area .app-shell { --accent:#b423cc; --accent-hover:#8429a6; --accent-soft:#f5dff8; --purple:#9b35bd; --purple-soft:#f4e4f8; --focus:transparent; }
[data-theme="dark"] .app-shell,.admin-area .app-shell {
    --bg:#050607; --surface:#0a0c0f; --surface-subtle:#07090b; --surface-raised:#0d1014;
    --text:#d7dde6; --muted:#7f8b9b; --line:#292e34; --line-soft:#171b20;
    --field:#06080a; --field-border:#343a43; --accent:#d946ef; --accent-hover:#a78bfa;
    --accent-soft:#251129; --purple:#d946ef; --purple-soft:#251129; --blue:#71b7ff;
    --blue-soft:#15273a; --green:#33d6a6; --green-soft:#102c25; --orange:#e3bd67;
    --orange-soft:#302714; --danger:#ff5362; --danger-soft:#35151a; --focus:transparent;
}
.app-shell { background-color:var(--bg); background-image:linear-gradient(rgba(255,255,255,.016) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.016) 1px,transparent 1px); background-size:28px 28px; }
.app-shell .workspace { min-height:100vh; background:transparent; }
.app-shell .main-content { min-height:calc(100vh - 70px); font-family:"IBM Plex Mono","Cascadia Code","SFMono-Regular",Consolas,monospace; }
.app-shell .page-header { min-height:92px; position:relative; align-items:center; margin:-27px -27px 16px; padding:18px 27px; border-bottom:1px solid var(--line); background:var(--surface); }
.app-shell .page-header::before { content:""; position:absolute; inset:0 auto 0 0; width:2px; background:var(--accent); }
.app-shell .page-header h1 { margin-bottom:5px; color:var(--text); font:800 20px/1.2 Inter,"Segoe UI",sans-serif; letter-spacing:.025em; }
.app-shell .page-header .page-subtitle { color:var(--muted); font-size:10px; letter-spacing:.025em; }
.app-shell .eyebrow,.app-shell .panel-kicker { color:var(--accent); font-size:8px; letter-spacing:.15em; text-transform:uppercase; }
.app-shell .panel,.app-shell .operation-card,.app-shell .form-section { border:1px solid var(--line); border-top:2px solid var(--accent); border-radius:0; background:var(--surface); box-shadow:none; }
.app-shell .panel:nth-of-type(even),.app-shell .form-section:nth-of-type(even) { border-top-color:var(--accent-hover); }
.app-shell .panel:not(.table-panel) > .panel-header { align-items:center; margin:-19px -19px 18px; padding:14px 18px; border-bottom:1px solid var(--line); background:var(--surface-subtle); }
.app-shell .panel-header h2,.app-shell .form-section-heading h2,.app-shell .table-toolbar h2 { color:var(--text); font:700 14px/1.3 Inter,"Segoe UI",sans-serif; }
.app-shell .panel-header h2::before,.app-shell .table-toolbar h2::before { content:"// "; color:var(--accent); }
.app-shell .panel-meta { color:var(--muted); font-size:9px; letter-spacing:.08em; text-transform:uppercase; }
.app-shell .operation-symbol,.app-shell .workflow-icon { border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line)); border-radius:0; background:var(--accent-soft); color:var(--accent-hover); }
.app-shell .form-section { padding:20px; }
.app-shell .form-section-heading { margin:-20px -20px 20px; padding:15px 20px; border-bottom:1px solid var(--line); background:var(--surface-subtle); }
.app-shell .form-section-heading > span { border:1px solid var(--accent); border-radius:0; background:var(--accent-soft); color:var(--accent); }
.app-shell input,.app-shell select,.app-shell textarea { border:1px solid var(--field-border); border-radius:0; background:var(--field); color:var(--text); box-shadow:none; }
.app-shell input:focus,.app-shell select:focus,.app-shell textarea:focus { outline:1px solid var(--accent); outline-offset:-1px; border-color:var(--accent); box-shadow:none; }
.app-shell .button { border-radius:0; box-shadow:none; font-family:"IBM Plex Mono",monospace; font-size:9px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.app-shell .button-primary { border-color:var(--accent); background:var(--accent-soft); color:var(--accent-hover); }
.app-shell .button-primary:hover { background:var(--accent); color:#09050a; }
.app-shell .table-panel { border-top-color:var(--accent); }
.app-shell .table-panel > .panel-header,.app-shell .table-toolbar { min-height:72px; padding:14px 18px; border-bottom:1px solid var(--line); background:var(--surface-subtle); }
.app-shell th { border-color:var(--line); background:var(--surface-subtle); color:var(--muted); font:800 8px/1.3 "IBM Plex Mono",monospace; letter-spacing:.12em; }
.app-shell td { border-color:var(--line-soft); background:transparent; font-size:11px; }
.app-shell tbody tr:hover { background:color-mix(in srgb,var(--accent-soft) 42%,transparent); }
.app-shell .entity-avatar,.app-shell .status-badge,.app-shell .audit-action,.app-shell .notice,.app-shell .notice-icon,.app-shell .performer-fieldset,.app-shell .calculated-field { border-radius:0; }
.app-shell .content-tabs,.app-shell .content-tabs label,.app-shell .content-grid label { border-color:var(--line); border-radius:0; }
.app-shell .content-tabs label,.app-shell .content-grid label { background:var(--surface-subtle); }
.app-shell .warning-panel { border-color:var(--orange); border-top-color:var(--orange); }
.app-shell .team-layout { border-left:2px solid var(--accent); }
@media (max-width:900px) { .app-shell .page-header { margin:-21px -21px 16px; padding-right:21px; padding-left:21px; } }
@media (max-width:680px) {
    .app-shell .page-header { min-height:auto; margin:-17px -13px 14px; padding:16px 13px; }
    .app-shell .page-header h1 { font-size:17px; }
    .app-shell .panel:not(.table-panel) > .panel-header { margin:-19px -19px 16px; }
}
