:root{--ink:#0D0C0A;--ink-2:#14120D;--ink-3:#1C1913;--line:#2B2519;--line-soft:#201C14;--paper:#EDE6D6;--paper-2:#C4BBA8;--muted:#7E7566;--gold:#E8B44A;--on-gold:#14120D;--gold-2:#F3D289;--gold-2:color-mix(in srgb,var(--gold) 70%,#fff);--gold-a:rgba(232,180,74,.13);--gold-a:color-mix(in srgb,var(--gold) 13%,transparent);--gold-line:rgba(232,180,74,.34);--gold-line:color-mix(in srgb,var(--gold) 34%,transparent);--ember:#C2402A;--ember-a:rgba(194,64,42,.14);--ok:#69A97C;--sync-spin:var(--paper-2);--sync-spin-hot:#FF6E6E;--f-display:"Alimama","Punctuation SC","PingFang SC","Microsoft YaHei","微软雅黑",system-ui,sans-serif;--f-body:"Alimama","Punctuation SC","PingFang SC","Microsoft YaHei","微软雅黑",system-ui,sans-serif;--f-mono:"Alimama","Punctuation SC","PingFang SC","Microsoft YaHei",Consolas,monospace;--wrap:1800px;--pad:20px;--r:3px;--r-lg:5px;--r-poster:10px;--ease:cubic-bezier(.22,.61,.36,1);--t:.28s;--shadow:0 18px 44px rgba(0,0,0,.55);--bar-h:62px;--side-w:248px;--content-gap:50px}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;overflow-x:clip;scrollbar-gutter:stable}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--f-body);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;position:relative;z-index:0}img,video{max-width:100%;display:block}figure{margin:0}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3,h4{margin:0;font-family:var(--f-display);font-weight:700;line-height:1.22;letter-spacing:-.01em}p{margin:0}a{color:inherit;text-decoration:none}a:hover{color:var(--gold)}:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:var(--pad)}.bleed-left{padding-left:max(var(--pad),calc((100vw - var(--wrap)) / 2 + var(--pad)))}.bleed-right{padding-right:var(--pad)}.mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}.eyebrow{font-family:var(--f-mono);font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;padding:.62em 1.25em;border:1px solid var(--line);border-radius:var(--r);background:transparent;color:var(--paper);font-size:.88rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background var(--t) var(--ease),border-color var(--t) var(--ease),color var(--t) var(--ease),transform var(--t) var(--ease)}.btn:hover{border-color:var(--gold-line);color:var(--gold)}.btn:active{transform:translateY(1px)}.btn-gold{background:var(--gold);border-color:var(--gold);color:var(--on-gold)}.btn-gold:hover{background:var(--gold-2);border-color:var(--gold-2);color:var(--on-gold)}.btn-ember{background:var(--ember);border-color:var(--ember);color:#F6EDE9}.btn-ember:hover{background:#D14A32;border-color:#D14A32;color:#fff}.btn-quiet{border-color:transparent;color:var(--paper-2)}.btn-quiet:hover{background:var(--ink-3);color:var(--paper)}.btn>svg{flex:none}.btn-sm{padding:.34em .78em;font-size:.8rem}.btn-block{width:100%}.field{display:flex;flex-direction:column;gap:.38rem}.field>label,.label{font-size:.76rem;font-weight:600;letter-spacing:.04em;color:var(--paper-2)}.input,.select,.textarea{width:100%;padding:.56em .8em;background:var(--ink-2);border:1px solid var(--line);border-radius:var(--r);color:var(--paper);font-size:.88rem;transition:border-color var(--t) var(--ease),background var(--t) var(--ease)}.input:hover,.select:hover,.textarea:hover{border-color:#3a3223}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--gold);background:var(--ink-3)}.input::placeholder,.textarea::placeholder{color:#5f5748}.select{appearance:none;padding-right:2em;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 15px) 50%,calc(100% - 10px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.select option{background:var(--ink-2)}.textarea{resize:vertical;min-height:90px;line-height:1.7}.check{appearance:none;width:15px;height:15px;flex:none;border:1px solid var(--line);border-radius:2px;background:var(--ink-2);cursor:pointer;position:relative;transition:border-color var(--t) var(--ease),background var(--t) var(--ease)}.check:hover{border-color:var(--gold-line)}.check:checked{background:var(--gold);border-color:var(--gold)}.check:checked::after{content:"";position:absolute;left:4.5px;top:1px;width:4px;height:8px;border:solid var(--on-gold);border-width:0 2px 2px 0;transform:rotate(45deg)}.badge{display:inline-flex;align-items:center;gap:.3em;padding:.16em .55em;border-radius:2px;font-size:.7rem;font-weight:700;letter-spacing:.03em;background:var(--ink-3);color:var(--paper-2);border:1px solid var(--line)}.badge-ok{background:rgba(105,169,124,.14);color:var(--ok);border-color:rgba(105,169,124,.3)}.badge-run{background:var(--gold-a);color:var(--gold);border-color:var(--gold-line)}.badge-err{background:var(--ember-a);color:#E0705C;border-color:rgba(194,64,42,.34)}.badge-off{background:var(--ink-3);color:var(--muted)}.badge-hot{background:var(--ember-a);color:#E0705C;border-color:rgba(194,64,42,.34)}.alert{display:flex;align-items:center;gap:.6rem;padding:.7em 1em;border-radius:var(--r);border:1px solid var(--line);background:var(--ink-2);font-size:.86rem}.alert-success{border-color:rgba(105,169,124,.34);color:#9FD0AE;background:rgba(105,169,124,.07)}.alert-danger{border-color:rgba(194,64,42,.34);color:#E89484;background:rgba(194,64,42,.07)}.alert-warning{border-color:var(--gold-line);color:var(--gold-2);background:var(--gold-a)}.alert-info{border-color:var(--line);color:var(--paper-2)}.alert .close{margin-left:auto;background:none;border:0;cursor:pointer;color:inherit;opacity:.6;font-size:1.1rem;line-height:1;padding:0 .2em}.alert .close:hover{opacity:1}.empty{max-width:760px;margin-inline:auto;padding:4.5rem 1.5rem;text-align:center;border:1px dashed var(--line);border-radius:var(--r-lg);background:rgba(20,18,13,.5)}.empty h2{font-size:1.3rem;margin-bottom:.5rem}.empty p{color:var(--muted);font-size:.9rem;margin-bottom:1.2rem}.empty code{font-family:var(--f-mono);font-size:.82em;padding:.15em .45em;border-radius:2px;background:var(--ink-3);color:var(--gold-2)}.ui-toasts{position:fixed;left:50%;top:calc(var(--bar-h) + 12px);transform:translateX(-50%);z-index:100;display:flex;flex-direction:column;gap:.5rem;width:min(92vw,440px);pointer-events:none}.ui-toast{pointer-events:auto;box-shadow:var(--shadow);animation:ui-drop var(--t) var(--ease)}.ui-toast.is-out{opacity:0;transform:translateY(-6px);transition:opacity var(--t) var(--ease),transform var(--t) var(--ease)}@keyframes ui-drop{from{opacity:0;transform:translateY(-8px)}}.ui-modal{position:fixed;inset:0;z-index:110;display:flex;align-items:center;justify-content:center;padding:var(--pad)}.ui-modal__veil{position:absolute;inset:0;background:rgba(6,5,4,.74);animation:ui-veil var(--t) var(--ease)}@keyframes ui-veil{from{opacity:0}}.ui-modal__box{position:relative;width:min(94vw,460px);max-height:84vh;overflow:auto;padding:1.25rem 1.3rem 1.05rem;background:var(--ink-2);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);animation:ui-rise var(--t) var(--ease)}@keyframes ui-rise{from{opacity:0;transform:translateY(10px) scale(.985)}}.ui-modal--danger .ui-modal__box{border-color:rgba(194,64,42,.38)}.ui-modal__title{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;font-family:var(--f-display);font-size:1.04rem}.ui-modal__title::before{content:"";width:3px;height:1em;border-radius:2px;background:var(--gold)}.ui-modal--danger .ui-modal__title::before{background:var(--ember)}.ui-modal__msg{color:var(--paper-2);font-size:.88rem;line-height:1.75;white-space:pre-line}.ui-modal__foot{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1.15rem}*{scrollbar-width:thin;scrollbar-color:#332C1F transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#332C1F;border-radius:10px;border:3px solid var(--ink)}*::-webkit-scrollbar-thumb:hover{background:#4a4128}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}