:root{--bg:#f6f7f8;--surface:#fff;--surface-muted:#f1f4f2;--surface-warm:#fff8ef;--ink:#171d1b;--ink-soft:#303936;--muted:#5d6763;--border:#d7ded9;--line:#c5d0ca;--accent:#116d78;--accent-soft:#e1f5f6;--amber:#b76f16;--amber-soft:#fff1d9;--green:#27724d;--blue:#315fbd;--violet:#6e4fb2;--charcoal:#111716;--shadow:0 14px 38px #19221f1a;--radius:8px;color:var(--ink);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}h1,h2,h3,p{margin:0}h1{font-size:clamp(1.45rem,1.12rem + 1vw,2rem);line-height:1.08}h2{font-size:clamp(1.15rem,1rem + .5vw,1.45rem);line-height:1.18}h3{font-size:1.02rem;line-height:1.3}a{color:inherit}#root{min-height:100svh}.app-shell{width:min(1180px,100% - 28px);margin:0 auto;padding:18px 0 56px}.topbar{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);z-index:10;background:#fffffff0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px;display:grid;position:sticky;top:12px}.brand-mark{background:var(--charcoal);border:2px solid var(--amber);color:#fff6e6;letter-spacing:0;border-radius:50%;place-items:center;width:48px;height:48px;font-weight:800;display:grid}.eyebrow{color:var(--green);letter-spacing:0;text-transform:uppercase;font-size:.74rem;font-weight:800}.topbar nav,.filter-bar,.mode-row{flex-wrap:wrap;gap:8px;display:flex}.topbar button,.filter-bar button,.mode-row button,.primary-action,.update-actions a{color:var(--ink);background:#f8f4ee;border:1px solid #ded7ce;border-radius:7px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:8px 12px;text-decoration:none;transition:background .14s,border-color .14s,color .14s;display:inline-flex}.topbar button:hover,.filter-bar button:hover,.mode-row button:hover,.update-actions a:hover{border-color:#bfc8c2}.topbar button.active,.filter-bar button.active,.mode-row button.active,.primary-action{background:var(--charcoal);border-color:var(--charcoal);color:#fff8ed}.status-strip{color:var(--muted);flex-wrap:wrap;gap:10px;max-width:920px;margin:14px auto 24px;font-size:.92rem;display:flex}.status-strip span{background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:6px 10px}.feed-view,.compose-view,.config-view{max-width:920px;margin:0 auto}.section-heading{justify-content:space-between;align-items:end;gap:18px;margin-bottom:18px;display:flex}.section-heading>p{color:var(--muted);text-align:right;max-width:380px;line-height:1.45}.filter-bar{margin-bottom:16px}.filter-bar button{background:var(--surface);padding-right:8px}.filter-count{background:var(--surface-muted);color:var(--muted);border-radius:999px;min-width:24px;padding:2px 7px;font-size:.78rem;font-weight:800}.filter-bar button.active .filter-count{color:#fff8ed;background:#ffffff29}.updates-grid{grid-template-columns:minmax(0,1fr);gap:18px;display:grid}.feed-state,.update-card,.compose-surface,.status-block,.setup-notes{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 22px #19221f0f}.feed-state{color:var(--muted);gap:8px;padding:22px;display:grid}.feed-state h2{color:var(--ink)}.update-card{flex-direction:column;display:flex;overflow:hidden}.update-header,.update-footer{justify-content:space-between;gap:14px;display:flex}.update-header{align-items:flex-start;padding:20px 22px 12px}.update-header>div{gap:8px;min-width:0;display:grid}.update-header time{color:var(--muted);white-space:nowrap;flex:none;align-items:center;gap:6px;font-size:.88rem;line-height:1.3;display:inline-flex}.update-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:.85rem;font-weight:700;display:flex}.status-pill{letter-spacing:0;text-transform:uppercase;border:1px solid #0000;border-radius:999px;padding:3px 8px;font-size:.74rem;font-weight:800;display:inline-flex}.status-wip{background:var(--accent-soft);color:var(--accent);border-color:#afdce1}.status-feedback{background:var(--amber-soft);color:#7a4508;border-color:#edcb94}.status-build{color:var(--blue);background:#e8efff;border-color:#bdcff8}.status-milestone{color:var(--green);background:#e7f4ec;border-color:#badcc9}.status-supporter{color:var(--violet);background:#f0eafb;border-color:#d5c5f3}.update-body{color:var(--ink-soft);padding:0 22px 18px;font-size:1rem;line-height:1.62}.update-body>*+*{margin-top:11px}.update-body ul,.update-body ol{padding-left:22px}.update-body li+li{margin-top:4px}.update-body blockquote{border-left:3px solid var(--line);color:var(--muted);margin:14px 0 0;padding-left:12px}.update-body a{color:var(--accent);text-underline-offset:3px;font-weight:750}.update-body code{background:var(--surface-muted);border:1px solid var(--border);border-radius:5px;padding:1px 5px;font-size:.92em}.update-body pre{color:#f3f7f4;background:#16201d;border-radius:7px;padding:12px;overflow-x:auto}.update-body pre code{background:0 0;border:0;padding:0}.update-body table{border-collapse:collapse;width:100%;display:block;overflow-x:auto}.update-body th,.update-body td{border:1px solid var(--border);padding:7px 9px}.update-body img{border-radius:7px;max-width:100%;display:block}.media-gallery{border-top:1px solid var(--border);gap:1px;display:grid}.media-gallery.multiple{background:var(--charcoal);grid-template-columns:repeat(2,minmax(0,1fr))}.update-media{background:#1b2421;min-width:0;margin:0}.update-media img,.mock-visual{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.update-media figcaption{color:var(--muted);background:#f7f3ed;padding:10px 14px;font-size:.88rem;line-height:1.45}.update-footer{align-items:center;margin-top:auto;padding:16px 22px 20px}.tag-list{flex-wrap:wrap;gap:7px;display:flex}.tag-list span{background:var(--surface-warm);color:#704516;border:1px solid #edcf9e;border-radius:999px;padding:4px 8px;font-size:.82rem}.update-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:8px;display:flex}.update-actions a{background:var(--surface);min-height:34px;padding:7px 10px}.update-actions .cta-link{background:var(--charcoal);border-color:var(--charcoal);color:#fff8ed}.compose-surface{gap:16px;padding:18px;display:grid}.field,.upload-box{gap:7px;display:grid}.field span{color:var(--muted);font-size:.88rem;font-weight:700}.field input,.field select,.field textarea{border:1px solid var(--line);color:var(--ink);resize:vertical;background:#fff;border-radius:7px;min-height:42px;padding:10px 11px}.split-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.upload-box{background:var(--surface-muted);border-radius:var(--radius);border:1px dashed #aebbab;padding:16px}.upload-box label{align-items:center;gap:8px;width:fit-content;display:inline-flex}.upload-box input{display:none}.upload-box p,.composer-actions p,.status-block p{color:var(--muted);line-height:1.45}.image-alt-list{gap:10px;display:grid}.composer-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.config-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.status-block{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;padding:16px;display:grid}.status-icon{color:var(--accent)}.ready{color:var(--green)}.waiting{color:var(--amber)}.setup-notes{margin-top:18px;padding:18px}.setup-notes ol{color:var(--muted);margin:12px 0 0;padding-left:22px;line-height:1.65}.mock-visual{position:relative;overflow:hidden}.mock-run{background-color:#0c684d;background-image:linear-gradient(90deg,#ffffff14 1px,#0000 1px),linear-gradient(#ffffff14 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:42px 42px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border:12px solid #111815}.run-hud{color:#f7f0df;justify-content:space-between;align-items:center;padding:4px 6px;font-size:.8rem;display:flex}.run-field{position:absolute;inset:34px 16px 18px}.pickup,.reticle{border-radius:50%;position:absolute}.pickup{background:#8d8177;width:48px;height:34px;box-shadow:inset -6px -7px #0000002e}.pickup-a{top:52%;left:18%;transform:rotate(-22deg)}.pickup-b{top:26%;right:22%}.pickup-c{background:#c79654;bottom:18%;right:34%}.reticle{border:3px solid #5adcdfcc;width:148px;height:148px;top:calc(50% - 74px);left:calc(50% - 74px)}.mock-tech{background:linear-gradient(120deg,#0000 0 47%,#e3e9dd29 47% 49%,#0000 49% 100%),#101615}.node{background:#24302b;border:3px solid #d99d3f;width:52px;height:52px;position:absolute;box-shadow:0 0 0 3px #d99d3f2e}.node-0{border-color:#38c78d;top:calc(50% - 26px);left:calc(50% - 26px)}.node-1{top:25%;left:30%}.node-2{top:25%;right:30%}.node-3{bottom:22%;left:35%}.node-4{bottom:22%;right:35%}.node-5,.node-6,.node-7,.node-8,.node-9{border-color:#57635d}.node-5{top:40%;left:14%}.node-6{top:42%;right:14%}.node-7{top:10%;left:48%}.node-8{bottom:9%;left:20%}.node-9{bottom:9%;right:20%}.edge{transform-origin:0;background:#43ced3;width:128px;height:4px;position:absolute}.edge-a{top:43%;left:38%;transform:rotate(28deg)}.edge-b{top:43%;left:48%;transform:rotate(-30deg)}.edge-c{top:54%;left:43%;transform:rotate(105deg)}.edge-d{top:54%;left:50%;transform:rotate(73deg)}.mock-icons{background:#5d5f5d;grid-template-columns:repeat(6,1fr);gap:14px;padding:28px;display:grid}.icon-tile{border:1px solid #fffc;border-radius:7px;place-items:center;min-height:64px;display:grid}.icon-tile span{background:#fff;width:28px;height:28px}@media (width<=840px){.app-shell{width:min(100% - 18px,720px);padding-bottom:36px}.topbar{grid-template-columns:auto minmax(0,1fr);align-items:start;position:static}.topbar nav{grid-column:1/-1}.section-heading,.update-header,.update-footer{flex-direction:column;align-items:start}.section-heading>p{text-align:left}.update-header time{white-space:normal}.update-actions{justify-content:flex-start;width:100%}.updates-grid,.split-fields,.config-grid,.media-gallery.multiple{grid-template-columns:1fr}}@media (width<=460px){.app-shell{width:calc(100% - 16px)}.topbar{gap:12px}.brand-mark{width:42px;height:42px}.topbar nav,.filter-bar{width:100%}.topbar button{flex:auto}.filter-bar button{flex:calc(50% - 8px)}.update-header,.update-body,.update-footer{padding-left:18px;padding-right:18px}.update-actions a{flex:auto}.mock-icons{grid-template-columns:repeat(3,1fr);gap:10px;padding:22px}}
