:root{
  --ink:#071124;--muted:#657080;--line:#D9DEE7;--red:#FF4038;--red-dark:#E22F28;--green:#19B68D;--purple:#8B5CF6;--blue:#5E83F6;--bg:#F5F6F8;--card:#fff;--soft:#F8FAFC;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}
body{display:flex;justify-content:center}
.phone-shell{width:min(100vw,430px);min-height:100vh;background:#fff;position:relative;overflow:hidden;box-shadow:0 0 0 1px rgba(15,23,42,.04)}
.top{height:76px;border-bottom:1px solid #d9dee4;display:flex;align-items:center;justify-content:space-between;padding:0 26px;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);position:sticky;top:0;z-index:20}
.top.simple{justify-content:center}.logo{width:143px;height:auto;object-fit:contain}.progress{display:flex;align-items:center;gap:11px;color:#5a6473;font-size:14px;font-weight:600}.track{width:84px;height:6px;border-radius:999px;background:#E7EAF0;overflow:hidden}.track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#FF4138,#FF6A62);transition:width .45s cubic-bezier(.2,.9,.2,1)}
.setup-main{padding:30px 24px 34px}.setup-main h1{font-size:31px;line-height:1.04;margin:0 0 9px;text-align:center;font-weight:820;letter-spacing:-.04em}.subtitle{margin:0 auto 24px;text-align:center;color:#647084;font-size:16px;line-height:1.45;max-width:315px}.wizard-step{display:none;animation:slideUp .34s cubic-bezier(.2,.9,.2,1) both}.wizard-step.active{display:block}@keyframes slideUp{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
.niche-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.niche-card{appearance:none;border:2px solid var(--line);background:#fff;border-radius:20px;min-height:118px;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:16px 10px;position:relative;cursor:pointer;text-align:center;transition:transform .18s cubic-bezier(.2,.9,.2,1),border-color .18s,box-shadow .18s,background .18s}.niche-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(15,23,42,.08)}.niche-card:active{transform:translateY(0)}.niche-card.selected,.niche-card[aria-pressed="true"]{border-color:var(--red);box-shadow:0 12px 34px rgba(255,64,56,.14);background:#fffafa}.niche-card.inspiration-card{border-style:dashed;border-color:#D6CBF5;background:linear-gradient(180deg,#FCFAFF,#F6F1FF)}.niche-card.inspiration-card.selected,.niche-card.inspiration-card[aria-pressed="true"]{border-style:solid;border-color:var(--red);background:#fffafa}.niche-icon{width:58px;height:58px;border-radius:17px;background:#F4F6F9;display:grid;place-items:center;flex:0 0 auto}.niche-icon.purple{background:#EFE8FF}.niche-icon svg{width:38px;height:38px}.niche-label{font-size:15px;font-weight:720;color:#111827;letter-spacing:-.02em;display:inline-flex;align-items:center;gap:6px}.niche-label em{font-style:normal;font-size:10px;padding:2px 6px;border-radius:999px;background:#EADFFF;color:#7C3AED;font-weight:850;letter-spacing:.02em}.niche-check{position:absolute;top:11px;right:11px;width:21px;height:21px;border:2px solid #D3D9E3;border-radius:50%;transition:.16s;opacity:0}.niche-card.selected .niche-check,.niche-card[aria-pressed="true"] .niche-check{opacity:1;border-color:var(--red);background:var(--red)}.niche-card.selected .niche-check:after,.niche-card[aria-pressed="true"] .niche-check:after{content:"";position:absolute;left:5px;top:2px;width:6px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.continue-btn,.red-btn{width:100%;height:58px;border:0;border-radius:17px;background:var(--red);color:white;font-weight:820;font-size:18px;letter-spacing:-.02em;margin-top:22px;cursor:pointer;box-shadow:0 14px 30px rgba(255,64,56,.26);transition:transform .16s,background .16s,box-shadow .16s}.continue-btn:hover,.red-btn:hover{background:var(--red-dark);transform:translateY(-1px);box-shadow:0 16px 34px rgba(255,64,56,.31)}.continue-btn:active,.red-btn:active{transform:translateY(1px)}.continue-btn span{font-size:21px;margin-left:5px}.finish-btn{margin-top:18px}.back-btn{display:inline-flex;align-items:center;border:0;background:#F3F5F8;color:#344052;padding:10px 14px;border-radius:999px;font-weight:750;margin-bottom:20px;cursor:pointer;text-decoration:none;font-size:15px}.selected-summary{border:1px solid #E5E9F0;background:#F8FAFC;border-radius:16px;padding:13px 15px;margin:0 0 18px;color:#334155;font-size:14px;line-height:1.35}.selected-summary b{color:var(--ink)}.store-name-label{display:block;font-size:14px;font-weight:780;color:#344052;margin:0 0 8px}.store-input{width:100%;height:60px;border:2px solid #DDE3EC;border-radius:18px;padding:0 18px;font-size:18px;font-weight:650;color:var(--ink);outline:none;transition:.18s;background:#fff}.store-input:focus{border-color:var(--red);box-shadow:0 0 0 5px rgba(255,64,56,.09)}.store-input.error-field{border-color:var(--red);box-shadow:0 0 0 5px rgba(255,64,56,.11)}
.ai-btn{width:100%;height:58px;border:2px solid #E6E1F9;border-radius:18px;background:linear-gradient(180deg,#FCFAFF,#F6F0FF);color:#201B3D;font-weight:820;font-size:16px;margin-top:14px;display:flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;transition:.18s}.ai-btn:hover{transform:translateY(-1px);box-shadow:0 14px 30px rgba(139,92,246,.13)}.ai-btn.loading{pointer-events:none;opacity:.86}.magic{font-size:21px;color:var(--purple);display:inline-block}.ai-btn.loading .magic{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.ai-btn em{font-style:normal;font-size:11px;padding:3px 7px;border-radius:999px;background:#ECE4FF;color:#6D28D9;font-weight:900}.name-chips{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:13px;transition:opacity .2s ease}.name-chips.fade-in{animation:chipsIn .32s cubic-bezier(.2,.9,.2,1) both}@keyframes chipsIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.name-chips button{border:2px solid #E1E6EF;background:#fff;border-radius:15px;padding:13px 10px;font-size:14px;font-weight:780;color:#202B3A;cursor:pointer;transition:.16s}.name-chips button:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(15,23,42,.06)}.name-chips button.selected{border-color:var(--red);background:#FFF6F5;color:#B42318}.inline-error{border:1px solid #FFD1CD;background:#FFF4F3;color:#B42318;border-radius:14px;padding:11px 13px;margin:0 0 13px;font-size:14px;font-weight:750;text-align:center}.name-section .inline-error{margin-top:12px;margin-bottom:0}.shake{animation:shake .42s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake{10%,90%{transform:translateX(-1px)}20%,80%{transform:translateX(3px)}30%,50%,70%{transform:translateX(-5px)}40%,60%{transform:translateX(5px)}}
.modal-backdrop{position:fixed;inset:0;background:rgba(5,13,28,.46);backdrop-filter:blur(10px);display:grid;place-items:center;padding:24px;z-index:50;animation:fade .2s both}.modal-backdrop[hidden]{display:none}.modal-card{width:min(100%,382px);background:#fff;border:1px solid #EEF2F7;box-shadow:0 30px 80px rgba(15,23,42,.30);border-radius:30px;padding:26px 22px 21px;text-align:center;position:relative;animation:modalIn .35s cubic-bezier(.2,.9,.2,1) both}.modal-x{position:absolute;right:16px;top:15px;width:34px;height:34px;border:0;border-radius:50%;background:#F0F3F7;color:#475569;font-size:23px;line-height:1;cursor:pointer}.eyebrow{margin:0 0 8px;color:#8B5CF6;font-size:13px;font-weight:880;text-transform:uppercase;letter-spacing:.08em}.modal-card h2{font-size:25px;letter-spacing:-.04em;margin:0 0 18px}.slot-window{height:74px;border-radius:22px;background:linear-gradient(180deg,#F8FAFF,#F1F5FF);border:1px solid #E2E8F0;overflow:hidden;display:grid;place-items:center;margin:0 0 16px;position:relative}.slot-window:before,.slot-window:after{content:"";position:absolute;left:18px;right:18px;height:1px;background:#D8DEEA}.slot-window:before{top:16px}.slot-window:after{bottom:16px}.slot-reel{font-size:31px;font-weight:900;letter-spacing:-.045em;color:#111827;transition:transform .16s,opacity .16s}.slot-reel.spinning{animation:slotTick .12s linear infinite}@keyframes slotTick{50%{transform:translateY(-8px);opacity:.45}}.modal-copy{min-height:61px;margin:0 0 17px;color:#58677A;font-size:15px;line-height:1.42}.modal-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:10px}.ghost-btn,.plain-btn{height:50px;border-radius:16px;font-weight:820;font-size:15px;cursor:pointer}.ghost-btn{border:1px solid #DDE4EE;background:#fff;color:#334155}.red-btn{height:50px;margin:0;font-size:15px;border-radius:16px}.plain-btn{border:0;background:transparent;color:#64748B;margin-top:10px;width:100%;height:38px}@keyframes fade{from{opacity:0}to{opacity:1}}@keyframes modalIn{from{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
.done-main{padding:58px 24px 36px;text-align:center}.done-main h1{font-size:32px;line-height:1.05;margin:8px 0 11px;font-weight:850;letter-spacing:-.045em}.done-copy{font-size:17px;line-height:1.45;color:#5F6D7E;margin:0 auto 14px}.done-copy b{color:#151D2D}.success-burst{width:88px;height:88px;margin:0 auto 4px;position:relative;animation:pop .54s cubic-bezier(.2,1.35,.28,1) both}.success-burst:before{content:"✓";position:absolute;inset:13px;border-radius:50%;background:linear-gradient(180deg,#23C993,#0EA779);display:grid;place-items:center;color:#fff;font-size:35px;font-weight:900;box-shadow:0 14px 30px rgba(25,182,141,.28)}.success-burst span,.success-burst i,.success-burst b,.success-burst em,.success-burst strong,.success-burst small{position:absolute;width:9px;height:9px;border-radius:50%;background:#FFCB45;animation:burst .9s .18s ease-out both}.success-burst span{left:4px;top:25px}.success-burst i{right:7px;top:19px;background:#5E83F6}.success-burst b{left:20px;bottom:4px;background:#FF4038}.success-burst em{right:18px;bottom:7px;background:#8B5CF6}.success-burst strong{left:42px;top:0;background:#19B68D}.success-burst small{right:0;bottom:36px;background:#FF9E45}@keyframes pop{from{transform:scale(.45);opacity:0}to{transform:scale(1);opacity:1}}@keyframes burst{from{transform:translate(0,0) scale(.2);opacity:0}40%{opacity:1}to{transform:translate(var(--x,0),var(--y,0)) scale(1);opacity:1}}.otter{display:block;width:262px;margin:0 auto 20px;filter:drop-shadow(0 18px 24px rgba(15,23,42,.08));animation:floatIn .7s .12s cubic-bezier(.2,.9,.2,1) both}@keyframes floatIn{from{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.info-card{display:flex;gap:15px;text-align:left;border-radius:22px;padding:17px 16px;margin:13px 0;border:1px solid #E5EAF1;background:#fff;box-shadow:0 10px 24px rgba(15,23,42,.045);animation:slideUp .45s both}.info-card.blue{animation-delay:.08s}.info-card h3{margin:1px 0 6px;font-size:17px;font-weight:830;letter-spacing:-.02em}.info-card p{margin:0;color:#617083;font-size:14px;line-height:1.38}.circle{width:50px;height:50px;border-radius:16px;background:#ECFFF9;display:grid;place-items:center;flex:0 0 auto}.blue .circle{background:#EEF3FF}.tip{display:flex;align-items:flex-start;gap:10px;text-align:left;background:#FFF8E9;border:1px solid #FFE6AA;border-radius:18px;padding:13px 14px;margin:17px 0 17px;color:#644A16}.tip p{margin:0;font-size:13px;line-height:1.35}.close-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:56px;border-radius:17px;background:var(--red);color:#fff;text-decoration:none;font-weight:850;font-size:17px;box-shadow:0 14px 30px rgba(255,64,56,.24)}.already{font-size:12px;color:#64748B;margin:13px 0 0}.home-indicator{width:134px;height:5px;border-radius:999px;background:#111;margin:10px auto 8px;opacity:.88}.error{background:#FFF4F3;color:#B42318;border:1px solid #FFD1CD;border-radius:16px;padding:12px 14px;margin:0 0 16px;font-weight:750;font-size:14px;text-align:center}
.admin{max-width:1080px;margin:30px auto;padding:24px;background:#fff;border-radius:18px;box-shadow:0 12px 32px rgba(15,23,42,.08);font-family:Inter,sans-serif}.admin h1{margin-top:0}.admin-form{display:flex;gap:10px;margin:14px 0;align-items:center;flex-wrap:wrap}.admin-form.vertical{display:grid;max-width:520px}.admin-form input{height:42px;border:1px solid #cbd5e1;border-radius:10px;padding:0 12px;font:inherit}.admin-form button{height:42px;border:0;border-radius:10px;padding:0 16px;background:#111827;color:#fff;font-weight:800;cursor:pointer}.admin table{border-collapse:collapse;width:100%;font-size:14px}.admin th,.admin td{border-bottom:1px solid #e5e7eb;text-align:left;padding:10px}.admin th[data-type]{user-select:none;white-space:nowrap;position:relative}.admin th[data-type]:hover{background:#F8FAFC}.admin th[data-arrow]::after{content:" "attr(data-arrow);color:#dc2626;font-size:11px}.tz-note{color:#64748b;font-size:12px;font-weight:600}.admin a{color:#dc2626}.status{display:inline-block;border-radius:999px;background:#f1f5f9;padding:4px 9px;font-weight:800;font-size:12px}.p1-registration-complete{background:#DCFCE7;color:#166534}.p1-registration-in-progress{background:#DBEAFE;color:#1D4ED8}.needs-intake{background:#FEF3C7;color:#92400E}.p1-awaiting-va,.failed{background:#FEE2E2;color:#991B1B}.events{padding-left:20px}.events li{margin:8px 0}.events small{display:block;color:#64748b;margin-top:2px}
@media (max-width:380px){.top{padding:0 18px}.logo{width:130px}.progress{gap:8px}.track{width:68px}.setup-main,.done-main{padding-left:18px;padding-right:18px}.name-chips{grid-template-columns:1fr}.setup-main h1,.done-main h1{font-size:29px}}
