@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-ext-400-normal-BtiwyxMk.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-400-normal-BjWJ59Pq.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2) format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-ext-500-normal-BJfUCQsA.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-500-normal-DR84L5F-.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2) format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-ext-600-normal-4vooXBpG.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-600-normal-DRtaDpgU.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-600-normal-Aqo67rzb.woff2) format("woff2"),url(/assets/dm-sans-latin-600-normal-BmdmIIQ2.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-ext-700-normal-CJIcxD6K.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-700-normal-BLI3TTWz.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-700-normal-DvUfVpUG.woff2) format("woff2"),url(/assets/dm-sans-latin-700-normal-CUSSCpQX.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-semi-condensed-vietnamese-700-normal-Dm7RZTvf.woff2) format("woff2"),url(/assets/barlow-semi-condensed-vietnamese-700-normal-BvUTSFNY.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-semi-condensed-latin-ext-700-normal-BhgEo64M.woff2) format("woff2"),url(/assets/barlow-semi-condensed-latin-ext-700-normal-C0vCoZIV.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-semi-condensed-latin-700-normal-BpqDG8I9.woff2) format("woff2"),url(/assets/barlow-semi-condensed-latin-700-normal-BMyZXq_9.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;--acg-red: #fa0041;--acg-navy: #00284b;--acg-charcoal: #2e2d2c;--acg-gray: #888780;--acg-bg: #f4f4f2;--acg-surface: #ffffff;--acg-border: #e0e0e0;--acg-on-red: #ffffff;--acg-on-navy: #ffffff;--acg-red-soft: #fde6ec;--acg-navy-soft: #e3ebf3;--acg-surface-2: #faf9f7;--acg-muted: #6b6a65;--acg-red-text: #d4003a;--acg-ok: #1f7a52;--acg-ok-soft: #e2f3ea;--acg-warn: #9a6700;--acg-warn-soft: #fff8e6;--h0: #eef2f6;--h1: #c9d8e8;--h2: #7fa2c6;--h3: #00284b;--h4: #fa0041;--stop: #c9ced6;--shadow: 0 1px 3px rgb(0 20 40 / 7%);--ring: rgb(0 40 75 / 18%);--sidebar-bg: #00284b;--sidebar-bg-deep: #001a33;--red-glow: rgb(250 0 65 / 18%);--shadow-lift: 0 8px 24px rgb(0 0 0 / 18%);--font-body: "DM Sans", Arial, sans-serif;--font-kpi: "Barlow Semi Condensed", "DM Sans", "Arial Narrow", Arial, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, Consolas, monospace;--radius: 10px;--radius-card: 18px;--radius-field: 10px;--radius-pill: 999px;--sidebar-w: 248px;--gutter: 16px;--touch: 44px;--bg: var(--acg-bg);--surface: var(--acg-surface);--surface-2: var(--acg-surface-2);--ink: var(--acg-charcoal);--muted: var(--acg-muted);--label: var(--acg-gray);--line: var(--acg-border);--red: var(--acg-red);--red-soft: var(--acg-red-soft);--red-text: var(--acg-red-text);--on-red: var(--acg-on-red);--navy: var(--acg-navy);--navy-soft: var(--acg-navy-soft);--on-navy: var(--acg-on-navy);--ok: var(--acg-ok);--ok-soft: var(--acg-ok-soft);--warn: var(--acg-warn);--warn-soft: var(--acg-warn-soft);--setup: var(--acg-red);--focus: var(--acg-navy);--font-display: var(--font-body)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--acg-red: #ff4f7a;--acg-navy: #7fb2e5;--acg-charcoal: #e5ecf3;--acg-gray: #93a0af;--acg-bg: #0a1520;--acg-surface: #111f2d;--acg-border: #22344a;--acg-on-red: #0a1520;--acg-on-navy: #0a1520;--acg-red-soft: #3a1622;--acg-red-text: #ff4f7a;--acg-navy-soft: #16304a;--acg-surface-2: #0e1a26;--acg-muted: #93a0af;--acg-ok: #5ccb94;--acg-ok-soft: #123326;--acg-warn: #f2c14e;--acg-warn-soft: #3a2e10;--h0: #142333;--h1: #1d3b5a;--h2: #2f5f8f;--h3: #5e9bd6;--h4: #ff4f7a;--stop: #3a4a5d;--shadow: 0 1px 3px rgb(0 0 0 / 45%);--ring: rgb(127 178 229 / 30%);--sidebar-bg: #0d1c2b;--sidebar-bg-deep: #08121c;--red-glow: rgb(255 79 122 / 20%)}}:root[data-theme=dark]{color-scheme:dark;--acg-red: #ff4f7a;--acg-navy: #7fb2e5;--acg-charcoal: #e5ecf3;--acg-gray: #93a0af;--acg-bg: #0a1520;--acg-surface: #111f2d;--acg-border: #22344a;--acg-on-red: #0a1520;--acg-on-navy: #0a1520;--acg-red-soft: #3a1622;--acg-red-text: #ff4f7a;--acg-navy-soft: #16304a;--acg-surface-2: #0e1a26;--acg-muted: #93a0af;--acg-ok: #5ccb94;--acg-ok-soft: #123326;--acg-warn: #f2c14e;--acg-warn-soft: #3a2e10;--h0: #142333;--h1: #1d3b5a;--h2: #2f5f8f;--h3: #5e9bd6;--h4: #ff4f7a;--stop: #3a4a5d;--shadow: 0 1px 3px rgb(0 0 0 / 45%);--ring: rgb(127 178 229 / 30%);--sidebar-bg: #0d1c2b;--sidebar-bg-deep: #08121c;--red-glow: rgb(255 79 122 / 20%)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:14px;line-height:1.45}h1,h2,h3{font-family:var(--font-display);margin:0;text-wrap:balance;color:var(--navy)}button,input,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:var(--gutter);top:-100px;z-index:100;background:var(--red);color:var(--on-red);padding:8px 12px;border-radius:var(--radius)}.skip-link:focus{top:8px}.btn{font-weight:700;font-size:13px;min-height:34px;padding:6px 18px;border-radius:var(--radius-pill);display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--red);background:var(--red);color:var(--on-red);cursor:pointer}.btn{transition:filter .15s ease,box-shadow .15s ease,transform .15s ease,background-color .15s ease}.btn:hover:not(:disabled){filter:brightness(.94);transform:translateY(-1px);box-shadow:0 4px 10px #00000026}@media(prefers-reduced-motion:reduce){.btn,.btn:hover:not(:disabled){transition:none;transform:none}}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.ghost{background:transparent;border-color:var(--navy);color:var(--navy)}.btn.ghost:hover:not(:disabled){background:var(--navy-soft);filter:none;box-shadow:none}.btn.ghost.on-dark{color:#fff;border-color:#ffffff73}.btn.ghost.on-dark:hover:not(:disabled){background:#ffffff1f;border-color:#fff}.btn.big{min-height:var(--touch);padding-inline:20px;font-size:15px}.field{display:flex;flex-direction:column;gap:4px}.field label{font-size:11px;letter-spacing:.8px;text-transform:uppercase;font-weight:600;color:var(--muted)}.field input,.select{min-height:38px;padding:6px 10px;border:1px solid var(--line);border-radius:var(--radius-field);background:var(--surface);color:var(--ink);transition:border-color .15s ease,box-shadow .15s ease}.field input:focus,.select:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px var(--ring)}.chip{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:.02em;padding:3px 10px 3px 8px;border-radius:var(--radius-pill);white-space:nowrap}.chip:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}.chip.ok{color:var(--ok);background:var(--ok-soft)}.chip.warn{color:var(--warn);background:var(--warn-soft)}.chip.bad{color:var(--red-text);background:var(--red-soft)}.chip.info{color:var(--navy);background:var(--navy-soft)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow);padding:20px 22px;display:flex;flex-direction:column;gap:12px;min-width:0}.panel h2,.state h2{position:relative;font-size:19px;font-weight:700;padding-bottom:10px;margin-bottom:2px}.panel h2:after,.state h2:after{content:"";position:absolute;left:0;bottom:0;width:44px;height:3px;border-radius:2px;background:var(--red)}.hint{color:var(--muted);font-size:12.5px;max-width:75ch}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow);padding:16px 18px;transition:box-shadow .15s ease,transform .15s ease}.kpi.bad{border-left:3px solid var(--red)}.kpi .l{font-size:10.5px;letter-spacing:.9px;text-transform:uppercase;color:var(--muted);font-weight:600}.kpi .v{font-family:var(--font-kpi);font-size:34px;line-height:1.1;margin-top:4px;font-weight:700;color:var(--navy);font-variant-numeric:tabular-nums}.kpi .v.bad{color:var(--red)}.kpi .v.warn{color:var(--warn)}.kpi .v.ok{color:var(--ok)}.kpi .s{font-size:12px;color:var(--muted)}.scroll{overflow-x:auto;max-width:100%}table{border-collapse:collapse;width:100%;font-size:12.5px}th{font-size:11px;letter-spacing:.7px;text-transform:uppercase;color:var(--muted);text-align:left;font-weight:700;padding:8px 10px;border-bottom:2px solid var(--line);white-space:nowrap}td{padding:9px 10px;border-bottom:1px solid var(--line);white-space:nowrap;font-variant-numeric:tabular-nums}tbody tr:hover td{background:var(--surface-2)}td.n,th.n{text-align:right}.mono{font-family:var(--font-mono);font-size:11.5px}.skeleton{border-radius:var(--radius);background:linear-gradient(90deg,var(--h0) 25%,var(--h1) 37%,var(--h0) 63%);background-size:400% 100%}@media(prefers-reduced-motion:no-preference){.skeleton{animation:shimmer 1.4s ease infinite}}@keyframes shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}.state{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:22px;border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow);background:var(--surface)}.state h2{font-size:18px}.state p{margin:0;color:var(--muted);max-width:70ch}.state.error{border-left:3px solid var(--red);background:var(--red-soft)}.state.error h2{color:var(--red)}.stack{display:flex;flex-direction:column;gap:12px}.row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.check{display:flex;align-items:flex-start;gap:8px;font-size:13px;cursor:pointer}.check input{margin-top:3px;width:18px;height:18px;accent-color:var(--navy)}.link{background:none;border:0;padding:6px 0;color:var(--navy);font-size:13px;font-weight:600;text-decoration:underline;cursor:pointer}fieldset.roles{display:flex;flex-wrap:wrap;gap:8px 24px;border:0;padding:0;margin:0}.qr-row{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}.secret{display:inline-block;margin-top:6px;padding:6px 10px;border:1px solid var(--line);border-radius:4px;background:var(--surface-2);font-family:var(--font-mono);font-size:14px;letter-spacing:1px;word-break:break-all}.codes{list-style:none;margin:0;padding:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px 16px;border:1px dashed var(--line);border-radius:var(--radius);background:var(--surface-2)}.codes li{font-size:15px;letter-spacing:1px}.hint.bad{color:var(--red-text)}.banner.ok{background:var(--ok-soft);color:var(--ok);border-left-color:var(--ok)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px 16px}.rules ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:4px;font-size:13px}.rules li{color:var(--muted)}.rules li.ok{color:var(--ok)}.rules li.bad{color:var(--red-text)}.rules li span[aria-hidden]{display:inline-block;width:1.2em;font-weight:700}.app{min-height:100vh;display:flex;flex-direction:column}.wrap{width:100%;max-width:1320px;margin-inline:auto;padding-inline:var(--gutter)}.topbar{background:var(--surface);border-bottom:1px solid var(--line);border-top:4px solid var(--red)}.topbar .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;padding-block:12px}.brand{display:flex;align-items:center;gap:14px;min-width:0}.brand .logo{display:block;height:44px;width:auto;flex:none}.brand h1{font-size:22px;font-weight:700;color:var(--navy);line-height:1.15}.brand h1 span{color:var(--red)}.brand .site{color:var(--muted);font-size:13px}.topbar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}.plan-select{display:flex;align-items:center;gap:8px}.plan-select label{font-size:11px;letter-spacing:.8px;text-transform:uppercase;font-weight:600;color:var(--muted)}.plan-select .select{min-width:220px;max-width:100%}.user{display:flex;align-items:center;gap:8px;font-size:13px}.user .role{color:var(--muted)}.tabs{background:var(--surface);border-bottom:1px solid var(--line)}.tabs ul{list-style:none;margin:0;padding:0;display:flex;gap:4px;overflow-x:auto}.tabs a{display:block;font-family:var(--font-display);font-size:14.5px;font-weight:600;color:var(--muted);text-decoration:none;padding:10px 14px;border-bottom:3px solid transparent;white-space:nowrap}.tabs a:hover{color:var(--ink)}.tabs a[aria-current=page]{color:var(--navy);border-bottom-color:var(--navy)}main{flex:1;padding-block:18px 40px;display:flex;flex-direction:column;gap:16px}.banner{border-radius:var(--radius);border-left:3px solid var(--navy);padding:10px 14px;font-size:13px;font-weight:500}.banner.info{background:var(--navy-soft);color:var(--navy)}.banner.warn{background:var(--warn-soft);color:var(--warn);border-left-color:var(--warn)}.footer{border-top:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:12px}.footer .wrap{display:flex;flex-wrap:wrap;gap:6px 18px;padding-block:8px}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem var(--gutter);background:radial-gradient(circle at 50% -10%,var(--red-glow),transparent 55%),var(--bg)}.login-card{width:100%;max-width:400px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-lift);padding:2.5rem 2.25rem 2rem;display:flex;flex-direction:column;align-items:center;text-align:center}.login-card .logo{display:block;height:68px;width:auto;margin:0 auto 1.25rem}.login-badge{background:var(--red-soft);border:1px solid color-mix(in srgb,var(--red) 28%,transparent);color:var(--red-text);font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:3px 12px;border-radius:var(--radius-pill)}.login-title{font-family:var(--font-kpi);font-size:40px;font-weight:700;letter-spacing:3px;line-height:1;text-transform:uppercase;color:var(--navy);margin-top:1rem}.login-sub{font-size:13px;color:var(--muted);margin:.45rem 0 1.5rem}.login-card form{width:100%;display:flex;flex-direction:column;gap:.75rem;text-align:left}.login-input{width:100%;background:var(--surface-2);border:1.5px solid var(--line);border-radius:12px;padding:13px 16px;font-size:15px;color:var(--ink);text-align:center;letter-spacing:.5px;outline:none;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease}.login-input::placeholder{color:var(--label);letter-spacing:normal}.login-input:focus{border-color:var(--red);background:var(--surface);box-shadow:0 0 0 3px var(--red-glow)}.login-btn{width:100%;margin-top:.4rem;min-height:48px;background:var(--red);border:1px solid var(--red);border-radius:12px;color:var(--on-red);font-size:15px;font-weight:700;letter-spacing:.5px;cursor:pointer;transition:filter .18s ease,box-shadow .18s ease}.login-btn:hover:not(:disabled){filter:brightness(.92);box-shadow:0 4px 14px var(--red-glow)}.login-btn:disabled{opacity:.55;cursor:not-allowed}.login-error{font-size:12.5px;color:var(--red-text);text-align:center;min-height:1.1em}@media(prefers-reduced-motion:no-preference){.login-card.shake{animation:login-shake .4s}}@keyframes login-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-7px)}40%,80%{transform:translate(7px)}}.login-foot{font-size:11px;color:var(--label);margin-top:1.5rem;letter-spacing:.5px}.login-meta{margin-top:1rem;font-size:12px;color:var(--muted)}.login-links{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:.5rem}.login-card .stack,.login-card .field{text-align:left;width:100%}.operator{min-height:100vh;display:flex;flex-direction:column}.operator .topbar h1{font-size:30px}.operator main{gap:20px}.operator .big-machine{font-family:var(--font-display);font-size:40px;font-weight:700;color:var(--navy)}.operator table{font-size:17px}.operator th{font-size:12px}.operator td,.operator th{padding:10px 12px}@media(max-width:640px){.plan-select{flex-wrap:wrap}.plan-select .select{min-width:0;width:100%}}.app-shell{flex-direction:row;align-items:stretch}.sidebar{width:var(--sidebar-w);flex:none;position:sticky;top:0;height:100vh;overflow-y:auto;display:flex;flex-direction:column;background:var(--sidebar-bg);color:#fff;z-index:30}.sidebar-brand{padding:22px 16px 18px;border-bottom:1px solid rgb(255 255 255 / 12%);display:flex;justify-content:center}.sidebar-brand img{display:block;width:150px;height:auto}.sidebar-nav{flex:1;padding:16px 12px;display:flex;flex-direction:column;gap:4px}.sidebar-nav a{display:flex;align-items:center;gap:12px;min-height:var(--touch);padding:8px 14px;border-radius:var(--radius-pill);color:#ffffffd9;text-decoration:none;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;transition:background-color .15s ease,color .15s ease}.sidebar-nav a svg{flex:none;opacity:.85}.sidebar-nav a:hover{color:#fff;background:#ffffff1a}.sidebar-nav a[aria-current=page]{color:var(--on-red);background:var(--red)}.sidebar-nav a[aria-current=page] svg{opacity:1}.sidebar :focus-visible{outline-color:#fff}.sidebar-user{padding:14px 14px 18px;border-top:1px solid rgb(255 255 255 / 12%);display:flex;flex-direction:column;gap:10px}.user-chip{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid rgb(255 255 255 / 18%);border-radius:16px;background:#ffffff14}.avatar{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--red);color:var(--on-red);font-size:13px;font-weight:700}.user-chip-text{display:flex;flex-direction:column;min-width:0;line-height:1.25}.user-chip-name{font-size:13px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-chip-role{font-size:12px;color:#ffffffb3}.side-link{display:flex;align-items:center;gap:8px;padding:6px 4px;color:#ffffffd9;font-size:13px;font-weight:600;text-decoration:none}.side-link:hover{color:#fff;text-decoration:underline}.side-actions{display:flex;flex-wrap:wrap;gap:8px}.side-actions .btn{flex:1 1 auto}.scrim{position:fixed;inset:0;background:#000a148c;z-index:25}.main-area{flex:1;min-width:0;display:flex;flex-direction:column;min-height:100vh}.main-topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;flex-wrap:wrap;gap:10px 16px;padding:12px clamp(16px,3vw,32px);background:var(--surface);border-bottom:1px solid var(--line);border-top:4px solid var(--red)}.topbar-title{flex:1;min-width:200px}.topbar-title h1{font-size:21px;line-height:1.15}.topbar-title h1 span{color:var(--red)}.topbar-title .site{color:var(--muted);font-size:13px}.menu-btn{display:none;width:var(--touch);height:var(--touch);border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);color:var(--navy);cursor:pointer;place-items:center}.content{flex:1;width:100%;max-width:1400px;padding:24px clamp(16px,3vw,32px) 40px;display:flex;flex-direction:column;gap:18px}.app-shell .footer{padding:8px clamp(16px,3vw,32px)}@media(max-width:960px){.sidebar{position:fixed;inset:0 auto 0 0;transform:translate(-105%);transition:transform .2s ease;box-shadow:0 0 40px #00000059}.sidebar.open{transform:none}.menu-btn{display:grid}}@media(prefers-reduced-motion:reduce){.sidebar{transition:none}}.operator .mono{font-size:16px}
