.ss-panel{background:var(--sim-bg);color:var(--sim-ink);border-radius:var(--radius);margin:20px 0;padding:12px}.ss-panel svg{touch-action:manipulation;width:100%;height:auto;display:block}.ss-panel text{font-family:var(--font)}.ss-panel .sim-btn{color:var(--sim-ink);background:#16212f;border-color:#33445a}.ss-panel .sim-btn:disabled{opacity:.45;cursor:default}.ss-panel .sim-btn[aria-pressed=true],.ss-panel .sim-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.ss-row{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.ss-row+.ss-row{margin-top:8px}.ss-label{color:var(--sim-dim);font-size:13.5px}.ss-caption{min-height:2.6em;margin:8px 0 0;font-size:15.5px;line-height:1.55}.ss-note{color:var(--sim-dim);margin:6px 0 0;font-size:13px}.ss-panel .t{fill:var(--sim-ink);font-size:22px}.ss-panel .t.mid{text-anchor:middle}.ss-panel .t.end{text-anchor:end}.ss-panel .t.dim{fill:var(--sim-dim)}.ss-panel .t.small{font-size:19px}.ss-panel .t.big{font-size:30px;font-weight:700}.ss-panel .t.mono{font-variant-numeric:tabular-nums}.ss-panel .glass{fill:#c8dcff12;stroke:#9fb6d3;stroke-width:2px}.ss-panel .metal{fill:none;stroke:#6f8099;stroke-width:3px}.ss-panel .bench{fill:#1a2535}.ss-good{color:#6fdc8c}.ss-bad{color:#ff8f8f}.ss-warnc{color:#ffd166}.ss-readout{grid-template-columns:repeat(auto-fit,minmax(min(130px,100%),1fr));gap:6px;margin:8px 0 0;display:grid}.ss-readout>div{background:#142033;border:1px solid #263448;border-radius:8px;min-width:0;padding:6px 10px}.ss-readout dt{color:var(--sim-dim);font-size:12.5px}.ss-readout dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0;font-size:18px;font-weight:600}.ss-slider{grid-template-columns:minmax(0,1fr);gap:2px;margin-top:8px;display:grid}.ss-slider label{color:var(--sim-dim);justify-content:space-between;gap:8px;font-size:14px;display:flex}.ss-slider label b{color:var(--sim-ink);font-variant-numeric:tabular-nums}.ss-slider input[type=range]{width:100%;min-height:40px;accent-color:var(--accent)}.ss-steps{border-top:1px solid #263448;gap:6px;margin:12px 0 0;padding:10px 0 0;font-size:14.5px;list-style:none;display:grid}.ss-steps li{color:var(--sim-dim);grid-template-columns:24px minmax(0,1fr);gap:8px;display:grid}.ss-steps li span{border:1.5px solid #46586f;border-radius:50%;place-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:grid}.ss-steps li[data-done]{color:var(--sim-ink)}.ss-steps li[data-done] span{background:var(--good);border-color:var(--good);color:#fff}.ss-table-wrap{margin-top:8px;overflow-x:auto}.ss-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:14.5px}.ss-table th,.ss-table td{text-align:right;white-space:nowrap;border-bottom:1px solid #263448;padding:5px 8px}.ss-table th:first-child,.ss-table td:first-child{text-align:left}.ss-table th{color:var(--sim-dim);white-space:normal;vertical-align:bottom;font-size:13px;font-weight:600;line-height:1.3}.ss-panel .mono{font-variant-numeric:tabular-nums}.ss-table tr.total td{border-bottom:none;font-weight:700}.ss-tex{margin-top:8px;font-size:15px;overflow-x:auto}.ss-tex .katex{color:var(--sim-ink)}.ss-panel input[type=number]{width:8.5em;max-width:100%;min-height:40px;color:var(--sim-ink);font:inherit;background:#0b1320;border:1px solid #33445a;border-radius:10px;padding:0 10px;font-size:16px}.ss-reduced *{transition:none!important;animation:none!important}.ss-hook .bottle-g{cursor:pointer}.ss-hook .bottle-g[data-active] .bottle{stroke:#ffd166;stroke-width:3px}.ss-hook .answer-grid{grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:6px;margin-top:8px;display:grid}.ss-hook .reveal{background:#142033;border:1px solid #263448;border-radius:10px;margin-top:10px;padding:10px 12px;font-size:15px;line-height:1.6}.ss-hook .reveal ul{margin:6px 0 0;padding-left:20px}.ss-mb .dot{fill:#ffd166}.ss-mb .dots{animation:4s ease-in-out infinite alternate ss-float}@keyframes ss-float{to{transform:translateY(-3px)}}.ss-air .wet{transition:opacity .4s}.ss-aw .stream{stroke-dasharray:1;stroke-dashoffset:1px}.ss-aw[data-run] .stream{animation:.9s ease-in forwards ss-pour}@keyframes ss-pour{to{stroke-dashoffset:0}}.ss-aw .drop{opacity:0}.ss-aw[data-run=bad] .drop{animation:1.1s ease-out .8s forwards ss-spatter}@keyframes ss-spatter{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(var(--dx), var(--dy))}}.ss-aw .steam{opacity:0}.ss-aw[data-run=bad] .steam{animation:1.6s ease-out .8s forwards ss-steam}@keyframes ss-steam{0%{opacity:0;transform:translateY(0)}30%{opacity:.8}to{opacity:0;transform:translateY(-50px)}}.ss-aw .sink{opacity:0}.ss-aw[data-run=good] .sink{animation:1.6s ease-in .8s forwards ss-sink}@keyframes ss-sink{0%{opacity:.9;transform:translateY(-60px)scaleY(.4)}to{opacity:.25;transform:translateY(0)scaleY(1)}}.ss-aw .merc{transform-box:fill-box;transform-origin:bottom}.ss-aw[data-run] .merc{animation:1.4s ease-out .9s backwards ss-merc}@keyframes ss-merc{0%{transform:scaleY(.12)}to{transform:scaleY(var(--to))}}.ss-mix .bubble{fill:none;stroke:#cfe3ff;stroke-width:1.5px;opacity:0}.ss-mix[data-fizz] .bubble{animation:ss-bubble 1.4s ease-in var(--d) 3}@keyframes ss-bubble{0%{opacity:.9;transform:translateY(0)}to{opacity:0;transform:translateY(-110px)}}.ss-mix .bars{gap:6px;margin-top:8px;display:grid}.ss-mix .bar-row{grid-template-columns:minmax(0,7em) minmax(0,1fr) auto;align-items:center;gap:8px;font-size:14px;display:grid}.ss-mix .bar{background:#142033;border-radius:4px;height:18px;overflow:hidden}.ss-mix .bar i{height:100%;transition:width .6s;display:block}.ss-two{grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:8px;margin-top:8px;display:grid}.ss-two>div{background:#142033;border:1px solid #263448;border-radius:10px;padding:8px 12px;font-size:15px}.ss-two b{font-variant-numeric:tabular-nums;font-size:22px;display:block}.ss-mix .t.small{font-size:23px}.ss-mix .t{font-size:25px}.ssl{margin:0}.ssl-tasks{flex-wrap:wrap;gap:6px;display:flex}.ssl-title{color:var(--sim-dim);margin:8px 0 4px;font-size:15px}.ssl-title b{color:var(--sim-ink)}.ssl-free{margin:6px 0}.ssl-progress{counter-reset:step;flex-wrap:wrap;gap:4px;margin:8px 0 0;padding:0;font-size:13px;list-style:none;display:flex}.ssl-progress li{counter-increment:step;color:var(--sim-dim);border:1px solid #33445a;border-radius:999px;padding:3px 9px}.ssl-progress li:before{content:counter(step) ". "}.ssl-progress li[data-state=done]{color:#9be3b0;background:#173322;border-color:#2f7a45}.ssl-progress li[data-state=now]{background:var(--accent);border-color:var(--accent);color:#fff}.ssl .ssl-svg{max-width:620px;margin:8px auto 0}.ssl-controls{gap:8px;margin-top:6px;display:grid}.ssl-controls>.sim-btn{justify-self:start}.ssl-actions .sim-btn{flex:0 auto}.ssl .mono{font-variant-numeric:tabular-nums}.ssl-bottom{grid-template-columns:minmax(0,1fr);gap:12px;margin-top:12px;display:grid}@media (width>=900px){.ssl-bottom{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:start}}.ss-goodtext{color:var(--good);font-weight:600}.ss-badtext{color:#d1242f;font-weight:600}.ssl-invert{animation:.9s ease-in-out ssl-flip}@keyframes ssl-flip{50%{transform:rotate(180deg)}}.ssl-schlieren path{animation:2.4s ease-in-out infinite alternate ssl-wave}@keyframes ssl-wave{to{transform:translate(8px)}}.ssl-splash circle{opacity:0;animation:1.1s ease-out forwards ssl-spatter}@keyframes ssl-spatter{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(var(--dx), var(--dy))}}.ssl-fall circle{opacity:0;animation:.6s ease-in forwards ssl-fall}@keyframes ssl-fall{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(40px)}}.ssl-bottom>*{min-width:0}
