@font-face{font-family:Albert Sans;src:url(/fonts/AlbertSans-Variable.ttf) format("truetype-variations");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Albert Sans;src:url(/fonts/AlbertSans-Italic-Variable.ttf) format("truetype-variations");font-weight:100 900;font-style:italic;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/Geist-Variable.ttf) format("truetype-variations");font-weight:100 900;font-style:normal;font-display:swap}:root{--ink-950:#110614;--ink-900:#1c0f20;--ink-800:#2a1a2e;--ink-700:#3d2c42;--ink-600:#574a5c;--ink-500:#756a78;--ink-400:#9b929d;--ink-300:#c2bcc4;--ink-200:#e2dee3;--ink-100:#f1eff2;--ink-50:#faf9fb;--white:#fff;--red-50:#fce9ec;--red-100:#f7c5cd;--red-300:#e8546b;--red-500:#ce0527;--red-600:#b00420;--red-700:#95031b;--cyan-300:#a6f2f2;--cyan-500:#6de7e8;--cyan-700:#2bb6b7;--bg:var(--ink-50);--surface:var(--white);--surface-sunken:var(--ink-50);--fg1:var(--ink-950);--fg2:var(--ink-600);--fg3:var(--ink-400);--fg-on-dark:var(--white);--fg-on-dark-2:hsla(0,0%,100%,.66);--fg-on-dark-3:hsla(0,0%,100%,.42);--border:var(--ink-200);--border-strong:var(--ink-300);--primary:var(--red-500);--primary-hover:var(--red-600);--primary-press:var(--red-700);--success:#1f8a5b;--success-tint:#e4f4ec;--warning:#c77a00;--warning-tint:#fbf0dd;--danger:var(--red-500);--danger-tint:var(--red-50);--info:var(--cyan-700);--info-tint:#e2f8f8;--font-display:"Albert Sans","Segoe UI",system-ui,sans-serif;--font-sans:"Geist","Segoe UI",system-ui,-apple-system,sans-serif;--font-mono:"SF Mono",ui-monospace,"Cascadia Code",monospace;--r-sm:8px;--r-md:12px;--r-lg:16px;--radius:var(--r-md);--shadow-sm:0 1px 3px rgba(17,6,20,.08),0 1px 2px rgba(17,6,20,.05);--shadow-md:0 4px 12px rgba(17,6,20,.09),0 2px 4px rgba(17,6,20,.05);--shadow-red:0 10px 28px rgba(206,5,39,.28);--focus-ring:0 0 0 3px rgba(206,5,39,.28)}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--fg1);font-family:var(--font-sans);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--red-600)}.app{display:grid;grid-template-columns:320px 1fr;min-height:100vh}.sidebar{background:var(--ink-950);color:var(--fg-on-dark);border-right:1px solid var(--ink-900);padding:26px 18px;display:flex;flex-direction:column;gap:4px}.brand{margin-bottom:6px}.brand img{width:150px;height:auto;display:block}.brand small{display:block;color:var(--fg-on-dark-2);font-size:12px;margin-top:10px;letter-spacing:.02em}.account-pill{margin:16px 0 22px;padding:11px 13px;background:hsla(0,0%,100%,.06);border:1px solid hsla(0,0%,100%,.12);border-radius:var(--r-md);font-size:13px;color:var(--fg-on-dark)}.account-pill .balance{color:var(--cyan-300);font-weight:600}.checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.checklist li button{width:100%;text-align:left;background:transparent;border:1px solid transparent;border-left-width:3px;color:var(--fg-on-dark-2);padding:10px 12px;border-radius:var(--r-md);cursor:pointer;display:flex;align-items:flex-start;gap:10px;font:inherit;transition:background .13s,color .13s}.checklist li button:hover{background:hsla(0,0%,100%,.06);color:var(--fg-on-dark)}.checklist li.active button{background:hsla(0,0%,100%,.08);border-left-color:var(--red-500);color:var(--fg-on-dark)}.checklist li.locked button{opacity:.4;cursor:not-allowed}.check{width:20px;height:20px;border-radius:50%;border:2px solid hsla(0,0%,100%,.28);flex:0 0 auto;display:grid;place-items:center;font-size:11px;margin-top:1px;color:var(--fg-on-dark-3)}.check.done{background:var(--red-500);border-color:var(--red-500);color:var(--white)}.step-title{font-weight:600;font-size:14px}.step-blurb{color:var(--fg-on-dark-3);font-size:12px}.checklist li button:hover .step-blurb,.checklist li.active .step-blurb{color:var(--fg-on-dark-2)}.sidebar-footer{margin-top:auto;padding-top:16px;font-size:12px;color:var(--fg-on-dark-3)}.main{padding:40px 48px;max-width:900px}.page-head h1{margin:0 0 6px;font-family:var(--font-display);font-weight:800;letter-spacing:-.02em;font-size:30px;color:var(--fg1)}.page-head p{margin:0 0 26px;color:var(--fg2);font-size:16px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:24px;margin-bottom:20px}.card-title{margin:0 0 4px;font-family:var(--font-display);font-weight:700;letter-spacing:-.01em;font-size:18px;color:var(--fg1)}.card-subtitle{margin:0 0 18px;color:var(--fg2);font-size:13.5px}.card-footer{margin-top:20px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field-label{font-size:13px;font-weight:600;color:var(--fg1)}.req{color:var(--red-500);margin-left:3px}.field-hint{font-size:12px;color:var(--fg3)}.input{background:var(--white);border:1px solid var(--border-strong);border-radius:var(--r-sm);color:var(--fg1);padding:9px 11px;font:inherit;width:100%}.input::placeholder{color:var(--fg3)}.input:focus{outline:none;border-color:var(--red-500);box-shadow:var(--focus-ring)}.grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 16px;gap:0 16px}.row{display:flex;gap:10px;align-items:flex-end}.routing-picker{display:flex;gap:8px;flex-wrap:wrap}.routing-picker .input{width:auto;min-width:180px;flex:1 1}.btn{border:1px solid transparent;border-radius:var(--r-sm);padding:9px 16px;font:inherit;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:background .13s,box-shadow .13s,border-color .13s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--red-500);color:var(--white);box-shadow:var(--shadow-red)}.btn-primary:hover:not(:disabled){background:var(--red-600)}.btn-secondary{background:var(--white);border-color:var(--border-strong);color:var(--fg1)}.btn-secondary:hover:not(:disabled){background:var(--ink-50);border-color:var(--ink-400)}.btn-ghost{background:transparent;color:var(--fg2)}.btn-ghost:hover:not(:disabled){background:var(--ink-100);color:var(--fg1)}.btn-danger{background:transparent;border-color:var(--red-100);color:var(--red-600)}.btn-danger:hover:not(:disabled){background:var(--red-50)}.banner{border-radius:var(--r-sm);padding:12px 14px;font-size:13px;margin-bottom:16px;border:1px solid var(--border);background:var(--surface)}.banner-info{background:var(--info-tint);border-color:#b8ecec;color:#0c4a4a}.banner-success{background:var(--success-tint);border-color:#b8e3cc;color:#145a3b}.banner-error{background:var(--danger-tint);border-color:var(--red-100);color:var(--red-700)}.banner-warn{background:var(--warning-tint);border-color:#efd9a8;color:#8a5500}.muted{color:var(--fg3)}.small{font-size:12px}.table{width:100%;border-collapse:collapse;font-size:13px}.table td,.table th{text-align:left;padding:9px 10px;border-bottom:1px solid var(--border)}.table th{color:var(--fg3);font-weight:600}.spinner{width:14px;height:14px;border:2px solid hsla(0,0%,100%,.4);border-top:2px solid var(--white);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.tag{display:inline-block;padding:2px 9px;border-radius:999px;font-size:11px;background:var(--ink-100);border:1px solid var(--border);color:var(--fg2)}code,pre.export{font-family:var(--font-mono)}pre.export{background:var(--ink-50);border:1px solid var(--border);border-radius:var(--r-sm);padding:14px;overflow:auto;font-size:12px;max-height:360px;color:var(--fg1)}.section-divider{border:none;border-top:1px solid var(--border);margin:24px 0}textarea.input{min-height:84px;resize:vertical;font-family:inherit}.studio{border:1px solid var(--border);border-radius:var(--r-md);background:var(--ink-50);padding:16px;margin-bottom:8px}.studio-tabs{display:flex;gap:6px;margin-bottom:14px}.studio-tabs .tab{background:var(--white);border:1px solid var(--border);color:var(--fg2);padding:7px 12px;border-radius:var(--r-sm);cursor:pointer;font:inherit;font-size:13px;font-weight:500}.studio-tabs .tab.active{background:var(--white);border-color:var(--red-500);color:var(--fg1);box-shadow:0 0 0 1px var(--red-500) inset}.studio-preview{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.size-row{display:flex;justify-content:space-between;align-items:center;margin:6px 0 12px}.size{font-size:13px;font-weight:600}.size.ok{color:var(--success)}.size.over{color:var(--warning)}input[type=file].input{padding:7px}