:root{--bg:#07070a;--fg:#e9e4d8;--muted:#8d887c;--warm:#f2c14e;--green:#5aa469;--serif:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--fg);font-family:var(--serif);-webkit-tap-highlight-color:transparent;margin:0;overflow:hidden}#stage{touch-action:none;cursor:crosshair;background:var(--bg);width:100%;height:100%;display:block;position:fixed;inset:0}#stage[hidden]{display:none}.ink{pointer-events:none;opacity:0;width:100%;height:100%;transition:opacity .6s;display:block;position:fixed;inset:0}.ink--visible{opacity:1}body.mode-shape #stage{cursor:crosshair}.readout{left:calc(1.25rem + env(safe-area-inset-left));bottom:calc(1.1rem + env(safe-area-inset-bottom));font-family:var(--mono);color:var(--warm);white-space:nowrap;opacity:0;pointer-events:none;min-height:1.2em;font-size:.78rem;transition:opacity .9s;position:fixed}.readout--visible{opacity:.8;transition:opacity .15s}.glyph{right:calc(1.1rem + env(safe-area-inset-right));bottom:calc(.9rem + env(safe-area-inset-bottom));width:2rem;height:2rem;font:inherit;font-family:var(--mono);color:var(--muted);cursor:pointer;opacity:.45;background:0 0;border:0;border-radius:50%;padding:0;font-size:.9rem;transition:opacity .2s,color .2s;position:fixed}.glyph--left{right:auto;left:calc(1.1rem + env(safe-area-inset-left));letter-spacing:.04em;border-radius:999px;width:auto;padding:0 .5rem;font-size:.78rem}body.mode-shape .readout{bottom:calc(3.1rem + env(safe-area-inset-bottom))}.mathcard section[hidden]{display:none}.glyph:hover,.glyph:focus-visible,.glyph[aria-expanded=true]{opacity:1;color:var(--warm);outline:none}.mathcard{left:calc(1.25rem + env(safe-area-inset-left));bottom:calc(3.2rem + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(8px);width:min(22rem,100vw - 2.5rem);color:var(--fg);background:#07070ac7;border:1px solid #e9e4d829;border-radius:12px;padding:1rem 1.1rem .9rem;font-size:.82rem;line-height:1.45;position:fixed}.mathcard[hidden]{display:none}.mathcard__title{font-size:.75rem;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 .4rem;font-weight:400}.formula{font-family:var(--mono);color:var(--fg);margin:0 0 .7rem;font-size:.82rem}.formula--small{color:var(--muted);margin-top:.7rem;font-size:.72rem}.formula sub,.formula sup{font-size:.72em;line-height:0}.values{font-family:var(--mono);grid-template-columns:auto 1fr;gap:.15rem .9rem;margin:0;font-size:.78rem;display:grid}.values dt{color:var(--muted)}.values dd{color:var(--warm);text-align:right;margin:0}.mathcard--driving .values dd:last-of-type{color:var(--green)}.bars{grid-template-columns:repeat(12,1fr);gap:.25rem;height:3.2rem;margin:.6rem 0 0;padding:0;list-style:none;display:grid}.bars__item{flex-direction:column;justify-content:flex-end;align-items:stretch;gap:.2rem;min-width:0;display:flex}.bars__item--cut{opacity:.3}.bars__bar{background:linear-gradient(to top, var(--green), var(--warm));transform-origin:bottom;opacity:.85;border-radius:2px;height:2.2rem;transition:transform 80ms linear;display:block;transform:scaleY(.02)}.bars__label{font-family:var(--mono);color:var(--muted);text-align:center;white-space:nowrap;font-size:.5rem;overflow:hidden}.mathcard__note{color:var(--muted);margin:.7rem 0 0;font-size:.78rem}.hint{color:var(--fg);opacity:.85;pointer-events:none;margin:0;font-size:clamp(1.1rem,2.4vw,1.5rem);font-style:italic;transition:opacity .6s;animation:3.2s ease-in-out infinite breathe;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.hint--hidden{opacity:0;animation:none}@keyframes breathe{0%,to{opacity:.55}50%{opacity:.95}}.fallback{text-align:center;max-width:34ch;color:var(--fg);border:1px solid #e9e4d833;border-radius:12px;padding:1.5rem;line-height:1.5;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.fallback[hidden]{display:none}@media (max-width:640px){.mathcard{width:auto;left:.75rem;right:.75rem;bottom:calc(3.4rem + env(safe-area-inset-bottom));max-height:55vh;overflow:auto}}@media (prefers-reduced-motion:reduce){.hint{animation:none}}
