/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-font-feature-settings:var(--font-sans--font-feature-settings);--default-font-variation-settings:var(--font-sans--font-variation-settings);--default-mono-font-family:var(--font-mono);--default-mono-font-feature-settings:var(--font-mono--font-feature-settings);--default-mono-font-variation-settings:var(--font-mono--font-variation-settings);--color-surface:var(--color-surface);--color-surface-soft:var(--color-surface-soft);--color-surface-2:var(--color-surface-2);--color-text:var(--color-text);--color-text-secondary:var(--color-text-secondary);--color-text-muted:var(--color-text-muted);--color-accent:var(--color-accent);--color-accent-soft:var(--color-accent-soft);--color-border:var(--color-border);--color-danger:var(--color-danger);--color-warning:var(--color-warning);--color-success:var(--color-success);--color-info:var(--color-info)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}body{line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1;color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentColor 50%,transparent)}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root:where([data-theme-preset=classic]),:root:where([data-theme-preset=minimal]){--layout-radius:8px;--layout-panel-radius:10px}:root:where([data-theme-preset=classic]) .app-shell,:root:where([data-theme-preset=minimal]) .app-shell{background:var(--color-bg-start);flex-direction:column;min-height:100vh;display:flex}:root:where([data-theme-preset=classic]) .app-shell{background:linear-gradient(180deg,var(--color-bg-start) 0%,var(--color-bg-end) 100%)}:root:where([data-theme-preset=minimal]) .app-shell{background:var(--color-bg-start)}.top-nav-shell{background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:30;flex-shrink:0;position:sticky;top:0;box-shadow:0 1px #0000000a}:root:where([data-theme-preset=minimal]) .top-nav-shell{box-shadow:none;border-bottom-width:2px}.top-nav-bar{align-items:center;gap:16px;max-width:100%;padding:0 20px;display:flex}.top-nav-brand{color:var(--color-text);flex-shrink:0;align-items:center;gap:10px;padding:14px 0;text-decoration:none;display:flex}.top-nav-brand strong{letter-spacing:-.02em;font-size:18px;display:block}.top-nav-brand span{color:var(--color-text-muted);font-size:11px;display:block}:root:where([data-theme-preset=minimal]) .top-nav-brand strong{font-size:20px;font-weight:800}.top-nav-links{scrollbar-width:none;flex:auto;gap:2px;min-width:0;display:flex;overflow-x:auto}.top-nav-links::-webkit-scrollbar{display:none}.top-nav-links .nav-button{color:var(--color-text-secondary);white-space:nowrap;border-radius:0;flex-shrink:0;width:auto;padding:16px 14px;font-size:13px;font-weight:600}:root:where([data-theme-preset=minimal]) .top-nav-links .nav-button{padding:18px 16px;font-size:14px}.top-nav-links .nav-button:hover{background:var(--color-surface-hover);color:var(--color-text)}.top-nav-links .nav-button.active{box-shadow:inset 0 -2px 0 var(--color-accent);color:var(--color-accent);background:0 0}:root:where([data-theme-preset=minimal]) .top-nav-links .nav-button.active{background:var(--color-accent-soft);box-shadow:inset 0 -3px 0 var(--color-accent)}.top-nav-actions{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;padding:8px 0;display:flex}.top-nav-actions .nav-button,.top-nav-actions .icon-button{color:var(--color-text-secondary);width:auto}.top-nav-actions .nav-button:hover,.top-nav-actions .icon-button:hover{background:var(--color-surface-hover);color:var(--color-text)}:root:where([data-theme-preset=classic]) .main,:root:where([data-theme-preset=minimal]) .main{flex:auto;width:100%;min-width:0}:root:where([data-theme-preset=classic]) .topbar h1{font-size:28px;font-weight:700}:root:where([data-theme-preset=classic]) .panel,:root:where([data-theme-preset=minimal]) .panel{border-radius:var(--layout-panel-radius);box-shadow:none}:root:where([data-theme-preset=classic]) .icon-button,:root:where([data-theme-preset=classic]) .primary-button,:root:where([data-theme-preset=minimal]) .icon-button,:root:where([data-theme-preset=minimal]) .primary-button{border-radius:var(--layout-radius)}:root:where([data-theme-preset=compact]){--sidebar-w:72px;--layout-panel-radius:10px}:root:where([data-theme-preset=compact]) .app-shell{background:linear-gradient(180deg,var(--color-bg-start) 0%,var(--color-bg-end) 100%)}:root:where([data-theme-preset=compact]) .sidebar{width:72px;min-width:72px;padding:20px 10px}:root:where([data-theme-preset=compact]) .sidebar .brand{justify-content:center;margin-bottom:16px;padding-bottom:16px}:root:where([data-theme-preset=compact]) .sidebar .brand div{display:none}:root:where([data-theme-preset=compact]) .nav-button{border-radius:10px;justify-content:center;gap:0;padding:11px}:root:where([data-theme-preset=compact]) .nav-button .nav-label,:root:where([data-theme-preset=compact]) .collapse-toggle{display:none}:root:where([data-theme-preset=compact]) .main{padding:20px 22px}:root:where([data-theme-preset=compact]) h1{font-size:26px}:root:where([data-theme-preset=compact]) .panel{border-radius:var(--layout-panel-radius)}:root:where([data-theme-preset=compact]) .topbar{margin-bottom:16px}:root:where([data-theme-preset=compact]) .metric-grid{gap:10px}:root:where([data-theme-preset=minimal]) .panel{border:2px solid var(--color-border)}:root:where([data-theme-preset=minimal]) .primary-button{padding:14px 18px;font-weight:700}:root:where([data-theme-preset=minimal]) .nav-button{font-weight:600}:root:where([data-theme-preset=minimal]) h1{font-size:30px;font-weight:800}:root:where([data-theme-preset=compact]){--chart-heatmap:#475569}[data-theme=dark]:where([data-theme-preset=compact]){--chart-heatmap:#64748b}:root:where([data-theme-preset=classic]){--chart-heatmap:#1d4ed8}[data-theme=dark]:where([data-theme-preset=classic]){--chart-heatmap:#3b82f6}:root:where([data-theme-preset=minimal]){--chart-heatmap:#ea580c}[data-theme=dark]:where([data-theme-preset=minimal]){--chart-heatmap:#f97316}@media(max-width:960px){.top-nav-bar{flex-wrap:wrap;padding:0 14px}.top-nav-links{border-top:1px solid var(--color-border-soft);flex-basis:100%;order:3;padding:4px 0 6px}.top-nav-actions{margin-left:0}}@media(max-width:768px){:root:where([data-theme-preset=classic]) .top-nav-shell,:root:where([data-theme-preset=minimal]) .top-nav-shell{display:none}}.admin-panel{gap:20px;display:grid}.admin-hero{background:linear-gradient(135deg,var(--color-accent-soft) 0%,var(--color-surface) 55%);border:1px solid var(--color-border-soft);border-radius:24px;align-items:center;gap:18px;padding:22px 26px;display:flex}.admin-hero-icon{background:var(--color-accent);color:#fff;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.admin-hero h2{letter-spacing:-.03em;margin:0 0 4px;font-size:26px;font-weight:800}.admin-hero p{color:var(--color-text-muted);max-width:52ch;margin:0;font-size:14px}.admin-tabs{flex-wrap:wrap;gap:8px;display:flex}.admin-tab{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-size:13px;font-weight:600;transition:background .18s,border-color .18s,color .18s,box-shadow .18s;display:inline-flex}.admin-tab:hover{background:var(--color-surface-hover);color:var(--color-text)}.admin-tab.active{background:var(--color-accent-soft);border-color:var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.admin-tab.active{border-color:color-mix(in srgb,var(--color-accent) 35%,var(--color-border))}}.admin-tab.active{box-shadow:0 1px 0 var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.admin-tab.active{box-shadow:0 1px color-mix(in srgb,var(--color-accent) 12%,transparent)}}.admin-tab.active{color:var(--color-accent)}.admin-tab svg{opacity:.85;flex-shrink:0}.admin-content{gap:18px;display:grid}.admin-card .panel-header{border-bottom:1px solid var(--color-border-soft);align-items:flex-start}.admin-card .panel-header h2{margin:0;font-size:18px;font-weight:700}.admin-card .panel-header p{color:var(--color-text-muted);margin:4px 0 0;font-size:13px}.admin-card-body{padding:0 24px 24px}.admin-card-body>.table-wrap:first-child{width:calc(100% + 48px);margin:0 -24px}.admin-card-body>.table-wrap:first-child table th:first-child,.admin-card-body>.table-wrap:first-child table td:first-child{padding-left:24px}.admin-card-body>.table-wrap:first-child table th:last-child,.admin-card-body>.table-wrap:first-child table td:last-child{padding-right:24px}.admin-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;display:flex}.admin-row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px;display:flex}.admin-row-actions .critical-ghost{color:var(--color-danger)}.admin-row-actions .critical-ghost:hover{background:var(--color-danger-soft)}.admin-filter-bar{grid-template-columns:minmax(160px,220px) minmax(180px,1fr) auto;align-items:end;gap:12px;margin-bottom:16px;display:grid}.admin-filter-bar label{gap:6px;font-size:13px;font-weight:600;display:grid}.admin-filter-bar input,.admin-filter-bar select{border:1px solid var(--color-border);font:inherit;border-radius:10px;padding:8px 10px}.admin-filter-actions{flex-wrap:wrap;gap:8px;display:flex}.admin-invite-link{grid-template-columns:1fr auto;align-items:end;gap:10px;margin-top:4px;display:grid}.admin-invite-link label{gap:6px;font-size:13px;font-weight:600;display:grid}.admin-invite-link input{border:1px solid var(--color-border);font:inherit;font-family:var(--font-mono,ui-monospace, monospace);border-radius:10px;padding:8px 10px;font-size:12px}.admin-form-actions .primary-button{align-items:center;gap:8px;display:inline-flex}@media(max-width:720px){.admin-filter-bar,.admin-invite-link{grid-template-columns:1fr}}.admin-alert{border-radius:14px;margin:0;padding:12px 16px;font-size:14px}.admin-alert-error{background:var(--color-danger-soft);border:1px solid var(--color-danger)}@supports (color:color-mix(in lab,red,red)){.admin-alert-error{border:1px solid color-mix(in srgb,var(--color-danger) 25%,transparent)}}.admin-alert-error{color:var(--color-danger)}.admin-alert-success{background:var(--color-success-soft);border:1px solid var(--color-success)}@supports (color:color-mix(in lab,red,red)){.admin-alert-success{border:1px solid color-mix(in srgb,var(--color-success) 25%,transparent)}}.admin-alert-success{color:var(--color-success)}.admin-alert-info{background:var(--color-info-soft);border:1px solid var(--color-info)}@supports (color:color-mix(in lab,red,red)){.admin-alert-info{border:1px solid color-mix(in srgb,var(--color-info) 20%,transparent)}}.admin-alert-info{color:var(--color-info)}.admin-stat-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:4px;display:grid}.admin-stat{background:var(--color-surface-soft);border:1px solid var(--color-border-soft);border-radius:16px;padding:14px 16px}.admin-stat-label{color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:700;display:block}.admin-stat-value{color:var(--color-text);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:22px;font-weight:800;line-height:1.1;display:block}.admin-stat-value.ok{color:var(--color-success)}.admin-stat-value.warn{color:var(--color-warning)}.admin-stat-value.bad{color:var(--color-danger)}.admin-stat-hint{color:var(--color-text-muted);margin-top:4px;font-size:12px;display:block}.admin-form{gap:16px;display:grid}.admin-form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.admin-form label{color:var(--color-text-secondary);gap:6px;font-size:13px;font-weight:600;display:grid}.admin-form input,.admin-form select{background:var(--color-surface-soft);border:1px solid var(--color-border-input);color:var(--color-text);font:inherit;border-radius:12px;padding:10px 12px}.admin-form input:focus,.admin-form select:focus{border-color:var(--color-accent);outline:2px solid var(--color-accent-focus);outline-offset:0}.secret-input-wrap{align-items:center;display:flex;position:relative}.secret-input-wrap input{flex:1;min-width:0;padding-right:42px}.secret-input-toggle{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex;position:absolute;right:6px}.secret-input-toggle:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text)}.secret-input-toggle:disabled{cursor:not-allowed;opacity:.45}.admin-form-section-title{border-top:1px solid var(--color-border-soft);color:var(--color-text);margin:8px 0 0;padding-top:18px;font-size:14px;font-weight:700}.admin-form-section-title:first-child{border-top:none;margin-top:0;padding-top:0}.admin-form-actions{flex-wrap:wrap;gap:8px;display:flex}.muted-text{color:var(--color-text-muted);margin:0;font-size:13px;line-height:1.5}.form-error{background:var(--color-danger-soft);color:var(--color-danger);border-radius:12px;margin:0;padding:10px 14px;font-size:13px}.form-success{background:var(--color-success-soft);color:var(--color-success);border-radius:12px;margin:0;padding:10px 14px;font-size:13px}.admin-subsection{gap:14px;display:grid}.admin-subsection+.admin-subsection{border-top:1px solid var(--color-border-soft);margin-top:6px;padding-top:20px}.admin-subsection h3{margin:0;font-size:15px;font-weight:700}.admin-role-list{gap:10px;margin:0 0 18px;padding:0;list-style:none;display:grid}.admin-role-item{background:var(--color-surface-soft);border:1px solid var(--color-border-soft);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.admin-role-item-info{gap:4px;min-width:0;display:grid}.admin-role-item-info strong{font-size:14px}.admin-role-scope{color:var(--color-text-muted);font-size:12px}.admin-role-form{background:var(--color-surface-soft);border:1px dashed var(--color-border);border-radius:16px;gap:12px;padding:16px;display:grid}.admin-role-form .form-row{grid-template-columns:1fr 1fr auto;gap:10px;display:grid}.admin-split{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:18px;display:grid}.integration-status-panel{background:var(--color-surface-soft);border:1px solid var(--color-border-soft);border-radius:14px;margin-bottom:12px;padding:14px 16px}.integration-status-panel h4{letter-spacing:.02em;text-transform:uppercase;margin:0 0 10px;font-size:13px;font-weight:700}.integration-status-panel.is-success{border-color:var(--color-success)}@supports (color:color-mix(in lab,red,red)){.integration-status-panel.is-success{border-color:color-mix(in srgb,var(--color-success) 30%,var(--color-border-soft))}}.integration-status-panel.is-failure{border-color:var(--color-danger)}@supports (color:color-mix(in lab,red,red)){.integration-status-panel.is-failure{border-color:color-mix(in srgb,var(--color-danger) 30%,var(--color-border-soft))}}.integration-status{background:0 0;border:none;margin-top:0;padding:0}.integration-status>h3{display:none}.integration-status-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin-bottom:0;display:grid}.integration-status-grid strong{color:var(--color-text-muted);letter-spacing:.03em;text-transform:uppercase;margin-bottom:3px;font-size:11px;font-weight:700;display:block}.integration-status-grid p{margin:0;font-size:13px}.integration-status-badge{text-transform:capitalize;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-block}.integration-status-badge.success{background:var(--color-success-soft);color:var(--color-success)}.integration-status-badge.failure{background:var(--color-danger-soft);color:var(--color-danger)}.integration-status-badge.skipped{background:var(--color-warning-soft);color:var(--color-warning)}.admin-card .data-table tbody tr:hover td{background:var(--color-surface-row-hover)}.admin-card .data-table td:last-child{text-align:right;white-space:nowrap}.admin-card .data-table td:last-child .ghost-button{padding:8px 12px;font-size:12px}.admin-count-badge{background:var(--color-surface-2);color:var(--color-text-muted);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}@media(max-width:960px){.admin-split,.admin-role-form .form-row{grid-template-columns:1fr}.admin-hero{flex-direction:column;align-items:flex-start}}:root{--green-50:#edf4ed;--green-100:#d9ede4;--green-200:#b6d9c6;--green-300:#8bc4a8;--green-400:#57aa82;--green-500:#348b5e;--green-600:#276147;--green-700:#1f4f38;--green-800:#192c24;--green-900:#14231b;--green-950:#0a1610;--gray-0:#fff;--gray-50:#f7f8fa;--gray-100:#f5f6f9;--gray-150:#f2f4f7;--gray-200:#edeff3;--gray-300:#e4e7ec;--gray-350:#d9dee5;--gray-400:#c2c8d1;--gray-500:#8b94a1;--gray-600:#5e6675;--gray-700:#3d4452;--gray-800:#1d232e;--gray-900:#141922;--red-50:#fff1ef;--red-100:#ffd7d0;--red-200:#f7d5d0;--red-500:#dc2626;--red-600:#b63f2e;--red-700:#9e241a;--amber-50:#fff6dc;--amber-100:#fff3d7;--amber-200:#f3e4c4;--amber-500:#d97706;--amber-600:#9b6b1f;--amber-700:#6b4b05;--blue-50:#e4edf8;--blue-600:#1f4f73;--blue-700:#1d4ed8;--emerald-50:#eaf7ef;--emerald-600:#1e5a34;--emerald-700:#16a34a;--color-bg-start:var(--green-50);--color-bg-end:#f7fbf7;--color-surface:var(--gray-0);--color-surface-soft:var(--gray-100);--color-surface-2:var(--gray-200);--color-surface-hover:var(--gray-150);--color-surface-row-hover:#edf7ef;--color-surface-row-hover-inv:var(--gray-150);--color-sidebar-start:var(--green-800);--color-sidebar-end:var(--green-900);--color-sidebar-text:#ebf2ec;--color-sidebar-muted:#9bb2a5;--color-sidebar-nav:#d8e4d5;--color-sidebar-border:#ffffff14;--color-sidebar-overlay:#ffffff14;--color-text:var(--gray-800);--color-text-secondary:var(--gray-700);--color-text-muted:var(--gray-600);--color-border:var(--gray-350);--color-border-soft:var(--gray-300);--color-border-table:#d8dee599;--color-border-input:#d4dae2;--color-accent:var(--green-600);--color-accent-soft:var(--green-100);--color-accent-tint:#27614714;--color-accent-focus:#27614747;--color-danger:var(--red-600);--color-danger-soft:var(--red-50);--color-warning:var(--amber-600);--color-warning-soft:var(--amber-50);--color-success:var(--emerald-600);--color-success-soft:var(--emerald-50);--color-info:var(--blue-600);--color-info-soft:var(--blue-50);--color-on-accent:#fff;--chart-heatmap:#4f46e5;--heatmap-cell-fg:#ffffffe6;--heatmap-cell-border:#0000000f;--elev-1:0 1px 4px #1c261f0f;--elev-2:0 4px 12px #1c261f14;--elev-3:0 10px 24px #1c261f1a;--elev-4:0 20px 45px #1c261f1f;--elev-5:0 32px 72px #1c261f29;--color-table-head:var(--gray-50);--color-table-head-text:var(--gray-600);--color-table-row-hover:var(--gray-150);--color-sticky-col:var(--gray-0);--color-sticky-shadow:inset -1px 0 0 var(--gray-300);--color-drawer-bg:#fbfcfd;--color-drawer-border:var(--gray-300);--color-icon-only-bg:var(--gray-150);--color-icon-only-text:var(--gray-800);--color-search-bg:var(--gray-150);--color-select-bg:var(--gray-0);--sidebar-w:260px;--background:linear-gradient(180deg, var(--color-bg-start) 0%, var(--color-bg-end) 100%);--surface:var(--color-surface);--surface-soft:var(--color-surface-soft);--surface-muted:var(--color-surface-2);--surface-2:var(--color-surface-2);--border:var(--color-border);--text:var(--color-text);--text-primary:var(--color-text);--text-secondary:var(--color-text-secondary);--text-muted:var(--color-text-muted);--muted:var(--color-text-muted);--accent:var(--color-accent);--accent-soft:var(--color-accent-soft);--danger:var(--color-danger);--danger-soft:var(--color-danger-soft);--warning:var(--color-warning);--warning-soft:var(--color-warning-soft);--shadow:var(--elev-4);--motion-fast:.18s;--motion-med:.26s;--motion-slow:.36s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-emphasis:cubic-bezier(.16, 1, .3, 1)}[data-theme=dark]{--color-bg-start:#0f1a12;--color-bg-end:#131e16;--color-surface:#1a212a;--color-surface-soft:#212a34;--color-surface-2:#2a3540;--color-surface-hover:#303b47;--color-surface-row-hover:#232d38;--color-surface-row-hover-inv:#2a3540;--color-sidebar-start:#0a120d;--color-sidebar-end:#060d08;--color-sidebar-text:#d9e8da;--color-sidebar-muted:#6a9e72;--color-sidebar-nav:#b8d4ba;--color-sidebar-border:#ffffff12;--color-sidebar-overlay:#ffffff0f;--color-text:#e7ecf2;--color-text-secondary:#aab3c0;--color-text-muted:#7a8898;--color-border:#2f3a46;--color-border-soft:#28323d;--color-border-table:#3c495880;--color-border-input:#2f3a46;--color-accent:#4caf80;--color-accent-soft:#1a3d2a;--color-accent-tint:#4caf801a;--color-accent-focus:#4caf8059;--color-danger:#e06c5a;--color-danger-soft:#2d1c19;--color-warning:#d4a030;--color-warning-soft:#2a2010;--color-success:#5bcf8a;--color-success-soft:#163626;--color-info:#6a9fd4;--color-info-soft:#1a2c3d;--color-on-accent:#fff;--chart-heatmap:#6366f1;--heatmap-cell-fg:#ffffffeb;--heatmap-cell-border:#ffffff0a;--elev-1:0 1px 4px #00000040;--elev-2:0 4px 12px #0000004d;--elev-3:0 10px 24px #00000054;--elev-4:0 20px 45px #00000061;--elev-5:0 32px 72px #00000073;--color-table-head:#1f2832;--color-table-head-text:#7a8898;--color-table-row-hover:#232d38;--color-sticky-col:#1a212a;--color-sticky-shadow:inset -1px 0 0 #2f3a46;--color-drawer-bg:#1c2530;--color-drawer-border:#2f3a46;--color-icon-only-bg:#232d38;--color-icon-only-text:#c4cdd8;--color-search-bg:#232d38;--color-select-bg:#232d38;--background:linear-gradient(180deg, var(--color-bg-start) 0%, var(--color-bg-end) 100%)}[data-accent=blue]{--color-accent:#1d4ed8;--color-accent-soft:#e6edfb;--color-accent-tint:#1d4ed814;--color-accent-focus:#1d4ed847}[data-theme=dark][data-accent=blue]{--color-accent:#6ea8fe;--color-accent-soft:#16263f;--color-accent-tint:#6ea8fe1f;--color-accent-focus:#6ea8fe59}:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=blue]{--color-bg-start:#eef3fb;--color-bg-end:#f6f9fe;--color-sidebar-start:#16335c;--color-sidebar-end:#0f2647;--color-sidebar-muted:#9bb1cf;--color-sidebar-nav:#d4e0f2}[data-theme=dark]:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=blue]{--color-bg-start:#0d1622;--color-bg-end:#111b29;--color-sidebar-start:#0a1626;--color-sidebar-end:#060e1a;--color-sidebar-muted:#6f88b0;--color-sidebar-nav:#b8caea}[data-accent=violet]{--color-accent:#6d28d9;--color-accent-soft:#efe7fb;--color-accent-tint:#6d28d914;--color-accent-focus:#6d28d947}[data-theme=dark][data-accent=violet]{--color-accent:#a583f0;--color-accent-soft:#241836;--color-accent-tint:#a583f01f;--color-accent-focus:#a583f059}:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=violet]{--color-bg-start:#f3eefb;--color-bg-end:#f8f5fd;--color-sidebar-start:#3a2068;--color-sidebar-end:#2a1750;--color-sidebar-muted:#b09bcf;--color-sidebar-nav:#e2d4f2}[data-theme=dark]:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=violet]{--color-bg-start:#150f22;--color-bg-end:#191329;--color-sidebar-start:#170e26;--color-sidebar-end:#0f0819;--color-sidebar-muted:#8a6fb0;--color-sidebar-nav:#d0b8ea}[data-accent=amber]{--color-accent:#b45309;--color-accent-soft:#fbedd6;--color-accent-tint:#b4530914;--color-accent-focus:#b4530947}[data-theme=dark][data-accent=amber]{--color-accent:#e0a93c;--color-accent-soft:#322411;--color-accent-tint:#e0a93c24;--color-accent-focus:#e0a93c61}:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=amber]{--color-bg-start:#fbf4e6;--color-bg-end:#fdf9f0;--color-sidebar-start:#5c3d12;--color-sidebar-end:#472f0d;--color-sidebar-muted:#cfb892;--color-sidebar-nav:#f2e6d4}[data-theme=dark]:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=amber]{--color-bg-start:#211a0d;--color-bg-end:#261f11;--color-sidebar-start:#241803;--color-sidebar-end:#1a1102;--color-sidebar-muted:#b0936f;--color-sidebar-nav:#ead8b8}[data-accent=rose]{--color-accent:#be123c;--color-accent-soft:#fbe1e7;--color-accent-tint:#be123c14;--color-accent-focus:#be123c47}[data-theme=dark][data-accent=rose]{--color-accent:#f2728c;--color-accent-soft:#36161f;--color-accent-tint:#f2728c1f;--color-accent-focus:#f2728c59}:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=rose]{--color-bg-start:#fbeef1;--color-bg-end:#fdf5f7;--color-sidebar-start:#5c1228;--color-sidebar-end:#47101f;--color-sidebar-muted:#cf9bab;--color-sidebar-nav:#f2d4dc}[data-theme=dark]:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=rose]{--color-bg-start:#220f14;--color-bg-end:#29131a;--color-sidebar-start:#260a12;--color-sidebar-end:#1a060c;--color-sidebar-muted:#b06f80;--color-sidebar-nav:#eab8c4}[data-accent=teal]{--color-accent:#0f766e;--color-accent-soft:#d8f0ec;--color-accent-tint:#0f766e14;--color-accent-focus:#0f766e47}[data-theme=dark][data-accent=teal]{--color-accent:#4cc7b5;--color-accent-soft:#103330;--color-accent-tint:#4cc7b51f;--color-accent-focus:#4cc7b559}:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=teal]{--color-bg-start:#e6f5f2;--color-bg-end:#f0faf8;--color-sidebar-start:#0d4f49;--color-sidebar-end:#093b37;--color-sidebar-muted:#8fc0b9;--color-sidebar-nav:#d4f0ec}[data-theme=dark]:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=teal]{--color-bg-start:#0d211f;--color-bg-end:#112624;--color-sidebar-start:#03211e;--color-sidebar-end:#021614;--color-sidebar-muted:#6fb0a7;--color-sidebar-nav:#b8eae2}[data-accent=custom]{--color-accent:var(--custom-accent,#4f46e5);--color-accent-soft:var(--custom-accent)}@supports (color:color-mix(in lab,red,red)){[data-accent=custom]{--color-accent-soft:color-mix(in srgb, var(--custom-accent) 16%, var(--color-surface))}}[data-accent=custom]{--color-accent-tint:var(--custom-accent)}@supports (color:color-mix(in lab,red,red)){[data-accent=custom]{--color-accent-tint:color-mix(in srgb, var(--custom-accent) 10%, transparent)}}[data-accent=custom]{--color-accent-focus:var(--custom-accent)}@supports (color:color-mix(in lab,red,red)){[data-accent=custom]{--color-accent-focus:color-mix(in srgb, var(--custom-accent) 30%, transparent)}}:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-bg-start:var(--custom-accent)}@supports (color:color-mix(in lab,red,red)){:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-bg-start:color-mix(in srgb, var(--custom-accent) 7%, var(--color-surface))}}:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-bg-end:var(--custom-accent)}@supports (color:color-mix(in lab,red,red)){:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-bg-end:color-mix(in srgb, var(--custom-accent) 3%, var(--color-surface))}}:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-sidebar-start:var(--custom-accent)}@supports (color:color-mix(in lab,red,red)){:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-sidebar-start:color-mix(in srgb, var(--custom-accent) 42%, #0c1310)}}:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-sidebar-end:var(--custom-accent)}@supports (color:color-mix(in lab,red,red)){:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-sidebar-end:color-mix(in srgb, var(--custom-accent) 30%, #070b09)}}:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-sidebar-muted:var(--custom-accent)}@supports (color:color-mix(in lab,red,red)){:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-sidebar-muted:color-mix(in srgb, var(--custom-accent) 32%, #9aa6a0)}}:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-sidebar-nav:var(--custom-accent)}@supports (color:color-mix(in lab,red,red)){:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-sidebar-nav:color-mix(in srgb, var(--custom-accent) 16%, #e8efe9)}}[data-theme=dark][data-accent=custom]{--color-accent-soft:var(--custom-accent)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark][data-accent=custom]{--color-accent-soft:color-mix(in srgb, var(--custom-accent) 22%, #0c1310)}}[data-theme=dark]:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-sidebar-start:var(--custom-accent)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark]:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-sidebar-start:color-mix(in srgb, var(--custom-accent) 26%, #060b08)}}[data-theme=dark]:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-sidebar-end:var(--custom-accent)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark]:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-sidebar-end:color-mix(in srgb, var(--custom-accent) 16%, #040705)}}[data-theme=dark]:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-sidebar-muted:var(--custom-accent)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark]:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-sidebar-muted:color-mix(in srgb, var(--custom-accent) 30%, #7a8898)}}[data-theme=dark]:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-sidebar-nav:var(--custom-accent)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark]:where(:root[data-theme-preset=modern],:root:not([data-theme-preset]))[data-accent=custom]{--color-sidebar-nav:color-mix(in srgb, var(--custom-accent) 22%, #c4cdd8)}}[data-reduce-motion="1"] *,[data-reduce-motion="1"] :before,[data-reduce-motion="1"] :after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}*{box-sizing:border-box}html,body{min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}html{color:var(--color-text)}body{background:var(--background);margin:0}button,input,select,textarea{font:inherit}.app-shell{grid-template-columns:var(--sidebar-w) minmax(0,1fr);background:radial-gradient(circle at top left,var(--color-accent-tint),transparent 35%),linear-gradient(180deg,var(--color-bg-start) 0%,var(--color-bg-end) 100%);min-height:100vh;transition:grid-template-columns var(--motion-med) var(--ease-standard);display:grid;position:relative}.app-shell.sidebar-collapsed{--sidebar-w:72px}.sidebar{background:linear-gradient(180deg,var(--color-sidebar-start) 0%,var(--color-sidebar-end) 100%);color:var(--color-sidebar-text);border-right:1px solid var(--color-sidebar-border);flex-direction:column;height:100vh;padding:28px 22px;display:flex;position:sticky;top:0;overflow:hidden;box-shadow:10px 0 32px #141e171f}.sidebar.collapsed{width:72px;min-width:72px;padding:24px 12px}.brand{border-bottom:1px solid var(--color-sidebar-border);align-items:center;gap:14px;margin-bottom:24px;padding-bottom:26px;display:flex}.sidebar.collapsed .brand{justify-content:center;margin-bottom:18px;padding-bottom:18px}.sidebar.collapsed .brand div{display:none}.collapse-toggle{background:var(--color-sidebar-overlay);color:var(--color-sidebar-nav);border:none;border-radius:12px;justify-content:center;align-items:center;width:100%;height:42px;margin-top:16px;display:inline-flex}.brand strong{letter-spacing:-.03em;font-size:22px;display:block}.brand span{color:var(--color-sidebar-muted);font-size:13px}.eyebrow,.panel-header p{color:var(--color-text-muted);font-size:13px}.sidebar nav,.sidebar-nav,.sidebar .bottom-nav{gap:8px;display:grid}.sidebar-nav{scrollbar-width:none;flex:auto;min-height:0;overflow-y:auto}.sidebar-nav::-webkit-scrollbar{display:none}.sidebar .bottom-nav{flex-shrink:0}.nav-button,.icon-button,.primary-button,.ghost-button,.icon-only{cursor:pointer;border:0;transition:all .18s}.nav-button{color:var(--color-sidebar-nav);text-align:left;background:0 0;border-radius:14px;align-items:center;gap:12px;width:100%;padding:14px 16px;display:flex}.nav-button.active,.nav-button:hover{background:var(--color-sidebar-overlay);color:#fff}.sidebar.collapsed .nav-button{justify-content:center;gap:0;padding:12px}.nav-label.hidden{display:none}.main{min-width:0;padding:28px;position:relative}.topbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}h1,h2,p{margin:0}h1{letter-spacing:-.03em;font-size:34px;font-weight:800}h2{font-size:18px}.icon-button,.primary-button{border-radius:14px;align-items:center;gap:10px;padding:12px 16px;display:inline-flex}.icon-button{background:var(--surface);border:1px solid var(--color-border-soft);color:var(--color-text);box-shadow:var(--elev-2)}.icon-button:disabled{opacity:.6;cursor:default}.primary-button{background:var(--accent);color:#fff;box-shadow:0 10px 24px var(--color-accent-tint)}.ghost-button{border:1px solid var(--color-border);color:var(--accent);background:0 0;border-radius:14px;padding:10px 14px;font-weight:700}.secondary-button{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);border-radius:14px;align-items:center;gap:10px;padding:12px 16px;font-weight:600;display:inline-flex}.secondary-button:hover:not(:disabled){background:var(--color-surface-soft);border-color:var(--color-border-strong,var(--color-border))}.icon-button.icon-button-sm{width:38px;height:38px;padding:0 8px}.nav-button.logout-button,.icon-button.logout-button{color:var(--color-danger)}.nav-button.logout-button:hover:not(:disabled),.icon-button.logout-button:hover:not(:disabled){background:var(--color-danger-soft)}.icon-only{background:var(--color-icon-only-bg);color:var(--color-icon-only-text);border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.icon-only.danger{background:var(--color-danger-soft);color:var(--color-danger)}button:disabled{cursor:not-allowed;opacity:.55}@media(min-width:961px){.icon-only{width:38px;height:38px}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes panelReveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes fadeInSoft{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes indeterminateProgress{0%{transform:translate(-100%)}to{transform:translate(400%)}}@keyframes skeletonShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.spin{animation:spin .75s var(--ease-standard) infinite;display:inline-block}.stack{gap:18px;display:grid}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.metric{background:var(--surface);border:1px solid var(--color-border-soft);box-shadow:var(--shadow);transition:transform var(--motion-fast) var(--ease-emphasis);border-radius:18px;padding:18px 20px}.metric span{color:var(--muted);margin-bottom:10px;font-size:12px;display:block}.metric strong{font-variant-numeric:tabular-nums;font-size:28px;display:block}.metric.critical{border-color:var(--red-200);background:var(--color-danger-soft)}.metric.critical strong{color:var(--danger)}.metric.watch{border-color:var(--amber-200);background:var(--color-warning-soft)}.metric.watch strong{color:var(--warning)}.metric-card{background:var(--surface-soft);border-radius:14px;padding:12px 16px}.metric-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:700}.metric-value{color:var(--text);font-variant-numeric:tabular-nums;margin-top:4px;font-size:15px;font-weight:700}.panel{background:var(--surface);box-shadow:var(--shadow);animation:panelReveal var(--motion-med) var(--ease-standard);border:none;border-radius:24px;overflow:hidden}.subpanel{background:var(--surface-soft);border:1px solid var(--border);border-radius:16px;overflow:hidden}.inventory-summary-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;padding:0 24px 24px;display:grid}.inventory-meta{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;padding:0 24px 24px;display:grid}.inventory-meta strong{color:var(--color-text-secondary);letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px;font-size:12px;font-weight:700;display:block}.inventory-meta p{color:var(--color-text);margin:0;font-size:14px}.snapshot-row{transition:background .18s}.snapshot-row:hover,.snapshot-row:hover td.first-sticky-col{background:var(--color-surface-row-hover)}.snapshot-detail-row td{background:var(--color-surface-soft);padding:20px 16px}.snapshot-detail-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.empty-note{color:var(--color-text-muted);padding:24px;font-size:14px}.panel-header,.toolbar{justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.audit-layout{grid-template-columns:1fr;gap:20px;display:grid}.audit-layout.has-selection{grid-template-columns:minmax(220px,280px) minmax(0,1fr);align-items:start}.audit-uploads-section,.audit-rows-section{min-width:0}.audit-rows-section{flex-direction:column;gap:0;min-height:240px;display:flex}.audit-rows-header.panel-header{border-bottom:1px solid var(--color-border-soft);padding:16px 0}.audit-rows-header h3{margin:0;font-size:15px}.audit-rows-subtitle{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:12px;overflow:hidden}.audit-rows-toolbar{border-bottom:1px solid var(--color-border-soft);flex-wrap:wrap;padding:12px 0}.audit-rows-toolbar.toolbar{padding-left:0;padding-right:0}.audit-rows-section .result-meta{padding:10px 0}.audit-rows-section .table-wrap{margin-top:0}.audit-upload-filename{word-break:break-word;font-size:13px;font-weight:600;display:block}.audit-upload-path{color:var(--color-text-muted);word-break:break-all;margin-top:3px;font-size:11px;display:block}.audit-layout.has-selection .col-hide-sidebar{display:none}.audit-layout.has-selection .audit-uploads-table .table-wrap{max-height:calc(100vh - 280px);overflow:auto}.selected-upload-row{background:var(--color-surface-row-hover)}.selected-upload-row td:first-child{box-shadow:inset 3px 0 0 var(--color-accent)}.upload-stat{background:var(--color-surface-2);color:var(--color-text-secondary);border-radius:8px;padding:3px 8px;font-size:11px;font-weight:600}.upload-stat.critical{background:var(--color-danger-soft);color:var(--color-danger)}.upload-detail-stats{flex-shrink:0;align-items:center;gap:8px;display:flex}.active-badge{background:var(--color-accent);color:#fff;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;border-radius:8px;margin-left:8px;padding:2px 7px;font-size:10px;font-weight:700}.panel-body{min-width:0;animation:fadeInSoft var(--motion-med) var(--ease-standard);padding:0 24px 24px}.panel-body>.form-row:first-child,.panel-body>.table-wrap:first-child,.panel-body>p:first-child{margin-top:0}.panel-body .form-row{margin-bottom:16px}.form-row{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.form-row-wrap{flex-wrap:wrap}.form-row-grow{flex:1;min-width:200px}.panel-body .table-wrap{border:1px solid var(--color-border-soft);border-radius:16px;max-width:100%}.panel-body .status-line{margin-bottom:16px}.truth-banner{background:var(--color-accent-tint);color:var(--color-text-secondary);border:1px solid #27614729;border-radius:14px;gap:8px;margin-top:12px;padding:10px 14px;font-size:13px;display:inline-flex}.global-progress-bar{background:#2761472e;border-radius:999px;width:100%;height:3px;margin-bottom:14px;overflow:hidden}.global-progress-bar:after{background:var(--accent);content:"";width:30%;height:100%;animation:1.4s linear infinite indeterminateProgress;display:block}.toolbar{border-bottom:1px solid var(--color-border-soft)}.toolbar-wrap{flex-wrap:wrap;align-items:center;gap:10px}.search-box{background:var(--color-search-bg);border:1px solid var(--color-border);border-radius:18px;align-items:center;gap:10px;width:min(100%,520px);min-width:360px;padding:0 14px;display:flex}.search-box input,.import-row input{background:0 0;border:0;outline:0;width:100%;min-width:0;padding:12px 0}select{background:var(--color-select-bg);border:1px solid var(--color-border);color:var(--color-text);border-radius:14px;padding:12px 14px}.table-wrap{overflow:auto}.table-wrap.table-filtering{opacity:.66;filter:grayscale(20%);pointer-events:none;transition:opacity var(--motion-fast) var(--ease-standard),filter var(--motion-fast) var(--ease-standard)}.result-meta{background:var(--color-surface-soft);border:1px solid var(--color-border-soft);color:var(--muted);border-radius:16px;justify-content:space-between;align-items:center;min-height:52px;padding:12px 18px;font-size:13px;display:flex}.pagination-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pagination-controls .ghost-button{align-items:center;gap:4px;display:inline-flex}.page-indicator{color:var(--muted);white-space:nowrap;font-size:13px}table{border-collapse:separate;border-spacing:0;table-layout:fixed;min-width:100%}th,td{text-align:left;vertical-align:top;padding:10px 14px}th{background:var(--color-table-head);color:var(--color-table-head-text);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;z-index:1;font-size:12px;font-weight:700;position:sticky;top:0}td{border-bottom:1px solid var(--color-border-table);color:var(--text);font-size:13px}th.sortable,th button.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}th.sortable:hover,th button.sortable:hover{background:var(--color-surface-2);color:var(--accent)}th button.sortable{color:inherit;font:inherit;text-align:inherit;background:0 0;border:none;width:100%;padding:0}th.first-sticky-col,td.first-sticky-col{position:sticky;left:0}th.first-sticky-col{z-index:4}td.first-sticky-col{background:var(--color-sticky-col);box-shadow:var(--color-sticky-shadow);z-index:2}th.second-sticky-col,td.second-sticky-col{left:var(--sticky-col-1-width,180px);position:sticky}th.second-sticky-col{z-index:4}td.second-sticky-col{background:var(--color-sticky-col);box-shadow:var(--color-sticky-shadow);z-index:2}td.truncate{text-overflow:ellipsis;white-space:nowrap;max-width:0;overflow:hidden}tbody tr{cursor:default}tbody tr:hover,tbody tr:hover td.first-sticky-col,tbody tr:hover td.second-sticky-col{background:var(--color-table-row-hover)}.interactive-row{cursor:pointer}.text-muted{color:var(--color-text-muted)}.interactive-row:hover,.interactive-row:hover td.first-sticky-col,.interactive-row:hover td.second-sticky-col{background:var(--color-surface-row-hover)}.interactive-row:focus-visible{outline:3px solid var(--color-accent-focus);outline-offset:-3px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.clickable-row:focus-visible{outline:3px solid var(--color-accent-focus);outline-offset:2px}.empty-row td{color:var(--color-text-muted);text-align:center;animation:fadeInSoft var(--motion-med) var(--ease-standard);padding:22px 16px}.skeleton-cell{background:linear-gradient(90deg,var(--color-surface-2) 25%,var(--color-surface-hover) 50%,var(--color-surface-2) 75%);background-size:200% 100%;border-radius:6px;width:80%;height:14px;animation:1.2s infinite skeletonShimmer;display:block}.skeleton-cell.short{width:55%}.skeleton-cell.tiny{width:35%}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:52px 24px;display:flex}.empty-state-icon{background:var(--surface-soft);color:var(--muted);border-radius:50%;padding:18px}.empty-state h3{color:var(--text);margin:0;font-size:16px;font-weight:700}.empty-state p{color:var(--muted);max-width:360px;font-size:13px}.empty-state-action{margin-top:8px}.empty-state-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px;display:flex}.empty-state-actions .empty-state-action{margin-top:0}.banner-slot{margin:0 0 14px}.banner-slot .status-line{margin:0}.strong{font-weight:700}.mono{font-family:SFMono-Regular,Consolas,monospace}.why{color:var(--color-text-muted);min-width:320px}.badge{white-space:nowrap;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;display:inline-block}.badge.critical{background:var(--color-danger-soft);color:var(--color-danger)}.badge.watch{background:var(--color-warning-soft);color:var(--color-warning)}.badge.normal{background:var(--color-success-soft);color:var(--color-success)}.badge.unaudited{background:var(--amber-100);color:var(--amber-700)}.badge.audited{background:var(--emerald-50);color:var(--emerald-600)}.badge.audit-only{background:var(--color-info-soft);color:var(--color-info)}.drawer-backdrop{cursor:pointer;z-index:50;animation:fadeInSoft var(--motion-fast) var(--ease-standard);background:#0f191273;position:fixed;top:0;right:0;bottom:0;left:0}.drawer-viewport{z-index:51;pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0}.drawer-viewport>*{pointer-events:auto}.drawer{background:var(--color-drawer-bg);border-left:1px solid var(--color-drawer-border);z-index:51;width:min(720px,100vw);max-width:720px;animation:slideInRight .35s var(--ease-emphasis) forwards;outline:none;padding:24px;position:fixed;top:0;bottom:0;right:0;overflow:auto;box-shadow:-26px 0 60px #151f1829}.drawer-wide{width:min(820px,100vw);max-width:820px}.drawer-body{flex-direction:column;gap:1rem;display:flex}.drawer-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:.5rem;padding:0 0 .25rem;display:flex}.skip-link{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);z-index:10000;border-radius:8px;padding:10px 14px;font-size:14px;font-weight:600;text-decoration:none;position:absolute;top:-100px;left:12px}.skip-link:focus{outline:3px solid var(--color-accent-focus);outline-offset:2px;top:12px}.confirm-backdrop{cursor:pointer;z-index:1000;background:#0f191273;position:fixed;top:0;right:0;bottom:0;left:0}.confirm-dialog{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--elev-5);z-index:1001;border-radius:16px;outline:none;width:100%;max-width:min(440px,100vw - 32px);padding:24px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.confirm-dialog h2{margin:0 0 10px;font-size:18px}.confirm-dialog p{color:var(--color-text-muted);margin:0 0 20px;font-size:14px;line-height:1.5}.confirm-dialog-actions{justify-content:flex-end;gap:10px;display:flex}.critical-button{background:var(--red-600);border-color:var(--red-600)}.critical-button:hover{background:var(--red-700);border-color:var(--red-700)}.drawer-header{border-bottom:1px solid var(--color-border-soft);justify-content:space-between;align-items:start;gap:14px;margin-bottom:20px;padding-bottom:14px;display:flex}.drawer-metrics{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:18px;display:grid}.drawer-table{border:1px solid var(--color-border-soft);animation:fadeInSoft var(--motion-med) var(--ease-standard);border-radius:16px}.drawer-search{margin-bottom:12px}.drawer-result-meta{margin-top:10px}.status-line{color:var(--color-text-secondary);border-radius:12px;align-items:center;gap:8px;margin:0 16px 16px;padding:10px 12px;font-size:13px;display:flex}.status-line.status-info{background:var(--color-surface-soft);border:1px solid var(--color-border)}.status-line.status-success{background:var(--color-success-soft);border:1px solid var(--emerald-50);color:var(--color-success)}.status-line.status-error{background:var(--color-danger-soft);border:1px solid var(--red-100);color:var(--color-danger)}.status-dismiss{color:inherit;cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:6px;margin-left:auto;padding:2px;display:inline-flex}.status-dismiss:hover{opacity:1}.state{background:var(--surface);box-shadow:var(--shadow);border:none;border-radius:20px;padding:26px}.state.error{background:var(--color-danger-soft);border:1px solid var(--red-100)}.check-control{color:var(--color-text-secondary);white-space:nowrap;align-items:center;gap:8px;font-size:13px;display:inline-flex}.row-actions{gap:10px;display:flex}.audit-status{border-bottom:1px solid var(--color-border-soft);padding-top:0}.audit-editor{padding-bottom:16px}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0 16px 16px;display:grid}.form-grid label{color:var(--color-text-muted);text-transform:uppercase;gap:8px;font-size:12px;font-weight:700;display:grid}.form-grid input,.form-grid textarea{background:var(--color-surface);border:1px solid var(--color-border-input);color:var(--color-text);text-transform:none;border-radius:14px;min-width:0;padding:12px 14px}.form-grid textarea{resize:vertical;min-height:88px}.form-grid .wide{grid-column:span 3}.form-actions{justify-content:flex-end;gap:12px;padding:0 16px;display:flex}.notice{background:var(--color-warning-soft);border:1px solid var(--amber-200);border-radius:16px;align-items:center;gap:12px;margin-bottom:18px;padding:16px;display:flex}.upload-inline{flex-wrap:wrap;align-items:center;gap:10px;padding:0 24px 16px;display:flex}.upload-inline--card{border-bottom:1px solid var(--color-border-soft);margin-bottom:0;padding:12px 14px}.file-input-inline{background:var(--color-surface-soft);border:1px dashed var(--color-border);color:var(--color-text-secondary);border-radius:10px;padding:8px 12px;font-size:13px}.import-row{flex-wrap:wrap;gap:12px;padding:0 16px 16px;display:flex}.upload-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;padding:0 16px 16px;display:grid}.upload-box{border:1px solid var(--color-border);background:var(--color-surface-soft);border-radius:20px;gap:12px;padding:18px;display:grid}.upload-box span{color:var(--color-text-muted);font-size:13px}.upload-box input[type=file]{border:1px dashed var(--color-border);border-radius:12px;padding:12px}.import-row input{border:1px solid var(--color-border);border-radius:14px;flex:1;min-width:0;padding:12px 14px}.import-review .pill{white-space:nowrap;border-radius:999px;align-self:center;padding:5px 12px;font-size:12px;font-weight:600}.pill-ok{background:var(--color-success-soft);color:var(--color-success);border:1px solid var(--emerald-50)}.pill-warn{background:var(--color-warning-soft);color:var(--color-warning);border:1px solid var(--amber-200)}.advice-list{gap:8px;margin:0;padding:0 16px 4px;list-style:none;display:grid}.advice-list li{border-radius:12px;align-items:center;gap:8px;padding:9px 12px;font-size:13px;display:flex}.advice-warn{background:var(--color-warning-soft);border:1px solid var(--amber-200);color:var(--color-warning)}.advice-error{background:var(--color-danger-soft);border:1px solid var(--red-100);color:var(--color-danger)}.advice-list svg{flex-shrink:0}.map-table{gap:6px;padding:4px 16px 8px;display:grid}.map-head,.map-row{grid-template-columns:minmax(150px,1.1fr) minmax(160px,1.4fr) minmax(70px,.5fr);align-items:center;gap:12px;display:grid}.map-head{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;padding:0 2px 2px;font-size:11px;font-weight:700}.map-name{flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.req-tag{background:var(--color-surface-2);color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase;border-radius:6px;padding:2px 6px;font-size:10px;font-style:normal;font-weight:600}.map-select{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:10px;width:100%;padding:9px 10px;font-size:13px}.map-select.missing{border-color:var(--red-500);background:var(--color-danger-soft)}.badge--match{white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:600}.badge-ok{background:var(--color-success-soft);color:var(--color-success)}.badge-fuzzy{background:var(--color-warning-soft);color:var(--color-warning)}.badge-edit{background:var(--color-info-soft);color:var(--color-info)}.badge-default{background:var(--color-surface-2);color:var(--color-text-muted)}.preview-wrap{max-height:220px;margin:4px 16px 8px}.review-actions{flex-wrap:wrap;align-items:center;gap:12px;padding:8px 16px 18px;display:flex}.icon-button.danger{color:var(--color-danger);border-color:var(--red-100)}.icon-button.danger:hover:not(:disabled){background:var(--color-danger-soft)}.review-hint{color:var(--color-warning);font-size:12px}@media(max-width:640px){.map-head{display:none}.map-row{border:1px solid var(--color-border-soft);border-radius:12px;grid-template-columns:1fr;gap:4px;padding:10px}}.critical-text{color:var(--danger);font-weight:800}.login-screen{--login-bg:#070912;--login-surface:#101622c7;--login-ink:#f2f5ff;--login-muted:#8a9bb0;--login-accent:#5ce1ff;--login-brass:#c4a574;--login-border:#5ce1ff2e;background:var(--login-bg);color:var(--login-ink);justify-content:center;align-items:center;min-height:100vh;padding:28px 16px;font-family:"Source Sans 3",Segoe UI,Candara,sans-serif;display:flex;position:relative}.login-atmosphere{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.login-atmosphere-veil{content:"";background:radial-gradient(55% 45% at 18% 20%,#5ce1ff29,#0000 60%),radial-gradient(50% 40% at 88% 78%,#c4a5741f,#0000 65%),radial-gradient(80% 60% at 50% 100%,#101622e6,#0000 70%);position:absolute;top:0;right:0;bottom:0;left:0}.login-atmosphere-grid{opacity:.7;background-image:linear-gradient(#5ce1ff0f 1px,#0000 1px),linear-gradient(90deg,#5ce1ff0f 1px,#0000 1px);background-size:44px 44px;animation:28s linear infinite loginGridDrift;position:absolute;top:-44px;right:-44px;bottom:-44px;left:-44px;-webkit-mask-image:radial-gradient(70% 55% at 50% 40%,#000,#0000);mask-image:radial-gradient(70% 55% at 50% 40%,#000,#0000)}@keyframes loginGridDrift{0%{transform:translate(0)}to{transform:translate(-44px,-22px)}}.login-stage{z-index:1;gap:28px;width:min(420px,100vw - 32px);max-width:420px;display:grid;position:relative}.login-hero{text-align:center}.login-wordmark{color:var(--login-ink);letter-spacing:.14em;text-transform:uppercase;margin:14px 0 8px;font-family:Outfit,"Source Sans 3",Candara,sans-serif;font-size:clamp(2.4rem,6vw,3.1rem);font-weight:800;line-height:1}.login-hero-lede{color:var(--login-muted);margin:0;font-size:.95rem;line-height:1.45}.login-atmosphere:before,.login-atmosphere:after{display:none}.login-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:var(--login-surface);border:1px solid var(--login-border);z-index:1;border-radius:18px;width:100%;padding:28px 26px;animation:.42s cubic-bezier(.22,1,.36,1) both loginCardIn;position:relative;box-shadow:0 24px 48px #00000073,inset 0 0 0 1px #5ce1ff0a}@keyframes loginCardIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.login-brand{align-items:center;gap:14px;margin-bottom:28px;display:flex}.auth-mark{border-radius:12px;flex-shrink:0;display:inline-flex;overflow:hidden;box-shadow:0 0 0 1px #5ce1ff40,0 8px 24px #00000059}.login-brand strong{color:var(--login-ink);letter-spacing:-.04em;font-family:Outfit,"Source Sans 3",Candara,sans-serif;font-size:28px;font-weight:800;line-height:1.1;display:block}.login-brand span{color:var(--login-muted);margin-top:2px;font-size:13px;line-height:1.35;display:block}.login-form,.login-card form{gap:14px;display:grid}.login-form-error{animation:loginShake .36s var(--ease-standard)}@keyframes loginShake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}50%{transform:translate(4px)}75%{transform:translate(-2px)}}.login-field{gap:6px;display:grid}.login-label-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.login-label{color:var(--login-ink,var(--color-text));font-size:13px;font-weight:600}.login-forgot-inline{color:var(--login-muted,var(--color-text-muted));white-space:nowrap;font-size:12px;font-weight:500;text-decoration:none}.login-forgot-inline:hover{color:var(--login-accent,var(--color-accent));text-decoration:underline}.login-password-wrap{position:relative}.login-password-wrap .login-input{padding-right:68px}.login-password-toggle{color:var(--login-muted,var(--color-text-muted));cursor:pointer;font:inherit;background:0 0;border:0;padding:8px 12px;font-size:12px;font-weight:600;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.login-password-toggle:hover{color:var(--login-accent,var(--color-accent))}.login-input{color:var(--login-ink,var(--color-text));background:#0709128c;border:1px solid #5ce1ff29;border-radius:12px;width:100%;padding:14px 16px;font-size:15px;transition:border-color .16s,box-shadow .16s}.login-input:focus-visible{border-color:#5ce1ff8c;outline:none;box-shadow:0 0 0 3px #5ce1ff2e}.login-error{color:#ff6b7a;margin:0;font-size:13px}.login-error a{color:inherit;font-weight:600}.login-screen .login-submit.primary-button,.login-screen .primary-button.login-submit{color:#070912;background:linear-gradient(135deg,#5ce1ff,#2a9bb0,#c4a574 140%);border:0;font-weight:700}.login-submit{justify-content:center;align-items:center;gap:8px;width:100%;margin-top:4px;padding:14px;transition:transform .14s,opacity .14s;display:inline-flex}.login-submit:not(:disabled):active{transform:scale(.985)}@media(prefers-reduced-motion:reduce){.login-atmosphere-grid,.login-card{animation:none}}.login-divider{color:var(--color-text-muted);text-align:center;text-transform:lowercase;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:18px 0 4px;font-size:12px;display:grid}.login-divider:before,.login-divider:after{background:var(--color-border-soft);content:"";height:1px}.login-oidc-button{justify-content:center;width:100%;margin-top:4px;padding:12px;text-decoration:none;display:flex}.login-forgot-link{color:var(--color-text-muted);text-align:center;margin-top:4px;font-size:13px;text-decoration:none;display:block}.login-forgot-link:hover{color:var(--color-accent);text-decoration:underline}.login-hint{color:var(--color-text-muted);margin:0;font-size:14px;line-height:1.45}.login-success{color:var(--color-success);margin:0 0 16px;font-size:14px;line-height:1.45}@media(max-width:480px){.login-card{padding:32px 24px}.login-brand strong{font-size:24px}}.account-password-card{border-top:1px solid var(--color-border-soft);margin-top:8px;padding-top:18px}.account-password-card h3{margin:0 0 4px;font-size:16px}.mfa-enroll-grid{grid-template-columns:auto 1fr;align-items:start;gap:20px;display:grid}.mfa-qr{background:#fff;border-radius:12px;padding:8px}.mfa-recovery h4{margin:0 0 8px}.mfa-recovery-codes{background:var(--color-surface-soft);border-radius:12px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:6px;margin:12px 0;padding:12px;list-style:none;display:grid}.mfa-recovery-codes code{font-family:var(--font-mono,monospace);font-size:13px}.session-list{gap:10px;display:grid}.session-card{background:var(--color-surface-soft);border:1px solid var(--color-border);border-radius:14px;align-items:center;gap:12px;padding:12px 14px;display:flex}.session-card-current{border-color:var(--color-accent)}.session-card-icon{color:var(--color-accent)}.session-card-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.session-card-body strong{font-size:14px}.task-comments{gap:10px;margin:8px 0 0;padding:0;list-style:none;display:grid}.task-comments li{background:var(--color-surface-soft);border-radius:10px;padding:10px 12px}.clickable-row{cursor:pointer}.clickable-row:hover td{background:var(--color-surface-soft)}@media(min-width:961px)and (max-height:820px){.sidebar{padding:20px 22px}.brand{margin-bottom:16px;padding-bottom:18px}.sidebar-nav,.sidebar .bottom-nav{gap:4px}.nav-button{padding:11px 16px}.collapse-toggle{height:36px;margin-top:10px}}@media(min-width:961px)and (max-height:660px){.sidebar{padding:14px 18px}.brand{margin-bottom:10px;padding-bottom:12px}.sidebar-nav,.sidebar .bottom-nav{gap:2px}.nav-button{padding:9px 14px}.collapse-toggle{height:32px;margin-top:8px}}@media(min-width:961px)and (max-height:540px){.sidebar{padding:10px 14px}.brand{margin-bottom:8px;padding-bottom:8px}.sidebar-nav,.sidebar .bottom-nav{gap:1px}.nav-button{padding:7px 12px}.collapse-toggle{height:28px;margin-top:6px}}@media(max-width:960px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;padding:20px 18px;position:static;overflow:visible}.sidebar nav,.sidebar-nav,.metric-grid,.drawer-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.main{padding:20px}.panel-header,.toolbar,.topbar,.form-actions,.import-row{flex-direction:column;align-items:stretch}.search-box{width:100%;min-width:0}.upload-grid,.form-grid,.audit-layout.has-selection{grid-template-columns:1fr}.audit-layout.has-selection .col-hide-sidebar{display:revert}.col-hide-md{display:none}.form-grid .wide{grid-column:auto}}@media(max-width:640px){.app-shell{padding-bottom:16px}.sidebar{border-bottom:1px solid var(--color-sidebar-border);box-shadow:none;border-right:none}.nav-button{border-radius:12px;padding:12px 14px}.col-hide-sm{display:none}.import-row{flex-direction:column;width:100%}.row-actions.compact-mobile{gap:6px}.row-actions.compact-mobile .ghost-button{border-radius:10px;padding:8px 10px}.row-actions.compact-mobile .icon-only{width:34px;height:34px}}.insights-subnav{gap:8px;display:flex}.insights-subnav .tab-button{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:8px 14px;font-size:.9rem}.insights-subnav .tab-button.active{background:var(--color-accent-soft);color:var(--color-accent);border-color:#0000}.insights-config-detail{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.insights-config-override{grid-column:1/-1}.insights-page{flex-direction:column;gap:24px;min-height:100%;padding:20px 24px 40px;display:flex}.insights-setup-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;grid-template-columns:minmax(0,1.4fr) minmax(220px,.8fr);align-items:start;gap:20px;margin-bottom:8px;padding:24px;display:grid}.insights-setup-copy h2{margin:0 0 8px;font-size:1.25rem}.insights-setup-copy p{color:var(--color-text-muted);margin:0 0 16px;line-height:1.45}.insights-setup-actions{flex-wrap:wrap;gap:10px;display:flex}.insights-setup-stats{grid-template-columns:1fr 1fr;gap:10px;display:grid}@media(max-width:900px){.insights-setup-panel{grid-template-columns:1fr}}.insights-situation-bar{flex-wrap:wrap;gap:12px;display:flex}.insight-kpi{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:12px;flex:130px;min-width:100px;padding:12px 16px;transition:border-color .2s}.insight-kpi-good{border-color:#22c55e59}.insight-kpi-warn{border-color:#f59e0b59}.insight-kpi-bad{border-color:#ef444459}.insight-kpi-neutral{border-color:var(--color-border)}.insight-kpi-value{color:var(--color-text);font-size:1.4rem;font-weight:700;line-height:1.2}.insight-kpi-good .insight-kpi-value{color:var(--color-success)}.insight-kpi-warn .insight-kpi-value{color:var(--color-warning)}.insight-kpi-bad .insight-kpi-value{color:var(--color-danger)}.insight-kpi-label{color:var(--text-muted);letter-spacing:.03em;text-transform:uppercase;margin-top:2px;font-size:.7rem;font-weight:500}.insight-kpi-sub{color:var(--text-muted);opacity:.7;margin-top:1px;font-size:.65rem}.insights-health-row{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-wrap:wrap;align-items:flex-start;gap:24px;padding:20px 24px;display:flex}.insights-health-ring-wrap{flex-shrink:0;width:120px}.health-ring-svg{width:120px;height:120px}.insights-health-detail{flex-direction:column;flex:280px;gap:12px;display:flex}.insights-health-interp{color:var(--text-secondary);margin:0;font-size:.875rem;line-height:1.5}.insights-kpi-grid{flex-wrap:wrap;gap:8px;display:flex}.kpi-pill{background:var(--surface-2);border:1px solid var(--border);border-radius:20px;align-items:center;gap:6px;padding:4px 12px;font-size:.75rem;display:flex}.kpi-pill-label{color:var(--text-muted)}.kpi-pill-value{color:var(--text-primary);font-weight:600}.insights-readiness{flex-shrink:0;min-width:200px}.readiness-toggle{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:6px;padding:7px 12px;font-size:.8rem;transition:background .15s;display:flex}.readiness-toggle:hover{background:var(--surface-2)}.readiness-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-left:4px}.readiness-dot.good{background:var(--color-success)}.readiness-dot.warn{background:var(--color-warning)}.readiness-panel{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:6px;margin-top:8px;padding:12px;display:flex}.readiness-badge{align-items:center;gap:6px;font-size:.78rem;display:flex}.readiness-badge.unlocked{color:var(--color-success)}.readiness-badge.locked{color:var(--text-muted)}.readiness-need{opacity:.65;font-size:.72rem}.readiness-notes{color:var(--text-muted);margin:6px 0 0;padding-left:16px;font-size:.72rem;line-height:1.6}.insights-section{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:16px;padding:20px 24px;display:flex}.insights-section-header{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.insights-section-header h2{color:var(--text-primary);margin:0;font-size:1rem;font-weight:600}.insights-card-count{color:var(--text-muted);font-size:.9em;font-weight:400}.insights-section-sub{color:var(--text-muted);margin:0;font-size:.8rem}.sev-filter-bar{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}.sev-filter-btn{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:20px;padding:4px 12px;font-size:.73rem;font-weight:500;transition:all .15s}.sev-filter-btn:hover{background:var(--surface-2);color:var(--text-secondary)}.sev-filter-btn.active{background:var(--accent);color:var(--color-on-accent);border-color:var(--accent)}.sev-filter-btn.sev-critical.active{background:var(--color-danger);border-color:var(--color-danger)}.sev-filter-btn.sev-warning.active{background:var(--color-warning);border-color:var(--color-warning)}.sev-filter-btn.sev-info.active{background:var(--color-info);border-color:var(--color-info)}.insight-card-feed{flex-direction:column;gap:8px;display:flex}.insight-card{border:1px solid var(--border);border-radius:10px;transition:border-color .15s;overflow:hidden}.insight-card.sev-critical{border-color:#ef44444d}.insight-card.sev-warning{border-color:#f59e0b4d}.insight-card.sev-info{border-color:#3b82f638}.insight-card-header{cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--surface-2);text-align:left;width:100%;font:inherit;color:inherit;border:none;align-items:center;gap:10px;padding:12px 16px;transition:background .15s;display:flex}.insight-card-header:hover{background:var(--surface)}.insight-card-header:focus-visible{outline:2px solid var(--color-accent,var(--accent));outline-offset:-2px}.insight-card-icon{flex-shrink:0}.insight-card-icon.sev-critical{color:var(--color-danger)}.insight-card-icon.sev-warning{color:var(--color-warning)}.insight-card-icon.sev-info{color:var(--color-info)}.insight-card-headline{color:var(--text-primary);flex:1;font-size:.875rem;font-weight:500;line-height:1.4}.insight-card-chips{flex-shrink:0;align-items:center;gap:4px;display:flex}.confidence-chip{letter-spacing:.04em;text-transform:uppercase;border-radius:10px;padding:2px 7px;font-size:.65rem;font-weight:600}.conf-high{color:var(--color-success);background:#22c55e2e}.conf-medium{color:var(--color-warning);background:#f59e0b2e}.conf-low{color:var(--color-text-muted);background:#9ca3af2e}.sample-chip{color:var(--text-muted);background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:2px 7px;font-size:.65rem;font-weight:500}.insight-expand-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 4px;font-size:.65rem}.insight-card-body{background:var(--surface);border-top:1px solid var(--border);padding:12px 16px 14px}.insight-bullets{flex-direction:column;gap:6px;margin:0 0 10px;padding:0;list-style:none;display:flex}.insight-bullets li{color:var(--text-secondary);padding-left:1em;font-size:.82rem;line-height:1.5;position:relative}.insight-bullets li:before{content:"•";color:var(--text-muted);position:absolute;left:0}.insight-card-links{flex-wrap:wrap;gap:12px;display:flex}.velocity-sparkline{gap:6px;margin-bottom:10px;display:grid}.velocity-bar-wrap{grid-template-columns:1fr auto;align-items:center;gap:6px;display:grid}.velocity-bar{background:var(--color-accent);border-radius:6px;height:8px}.expiry-calendar-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;display:grid}.expiry-cell{border:1px solid var(--border);border-radius:10px;gap:4px;padding:10px;display:grid}.package-timeline-wrap{border:1px solid var(--color-border-soft);border-radius:12px;margin-bottom:14px;overflow:auto}.package-timeline-svg{background:var(--surface);width:100%;min-width:520px;height:72px;display:block}.compliance-finding-summary{color:var(--text-secondary);margin:0 0 .5rem;font-size:.9rem;line-height:1.45}.compliance-finding-action{margin:0 0 .75rem;font-size:.88rem;line-height:1.45}.compliance-evidence h4{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0 0 .35rem;font-size:.8rem}.evidence-field{font-family:var(--font-mono,monospace);font-size:.82rem}.risk-table-wrap{border:1px solid var(--border);border-radius:10px;overflow-x:auto}.risk-table th,.risk-table td{white-space:nowrap;padding:8px 10px;font-size:.78rem}.risk-rank{color:var(--text-muted);text-align:center;font-variant-numeric:tabular-nums}.risk-row-top td{background:#ef44440f}.risk-cum{font-variant-numeric:tabular-nums;color:var(--accent);font-weight:600}.risk-reason{color:var(--text-muted);text-overflow:ellipsis;max-width:200px;font-size:.72rem;overflow:hidden}.risk-bar-wrap{align-items:center;gap:6px;display:flex}.risk-bar-bg{background:var(--border);border-radius:3px;flex-shrink:0;width:60px;height:6px;overflow:hidden}.risk-bar-fill{border-radius:3px;height:100%;transition:width .3s}.risk-bar-label{font-variant-numeric:tabular-nums;color:var(--text-secondary);min-width:24px;font-size:.72rem}.abc-badge{text-align:center;border-radius:4px;width:20px;height:20px;font-size:.7rem;font-weight:700;line-height:20px;display:inline-block}.abc-a{color:var(--color-danger);background:#ef444426}.abc-b{color:var(--color-warning);background:#f59e0b26}.abc-c{color:var(--color-text-muted);background:#9ca3af26}.heatmap-outer{overflow:hidden}.heatmap-scroll{overflow-x:auto}.heatmap-table{border-collapse:collapse;width:max-content;min-width:100%;font-size:.72rem}.heatmap-table th{background:var(--surface-2);color:var(--text-muted);text-align:center;white-space:nowrap;padding:6px 8px;font-weight:500;position:sticky;top:0}.heatmap-product-col{z-index:2;min-width:220px;max-width:260px;position:sticky;left:0;text-align:left!important;background:var(--surface-2)!important}.heatmap-room-col{min-width:80px;max-width:120px}.heatmap-table td{border:1px solid var(--heatmap-cell-border);text-align:center;font-variant-numeric:tabular-nums;padding:5px 8px}.heatmap-product-name{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;max-width:260px;font-size:.72rem;position:sticky;left:0;overflow:hidden;text-align:left!important;background:var(--surface)!important}.heatmap-cell{color:var(--heatmap-cell-fg);min-width:60px;font-size:.7rem;transition:background .2s}.heatmap-summary{color:var(--text-muted);text-align:center;margin-top:8px;font-size:.75rem}.room-coverage{gap:14px;display:grid}.room-coverage-legend{color:var(--color-text-muted,var(--text-muted));flex-wrap:wrap;gap:14px;font-size:.75rem;display:flex}.room-cov-leg:before{content:"";vertical-align:-1px;border-radius:2px;width:10px;height:10px;margin-right:6px;display:inline-block}.room-cov-leg.compliant:before{background:var(--color-success)}.room-cov-leg.stale:before{background:var(--color-warning)}.room-cov-leg.never:before{background:var(--color-border)}.room-coverage-list{gap:12px;display:grid}.room-coverage-row{gap:6px;display:grid}.room-coverage-meta{flex-wrap:wrap;align-items:baseline;gap:8px 14px;display:flex}.room-coverage-name{min-width:120px;font-size:.92rem}.room-coverage-pct{font-size:.8rem;font-weight:700}.room-coverage-pct-good{color:var(--color-success)}.room-coverage-pct-warn{color:var(--color-warning)}.room-coverage-pct-bad{color:var(--color-danger)}.room-coverage-stats{color:var(--color-text-muted,var(--text-muted));font-size:.75rem}.room-coverage-bar-track{background:var(--color-surface-2,var(--surface-2));border-radius:999px;max-width:100%;height:12px;display:flex;overflow:hidden}.room-coverage-seg.compliant{background:var(--color-success)}.room-coverage-seg.stale{background:var(--color-warning)}.room-coverage-seg.never{background:var(--color-border)}.audit-timeline{flex-wrap:wrap;align-items:flex-end;gap:4px;padding:12px 0 4px;display:flex;position:relative;overflow-x:auto}.timeline-bin{flex-direction:column;align-items:center;gap:3px;min-width:40px;display:flex}.timeline-bars{align-items:flex-end;gap:1px;height:88px;display:flex}.tbar-clean{background:var(--color-success);border-radius:3px 3px 0 0;width:14px;min-height:2px}.tbar-disc{background:var(--color-danger);border-radius:3px 3px 0 0;width:14px;min-height:2px}.timeline-date{color:var(--text-muted);white-space:nowrap;transform-origin:top;margin-top:6px;font-size:.65rem;transform:rotate(-40deg)}.timeline-legend{width:100%;color:var(--text-muted);gap:16px;margin-top:32px;font-size:.75rem;display:flex}.tleg-clean{color:var(--color-success)}.tleg-disc{color:var(--color-danger)}.insights-loading{color:var(--text-muted);text-align:center;padding:16px;font-size:.85rem}.link-button{color:var(--accent);cursor:pointer;font-size:inherit;text-underline-offset:2px;background:0 0;border:none;padding:0;font-family:inherit;text-decoration:underline;transition:opacity .15s}.link-button:hover{opacity:.75}.pkg-panel{gap:0}.pkg-toolbar{background:var(--color-surface);border-bottom:1px solid var(--color-border-soft);z-index:10;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 16px;display:flex;position:sticky;top:0}.pkg-toolbar.table-filtering{opacity:.7}.pkg-search{flex:0 320px;min-width:200px;position:relative}.search-clear{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;display:flex}.search-clear:hover{color:var(--text);background:var(--color-surface-2)}.status-pills{flex-shrink:0;gap:4px;display:flex}.status-pill{cursor:pointer;white-space:nowrap;background:var(--color-surface-2);border:1.5px solid #0000;border-color:var(--color-border);color:var(--muted);border-radius:20px;padding:5px 12px;font-size:12px;font-weight:500;transition:background .12s,color .12s,border-color .12s}.status-pill:hover{background:var(--color-surface-hover);color:var(--text)}.status-pill.active{font-weight:600}.pill-all.active{background:var(--accent);border-color:var(--accent);color:var(--color-on-accent)}.pill-unaudited.active{background:var(--color-warning);border-color:var(--color-warning);color:var(--color-on-accent)}.pill-audited.active{background:var(--color-success);border-color:var(--color-success);color:var(--color-on-accent)}.pill-audit-only.active{background:var(--color-info);border-color:var(--color-info);color:var(--color-on-accent)}.pkg-dim-filters{gap:8px;display:flex}.pkg-select{background:var(--color-surface-soft);border:1.5px solid var(--color-border);color:var(--text);border-radius:10px;height:34px;padding:0 10px;font-size:12.5px}.pkg-select:focus{border-color:var(--accent);outline:none}.quick-toggle{background:var(--color-surface-soft);border:1.5px solid var(--color-border);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;border-radius:10px;align-items:center;gap:6px;height:34px;padding:0 12px;font-size:12.5px;font-weight:500;transition:background .12s,border-color .12s;display:flex}.quick-toggle input{accent-color:var(--accent);cursor:pointer}.quick-toggle.active{background:var(--color-warning-soft);border-color:var(--color-warning);color:var(--color-warning)}.pkg-toolbar-end{align-items:center;gap:6px;margin-left:auto;display:flex}.clear-filters-btn{align-items:center;gap:5px;padding:5px 10px;font-size:12px;display:flex}.pkg-toolbar .icon-button{background:var(--color-surface-soft);border:1.5px solid var(--color-border);color:var(--muted);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;padding:0 8px;transition:background .12s,color .12s,border-color .12s;display:flex}.pkg-toolbar .icon-button:hover,.pkg-toolbar .icon-button.active{background:var(--accent);border-color:var(--accent);color:#fff}.settings-popover-wrap{position:relative}.settings-popover{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--elev-4);z-index:100;border-radius:14px;flex-direction:column;gap:4px;min-width:220px;padding:14px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.settings-section-title{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:6px 0 4px;font-size:10px;font-weight:700}.settings-section-title:first-child{margin-top:0}.settings-col-row{cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:3px 2px;font-size:13px;display:flex}.settings-col-row:hover{background:var(--color-surface-hover)}.settings-col-row.locked{opacity:.5;cursor:default}.settings-col-row[draggable=true]{cursor:grab}.settings-col-row[draggable=true]:active{cursor:grabbing}.settings-col-row.dragging{opacity:.4}.settings-col-row.drag-over{border-top:2px solid var(--accent)}.col-drag-handle{color:var(--muted);align-items:center;display:flex}.settings-locked{background:var(--color-surface-2);color:var(--muted);border-radius:4px;margin-left:auto;padding:1px 5px;font-size:10px}.settings-divider{border:none;border-top:1px solid var(--color-border-soft);margin:8px 0 4px}.settings-density-row{gap:6px;display:flex}.density-btn{background:var(--color-surface-soft);border:1.5px solid var(--color-border);color:var(--color-text);cursor:pointer;border-radius:8px;flex:1;padding:5px;font-size:12px;transition:background .12s}.density-btn.active{background:var(--accent);border-color:var(--accent);color:var(--color-on-accent);font-weight:600}.settings-action-btn{background:var(--accent);color:var(--color-on-accent);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:6px;width:100%;margin-top:4px;padding:8px 12px;font-size:12.5px;font-weight:500;transition:opacity .12s;display:flex}.settings-action-btn:hover{opacity:.85}.settings-action-btn.ghost{background:var(--color-surface-soft);color:var(--muted);border:1px solid var(--color-border)}.settings-action-btn.ghost:hover{background:var(--color-surface-2);color:var(--text)}.result-count{align-items:center;gap:6px;display:flex}.filter-indicator{color:var(--accent);align-items:center;gap:3px;display:inline-flex}.loading-pulse{animation:1.4s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.5}}.pkg-table-comfortable td,.pkg-table-comfortable th{padding:11px 14px}.pkg-table-compact td,.pkg-table-compact th{padding:6px 10px;font-size:12px}th.sortable,th button.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}th.sort-asc:after,th.sort-desc:after,th button.sort-asc:after,th button.sort-desc:after{border-radius:3px;margin-left:5px;padding:0 3px;font-size:11px;font-weight:700;display:inline-block}th.sort-asc:after,th button.sort-asc:after{content:"↑";background:var(--accent);color:var(--color-on-accent)}th.sort-desc:after,th button.sort-desc:after{content:"↓";background:var(--accent);color:var(--color-on-accent)}.pkg-id-cell{font-family:var(--font-mono,monospace);letter-spacing:.01em;font-size:12px}.num-cell{text-align:right;font-variant-numeric:tabular-nums}.qty-cell{font-variant-numeric:tabular-nums;text-align:right;font-weight:600}.qty-zero{color:var(--color-text-muted)}.qty-low{color:var(--amber-500)}.disc-cell{text-align:center}.disc-badge{background:var(--color-danger-soft);border:1px solid var(--red-200);color:var(--color-danger);border-radius:6px;justify-content:center;align-items:center;min-width:22px;padding:1px 5px;font-size:11px;font-weight:700;display:inline-flex}.audit-age-ok{color:var(--color-success);font-weight:500}.audit-age-warn{color:var(--color-warning);font-weight:500}.audit-age-stale{color:var(--color-danger);font-weight:500}.audit-age-never{color:var(--color-text-muted);font-style:italic}@media(max-width:900px){.pkg-toolbar{padding:10px}.status-pills,.pkg-dim-filters{flex-wrap:wrap}}@media(max-width:640px){.pkg-search{flex:100%}.status-pills{order:2}.pkg-dim-filters,.quick-toggle{order:3}.pkg-toolbar-end{order:1}}.audit-drop-zone-wrap{flex-direction:column;gap:0;padding:12px 16px 0;display:flex}.audit-drop-zone-wrap.drag-over .audit-drop-zone{background:var(--color-accent-soft);border-color:var(--accent);border-style:solid}.audit-drop-zone{border:2px dashed var(--color-border);cursor:pointer;text-align:center;-webkit-user-select:none;user-select:none;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:110px;padding:20px 16px;transition:border-color .15s,background .15s;display:flex;position:relative}.audit-drop-zone:hover{background:var(--color-surface-soft);border-color:var(--accent)}.audit-drop-zone:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.audit-drop-zone.drag-over{background:var(--color-accent-soft);border-color:var(--accent);border-style:solid}.drop-zone-input{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.drop-icon{color:var(--accent);opacity:.75;flex-shrink:0;transition:opacity .15s,transform .15s}.audit-drop-zone:hover .drop-icon,.audit-drop-zone.drag-over .drop-icon{opacity:1;transform:translateY(-3px)}.drop-hint{color:var(--text);font-size:14px}.drop-hint strong{font-weight:600}.drop-browse{color:var(--accent);text-underline-offset:2px;font-weight:600;text-decoration:underline}.drop-hint-active{color:var(--accent);font-weight:600}.drop-sub{color:var(--muted);margin-top:2px;font-size:11.5px}.audit-file-queue{background:var(--color-surface-soft);border:1px solid var(--color-border-soft);border-top:none;border-radius:0 0 12px 12px;flex-direction:column;gap:0;max-height:220px;display:flex;overflow-y:auto}.fq-header{background:var(--color-surface-2);border-bottom:1px solid var(--color-border-soft);z-index:1;justify-content:space-between;align-items:center;gap:10px;padding:6px 12px;font-size:12px;display:flex;position:sticky;top:0}.fq-summary{color:var(--muted);align-items:center;gap:8px;display:flex}.fq-ok{color:var(--color-success);font-weight:500}.fq-err{color:var(--color-danger);font-weight:500}.fq-clear{padding:2px 8px;font-size:12px}.audit-file-row{border-bottom:1px solid var(--color-border-soft);justify-content:space-between;align-items:center;gap:10px;padding:7px 12px;transition:background .1s;display:flex}.audit-file-row:last-child{border-bottom:none}.fq-row-done{background:var(--color-success-soft)}.fq-row-error,.fq-row-invalid{background:var(--color-danger-soft)}.fq-row-uploading{background:var(--color-info-soft)}.fq-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12.5px;overflow:hidden}.audit-file-badge{text-overflow:ellipsis;white-space:nowrap;border-radius:6px;flex-shrink:0;align-items:center;gap:4px;max-width:200px;padding:2px 8px;font-size:11.5px;font-weight:500;display:inline-flex;overflow:hidden}.fq-pending{background:var(--color-surface-2);color:var(--muted)}.fq-checking,.fq-uploading{background:var(--color-info-soft);color:var(--color-info)}.fq-done{background:var(--color-success-soft);color:var(--color-success)}.fq-skipped{background:var(--color-surface-2);color:var(--color-text-muted);font-style:italic}.fq-error{background:var(--color-danger-soft);color:var(--color-danger)}.fq-invalid{background:var(--color-warning-soft);color:var(--color-warning)}.fq-row-duplicate_warn{background:var(--color-warning-soft);border-left:3px solid var(--color-warning);flex-wrap:wrap;gap:6px}.fq-warn{color:var(--color-warning);font-weight:500}.fq-dup-warn{flex-direction:column;flex:1;align-items:flex-start;gap:6px;min-width:0;display:flex}.fq-dup-detail{color:var(--color-warning);align-items:center;gap:5px;font-size:11.5px;display:flex}.fq-dup-detail em{font-style:normal;font-weight:600}.fq-dup-actions{gap:6px;display:flex}.fq-dup-btn{cursor:pointer;border-radius:6px;padding:3px 10px;font-size:11.5px;font-weight:500;transition:opacity .1s}.fq-dup-btn:hover{opacity:.82}.fq-dup-skip{background:var(--color-surface-2);border:1px solid var(--color-border);color:var(--color-text-muted)}.fq-dup-import{background:var(--color-warning-soft);border:1px solid var(--amber-500);color:var(--color-warning)}.fq-spinner{border:2px solid var(--color-border);border-top-color:var(--color-info);border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:.8s linear infinite spin;display:inline-block}.audit-drop-zone-wrap--compact{margin-bottom:16px;padding:0}.audit-upload-toolbar{flex-wrap:wrap;align-items:stretch;gap:10px;display:flex}.audit-drop-strip{border:1.5px dashed var(--color-border);cursor:pointer;border-radius:10px;flex:1;justify-content:center;align-items:center;min-width:min(100%,280px);min-height:42px;padding:8px 14px;transition:border-color .15s,background .15s;display:flex}.audit-drop-strip:hover,.audit-drop-strip.drag-over{background:var(--color-surface-soft);border-color:var(--accent)}.audit-drop-strip.drag-over{background:var(--color-accent-soft);border-style:solid}.audit-drop-strip .drop-hint{font-size:13px}.audit-upload-status-bar{background:var(--color-surface-soft);border:1px solid var(--color-border-soft);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;margin-top:8px;padding:6px 12px;font-size:12px;display:flex}.compact-import-review{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.compact-import-review.expanded{width:100%}.compact-import-summary{color:var(--muted);font-size:12px}.compact-import-actions{flex-wrap:wrap;gap:6px;display:flex}.compact-expand{padding:2px 8px;font-size:11px}.import-warnings-notice{background:var(--color-warning);align-items:flex-start}@supports (color:color-mix(in lab,red,red)){.import-warnings-notice{background:color-mix(in srgb,var(--color-warning) 12%,transparent)}}.import-warnings-notice{border:1px solid var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.import-warnings-notice{border:1px solid color-mix(in srgb,var(--color-warning) 35%,transparent)}}.import-warnings-notice{color:var(--color-text);border-radius:8px;gap:6px;margin-top:8px;padding:8px 10px;font-size:12px;display:flex}.fq-warnings{flex-basis:100%;margin:4px 0 0;padding:0 0 0 18px;font-size:11px;list-style:none}.fq-warnings li{color:var(--color-warning-text,var(--muted));align-items:flex-start;gap:4px;margin-top:2px;display:flex}.audit-row-focused{outline:2px solid var(--color-accent);animation:5s ease-out audit-row-focus}@supports (color:color-mix(in lab,red,red)){.audit-row-focused{outline:2px solid color-mix(in srgb,var(--color-accent) 65%,transparent)}}.audit-row-focused{outline-offset:-2px}.audit-row-discrepancy{background:var(--color-critical)}@supports (color:color-mix(in lab,red,red)){.audit-row-discrepancy{background:color-mix(in srgb,var(--color-critical) 6%,transparent)}}@keyframes audit-row-focus{0%,25%{background:color-mix(in srgb,var(--color-accent) 18%,transparent)}to{background:0 0}}.page-size-select{align-items:center;gap:6px;font-size:12px;display:inline-flex}.page-size-select select{padding:2px 6px;font-size:12px}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.table-wrap.table-filtering{filter:none;opacity:.9}}.settings-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:pointer;z-index:1000;animation:settings-fade var(--motion-fast) var(--ease-standard);background:#0a120d73;position:fixed;top:0;right:0;bottom:0;left:0}@keyframes settings-fade{0%{opacity:0}to{opacity:1}}@keyframes settings-slide{0%{opacity:.4;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.settings-panel{background:var(--color-surface);border-left:1px solid var(--color-border);width:min(440px,100vw);height:100%;box-shadow:var(--elev-5);z-index:1001;animation:settings-slide var(--motion-med) var(--ease-emphasis);outline:none;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0}.settings-header{border-bottom:1px solid var(--color-border-soft);justify-content:space-between;align-items:center;gap:12px;padding:20px 22px;display:flex}.settings-header h2{letter-spacing:-.01em;align-items:center;gap:9px;margin:0;font-size:1.05rem;font-weight:700;display:flex}.settings-header p{color:var(--color-text-muted);margin:3px 0 0;font-size:.78rem}.settings-body{flex:auto;min-height:0;padding:8px 22px 22px;overflow-y:auto}.settings-section{border-bottom:1px solid var(--color-border-soft);padding:18px 0}.settings-section:last-child{border-bottom:none}.settings-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin:0 0 14px;font-size:.7rem;font-weight:700}.settings-row{justify-content:space-between;align-items:center;gap:16px;padding:10px 0;display:flex}.settings-row+.settings-row{border-top:1px solid var(--color-border-table)}.settings-row-label{flex-direction:column;gap:2px;display:flex}.settings-row-label strong{color:var(--color-text);font-size:.88rem;font-weight:600}.settings-row-label span{color:var(--color-text-muted);font-size:.76rem}.settings-row-control{flex-shrink:0}.segmented{background:var(--color-surface-soft);border:1px solid var(--color-border-soft);border-radius:10px;gap:2px;padding:3px;display:inline-flex}.segmented button{-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--color-text-muted);cursor:pointer;transition:background var(--motion-fast),color var(--motion-fast);background:0 0;border:none;border-radius:7px;align-items:center;gap:6px;padding:6px 13px;font-size:.8rem;font-weight:600;display:inline-flex}.segmented button:hover{color:var(--color-text)}.segmented button.active{background:var(--color-surface);color:var(--color-accent);box-shadow:var(--elev-1)}.accent-grid{flex-wrap:wrap;gap:12px;width:100%;display:flex}.accent-swatch{cursor:pointer;width:40px;height:40px;transition:transform var(--motion-fast),border-color var(--motion-fast);background:0 0;border:2px solid #0000;border-radius:50%;place-items:center;padding:0;display:grid;position:relative}.accent-swatch:hover{transform:scale(1.06)}.accent-swatch:before{content:"";background:var(--swatch);width:28px;height:28px;box-shadow:var(--elev-1);border-radius:50%}.accent-swatch.active{border-color:var(--swatch)}.accent-swatch.active:after{content:"";background:#fff;border-radius:50%;width:9px;height:9px;position:absolute;box-shadow:0 0 0 1px #00000026}.switch{background:var(--color-surface-2);cursor:pointer;width:42px;height:24px;transition:background var(--motion-fast);border:none;border-radius:999px;flex-shrink:0;position:relative}.switch:after{content:"";background:var(--color-surface);width:18px;height:18px;box-shadow:var(--elev-1);transition:transform var(--motion-fast);border-radius:50%;position:absolute;top:3px;left:3px}.switch.on{background:var(--color-accent)}.switch.on:after{transform:translate(18px)}.settings-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--color-select-bg);color:var(--color-text);border:1px solid var(--color-border-input);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238fa993' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 9px center;background-repeat:no-repeat;border-radius:9px;padding:7px 30px 7px 11px;font-size:.82rem;font-weight:600}.settings-footer{border-top:1px solid var(--color-border-soft);justify-content:space-between;align-items:center;gap:12px;padding:16px 22px;display:flex}.settings-reset{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;transition:background var(--motion-fast),border-color var(--motion-fast);background:0 0;border-radius:9px;align-items:center;gap:7px;padding:8px 14px;font-size:.8rem;font-weight:600;display:inline-flex}.settings-reset:hover{background:var(--color-surface-soft);border-color:var(--color-text-muted)}.settings-footer-hint{color:var(--color-text-muted);font-size:.72rem}.accent-swatch.rainbow:before{background:conic-gradient(from 90deg,#ff5252,#ffd740,#69f0ae,#40c4ff,#536dfe,#e040fb,#ff5252)}.settings-custom-picker{justify-content:center;padding:14px 0 4px;display:flex}.color-wheel-pop{flex-direction:column;align-items:center;gap:16px;width:100%;display:flex}.color-wheel{cursor:crosshair;touch-action:none;width:188px;height:188px;box-shadow:var(--elev-2),inset 0 0 0 1px #00000014;background:radial-gradient(circle,#fff,#fff0 70%),conic-gradient(from 90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red);border-radius:50%;position:relative}.color-wheel-value{pointer-events:none;background:#000;border-radius:50%;position:absolute;top:0;right:0;bottom:0;left:0}.color-wheel-thumb{width:16px;height:16px;box-shadow:0 0 0 1px #00000059,var(--elev-2);pointer-events:none;border:2px solid #fff;border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.color-wheel-controls{flex-direction:column;gap:12px;width:100%;display:flex}.color-wheel-field{color:var(--color-text-muted);flex-direction:column;gap:6px;font-size:.74rem;font-weight:600;display:flex}.color-wheel-field input[type=range]{width:100%}.color-wheel-hex{align-items:center;gap:10px;display:flex}.color-wheel-preview{width:30px;height:30px;box-shadow:inset 0 0 0 1px #00000026,var(--elev-1);border-radius:8px;flex-shrink:0}.color-wheel-hex input{background:var(--color-search-bg);color:var(--color-text);border:1px solid var(--color-border-input);letter-spacing:.02em;text-transform:lowercase;border-radius:9px;flex:1;padding:8px 11px;font-family:ui-monospace,SFMono-Regular,Cascadia Code,monospace;font-size:.85rem;font-weight:600}.color-wheel-hex input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-focus);outline:none}.store-switcher-label{cursor:default;display:inline-block}.store-switcher{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:8px;padding:.45rem .65rem;font-size:.875rem}.mobile-bottom-nav{display:none}@media(max-width:768px){.mobile-bottom-nav{z-index:40;background:var(--color-surface);border-top:1px solid var(--color-border);padding:.35rem .25rem calc(.35rem + env(safe-area-inset-bottom,0px));justify-content:space-around;gap:.15rem;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-bottom-nav .nav-button{flex-direction:column;flex:1;gap:.15rem;min-height:3rem;padding:.35rem .2rem;font-size:.68rem}.mobile-bottom-nav .nav-label{font-size:.65rem;display:inline!important}.app-shell .main{padding-bottom:4.25rem}.app-shell .sidebar,.app-shell.top-nav-layout .top-nav{display:none}}.settings-page-panel .settings-row,.settings-panel .settings-row{margin-bottom:.75rem}.settings-page-panel{padding-bottom:8px}.settings-page-panel>.settings-section,.settings-page-panel>.settings-row,.settings-page-panel>.settings-custom-picker,.settings-page-panel>.readiness-notes{margin-left:24px;margin-right:24px}.settings-route-hint{color:var(--color-text-muted);margin:0 0 .75rem;font-size:.85rem}.settings-subnav .tab-button.active{background:var(--color-accent-soft);color:var(--color-accent)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
