:root{--ui-fg:#e2eaf8e6;--ui-muted:#e2eaf88c;--ui-line:#e2eaf838;--ui-fill:#04122c4d;--page:#082650}*{box-sizing:border-box}html,body{height:100%;margin:0;overflow:hidden}body{background:var(--page);transition:background-color 1.2s}#stage{touch-action:none;position:fixed;inset:0}#stage canvas{width:100%;height:100%;display:block}#stage.grab canvas{cursor:grab}#stage.grabbing canvas{cursor:grabbing}.palette{z-index:2;top:max(18px, env(safe-area-inset-top));right:max(18px, env(safe-area-inset-right));background:var(--ui-fill);border:1px solid var(--ui-line);-webkit-backdrop-filter:blur(10px);border-radius:999px;gap:4px;padding:4px;transition:background-color 1.2s,border-color 1.2s;display:flex;position:fixed}.palette button{cursor:pointer;background:var(--swatch);background-image:radial-gradient(circle at 35% 30%,#ffffff29,#0000 60%);border:0;border-radius:50%;width:22px;height:22px;padding:0;transition:transform .2s,box-shadow .2s;box-shadow:inset 0 0 0 1px #ffffff24,inset 0 -1px 2px #00000059}.palette button:hover{transform:scale(1.08)}.palette button[aria-pressed=true]{box-shadow:inset 0 0 0 1px #ffffff24, 0 0 0 2px var(--ui-fg)}.palette button:focus-visible{outline:1px solid var(--ui-fg);outline-offset:3px}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:0;padding:0;position:fixed;overflow:hidden}#loading{z-index:5;text-align:center;background:var(--page);color:var(--ui-fg);letter-spacing:.02em;place-content:center;gap:6px;font:13px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;transition:opacity .6s;display:grid;position:fixed;inset:0}#loading p{margin:0}#loading .note{color:var(--ui-muted)}#loading.done{opacity:0;pointer-events:none}@media (prefers-reduced-motion:reduce){#loading{transition:none}}.reader{z-index:10;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a08069e;place-items:stretch stretch;animation:.25s both reader-in;display:grid;position:fixed;inset:0}.reader iframe{color-scheme:normal;background:0 0;border:0;width:100%;height:100%}.reader-close{z-index:11;color:#fff;cursor:pointer;letter-spacing:.04em;background:#00000059;border:1px solid #ffffff59;border-radius:999px;padding:7px 12px;font:12px/1 ui-monospace,SFMono-Regular,Menlo,monospace;position:fixed;top:14px;right:16px}.reader-close:hover,.reader-close:focus-visible{background:#0009}@keyframes reader-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.reader{animation:none}}.read-magazine:not(:focus-visible){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:fixed;overflow:hidden}.read-magazine:focus-visible{z-index:6;border:1px solid var(--ui-line);background:var(--ui-fill);color:var(--ui-fg);border-radius:999px;padding:8px 14px;font:12px/1 ui-monospace,SFMono-Regular,Menlo,monospace;position:fixed;bottom:16px;left:16px}#stage.lift canvas{cursor:pointer}#stage.fetching canvas{cursor:progress}.knoll-tools{z-index:4;pointer-events:none;opacity:0;transition:opacity .25s;position:fixed;inset:0}.knoll-tools.shown{opacity:1}.knoll-tools.shown .knoll-tool{pointer-events:auto}.knoll-tool{will-change:transform;gap:4px;display:flex;position:absolute;top:0;left:0}.knoll-tool button{cursor:pointer;color:#f4efe6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c0a088c;border:1px solid #ffffff47;border-radius:999px;place-items:center;width:28px;height:28px;padding:0;transition:background .15s,border-color .15s;display:grid}.knoll-tool button:hover,.knoll-tool button:focus-visible{background:#0c0a08cc;border-color:#fff9}.knoll-tool button[aria-pressed=true]{color:#15110d;background:#f4efe6eb;border-color:#0000}.knoll-tool svg{pointer-events:none;fill:currentColor;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.knoll-tool svg path{fill:none}@media (prefers-reduced-motion:reduce){.knoll-tools{transition:none}}
