:root{--ground: #ffffff;--surface: #f3f2ef;--ink: #111214;--muted: #5e5a54;--line: #8a857d;--amber: #f2a516;--radius: 0;--font-heading: "Archivo", "Arial Black", sans-serif;--font-text: "Instrument Sans", system-ui, sans-serif}*{box-sizing:border-box;border-radius:var(--radius)}html,body{margin:0;max-width:100%;overflow-x:hidden}body{background:var(--ground);color:var(--ink);font:16px/1.5 var(--font-text)}h1{font:800 clamp(32px,5vw,56px) / 1 var(--font-heading);letter-spacing:-.02em;margin:0}.bar{display:flex;align-items:center;gap:12px;padding:16px 18px}.grow{flex:1}.mark{width:22px;height:22px;background:var(--ink);position:relative;flex:none}.mark:after{content:"";position:absolute;right:3px;bottom:3px;width:7px;height:7px;background:var(--amber)}.page,.center{padding:26px 18px;display:grid;gap:12px;align-content:start}.form{display:grid;gap:12px;width:100%;max-width:420px}.form h1,.page h1{font-size:26px;line-height:1.05}.form p,.page p{margin:0}.muted{color:var(--muted);font-size:14px}.small{color:var(--muted);font-size:12.5px}.label{color:var(--muted);font-size:13px;font-weight:500;margin-top:8px}.field,.code span{height:50px;background:var(--surface);border:0;box-shadow:inset 0 0 0 1.5px var(--line);font:16px var(--font-text);color:var(--ink);padding:0 14px}.field:focus-visible,.btn:focus-visible,.link:focus-visible,.code:focus-within span.on{outline:3px solid var(--amber);outline-offset:2px}.btn{height:52px;border:0;background:var(--ink);color:var(--ground);font:600 15px var(--font-text);cursor:pointer}.btn:disabled{opacity:.6}.link{background:none;border:0;padding:0;font:inherit;font-weight:600;color:var(--ink);text-decoration:underline;cursor:pointer;justify-self:start}.code{position:relative;display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.code span{display:grid;place-items:center;padding:0;font:800 22px var(--font-heading)}.code span.on{box-shadow:inset 0 0 0 2.5px var(--ink)}.code-input{position:absolute;inset:0;width:100%;opacity:0;font-size:16px}@media(min-width:900px){.bar{padding:16px 40px}.center{min-height:calc(100vh - 62px);place-items:center;align-content:center;padding-bottom:80px}.form h1{font-size:34px}.page{padding:48px 40px}}.banner{margin:0;padding:10px 18px;background:var(--amber);color:var(--ink);font-weight:600;font-size:14px}.frame-wrap{min-height:100vh;background:var(--surface)}.frame{display:block;width:100%;border:0;background:transparent}.frame-full{position:fixed;z-index:30;left:0;top:0;height:100%;height:100dvh;background:var(--ground)}.frame-wrap{padding-bottom:calc(64px + env(safe-area-inset-bottom))}.board-bar{position:fixed;z-index:10;left:0;right:0;bottom:0;display:flex;align-items:center;gap:8px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:var(--ground);box-shadow:0 -1px 0 var(--surface)}.board-title{display:none;font:700 16px var(--font-heading)}.save-status{flex:1;display:flex;align-items:center;gap:6px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font:500 12.5px var(--font-text);color:var(--muted)}.save-status:before{content:"";width:7px;height:7px;flex:none;border-radius:50%;background:var(--line)}.save-status[data-status=saved]:before,.save-status[data-status=locked]:before{background:#2e9b5b}.save-status a,.save-status .link{color:var(--ink);font:inherit;font-weight:600;background:none;border:0;padding:0;text-decoration:underline;cursor:pointer}.approve{height:44px;padding:0 16px;flex:none;font:600 14px var(--font-text);border:0;background:var(--amber);color:var(--ink);cursor:pointer}.approve:disabled{opacity:.45;cursor:default}.approve:focus-visible,.btn.acc:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.long{display:none}.frame-wrap{position:relative}.pin-layer{position:absolute;inset:0;pointer-events:none;overflow:hidden}.pin{position:absolute;width:24px;height:24px;margin:-12px 0 0 -12px;display:grid;place-items:center;border-radius:12px 12px 12px 0;background:var(--amber);color:var(--ink);box-shadow:0 0 0 2px var(--ink);font:800 12px var(--font-heading)}.pin{border:0;padding:0;cursor:pointer;pointer-events:auto}.frame-wrap:not([data-mode=off]) .pin{pointer-events:none}.pin.on{background:var(--ink);color:var(--amber)}.thread-panel{max-height:80vh;overflow-y:auto}.thread-panel .link{justify-self:start}.thread-list,.messages{list-style:none;margin:0;padding:0;display:grid;gap:8px}.thread-list button{width:100%;display:flex;gap:12px;align-items:flex-start;text-align:left;padding:10px;border:0;background:var(--surface);color:var(--ink);font:400 15px var(--font-text);cursor:pointer}.thread-list button:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.pin-tag{flex:none;width:24px;height:24px;display:grid;place-items:center;background:var(--amber);font:800 12px var(--font-heading)}.thread-text{display:grid;gap:2px;min-width:0}.thread-body{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.messages li{display:grid;gap:2px;padding:8px 10px;background:var(--surface)}.messages p{white-space:pre-wrap;overflow-wrap:anywhere}.unpinned{color:var(--muted);font-weight:600}.spot{scroll-margin-bottom:60vh;scroll-margin-top:80px}.spot-box{position:absolute;outline:3px solid var(--amber);outline-offset:2px;box-shadow:0 0 0 9999px #1112141f}.comment-btn{height:44px;padding:0 14px;flex:none;font:600 14px var(--font-text);border:0;background:var(--surface);color:var(--ink);cursor:pointer}.comment-btn:disabled{opacity:.45;cursor:default}.comment-btn:focus-visible,.comment-banner button:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.board-bar[data-mode=pick],.board-bar[data-mode=write]{display:none}.comment-banner{position:fixed;z-index:25;top:0;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:4px;min-height:48px;padding:8px 14px;background:var(--amber);color:var(--ink);font:600 14px var(--font-text)}.comment-banner button{height:32px;padding:0 6px;background:none;border:0;color:var(--ink);font:800 14px var(--font-text);text-decoration:underline;cursor:pointer}.comment-banner .mouse{display:none}.comment-panel{position:fixed;z-index:20;left:0;right:0;bottom:0;display:grid;gap:10px;padding:16px 18px calc(18px + env(safe-area-inset-bottom));background:var(--ground);box-shadow:0 -2px 0 var(--ink);animation:panel-up .2s ease-out}.comment-panel h2{margin:0;font:800 20px/1.1 var(--font-heading)}.comment-panel textarea{width:100%;box-sizing:border-box;padding:10px;font:400 16px var(--font-text);color:var(--ink);background:var(--ground);border:2px solid var(--ink);border-radius:0;resize:vertical}.comment-panel p{margin:0}.comment-actions{display:flex;gap:8px}.comment-actions .btn{flex:1}.comment-actions .btn:last-child{flex:2}.comment-actions .btn:disabled{opacity:.45}@keyframes panel-up{0%{transform:translateY(100%)}}@keyframes panel-in{0%{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){.comment-panel{animation:none}}.btn.acc{background:var(--amber);color:var(--ink)}.btn.ghost{background:var(--surface);color:var(--ink);height:44px}.scrim{position:fixed;z-index:20;inset:0;background:#11121473}.sheet{position:absolute;left:0;right:0;bottom:0;max-height:85vh;overflow-y:auto;display:grid;gap:12px;padding:18px 18px calc(22px + env(safe-area-inset-bottom));background:var(--ground)}.sheet h2{margin:0;font:800 22px/1.1 var(--font-heading)}.sheet p{margin:0}.summary{white-space:pre-line;font-size:14px}.approved{display:grid;gap:28px;padding:40px 18px}.approved-main{display:grid;gap:14px;align-content:start}.approved-main h1{font-size:28px}.approved-main .btn{margin-top:6px;max-width:320px}.approved-by{margin:0}.approved-side{display:grid;gap:8px;align-content:start}.seal{width:86px;height:86px;background:var(--ink);position:relative}.seal:after{content:"";position:absolute;right:12px;bottom:12px;width:28px;height:28px;background:var(--amber)}@media(min-width:900px){.board-bar{position:sticky;top:0;bottom:auto;gap:16px;padding:12px 24px;box-shadow:0 1px 0 var(--surface)}.board-title{display:block}.save-status{font-size:14px}.approve{padding:0 22px}.long{display:inline}.frame-wrap{padding-bottom:0}.frame-wrap[data-mode=write]{padding-right:380px}.thread-panel{max-height:none}.board-bar[data-mode=write]{display:flex}.comment-banner .touch{display:none}.comment-banner .mouse{display:inline}.spot{scroll-margin-bottom:100px}.comment-panel{left:auto;top:0;width:380px;align-content:start;padding:88px 24px 24px;box-shadow:-2px 0 0 var(--ink);animation-name:panel-in}.comment-panel h2{font-size:24px}.sheet{inset:50% auto auto 50%;width:520px;transform:translate(-50%,-50%);padding:32px;gap:16px}.sheet h2{font-size:28px}.approved{grid-template-columns:1fr 1fr;gap:0;padding:0;min-height:100vh}.approved-main{padding:56px;align-content:center;justify-items:start}.approved-main h1{font-size:40px}.approved-main .seal{width:110px;height:110px}.approved-main .seal:after{right:15px;bottom:15px;width:36px;height:36px}.approved-side{padding:56px;box-shadow:inset 1px 0 0 var(--surface)}}.list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.list li{display:grid;gap:2px;padding:14px;background:var(--surface)}.list a,.approved a{color:var(--ink);font-weight:600}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font:800 15px var(--font-heading);text-decoration:none}.studio-footer{padding:18px}.studio-footer a,.form a{color:var(--ink)}
