:root{color-scheme:light;--bg:#f7f8fa;--border:#dce3ea;--ink:#15202b;--muted:#5d6b78;--panel:#ffffff;--panel-soft:#eef3f6;--primary:#116a7b;--primary-dark:#0c4f5d;--success:#237a57;--warning:#a45b13;--danger:#b42318}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;margin:0}.login-redirect{align-items:center;background:radial-gradient(circle at top left,rgba(17,106,123,.28),transparent 34rem),linear-gradient(135deg,#10242b,#15202b 52%,#116a7b);color:#f7fbfc;display:flex;min-height:100vh;padding:2rem}.login-redirect>div{margin:auto;max-width:34rem;text-align:center}.login-redirect span{color:#93e4ec;display:block;font-size:.78rem;font-weight:800;letter-spacing:0;margin-bottom:.75rem;text-transform:uppercase}.login-redirect h1{font-size:2rem;line-height:1.1;margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.dashboard-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.sidebar{background:#10242b;color:#edf7f9;display:flex;flex-direction:column;gap:28px;padding:22px 16px}.brand{align-items:center;display:flex;gap:12px;min-height:48px}.brand small,.brand strong{display:block}.brand small,.eyebrow,.topbar small{color:var(--muted);font-size:.77rem}.brand small{color:#a7c2c8}.brand-mark{align-items:center;background:#1f6f7a;border-radius:8px;display:inline-flex;height:36px;justify-content:center;width:36px}.nav-list{display:grid;grid-gap:6px;gap:6px}.nav-link{align-items:center;border-radius:8px;color:#bdd2d7;display:flex;gap:10px;min-height:40px;padding:0 12px}.nav-link.active,.nav-link:focus-visible,.nav-link:hover{background:#1a3a43;color:#ffffff;outline:none}.workspace{min-width:0}.topbar{align-items:center;background:rgba(255,255,255,.92);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;min-height:76px;padding:14px 28px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.topbar p{margin:2px 0}.content{padding:28px}.page-header{align-items:flex-end;display:flex;gap:18px;justify-content:space-between;margin-bottom:22px}.page-header h1{font-size:1.8rem;margin:0}.page-header p{color:var(--muted);margin:6px 0 0;max-width:720px}.danger-action,.primary-action,.secondary-action{align-items:center;border-radius:8px;display:inline-flex;font-weight:700;gap:8px;min-height:38px;padding:0 13px}.primary-action{background:var(--primary);border:1px solid var(--primary);color:#ffffff}.secondary-action{background:#ffffff;border:1px solid var(--border);color:var(--ink)}.danger-action{background:#fff4f2;border:1px solid #ffd0ca;color:var(--danger)}.grid{display:grid;grid-gap:16px;gap:16px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.section-gap{margin-top:18px}.panel,.table-panel{background:var(--panel);border:1px solid var(--border);border-radius:8px}.panel{padding:18px}.panel h2{font-size:1rem;margin:0 0 12px}.kpi-card{min-height:118px}.chart-box{min-height:280px;width:100%}.form-grid{display:grid;grid-gap:12px;gap:12px}.checkbox-grid{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.checkbox-grid label{align-items:center;background:var(--panel-soft);border-radius:8px;display:flex;gap:8px;min-height:38px;padding:8px 10px}.field{display:grid;grid-gap:6px;gap:6px}.field label{color:var(--muted);font-size:.82rem;font-weight:700}.field input,.field select,.field textarea{background:#ffffff;border:1px solid var(--border);border-radius:8px;color:var(--ink);min-height:40px;padding:8px 10px;width:100%}.field textarea{min-height:150px;resize:vertical}.table-panel{overflow-x:auto}.data-table{border-collapse:collapse;min-width:760px;width:100%}.data-table td,.data-table th{border-bottom:1px solid var(--border);padding:12px 14px;text-align:left;vertical-align:middle}.data-table th{color:var(--muted);font-size:.78rem;text-transform:uppercase}.data-table tr.selected-row td{background:#f2f8f9}.data-state-table{min-width:900px}.table-link{color:var(--primary-dark);font-weight:700}.empty-state{color:var(--muted);padding:24px}.action-row{display:flex;flex-wrap:wrap;gap:10px}.validation-review{display:grid;grid-gap:18px;gap:18px}.validation-hero{align-items:center;background:linear-gradient(90deg,rgba(17,106,123,.1),rgba(164,91,19,.08)),#fbfcfd;border:1px solid var(--border);border-radius:8px;display:flex;justify-content:space-between;padding:18px}.validation-hero h2{font-size:1.22rem;margin:2px 0 0}.notice,.review-chip{border-radius:8px;font-size:.82rem;font-weight:800;padding:7px 10px}.review-chip{background:#e8f4f4;color:var(--primary-dark)}.review-chip.warning{background:#fff4df;color:var(--warning)}.notice{margin:0}.notice.danger{background:#fff0ee;border:1px solid #ffd0ca;color:var(--danger)}.validation-metrics{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));padding:0}.validation-metric{align-items:start;background:#f8fafb;border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:6px;gap:6px;min-height:102px;padding:13px}.validation-metric svg{color:var(--primary)}.validation-metric span{color:var(--muted);font-size:.8rem;font-weight:700}.validation-metric strong{font-size:1.55rem}.validation-workgrid{display:grid;grid-gap:16px;gap:16px;padding:0}.validation-review>.panel.section-gap{margin:0}.validation-review-form{display:block}.validation-submit-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.section-title-row{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.section-title-row h3{font-size:.98rem;margin:0}.compact-table{border-radius:8px}.compact-table .data-table{min-width:880px}.compact-table .data-table td,.compact-table .data-table th{padding:10px 12px}.table-subtext{color:var(--muted);display:block;font-size:.78rem;margin-top:3px;max-width:440px}.tier-pill{border-radius:999px;display:inline-flex;font-size:.76rem;font-weight:800;padding:3px 8px;text-transform:uppercase}.tier-pill.hard{background:#fff0ee;color:var(--danger)}.tier-pill.soft{background:#e8f4f4;color:var(--primary-dark)}.inline-icon-text{align-items:center;display:inline-flex;gap:6px;white-space:nowrap}.soft-rule-list{display:grid;grid-gap:9px;gap:9px}.soft-rule-list label{align-items:center;background:#f8fafb;border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:10px;gap:10px;grid-template-columns:auto minmax(0,1fr);min-height:54px;padding:10px}.soft-rule-list small{color:var(--muted);display:block;margin-top:2px}.definition-list{display:grid;grid-gap:10px;gap:10px;grid-template-columns:120px minmax(0,1fr);margin:0}.compact-definition-list{grid-template-columns:80px minmax(0,1fr)}.definition-list dt{color:var(--muted);font-weight:700}.definition-list dd{margin:0;min-width:0;overflow-wrap:anywhere}.failure-log,.json-output{background:#101820;border-radius:8px;color:#e6f0f2;margin:14px 0 0;overflow-x:auto;padding:14px}.error-text{color:var(--danger);font-weight:700}.mono{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.88rem;overflow-wrap:anywhere}.muted{color:var(--muted)}.success-text{color:var(--success);font-weight:700}.warning-text{color:var(--warning);font-weight:800}.selected-data-section,.table-section{margin-top:18px}.selected-data-header{align-items:flex-start;background:var(--panel);border:1px solid var(--border);border-radius:8px;display:flex;gap:16px;justify-content:space-between;margin-bottom:18px;padding:18px}.selected-data-header h2,.selected-data-header p{margin:2px 0 0}.show-more-action{margin-top:12px}.model-family-grid{display:grid;grid-gap:16px;gap:16px;margin-top:14px}.model-family-card{display:grid;grid-gap:14px;gap:14px}.model-family-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.model-family-header h3{font-size:1.05rem;margin:0}.model-stage-overview{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.model-stage-slot{background:#f8fafb;border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:6px;gap:6px;min-height:116px;padding:12px}.model-stage-slot.active{background:#f2f8f9;border-color:#b9dce2}.model-stage-slot strong{font-size:1rem}.model-version-panel{overflow-x:auto}.model-version-table{min-width:980px}.model-stage-actions{display:flex;flex-wrap:wrap;gap:6px}.compact-action{font-size:.78rem;min-height:32px;padding:6px 9px}.model-stage-actions button:disabled{cursor:not-allowed;opacity:.48}.operations-grid textarea{min-height:210px}.prediction-result-panel{background:var(--panel);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:14px;gap:14px;padding:18px}.prediction-result-panel h2{font-size:1rem;margin:0}.prediction-explainer{background:#f8fafb;border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:6px;gap:6px;padding:12px}.prediction-explainer p{color:var(--muted);margin:0}.prediction-value{background:#e4f4ed;border:1px solid #b9e0d0;border-radius:8px;display:grid;grid-gap:4px;gap:4px;padding:14px}.prediction-value small,.prediction-value span{color:var(--muted);font-weight:700}.prediction-value strong{color:var(--success);font-size:1.7rem}.predict-case-flow{display:grid;grid-gap:14px;gap:14px}.predict-case-input-panel{padding:14px}.predict-case-input-panel .form-grid{gap:10px}.predict-case-preview{padding:14px}.predict-case-preview h2{margin-bottom:8px}.case-field-grid{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(3,minmax(180px,1fr))}.case-field{border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:5px;gap:5px;padding:9px 10px}.case-field.model-used{background:#f2f8f9;border-color:#b9dce2}.case-field label{align-items:center;display:flex;gap:8px;justify-content:space-between}.case-field label span{font-weight:800}.case-field label small{background:var(--panel-soft);border-radius:999px;color:var(--muted);font-size:.68rem;font-weight:800;padding:2px 6px}.case-field.model-used label small{background:#dff2f4;color:var(--primary-dark)}.case-field input,.case-field select{background:#ffffff;border:1px solid var(--border);border-radius:8px;min-height:34px;padding:6px 9px}.case-field p{color:var(--muted);font-size:.75rem;line-height:1.35;margin:0}.status-pill{background:var(--panel-soft);border-radius:999px;display:inline-flex;font-size:.79rem;font-weight:700;padding:4px 9px}.status-pill.force-accepted,.status-pill.production,.status-pill.succeeded,.status-pill.validated{background:#e4f4ed;color:var(--success)}.status-pill.failed{background:#fff0ee;color:var(--danger)}.status-pill.running,.status-pill.warning{background:#fff6e8;color:var(--warning)}@media (max-width:860px){.dashboard-shell{grid-template-columns:1fr}.sidebar{position:static}.nav-list{grid-template-columns:repeat(2,minmax(0,1fr))}.case-field-grid,.grid.three,.grid.two,.model-stage-overview{grid-template-columns:1fr}.validation-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.page-header,.selected-data-header,.topbar,.validation-hero{align-items:flex-start;flex-direction:column}}@media (max-width:560px){.validation-metrics{grid-template-columns:1fr}}