:root{--ui-bg:#111;--ui-surface:#1a1a1a;--ui-surface-2:#222;--ui-line:#333;--ui-text:#eee;--ui-muted:#aaa;--ui-dim:#777;--ui-accent:#4af;--ui-accent-2:#fa4;--ui-accent-3:#f4a;--ui-on-accent:#000;--ui-success:#4c8;--ui-danger:#f55;--ui-on-danger:#fff;--ui-info:#4af;--ui-font-display:system-ui, sans-serif;--ui-font-body:system-ui, sans-serif;--ui-font-mono:ui-monospace, monospace;--ui-display-weight:800;--ui-display-transform:none;--ui-display-spacing:0;--ui-display-shadow:none;--ui-label-transform:uppercase;--ui-label-spacing:.08em;--ui-radius:8px;--ui-radius-sm:4px;--ui-border-w:1px;--ui-shadow:0 4px 18px #00000059;--ui-focus:0 0 0 3px color-mix(in srgb, var(--ui-accent) 55%, transparent);--ui-dur-fast:.15s;--ui-dur:.3s;--ui-ease:cubic-bezier(.2,.8,.2,1);--ui-btn-transform:none;--ui-btn-weight:700}html{background:var(--ui-bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body.ui-app{background:var(--ui-bg);color:var(--ui-text);font-family:var(--ui-font-body);transition:background var(--ui-dur), color var(--ui-dur);margin:0;line-height:1.5}.ui-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ui-fx-canvas{pointer-events:none;z-index:30000;width:100vw;height:100vh;position:fixed;inset:0}[hidden]{display:none!important}.ui-title{font-family:var(--ui-font-display);font-weight:var(--ui-display-weight);text-transform:var(--ui-display-transform);letter-spacing:var(--ui-display-spacing);text-shadow:var(--ui-display-shadow);color:var(--ui-title-color,var(--ui-text));margin:0;line-height:1.1}.ui-title[data-size=xl]{font-size:clamp(34px,7vw,60px)}.ui-title[data-size=lg]{font-size:28px}.ui-title[data-size=md]{font-size:20px}.ui-label{font:700 11px var(--ui-font-mono);text-transform:var(--ui-label-transform);letter-spacing:var(--ui-label-spacing);color:var(--ui-muted)}.ui-text-accent{color:var(--ui-accent)}.ui-text-accent-2{color:var(--ui-accent-2)}.ui-text-accent-3{color:var(--ui-accent-3)}.ui-fine{font:11px/1.5 var(--ui-font-mono);color:var(--ui-dim);border-top:1px dashed var(--ui-line);padding-top:10px}.ui-mono{font-family:var(--ui-font-mono)}.ui-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ui-stack{gap:12px;display:grid}.ui-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:14px;display:grid}.ui-banner{background:var(--ui-banner-bg,var(--ui-accent));color:var(--ui-banner-fg,var(--ui-on-accent));font:700 12px var(--ui-font-mono);letter-spacing:var(--ui-label-spacing);text-transform:var(--ui-label-transform);white-space:nowrap;padding:8px 14px;overflow:hidden}.ui-banner[data-tone=danger]{background:var(--ui-danger);color:var(--ui-on-danger)}.ui-panel,.ui-card{background:var(--ui-surface);border:var(--ui-border-w) solid var(--ui-panel-border,var(--ui-line));border-radius:var(--ui-radius);box-shadow:var(--ui-panel-shadow,none);position:relative}.ui-card{padding:14px 16px}.ui-panel[data-tone=danger]{--ui-panel-border:var(--ui-danger)}.ui-pad{padding:18px}.ui-btn{font:var(--ui-btn-weight) 14px var(--ui-font-body);text-transform:var(--ui-btn-transform);letter-spacing:var(--ui-btn-spacing,.02em);background:var(--ui-accent);color:var(--ui-on-accent);border:var(--ui-border-w) solid var(--ui-accent);border-radius:var(--ui-radius-sm);cursor:pointer;transition:transform var(--ui-dur-fast), background var(--ui-dur-fast), color var(--ui-dur-fast), box-shadow var(--ui-dur-fast);box-shadow:var(--ui-btn-shadow,none);align-items:center;gap:8px;padding:11px 18px;text-decoration:none;display:inline-flex}.ui-btn:hover{background:var(--ui-btn-hover,var(--ui-accent-2));border-color:var(--ui-btn-hover,var(--ui-accent-2))}.ui-btn:active{transform:translateY(1px)}.ui-btn:focus-visible,.ui-input:focus-visible,.ui-chip:focus-visible,.ui-icon-btn:focus-visible,[tabindex]:focus-visible{box-shadow:var(--ui-focus);outline:none}.ui-btn[data-variant=secondary]{color:var(--ui-accent);background:0 0}.ui-btn[data-variant=secondary]:hover{background:var(--ui-accent);color:var(--ui-on-accent)}.ui-btn[data-variant=danger]{color:var(--ui-danger);border-color:var(--ui-danger);background:0 0}.ui-btn[data-variant=danger]:hover{background:var(--ui-danger);color:var(--ui-on-danger)}.ui-icon-btn{border:1px solid var(--ui-line);color:var(--ui-text);border-radius:var(--ui-radius-sm);font:700 13px var(--ui-font-mono);cursor:pointer;background:0 0;padding:5px 9px;line-height:1}.ui-icon-btn:hover{border-color:var(--ui-accent);color:var(--ui-accent)}.ui-icon-btn.is-on{color:var(--ui-accent-3);border-color:var(--ui-accent-3)}.ui-icon-btn:disabled{opacity:.4;cursor:default}.ui-input{background:var(--ui-input-bg,var(--ui-surface-2));color:var(--ui-text);border:var(--ui-border-w) solid var(--ui-line);border-radius:var(--ui-radius-sm);font:15px var(--ui-font-body);min-width:0;padding:11px 13px}.ui-input:focus{border-color:var(--ui-accent)}.ui-field{gap:6px;display:grid}.ui-field.is-error .ui-input{border-color:var(--ui-danger)}.ui-field .ui-msg{font:12px var(--ui-font-mono);min-height:1em}.ui-field.is-error .ui-msg{color:var(--ui-danger)}.ui-field.is-ok .ui-msg{color:var(--ui-success)}.ui-chip{border:1px solid var(--ui-line);color:var(--ui-muted);border-radius:var(--ui-radius-sm);font:700 11px var(--ui-font-mono);letter-spacing:var(--ui-label-spacing);text-transform:var(--ui-label-transform);cursor:pointer;background:0 0;padding:7px 12px}.ui-chip.is-on,.ui-chip[aria-pressed=true]{background:var(--ui-accent);border-color:var(--ui-accent);color:var(--ui-on-accent)}.ui-badge{font:700 12px var(--ui-font-body);border-radius:var(--ui-radius-sm);background:var(--ui-accent);color:var(--ui-on-accent);align-items:center;gap:6px;padding:6px 10px;display:inline-flex}.ui-badge[data-tone="2"]{background:var(--ui-accent-2)}.ui-badge[data-tone="3"]{background:var(--ui-accent-3);color:var(--ui-on-accent-3,var(--ui-on-accent))}.ui-tag{font:700 11px var(--ui-font-mono);color:var(--ui-accent-3);border:1px solid var(--ui-accent-3);border-radius:var(--ui-radius-sm);padding:2px 6px}.ui-switch{appearance:none;border-radius:var(--ui-switch-radius,999px);background:var(--ui-surface-2);border:2px solid var(--ui-line);cursor:pointer;vertical-align:middle;width:50px;height:26px;transition:border-color var(--ui-dur-fast);position:relative}.ui-switch:before{content:"";border-radius:inherit;background:var(--ui-dim);width:16px;height:16px;transition:transform var(--ui-dur-fast), background var(--ui-dur-fast);position:absolute;top:3px;left:3px}.ui-switch:checked{border-color:var(--ui-accent)}.ui-switch:checked:before{background:var(--ui-accent);transform:translate(24px)}.ui-list{gap:10px;display:grid;position:relative}.ui-item{background:var(--ui-surface);border:var(--ui-border-w) solid var(--ui-line);border-radius:var(--ui-radius);padding:12px 14px;position:relative}.ui-skeleton{border-radius:var(--ui-radius-sm);background:linear-gradient(90deg, var(--ui-surface-2) 0 40%, color-mix(in srgb, var(--ui-surface-2) 60%, var(--ui-text)) 50%, var(--ui-surface-2) 60%);background-size:300% 100%;height:14px;animation:1.4s linear infinite ui-skel}@keyframes ui-skel{0%{background-position:100% 0}to{background-position:0 0}}.ui-progress{border-radius:var(--ui-radius-sm);background:var(--ui-surface-2);height:10px;overflow:hidden}.ui-progress>i{height:100%;width:calc(var(--p,0) * 1%);background:var(--ui-accent);transition:width .3s;display:block}.ui-state{text-align:center;color:var(--ui-muted);justify-items:center;gap:10px;padding:28px 16px;display:grid}.ui-state b{color:var(--ui-text);font-family:var(--ui-font-display);font-size:18px}.ui-toasts{z-index:31000;gap:10px;max-width:min(360px,100vw - 32px);display:grid;position:fixed;bottom:16px;right:16px}.ui-toast{background:var(--ui-surface);color:var(--ui-text);border-left:4px solid var(--ui-info);border-radius:var(--ui-radius-sm);box-shadow:var(--ui-shadow);animation:ui-toast-in var(--ui-dur) var(--ui-ease) both;padding:12px 14px;font-size:14px}.ui-toast b{font:700 12px var(--ui-font-mono);letter-spacing:var(--ui-label-spacing);color:var(--ui-info);margin-bottom:2px;display:block}.ui-toast[data-kind=ok]{border-color:var(--ui-success)}.ui-toast[data-kind=ok] b{color:var(--ui-success)}.ui-toast[data-kind=error]{border-color:var(--ui-danger)}.ui-toast[data-kind=error] b{color:var(--ui-danger)}.ui-toast.is-leaving{opacity:0;transition:all .25s;transform:translate(16px)}@keyframes ui-toast-in{0%{opacity:0;transform:translate(24px)}}.ui-toast-undo{border:1px solid var(--ui-accent);color:var(--ui-accent);border-radius:var(--ui-radius-sm);font:700 11px var(--ui-font-mono);cursor:pointer;background:0 0;margin-left:10px;padding:4px 8px}.ui-stamp{transform:translate(-50%,-50%) rotate(var(--ui-stamp-rot,-8deg));z-index:6;pointer-events:none;text-align:center;border:4px solid var(--ui-stamp-color,var(--ui-success));color:var(--ui-stamp-color,var(--ui-success));border-radius:var(--ui-radius-sm);background:color-mix(in srgb, var(--ui-bg) 60%, transparent);padding:8px 18px;position:absolute;top:50%;left:50%}.ui-stamp b{font:var(--ui-display-weight) 24px/1 var(--ui-font-display);letter-spacing:.1em;text-transform:uppercase;display:block}.ui-stamp small{font:700 10px var(--ui-font-mono);letter-spacing:.1em;margin-top:4px;display:block}.ui-stamp small:empty{display:none}.ui-off{visibility:visible;background:var(--ui-off-bg,#000);z-index:7;border-radius:inherit;place-items:center;display:grid;position:absolute;inset:0}.ui-off span{font:700 12px var(--ui-font-mono);letter-spacing:.2em;color:var(--ui-dim)}.ui-modal{z-index:31500;background:color-mix(in srgb, var(--ui-bg) 80%, transparent);backdrop-filter:blur(3px);place-items:center;padding:16px;display:grid;position:fixed;inset:0}.ui-modal-box{background:var(--ui-surface);border:2px solid var(--ui-accent);border-radius:var(--ui-radius);width:min(560px,100%);max-height:calc(100vh - 32px);box-shadow:var(--ui-shadow);gap:12px;padding:18px;display:grid;overflow:auto}.ui-modal-title{font:var(--ui-display-weight) 20px var(--ui-font-display);text-transform:var(--ui-display-transform);color:var(--ui-text);outline:none;margin:0}.ui-modal-text{color:var(--ui-muted);margin:0}.ui-reward{perspective:900px;cursor:pointer}.ui-reward-in{transform-style:preserve-3d;height:100%;transition:transform .7s cubic-bezier(.3,1.4,.5,1);position:relative}.ui-reward[data-state=unlocked] .ui-reward-in{transform:rotateY(180deg)}.ui-face{backface-visibility:hidden;border-radius:var(--ui-radius);position:absolute;inset:0;overflow:hidden}.ui-face--front{transform:rotateY(180deg)}.ui-hold{isolation:isolate;-webkit-user-select:none;user-select:none;touch-action:none;--p:0;position:relative;overflow:hidden}.ui-hold-fill{background:var(--ui-danger);transform-origin:0;transform:scaleX(var(--p));z-index:0;pointer-events:none;position:absolute;inset:0}.ui-hold-label{z-index:1;position:relative}.ui-hold.is-holding{animation:90ms steps(2,end) infinite ui-hold-shake;color:var(--ui-on-danger)!important}@keyframes ui-hold-shake{0%{transform:translate(var(--shake), 0)}50%{transform:translate(calc(var(--shake) * -1), 0)}}.ui-hold.is-confirmed{background:var(--ui-danger)!important;color:var(--ui-on-danger)!important}@media (prefers-reduced-motion:reduce){.ui-reward-in{transition:none}.ui-skeleton,.ui-hold.is-holding,.ui-toast{animation:none!important}*,:before,:after{transition-duration:0s!important}}[data-ui-ticker]{overflow:hidden}[data-ui-ticker-track]{display:flex}[data-ui-ticker-copy]{flex-wrap:wrap;flex-shrink:0;display:flex}[data-ui-ticker-copy="2"]{display:none}[data-ui-ticker-item]:not(:last-child):after{content:"·";opacity:.6;margin:0 .6em}[data-ui-id-card]{isolation:isolate;position:relative;overflow:hidden}[data-ui-id-fx]{pointer-events:none;z-index:2;position:absolute;inset:0}:root[data-corner=cut] [data-ui-btn]:not([data-ui-btn=link]),:root[data-corner=cut] [data-ui-input],:root[data-corner=cut] [data-ui-chrome]{clip-path:polygon(0 0, 100% 0, 100% calc(100% - var(--ui-corner-cut)), calc(100% - var(--ui-corner-cut)) 100%, 0 100%)}:root[data-corner=cut] [data-ui-card],:root[data-corner=cut] [data-ui-panel]{clip-path:polygon(0 0, calc(100% - var(--ui-corner-cut) * 1.5) 0, 100% calc(var(--ui-corner-cut) * 1.5), 100% 100%, 0 100%)}:root[data-corner=cut] [data-ui-sheet]{clip-path:polygon(0 0, calc(100% - var(--ui-corner-cut) * 2) 0, 100% calc(var(--ui-corner-cut) * 2), 100% 100%, 0 100%)}:root[data-corner=pixel] [data-ui-btn]:not([data-ui-btn=link]),:root[data-corner=pixel] [data-ui-input],:root[data-corner=pixel] [data-ui-chrome],:root[data-corner=pixel] [data-ui-panel],:root[data-corner=pixel] [data-ui-sheet]{--c:var(--ui-corner-cut);clip-path:polygon(0 var(--c), var(--c) var(--c), var(--c) 0, calc(100% - var(--c)) 0, calc(100% - var(--c)) var(--c), 100% var(--c), 100% calc(100% - var(--c)), calc(100% - var(--c)) calc(100% - var(--c)), calc(100% - var(--c)) 100%, var(--c) 100%, var(--c) calc(100% - var(--c)), 0 calc(100% - var(--c)))}:root[data-corner=pixel] [data-ui-sheet]{clip-path:polygon(0 var(--c), var(--c) var(--c), var(--c) 0, calc(100% - var(--c)) 0, calc(100% - var(--c)) var(--c), 100% var(--c), 100% 100%, 0 100%)}:root:not([data-corner=round]) [data-ui-btn]:focus-visible,:root:not([data-corner=round]) [data-ui-input]:focus{outline:none;box-shadow:inset 0 0 0 3px var(--ui-accent)!important}