*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0f1117;--surface:#1a1d27;--surface-hover:#242836;--border:#2a2e3d;--text:#e1e4ed;--text-muted:#8b8fa3;--accent:#6c8cff;--accent-dim:#6c8cff26;--success:#22c55e;--warning:#f59e0b;--danger:#ef4444;--radius:8px}body{background:var(--bg);color:var(--text);height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;overflow:hidden}#root{height:100vh}.app-container{flex-direction:column;height:100vh;display:flex}.view-switcher{background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:0;padding:0 16px;display:flex}.view-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:12px 20px;font-size:.88rem;font-weight:500;transition:all .15s}.view-tab:hover{color:var(--text)}.view-tab-active{color:var(--accent);border-bottom-color:var(--accent)}.view-badge{color:var(--text-muted);margin-left:auto;font-size:.75rem}.settings-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:8px;font-size:1.1rem}.settings-btn:hover{color:var(--text)}.settings-bar{background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:8px 16px;font-size:.82rem;display:flex}.settings-bar label{color:var(--text-muted);flex-shrink:0}.settings-bar input{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:5px;flex:1;padding:5px 10px;font-size:.82rem}.portal,.dashboard{flex:1;width:100%;overflow-y:auto}.portal{padding:24px max(24px,50% - 400px)}.dashboard{padding:24px max(24px,50% - 550px)}.portal-header,.dash-header{margin-bottom:24px}.portal-header h2,.dash-header h2{font-size:1.5rem;font-weight:700}.portal-subtitle{color:var(--text-muted);margin-top:4px;font-size:.9rem}.dash-header{align-items:center;gap:12px;display:flex}.dash-status{text-transform:uppercase;letter-spacing:.05em;font-size:.82rem;font-weight:600}.back-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:.88rem}.back-btn:hover{color:var(--text)}.primary-btn{background:var(--accent);color:#fff;border-radius:var(--radius);cursor:pointer;border:none;padding:10px 20px;font-size:.88rem;font-weight:600}.primary-btn:disabled{opacity:.4;cursor:default}.primary-btn:hover:not(:disabled){opacity:.9}.secondary-btn{background:var(--surface-hover);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;padding:10px 20px;font-size:.88rem}.upload-btn{background:var(--surface-hover);border:1px dashed var(--border);border-radius:var(--radius);color:var(--text-muted);cursor:pointer;width:100%;padding:8px 16px;font-size:.85rem}.approve-btn{background:var(--success);color:#fff;border-radius:var(--radius);cursor:pointer;border:none;width:100%;padding:10px 20px;font-weight:600}.empty-state{text-align:center;color:var(--text-muted);padding:40px 20px;font-size:.9rem}.claim-list{flex-direction:column;gap:8px;margin-top:16px;display:flex}.claim-card,.case-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;padding:12px 16px;transition:border-color .15s}.claim-card:hover,.case-card:hover{border-color:var(--accent)}.case-card-urgent{border-left:3px solid var(--warning)}.claim-card-header,.case-card-top{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.claim-id{font-size:.85rem;font-weight:600}.claim-status{text-transform:uppercase;background:var(--accent-dim);border-radius:10px;padding:2px 8px;font-size:.72rem;font-weight:600}.claim-card-body,.case-card-body{color:var(--text-muted);gap:12px;font-size:.82rem;display:flex}.claim-card-desc{flex:1}.case-category{font-weight:600}.case-estimate{font-weight:500}.case-date{color:var(--text-muted)}.case-assignee{color:var(--text-muted);font-size:.78rem}.case-status{text-transform:uppercase;font-size:.78rem;font-weight:600}.claim-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.claim-form h3{margin-bottom:16px}.form-row{gap:12px;display:flex}.form-field{flex:1;margin-bottom:12px}.form-field label{color:var(--text-muted);margin-bottom:4px;font-size:.78rem;font-weight:500;display:block}.form-field input,.form-field textarea{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:6px;padding:8px 12px;font-size:.88rem}.form-field input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer}.form-field textarea{resize:vertical}.form-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.photo-grid{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.photo-thumb{object-fit:cover;border:1px solid var(--border);border-radius:6px;width:80px;height:80px}.photo-thumb-wrap{position:relative}.photo-remove{background:var(--danger);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:12px;display:flex;position:absolute;top:-4px;right:-4px}.photo-grid-large{flex-wrap:wrap;gap:12px;display:flex}.photo-large{object-fit:cover;border-radius:var(--radius);border:1px solid var(--border);width:200px;height:150px}.status-tracker{background:var(--surface);border-radius:var(--radius);gap:0;margin-bottom:24px;padding:16px;display:flex}.status-step{text-align:center;flex:1;position:relative}.status-step:after{content:"";background:var(--border);width:100%;height:2px;position:absolute;top:10px;right:-50%}.status-step:last-child:after{display:none}.status-step-done:after{background:var(--success)}.status-dot{color:var(--text-muted);z-index:1;margin-bottom:4px;font-size:.9rem;position:relative}.status-step-done .status-dot{color:var(--success)}.status-step-current .status-dot{color:var(--accent);font-weight:700}.status-label{color:var(--text-muted);font-size:.72rem;font-weight:500}.status-step-current .status-label{color:var(--accent);font-weight:600}.status-desc{color:var(--text-muted);margin-top:2px;font-size:.68rem}.detail-section,.dash-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:12px;padding:16px}.detail-section h3,.dash-section h3{text-transform:uppercase;color:var(--text-muted);letter-spacing:.04em;margin-bottom:8px;font-size:.82rem;font-weight:600}.claim-detail p{margin-bottom:4px;font-size:.88rem;line-height:1.5}.settlement-section{border-color:var(--success)}.settlement-amount{color:var(--success);margin-bottom:12px;font-size:1.8rem;font-weight:700}.settlement-letter{white-space:pre-wrap;color:var(--text-muted);background:var(--bg);border-radius:6px;padding:12px;font-size:.82rem;line-height:1.6}.event-list{flex-direction:column;gap:6px;display:flex}.event-item{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:8px;padding:4px 0;font-size:.78rem;display:flex}.event-item:last-child{border-bottom:none}.event-time{color:var(--text-muted);flex-shrink:0}.event-action{font-weight:500}.event-actor{color:var(--text-muted);font-style:italic}.event-detail{color:var(--text-muted);width:100%}.dash-grid{grid-template-columns:1fr 340px;gap:16px;display:grid}.dash-main{min-width:0}.dash-sidebar{flex-direction:column;gap:12px;display:flex}.dash-stats{gap:12px;margin-bottom:20px;display:flex}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:center;flex:1;padding:16px}.stat-number{color:var(--accent);font-size:1.8rem;font-weight:700}.stat-label{color:var(--text-muted);text-transform:uppercase;margin-top:4px;font-size:.75rem}.classification-card{border-color:var(--accent)}.classification-category{margin-bottom:4px;font-size:1.2rem;font-weight:700}.classification-estimate{color:var(--text);font-size:1rem;font-weight:600}.classification-confidence{color:var(--text-muted);margin-top:4px;font-size:.78rem}.classification-notes{color:var(--text-muted);margin-top:8px;font-size:.78rem;font-style:italic}.classification-model{color:var(--text-muted);margin-top:6px;font-size:.68rem}.classification-flag{border-radius:4px;margin-top:6px;padding:3px 8px;font-size:.72rem;font-weight:600}.flag-danger{color:var(--danger);background:#ef444426}.parts-breakdown{margin-top:10px}.parts-header{color:var(--text-muted);text-transform:uppercase;margin-bottom:4px;font-size:.72rem;font-weight:600}.parts-table{border-collapse:collapse;width:100%;font-size:.75rem}.parts-table th{text-align:left;border-bottom:1px solid var(--border);color:var(--text-muted);text-transform:uppercase;padding:3px 6px;font-size:.68rem}.parts-table td{border-bottom:1px solid var(--border);padding:3px 6px}.damage-tag{border-radius:3px;padding:1px 5px;font-size:.68rem;font-weight:500}.damage-low{color:var(--success);background:#22c55e26}.damage-moderate{color:var(--warning);background:#f59e0b26}.damage-high{color:var(--danger);background:#ef444426}.cost-cell{text-align:right;font-variant-numeric:tabular-nums}.parts-total td{border-top:2px solid var(--border);padding-top:6px}.parts-vehicle-sep td{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-top:2px solid var(--border);border-bottom:none;padding:6px 6px 2px;font-size:.68rem;font-weight:600}.action-card{border-color:var(--warning)}.action-card textarea{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);resize:vertical;border-radius:6px;margin-bottom:8px;padding:8px 12px;font-size:.85rem}.action-buttons{gap:8px;display:flex}.info-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.info-grid label,.info-row label{color:var(--text-muted);text-transform:uppercase;font-size:.72rem}.info-grid span,.info-row span{font-size:.88rem;display:block}.info-row{margin-top:8px}.narrative-card-alert{border-color:var(--danger)}.narrative-card-warn{border-color:var(--warning)}.narrative-card-clear{border-color:var(--success)}.narrative-clear{color:var(--success);font-size:.82rem}.narrative-flags{flex-direction:column;gap:8px;display:flex}.narrative-flag{background:var(--bg);border-left:3px solid #0000;border-radius:6px;padding:8px 10px}.narrative-flag-high{border-left-color:var(--danger)}.narrative-flag-medium{border-left-color:var(--warning)}.narrative-flag-low{border-left-color:var(--border)}.narrative-flag-header{align-items:center;gap:8px;margin-bottom:4px;display:flex}.narrative-severity{letter-spacing:.05em;border-radius:3px;padding:2px 6px;font-size:.68rem;font-weight:700}.narrative-severity-high{color:var(--danger);background:#ef444426}.narrative-severity-medium{color:var(--warning);background:#f59e0b26}.narrative-severity-low{color:var(--text-muted);background:#8b8fa326}.narrative-type{color:var(--text);font-size:.75rem;font-weight:600}.narrative-desc{color:var(--text-muted);font-size:.78rem;line-height:1.4}.auth-page{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;width:100%;max-width:400px;padding:40px}.auth-logo{text-align:center;margin-bottom:32px}.auth-logo h1{color:var(--accent);margin:0 0 4px;font-size:1.6rem}.auth-logo p{color:var(--text-muted);margin:0;font-size:.85rem}.auth-tabs{border-bottom:1px solid var(--border);margin-bottom:24px;display:flex}.auth-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;margin-bottom:-1px;padding:10px;font-size:.9rem}.auth-tab-active{color:var(--accent);border-bottom-color:var(--accent)}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-hint{color:var(--text-muted);font-size:.8rem;font-weight:400}.auth-error{color:#ef4444;background:#ef44441a;border:1px solid #ef44444d;border-radius:6px;padding:10px 12px;font-size:.85rem}.auth-submit{width:100%;padding:12px;font-size:1rem}.nav-user{align-items:center;gap:12px;margin-left:auto;display:flex}.nav-email{color:var(--text-muted);font-size:.8rem}.logout-btn{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;padding:4px 10px;font-size:.78rem}.logout-btn:hover{color:var(--text);border-color:var(--text-muted)}@keyframes spin{to{transform:rotate(360deg)}}.spinner{vertical-align:middle;border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:14px;height:14px;margin-right:6px;animation:.7s linear infinite spin;display:inline-block}.classifying-banner{background:var(--accent-dim);border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent);align-items:center;gap:8px;margin-bottom:16px;padding:10px 14px;font-size:.85rem;display:flex}.classifying-banner .spinner{border-color:#6c8cff4d;border-top-color:var(--accent)}.parts-tabs{border-bottom:1px solid var(--border);gap:0;margin-bottom:8px;display:flex}.parts-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:6px 14px;font-size:.8rem;transition:color .15s}.parts-tab:hover{color:var(--text)}.parts-tab-active{color:var(--accent)!important;border-bottom-color:var(--accent)!important}.admin-tabs{border-bottom:1px solid var(--border);gap:0;margin-bottom:8px;padding:0 24px;display:flex}.admin-tabs .parts-tab{padding:10px 16px;font-size:.85rem}.admin-section-note{color:var(--text-muted);margin-bottom:12px;font-size:.85rem}.wf-root{padding-bottom:8px;overflow-x:auto}.wf-intake{flex-direction:column;align-items:center;margin-bottom:0;display:flex}.wf-route-label{color:var(--text-muted);text-align:center;padding:2px 0 0;font-size:.75rem}.wf-arr{color:var(--text-muted);text-align:center;-webkit-user-select:none;user-select:none;font-size:.9rem;line-height:1.6}.wf-tracks-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.wf-branch-label{text-align:center;color:var(--text-muted);padding:2px 4px;font-size:.68rem;font-style:italic}.wf-col{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;align-items:center;padding:0 8px 12px;display:flex}.wf-node{border:1px solid var(--border);text-align:center;background:var(--surface-hover);border-radius:6px;width:100%;padding:5px 10px}.wf-node-label{font-size:.75rem;font-weight:600}.wf-node-sub{color:var(--text-muted);margin-top:2px;font-size:.63rem}.admin-viewing-badge{border:1px solid var(--accent);color:var(--accent);background:#6c8cff26;border-radius:20px;align-items:center;gap:6px;padding:2px 10px 2px 12px;font-size:.78rem;font-weight:500;display:flex}.admin-viewing-clear{color:var(--accent);cursor:pointer;opacity:.7;background:0 0;border:none;padding:0;font-size:.75rem;line-height:1}.admin-viewing-clear:hover{opacity:1}.admin-usage-card{background:var(--surface-hover);border:1px solid var(--border);border-radius:var(--radius);max-width:480px;padding:20px}.admin-usage-numbers{align-items:baseline;gap:6px;margin-bottom:12px;display:flex}.admin-usage-used{font-size:2.4rem;font-weight:700}.admin-usage-sep,.admin-usage-cap{color:var(--text-muted);font-size:1.4rem}.admin-usage-label{color:var(--text-muted);margin-left:4px;font-size:.85rem}.admin-usage-bar-track{background:var(--border);border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden}.admin-usage-bar-fill{border-radius:4px;height:100%;transition:width .3s}.admin-usage-footer{color:var(--text-muted);justify-content:space-between;font-size:.78rem;display:flex}.admin-history-table{max-width:480px;font-size:.85rem}.admin-history-table th{font-size:.75rem}.admin-history-table td{padding:5px 6px}@media (width<=768px){.dash-grid{grid-template-columns:1fr}.form-row{flex-direction:column}.status-tracker{flex-direction:column;gap:8px}.status-step:after{display:none}}
