:root{--slate:#1d1f22;--slate-2:#2a2d31;--slate-3:#3a3e43;--chalk:#eef0ea;--chalk-mute:#b4b9bd;--paper:#f4f5f2;--sheet:#fff;--ink:#17191c;--mute:#565c63;--line:#dcdfe2;--line-strong:#17191c;--run:#f2c94c;--run-wash:#fff4cc;--err:#b3321d;--err-wash:#fbe9e5;--warn:#7a5300;--ok:#1f7a4a;--link:#1f62c4;--rev-blue:#cfe0f7;--rev-pink:#f7d4e2;--rev-yellow:#f8ecb4;--rev-green:#d3edd6;--display:"Barlow Condensed", "Be Vietnam Pro", sans-serif;--text:"Be Vietnam Pro", system-ui, sans-serif;--rail:232px;--inspector:380px;--gutter:32px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;accent-color:var(--slate)}*{box-sizing:border-box}html,body{height:100%}body{background:var(--paper);color:var(--ink);font:400 14px/20px var(--text);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;margin:0}::selection{background:var(--run);color:var(--ink)}:focus-visible{outline:2px solid var(--link);outline-offset:2px;border-radius:2px}*{scrollbar-width:thin;scrollbar-color:#c3c7cb transparent}a{color:var(--link);text-underline-offset:3px;text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{text-wrap:balance;margin:0}h1{font:700 32px/36px var(--display);text-transform:uppercase;letter-spacing:.02em}h2{font:700 18px/24px var(--display);text-transform:uppercase;letter-spacing:.04em}h3{font:600 15px/20px var(--text)}p{margin:0}.muted{color:var(--mute)}.error-text{color:var(--err)}.label{font:600 12px/16px var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}.app{grid-template-columns:var(--rail) minmax(0, 1fr);height:100vh;display:grid}.rail{background:var(--slate);color:var(--chalk);flex-direction:column;gap:24px;padding:20px 14px 16px;display:flex;overflow-y:auto}.brand{padding:0 8px}.brand strong{font:700 22px/24px var(--display);letter-spacing:.05em;text-transform:uppercase;display:block}.brand span{color:var(--chalk-mute);margin-top:6px;font-size:13px;display:block}.nav{gap:2px;display:grid}.nav-title{font:600 11px/16px var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--chalk-mute);padding:0 10px 6px}.nav a{color:var(--chalk-mute);border-radius:6px;align-items:center;gap:10px;padding:8px 10px;font-weight:500;text-decoration:none;display:flex}.nav a svg{flex:none}.nav a:hover{background:var(--slate-2);color:var(--chalk)}.nav a[aria-current=page]{background:var(--slate-2);color:#fff}.nav a[aria-current=page] svg{color:var(--run)}.nav a em{font:600 12px/16px var(--display);letter-spacing:.04em;color:var(--chalk-mute);margin-left:auto;font-style:normal}.who{border-top:1px solid var(--slate-3);color:var(--chalk-mute);gap:10px;margin-top:auto;padding:14px 8px 0;font-size:13px;display:grid}.who b{color:#fff;font-weight:600;display:block}.who button{border:1px solid var(--slate-3);color:var(--chalk);background:0 0;justify-self:start;min-height:32px;padding:4px 12px}.who button:hover{background:var(--slate-2)}.frame{grid-template-rows:auto minmax(0,1fr);min-width:0;height:100vh;display:grid}.toolbar{min-height:52px;padding:8px var(--gutter);background:var(--sheet);border-bottom:1px solid var(--line);align-items:center;gap:18px;display:flex}.crumbs{white-space:nowrap;align-items:center;gap:8px;min-width:0;font-weight:600;display:flex}.crumbs span{color:var(--mute);font-weight:500}.crumbs a{color:var(--ink)}.machine{color:var(--mute);border-radius:6px;align-items:center;gap:10px;margin-left:auto;padding:6px 10px;font-size:13px;text-decoration:none;display:flex}.machine:hover{background:var(--paper);text-decoration:none}.machine b{color:var(--ink);font-weight:600}.lamp{background:#9aa0a6;border-radius:50%;flex:none;width:9px;height:9px}.lamp.on{background:var(--ok);box-shadow:0 0 0 3px #d9f0e2}.lamp.wait{background:var(--run);box-shadow:0 0 0 3px var(--run-wash)}.lamp.off{background:var(--err);box-shadow:0 0 0 3px var(--err-wash)}.body{grid-template-columns:minmax(0,1fr);min-height:0;display:grid}.body.with-inspector{grid-template-columns:minmax(0, 1fr) var(--inspector)}.work{padding:28px var(--gutter) 48px;grid-template-columns:minmax(0,1fr);align-content:start;gap:24px;min-width:0;display:grid;overflow-y:auto}.inspector{background:var(--sheet);border-left:1px solid var(--line);align-content:start;gap:20px;padding:24px;display:grid;overflow-y:auto}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.page-head p{color:var(--mute);max-width:72ch;margin-top:6px}button,.button{font:500 14px/20px var(--text);color:var(--ink);background:var(--sheet);cursor:pointer;border:1px solid #c9cdd1;border-radius:6px;align-items:center;gap:8px;min-height:36px;padding:7px 14px;text-decoration:none;display:inline-flex}button:hover,.button:hover{border-color:var(--ink);text-decoration:none}button.primary,.button.primary{background:var(--slate);color:#fff;border-color:var(--slate);font-weight:600}button.primary:hover{background:var(--slate-2)}button.danger{color:var(--err)}button:disabled{opacity:.5;cursor:not-allowed}input:disabled,select:disabled,textarea:disabled{opacity:.55;background:var(--paper);color:var(--mute);cursor:not-allowed}input,select,textarea{font:inherit;color:var(--ink);background:var(--sheet);border:1px solid #c9cdd1;border-radius:6px;min-height:36px;padding:7px 10px}input:focus,select:focus,textarea:focus{border-color:var(--ink);outline:none;box-shadow:0 0 0 3px #e3e6e9}input::placeholder{color:#646a71}input[type=color]{width:44px;padding:2px}select{appearance:none;background:var(--sheet) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%2317191c' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4.5 6 7.5l3-3'/%3E%3C/svg%3E") no-repeat right 10px center;padding-right:32px}input[type=file]::file-selector-button{font:500 13px/18px var(--text);color:var(--ink);background:var(--paper);cursor:pointer;border:1px solid #c9cdd1;border-radius:4px;margin-right:10px;padding:5px 10px}.file-pick{position:relative}.file-pick input[type=file]{opacity:0;cursor:pointer;position:absolute;inset:0}.nav-soon{color:#8a8f94;cursor:default;align-items:center;gap:10px;padding:8px 10px;font-weight:500;display:flex}.nav-soon em{font:600 11px/16px var(--display);letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--slate-3);border-radius:4px;margin-left:auto;padding:0 6px;font-style:normal}.machine u{color:var(--link);margin-left:6px;font-weight:600;text-decoration:none}.machine:hover u{text-decoration:underline}.badge.rev{border-color:#0000}.badge.rev-published{background:var(--rev-green)}.badge.rev-draft{background:var(--rev-yellow)}.badge.rev-archived{background:var(--rev-blue)}label.field{color:var(--mute);gap:6px;font-size:13px;display:grid}.tabs{background:var(--sheet);border:1px solid #c9cdd1;border-radius:6px;display:inline-flex;overflow:hidden}.tabs a{color:var(--ink);border-left:1px solid #c9cdd1;padding:7px 14px;font-weight:500;text-decoration:none}.tabs a:first-child{border-left:0}.tabs a[aria-current=true]{background:var(--slate);color:#fff}.tabs a em{color:inherit;opacity:.7;margin-left:4px;font-style:normal}.sheet{background:var(--sheet);border-top:2px solid var(--line-strong)}.sheet>h2{padding:14px 0 10px}table{border-collapse:collapse;width:100%}th{text-align:left;font:600 12px/16px var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--mute);border-bottom:2px solid var(--line-strong);padding:10px 12px}td{border-bottom:1px solid var(--line);vertical-align:middle;padding:12px}tr:hover td{background:#fafbf9}.badge{font:600 12px/18px var(--display);letter-spacing:.05em;text-transform:uppercase;color:var(--ink);white-space:nowrap;border:1px solid #c9cdd1;border-radius:4px;padding:0 7px;display:inline-block}.badge.run{background:var(--run-wash);border-color:#e0b93d}.badge.err{background:var(--err-wash);color:var(--err);border-color:#e3a497}.badge.ok{color:var(--ok);background:#e3f3e9;border-color:#9fd0b2}.empty{text-align:center;color:var(--mute);padding:40px 0}.empty h3{color:var(--ink);margin-bottom:4px}.slate{--cols:minmax(220px, 1.6fr) repeat(8, minmax(40px, 1fr)) minmax(150px, .9fr);background:var(--sheet)}.slate-head,.slate-row{grid-template-columns:var(--cols);align-items:center;column-gap:6px;padding:0 16px;display:grid}.slate-head{border-bottom:2px solid var(--line-strong);background:var(--paper);z-index:1;padding-top:10px;padding-bottom:10px;position:sticky;top:-28px}.slate-head span{font:600 12px/14px var(--display);letter-spacing:.05em;text-transform:uppercase;color:var(--mute);overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.slate-head{align-items:end}.slate-row{border-bottom:1px solid var(--line);min-height:72px;color:var(--ink);padding-top:12px;padding-bottom:12px;text-decoration:none;position:relative}.slate-row:hover{background:#fafbf9;text-decoration:none}.slate-row[aria-current=true]{background:#f1f3f5;box-shadow:inset 0 0 0 1px #c9cdd1}.slate-row .t{min-width:0;padding-right:12px}.slate-row .t b{white-space:nowrap;text-overflow:ellipsis;font-weight:600;display:block;overflow:hidden}.slate-row .t span{font:600 12px/16px var(--display);letter-spacing:.05em;text-transform:uppercase;color:var(--mute)}.cell{border:1.5px solid #c5c9cd;border-radius:3px;height:30px;position:relative;overflow:hidden}.cell.done{background:var(--ink);border-color:var(--ink)}.cell.run{border:2px dashed var(--ink);background:linear-gradient(90deg, var(--run) var(--p,100%), var(--run-wash) var(--p,100%))}.cell.run i{font:700 13px/1 var(--display);place-items:center;font-style:normal;display:grid;position:absolute;inset:0}.cell.fail{border-color:var(--err);background:linear-gradient(to top right, transparent calc(50% - 1px), var(--err) calc(50% - 1px) calc(50% + 1px), transparent calc(50% + 1px))}.cell.wait{background:repeating-linear-gradient(90deg,#0000 0 6px,#eceef0 6px 12px);border:2px dashed #8f959b}.state{font-size:13px;font-weight:600;line-height:18px}.state small{color:var(--mute);font-weight:400;display:block}.state.wait{color:var(--warn)}.state.err{color:var(--err)}.state.ok{color:var(--ok)}.clap{background:repeating-linear-gradient(-45deg, var(--ink) 0 10px, var(--sheet) 10px 20px);transform-origin:0 0;height:7px;animation:.12s cubic-bezier(.16,1,.3,1) both clap;position:absolute;top:-1px;left:0;right:0}@keyframes clap{0%{transform:rotate(-4deg)scaleY(1.6)}to{transform:none}}@media (prefers-reduced-motion:reduce){.clap{animation:none}}.inspector-head{flex-wrap:nowrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.inspector-head>div{min-width:0}.inspector-head .button{flex:none}.steps{display:grid}.step{border-bottom:1px solid var(--line);grid-template-columns:22px minmax(0,1fr) auto;align-items:start;gap:10px;padding:10px 0;display:grid}.step .cell{border-radius:3px;width:18px;height:18px;margin-top:1px}.step b{font-weight:600}.step small{color:var(--mute);display:block}.facts{grid-template-columns:auto minmax(0,1fr);gap:6px 16px;font-size:13px;display:grid}.facts dt{color:var(--mute)}.facts dd{margin:0;font-weight:500}.callout{background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:12px 14px;font-size:13px}.panel{background:var(--sheet);border:1px solid var(--line);border-radius:6px;padding:18px}.stack{gap:16px;display:grid}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.issue{border:1px solid var(--line);border-radius:4px;padding:8px 10px;font-size:13px}.issue.error{background:var(--err-wash);color:var(--err);border-color:#e3a497}.issue.warning{background:var(--run-wash);color:var(--warn);border-color:#e0b93d}.issue.ok{color:var(--ok);background:#e3f3e9;border-color:#9fd0b2}.editor{grid-template-columns:minmax(320px,420px) minmax(0,1fr);align-items:start;gap:24px;display:grid}.previews{grid-template-columns:repeat(auto-fit,minmax(220px,300px));gap:16px;display:grid}.grid2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.swatch-row{grid-template-columns:96px 44px minmax(0,1fr);align-items:center;gap:8px;font-size:13px;display:grid}.panel input:not([type=color]),.panel select{width:100%;min-width:0}.panel input[type=file]{padding:4px}.gate{grid-template-columns:minmax(320px,1fr) minmax(360px,520px);min-height:100vh;display:grid}.gate-side{background:var(--slate);color:var(--chalk);flex-direction:column;justify-content:center;gap:48px;padding:48px;display:flex}.gate-side strong{font:700 40px/40px var(--display);text-transform:uppercase;letter-spacing:.04em}.gate-side p{color:var(--chalk-mute);max-width:44ch;margin-top:12px;font-size:15px;line-height:24px}.gate-list{gap:18px;max-width:44ch;margin:0;padding:0;list-style:none;display:grid}.gate-list li{color:var(--chalk-mute);border-top:1px solid var(--slate-3);padding-top:14px}.gate-list b{color:#fff;font:700 16px/20px var(--display);letter-spacing:.05em;text-transform:uppercase;margin-bottom:4px;display:block}.gate-main{background:var(--sheet);align-content:center;gap:24px;padding:48px;display:grid}.gate-main form{gap:16px;display:grid}.gate-main input{width:100%;min-height:44px;font-size:16px}.gate-main button.primary{justify-content:center;min-height:44px}.gate-main details{border-top:1px solid var(--line);padding-top:16px}.gate-main summary{cursor:pointer;color:var(--mute);align-items:center;gap:8px;font-weight:500;list-style:none;display:flex}.gate-main summary::-webkit-details-marker{display:none}.gate-main summary:before{content:"";border-bottom:1.6px solid;border-right:1.6px solid;width:7px;height:7px;transition:transform .16s cubic-bezier(.16,1,.3,1);transform:rotate(-45deg)}.gate-main details[open] summary:before{transform:rotate(45deg)}@media (max-width:1180px){.body.with-inspector{grid-template-columns:minmax(0,1fr)}.inspector{border-left:0;border-top:1px solid var(--line)}}@media (max-width:900px){:root{--gutter:16px}.app{grid-template-columns:1fr;height:auto}.rail{flex-flow:wrap;align-items:center;gap:12px;padding:12px 16px}.nav{flex-wrap:wrap;display:flex}.nav-title,.who span{display:none}.who{border:0;margin:0 0 0 auto;padding:0}.frame{height:auto}.toolbar{flex-wrap:wrap;gap:4px 12px}.machine{margin-left:0;padding:4px 0}.crumbs{white-space:normal;flex-wrap:wrap}.editor{grid-template-columns:1fr}.slate{overflow-x:auto}.slate-head,.slate-row{min-width:820px}.gate{grid-template-columns:1fr}.gate-side{gap:24px;padding:28px 16px}.gate-main{padding:28px 16px}}.acct{border-bottom:1px solid var(--line);gap:12px;padding:16px 0;display:grid}.acct-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.acct-actions{margin-left:auto}.settings-form{gap:14px;padding-top:10px;display:grid}.settings-form td{vertical-align:middle}.settings-form table{table-layout:fixed;width:100%}.settings-form th:first-child{width:32%}.settings-form th:nth-child(2){width:40%}.settings-form td input,.settings-form td select,.settings-form td textarea{width:100%;max-width:360px}.settings-form textarea{font:13px/18px ui-monospace,SFMono-Regular,Menlo,monospace}
