@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.03ez25a9g3i0n.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.3i9rha7jpxn0q.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.2o7ko1d-5m1xu.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.1ee5w62fj497l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.1way2z9fj6cig.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.0szrwpqb9mkwe.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.45535valc9rzk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.J60SBq_className{font-family:Inter,Inter Fallback;font-style:normal}.J60SBq_variable{--font-sans:"Inter", "Inter Fallback"}
:root{--ink:#161b26;--ink-2:#444c5c;--muted:#6b7384;--line:#e2e5eb;--line-2:#cfd4dd;--paper:#f5f6f8;--card:#fff;--accent:#3b5bdb;--accent-soft:#edf1ff;--pin:#3b5bdb;--ok:#1f7a4d;--ok-soft:#e6f4ec;--warn:#a15c07;--warn-soft:#fdf3e2;--radius:10px;--shadow:0 1px 2px #1018280f, 0 4px 16px #1018280f}*{box-sizing:border-box}html,body{margin:0}body{font-family:var(--font-sans), system-ui, sans-serif;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.5}a{color:inherit}button,input,textarea,select{font:inherit;color:inherit}h1,h2,h3{margin:0;line-height:1.2}.topbar{z-index:30;background:var(--card);border-bottom:1px solid var(--line);align-items:center;gap:16px;height:56px;padding:0 20px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;font-weight:650;text-decoration:none;display:flex}.brand img{width:auto;height:36px;display:block}.brand-name{border-left:1px solid var(--line-2);padding-left:12px;font-size:14px}.topbar nav{gap:4px;margin-left:8px;display:flex}.topbar nav a{color:var(--ink-2);border-radius:8px;padding:6px 10px;font-size:14px;text-decoration:none}.topbar nav a:hover{background:var(--paper)}.topbar nav a.on{background:var(--paper);color:var(--ink);font-weight:600}.spacer{flex:1}.me{color:var(--ink-2);align-items:center;gap:6px;font-size:14px;display:flex}@media (max-width:520px){.me span{display:none}}.btn{border:1px solid var(--line-2);background:var(--card);cursor:pointer;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:6px;height:36px;padding:0 14px;font-size:14px;font-weight:550;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--ink-2)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--ink);border-color:var(--ink);color:#fff}.btn.primary:hover{background:#000}.btn.ok{background:var(--ok);border-color:var(--ok);color:#fff}.btn.warn{background:var(--card);border-color:var(--warn);color:var(--warn)}.btn.ghost{background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--paper)}.btn.sm{height:30px;padding:0 10px;font-size:13px}.btn.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.field{border:1px solid var(--line-2);background:var(--card);border-radius:8px;width:100%;padding:9px 11px}.field:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:#0000}textarea.field{resize:vertical;min-height:76px}label.lbl{color:var(--ink-2);margin:0 0 6px;font-size:13px;font-weight:600;display:block}.err{color:#b42318;margin-top:6px;font-size:13px}.chip{background:var(--paper);height:22px;color:var(--ink-2);border:1px solid var(--line);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:0 8px;font-size:12px;font-weight:600;display:inline-flex}.chip.code{background:var(--ink);color:#fff;border-color:var(--ink);letter-spacing:.02em}.chip.ok{background:var(--ok-soft);color:var(--ok);border-color:#0000}.chip.warn{background:var(--warn-soft);color:var(--warn);border-color:#0000}.chip.accent{background:var(--accent-soft);color:var(--accent);border-color:#0000}.wrap{max-width:1240px;margin:0 auto;padding:32px 20px 64px}.hero h1{letter-spacing:-.01em;font-size:28px}.hero p{color:var(--ink-2);max-width:720px;margin:8px 0 0}.howto{counter-reset:step;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0 0;padding:0;list-style:none;display:grid}.howto li{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink-2);counter-increment:step;padding:14px 16px;font-size:14px}.howto li:before{content:counter(step);background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;margin-bottom:8px;font-size:12px;font-weight:700;display:inline-grid}.howto b{color:var(--ink);display:block}.stats{grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0 8px;display:grid}.stat{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.stat span{color:var(--muted);font-size:13px}.stat strong{font-variant-numeric:tabular-nums;margin-top:2px;font-size:26px;font-weight:700;display:block}.stat .bar{background:var(--paper);border-radius:99px;height:6px;margin-top:10px;overflow:hidden}.stat .bar i{background:var(--accent);border-radius:99px;height:100%;display:block}.group{margin-top:36px}.group h2{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:12px;font-size:13px}.grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px;display:grid}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex;overflow:hidden}.card:hover{border-color:var(--line-2);box-shadow:var(--shadow)}.card .thumb{aspect-ratio:1350/760;border-bottom:1px solid var(--line);background:#fff;overflow:hidden}.card .thumb img{width:100%;display:block}.card .body{flex-direction:column;flex:1;gap:8px;padding:12px 14px 14px;display:flex}.card h3{font-size:15px;font-weight:650}.card .row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.card .meta{color:var(--muted);gap:14px;margin-top:auto;font-size:13px;display:flex}.board-head{background:var(--card);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;padding:12px 20px;display:flex}.board-head h1{font-size:18px;font-weight:650}.board-head p{color:var(--muted);flex-basis:100%;margin:0;font-size:13px}.board-page{flex-direction:column;height:calc(100dvh - 56px);display:flex}.review{flex:1;grid-template-columns:minmax(0,1fr) 400px;min-height:0;display:grid}.viewer{background:#e9ebef;position:relative;overflow:auto}.viewer-tools{z-index:5;background:var(--card);border:1px solid var(--line);width:max-content;box-shadow:var(--shadow);border-radius:10px;gap:4px;margin:12px 0 -48px 12px;padding:4px;display:flex;position:sticky;top:12px;left:12px}.canvas{box-shadow:var(--shadow);background:#fff;margin:60px auto 24px;position:relative}.canvas img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:auto;display:block}.canvas.commenting{cursor:crosshair}.pin{background:var(--pin);color:#fff;cursor:pointer;border:2px solid #fff;border-radius:50% 50% 50% 4px;place-items:center;width:30px;height:30px;padding:0;display:grid;position:absolute;transform:translate(-50%,-100%)rotate(-45deg);box-shadow:0 2px 6px #0000004d}.pin span{font-size:12px;font-weight:700;rotate:45deg}.pin.resolved{background:#9aa1ae}.pin.team{background:var(--ink)}.pin.active{z-index:3;outline:3px solid #3b5bdb59;scale:1.15}.pin.draft{background:var(--warn)}.pop{z-index:4;background:var(--card);border:1px solid var(--line);cursor:default;border-radius:10px;width:300px;padding:12px;position:absolute;box-shadow:0 8px 30px #1018282e}.pop .actions{justify-content:flex-end;gap:6px;margin-top:8px;display:flex}.panel{background:var(--card);border-left:1px solid var(--line);flex-direction:column;min-height:0;display:flex}.tabs{border-bottom:1px solid var(--line);padding:0 8px;display:flex}.tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;padding:12px 6px 10px;font-size:14px;font-weight:600}.tabs button.on{color:var(--ink);border-bottom-color:var(--ink)}.tabs button em{background:var(--paper);border-radius:99px;margin-left:4px;padding:1px 7px;font-size:12px;font-style:normal}.panel-body{flex:1;padding:16px;overflow:auto}.empty{color:var(--muted);text-align:center;padding:24px 8px;font-size:14px}.thread{border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;margin-bottom:10px;padding:12px}.thread.active{border-color:var(--accent);box-shadow:0 0 0 3px #3b5bdb1f}.thread.resolved{opacity:.65}.msg+.msg{border-top:1px dashed var(--line);margin-top:10px;padding-top:10px}.msg .who{align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.msg .who time{color:var(--muted);margin-left:auto;font-size:12px;font-weight:400}.msg p{white-space:pre-wrap;color:var(--ink-2);margin:4px 0 0;font-size:14px}.num{background:var(--pin);color:#fff;border-radius:99px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:11px;font-weight:700;display:inline-grid}.num.resolved{background:#9aa1ae}.num.general{background:var(--ink-2)}.reply{gap:6px;margin-top:10px;display:flex}.reply textarea{min-height:38px}.q{border-bottom:1px solid var(--line);padding:14px 0}.q:first-child{padding-top:0}.q h4{gap:8px;margin:0 0 8px;font-size:14px;font-weight:600;display:flex}.q h4 .num{background:var(--warn);flex:none}.q h4 .num.done{background:var(--ok)}.ans{background:var(--paper);border-radius:8px;margin-bottom:6px;padding:8px 10px}.ans .who{color:var(--muted);font-size:12px}.ans p{white-space:pre-wrap;margin:2px 0 0;font-size:14px}.decide{gap:8px;margin:10px 0 14px;display:flex}.decide .btn{flex:1;height:42px}.history{margin-top:20px}.history h3{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:8px;font-size:13px}.callout{border-radius:var(--radius);padding:12px 14px;font-size:14px}.callout.ok{background:var(--ok-soft);color:var(--ok)}.callout.warn{background:var(--warn-soft);color:var(--warn)}.callout.info{background:var(--accent-soft);color:var(--accent)}.callout b{display:block}.callout p{color:var(--ink-2);white-space:pre-wrap;margin:4px 0 0}.backdrop{z-index:50;background:#10182873;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--card);border-radius:14px;width:100%;max-width:420px;padding:22px;box-shadow:0 20px 60px #00000040}.modal h2{margin-bottom:4px;font-size:18px}.modal p{color:var(--ink-2);margin:0 0 16px;font-size:14px}.modal .stack{gap:12px;display:grid}.gate{place-items:center;min-height:100vh;padding:20px;display:grid}.gate form{background:var(--card);border:1px solid var(--line);width:100%;max-width:380px;box-shadow:var(--shadow);border-radius:14px;gap:14px;padding:26px;display:grid}.gate h1{font-size:20px}.gate p{color:var(--ink-2);margin:0;font-size:14px}.inbox-head{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:20px;display:flex}.inbox-head h1{font-size:24px}.filters{flex-wrap:wrap;gap:6px;display:flex}.section{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:18px;overflow-x:auto}.section>header{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:12px 16px;display:flex}.section>header h2{font-size:15px}.item{border-bottom:1px solid var(--line);grid-template-columns:90px minmax(0,1fr) auto;align-items:start;gap:14px;padding:14px 16px;display:grid}.item:last-child{border-bottom:0}.item .where{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.item .side{flex-direction:column;align-items:flex-end;gap:6px;display:flex}table.plain{border-collapse:collapse;width:100%;font-size:14px}table.plain.fixed{table-layout:fixed;min-width:640px}table.plain th,table.plain td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:10px 16px}table.plain th{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}table.plain tr:last-child td{border-bottom:0}@media (max-width:960px){.howto,.stats{grid-template-columns:repeat(2,1fr)}.review{grid-template-columns:1fr}.viewer{height:auto;max-height:75vh}.canvas{margin-bottom:12px}.panel{border-left:0;border-top:1px solid var(--line)}.panel-body{overflow:visible}.item{grid-template-columns:1fr}.item .side{flex-direction:row;align-items:flex-start}.topbar{flex-wrap:wrap;row-gap:6px;height:auto;padding-top:10px}.topbar nav{flex-basis:100%;order:3;margin:0 -8px;padding-bottom:6px;overflow-x:auto}.board-page{height:auto}}@media (max-width:520px){.howto,.stats{grid-template-columns:1fr 1fr;gap:8px}.wrap{padding:20px 16px 48px}.brand-name{display:none}.topbar{gap:8px;padding:0 12px}}.page-head{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:20px;display:flex}.page-head h1{font-size:24px}.page-head p{color:var(--ink-2);margin:4px 0 0}.cols{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.list{margin:0;padding:0;list-style:none}.list li{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:10px 16px;font-size:14px;display:flex}.list li:last-child{border-bottom:0}.list li .grow{flex:1;min-width:0}.list li .sub{color:var(--muted);font-size:12px}.list a{text-decoration:none}.list a:hover{text-decoration:underline}.section>.pad{padding:14px 16px}.phase-bar{background:var(--paper);border-radius:99px;height:8px;margin-top:8px;overflow:hidden}.phase-bar i{background:var(--ok);height:100%;display:block}.dot{background:var(--line-2);border-radius:50%;flex:none;width:9px;height:9px}.dot.doing{background:var(--accent)}.dot.done{background:var(--ok)}.dot.blocked{background:#b42318}.chip.blocked{color:#b42318;background:#fdecea;border-color:#0000}select.field.sm,input.field.sm{width:auto;padding:5px 8px;font-size:13px}.post{border-bottom:1px solid var(--line);padding:16px}.post:last-child{border-bottom:0}.post h3{font-size:16px}.post .byline{color:var(--muted);margin-top:2px;font-size:12px}.post .text{white-space:pre-wrap;color:var(--ink-2);margin:10px 0 0;font-size:14px}@media (max-width:960px){.cols{grid-template-columns:1fr}}
