:root{--ob-primary:#d9ad54;--ob-accent:#f0cf7a}
.onboarding-body{min-height:100vh;overflow:auto;background:radial-gradient(circle at 50% 0,rgba(217,173,84,.055),transparent 32%),#070707;color:#f7f5ef}
.onboarding-shell{width:min(980px,92vw);margin:0 auto;padding:34px 0 80px;display:grid;gap:18px}
.wizard-header{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:4px 2px}.wizard-header h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.15rem,5vw,3.5rem);margin:0 0 6px}.wizard-header p{margin:0}.account-chip{border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:9px 13px;color:#aaa69c;white-space:nowrap}.account-chip.good{border-color:rgba(75,180,110,.45);color:#a8e7bb}
.wizard-progress{background:#0e0e0d;border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:14px 16px}.wizard-progress-top{display:flex;justify-content:space-between;gap:16px;margin-bottom:10px;font-size:.9rem}.wizard-progress-top span{color:#a8a49a}.progress-track{height:5px;background:#24231f;border-radius:999px;overflow:hidden}.progress-fill{height:100%;width:14.285%;background:linear-gradient(90deg,var(--ob-primary),var(--ob-accent));border-radius:999px;transition:width .25s ease}.progress-dots{display:flex;justify-content:space-between;margin-top:10px}.progress-dot{width:8px;height:8px;border-radius:50%;background:#33312c}.progress-dot.active{background:var(--ob-primary)}
.wizard-card{background:linear-gradient(145deg,#151411,#0c0c0b);border:1px solid rgba(217,173,84,.24);border-radius:22px;padding:28px;box-shadow:0 20px 60px rgba(0,0,0,.28)}.wizard-card h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.65rem,3vw,2.2rem);margin:0 0 5px}.step-intro{display:flex;gap:16px;align-items:flex-start;margin-bottom:22px}.step-icon{width:44px;height:44px;flex:0 0 44px;border:1px solid rgba(217,173,84,.35);background:rgba(217,173,84,.08);color:var(--ob-accent);display:grid;place-items:center;border-radius:13px;font-weight:900}.step-intro .eyebrow{margin:0 0 4px}.step-intro .muted{margin:0}.field-grid{display:grid;gap:15px}.field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-grid{margin-top:6px}.wizard-card label{display:grid;gap:7px;font-weight:800}.wizard-card label small,.wizard-card small{font-weight:500;color:#aaa69c}.optional{font-weight:500;color:#8f8b82;font-size:.86rem}.auth-choice-row{display:flex;gap:10px;justify-content:flex-end;margin-top:18px;flex-wrap:wrap}.setup-message{min-height:1.25em;color:#ffb193;margin:12px 0 0}.setup-message.good{color:#9ce2b1}
.slug-wrap{display:grid;grid-template-columns:auto 1fr;align-items:center;border:1px solid rgba(255,255,255,.13);border-radius:12px;background:#171713;overflow:hidden}.slug-wrap span{padding-left:12px;color:#777}.slug-wrap .field{border:0;border-radius:0}
.branding-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.9fr);gap:22px;align-items:stretch}.branding-controls{display:grid;gap:16px}.logo-drop{border:1px dashed rgba(255,255,255,.2);border-radius:16px;padding:20px;min-height:150px;place-content:center;text-align:center;background:rgba(255,255,255,.015)}.logo-title{font-size:1rem}.logo-drop input{margin:10px auto 4px;max-width:100%}.logo-help{font-size:.8rem}.color-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.color-control{display:grid;grid-template-columns:54px 1fr;gap:9px;align-items:center}.color-control input[type=color]{width:54px;height:46px;padding:0;border:0;background:transparent}.preview-wrap{display:grid;gap:7px}.preview-label{font-size:.72rem;letter-spacing:.18em;color:#8f8a80;font-weight:900}.brand-preview{min-height:270px;border:1px solid rgba(255,255,255,.1);border-radius:19px;padding:24px;background:linear-gradient(160deg,#10100f,#080808);display:grid;place-items:center;align-content:center;gap:10px;text-align:center}.brand-preview small{letter-spacing:.17em;font-size:.68rem}.brand-preview strong{font-family:Georgia,"Times New Roman",serif;font-size:1.4rem}.brand-preview button{border:2px solid var(--ob-primary);background:color-mix(in srgb,var(--ob-primary) 14%,transparent);color:white;border-radius:12px;padding:10px 20px;font-weight:900}.preview-logo{width:84px;height:84px;border-radius:16px;border:1px solid rgba(255,255,255,.12);display:grid;place-items:center;color:#777;font-size:.7rem;background-size:contain;background-repeat:no-repeat;background-position:center}
.rules-layout{display:grid;grid-template-columns:1fr 1fr;gap:16px}.settings-panel{border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:17px;background:#10100e}.settings-panel h3{margin:0 0 14px;font-size:1rem}.module-list{display:grid;gap:9px}.module-option{display:grid!important;grid-template-columns:auto 1fr!important;align-items:center;gap:11px!important;padding:11px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#151512}.module-option input{width:20px;height:20px}.module-option span{display:grid;gap:2px}.module-option small{font-size:.76rem}.module-option.disabled{opacity:.55}
.hours-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:13px}.hours-grid{display:grid;gap:8px}.hours-row{display:grid;grid-template-columns:120px 94px 1fr 1fr;gap:10px;align-items:center;border:1px solid rgba(255,255,255,.08);padding:10px 12px;border-radius:13px;background:#10100e}.hours-row>strong{font-size:.9rem}.hours-closed{display:flex!important;grid-template-columns:auto!important;flex-direction:row;align-items:center;gap:7px!important;font-weight:700!important}.hours-row .field{min-width:0}
.staff-rows{display:grid;gap:10px}.staff-row{display:grid;grid-template-columns:1fr 150px 170px auto;gap:10px;align-items:end;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px;background:#10100e}.staff-row .remove-staff{height:47px}.add-staff-btn{width:100%;border:1px dashed rgba(217,173,84,.35);background:rgba(217,173,84,.04);color:#e6c56f;border-radius:13px;padding:14px;font-weight:900;margin-top:12px}
.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.review-card{border:1px solid rgba(255,255,255,.08);background:#10100e;border-radius:14px;padding:14px;display:grid;gap:4px}.review-card small{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}.review-card strong{font-size:1rem}.review-card.wide{grid-column:1/-1}.create-note{margin:16px 0 12px;border:1px solid rgba(217,173,84,.18);background:rgba(217,173,84,.045);border-radius:12px;padding:12px;color:#aaa69c;font-size:.86rem}.launch-btn{width:100%;font-size:1.05rem;padding:14px 26px}.wizard-nav{display:flex;justify-content:space-between;gap:12px;margin-top:14px}.wizard-nav button{min-width:125px}
.success-setup{text-align:center;padding:42px}.success-setup h2{font-size:2rem}.success-links{display:flex;gap:10px;justify-content:center;margin-top:18px;flex-wrap:wrap}.success-icon{width:64px;height:64px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;background:rgba(75,180,110,.12);border:1px solid rgba(75,180,110,.35);color:#9ce2b1;font-size:1.8rem;font-weight:900}
.password-wrap{position:relative}.password-wrap .field{width:100%;padding-right:52px}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:38px;height:38px;border:0;border-radius:9px;background:transparent;color:#c9c5bb;display:grid;place-items:center;cursor:pointer}.password-toggle:hover,.password-toggle:focus-visible{background:rgba(255,255,255,.06);color:#fff;outline:1px solid rgba(217,173,84,.45)}.password-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.password-toggle.is-visible svg circle{fill:currentColor;stroke:currentColor}
@media(max-width:760px){.wizard-header{align-items:flex-start;flex-direction:column}.field-grid.two,.branding-layout,.rules-layout,.review-grid,.color-pair{grid-template-columns:1fr}.hours-toolbar{align-items:flex-start;flex-direction:column}.hours-row{grid-template-columns:1fr 90px 1fr 1fr}.staff-row{grid-template-columns:1fr 1fr}.staff-row .remove-staff{grid-column:1/-1}.wizard-card{padding:20px}.wizard-progress-top{font-size:.82rem}}
@media(max-width:520px){.hours-row{grid-template-columns:1fr 90px}.hours-row .open,.hours-row .close{grid-column:auto}.wizard-nav{position:sticky;bottom:0;background:rgba(7,7,7,.92);backdrop-filter:blur(14px);padding:10px 0}.staff-row{grid-template-columns:1fr}}

.wizard-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.cancel-setup-link,.cancel-setup-btn{border:0;background:transparent;color:#aaa69c;font-weight:800;cursor:pointer;padding:10px 8px;border-radius:10px}.cancel-setup-link:hover,.cancel-setup-link:focus-visible,.cancel-setup-btn:hover,.cancel-setup-btn:focus-visible{color:#fff;background:rgba(255,255,255,.055);outline:1px solid rgba(255,255,255,.08)}.wizard-nav-left{display:flex;gap:10px;align-items:center}.review-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.review-edit{border:0;background:transparent;color:var(--ob-accent);font-weight:900;font-size:.8rem;padding:4px 0;cursor:pointer}.review-edit:hover,.review-edit:focus-visible{text-decoration:underline;outline:none}.review-card span{color:#aaa69c;font-size:.82rem}@media(max-width:760px){.wizard-header-actions{justify-content:flex-start}.wizard-nav-left{gap:4px}}@media(max-width:520px){.wizard-nav-left{display:grid;grid-template-columns:auto auto}.wizard-nav button{min-width:0}.cancel-setup-btn{font-size:.82rem}}

/* v6 iPad/responsive onboarding fixes */
#setup-form,.wizard-card,.field-grid,.field-grid>label,.settings-panel,.rules-layout,.hours-grid,.hours-row,.staff-row,.branding-layout,.branding-controls{min-width:0}
.wizard-card .field,.wizard-card input,.wizard-card select{box-sizing:border-box;max-width:100%;min-width:0;width:100%}
.field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.rules-layout{grid-template-columns:repeat(2,minmax(0,1fr))}
.hours-row{grid-template-columns:minmax(105px,120px) minmax(88px,94px) minmax(0,1fr) minmax(0,1fr)}
.hours-row .open,.hours-row .close{width:100%;min-width:0}
.staff-row{grid-template-columns:minmax(0,1fr) minmax(120px,150px) minmax(145px,170px) auto}
.staff-row>label{min-width:0}
.slug-wrap{grid-template-columns:auto minmax(0,1fr)}
.color-control{grid-template-columns:54px minmax(0,1fr)}
@media(max-width:900px){.rules-layout{grid-template-columns:1fr}.staff-row{grid-template-columns:minmax(0,1fr) 130px 150px auto}.hours-row{grid-template-columns:105px 88px minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:760px){.staff-row{grid-template-columns:minmax(0,1fr) minmax(110px,.45fr)}.staff-row label:nth-child(3){grid-column:1/2}.staff-row .remove-staff{grid-column:2/3}.hours-row{grid-template-columns:100px 86px minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:600px){.hours-row{grid-template-columns:1fr auto}.hours-row .open,.hours-row .close{grid-column:auto}.staff-row{grid-template-columns:1fr}.staff-row label:nth-child(3),.staff-row .remove-staff{grid-column:auto}}

/* v7 owner PIN emphasis + iPad-safe branding */
.owner-pin-setup{margin-top:22px;padding:18px;border:1px solid rgba(217,173,84,.24);border-radius:16px;background:rgba(217,173,84,.035);display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px;align-items:end;min-width:0}
.owner-pin-copy h3{margin:2px 0 7px;font-size:1.05rem}.owner-pin-copy p{margin:0}.owner-pin-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}.owner-pin-fields label{min-width:0}
.logo-drop{overflow:hidden}.logo-drop input[type=file]{display:block;width:100%;max-width:100%;font-size:.86rem;overflow:hidden}.branding-controls,.preview-wrap,.color-pair,.color-control{min-width:0}.color-control .field{min-width:0;width:100%}
@media(max-width:1100px){.branding-layout{grid-template-columns:1fr}.brand-preview{min-height:220px}.owner-pin-setup{grid-template-columns:1fr}.owner-pin-fields{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.owner-pin-fields{grid-template-columns:1fr}.logo-drop{padding:16px}.color-pair{grid-template-columns:1fr}}

.auth-help-row{display:flex;justify-content:center;margin-top:10px}
.text-link-btn{appearance:none;border:0;background:transparent;color:#d9b55f;font:inherit;font-weight:800;cursor:pointer;padding:4px 0;text-align:center}
.text-link-btn:hover{text-decoration:underline}
