:root{--ink:#0a0a0b;--ink-muted:#6b6b74;--surface:#fff;--surface-sunken:#f6f6f7;--line:#e4e4e7;--font-sans:ui-sans-serif, -apple-system, "Segoe UI", Inter, system-ui, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, monospace}@media (prefers-color-scheme:dark){:root{--ink:#f4f4f5;--ink-muted:#8f8f99;--surface:#0a0a0b;--surface-sunken:#141417;--line:#26262b}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--surface);min-height:100dvh;color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;font-size:1.0625rem;line-height:1.6}main{place-items:center;min-height:100dvh;padding:2rem;display:grid}.card{text-align:left;width:100%;max-width:34rem}.eyebrow{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);margin:0 0 1.25rem;font-size:.75rem}h1{letter-spacing:-.02em;margin:0 0 1rem;font-size:clamp(2rem,5vw,3rem);font-weight:600;line-height:1.1}p{color:var(--ink-muted);margin:0 0 1rem}.status{border-top:1px solid var(--line);font-family:var(--font-mono);color:var(--ink-muted);margin-top:2rem;padding-top:1.5rem;font-size:.8125rem}.status dl{grid-template-columns:auto 1fr;gap:.35rem 1.25rem;margin:0;display:grid}.status dt{color:var(--ink-muted)}.status dd{color:var(--ink);margin:0}footer{color:var(--ink-muted);margin-top:2rem;font-size:.8125rem}main.wide{place-items:start center;padding-block:3rem}main.wide .card{max-width:60rem}h2{letter-spacing:-.01em;color:var(--ink);margin:2.5rem 0 .75rem;font-size:1.125rem;font-weight:600}.lede{color:var(--ink-muted);font-size:1.0625rem}a{color:var(--ink);-webkit-text-decoration-color:var(--ink-muted);text-decoration-color:var(--ink-muted);text-underline-offset:.2em}.stack{gap:1rem;margin-top:1.75rem;display:grid}label{color:var(--ink);gap:.35rem;font-size:.875rem;font-weight:500;display:grid}input{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:.5rem;width:100%;padding:.625rem .75rem;font-size:1rem}input:focus-visible{outline:2px solid var(--ink);outline-offset:1px;border-color:var(--ink)}.hint{margin:-.5rem 0 0;font-size:.8125rem}button{font:inherit;color:var(--surface);background:var(--ink);border:1px solid var(--ink);cursor:pointer;border-radius:.5rem;padding:.625rem 1.1rem;font-size:.9375rem;font-weight:500}button:hover:not(:disabled){opacity:.88}button:disabled{opacity:.5;cursor:progress}button.quiet{color:var(--ink-muted);border-color:var(--line);background:0 0}.error,.notice{border:1px solid var(--line);border-radius:.5rem;margin:0;padding:.75rem .875rem;font-size:.875rem}.error{color:#b42318;background:#fef3f2;border-color:#fecdca}.notice{color:var(--ink);background:var(--surface-sunken)}@media (prefers-color-scheme:dark){.error{color:#fda29b;background:#2b1211;border-color:#5a1e1a}}.meta{color:var(--ink-muted);font-size:.8125rem}table{border-collapse:collapse;width:100%;font-size:.9375rem}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.75rem .5rem}th{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted);font-size:.75rem;font-weight:500}td{color:var(--ink)}.row-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.pill{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--line);color:var(--ink-muted);border-radius:999px;padding:.2rem .5rem;font-size:.6875rem;display:inline-block}.pill-approved,.pill-active{color:#067647;background:#ecfdf3;border-color:#abefc6}.pill-cancelled,.pill-suspended{color:#b42318;background:#fef3f2;border-color:#fecdca}@media (prefers-color-scheme:dark){.pill-approved,.pill-active{color:#75e0a7;background:#0d2419;border-color:#1a3d2b}.pill-cancelled,.pill-suspended{color:#fda29b;background:#2b1211;border-color:#5a1e1a}}footer+form,.status+form{margin-top:1.5rem}.divider{grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;margin:1.5rem 0 1.25rem;display:grid}.divider:before,.divider:after{content:"";background:var(--line);height:1px}.divider span{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);font-size:.75rem}.provider-button{width:100%;color:var(--ink);background:var(--surface);border:1px solid var(--line);justify-content:center;align-items:center;gap:.6rem;font-weight:500;display:flex}.provider-button:hover:not(:disabled){background:var(--surface-sunken);opacity:1}.provider-button svg{flex:none;width:1.125rem;height:1.125rem}.provider-card{border:1px solid var(--line);border-radius:.75rem;margin:1rem 0;padding:1.25rem}.provider-card header h3{color:var(--ink);flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 .25rem;font-size:1.0625rem;font-weight:600;display:flex}.provider-card .meta{margin:0}.provider-card .stack{margin-top:1rem}.provider-verified{border-color:#abefc6}.provider-missing .req{color:#b42318}.req{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted);font-size:.6875rem}.pill-verified{color:#067647;background:#ecfdf3;border-color:#abefc6}.pill-unverified{color:#b54708;background:#fffaeb;border-color:#fedf89}.pill-missing{color:var(--ink-muted)}.gate{color:var(--ink-muted);margin:.5rem 0 0;font-size:.875rem}.stored{margin:1rem 0 0;font-size:.875rem}.stored div{flex-wrap:wrap;gap:.5rem;padding:.35rem 0;display:flex}.stored dt{color:var(--ink-muted);min-width:9rem}.stored dd{margin:0}.stored code{font-family:var(--font-mono);font-size:.8125rem}.link-button{color:var(--ink-muted);text-underline-offset:.2em;cursor:pointer;background:0 0;border:none;margin-top:1rem;padding:0;font-size:.875rem;text-decoration:underline}.link-button:hover{color:var(--ink);opacity:1}.guide{background:var(--surface-sunken);border-radius:.5rem;margin-top:.75rem;padding:1rem 1rem .5rem;font-size:.875rem}.guide ol{color:var(--ink-muted);margin:0 0 .5rem;padding-left:1.25rem}.guide li{margin-bottom:.35rem}.checklist{margin:0 0 1.5rem;padding:0;list-style:none}.checklist li{border-bottom:1px solid var(--line);gap:.75rem;padding:.6rem 0;display:flex}.checklist .tick{font-family:var(--font-mono);color:var(--ink-muted)}.checklist .done .tick{color:#067647}.checklist strong{color:var(--ink);margin-right:.5rem;font-weight:500}textarea{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);resize:vertical;border-radius:.5rem;width:100%;padding:.625rem .75rem;font-size:1rem}textarea:focus-visible{outline:2px solid var(--ink);outline-offset:1px;border-color:var(--ink)}.two-up{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (max-width:34rem){.two-up{grid-template-columns:1fr}}label.checkbox{flex-direction:row;align-items:center;gap:.5rem;display:flex}label.checkbox input{width:auto}.build{margin:1.5rem 0}.bar{background:var(--surface-sunken);border-radius:999px;height:.5rem;overflow:hidden}.bar-fill{background:var(--ink);border-radius:999px;height:100%;transition:width .4s}.pill-building,.pill-draft{color:#b54708;background:#fffaeb;border-color:#fedf89}.pill-ready,.pill-published{color:#067647;background:#ecfdf3;border-color:#abefc6}a.btn{color:var(--surface);background:var(--ink);border:1px solid var(--ink);border-radius:.5rem;padding:.625rem 1.1rem;font-size:.9375rem;font-weight:500;text-decoration:none;display:inline-block}a.btn:hover{opacity:.88}.btn-row{flex-wrap:wrap;gap:.75rem;margin:1.5rem 0 0;display:flex}.warnings{color:#b54708;margin:.75rem 0 0;padding-left:1.1rem;font-size:.9375rem}.warnings li+li{margin-top:.35rem}.pill-live{color:#067647;background:#ecfdf3;border-color:#abefc6}.pill-queued,.pill-building,.pill-uploading{color:#b54708;background:#fffaeb;border-color:#fedf89}.pill-failed,.pill-rejected{color:#b42318;background:#fef3f2;border-color:#fecdca}.pill-superseded,.pill-awaiting_approval{color:var(--ink-muted);border-color:var(--line);background:var(--surface-sunken)}select{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:.5rem;width:100%;padding:.625rem .75rem;font-size:1rem}select:focus-visible{outline:2px solid var(--ink);outline-offset:1px;border-color:var(--ink)}.tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:1.25rem;margin:0 0 1.5rem;padding-bottom:.75rem;font-size:.9375rem;font-weight:500;display:flex}.tabs a,.tab-current{color:var(--ink-muted);text-decoration:none}.tabs a:hover,.tabs [aria-current=page],.tab-current{color:var(--ink)}.tabs [aria-current=page]{text-underline-offset:.4em;text-decoration:underline}.copy-link{border:1px solid var(--line);background:var(--surface-sunken);border-radius:.6rem;gap:.6rem;margin-top:.75rem;padding:.9rem 1rem;display:grid}.copy-link code{font-family:var(--font-mono);word-break:break-all;-webkit-user-select:all;user-select:all;font-size:.8125rem}.copy-link button{justify-self:start}.access-list,.site-list{gap:.75rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.access-list li{border:1px solid var(--line);border-radius:.6rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem .9rem;display:flex}.site-list li{border:1px solid var(--line);border-radius:.6rem;padding:1rem 1.1rem}.site-list h2{margin:0 0 .25rem}.inline-form{align-items:center;gap:.5rem;display:flex}.pill-paused{color:#b54708;background:#fffaeb;border-color:#fedf89}.pill-archived{color:var(--ink-muted);border-color:var(--line);background:var(--surface-sunken)}.editor{gap:2rem;margin-top:1.5rem;display:grid}.editor section{gap:1rem;display:grid}.editor fieldset{border:1px solid var(--line);border-radius:.6rem;gap:1rem;margin:0;padding:1rem 1.1rem;display:grid}.editor legend{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);padding:0 .4rem;font-size:.75rem;font-weight:600}.field{gap:.5rem;display:grid}.field-label{font-size:.875rem;font-weight:500}.thumb{border:1px solid var(--line);object-fit:cover;border-radius:.5rem;width:auto;max-width:14rem;height:auto;max-height:9rem;display:block}.image-field input[type=file]{background:0 0;border:0;padding:.4rem 0;font-size:.875rem}.menu-editor{gap:1rem;display:grid}.menu-row{border:1px solid var(--line);border-radius:.6rem;grid-template-columns:1fr 1fr auto;align-items:end;gap:.75rem;padding:.75rem .9rem;display:grid}.menu-controls{gap:.4rem;display:flex}@media (max-width:40rem){.menu-row{grid-template-columns:1fr}}.editor-actions{background:var(--surface);border-top:1px solid var(--line);gap:.6rem;padding:1rem 0;display:grid;position:sticky;bottom:0}.approval{margin-top:.9rem}
