:root{--bg:#e2dfda;--ink:#1c1b19;--muted:#6d6962;--faint:#9a958c;--accent:#9e1b2b;--line:#1c1b1929;--line-strong:#1c1b196b;--gutter:clamp(20px, 3vw, 44px);--serif:"Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", "Hoefler Text", Georgia, "Noto Serif TC", "PMingLiU", serif;--sans:"Helvetica Neue", Helvetica, "Segoe UI", system-ui, -apple-system, "Noto Sans TC", "Microsoft JhengHei", Arial, sans-serif;--mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--ink);font-family:var(--sans);margin:0;overflow:hidden}#stage{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}.masthead{top:var(--gutter);left:var(--gutter);pointer-events:none;max-width:28rem;position:fixed}.eyebrow{border-bottom:1px solid var(--line-strong);font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0;padding-bottom:.6rem;font-size:.7rem}.hint{font:.7rem/1.9 var(--mono);letter-spacing:.12em;color:var(--faint);margin:.7rem 0 0;padding:0;list-style:none;transition:opacity .8s,visibility .8s}.hint span{color:var(--muted);margin-right:.6em}.hint.is-hidden{opacity:0;visibility:hidden}.readouts{left:var(--gutter);bottom:var(--gutter);border-top:1px solid var(--line-strong);pointer-events:none;gap:clamp(1.4rem,3vw,3rem);margin:0;padding-top:.8rem;display:flex;position:fixed}@media (width<=600px){.readouts{bottom:calc(var(--gutter) + 3.4rem)}}.readouts dt{font-family:var(--mono);letter-spacing:.1em;color:var(--faint);font-size:.68rem}.readouts dd{font-family:var(--mono);font-variant-numeric:tabular-nums;min-width:4.5ch;margin:.25rem 0 0;font-size:1.5rem}.readouts small{color:var(--muted);margin-left:.15em;font-size:.7rem}.readouts dd.is-active{color:var(--accent)}.panel{top:var(--gutter);right:var(--gutter);width:280px;max-width:calc(100% - var(--gutter) * 2);max-height:calc(100% - var(--gutter) * 2 - 4rem);flex-direction:column;align-items:flex-end;gap:.6rem;display:flex;position:fixed}.pill{border:1px solid var(--line-strong);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--muted);font:.68rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background:#e2dfdac7;align-items:center;gap:.55rem;padding:.45rem .8rem;display:inline-flex}.pill:hover{background:var(--ink);color:var(--bg)}.pill .dot{background:var(--faint);border-radius:50%;width:.45rem;height:.45rem}.panel:not(.is-collapsed) .pill .dot{background:var(--accent)}.card{border:1px solid var(--line-strong);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#e2dfdac7;width:100%;min-height:0;padding:0 1.1rem;overflow-y:auto}.panel.is-collapsed .card{display:none}.card section{border-bottom:1px solid var(--line);padding:1rem 0}.card section:last-child{border-bottom:0}.card h2{font:400 .8rem/1 var(--sans);letter-spacing:.1em;color:var(--muted);justify-content:space-between;align-items:baseline;margin:0 0 .9rem;display:flex}.card h2 small{font:.62rem/1 var(--mono);letter-spacing:.14em;color:var(--faint)}.field+.field{margin-top:1rem}.field-head{font:.7rem/1 var(--mono);letter-spacing:.1em;color:var(--muted);justify-content:space-between;align-items:baseline;display:flex}.field-head output{color:var(--ink);font-variant-numeric:tabular-nums}.field input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:14px;margin:.6rem 0 .3rem}.field input[type=range]::-webkit-slider-runnable-track{background:var(--line-strong);height:1px}.field input[type=range]::-moz-range-track{background:var(--line-strong);height:1px}.field input[type=range]::-webkit-slider-thumb{appearance:none;border:1px solid var(--ink);background:var(--bg);border-radius:50%;width:14px;height:14px;margin-top:-7px}.field input[type=range]::-moz-range-thumb{border:1px solid var(--ink);background:var(--bg);border-radius:50%;width:12px;height:12px}.field input[type=range]:focus-visible::-webkit-slider-thumb{background:var(--ink)}.field input[type=range]:focus-visible::-moz-range-thumb{background:var(--ink)}.hints{font-family:var(--serif);color:var(--faint);justify-content:space-between;font-size:.72rem;display:flex}.toggles{flex-wrap:wrap;gap:.6rem 1.2rem;display:flex}.toggles label{color:var(--muted);cursor:pointer;align-items:center;gap:.55rem;font-size:.78rem;display:flex}.toggles input{accent-color:var(--ink);margin:0}.actions{right:var(--gutter);bottom:var(--gutter);gap:.6rem;display:flex;position:fixed}.upright,.mute,.help,.lang{border:1px solid var(--line-strong);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--ink);font:.8rem/1 var(--sans);letter-spacing:.08em;cursor:pointer;background:#e2dfdac7;align-items:baseline;gap:.6rem;padding:.65rem 1rem;display:flex}.upright small,.mute small{font:.62rem/1 var(--mono);color:var(--faint)}.upright:hover,.mute:hover,.help:hover,.lang:hover{background:var(--ink);color:var(--bg)}.upright:hover small,.mute:hover small{color:var(--bg)}.mute[aria-pressed=true]:not(:hover),.help[aria-pressed=false]:not(:hover),.lang:not(:hover){color:var(--faint)}
