[hidden]{display:none!important}*{box-sizing:border-box}body{margin:0}button,select{font:inherit;cursor:pointer;color:inherit}button:disabled{cursor:default}button:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:4px}canvas{display:block;width:100%;height:100%}.mono{font-variant-numeric:tabular-nums}#flow{position:absolute;inset:0;width:100%;height:100%}.notice{line-height:1.6}.notice strong{display:block}#historyBody[hidden]{display:none}#historyRows:empty:after{content:"\2014"}.history-body{overflow:auto}.history table{font-variant-numeric:tabular-nums}.start,.modes button{min-height:48px}button{touch-action:manipulation}#visualProgress{transform-origin:left;transition:transform .25s}#start:disabled{opacity:.5}.readout-caption{padding:0 8px}.metric-value{white-space:nowrap}#speed{font-variant-numeric:tabular-nums}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}#closeHistory{display:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.tools{display:flex;align-items:center;gap:10px;position:static;inset:auto;width:auto;height:auto;margin:0;padding:0;border:0;overflow:visible;color:inherit;background:none}.field{display:flex;align-items:center;gap:8px}.field-label{font-size:13px;color:var(--muted);white-space:nowrap}.field:not(.skin-field) .field-label,#theme span,.skin-field .field-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.picker{position:relative;display:flex;align-items:center;color:var(--text)}.swatch{position:absolute;left:12px;width:14px;height:14px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 50%,var(--cyan) 50%);box-shadow:0 0 0 1px var(--line);pointer-events:none}.picker:after{content:"";position:absolute;right:15px;top:50%;width:6px;height:6px;margin-top:-5px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg);pointer-events:none}.picker select{appearance:none;width:100%;min-height:40px;padding:0 38px 0 34px;border:1px solid var(--line);border-radius:var(--ctl-r,8px);background:var(--ctl-bg,transparent);color:inherit;font-size:14px}.seg{display:flex;padding:3px;gap:2px;border:1px solid var(--line);border-radius:var(--ctl-r,8px);background:var(--ctl-bg,transparent)}.seg button,.settings-toggle,.sheet-close{display:flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:0 11px;border:0;border-radius:calc(var(--ctl-r,8px) - 3px);background:none;color:var(--muted);font-size:14px;white-space:nowrap}.seg button:hover{color:var(--text)}.tools-head,.settings-toggle{display:none}.seg button[aria-pressed=true]{background:var(--ctl-on,var(--text));color:var(--ctl-on-ink,var(--bg));font-weight:600}.seg svg,.settings-toggle svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}.tools button:focus-visible,.picker select:focus-visible,.settings-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(min-width:1100px){#theme span,.skin-field .field-label{position:static;width:auto;height:auto;clip-path:none}}@media(max-width:650px){.settings-toggle{display:flex;min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:var(--ctl-r,8px);background:var(--ctl-bg,transparent);color:var(--text)}.tools:not(:popover-open){display:none}.tools:popover-open{position:fixed;inset:auto 0 0;display:grid;gap:18px;width:100%;max-height:90dvh;overflow:auto;padding:18px 20px max(24px,env(safe-area-inset-bottom));border-top:1px solid var(--line);border-radius:20px 20px 0 0;background:var(--panel);color:var(--text);box-shadow:0 -16px 60px #0004}.tools::backdrop{background:#0008}.tools-head{display:flex;align-items:center;justify-content:space-between;font-size:18px}.sheet-close{min-width:44px;min-height:44px;font-size:26px;color:var(--text)}.field{display:grid;gap:8px}.tools .field .field-label,#theme span{position:static;width:auto;height:auto;clip-path:none}.picker select{min-height:48px;font-size:16px}.seg button{flex:1;min-height:44px;font-size:15px}}@media(pointer:coarse){.seg button{min-height:38px}.picker select{min-height:44px}}
