/* PilotDent visual refinement: consistent SVG icons, patient tabs and clinical odontogram */
.ui-icon{display:inline-block;flex:0 0 auto;vertical-align:middle}.btn .ui-icon,.quick-button .ui-icon,.card-head a .ui-icon{margin:0}.icon-link{display:grid!important;place-items:center}.main-nav a{gap:11px}.main-nav .ui-icon{color:#718096;transition:color .18s}.main-nav a:hover .ui-icon,.main-nav a.active .ui-icon{color:var(--primary)}.global-search>.ui-icon{color:#8a96a8}.quick-button{display:flex;align-items:center;gap:7px}.branch-select b{display:flex;align-items:center;gap:4px}.toast{display:flex;align-items:center;gap:8px}.ai-fab{display:grid;place-items:center}.ai-fab .ui-icon{filter:drop-shadow(0 1px 1px #1254)}
.page-head h1{font-size:27px;line-height:1.2}.page-head p{font-size:13px}.card-head h3{font-size:14px;letter-spacing:-.15px}.text-success{color:var(--success)!important}.text-danger{color:var(--danger)!important}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Patient profile and tabs */
.patient-profile{align-items:start}.profile-main{display:block;min-width:0}.profile-main>.tabs{margin-bottom:16px;min-height:52px;height:auto;align-items:center;align-content:center;gap:3px;padding:5px;box-shadow:0 4px 18px rgba(28,50,82,.04)}.tabs button{height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 13px;line-height:1;border-radius:8px;transition:background .18s,color .18s}.tabs button .ui-icon{color:#8793a6}.tabs button:hover{background:#f4f7fb;color:var(--navy)}.tabs button.active{background:#e9f2ff;color:#0f62d6;box-shadow:inset 0 0 0 1px #d7e8ff}.tabs button.active .ui-icon{color:#1769e0}.tab-pane{width:100%}.tab-pane.active{display:block;animation:tab-in .16s ease}.tab-pane:not(.active){display:none!important}@keyframes tab-in{from{opacity:.35;transform:translateY(3px)}to{opacity:1;transform:none}}.profile-side{position:sticky;top:96px}.profile-side h2{font-size:19px;letter-spacing:-.4px}.profile-alert{display:flex;align-items:flex-start;gap:8px}.profile-alert span{display:grid;gap:2px}.profile-alert b{font-size:9px;text-transform:uppercase;letter-spacing:.5px}.summary-box{position:relative;min-height:92px;padding:18px 18px 16px}.summary-box .summary-icon{position:absolute;right:15px;top:15px;width:34px;height:34px;border-radius:10px;background:#edf5ff;color:var(--primary);display:grid;place-items:center}.summary-box .summary-icon.success{background:#eaf9f2;color:var(--success)}.summary-box .summary-icon.danger{background:#fff0f0;color:var(--danger)}.summary-box strong{display:block;margin-top:7px;font-size:21px}.patient-info-card{margin-top:16px}

/* Odontogram header and legend */
.odontogram-card{overflow:hidden}.odonto-head{gap:16px}.odonto-head>div:first-child h3{margin-bottom:4px}.odonto-head p{margin:0;color:var(--muted);font-size:10px}.dentition-switch{display:flex;gap:3px;background:#f0f3f7;padding:3px;border-radius:9px}.dentition-switch button{border:0;background:transparent;color:#657389;padding:7px 10px;border-radius:7px;font-size:10px;font-weight:600;cursor:pointer}.dentition-switch button.active{background:#fff;color:var(--primary);box-shadow:0 2px 7px #172b4d14}.odonto-legend{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding:11px 19px;border-bottom:1px solid var(--line);background:#fbfcfe}.odonto-legend span{display:flex;align-items:center;gap:6px;color:#647288;font-size:9px;font-weight:600}.odonto-legend i{width:9px;height:9px;border-radius:3px;border:1px solid #cbd5e2;background:#fff}.odonto-legend .healthy{background:#dff7ed;border-color:#7bd4af}.odonto-legend .decay{background:#ffe0e1;border-color:#ee777b}.odonto-legend .planned{background:#fff0cf;border-color:#efb34e}.odonto-legend .completed{background:#dcecff;border-color:#72a8eb}.odonto-legend .missing{background:#e5e8ed;border-color:#9ca6b5}

/* Full dental chart */
.odonto-workspace{display:grid;grid-template-columns:minmax(0,1fr) 310px;min-height:510px}.odontogram-chart{padding:24px 22px 26px;overflow:auto;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}.arch-orientation{min-width:720px;display:flex;align-items:center;justify-content:space-between;padding:0 12px 9px;color:#8895a7;font-size:8px;letter-spacing:.9px}.arch-orientation b{color:#657389;font-size:9px;letter-spacing:1.2px}.dentition-panel{display:none;min-width:720px}.dentition-panel.active{display:block}.dental-arch{display:grid;grid-template-columns:1fr 1px 1fr;align-items:end;gap:10px;max-width:900px;margin:0 auto}.dental-arch.lower{align-items:start}.quadrant{display:flex;align-items:flex-end;justify-content:flex-end;gap:5px}.quadrant.left{justify-content:flex-start}.dental-arch.lower .quadrant{align-items:flex-start}.arch-midline{height:104px;width:1px;background:linear-gradient(transparent,#ccd7e5,transparent);display:block}.arch-divider{display:flex;align-items:center;gap:14px;margin:4px auto 7px;max-width:900px;color:#657389;font-size:8px;letter-spacing:1.2px}.arch-divider span{height:1px;flex:1;background:linear-gradient(90deg,transparent,#dde4ed)}.arch-divider span:last-child{background:linear-gradient(90deg,#dde4ed,transparent)}.arch-divider b{white-space:nowrap}
.dental-tooth{position:relative;width:43px;height:112px;border:0;background:transparent;padding:19px 1px 4px;color:#9ba9ba;cursor:pointer;border-radius:10px;transition:background .16s,transform .16s;color .16s}.dental-tooth svg{width:100%;height:78px;display:block;overflow:visible}.dental-tooth svg path{fill:#fff;stroke:#9baabd;stroke-width:1.25;vector-effect:non-scaling-stroke;transition:fill .16s,stroke .16s}.dental-tooth .tooth-number{position:absolute;top:1px;left:50%;transform:translateX(-50%);font-size:9px;font-weight:700;color:#66758a}.dental-tooth.lower{padding:4px 1px 19px}.dental-tooth.lower svg{transform:rotate(180deg)}.dental-tooth.lower .tooth-number{top:auto;bottom:1px}.dental-tooth.molar{width:48px}.dental-tooth.premolar{width:42px}.dental-tooth.canine{width:38px}.dental-tooth.incisor{width:36px}.dental-tooth:hover{background:#f0f6ff;transform:translateY(-2px)}.dental-tooth.lower:hover{transform:translateY(2px)}.dental-tooth:hover svg path{stroke:#498ce5}.dental-tooth.selected{background:#e8f2ff;box-shadow:inset 0 0 0 1px #b9d6fb}.dental-tooth.selected svg path{stroke:#1769e0;stroke-width:1.8}.dental-tooth.condition-healthy svg path{fill:#e7f8f1;stroke:#45b98a}.dental-tooth.condition-decay svg path{fill:#ffe5e5;stroke:#e45158}.dental-tooth.condition-planned svg path{fill:#fff2d7;stroke:#df982b}.dental-tooth.condition-critical svg path{fill:#fce0ed;stroke:#d55288}.dental-tooth.condition-missing svg{opacity:.4}.dental-tooth.condition-missing:after{content:"";position:absolute;inset:34px 9px auto;height:2px;background:#e34d53;transform:rotate(-42deg);box-shadow:0 0 0 1px #fff}.tooth-status-dot{position:absolute;right:3px;top:20px;width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 0 2px #fff}.dental-tooth.lower .tooth-status-dot{top:auto;bottom:20px}

/* Tooth editor */
.tooth-editor{border-left:1px solid var(--line);background:#f9fbfd;padding:18px;min-width:0}.tooth-empty{height:100%;min-height:330px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#9aa7b8;padding:25px}.tooth-empty>.ui-icon{color:#b8c9dd;margin-bottom:13px}.tooth-empty b{color:#5e6c80;font-size:13px}.tooth-empty p{font-size:10px;line-height:1.55;max-width:220px}.tooth-form{display:block}.tooth-form[hidden]{display:none}.selected-tooth-head{display:flex;align-items:center;gap:11px;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--line)}.selected-tooth-badge{width:43px;height:43px;border-radius:12px;background:#e8f2ff;color:var(--primary);display:grid;place-items:center;font-size:16px;font-weight:800}.selected-tooth-head div{display:grid;gap:3px}.selected-tooth-head small{font-size:8px;color:#8c98a9;letter-spacing:.8px}.selected-tooth-head b{font-size:11px}.tooth-form>label{font-size:9px;margin-bottom:7px}.surface-picker{display:grid;grid-template-columns:repeat(3,29px);grid-template-rows:repeat(3,29px);justify-content:center;margin:0 0 15px}.surface-picker button{border:1px solid #cbd7e5;background:#fff;color:#758398;font-size:8px;font-weight:700;cursor:pointer}.surface-picker button:hover,.surface-picker button.active{background:#e8f2ff;border-color:#63a0ed;color:#1769e0}.surface-picker .top{grid-column:2;grid-row:1;border-radius:8px 8px 2px 2px}.surface-picker .left{grid-column:1;grid-row:2;border-radius:8px 2px 2px 8px}.surface-picker .center{grid-column:2;grid-row:2}.surface-picker .right{grid-column:3;grid-row:2;border-radius:2px 8px 8px 2px}.surface-picker .bottom{grid-column:2;grid-row:3;border-radius:2px 2px 8px 8px}.tooth-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tooth-form-grid .full{grid-column:1/-1}.tooth-form-grid label{font-size:9px}.tooth-form-grid input,.tooth-form-grid select,.tooth-form-grid textarea{padding:8px 9px;font-size:10px}.tooth-form .btn{margin-top:12px}.odontogram-history{border-top:1px solid var(--line)}.odontogram-history .card-head span{font-size:9px;color:var(--muted)}.history-tooth{display:inline-grid;place-items:center;width:27px;height:27px;border-radius:7px;background:#edf4fc;color:var(--primary)}

@media(max-width:1250px){.odonto-workspace{grid-template-columns:1fr}.tooth-editor{border-left:0;border-top:1px solid var(--line)}.tooth-empty{min-height:160px}.tooth-form-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.profile-side{position:static}.profile-main>.tabs{margin-top:15px}.odontogram-chart{padding:20px 12px}.odonto-head{align-items:flex-start;flex-direction:column}.dentition-switch{width:100%}.dentition-switch button{flex:1}.patient-page-head .head-actions{flex-wrap:wrap}}
@media(max-width:620px){.profile-main>.tabs{gap:2px;scroll-snap-type:x mandatory}.tabs button{scroll-snap-align:start}.tabs button .ui-icon{display:none}.odonto-legend{gap:9px 13px}.odontogram-chart{padding:18px 8px}.arch-orientation,.dentition-panel{min-width:650px}.dental-tooth{width:39px}.dental-tooth.molar{width:43px}.tooth-form-grid{grid-template-columns:1fr}.tooth-form-grid .full{grid-column:auto}.patient-page-head .head-actions .btn{min-width:calc(50% - 5px)}}
