:root{
 --ink:#172033;--muted:#6f7b8e;--line:#dfe5ed;--paper:#fff;--wash:#f4f7fb;
 --brand:#3159c8;--brand2:#2548aa;--green:#2c755c;--red:#a2443a;--amber:#8b681b;
 --shadow:0 12px 36px rgba(22,40,80,.08)
}
*{box-sizing:border-box}html{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;background:var(--wash);color:var(--ink)}
body{margin:0;font-size:15px}.hidden{display:none!important}button,input,select,textarea{font:inherit}button{cursor:pointer}
#app{min-height:100vh}.side{position:fixed;inset:0 auto 0 0;width:218px;background:#172033;color:#fff;padding:18px 14px;z-index:30;display:flex;flex-direction:column}
.brand{display:flex;gap:10px;align-items:center;padding:4px 6px 20px}.mark{width:40px;height:40px;border-radius:13px;background:#fff;color:#172033;display:grid;place-items:center;font-size:20px}.brand b,.brand span{display:block}.brand span{font-size:11px;color:#9eacc1;margin-top:3px}
.side nav{display:grid;gap:5px}.side nav button{border:0;background:transparent;color:#c7d0de;border-radius:10px;min-height:44px;text-align:left;padding:0 12px;display:flex;gap:10px;align-items:center}.side nav button.active,.side nav button:hover{background:#253149;color:#fff}.side-foot{margin-top:auto;border-top:1px solid #32405a;padding:14px 6px 2px;font-size:11px;color:#97a6bb;line-height:1.55}
.main{margin-left:218px;min-height:100vh}.top{position:sticky;top:0;z-index:20;height:70px;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 24px;gap:16px}.top>div:first-child{margin-right:auto}.top small,.top b{display:block}.top small{font-size:10px;color:#8a95a4}.top b{font-size:16px;margin-top:2px}.top-actions{display:flex;gap:8px;align-items:center}.status{font-size:11px;color:var(--green);display:flex;align-items:center;gap:5px}.status i{width:7px;height:7px;border-radius:50%;background:#4bb085}
.content{padding:22px 24px 60px;max-width:1480px;margin:auto}.page{display:none}.page.active{display:block}.title{display:flex;align-items:flex-end;gap:12px;margin-bottom:18px}.title>div{margin-right:auto}.title h1{font-size:24px;margin:0}.title p{font-size:12px;color:var(--muted);margin:5px 0 0}
.btn{border:1px solid var(--line);background:#fff;color:#344157;border-radius:10px;min-height:40px;padding:0 13px;font-weight:650}.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn.primary:hover{background:var(--brand2)}.btn.ghost{background:#fff}.btn.danger{color:var(--red);border-color:#eccac6}.btn.small{min-height:34px;padding:0 9px;font-size:12px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat,.card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.stat{padding:17px}.stat span,.stat b,.stat small{display:block}.stat span{font-size:11px;color:var(--muted)}.stat b{font-size:26px;margin:5px 0}.stat small{font-size:10px;color:#8a95a4}
.two{display:grid;grid-template-columns:1.25fr .75fr;gap:14px;margin-top:14px}.card-head{display:flex;gap:10px;align-items:center;padding:14px 16px;border-bottom:1px solid #edf0f4}.card-head b{font-size:14px;margin-right:auto}.card-head small{font-size:10px;color:var(--muted)}.card-body{padding:14px 16px}
.quick{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.quick button{border:1px solid #e0e7f1;background:#fafbfd;border-radius:12px;padding:14px;text-align:left;min-height:88px}.quick button b,.quick button small{display:block}.quick button b{font-size:13px}.quick button small{font-size:10px;color:var(--muted);margin-top:5px;line-height:1.45}
.list{display:grid;gap:8px}.list-row{padding:10px 0;border-bottom:1px solid #edf0f4;display:flex;gap:10px;align-items:center}.list-row:last-child{border-bottom:0}.list-row>div{margin-right:auto;min-width:0}.list-row b,.list-row small{display:block}.list-row b{font-size:12px}.list-row small{font-size:10px;color:var(--muted);margin-top:3px}.pill{font-size:10px;padding:4px 7px;border-radius:99px;background:#eef3ff;color:#3159c8;white-space:nowrap}.pill.green{background:#eaf7f2;color:#2c755c}.pill.amber{background:#fff5d9;color:#846116}.pill.red{background:#fff0ee;color:#a2443a}
.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.search{flex:1;min-width:240px}.field input,.field select,.field textarea,.toolbar input,.toolbar select{width:100%;border:1px solid #d8e0e9;border-radius:10px;background:#fff;outline:none}.field input,.field select,.toolbar input,.toolbar select{height:42px;padding:0 11px}.field textarea{min-height:86px;padding:10px 11px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus,.toolbar input:focus{border-color:#8aa3df;box-shadow:0 0 0 3px rgba(49,89,200,.1)}
.form-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:16px;margin-bottom:12px}.section-title{display:flex;align-items:center;gap:10px;margin-bottom:12px}.section-title b{font-size:14px;margin-right:auto}.section-title small{font-size:10px;color:var(--muted)}.fields{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.field label{display:block;font-size:11px;font-weight:700;margin:0 0 5px}.field small{display:block;font-size:9px;color:var(--muted);margin-top:4px}.span2{grid-column:span 2}.span3{grid-column:1/-1}
.items{display:grid;gap:10px}.tx-item{border:1px solid #dde5f0;border-radius:14px;padding:13px;background:#fafbfd}.tx-item-head{display:flex;align-items:center;gap:8px;margin-bottom:11px}.tx-item-head b{font-size:13px;margin-right:auto}.anatomy-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.product-list{display:grid;gap:8px;margin-top:9px}.product-row{display:grid;grid-template-columns:1fr 1fr 1.15fr 1.2fr 1fr .72fr .72fr auto;gap:7px;padding:9px;background:#fff;border:1px solid #e5e9ef;border-radius:11px;align-items:end}.product-row .field{min-width:0}.product-row button{height:40px}.mix-box{margin-top:8px;padding:9px;border:1px dashed #b8c8e9;border-radius:10px;background:#f5f8ff}
.table{width:100%;border-collapse:collapse;background:#fff;border-radius:14px;overflow:hidden;border:1px solid var(--line)}.table th,.table td{padding:11px 10px;border-bottom:1px solid #edf0f4;text-align:left;vertical-align:top}.table th{font-size:10px;color:#697588;background:#f7f9fc}.table td{font-size:12px}.table tr:last-child td{border-bottom:0}.actions-inline{display:flex;gap:5px;flex-wrap:wrap}
.patient-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.patient-card{padding:14px;background:#fff;border:1px solid var(--line);border-radius:14px}.patient-card h3{font-size:14px;margin:0}.patient-card p{font-size:10px;color:var(--muted);margin:5px 0 12px}.patient-card .meta{display:flex;gap:5px;flex-wrap:wrap}
.empty{padding:40px;text-align:center;color:#8791a0;background:#fff;border:1px dashed #d6dde7;border-radius:14px;font-size:12px}
.follow-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.follow-card{padding:13px;background:#fff;border:1px solid var(--line);border-radius:13px}.follow-card b,.follow-card small{display:block}.follow-card b{font-size:13px}.follow-card small{font-size:10px;color:var(--muted);margin:4px 0 10px}
.photo-controls{display:flex;gap:8px;flex-wrap:wrap}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;margin-top:12px}.photo-card{padding:9px;border:1px solid var(--line);border-radius:12px;background:#fff}.photo-card img{width:100%;height:210px;object-fit:contain;background:#f1f3f7;border-radius:8px}.photo-card b,.photo-card small{display:block}.photo-card b{font-size:11px;margin-top:7px}.photo-card small{font-size:9px;color:var(--muted);margin-top:3px}.compare{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.compare figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:12px;padding:9px}.compare img{width:100%;height:55vh;max-height:600px;object-fit:contain;background:#f1f3f7}.compare figcaption{font-size:10px;color:var(--muted);margin-top:5px}
.settings-list{display:grid;gap:10px}.setting{display:flex;gap:12px;align-items:center;padding:14px;background:#fff;border:1px solid var(--line);border-radius:13px}.setting>div{margin-right:auto}.setting b,.setting small{display:block}.setting b{font-size:13px}.setting small{font-size:10px;color:var(--muted);margin-top:4px;line-height:1.5}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(20px);background:#172033;color:#fff;border-radius:10px;padding:10px 13px;font-size:11px;opacity:0;pointer-events:none;transition:.2s;z-index:100}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.modal{position:fixed;inset:0;background:rgba(14,24,42,.48);display:grid;place-items:center;z-index:90;padding:18px}.modal-card{width:min(920px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 30px 90px rgba(0,0,0,.25)}.modal-head{position:sticky;top:0;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:13px 16px;z-index:2}.modal-head b{margin-right:auto}.modal-head button{border:0;background:transparent;font-size:24px}.modal-card .detail{padding:16px}.detail h3{font-size:14px;margin:18px 0 8px}.detail p,.detail li{font-size:12px;line-height:1.7}.care{padding:10px;border-radius:9px;background:#f7f8fb;margin-bottom:7px}.care.urgent{background:#fff0ee;border-left:3px solid #b84b43}.care b,.care small{display:block}.care b{font-size:12px}.care small{font-size:9px;color:var(--muted);margin-top:4px}
.mobile-nav{display:none}

.location-mode{display:flex;gap:6px;padding:4px;background:#eef2f7;border-radius:11px;width:max-content;max-width:100%;margin-bottom:9px}.location-mode button{border:0;background:transparent;color:#667386;border-radius:8px;min-height:34px;padding:0 11px;font-size:11px;font-weight:700}.location-mode button.active{background:#fff;color:#3159c8;box-shadow:0 2px 8px rgba(35,54,90,.08)}
.fine-location-card{display:flex;gap:10px;align-items:center;padding:11px 12px;border:1px solid #d9e3f2;border-radius:12px;background:#f8fbff}.fine-location-card>div{margin-right:auto;min-width:0}.fine-location-card small,.fine-location-card b,.fine-location-card span{display:block}.fine-location-card small{font-size:9px;color:#8290a2}.fine-location-card b{font-size:12px;margin-top:3px;line-height:1.45}.fine-location-card span{font-size:9px;color:#3159c8;margin-top:3px}.no-location-note{padding:10px 12px;border-radius:10px;background:#f6f7f9;color:#748092;font-size:10px;line-height:1.5}
.wheel-sheet{padding:14px 16px 16px}.wheel-guide{padding:0 2px 12px}.wheel-guide span,.wheel-guide b,.wheel-guide small{display:block}.wheel-guide span{font-size:9px;color:#3159c8;font-weight:800}.wheel-guide b{font-size:13px;margin-top:4px}.wheel-guide small{font-size:9px;color:#7b8798;margin-top:4px}.wheel-scroll{overflow-x:auto;padding-bottom:4px;overscroll-behavior-x:contain}.wheel-grid{min-width:610px;display:grid;grid-template-columns:repeat(5,minmax(112px,1fr));gap:7px}.wheel-col>b{display:block;text-align:center;font-size:9px;color:#7c8898;margin-bottom:5px}.wheel-window{position:relative;height:230px;border:1px solid #e0e6ee;border-radius:12px;background:linear-gradient(to bottom,#f7f8fa 0,#fff 32%,#fff 68%,#f7f8fa 100%);overflow:hidden}.wheel-window:after{content:"";pointer-events:none;position:absolute;left:4px;right:4px;top:50%;height:42px;transform:translateY(-50%);border-top:1px solid #b8c6e7;border-bottom:1px solid #b8c6e7;background:rgba(49,89,200,.045);border-radius:8px}.wheel-list{height:100%;overflow-y:auto;scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;padding:0 4px;scrollbar-width:none}.wheel-list::-webkit-scrollbar{display:none}.wheel-pad{height:94px}.wheel-option{display:block;width:100%;height:42px;border:0;background:transparent;color:#9aa4b3;font-size:11px;padding:0 5px;scroll-snap-align:center;white-space:normal;line-height:1.2;position:relative;z-index:2}.wheel-option.selected{color:#172033;font-weight:800;font-size:12px}.wheel-option.stop{color:#8895a7}.wheel-option.stop.selected{color:#3159c8}.wheel-empty{height:42px;display:grid;place-items:center;font-size:10px;color:#a2aab6}.wheel-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:12px}

.product-flow .field small{font-size:8px;line-height:1.25}.custom-brand-input{margin-top:6px;height:38px!important}.product-remove{align-self:end}
.imaging-searchbar{display:flex;gap:10px;align-items:center;margin-bottom:18px}.imaging-searchbar .search{position:relative}.imaging-searchbar .search span{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#8390a4;font-size:20px}.imaging-searchbar .search input{padding-left:42px;background:#f6f8fb}
.imaging-title{align-items:center}.imaging-filter-card{padding:16px 18px}.imaging-filter-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.image-auto-match{width:100%;margin-top:10px;min-height:46px;border:0;border-radius:12px;background:#e8efff;color:#3159c8;font-weight:800}.imaging-match-note{font-size:10px;color:#78869a;line-height:1.55;margin:11px 0 0}.imaging-result-card{min-height:210px}.imaging-empty{min-height:180px;display:grid;place-items:center;align-content:center;gap:6px;color:#8290a3;text-align:center}.imaging-empty b{font-size:15px}.imaging-empty small{font-size:10px}

.product-wheel-row{grid-template-columns:1fr 3.2fr .72fr .72fr auto;align-items:end}.product-source-field{align-self:stretch}.plan-summary-card{display:flex;gap:10px;align-items:center;padding:9px 10px;border:1px solid #d9e3f2;border-radius:11px;background:#f8fbff;min-height:72px}.plan-summary-card>div{min-width:0;margin-right:auto}.plan-summary-card small,.plan-summary-card b,.plan-summary-card span{display:block}.plan-summary-card small{font-size:8px;color:#3159c8;font-weight:800}.plan-summary-card b{font-size:10px;line-height:1.4;margin-top:3px;word-break:break-word}.plan-summary-card span{font-size:8px;color:#7c899b;margin-top:3px}.plan-wheel-grid{min-width:760px;grid-template-columns:1.35fr 1fr 1.1fr .9fr 1.3fr}.plan-wheel-col .wheel-option{font-size:10px}.plan-wheel-col .wheel-option.selected{font-size:11px}.custom-wheel-input{margin-top:10px}.plan-wheel-sheet .wheel-guide b{font-size:11px;line-height:1.45}

.patient-main-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.region-picker-button{width:100%;min-height:42px;border:1px solid #d8e0e9;border-radius:10px;background:#fff;text-align:left;padding:7px 10px;color:#344157}.region-picker-button b,.region-picker-button span{display:block}.region-picker-button b{font-size:12px;line-height:1.3}.region-picker-button span{font-size:8px;color:#8995a5;margin-top:2px}.region-wheel-grid{min-width:500px;grid-template-columns:1.05fr 1fr 1fr}.region-wheel-col .wheel-option{font-size:10px}.region-wheel-col .wheel-option.selected{font-size:11px}

.goal-link-card{margin-top:9px;padding:11px 12px;border:1px solid #d9e3f2;border-radius:12px;background:#fbfcff}.goal-link-card.review{border-color:#efc5bf;background:#fff8f7}.goal-link-head{display:flex;gap:8px;align-items:flex-start}.goal-link-head>div{margin-right:auto;min-width:0}.goal-link-head small,.goal-link-head b,.goal-link-head span:not(.pill){display:block}.goal-link-head small{font-size:8px;color:#3159c8;font-weight:800}.goal-link-head b{font-size:12px;margin-top:3px}.goal-link-head span:not(.pill){font-size:9px;color:#7d899a;margin-top:3px}.goal-chips{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.goal-chips button{border:1px solid #dce4ef;background:#fff;color:#3e5069;border-radius:999px;padding:5px 8px;font-size:9px}.goal-link-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:8px}.goal-link-actions>small{font-size:8px;color:#7e8a9b}.goal-picker{padding:14px 16px 16px}.goal-group{margin-top:12px}.goal-group>b{display:block;font-size:10px;color:#536176;margin-bottom:6px}.goal-picker-list{display:flex;gap:6px;flex-wrap:wrap}.goal-picker-list button{border:1px solid #dce4ef;background:#fff;border-radius:9px;padding:8px 10px;font-size:10px;color:#344157}.goal-group.current .goal-picker-list button{background:#eef3ff;border-color:#cbd8f7;color:#3159c8}.goal-group.potential{padding:8px;border:1px dashed #d8dee8;border-radius:9px}.goal-group.potential .goal-picker-list button{color:#8390a2}.goal-custom{margin-top:12px}
.capture-preview,.capture-assist{padding:14px 16px 16px}.capture-protocol-head{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px}.capture-protocol-head>div{margin-right:auto}.capture-protocol-head small,.capture-protocol-head b,.capture-protocol-head span:not(.pill){display:block}.capture-protocol-head small{font-size:8px;color:#7b8798}.capture-protocol-head b{font-size:14px;margin-top:3px}.capture-protocol-head span:not(.pill){font-size:9px;color:#657387;margin-top:3px}.capture-slot-list,.assist-slot-list{display:grid;gap:7px}.capture-slot,.assist-slot{border:1px solid #e2e7ee;border-radius:10px;padding:9px;background:#fafbfd}.capture-slot{display:flex;gap:8px;align-items:flex-start}.capture-slot>div{margin-right:auto}.capture-slot b,.capture-slot small{display:block}.capture-slot b{font-size:10px}.capture-slot small{font-size:8px;color:#7d899a;line-height:1.45;margin-top:3px}.capture-slot>span{font-size:8px;color:#3159c8}.assist-slot-main{display:flex;gap:9px;align-items:flex-start}.assist-slot-main>div{margin-right:auto}.assist-slot-main b,.assist-slot-main small{display:block}.assist-slot-main b{font-size:10px;margin-top:5px}.assist-slot-main small{font-size:8px;color:#788698;line-height:1.45;margin-top:3px}.assist-slot figure{margin:0;width:92px;flex:0 0 92px}.assist-slot figure img{width:92px;height:92px;object-fit:cover;border-radius:8px;background:#eef1f5}.assist-slot figure figcaption{font-size:7px;color:#7e8998;line-height:1.3;margin-top:3px}

.dose-picker-button{width:100%;height:42px;border:1px solid #d8e0e9;border-radius:10px;background:#fff;text-align:left;padding:6px 10px}.dose-picker-button b,.dose-picker-button span{display:block}.dose-picker-button b{font-size:12px;color:#344157}.dose-picker-button span{font-size:8px;color:#8995a5;margin-top:2px}.dose-wheel-grid{min-width:360px;grid-template-columns:1.2fr .8fr}.dose-wheel-sheet .wheel-window{height:270px}.product-wheel-row{grid-template-columns:3.2fr 1fr auto}.product-source-field{display:none!important}

.followup-disclosure{padding:0;overflow:hidden}
.followup-disclosure>summary{list-style:none}
.followup-disclosure>summary::-webkit-details-marker{display:none}
.followup-summary{display:flex;align-items:center;gap:10px;padding:15px 16px;cursor:pointer;user-select:none}
.followup-summary>div{margin-right:auto}.followup-summary b,.followup-summary small{display:block}
.followup-summary b{font-size:14px}.followup-summary small{font-size:10px;color:var(--muted);margin-top:3px}
.followup-chevron{font-size:18px;color:#7f8ba0;transition:transform .18s ease}
.followup-disclosure[open] .followup-chevron{transform:rotate(180deg)}
.followup-content{padding:0 16px 16px;border-top:1px solid #edf0f4}
.followup-content .fields{padding-top:14px}

.master-mini-status{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 10px}.master-mini-status span{padding:5px 8px;border-radius:999px;background:#eef3ff;color:#3159c8;font-size:9px;font-weight:800}
.goal-picker-list button{display:flex;align-items:center;justify-content:space-between;gap:10px}.goal-picker-list button small{font-size:8px;color:#8d98aa;font-weight:600}
.goal-more-disclosure{border:1px solid #e6eaf0;border-radius:10px;margin-top:8px;overflow:hidden}.goal-more-disclosure>summary{cursor:pointer;list-style:none;padding:10px 12px;font-size:10px;font-weight:800;background:#f8f9fb}.goal-more-disclosure>summary::-webkit-details-marker{display:none}.goal-more-disclosure .goal-group{margin:0;padding:10px}
.goal-hint-list{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.goal-hint-list>span{padding:6px 8px;border-radius:8px;background:#f4f5f7;color:#6f7a8c;font-size:9px}.goal-hint-list small{display:block;font-size:7px;margin-top:2px;color:#a0a8b4}
.goal-empty-link{padding:11px;border-radius:10px;background:#fff7e8;color:#8a6722;font-size:10px;margin-top:8px}
.anatomy-navigation{margin:12px 0 0;padding:11px;border:1px solid #e1e7ef;border-radius:12px;background:#fbfcfe}.anatomy-nav-head{display:flex;align-items:center;gap:10px}.anatomy-nav-head b{font-size:11px}.anatomy-nav-head small{margin-left:auto;color:#8692a2;font-size:8px}.anatomy-nav-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}.anatomy-nav-buttons button{border:1px solid #dce4f1;background:#fff;border-radius:9px;text-align:left;padding:8px}.anatomy-nav-buttons button b,.anatomy-nav-buttons button small{display:block}.anatomy-nav-buttons button b{font-size:10px;color:#3159c8}.anatomy-nav-buttons button small{font-size:8px;color:#7c899b;margin-top:2px;line-height:1.35}.anatomy-nav-empty{font-size:9px;color:#8b96a6;margin-top:7px}

.assist-slot.has-pre-reference{border-color:#bcd8cc;background:#fbfffd}.assist-slot-main em{display:block;margin-top:5px;font-size:8px;font-style:normal;color:#2c755c}.pre-reference-banner{border-radius:11px;padding:10px 12px;margin-bottom:9px}.pre-reference-banner.ready{background:#eaf7f2;border:1px solid #cbe8dc}.pre-reference-banner.warn{background:#fff7e8;border:1px solid #f0dfb5}.pre-reference-banner b,.pre-reference-banner small{display:block}.pre-reference-banner b{font-size:11px}.pre-reference-banner small{font-size:9px;color:#6f7b8e;margin-top:4px;line-height:1.5}
.guided-camera{padding:12px 14px 15px}.guided-camera-head{display:flex;gap:10px;align-items:flex-start;margin-bottom:9px}.guided-camera-head>div{margin-right:auto}.guided-camera-head small,.guided-camera-head b,.guided-camera-head span:not(.pill){display:block}.guided-camera-head small{font-size:8px;color:#7d8999}.guided-camera-head b{font-size:13px;margin-top:2px}.guided-camera-head span:not(.pill){font-size:9px;color:#647186;margin-top:3px}.guided-camera-stage{position:relative;width:100%;aspect-ratio:3/4;max-height:68vh;background:#0b0f16;border-radius:14px;overflow:hidden}.guided-camera-stage video,.guided-reference-ghost{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.guided-camera-stage video{z-index:1}.guided-reference-ghost{z-index:2;opacity:.32;pointer-events:none;filter:saturate(.7);mix-blend-mode:screen}.guided-line-overlay{position:absolute;inset:0;z-index:3;pointer-events:none}.guide-v,.guide-h{position:absolute;background:rgba(255,255,255,.72);box-shadow:0 0 0 1px rgba(10,15,24,.2)}.guide-v{top:0;bottom:0;left:50%;width:1px}.guide-h{left:0;right:0;top:50%;height:1px}.guide-v.third.left{left:33.333%;opacity:.45}.guide-v.third.right{left:66.666%;opacity:.45}.guide-h.third.top{top:33.333%;opacity:.45}.guide-h.third.bottom{top:66.666%;opacity:.45}.guide-subject-frame{position:absolute;left:50%;top:50%;width:58%;height:68%;transform:translate(-50%,-50%);border:1.5px dashed rgba(255,255,255,.9);border-radius:48% 48% 44% 44%/42% 42% 55% 55%;box-shadow:0 0 0 999px rgba(0,0,0,.03)}.guide-side .guide-subject-frame{width:55%;height:70%;transform:translate(-46%,-50%);border-radius:44% 56% 48% 52%}.guide-oblique .guide-subject-frame{width:57%;transform:translate(-48%,-50%) rotate(-2deg)}.guide-detail .guide-subject-frame{width:72%;height:52%;border-radius:20px}.guide-top .guide-subject-frame{width:66%;height:60%;border-radius:50%}.guided-camera-tip{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);z-index:4;background:rgba(10,15,24,.68);color:#fff;padding:6px 9px;border-radius:999px;font-size:9px;white-space:nowrap}.guided-camera-controls{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:9px}.ghost-opacity{display:flex;gap:7px;align-items:center;font-size:9px;color:#607086;background:#f5f7fa;border:1px solid #e0e5ec;border-radius:9px;padding:5px 8px}.ghost-opacity input{width:110px}.ghost-opacity span{min-width:28px}.guided-camera-actions{display:flex;gap:8px;margin-top:9px}.guided-camera-actions .btn{flex:1}.guided-safety-note{margin-top:9px}.record-capture-stages{margin-top:8px}
.post-save-compare,.compare-modal{padding:14px 16px 16px}.current-capture-card{display:flex;gap:10px;align-items:center;padding:9px;border:1px solid #dfe6ef;border-radius:12px;background:#fafbfd;margin-bottom:12px}.current-capture-card img{width:92px;height:92px;object-fit:cover;border-radius:8px;background:#eef1f5}.current-capture-card small,.current-capture-card b,.current-capture-card span{display:block}.current-capture-card small{font-size:8px;color:#3159c8}.current-capture-card b{font-size:11px;margin-top:3px}.current-capture-card span{font-size:9px;color:#748196;margin-top:3px}.history-compare-list{display:grid;gap:7px;max-height:46vh;overflow:auto}.history-compare-card{display:flex;gap:10px;align-items:center;width:100%;border:1px solid #e0e6ee;background:#fff;border-radius:11px;padding:8px;text-align:left}.history-compare-card img{width:74px;height:74px;object-fit:cover;border-radius:8px;background:#eef1f5}.history-compare-card>span{min-width:0}.history-compare-card b,.history-compare-card small{display:block}.history-compare-card b{font-size:10px}.history-compare-card small{font-size:8px;color:#748196;margin:3px 0 5px;line-height:1.35}.history-compare-card em{font-style:normal}.compare-quality-note{display:flex;gap:8px;align-items:center;margin-bottom:10px}.compare-quality-note small{font-size:9px;color:#6f7b8e;line-height:1.45}.compare-fixed{margin-top:0}.compare-after-actions{margin-top:10px}

.capture-progress{padding:8px 0 10px}.capture-progress>div{height:7px;border-radius:999px;background:#edf0f4;overflow:hidden}.capture-progress i{display:block;height:100%;background:#3159c8;border-radius:999px}.capture-progress small{display:block;margin-top:5px;font-size:8px;color:#78859a}.assist-slot.slot-done{background:#f8fffb;border-color:#cfe8dc}.slot-badges{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:4px}.capture-footer-actions{display:flex;gap:8px;margin-top:10px}.capture-footer-actions .btn{flex:1}
.history-compare-group{border:1px solid #e3e8ef;border-radius:10px;overflow:hidden;margin-bottom:7px}.history-compare-group>summary{list-style:none;cursor:pointer;padding:9px 11px;background:#f8f9fb;font-size:9px;font-weight:800}.history-compare-group>summary::-webkit-details-marker{display:none}.history-compare-group .history-compare-list{padding:7px}
.compare-mode-tabs{display:flex;gap:6px;margin-bottom:9px}.overlay-compare{display:grid;gap:9px}.overlay-stage{position:relative;width:100%;min-height:320px;background:#0d1118;border-radius:12px;overflow:hidden}.overlay-stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.overlay-current{opacity:.5}.overlay-compare label{display:flex;gap:8px;align-items:center;font-size:9px;color:#667589}.overlay-compare label input{flex:1}.overlay-compare small{font-size:8px;color:#7c889a}

.patient-row-field>.field{height:100%}
.patient-material-source{grid-column:1/-1}
.allergy-detail{margin-top:7px}
.allergy-detail.hidden{display:none!important}
.allergy-detail input{width:100%}

.appointment-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:14px;align-items:start}
.appointment-subtitle{margin-top:16px}.appt-region-fields{grid-template-columns:repeat(3,1fr)}
.appointment-actions{justify-content:flex-end}.appointment-design-list{display:grid;gap:8px}
.appointment-design-row{display:grid;grid-template-columns:34px minmax(200px,1.45fr) .9fr 1fr 1fr 1fr 1.15fr auto;gap:8px;align-items:end;padding:10px;border:1px solid #e0e6ee;border-radius:12px;background:#fafbfd}.design-index{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#eef3ff;color:#3159c8;font-size:11px;font-weight:800;align-self:center}.design-location{min-width:0}.design-location small,.design-location b{display:block}.design-location small{font-size:8px;color:#7b8798}.design-location b{font-size:10px;margin:4px 0 6px;line-height:1.35}.design-remove{align-self:end}
.face-design-card{position:sticky;top:86px;background:#fff;border:1px solid var(--line);border-radius:17px;padding:14px;box-shadow:var(--shadow)}.face-design-head{display:flex;gap:8px;align-items:center}.face-design-head>div{margin-right:auto}.face-design-head b,.face-design-head small{display:block}.face-design-head b{font-size:13px}.face-design-head small{font-size:9px;color:var(--muted);margin-top:3px}.face-design-svg{width:100%;max-height:460px;margin:8px auto;display:block;background:#f8fafc;border-radius:14px}.face-outline,.face-line,.face-eye,.face-ear{fill:none;stroke:#a8b5c7;stroke-width:1.1}.face-line{stroke-width:.8}.face-marker circle{fill:#3159c8;stroke:#fff;stroke-width:1.3}.face-marker text{fill:#fff;font-size:4px;font-weight:800}.face-design-legend{display:grid;gap:5px}.face-design-legend span{display:flex;gap:6px;align-items:center;font-size:9px;color:#566579}.face-design-legend i{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#3159c8;color:#fff;font-size:8px;font-style:normal;font-weight:800}.face-design-note{font-size:8px;color:#8995a5;line-height:1.45;margin:9px 0 0;padding-top:8px;border-top:1px solid #edf0f4}
.appointment-list{display:grid;gap:10px}.appointment-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:14px}.appointment-card-head{display:flex;gap:10px;align-items:flex-start}.appointment-card-head>div{margin-right:auto}.appointment-card-head small,.appointment-card-head b,.appointment-card-head span:not(.pill){display:block}.appointment-card-head small{font-size:9px;color:#3159c8}.appointment-card-head b{font-size:13px;margin-top:4px}.appointment-card-head span:not(.pill){font-size:9px;color:#758296;margin-top:4px}.appointment-design-summary{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.appointment-design-summary span{font-size:9px;padding:6px 8px;border-radius:8px;background:#f4f6f9;color:#59677a}

.appointment-design-row .dose-picker-button{min-width:130px}

.design-three-views{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0}
.design-view-card{border:1px solid #e1e7f0;border-radius:11px;padding:7px;text-align:center;background:#fbfcfe}
.design-view-card>b{display:block;font-size:9px;color:#53637a;margin-bottom:4px}
.design-view-card .face-design-svg{margin:0;max-height:none;aspect-ratio:4/5}
.face-design-legend span em{font-style:normal;min-width:0}
.face-design-legend span em b,.face-design-legend span em small{display:block}
.face-design-legend span em b{font-size:9px;color:#43516a}
.face-design-legend span em small{font-size:8px;color:#8995a5;margin-top:2px}

.face-photo-stage{position:relative;width:100%;aspect-ratio:4/5;overflow:hidden;border-radius:10px;background:#f8fafc}
.face-photo-stage>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.face-photo-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.face-photo-overlay .face-marker circle{fill:var(--marker,#3159c8);stroke:#fff;stroke-width:.55}
.face-photo-overlay .face-marker text{fill:#fff;font-size:2.7px;font-weight:800}

.record-data-toolbar{gap:8px;flex-wrap:wrap}
.record-data-toolbar .search{flex:1 1 280px}
.record-data-note{display:flex;gap:8px;flex-wrap:wrap;margin:-4px 0 12px;color:#6f8099;font-size:12px}
.record-data-note span{background:#f5f8fc;border:1px solid #e0e8f3;border-radius:999px;padding:5px 9px}
.import-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}
.import-summary>div{border:1px solid #dce6f3;background:#f8fbff;border-radius:10px;padding:10px;text-align:center}
.import-summary b{display:block;font-size:22px;color:#2455b8}.import-summary small{display:block;color:#73839a;margin-top:2px}
.export-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:10px 0}

.design-custom-brand{margin-top:6px;width:100%}

.record-provenance{font-size:13px;color:var(--muted)}
.lifecycle-list{display:grid;gap:7px;margin:8px 0 16px}
.lifecycle-list>div{display:flex;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid var(--line);border-radius:10px}
.lifecycle-list small{color:var(--muted)}
.integrity-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}
.integrity-summary>div{text-align:center;border:1px solid var(--line);border-radius:12px;padding:12px}
.integrity-summary b{display:block;font-size:24px}.integrity-summary small{color:var(--muted)}
.integrity-row{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;padding:10px 0;border-bottom:1px solid var(--line)}
.integrity-row b,.integrity-row small{display:block}.integrity-row small{margin-top:3px;color:var(--muted)}
@media(max-width:700px){.import-summary{grid-template-columns:1fr 1fr}.export-choice-grid{grid-template-columns:1fr}}

@media(max-width:1050px){.appointment-layout{grid-template-columns:1fr}.face-design-card{position:static}.appointment-design-row{grid-template-columns:34px 1.35fr 1fr 1fr}.appointment-design-row .design-dose-field{min-width:130px}.product-wheel-row{grid-template-columns:2.5fr 1fr auto}.product-wheel-row{grid-template-columns:1fr 2.4fr 1fr 1fr auto}.imaging-filter-grid{grid-template-columns:repeat(3,1fr)}.grid4{grid-template-columns:repeat(2,1fr)}.two{grid-template-columns:1fr}.fields{grid-template-columns:repeat(2,1fr)}.span3{grid-column:1/-1}.anatomy-grid{grid-template-columns:repeat(3,1fr)}.product-row{grid-template-columns:repeat(3,1fr)}.patient-grid,.follow-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){
 .design-three-views{grid-template-columns:1fr}.design-view-card .face-design-svg{max-height:300px}

 .appointment-design-row{grid-template-columns:30px 1fr}.appointment-design-row .field,.appointment-design-row .design-remove{grid-column:2}.appt-region-fields{grid-template-columns:1fr}.face-design-svg{max-height:360px}

 .capture-footer-actions{flex-direction:column}.overlay-stage{min-height:260px}

 .guided-camera{padding:8px}.guided-camera-stage{max-height:62vh}.guided-camera-controls .btn{flex:1 1 auto}.ghost-opacity{width:100%;justify-content:space-between}.ghost-opacity input{flex:1}.guided-camera-tip{font-size:8px}.record-capture-stages .btn{flex:1 1 45%}.history-compare-card img{width:64px;height:64px}.compare-quality-note{align-items:flex-start;flex-direction:column}

 .anatomy-nav-buttons{grid-template-columns:1fr}.anatomy-nav-head{align-items:flex-start;flex-direction:column}.anatomy-nav-head small{margin-left:0}

 .product-wheel-row{grid-template-columns:1fr}.dose-wheel-grid{min-width:330px}

 .goal-link-head{align-items:flex-start}.goal-link-actions .btn{flex:1 1 auto}.assist-slot-main{display:block}.assist-slot figure{width:100%;margin-top:8px}.assist-slot figure img{width:100%;height:180px;object-fit:contain}.capture-assist .actions-inline .btn{min-height:38px}

 .patient-main-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.region-wheel-grid{min-width:470px}

 .product-wheel-row{grid-template-columns:1fr}.plan-summary-card{align-items:flex-start}.plan-summary-card .btn{white-space:nowrap}.plan-wheel-grid{min-width:730px}

 .product-row{grid-template-columns:1fr}.imaging-searchbar{align-items:stretch}.imaging-searchbar .btn{white-space:nowrap}.imaging-filter-grid{grid-template-columns:1fr}.imaging-title{align-items:flex-start}.imaging-title .btn{max-width:150px;white-space:normal;line-height:1.2}.image-auto-match{font-size:14px}.imaging-match-note{font-size:11px}

 .wheel-sheet{padding:12px 10px 14px}.wheel-scroll{margin:0 -4px}.wheel-grid{min-width:575px;gap:5px}.wheel-window{height:248px}.wheel-option{font-size:11px}.wheel-actions .btn{min-height:40px;flex:1}.fine-location-card{align-items:flex-start}.location-mode{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}.location-mode button{padding:0 5px}

 body{font-size:16px}.side{display:none}.main{margin-left:0}.top{height:calc(60px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);padding-inline:12px}.top .status,.top .ghost{display:none}.content{padding:14px 12px calc(86px + env(safe-area-inset-bottom))}.title h1{font-size:20px}.grid4,.patient-grid,.follow-grid{grid-template-columns:1fr 1fr}.quick{grid-template-columns:1fr 1fr}.fields,.anatomy-grid,.product-row{grid-template-columns:1fr}.span2,.span3{grid-column:auto}.table-wrap{overflow:auto}.table{min-width:760px}.mobile-nav{display:grid;position:fixed;left:0;right:0;bottom:0;z-index:40;grid-template-columns:repeat(6,1fr);background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.mobile-nav button{border:0;background:transparent;min-height:58px;color:#7d899b;display:grid;place-items:center;align-content:center;gap:2px}.mobile-nav button.active{color:var(--brand)}.mobile-nav small{font-size:9px}.top-actions .primary{min-height:38px;padding:0 10px}.compare{grid-template-columns:1fr}.compare img{height:360px}
}
@media(max-width:430px){.patient-main-fields{grid-template-columns:1fr}.patient-material-source{grid-column:auto}.grid4{grid-template-columns:1fr 1fr}.quick{grid-template-columns:1fr}.top b{font-size:14px}.product-row input,.product-row select,.field input,.field select{font-size:16px}}

.care-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}
.care-timeline>div{border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--panel)}
.care-timeline b{display:block;margin-bottom:4px}.care-timeline p{font-size:12px;line-height:1.55;margin:0;color:var(--muted)}
.clinical-log{display:grid;gap:8px;margin:8px 0}
.clinical-log>div{border:1px solid var(--line);border-radius:12px;padding:10px}
.clinical-log>div.clinical-log-alert{border-left:4px solid #b74242}
.clinical-log b,.clinical-log small{display:block}.clinical-log small{color:var(--muted);margin-top:2px}
.clinical-log p{margin:6px 0 0;line-height:1.55}
.empty.compact{padding:10px;margin:6px 0}
@media(max-width:900px){.care-timeline{grid-template-columns:1fr 1fr}}

.care-block-title{margin:16px 0 7px;font-size:14px;letter-spacing:.02em}
.care.urgent.emergency{border-left-width:5px}
.care-audit{margin-top:12px;border-top:1px dashed var(--line);padding-top:8px}
.care-audit summary{cursor:pointer;color:var(--muted);font-size:12px}
.care-timeline small{display:block;color:var(--muted);margin-top:2px}
@media print{.side,.top,.mobile-nav,.toast{display:none!important}.main{margin:0}.content{display:none!important}.modal{position:static!important;display:block!important;background:#fff!important;padding:0!important}.modal-card{width:100%!important;max-height:none!important;overflow:visible!important;box-shadow:none!important;border-radius:0!important}.modal-head{display:none!important}.modal .toolbar{display:none!important}.modal .detail{padding:0!important}.care{break-inside:avoid}.card,.form-card{box-shadow:none}}

.product-evidence-badge{margin:8px 0;padding:8px 10px;border:1px solid var(--line,#d9dee7);border-radius:10px;background:rgba(0,0,0,.018);display:flex;gap:6px;flex-direction:column}
.product-evidence-badge b{font-size:12px}.product-evidence-badge span{font-size:11px;line-height:1.45;color:var(--muted,#667085)}
.product-evidence-badge.review{border-style:dashed}.product-evidence-badge.review b{font-weight:700}
.product-evidence-badge.verified{border-style:solid}.product-evidence-badge.fallback{opacity:.86}

/* v3.0.32 settings + recycle bin */
.confirm-delete{font-weight:700;box-shadow:0 0 0 2px currentColor inset}
.recycle-bin{display:grid;gap:8px;margin:0 0 12px}
.recycle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line,#e5e7eb);border-radius:12px;background:var(--card,#fff)}
.recycle-row>div:first-child{display:grid;gap:4px;min-width:0}
.recycle-row small{opacity:.72}
.recycle-setting{margin-bottom:8px}
@media(max-width:720px){.recycle-row{align-items:flex-start;flex-direction:column}.recycle-row .actions-inline{width:100%;justify-content:flex-end}}

/* v3.0.32 appointment design marker precision v2 */
.face-photo-overlay .face-marker.precision-region .region-ring,
.face-photo-overlay .face-marker.precision-subregion .region-ring{
 fill:color-mix(in srgb,var(--marker,#3159c8) 18%,transparent);
 stroke:var(--marker,#3159c8);
 stroke-width:.85;
}
.face-photo-overlay .face-marker.precision-region text,
.face-photo-overlay .face-marker.precision-subregion text{
 fill:var(--marker,#3159c8);
 paint-order:stroke;
 stroke:#fff;
 stroke-width:.7;
}

/* English Lift quick dose + add-design placement */
.add-design-next-row{display:flex;justify-content:flex-start;padding-top:10px;margin-top:8px;border-top:1px dashed var(--line)}
.add-design-next-row .btn{min-height:38px}
.english-dose-quick{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:14px 0}
.english-dose-quick .btn{min-height:44px}
.english-lift-goal-row{margin:9px 0 4px}
@media(max-width:700px){.english-dose-quick{grid-template-columns:repeat(2,minmax(0,1fr))}.english-dose-quick .btn:last-child{grid-column:1/-1}}

/* v3.0.32 lipolysis regulatory note */
.risk-note{display:block;margin-top:6px;color:var(--amber);line-height:1.45}

.design-row-actions{align-self:end;flex-wrap:nowrap}.design-row-actions .btn{white-space:nowrap}
@media(max-width:700px){.appointment-design-row .design-row-actions{grid-column:2;justify-content:flex-start;flex-wrap:wrap}}

/* v3.1.0 711×188 evidence-linked clinical chain */
.clinical-linkage-mini{grid-column:1/-1;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:9px 10px;border:1px solid var(--line);border-radius:11px;background:rgba(0,0,0,.015)}
.clinical-linkage-mini.review{border-style:dashed}
.clinical-linkage-mini b{font-size:12px}.clinical-linkage-mini small{color:var(--muted);font-size:11px;line-height:1.45}.clinical-linkage-mini em{flex:1 1 100%;font-style:normal;color:var(--muted);font-size:11px;line-height:1.5}
.follow-linkage-note{margin-top:8px;padding:8px 10px;border:1px dashed var(--line);border-radius:10px;font-size:11px;line-height:1.5;color:var(--muted)}
.follow-card.recommendation{border-style:dashed}
@media(max-width:700px){.clinical-linkage-mini{align-items:flex-start;flex-direction:column}.clinical-linkage-mini em{width:100%}}

/* v3.1.1 settings recycle-bin entry */
.recycle-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 12px}
.recycle-summary>div{padding:12px;border:1px solid var(--line,#e5e7eb);border-radius:12px;background:var(--card,#fff);text-align:center}
.recycle-summary b,.recycle-summary small{display:block}.recycle-summary b{font-size:18px}.recycle-summary small{margin-top:3px;opacity:.7;font-size:10px}
.recycle-note{padding:10px 12px;margin:0 0 12px;border:1px solid var(--line,#e5e7eb);border-radius:10px;font-size:11px;line-height:1.6;opacity:.82}
@media(max-width:560px){.recycle-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
