@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-400-latin.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-500-latin.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Lexend;src:url(/fonts/Lexend-Variable-latin.woff2)format("woff2");font-weight:300 600;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--font-sans:"Lexend", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--bg:#0a0a0a;--card:#0f0f0f;--muted:#1f1f1f;--border:#292929;--fg:#fafafa;--fg-muted:#a3a3a3;--primary:#fefefe;--on-primary:#0a0a0a;--tile:#070909;--destructive:#bb2a2a;--destructive-text:#f87171;--soft:#d3cfcfc7;--label:#fefefec7;--ember:#f2873f;--ember-hot:#ffc27a;--ember-deep:#7a3a1c;--ember-dim:#9c592d;--r-card:.75rem;--r-btn:7px;--ease-enter:cubic-bezier(.22, 1, .36, 1);--ease-state:cubic-bezier(.6, 0, .2, 1);--dur-micro:.15s;--dur-state:.3s;--dur-reveal:.55s}@media (prefers-reduced-motion:reduce){:root{--dur-state:1ms;--dur-reveal:1ms}}*,:before,:after{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);min-height:100vh;color:var(--fg);font:300 16px/1.6 var(--font-sans);-webkit-font-smoothing:antialiased;padding-bottom:48px}button{font:inherit;color:inherit}.num{font-variant-numeric:tabular-nums}[hidden]{display:none!important}::selection{color:var(--on-primary);background:#fefefee6}html{scrollbar-color:var(--border) var(--bg);accent-color:var(--ember)}:focus{outline:none}:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.label{font:400 11px/16px var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--label);align-items:center;gap:10px;margin:0;display:flex}.osq{border:1px solid #fefefe;flex:none;width:7px;height:7px}.topbar{align-items:center;gap:32px;max-width:1200px;margin:0 auto;padding:28px 40px 0;display:flex}.wordmark{font:500 17px/1 var(--font-mono);letter-spacing:.02em;align-items:center;gap:10px;display:inline-flex}.wordmark .sq{background:#fefefe;width:11px;height:11px}.product{letter-spacing:-.01em;color:#e5e5e6c4;font-size:15px;font-weight:400}.link-state{margin-left:auto}.link-state.closed .osq{border-color:var(--fg-muted)}.link-state.closed{color:var(--fg-muted)}main{max-width:1200px;margin:0 auto;padding:72px 40px 48px}h1{font:400 clamp(34px, 4.6vw, 60px)/1.08 var(--font-mono);letter-spacing:-.04em;text-wrap:balance;margin:0}h1 .soft{color:var(--soft);display:block}.scene>.label+h1{margin-top:20px}.lede{max-width:58ch;color:var(--fg-muted);margin:18px 0 0;font-size:17px;line-height:1.65}.lede+.dropzone,.lede+.readout{margin-top:48px}.btn{border-radius:var(--r-btn);height:40px;color:var(--fg);font:400 14px/1 var(--font-sans);letter-spacing:-.01em;white-space:nowrap;cursor:pointer;transition:background-color var(--dur-micro) var(--ease-state), border-color var(--dur-micro) var(--ease-state);background:0 0;border:1px solid #fefefe47;align-items:center;gap:14px;padding:0 16px;text-decoration:none;display:inline-flex}.btn:hover{background:#fefefe12;border-color:#fefefe80}.btn.primary{border-color:var(--primary);background:var(--primary);color:var(--on-primary);padding-right:4px;box-shadow:0 1px 5px #00000061}.btn.primary:hover{background:#e5e5e5;border-color:#e5e5e5}.tile{background:var(--tile);color:#fefefe;width:34px;height:30px;font:400 14px/1 var(--font-mono);border-radius:6px;place-items:center;display:grid}.btn.text{color:var(--fg-muted);border-color:#0000;padding:0 10px}.btn.text:hover{color:var(--fg);background:#fefefe0f;border-color:#0000}.btn.danger{border-color:var(--destructive);background:var(--destructive);color:#fafafa}.btn.danger:hover{background:#a62626}.btn.sm{height:28px;padding:0 8px;font-size:13px}.btn:active{translate:0 1px}.btn:disabled,.btn[disabled]{opacity:.45;cursor:not-allowed}.bare{flex-direction:column;justify-content:center;align-items:flex-start;min-height:calc(100vh - 300px);display:flex}.bare .btn{margin-top:36px}body:has(.bare:not([hidden])):before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(closest-side,#f2873f38,#7a3a1c1f 55%,#0000);height:80vh;position:fixed;inset:auto -10vw -30vh 30vw}.signin{max-width:620px}.signin-form{margin-top:36px}.signin-label{font:400 11px/16px var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-muted);display:block}.signin-row{flex-wrap:wrap;gap:10px;margin-top:10px;display:flex}.code-input{border:1px solid var(--border);border-radius:var(--r-btn);background:var(--card);width:210px;height:52px;color:var(--fg);font:500 24px/1 var(--font-mono);letter-spacing:.3em;font-variant-numeric:tabular-nums;padding:0 12px 0 16px}.code-input:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.signin-row .btn{height:52px}.signin-msg{min-height:22px;font:400 13px/1.6 var(--font-mono);color:var(--fg-muted);margin:16px 0 0}.signin-msg.warn{color:var(--destructive-text)}.signin .btn.text{margin-top:6px;padding-left:0}.dropzone{text-align:center;border-radius:var(--r-card);background:var(--card);transition:border-color var(--dur-state) var(--ease-state);border:1px dashed #3d3d3d;justify-items:center;gap:14px;padding:56px 24px;display:grid;position:relative;overflow:hidden}.dropzone:after{content:"";pointer-events:none;opacity:0;height:70%;transition:opacity var(--dur-state) var(--ease-enter), transform var(--dur-reveal) var(--ease-enter);background:radial-gradient(60% 100% at 50% 100%,#f2873f47,#7a3a1c1a 60%,#0000);position:absolute;inset:auto 0 0;transform:translateY(20%)}.dropzone>*{z-index:1;position:relative}.dropzone:focus-within{border-color:#fefefe80}.dropzone.over{border-style:solid;border-color:var(--ember)}.dropzone.over:after{opacity:1;transform:none}.dz-icon{width:56px;height:46px;color:var(--fg-muted);transition:color var(--dur-state) var(--ease-state)}.dz-lid{transform-origin:4px 22px;transition:transform var(--dur-state) var(--ease-enter)}.dropzone.over .dz-icon{color:var(--ember)}.dropzone.over .dz-lid{transform:rotate(-14deg)translateY(-2px)}.dz-title{font:400 20px/1.3 var(--font-mono);letter-spacing:-.02em;text-wrap:balance;margin:0}.dz-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:6px;display:flex}[data-scene=welcome] .dropzone,.partmap{view-transition-name:drop}::view-transition-group(drop){animation-duration:var(--dur-reveal);animation-timing-function:var(--ease-enter)}::view-transition-old(root){animation-duration:var(--dur-state)}::view-transition-new(root){animation-duration:var(--dur-state)}.readout{border:1px solid var(--border);border-radius:var(--r-card);background:var(--card);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid;overflow:hidden}.readout>div{border-left:1px solid var(--border);min-width:0;padding:16px 20px}.readout>div:first-child{border-left:0}.readout dt{font:400 11px/16px var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-muted)}.readout dd{font:400 20px/1.3 var(--font-mono);letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;margin:6px 0 0;overflow:hidden}.readout .dim{color:var(--fg-muted);font-size:15px}.readout dd.wait{color:var(--fg-muted)}.readout.six{grid-template-columns:repeat(3,minmax(0,1fr))}.readout.six>div:nth-child(n+4){border-top:1px solid var(--border)}.readout.six>div:nth-child(4){border-left:0}.readout.six dd{white-space:normal;overflow-wrap:anywhere}.bar{background:var(--muted);height:4px;position:relative;overflow:hidden}.bar>span{transform-origin:0;background:linear-gradient(90deg, var(--ember-deep), var(--ember) 70%, var(--ember-hot));position:absolute;inset:0;transform:scaleX(0)}.total-bar{height:3px;margin-top:16px}.slow{font:400 12px/1.6 var(--font-mono);letter-spacing:.02em;color:var(--fg-muted);margin:10px 0 0}.notice{border:1px solid var(--border);border-radius:var(--r-card);background:var(--card);transition:opacity var(--dur-state) var(--ease-enter), translate var(--dur-state) var(--ease-enter);flex-wrap:wrap;align-items:center;gap:4px 14px;margin-top:20px;padding:12px 16px;font-size:15px;display:flex}@starting-style{.notice{opacity:0;translate:0 -6px}}.notice strong{font-weight:500}.notice.warn{border-color:#f8717173}.notice .btn{margin-left:auto}.partmap{border:1px solid var(--border);border-radius:var(--r-card);background:var(--card);margin:32px 0 0;padding:16px 20px 14px;position:relative}.partmap figcaption{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.partmap .label{color:var(--fg-muted)}.pm-count{font:400 12px/16px var(--font-mono);color:var(--fg-muted)}#pm-canvas{cursor:crosshair;width:100%;height:120px;display:block}.pm-tip{pointer-events:none;z-index:2;border-radius:var(--r-btn);background:var(--bg);max-width:320px;font:400 12px/1.5 var(--font-mono);border:1px solid #3d3d3d;padding:8px 10px;position:absolute}.pm-tip b{font-weight:500}.pm-legend{font:400 12px/16px var(--font-mono);color:var(--fg-muted);flex-wrap:wrap;gap:6px 20px;margin:14px 0 0;padding:0;list-style:none;display:flex}.pm-legend li{align-items:center;gap:8px;display:inline-flex}.mk{flex:none;width:7px;height:7px;display:inline-block}.mk.here{background:var(--ember-dim)}.mk.send{border:1px solid var(--ember)}.mk.wait{border:1px solid #666}.mk.flag{border:1px solid #fefefe}.mk.fail{background:var(--destructive-text)}.mk.line{border:1px dashed var(--fg-muted)}.chips{flex-wrap:wrap;gap:8px;margin:32px 0 10px;display:flex}.chip{border:1px solid var(--border);border-radius:var(--r-btn);height:32px;color:var(--fg-muted);font:400 12px/1 var(--font-mono);letter-spacing:.04em;cursor:pointer;transition:color var(--dur-micro) var(--ease-state), border-color var(--dur-micro) var(--ease-state);background:0 0;padding:0 12px}.chip:hover{color:var(--fg);border-color:#4d4d4d}.chip.on{color:var(--fg);border-color:#fefefe}.chip .num{color:var(--fg-muted);margin-left:6px}.files{border-top:1px solid var(--border);margin:0;padding:0;list-style:none;position:relative}.file{border-bottom:1px solid #1a1a1a;grid-template-columns:minmax(0,1fr) 88px 360px;align-items:center;gap:16px;height:44px;padding:0 4px;font-size:14px;display:grid;position:absolute;top:0;left:0;right:0}.file:hover{background:#121212}.path{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.dir{color:var(--fg-muted)}.size{font:400 13px/1 var(--font-mono);color:var(--fg-muted);text-align:right}.state{align-items:center;gap:10px;min-width:0;display:flex}.st{white-space:nowrap;text-overflow:ellipsis;min-width:0;font:400 12px/1.4 var(--font-mono);letter-spacing:.02em;color:var(--fg-muted);align-items:center;gap:8px;display:inline-flex;overflow:hidden}.st.done,.st.flag{color:var(--fg)}.st.send{color:var(--ember)}.st.fail{color:var(--destructive-text)}.state .bar{flex:0 0 64px;height:3px}.file .bar>span{transition:transform .4s linear}.st.done.just .mk{animation:land .52s var(--ease-enter)}@keyframes land{0%{box-shadow:0 0 0 4px #ffc27a8c}to{box-shadow:0 0 #ffc27a00}}.list-count{font:400 12px/16px var(--font-mono);color:var(--fg-muted);margin:12px 4px 0}.receipt{margin-top:48px}.receipt-files{border-top:1px solid var(--border);margin:24px 0 0;padding:0;list-style:none}.receipt-files li{border-bottom:1px solid #1a1a1a;justify-content:space-between;gap:16px;padding:12px 4px;font-size:14px;display:flex}.actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:28px;display:flex}.withdraw-confirm{border-radius:var(--r-card);background:var(--card);border:1px solid #f8717173;margin-top:20px;padding:16px 20px}.withdraw-confirm p{margin:0}.withdraw-confirm .actions{margin-top:14px}@media (prefers-reduced-motion:reduce){.dropzone:after,.dropzone.over .dz-lid{transform:none}.file .bar>span{transition:none}.st.done.just .mk{animation:none}@starting-style{.notice{translate:0}}.btn:active{translate:none}}@media (max-width:720px){.topbar{gap:16px;padding:18px 20px 0}.product{display:none}main{padding:48px 20px 40px}.lede{font-size:16px}.lede+.dropzone,.lede+.readout{margin-top:32px}.dropzone{padding:40px 16px}.readout,.readout.six{grid-template-columns:1fr 1fr}.readout>div{padding:12px 14px}.readout>div:nth-child(odd){border-left:0}.readout>div:nth-child(n+3){border-top:1px solid var(--border)}.readout dd{font-size:17px}.file{grid-template-rows:22px 20px;grid-template-columns:minmax(0,1fr) 64px;align-content:center;row-gap:2px;height:60px}.file .state{grid-column:1/-1}.btn.sm{height:32px}.chip{height:36px}.receipt-files li{flex-direction:column;gap:4px}.partmap{padding:12px}#pm-canvas{height:150px}.signin-row{flex-direction:column}.code-input,.signin-row .btn{width:100%}}
