@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600;9..144,700&family=Outfit:wght@300;400;500;600;700&family=Spline+Sans+Mono:wght@400;500;600&display=swap";@import"https://fonts.googleapis.com/css2?family=Public+Sans:wght@400;500;600;700;800;900&family=IBM+Plex+Mono:wght@400;500;600&display=swap";.acct-switcher{position:relative;display:inline-block}.acct-chip{display:inline-flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:5px 10px;font-family:inherit;cursor:default;box-shadow:var(--shadow)}.acct-chip--interactive{cursor:pointer;transition:border-color .15s,box-shadow .15s}.acct-chip--interactive:hover{border-color:var(--primary-link)}.acct-chip-label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);font-weight:600}.acct-chip-name{font-size:14px;font-weight:600;color:var(--ink);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.acct-chip-caret{color:var(--ink-faint);font-size:11px}.acct-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:60;min-width:260px;max-height:360px;overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:6px;box-shadow:var(--shadow-lift)}.acct-menu-item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;border:0;background:transparent;padding:8px 10px;border-radius:8px;cursor:pointer;transition:background .12s}.acct-menu-item:hover:not(:disabled){background:var(--surface-2)}.acct-menu-item:disabled{opacity:.55;cursor:default}.acct-menu-active{background:var(--surface-2)}.acct-menu-name{flex:1;font-size:14px;font-weight:500;color:var(--ink)}.acct-menu-code{font-size:11px;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.04em}.acct-menu-exit{color:var(--primary-link);font-weight:600;font-size:13px;border-bottom:1px solid var(--line);border-radius:8px 8px 0 0;margin-bottom:4px}.acct-menu-note{padding:10px;font-size:13px;color:var(--ink-faint)}.acct-menu-error{color:var(--bad)}.v4-auth{min-height:100vh;display:grid;place-items:center;padding:24px;font-family:Public Sans,system-ui,-apple-system,sans-serif;color:var(--ink);background:radial-gradient(120% 80% at 50% -10%,var(--navy-2),transparent 60%),var(--navy)}.v4-auth .auth-card{width:100%;max-width:400px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:34px 32px}.v4-auth .mark-lg{width:52px;height:52px;margin:0 auto 16px}.v4-auth h1{text-align:center;font-size:24px;font-weight:900;margin:0 0 4px;color:var(--ink)}.v4-auth h1 b{color:var(--accent);font-weight:900}.v4-auth .auth-sub{text-align:center;color:var(--ink-faint);margin:0 0 22px;font-size:13.5px}.v4-auth .auth-field{margin-bottom:16px}.v4-auth .auth-field>label{display:block;font-weight:700;font-size:13px;margin-bottom:6px;color:var(--ink)}.v4-auth .auth-input{width:100%;box-sizing:border-box;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-sm);padding:10px 12px;font-family:inherit;font-size:14px;color:var(--ink)}.v4-auth .auth-input::placeholder{color:var(--ink-faint)}.v4-auth .auth-input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.v4-auth .pw-wrap{position:relative;display:flex;align-items:center}.v4-auth .pw-wrap .auth-input{flex:1;padding-right:64px}.v4-auth .pw-toggle{position:absolute;right:8px;border:0;background:transparent;color:var(--primary-link);font-weight:700;font-size:12.5px;cursor:pointer;font-family:inherit;padding:6px 8px}.v4-auth .auth-submit{width:100%;border:0;border-radius:var(--radius-sm);background:var(--accent);color:var(--surface);padding:12px;font-weight:800;font-size:14px;margin-top:4px;cursor:pointer;font-family:inherit}.v4-auth .auth-submit:hover{filter:brightness(.96)}.v4-auth .auth-submit:disabled{opacity:.6;cursor:not-allowed}.v4-auth .auth-foot{text-align:center;margin:18px 0 0;font-size:13px}.v4-auth .auth-foot a{color:var(--primary-link);font-weight:700;text-decoration:none}.v4-auth .auth-foot a:hover{text-decoration:underline}.v4-auth .auth-alert{border-radius:var(--radius-sm);padding:12px 14px;font-size:13px;font-weight:500;line-height:1.5;border:1px solid transparent}.v4-auth .auth-alert.-error{background:var(--bad-soft);color:var(--bad);border-color:var(--bad)}.v4-auth .auth-alert.-ok{background:var(--good-soft);color:var(--good);border-color:var(--good)}.v4-auth .auth-btn-row{display:flex;gap:10px;margin-top:4px}.v4-auth .auth-btn-row>*{flex:1}.v4-auth .auth-btn-outline{display:block;width:100%;box-sizing:border-box;text-align:center;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);padding:12px;font-weight:800;font-size:14px;font-family:inherit;text-decoration:none;cursor:pointer}.v4-auth .auth-btn-outline:hover{background:var(--surface-2)}.v4-auth a.auth-submit{display:block;box-sizing:border-box;text-align:center;text-decoration:none}.v4-auth .auth-signout{margin-top:16px}.brandmark{display:block;flex:none}.brandmark .brandmark-ground{fill:var(--navy)}.brandmark .brandmark-label{fill:var(--on-navy)}.brandmark .brandmark-bars rect{fill:var(--navy)}.brandmark .brandmark-scan{fill:var(--accent)}.v4-shell .topnav{position:sticky;top:0;z-index:50;background:var(--navy);color:var(--on-navy-soft)}.v4-shell .topnav-inner{display:flex;align-items:center;gap:6px;height:60px;padding:0 24px}.v4-shell .brand{display:flex;align-items:center;gap:10px;text-decoration:none;margin-right:14px;flex:none}.v4-shell .brand .mark{width:32px;height:32px;flex:none}.v4-shell .brand .mark .brandmark-ground{fill:var(--navy-2)}.v4-shell .brand .word{font-weight:800;font-size:18px;letter-spacing:-.02em;color:var(--on-navy);white-space:nowrap}.v4-shell .brand .word b{color:var(--accent);font-weight:800}.v4-shell .surface-tag{display:flex;flex-direction:column;gap:1px;margin-right:12px;flex:none}.v4-shell .surface-tag b{font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--on-navy-soft)}.v4-shell .surface-tag .op{font-size:11px;font-weight:500;color:var(--on-navy-faint)}.v4-shell .platform-band{display:flex;align-items:center;gap:8px;margin-right:12px;padding:6px 10px;border-radius:var(--radius-sm);background:#ffffff14;border:1px solid var(--navy-line);flex:none}.v4-shell .platform-band .glyph{width:8px;height:8px;flex:none;border-radius:2px;background:var(--accent)}.v4-shell .platform-band .t{font-size:10.5px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:var(--on-navy)}.v4-shell .topnav-primary{display:flex;align-items:stretch;gap:2px;height:60px;margin:0;padding:0;list-style:none;flex:1;min-width:0}.v4-shell .topnav-primary>li{display:flex}.v4-shell .topnav-link{display:flex;align-items:center;gap:6px;padding:0 13px;border:0;background:none;color:var(--on-navy-soft);font-family:inherit;font-size:.92rem;font-weight:500;text-decoration:none;white-space:nowrap;cursor:pointer;position:relative}.v4-shell .topnav-link:hover{color:var(--on-navy);background:var(--navy-2);text-decoration:none}.v4-shell .topnav-link.open{color:var(--on-navy);background:var(--navy-2)}.v4-shell .topnav-link.active{color:var(--on-navy);font-weight:700}.v4-shell .topnav-link.active:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:3px;border-radius:3px 3px 0 0;background:var(--accent)}.v4-shell .topnav-link:focus-visible,.v4-shell .topnav-icon-btn:focus-visible,.v4-shell .topnav-avatar:focus-visible,.v4-shell .topnav-toggle:focus-visible{outline:2px solid var(--on-navy);outline-offset:-4px}.v4-shell .topnav-link .count{font-size:11px;font-weight:800;background:var(--bad);color:#fff;border-radius:999px;padding:1px 7px;min-width:20px;text-align:center}.v4-shell .topnav-menu{position:relative;display:flex;align-items:stretch}.v4-shell .topnav-panel{position:absolute;top:calc(100% + 6px);left:0;min-width:300px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 40px #14213938;padding:8px;z-index:60}.v4-shell .topnav-panel.wide{min-width:580px}.v4-shell .topnav-panel.align-right{left:auto;right:0}.v4-shell .topnav-panel-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr)}.v4-shell .topnav-panel-list.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.v4-shell .topnav-panel-item{display:flex;flex-direction:column;gap:2px;padding:9px 12px;border-radius:8px;color:var(--ink);text-decoration:none}.v4-shell .topnav-panel-item:hover{background:var(--surface-2);text-decoration:none}.v4-shell .topnav-panel-item:focus-visible{outline:2px solid var(--ink-soft);outline-offset:-2px}.v4-shell .topnav-panel-item.current{background:var(--surface-2)}.v4-shell .topnav-panel-item .t{font-size:.9rem;font-weight:600}.v4-shell .topnav-panel-item .d{font-size:.8rem;color:var(--ink-soft)}.v4-shell .topnav-panel-head{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);padding:8px 12px 4px}.v4-shell .topnav-right{display:flex;align-items:center;gap:6px;margin-left:auto;flex:none}.v4-shell .topnav-right .topnav-menu{align-items:center}.v4-shell .topnav-icon-btn{width:44px;height:44px;border:0;border-radius:var(--radius-sm);background:none;color:var(--on-navy-soft);cursor:pointer;display:grid;place-items:center}.v4-shell .topnav-icon-btn:hover,.v4-shell .topnav-icon-btn.open{color:var(--on-navy);background:var(--navy-2)}.v4-shell .topnav-avatar{width:36px;height:36px;border:0;border-radius:999px;background:var(--accent);color:#11161f;font-family:inherit;font-size:.8rem;font-weight:800;cursor:pointer}.v4-shell .topnav-account-head{display:flex;flex-direction:column;gap:3px;align-items:flex-start;padding:8px 12px 10px;border-bottom:1px solid var(--line-soft);margin-bottom:4px}.v4-shell .topnav-account-head .n{font-weight:700}.v4-shell .topnav-account-head .u{font-size:.8rem;color:var(--ink-soft)}.v4-shell .topnav-panel-actions{display:flex;flex-direction:column;border-top:1px solid var(--line-soft);margin-top:4px;padding-top:4px}.v4-shell .topnav-panel-action{text-align:left;padding:9px 12px;border:0;border-radius:8px;background:none;color:var(--ink);font-family:inherit;font-size:.9rem;cursor:pointer}.v4-shell .topnav-panel-action:hover{background:var(--surface-2)}.v4-shell .topnav-toggle{display:none;width:44px;height:44px;border:0;border-radius:var(--radius-sm);background:none;color:var(--on-navy);cursor:pointer;place-items:center}@media (max-width: 1100px){.v4-shell .topnav-toggle{display:grid;order:3}.v4-shell .topnav-right{order:4}.v4-shell .surface-tag,.v4-shell .platform-band{display:none}.v4-shell .topnav-primary{display:none;position:absolute;top:60px;left:0;right:0;height:auto;flex-direction:column;background:var(--navy);padding:8px 16px 16px;max-height:calc(100vh - 60px);overflow-y:auto}.v4-shell .topnav.mobile-open .topnav-primary{display:flex}.v4-shell .topnav-primary>li{flex-direction:column;align-items:stretch}.v4-shell .topnav-primary .topnav-menu{flex-direction:column}.v4-shell .topnav-link{height:44px}.v4-shell .topnav-link.active:after{left:0;right:auto;top:10px;bottom:10px;width:3px;height:auto}.v4-shell .topnav-primary .topnav-panel{position:static;min-width:0;box-shadow:none;margin:0 0 8px}.v4-shell .topnav-primary .topnav-panel-list.two-col{grid-template-columns:minmax(0,1fr)}}@media (max-width: 768px){.v4-shell .topnav-inner{padding:0 12px}.v4-shell .brand .word{display:none}}.v4-fault{min-height:60vh;display:grid;place-items:center;padding:24px;text-align:center;font-family:Public Sans,system-ui,-apple-system,sans-serif}.v4-fault .fault-card{width:100%;max-width:460px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:34px 32px}.v4-fault .fault-mark{width:46px;height:46px;border-radius:var(--radius);background:var(--accent);color:var(--surface);display:grid;place-items:center;font-weight:900;font-size:16px;letter-spacing:-.03em;margin:0 auto 16px}.v4-fault h1{font-size:22px;font-weight:900;margin:0 0 6px;color:var(--ink)}.v4-fault .fault-sub{color:var(--ink-soft);margin:0 0 18px;font-size:13.5px;line-height:1.5}.v4-fault .fault-path{display:block;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:13px;color:var(--ink);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 12px;margin:0 0 20px;word-break:break-all}.v4-fault .fault-msg{border-radius:var(--radius-sm);padding:12px 14px;font-size:13px;line-height:1.5;margin:0 0 20px;background:var(--bad-soft);color:var(--bad);border:1px solid var(--bad);word-break:break-word}.v4-fault .fault-actions{display:flex;gap:10px;justify-content:center}.v4-fault .fault-btn{display:inline-block;border:0;border-radius:var(--radius-sm);background:var(--accent);color:var(--surface);padding:11px 18px;font-weight:800;font-size:14px;font-family:inherit;text-decoration:none;cursor:pointer}.v4-fault .fault-btn:hover{filter:brightness(.96)}.v4-fault .fault-btn.-outline{background:var(--surface);color:var(--ink);border:1px solid var(--line)}.v4-fault .fault-btn.-outline:hover{background:var(--surface-2);filter:none}.v4-shell .topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 24px;min-height:48px;background:var(--surface);border-bottom:1px solid var(--line)}.v4-shell .topbar-left{display:flex;align-items:center;gap:10px}.v4-shell .topbar-right{display:flex;align-items:center;gap:12px}@media (max-width: 768px){.v4-shell .topbar{padding:8px 12px}}:root{--surface-2: oklch(.972 .006 250);--line: oklch(.91 .01 250);--line-soft: oklch(.945 .007 250);--shadow-lift: 0 4px 12px oklch(.3 .03 260 / .08);--navy: oklch(.31 .062 262);--navy-2: oklch(.36 .06 262);--navy-line: oklch(.42 .05 262);--on-navy: oklch(.97 .01 250);--on-navy-soft: oklch(.74 .025 255);--on-navy-faint: oklch(.64 .03 258);--chrome-deep: var(--navy);--chrome-deep-2: var(--navy-2);--on-chrome: var(--on-navy);--on-chrome-soft: var(--on-navy-soft);--ink: oklch(.27 .035 260);--ink-soft: oklch(.45 .028 260);--ink-faint: oklch(.6 .02 260);--accent: #e8820c;--primary-link: oklch(.5 .14 256);--primary-bright: oklch(.6 .15 255);--primary-soft: oklch(.95 .03 256);--primary-line: oklch(.86 .05 256);--good: oklch(.62 .13 165);--good-on-navy: oklch(.78 .15 165);--good-soft: oklch(.95 .038 165);--warn: oklch(.64 .12 68);--warn-ink: oklch(.46 .1 62);--warn-soft: oklch(.96 .05 75);--bad: oklch(.56 .17 25);--bad-soft: oklch(.96 .035 25);--violet: oklch(.52 .14 295);--violet-soft: oklch(.96 .032 295)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #f8f9fc;--surface: #ffffff;--text: #1e293b;--text-secondary: #475569;--muted: #94a3b8;--primary: #e8820c;--primary-hover: #d4740a;--primary-light: #fef3e2;--primary-bg: #fff8f0;--danger: #dc2626;--danger-hover: #b91c1c;--success: #16a34a;--success-light: #dcfce7;--border: #e2e8f0;--border-card: #e8ecf1;--radius: 12px;--radius-sm: 8px;--shadow: 0 1px 2px rgba(0,0,0,.04);--shadow-card: 0 1px 3px rgba(0,0,0,.04), 0 1px 2px rgba(0,0,0,.02)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased}.app-shell{display:flex;min-height:100vh}.app-body{flex:1;display:flex;flex-direction:column;min-width:0}.main{flex:1;max-width:1440px;width:100%;margin:0 auto;padding:40px 32px}.page-center{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:16px;background:var(--bg)}.reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.report-card{display:flex;flex-direction:column;gap:8px;background:var(--surface);border:1px solid var(--border-card);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:20px;text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.report-card:hover{border-color:var(--primary);box-shadow:var(--shadow);transform:translateY(-1px)}.report-card-title{font-size:1.05rem;font-weight:600;color:var(--text)}.report-card-desc{font-size:.875rem;line-height:1.45;color:var(--text-secondary)}.report-card-cta{margin-top:auto;padding-top:4px;font-size:.8125rem;font-weight:600;color:var(--primary)}.card{background:var(--surface);border-radius:var(--radius);padding:28px;border:1px solid var(--border-card);box-shadow:var(--shadow-card)}.card+.card{margin-top:20px}.card h3{margin-bottom:20px;font-size:1.05rem;font-weight:600;color:var(--text);display:flex;align-items:center;gap:8px}.input-with-suffix{position:relative;display:block;margin-top:6px}.input-with-suffix>input{width:100%;padding-right:64px}.input-suffix-btn{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:transparent;border:0;color:var(--muted, #94a3b8);padding:6px 10px;font-size:.85rem;font-weight:600;cursor:pointer;border-radius:4px}.input-suffix-btn:hover{color:var(--text, #1e293b);background:#0000000a}input,select{padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.9rem;font-family:inherit;outline:none;transition:border-color .15s;color:var(--text);background:var(--surface)}input::placeholder{color:var(--muted)}input:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #e8820c1a}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 20px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;font-family:inherit;cursor:pointer;background:var(--surface);color:var(--text-secondary);transition:all .15s;text-decoration:none}.btn:hover{background:var(--bg);color:var(--text)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff;border-color:var(--primary)}.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.btn-outline{background:transparent;color:var(--primary);border-color:var(--primary)}.btn-outline:hover{background:var(--primary-light)}.btn-danger{background:transparent;color:var(--danger);border-color:var(--danger)}.btn-danger:hover{background:#fef2f2}.btn-sm{padding:6px 14px;font-size:.8rem}.btn-group{display:flex;gap:8px;flex-wrap:wrap}.btn-link{background:none;border:none;color:var(--primary);font-weight:500;cursor:pointer;font-size:.9rem;padding:0;font-family:inherit;display:inline-flex;align-items:center;gap:4px}.btn-link:hover{text-decoration:underline}.table-wrap{overflow-x:auto}.datatable-toolbar{display:flex;justify-content:flex-end;gap:8px;margin-bottom:8px}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:12px;flex-wrap:wrap;gap:12px;font-size:13px;color:#475569}.pagination-info{font-weight:500}.pagination-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pagination-pagesize{display:inline-flex;align-items:center;gap:6px}.pagination-pagesize select{padding:4px 8px;border:1px solid #e2e8f0;border-radius:6px;font-size:13px}.pagination-page{display:inline-flex;align-items:center;gap:6px}.pagination-page input{width:64px;padding:4px 8px;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;text-align:center}.modal.modal-wide{max-width:none;width:96vw;max-height:92vh;display:flex;flex-direction:column}.modal.modal-wide .wizard-body{overflow:auto;flex:1 1 auto}.wizard-preview-table th,.wizard-preview-table td{white-space:nowrap}.wizard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:24px;flex-wrap:wrap}.modal-close-btn{background:none;border:none;cursor:pointer;padding:4px 10px;font-size:22px;line-height:1;color:#64748b;border-radius:6px;margin-left:8px}.modal-close-btn:hover{background:#f1f5f9;color:#0f172a}.wizard-steps{display:flex;gap:16px;font-size:13px;color:#94a3b8;font-weight:600}.wizard-step{padding:6px 12px;border-radius:6px;background:#f1f5f9}.wizard-step.active{background:#fef3e2;color:#e8820c}.wizard-step.done{background:#dcfce7;color:#16a34a}.wizard-body{min-height:320px}.wizard-mapping-table{width:100%;border-collapse:collapse;margin-top:12px;box-shadow:none}.wizard-mapping-table th{background:#f8fafc;color:#64748b;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;text-align:left;padding:10px 12px}.wizard-mapping-table td{padding:10px 12px;border-top:1px solid #e8ecf1}.wizard-mapping-table select{width:100%;padding:6px 10px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px}.wizard-mapping-table .hint{font-size:11px;color:#94a3b8;margin-top:2px}.required-mark{color:#dc2626;font-weight:700;margin-left:4px}.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.compare-col{background:#fff;border:1px solid var(--border, #e8ecf1);border-radius:var(--radius-sm, 8px);padding:16px}.compare-title{margin-top:0;margin-bottom:12px;font-size:13px;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.compare-json{background:#f8fafc;border-radius:6px;padding:12px;font-size:12px;line-height:1.5;color:#1e293b;overflow-x:auto;margin:0}.link{color:var(--primary, #e8820c);font-weight:500}.link:hover{text-decoration:underline}.heatmap-wrap{padding:4px}.heatmap-grid{display:grid;gap:4px;align-items:center}.heatmap-corner{width:32px;height:32px}.heatmap-aisle-header{width:32px;height:28px;font-size:11px;font-weight:700;color:#94a3b8;text-align:center;line-height:28px}.heatmap-zone-label{font-size:11px;font-weight:700;color:#94a3b8;padding-right:8px;text-align:right}.heatmap-cell{width:32px;height:32px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}.heatmap-legend{display:flex;align-items:center;gap:8px;margin-top:12px}.heatmap-legend-label{font-size:11px;color:#94a3b8;font-weight:600}.heatmap-legend-bar{flex:1;height:8px;max-width:200px;border-radius:4px;background:linear-gradient(90deg,#f1f5f9,#e8820c26 5%,#e8820c)}table{width:100%;border-collapse:collapse;background:var(--surface);border-radius:var(--radius);overflow:hidden;border:1px solid var(--border-card);box-shadow:var(--shadow-card)}th,td{padding:14px 20px;text-align:left;border-bottom:1px solid var(--border)}th{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600;background:var(--bg)}tbody tr{transition:background .1s}tbody tr:hover{background:#fafbfe}tbody tr:last-child td{border-bottom:none}tbody tr.row-selected,tbody tr.row-selected:hover{background:var(--primary-soft)}.inline-edit-input{width:100%;box-sizing:border-box;padding:4px 6px;font-size:13px}.badge{display:inline-block;padding:3px 12px;border-radius:20px;font-size:.75rem;font-weight:600;background:var(--bg);color:var(--muted)}.alert{padding:14px 18px;border-radius:var(--radius-sm);margin-bottom:20px;font-size:.9rem}.alert-error{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.alert-success{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.alert-warning{background:var(--warn-soft);color:var(--warn-ink);border:1px solid var(--warn)}.stats-bar{display:flex;gap:20px;margin-bottom:28px;align-items:stretch;flex-wrap:wrap}.stat{flex:1;min-width:140px;background:var(--surface);border:1px solid var(--border-card);box-shadow:var(--shadow-card);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;justify-content:space-between}.stat-label{display:block;font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-bottom:8px}.stat-value{display:block;font-size:2.2rem;font-weight:800;color:var(--text);line-height:1.1;margin-top:auto}.stat-icon{float:right;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:var(--primary);font-size:1.2rem}.stat-change{display:block;margin-top:8px;font-size:.8rem;font-weight:500}.stat-change.positive{color:var(--success)}.stat-change.negative{color:var(--danger)}.section-card{background:var(--surface);border:1px solid var(--border-card);border-radius:var(--radius);box-shadow:var(--shadow-card);margin-bottom:20px;overflow:hidden}.section-card-header{padding:20px 28px;font-weight:600;font-size:1.05rem;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--border);color:var(--text)}.section-card-body{padding:24px 28px}.muted{color:var(--muted);font-size:.85rem}.loading,.empty{color:var(--muted);padding:48px 0;text-align:center;font-size:.95rem}code{background:var(--bg);padding:2px 8px;border-radius:6px;font-size:.85rem;border:1px solid var(--border)}a{color:var(--primary)}a:hover{text-decoration:underline}.tabs{display:flex;border-bottom:2px solid var(--border);margin-bottom:24px;gap:4px}.tab{padding:10px 20px;border:none;background:none;cursor:pointer;font-size:.9rem;font-weight:500;color:var(--muted);font-family:inherit;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .15s}.tab:hover{color:var(--text)}.tab.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.timeline{display:flex;flex-direction:column;gap:0}.timeline-item{display:flex;gap:16px;padding:12px 0;border-bottom:1px solid var(--border);font-size:.88rem}.timeline-item:last-child{border-bottom:none}.timeline-time{color:var(--muted);font-size:.8rem;min-width:80px;flex-shrink:0}.timeline-content{flex:1}.coverage-header{margin-bottom:16px;font-size:.95rem;color:var(--text-secondary)}.coverage-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}.coverage-item{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-radius:var(--radius-sm);font-size:.85rem;border:1px solid var(--border)}.coverage-item.visited{background:#f0fdf4;border-color:#bbf7d0}.coverage-item.empty{background:#eff6ff;border-color:#bfdbfe}.coverage-item.blocked{background:#fffbeb;border-color:#fde68a}.coverage-item.not-visited{background:var(--bg);border-color:var(--border);color:var(--muted)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100;padding:16px}.modal{background:var(--surface);border-radius:var(--radius);padding:32px;max-width:480px;width:100%;box-shadow:0 8px 32px #0000001f}.modal h3{margin-bottom:20px}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:24px}.form-field{margin-bottom:16px}.form-field label{display:block;font-weight:500;font-size:.88rem;color:var(--text-secondary);margin-bottom:6px}.form-field input,.form-field select{width:100%}.filter-panel{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap;align-items:flex-end}.filter-item{display:flex;flex-direction:column;gap:4px}.filter-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.filter-item select{min-width:160px}@keyframes aaas-pulse{0%,to{opacity:1}50%{opacity:.45}}.aaas-skeleton{display:inline-block;height:1em;min-width:60px;background:var(--border);border-radius:4px;animation:aaas-pulse 1.4s ease-in-out infinite}.aaas-metric-card{position:relative}.aaas-metric-card.clickable{cursor:pointer;transition:transform .12s,box-shadow .12s}.aaas-metric-card.clickable:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000000f}.aaas-metric-card.size-sm .stat-value{font-size:1.5rem}.aaas-metric-card.size-lg .stat-value{font-size:2.6rem}.aaas-metric-footer{display:flex;flex-direction:column;gap:4px;margin-top:8px}.aaas-trend-up{color:var(--success);font-size:.8rem;font-weight:600}.aaas-trend-down{color:var(--danger);font-size:.8rem;font-weight:600}.aaas-trend-flat{color:var(--muted);font-size:.8rem;font-weight:600}.aaas-vs-target-pos{color:var(--success);font-size:.75rem}.aaas-vs-target-neg{color:var(--danger);font-size:.75rem}.aaas-metric-subline,.aaas-coverage-ok{color:var(--muted);font-size:.75rem}.aaas-coverage-warn{color:var(--text-secondary);font-size:.75rem;font-weight:600}.badge-sla-meeting{background:var(--success-light);color:var(--success)}.badge-sla-watch{background:#fef3c7;color:#b45309}.badge-sla-breaching{background:#fef2f2;color:var(--danger)}.badge-sla-no_sla{background:var(--bg);color:var(--muted)}.badge-sla-no_data{background:#eff6ff;color:#2563eb}.aaas-chart-wrap{background:var(--surface);padding:12px 4px 4px;border-radius:var(--radius-sm)}.aaas-chart-empty{padding:60px 24px;text-align:center;color:var(--muted);font-size:.9rem;background:var(--bg);border-radius:var(--radius-sm)}.aaas-chart-tooltip{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 12px;box-shadow:var(--shadow-card);font-size:.85rem}.aaas-chart-tooltip-date{font-weight:600;margin-bottom:4px;color:var(--text)}.aaas-chart-tooltip-row{display:flex;align-items:center;gap:6px;color:var(--text-secondary)}.aaas-chart-tooltip-swatch{width:10px;height:10px;border-radius:2px}.aaas-comparison{display:flex;align-items:baseline;gap:16px;padding:8px 0}.aaas-comparison-actual{font-size:1.6rem;font-weight:700;color:var(--text)}.aaas-comparison-actual.status-meeting{color:var(--success)}.aaas-comparison-actual.status-watch{color:#b45309}.aaas-comparison-actual.status-breaching{color:var(--danger)}.aaas-comparison-target{font-size:.85rem;color:var(--muted)}.aaas-comparison-label{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.aaas-anomaly-list{display:flex;flex-direction:column;gap:8px}.aaas-anomaly-row{display:grid;grid-template-columns:12px 1fr auto auto;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border-card);background:var(--surface)}.aaas-anomaly-dot{width:10px;height:10px;border-radius:50%}.aaas-anomaly-dot.sev-low{background:var(--muted)}.aaas-anomaly-dot.sev-medium{background:#d97706}.aaas-anomaly-dot.sev-high{background:#f97316}.aaas-anomaly-dot.sev-critical{background:var(--danger)}.aaas-anomaly-title{font-size:.88rem;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aaas-anomaly-age{font-size:.75rem;color:var(--muted);white-space:nowrap}.aaas-anomaly-empty{color:var(--success);font-weight:500;padding:16px;text-align:center;background:var(--success-light);border-radius:var(--radius-sm)}.aaas-anomaly-view-all{display:block;text-align:center;margin-top:8px;font-size:.85rem}.aaas-drill-link{display:inline-flex;align-items:center;gap:4px;font-size:.85rem;font-weight:500;color:var(--primary);text-decoration:none}.aaas-drill-link:hover{text-decoration:underline}.aaas-suggestion{display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:var(--radius-sm);border:1px solid var(--border-card);background:var(--surface)}.aaas-suggestion-header{display:flex;align-items:center;gap:10px}.aaas-suggestion-scope{font-weight:600;font-size:.95rem;color:var(--text)}.aaas-suggestion-rationale{font-size:.85rem;color:var(--text-secondary);line-height:1.5}.aaas-suggestion-actions{display:flex;gap:8px;margin-top:4px}.aaas-urgency-badge{display:inline-block;padding:2px 10px;border-radius:12px;font-size:.75rem;font-weight:700}.aaas-urgency-high{background:#fef2f2;color:var(--danger)}.aaas-urgency-med{background:#fff7ed;color:var(--primary)}.aaas-urgency-low{background:var(--bg);color:var(--muted)}.aaas-platform-row{cursor:pointer}.aaas-platform-row td.right{text-align:right}.aaas-platform-row .muted-cell{color:var(--muted)}@media (max-width: 768px){.main{padding:24px 16px}.stats-bar{flex-direction:column;gap:12px}.filter-panel{flex-direction:column}}.mono{font-family:IBM Plex Mono,ui-monospace,monospace;font-feature-settings:"tnum" 1}
