@import"https://fonts.googleapis.com/icon?family=Material+Icons";@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";@font-face{font-family:Material Icons;font-style:normal;font-weight:400;font-display:block;src:url(/assets/material-icons-kAwBdRge.woff2) format("woff2"),url(/assets/material-icons-Dr0goTwe.woff) format("woff")}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"liga"}:root{--maruti-blue: #0a4da2;--primary: #0072bc;--primary-dark: #005a96;--primary-light: #339dd6;--accent: #00b2a9;--success: #4caf50;--success-soft: #f1f8e9;--warning: #ff9800;--warning-soft: #fff8e1;--danger: #e91e63;--danger-soft: #fce4ec;--mismatch: #f9a825;--mismatch-soft: #fff8e1;--mismatch-dark: #ffecb3;--bg: #f0f4f8;--surface: #ffffff;--surface-raised: #ffffff;--border: #d1d9e0;--text: #1a2332;--text-muted: #5a6a7a;--header-gradient: linear-gradient(135deg, #0a4da2 0%, #0072bc 60%, #00b2a9 100%);--shadow-sm: 0 1px 3px rgba(0,0,0,.08);--shadow-md: 0 4px 12px rgba(0,0,0,.1);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px}[data-theme=dark]{--bg: #0d1117;--surface: #161b22;--surface-raised: #1c2128;--border: #30363d;--text: #e6edf3;--text-muted: #8b949e;--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow-md: 0 4px 12px rgba(0,0,0,.4);--success-soft: rgba(76,175,80,.06);--warning-soft: rgba(255,152,0,.06);--danger-soft: rgba(233,30,99,.06);--mismatch-soft: rgba(233,30,99,.06)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:Inter,system-ui,-apple-system,sans-serif;font-size:15px}body{background:var(--bg);color:var(--text);min-height:100vh}a{color:var(--primary);text-decoration:none}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit;font-size:.92rem}.app-shell{display:flex;flex-direction:column;min-height:100vh}.page-shell{flex:1;width:100%;max-width:1440px;margin:0 auto;padding:20px 24px 40px}.page-stack{display:flex;flex-direction:column;gap:18px}.app-header{background:var(--header-gradient);color:#fff;padding:18px 32px 14px;box-shadow:0 2px 12px #0000002e}.app-header__brandlock{display:flex;align-items:flex-start;gap:20px;margin-bottom:14px}.app-header__logos{display:flex;gap:14px;align-items:center;flex-shrink:0}.app-header__logo{height:38px;object-fit:contain}.app-header__logo--ntt{height:34px}.app-header__logo--maruti{height:36px}.app-header__brand{flex:1}.app-header__eyebrow{display:flex;align-items:center;gap:5px;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;opacity:.85;margin-bottom:2px}.app-header__brand h1{font-size:1.32rem;font-weight:800;letter-spacing:-.02em;margin-bottom:3px}.app-header__brand p{font-size:.78rem;opacity:.82;max-width:580px;line-height:1.35}.app-header__actions{display:flex;justify-content:space-between;align-items:center}.app-header__nav-row{display:flex;align-items:center;gap:14px;width:100%;justify-content:space-between}.app-header__nav{display:flex;gap:6px}.nav-pill{display:inline-flex;align-items:center;gap:5px;padding:6px 14px;border-radius:20px;font-size:.82rem;font-weight:600;color:#ffffffbf;background:transparent;border:1px solid rgba(255,255,255,.2);transition:all .2s;text-decoration:none}.nav-pill .material-icons{font-size:1rem}.nav-pill--active,.nav-pill:hover{background:#ffffff2e;color:#fff;border-color:#fff6}.theme-toggle{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:18px;font-size:.78rem;font-weight:600;color:#fffc;background:#ffffff1f;border:1px solid rgba(255,255,255,.18);transition:all .2s}.theme-toggle:hover{background:#ffffff38}.theme-toggle .material-icons{font-size:1rem}.app-footer{background:var(--surface);border-top:1px solid var(--border);padding:14px 32px;display:flex;justify-content:space-between;align-items:center;font-size:.78rem;color:var(--text-muted)}.app-footer__brand{display:flex;align-items:center;gap:5px;color:var(--primary);font-weight:600}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:18px 22px;box-shadow:var(--shadow-sm)}.panel__heading h3{font-size:1rem;font-weight:700;margin-bottom:4px;display:flex;align-items:center}.panel__heading p{font-size:.82rem;color:var(--text-muted);margin-bottom:12px}.section-label{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--primary)}.button{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border-radius:var(--radius-sm);font-size:.88rem;font-weight:600;border:none;transition:all .15s}.button--primary{background:var(--primary);color:#fff}.button--primary:hover{background:var(--primary-dark)}.button--primary:disabled{opacity:.5;cursor:not-allowed}.button--secondary{background:var(--surface-raised);color:var(--text);border:1px solid var(--border)}.button--secondary:hover{background:var(--bg)}.button--success{background:var(--success);color:#fff}.button--success:hover{opacity:.9}.button--sm{padding:5px 12px;font-size:.82rem}.upload-dropzone{display:flex;flex-direction:column;align-items:center;gap:6px;padding:28px 20px;border:2px dashed var(--border);border-radius:var(--radius-md);text-align:center;cursor:pointer;transition:all .2s;color:var(--text-muted)}.upload-dropzone--active,.upload-dropzone:hover{border-color:var(--primary);background:#0072bc0a}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.stat-card{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px;text-align:center}.stat-card__label{display:block;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:4px}.stat-card__value{font-size:1.5rem;font-weight:800}.stat-card--total{border-left:3px solid var(--primary)}.stat-card--total .stat-card__value{color:var(--primary)}.stat-card--ok{border-left:3px solid #a5d6a7}.stat-card--ok .stat-card__value{color:#2e7d32}.stat-card--ng{border-left:3px solid #f48fb1}.stat-card--ng .stat-card__value{color:#c62828}.stat-card--mismatch{border-left:3px solid #f9a825}.stat-card--mismatch .stat-card__value{color:#e65100}.stat-card--parse{border-left:3px solid var(--text-muted)}.stat-card--confidence{border-left:3px solid #7c3aed}.stat-card--confidence .stat-card__value{color:#7c3aed}.data-table{width:100%;border-collapse:collapse;font-size:.78rem;table-layout:auto}.data-table th{background:var(--primary);color:#fff;padding:6px;text-align:center;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;position:sticky;top:0;z-index:2;white-space:nowrap}.data-table td{padding:5px 6px;border-bottom:1px solid var(--border);text-align:center;white-space:nowrap;max-width:180px;overflow:hidden;text-overflow:ellipsis}.data-table td .badge{display:inline-block;max-width:none;overflow:visible;text-overflow:unset}.data-table td:nth-child(2){white-space:normal;word-break:break-word;max-width:140px;text-align:left}.data-table tbody tr{transition:background .15s}.data-table tbody tr:hover{filter:brightness(.97)}.row--ok td{background:#fff}.row--ng td{background:#fce4ec}.row--mismatch td{background:#fff8e1}.row--low-conf td,.row--not-found td,.row--corrected td{background:#fff}.cell--beyond-limit{background:#f8bbd0!important;color:#880e4f!important;font-weight:600!important}.cell--mismatch-cause{background:#ffecb3!important;color:#e65100!important;font-weight:600!important}[data-theme=dark] .row--ok td{background:var(--surface)}[data-theme=dark] .row--ng td{background:#e91e6314}[data-theme=dark] .row--mismatch td{background:#f9a82514}[data-theme=dark] .row--corrected td{background:var(--surface)}[data-theme=dark] .cell--beyond-limit,[data-theme=dark] .cell--mismatch-cause{background:#f8bbd02e!important;color:#f48fb1!important}.badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.badge--sm{padding:1px 6px;font-size:.65rem}.badge--ok{background:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.badge--ng{background:#fce4ec;color:#c62828;border:1px solid #f8bbd0}.badge--mismatch{background:#fff8e1;color:#e65100;border:1px solid #ffecb3}.badge--missing{background:#f5f5f5;color:#757575;border:1px solid #e0e0e0}.badge--parse-error{background:#fff3e0;color:#e65100;border:1px solid #ffcc80}[data-theme=dark] .badge--ok{background:#4caf501f;color:#a5d6a7;border-color:#4caf5040}[data-theme=dark] .badge--ng{background:#e91e631f;color:#f48fb1;border-color:#e91e6340}[data-theme=dark] .badge--mismatch{background:#f9a8251f;color:#ffcc80;border-color:#f9a82540}[data-theme=dark] .badge--missing{background:#7575751a;color:#bdbdbd;border-color:#75757533}.row-detail td{background:var(--surface-raised)!important;padding:14px 18px;text-align:left;border-left:4px solid var(--primary)}.row-detail__content{display:flex;flex-direction:column;gap:10px}.row-detail__header{display:flex;align-items:center;gap:8px;font-size:.9rem;padding-bottom:6px;border-bottom:1px solid var(--border)}.row-detail__tags{display:flex;flex-wrap:wrap;gap:6px}.detail-tag{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:12px;font-size:.76rem;font-weight:600;white-space:nowrap}.detail-tag--issue{background:#fce4ec;color:#c62828;border:1px solid #ef9a9a}.detail-tag--impact{background:#fff3e0;color:#e65100;border:1px solid #ffcc80}.detail-tag--warn{background:#fffde7;color:#f57f17;border:1px solid #fff176;font-weight:500}[data-theme=dark] .detail-tag--issue{background:#c6282826;color:#ef9a9a;border-color:#c628284d}[data-theme=dark] .detail-tag--impact{background:#e6510026;color:#ffcc80;border-color:#e651004d}[data-theme=dark] .detail-tag--warn{background:#f57f1726;color:#fff176;border-color:#f57f174d}.row-detail__mismatch{padding:6px 12px;border-radius:var(--radius-sm);background:var(--warning-soft);color:var(--warning);font-size:.82rem;font-weight:600}.row-detail__section{padding:8px 12px;border-radius:var(--radius-sm);background:var(--bg);font-size:.82rem;line-height:1.5}.obs-grid{display:inline-flex;gap:6px}.obs-card{width:120px;border-radius:var(--radius-sm);border:1px solid var(--border);padding:6px 8px;font-size:.78rem}.obs-card--ok{background:#f1f8e9;border-color:#a5d6a7}.obs-card--ng{background:#fce4ec;border-color:#f48fb1}.obs-card--other{background:var(--bg)}.obs-card__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:3px}.obs-card__body{display:flex;flex-direction:column;gap:1px}.confidence-bar{position:relative;height:16px;background:var(--bg);border-radius:8px;overflow:hidden;min-width:50px}.confidence-bar__fill{height:100%;background:var(--primary-light);border-radius:8px;transition:width .3s}.confidence-bar__text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:700;color:var(--text)}.correction-diff{display:flex;flex-direction:column;gap:10px}.correction-item{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-raised)}.correction-item__old{text-decoration:line-through;color:var(--danger);font-weight:600}.correction-item__new{color:var(--success);font-weight:700}.correction-item__meta{grid-column:1 / -1;font-size:.78rem;color:var(--text-muted)}.workflow-actions{display:flex;gap:10px;margin-top:12px}.tabs{display:flex;gap:2px;border-bottom:2px solid var(--border);padding-bottom:0}.tab{padding:6px 14px;font-size:.82rem;font-weight:600;border:none;background:transparent;color:var(--text-muted);border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .15s}.tab:hover{color:var(--text)}.tab--active{color:var(--primary);border-bottom-color:var(--primary)}.search-input{display:flex;align-items:center;gap:6px;padding:5px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface)}.search-input .material-icons{font-size:1rem;color:var(--text-muted)}.search-input input{border:none;background:transparent;outline:none;color:var(--text);width:100%}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal{background:var(--surface);border-radius:var(--radius-lg);box-shadow:0 16px 48px #0003;width:100%;max-width:620px;max-height:90vh;overflow-y:auto;padding:22px 26px}.modal__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.modal__header h2{font-size:1.1rem;font-weight:700}.modal__close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px}.field{margin-bottom:12px}.field label{display:block;font-size:.78rem;font-weight:600;margin-bottom:4px;color:var(--text-muted)}.field input,.field textarea{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text);resize:vertical}.loading-state{display:flex;align-items:center;gap:14px;padding:20px}.loading-state__icon .material-icons{font-size:2rem;color:var(--primary);animation:spin 1.2s linear infinite}.psr-hourglass{display:inline-flex;align-items:center;justify-content:center;min-width:1em}.psr-history-panel{display:grid;gap:12px}.psr-history-panel__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.psr-history-panel__heading h3{font-size:1rem;font-weight:700;margin:0 0 4px}.psr-history-panel__heading p{color:var(--text-muted);font-size:.82rem}.psr-history-panel__actions,.psr-history-table__actions{display:inline-flex;gap:8px;flex-wrap:wrap;justify-content:center}.psr-history-table td{max-width:220px}.psr-history-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:4px;color:var(--text-muted);font-size:.82rem;font-weight:600}.psr-history-pagination>div{display:inline-flex;gap:8px;flex-wrap:wrap}.alert-banner{display:flex;align-items:center;gap:10px;padding:12px 18px;border-radius:var(--radius-sm);font-size:.88rem;font-weight:600}.alert-banner--warning{background:var(--warning-soft);color:var(--warning);border:1px solid var(--warning)}@media (max-width: 768px){.app-header{padding:14px 16px 10px}.app-header__brandlock{flex-direction:column;gap:10px}.page-shell{padding:14px 12px 30px}.stat-grid{grid-template-columns:repeat(3,1fr)}.correction-item{grid-template-columns:1fr}.obs-grid{flex-direction:column}}.batch-summary-bar{border-left:4px solid var(--primary)}.batch-summary-bar__header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;position:relative;z-index:20}.batch-summary-bar__header h3{font-size:1rem;font-weight:700}.view-by-select{padding:5px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface);font-size:.82rem;font-family:inherit;color:var(--text);cursor:pointer;min-width:160px;outline:none}.view-by-select:focus{border-color:var(--primary);box-shadow:0 0 0 2px #0072bc26}.dropdown-menu{display:block!important;position:absolute;top:100%;right:0;z-index:200;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 16px #0000001f;min-width:200px;padding:4px 0;margin-top:4px}.dropdown-menu__item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 16px;border:none;background:none;font-size:.85rem;font-family:inherit;color:var(--text);cursor:pointer;text-align:left}.dropdown-menu__item:hover{background:var(--bg)}.correction-controls{display:flex;flex-direction:column;gap:3px;min-width:120px}.correction-btn{font-size:.72rem!important;padding:3px 7px!important;white-space:nowrap}.correction-btn--auto{background:#e3f2fd!important;color:#1565c0!important;border:1px solid #90caf9!important}.correction-btn--auto:hover{background:#bbdefb!important}.correction-btn--edit{background:#fff3e0!important;color:#e65100!important;border:1px solid #ffcc80!important}.correction-btn--edit:hover{background:#ffe0b2!important}.row--corrected td{background:#e8f5e9!important;border-left:2px solid #4caf50}[data-theme=dark] .row--corrected td{background:#4caf5014!important}.cell--missing{background:#fff8e1!important;color:#f57f17!important;font-weight:600!important;font-style:italic}[data-theme=dark] .cell--missing{background:#ff980014!important;color:#ffb74d!important}.cell--warning-dot{display:inline-flex;margin-left:4px;vertical-align:middle}.row-detail__warnings{padding:8px 12px;border-radius:var(--radius-sm);background:var(--warning-soft);font-size:.82rem;line-height:1.5}.alert-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--border);border-radius:50%;width:36px;height:36px;cursor:pointer;transition:all .15s}.alert-bell:hover{background:var(--bg);border-color:var(--warning)}.alert-bell .material-icons{color:#ff9800}.alert-bell__count{position:absolute;top:-4px;right:-4px;background:#e91e63;color:#fff;font-size:.6rem;font-weight:800;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 3px;line-height:1}.alert-bell__dropdown{position:absolute;right:0;top:42px;width:360px;max-height:400px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:100;overflow:hidden}.alert-bell__item{display:flex;align-items:flex-start;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border);transition:background .1s}.alert-bell__item:hover{background:var(--bg)}.alert-bell__item--missing .material-icons{color:#ff9800}.alert-bell__item--non_numeric .material-icons{color:#e91e63}.alert-bell__item--parse_error .material-icons{color:#f44336}.alert-bell__item--warning .material-icons{color:#ff9800}.batch-id-badge{display:inline-flex;align-items:center;padding:2px 10px;font-size:.75rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#0072bc,#00b2a9);border-radius:12px;letter-spacing:.5px;text-transform:uppercase}.mismatch-summary-panel{border-left:4px solid #ff9800;background:linear-gradient(to right,#fff8e1,var(--surface))}[data-theme=dark] .mismatch-summary-panel{background:linear-gradient(to right,rgba(255,152,0,.06),var(--surface))}.mismatch-highlight-strip{display:flex;gap:12px;margin-top:12px;flex-wrap:wrap}.mismatch-highlight-card{display:flex;flex-direction:column;align-items:center;padding:10px 20px;background:#fff3e0;border-radius:var(--radius-sm);border:1px solid #ffe0b2;min-width:130px}[data-theme=dark] .mismatch-highlight-card{background:#ff980014;border-color:#ff980033}.mismatch-highlight-card__label{font-size:.72rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.mismatch-highlight-card__value{font-size:1.4rem;font-weight:800;color:#e65100;margin-top:2px}.mismatch-detail-table th{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.mismatch-source-cell{font-size:.78rem;font-weight:500;color:#1565c0}.mismatch-deviation-cell{font-weight:700;color:#e65100}.mismatch-rootcause-cell{font-size:.76rem;max-width:240px;white-space:pre-wrap;color:#b71c1c}.obs-deviation-tag{display:block;font-size:.65rem;font-weight:700;color:#c62828;margin-top:1px}:root{color-scheme:light;--bg: #ffffff;--bg-accent: #f5f9ff;--surface: rgba(255, 255, 255, .96);--surface-strong: #ffffff;--surface-muted: #f8fbff;--border: rgba(28, 84, 181, .1);--border-strong: rgba(28, 84, 181, .18);--text: #16324f;--text-muted: #5e7594;--primary: #0072bc;--primary-strong: #0b2f63;--primary-soft: #e3efff;--accent: #00a4e4;--accent-soft: #edf5ff;--success: #0f8f62;--warning: #2f75dd;--danger: #d7263d;--brand-maruti-blue: #0a4da2;--brand-maruti-blue-strong: #083872;--brand-maruti-red: #d7263d;--brand-maruti-red-soft: rgba(215, 38, 61, .16)}:root{color-scheme:light;--bg: #ffffff;--bg-accent: #f5f9ff;--surface: rgba(255, 255, 255, .96);--surface-strong: #ffffff;--surface-muted: #f8fbff;--border: rgba(28, 84, 181, .1);--border-strong: rgba(28, 84, 181, .18);--text: #16324f;--text-muted: #5e7594;--primary: #0072bc;--primary-strong: #0b2f63;--primary-soft: #e3efff;--accent: #00a4e4;--accent-soft: #edf5ff;--success: #0f8f62;--warning: #2f75dd;--danger: #d7263d;--brand-maruti-blue: #0a4da2;--brand-maruti-blue-strong: #083872;--brand-maruti-red: #d7263d;--brand-maruti-red-soft: rgba(215, 38, 61, .16);--shadow: 0 14px 30px rgba(14, 52, 110, .08);--shadow-strong: 0 18px 34px rgba(14, 52, 110, .14);--radius-xl: 14px;--radius-lg: 12px;--radius-md: 10px;--radius-sm: 8px;--max-width: none;--page-gutter: clamp(10px, 1vw, 18px);--panel-padding: clamp(15px, 1.15vw, 20px);--header-surface: radial-gradient(circle at top right, rgba(0, 201, 167, .12), transparent 22%), linear-gradient(120deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .02)), linear-gradient(135deg, #0050a0 0%, #00a5e0 54%, #0050a0 100%);--header-border: rgba(13, 39, 72, .14);--header-text: #f4f8fb;--header-muted: rgba(244, 248, 251, .8);--header-nav-surface: linear-gradient(135deg, rgba(7, 26, 50, .24), rgba(10, 77, 162, .18));--header-nav-border: rgba(255, 255, 255, .12);--nav-pill-surface: rgba(255, 255, 255, .04);--nav-pill-border: rgba(255, 255, 255, .06);--nav-pill-text: rgba(244, 248, 251, .9);--nav-pill-active-surface: linear-gradient(135deg, rgba(10, 77, 162, .48), rgba(10, 77, 162, .18));--nav-pill-active-border: rgba(129, 180, 255, .36);--nav-pill-active-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 12px 24px rgba(8, 22, 38, .16);--theme-toggle-surface: linear-gradient(135deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .03)), linear-gradient(135deg, rgba(10, 77, 162, .26), rgba(91, 152, 255, .12));--theme-toggle-surface-hover: linear-gradient(135deg, rgba(255, 255, 255, .12), rgba(255, 255, 255, .05)), linear-gradient(135deg, rgba(10, 77, 162, .34), rgba(91, 152, 255, .18));--theme-toggle-border: rgba(255, 255, 255, .18);--theme-toggle-border-hover: rgba(129, 180, 255, .28);--bs-primary: #0072bc;--bs-primary-rgb: 0, 114, 188;--bs-secondary: #d7e8ff;--bs-secondary-rgb: 215, 232, 255;--bs-success: #0f8f62;--bs-success-rgb: 15, 143, 98;--bs-info: #2f75dd;--bs-info-rgb: 47, 117, 221;--bs-warning: #4f8fe8;--bs-warning-rgb: 79, 143, 232;--bs-danger: #d7263d;--bs-danger-rgb: 215, 38, 61;--bs-light: #f7fbff;--bs-border-color: rgba(28, 84, 181, .1);--bs-body-color: #16324f;--bs-body-bg: #ffffff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif}:root[data-theme=dark]{color-scheme:dark;--bg: #091826;--bg-accent: #0c2035;--surface: rgba(16, 42, 67, .97);--surface-strong: #102a43;--surface-muted: rgba(10, 28, 48, .97);--border: rgba(129, 180, 255, .14);--border-strong: rgba(129, 180, 255, .26);--text: #e3f1fc;--text-muted: rgba(227, 241, 252, .55);--primary: #58aaee;--primary-strong: #8eccff;--primary-soft: rgba(31, 79, 214, .25);--accent: #38ccf5;--accent-soft: rgba(0, 164, 228, .19);--success: #24b87c;--warning: #4f8fe8;--danger: #f25474;--brand-maruti-blue: #3a80d4;--brand-maruti-blue-strong: #5298e8;--brand-maruti-red: #f25474;--brand-maruti-red-soft: rgba(242, 84, 116, .2);--shadow: 0 14px 30px rgba(0, 5, 15, .55);--shadow-strong: 0 18px 34px rgba(0, 5, 15, .72);--header-surface: radial-gradient(circle at top right, rgba(0, 201, 167, .15), transparent 22%), linear-gradient(120deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .02)), linear-gradient(135deg, #0050a0 0%, #00a5e0 54%, #0050a0 100%);--header-border: rgba(13, 39, 72, .14);--header-text: #f4f8fb;--header-muted: rgba(244, 248, 251, .8);--header-nav-surface: linear-gradient(135deg, rgba(7, 26, 50, .24), rgba(10, 77, 162, .18));--header-nav-border: rgba(255, 255, 255, .12);--nav-pill-surface: rgba(255, 255, 255, .04);--nav-pill-border: rgba(255, 255, 255, .06);--nav-pill-text: rgba(244, 248, 251, .9);--nav-pill-active-surface: linear-gradient(135deg, rgba(10, 77, 162, .48), rgba(10, 77, 162, .18));--nav-pill-active-border: rgba(129, 180, 255, .36);--nav-pill-active-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 14px 28px rgba(0, 5, 15, .4);--theme-toggle-surface: linear-gradient(135deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .03)), linear-gradient(135deg, rgba(10, 77, 162, .26), rgba(91, 152, 255, .12));--theme-toggle-surface-hover: linear-gradient(135deg, rgba(255, 255, 255, .12), rgba(255, 255, 255, .05)), linear-gradient(135deg, rgba(10, 77, 162, .34), rgba(91, 152, 255, .18));--theme-toggle-border: rgba(255, 255, 255, .18);--theme-toggle-border-hover: rgba(129, 180, 255, .28);--bs-primary: #58aaee;--bs-primary-rgb: 88, 170, 238;--bs-secondary: rgba(129, 180, 255, .15);--bs-secondary-rgb: 129, 180, 255;--bs-success: #24b87c;--bs-success-rgb: 36, 184, 124;--bs-info: #4f8fe8;--bs-info-rgb: 79, 143, 232;--bs-warning: #4f8fe8;--bs-warning-rgb: 79, 143, 232;--bs-danger: #f25474;--bs-danger-rgb: 242, 84, 116;--bs-light: rgba(16, 42, 67, .8);--bs-border-color: rgba(129, 180, 255, .14);--bs-body-color: #e3f1fc;--bs-body-bg: #091826}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;color:var(--text);background:radial-gradient(circle at top left,rgba(0,114,188,.08),transparent 30%),radial-gradient(circle at bottom right,rgba(215,38,61,.06),transparent 28%),linear-gradient(180deg,var(--bg-accent),var(--bg));font-family:inherit;transition:background .24s ease,color .24s ease}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.material-icons{font-size:1.1rem;vertical-align:middle}.app-shell{min-height:100vh;display:flex;flex-direction:column}.page-shell{width:calc(100% - (var(--page-gutter) * 2));max-width:var(--max-width);margin:0 auto;flex:1;padding:2px 0 10px}.page-stack{display:grid;gap:7px;animation:page-enter .32s cubic-bezier(.2,.8,.2,1)}.app-header{width:calc(100% - (var(--page-gutter) * 2));max-width:var(--max-width);margin:2px auto 0;padding:8px 10px 10px;border-radius:var(--radius-xl);border:1px solid var(--header-border);background:var(--header-surface);color:var(--header-text);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:8px;position:relative}.app-header__top-row{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%}.app-header__brandlock{display:flex;gap:12px;align-items:center;flex-wrap:wrap;min-width:0}.app-header__logos{display:flex;align-items:center;gap:10px;padding:0;border-radius:0;background:transparent;border:none;box-shadow:none;position:static;overflow:visible}.app-header__logo{display:block;object-fit:contain;background:transparent;border-radius:0;filter:drop-shadow(0 5px 12px rgba(3,10,21,.18))}.app-header__logo--ntt{width:auto;height:auto;max-width:124px;max-height:40px;padding:0}.app-header__logo--maruti{width:auto;height:auto;max-width:140px;max-height:44px;padding:0}.app-header__brand{display:grid;gap:4px;max-width:760px}.app-header__brand h1{font-size:clamp(1.05rem,.95vw,1.25rem);line-height:1.15;font-weight:800;letter-spacing:0}.app-header__brand h1,.page-intro h2,.home-hero__content h2,.panel__heading h3,.info-strip__card h3,.usecase-card h3{margin:0}.app-header__brand p{margin:0;color:var(--header-muted);max-width:680px;font-size:.78rem;line-height:1.35}.request-id-actions{position:relative}.request-id-actions__summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;border:none;background:transparent;padding:0;color:var(--primary)}.request-id-actions__summary::-webkit-details-marker{display:none}.request-id-actions__menu{display:flex;flex-wrap:wrap;gap:8px}.app-header__eyebrow,.section-label,.usecase-card__label{display:inline-flex;align-items:center;gap:8px;color:inherit;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700}.app-inline-icon{font-size:1rem}.app-header__controls{display:flex;align-items:center;gap:8px;flex-shrink:0}.app-header__nav{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-start;min-width:0;width:100%;padding:4px;border-radius:var(--radius-md);background:var(--header-nav-surface);border:1px solid var(--header-nav-border);box-shadow:inset 0 1px #ffffff14}.nav-pill{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:8px 11px;border-radius:var(--radius-sm);border:1px solid var(--nav-pill-border);color:var(--nav-pill-text);background:var(--nav-pill-surface);transition:transform .22s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease,color .22s ease;position:relative;overflow:hidden;font-size:.82rem;line-height:1;white-space:nowrap}.nav-pill:after{content:"";position:absolute;left:10px;right:10px;bottom:4px;height:2px;background:linear-gradient(90deg,var(--brand-maruti-red),rgba(255,255,255,.9));transform:scaleX(0);transform-origin:left center;transition:transform .22s ease}.nav-pill:hover,.nav-pill--active{transform:translateY(-1px);background:var(--nav-pill-active-surface);border-color:var(--nav-pill-active-border);color:#fff;box-shadow:var(--nav-pill-active-shadow)}.nav-pill:hover:after,.nav-pill--active:after{transform:scaleX(1)}.theme-toggle{display:inline-flex;align-items:center;gap:8px;position:static;flex-shrink:0;border-radius:var(--radius-sm);border-color:var(--theme-toggle-border);color:var(--header-text);background:var(--theme-toggle-surface);transition:transform .22s ease,background .22s ease,border-color .22s ease}.theme-toggle:hover{transform:translateY(-1px);background:var(--theme-toggle-surface-hover);border-color:var(--theme-toggle-border-hover);color:#fff}.app-header__profile-box{display:flex;align-items:center;gap:8px;padding:6px 14px;border-radius:var(--radius-sm);background:var(--header-nav-surface);border:1px solid var(--header-nav-border);color:var(--header-text);font-size:.82rem}.app-header__profile-box .material-icons{font-size:1.3rem;opacity:.9}.app-header__profile-name{font-weight:600;white-space:nowrap}.app-header__profile-role{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;padding:2px 8px;border-radius:var(--radius-full);background:#ffffff1f;color:#ffffffd9;white-space:nowrap}.home-launch-tools{margin-top:10px;display:grid;gap:12px}.home-launch-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.home-launch-preview__item,.home-launch-empty{padding:14px 16px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-muted)}.home-launch-preview__item{display:grid;gap:6px}.home-launch-preview__item span{color:var(--text-muted);font-size:.84rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.home-launch-preview__item strong{color:var(--text);word-break:break-word}.home-launch-metadata{display:grid;gap:14px}.home-launch-metadata__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.home-launch-actions{display:flex;flex-wrap:wrap;gap:12px}.home-launch-empty{display:flex;align-items:flex-start;gap:14px}.home-launch-empty .material-icons{color:var(--primary);font-size:1.6rem}.home-launch-empty strong,.home-launch-empty p{display:block}.home-launch-empty p{margin:6px 0 0;color:var(--text-muted)}.landing-page{padding-bottom:12px}.home-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:var(--page-gutter);align-items:start}.home-hero__content,.panel,.usecase-card,.info-strip__card{border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}.panel:hover,.usecase-card:hover,.info-strip__card:hover{transform:translateY(-1px);box-shadow:var(--shadow-strong)}.home-hero__content{padding:20px;position:relative;overflow:hidden;background:linear-gradient(155deg,#fffffffa,#f5f9fff5),linear-gradient(135deg,rgba(10,77,162,.08),transparent 58%);color:var(--text);display:grid;align-content:start;gap:14px}.home-hero__lede,.page-intro p,.panel__heading p,.usecase-card p,.info-strip__card p,.upload-list__empty,.empty-state{color:var(--text-muted);line-height:1.68}.home-hero__content .section-label,.home-hero__content .home-hero__lede{color:var(--text-muted)}.home-hero__content h2{font-size:clamp(1.5rem,2.4vw,2.2rem);line-height:1.18;max-width:none}.home-status-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.home-status-indicator,.home-status-version{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 14px;border-radius:999px;border:1px solid var(--border);font-size:.82rem;font-weight:800}.home-status-indicator{background:#0a4da214;color:var(--primary-strong);border-color:#0a4da224;box-shadow:inset 0 1px #ffffffbf}.home-status-indicator .material-icons{font-size:1rem}.home-status-indicator--online{background:#0f8f621a;color:#0b7a55;border-color:#0f8f6233}.home-status-indicator--loading{background:#0072bc14;color:var(--primary);border-color:#0072bc29}.home-status-version{background:#ffffffb8;color:var(--text-muted);box-shadow:inset 0 1px #fffc}.home-hero__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.home-stat{position:relative;display:grid;gap:10px;padding:18px;border-radius:14px;background:linear-gradient(180deg,#fffffffa,#f4f8fff0),linear-gradient(135deg,rgba(10,77,162,.08),transparent 60%);border:1px solid rgba(10,77,162,.12);box-shadow:0 12px 28px #0e346e14,inset 0 1px #ffffffd9;transition:transform .22s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease}.home-stat:hover{transform:translateY(-2px);border-color:#0a4da238;box-shadow:0 16px 32px #0e346e1f,inset 0 1px #ffffffe6}.home-stat__label{display:inline-flex;align-items:center;gap:10px}.home-stat__label>span:last-child{color:var(--text-muted);font-size:.76rem;line-height:1.3;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.home-stat__label .material-icons{width:32px;height:32px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:#0a4da21f;color:var(--primary);font-size:1rem}.home-stat strong{color:var(--text);font-size:clamp(1.7rem,2vw,2.2rem);line-height:1}.home-stat small{color:var(--text-muted);font-size:.82rem;line-height:1.5}.home-stat--success .home-stat__label .material-icons{background:#0f8f6224;color:#0b7a55}.home-stat--accent .home-stat__label .material-icons{background:#00a4e424;color:#0b6f95}.home-stat--review .home-stat__label .material-icons{background:#d7263d1f;color:#b4233a}.home-workflow-wrap{display:grid;align-content:start;gap:10px}.home-workflow-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-muted);color:var(--text-muted);font-size:.82rem;font-weight:700}.home-workflow-meta__separator{color:#5e759494}.home-workflow-meta--ng{color:var(--danger)}.home-recent-activity{display:grid;gap:14px;background:linear-gradient(180deg,#fffffffa,#f7fbfff5),linear-gradient(135deg,rgba(0,114,188,.04),transparent 55%)}.home-recent-activity__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.home-section-chip{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 12px;border-radius:999px;border:1px solid rgba(10,77,162,.15);background:var(--primary-soft);color:var(--primary-strong);font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.home-activity-list{display:grid;gap:10px}.home-activity-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto auto auto;align-items:center;gap:12px;padding:14px 16px;border-radius:12px;border:1px solid var(--border);background:linear-gradient(180deg,#fffffff5,#f5f9ffeb),linear-gradient(135deg,rgba(10,77,162,.03),transparent 58%);box-shadow:0 10px 24px #0e346e0f}.home-activity-row__icon{width:44px;height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0a4da224,#00a4e42e);color:var(--primary);font-size:1.18rem}.home-activity-row__body{min-width:0;display:grid;gap:4px}.home-activity-row__body strong{color:var(--text)}.home-activity-row__file{color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-activity-row__time{color:var(--text-muted);font-size:.8rem;font-weight:700;white-space:nowrap}.home-activity-row__button{min-height:auto;padding:9px 14px;font-size:.82rem;box-shadow:none}.home-activity-row__button:hover:not(:disabled){box-shadow:none}@media (max-width: 960px){.home-recent-activity__heading{display:grid}.home-activity-row{grid-template-columns:44px minmax(0,1fr) auto;grid-template-areas:"icon body status" "icon time button"}.home-activity-row__icon{grid-area:icon}.home-activity-row__body{grid-area:body}.home-activity-row__status{grid-area:status;justify-self:end}.home-activity-row__time{grid-area:time}.home-activity-row__button{grid-area:button;justify-self:end}}.home-upload-panel,.panel{padding:var(--panel-padding)}.panel{border-radius:var(--radius-lg)}.info-strip__card{background:transparent;border:none;box-shadow:none;padding:6px 2px}.info-strip__card:hover{transform:none;box-shadow:none}.home-upload-panel .upload-panel{padding:0;border:none;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.workflow-launch-grid,.info-strip,.dual-column-grid{display:grid;gap:14px;align-items:start}.workflow-launch-grid,.info-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.usecase-card{overflow:hidden;border-radius:var(--radius-lg)}.usecase-card .card-body{padding:20px!important}.usecase-card__label{color:var(--primary)}.usecase-card__icon-wrap{width:52px;height:52px;border-radius:var(--radius-md);background:linear-gradient(180deg,#1f4fd61f,#1f4fd60a);color:var(--primary);display:inline-flex;align-items:center;justify-content:center}.usecase-card__icon-wrap .material-icons{font-size:1.6rem}.usecase-card h3{font-size:1.35rem}.usecase-card__button,.button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:var(--radius-sm);padding:13px 18px;font-weight:700;cursor:pointer;transition:transform .22s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease}.usecase-card__button{justify-self:start;background:linear-gradient(135deg,var(--brand-maruti-blue),var(--primary));color:#fff;box-shadow:0 12px 24px #0072bc2e}.usecase-card__button:hover:not(:disabled),.button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 16px 30px #0072bc38}.usecase-card__button:disabled,.button:disabled{opacity:.48;cursor:not-allowed}.button--primary{background:linear-gradient(135deg,var(--brand-maruti-blue),var(--primary));border-color:var(--brand-maruti-blue);color:#fff}.button--secondary{background:#fff;color:var(--primary);border-color:#0072bc59}.button--secondary:hover:not(:disabled){background:var(--primary);border-color:var(--primary);color:#fff}.button--danger{background:linear-gradient(135deg,#e04756,var(--brand-maruti-red));border-color:#be2338;color:#fff}.button--danger:hover:not(:disabled){background:#be2338;border-color:#be2338;color:#fff}.button--full{width:100%}.page-intro{padding:0 2px;position:relative}.page-intro--with-action{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px}.page-intro--with-action h2,.page-intro--with-action p,.page-intro--with-action .section-label{flex:1 1 100%;margin:0}.page-intro__corner-btn{margin-left:auto;align-self:flex-start;flex-shrink:0}.page-intro--compact-action{min-height:0;margin-bottom:-4px}.page-shell>*,.page-stack>*,.workflow-grid>*,.workflow-grid__main>*,.workflow-grid__side>*,.dual-column-grid>*,.home-hero>*,.workflow-launch-grid>*,.info-strip>*,.home-launch-preview>*,.home-launch-metadata__grid>*,.result-summary__header>*,.workbook-preview-grid>*{min-width:0}.page-intro .section-label{color:var(--primary)}.workflow-grid{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(320px,.82fr);gap:12px;align-items:start}.workflow-grid__main,.workflow-grid__side,.dual-column-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workflow-grid__main,.workflow-grid__side{display:grid;gap:14px}.workflow-grid__side{grid-template-columns:1fr;justify-items:start}.workflow-grid__side>.panel{width:100%;justify-self:start}.upload-panel .panel__heading{margin-bottom:18px}.action-panel{justify-self:start;text-align:left}.upload-dropzone{display:grid;gap:8px;padding:20px;border-radius:var(--radius-md);border:1.5px dashed rgba(0,114,188,.25);background:linear-gradient(180deg,#dce6ee73,#ffffffeb),var(--surface-muted);cursor:pointer;min-height:116px;align-content:center;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease}.upload-dropzone:hover{transform:translateY(-1px);border-color:#0072bc73;box-shadow:0 12px 22px #0072bc1f}.upload-dropzone input{display:none}.upload-dropzone__icon{font-size:2rem;color:var(--primary)}.upload-dropzone__icon--ready{color:#0f8f62}.upload-dropzone__title{font-weight:700;color:var(--primary-strong)}.upload-dropzone__hint{color:var(--text-muted);font-size:.92rem;word-break:break-word}.upload-dropzone--error{border-color:#d7263d6b;background:linear-gradient(180deg,#d7263d14,#fffffff2)}.upload-dropzone--ready{border-style:solid;border-color:#0f8f6273;background:linear-gradient(180deg,#0f8f6214,#fffffff5)}.upload-list{margin-top:16px;display:grid;gap:10px}.upload-list__item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--surface-muted);border:1px solid var(--border);transition:background .22s ease,border-color .22s ease}.upload-list__item:hover{background:#f7f9ff;border-color:#1f4fd61f}.field-error{margin:12px 0 0;color:var(--primary);font-size:.92rem}.metadata-grid{display:grid;gap:14px}.field{display:grid;gap:8px}.field span{font-weight:700;color:var(--primary-strong)}.field input{padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-muted);color:var(--text)}.field__icon{color:var(--primary);font-size:1rem}.field input:focus{outline:2px solid rgba(24,49,79,.12);border-color:#1f4fd647;box-shadow:0 0 0 .2rem #1f4fd61f}.result-summary__header{display:flex;justify-content:space-between;gap:20px;align-items:start;flex-wrap:wrap}.result-meta-grid,.severity-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.result-meta-card,.severity-overview__card,.finding-card{padding:16px;border-radius:var(--radius-md);background:var(--surface-muted);border:1px solid var(--border)}.result-meta-card{display:grid;gap:8px}.result-meta-card__label{color:var(--text-muted);font-size:.9rem}.severity-badge{display:inline-flex;justify-content:center;align-items:center;min-width:76px;padding:8px 12px;border-radius:var(--radius-sm);font-size:.9rem;font-weight:700}.severity-badge--high{color:#0b2f63!important;background:#0a63d82e!important}.severity-badge--medium{color:#0a4da2!important;background:#2f75dd29!important}.severity-badge--low{color:#0a63d8!important;background:#4f8fe81f!important}.metadata-list{display:grid;gap:12px}.metadata-list div{display:grid;gap:4px;padding-bottom:10px;border-bottom:1px solid rgba(20,34,49,.08)}.metadata-list dt{color:var(--text-muted)}.metadata-list dd{margin:0;font-weight:600}.summary-step-count{font-weight:700}.tag-list{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}.data-tag{padding:8px 12px;border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--primary-strong);font-size:.9rem}.finding-list{display:grid;gap:10px;margin:0;padding-left:18px}.finding-stack{display:grid;gap:14px}.finding-card__header{display:flex;gap:12px;align-items:center;margin-bottom:10px}.finding-card__header h4{margin:0}.finding-card__footer{margin-bottom:0;color:var(--text-muted)}.table-shell{overflow-x:auto}.data-table{width:100%;min-width:780px;border-collapse:separate;border-spacing:0}.data-table th,.data-table td{padding:8px 10px;border-bottom:1px solid rgba(20,34,49,.08);vertical-align:top;text-align:left}.data-table th{color:var(--text-muted);font-size:.9rem;text-transform:uppercase;letter-spacing:.04em;background:var(--surface-muted)}.workbook-preview-grid{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.workbook-preview-shell{overflow:auto;border:1px solid rgba(20,34,49,.08);border-radius:var(--radius-sm);background:var(--surface-muted)}.workbook-preview-table{width:100%;min-width:620px;border-collapse:separate;border-spacing:0;font-size:.84rem}.workbook-preview-table th,.workbook-preview-table td{padding:10px 12px;border-bottom:1px solid rgba(20,34,49,.08);border-right:1px solid rgba(20,34,49,.06);text-align:left;vertical-align:top;word-break:break-word}.workbook-preview-table thead th{position:sticky;top:0;z-index:1;background:var(--surface);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.workbook-preview-table tbody th{position:sticky;left:0;z-index:1;background:var(--surface);color:var(--text-muted);min-width:64px}.workbook-preview-table__cell--match{background:#0a63d81a}.workbook-preview-table__cell--mismatch{background:#2f75dd24}.workbook-preview-table__cell--extra{background:#4f8fe824}.workbook-preview-table__cell--empty{color:var(--text-muted);background:#1422310a}.loading-state,.error-state{display:grid;gap:14px}.loading-state__copy{display:grid;gap:10px}.loading-state__progress{display:grid;gap:8px;margin-top:2px}.loading-state__meter{width:min(360px,100%);height:10px;padding:2px;border-radius:999px;background:#1f4fd614;border:1px solid rgba(31,79,214,.12);overflow:hidden}.loading-state__meter span{display:block;height:100%;min-width:6px;border-radius:inherit;background:linear-gradient(90deg,var(--brand-maruti-blue),var(--primary));transition:width .16s ease}.loading-state__phase-badge{display:inline-flex;align-items:center;justify-content:center;width:fit-content;padding:6px 10px;border-radius:999px;border:1px solid rgba(31,79,214,.14);background:#1f4fd614;color:var(--primary-strong);font-size:.84rem;font-weight:700;letter-spacing:.03em}.loading-state__progress-label{color:var(--text-muted);font-size:.9rem}.loading-state__steps{margin:2px 0 0;padding:0;list-style:none;display:grid;gap:8px}.loading-state__step{display:flex;align-items:center;gap:10px;font-size:.86rem;color:var(--text-muted);opacity:0;transform:translateY(8px);animation:step-slide-in .45s cubic-bezier(.22,1,.36,1) forwards;animation-delay:var(--step-delay, 0s);transition:color .4s ease,font-weight .3s ease}.loading-state__step .material-icons{font-size:1.15rem;transition:color .4s ease,transform .4s cubic-bezier(.34,1.56,.64,1)}.loading-state__step--active{color:var(--primary-strong);font-weight:700}.loading-state__step--active .material-icons{animation:step-spin .8s cubic-bezier(.4,0,.2,1) infinite;color:var(--primary-strong)}.loading-state__step--done{color:#0f8f62}.step-done-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.step-done-icon svg{overflow:visible}.step-done-icon__circle{fill:none;stroke:#0f8f62;stroke-width:2;stroke-dasharray:63;stroke-dashoffset:63;animation:step-circle-draw .45s cubic-bezier(.65,0,.45,1) forwards;transform-origin:center}.step-done-icon__check{fill:none;stroke:#0f8f62;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:20;stroke-dashoffset:20;animation:step-check-draw .35s cubic-bezier(.65,0,.45,1) .3s forwards}.loading-state__step:not(.loading-state__step--done):not(.loading-state__step--active) .material-icons{opacity:.4;transition:opacity .4s ease}@keyframes step-slide-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes step-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes step-circle-draw{0%{stroke-dashoffset:63;fill:transparent}80%{stroke-dashoffset:0;fill:transparent}to{stroke-dashoffset:0;fill:#0f8f621a}}@keyframes step-check-draw{to{stroke-dashoffset:0}}.loading-state__icon{width:44px;height:44px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;color:var(--primary);background:#1f4fd61a;animation:pulse-soft 1.8s ease-in-out infinite}.loading-state__copy p,.error-state p{margin-bottom:0}.loading-skeleton-grid{display:grid;gap:12px}.error-state{border-color:#0a63d82e;background:linear-gradient(180deg,#0a63d80a,#fffffff5)}.error-state__icon{width:42px;height:42px;border-radius:var(--radius-sm);background:#0a63d81f;color:var(--primary);display:inline-flex;align-items:center;justify-content:center;font-weight:800}.global-error-notice{grid-template-columns:auto 1fr;align-items:start}.global-error-notice__content{display:grid;gap:8px}.global-error-notice__actions{display:flex;flex-wrap:wrap;gap:10px}.debug-panel summary{cursor:pointer;font-weight:700}.debug-panel pre{margin:18px 0 0;padding:18px;border-radius:var(--radius-md);background:var(--surface-strong);color:var(--text);overflow-x:auto;font-size:.9rem;border:1px solid var(--border)}.route-skeleton .react-loading-skeleton{--base-color: #e6ebef;--highlight-color: #f7f9fb}.react-loading-skeleton{--base-color: #e6ebef;--highlight-color: #f8fafc;position:relative;overflow:hidden;background:var(--base-color);border-radius:10px;display:inline-flex;line-height:1;width:100%}.btn,.badge,.alert,.table{--theme-blue: var(--primary);--theme-blue-strong: var(--primary-strong);--theme-blue-soft: var(--primary-soft)}.btn-primary,.btn-dark,.btn-secondary,.btn-success,.btn-danger,.btn-warning,.btn-info{background:linear-gradient(135deg,var(--brand-maruti-blue),var(--primary));border-color:var(--brand-maruti-blue);color:#fff;box-shadow:0 10px 22px #0072bc29}.btn-primary:hover,.btn-dark:hover,.btn-secondary:hover,.btn-success:hover,.btn-danger:hover,.btn-warning:hover,.btn-info:hover,.btn-primary:focus,.btn-dark:focus,.btn-secondary:focus,.btn-success:focus,.btn-danger:focus,.btn-warning:focus,.btn-info:focus{background:linear-gradient(135deg,#005d98,#0080cf);border-color:#005d98;color:#fff}.btn-danger{background:linear-gradient(135deg,#e04756,var(--brand-maruti-red));border-color:#be2338}.btn-danger:hover,.btn-danger:focus{background:#be2338;border-color:#be2338}.btn-outline-primary,.btn-outline-secondary,.btn-outline-success,.btn-outline-danger,.btn-outline-warning,.btn-outline-info,.btn-outline-dark,.btn-outline-light{background:#fff;border-color:#0072bc4d;color:var(--primary)}.btn-outline-primary:hover,.btn-outline-secondary:hover,.btn-outline-success:hover,.btn-outline-warning:hover,.btn-outline-info:hover,.btn-outline-dark:hover,.btn-outline-light:hover,.btn-outline-primary:focus,.btn-outline-secondary:focus,.btn-outline-success:focus,.btn-outline-warning:focus,.btn-outline-info:focus,.btn-outline-dark:focus,.btn-outline-light:focus{background:var(--primary);border-color:var(--primary);color:#fff}.btn-outline-danger{border-color:#d7263d59;color:var(--brand-maruti-red)}.btn-outline-danger:hover,.btn-outline-danger:focus{background:var(--brand-maruti-red);border-color:var(--brand-maruti-red);color:#fff}.badge.bg-primary,.badge.bg-secondary,.badge.bg-success,.badge.bg-danger,.badge.bg-warning,.badge.bg-info,.badge.text-bg-primary,.badge.text-bg-secondary,.badge.text-bg-success,.badge.text-bg-danger,.badge.text-bg-warning,.badge.text-bg-info{background:var(--primary-soft)!important;color:var(--primary-strong)!important;border:1px solid rgba(10,99,216,.12)}.alert-info,.alert-warning,.alert-danger,.alert-success,.resilience-fallback{color:var(--primary-strong);background:linear-gradient(180deg,#0a63d814,#fffffff5);border:1px solid rgba(10,99,216,.14)}.text-warning-emphasis,.text-danger,.text-success,.text-info{color:var(--primary)!important}.table-light,.table>:not(caption)>*>*{border-color:#0a63d814}.table-light>tr>th,.table-light>tr>td,.table thead th{background:#eef5ff!important;color:var(--primary-strong)}.table-hover>tbody>tr:hover>*{background:#0a63d80a;color:inherit}.bg-light{background-color:#f7fbff!important}:root[data-theme=dark] .home-hero__content{background:linear-gradient(150deg,#08162afc,#0e243ef5),linear-gradient(135deg,rgba(31,79,214,.3),transparent);color:#f0f8fd}:root[data-theme=dark] .home-hero__content .section-label,:root[data-theme=dark] .home-hero__content .home-hero__lede{color:#e3f1fcbf}:root[data-theme=dark] .home-hero__content h2{color:#f0f8fd}:root[data-theme=dark] .home-stat{background:linear-gradient(180deg,#0a1c30f5,#102a43fa),linear-gradient(135deg,rgba(88,170,238,.08),transparent 58%);border-color:#81b4ff29;box-shadow:0 16px 30px #00050f57,inset 0 1px #ffffff0a}:root[data-theme=dark] .home-status-indicator{background:#58aaee1a;color:#9fd4ff;border-color:#81b4ff2e;box-shadow:inset 0 1px #ffffff0a}:root[data-theme=dark] .home-status-indicator--online{background:#24b87c24;color:#7be3b1;border-color:#24b87c38}:root[data-theme=dark] .home-status-version{background:#071426b8;color:#e3f1fcb3;border-color:#81b4ff29;box-shadow:inset 0 1px #ffffff0a}:root[data-theme=dark] .home-stat__label>span:last-child,:root[data-theme=dark] .home-stat small,:root[data-theme=dark] .home-workflow-meta,:root[data-theme=dark] .home-activity-row__time,:root[data-theme=dark] .home-activity-row__file{color:#e3f1fcb8}:root[data-theme=dark] .home-stat__label .material-icons{background:#58aaee29;color:#9fd4ff}:root[data-theme=dark] .home-stat--success .home-stat__label .material-icons{background:#24b87c29;color:#7be3b1}:root[data-theme=dark] .home-stat--accent .home-stat__label .material-icons{background:#38ccf529;color:#9de9ff}:root[data-theme=dark] .home-stat--review .home-stat__label .material-icons{background:#f254742e;color:#ffb0c0}:root[data-theme=dark] .home-workflow-meta{background:#071426b8;border-color:#81b4ff24}:root[data-theme=dark] .home-workflow-meta__separator{color:#e3f1fc57}:root[data-theme=dark] .home-recent-activity{background:linear-gradient(180deg,#0a1c30f5,#0c2035fa),linear-gradient(135deg,rgba(88,170,238,.08),transparent 58%)}:root[data-theme=dark] .home-section-chip{background:#58aaee1f;color:#9fd4ff;border-color:#81b4ff2e}:root[data-theme=dark] .home-activity-row{background:linear-gradient(180deg,#0a1c30e6,#102a43f0),linear-gradient(135deg,rgba(88,170,238,.06),transparent 58%);border-color:#81b4ff24;box-shadow:0 14px 28px #00050f47}:root[data-theme=dark] .home-activity-row__icon{background:linear-gradient(135deg,#58aaee33,#38ccf53d);color:#c4e7ff}:root[data-theme=dark] .home-activity-row__body strong{color:var(--text)}:root[data-theme=dark] .form-control,:root[data-theme=dark] input[type=text],:root[data-theme=dark] textarea{background:#071426d9;border-color:#81b4ff33;color:var(--text)}:root[data-theme=dark] .form-control::placeholder,:root[data-theme=dark] textarea::placeholder{color:var(--text-muted)}:root[data-theme=dark] .form-control:focus,:root[data-theme=dark] textarea:focus{background:#071426f5;border-color:var(--primary);box-shadow:0 0 0 3px #58aaee38;color:var(--text)}:root[data-theme=dark] .data-table th,:root[data-theme=dark] .table-light>tr>th,:root[data-theme=dark] .table thead th{background:#08162afa!important;color:var(--primary-strong);border-color:var(--border)}:root[data-theme=dark] .data-table td{color:var(--text);border-color:var(--border)}:root[data-theme=dark] .table>:not(caption)>*>*{border-color:var(--border)}:root[data-theme=dark] .table-hover>tbody>tr:hover>*{background:#58aaee12}:root[data-theme=dark] .metadata-list div{border-color:var(--border)}:root[data-theme=dark] .upload-dropzone{border-color:var(--border);background:linear-gradient(180deg,#0a1c34eb,#0e2642e0),var(--surface-muted)}:root[data-theme=dark] .upload-dropzone--error{background:#f2547412}:root[data-theme=dark] .upload-list__item:hover{background:#58aaee17;border-color:#81b4ff3d}:root[data-theme=dark] .app-footer__inner{background:linear-gradient(180deg,#102a43eb,#0a1c32e6),linear-gradient(135deg,rgba(31,79,214,.12),transparent)}:root[data-theme=dark] .app-footer__inner p{color:var(--text-muted)}:root[data-theme=dark] .error-state{background:#f2547414}:root[data-theme=dark] .loading-state__meter{background:#58aaee1a;border-color:#81b4ff29}:root[data-theme=dark] .loading-state__phase-badge{background:#58aaee1a;border-color:#81b4ff2e;color:var(--primary-strong)}:root[data-theme=dark] .alert{background:#102a43eb;border-color:var(--border);color:var(--text)}:root[data-theme=dark] .button--secondary{background:#58aaee1a;border-color:#81b4ff3d;color:var(--primary-strong)}:root[data-theme=dark] .button--secondary:hover:not(:disabled){background:#58aaee2e;border-color:#81b4ff61}:root[data-theme=dark] .route-skeleton .react-loading-skeleton,:root[data-theme=dark] .react-loading-skeleton{--base-color: rgba(16, 42, 67, .8);--highlight-color: rgba(28, 64, 100, .9)}.react-loading-skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,var(--highlight-color),transparent);animation:skeleton-shimmer 1.35s ease-in-out infinite}.app-footer{margin-top:12px;padding:0 var(--page-gutter) 12px}.app-footer__inner{width:100%;max-width:var(--max-width);margin:0 auto;border-radius:var(--radius-lg);background:linear-gradient(180deg,#ffffffeb,#ffffffd6),linear-gradient(135deg,#1f4fd60a,#8b6f470a);color:var(--text);padding:16px 18px;display:grid;gap:12px;justify-items:center;text-align:center;border:1px solid var(--border);box-shadow:var(--shadow)}.app-footer__inner p{margin:6px 0 0;color:var(--text-muted)}.app-footer__content{display:grid;gap:4px;justify-items:center}.app-footer__brand{display:inline-flex;align-items:center;gap:8px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--primary)}.stub-page{display:flex;align-items:center;justify-content:center;min-height:60vh}.stub-page__panel{text-align:center;max-width:540px;padding:48px 40px}.stub-page__icon-wrap{width:80px;height:80px;border-radius:50%;background:var(--primary-faint, rgba(37, 99, 235, .08));display:inline-flex;align-items:center;justify-content:center;margin-bottom:20px}.stub-page__icon{font-size:40px;color:var(--primary)}.stub-page__panel h2{margin:0 0 12px;font-size:1.5rem;font-weight:800}.stub-page__desc{color:var(--text-muted);font-size:.95rem;line-height:1.6;margin:0 0 24px}.stub-page__badge{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#0062b8,#00a5e0);color:#fff;font-weight:700;font-size:.85rem;padding:8px 20px;border-radius:24px;margin-bottom:16px;box-shadow:0 4px 14px #0062b840}.stub-page__badge .material-icons{font-size:18px}:root[data-theme=dark] .stub-page__badge{background:linear-gradient(135deg,#0050a0,#00a5e0);box-shadow:0 4px 18px #00a5e04d}:root[data-theme=dark] .stub-page__icon-wrap{background:#58aaee1f}.stub-page__sub{color:var(--text-muted);font-size:.82rem;margin:0 0 24px}.resilience-fallback{margin:0 0 16px;border-radius:var(--radius-md)}.resilience-fallback__detail{display:block;max-width:820px;padding:8px 10px;border-radius:8px;border:1px solid rgba(245,158,11,.28);background:#f59e0b1f;color:#92400e;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.78rem;overflow-wrap:anywhere}.intelligent-sheet{overflow:hidden}.intelligent-sheet>summary{cursor:pointer;padding:10px 14px;border-radius:var(--radius-sm);background:#0a63d80f;border:1px solid var(--border);font-weight:700}.intelligent-sheet__body{margin-top:12px;display:grid;gap:12px}.intelligent-sheet__tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.intelligent-sheet__tools label{font-size:.86rem;color:var(--text-muted)}.intelligent-sheet__tools select{max-width:220px}.intelligent-summary-table th,.intelligent-summary-table td,.intelligent-corrector-table th,.intelligent-corrector-table td{vertical-align:top}.intelligent-sheet__corrector{display:flex;gap:8px;flex-wrap:wrap}.omr-circle{display:inline-block;width:20px;height:20px;border-radius:50%;border:2px solid rgba(10,99,216,.55);cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.omr-circle:hover{border-color:var(--primary);box-shadow:0 0 0 3px #0a63d82e}.omr-circle--selected{background:var(--primary);border-color:var(--primary);position:relative}.omr-circle--selected:after{content:"âœ“";position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#fff;font-size:.72rem;font-weight:700}.omr-circle--selected:after{content:"✓"}.parity-root{border:1px solid rgba(0,114,188,.2);background:linear-gradient(180deg,#f8fbfff2,#fff)}.parity-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.parity-header h3{margin:0}.parity-sheet{border:1px solid rgba(0,114,188,.2);border-radius:var(--radius-md);background:#fff}.parity-sheet__summary{cursor:pointer;list-style:none;display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:12px 14px;border-radius:var(--radius-md);background:linear-gradient(135deg,#0072bc14,#0072bc08);border-bottom:1px solid rgba(0,114,188,.16);font-weight:700}.parity-sheet__summary::-webkit-details-marker{display:none}.parity-sheet__content{display:grid;gap:12px;padding:12px;min-width:0}.parity-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.parity-toolbar label{font-weight:700}.parity-toolbar select{min-width:200px}.parity-toolbar__count{font-size:.86rem;font-weight:700;color:var(--primary)}.parity-summary-table{min-width:1200px;width:100%;table-layout:fixed;font-size:.8rem;border-collapse:separate;border-spacing:0}.parity-summary-table th,.parity-summary-table td{word-break:break-word;white-space:normal;overflow-wrap:break-word;padding:5px 7px;line-height:1.35;border-bottom:1px solid rgba(20,34,49,.08);vertical-align:top;text-align:left}.parity-summary-table th{font-size:.78rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;background:var(--surface-muted);word-break:normal;overflow:hidden;text-overflow:ellipsis}.parity-summary-table th:nth-child(1),.parity-summary-table td:nth-child(1){width:52px;text-align:center}.parity-summary-table th:nth-child(2),.parity-summary-table td:nth-child(2){width:90px}.parity-summary-table th:nth-child(3),.parity-summary-table td:nth-child(3){width:200px}.parity-summary-table th:nth-child(4),.parity-summary-table td:nth-child(4){width:200px}.parity-summary-table th:nth-child(5),.parity-summary-table td:nth-child(5){width:140px}.parity-summary-table th:nth-child(6),.parity-summary-table td:nth-child(6){width:200px}.parity-summary-table th:nth-child(7),.parity-summary-table td:nth-child(7){width:60px;text-align:center}.parity-summary-table--with-edit th:nth-child(7),.parity-summary-table--with-edit td:nth-child(7){width:160px;text-align:left}.parity-summary-table--with-edit th:nth-child(8),.parity-summary-table--with-edit td:nth-child(8){width:170px}.parity-summary-table tbody tr:hover>*{background:#0072bc0a}.parity-actions{display:flex;flex-wrap:wrap;gap:8px}.parity-action-choice{display:grid;gap:4px}.parity-action-choice label{display:flex;align-items:flex-start;gap:6px;margin:0;font-size:.76rem;line-height:1.25;cursor:pointer}.parity-action-choice input{margin-top:2px}.parity-edit-input{width:100%;min-height:58px;resize:vertical;border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 8px;font:inherit;font-size:.78rem;background:#fff;color:var(--text)}.parity-edit-input:focus{outline:2px solid rgba(0,114,188,.18);border-color:var(--primary)}tr.parity-row--matched td{background:#10b9810a}tr.parity-row--meaningful td{background:#d7263d0a}tr.parity-row--cosmetic td{background:#e6a3190a}tr.parity-row--missing td{background:#6370890a}.parity-remark{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.82rem;font-weight:600}.parity-remark--matched{background:#d1fae5;color:#065f46;border:1px solid rgba(16,185,129,.25)}.parity-remark--meaningful{background:#fee2e2;color:#9b1c1c;border:1px solid rgba(215,38,61,.25)}.parity-remark--cosmetic{background:#fef3c7;color:#92400e;border:1px solid rgba(230,163,25,.3)}.parity-remark--missing{background:#f1f5fb;color:#374151;border:1px solid rgba(99,112,137,.2)}.home-hero .workflow-launch-grid{grid-template-columns:1fr;align-content:start}.history-launcher{display:flex;justify-content:flex-start;padding:4px 0}.history-status,.history-status--pass{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.78rem;font-weight:700;border:1px solid transparent}.history-status--pass{background:#d1fae5;color:#065f46;border:1px solid rgba(16,185,129,.3)}.history-status--compliant{background:#dcfce7;color:#166534;border-color:#22c55e59}.history-status--conditional{background:#dbeafe;color:#1d4ed8;border-color:#3b82f659}.history-status--review{background:#fef3c7;color:#92400e;border:1px solid rgba(245,158,11,.3)}.history-status--fail{background:#fee2e2;color:#9b1c1c;border:1px solid rgba(239,68,68,.3)}.history-status--neutral{background:#eef2f7;color:#344054;border-color:#64748b3d}:root[data-theme=dark] .history-status--pass{background:#10b9812e;color:#6ee7b7;border-color:#10b9814d}:root[data-theme=dark] .history-status--compliant{background:#22c55e2e;color:#86efac;border-color:#22c55e4d}:root[data-theme=dark] .history-status--conditional{background:#3b82f62e;color:#93c5fd;border-color:#3b82f657}:root[data-theme=dark] .history-status--review{background:#f59e0b26;color:#fcd34d;border-color:#f59e0b4d}:root[data-theme=dark] .history-status--fail{background:#f2547426;color:#fca5a5;border-color:#f254744d}:root[data-theme=dark] .history-status--neutral{background:#94a3b826;color:#cbd5e1;border-color:#94a3b840}.history-row--pass td{background:#10b9810a}.history-row--review td{background:#f59e0b0a}.history-row--fail td{background:#ef44440f}.history-row--compliant td{background:#22c55e0a}.history-row--conditional td{background:#3b82f60a}.table-hover>tbody>tr.history-row--pass:hover>*{background:#10b9811a}.table-hover>tbody>tr.history-row--review:hover>*{background:#f59e0b1a}.table-hover>tbody>tr.history-row--fail:hover>*{background:#ef44441f}.table-hover>tbody>tr.history-row--compliant:hover>*{background:#22c55e1a}.table-hover>tbody>tr.history-row--conditional:hover>*{background:#3b82f61a}.section-tracker-panel{margin-top:8px}.section-tracker{display:flex;flex-wrap:wrap;gap:8px;padding:8px 12px}.section-tracker__item{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface-muted);color:var(--text-muted);font-size:.82rem;font-weight:700}.section-tracker__item .material-icons{font-size:1rem}.section-tracker__item small{color:inherit;font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;opacity:.72}.section-tracker__item--running{background:#3b82f61a;color:#1d4ed8;border-color:#3b82f647}.section-tracker__item--running .material-icons{animation:step-spin .9s linear infinite}.section-tracker__item--complete{background:#10b9811f;color:#047857;border-color:#10b98147}.section-tracker__item--failed{background:#ef44441a;color:#b91c1c;border-color:#ef444447}:root[data-theme=dark] .section-tracker__item--running{color:#93c5fd}:root[data-theme=dark] .section-tracker__item--complete{color:#6ee7b7}:root[data-theme=dark] .section-tracker__item--failed{color:#fca5a5}.history-modal__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a192d8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9000;padding:24px}.history-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-strong);width:100%;max-width:900px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.history-modal__header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px 14px;border-bottom:1px solid var(--border);flex-shrink:0}.history-modal__header h3{margin:0;font-size:1.2rem}.history-modal__body{overflow-y:auto;padding:16px 24px 24px;flex:1}.history-modal__status{color:var(--text-muted);text-align:center;padding:32px 0}.history-modal__status--error{color:var(--error, #c0392b)}.match-badge{display:inline-block;padding:10px 22px;border-radius:999px;font-size:1.1rem;font-weight:800}.match-100{background:#d1fae5;color:#065f46}.match-partial{background:#fef3c7;color:#92400e}.match-low{background:#fee2e2;color:#991b1b}.metrics-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.metric{padding:14px;border-radius:var(--radius-md);border:1px solid rgba(0,114,188,.16);display:grid;gap:4px;text-align:center}.metric-value{font-size:1.8rem;font-weight:800;line-height:1.05}.metric-label{font-size:.82rem}.legend{margin:0;padding:10px 12px;border-radius:var(--radius-sm)}.legend-item{display:inline-flex;align-items:center;gap:6px;font-size:.84rem}.legend-box{width:16px;height:16px;border-radius:3px;display:inline-block}.metrics-row--light .metric--light{background:#fff;border-color:#0072bc33;box-shadow:0 8px 18px #0072bc14}.metrics-row--light .metric-value{color:#0b2f63}.metrics-row--light .metric-label{color:#486584}.legend--light{display:inline-flex;flex-wrap:wrap;align-items:center;gap:10px;border:1px solid rgba(0,114,188,.18);background:#fff;color:var(--text)}.legend--light .legend-item{margin-right:0}.legend--light .legend-green{background:#d1fae5;border:2px solid #0f8f62}.legend--light .legend-red{background:#fee2e2;border:2px solid #d7263d}.legend--light .legend-yellow{background:#fef3c7;border:2px solid #e6a319}.legend--light .legend-grey{background:#eef4ff;border:1px solid #9eb6d3}.bbox-ok{background:#d1fae5;border-left:4px solid #0f8f62;color:#0a5138;border-radius:var(--radius-sm);padding:10px 12px}.diff-fallback{color:#5e7594}@keyframes page-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes skeleton-shimmer{to{transform:translate(100%)}}@keyframes pulse-soft{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.04);opacity:.82}}@media (max-width: 1160px){.home-hero,.workflow-grid,.workflow-launch-grid,.info-strip,.dual-column-grid,.workflow-grid__main{grid-template-columns:1fr}}@media (max-width: 1480px){.home-hero{grid-template-columns:minmax(0,1fr) minmax(340px,.94fr)}.result-meta-grid,.severity-overview,.home-launch-preview,.home-launch-metadata__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workbook-preview-grid{grid-template-columns:1fr}}@media (max-width: 1280px){.app-header{align-items:start}.app-header__actions{width:100%;justify-items:stretch;align-items:stretch;flex-wrap:wrap}.app-header__controls{flex-wrap:wrap}.app-header__nav{justify-content:flex-start}.theme-toggle{justify-self:start}.home-hero,.workflow-grid{grid-template-columns:1fr}}@media (max-width: 760px){:root{--page-gutter: 10px;--panel-padding: 16px}.app-header,.home-hero__content,.panel,.usecase-card,.info-strip__card,.app-footer__inner{padding:20px}.app-header{padding:6px 10px 8px}.app-header__brandlock{align-items:start}.app-header__actions{width:100%;justify-items:stretch;align-items:stretch}.app-header__logos{width:100%;justify-content:center}.app-header__nav{justify-content:flex-start}.theme-toggle{justify-self:start}.home-hero__content h2{font-size:2.2rem;max-width:100%}.home-hero__stats,.home-launch-preview,.home-launch-metadata__grid,.result-meta-grid,.severity-overview{grid-template-columns:1fr}.home-recent-activity__heading{gap:10px}.home-section-chip{justify-self:start}.home-activity-row{grid-template-columns:40px minmax(0,1fr);grid-template-areas:"icon body" "status time" "button button";align-items:start}.home-activity-row__icon{width:40px;height:40px}.home-activity-row__status,.home-activity-row__time{margin-top:4px}.home-activity-row__status{justify-self:start}.home-activity-row__button{width:100%;justify-self:stretch;justify-content:center}.data-table,.workbook-preview-table{min-width:560px}}.validation-report-panel{padding:0}.validation-report-panel>.panel__heading{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:20px 24px 14px}.panel__heading-left{display:flex;flex-direction:column;gap:8px}.panel__heading-left h3{margin:0}.validation-report-overall{display:inline-block;padding:3px 12px;border-radius:999px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.validation-report-overall--pass,.validation-report-overall--match,.validation-report-overall--compliant,.validation-report-overall--properly_installed{background:#d1fae5;color:#065f46;border:1px solid rgba(16,185,129,.3)}.validation-report-overall--fail,.validation-report-overall--mismatch,.validation-report-overall--improperly_installed{background:#fee2e2;color:#9b1c1c;border:1px solid rgba(215,38,61,.3)}.validation-report-overall--needs_review,.validation-report-overall--review{background:#fef3c7;color:#92400e;border:1px solid rgba(245,158,11,.3)}.validation-report-document{padding:0 24px 8px;margin:0;font-size:.82rem;color:var(--text-muted)}.validation-report-section{border-top:1px solid var(--border);padding:16px 24px}.validation-report-section__title{font-size:.92rem;font-weight:700;margin-bottom:10px;color:var(--text)}.validation-report-table-shell{overflow-x:auto}.validation-report-table{width:100%;min-width:600px;border-collapse:separate;border-spacing:0;font-size:.82rem}.validation-report-table th,.validation-report-table td{padding:10px 12px;border-bottom:1px solid rgba(20,34,49,.08);vertical-align:top;text-align:left;word-break:break-word}.validation-report-table th{font-size:.76rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;background:var(--surface-muted);font-weight:600;white-space:nowrap}.validation-report-table tbody tr:hover td{background:#0072bc0a}.validation-report-status{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.76rem;font-weight:700;white-space:nowrap}.validation-report-status--match{background:#d1fae5;color:#065f46;border:1px solid rgba(16,185,129,.25)}.validation-report-status--mismatch{background:#fee2e2;color:#9b1c1c;border:1px solid rgba(215,38,61,.25)}.validation-report-status--review{background:#fef3c7;color:#92400e;border:1px solid rgba(245,158,11,.25)}:root[data-theme=dark] .validation-report-overall--pass,:root[data-theme=dark] .validation-report-overall--match,:root[data-theme=dark] .validation-report-overall--compliant,:root[data-theme=dark] .validation-report-overall--properly_installed{background:#10b9812e;color:#6ee7b7;border-color:#10b9814d}:root[data-theme=dark] .validation-report-overall--fail,:root[data-theme=dark] .validation-report-overall--mismatch,:root[data-theme=dark] .validation-report-overall--improperly_installed{background:#f2547426;color:#fca5a5;border-color:#f254744d}:root[data-theme=dark] .validation-report-overall--needs_review,:root[data-theme=dark] .validation-report-overall--review{background:#f59e0b26;color:#fcd34d;border-color:#f59e0b4d}:root[data-theme=dark] .validation-report-status--match{background:#10b9812e;color:#6ee7b7}:root[data-theme=dark] .validation-report-status--mismatch{background:#f2547426;color:#fca5a5}:root[data-theme=dark] .validation-report-status--review{background:#f59e0b26;color:#fcd34d}.corrector-results-wrap{border-top:1px solid var(--border);padding:12px 24px}.corrector-results-summary{cursor:pointer;font-weight:700;font-size:.88rem;display:inline-flex;align-items:center;gap:8px;color:var(--primary)}.corrector-progress{padding:8px 24px}.vcc-root{margin-top:.25rem}.vcc-field-hint{font-size:.68rem;color:var(--text-muted);margin-top:2px;font-weight:600}.vcc-sim-badge{display:inline-block;margin-left:.3rem;font-size:.64rem;font-weight:700;padding:1px 5px;border-radius:3px;background:#f1f5f9;color:#475569;border:1px solid #CBD5E1;vertical-align:middle;white-space:nowrap}.wis-fmt-tabs{display:flex;gap:0;border-bottom:2px solid var(--border);margin-bottom:1rem}.wis-fmt-tab-btn{padding:.75rem 1.8rem;font-size:1.05rem;font-weight:700;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s}.wis-fmt-tab-btn:hover{color:var(--primary)}.wis-fmt-tab-btn--active{color:var(--primary);border-bottom-color:var(--primary)}.wis-fmt-root{margin-top:.5rem}.wis-fmt-empty{color:var(--text-muted);text-align:center;padding:2rem 0}.wis-fmt-controls{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.wis-fmt-controls-label{font-weight:600;font-size:.82rem;color:var(--text)}.wis-fmt-select{padding:.35rem .75rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-size:.8rem;background:var(--surface);color:var(--text)}.wis-fmt-legend{display:flex;gap:1.5rem;align-items:center;margin-bottom:1rem;flex-wrap:wrap}.wis-fmt-legend-item{display:flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--text)}.wis-fmt-swatch{display:inline-block;width:18px;height:18px;border-radius:3px}.wis-fmt-swatch--match{background:#f0fdf4;border:2px solid #22C55E}.wis-fmt-swatch--diff{background:#fefce8;border:2px solid #EAB308}.wis-fmt-swatch--crit{background:#fef2f2;border:2px solid #EF4444}.wis-fmt-side-by-side{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.25rem}@media (max-width: 600px){.wis-fmt-side-by-side{grid-template-columns:1fr}}.wis-fmt-panel{border:1px solid #E2E8F0;border-radius:8px;overflow:hidden;background:#fff}.wis-fmt-panel-title{display:flex;align-items:center;gap:.5rem;padding:.6rem .85rem;background:#f8fafc;border-bottom:1px solid #E2E8F0;font-weight:700;font-size:.78rem;color:var(--text)}.wis-fmt-panel-tag{display:inline-block;padding:.15rem .55rem;border-radius:4px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.wis-fmt-tag--baseline{background:#dbeafe;color:#1e40af}.wis-fmt-tag--plant{background:#d1fae5;color:#065f46}.wis-fmt-panel-filename{font-weight:600;font-size:.75rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wis-fmt-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border-bottom:2px solid #E2E8F0}.wis-fmt-meta-item{display:flex;align-items:stretch;border-bottom:1px solid #E2E8F0;font-size:.74rem}.wis-fmt-meta-label{flex:0 0 auto;width:110px;padding:.4rem .6rem;font-weight:700;color:#334155;background:#f1f5f9;border-right:1px solid #E2E8F0;display:flex;align-items:center;font-size:.68rem;text-transform:uppercase;letter-spacing:.02em}.wis-fmt-meta-value{flex:1;padding:.4rem .6rem;color:var(--text);display:flex;align-items:center;gap:.4rem;position:relative;word-break:break-word}.wis-fmt-meta-val--diff{background:#fefce8;border-left:4px solid #EAB308}.wis-fmt-meta-val--crit{background:#fef2f2;border-left:4px solid #EF4444}.wis-fmt-table-wrap{overflow-x:auto;max-height:520px;overflow-y:auto}.wis-fmt-table{width:100%;border-collapse:collapse;font-size:11px;table-layout:fixed}.wis-fmt-col-narrow{width:44px}.wis-fmt-col-wide{width:34%}.wis-fmt-col-medium{width:24%}.wis-fmt-th{background:#e8eef6;color:#1e293b;font-weight:700;padding:7px 10px;border:1px solid #CBD5E1;text-align:left;position:sticky;top:0;z-index:1;white-space:nowrap;font-size:.68rem;text-transform:uppercase;letter-spacing:.02em}.wis-fmt-td{padding:7px 10px;border-bottom:1px solid #E2E8F0;border-right:1px solid #F1F5F9;vertical-align:top;position:relative;word-break:break-word;line-height:1.45;font-size:11px}.wis-fmt-row--match td{background:#f0fdf4;border-left:4px solid #22C55E}.wis-fmt-row--match td:not(:first-child){border-left:1px solid #F1F5F9}.wis-fmt-row--diff td{background:#fefce8;border-left:4px solid #EAB308}.wis-fmt-row--diff td:not(:first-child){border-left:1px solid #F1F5F9}.wis-fmt-row--crit td{background:#fef2f2;border-left:4px solid #EF4444}.wis-fmt-row--crit td:not(:first-child){border-left:1px solid #F1F5F9}.wis-fmt-td--diff{background:#fde68a!important;color:#713f12;border:1px solid #FCD34D!important}.wis-fmt-td--crit{background:#fecaca!important;color:#7f1d1d;border:1px solid #FCA5A5!important}.wis-fmt-badge{display:inline-block;font-size:.58rem;font-weight:700;letter-spacing:.03em;padding:1px 5px;border-radius:3px;margin-left:4px;vertical-align:middle;white-space:nowrap}.wis-fmt-badge--diff{background:#fef9c3;color:#854d0e;border:1px solid #EAB308}.wis-fmt-badge--crit{background:#fee2e2;color:#991b1b;border:1px solid #EF4444}.wis-fmt-mcard-section{margin-top:1rem}.wis-fmt-mcard-heading{font-size:.9rem;font-weight:700;margin-bottom:.6rem;color:var(--text)}.wis-fmt-mcard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:.75rem}.wis-fmt-mcard{border-radius:var(--radius-sm);padding:.75rem;background:var(--surface)}.wis-fmt-mcard--diff{border:1.5px solid #EAB308;background:#fefce8}.wis-fmt-mcard--crit{border:1.5px solid #EF4444;background:#fef2f2}.wis-fmt-mcard-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.wis-fmt-severity-badge{font-size:.68rem;font-weight:700;padding:.15rem .5rem;border-radius:999px;text-transform:uppercase;letter-spacing:.03em}.wis-fmt-severity-badge--diff{background:#fef9c3;color:#854d0e;border:1px solid #EAB308}.wis-fmt-severity-badge--crit{background:#fee2e2;color:#991b1b;border:1px solid #EF4444}.wis-fmt-mcard-field{font-size:.78rem;font-weight:600;color:var(--text)}.wis-fmt-mcard-values{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.4rem}.wis-fmt-mcard-box{padding:.45rem .6rem;border-radius:6px;font-size:.75rem}.wis-fmt-mcard-box--baseline{background:#dbeafe;border:1px solid #93C5FD}.wis-fmt-mcard-box--plant{background:#fef9c3;border:1px solid #EDE68A}.wis-fmt-mcard-box--crit{background:#fee2e2;border:1px solid #FECACA}.wis-fmt-mcard-box-label{display:block;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:.15rem}.wis-fmt-mcard-box-val{display:block;word-break:break-word}.wis-fmt-mcard-reason{font-size:.74rem;color:var(--text-muted);margin-top:.25rem;line-height:1.4}.wis-fmt-download-bar{display:flex;align-items:center;gap:.75rem;margin:.75rem 0;flex-wrap:wrap}.wis-fmt-download-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .9rem;font-size:.78rem;font-weight:600;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--primary);cursor:pointer;transition:background .15s,border-color .15s}.wis-fmt-download-btn:hover{background:var(--primary-soft);border-color:var(--primary)}.wis-fmt-download-btn:disabled{opacity:.5;cursor:not-allowed}.ucv-root{border-radius:16px;overflow:hidden;background:linear-gradient(180deg,#f8faff,#fff 40%);box-shadow:0 1px 3px #0000000f,0 6px 24px #0000000a;border:1px solid rgba(0,114,188,.12)}.ucv-hero{background:linear-gradient(135deg,#0a2463,#1649a0 40%,#1976d2);color:#fff;padding:1.5rem 1.75rem 1.25rem;position:relative;overflow:hidden}.ucv-hero:before{content:"";position:absolute;top:-50%;right:-10%;width:320px;height:320px;background:radial-gradient(circle,rgba(255,255,255,.08) 0%,transparent 70%);border-radius:50%;pointer-events:none}.ucv-hero:after{content:"";position:absolute;bottom:-40%;left:10%;width:200px;height:200px;background:radial-gradient(circle,rgba(255,255,255,.05) 0%,transparent 70%);border-radius:50%}.ucv-score{display:flex;align-items:center;gap:1.2rem}.ucv-score-ring{width:72px;height:72px;flex-shrink:0}.ucv-score-trail{fill:none;stroke:#fff3;stroke-width:2.8}.ucv-score-fill{fill:none;stroke:#4ade80;stroke-width:2.8;stroke-linecap:round;transition:stroke-dasharray .8s ease}.ucv-score-text{text-anchor:middle}.ucv-score-pct{fill:#fff;font-size:8px;font-weight:800}.ucv-score-label{fill:#ffffffb3;font-size:3px;text-transform:uppercase;letter-spacing:.08em}.ucv-stat-card{background:#ffffff1f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:.7rem 1rem;display:flex;align-items:center;gap:.65rem;transition:transform .15s,box-shadow .15s;min-width:120px}.ucv-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0003}.ucv-stat-icon{font-size:1.4rem;opacity:.85}.ucv-stat-value{font-size:1.3rem;font-weight:800;color:#fff;line-height:1}.ucv-stat-label{font-size:.62rem;text-transform:uppercase;letter-spacing:.06em;color:#ffffffb3;margin-top:.15rem}.ucv-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.8rem;padding:.75rem 1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:.75rem}.ucv-select{font-size:.72rem;padding:.3rem .6rem;border-radius:8px;border:1px solid #cbd5e1;background:#fff;color:#1e293b;cursor:pointer}.ucv-ctrl{display:flex;align-items:center;gap:.35rem;padding:.3rem .7rem;border-radius:8px;border:1px solid #cbd5e1;background:#fff;font-size:.72rem;color:#475569;transition:border-color .15s}.ucv-ctrl:focus-within{border-color:#3b82f6}.ucv-ctrl-icon{font-size:.9rem;color:#94a3b8}.ucv-toggle-group{display:flex;gap:.35rem}.ucv-toggle{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .65rem;border-radius:999px;border:1px solid #e2e8f0;background:#fff;font-size:.68rem;color:#94a3b8;cursor:pointer;transition:all .15s;-webkit-user-select:none;user-select:none}.ucv-toggle--on{background:#f0f9ff;border-color:#93c5fd;color:#1e40af;font-weight:600}.ucv-toggle-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.ucv-pill{font-size:.65rem;padding:.15rem .55rem;border-radius:999px;background:#dbeafe;color:#1e40af;font-weight:600}.ucv-row-count{font-size:.68rem;color:#64748b}.ucv-legend{display:flex;align-items:center;gap:.55rem;padding:.45rem .8rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:.75rem;flex-wrap:wrap}.ucv-legend-item{display:flex;align-items:center;gap:.25rem;font-size:.62rem;color:#64748b}.ucv-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.ucv-legend-sep{width:1px;height:14px;background:#cbd5e1}.ucv-meta-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:.85rem 1rem;margin-bottom:.75rem}.ucv-meta-hdr{display:flex;align-items:center;gap:.5rem;margin-bottom:.6rem}.ucv-section-icon{font-size:1rem;color:#3b82f6}.ucv-section-title{font-size:.82rem;font-weight:700;color:#1e293b}.ucv-meta-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.6rem}.ucv-meta-label{font-size:.58rem;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;margin-bottom:.15rem}.ucv-meta-val{font-size:.76rem;color:#1e293b;font-weight:500;word-break:break-word}.ucv-table-wrap{overflow-x:auto;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:.75rem}.ucv-table{width:100%;border-collapse:collapse;font-size:.75rem;table-layout:auto}.ucv-th{text-align:left;padding:.6rem .65rem;background:#f1f5f9;border-bottom:2px solid #e2e8f0;position:sticky;top:0;z-index:2;vertical-align:bottom}.ucv-th--ext{min-width:110px;font-size:.68rem}.ucv-th-label{font-weight:700;font-size:.7rem;color:#1e293b;display:block;margin-bottom:.2rem}.ucv-th-split{display:flex;gap:.4rem}.ucv-th-tag{font-size:.52rem;padding:.08rem .35rem;border-radius:4px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.ucv-th-tag--baseline{background:#dbeafe;color:#1e40af}.ucv-th-tag--plant{background:#d1fae5;color:#166534}.ucv-table tbody tr{transition:background .12s;border-bottom:1px solid #f1f5f9}.ucv-table tbody tr:hover{background:#f8fafc}.ucv-table tbody tr.ucv-row--match,.ucv-table tbody tr.ucv-row--diff{background:#fff}.ucv-table tbody tr.ucv-row--diff:hover{background:#f8fafc}.ucv-table tbody tr.ucv-row--crit{background:#fff}.ucv-table tbody tr.ucv-row--crit:hover{background:#f8fafc}.ucv-cell-pair{display:flex;flex-direction:column;gap:0}.ucv-cell-baseline,.ucv-cell-plant{padding:.35rem .5rem;font-size:.72rem;line-height:1.4;word-break:break-word;min-height:1.5em;position:relative}.ucv-cell-baseline{background:#dbeafe26;border-bottom:1px dashed #e2e8f0}.ucv-cell-plant{background:#d1fae526}.ucv-cell-micro{display:inline-block;font-size:.5rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.05rem .3rem;border-radius:3px;margin-right:.35rem;vertical-align:middle}.ucv-cell-baseline .ucv-cell-micro{background:#dbeafe;color:#1e40af}.ucv-cell-plant .ucv-cell-micro{background:#d1fae5;color:#166534}.ucv-cell--crit .ucv-cell-baseline,.ucv-cell--crit .ucv-cell-plant{background:#fee2e266}.ucv-cell--diff .ucv-cell-baseline,.ucv-cell--diff .ucv-cell-plant{background:#fef9c366}.ucv-cell-tags{display:flex;flex-wrap:wrap;gap:.2rem;padding:.2rem .5rem .35rem}.ucv-tag{font-size:.52rem;padding:.1rem .35rem;border-radius:4px;font-weight:700;letter-spacing:.03em}.ucv-severity--crit{background:#fecaca;color:#991b1b}.ucv-severity--diff{background:#fef3c7;color:#92400e}.ucv-tag--cat{background:#e0e7ff;color:#3730a3;font-size:.5rem}.ucv-ext{padding:.45rem .55rem;font-size:.68rem;color:#1e293b;border-bottom:1px solid #e2e8f0;border-right:1px solid #e2e8f0;word-break:break-word;vertical-align:top;transition:background .2s}.ucv-ext--match{color:#16a34a}.ucv-ext--multi{white-space:pre-wrap}.ucv-multi-harm{display:flex;flex-direction:column;gap:.3rem}.ucv-multi-item{font-size:.66rem;line-height:1.35}.ucv-harmonized-badge{display:inline-block;font-size:.5rem;padding:.05rem .3rem;border-radius:3px;background:#d1fae5;color:#166534;font-weight:700;margin-left:.3rem}.ucv-harm-text{font-size:.66rem;color:#475569}.ucv-action-bar{display:flex;flex-direction:column;gap:.25rem}.ucv-action-left{display:flex;gap:.35rem;align-items:center}.ucv-action-choice{font-size:.62rem;display:flex;align-items:center;gap:.2rem;cursor:pointer;padding:.15rem .35rem;border-radius:4px;transition:background .1s}.ucv-action-choice:hover{background:#f1f5f9}.ucv-edit-input{font-size:.68rem;padding:.25rem .4rem;border:1px solid #cbd5e1;border-radius:6px;width:100%;min-width:80px}.ucv-dl-btn{display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:600;padding:.5rem 1rem;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#1e293b;cursor:pointer;transition:all .15s}.ucv-dl-btn:hover{background:#f1f5f9;border-color:#3b82f6}.ucv-dl-btn:disabled{opacity:.45;pointer-events:none}.ucv-mcard-section{margin-top:.75rem;padding:1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px}.ucv-mcard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:.85rem;margin-top:.75rem}.ucv-mcard-header{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.5rem}.ucv-severity-badge{font-size:.58rem;padding:.12rem .45rem;border-radius:999px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.ucv-severity-badge.ucv-severity--crit{background:#fecaca;color:#991b1b}.ucv-severity-badge.ucv-severity--diff{background:#fef3c7;color:#92400e}.ucv-mcard-field{font-weight:600;font-size:.78rem;color:#1e293b}.ucv-mcard-values{display:flex;gap:.75rem;margin-bottom:.45rem}.ucv-mcard-box{flex:1;padding:.5rem .6rem;border-radius:8px;border:1px solid #e2e8f0;min-width:0}.ucv-mcard-box--baseline{background:#dbeafe4d;border-color:#bfdbfe}.ucv-mcard-box-label{font-size:.55rem;text-transform:uppercase;letter-spacing:.05em;color:#64748b;margin-bottom:.2rem;font-weight:700}.ucv-mcard-box-val{font-size:.72rem;word-break:break-word;line-height:1.4;color:#1e293b}.ucv-mcard-reason{font-size:.68rem;color:#475569;line-height:1.45;padding:.4rem .5rem;background:#eff6ff;border-radius:6px;border-left:3px solid #3b82f6}[data-theme=dark] .ucv-root{color:#e2e8f0}[data-theme=dark] .ucv-toolbar{background:#1e293b;border-color:#334155}[data-theme=dark] .ucv-select{background:#0f172a;color:#e2e8f0;border-color:#334155}[data-theme=dark] .ucv-legend,[data-theme=dark] .ucv-meta-section{background:#1e293b;border-color:#334155}[data-theme=dark] .ucv-meta-label{color:#64748b}[data-theme=dark] .ucv-meta-val{color:#e2e8f0}[data-theme=dark] .ucv-meta-val--crit{background:#2d1a1a!important;color:#fca5a5}[data-theme=dark] .ucv-meta-val--diff{background:#2d2a1a!important;color:#fcd34d}[data-theme=dark] .ucv-status--match{color:#4ade80;background:#14291e}[data-theme=dark] .ucv-status--diff{color:#fbbf24;background:#2d2a1a}[data-theme=dark] .ucv-status--crit{color:#f87171;background:#2d1a1a}[data-theme=dark] .ucv-sheet-divider{background:linear-gradient(135deg,#1e293b,#1e1b4b);border-color:#4338ca;color:#a5b4fc}[data-theme=dark] .ucv-table-wrap{border-color:#334155}[data-theme=dark] .ucv-th{background:#1e293b;border-color:#334155;color:#e2e8f0}[data-theme=dark] .ucv-th-label{color:#e2e8f0}[data-theme=dark] .ucv-table tbody tr{border-color:#1e293b}[data-theme=dark] .ucv-table tbody tr:hover{background:#1e293b}[data-theme=dark] .ucv-table tbody tr.ucv-row--diff,[data-theme=dark] .ucv-table tbody tr.ucv-row--crit{background:inherit}[data-theme=dark] .ucv-cell--crit .ucv-cell-baseline,[data-theme=dark] .ucv-cell--crit .ucv-cell-plant{background:#991b1b4d}[data-theme=dark] .ucv-cell--diff .ucv-cell-baseline,[data-theme=dark] .ucv-cell--diff .ucv-cell-plant{background:#85770e4d}[data-theme=dark] .ucv-cell-baseline{background:#1e3a8a26;border-color:#334155}[data-theme=dark] .ucv-cell-plant{background:#1665341a}[data-theme=dark] .ucv-ext{color:#e2e8f0;border-color:#334155}[data-theme=dark] .ucv-mcard-section{background:#1e293b;border-color:#334155}[data-theme=dark] .ucv-mcard-box{border-color:#334155}[data-theme=dark] .ucv-mcard-box--baseline{background:#1e3a8a33}[data-theme=dark] .ucv-mcard-box-val,[data-theme=dark] .ucv-mcard-field{color:#e2e8f0}[data-theme=dark] .ucv-mcard-reason{background:#0f172a;color:#94a3b8;border-color:#3b82f6}[data-theme=dark] .ucv-dl-btn{background:#1e293b;border-color:#334155;color:#e2e8f0}[data-theme=dark] .ucv-dl-btn:hover{border-color:#3b82f6}[data-theme=dark] .ucv-section-title{color:#e2e8f0}.ucv-hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;position:relative;z-index:1}.ucv-hero-title{display:flex;align-items:flex-start;gap:.75rem}.ucv-hero-icon{font-size:2rem;opacity:.9;margin-top:2px}.ucv-hero-title h3{margin:0;font-size:1.35rem;font-weight:800;letter-spacing:-.01em;line-height:1.2}.ucv-hero-sub{margin:.3rem 0 0;font-size:.78rem;opacity:.75;font-weight:400}.ucv-hero-vs{display:inline-block;background:#ffffff26;padding:0 6px;border-radius:4px;font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;margin:0 2px}.ucv-score{display:flex;align-items:center;gap:.6rem;background:#ffffff1a;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:.6rem 1rem;border-radius:14px;border:1px solid rgba(255,255,255,.15);flex-shrink:0;position:relative;z-index:1}.ucv-score-ring{width:52px;height:52px;transform:rotate(-90deg)}.ucv-score-trail{fill:none;stroke:#ffffff26;stroke-width:3;stroke-linecap:round}.ucv-score-fill{fill:none;stroke:#4ade80;stroke-width:3;stroke-linecap:round;transition:stroke-dasharray 1s ease-in-out}.ucv-score--match-low .ucv-score-fill{stroke:#f87171}.ucv-score--match-partial .ucv-score-fill{stroke:#fbbf24}.ucv-score--match-100 .ucv-score-fill{stroke:#4ade80}.ucv-score-text{display:flex;flex-direction:column}.ucv-score-pct{font-size:1.5rem;font-weight:800;line-height:1}.ucv-score-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;opacity:.7;font-weight:600}.ucv-hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;position:relative;z-index:1}.ucv-stat-card{display:flex;align-items:center;gap:.6rem;background:#ffffff14;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:.65rem .75rem;transition:background .2s,transform .2s}.ucv-stat-card:hover{background:#ffffff24;transform:translateY(-1px)}.ucv-stat-icon{font-size:1.5rem;opacity:.8}.ucv-stat-card--ok .ucv-stat-icon{color:#86efac}.ucv-stat-card--warn .ucv-stat-icon{color:#fde68a}.ucv-stat-card--crit .ucv-stat-icon{color:#fca5a5}.ucv-stat-body{display:flex;flex-direction:column}.ucv-stat-value{font-size:1.25rem;font-weight:800;line-height:1.1}.ucv-stat-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;opacity:.65;font-weight:500}.ucv-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;padding:.65rem 1.5rem;background:#f8faffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #e2e8f0;position:sticky;top:0;z-index:20}.ucv-toolbar-left,.ucv-toolbar-right{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.ucv-ctrl{display:flex;align-items:center;gap:.35rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.25rem .5rem;transition:border-color .2s,box-shadow .2s}.ucv-ctrl:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.ucv-ctrl-icon{font-size:1rem;color:#64748b}.ucv-select{padding:.25rem .4rem;border:none;background:transparent;font-size:.78rem;font-weight:500;color:#1e293b;cursor:pointer;outline:none}.ucv-toggle-group{display:flex;gap:.35rem;background:#f1f5f9;border-radius:8px;padding:3px}.ucv-toggle{display:flex;align-items:center;gap:.3rem;padding:.25rem .6rem;font-size:.72rem;font-weight:500;cursor:pointer;border-radius:6px;color:#64748b;transition:all .2s;white-space:nowrap}.ucv-toggle input[type=checkbox]{display:none}.ucv-toggle--on{background:#fff;color:#1e293b;box-shadow:0 1px 3px #00000014;font-weight:600}.ucv-toggle-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.ucv-toggle-dot--match{background:#94a3b8;border:2px solid #64748b}.ucv-toggle-dot--diff{background:#fbbf24;border:2px solid #d97706}.ucv-toggle-dot--crit{background:#f87171;border:2px solid #dc2626}.ucv-toggle--on .ucv-toggle-dot--match{background:#22c55e;border-color:#16a34a}.ucv-pill{display:inline-flex;align-items:center;gap:.3rem;font-size:.72rem;font-weight:700;color:#1e40af;background:linear-gradient(135deg,#dbeafe,#eff6ff);padding:.3rem .75rem;border-radius:999px;border:1px solid #93c5fd;white-space:nowrap}.ucv-legend{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap;padding:.5rem 1.5rem;background:#f8fafc;border-bottom:1px solid #e2e8f0;font-size:.7rem;color:#64748b}.ucv-legend-item{display:inline-flex;align-items:center;gap:.3rem}.ucv-legend-dot{width:10px;height:10px;border-radius:3px;flex-shrink:0}.ucv-legend-dot--match{background:#fff;border:2px solid #94a3b8}.ucv-legend-dot--diff{background:#fef9c3;border:2px solid #eab308}.ucv-legend-dot--crit{background:#fee2e2;border:2px solid #ef4444}.ucv-legend-dot--baseline{background:#dbeafe;border:2px solid #3b82f6;border-radius:2px}.ucv-legend-dot--plant{background:#d1fae5;border:2px solid #22c55e;border-radius:2px}.ucv-legend-sep{color:#cbd5e1;font-weight:300}.ucv-section-title{display:flex;align-items:center;gap:.4rem;font-size:.92rem;font-weight:700;margin:1.25rem 1.5rem .6rem;color:#0f172a;letter-spacing:-.01em}.ucv-section-icon{font-size:1.15rem;color:#3b82f6}.ucv-row-count{font-size:.68rem;font-weight:500;color:#64748b;background:#f1f5f9;padding:.15rem .5rem;border-radius:999px;margin-left:.3rem}.ucv-meta-section{margin:0 1.5rem 1rem}.ucv-meta-grid{display:grid;grid-template-columns:150px 1fr 1fr 110px;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;box-shadow:0 1px 3px #0000000a}.ucv-meta-hdr{padding:.55rem .75rem;background:linear-gradient(180deg,#eef2f9,#e8eef6);font-weight:700;font-size:.7rem;color:#1e293b;border-bottom:1px solid #cbd5e1;text-transform:uppercase;letter-spacing:.04em}.ucv-meta-label{padding:.5rem .75rem;font-weight:700;font-size:.72rem;color:#334155;background:#f8fafc;border-bottom:1px solid #e2e8f0;border-right:1px solid #e2e8f0;text-transform:uppercase}.ucv-meta-val{padding:.5rem .75rem;font-size:.76rem;color:#1e293b;border-bottom:1px solid #e2e8f0;border-right:1px solid #e2e8f0;word-break:break-word;transition:background .2s}.ucv-meta-val--crit{background:#fef2f2!important;color:#991b1b;font-weight:600}.ucv-meta-val--diff{background:#fffbeb!important;color:#92400e;font-weight:600}.ucv-meta-status{padding:.5rem .75rem;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #e2e8f0;text-align:center}.ucv-status--match{color:#16a34a;background:#f0fdf4}.ucv-status--diff{color:#d97706;background:#fffbeb}.ucv-status--crit{color:#dc2626;background:#fef2f2}.ucv-sheet-section{margin-bottom:.5rem}.ucv-sheet-divider{display:flex;align-items:center;gap:.4rem;margin:1.2rem 1.5rem .5rem;padding:.6rem 1rem;background:linear-gradient(135deg,#eff6ff,#eef2ff);border:1px solid #c7d2fe;border-radius:10px;font-size:.82rem;font-weight:700;color:#3730a3}.ucv-sheet-divider .material-icons{font-size:1.1rem;color:#6366f1}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:24px;font-family:inherit}.login-card{width:100%;max-width:460px;background:var(--bg-card);border-radius:var(--radius-xl);border:1px solid var(--border);box-shadow:var(--shadow-lg);overflow:hidden}.login-card__header{text-align:center;padding:28px 32px 22px;background:var(--header-surface);color:var(--header-text);border-bottom:1px solid var(--header-border)}.login-card__logos{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:14px}.login-card__logo{object-fit:contain;filter:drop-shadow(0 5px 12px rgba(3,10,21,.18))}.login-card__logo--ntt{height:36px}.login-card__logo--maruti{height:40px}.login-card__title{font-size:1.15rem;font-weight:700;color:var(--header-text);margin:0 0 2px;letter-spacing:.01em}.login-card__subtitle{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;color:var(--header-muted);margin:0;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.login-card__form{padding:24px 32px;display:flex;flex-direction:column;gap:16px}.login-field label{display:block;font-size:.8rem;font-weight:600;color:var(--text);margin-bottom:6px;letter-spacing:.02em}.login-field__input-wrap{display:flex;align-items:center;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-input);transition:border-color var(--transition),box-shadow var(--transition)}.login-field__input-wrap:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.login-field__icon{color:var(--text-muted);font-size:1.15rem;padding:0 0 0 12px}.login-field__input-wrap input{flex:1;border:none;background:transparent;padding:10px 12px;font-size:.88rem;color:var(--text);outline:none;font-family:inherit}.login-card__error{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--danger-light);border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-sm);color:var(--danger);font-size:.82rem}.login-card__error .material-icons{font-size:1.1rem}.login-card__submit{width:100%;padding:11px;border:none;border-radius:var(--radius-sm);background:linear-gradient(135deg,#0050a0 0%,var(--primary) 100%);color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:opacity var(--transition);letter-spacing:.02em}.login-card__submit:hover:not(:disabled){opacity:.9}.login-card__submit:disabled{opacity:.6;cursor:not-allowed}.login-card__divider{position:relative;text-align:center;padding:0 32px;margin-bottom:16px}.login-card__divider:before{content:"";position:absolute;top:50%;left:32px;right:32px;height:1px;background:var(--border)}.login-card__divider span{position:relative;background:var(--bg-card);padding:0 12px;font-size:.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-weight:600}.login-card__quick-access{padding:0 32px 24px;display:flex;flex-direction:column;gap:10px}.quick-login-btn{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);cursor:pointer;transition:border-color .22s ease,box-shadow .22s ease,background .22s ease,transform .22s ease,color .22s ease;text-align:left;position:relative;overflow:hidden}.quick-login-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,var(--brand-maruti-blue),var(--primary));opacity:0;transition:opacity .26s ease;z-index:0}.quick-login-btn>*{position:relative;z-index:1}.quick-login-btn:hover:not(:disabled){border-color:var(--primary);box-shadow:0 8px 24px #0072bc38;transform:translateY(-2px)}.quick-login-btn:hover:not(:disabled):before{opacity:1}.quick-login-btn:hover:not(:disabled) .quick-login-btn__icon,.quick-login-btn:hover:not(:disabled) .quick-login-btn__text strong,.quick-login-btn:hover:not(:disabled) .quick-login-btn__text span,.quick-login-btn:hover:not(:disabled) .quick-login-btn__arrow{color:#fff}.quick-login-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 12px #0072bc2e}.quick-login-btn:disabled{opacity:.5;cursor:not-allowed}.quick-login-btn__icon{font-size:1.5rem;color:var(--primary)}.quick-login-btn__text{flex:1;display:flex;flex-direction:column;gap:2px}.quick-login-btn__text strong{font-size:.85rem;color:var(--text)}.quick-login-btn__text span{font-size:.74rem;color:var(--text-muted)}.quick-login-btn__arrow{font-size:1.1rem;color:var(--text-muted);transition:transform var(--transition)}.quick-login-btn:hover .quick-login-btn__arrow{transform:translate(2px)}.login-card__footer{text-align:center;padding:12px 32px;font-size:.74rem;border-top:1px solid var(--border);background:linear-gradient(180deg,#ffffffeb,#ffffffd6),linear-gradient(135deg,#1f4fd60a,#8b6f470a)}.login-card__footer-brand{display:inline-flex;align-items:center;gap:6px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--primary)}:root[data-theme=dark] .login-card__footer{background:linear-gradient(180deg,#1a2233f2,#0f1419e6),linear-gradient(135deg,#00a5e00f,#0050a00f)}:root[data-theme=dark] .login-card__divider span{background:var(--bg-card)}.gdt-page{gap:12px}.gdt-hero{display:flex;align-items:stretch;justify-content:space-between;gap:16px}.gdt-hero .panel__heading{max-width:760px}.gdt-hero__metrics{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr));gap:10px;min-width:min(100%,520px)}.gdt-hero__metrics div,.gdt-meta-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-xs, 0 1px 2px rgba(15, 23, 42, .06))}.gdt-hero__metrics div{display:grid;gap:6px;align-content:center;border-radius:8px;padding:12px}.gdt-hero__metrics span,.gdt-meta-card>span,.gdt-sop-row span,.gdt-event-list span,.gdt-number-control span{color:var(--text-muted);font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.gdt-hero__metrics strong{color:var(--text);font-size:1.3rem;line-height:1}.gdt-workbench{display:grid;gap:14px}.gdt-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.gdt-upload-shell{position:relative;display:grid;gap:8px}.gdt-upload{min-height:128px;display:flex;align-items:center;gap:14px;padding:18px;border:1.5px dashed var(--border-strong);border-radius:8px;background:var(--surface-muted);color:var(--text);cursor:pointer;transition:border-color var(--transition),background var(--transition),box-shadow var(--transition)}.gdt-upload:hover,.gdt-upload--ready{border-color:var(--primary);background:var(--primary-soft);box-shadow:var(--shadow-card-hover)}.gdt-upload input{display:none}.gdt-upload__icon{display:inline-flex;width:46px;height:46px;align-items:center;justify-content:center;border-radius:8px;background:#fff;color:var(--primary);box-shadow:var(--shadow-sm);flex:0 0 auto}.gdt-upload__body{display:grid;gap:4px;min-width:0}.gdt-upload__body strong,.gdt-meta-card strong,.gdt-sop-row strong,.gdt-diff-card strong{color:var(--text)}.gdt-upload__body span,.gdt-upload__body small,.gdt-meta-card small,.gdt-diff-card small{color:var(--text-muted)}.gdt-upload-clear{justify-self:end;display:inline-flex;align-items:center;gap:4px;min-height:32px;padding:5px 10px;border:1px solid rgba(215,38,61,.22);border-radius:7px;background:#d7263d0f;color:var(--danger);font-size:.78rem;font-weight:800;cursor:pointer}.gdt-upload-clear .material-icons{font-size:17px}.gdt-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:space-between}.gdt-controls .button--active{border-color:#0072bc47;background:var(--primary-soft);color:var(--primary)}.gdt-advanced-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.gdt-segment{display:inline-flex;gap:4px;padding:4px;border-radius:8px;background:var(--surface-muted);border:1px solid var(--border)}.gdt-segment__btn{border:0;border-radius:6px;background:transparent;color:var(--text-muted);padding:8px 12px;cursor:pointer;font-weight:700}.gdt-segment__btn--active{background:var(--surface-strong);color:var(--primary);box-shadow:var(--shadow-xs)}.gdt-number-control{display:inline-flex;align-items:center;gap:8px}.gdt-number-control input{width:70px;border:1px solid var(--border);border-radius:6px;padding:8px 10px;background:var(--surface);color:var(--text)}.gdt-filter{min-height:40px;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted);color:var(--text);font-size:.88rem;font-weight:800;cursor:pointer}.gdt-filter input{width:16px;height:16px;accent-color:var(--primary)}.gdt-filter .material-icons{color:var(--primary);font-size:1rem}.gdt-filter--active{border-color:#10b98161;background:#10b9811a;color:#047857}.gdt-actions{display:inline-flex;gap:8px;margin-left:auto}.gdt-stop-button{border-color:#be233857;color:var(--danger);background:#d7263d0f}.gdt-stop-button:hover:not(:disabled){border-color:var(--danger);background:var(--danger);color:#fff}.gdt-history-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.gdt-history-table{display:grid;gap:6px}.gdt-history-table__head,.gdt-history-table__row{display:grid;grid-template-columns:100px 100px 1.4fr minmax(160px,.8fr) 150px;gap:10px;align-items:center}.gdt-history-table__head{padding:0 12px 4px}.gdt-history-table__head span{color:var(--text-muted);font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.gdt-history-table__row{min-height:48px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.gdt-history-table__row>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gdt-history-table__row>span:first-child{color:var(--primary);font-weight:800}.gdt-history-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px}.gdt-history-empty{display:grid;gap:8px;justify-items:center;text-align:center;padding:24px 18px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.gdt-history-empty .material-icons{color:var(--primary);font-size:2rem}.gdt-history-empty strong{color:var(--text)}.gdt-history-empty p{margin:0;color:var(--text-muted)}.gdt-progress{display:grid;gap:14px;overflow:hidden}.gdt-progress__bar{height:8px;overflow:hidden;border-radius:999px;background:var(--surface-muted);border:1px solid var(--border)}.gdt-progress__bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--accent),var(--success),var(--primary));background-size:220% 100%;transition:width .52s cubic-bezier(.22,1,.36,1);animation:gdt-progress-flow 2.2s linear infinite}.gdt-progress__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--border);border-radius:8px;background:linear-gradient(90deg,#0072bc0f,#10b9810d,#fff0);animation:gdt-progress-head-fade .52s ease both}.gdt-progress__head div{display:grid;gap:4px}.gdt-progress__head span{color:var(--text-muted)}.gdt-progress__metrics{display:grid!important;grid-template-columns:repeat(3,minmax(78px,1fr));gap:8px!important;margin-left:auto;min-width:min(100%,320px)}.gdt-progress__metrics span{display:grid;gap:2px;padding:8px 10px;border:1px solid rgba(0,114,188,.14);border-radius:7px;background:#ffffffa3;color:var(--text-muted);font-size:.72rem;font-weight:800}.gdt-progress__metrics strong{color:var(--text);font-size:.98rem;line-height:1}.gdt-spinner{width:28px;height:28px;border:3px solid rgba(0,165,224,.18);border-top-color:var(--primary);border-radius:50%;animation:gdt-spin 1.15s cubic-bezier(.5,0,.5,1) infinite}.gdt-step-rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.gdt-step{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;min-height:54px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted);color:var(--text-muted);font-weight:700;padding:10px 12px;transition:border-color .28s ease,background .28s ease,box-shadow .28s ease,transform .28s ease}.gdt-step i{position:absolute;inset:auto 0 0 0;height:3px;background:transparent}.gdt-step--current{border-color:var(--primary);background:var(--primary-soft);color:var(--primary);box-shadow:0 8px 24px #0072bc1f;transform:translateY(-1px)}.gdt-step--current i{background:linear-gradient(90deg,transparent,var(--primary),transparent);animation:gdt-step-scan 1.45s ease-in-out infinite}.gdt-step--complete{border-color:#10b98152;background:#10b98114;color:#047857}.gdt-step--complete i{background:#10b981b8}.gdt-step__label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gdt-step-icon{width:24px;height:24px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.gdt-step-icon--current{animation:gdt-step-icon-pulse 1.25s ease-in-out infinite}.gdt-event-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}.gdt-event-list div,.gdt-error{border-radius:8px;border:1px solid var(--border);background:var(--surface-muted);padding:10px 12px}.gdt-event-list div{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr);gap:5px 10px;align-items:center;min-height:62px;border-color:#0072bc1f;background:linear-gradient(135deg,#fffffff5,#f8fbffeb);box-shadow:0 8px 20px #0b25450d;animation:gdt-event-in .36s ease both}.gdt-event-list div:before{content:"";position:absolute;inset:10px auto 10px 0;width:3px;border-radius:999px;background:var(--primary)}.gdt-event-list div>span,.gdt-event-list div>strong{min-width:0}.gdt-event-list div>span:not(.material-icons){grid-column:2;color:var(--text-muted);font-size:.68rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.gdt-event-list div>strong{grid-column:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gdt-error{display:flex;align-items:center;gap:8px;border-color:#d7263d47;background:#d7263d14;color:var(--danger);font-weight:700}.gdt-summary-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(280px,.9fr);gap:12px}.gdt-meta-card{display:grid;gap:10px;border-radius:8px;padding:14px}.gdt-meta-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.gdt-meta-card dl div{display:grid;gap:3px;padding:8px;border-radius:6px;background:var(--surface-muted)}.gdt-meta-card dt{color:var(--text-muted);font-size:.72rem;font-weight:700;margin:0}.gdt-meta-card dd{margin:0;color:var(--text);font-weight:700;word-break:break-word}.gdt-meta-card--summary{align-content:start}.gdt-change-summary{display:grid;gap:10px}.gdt-change-summary__insights{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px}.gdt-insight-card{display:grid;gap:6px;align-content:start;padding:10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-muted)}.gdt-insight-card--missing{border-color:#d7263d38;background:#d7263d0e}.gdt-insight-card--hidden_text{border-color:#7c3aed3d;background:#7c3aed0e}.gdt-insight-card--added{border-color:#10b98138;background:#10b9810e}.gdt-insight-card--misaligned{border-color:#f59e0b42;background:#f59e0b11}.gdt-insight-card--alert{box-shadow:inset 0 0 0 1px #7c3aed2e}.gdt-insight-card__head{display:flex;align-items:center;gap:8px}.gdt-insight-card__head span,.gdt-drawing-overlay__title span{color:var(--text-muted);font-size:.72rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.gdt-insight-card p{margin:0;color:var(--text);font-size:.86rem;line-height:1.32}.gdt-insight-card>strong{color:var(--primary-strong, var(--primary));font-size:.78rem;line-height:1.3}.gdt-insight-card small{color:var(--text-muted);font-size:.76rem;font-weight:700}.gdt-insight-card__head+p{min-height:0}.gdt-change-summary__stats strong{color:var(--text);font-size:1.15rem;line-height:1.1}.gdt-change-summary__stats small{color:var(--text-muted);font-weight:700}.gdt-change-summary__hidden--found{border-color:#d7263d52!important;background:#d7263d14!important}.gdt-change-summary__findings{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:6px}.gdt-change-summary__findings p{margin:0;padding:8px 10px;border:1px solid rgba(245,158,11,.24);border-radius:6px;background:#f59e0b14;color:var(--text);font-size:.82rem;line-height:1.35}.gdt-user-insights{display:grid;gap:12px}.gdt-user-insights__table{overflow-x:auto;border:1px solid var(--border);border-radius:8px;background:#fff}.gdt-user-insights__head,.gdt-user-insights__row{display:grid;grid-template-columns:96px 180px minmax(320px,1fr) 190px;gap:0;min-width:860px}.gdt-user-insights__head{background:#f8fbfff5;border-bottom:1px solid var(--border)}.gdt-user-insights__head span{padding:10px 12px;color:var(--text);font-size:.78rem;font-weight:900;text-transform:uppercase}.gdt-user-insights__row{align-items:center;border-bottom:1px solid var(--border)}.gdt-user-insights__row:last-child{border-bottom:none}.gdt-user-insights__row>strong,.gdt-user-insights__row>span,.gdt-user-insights__row>p{padding:10px 12px}.gdt-user-insights__row>strong{color:var(--text)}.gdt-user-insights__row>p{margin:0;color:var(--text);line-height:1.35}.gdt-user-insights__empty{padding:16px;color:var(--text-muted);font-weight:800}.gdt-change-chip{justify-self:start;display:inline-flex;align-items:center;min-height:28px;margin-left:12px;padding:4px 9px;border-radius:999px;border:1px solid var(--border);font-size:.76rem;font-weight:900}.gdt-change-chip--missing{border-color:#dc26264d;background:#dc262614;color:#991b1b}.gdt-change-chip--added{border-color:#05966952;background:#0596691a;color:#065f46}.gdt-change-chip--misaligned{border-color:#f59e0b61;background:#f59e0b1f;color:#92400e}.gdt-change-chip--hidden_text{border-color:#7c3aed52;background:#7c3aed1a;color:#5b21b6}.gdt-reference-drawing{display:grid;grid-template-columns:74px minmax(0,1fr);align-items:center;gap:8px;margin:8px 10px;padding:6px;border:1px solid rgba(0,114,188,.18);border-radius:7px;background:#f8fbffe6;color:var(--primary);font-size:.76rem;font-weight:900;cursor:pointer;text-align:left}.gdt-reference-drawing img{width:74px;height:48px;object-fit:cover;border-radius:5px;background:#fff;border:1px solid rgba(0,114,188,.12)}.gdt-reference-drawing .material-icons{justify-self:center}.gdt-drawing-panel{display:grid;gap:12px}.gdt-drawing-panel__heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.gdt-drawing-overlay{display:grid;gap:8px}.gdt-drawing-overlay__title{display:flex;align-items:center;justify-content:space-between;gap:10px}.gdt-drawing-overlay__title strong{color:var(--text)}.gdt-drawing-overlay__stage{position:relative;overflow:hidden;width:100%;border:1px solid var(--border);border-radius:8px;background:#fff;box-shadow:inset 0 0 0 1px #0f172a08;cursor:crosshair}.gdt-drawing-overlay__stage img{width:100%;height:100%;object-fit:contain;display:block;-webkit-user-select:none;user-select:none}.gdt-region-box,.gdt-region-neighbor,.gdt-region-delta,.gdt-context-cell,.gdt-context-change{position:absolute;box-sizing:border-box}.gdt-region-box{z-index:3;border:1px solid rgba(0,72,110,.48);background:#f59e0b2e;color:#083344;display:flex;align-items:flex-start;justify-content:flex-start;padding:2px 4px;font-size:.66rem;font-weight:900;cursor:pointer}.gdt-region-box span{border-radius:4px;padding:1px 4px;background:#ffffffb8}.gdt-region-box--low{background:#ffd60a47}.gdt-region-box--medium{background:#f59e0b3d;border-color:#92400e73}.gdt-region-box--high{background:#d7263d38;border-color:#7f1d1d80}.gdt-region-box--type-added{background:#10b98133;border-color:#04785775}.gdt-region-box--type-missing{background:#dc26262e;border-color:#7f1d1d75}.gdt-region-box--type-misaligned{background:#f59e0b38;border-color:#92400e80}.gdt-region-box--type-hidden_text{background:#7c3aed29;border-color:#5b21b67a}.gdt-region-box--nearby{box-shadow:inset 0 0 0 1px #0072bc52}.gdt-region-box--selected{z-index:5;outline:2px solid #083344;outline-offset:1px;background:#00a5e038}.gdt-region-neighbor{z-index:2;pointer-events:none;border:1px solid rgba(0,114,188,.28);background:#0072bc0e}.gdt-region-neighbor span{position:absolute;top:2px;left:3px;color:#083344b8;font-size:.64rem;font-weight:900}.gdt-region-neighbor--selected{border-color:#083344ad;background:#00a5e01f}.gdt-region-delta,.gdt-context-change{z-index:4;pointer-events:none;border:1px solid rgba(127,29,29,.34);background:#d7263d38}.gdt-region-delta--added,.gdt-context-change--added{border-color:#04785761;background:#10b98138}.gdt-region-delta--missing,.gdt-region-delta--hidden_text,.gdt-context-change--missing,.gdt-context-change--hidden_text{border-color:#7f1d1d61;background:#d7263d33}.gdt-region-delta--misaligned,.gdt-context-change--misaligned{border-color:#92400e61;background:#f59e0b3d}.gdt-status-row{display:flex;flex-wrap:wrap;gap:8px}.gdt-status{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:999px;padding:4px 10px;border:1px solid transparent;font-size:.74rem;font-weight:800;line-height:1.2}.gdt-status strong{color:inherit}.gdt-status--ok,.gdt-status--low{background:#10b9811a;border-color:#10b9813d;color:#047857}.gdt-status--ng,.gdt-status--high{background:#d7263d1a;border-color:#d7263d3d;color:#b91c1c}.gdt-status--review,.gdt-status--medium{background:#f59e0b1f;border-color:#f59e0b47;color:#92400e}.gdt-sop-table{display:grid;gap:8px}.gdt-sop-launch{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.gdt-sop-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#0f172aa3;display:flex;align-items:center;justify-content:center;padding:14px}.gdt-sop-modal{width:min(1320px,98vw);max-height:92vh;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border-radius:10px;background:var(--surface);box-shadow:0 22px 70px #0f172a47}.gdt-sop-modal__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border);background:linear-gradient(90deg,#0072bc12,#fff0)}.gdt-sop-modal__header h2{margin:0;color:var(--text);font-size:1.05rem}.gdt-sop-modal__header span{color:var(--text-muted);font-size:.78rem;font-weight:800}.gdt-sop-modal__body{min-height:0;overflow:auto;padding:14px}.gdt-sop-row{display:grid;grid-template-columns:86px 1.2fr 1.4fr 1.2fr;gap:12px;align-items:start;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.gdt-sop-row div:nth-child(2){display:grid;gap:4px}.gdt-sop-row p{margin:0;color:var(--text-muted);line-height:1.45}.gdt-heatmap{display:grid;gap:6px;overflow-x:auto;padding-bottom:4px}.gdt-tile-tab{display:grid;gap:12px}.gdt-tile-tab__head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.gdt-tile-tab__head>div:first-child{display:grid;gap:3px}.gdt-tile-tab__head strong{color:var(--text)}.gdt-tile-tab__head span{color:var(--text-muted);font-size:.84rem}.gdt-heatmap__row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(76px,1fr);gap:6px}.gdt-tile-cell{min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid transparent;color:var(--text);font-size:.74rem;font-weight:800}.gdt-tile-cell--ok{background:#fff;border-color:#0f172a1a;color:#0f172ab8}.gdt-tile-cell--low{background:#f59e0b24;border-color:#f59e0b52}.gdt-tile-cell--medium{background:#f2547429;border-color:#f2547447}.gdt-tile-cell--high{background:#d7263d33;border-color:#d7263d61}.gdt-tile-cell--type-added{background:#0596693d;border-color:#04785794;color:#064e3b}.gdt-tile-cell--type-missing{background:#dc262629;border-color:#7f1d1d57}.gdt-tile-cell--type-misaligned{background:#f59e0b33;border-color:#92400e61}.gdt-tile-cell--type-hidden_text{background:#7c3aed29;border-color:#5b21b657}.gdt-diff-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.gdt-diff-card{border:1px solid var(--border);border-radius:8px;background:var(--surface);overflow:hidden;box-shadow:var(--shadow-xs)}.gdt-diff-card__image{aspect-ratio:16 / 9;display:flex;align-items:center;justify-content:center;background:#fff;border-bottom:1px solid var(--border);overflow:hidden}.gdt-diff-card__image img{width:100%;height:100%;object-fit:contain}.gdt-diff-card__body{display:grid;gap:7px;padding:12px}.gdt-diff-card__body p{margin:0;color:var(--text-muted);line-height:1.45}.gdt-export-row{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}@keyframes gdt-spin{to{transform:rotate(360deg)}}@keyframes gdt-progress-flow{to{background-position:-220% 0}}@keyframes gdt-progress-head-fade{0%{opacity:.72;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes gdt-step-scan{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes gdt-step-icon-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes gdt-event-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.gdt-tile-cell--clickable{cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.gdt-tile-cell--clickable:hover{transform:scale(1.08);box-shadow:0 0 0 2px var(--primary);z-index:2}.gdt-diff-card--clickable{cursor:pointer;transition:box-shadow .15s ease,transform .15s ease}.gdt-diff-card--clickable:hover{box-shadow:0 4px 18px #0000001f;transform:translateY(-2px)}.gdt-tile-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#000000a6;display:flex;align-items:center;justify-content:center;padding:8px;animation:gdt-overlay-fadein .2s ease}@keyframes gdt-overlay-fadein{0%{opacity:0}to{opacity:1}}.gdt-tile-detail{background:var(--surface, #fff);border-radius:10px;box-shadow:0 20px 60px #00000040;width:99vw;height:98vh;display:flex;flex-direction:column;overflow:hidden;animation:gdt-detail-slidein .22s ease}@keyframes gdt-detail-slidein{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}.gdt-tile-detail__header{display:flex;align-items:flex-start;justify-content:space-between;padding:8px 14px;border-bottom:1px solid var(--border);gap:12px;flex-shrink:0}.gdt-tile-detail__summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex:1;min-width:0}.gdt-tile-detail__header h2{margin:0;font-size:1.1rem;font-weight:800;letter-spacing:-.02em}.gdt-tile-detail__zone{font-size:.82rem;color:var(--text-muted);text-transform:capitalize}.gdt-tile-detail__ratio{font-size:.78rem;color:var(--text-muted);font-weight:600;background:#d7263d14;padding:2px 8px;border-radius:6px}.gdt-tile-detail__chip{display:inline-flex;align-items:center;gap:5px;max-width:min(580px,100%);padding:5px 8px;border:1px solid rgba(0,114,188,.12);border-radius:7px;background:#f8fbfff5;color:var(--text-muted);font-size:.76rem;line-height:1.25}.gdt-tile-detail__chip strong{color:var(--text)}.gdt-tile-detail__chip--wide{overflow:hidden;text-overflow:ellipsis}.gdt-tile-detail__header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-shrink:0}.gdt-nearby-button{min-height:36px;white-space:nowrap}.gdt-tile-detail__close{background:none;border:none;cursor:pointer;color:var(--text-muted);border-radius:50%;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0}.gdt-tile-detail__close:hover{background:#0000000f}.gdt-tile-detail__hidden--found{border-color:#d7263d57!important;background:#d7263d14!important}.gdt-nearby-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10001;display:flex;align-items:center;justify-content:center;padding:16px;background:#0f172a8f}.gdt-nearby-modal{width:min(1500px,96vw);max-height:90vh;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border-radius:10px;background:var(--surface);box-shadow:0 22px 70px #0f172a52}.gdt-nearby-modal__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border);background:linear-gradient(90deg,#0072bc12,#fff0)}.gdt-nearby-modal__header h2{margin:0;color:var(--text);font-size:1.02rem}.gdt-nearby-modal__header span{color:var(--text-muted);font-size:.78rem;font-weight:800}.gdt-nearby-modal__body{min-height:0;overflow:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px}.gdt-context-panel{margin:0;display:grid;gap:5px;min-width:0}.gdt-context-panel figcaption{color:var(--text);font-size:.82rem;font-weight:800}.gdt-context-viewport{position:relative;overflow:hidden;width:100%;max-height:28vh;border:1px solid var(--border);border-radius:6px;background:#fff}.gdt-context-layer{position:absolute;overflow:hidden}.gdt-context-layer img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:fill;display:block;cursor:zoom-in;-webkit-user-select:none;user-select:none}.gdt-context-cell{z-index:2;pointer-events:none;border:1px solid rgba(0,72,110,.2);background:transparent}.gdt-context-cell span{position:absolute;top:2px;left:3px;color:#083344bf;font-size:.66rem;font-weight:900}.gdt-context-cell--selected{z-index:3;border:2px solid rgba(8,51,68,.78);background:transparent}.gdt-context-change{z-index:4}.gdt-context-open{justify-self:end;display:inline-flex;align-items:center;gap:4px;min-height:30px;padding:4px 9px;border:1px solid rgba(0,114,188,.18);border-radius:7px;background:#fff;color:var(--primary);font-size:.76rem;font-weight:800;cursor:pointer}.gdt-context-open .material-icons{font-size:16px}.gdt-evidence-preview{position:relative;overflow:hidden;width:100%;height:100%;background:#fff}.gdt-evidence-preview .gdt-context-layer img{cursor:inherit}.gdt-evidence-preview .gdt-context-cell{border-color:#00486e38;background:#ffffff05}.gdt-evidence-preview .gdt-context-cell--selected{border-color:#083344b8;background:#ffd60a14}.gdt-focused-change{display:grid;grid-template-rows:auto minmax(0,1fr);gap:4px;padding:4px 6px 6px;flex:1;min-height:0;overflow:hidden}.gdt-focused-change__toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.gdt-view-toggle{display:inline-flex;gap:4px;padding:3px;border:1px solid var(--border);border-radius:8px;background:#fff}.gdt-view-toggle button{display:inline-flex;align-items:center;gap:4px;min-height:30px;padding:4px 9px;border:none;border-radius:6px;background:transparent;color:var(--text-muted);font-size:.76rem;font-weight:800;cursor:pointer}.gdt-view-toggle button.is-active{background:var(--primary-soft);color:var(--primary)}.gdt-view-toggle .material-icons{font-size:16px}.gdt-change-legend{display:flex;flex-wrap:wrap;gap:6px}.gdt-change-legend__item{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 8px;border:1px solid var(--border);background:var(--surface-muted);color:var(--text);font-size:.76rem;font-weight:800}.gdt-change-legend__item:before{content:"";width:10px;height:10px;border-radius:3px}.gdt-change-legend__item--missing:before{background:#dc2626}.gdt-change-legend__item--added:before{background:#10b981}.gdt-change-legend__item--misaligned:before{background:#f59e0b}.gdt-change-legend__item--hidden:before{background:#7c3aed}.gdt-focused-change__grid{display:grid;gap:5px;min-height:0;overflow:auto}.gdt-focused-change__grid--vertical{grid-template-columns:1fr}.gdt-focused-change__grid--horizontal{grid-template-columns:repeat(3,minmax(0,1fr))}.gdt-focused-change__figure{display:grid;grid-template-rows:auto minmax(0,1fr);gap:2px;min-width:0;min-height:0;margin:0}.gdt-focused-change__figure figcaption{display:flex;align-items:baseline;gap:8px;min-width:0;flex-wrap:wrap}.gdt-focused-change__grid--vertical .gdt-focused-change__figure figcaption{min-height:0}.gdt-focused-change__grid--vertical .gdt-focused-change__figure{grid-template-rows:auto minmax(0,1fr);min-height:clamp(260px,31vh,380px)}.gdt-focused-change__grid--horizontal .gdt-focused-change__figure{min-height:min(62vh,560px)}.gdt-focused-change__grid--horizontal .gdt-focused-change__figure figcaption{display:grid;gap:2px}.gdt-focused-change__figure figcaption strong{color:var(--text);font-size:.78rem}.gdt-focused-change__figure figcaption span{color:var(--text-muted);font-size:.68rem}.gdt-focused-change__image{min-height:0;height:100%;border:1px solid var(--border);border-radius:4px;background:#fff;overflow:hidden;cursor:zoom-in;padding:0}.gdt-focused-change__image img{width:100%;height:100%;object-fit:cover;display:block}.gdt-focused-change__grid--horizontal .gdt-focused-change__image img{object-fit:contain}.gdt-tile-detail__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:8px 12px 12px;flex:1;min-height:0}@media (max-width: 920px){.gdt-tile-detail__grid{grid-template-columns:1fr;overflow-y:auto}}.gdt-tile-detail__figure{margin:0;text-align:center;display:flex;flex-direction:column;min-height:0}.gdt-tile-detail__figure figcaption{font-weight:700;font-size:.78rem;margin-bottom:4px;color:var(--text);letter-spacing:.01em;flex-shrink:0}.gdt-tile-detail__img-wrap{background:#fff;border:1px solid var(--border);border-radius:6px;overflow:hidden;display:flex;align-items:center;justify-content:center;flex:1;min-height:0}.gdt-tile-detail__img-wrap img{width:100%;height:100%;object-fit:contain;display:block;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.gdt-tile-detail__img-wrap .material-icons{font-size:48px;color:var(--text-muted);opacity:.4}.gdt-zoom-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10005;background:#000000eb;display:flex;flex-direction:column;align-items:center}.gdt-zoom-toolbar{display:flex;align-items:center;gap:6px;padding:10px 18px;background:#1e1e1ed9;border-radius:0 0 10px 10px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1}.gdt-zoom-toolbar button{background:transparent;border:none;color:#fff;cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center}.gdt-zoom-toolbar button:hover{background:#ffffff26}.gdt-zoom-level{color:#ffffffb3;font-size:.82rem;min-width:48px;text-align:center;font-variant-numeric:tabular-nums}.gdt-zoom-canvas{flex:1;width:100%;overflow:hidden;display:flex;align-items:center;justify-content:center;touch-action:none;-webkit-user-select:none;user-select:none}.gdt-zoom-canvas img{max-width:none;max-height:none;transition:transform .08s ease-out;pointer-events:none}@media (max-width: 1100px){.gdt-hero,.gdt-summary-grid,.gdt-change-summary__insights{grid-template-columns:1fr}.gdt-hero{display:grid}.gdt-upload-grid,.gdt-summary-grid,.gdt-sop-row{grid-template-columns:1fr}.gdt-progress__head{display:grid}.gdt-progress__metrics{margin-left:0}.gdt-nearby-modal__body,.gdt-focused-change__grid{grid-template-columns:1fr}}@media (max-width: 760px){.gdt-hero__metrics,.gdt-step-rail{grid-template-columns:1fr}.gdt-controls{align-items:stretch}.gdt-segment,.gdt-actions,.gdt-advanced-controls,.gdt-filter,.gdt-number-control{width:100%}.gdt-segment__btn,.gdt-actions .button{flex:1}.gdt-filter{justify-content:center}.gdt-advanced-controls{align-items:stretch}.gdt-history-heading,.gdt-drawing-panel__heading,.gdt-drawing-overlay__title{display:grid;grid-template-columns:1fr}.gdt-progress__metrics{grid-template-columns:1fr}.gdt-history-table{overflow-x:auto}.gdt-history-table__head,.gdt-history-table__row{min-width:760px}}.dashboard-page{gap:12px}.dashboard-hero{display:flex;align-items:center;justify-content:space-between;gap:16px}.dashboard-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.dashboard-filter{min-height:40px;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted);color:var(--text);font-size:.88rem;font-weight:800;cursor:pointer}.dashboard-filter input{width:16px;height:16px;accent-color:var(--primary)}.dashboard-filter .material-icons{color:var(--primary);font-size:1rem}.dashboard-filter--active{border-color:#10b98161;background:#10b9811a;color:#047857}.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.dashboard-kpi,.dashboard-workflow-card,.dashboard-insight,.dashboard-error,.dashboard-empty,.dashboard-history-detail{border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:var(--shadow-xs, 0 1px 2px rgba(15, 23, 42, .06))}.dashboard-kpi{display:grid;gap:8px;padding:16px}.dashboard-kpi span,.dashboard-workflow-card__body>span,.dashboard-table__head span{color:var(--text-muted);font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.dashboard-kpi strong{color:var(--text);font-size:2rem;line-height:1}.dashboard-kpi small,.dashboard-insight small,.dashboard-workflow-card__stats span{color:var(--text-muted)}.dashboard-main-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:12px;align-items:start}.dashboard-workflow-list,.dashboard-insight-list{display:grid;gap:10px}.dashboard-workflow-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px}.dashboard-workflow-card__icon{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:var(--primary-soft);color:var(--primary)}.dashboard-workflow-card__body{display:grid;gap:5px;min-width:0}.dashboard-workflow-card__body strong,.dashboard-insight strong,.dashboard-empty strong{color:var(--text)}.dashboard-workflow-card__stats{display:flex;flex-wrap:wrap;gap:8px}.dashboard-status,.dashboard-severity{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid transparent;padding:4px 10px;font-size:.72rem;font-weight:800;line-height:1.15;white-space:nowrap}.dashboard-status--pass,.dashboard-severity--low{background:#10b9811a;border-color:#10b9813d;color:#047857}.dashboard-status--ng,.dashboard-severity--high{background:#d7263d1a;border-color:#d7263d3d;color:#b91c1c}.dashboard-status--review,.dashboard-severity--review,.dashboard-severity--medium{background:#f59e0b1f;border-color:#f59e0b47;color:#92400e}.dashboard-insight{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;padding:12px}.dashboard-insight div{display:grid;gap:5px}.dashboard-insight p,.dashboard-empty p{margin:0;color:var(--text-muted);line-height:1.45}.dashboard-table{display:grid;gap:6px}.dashboard-table__head,.dashboard-table__row{display:grid;grid-template-columns:1.1fr 100px 1.4fr minmax(120px,.8fr) 120px 150px;gap:10px;align-items:center}.dashboard-table__head{padding:0 12px 4px}.dashboard-table__row{min-height:48px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.dashboard-table__row>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.dashboard-table__row>span:first-child{display:inline-flex;align-items:center;gap:8px;font-weight:700}.dashboard-table__row .material-icons{color:var(--primary);font-size:1rem}.dashboard-row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px}.dashboard-empty--table{margin-top:6px}.dashboard-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.dashboard-detail-grid>div{min-width:0;display:grid;gap:6px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.dashboard-detail-grid span{color:var(--text-muted);font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.dashboard-detail-grid strong:not(.dashboard-status){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.dashboard-detail-grid .dashboard-status{justify-self:start}.dashboard-history-summary{margin:12px 0 0;color:var(--text);line-height:1.55}.dashboard-history-findings{display:grid;gap:8px;margin-top:12px}.dashboard-history-findings article{display:grid;gap:4px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.dashboard-history-findings strong{color:var(--text)}.dashboard-history-findings p{margin:0;color:var(--text-muted);line-height:1.45}.dashboard-error{display:flex;align-items:center;gap:8px;padding:12px 14px;border-color:#d7263d47;background:#d7263d14;color:var(--danger);font-weight:700}.dashboard-empty{display:grid;gap:8px;justify-items:center;text-align:center;padding:28px 18px;background:var(--surface-muted)}.dashboard-empty .material-icons{color:var(--primary);font-size:2rem}.psr-page{gap:12px}.psr-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center}.psr-hero h2{margin:8px 0 6px;font-size:clamp(1.5rem,2vw,2rem)}.psr-hero p,.psr-muted{margin:0;color:var(--text-muted);line-height:1.55}.psr-hero__metrics{display:grid;gap:8px;min-width:220px}.psr-hero__metrics span,.psr-stat,.psr-alert,.psr-file-list__item,.psr-batch__controls select,.psr-search,.psr-email-form input,.psr-email-form textarea,.psr-edit-row input{border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.psr-hero__metrics span{padding:9px 12px;color:var(--primary-strong);font-weight:800;font-size:.82rem}.psr-upload .panel__heading h3,.psr-batch h3,.psr-result h3,.psr-modal h3{display:inline-flex;align-items:center;gap:8px}.psr-dropzone{cursor:pointer}.psr-dropzone--active{border-color:var(--primary);background:var(--primary-soft)}.psr-file-list{display:grid;gap:8px;margin-top:12px}.psr-file-list__item{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px 12px}.psr-file-list__item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.psr-file-list__item>.material-icons{color:var(--primary)}.psr-actions,.psr-batch__controls,.psr-correction-actions,.psr-result__tools,.psr-edit-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.psr-actions{margin-top:12px}.psr-icon-button{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-muted);cursor:pointer}.psr-icon-button:hover{color:var(--danger);border-color:#d7263d3d}.psr-summary-dropdown{position:relative;display:inline-flex}.psr-summary-dropdown__arrow{font-size:1.1rem!important;margin-left:-2px}.psr-summary-dropdown__menu{position:absolute;top:100%;right:0;z-index:100;margin-top:4px;min-width:200px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-strong);padding:4px 0}.psr-summary-dropdown__menu button{display:flex;align-items:center;gap:10px;width:100%;padding:10px 16px;border:none;background:none;font:inherit;font-size:.88rem;color:var(--text);cursor:pointer;text-align:left}.psr-summary-dropdown__menu button:hover{background:var(--primary-soft, rgba(0, 114, 188, .06))}.psr-alert{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;font-weight:700}.psr-alert--success{color:#047857;background:#10b9811a;border-color:#10b9813d}.psr-alert--warning{color:#92400e;background:#f59e0b1f;border-color:#f59e0b47}.psr-batch,.psr-result{display:grid;gap:14px}.psr-batch__header,.psr-result__heading,.psr-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.psr-batch__header p,.psr-result__heading p{margin:5px 0 0;color:var(--text-muted)}.psr-batch__controls select{min-height:40px;padding:8px 12px;color:var(--text)}.psr-stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.psr-stat{display:grid;gap:5px;padding:13px 14px;border-left:3px solid var(--primary)}.psr-stat span{color:var(--text-muted);font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.psr-stat strong{color:var(--text);font-size:1.45rem}.psr-stat--ok{border-left-color:var(--success)}.psr-stat--ng{border-left-color:var(--danger)}.psr-stat--review{border-left-color:#f59e0b}.psr-stat--accent{border-left-color:var(--accent)}.psr-tabs{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.psr-tab{min-height:34px;padding:7px 12px;border:0;border-radius:6px;background:transparent;color:var(--text-muted);font-weight:800;cursor:pointer}.psr-tab--active{background:var(--primary);color:#fff}.psr-search{min-height:42px;margin-left:auto;display:inline-flex;align-items:center;gap:8px;padding:8px 12px}.psr-search input{width:min(280px,55vw);border:0;outline:0;background:transparent;color:var(--text)}.psr-table-shell{max-height:620px;overflow:auto;border:1px solid var(--border);border-radius:8px}.psr-table{min-width:1180px;font-size:.82rem}.psr-table th{position:sticky;top:0;z-index:2}.psr-table th,.psr-table td{padding:9px 10px;vertical-align:middle;white-space:nowrap}.psr-table td:nth-child(2),.psr-table td:nth-child(3){max-width:180px;white-space:normal;word-break:break-word}.psr-row--ok td{background:var(--surface)}.psr-row--ng td{background:#d7263d12!important}.psr-cell--ng{background:#d7263d38!important;color:#991b1b;font-weight:800}.psr-cell--review{background:#f59e0b1f!important}.psr-badge{display:inline-flex;justify-content:center;min-width:64px;padding:4px 8px;border-radius:999px;border:1px solid transparent;font-size:.7rem;font-weight:900;text-transform:uppercase}.psr-badge--ok{color:#047857;background:#10b9811a;border-color:#10b9813d}.psr-badge--ng{color:#b91c1c;background:#d7263d1a;border-color:#d7263d3d}.psr-badge--review{color:#92400e;background:#f59e0b1f;border-color:#f59e0b47}.psr-confidence{position:relative;width:86px;height:18px;overflow:hidden;border-radius:999px;background:var(--surface-muted);border:1px solid var(--border)}.psr-confidence span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--accent))}.psr-confidence strong{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.68rem;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.6);font-weight:900}.psr-correction-actions .button{min-height:30px;padding:5px 9px;font-size:.75rem}.psr-detail-row td{background:var(--surface-muted)!important;white-space:normal}.psr-row-detail{display:grid;gap:6px;color:var(--text-muted)}.psr-row-detail strong{color:var(--text)}.psr-edit-row label,.psr-email-form label{display:grid;gap:5px;color:var(--text-muted);font-size:.78rem;font-weight:800;text-transform:uppercase}.psr-edit-row input,.psr-email-form input,.psr-email-form textarea{min-height:38px;padding:8px 10px;color:var(--text);text-transform:none}.psr-edit-row label{flex:1 1 180px}.psr-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:18px;background:#0812227a}.psr-modal{width:min(720px,100%);max-height:min(820px,92vh);overflow:auto}.psr-email-form{display:grid;gap:12px}@media (max-width: 1180px){.psr-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 760px){.psr-hero,.psr-batch__header,.psr-result__heading,.psr-file-list__item{grid-template-columns:1fr}.psr-hero{display:grid}.psr-stat-grid{grid-template-columns:1fr}.psr-batch__controls,.psr-actions,.psr-result__tools,.psr-search,.psr-search input{width:100%}.psr-batch__controls .button,.psr-actions .button,.psr-batch__controls select{flex:1 1 100%;justify-content:center}}@media (max-width: 1180px){.dashboard-kpi-grid,.dashboard-main-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-main-grid{grid-template-columns:1fr}}@media (max-width: 760px){.dashboard-hero,.dashboard-workflow-card,.dashboard-detail-grid{grid-template-columns:1fr}.dashboard-hero{display:grid}.dashboard-actions{justify-content:stretch}.dashboard-actions .button,.dashboard-filter{width:100%;justify-content:center}.dashboard-kpi-grid{grid-template-columns:1fr}.dashboard-table{overflow-x:auto}.dashboard-table__head,.dashboard-table__row{min-width:920px}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in-scale{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes slide-in-right{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes shimmer-sweep{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ripple-out{0%{transform:scale(0);opacity:.4}to{transform:scale(2.5);opacity:0}}.login-page{animation:fade-in-scale .5s cubic-bezier(.2,.8,.2,1)}.login-card{animation:fade-in-up .6s cubic-bezier(.2,.8,.2,1) .1s both}.login-card__quick-access .quick-login-btn:nth-child(1){animation:fade-in-up .4s ease .2s both}.login-card__quick-access .quick-login-btn:nth-child(2){animation:fade-in-up .4s ease .32s both}.login-card__quick-access .quick-login-btn:nth-child(3){animation:fade-in-up .4s ease .44s both}.login-card__submit{position:relative;overflow:hidden}.login-card__submit:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.18) 50%,transparent 60%);background-size:200% 100%;opacity:0;transition:opacity .3s ease}.login-card__submit:hover:not(:disabled):after{opacity:1;animation:shimmer-sweep 1.2s ease infinite}.app-header{animation:fade-in-up .4s cubic-bezier(.2,.8,.2,1) 60ms both}.nav-pill:active{transform:scale(.97)}.btn,.button,.usecase-card__button{transition:transform .18s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease,color .22s ease,opacity .22s ease}.btn:active:not(:disabled),.button:active:not(:disabled),.usecase-card__button:active:not(:disabled){transform:translateY(0) scale(.97)}.workflow-launch-grid .usecase-card:nth-child(1){animation:fade-in-up .45s ease .12s both}.workflow-launch-grid .usecase-card:nth-child(2){animation:fade-in-up .45s ease .26s both}.workflow-launch-grid .usecase-card:nth-child(3){animation:fade-in-up .45s ease .4s both}.usecase-card{transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}.usecase-card:hover{transform:translateY(-3px);box-shadow:0 18px 36px #0072bc24}.panel{animation:fade-in-up .4s cubic-bezier(.2,.8,.2,1) both}.dashboard-kpi-grid .dashboard-kpi:nth-child(1){animation:fade-in-up .4s ease 80ms both}.dashboard-kpi-grid .dashboard-kpi:nth-child(2){animation:fade-in-up .4s ease .16s both}.dashboard-kpi-grid .dashboard-kpi:nth-child(3){animation:fade-in-up .4s ease .24s both}.dashboard-kpi-grid .dashboard-kpi:nth-child(4){animation:fade-in-up .4s ease .32s both}.dashboard-kpi{transition:transform .24s ease,box-shadow .24s ease}.dashboard-kpi:hover{transform:translateY(-2px);box-shadow:0 12px 28px #0072bc1f}.dashboard-table__row{animation:fade-in-up .3s ease both;transition:background .2s ease,box-shadow .2s ease}.dashboard-table__row:nth-child(1){animation-delay:60ms}.dashboard-table__row:nth-child(2){animation-delay:.11s}.dashboard-table__row:nth-child(3){animation-delay:.16s}.dashboard-table__row:nth-child(4){animation-delay:.21s}.dashboard-table__row:nth-child(5){animation-delay:.26s}.dashboard-table__row:nth-child(6){animation-delay:.31s}.dashboard-table__row:nth-child(7){animation-delay:.36s}.dashboard-table__row:nth-child(8){animation-delay:.41s}.dashboard-table__row:nth-child(9){animation-delay:.46s}.dashboard-table__row:nth-child(10){animation-delay:.51s}.dashboard-table__row:hover{background:var(--primary-soft);box-shadow:inset 3px 0 0 var(--primary)}.dashboard-workflow-card{transition:transform .24s ease,box-shadow .24s ease,background .2s ease}.dashboard-workflow-card:hover{transform:translateY(-1px);box-shadow:0 8px 20px #0072bc1a;background:var(--primary-soft)}.dashboard-insight{transition:background .2s ease,box-shadow .2s ease}.dashboard-insight:hover{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.dashboard-history-detail{animation:fade-in-scale .35s cubic-bezier(.2,.8,.2,1)}.data-table tbody tr{transition:background .18s ease,box-shadow .18s ease}.data-table tbody tr:hover{background:var(--primary-soft)}.skeleton{position:relative;overflow:hidden;background:var(--surface-muted);border-radius:var(--radius-sm)}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.25) 50%,transparent 100%);background-size:200% 100%;animation:shimmer-sweep 1.5s ease-in-out infinite}.skeleton--text{height:14px;width:60%;margin:8px 0}.skeleton--circle{width:40px;height:40px;border-radius:50%}.skeleton--card{height:120px;width:100%}.loading-spinner{display:inline-block;width:22px;height:22px;border:2.5px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite}.loading-spinner--lg{width:36px;height:36px;border-width:3px}.loading-overlay{display:flex;align-items:center;justify-content:center;gap:12px;padding:40px 20px;color:var(--text-muted);font-size:.88rem;animation:fade-in-up .3s ease}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);background:var(--text);color:var(--bg);padding:5px 10px;border-radius:var(--radius-sm);font-size:.72rem;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .2s ease,transform .2s ease;z-index:100}[data-tooltip]:hover:after{opacity:1;transform:translate(-50%) translateY(0)}html{scroll-behavior:smooth}.app-header__profile-box{transition:background .22s ease,box-shadow .22s ease,transform .22s ease}.app-header__profile-box:hover{background:#ffffff1f;box-shadow:0 4px 16px #0072bc29;transform:translateY(-1px)}.app-header__controls .btn{transition:transform .18s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease,color .22s ease}.app-header__controls .btn:hover:not(:disabled){transform:translateY(-1px);background:#ffffff29;box-shadow:0 4px 14px #00000026;color:#fff}.btn:focus-visible,.button:focus-visible,.nav-pill:focus-visible,.quick-login-btn:focus-visible,.usecase-card__button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}*{transition-property:none}.app-shell,.panel,.usecase-card,.btn,.button,.nav-pill,.dashboard-kpi,.dashboard-table__row,.dashboard-workflow-card,.dashboard-insight,.quick-login-btn,.data-table tbody tr,.app-header__profile-box,.login-field__input-wrap{transition-duration:.22s;transition-timing-function:ease}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}.pagination-bar{display:flex;align-items:center;justify-content:center;gap:16px;padding:14px 20px;border-top:1px solid var(--border)}.pagination-bar__info{font-size:.82rem;color:var(--text-muted);font-weight:600;min-width:100px;text-align:center}.pagination-bar .btn{display:inline-flex;align-items:center;gap:4px;font-size:.8rem;padding:6px 12px}.dashboard-skeleton-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:12px}.dashboard-skeleton-grid .skeleton--card{height:90px}@media (max-width: 768px){.dashboard-skeleton-grid{grid-template-columns:1fr}}.dashboard-usecase-tabs{display:flex;gap:6px;padding:5px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted);overflow-x:auto}.dashboard-usecase-tab{display:inline-flex;align-items:center;gap:7px;padding:8px 16px;border:0;border-radius:8px;background:transparent;color:var(--text-muted);font-size:.82rem;font-weight:800;cursor:pointer;white-space:nowrap;transition:background .2s ease,color .2s ease,box-shadow .2s ease,transform .16s ease}.dashboard-usecase-tab .material-icons{font-size:1.1rem}.dashboard-usecase-tab:hover{background:var(--primary-soft);color:var(--primary);transform:translateY(-1px)}.dashboard-usecase-tab--active{background:var(--primary);color:#fff;box-shadow:0 4px 14px #0072bc40}.dashboard-usecase-tab--active:hover{background:var(--primary);color:#fff;transform:translateY(-1px)}.dashboard-usecase-tab--active .material-icons{color:inherit}.dashboard-insight-workflow-chip{display:inline-flex;align-items:center;padding:2px 8px;margin-right:6px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:.68rem;font-weight:900;letter-spacing:.03em;text-transform:uppercase}.psr-expanded-detail{display:grid;gap:12px;padding:4px 0}.psr-expanded-detail__header{display:flex;align-items:center;gap:10px}.psr-expanded-detail__icon{color:var(--primary);font-size:1.2rem}.psr-expanded-detail__header strong{color:var(--text);font-size:.95rem}.psr-pill-row{display:flex;flex-wrap:wrap;gap:8px}.psr-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;font-size:.76rem;font-weight:700;white-space:nowrap;animation:fade-in-up .3s ease both}.psr-pill .material-icons{font-size:.9rem}.psr-pill--danger{color:#b91c1c;background:#d7263d1a;border:1px solid rgba(215,38,61,.24)}.psr-pill--impact{color:#92400e;background:#f59e0b1a;border:1px solid rgba(245,158,11,.24)}.psr-obs-cards{display:flex;flex-wrap:wrap;gap:10px}.psr-obs-card{min-width:110px;border:1px solid var(--border);border-radius:8px;overflow:hidden;animation:fade-in-scale .28s ease both;transition:transform .2s ease,box-shadow .2s ease}.psr-obs-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000014}.psr-obs-card--ok{border-color:#10b9814d;background:#10b9810f}.psr-obs-card--ng{border-color:#d7263d4d;background:#d7263d0f}.psr-obs-card__head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px 4px}.psr-obs-card__head strong{font-size:.82rem;color:var(--text)}.psr-obs-card__body{display:grid;gap:2px;padding:4px 12px 10px;font-size:.82rem}.psr-obs-card__body strong{color:var(--text)}.psr-obs-card__dev{color:#b91c1c;font-weight:700}.psr-mismatch-banner{padding:10px 16px;border-radius:8px;background:#f59e0b1f;border:1px solid rgba(245,158,11,.28);color:#92400e;font-weight:700;font-size:.84rem;animation:fade-in-up .3s ease both}.psr-source-chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:.7rem;font-weight:800;white-space:nowrap}.button--primary{position:relative;overflow:hidden;transition:transform .18s ease,box-shadow .22s ease,background .22s ease}.button--primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #0072bc47}.button--primary:active:not(:disabled){transform:translateY(0) scale(.97);box-shadow:0 2px 8px #0072bc2e}.button--primary:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.2) 50%,transparent 60%);background-size:200% 100%;opacity:0;transition:opacity .3s ease}.button--primary:hover:not(:disabled):after{opacity:1;animation:shimmer-sweep 1.2s ease infinite}.button--secondary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #00000014}.button--secondary:active:not(:disabled){transform:translateY(0) scale(.97)}.button--danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 18px #d7263d33}.psr-tab{transition:background .2s ease,color .2s ease,transform .16s ease,box-shadow .2s ease}.psr-tab:hover:not(.psr-tab--active){background:var(--primary-soft);color:var(--primary);transform:translateY(-1px)}.psr-tab--active{box-shadow:0 4px 12px #0072bc33}.psr-table tbody tr{cursor:pointer;transition:background .18s ease,box-shadow .18s ease}.psr-table tbody tr:not(.psr-detail-row):hover{box-shadow:inset 4px 0 0 var(--primary)}.psr-stat{transition:transform .2s ease,box-shadow .2s ease}.psr-stat:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000000f}@keyframes confidence-fill{0%{width:0}}.psr-confidence span{animation:confidence-fill .8s cubic-bezier(.2,.8,.2,1) both}.psr-file-list__item{animation:fade-in-up .3s ease both;transition:background .2s ease,transform .2s ease,box-shadow .2s ease}.psr-file-list__item:hover{background:var(--primary-soft);transform:translate(4px);box-shadow:inset 3px 0 0 var(--primary)}@keyframes dropzone-pulse{0%,to{border-color:var(--primary);box-shadow:0 0 #0072bc26}50%{border-color:var(--accent);box-shadow:0 0 0 6px #00a4e414}}.psr-dropzone--active{animation:dropzone-pulse 1.2s ease infinite}@keyframes icon-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.upload-dropzone:hover .upload-dropzone__icon{animation:icon-bounce .6s ease}@keyframes badge-pulse-ng{0%,to{box-shadow:0 0 #d7263d40}50%{box-shadow:0 0 0 4px #d7263d00}}.psr-badge--ng{animation:badge-pulse-ng 2s ease infinite}.page-stack{animation:fade-in-up .35s cubic-bezier(.2,.8,.2,1) both}.psr-page .panel:nth-child(1){animation-delay:0ms}.psr-page .panel:nth-child(2){animation-delay:80ms}.psr-page .panel:nth-child(3){animation-delay:.16s}.psr-page .panel:nth-child(4){animation-delay:.24s}.psr-table-shell::-webkit-scrollbar{width:8px;height:8px}.psr-table-shell::-webkit-scrollbar-track{background:var(--surface-muted);border-radius:4px}.psr-table-shell::-webkit-scrollbar-thumb{background:var(--primary);border-radius:4px;opacity:.6}.psr-table-shell::-webkit-scrollbar-thumb:hover{background:var(--accent)}
