.qc-tile{--tone:var(--border-strong);border-top:3px solid var(--tone)}.qc-tile.tone-wait{--tone:var(--wait-border)}.qc-tile.tone-ok{--tone:var(--ok-fg)}.qc-tile.tone-info{--tone:var(--info-fg)}.qc-tile.tone-bad{--tone:var(--bad-fg)}.qc-tile.tone-flag{--tone:var(--flag-fg)}.qc-tile.tone-navy{--tone:var(--navy)}@media (prefers-color-scheme:dark){.qc-tile.tone-navy{--tone:var(--brand)}}.qc-tile[aria-pressed=true]{border-color:var(--tone);background:var(--brand-soft);border-top-width:3px}div.qc-tile{cursor:default}.qc-rows tr[tabindex]{cursor:pointer}.qc-rows tr[tabindex]:hover{background:var(--surface-sunken)}.qc-rows tr[tabindex]:focus-visible{outline:2px solid var(--focus);outline-offset:-2px;background:var(--brand-soft)}.qc-keys{font-size:var(--fs-xs);color:var(--text-subtle)}.qc-record kbd,.qc-keys kbd{min-width:1.25rem;height:1.25rem;padding:0 var(--s-1);margin-left:var(--s-1);border-radius:var(--r-sm);font-family:var(--font-mono);font-size:var(--fs-xs);opacity:.75;border:1px solid;place-items:center;line-height:1;display:inline-grid}.qc-keys kbd{margin:0 var(--s-1) 0 0}.qc-topbar{justify-content:space-between;gap:var(--s-2);flex-wrap:wrap;display:flex}.qc-recnav{gap:var(--s-2);flex-wrap:wrap;display:inline-flex}.qc-grid{gap:var(--s-5);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.qc-grid>.qc-main{gap:var(--s-5);min-width:0;display:grid}.qc-buttons button{justify-content:center}@media (width>=1180px){.qc-grid{grid-template-columns:minmax(0,1fr) minmax(18rem,22rem)}.qc-decision{top:calc(var(--topbar-h) + var(--s-4));max-height:calc(100vh - var(--topbar-h) - var(--s-8));position:sticky;overflow:auto}.qc-more{display:none}}@media (width<=1179.98px){.qc-decision{z-index:20;padding:var(--s-3) var(--s-4);border-radius:var(--r-lg) var(--r-lg) 0 0;max-height:70vh;position:sticky;bottom:0;overflow:auto;box-shadow:0 -4px 16px #0f172a24}.qc-decision:not(.is-open) .qc-extra{display:none}.qc-decision .qc-actions{gap:var(--s-2)}.qc-decision .qc-reason{align-items:center;gap:var(--s-2);font-size:var(--fs-sm);grid-template-columns:auto minmax(0,1fr);display:grid}.qc-more{justify-self:start}.qc-buttons kbd{display:none}}@media (width<=520px){.qc-decision .qc-reason{grid-template-columns:minmax(0,1fr)}.qc-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}.qc-buttons button{padding-inline:var(--s-2);font-size:var(--fs-sm)}}.qc-location-body{gap:var(--s-5);flex-wrap:wrap;align-items:flex-start;display:flex}.qc-location-text{flex:16rem;min-width:0}.qc-location-distance{margin:0 0 var(--s-3);font-weight:var(--fw-semibold)}.qc-location-distance.is-far{color:var(--bad-fg)}.qc-minimap{flex:none;width:12.5rem;max-width:100%;height:auto}.qc-map-bg{fill:var(--surface-sunken);stroke:var(--border)}.qc-map-grid{stroke:var(--border);stroke-width:1px;fill:none}.qc-map-fence{fill:var(--ok-bg);fill-opacity:.6;stroke:var(--ok-fg);stroke-dasharray:4 3}.qc-map-line{stroke:var(--text-subtle);stroke-dasharray:3 3}.qc-map-shop{fill:var(--brand);stroke:var(--surface);stroke-width:1.5px}.qc-map-shop-dot{fill:var(--surface)}.qc-map-phone{fill:var(--bad-fg);stroke:var(--surface);stroke-width:2px}.qc-map-phone-halo{fill:var(--bad-fg);fill-opacity:.18}.qc-map-scale path{fill:none;stroke:var(--text);stroke-width:1.5px}.qc-map-scale text,.qc-map-north{fill:var(--text-muted);font-size:11px;font-family:var(--font)}.qc-map-north-arrow{fill:var(--text-muted)}.qc-dialog-backdrop{z-index:90;padding:var(--s-4);background:#0b164073;place-items:center;display:grid;position:fixed;inset:0}.qc-dialog{background:var(--surface);width:min(28rem,100%);color:var(--text);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:var(--s-6);gap:var(--s-3);display:grid}.qc-dialog h2{font-size:var(--fs-lg);margin:0}.qc-dialog p{margin:0}.qc-dialog-facts{gap:var(--s-2);padding:var(--s-3) var(--s-4);border-radius:var(--r-md);background:var(--surface-sunken);margin:0;display:grid}.qc-dialog-facts div{gap:var(--s-2);grid-template-columns:5rem minmax(0,1fr);display:grid}.qc-dialog-facts dt{color:var(--text-muted);font-size:var(--fs-sm)}.qc-dialog-facts dd{overflow-wrap:anywhere;margin:0}.qc-dialog-actions{justify-content:flex-end;gap:var(--s-2);margin-top:var(--s-2);flex-wrap:wrap;display:flex}.qc-undo{left:50%;bottom:var(--s-6);z-index:80;align-items:center;gap:var(--s-3);width:min(26rem,100vw - 2rem);padding:var(--s-3) var(--s-3) var(--s-3) var(--s-4);border-radius:var(--r-md);background:var(--surface);color:var(--text);border:1px solid var(--border);border-left:4px solid var(--bad-fg);box-shadow:var(--shadow-md);font-size:var(--fs-md);display:flex;position:fixed;overflow:hidden;transform:translate(-50%)}.qc-undo>svg{color:var(--bad-fg);flex:none}.qc-undo-text{flex:1;min-width:0;margin:0}.qc-undo-hint{font-size:var(--fs-xs);color:var(--text-subtle);display:block}.qc-undo-timer{background:var(--bad-fg);transform-origin:0;height:3px;animation-name:qc-undo-shrink;animation-timing-function:linear;animation-fill-mode:forwards;position:absolute;bottom:0;left:0;right:0}@keyframes qc-undo-shrink{to{transform:scaleX(0)}}@media (prefers-reduced-motion:reduce){.qc-undo-timer{animation:none}}@media (width<=1179.98px){.qc-undo{bottom:calc(var(--s-10) * 4)}}.qc-chip{align-items:center;gap:var(--s-1);border-radius:var(--r-pill);align-self:end;display:inline-flex}.qc-chip.is-on{background:var(--flag-bg);border-color:var(--flag-border);color:var(--flag-fg)}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand:#ae1d24;--brand-bright:#c8262e;--brand-strong:#8c171d;--brand-soft:#fbeced;--on-brand:#fff;--navy:#232426;--ink:#232426;--bg:#f5f5f6;--surface:#fff;--surface-2:#f8f8f9;--surface-sunken:#efeff1;--border:#e0e0e3;--border-soft:#eaeaec;--border-strong:#8d8e92;--text:#232426;--text-muted:#3f4042;--text-subtle:#58595b;--link:#9b1a21;--side-bg:#232426;--side-text:#c9cacd;--side-text-strong:#fff;--side-hover:#303134;--side-active:#3b3c40;--side-accent:#f2777c;--side-line:#45464a;--ok-fg:#0f6b3a;--ok-bg:#e4f5ea;--ok-border:#9fd6b3;--info-fg:#1747a6;--info-bg:#e7efff;--info-border:#a9c2f5;--wait-fg:#5b4a00;--wait-bg:#fff4c7;--wait-border:#e0c95e;--review-fg:#8a3b00;--review-bg:#ffe8d6;--review-border:#f2b384;--watch-fg:#8a4a00;--watch-bg:#fef3c7;--bad-fg:#a1122a;--bad-bg:#fde7ea;--bad-border:#f0a5b1;--neutral-fg:#3f4a5c;--neutral-bg:#eef1f6;--neutral-border:#cdd4e0;--flag-fg:#6b21a8;--flag-bg:#f3e8ff;--flag-border:#d4b2f5;--primary-bg:#ae1d24;--primary-bg-hover:#8c171d;--danger-fg:#8f1219;--danger-bg:#8f1219;--danger-bg-hover:#7a0f15;--on-danger:#fff;--focus:#232426;--font:"Inter Variable", "Inter", "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "Cascadia Mono", "SFMono-Regular", Consolas, monospace;--fs-xs:.75rem;--fs-sm:.8125rem;--fs-md:.875rem;--fs-base:.9375rem;--fs-lg:1.125rem;--fs-xl:1.375rem;--fs-2xl:1.75rem;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.25rem;--s-6:1.5rem;--s-8:2rem;--s-10:2.5rem;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-pill:999px;--shadow-sm:0 1px 2px #2324260f;--shadow-md:0 4px 16px #2324261a;--shadow-lg:0 18px 48px #2324263d;--shadow-card:0 6px 18px -12px #23242640, 0 1px 2px #2324260a;--chart-1:#2a78d6;--chart-2:#eb6834;--chart-3:#1baf7a;--chart-4:#eda100;--chart-muted:#a9aaae;--chart-grid:#e8e8ea;--chart-tick:#52514e;--band-good:#16a34a;--band-watch:#d97706;--band-act:#dc2626;--sidebar-w:15rem;--sidebar-rail:4.25rem;--topbar-h:4rem}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--brand:#f2777c;--brand-strong:#f7a1a4;--brand-soft:#3a1618;--bg:#121314;--surface:#1b1c1e;--surface-2:#202124;--surface-sunken:#161719;--border:#323337;--border-strong:#6c6d72;--text:#ececed;--text-muted:#c4c5c8;--text-subtle:#a8a9ad;--link:#f59a9e;--side-bg:#0d0d0e;--side-text:#bfc0c3;--side-hover:#1c1d1f;--side-active:#2a2b2e;--ok-fg:#8de0ad;--ok-bg:#0f2e1d;--ok-border:#2a6b45;--info-fg:#a9c4ff;--info-bg:#14234a;--info-border:#34508f;--wait-fg:#f3d871;--wait-bg:#2f2808;--wait-border:#75631a;--review-fg:#ffbb86;--review-bg:#3a1e08;--review-border:#82481a;--bad-fg:#ff9eab;--bad-bg:#3b0f18;--bad-border:#842a3a;--neutral-fg:#c8c9cc;--neutral-bg:#26272a;--neutral-border:#46474c;--flag-fg:#dcb8ff;--flag-bg:#2a1745;--flag-border:#63399c;--primary-bg:#f2777c;--primary-bg-hover:#f7a1a4;--on-brand:#1f0507;--danger-fg:#ffb3b8;--danger-bg:#ffb3b8;--danger-bg-hover:#ffd0d3;--on-danger:#2a0508;--focus:#f2f2f3;--brand-bright:#f58489;--ink:#f4f4f5;--border-soft:#27282b;--side-line:#2e2f33;--watch-fg:#fcd38a;--watch-bg:#3a2a08;--shadow-card:0 1px 2px #00000080;--chart-1:#3987e5;--chart-2:#d95926;--chart-3:#199e70;--chart-4:#c98500;--chart-muted:#6a6b70;--chart-grid:#2e2f33;--chart-tick:#b0b1b5;--band-good:#22a55a;--band-watch:#e08a1e;--band-act:#e66767;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 16px #0006;--shadow-lg:0 18px 48px #0009}}*,:before,:after{box-sizing:border-box}body{font-family:var(--font);font-size:var(--fs-base);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}h1,h2,h3,h4,h5{line-height:1.25;font-weight:var(--fw-semibold);margin:0}h1{font-size:var(--fs-xl);font-weight:var(--fw-bold);letter-spacing:-.01em}h2{font-size:var(--fs-lg)}h3{font-size:var(--fs-base)}h4{font-size:var(--fs-md)}h5{font-size:var(--fs-sm);color:var(--text-muted)}p{margin:0}a{color:var(--link);text-underline-offset:2px}code{font-family:var(--font-mono);background:var(--surface-sunken);border-radius:4px;padding:.1em .35em;font-size:.9em}ul{padding-left:var(--s-5);margin:0}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{left:var(--s-2);z-index:80;background:var(--surface);color:var(--link);padding:var(--s-2) var(--s-3);border-radius:var(--r-sm);box-shadow:var(--shadow-md);position:absolute;top:-4rem}.skip-link:focus{top:var(--s-2)}.muted{font-size:var(--fs-sm);color:var(--text-subtle)}[role=alert]{color:var(--bad-fg)}.alert{gap:var(--s-2);padding:var(--s-3) var(--s-4);border-radius:var(--r-md);border:1px solid var(--bad-border);background:var(--bad-bg);color:var(--bad-fg);font-size:var(--fs-md);align-items:flex-start;display:flex}.alert svg{flex:none;margin-top:2px}.field-error{font-size:var(--fs-sm);font-weight:var(--fw-medium)}.field .field-error{color:var(--bad-fg);margin:0}input,select,textarea,button{font:inherit;color:inherit}input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{min-height:2.375rem;padding:var(--s-2) var(--s-3);border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font-size:var(--fs-md);width:100%;font-weight:400}input[type=file]{font-size:var(--fs-md);color:var(--text);font-weight:400}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--focus);outline-offset:0;border-color:var(--focus)}input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--brand);margin:0}.field,.stack label:not(.inline),.filters label{gap:var(--s-1);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-muted);display:grid}label.inline{gap:var(--s-2);font-size:var(--fs-md);color:var(--text);align-items:center;font-weight:400;display:flex}fieldset{border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-3) var(--s-4);gap:var(--s-2);margin:0;display:grid}legend{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-muted);padding:0 var(--s-1)}button,.btn{justify-content:center;align-items:center;gap:var(--s-2);min-height:2.375rem;padding:0 var(--s-4);border-radius:var(--r-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font-size:var(--fs-md);font-weight:var(--fw-medium);cursor:pointer;white-space:nowrap;text-decoration:none;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}button:hover:not(:disabled){background:var(--surface-sunken)}button:disabled{opacity:.55;cursor:not-allowed}button[type=submit],.btn-primary{background:var(--primary-bg);border-color:var(--primary-bg);color:var(--on-brand)}button[type=submit]:hover:not(:disabled),.btn-primary:hover:not(:disabled){background:var(--primary-bg-hover);border-color:var(--primary-bg-hover)}.btn-danger{background:var(--surface);border-color:var(--danger-bg);color:var(--danger-fg);font-weight:var(--fw-semibold)}.btn-danger:hover:not(:disabled){background:var(--danger-bg-hover);border-color:var(--danger-bg-hover);color:var(--on-danger)}.btn-ghost{background:0 0;border-color:#0000}.btn-sm{min-height:2rem;padding:0 var(--s-3);font-size:var(--fs-sm)}.btn-icon{width:2.375rem;padding:0}.row{gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}.shell{background:linear-gradient(to right, var(--side-bg) var(--sidebar-w), transparent var(--sidebar-w));grid-template-columns:var(--sidebar-w) minmax(0, 1fr);grid-template-rows:auto 1fr;grid-template-areas:"side top""side main";min-height:100vh;display:grid}.shell.is-rail{grid-template-columns:var(--sidebar-rail) minmax(0, 1fr);background:linear-gradient(to right, var(--side-bg) var(--sidebar-rail), transparent var(--sidebar-rail))}.shell.no-nav{background:0 0;grid-template-columns:minmax(0,1fr);grid-template-areas:"top""main"}.sidebar{overscroll-behavior:contain;gap:var(--s-4);height:100vh;padding:var(--s-5) var(--s-3) var(--s-3);background:var(--side-bg);color:var(--side-text);scrollbar-width:thin;scrollbar-color:var(--side-active) transparent;flex-direction:column;grid-area:side;display:flex;position:sticky;top:0;overflow-y:auto}.brand{align-items:center;gap:var(--s-3);min-width:0;display:inline-flex}.sidebar .brand{padding:0 var(--s-2)}.brand-mark{border-radius:var(--r-md);background:#fff;flex:none;place-items:center;width:2.25rem;height:2.25rem;display:grid;box-shadow:0 0 0 1px #00000014}.brand-mark img{width:1.75rem;height:1.75rem;display:block}.brand-logo{padding:var(--s-3) var(--s-4);border-radius:var(--r-lg);background:#fff;line-height:0;display:inline-block}.brand-logo img{width:15rem;max-width:100%;height:auto;display:block}.brand-words{min-width:0;line-height:1.1;display:grid}.brand-text{letter-spacing:-.02em;color:var(--side-text-strong);white-space:nowrap;font-size:1.1875rem;font-weight:800}.brand-accent{color:var(--side-accent)}.brand-tag{font-size:.625rem;font-weight:var(--fw-semibold);letter-spacing:.24em;text-transform:uppercase;color:var(--side-text);margin-top:3px}.pickers{gap:var(--s-3);padding:0 var(--s-2);display:grid}.pickers label{gap:var(--s-1);display:grid}.picker-label,.nav-group-label{font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--side-text)}.pickers select{background-color:var(--side-hover);color:var(--side-text-strong);border-color:var(--side-line);border-radius:var(--r-md);font-weight:var(--fw-medium)}.pickers select:focus-visible{outline-color:var(--side-accent);border-color:var(--side-accent)}.side-nav{gap:var(--s-4);align-content:start;display:grid}.nav-group{gap:2px;display:grid}.nav-group-label{padding:0 var(--s-3) var(--s-1)}.side-nav a{align-items:center;gap:var(--s-3);min-height:2.5rem;padding:0 var(--s-3);border-radius:var(--r-md);color:var(--side-text);font-size:var(--fs-base);font-weight:var(--fw-medium);white-space:nowrap;text-decoration:none;transition:background-color .15s,color .15s;display:flex;position:relative}.side-nav a svg{flex:none}.side-nav a:hover{background:var(--side-hover);color:var(--side-text-strong)}.side-nav a.active{background:var(--side-active);color:var(--side-text-strong)}.side-nav a.active:before{content:"";background:var(--side-accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:.5rem;bottom:.5rem;left:0}.sidebar :focus-visible{outline-color:var(--side-accent)}.side-foot{gap:var(--s-2);margin-top:auto;display:grid}.side-card{padding:var(--s-3);border-radius:var(--r-md);background:var(--side-hover);font-size:var(--fs-sm);gap:2px;display:grid}.side-role{color:var(--side-text-strong);font-weight:var(--fw-semibold)}.side-ver{font-size:var(--fs-xs)}.sidebar .btn-ghost{justify-content:flex-start;gap:var(--s-3);padding:0 var(--s-3);color:var(--side-text)}.sidebar .btn-ghost:hover:not(:disabled){background:var(--side-hover);color:var(--side-text-strong)}.is-rail .sidebar{padding-inline:var(--s-2)}.is-rail .sidebar .brand-words,.is-rail .sidebar .nav-label,.is-rail .sidebar .pickers,.is-rail .sidebar .side-card{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.is-rail .sidebar .nav-group-label{visibility:hidden;height:.5rem;padding:0;overflow:hidden}.is-rail .sidebar .brand,.is-rail .side-nav a,.is-rail .sidebar .btn-ghost{justify-content:center;padding:0}.topbar{z-index:15;background:var(--surface);border-bottom:1px solid var(--border);grid-area:top;position:sticky;top:0;box-shadow:0 1px #23242605}.topbar-row{align-items:flex-start;gap:var(--s-3);padding:var(--s-3) var(--s-8);min-height:var(--topbar-h);display:flex}.topbar .brand-text{color:var(--text)}.topbar .brand-accent{color:var(--brand)}.topbar .brand-tag{display:none}.header-slot{flex:1;align-items:center;min-width:0;min-height:2.5rem;display:flex}.header-slot:empty{visibility:hidden}.user-chip{align-items:center;gap:var(--s-2);min-height:2.5rem;font-size:var(--fs-md);display:inline-flex}.avatar{border-radius:var(--r-pill);background:var(--brand-soft);width:2rem;height:2rem;color:var(--link);font-size:var(--fs-xs);font-weight:var(--fw-bold);place-items:center;display:grid}.user-name{font-weight:var(--fw-medium);white-space:nowrap}.role-tag{font-size:var(--fs-xs);padding:.125rem var(--s-2);border-radius:var(--r-pill);border:1px solid var(--border);color:var(--text-muted);background:var(--surface-2)}.logout-btn{border-radius:var(--r-md);min-height:2.5rem}.menu-btn{display:none}.main{grid-area:main;min-width:0}.page{gap:var(--s-5);padding:var(--s-6) var(--s-8) var(--s-10);max-width:100rem;display:grid}.scrim{z-index:30;background:#23242673;position:fixed;inset:0}@media (width<=899px){.shell,.shell.is-rail{background:0 0;grid-template-columns:minmax(0,1fr);grid-template-areas:"top""main"}.sidebar{z-index:40;width:min(18rem,86vw);box-shadow:var(--shadow-lg);transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-102%)}.is-open .sidebar{transform:none}.is-rail .sidebar .brand-words,.is-rail .sidebar .nav-label,.is-rail .sidebar .pickers,.is-rail .sidebar .side-card{clip:auto;width:auto;height:auto;position:static;overflow:visible}.is-rail .sidebar .nav-group-label{visibility:visible;height:auto;padding:0 var(--s-3) var(--s-1)}.is-rail .side-nav a,.is-rail .sidebar .btn-ghost{padding:0 var(--s-3);justify-content:flex-start}.side-foot .btn-ghost{display:none}.menu-btn{flex:none;display:inline-flex}.topbar-row{padding:var(--s-2) var(--s-4);gap:var(--s-2)}.user-name,.role-tag,.logout-btn .btn-label{display:none}.logout-btn{width:2.5rem;padding:0}.page{padding:var(--s-4) var(--s-4) var(--s-8);gap:var(--s-4)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.page-header{align-items:center;gap:var(--s-2) var(--s-4);flex-wrap:wrap;flex:1;min-width:0;display:flex}.page>.page-header{padding-bottom:var(--s-1)}.page-header-text{flex:14rem;gap:2px;min-width:0;display:grid}.page-header h1{color:var(--ink);letter-spacing:-.02em;font-size:1.375rem;font-weight:800;line-height:1.2}.page-sub{font-size:var(--fs-md);color:var(--text-muted)}.page-actions{gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}.page-filters{flex:100%;min-width:0}@media (width>=1500px){.page-filters{flex:0 auto}}@media (width<=899px){.page-filters{flex:none}.page-header h1{font-size:var(--fs-lg)}}.breadcrumbs ol{align-items:center;gap:var(--s-1);font-size:var(--fs-sm);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li{align-items:center;gap:var(--s-1);color:var(--text-subtle);display:inline-flex}.breadcrumbs a{align-items:center;gap:var(--s-1);color:var(--text-muted);text-decoration:none;display:inline-flex}.breadcrumbs a:hover{color:var(--link);text-decoration:underline}.breadcrumbs [aria-current=page]{color:var(--text);font-weight:var(--fw-medium)}.geo-trail{align-items:center;gap:var(--s-1);font-size:var(--fs-md);color:var(--text-muted);display:flex}.geo-trail ol{flex-wrap:wrap;align-items:center;gap:2px;margin:0;padding:0;list-style:none;display:flex}.geo-trail li{align-items:center;gap:2px;display:inline-flex}.geo-trail [aria-current]{color:var(--ink);font-weight:var(--fw-semibold)}.link-btn{min-height:0;color:var(--link);font-weight:var(--fw-medium);font-size:inherit;text-underline-offset:2px;background:0 0;border:0;padding:0;text-decoration:underline}.link-btn:hover:not(:disabled){color:var(--primary-bg);background:0 0}.card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--r-lg);box-shadow:var(--shadow-card);padding:var(--s-5);min-width:0}.card-head{justify-content:space-between;align-items:center;gap:var(--s-3);margin-bottom:var(--s-4);flex-wrap:wrap;display:flex}.card-head h2,.card-head h3{align-items:center;gap:var(--s-2);color:var(--ink);display:flex}.card-head svg{color:var(--text-subtle)}.card-flush{padding:0;overflow:hidden}.card-flush>.card-head{padding:var(--s-4) var(--s-5) 0}.panel{gap:var(--s-4);align-content:start;display:grid}.panel-head{justify-content:space-between;align-items:flex-start;gap:var(--s-3);flex-wrap:wrap;display:flex}.panel-head h2{font-size:1.0625rem;font-weight:var(--fw-bold);color:var(--ink)}.panel-sub{font-size:var(--fs-md);color:var(--text-muted);margin-top:2px}.panel-actions{gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}.card-flush.panel>.panel-head{padding:var(--s-5) var(--s-5) 0}.card-flush.panel>.alert,.card-flush.panel>.empty,.card-flush.panel>.muted,.card-flush.panel>[role=status]{margin:0 var(--s-5)}.card-flush.panel>.muted:last-child,.card-flush.panel>.pager:last-child{margin-bottom:var(--s-4)}.card-flush.panel .table-wrap{border-left:0;border-right:0;border-radius:0}.grid-2{gap:var(--s-5);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=1180px){.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.card{padding:var(--s-4)}}.filter-host{display:contents}.filters{justify-content:flex-end;align-items:center;gap:var(--s-2);flex-wrap:wrap;margin:0;display:flex}.filters label{display:block}.select-field select{border-color:var(--border);border-radius:var(--r-md);background-color:var(--surface);width:auto;min-width:9rem;max-width:14rem;min-height:2.5rem;font-weight:var(--fw-medium);color:var(--text)}.select-field.is-set select{border-color:var(--brand);background-color:var(--brand-soft);color:var(--link)}.filters [role=alert]{flex-basis:100%}.period{align-items:center;gap:var(--s-2);flex-wrap:wrap;display:inline-flex}.pills{border-radius:var(--r-md);background:var(--surface-sunken);gap:2px;padding:3px;display:inline-flex}.pill{min-height:2.125rem;padding:0 var(--s-3);border-radius:calc(var(--r-md) - 3px);color:var(--text-muted);font-weight:var(--fw-semibold);font-size:var(--fs-md);background:0 0;border:0}.pill:hover:not(:disabled){background:var(--surface);color:var(--text)}.pill[aria-pressed=true]{background:var(--surface);color:var(--link);box-shadow:var(--shadow-sm)}.dates{align-items:center;gap:var(--s-1);color:var(--text-subtle);display:inline-flex}.dates input[type=date]{border-color:var(--border);border-radius:var(--r-md);width:auto;min-height:2.5rem}.toggle-chip{border-radius:var(--r-pill);border-color:var(--border);min-height:2.5rem;font-weight:var(--fw-medium)}.toggle-chip.is-on{background:var(--flag-bg);border-color:var(--flag-border);color:var(--flag-fg)}.filters-toggle,.sheet-head,.sheet-foot,.sheet-scrim{display:none}@media (width<=899px){.filter-host{display:block}.filters-toggle{border-radius:var(--r-pill);min-height:2.5rem;display:inline-flex}.filter-host:not(.is-sheet) .filters{display:none}.is-sheet .sheet-scrim{z-index:60;background:#23242673;display:block;position:fixed;inset:0}.is-sheet .filters{z-index:61;gap:var(--s-3);max-height:85vh;padding:var(--s-4) var(--s-4) calc(var(--s-4) + env(safe-area-inset-bottom));background:var(--surface);border-radius:var(--r-lg) var(--r-lg) 0 0;box-shadow:var(--shadow-lg);grid-template-columns:1fr;animation:.22s sheet-in;display:grid;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.is-sheet .select-field select,.is-sheet .dates input[type=date]{width:100%;max-width:none}.is-sheet .sheet-head{font-size:var(--fs-lg);color:var(--ink);justify-content:space-between;align-items:center;display:flex}.is-sheet .sheet-foot{gap:var(--s-2);grid-template-columns:1fr 1fr;display:grid}.is-sheet .period,.is-sheet .dates{grid-template-columns:1fr auto 1fr;display:grid}.is-sheet .pills{grid-column:1/-1;grid-template-columns:repeat(3,1fr);display:grid}}@keyframes sheet-in{0%{transform:translateY(100%)}}.kpis{gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr));display:grid}@media (width>=900px){.kpis:not(.kpis-sm):not(.qc-tiles):has(>.kpi:nth-child(6)){grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1760px){.kpis:not(.kpis-sm):not(.qc-tiles):has(>.kpi:nth-child(6)){grid-template-columns:repeat(6,minmax(0,1fr))}}.kpis-sm{grid-template-columns:repeat(auto-fill,minmax(11rem,1fr))}.kpi{align-content:start;gap:var(--s-1) var(--s-3);background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--r-lg);box-shadow:var(--shadow-card);padding:var(--s-4) var(--s-5);grid-template-columns:minmax(0,1fr) auto;transition:box-shadow .15s,transform .15s;display:grid;position:relative}.kpi.is-link:hover,.kpi.is-link:focus-within{box-shadow:var(--shadow-md);transform:translateY(-1px)}.kpi-link{border-radius:inherit;position:absolute;inset:0}.kpi-link:focus-visible{outline-offset:2px}.kpi-label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.kpi-icon{border-radius:var(--r-md);background:var(--brand-soft);width:2.25rem;height:2.25rem;color:var(--link);grid-row:span 2;place-items:center;display:grid}.kpi-row{justify-content:space-between;align-items:center;gap:var(--s-2);grid-column:1/-1;min-width:0;display:flex}.kpi .kpi-icon+.kpi-row{grid-column:1}.kpi-value{color:var(--ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.875rem;font-weight:800;line-height:1.15}.kpi-sm .kpi-value{font-size:var(--fs-xl)}.kpi-hint{font-size:var(--fs-sm);color:var(--text-subtle);grid-column:1/-1}.kpi-delta{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-muted);grid-column:1/-1;align-items:center;gap:3px;display:inline-flex}.kpi-delta.is-good{color:var(--ok-fg)}.kpi-delta.is-bad{color:var(--bad-fg)}.spark{flex:none;width:96px;height:28px;display:block}.kpi.is-empty .kpi-value{color:var(--text-subtle)}.kpi.is-empty .kpi-icon{background:var(--surface-sunken);color:var(--text-subtle)}@media (width<=520px){.kpis,.kpis-sm{gap:var(--s-3);grid-template-columns:1fr 1fr}.kpi{padding:var(--s-3)}.kpi-icon,.spark{display:none}.kpi-value{font-size:var(--fs-xl)}}.table-wrap{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);max-width:100%;overflow:auto}.table-wrap.is-tall{max-height:min(70vh,48rem)}.card-flush>.table-wrap{border:0;border-radius:0}table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--fs-md)}th,td{text-align:left;padding:var(--s-2) var(--s-3);border-bottom:1px solid var(--border);vertical-align:middle}thead th{z-index:1;background:var(--surface-2);color:var(--text-muted);font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;position:sticky;top:0}tbody tr:nth-child(2n) td{background:var(--surface-2)}tbody tr:hover td{background:var(--brand-soft)}tbody tr:last-child td{border-bottom:0}tfoot th,tfoot td{border-top:1px solid var(--border-strong);font-weight:var(--fw-semibold);background:var(--surface-2);border-bottom:0}.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.nowrap{white-space:nowrap}td a{font-weight:var(--fw-medium)}.pager{gap:var(--s-3);padding:var(--s-3) var(--s-4);border-top:1px solid var(--border);font-size:var(--fs-sm);color:var(--text-muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:flex-end;align-items:center;display:flex}.empty{justify-items:center;gap:var(--s-2);text-align:center;padding:var(--s-10) var(--s-4);color:var(--text-subtle);font-size:var(--fs-md);display:grid}.empty svg{color:var(--text-subtle);opacity:.6}.skeleton-wrap{gap:var(--s-3);display:grid}.skeleton-grid{gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr));display:grid}.skeleton{border-radius:var(--r-sm);background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--surface-2) 50%, var(--surface-sunken) 75%);background-size:200% 100%;height:2.25rem;animation:1.3s linear infinite shimmer;display:block}.skeleton-tile{border-radius:var(--r-lg);height:6.5rem}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.badge{border-radius:var(--r-pill);border:1px solid var(--neutral-border);background:var(--neutral-bg);color:var(--neutral-fg);font-size:var(--fs-xs);font-weight:var(--fw-semibold);white-space:nowrap;vertical-align:middle;align-items:center;gap:.3rem;padding:.05rem .55rem .05rem .45rem;line-height:1.5;display:inline-flex}.badge svg{flex:none}.tone-ok{background:var(--ok-bg);color:var(--ok-fg);border-color:var(--ok-border)}.tone-info{background:var(--info-bg);color:var(--info-fg);border-color:var(--info-border)}.tone-wait{background:var(--wait-bg);color:var(--wait-fg);border-color:var(--wait-border)}.tone-review{background:var(--review-bg);color:var(--review-fg);border-color:var(--review-border)}.tone-bad{background:var(--bad-bg);color:var(--bad-fg);border-color:var(--bad-border)}.tone-flag{background:var(--flag-bg);color:var(--flag-fg);border-color:var(--flag-border)}.tone-neutral{background:var(--neutral-bg);color:var(--neutral-fg);border-color:var(--neutral-border)}.badges{gap:var(--s-1);flex-wrap:wrap;display:inline-flex}.score{align-items:center;gap:var(--s-2);font-variant-numeric:tabular-nums;font-weight:var(--fw-semibold);display:inline-flex}.meter{background:var(--surface-sunken);width:4rem;height:.375rem;box-shadow:inset 0 0 0 1px var(--border);vertical-align:middle;border-radius:2px;flex:none;display:inline-block;overflow:hidden}.meter>span{background:var(--brand);height:100%;display:block}.facts{gap:var(--s-2) var(--s-5);font-size:var(--fs-md);grid-template-columns:max-content minmax(0,1fr);margin:0;display:grid}.facts .qa{display:contents}.facts dt{color:var(--text-subtle)}.facts dd{overflow-wrap:anywhere;min-width:0;margin:0}@media (width<=520px){.facts{grid-template-columns:minmax(0,1fr);gap:0}.facts dd{margin-bottom:var(--s-2)}}.photo-grid{gap:var(--s-3);grid-template-columns:repeat(auto-fill,minmax(8rem,1fr));display:grid}.photo{gap:var(--s-1);font-size:var(--fs-xs);color:var(--text-muted);min-width:0;margin:0;display:grid}.photo figcaption{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.photo-btn,.photo-unavailable,.photo-loading{aspect-ratio:1;border-radius:var(--r-md);width:100%;overflow:hidden}.photo-btn{border:1px solid var(--border);background:var(--surface-sunken);cursor:zoom-in;min-height:0;padding:0;display:block}.photo-btn img{object-fit:cover;width:100%;height:100%;transition:transform .2s;display:block}.photo-btn:hover img{transform:scale(1.04)}.photo-unavailable{align-content:center;place-items:center;gap:var(--s-1);background:var(--surface-sunken);border:1px dashed var(--border-strong);color:var(--text-subtle);font-size:var(--fs-xs);text-align:center;display:grid}.photo-loading{place-items:center;display:grid}.lightbox{z-index:60;padding:var(--s-4);background:#030712d1;place-items:center;display:grid;position:fixed;inset:0}.lightbox-body{gap:var(--s-3);background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:var(--s-4);max-width:min(92vw,72rem);max-height:92vh;display:grid;overflow:auto}.lightbox-bar{justify-content:space-between;align-items:center;gap:var(--s-3);display:flex}.lightbox-bar p{font-weight:var(--fw-semibold)}.lightbox-body img{border-radius:var(--r-md);max-width:100%;max-height:78vh;margin:0 auto;display:block}.lightbox-body .photo-unavailable{width:min(24rem,80vw)}.subnav{gap:var(--s-1);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.subnav a{align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-3);color:var(--text-muted);font-weight:var(--fw-medium);font-size:var(--fs-md);border-bottom:2px solid #0000;margin-bottom:-1px;text-decoration:none;display:inline-flex}.subnav a:hover{color:var(--text)}.subnav a.active{color:var(--link);border-bottom-color:var(--link)}.stack{gap:var(--s-3);max-width:34rem;display:grid}.toolbar{gap:var(--s-3) var(--s-4);flex-wrap:wrap;align-items:end;display:flex}.toolbar label{gap:var(--s-1);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-muted);min-width:11rem;display:grid}.admin-grid{gap:var(--s-5);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}@media (width>=1440px){.admin-grid{grid-template-columns:minmax(0,1fr) 26rem}}.report{gap:var(--s-3);display:grid}.notice{align-items:center;gap:var(--s-2);padding:var(--s-3) var(--s-4);border-radius:var(--r-md);border:1px solid var(--info-border);background:var(--info-bg);color:var(--info-fg);font-size:var(--fs-md);display:flex}.notice.is-ok{border-color:var(--ok-border);background:var(--ok-bg);color:var(--ok-fg)}.notice.is-bad{border-color:var(--bad-border);background:var(--bad-bg);color:var(--bad-fg)}.notice svg{flex:none}.msg-list li{font-size:var(--fs-md);padding:2px 0}.toasts{right:var(--s-4);bottom:var(--s-4);z-index:70;gap:var(--s-2);width:min(24rem,100vw - 2rem);display:grid;position:fixed}.toast{align-items:flex-start;gap:var(--s-3);padding:var(--s-3) var(--s-2) var(--s-3) var(--s-4);border-radius:var(--r-md);background:var(--surface);color:var(--text);border:1px solid var(--border);border-left:4px solid var(--ok-fg);box-shadow:var(--shadow-md);font-size:var(--fs-md);animation:.18s ease-out toast-in;display:flex}.toast.is-error{border-left-color:var(--bad-fg)}.toast>svg{color:var(--ok-fg);flex:none;margin-top:2px}.toast.is-error>svg{color:var(--bad-fg)}.toast-text{flex:1;padding-top:1px}.toast .btn-icon{width:1.75rem;min-height:1.75rem}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.login-page{background:var(--bg);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);min-height:100vh;display:grid}.login-hero{justify-content:space-between;gap:var(--s-8);padding:var(--s-10);color:#e4e4e6;background:radial-gradient(60rem 30rem at 110% -10%,#c8262e73,#0000 60%),radial-gradient(40rem 30rem at -10% 110%,#ae1d244d,#0000 60%),#232426;flex-direction:column;display:flex}.login-hero .brand-logo{align-self:flex-start;box-shadow:0 18px 40px -18px #0009}.login-hero .hero-title{letter-spacing:-.02em;color:#fff;max-width:28rem;margin-bottom:var(--s-3);font-size:clamp(1.75rem,3vw,2.5rem);font-weight:800;line-height:1.15}.login-hero p{font-size:var(--fs-lg);max-width:30rem}.login-hero ul{gap:var(--s-3);padding:0;list-style:none;display:grid}.login-hero li{align-items:center;gap:var(--s-3);font-size:var(--fs-base);display:flex}.login-hero li svg{border-radius:var(--r-md);color:#fff;background:#ffffff1a;flex:none;width:2.25rem;height:2.25rem;padding:.5rem}.login{padding:var(--s-6);background:radial-gradient(50rem 30rem at 100% 0%, var(--brand-soft), transparent 70%), var(--bg);place-items:center;display:grid}.login-card{gap:var(--s-5);width:min(26rem,100%);padding:var(--s-8);box-shadow:var(--shadow-lg);border-radius:1.5rem;display:grid}.login-card h1{font-size:var(--fs-xl);color:var(--ink);font-weight:800}.login-card .login-brand{display:none}.login form{gap:var(--s-4);display:grid}.login form label{gap:var(--s-1);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-muted);display:grid}.login form input{border-radius:var(--r-md);border-color:var(--border);min-height:3rem}.login button[type=submit]{border-radius:var(--r-md);min-height:3rem;font-size:var(--fs-base);font-weight:var(--fw-bold);background:linear-gradient(135deg, var(--brand-bright) 0%, var(--primary-bg) 100%);border:0;box-shadow:0 10px 22px -10px #ae1d2499}.login button[type=submit]:hover:not(:disabled){background:linear-gradient(135deg, var(--primary-bg) 0%, var(--navy) 100%)}.login-foot{padding-top:var(--s-4);border-top:1px solid var(--border);text-align:center;font-size:var(--fs-sm);color:var(--text-subtle)}@media (width<=899px){.login-page{grid-template-columns:1fr}.login-hero{display:none}.login-card .login-brand{display:block}.login-card .brand-logo{padding:var(--s-2) var(--s-3)}.login-card .brand-logo img{width:12rem}.login-card{padding:var(--s-6)}}.boot{padding:var(--s-8);color:var(--text-muted)}.visit-hero{gap:var(--s-5);grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.visit-hero h1{font-size:var(--fs-2xl)}.visit-meta{gap:var(--s-1) var(--s-4);color:var(--text-muted);font-size:var(--fs-md);margin-top:var(--s-2);flex-wrap:wrap;display:flex}.visit-meta>span{align-items:center;gap:var(--s-1);display:inline-flex}.score-dial{min-width:8rem;padding:var(--s-3) var(--s-4);border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--border);justify-items:center;gap:2px;display:grid}.score-dial-value{font-size:2rem;font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;line-height:1.1}.score-dial-label{font-size:var(--fs-xs);color:var(--text-subtle);text-transform:uppercase;letter-spacing:.05em;font-weight:var(--fw-semibold)}.score-dial .meter{width:100%;margin-top:var(--s-1)}.visit-hero .facts{gap:var(--s-3) var(--s-5);padding-top:var(--s-4);border-top:1px solid var(--border);grid-column:1/-1;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr))}.visit-hero .facts>div{align-content:start;gap:2px;display:grid}.visit-hero .facts dt{font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.04em}.visit-hero .facts dd{font-weight:var(--fw-medium);margin:0}@media (width<=520px){.visit-hero{grid-template-columns:minmax(0,1fr)}.score-dial{justify-items:start}.visit-hero .facts{grid-template-columns:1fr 1fr}}.jump-nav{top:calc(var(--topbar-h) + var(--s-2));z-index:5;gap:var(--s-1);padding:var(--s-1);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-pill);box-shadow:var(--shadow-md);scrollbar-width:thin;display:flex;position:sticky;overflow-x:auto}.jump-nav a{align-items:center;gap:var(--s-2);padding:var(--s-1) var(--s-3);border-radius:var(--r-pill);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-muted);white-space:nowrap;text-decoration:none;display:inline-flex}.jump-nav a:hover{background:var(--brand-soft);color:var(--text)}.dot{background:currentColor;border:1px solid;border-radius:50%;flex:none;width:.5rem;height:.5rem}.dot.tone-ok{color:var(--ok-fg)}.dot.tone-wait{color:var(--wait-fg)}.dot.tone-review{color:var(--review-fg)}.dot.tone-bad{color:var(--bad-fg)}.dot.tone-info{color:var(--info-fg)}.dot.tone-neutral{color:var(--neutral-fg)}[id^=sec-]{scroll-margin-top:calc(var(--topbar-h) + 4rem)}.photo-groups{gap:var(--s-5);display:grid}.photo-groups>div{gap:var(--s-2);display:grid}.photo-groups h3{font-size:var(--fs-sm);color:var(--text-muted);align-items:center;gap:var(--s-2);display:flex}.count{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);background:var(--surface-sunken);border-radius:var(--r-pill);padding:0 .45rem}.category{gap:var(--s-5);display:grid}.category-head{justify-content:space-between;align-items:center;gap:var(--s-3);padding-bottom:var(--s-4);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.category-head h2{font-size:var(--fs-lg)}.category-head-right{align-items:center;gap:var(--s-3);font-size:var(--fs-md);color:var(--text-muted);flex-wrap:wrap;display:flex}.category-head-right strong{color:var(--text);font-size:var(--fs-lg)}.category-grid{gap:var(--s-5);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=1180px){.category-grid{grid-template-columns:minmax(0,1.65fr) minmax(19rem,1fr);align-items:start}}.block{gap:var(--s-2);align-content:start;min-width:0;display:grid}.block>h3{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.side-stack{gap:var(--s-5);min-width:0;display:grid}.analysis{gap:var(--s-3);padding:var(--s-4);border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--border);display:grid}.analysis h3{align-items:center;gap:var(--s-2);font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;display:flex}.kv{gap:var(--s-1);font-size:var(--fs-md);margin:0;padding:0;list-style:none;display:grid}.kv .k{color:var(--text-subtle)}.kv strong{font-weight:var(--fw-semibold)}.analysis .note,.analysis h4{font-size:var(--fs-sm)}.analysis .note{color:var(--text-subtle)}.analysis ul:not(.kv){font-size:var(--fs-md)}.check-ok{color:var(--ok-fg);font-weight:var(--fw-medium)}.check-bad{color:var(--bad-fg);font-weight:var(--fw-medium)}@media (width>=1000px){.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}}.prose{font-size:var(--fs-md);white-space:pre-wrap}.forms{gap:var(--s-5);display:grid}.forms h3{font-size:var(--fs-md);margin-bottom:var(--s-2)}.forms .facts{gap:var(--s-2) var(--s-6)}.chips{gap:var(--s-2);flex-wrap:wrap;padding:0;list-style:none;display:flex}.chips li{font-size:var(--fs-md);padding:var(--s-1) var(--s-3);border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surface-2)}.main:focus{outline:none}.kpi .meter{width:100%;margin-top:var(--s-1);grid-column:1/-1}.card-flush>.alert,.card-flush>.skeleton-wrap{margin:0 var(--s-5) var(--s-5)}.lightbox-body .photo-loading{width:min(24rem,80vw)}.report h3{font-size:var(--fs-md)}.role-tag+.role-tag{margin-left:var(--s-1)}.part-name{text-transform:capitalize}.check-ok svg,.check-bad svg{vertical-align:-2px}.photo-groups{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));align-items:start}.photo-groups .photo-grid{grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr))}tfoot th{white-space:nowrap}@media (width>=1180px){.category-grid{grid-template-columns:minmax(0,1.5fr) minmax(23rem,1fr)}}td .meter{width:2.75rem}.category-grid th,.category-grid td{padding:var(--s-2)}.qc-tile{text-align:left;white-space:normal;justify-content:stretch;align-items:start;height:auto;min-height:0;font-weight:400}.qc-tile .kpi-label,.qc-tile .kpi-value,.qc-tile .kpi-hint{grid-column:1/-1}.qc-tile.is-active{border-color:var(--brand);box-shadow:0 0 0 2px var(--focus)}.qc-layout,.qc-main{gap:var(--s-5);min-width:0;display:grid}.qc-split{gap:var(--s-5);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}@media (width>=1180px){.qc-split{grid-template-columns:minmax(0,1fr) minmax(18rem,22rem)}.qc-decision{top:calc(var(--topbar-h) + var(--s-4));position:sticky}}.qc-corrections{gap:var(--s-5);display:grid}.qc-corrections td input:not([type=checkbox]),.qc-corrections td select{min-width:6rem}.qc-planogram{gap:var(--s-3) var(--s-5);flex-wrap:wrap;align-items:center;display:flex}.qc-planogram input[type=number]{width:7rem}.is-edited{border-color:var(--info-fg)!important;background:var(--info-bg)!important}.was-hint,.was{color:var(--text-subtle)}.was-hint{font-size:var(--fs-xs);margin-top:var(--s-1);display:block}.qc-changed{gap:var(--s-2);padding:var(--s-2) var(--s-3);border-radius:var(--r-md);border:1px solid var(--info-border);background:var(--info-bg);color:var(--info-fg);font-size:var(--fs-sm);margin-bottom:var(--s-3);align-items:flex-start;display:flex}.qc-errors{color:var(--bad-fg);font-size:var(--fs-sm);margin:0 0 var(--s-3)}.qc-buttons{gap:var(--s-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.btn-flag{background:var(--flag-bg);border-color:var(--flag-border);color:var(--flag-fg)}.alert.is-wait{border-color:var(--wait-border);background:var(--wait-bg);color:var(--wait-fg)}.qc-multi{border:0;padding:0}.qc-locked .row{margin-top:var(--s-4)}.score-pill{border-radius:var(--r-pill);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;padding:.125rem .5rem;display:inline-flex}.score-pill.band-good{color:var(--ok-fg);background:var(--ok-bg)}.score-pill.band-watch{color:var(--watch-fg);background:var(--watch-bg)}.score-pill.band-act{color:var(--bad-fg);background:var(--bad-bg)}.score-pill.is-none{color:var(--text-subtle)}.chart{gap:var(--s-2);min-width:0;margin:0;display:grid}.chart-canvas{width:100%;min-width:0}.chart-canvas svg{overflow:visible}.chart-canvas .recharts-surface:focus,.chart-canvas .recharts-wrapper:focus,.chart-canvas .recharts-sector:focus{outline:none}.chart-toggle{justify-self:end;align-items:center;gap:var(--s-1);font-size:var(--fs-sm);color:var(--text-muted);text-decoration:none;display:inline-flex}.chart-toggle:hover:not(:disabled){color:var(--link);text-decoration:underline}.chart-table table{width:100%}.chart-tip{padding:var(--s-2) var(--s-3);border-radius:var(--r-md);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);font-size:var(--fs-sm);color:var(--text);gap:2px;display:grid}.chart-tip span{align-items:center;gap:var(--s-2);font-variant-numeric:tabular-nums;display:flex}.chart-tip i,.legend i{border-radius:3px;flex:none;width:10px;height:10px;display:inline-block}.drill-list{gap:var(--s-1);flex-wrap:wrap;display:flex}.chip-btn{min-height:1.75rem;padding:0 var(--s-3);border-radius:var(--r-pill);border-color:var(--border);font-size:var(--fs-sm);color:var(--link)}.donut{gap:var(--s-4);grid-template-columns:minmax(10rem,13rem) minmax(0,1fr);align-items:center;display:grid}.legend{gap:var(--s-2);font-size:var(--fs-md);margin:0;padding:0;list-style:none;display:grid}.legend li{align-items:center;gap:var(--s-2);grid-template-columns:auto minmax(0,1fr) auto 3rem;display:grid}.legend strong{font-variant-numeric:tabular-nums}.legend .muted{text-align:right}@media (width<=520px){.donut{grid-template-columns:1fr}}.funnel{gap:var(--s-3);margin:0;padding:0;list-style:none;display:grid}.funnel li{align-items:center;gap:var(--s-3);grid-template-columns:minmax(8rem,10rem) minmax(0,1fr) minmax(9rem,auto);display:grid}.funnel-label{font-weight:var(--fw-medium)}.funnel-bar{border-radius:var(--r-sm);background:var(--surface-sunken);height:1.75rem;overflow:hidden}.funnel-fill{border-radius:var(--r-sm);background:var(--chart-1);height:100%;display:block}.funnel-fill.f1{opacity:.85}.funnel-fill.f2{background:var(--band-good)}.funnel-fill.f3{background:var(--band-act)}.funnel-value{font-variant-numeric:tabular-nums}@media (width<=640px){.funnel li{grid-template-columns:1fr auto}.funnel-bar{grid-area:2/1/auto/-1}}.heatmap td.heat{font-weight:var(--fw-semibold)}.heatmap td.band-good{background:var(--ok-bg);color:var(--ok-fg)}.heatmap td.band-watch{background:var(--watch-bg);color:var(--watch-fg)}.heatmap td.band-act{background:var(--bad-bg);color:var(--bad-fg)}.heatmap tbody th{text-align:left;font-weight:var(--fw-medium)}.data-table{gap:var(--s-3);min-width:0;display:grid}.sort-btn{min-height:0;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;background:0 0;border:0;gap:4px;padding:0}.sort-btn:hover:not(:disabled){color:var(--link);background:0 0}.sort-idle{opacity:.45}th[aria-sort=ascending],th[aria-sort=descending]{color:var(--link)}tr.is-clickable{cursor:pointer}tr.is-clickable:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}td.chev{width:1.5rem;color:var(--text-subtle);padding-left:0}.cell-strong{font-weight:var(--fw-semibold);color:var(--ink)}.code{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted)}.show-more{justify-content:center;align-items:center;gap:var(--s-3);padding-bottom:var(--s-3);display:flex}@media (width<=640px){table.cards-on-phone thead{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}table.cards-on-phone,table.cards-on-phone tbody,table.cards-on-phone tr,table.cards-on-phone td{width:100%;display:block}table.cards-on-phone tr{padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--border);position:relative}table.cards-on-phone tbody tr:nth-child(2n) td,table.cards-on-phone tbody tr:hover td{background:0 0}table.cards-on-phone td{justify-content:space-between;gap:var(--s-3);text-align:right;border:0;padding:2px 0;display:flex}table.cards-on-phone td:before{content:attr(data-label);text-align:left;color:var(--text-muted);font-size:var(--fs-sm)}table.cards-on-phone td:first-child{font-size:var(--fs-base);text-align:left}table.cards-on-phone td.minor{display:none}table.cards-on-phone td.chev{right:var(--s-3);top:var(--s-3);width:auto;position:absolute}table.cards-on-phone td.chev:before{content:none}.data-table .table-wrap{border-left:0;border-right:0;border-radius:0}}.search-field{align-items:center;display:inline-flex;position:relative}.search-field svg{color:var(--text-subtle);pointer-events:none;position:absolute;left:.75rem}.search-field input{border-radius:var(--r-pill);border-color:var(--border);min-width:14rem;padding-left:2.25rem}.tabs{border-radius:var(--r-md);background:var(--surface-sunken);justify-self:start;gap:2px;padding:3px;display:inline-flex}.tabs [role=tab]{border-radius:calc(var(--r-md) - 3px);min-height:2.25rem;color:var(--text-muted);font-weight:var(--fw-semibold);background:0 0;border:0}.tabs [role=tab][aria-selected=true]{background:var(--surface);color:var(--link);box-shadow:var(--shadow-sm)}.skeleton-report{gap:var(--s-4);display:grid}.skeleton-chart{border-radius:var(--r-lg);height:16rem}.price-src{font-size:var(--fs-xs);color:var(--info-fg);font-weight:var(--fw-medium);display:block}.csv{align-items:center;gap:var(--s-2);flex-wrap:wrap;display:inline-flex}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.drawer-scrim{z-index:50;background:#2324264d;animation:.2s fade-in;position:fixed;inset:0}.drawer{z-index:51;background:var(--bg);width:min(45rem,100vw);box-shadow:var(--shadow-lg);flex-direction:column;animation:.2s drawer-in;display:flex;position:fixed;top:0;bottom:0;right:0}.drawer-bar{justify-content:space-between;align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-3) var(--s-2) var(--s-5);border-bottom:1px solid var(--border);background:var(--surface);display:flex}.drawer-tools{gap:var(--s-1);display:inline-flex}.drawer-body{overscroll-behavior:contain;flex:1;overflow-y:auto}.drawer-body .page{padding:var(--s-5);max-width:none}.drawer-body .visit-hero{grid-template-columns:minmax(0,1fr)}.drawer-body .jump-nav{top:0}@keyframes drawer-in{0%{transform:translate(100%)}}@keyframes fade-in{0%{opacity:0}}@media (width<=640px){.drawer-body .page{padding:var(--s-3)}}.drawer-bar .drawer-title{font-size:var(--fs-lg);margin:0}.form-body{padding:var(--s-5)}.form-body .stack{max-width:none}.drawer-scrim.is-top{z-index:60}.confirm{z-index:61;gap:var(--s-3);width:min(26rem,100vw - 2rem);padding:var(--s-5);background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);display:grid;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.confirm h2{font-size:var(--fs-lg);margin:0}.check-grid{gap:var(--s-2) var(--s-4);grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));display:grid}.check-list{gap:var(--s-2);max-height:16rem;display:grid;overflow-y:auto}.two-col{gap:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));display:grid}.check-edit{gap:var(--s-2);padding-bottom:var(--s-3);border-bottom:1px solid var(--border);display:grid}.panel-toolbar{padding:var(--s-3) var(--s-4)}.stack-wide{gap:var(--s-5);display:grid}.split{gap:var(--s-5);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}@media (width>=1100px){.split{grid-template-columns:16rem minmax(0,1fr)}.split.split-even{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.pick-list{padding:var(--s-2);gap:2px;margin:0;list-style:none;display:grid}.pick-list button{background:0 0;border-color:#0000;justify-content:space-between;width:100%}.pick-list button.is-on{background:var(--surface-sunken);color:var(--link)}.bulk-bar{gap:var(--s-3);padding:var(--s-3) var(--s-4);background:var(--surface-sunken);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:end;display:flex}.bulk-bar label{gap:var(--s-1);font-size:var(--fs-sm);color:var(--text-muted);display:grid}.plano-img{border-radius:var(--r-md);border:1px solid var(--border);object-fit:contain;max-width:100%;max-height:22rem;display:block}.plano-img.is-small{width:3rem;height:3rem}.plano-img.is-empty{justify-content:center;align-items:center;gap:var(--s-2);min-height:3rem;padding:var(--s-3);color:var(--text-muted);background:var(--surface-sunken);display:inline-flex}.diff{width:100%}.diff th[scope=row]{font-weight:var(--fw-semibold);white-space:nowrap}.diff-before{color:var(--danger-fg,#b42318);word-break:break-word}.diff-after{color:var(--success-fg,#067647);word-break:break-word}.clamp{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}pre.json{padding:var(--s-3);max-height:16rem;font-size:var(--fs-sm);background:var(--surface-sunken);border-radius:var(--r-md);margin:0;overflow:auto}.panel-toolbar label{min-width:10rem}.theme-grid{padding:var(--s-5);gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));margin:0;list-style:none;display:grid}.theme-card{align-items:flex-start;gap:var(--s-2);padding:var(--s-4);flex-direction:column;display:flex}.theme-head{justify-content:space-between;gap:var(--s-3);width:100%;display:flex}.theme-head h3,.theme-card p{margin:0}.theme-examples a{margin-right:var(--s-2)}.voice-tools{gap:var(--s-2);flex-wrap:wrap;display:flex}.voice-tools select,.voice-tools input{width:auto;min-width:10rem}.standards{max-width:1100px}.std-grid{gap:var(--s-4);padding:var(--s-5);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.std-card{padding:0;overflow:hidden}.std-card img,.std-noimg{justify-content:center;align-items:center;gap:var(--s-2);aspect-ratio:4/3;object-fit:contain;width:100%;font-size:var(--fs-sm);display:flex}.std-body{gap:var(--s-2);padding:var(--s-4);flex-direction:column;display:flex}.std-body h3,.std-body p{margin:0}.std-text{padding:var(--s-4) var(--s-5)}.password-field{width:100%;display:block;position:relative}.password-field input:not([type=checkbox]):not([type=radio]):not([type=file]){padding-right:2.75rem}.password-toggle{top:50%;right:var(--s-1);border-radius:var(--r-sm);width:2rem;height:2rem;min-height:0;color:var(--text-subtle);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;transform:translateY(-50%)}.password-toggle:hover:not(:disabled){background:var(--surface-sunken);color:var(--text)}.password-toggle:focus-visible{outline:2px solid var(--focus);outline-offset:0}.file-guide{margin:0;padding:0;list-style:none}.file-guide>li{padding:var(--s-2) 0;border-top:1px solid var(--border)}.file-guide>li:first-child{border-top:0}.file-guide .row>.muted{flex:1;min-width:12rem}.file-guide .table-wrap{margin-top:var(--s-2)}.rot-180{transform:rotate(180deg)}
