@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap";html,body,#root{width:100%;height:100%;margin:0;padding:0;overflow:hidden}:root{--bg-primary:#0d1117;--bg-secondary:#161b22;--bg-tertiary:#1c2333;--bg-elevated:#21262d;--border-primary:#30363d;--border-accent:#58a6ff33;--text-primary:#e6edf3;--text-secondary:#8b949e;--text-muted:#6e7681;--accent:#58a6ff;--green:#3fb950;--amber:#d69e2e;--red:#f85149;--purple:#a78bfa;--orange:#f97316;--radius:8px;--radius-lg:12px;--shadow:0 2px 8px #0000004d}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Inter,sans-serif}.app-shell{height:100vh;display:flex;overflow:hidden}.sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-primary);flex-direction:column;flex-shrink:0;width:220px;transition:width .2s;display:flex}.sidebar.collapsed{width:56px}.sidebar.collapsed .sidebar-tab{justify-content:center;padding:10px 0}.sidebar.collapsed .sidebar-brand{justify-content:center;padding:20px 8px}.sidebar-collapse-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius);background:0 0;border:none;padding:4px 8px;font-size:11px;transition:color .15s}.sidebar-collapse-btn:hover{color:var(--text-primary)}.sidebar.collapsed .sidebar-footer{justify-content:center;display:flex}.resize-handle{cursor:col-resize;z-index:10;background:0 0;flex-shrink:0;width:4px;transition:background .15s;position:relative}.resize-handle:hover,.resize-handle:active{background:var(--accent);opacity:.5}.sidebar-brand{border-bottom:1px solid var(--border-primary);align-items:center;gap:10px;padding:20px 16px;display:flex}.sidebar-logo{color:var(--accent);font-size:24px}.sidebar-title{letter-spacing:-.02em;font-size:14px;font-weight:700}.sidebar-nav{flex-direction:column;flex:1;gap:4px;padding:12px 8px;display:flex}.sidebar-tab{border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;padding:10px 12px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.sidebar-tab:hover{background:var(--bg-tertiary);color:var(--text-primary)}.sidebar-tab.active{background:var(--accent);color:#fff}.tab-icon{font-size:16px}.sidebar-footer{border-top:1px solid var(--border-primary);padding:12px 16px}.sidebar-version{color:var(--text-muted);letter-spacing:.04em;font-size:10px}.main-content{flex-direction:column;flex:1;display:flex;overflow:hidden}.status-bar{background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);color:var(--text-muted);align-items:center;gap:8px;padding:8px 20px;font-size:12px;display:flex}.status-dot{background:var(--green);border-radius:50%;width:6px;height:6px}.needs-review-blinker{color:#f59e0b;cursor:pointer;background:#f59e0b26;border:1px solid #0000;border-radius:12px;margin-left:12px;padding:2px 10px;font-family:inherit;font-size:11px;font-weight:600;transition:border-color .15s,box-shadow .15s;animation:2s ease-in-out infinite pulse-amber}.needs-review-blinker:hover{border-color:#f59e0b;animation:none;box-shadow:0 0 6px #f59e0b4d}.review-dropdown-wrapper{display:inline-block;position:relative}.review-dropdown{background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-lg);z-index:100;width:340px;margin-top:8px;position:absolute;top:100%;left:0;overflow:hidden;box-shadow:0 8px 24px #00000080}.review-dropdown-header{border-bottom:1px solid var(--border-primary);color:var(--text-secondary);justify-content:space-between;align-items:center;padding:10px 14px;font-size:12px;font-weight:600;display:flex}.review-dropdown-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:13px}.review-dropdown-loading,.review-dropdown-empty{text-align:center;color:var(--text-muted);padding:20px 14px;font-size:12px}.review-dropdown-list{max-height:300px;overflow-y:auto}.review-dropdown-item{border-bottom:1px solid var(--border-primary);justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.review-dropdown-item:last-child{border-bottom:none}.review-item-info{flex-direction:column;gap:2px;min-width:0;display:flex}.review-item-id{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.review-item-sites{color:#f59e0b;font-size:11px}.review-item-date{color:var(--text-muted);font-size:10px}.review-item-btn{border-radius:var(--radius);color:#f59e0b;cursor:pointer;white-space:nowrap;background:#f59e0b1f;border:1px solid #f59e0b4d;flex-shrink:0;padding:4px 10px;font-size:11px;font-weight:600;text-decoration:none;transition:all .15s}.review-item-btn:hover{background:#f59e0b38;border-color:#f59e0b;box-shadow:0 0 6px #f59e0b4d}.review-item-no-files{color:var(--text-muted);font-size:11px;font-style:italic}@keyframes pulse-amber{0%,to{opacity:1}50%{opacity:.4}}.btn-refresh{border:1px solid var(--border-primary);color:var(--text-secondary);border-radius:var(--radius);cursor:pointer;background:0 0;padding:4px 10px;font-size:14px;transition:all .15s}.btn-refresh:hover{background:var(--bg-tertiary);color:var(--text-primary)}.status-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.btn-upload{background:var(--accent);color:#fff;border-radius:var(--radius);cursor:pointer;border:none;padding:5px 14px;font-size:12px;font-weight:600;transition:all .15s}.btn-upload:hover{opacity:.85;transform:translateY(-1px)}.btn-upload.active{background:var(--green);pointer-events:none}.tab-content{flex:1;min-width:0;padding:20px;animation:.2s ease-out tab-fade;overflow-y:auto}.main-layout{flex:1;display:flex;overflow:hidden}.main-layout.layout-full .tab-content{flex:1;max-width:100%}@keyframes tab-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.filter-strip{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;padding:8px 14px;display:flex}.filter-divider{background:var(--border-primary);flex-shrink:0;width:1px;height:20px}.toggle-group{align-items:center;gap:4px;display:flex}.toggle-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-right:4px;font-size:10px;font-weight:600}.toggle-btn{border:1px solid var(--border-primary);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:4px;padding:3px 9px;font-size:11px;transition:all .15s}.toggle-btn:hover{border-color:var(--accent);color:var(--text-primary)}.toggle-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.filter-clear{border:1px solid var(--red);color:var(--red);cursor:pointer;background:#f851491a;border-radius:4px;margin-left:auto;padding:3px 10px;font-size:10px;transition:all .15s}.filter-clear:hover{background:#f8514933}.chart-card-narrow{justify-content:center;align-items:center;padding:10px 8px;display:flex}.jaw-diagram{text-align:center;padding:8px}.jaw-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px;font-size:10px;font-weight:600}.jaw-row{justify-content:center;align-items:center;display:flex}.jaw-gap{flex-shrink:0;width:3px}.jaw-arch-divider{height:4px}.jaw-half{cursor:pointer;border-radius:6px;width:65px;height:65px;transition:all .2s;position:relative;overflow:hidden}.jaw-half:hover{background:#58a6ff1a;transform:scale(1.04);box-shadow:0 0 12px #58a6ff59}.jaw-half-img{pointer-events:none;width:130px;height:65px;transition:filter .2s,opacity .2s;display:block}.jaw-half-right .jaw-half-img{transform:translate(0)}.jaw-half-left .jaw-half-img{transform:translate(-65px)}.jaw-half.selected{background:#58a6ff1f;box-shadow:0 0 10px #58a6ff4d}.jaw-half.selected:hover{box-shadow:0 0 16px #58a6ff80}.jaw-half.selected .jaw-half-img{filter:brightness(1.3)saturate(1.2)}.jaw-half.off{opacity:.25;filter:grayscale(.5)}.jaw-half.off:hover{opacity:.5;filter:grayscale(.2);box-shadow:0 0 10px #58a6ff40}.jaw-controls{justify-content:center;margin-top:10px;display:flex}.jaw-all-btn{border:1px solid var(--border-primary);color:var(--text-muted);cursor:pointer;letter-spacing:.02em;background:0 0;border-radius:12px;padding:4px 16px;font-size:10px;font-weight:600;transition:all .15s}.jaw-all-btn:hover{border-color:var(--accent);color:var(--text-primary)}.jaw-all-btn.active{color:#4ade80;background:#4ade801f;border-color:#4ade80}.tooltip-row{color:var(--text-secondary);margin:2px 0;font-size:11px}.tooltip-divider{background:var(--border-primary);height:1px;margin:4px 0}.metric-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:24px;display:grid}.metric-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);text-align:center;padding:16px}.metric-card.accent-green{border-color:#3fb9504d}.metric-card.accent-amber{border-color:#d69e2e4d}.metric-value{font-family:JetBrains Mono,monospace;font-size:28px;font-weight:800;line-height:1.1}.metric-card.accent-green .metric-value{color:var(--green)}.metric-card.accent-amber .metric-value{color:var(--amber)}.metric-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:4px;font-size:11px}.metric-card.metric-pulse{cursor:pointer;border-color:#58a6ff66;animation:2.5s ease-in-out infinite metric-glow}.metric-card.metric-pulse .metric-value{color:var(--accent)}.metric-card.metric-pulse .metric-label{color:var(--accent);opacity:.8}@keyframes metric-glow{0%,to{border-color:#58a6ff33;box-shadow:0 0 #58a6ff00}50%{border-color:#58a6ff99;box-shadow:0 0 12px #58a6ff26}}.charts-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.charts-row.charts-row-scatter{grid-template-columns:1fr 240px;align-items:center;gap:12px}.scatter-square{margin:0 auto;position:relative}.chart-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:16px}.chart-title{color:var(--text-secondary);margin-bottom:12px;font-size:13px;font-weight:600}.chart-header-row{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.chart-header-row .chart-title{margin-bottom:0}.compare-select{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:var(--radius);cursor:pointer;outline:none;padding:4px 8px;font-size:11px;transition:border-color .15s}.compare-select:hover,.compare-select:focus{border-color:var(--accent)}.scatter-legend{border-top:1px solid var(--border-primary);color:var(--text-secondary);align-items:center;gap:12px;margin-top:8px;padding-top:8px;font-size:11px;display:flex}.scatter-legend-item{align-items:center;gap:4px;display:flex}.scatter-legend-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.scatter-legend-hint{color:var(--text-muted);margin-left:auto;font-size:10px}.chart-empty{height:200px;color:var(--text-muted);justify-content:center;align-items:center;font-size:13px;display:flex}.case-log-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.case-log-header h2{font-size:18px;font-weight:700}.case-count{color:var(--text-muted);font-size:12px}.table-wrapper{border:1px solid var(--border-primary);border-radius:var(--radius-lg);overflow-x:auto}.case-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:12px}.case-table th{background:var(--bg-tertiary);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;text-align:left;border-bottom:1px solid var(--border-primary);white-space:nowrap;text-overflow:ellipsis;padding:10px 6px;font-size:10px;font-weight:600;position:sticky;top:0;overflow:hidden}.case-table td{border-bottom:1px solid var(--border-primary);color:var(--text-secondary);text-overflow:ellipsis;padding:6px;overflow:hidden}.case-table th:first-child,.case-table td:first-child{text-align:center;width:40px}.case-table th:nth-child(2),.case-table td:nth-child(2){width:60px}.case-table th:nth-child(3),.case-table td:nth-child(3){width:68px}.case-table th:nth-child(4),.case-table td:nth-child(4){width:78px}.case-table th:nth-child(5),.case-table td:nth-child(5){width:80px}.case-table th:nth-child(6),.case-table td:nth-child(6){width:72px}.case-table th:nth-child(7),.case-table td:nth-child(7){width:92px}.case-table th:nth-child(8),.case-table td:nth-child(8){width:80px}.case-table th:nth-child(9),.case-table td:nth-child(9){width:82px}.case-table th:nth-child(10),.case-table td:nth-child(10){width:50px}.case-table th:nth-child(11),.case-table td:nth-child(11){width:52px}.case-table th:nth-child(12),.case-table td:nth-child(12),.case-table th:nth-child(13),.case-table td:nth-child(13){width:44px}.case-table th:nth-child(14),.case-table td:nth-child(14){width:48px}.case-table th:nth-child(15),.case-table td:nth-child(15){width:76px}.case-table th:nth-child(16),.case-table td:nth-child(16){width:68px}.case-table tr:hover td{background:var(--bg-tertiary)}.case-table tr.row-review td{border-left:3px solid var(--amber);background:#d69e2e0f}.case-table tr.row-failed td{border-left:3px solid var(--red);background:#f851490f}.cell-id{color:var(--accent);font-family:JetBrains Mono,monospace;font-size:11px}.cell-date{font-family:JetBrains Mono,monospace;font-size:11px}.cell-num{text-align:right;font-family:JetBrains Mono,monospace}.inline-select{background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border-primary);cursor:pointer;border-radius:4px;padding:3px 6px;font-size:11px;transition:border-color .15s}.inline-select:hover{border-color:var(--accent)}.inline-select.saving{opacity:.5;cursor:wait}.viewer-placeholder{justify-content:center;align-items:center;min-height:60vh;display:flex}.viewer-content{text-align:center;max-width:440px}.viewer-icon{margin-bottom:16px;font-size:48px}.viewer-content h2{margin-bottom:8px;font-size:20px}.viewer-content p{color:var(--text-muted);margin-bottom:24px;font-size:13px}.viewer-actions{margin-bottom:24px}.btn-launch-analyzer{border-radius:var(--radius);background:var(--accent);color:#fff;border:none;padding:12px 28px;font-size:14px;font-weight:600;text-decoration:none;transition:opacity .15s;display:inline-block}.btn-launch-analyzer:hover{opacity:.85}.viewer-or{color:var(--text-muted);text-transform:uppercase;margin:12px 0;font-size:11px}.viewer-cmd{background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius);text-align:left;padding:10px 14px}.viewer-cmd code{color:var(--accent);font-family:JetBrains Mono,monospace;font-size:13px}.viewer-cmd-hint{color:var(--text-muted);margin-top:4px;font-size:11px;display:block}.viewer-features{text-align:left;flex-direction:column;gap:12px;margin-bottom:24px;display:flex}.viewer-feature{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius);color:var(--text-secondary);align-items:center;gap:10px;padding:10px 14px;font-size:13px;display:flex}.feature-icon{font-size:18px}.viewer-embed{flex-direction:column;height:calc(100vh - 100px);display:flex}.viewer-toolbar{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg) var(--radius-lg) 0 0;justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.viewer-status{font-size:12px;font-weight:600}.viewer-status.online{color:var(--green)}.btn-open-tab{color:var(--accent);font-size:12px;font-weight:600;text-decoration:none}.btn-open-tab:hover{text-decoration:underline}.viewer-iframe{border:1px solid var(--border-primary);border-radius:0 0 var(--radius-lg) var(--radius-lg);background:#0d1117;border-top:none;flex:1;width:100%;height:100%}.verify-banner{background:linear-gradient(135deg,#3fb9501f,#58a6ff14);border:1px solid #3fb9504d;border-top:none;justify-content:center;align-items:center;gap:16px;padding:12px 20px;animation:2.5s ease-in-out infinite verify-glow;display:flex}.verify-banner.verified{background:#3fb95014;border-color:#3fb95033;animation:none}.verify-banner-text{color:var(--green);font-size:13px;font-weight:600}.btn-verify-case{color:#fff;border-radius:var(--radius);cursor:pointer;letter-spacing:.01em;background:linear-gradient(135deg,#3fb950,#2ea043);border:none;padding:10px 24px;font-size:14px;font-weight:700;transition:all .2s;box-shadow:0 2px 8px #3fb9504d}.btn-verify-case:hover{background:linear-gradient(135deg,#4cc764,#3fb950);transform:translateY(-1px);box-shadow:0 4px 16px #3fb95066}.btn-verify-case:active{transform:translateY(0)}.btn-verify-case:disabled{opacity:.5;cursor:wait;box-shadow:none;transform:none}@keyframes verify-glow{0%,to{box-shadow:inset 0 0 12px #3fb95000}50%{box-shadow:inset 0 0 12px #3fb95014}}.settings h2{margin-bottom:20px;font-size:18px;font-weight:700}.settings-section h3{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:12px;font-size:13px;font-weight:600}.slider-value{min-width:40px;color:var(--accent);font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600}.btn-export:hover{opacity:.85}.ai-toggle{background:var(--accent);color:#fff;cursor:pointer;z-index:1000;border:none;border-radius:50%;width:48px;height:48px;font-size:20px;transition:transform .15s;position:fixed;bottom:20px;right:20px;box-shadow:0 4px 16px #58a6ff4d}.ai-toggle:hover{transform:scale(1.1)}.ai-panel{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);width:440px;height:540px;box-shadow:var(--shadow);z-index:999;flex-direction:column;animation:.2s ease-out slideUp;display:flex;position:fixed;bottom:80px;right:20px}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ai-header{border-bottom:1px solid var(--border-primary);justify-content:space-between;align-items:center;padding:12px 16px;font-size:13px;font-weight:600;display:flex}.ai-badge{background:var(--bg-elevated);border:1px solid var(--border-primary);color:var(--text-muted);border-radius:10px;padding:2px 8px;font-size:10px}.ai-messages{flex-direction:column;flex:1;gap:8px;padding:12px;display:flex;overflow-y:auto}.ai-message{border-radius:var(--radius);max-width:85%;padding:8px 12px;font-size:13px;line-height:1.5}.ai-message:has(.ai-chart-container){width:100%;max-width:100%}.ai-message.user{background:var(--accent);color:#fff;align-self:flex-end}.ai-message.ai{background:var(--bg-tertiary);color:var(--text-secondary);align-self:flex-start}.ai-message.typing .dots{animation:1.2s infinite blink}@keyframes blink{0%,to{opacity:.3}50%{opacity:1}}.ai-input-row{border-top:1px solid var(--border-primary);gap:8px;padding:12px;display:flex}.ai-input{background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius);color:var(--text-primary);flex:1;padding:8px 12px;font-size:13px}.ai-input:focus{border-color:var(--accent);outline:none}.ai-send{border-radius:var(--radius);background:var(--accent);color:#fff;cursor:pointer;border:none;width:36px;height:36px;font-size:16px;transition:opacity .15s}.ai-send:hover{opacity:.85}.ai-send:disabled{opacity:.4;cursor:not-allowed}.ai-chart-container{background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius);margin-top:8px;padding:10px 6px 6px}.ai-chart-title{color:var(--text-primary);margin-bottom:6px;padding-left:6px;font-size:12px;font-weight:600}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@media (width<=900px){.charts-row,.settings-grid{grid-template-columns:1fr}.metric-cards{grid-template-columns:repeat(3,1fr)}}.severity-green{border-color:#3fb95066!important}.severity-green .metric-value{color:var(--green)}.severity-yellow{border-color:#d69e2e66!important}.severity-yellow .metric-value{color:var(--amber)}.severity-red{border-color:#f8514966!important}.severity-red .metric-value{color:var(--red)}.metric-benchmark{color:var(--text-muted);margin-top:2px;font-family:JetBrains Mono,monospace;font-size:9px}.benchmark-legend{flex-direction:column;gap:12px;display:flex}.benchmark-source{color:var(--text-muted);background:var(--bg-tertiary);border-radius:var(--radius);border-left:3px solid var(--accent);padding:10px;font-size:11px;line-height:1.5}.benchmark-items{flex-direction:column;gap:10px;display:flex}.benchmark-row{background:var(--bg-tertiary);border-radius:var(--radius);align-items:center;gap:10px;padding:8px 12px;display:flex}.benchmark-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.benchmark-name{color:var(--text-secondary);flex:1;font-size:12px}.benchmark-val{color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600}.benchmark-key{border-top:1px solid var(--border-primary);flex-direction:column;gap:6px;padding-top:8px;display:flex}.key-item{color:var(--text-muted);align-items:center;gap:8px;font-size:11px;display:flex}.key-swatch{border-radius:3px;flex-shrink:0;width:12px;height:12px}.key-swatch.severity-green{background:var(--green);border:none}.key-swatch.severity-yellow{background:var(--amber);border:none}.key-swatch.severity-red{background:var(--red);border:none}.chart-tooltip{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius);padding:8px 12px;font-size:12px;line-height:1.6}.chart-empty{height:200px;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:13px;display:flex}.chart-empty-icon{margin-bottom:4px;font-size:32px}.chart-empty-sub{opacity:.6;font-size:11px}.charts-row+.charts-row{margin-top:16px}.cell-green{color:var(--green)!important}.cell-yellow{color:var(--amber)!important}.cell-red{color:var(--red)!important}.coaching-panel{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);margin-bottom:20px;padding:16px}.coaching-header{align-items:center;gap:10px;margin-bottom:4px;display:flex}.coaching-header h2{margin:0;font-size:16px;font-weight:700}.coaching-badge{color:#fff;letter-spacing:.06em;background:linear-gradient(135deg,#a78bfa,#58a6ff);border-radius:10px;padding:2px 8px;font-size:9px;font-weight:700}.coaching-refresh{border:1px solid var(--border-primary);color:var(--text-secondary);border-radius:var(--radius);cursor:pointer;background:0 0;margin-left:auto;padding:2px 8px;font-size:14px}.coaching-refresh:hover{background:var(--bg-tertiary)}.coaching-subtitle{color:var(--text-muted);margin-bottom:12px;font-size:11px}.coaching-loading{text-align:center;color:var(--text-muted);padding:20px;font-size:13px}.coaching-empty{text-align:center;color:var(--text-muted);padding:20px}.coaching-empty-icon{margin-bottom:4px;font-size:28px}.insights-list{flex-direction:column;gap:8px;display:flex}.insight-card{border:1px solid var(--border-primary);border-radius:var(--radius);cursor:pointer;border-left:3px solid var(--text-muted);transition:all .15s}.insight-card:hover{background:var(--bg-tertiary)}.insight-card.insight-critical{border-left-color:var(--red)}.insight-card.insight-warning{border-left-color:var(--amber)}.insight-card.insight-positive{border-left-color:var(--green)}.insight-card.insight-info{border-left-color:var(--accent)}.insight-header{align-items:center;gap:8px;padding:10px 12px;display:flex}.insight-icon{font-size:16px}.insight-title{color:var(--text-primary);flex:1;font-size:13px;font-weight:600}.insight-toggle{color:var(--text-muted);font-size:10px}.insight-body{color:var(--text-secondary);padding:0 12px 12px 36px;font-size:12px;line-height:1.6;animation:.2s ease-out fadeIn}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;background:#000000b3;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);width:90%;max-width:500px;padding:28px;box-shadow:0 20px 60px #00000080}.onboarding-header{text-align:center;margin-bottom:24px}.onboarding-icon{font-size:40px}.onboarding-header h2{margin:8px 0 4px;font-size:20px;font-weight:700}.onboarding-header p{color:var(--text-muted);font-size:13px}.onboarding-progress{justify-content:center;gap:8px;margin-bottom:24px;display:flex}.progress-dot{background:var(--border-primary);border-radius:50%;width:8px;height:8px;transition:background .3s}.progress-dot.active{background:var(--accent)}.onboarding-question{margin-bottom:24px}.question-label{margin-bottom:8px;font-size:14px;font-weight:600;display:block}.question-help{color:var(--text-muted);margin-bottom:12px;font-size:11px}.question-input{background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius);width:100%;color:var(--text-primary);padding:10px 14px;font-family:Inter,sans-serif;font-size:14px}.question-input:focus{border-color:var(--accent);outline:none}.question-options{flex-direction:column;gap:6px;display:flex}.question-options.compact{flex-flow:wrap}.option-btn{border:1px solid var(--border-primary);border-radius:var(--radius);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;text-align:left;padding:8px 14px;font-size:13px;transition:all .15s}.option-btn:hover{border-color:var(--accent);color:var(--text-primary)}.option-btn.selected{border-color:var(--accent);color:var(--accent);background:#58a6ff1a;font-weight:600}.onboarding-actions{justify-content:flex-end;gap:10px;display:flex}.btn-back,.btn-skip{border:1px solid var(--border-primary);border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;background:0 0;padding:8px 16px;font-size:13px}.btn-back:hover,.btn-skip:hover{background:var(--bg-tertiary)}.btn-next,.btn-save{border-radius:var(--radius);background:var(--accent);color:#fff;cursor:pointer;border:none;padding:8px 20px;font-size:13px;font-weight:600;transition:opacity .15s}.btn-next:hover,.btn-save:hover{opacity:.85}.btn-next:disabled,.btn-save:disabled{opacity:.4;cursor:not-allowed}.viewer-iframe-container{flex:1;min-height:0;position:relative}.debrief-inline{z-index:100;max-height:calc(100% - 120px);padding:0;animation:.3s ease-out debrief-slide-in;position:absolute;top:20px;right:20px;overflow-y:auto}.debrief-inline .debrief-modal{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);max-width:525px;padding:20px;box-shadow:0 8px 32px #00000080}@keyframes debrief-slide-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.debrief-header{align-items:center;gap:12px;margin-bottom:20px;display:flex}.debrief-icon{font-size:28px}.debrief-header h2{margin:0;font-size:16px;font-weight:700}.debrief-header p{color:var(--text-muted);margin:2px 0 0;font-size:11px}.btn-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;margin-left:auto;font-size:16px}.debrief-questions{flex-direction:column;gap:16px;margin-bottom:20px;display:flex}.debrief-question .question-label{font-size:13px}.debrief-actions{justify-content:flex-end;gap:10px;display:flex}.debrief-saved{text-align:center;padding:32px}.saved-icon{font-size:40px}.debrief-saved h3{margin:8px 0 4px;font-size:16px}.debrief-saved p{color:var(--text-muted);font-size:12px}.intro-message{margin-bottom:24px;line-height:1.7}.intro-lead{color:var(--text-primary);margin-bottom:12px;font-size:15px}.intro-detail{color:var(--text-secondary);margin-bottom:12px;font-size:13px}.intro-mission{color:var(--accent);border-radius:var(--radius);border-left:3px solid var(--accent);background:#58a6ff14;padding:12px 16px;font-size:14px}.goal-options{flex-direction:column;gap:8px;margin-bottom:24px;display:flex}.goal-btn{border:1px solid var(--border-primary);border-radius:var(--radius);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;text-align:left;align-items:center;gap:12px;padding:12px 16px;font-size:13px;transition:all .15s;display:flex}.goal-btn:hover{border-color:var(--accent);color:var(--text-primary)}.goal-btn.selected{border-color:var(--accent);color:var(--accent);background:#58a6ff1a;font-weight:600}.goal-icon{font-size:18px}.upload-guide{flex-direction:column;gap:16px;margin-bottom:24px;display:flex}.guide-step{align-items:flex-start;gap:14px;display:flex}.guide-number{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:700;display:flex}.guide-step strong{color:var(--text-primary);margin-bottom:2px;font-size:13px;display:block}.guide-step p{color:var(--text-muted);margin:0;font-size:12px}.drip-inline{border:1px solid var(--accent);border-radius:var(--radius);background:#58a6ff0d;margin-top:8px;padding:12px}.drip-context{color:var(--text-muted);margin-bottom:8px;font-size:11px}.drip-input{background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius);width:100%;color:var(--text-primary);margin-bottom:8px;padding:8px 12px;font-size:13px}.drip-input:focus{border-color:var(--accent);outline:none}.drip-options{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.drip-opt{border:1px solid var(--border-primary);border-radius:var(--radius);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;padding:6px 12px;font-size:12px}.drip-opt:hover{border-color:var(--accent)}.drip-opt.sel{border-color:var(--accent);color:var(--accent);background:#58a6ff1a}.drip-submit{border-radius:var(--radius);background:var(--accent);color:#fff;cursor:pointer;border:none;padding:5px 14px;font-size:12px;font-weight:600}.drip-submit:disabled{opacity:.4}.empty-dashboard{justify-content:center;align-items:center;min-height:400px;display:flex}.empty-cta{text-align:center;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);max-width:420px;padding:40px}.empty-icon{font-size:48px}.empty-cta h2{margin:12px 0 8px;font-size:20px;font-weight:700}.empty-cta>p{color:var(--text-secondary);margin-bottom:20px;font-size:13px}.btn-upload-cta{border-radius:var(--radius);background:var(--accent);color:#fff;cursor:pointer;border:none;padding:12px 28px;font-size:14px;font-weight:600;transition:opacity .15s;display:inline-block}.btn-upload-cta:hover{opacity:.85}.empty-hint{color:var(--text-muted);margin-top:12px;font-size:11px}.aa-sidebar{background:var(--bg-secondary);border-left:1px solid var(--border-primary);flex-direction:column;width:380px;min-width:380px;height:100%;display:flex}.aa-sidebar-header{border-bottom:1px solid var(--border-primary);background:linear-gradient(135deg,#58a6ff0f,#58a6ff05);justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.aa-brand{align-items:center;gap:12px;display:flex}.aa-brand-icon{filter:drop-shadow(0 2px 4px #58a6ff4d);font-size:28px}.aa-brand-title{color:var(--text-primary);letter-spacing:-.01em;margin:0;font-size:15px;font-weight:700}.aa-brand-sub{color:var(--text-muted);margin:2px 0 0;font-size:11px}.aa-case-count{color:var(--accent);background:#58a6ff1a;border-radius:10px;padding:3px 8px;font-size:11px;font-weight:600}.aa-sidebar-messages{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.aa-welcome{text-align:center;padding:32px 16px 24px}.aa-welcome-icon{filter:drop-shadow(0 4px 8px #58a6ff4d);margin-bottom:16px;font-size:48px}.aa-welcome h3{color:var(--text-primary);margin:0 0 8px;font-size:18px;font-weight:700}.aa-welcome p{color:var(--text-secondary);margin:0 0 20px;font-size:13px;line-height:1.6}.aa-prompts{flex-direction:column;gap:8px;display:flex}.aa-prompt{background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius);color:var(--text-secondary);text-align:left;cursor:pointer;padding:10px 14px;font-size:12px;transition:all .15s}.aa-prompt:hover{border-color:var(--accent);color:var(--accent);background:#58a6ff0f;transform:translate(2px)}.aa-msg{border-radius:var(--radius);max-width:94%;padding:10px 14px;font-size:13px;line-height:1.55;animation:.15s ease-out aa-msg-in}@keyframes aa-msg-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.aa-msg.user{background:var(--accent);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.aa-msg.ai{background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border-primary);border-bottom-left-radius:4px;align-self:flex-start}.aa-msg.ai.positive{border-left:3px solid var(--green)}.aa-msg.ai.warning{border-left:3px solid var(--yellow)}.aa-msg.ai.critical{border-left:3px solid var(--red)}.aa-msg.ai.info{border-left:3px solid var(--accent)}.aa-msg-header{align-items:center;gap:6px;margin-bottom:4px;display:flex}.aa-msg-icon{font-size:14px}.aa-msg-title{color:var(--text-secondary);font-size:12px;font-weight:700}.aa-msg-text{font-size:13px;line-height:1.55}.aa-drip{border-top:1px solid var(--border-primary);margin-top:8px;padding-top:8px}.aa-drip-context{color:var(--text-muted);margin-bottom:6px;font-size:11px}.aa-drip-row{gap:6px;display:flex}.aa-drip-input{background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius);color:var(--text-primary);flex:1;padding:6px 10px;font-size:13px}.aa-drip-input:focus{border-color:var(--accent);outline:none}.aa-drip-submit{border-radius:var(--radius);background:var(--accent);color:#fff;cursor:pointer;border:none;padding:6px 12px;font-size:12px;font-weight:600}.aa-drip-submit:disabled{opacity:.4}.aa-drip-options{flex-wrap:wrap;gap:5px;display:flex}.aa-drip-opt{border:1px solid var(--border-primary);border-radius:var(--radius);background:var(--bg-primary);color:var(--text-secondary);cursor:pointer;padding:5px 10px;font-size:11px;transition:all .1s}.aa-drip-opt:hover{border-color:var(--accent);color:var(--accent);background:#58a6ff14}.aa-typing span{color:var(--text-muted);font-size:16px;animation:1.2s infinite aa-dots;display:inline-block}.aa-typing span:nth-child(2){animation-delay:.2s}.aa-typing span:nth-child(3){animation-delay:.4s}@keyframes aa-dots{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.aa-quick-actions{border-top:1px solid var(--border-primary);padding:8px 16px}.aa-action-btn{border:1px dashed var(--accent);border-radius:var(--radius);width:100%;color:var(--accent);cursor:pointer;background:#58a6ff0d;padding:10px 12px;font-size:13px;font-weight:600;transition:background .15s}.aa-action-btn:hover{background:#58a6ff1f}.aa-sidebar-input{border-top:1px solid var(--border-primary);background:var(--bg-primary);gap:8px;padding:14px 16px;display:flex}.aa-input{background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius);color:var(--text-primary);flex:1;padding:10px 14px;font-size:13px}.aa-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #58a6ff26}.aa-input::placeholder{color:var(--text-muted)}.aa-send{border-radius:var(--radius);background:var(--accent);color:#fff;cursor:pointer;border:none;width:38px;height:38px;font-size:18px;font-weight:700;transition:opacity .15s}.aa-send:disabled{opacity:.3}.aa-send:not(:disabled):hover{opacity:.85}.aa-file-input{display:none}.aa-attach-btn{border:1px solid var(--border-primary);border-radius:var(--radius);background:var(--bg-elevated);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:16px;transition:all .15s;display:flex}.aa-attach-btn:hover{border-color:var(--accent);background:#58a6ff14}.aa-attach-btn:disabled{opacity:.3}.aa-image-preview{border-top:1px solid var(--border-primary);background:var(--bg-elevated);align-items:center;gap:10px;padding:8px 16px;display:flex}.aa-image-preview img{object-fit:cover;border:1px solid var(--border-primary);border-radius:6px;width:48px;height:48px}.aa-image-clear{background:var(--red);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;display:flex}.aa-image-label{color:var(--text-muted);font-size:11px}.aa-msg-image{margin-bottom:8px}.aa-msg-image img{border:1px solid #ffffff1a;border-radius:6px;max-width:100%;max-height:200px}.aa-header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.aa-teach-toggle{border:1px solid var(--border-primary);background:var(--bg-elevated);color:var(--text-muted);cursor:pointer;white-space:nowrap;border-radius:14px;padding:4px 10px;font-size:11px;font-weight:600;transition:all .2s}.aa-teach-toggle:hover{border-color:var(--accent);color:var(--text-primary)}.aa-teach-toggle.active{color:#4ade80;background:#4ade8026;border-color:#4ade80;box-shadow:0 0 8px #4ade8033}.aa-teach-bar{border-top:1px solid var(--border-primary);background:#4ade800d;align-items:center;gap:4px;padding:6px 16px;display:flex}.aa-teach-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-right:4px;font-size:10px}.aa-teach-cat{border:1px solid var(--border-primary);color:var(--text-muted);cursor:pointer;text-transform:capitalize;background:0 0;border-radius:10px;padding:3px 8px;font-size:10px;transition:all .15s}.aa-teach-cat:hover{color:var(--text-primary);border-color:#4ade80}.aa-teach-cat.active{color:#4ade80;background:#4ade8033;border-color:#4ade80}.aa-sidebar-input.teach-active{border-top-color:#4ade80}.batch-upload{padding:8px 0}.batch-heading{color:var(--text-primary);margin-bottom:4px;font-size:18px;font-weight:700}.batch-subtitle{color:var(--text-muted);margin-bottom:16px;font-size:12px}.batch-dropzone{border:2px dashed var(--border-primary);border-radius:var(--radius-lg);text-align:center;cursor:pointer;background:var(--bg-secondary);padding:32px;transition:all .2s}.batch-dropzone:hover,.batch-dropzone.drag-over{border-color:var(--accent);background:#58a6ff0f}.dropzone-icon{margin-bottom:8px;font-size:32px}.dropzone-text{color:var(--text-secondary);font-size:13px}.dropzone-link{color:var(--accent);text-decoration:underline}.dropzone-hint{color:var(--text-muted);margin-top:6px;font-size:11px}.dropzone-status{color:var(--accent);margin-top:8px;font-size:12px;font-weight:600;animation:.2s fadeIn}.batch-queue{margin-top:16px}.batch-queue-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.batch-queue-header h3{color:var(--text-secondary);font-size:13px;font-weight:600}.btn-process-all{background:var(--accent);color:#fff;border-radius:var(--radius);cursor:pointer;border:none;padding:6px 14px;font-size:12px;font-weight:600;transition:background .15s}.btn-process-all:hover{background:#4090e0}.batch-case-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius);margin-bottom:10px;padding:12px;transition:border-color .2s}.batch-case-card.status-processing{border-color:var(--accent)}.batch-case-card.status-done{border-color:#4ade80}.batch-case-card.status-error{border-color:#ef4444}.case-files{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.btn-delete-batch-case{border:1px solid var(--border-primary);border-radius:var(--radius);color:var(--text-muted);cursor:pointer;background:0 0;margin-left:auto;padding:2px 8px;font-size:14px;transition:all .15s}.btn-delete-batch-case:hover{color:#ef4444;background:#ef444414;border-color:#ef4444}.case-file-badge{background:var(--bg-tertiary);color:var(--text-secondary);border-radius:var(--radius);text-overflow:ellipsis;white-space:nowrap;max-width:250px;padding:3px 8px;font-size:11px;overflow:hidden}.case-file-badge.file-missing{color:#f59e0b;background:#f59e0b14;border:1px dashed #f59e0b}.case-meta-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.case-meta-row select{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:var(--radius);cursor:pointer;outline:none;padding:4px 6px;font-size:11px}.case-meta-row select:focus{border-color:var(--accent)}.btn-remove-case{border:1px solid var(--border-primary);color:var(--text-muted);border-radius:var(--radius);cursor:pointer;background:0 0;margin-left:auto;padding:3px 8px;font-size:12px}.btn-remove-case:hover{color:#ef4444;border-color:#ef4444}.case-processing{color:var(--accent);align-items:center;gap:10px;font-size:12px;display:flex}.processing-spinner{border:2px solid var(--border-primary);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.case-error{color:#ef4444;justify-content:space-between;align-items:center;font-size:12px;display:flex}.btn-retry{color:#ef4444;border-radius:var(--radius);cursor:pointer;background:#ef444426;border:1px solid #ef4444;padding:3px 10px;font-size:11px}.case-result{margin-top:4px}.result-header{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.result-patient{color:var(--text-primary);font-size:13px;font-weight:600}.result-quality-badge{color:#0d1117;text-transform:capitalize;border-radius:10px;padding:2px 8px;font-size:10px;font-weight:600}.result-status{font-size:11px;font-weight:600}.result-status.success{color:#4ade80}.result-status.needs_review{color:#f59e0b}.result-status-btn.needs-review{color:#f59e0b;border-radius:var(--radius);cursor:pointer;background:#f59e0b1f;border:1px solid #f59e0b66;padding:4px 10px;font-size:11px;font-weight:600;transition:all .15s}.result-status-btn.needs-review:hover{background:#f59e0b38;border-color:#f59e0b;box-shadow:0 0 8px #f59e0b40}.result-status-btn.view-case{color:#3fb950;border-radius:var(--radius);cursor:pointer;background:#3fb9501a;border:1px solid #3fb9504d;padding:4px 10px;font-size:11px;font-weight:600;text-decoration:none;transition:all .15s}.result-status-btn.view-case:hover{background:#3fb95033;border-color:#3fb950;box-shadow:0 0 8px #3fb95040}.result-status-btn{text-decoration:none}.needs-review-label{color:#f59e0b;font-size:12px;font-weight:600}.arch-badge{border-radius:4px;padding:1px 6px;font-size:10px;font-weight:700;display:inline-block}.arch-badge.max{color:#58a6ff;background:#58a6ff26}.arch-badge.mand{color:#a78bfa;background:#a78bfa26}.result-per-arch{gap:8px;margin-top:4px;display:flex}.arch-rmse{border-radius:4px;padding:2px 8px;font-size:10px;font-weight:600}.arch-rmse.good{color:#3fb950;background:#3fb9501f}.arch-rmse.fair{color:#d69e2e;background:#d69e2e1f}.arch-rmse.poor{color:#f85149;background:#f851491f}.mentor-warning{color:#f59e0b;background:#f59e0b14;border:1px solid #f59e0b4d;border-radius:8px;align-items:flex-start;gap:10px;margin-top:10px;padding:10px 14px;font-size:12px;line-height:1.4;display:flex}.mentor-icon{font-size:18px}.storage-warning{color:#f59e0b;background:#f59e0b1a;border:1px solid #f59e0b4d;border-radius:6px;align-items:center;gap:6px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.btn-cleanup{color:#f59e0b;cursor:pointer;background:#f59e0b26;border:1px solid #f59e0b66;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:600}.btn-cleanup:hover{background:#f59e0b40}.btn-cleanup:disabled{opacity:.5;cursor:wait}.case-chips{flex-wrap:wrap;gap:4px;max-width:60%;max-height:52px;display:flex;overflow-y:auto}.case-chip{color:#999;cursor:pointer;white-space:nowrap;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:12px;padding:2px 8px;font-size:9px;transition:all .15s}.case-chip:hover{color:#ccc;background:#ffffff1a}.case-chip.active{color:#22d3ee;background:#22d3ee1f;border-color:#22d3ee66;font-weight:600}.case-chip.selected{background:#22d3ee33;border-color:#22d3ee}.btn-chart-view{cursor:pointer;opacity:.5;background:0 0;border:1px solid #0000;border-radius:4px;padding:2px 4px;font-size:14px;transition:all .15s}.btn-chart-view:hover{opacity:1}.btn-chart-view.active{opacity:1;border-color:#22d3ee;box-shadow:0 0 6px #22d3ee4d}.debrief-scatter{background:#ffffff08;border:1px solid #ffffff0f;border-radius:8px;margin-bottom:12px;padding:12px}.debrief-scatter-title{color:#ccc;margin:0 0 8px;font-size:12px;font-weight:600}.debrief-scatter-chart{background:#0003;border-radius:6px;padding:4px}.result-table{border-collapse:collapse;width:100%;margin-bottom:8px;font-size:11px}.result-table th{text-align:left;color:var(--text-muted);border-bottom:1px solid var(--border-primary);padding:4px 8px;font-weight:500}.result-table td{color:var(--text-secondary);border-bottom:1px solid #ffffff0a;padding:4px 8px}.result-averages{color:var(--text-muted);border-top:1px solid var(--border-primary);flex-wrap:wrap;gap:12px;padding-top:4px;font-size:11px;display:flex}.result-implant-count{color:#4ade80;margin-left:auto;font-weight:600}.batch-summary{border-radius:var(--radius);color:#4ade80;background:#4ade801a;border:1px solid #4ade804d;margin-top:12px;padding:10px 14px;font-size:12px;font-weight:600}.kb-manager-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.kb-manager-panel{background:var(--bg-primary,#1a1a2e);border:1px solid var(--border-primary,#333);border-radius:16px;flex-direction:column;width:600px;max-width:90vw;max-height:80vh;display:flex;box-shadow:0 20px 60px #00000080}.kb-manager-header{border-bottom:1px solid var(--border-primary,#333);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.kb-manager-header h3{color:var(--text-primary,#e0e0e0);margin:0;font-size:16px}.kb-close{color:var(--text-muted,#888);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:18px}.kb-close:hover{color:var(--text-primary,#fff);background:#ffffff1a}.kb-loading,.kb-empty{text-align:center;color:var(--text-muted,#888);padding:40px 20px;font-size:14px}.kb-entries-list{flex-direction:column;gap:10px;padding:12px;display:flex;overflow-y:auto}.kb-entry{background:var(--bg-elevated,#252540);border:1px solid var(--border-primary,#333);border-radius:10px;padding:12px 14px}.kb-entry-header{align-items:center;gap:8px;margin-bottom:6px;display:flex}.kb-cat-badge{text-transform:uppercase;letter-spacing:.5px;color:#8b8bff;background:#6464ff26;border-radius:10px;padding:2px 8px;font-size:10px;font-weight:700}.kb-cat-general{color:#8b8bff;background:#6464ff26}.kb-cat-workflow{color:#4ade80;background:#4ade8026}.kb-cat-tip{color:#fbbf24;background:#fbbf2426}.kb-cat-troubleshooting{color:#f87171;background:#f8717126}.kb-cat-deviation-math{color:#a78bfa;background:#8b5cf626}.kb-cat-cylinder-fit-math{color:#22d3ee;background:#22d3ee26}.kb-cat-icp-math{color:#fb923c;background:#fb923c26}.kb-contributor{color:var(--text-muted,#666);flex:1;font-size:10px}.kb-delete-btn{cursor:pointer;opacity:.5;background:0 0;border:none;border-radius:6px;padding:2px 6px;font-size:14px;transition:opacity .2s}.kb-delete-btn:hover{opacity:1;background:#f8717133}.kb-entry-content{color:var(--text-primary,#e0e0e0);word-break:break-word;margin:0;font-size:13px;line-height:1.5}.kb-timestamp{color:var(--text-muted,#555);margin-top:4px;font-size:10px;display:block}.review-item-actions{align-items:center;gap:4px;display:flex}.review-item-btn{border:1px solid var(--border-primary,#333);background:var(--bg-elevated,#252540);color:var(--text-primary,#e0e0e0);cursor:pointer;white-space:nowrap;border-radius:8px;padding:4px 10px;font-size:11px;transition:all .2s}.review-item-btn:hover{border-color:var(--accent,#58a6ff)}.review-item-btn.accept{border-color:#4ade8066}.review-item-btn.accept:hover{background:#4ade8026;border-color:#4ade80}.review-item-btn.reject{border-color:#f8717166}.review-item-btn.reject:hover{background:#f8717126;border-color:#f87171}.result-status-btn.accept-btn{color:#4ade80;background:#4ade801a;border-color:#4ade8066}.result-status-btn.accept-btn:hover{background:#4ade8033;border-color:#4ade80}.result-status.verified{color:#4ade80;font-size:11px;font-weight:600}.result-verified-banner{background:#4ade8014;border:1px solid #4ade804d;border-radius:8px;align-items:center;gap:10px;width:100%;margin-top:8px;padding:8px 12px;display:flex}.btn-dismiss-verified{color:var(--text-muted);cursor:pointer;background:#ffffff0f;border:1px solid #ffffff26;border-radius:6px;margin-left:auto;padding:3px 10px;font-size:11px}.btn-dismiss-verified:hover{border-color:var(--text-secondary);color:var(--text-primary)}.btn-verify-case{color:#0a0a1a;cursor:pointer;background:linear-gradient(135deg,#4ade80 0%,#22d3ee 100%);border:none;border-radius:8px;padding:6px 16px;font-size:12px;font-weight:700;transition:all .2s;animation:2s ease-in-out infinite pulse-verify}.btn-verify-case:hover{transform:scale(1.05);box-shadow:0 0 12px #4ade8066}@keyframes pulse-verify{0%,to{box-shadow:0 0 4px #4ade8033}50%{box-shadow:0 0 12px #4ade8080}}.verify-confirmed{color:#4ade80;font-size:12px;font-weight:600}.btn-delete-case{cursor:pointer;color:#f87171;opacity:1;white-space:nowrap;background:0 0;border:1px solid #f8717140;border-radius:6px;padding:4px 8px;font-size:11px;transition:all .2s}.btn-delete-case:hover{background:#f8717133;border-color:#f8717199}.btn-delete-case.confirm{color:#fbbf24;background:#fbbf2433;border-color:#fbbf2499;animation:.6s ease-in-out pulse-warn}@keyframes pulse-warn{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.btn-delete-case:disabled{opacity:.5;cursor:wait}.btn-xnav-upload{cursor:pointer;color:#60a5fa;background:0 0;border:1px solid #60a5fa40;border-radius:6px;padding:4px 8px;font-size:14px;transition:all .2s}.btn-xnav-upload:hover{background:#60a5fa33;border-color:#60a5fa99}.btn-xnav-upload:disabled{opacity:.5;cursor:wait}.xnav-done{color:#4ade80;white-space:nowrap;font-size:11px;font-weight:600}.settings{max-width:720px;padding:24px}.settings h2{letter-spacing:-.02em;margin-bottom:24px;font-size:20px;font-weight:700}.settings-section{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);margin-bottom:16px;padding:20px}.settings-section h3{color:var(--text-primary);margin-bottom:12px;font-size:14px;font-weight:600}.settings-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.setting-item label{color:var(--text-secondary);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.setting-hint{color:var(--text-muted);margin-top:4px;font-size:11px}.slider-row{align-items:center;gap:10px;display:flex}.slider-row input[type=range]{accent-color:var(--accent);flex:1}.slider-value{color:var(--accent);text-align:right;min-width:36px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600}.settings-input{background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius);width:100%;color:var(--text-primary);padding:8px 12px;font-family:JetBrains Mono,monospace;font-size:12px}.settings-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #58a6ff26}.btn-export{background:var(--accent);color:#fff;border-radius:var(--radius);cursor:pointer;border:none;padding:10px 20px;font-size:13px;font-weight:600;transition:all .15s}.btn-export:hover{background:#79b8ff;box-shadow:0 2px 8px #58a6ff4d}.storage-meter-card{background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius);padding:16px}.storage-meter-header{justify-content:space-between;align-items:baseline;margin-bottom:10px;display:flex}.storage-meter-usage{color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:22px;font-weight:700}.storage-meter-detail{color:var(--text-muted);font-size:12px}.storage-meter-bar-bg{background:#ffffff0f;border-radius:4px;width:100%;height:8px;margin-bottom:12px;overflow:hidden}.storage-meter-bar-fill{border-radius:4px;min-width:4px;height:100%;transition:width .6s,background .3s}.storage-meter-actions{align-items:center;gap:8px;display:flex}.btn-cleanup-settings{border-radius:var(--radius);color:#f59e0b;cursor:pointer;background:#f59e0b1f;border:1px solid #f59e0b4d;padding:8px 16px;font-size:12px;font-weight:600;transition:all .15s}.btn-cleanup-settings:hover:not(:disabled){background:#f59e0b38;border-color:#f59e0b;box-shadow:0 0 8px #f59e0b33}.btn-cleanup-settings:disabled{opacity:.5;cursor:not-allowed}.btn-refresh-storage{border:1px solid var(--border-primary);color:var(--text-secondary);border-radius:var(--radius);cursor:pointer;background:0 0;padding:6px 10px;font-size:14px;transition:all .15s}.btn-refresh-storage:hover{background:var(--bg-elevated);color:var(--text-primary)}.cleanup-result{border-radius:var(--radius);color:var(--green);background:#3fb9501a;border:1px solid #3fb95033;margin-top:10px;padding:8px 12px;font-size:12px}.cleanup-result.cleanup-error{color:var(--red);background:#f851491a;border-color:#f8514933}.case-viewer{flex-direction:column;gap:0;height:100%;display:flex}.case-viewer-empty{height:100%;color:var(--text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.case-viewer-empty .empty-icon{opacity:.5;font-size:48px}.case-viewer-empty h2{color:var(--text-primary);font-size:18px;font-weight:700}.case-viewer-empty p{max-width:320px;font-size:13px}.cv-header{background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);align-items:center;gap:12px;padding:10px 16px;display:flex}.cv-header h2{flex:1;font-size:15px;font-weight:700}.cv-date{color:var(--text-muted);font-size:11px}.cv-back-btn{border-radius:var(--radius);border:1px solid var(--border-primary);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;padding:5px 12px;font-size:12px;transition:all .15s}.cv-back-btn:hover{color:var(--text-primary);border-color:var(--accent)}.cv-search-box{align-items:center;gap:4px;display:flex}.cv-search-input{border-radius:var(--radius);border:1px solid var(--border-primary);background:var(--bg-tertiary);color:var(--text-primary);outline:none;width:140px;padding:5px 10px;font-family:JetBrains Mono,monospace;font-size:12px}.cv-search-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px #58a6ff26}.cv-search-input::placeholder{color:var(--text-muted);font-family:inherit}.cv-search-btn{border-radius:var(--radius);border:1px solid var(--border-primary);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;padding:5px 10px;font-size:12px;transition:all .15s}.cv-search-btn:hover{border-color:var(--accent);color:var(--accent)}.cv-search-error{color:var(--red);margin-top:-4px;padding:4px 16px;font-size:11px}.cv-body{flex:1;display:flex;overflow:hidden}.cv-viewport{background:#1a1a1a;flex:1;min-height:300px;position:relative}.cv-canvas{touch-action:none;display:block;width:100%!important;height:100%!important}.cv-loading,.cv-error{border-radius:var(--radius);color:var(--text-secondary);background:#000000bf;padding:12px 24px;font-size:13px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cv-error{color:var(--red)}.cv-reset-btn{z-index:10;color:var(--text-secondary);cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1e1e1ed9;border:1px solid #ffffff1f;border-radius:6px;padding:5px 12px;font-size:12px;transition:all .2s;position:absolute;top:10px;right:10px}.cv-reset-btn:hover{color:#fff;background:#3c3c3ce6}.cv-viewport-empty{justify-content:center;align-items:center;display:flex}.cv-no-scene{color:var(--text-muted);opacity:.6;font-size:14px}.cv-panel{border-left:1px solid var(--border-primary);background:var(--bg-secondary);flex-shrink:0;width:320px;overflow-y:auto}.cv-section{border-bottom:1px solid var(--border-primary);padding:14px 16px}.cv-section h3{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px;font-size:11px;font-weight:600}.cv-obj-list{flex-direction:column;gap:6px;display:flex}.cv-obj-row{background:var(--bg-tertiary);border-radius:var(--radius);padding:8px 10px;transition:opacity .15s}.cv-obj-row.off{opacity:.5}.cv-obj-header{align-items:center;gap:8px;display:flex}.cv-color-swatch{border:1px solid #ffffff26;border-radius:3px;flex-shrink:0;width:12px;height:12px}.cv-obj-label{color:var(--text-primary);flex:1;font-size:12px}.cv-toggle{cursor:pointer;flex-shrink:0;width:32px;height:18px;display:inline-block;position:relative}.cv-toggle input{opacity:0;cursor:pointer;z-index:2;width:100%;height:100%;margin:0;position:absolute;top:0;left:0}.cv-toggle-slider{background:var(--bg-elevated);pointer-events:none;border-radius:9px;transition:background .2s;position:absolute;inset:0}.cv-toggle-slider:before{content:"";background:var(--text-muted);border-radius:50%;width:14px;height:14px;transition:transform .2s,background .2s;position:absolute;bottom:2px;left:2px}.cv-toggle input:checked+.cv-toggle-slider{background:#58a6ff4d}.cv-toggle input:checked+.cv-toggle-slider:before{background:var(--accent);transform:translate(14px)}.cv-opacity-row{align-items:center;gap:6px;margin-top:6px;padding-left:20px;display:flex}.cv-opacity-label{color:var(--text-muted);width:40px;font-size:10px}.cv-opacity-slider{appearance:none;background:var(--bg-elevated);border-radius:2px;outline:none;flex:1;height:4px}.cv-opacity-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent);cursor:pointer;border:2px solid var(--bg-tertiary);border-radius:50%;width:14px;height:14px}.cv-opacity-val{color:var(--text-muted);text-align:right;width:30px;font-size:10px}.cv-metric-card{background:var(--bg-tertiary);border-radius:var(--radius);margin-bottom:8px;padding:10px 12px}.cv-metric-site{color:var(--text-secondary);margin-bottom:8px;font-size:11px;font-weight:600}.cv-metrics-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.cv-metric{text-align:center}.cv-metric-val{color:var(--accent);font-family:JetBrains Mono,monospace;font-size:18px;font-weight:700;display:block}.cv-metric-lbl{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:9px}.cv-debrief{color:var(--text-secondary);font-size:12px}.cv-debrief-row{margin-bottom:6px}.cv-debrief-row strong{color:var(--text-primary)}.cv-debrief-q{color:var(--text-muted);margin-bottom:2px;font-size:10px;display:block}.btn-view3d{border:1px solid var(--border-primary);border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;background:0 0;padding:2px 6px;font-size:14px;transition:all .15s}.btn-view3d:hover{border-color:var(--accent);color:var(--accent);background:#58a6ff14}@media (width<=768px){.cv-body{flex-direction:column}.cv-panel{border-left:none;border-top:1px solid var(--border-primary);width:100%;max-height:50vh}.cv-viewport{min-height:250px}}@media (width<=480px){.cv-header{padding:8px 12px}.cv-header h2{font-size:13px}.cv-section{padding:10px 12px}.cv-panel{max-height:60vh}.cv-metrics-grid{grid-template-columns:1fr 1fr;gap:6px}.cv-toggle{min-width:32px;min-height:18px}}.tut-popup{z-index:9999;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);-webkit-user-select:none;user-select:none;flex-direction:column;min-width:360px;min-height:320px;display:flex;position:fixed;overflow:hidden;box-shadow:0 12px 40px #0009,0 0 0 1px #58a6ff1a}.tut-popup.tut-dragging{opacity:.92;cursor:grabbing}.tut-titlebar{background:var(--bg-tertiary);border-bottom:1px solid var(--border-primary);cursor:grab;flex-shrink:0;align-items:center;gap:8px;padding:10px 14px;display:flex}.tut-titlebar-icon{font-size:16px}.tut-titlebar-text{color:var(--text-primary);font-size:14px;font-weight:700}.tut-step-badge{color:var(--accent);background:#58a6ff1a;border:1px solid #58a6ff33;border-radius:12px;margin-left:auto;padding:2px 10px;font-size:11px;font-weight:600}.tut-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;margin-left:8px;padding:2px 6px;font-size:16px;transition:all .15s}.tut-close:hover{color:var(--red);background:#f8514926}.tut-content{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.tut-step-title{color:var(--text-primary);letter-spacing:-.01em;font-size:16px;font-weight:700}.tut-screenshot-area{border-radius:var(--radius);background:var(--bg-primary);border:1px solid var(--border-primary);flex-shrink:0;width:100%;min-height:160px;position:relative;overflow:hidden}.tut-screenshot{width:100%;height:auto;display:block}.tut-screenshot-placeholder{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:40px 20px;font-size:13px;display:flex}.tut-placeholder-icon{opacity:.4;font-size:32px}.tut-placeholder-path{color:var(--text-muted);opacity:.6;font-family:JetBrains Mono,monospace;font-size:11px}.tut-arrow{pointer-events:none;filter:drop-shadow(0 0 6px #22d3ee80);animation:1.2s ease-in-out infinite tutArrowBlink;position:absolute}@keyframes tutArrowBlink{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.9)}}.tut-arrow{animation:1.2s ease-in-out 5 forwards tutArrowPulse}@keyframes tutArrowPulse{0%,to{opacity:1;filter:drop-shadow(0 0 6px #22d3ee80)}50%{opacity:.35;filter:drop-shadow(0 0 2px #22d3ee33)}}.tut-arrow-label{white-space:nowrap;color:#22d3ee;pointer-events:none;background:#000000b3;border-radius:4px;margin-top:4px;padding:2px 8px;font-size:10px;font-weight:600;position:absolute;top:100%;left:50%;transform:translate(-50%)}.tut-description{color:var(--text-secondary);font-size:13px;line-height:1.6}.tut-nav{border-top:1px solid var(--border-primary);background:var(--bg-tertiary);flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.tut-dots{gap:6px;display:flex}.tut-dot{border:1.5px solid var(--text-muted);cursor:pointer;background:0 0;border-radius:50%;width:8px;height:8px;padding:0;transition:all .2s}.tut-dot.active{background:var(--accent);border-color:var(--accent);transform:scale(1.3)}.tut-dot.done{background:var(--green);border-color:var(--green)}.tut-nav-buttons{gap:8px;display:flex}.tut-nav-btn{background:var(--bg-elevated);border:1px solid var(--border-primary);color:var(--text-secondary);cursor:pointer;border-radius:6px;padding:5px 14px;font-size:12px;font-weight:600;transition:all .15s}.tut-nav-btn:hover:not(:disabled){background:var(--bg-primary);color:var(--text-primary);border-color:var(--accent)}.tut-nav-btn:disabled{opacity:.35;cursor:default}.tut-nav-next{color:var(--accent);background:#58a6ff1f;border-color:#58a6ff40}.tut-nav-done{color:var(--green);background:#3fb9501f;border-color:#3fb95040}.tut-resize-handle{cursor:nwse-resize;background:linear-gradient(135deg, transparent 50%, var(--text-muted) 50%, var(--text-muted) 60%, transparent 60%, transparent 70%, var(--text-muted) 70%, var(--text-muted) 80%, transparent 80%);opacity:.4;border-radius:0 0 var(--radius-lg) 0;width:18px;height:18px;position:absolute;bottom:0;right:0}.tut-resize-handle:hover{opacity:.8}.tut-edit-btn{cursor:pointer;opacity:.5;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:14px;transition:opacity .2s,background .2s}.tut-edit-btn:hover{opacity:1;background:#ffffff14}.tut-edit-btn.active{opacity:1;background:#22d3ee26;box-shadow:0 0 8px #22d3ee4d}.tut-edit-active,.tut-edit-active img{cursor:crosshair!important}.tut-coord-marker{pointer-events:none;z-index:20;position:absolute;transform:translate(-50%,-50%)}.tut-coord-marker:before{content:"";background:#ef4444;border:2px solid #fff;border-radius:50%;width:10px;height:10px;margin:0 auto;display:block;box-shadow:0 0 6px #ef444499}.tut-coord-label{color:#fff;white-space:nowrap;text-align:center;background:#000c;border-radius:3px;margin-top:2px;padding:1px 5px;font-family:monospace;font-size:10px;display:block}.login-page{background:linear-gradient(135deg,#0a0e1a 0%,#0d1117 40%,#111827 100%);justify-content:center;align-items:center;min-height:100vh;font-family:Inter,sans-serif;display:flex}.login-container{border:1px solid var(--border-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#161b22d9;border-radius:20px;width:100%;max-width:420px;padding:40px;box-shadow:0 20px 60px #00000080,0 0 80px #58a6ff0d}.login-header{text-align:center;margin-bottom:28px}.login-logo{filter:drop-shadow(0 4px 12px #58a6ff4d);margin-bottom:12px;font-size:56px}.login-header h1{color:var(--text-primary);letter-spacing:-.3px;margin:0 0 6px;font-size:20px;font-weight:700}.login-subtitle{color:var(--text-muted);text-transform:uppercase;letter-spacing:1.5px;margin:0;font-size:12px}.login-tabs{background:var(--bg-tertiary);border-radius:10px;gap:4px;margin-bottom:24px;padding:3px;display:flex}.login-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:8px 0;font-family:inherit;font-size:13px;font-weight:600;transition:all .2s}.login-tab.active{background:var(--bg-elevated);color:var(--text-primary);box-shadow:0 2px 8px #0000004d}.login-form{flex-direction:column;gap:16px;display:flex}.login-field label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.login-field input{background:var(--bg-tertiary);border:1px solid var(--border-primary);width:100%;color:var(--text-primary);box-sizing:border-box;border-radius:10px;padding:10px 14px;font-family:inherit;font-size:14px;transition:border-color .2s}.login-field input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #58a6ff26}.login-field input::placeholder{color:var(--text-muted)}.password-input-wrapper{position:relative}.password-input-wrapper input{padding-right:44px}.password-toggle{cursor:pointer;background:0 0;border:none;padding:4px;font-size:16px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.password-strength{align-items:center;gap:8px;margin-top:6px;display:flex}.strength-bar{flex:1;gap:3px;display:flex}.strength-segment{border-radius:2px;flex:1;height:3px;transition:background .3s}.login-message{border-radius:10px;padding:10px 14px;font-size:13px}.login-error{color:var(--red);background:#f8514914;border:1px solid #f8514940}.login-success{color:var(--green);background:#3fb95014;border:1px solid #3fb95040}.login-submit{background:linear-gradient(135deg, var(--accent), #3b82f6);color:#fff;cursor:pointer;border:none;border-radius:12px;margin-top:4px;padding:12px 0;font-family:inherit;font-size:15px;font-weight:700;transition:all .2s}.login-submit:hover{transform:translateY(-1px);box-shadow:0 4px 16px #58a6ff40}.login-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.login-hipaa-badge{color:var(--text-muted);border-top:1px solid var(--border-primary);justify-content:center;align-items:center;gap:6px;margin-top:24px;padding:8px 0;font-size:11px;display:flex}.admin-section-wrap{padding:0!important}.admin-panel{background:var(--bg-secondary);border-radius:12px;overflow:hidden}.admin-header{border-bottom:1px solid var(--border-primary);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.admin-header h3{color:var(--text-primary);margin:0;font-size:16px}.hipaa-tag{color:#22d3ee;letter-spacing:.5px;text-transform:uppercase;background:#22d3ee1f;border-radius:20px;padding:3px 10px;font-size:10px;font-weight:600}.admin-tabs{border-bottom:1px solid var(--border-primary);background:var(--bg-primary);gap:0;display:flex}.admin-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:10px 16px;font-family:inherit;font-size:13px;font-weight:500;transition:all .2s}.admin-tab:hover{background:#ffffff08}.admin-tab.active{color:var(--accent);border-bottom-color:var(--accent);background:#22d3ee0d}.tab-count{background:#ffffff14;border-radius:10px;margin-left:6px;padding:1px 6px;font-size:11px}.admin-section{padding:16px 20px}.section-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.section-header h4{color:var(--text-primary);margin:0;font-size:14px}.refresh-btn{border:1px solid var(--border-primary);color:var(--text-secondary);cursor:pointer;background:#ffffff0f;border-radius:8px;padding:4px 12px;font-family:inherit;font-size:12px}.refresh-btn:hover{background:#ffffff1a}.admin-table{border-collapse:collapse;width:100%;font-size:12px}.admin-table th{text-align:left;color:var(--text-secondary);border-bottom:1px solid var(--border-primary);text-transform:uppercase;letter-spacing:.3px;padding:8px 10px;font-size:11px;font-weight:600}.admin-table td{color:var(--text-primary);border-bottom:1px solid #ffffff0a;padding:10px}.admin-table tr:hover{background:#ffffff05}.row-disabled td{opacity:.45}.role-badge{text-transform:uppercase;letter-spacing:.3px;border-radius:12px;padding:2px 8px;font-size:10px;font-weight:600}.role-admin{color:#a78bfa;background:#8b5cf626}.role-doctor{color:#22d3ee;background:#22d3ee1f}.role-staff{color:#fbbf24;background:#fbbf241f}.badge{border-radius:12px;padding:2px 8px;font-size:10px;font-weight:600}.badge-green{color:#10b981;background:#10b98126}.badge-red{color:#ef4444;background:#ef444426}.badge-gray{color:var(--text-muted);background:#ffffff14}.action-btns{gap:4px;display:flex}.admin-btn{border:1px solid var(--border-primary);cursor:pointer;background:#ffffff0a;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;transition:background .15s;display:flex}.admin-btn:hover{background:#ffffff1a}.admin-error{color:#f87171;background:#ef44441a;border:1px solid #ef444433;border-radius:8px;justify-content:space-between;align-items:center;margin:8px 20px;padding:8px 14px;font-size:12px;display:flex}.admin-error button{color:#f87171;cursor:pointer;background:0 0;border:none;font-size:14px}.temp-pw-banner{color:var(--text-primary);background:#10b98114;border:1px solid #10b98133;border-radius:10px;margin:12px 20px;padding:14px 18px;font-size:13px}.temp-pw-code{-webkit-user-select:all;user-select:all;letter-spacing:.5px;color:#10b981;background:#0000004d;border-radius:6px;margin-left:8px;padding:4px 12px;font-family:Courier New,monospace;font-size:14px;display:inline-block}.dismiss-btn{border:1px solid var(--border-primary);color:var(--text-secondary);cursor:pointer;background:#ffffff0f;border-radius:6px;margin-top:8px;padding:4px 12px;font-family:inherit;font-size:11px}.audit-log-list{max-height:400px;overflow-y:auto}.audit-entry{border-bottom:1px solid #ffffff0a;padding:8px 0}.audit-meta{align-items:center;gap:8px;font-size:12px;display:flex}.audit-action{color:var(--text-primary);text-transform:uppercase;letter-spacing:.3px;font-size:11px;font-weight:600}.audit-time{color:var(--text-muted);margin-left:auto;font-size:11px}.audit-details{color:var(--text-secondary);gap:12px;margin-top:2px;padding-left:22px;font-size:11px;display:flex}.audit-resource{color:var(--accent)}.audit-ip{opacity:.5}.audit-extra{opacity:.6;text-overflow:ellipsis;max-width:200px;overflow:hidden}.audit-controls{align-items:center;gap:8px;display:flex}.audit-filter{background:var(--bg-tertiary);border:1px solid var(--border-primary);color:var(--text-primary);border-radius:8px;padding:4px 10px;font-family:inherit;font-size:12px}.health-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.health-card{background:var(--bg-primary);border:1px solid var(--border-primary);text-align:center;border-radius:12px;padding:18px 20px}.health-value{color:var(--accent);font-variant-numeric:tabular-nums;font-size:28px;font-weight:700}.health-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;margin-top:4px;font-size:12px;font-weight:600}.health-sub{color:var(--text-muted);margin-top:4px;font-size:11px}
