.biostimulator-tools[hidden] { display:none!important; }
.biostimulator-tools { position:absolute; z-index:9; left:12px; bottom:12px; width:min(380px,calc(100% - 24px)); padding:12px; border:1px solid var(--border-glass-active); border-radius:16px; background:var(--bg-secondary); color:var(--color-text-primary); box-sizing:border-box; }
.bio-heading { display:flex; justify-content:space-between; align-items:center; font-size:15px; }
.bio-heading output { color:#c4b5fd; font-variant-numeric:tabular-nums; }
.biostimulator-tools p { margin:6px 0 10px; font-size:13px; line-height:1.4; color:var(--color-text-secondary); }
.bio-actions { display:flex; gap:6px; }
.bio-actions button { min-height:44px; min-width:44px; padding:6px 10px; border:1px solid var(--border-glass-active); border-radius:9px; background:var(--bg-primary); color:var(--color-text-primary); font:inherit; font-size:13px; cursor:pointer; touch-action:manipulation; }
.bio-actions button:disabled { opacity:.4; cursor:default; }
.bio-actions button[aria-pressed=true], .mode-btn[data-mode=biostimulator].active { background:#6840a6; color:white; border-color:#b899ec; }
.bio-actions button:focus-visible { outline:2px solid #c4b5fd; outline-offset:2px; }
.mode-tabs { flex-wrap:wrap; }
.mode-btn[data-mode=biostimulator] { flex-basis:100%; grid-column:1 / -1; }
html[data-anatomy-mode=biostimulator] .visualizer-toolbar,
html[data-anatomy-mode=biostimulator] .legend-card,
html[data-anatomy-mode=biostimulator] .anatomy-animation-card,
html[data-anatomy-mode=biostimulator] .sidebar .panel-card:has(.layer-controls) { display:none!important; }
.phone-layout .phone-choices { flex-wrap:nowrap; }
.phone-layout #phone-mode { flex:1; min-width:0; }
.phone-layout #phone-mode .mode-tabs { display:none; }
.phone-layout #phone-mode-select { width:100%; min-width:0; min-height:48px; padding:10px 22px 10px 8px; border:1px solid var(--border-glass-active); border-radius:10px; background-color:var(--bg-primary); color:var(--color-text-primary); font:inherit; font-size:16px; font-weight:600; appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%2394a3b8' stroke-width='2'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 9px center; }
.phone-layout #phone-mode-select[data-mode=biostimulator] { border-color:#9e77d7; color:var(--color-text-primary); }
.phone-layout #phone-mode-select[data-mode=filler] { border-color:#06b6d4; color:var(--color-text-primary); }
.phone-layout #phone-mode-select[data-mode=botox] { border-color:#a855f7; color:var(--color-text-primary); }
.phone-layout #phone-mode-select option { background:var(--bg-primary); color:var(--color-text-primary); }
.phone-layout #phone-mode-select:focus-visible { outline:2px solid #c4b5fd; outline-offset:2px; }
.phone-layout #phone-mode-select:disabled { opacity:.45; }
@media (max-width:360px) { .phone-layout .anatomy-variant-btn { font-size:12px; padding:7px; } .phone-layout .phone-choices { gap:6px; } }
.phone-layout .mode-btn[data-mode=biostimulator] { flex:1; }
.phone-layout .biostimulator-tools { bottom:8px; left:8px; width:calc(100% - 16px); padding:10px; }
.phone-layout[data-anatomy-mode=biostimulator] #canvas-holder { height:calc(100% - 130px)!important; bottom:130px; }
.phone-layout .bio-actions button { flex:1; }
.phone-layout .bio-actions button[data-bio=in], .phone-layout .bio-actions button[data-bio=out] { flex:0 0 44px; }
.phone-layout .phone-dock button:disabled { opacity:.35; }
@media (max-height:500px) { .phone-layout .biostimulator-tools { width:330px; } .phone-layout .biostimulator-tools p { margin:3px 0; } .phone-layout .bio-heading { display:none; } .phone-layout[data-anatomy-mode=biostimulator] #canvas-holder { height:calc(100% - 85px)!important; bottom:85px; } }

.bio-plan-volume[hidden], #bio-total-metric[hidden] { display:none!important; }
.bio-plan-volume { padding:12px; border:1px solid var(--border-glass-active); border-radius:12px; margin:0 0 14px; }
.bio-plan-volume label { display:block; color:var(--color-text-primary); font-size:14px; font-weight:600; margin-bottom:8px; }
.bio-plan-volume input { width:100%; min-height:44px; box-sizing:border-box; background:var(--bg-primary); color:var(--color-text-primary); border:1px solid var(--border-glass-active); border-radius:8px; padding:10px; font:inherit; font-size:16px; }
.bio-plan-volume input:focus-visible { outline:2px solid #c4b5fd; }
.bio-plan-volume p { font-size:13px; line-height:1.5; color:var(--color-text-secondary); margin:8px 0 0; }
.plan-item-amount.biostimulator, .metric-val.biostimulator { color:#b899ec; }
.planner-summary-box:has(#bio-total-metric:not([hidden])) { row-gap:12px; }
#bio-total-metric { grid-column:1 / -1; border-top:1px solid var(--border-glass); padding-top:10px; }
[data-theme=light] .plan-item-amount.biostimulator, [data-theme=light] .metric-val.biostimulator { color:#6840a6; }
