.signup-shell{background:var(--paper);min-height:100vh;color:var(--ink);flex-direction:column;display:flex}.signup-head{border-bottom:3px solid var(--ink);background:var(--paper);z-index:50;position:sticky;top:0}.signup-head .inner{justify-content:space-between;align-items:center;max-width:720px;margin:0 auto;padding:14px 24px;display:flex}.signup-head .brand{align-items:center;gap:10px;font-family:Fredoka,sans-serif;font-size:1.2rem;font-weight:700;text-decoration:none;display:flex}.signup-head .brand .can{width:26px;height:26px}.signup-head .back{border-bottom:2px solid var(--ink);padding-bottom:1px;font-family:Space Mono,monospace;font-size:.8rem;text-decoration:none}.signup-body{flex:1;width:100%;max-width:720px;margin:0 auto;padding:40px 24px 80px}.signup-body h1{font-family:Fredoka,sans-serif;font-size:clamp(1.9rem,5vw,2.8rem);font-weight:700;line-height:1.05}.signup-body .sub{color:#3a352b;max-width:52ch;margin-top:12px;font-size:1.05rem}.chooser{gap:20px;margin-top:36px;display:grid}@media (width>=620px){.chooser{grid-template-columns:1fr 1fr}}.chooser a{color:inherit;border:3px solid var(--ink);background:var(--paper-2);box-shadow:var(--shadow);border-radius:20px;padding:28px 24px;text-decoration:none;transition:transform .12s,box-shadow .12s;display:block}.chooser a:hover{box-shadow:var(--shadow-lg);transform:translate(-2px,-2px)}.chooser a.pine{background:var(--pine);color:var(--paper-2)}.chooser h2{margin:10px 0 6px;font-size:1.5rem}.chooser p{color:#4a4437;font-size:.97rem}.chooser a.pine p{color:#d7e7d0}.chooser .price{margin-top:14px;font-family:Space Mono,monospace;font-size:.9rem;font-weight:700}.wizard-progress{counter-reset:wstep;flex-wrap:wrap;gap:8px;margin:28px 0 4px;padding:0;list-style:none;display:flex}.wizard-progress li{letter-spacing:.04em;text-transform:uppercase;border:2px solid var(--ink);background:var(--paper-2);opacity:.55;border-radius:999px;align-items:center;gap:.4rem;padding:.3rem .7rem .3rem .55rem;font-family:Space Mono,monospace;font-size:.72rem;display:flex}.wizard-progress li:before{counter-increment:wstep;content:counter(wstep);background:var(--ink);width:1.15rem;height:1.15rem;color:var(--paper);border-radius:999px;place-items:center;font-size:.7rem;display:grid}.wizard-progress li.is-current{opacity:1;background:var(--sun)}.wizard-progress li.is-done{opacity:1}.wizard-progress li.is-done:before{content:"✓";background:var(--pine);color:var(--paper-2)}[data-wizard]{margin-top:24px}fieldset[data-step]{border:3px solid var(--ink);background:var(--paper-2);box-shadow:var(--shadow);border-radius:20px;margin:0;padding:26px 24px}fieldset[data-step] legend{margin-left:-8px;padding:0 8px;font-family:Fredoka,sans-serif;font-size:1.3rem;font-weight:700}fieldset[data-step] .step-hint{color:#4a4437;margin-bottom:18px;font-size:.95rem}.field{margin-top:16px;display:block}.field:first-of-type{margin-top:0}.field>span.label{margin-bottom:6px;font-family:Fredoka,sans-serif;font-size:.98rem;font-weight:600;display:block}.field .opt{color:#6b6455;text-transform:uppercase;letter-spacing:.06em;font-family:Space Mono,monospace;font-size:.75rem;font-weight:400}.field input[type=text],.field input[type=email],.field input[type=tel],.field input[type=url],.field textarea,.field select{border:3px solid var(--ink);background:var(--paper);width:100%;color:var(--ink);border-radius:12px;padding:.8rem 1rem;font-family:Instrument Sans,system-ui,sans-serif;font-size:1rem}.field textarea{resize:vertical;min-height:84px}.field input:focus-visible,.field textarea:focus-visible,.field select:focus-visible{outline:3px solid var(--flame);outline-offset:2px}.field .hint{color:#6b6455;margin-top:6px;font-size:.85rem}.field-row{gap:16px;display:grid}@media (width>=520px){.field-row{grid-template-columns:1fr 1fr}}.code-list{gap:12px;margin-top:8px;display:grid}.code-row{border:3px solid var(--ink);background:var(--paper);border-radius:12px;grid-template-columns:1fr;gap:12px;padding:14px 16px;display:grid}@media (width>=520px){.code-row{grid-template-columns:minmax(9rem,12rem) 1fr auto;align-items:end}}.code-row .field>.label{font-size:.85rem}.code-remove{border:3px solid var(--ink);background:var(--paper-2);cursor:pointer;border-radius:10px;align-self:end;padding:.7rem .85rem;font-family:Space Mono,monospace;font-size:.9rem;line-height:1}.code-remove:hover{background:var(--flame);color:var(--paper-2)}.code-remove[hidden]{display:none}.radio-cards{gap:12px;margin-top:8px;display:grid}.radio-cards label{border:3px solid var(--ink);background:var(--paper);cursor:pointer;border-radius:12px;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.radio-cards label:has(input:checked){background:var(--sun);box-shadow:var(--shadow)}.radio-cards input{accent-color:var(--flame);flex:none;width:18px;height:18px;margin-top:3px}.radio-cards label>span{display:block}.radio-cards .rc-title{font-family:Fredoka,sans-serif;font-weight:600;display:block}.radio-cards .rc-desc{color:#4a4437;margin-top:2px;font-size:.88rem;display:block}.callout{border:3px solid var(--ink);background:var(--paper);border-radius:14px;margin-top:18px;padding:16px 18px;font-size:.92rem}.callout.pine{background:var(--pine);color:var(--paper-2)}.callout.sun{background:var(--sun)}.callout h3{margin-bottom:6px;font-family:Fredoka,sans-serif;font-size:1.02rem}.callout ol,.callout ul{gap:5px;margin:8px 0 0 1.1rem;display:grid}.callout code{background:#17140e14;border-radius:5px;padding:.1em .35em;font-family:Space Mono,monospace;font-size:.85em}.callout.pine code{background:#ffffff26}.consent{border:3px solid var(--ink);background:var(--paper);border-radius:12px;align-items:flex-start;gap:10px;margin-top:18px;padding:14px 16px;font-size:.9rem;line-height:1.5;display:flex}.consent input{width:18px;height:18px;accent-color:var(--flame);flex:none;margin-top:3px}.consent:has(input:checked){background:var(--sun)}.stub-note{border:3px dashed var(--flame);color:#8a2d12;background:#fff4ef;border-radius:12px;margin-top:18px;padding:12px 16px;font-family:Space Mono,monospace;font-size:.8rem}.area-check{align-items:center;gap:10px;min-height:1.4rem;margin-top:14px;font-family:Space Mono,monospace;font-size:.85rem;display:flex}.area-check[data-state=ok]{color:var(--pine-deep);font-weight:700}.area-check[data-state=checking]{color:#6b6455}.area-check[data-state=out]{color:#8a2d12;font-weight:700}.zone-badge{background:var(--sun);border:3px solid var(--ink);box-shadow:3px 3px 0 var(--ink);border-radius:10px;margin-top:12px;padding:.35rem .8rem;font-family:Fredoka,sans-serif;font-weight:700;display:inline-block}.review dl{grid-template-columns:1fr;gap:2px;margin-top:4px;display:grid}.review .row{border-bottom:2px solid #17140e1f;grid-template-columns:40% 1fr;gap:12px;padding:10px 0;display:grid}.review .row:last-child{border-bottom:none}.review dt{text-transform:uppercase;letter-spacing:.05em;color:#6b6455;padding-top:2px;font-family:Space Mono,monospace;font-size:.78rem}.review dd{word-break:break-word;font-size:.98rem}.review .row.edit dd a{font-family:Space Mono,monospace;font-size:.8rem}.price-box{border:3px solid var(--ink);background:var(--pine);color:var(--paper-2);border-radius:14px;margin-top:18px;padding:20px}.price-box .line{justify-content:space-between;gap:12px;padding:6px 0;font-size:.98rem;display:flex}.price-box .line.total{border-top:2px solid #ffffff4d;margin-top:6px;padding-top:12px;font-family:Fredoka,sans-serif;font-size:1.15rem;font-weight:700}.price-box .fine{color:#cfe3c8;margin-top:10px;font-family:Space Mono,monospace;font-size:.75rem}.wizard-nav{align-items:center;gap:12px;margin-top:22px;display:flex}.wizard-nav .spacer{flex:1}.wizard-nav .btn{border:3px solid var(--ink);background:var(--sun);color:var(--ink);cursor:pointer;box-shadow:var(--shadow);border-radius:12px;padding:.8rem 1.5rem;font-family:Fredoka,sans-serif;font-size:1rem;font-weight:600;transition:transform .12s,box-shadow .12s}.wizard-nav .btn:hover{box-shadow:var(--shadow-lg);transform:translate(-2px,-2px)}.wizard-nav .btn:active{box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.wizard-nav .btn--back{box-shadow:none;background:0 0}.wizard-nav .btn--back:hover{background:var(--paper-2);box-shadow:none;transform:none}.wizard-nav .btn--go{background:var(--flame);color:var(--paper-2)}.wizard-nav .btn[disabled]{opacity:.55;cursor:progress;box-shadow:var(--shadow);transform:none}.form-error{color:#8a2d12;background:#fff4ef;border:3px solid #8a2d12;border-radius:12px;margin-top:14px;padding:12px 16px;font-size:.92rem}.form-error[hidden]{display:none}.thanks{text-align:center;max-width:640px;margin:0 auto;padding:60px 24px 90px}.thanks .mark{border:3px solid var(--ink);background:var(--sun);width:96px;height:96px;box-shadow:var(--shadow);border-radius:22px;place-items:center;margin:0 auto 20px;font-size:2.6rem;display:grid}.thanks h1{font-family:Fredoka,sans-serif;font-size:clamp(2rem,6vw,3rem);font-weight:700}.thanks p{color:#3a352b;margin-top:14px;font-size:1.08rem}.thanks .next{text-align:left;border:3px solid var(--ink);background:var(--paper-2);box-shadow:var(--shadow);border-radius:16px;margin-top:30px;padding:20px 22px}.thanks .next h2{margin-bottom:8px;font-family:Fredoka,sans-serif;font-size:1.15rem}.thanks .next ol{gap:6px;margin-left:1.1rem;display:grid}.thanks .home-link{border:3px solid var(--ink);background:var(--paper-2);box-shadow:var(--shadow);border-radius:12px;margin-top:28px;padding:.7rem 1.3rem;font-family:Fredoka,sans-serif;font-weight:600;text-decoration:none;display:inline-block}.rules-block{border:3px solid var(--ink);background:var(--sun);box-shadow:var(--shadow-lg);border-radius:18px;margin-top:22px;padding:20px 22px}.rules-block h3{margin-bottom:14px;font-family:Fredoka,sans-serif;font-size:1.15rem;font-weight:700}.rule-item{align-items:flex-start;gap:12px;font-size:1rem;line-height:1.5;display:flex}.rule-item+.rule-item{border-top:2px solid #17140e40;margin-top:14px;padding-top:14px}.rule-mark{background:var(--ink);width:28px;height:28px;color:var(--sun);border-radius:999px;flex:none;place-items:center;font-family:Fredoka,sans-serif;font-size:.95rem;font-weight:700;display:grid}@media (prefers-reduced-motion:reduce){fieldset[data-step],.chooser a,.wizard-nav .btn{transition:none}}
