:root{--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", Consolas, monospace;--cad-bg-app: #121417;--cad-bg-panel: #1a1d22;--cad-bg-header: #21252b;--cad-bg-subtle: #252930;--cad-bg-hover: #313640;--cad-bg-active: #2a3441;--cad-border: #2f353f;--cad-border-subtle: #242930;--cad-border-active: #38bdf8;--cad-text: #e2e8f0;--cad-text-muted: #94a3b8;--cad-text-dim: #64748b;--cad-blue: #38bdf8;--cad-blue-dark: #0284c7;--cad-green: #10b981;--cad-amber: #f59e0b;--cad-red: #ef4444}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow:hidden;font-family:var(--font-family);background-color:var(--cad-bg-app);color:var(--cad-text);-webkit-user-select:none;user-select:none;-webkit-font-smoothing:antialiased}.app-layout{display:flex;flex-direction:column;width:100%;height:100vh}.top-toolbar{height:48px;background-color:var(--cad-bg-header);border-bottom:1px solid var(--cad-border);display:flex;align-items:center;justify-content:space-between;padding:0 12px;z-index:50;flex-shrink:0;white-space:nowrap;gap:8px;overflow:visible;position:relative}.toolbar-left{display:flex;align-items:center;gap:8px;flex-shrink:0}.toolbar-center{display:flex;align-items:center;gap:8px;flex-shrink:1}.toolbar-right{display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0}.brand-logo{display:flex;align-items:center;gap:8px;-webkit-user-select:none;user-select:none;flex-shrink:0}.brand-icon{width:28px;height:28px;background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;border-radius:6px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #0284c759}.brand-title{font-size:11px;font-weight:800;color:#f8fafc;letter-spacing:.8px;line-height:1.1}.brand-subtitle{font-size:9px;color:#38bdf8;font-weight:600;letter-spacing:.6px;text-transform:uppercase}.active-case-card{display:flex;flex-direction:column;justify-content:center;background:#0f172acc;border:1px solid rgba(56,189,248,.28);border-radius:6px;padding:3px 10px;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);white-space:nowrap;gap:2px}.active-case-card:hover{background:#162131f2;border-color:#38bdf8;box-shadow:0 0 12px #38bdf840;transform:translateY(-1px)}.active-case-top-row{display:flex;align-items:center;gap:6px}.case-badge-pill{font-size:9px;font-weight:700;background:#0284c7;color:#fff;padding:1px 6px;border-radius:3px;letter-spacing:.4px}.case-patient-title{font-size:11px;font-weight:700;color:#f1f5f9}.active-case-sub-row{display:flex;align-items:center;gap:4px;font-size:10px;color:#38bdf8;font-weight:500}.divider{width:1px;height:22px;background-color:var(--cad-border);margin:0 4px}.group-label{font-size:10px;font-weight:700;color:var(--cad-text-dim);text-transform:uppercase;letter-spacing:.5px}.btn-group{display:flex;align-items:center;gap:4px}.btn{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;font-size:11px;font-weight:500;border-radius:4px;border:1px solid var(--cad-border);background-color:var(--cad-bg-panel);color:var(--cad-text);cursor:pointer;transition:all .12s ease;white-space:nowrap}.btn:hover:not(:disabled){background-color:var(--cad-bg-hover);border-color:#475569;color:#fff}.btn-cad-primary{background:linear-gradient(180deg,#0284c7,#0369a1);border-color:#38bdf8;color:#fff;font-weight:600}.btn-cad-primary:hover{background:linear-gradient(180deg,#0369a1,#075985);border-color:#7dd3fc}.btn-cad-export{background:linear-gradient(180deg,#059669,#047857);border-color:#10b981;color:#fff;font-weight:600}.btn-cad-export:hover{background:linear-gradient(180deg,#047857,#065f46);border-color:#34d399}.btn-secondary{background-color:var(--cad-bg-subtle);border-color:var(--cad-border)}.btn-ghost{border-color:transparent;background-color:transparent;color:var(--cad-text-muted)}.btn-ghost:hover{background-color:var(--cad-bg-hover);color:#fff}.btn-toggle-active{background-color:#0c4a6e;border-color:#38bdf8;color:#38bdf8;font-weight:600}.btn-cad-action{background:linear-gradient(180deg,#1e293b,#0f172a);border:1px solid #334155;color:#f1f5f9;padding:6px;font-size:11px;font-weight:600;border-radius:4px;cursor:pointer;width:100%}.btn-cad-action:hover{background:#334155;border-color:#475569}.btn-cad-patient-action{background:linear-gradient(135deg,#0284c7,#0369a1);border:1px solid #38bdf8;color:#fff;font-weight:600}.btn-cad-patient-action:hover{background:linear-gradient(135deg,#0369a1,#075985);box-shadow:0 0 10px #38bdf859}.workspace-main{display:flex;flex:1;position:relative;overflow:hidden;background-color:#16191d}.sidebar-left,.sidebar-right{width:280px;background-color:var(--cad-bg-panel);border-color:var(--cad-border);display:flex;flex-direction:column;flex-shrink:0;z-index:10}.sidebar-left{border-right:1px solid var(--cad-border)}.sidebar-right{border-left:1px solid var(--cad-border)}.panel-header{height:34px;border-bottom:1px solid var(--cad-border-subtle);display:flex;align-items:center;justify-content:space-between;padding:0 12px;background-color:var(--cad-bg-subtle);flex-shrink:0}.panel-title{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:.6px;color:var(--cad-text)}.panel-scrollable{flex:1;overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:12px}.tree-group{display:flex;flex-direction:column;gap:2px}.tree-group-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.tree-group-title{font-size:10px;font-weight:700;color:var(--cad-text-dim);letter-spacing:.5px;margin-bottom:4px}.info-chip{font-size:9px;background-color:#1e293b;color:#38bdf8;padding:1px 4px;border-radius:2px;font-weight:600}.odontogram-chart{display:flex;background-color:#13161a;border:1px solid var(--cad-border);border-radius:4px;padding:6px;gap:4px;margin-bottom:8px}.odontogram-side{flex:1;display:flex;flex-direction:column;gap:3px}.quadrant-label{font-size:8px;font-weight:700;color:var(--cad-text-dim);text-align:center;letter-spacing:.5px}.teeth-row{display:flex;justify-content:space-between;gap:2px}.odontogram-divider{width:1px;background-color:var(--cad-border);margin:0 2px}.tooth-button{flex:1;height:24px;padding:0;font-size:9px;font-family:var(--font-mono);font-weight:700;border:1px solid #2b323d;background-color:#1a1e24;color:#94a3b8;border-radius:2px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .1s ease}.tooth-button:hover:not(:disabled){background-color:#2b3542;color:#fff;border-color:#475569}.tooth-button.selected{background-color:#0284c7;color:#fff;border-color:#38bdf8;box-shadow:0 0 4px #38bdf866}.tooth-button.contacting{border-color:#10b981;color:#34d399}.tooth-button.no-bracket{opacity:.3;cursor:not-allowed;border-color:transparent}.tree-item{display:flex;align-items:center;justify-content:space-between;padding:5px 8px;border-radius:4px;border:1px solid transparent;cursor:pointer;transition:all .12s ease}.tree-item:hover{background-color:var(--cad-bg-hover)}.tree-item.selected{background-color:#0c4a6e;border-color:#0284c7}.tree-item.selected-image{background-color:#172554;border-color:#1e40af}.tree-item-left,.tree-item-right{display:flex;align-items:center;gap:6px}.color-indicator{width:8px;height:8px;border-radius:50%;flex-shrink:0}.tree-item-name{font-size:11px;font-weight:500;color:var(--cad-text)}.tree-item-meta{font-size:10px;font-family:var(--font-mono);color:var(--cad-text-dim)}.test-badge{font-size:9px;background-color:#451a03;color:#fde68a;border:1px solid #78350f;padding:1px 4px;border-radius:2px;font-weight:600}.loaded-badge{font-size:9px;background-color:#064e3b;color:#a7f3d0;border:1px solid #059669;padding:1px 4px;border-radius:2px;font-weight:700}.status-pill{display:inline-flex;align-items:center;gap:3px;font-size:9px;font-weight:700;padding:2px 5px;border-radius:3px}.status-contact{background-color:#064e3b;color:#6ee7b7;border:1px solid #059669}.status-gap{background-color:#1e293b;color:#94a3b8;border:1px solid #334155;font-family:var(--font-mono)}.btn-icon-subtle{background:none;border:none;color:var(--cad-text-dim);cursor:pointer;padding:2px;display:flex;align-items:center}.btn-icon-subtle:hover{color:var(--cad-text)}.tooth-badge{font-size:10px;font-family:var(--font-mono);font-weight:700;background-color:#0369a1;color:#fff;padding:2px 5px;border-radius:3px}.property-card{background-color:var(--cad-bg-subtle);border:1px solid var(--cad-border);border-radius:4px;padding:8px}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.card-title{font-size:10px;font-weight:700;color:var(--cad-text-dim);letter-spacing:.5px}.card-title-with-icon{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:var(--cad-text)}.plane-lock-badge{font-size:9px;background-color:#0c4a6e;color:#38bdf8;border:1px solid #0284c7;padding:1px 4px;border-radius:2px;display:flex;align-items:center;gap:2px;font-weight:600}.contact-status-box{display:flex;align-items:center;gap:8px;padding:8px;border-radius:4px;border:1px solid transparent}.contact-active{background-color:#064e3b;border-color:#10b981}.contact-clear{background-color:#451a03;border-color:#d97706}.icon-contact{color:#34d399;flex-shrink:0}.icon-gap{color:#fbbf24;flex-shrink:0}.status-title{font-size:10px;font-weight:700;color:#f8fafc}.status-desc{font-size:9px;color:#cbd5e1;margin-top:1px}.axis-row{display:flex;align-items:center;gap:5px;margin-bottom:6px}.axis-row:last-child{margin-bottom:0}.axis-label{font-size:11px;font-weight:700;font-family:var(--font-mono);width:16px;text-align:center}.axis-x{color:#f87171}.axis-y{color:#4ade80}.axis-z{color:#38bdf8}.number-input{width:65px;height:24px;padding:0 4px;font-family:var(--font-mono);font-size:11px;border:1px solid var(--cad-border);border-radius:3px;background-color:var(--cad-bg-app);color:#f1f5f9}.number-input:focus{outline:none;border-color:var(--cad-blue)}.input-locked{background-color:#181b20;color:#64748b;cursor:not-allowed;border-color:#242930}.step-buttons{display:flex;align-items:center;gap:2px}.btn-step{padding:2px 4px;font-size:9px;font-family:var(--font-mono);border:1px solid var(--cad-border);background-color:var(--cad-bg-panel);border-radius:2px;cursor:pointer;color:var(--cad-text-muted)}.btn-step:hover:not(:disabled){background-color:var(--cad-bg-hover);color:#fff}.btn-step:disabled{opacity:.3;cursor:not-allowed}.empty-selection{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;height:200px;padding:16px}.empty-selection p{font-size:12px;font-weight:600;color:var(--cad-text-muted);margin-bottom:4px}.empty-selection span{font-size:10px;color:var(--cad-text-dim);line-height:1.4}.viewport-wrapper{flex:1;position:relative;background-color:#d2d6dc;overflow:hidden}.viewport-canvas-container{width:100%;height:100%}.drop-overlay{position:absolute;top:12px;right:12px;bottom:12px;left:12px;border:2px dashed #38bdf8;background-color:#0284c740;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:50;pointer-events:none}.drop-icon{color:#38bdf8;margin-bottom:8px}.drop-title{font-size:16px;font-weight:700;color:#fff}.drop-subtitle{font-size:12px;color:#e0f2fe}.floating-camera-hud{position:absolute;top:10px;left:10px;background-color:#1a1d22d9;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--cad-border);border-radius:4px;padding:3px 6px;display:flex;align-items:center;gap:6px;z-index:10}.hud-group{display:flex;align-items:center;gap:2px}.hud-divider{width:1px;height:16px;background-color:var(--cad-border)}.btn-hud-cad{background:none;border:1px solid transparent;padding:3px 6px;font-size:10px;font-weight:600;color:var(--cad-text-muted);border-radius:3px;cursor:pointer;display:flex;align-items:center;gap:4px}.btn-hud-cad:hover{background-color:var(--cad-bg-hover);color:#fff}.btn-hud-cad.active{background-color:#0c4a6e;border-color:#0284c7;color:#38bdf8}.hud-slider-group{display:flex;align-items:center;gap:4px}.slider-label{font-size:10px;color:var(--cad-text-muted)}.opacity-slider{width:60px;cursor:pointer}.slider-val{font-size:9px;font-family:var(--font-mono);color:#38bdf8;width:25px}.mouse-controls-hint{position:absolute;bottom:8px;left:10px;background-color:#121417d9;border:1px solid var(--cad-border);color:#94a3b8;padding:3px 8px;border-radius:3px;font-size:9px;font-family:var(--font-mono);display:flex;align-items:center;gap:6px;pointer-events:none}.hint-pill{color:#38bdf8;font-weight:700}.status-bar{height:22px;background-color:var(--cad-bg-header);border-top:1px solid var(--cad-border);display:flex;align-items:center;justify-content:space-between;padding:0 10px;font-size:10px;font-family:var(--font-mono);color:var(--cad-text-dim);z-index:20;flex-shrink:0}.status-item{display:flex;align-items:center;gap:4px}.status-dot{width:5px;height:5px;border-radius:50%}.status-dot-warning{background-color:var(--cad-amber)}.status-right-group{display:flex;align-items:center;gap:12px}.shortcut-toast{position:absolute;bottom:24px;left:20px;background-color:#0f172af0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#f8fafc;padding:8px 18px;border-radius:20px;border:1px solid rgba(56,189,248,.45);font-size:12px;font-weight:600;letter-spacing:.3px;box-shadow:0 8px 24px #0000008c,0 0 12px #38bdf826;z-index:100;pointer-events:none;animation:fadeInUp .18s ease-out;display:flex;align-items:center;gap:8px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.shortcut-hints-strip{position:absolute;bottom:8px;right:12px;display:flex;align-items:center;gap:6px;z-index:10;pointer-events:none}.shortcut-chip{background-color:#0f172ac7;border:1px solid rgba(148,163,184,.2);color:#cbd5e1;padding:2px 7px;border-radius:4px;font-size:10px;font-weight:500}.shortcut-chip kbd{background:#334155;color:#38bdf8;padding:1px 4px;border-radius:3px;font-family:inherit;font-weight:700;margin-right:4px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#05080ebf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeInModal .2s ease-out}@keyframes fadeInModal{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.patient-lookup-modal{background-color:#16191f;border:1px solid #2d333d;border-radius:12px;width:100%;max-width:680px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 45px #000000a6;overflow:hidden}.patient-directory-modal{background-color:#16191f;border:1px solid #2d333d;border-radius:12px;width:100%;max-width:1060px;height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 45px #000000a6;overflow:hidden}.modal-header{padding:14px 20px;border-bottom:1px solid #252a33;display:flex;align-items:center;justify-content:space-between;background-color:#12151a}.modal-title-group{display:flex;align-items:center;gap:12px}.modal-icon-badge{width:36px;height:36px;border-radius:8px;background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;display:flex;align-items:center;justify-content:center}.modal-title{margin:0;font-size:15px;font-weight:700;color:#f1f5f9}.modal-subtitle{margin:2px 0 0;font-size:11px;color:#94a3b8}.btn-close-modal{background:none;border:none;color:#64748b;cursor:pointer;padding:6px;border-radius:6px;display:flex;align-items:center;justify-content:center}.btn-close-modal:hover{background-color:#272d38;color:#f8fafc}.btn-header-new-patient{background:#0284c726;border:1px solid rgba(2,132,199,.4);color:#38bdf8;padding:5px 12px;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:5px;transition:all .15s ease}.btn-header-new-patient:hover{background:#0284c7;color:#fff;border-color:#0284c7}.header-actions-group{display:flex;align-items:center;gap:10px}.lookup-search-box{padding:18px 20px 14px;background-color:#16191f;border-bottom:1px solid #252a33}.input-label{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#cbd5e1;margin-bottom:8px}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-input{width:100%;padding:11px 40px 11px 14px;background-color:#0f1216;border:1px solid #333a45;border-radius:8px;color:#f8fafc;font-size:14px;font-weight:500;outline:none;transition:border-color .15s ease}.search-input:focus{border-color:#0284c7;box-shadow:0 0 0 3px #0284c733}.btn-clear-search{position:absolute;right:10px;background:none;border:none;color:#64748b;cursor:pointer}.search-suggestions{margin-top:10px}.suggestions-title{font-size:10px;text-transform:uppercase;font-weight:700;color:#64748b;letter-spacing:.5px}.suggestions-list{display:flex;flex-direction:column;gap:4px;margin-top:6px;max-height:150px;overflow-y:auto}.suggestion-item{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;background-color:#101317;border:1px solid #252a33;border-radius:6px;cursor:pointer;color:#e2e8f0;font-size:12px;text-align:left}.suggestion-item:hover{background-color:#1e242d;border-color:#0284c7}.sugg-name{font-weight:600}.sugg-details{color:#94a3b8;font-size:11px}.sugg-cases{background-color:#0c4a6e;color:#38bdf8;font-size:10px;padding:1px 6px;border-radius:4px;font-weight:600}.existing-patient-card{padding:16px 20px;overflow-y:auto;max-height:calc(90vh - 170px)}.alert-already-exists{display:flex;align-items:flex-start;gap:12px;background-color:#f59e0b1f;border:1px solid #f59e0b;border-radius:8px;padding:12px 14px;margin-bottom:16px}.alert-already-exists .alert-icon{color:#f59e0b;flex-shrink:0;margin-top:2px}.alert-already-exists .alert-title{font-size:13px;font-weight:700;color:#fbbf24}.alert-already-exists .alert-desc{font-size:11px;color:#fef3c7;margin-top:3px;line-height:1.4}.patient-meta-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;background-color:#101317;border:1px solid #252a33;border-radius:8px;padding:12px 14px;margin-bottom:16px}.meta-item{display:flex;flex-direction:column;gap:2px}.meta-label{font-size:10px;text-transform:uppercase;color:#64748b;font-weight:600}.meta-value{font-size:12px;color:#e2e8f0}.meta-value.bold{font-weight:700;color:#38bdf8;font-size:13px}.patient-cases-section{background-color:#12151a;border:1px solid #252a33;border-radius:8px;padding:12px}.cases-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.cases-title{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:#e2e8f0}.btn-add-case{background-color:#0c4a6e;border:1px solid #0284c7;color:#38bdf8;padding:5px 10px;border-radius:5px;font-size:11px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:5px}.btn-add-case:hover{background-color:#0284c7;color:#fff}.cases-list{display:flex;flex-direction:column;gap:8px}.case-row-card{display:flex;align-items:center;justify-content:space-between;background-color:#181c22;border:1px solid #2d3440;border-radius:6px;padding:10px 12px;gap:12px}.case-row-card:hover{border-color:#38bdf8}.case-info{display:flex;flex-direction:column;gap:3px;flex:1}.case-title-row{display:flex;align-items:center;gap:8px}.case-number{font-size:12px;font-weight:700;color:#f8fafc}.case-project-badge{font-size:10px;background-color:#242b35;color:#cbd5e1;padding:1px 6px;border-radius:3px;font-weight:500}.case-status-badge{font-size:10px;padding:1px 6px;border-radius:3px;font-weight:600}.status-exports-ready{background-color:#064e3b;color:#34d399}.status-alignment-made{background-color:#1e3a8a;color:#60a5fa}.status-imported-arches{background-color:#4c1d95;color:#c084fc}.status-in-progress{background-color:#78350f;color:#fbbf24}.case-subtitle{font-size:11px;color:#94a3b8}.case-meta-row{display:flex;align-items:center;gap:12px;font-size:10px;color:#64748b;margin-top:2px}.case-meta-item{display:flex;align-items:center;gap:4px}.btn-open-case{background-color:#0284c7;border:none;color:#fff;padding:7px 12px;border-radius:5px;font-size:11px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px;white-space:nowrap}.btn-open-case:hover{background-color:#0369a1}.new-patient-prompt{padding:24px 20px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px}.not-found-banner{background-color:#12151a;border:1px dashed #333a45;border-radius:8px;padding:18px 24px;display:flex;align-items:center;gap:14px;text-align:left}.banner-icon{color:#38bdf8;flex-shrink:0}.banner-title{font-size:13px;font-weight:700;color:#f1f5f9}.banner-desc{font-size:11px;color:#94a3b8;margin-top:3px;line-height:1.4}.btn-create-patient{background:linear-gradient(135deg,#0284c7,#0369a1);border:none;color:#fff;padding:10px 20px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;box-shadow:0 4px 12px #0284c759}.btn-create-patient:hover{background:linear-gradient(135deg,#0369a1,#075985)}.new-patient-form{padding:16px 20px;overflow-y:auto;max-height:calc(90vh - 170px)}.form-legend{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:#38bdf8;margin-bottom:14px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.form-group{display:flex;flex-direction:column;gap:4px}.form-group.full-width{grid-column:span 2}.form-label{font-size:11px;font-weight:600;color:#94a3b8}.form-input,.form-select,.form-textarea{background-color:#0f1216;border:1px solid #333a45;border-radius:6px;padding:8px 10px;color:#f8fafc;font-size:12px;outline:none}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#0284c7}.gender-selector{display:flex;gap:8px}.gender-option{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;background-color:#101317;border:1px solid #2d333b;border-radius:6px;padding:8px;font-size:12px;color:#94a3b8;cursor:pointer}.gender-option.selected{background-color:#0c4a6e;border-color:#0284c7;color:#38bdf8;font-weight:600}.gender-option input{display:none}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:18px;padding-top:14px;border-top:1px solid #252a33}.btn-primary-cad{background:linear-gradient(135deg,#0284c7,#0369a1);border:none;color:#fff;padding:8px 18px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px}.btn-primary-cad:hover{background:linear-gradient(135deg,#0369a1,#075985)}.stl-upload-section,.stl-upload-section.full-width{grid-column:1 / -1!important;width:100%!important;box-sizing:border-box;background:linear-gradient(180deg,#10141a,#0a0d11);border:1px solid #222936;border-radius:10px;padding:16px;margin:6px 0 10px;box-shadow:inset 0 1px #ffffff0a,0 6px 20px #00000059}.stl-section-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.stl-section-title-col{display:flex;flex-direction:column;gap:4px}.stl-title-with-badge{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.stl-main-title{font-size:13px;font-weight:700;color:#f8fafc;letter-spacing:.2px}.stl-format-badge{font-size:10px;font-weight:700;background:#38bdf81f;color:#38bdf8;border:1px solid rgba(56,189,248,.3);border-radius:4px;padding:2px 7px;letter-spacing:.5px}.stl-section-subdesc{font-size:11px;color:#94a3b8;line-height:1.4}.stl-quick-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.btn-quick-batch-upload{background:#f59e0b1f;border:1px solid rgba(245,158,11,.35);color:#fbbf24;font-size:11px;font-weight:600;padding:6px 12px;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s ease}.btn-quick-batch-upload:hover{background:#f59e0b38;border-color:#f59e0b;color:#fff;box-shadow:0 2px 10px #f59e0b40}.btn-swap-jaws{background:#38bdf81f;border:1px solid rgba(56,189,248,.32);color:#38bdf8;font-size:11px;font-weight:600;padding:6px 11px;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:5px;transition:all .2s ease}.btn-swap-jaws:hover{background:#38bdf838;border-color:#38bdf8;color:#fff}.stl-upload-cards-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;width:100%}.stl-card-box{background:#141820;border:1.5px dashed #2d3542;border-radius:8px;padding:14px;display:flex;flex-direction:column;gap:12px;transition:all .25s ease;position:relative;min-height:150px;box-sizing:border-box}.stl-card-box:hover{border-color:#0284c7;background:#171d27;box-shadow:0 4px 16px #0006}.stl-card-box.drag-over{border-color:#38bdf8!important;background:#0284c724!important;box-shadow:0 0 20px #38bdf84d!important}.stl-card-box.has-file.mandible-card{border:1.5px solid rgba(16,185,129,.5);border-style:solid;background:linear-gradient(180deg,#10b98114,#111822)}.stl-card-box.has-file.maxilla-card{border:1.5px solid rgba(56,189,248,.5);border-style:solid;background:linear-gradient(180deg,#38bdf814,#111822)}.stl-card-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:2px}.stl-arch-badge{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;padding:3px 8px;border-radius:5px}.mandible-tag{background:#f43f5e26;color:#fb7185;border:1px solid rgba(244,63,94,.35)}.maxilla-tag{background:#38bdf826;color:#38bdf8;border:1px solid rgba(56,189,248,.35)}.arch-dot{width:6px;height:6px;border-radius:50%;display:inline-block}.mandible-tag .arch-dot{background:#f43f5e;box-shadow:0 0 6px #f43f5e}.maxilla-tag .arch-dot{background:#38bdf8;box-shadow:0 0 6px #38bdf8}.stl-arch-subtag{font-size:10px;color:#64748b;font-weight:500;margin-right:auto;margin-left:2px}.stl-status-pill{font-size:9.5px;font-weight:700;padding:2px 7px;border-radius:4px;display:flex;align-items:center;gap:3px}.stl-status-pill.success{background:#10b98133;color:#34d399;border:1px solid rgba(16,185,129,.4)}.stl-status-pill.success-cyan{background:#38bdf833;color:#38bdf8;border:1px solid rgba(56,189,248,.4)}.stl-status-pill.required{background:#f43f5e1f;color:#f87171;border:1px solid rgba(244,63,94,.25)}.stl-status-pill.optional{background:#94a3b81f;color:#94a3b8;border:1px solid rgba(148,163,184,.2)}.stl-empty-dropzone{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:12px 10px;cursor:pointer;text-align:center;border-radius:6px;background:#ffffff04;transition:all .2s ease}.stl-empty-dropzone:hover{background:#ffffff0a}.stl-empty-dropzone:hover .dropzone-icon-circle{transform:translateY(-2px)}.dropzone-icon-circle{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:2px;transition:transform .2s ease}.mandible-accent{background:#f43f5e1f;color:#fb7185;border:1px solid rgba(244,63,94,.25)}.maxilla-accent{background:#38bdf81f;color:#38bdf8;border:1px solid rgba(56,189,248,.25)}.dropzone-text-group{display:flex;flex-direction:column;gap:3px}.dropzone-main-text{font-size:12px;font-weight:700;color:#f1f5f9}.dropzone-sub-text{font-size:10.5px;color:#94a3b8}.dropzone-hint-pill{font-size:9.5px;color:#64748b;margin-top:2px}.stl-loaded-panel{flex:1;display:flex;align-items:center;gap:12px;padding:10px 12px;background:#00000059;border-radius:8px;border:1px solid rgba(255,255,255,.06)}.stl-file-icon-wrap{width:42px;height:42px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mandible-glow{background:#10b98126;box-shadow:0 0 12px #10b98140;border:1px solid rgba(16,185,129,.3)}.maxilla-glow{background:#38bdf826;box-shadow:0 0 12px #38bdf840;border:1px solid rgba(56,189,248,.3)}.stl-loaded-meta{flex:1;display:flex;flex-direction:column;gap:3px;overflow:hidden}.stl-loaded-name{font-size:12px;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stl-loaded-size{font-size:10.5px;color:#34d399;font-weight:600}.stl-loaded-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.btn-card-action{transition:all .2s ease}.btn-card-action.edit{background:#1c222c;border:1px solid #333d4d;color:#e2e8f0;font-size:11px;font-weight:600;padding:6px 10px;border-radius:5px;cursor:pointer;display:flex;align-items:center;gap:4px}.btn-card-action.edit:hover{background:#252e3d;color:#fff;border-color:#38bdf8}.btn-card-action.remove{background:#ef444426;border:1px solid rgba(239,68,68,.35);color:#f87171;width:30px;height:30px;border-radius:5px;display:flex;align-items:center;justify-content:center;cursor:pointer}.btn-card-action.remove:hover{background:#ef4444;color:#fff}.text-emerald{color:#10b981}.text-cyan{color:#38bdf8}.text-amber{color:#fbbf24}.directory-content-layout{display:flex;flex:1;overflow:hidden}.directory-left-column{width:340px;border-right:1px solid #252a33;display:flex;flex-direction:column;background-color:#12151a}.search-box-bar{padding:10px 12px;border-bottom:1px solid #252a33;display:flex;align-items:center;position:relative}.search-box-bar .search-icon{position:absolute;left:20px;color:#64748b}.directory-search-input{width:100%;background-color:#0d0f12;border:1px solid #282f3a;border-radius:6px;padding:7px 30px 7px 32px;color:#f8fafc;font-size:11px;outline:none}.patients-scroll-list{flex:1;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:6px}.patient-list-card{padding:9px 11px;background-color:#161a20;border:1px solid #262c36;border-radius:6px;cursor:pointer;display:flex;flex-direction:column;gap:4px}.patient-list-card:hover{background-color:#1e242d;border-color:#38bdf8}.patient-list-card.active{background-color:#11293d;border-color:#0284c7}.card-top-row{display:flex;align-items:center;justify-content:space-between}.patient-name{font-size:12px;font-weight:700;color:#f8fafc}.patient-case-count-chip{font-size:10px;background-color:#232a35;color:#94a3b8;padding:1px 5px;border-radius:3px;font-weight:600}.card-middle-row{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#94a3b8}.card-bottom-row{display:flex;align-items:center;justify-content:space-between;font-size:10px;margin-top:2px}.latest-case-text{color:#64748b;font-weight:500}.status-pill{font-size:9px;padding:1px 5px;border-radius:3px;font-weight:600}.pill-exports-ready{background-color:#064e3b;color:#34d399}.pill-alignment-made{background-color:#1e3a8a;color:#60a5fa}.pill-imported-arches{background-color:#4c1d95;color:#c084fc}.pill-in-progress{background-color:#78350f;color:#fbbf24}.directory-right-column{flex:1;overflow-y:auto;padding:18px 20px;background-color:#16191f}.detail-profile-card{background-color:#101317;border:1px solid #252a33;border-radius:8px;padding:14px 16px;margin-bottom:18px}.profile-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.profile-name{margin:0;font-size:17px;font-weight:700;color:#f8fafc}.profile-sub{display:flex;align-items:center;gap:8px;font-size:11px;color:#94a3b8;margin-top:3px}.btn-add-case-action{background-color:#0c4a6e;border:1px solid #0284c7;color:#38bdf8;padding:6px 12px;border-radius:5px;font-size:11px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px}.btn-add-case-action:hover{background-color:#0284c7;color:#fff}.profile-meta-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.p-meta-box{background-color:#161a20;border:1px solid #232933;border-radius:6px;padding:8px 10px;display:flex;flex-direction:column;gap:2px}.p-meta-label{font-size:9px;text-transform:uppercase;color:#64748b;font-weight:700}.p-meta-val{font-size:11px;color:#cbd5e1;font-weight:600}.cases-archive-container{display:flex;flex-direction:column;gap:10px}.archive-title-row{display:flex;align-items:center;justify-content:space-between}.archive-title{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:#e2e8f0}.archive-cases-grid{display:flex;flex-direction:column;gap:10px}.case-card-expanded{background-color:#111419;border:1px solid #252b36;border-radius:8px;padding:12px 16px;display:flex;flex-direction:column;gap:8px}.case-card-expanded:hover{border-color:#38bdf8}.card-head{display:flex;align-items:center;justify-content:space-between}.c-case-no{font-size:13px;font-weight:700;color:#38bdf8;margin-right:8px}.c-project-type{font-size:10px;background-color:#212833;color:#cbd5e1;padding:2px 7px;border-radius:4px}.c-case-title{font-size:13px;color:#f1f5f9;font-weight:500}.c-case-meta{display:flex;align-items:center;gap:16px;font-size:11px;color:#64748b}.c-case-meta span{display:flex;align-items:center;gap:4px}.card-actions{display:flex;justify-content:flex-end;margin-top:4px}.btn-open-in-cad{background:linear-gradient(135deg,#0284c7,#0369a1);border:none;color:#fff;padding:7px 14px;border-radius:5px;font-size:11px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px}.btn-open-in-cad:hover{background:linear-gradient(135deg,#0369a1,#075985)}.btn-delete-patient-action{background-color:#ef44441f;border:1px solid rgba(239,68,68,.35);color:#f87171;padding:6px 12px;border-radius:5px;font-size:11px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:5px;transition:all .15s ease}.btn-delete-patient-action:hover{background-color:#ef4444;color:#fff;border-color:#ef4444}.btn-card-edit-case{background-color:#1e242d;border:1px solid #333d4d;color:#94a3b8;padding:6px 11px;border-radius:5px;font-size:11px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .15s ease}.btn-card-edit-case:hover{background-color:#2a3340;color:#38bdf8;border-color:#38bdf8}.btn-card-delete-case{background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#f87171;padding:6px 11px;border-radius:5px;font-size:11px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .15s ease}.btn-card-delete-case:hover{background-color:#ef4444;color:#fff;border-color:#ef4444}.case-inline-edit-form{background-color:#161b22;border:1px solid #0284c7;border-radius:6px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.case-inline-edit-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px}.case-inline-edit-actions{display:flex;justify-content:flex-end;gap:8px}.doctor-quick-select-bar{display:flex;align-items:center;gap:10px;background:#11151c;border:1px solid #1f2733;padding:8px 14px;border-radius:6px;margin-top:10px;margin-bottom:6px;flex-wrap:wrap}.doctor-select-label{font-size:11px;font-weight:700;color:#94a3b8;white-space:nowrap}.doctor-chips-group{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.doctor-chip{background:#18202c;border:1px solid #273547;color:#cbd5e1;padding:4px 11px;border-radius:14px;font-size:11px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:all .15s ease}.doctor-chip:hover{background:#1e293b;border-color:#38bdf8;color:#fff}.doctor-chip.selected{background:#0284c740;border-color:#0284c7;color:#38bdf8;font-weight:700;box-shadow:0 0 8px #0284c74d}.doctor-chip-add{background:transparent;border:1px dashed #475569;color:#94a3b8;padding:4px 10px;border-radius:14px;font-size:11px;cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:all .15s ease}.doctor-chip-add:hover{border-color:#38bdf8;color:#38bdf8}.add-doctor-inline-form{display:flex;align-items:center;gap:4px}.inline-doc-input{background:#0f172a;border:1px solid #0284c7;color:#fff;padding:4px 8px;border-radius:4px;font-size:11px;outline:none;width:145px}.btn-inline-add{background:#0284c7;border:none;color:#fff;padding:4px 9px;border-radius:4px;font-size:11px;font-weight:600;cursor:pointer}.btn-inline-cancel{background:transparent;border:none;color:#94a3b8;font-size:12px;cursor:pointer;padding:2px 5px}.prompt-actions-buttons{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center}.btn-secondary-details{background:#1e293b;border:1px solid #334155;color:#cbd5e1;padding:10px 16px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .15s ease}.btn-secondary-details:hover{background:#334155;color:#fff}.btn-card-quick-cad{background:#0284c733;border:1px solid rgba(56,189,248,.4);color:#38bdf8;padding:2px 7px;border-radius:4px;font-size:10px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:all .15s ease}.btn-card-quick-cad:hover{background:#0284c7;color:#fff;border-color:#38bdf8}.btn-edit-patient{background:#1e293b;border:1px solid #334155;color:#cbd5e1;padding:6px 12px;border-radius:5px;font-size:11px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:all .15s ease}.btn-edit-patient:hover{background:#334155;color:#38bdf8;border-color:#38bdf8}.btn-open-active-case{background:linear-gradient(135deg,#0284c7,#0369a1);border:none;color:#fff;padding:6px 14px;border-radius:5px;font-size:11px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px;box-shadow:0 2px 8px #0284c759;transition:all .15s ease}.btn-open-active-case:hover{background:linear-gradient(135deg,#0369a1,#075985);transform:translateY(-1px)}
