:root{--ds-sans:var(--font-space-grotesk),"Helvetica Neue",Helvetica,Arial,sans-serif;--ds-mono:var(--font-jetbrains-mono),"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,monospace;--ds-display:var(--font-archivo-black),"Space Grotesk",Helvetica,sans-serif}.design-root{--paper:#f4f1ea;--paper-2:#ebe7dc;--ink:#0a0a0a;--ink-2:#2a2a26;--muted:#8a8478;--line:#0a0a0a;--accent:#d4ff3a;--accent-ink:#0a0a0a;--danger:#ff3a3a;--ok:#2bbf6a;--sans:var(--ds-sans);--mono:var(--ds-mono);--display:var(--ds-display)}.design-root.ds-dark{--paper:#0e0e0c;--paper-2:#1a1a17;--ink:#f4f1ea;--ink-2:#d8d4c8;--muted:#6e6a5e;--line:#f4f1ea}.phone{width:360px;height:780px;background:var(--paper);color:var(--ink);border:2px solid var(--line);position:relative;overflow:hidden;font-family:var(--sans);font-size:14px;line-height:1.35;display:flex;flex-direction:column}.phone,.phone *{box-sizing:border-box}.phone .statusbar{height:28px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.04em;border-bottom:2px solid var(--line);background:var(--paper);flex:0 0 auto}.phone .statusbar .ind{display:flex;gap:6px;align-items:center}.phone .statusbar .dot{width:6px;height:6px;background:var(--ink)}.appbar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:2px solid var(--line);flex:0 0 auto;background:var(--paper)}.appbar .brand{gap:8px;font-size:14px;letter-spacing:.01em;text-transform:uppercase}.appbar .brand,.appbar .logo{display:flex;align-items:center;font-family:var(--display)}.appbar .logo{width:22px;height:22px;background:var(--ink);color:var(--paper);justify-content:center;font-size:12px}.appbar .meta{font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}.phone .home{height:18px;border-top:2px solid var(--line);display:flex;align-items:center;justify-content:center;flex:0 0 auto;background:var(--paper)}.phone .home:after{content:"";width:120px;height:3px;background:var(--ink)}.screen{flex:1 1 auto;overflow:hidden;position:relative;display:flex;flex-direction:column}.screen-body{flex:1 1 auto;overflow:auto;padding:16px}.screen-body.tight{padding:0}.screen-body::-webkit-scrollbar{display:none}.h1{font-size:30px;line-height:.95;letter-spacing:-.01em}.h1,.h2{font-family:var(--display);text-transform:uppercase;margin:0}.h2{font-size:22px;line-height:1;letter-spacing:-.005em}.h3{font-family:var(--sans);font-weight:700;font-size:15px;line-height:1.2;letter-spacing:.02em;margin:0}.h3,.kicker{text-transform:uppercase}.kicker{font-size:10px;font-weight:500;letter-spacing:.1em;color:var(--ink)}.kicker,.mono{font-family:var(--mono)}.muted{color:var(--muted)}.body-sm{font-size:12px}.body,.btn{font-size:14px}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid var(--line);background:var(--paper);color:var(--ink);padding:12px 16px;font-family:var(--sans);font-weight:700;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;text-align:center;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:transform .04s}.btn:active{transform:translate(1px,1px)}.btn.primary{background:var(--accent);color:var(--accent-ink)}.btn.ink{background:var(--ink);color:var(--paper);border-color:var(--ink)}.btn.ghost{background:transparent;border-color:transparent}.btn.danger{background:var(--paper);color:var(--danger);border-color:var(--danger)}.btn.sm{padding:8px 12px;font-size:12px}.btn-row{display:flex;gap:8px}.btn-row>.btn{flex:1 1 0}.input,.textarea{width:100%;border:2px solid var(--line);background:var(--paper);color:var(--ink);padding:12px;font-family:var(--mono);font-size:14px;outline:none}.input:focus,.textarea:focus{background:var(--accent)}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink)}.field .hint,.field label{font-family:var(--mono);font-size:10px}.field .hint{letter-spacing:.05em;color:var(--muted)}.card{border:2px solid var(--line);background:var(--paper);padding:14px}.card.ink{background:var(--ink);color:var(--paper)}.card.accent{background:var(--accent);color:var(--accent-ink)}.card+.card{margin-top:-2px}.dl{display:flex;flex-direction:column;border-top:2px solid var(--line)}.dl .row{display:flex;align-items:baseline;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);gap:12px}.dl .row .k{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.dl .row .v{font-size:13px;text-align:right}.dl .row .v,.tag{font-family:var(--mono);color:var(--ink)}.tag{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:3px 6px;border:1.5px solid var(--line);background:var(--paper);line-height:1}.tag.solid{background:var(--ink);color:var(--paper)}.tag.accent{background:var(--accent);color:var(--accent-ink);border-color:var(--accent-ink)}.tag.danger{color:var(--danger);border-color:var(--danger)}.tag.danger,.tag.ok{background:var(--paper)}.tag.ok{color:var(--ok);border-color:var(--ok)}.rule{height:0;border-top:2px solid var(--line);margin:14px 0}.rule.dash{border-top-style:dashed;border-top-width:1.5px}.tabs{display:flex;border:2px solid var(--line)}.tabs>*{flex:1;padding:8px;text-align:center;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border-right:2px solid var(--line);background:var(--paper);color:var(--ink)}.tabs>:last-child{border-right:0}.tabs>.on{background:var(--ink);color:var(--paper)}.bottomnav{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--line);background:var(--paper);flex:0 0 auto}.bottomnav>*{padding:10px 4px 8px;text-align:center;font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;border-right:1px solid var(--line);color:var(--ink);display:flex;flex-direction:column;align-items:center;gap:4px}.bottomnav>:last-child{border-right:0}.bottomnav>.on{background:var(--ink);color:var(--paper)}.bottomnav .gl{font-family:var(--display);font-size:14px;line-height:1}.balance-block{background:var(--ink);color:var(--paper);padding:18px 16px;display:flex;flex-direction:column;gap:4px}.balance-block .lbl{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.balance-block .amt{font-family:var(--display);font-size:44px;line-height:1;letter-spacing:-.02em}.balance-block .sub{font-family:var(--mono);font-size:11px;color:var(--paper);opacity:.7}.qr{width:100%;aspect-ratio:1/1;background:var(--paper);border:2px solid var(--line);display:grid;grid-template-columns:repeat(25,1fr);grid-template-rows:repeat(25,1fr);padding:12px;gap:0}.qr i{display:block;background:var(--ink)}.strip{background:var(--accent);color:var(--accent-ink);padding:8px 12px;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;border-bottom:2px solid var(--line)}.strip.ink{background:var(--ink);color:var(--paper)}.list{display:flex;flex-direction:column;border-top:2px solid var(--line)}.list .item{padding:12px 0;border-bottom:1.5px solid var(--line);display:flex;align-items:center;gap:12px}.list .item .ix{font-family:var(--mono);font-size:10px;color:var(--muted);letter-spacing:.08em}.list .item .main{flex:1 1 auto;min-width:0}.list .item .right{text-align:right}.scanner{background:var(--ink);color:var(--paper);border:2px solid var(--line);display:flex;align-items:center;justify-content:center;overflow:hidden}.scanner,.scanner .reticle{position:relative;aspect-ratio:1/1}.scanner .reticle{width:70%;border:2px dashed var(--accent)}.scanner .reticle:after,.scanner .reticle:before,.scanner .reticle>i:first-child,.scanner .reticle>i:last-child{content:"";position:absolute;width:24px;height:24px;border:3px solid var(--accent)}.scanner .reticle:before{top:-3px;left:-3px;border-right:0;border-bottom:0}.scanner .reticle:after{top:-3px;right:-3px;border-left:0;border-bottom:0}.scanner .reticle>i:first-child{bottom:-3px;left:-3px;border-right:0;border-top:0}.scanner .reticle>i:last-child{bottom:-3px;right:-3px;border-left:0;border-top:0}.scanner .scan-line{position:absolute;left:15%;right:15%;height:2px;background:var(--accent);top:50%;box-shadow:0 0 12px var(--accent);animation:scan 1.8s ease-in-out infinite}@keyframes scan{0%,to{top:18%;opacity:1}50%{top:82%;opacity:1}}.avatar{width:36px;height:36px;border:1.5px solid var(--line);background:var(--paper-2);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:11px;font-weight:700;text-transform:uppercase;flex:0 0 auto}.avatar.lg{width:56px;height:56px;font-size:18px}.steps{display:flex;gap:4px;margin-bottom:14px}.steps i{flex:1;height:4px;background:var(--paper-2);border:1.5px solid var(--line)}.steps i.on{background:var(--ink)}.bigstat{border:2px solid var(--line);padding:14px}.bigstat .v{font-family:var(--display);font-size:30px;line-height:1}.bigstat .l{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:4px}.wallet-card{border:2px solid var(--line);background:var(--ink);color:var(--paper);padding:14px;position:relative}.wallet-card.apple{background:#000;color:#fff}.wallet-card.google{background:#fff;color:#000;border-color:#000}.stripes{background-image:repeating-linear-gradient(45deg,var(--ink) 0 1.5px,transparent 1.5px 10px);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink)}.stripes,.svg-frame{border:2px solid var(--line)}.svg-frame{background:var(--paper)}.design-canvas{background:var(--paper-2);min-height:100vh;padding:24px}.design-section{margin-bottom:48px}.design-section-header{display:flex;align-items:baseline;gap:12px;margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid var(--line)}.design-section-header h2{font-family:var(--display);font-size:18px;letter-spacing:-.01em;text-transform:uppercase;margin:0}.design-section-header p{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0}.design-artboard-row{display:flex;gap:24px;overflow-x:auto;padding-bottom:8px}.design-artboard{flex:0 0 auto}.design-artboard-label{font-size:10px;color:var(--muted);margin-bottom:8px}.design-artboard-label,.design-controls{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase}.design-controls{position:sticky;top:0;z-index:100;background:var(--ink);color:var(--paper);padding:10px 24px;display:flex;align-items:center;gap:16px;border-bottom:2px solid var(--line);font-size:11px}.design-controls label{display:flex;align-items:center;gap:6px}.design-controls input[type=text]{width:90px}.design-controls input[type=text],.design-controls select{background:var(--paper);color:var(--ink);border:1.5px solid var(--paper);padding:3px 6px;font-family:var(--mono);font-size:11px;letter-spacing:.04em}.design-controls .accent-swatch{width:18px;height:18px;border:1.5px solid var(--paper);cursor:pointer;flex:0 0 auto}.design-controls .sep{opacity:.3}