:root{
  --void:#080a0e;--panel:#0e1219;--panel-warm:#12100b;--panel-raised:#151a23;
  --line:#252b35;--line-warm:#3b3225;--ink:#eef1f6;--dim:#8d96a5;--faint:#66707f;
  --bronze:#c8a066;--bronze-dark:#8a6b3e;--bronze-high:#e6cfa0;--teal:#4fd1b5;--red:#e06b5e;
}
*{box-sizing:border-box}
html{min-width:320px;background:var(--void);color:var(--ink)}
body{margin:0;min-height:100vh;padding:0;background-color:var(--void);color:var(--ink);font-family:"IBM Plex Mono","SFMono-Regular",Consolas,monospace;background-image:radial-gradient(900px 400px at 50% -8%,rgba(200,160,102,.1),transparent 72%),radial-gradient(1px 1px at 14% 17%,rgba(235,240,250,.44),transparent),radial-gradient(1px 1px at 84% 24%,rgba(235,240,250,.31),transparent),radial-gradient(1px 1px at 72% 72%,rgba(235,240,250,.2),transparent),radial-gradient(1px 1px at 28% 81%,rgba(235,240,250,.25),transparent);background-attachment:fixed}
button,input,select{font:inherit}[hidden]{display:none!important}
.wizard-shell{width:min(960px,calc(100% - 32px));margin:0 auto;padding:24px 0 54px}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:17px;border-bottom:1px solid var(--line)}
.brandhead{display:flex;align-items:center;gap:12px}.brandmark{width:34px;height:39px;display:block;flex:none;margin:0}.eye,.eyebrow{margin:0;color:var(--bronze);font-size:9px;letter-spacing:.25em;text-transform:uppercase}
.brandhead h1{margin:3px 0 0;font-family:"Oswald","Arial Narrow",sans-serif;font-size:30px;font-weight:700;line-height:1;text-transform:uppercase;letter-spacing:.035em}
.table-glance{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.table-glance span{border:1px solid var(--line);background:rgba(14,18,25,.72);color:var(--dim);padding:7px 9px;font-size:8px;text-transform:uppercase;letter-spacing:.09em}.table-glance b{color:var(--bronze-high);font-weight:500}
.prog{height:3px;margin:14px 0 0;border:0;border-radius:0;background:#2c261e}.prog b{display:block;height:100%;background:linear-gradient(90deg,var(--bronze-dark),var(--bronze-high));transition:width .24s ease}
.crumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin:10px 0 14px}.crumbs button{min-width:0;display:flex;align-items:center;gap:8px;border:1px solid transparent;background:transparent;color:var(--faint);padding:9px 8px;text-align:left;cursor:pointer}.crumbs button:disabled{cursor:not-allowed;opacity:.42}.crumbs button:not(:disabled):hover{background:rgba(255,255,255,.025)}.crumbs button i{display:grid;place-items:center;width:25px;height:25px;flex:none;border:1px solid var(--line);font-size:8px;font-style:normal}.crumbs button b{overflow:hidden;text-overflow:ellipsis;font-family:"Oswald","Arial Narrow",sans-serif;font-size:13px;text-transform:uppercase;letter-spacing:.04em}.crumbs button.on{border-color:var(--line-warm);background:var(--panel-warm);color:var(--ink)}.crumbs button.on i{border-color:var(--bronze);color:var(--bronze-high)}.crumbs button.done{color:var(--dim)}.crumbs button.done i{border-color:rgba(79,209,181,.4);color:var(--teal)}
.crumbs button.complete{color:var(--dim)}.crumbs button.complete i{border-color:rgba(79,209,181,.4);color:var(--teal)}
.setup-card{border:1px solid var(--line);background:rgba(10,13,18,.94);box-shadow:0 22px 70px rgba(0,0,0,.24)}
.card-heading{min-height:105px;display:flex;align-items:flex-end;justify-content:space-between;gap:34px;padding:25px 28px 21px;border-bottom:1px solid var(--line);background:linear-gradient(120deg,rgba(200,160,102,.045),transparent 58%)}.card-heading h2{margin:5px 0 0;font-family:"Oswald","Arial Narrow",sans-serif;font-size:34px;line-height:1;text-transform:uppercase;letter-spacing:.035em}.card-heading>p{max-width:430px;margin:0;color:var(--dim);font-size:10px;line-height:1.65;text-align:right}
.step-content{min-height:470px;padding:26px 28px 30px}.decision-block{border:1px solid var(--line);background:var(--panel);padding:18px;margin-bottom:12px}.decision-block.inset{background:#0b0f15}.decision-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--line)}.decision-title>span{font-family:"Oswald","Arial Narrow",sans-serif;font-size:17px;font-weight:600;text-transform:uppercase;letter-spacing:.045em}.decision-title>small{color:var(--bronze);font-size:8px;text-transform:uppercase;letter-spacing:.11em}
.count-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:7px}.count-grid button{height:50px;border:1px solid var(--line);background:#0b0e13;color:var(--dim);font-family:"Oswald","Arial Narrow",sans-serif;font-size:21px;font-weight:600;cursor:pointer}.count-grid button.on{border-color:var(--bronze);background:rgba(200,160,102,.1);color:var(--bronze-high);box-shadow:inset 0 -2px 0 var(--bronze)}
.context-note{margin:13px 0 0;color:var(--faint);font-size:9px;line-height:1.6}.context-note.strong{border-left:2px solid var(--bronze);background:var(--panel);padding:12px 14px;color:var(--dim)}
.optional-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.optional-row>div{display:flex;align-items:center;gap:12px}.optional-icon{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line-warm);color:var(--bronze)}.optional-row b,.optional-row small{display:block}.optional-row b{font-size:10px;font-weight:500}.optional-row small{margin-top:4px;color:var(--faint);font-size:9px}.optional-row button,.inline-actions button{border:1px solid var(--bronze-dark);background:transparent;color:var(--bronze);padding:9px 12px;font-size:9px;text-transform:uppercase;cursor:pointer}
.names-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.seat{display:grid;grid-template-columns:36px 1fr;align-items:center;gap:0;border:1px solid var(--line);background:#0b0e13;padding:0;margin:0}.seat .p{width:auto;color:var(--bronze);font-size:9px;text-align:center}.seat input{height:40px;width:100%;border:0;border-left:1px solid var(--line);background:transparent;color:var(--ink);padding:0 11px;font-size:10px;outline:none}.inline-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:8px}
.tog{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 3px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-align:left;cursor:pointer}.tog:last-child{border-bottom:0}.tog.lock{opacity:.62;cursor:not-allowed}.tog .tn{font-size:11px}.tog .ts{display:block;margin-top:4px;color:var(--faint);font-size:9px;line-height:1.45}.sw{width:34px;height:18px;border:1px solid #46505e;display:flex;align-items:center;padding:2px;flex:none}.sw i{display:block;width:11px;height:11px;background:#46505e}.tog.on .sw{justify-content:flex-end;border-color:var(--bronze)}.tog.on .sw i{background:var(--bronze)}.toggle-badge{margin-left:7px;border:1px solid var(--bronze-dark);color:var(--bronze);padding:2px 5px;font-size:7px;text-transform:uppercase}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.advanced-disclosure{margin-top:12px;border:1px solid var(--line);background:var(--panel)}.disclosure-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 17px;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.disclosure-head b,.disclosure-head small{display:block}.disclosure-head b{font-family:"Oswald","Arial Narrow",sans-serif;font-size:15px;text-transform:uppercase;letter-spacing:.045em}.disclosure-head small{color:var(--faint);font-size:8px;margin-top:3px}.disclosure-head em{color:var(--bronze);font-size:8px;font-style:normal;text-transform:uppercase}.advanced-body{border-top:1px solid var(--line);padding:15px 17px 17px;background:#0b0f15}
.option-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.option-card{position:relative;display:grid;grid-template-columns:18px 1fr auto;align-items:start;gap:10px;min-width:0;border:1px solid var(--line);background:var(--panel);color:var(--ink);padding:15px;text-align:left;cursor:pointer}.option-card .radio{display:grid;place-items:center;width:14px;height:14px;margin-top:2px;border:1px solid #46505e;border-radius:50%}.option-card.on{border-color:var(--bronze);background:rgba(200,160,102,.07);box-shadow:inset 0 -2px 0 rgba(200,160,102,.45)}.option-card.on .radio:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--bronze)}.option-card b,.option-card small{display:block}.option-card b{font-family:"Oswald","Arial Narrow",sans-serif;font-size:16px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.option-card small{margin-top:4px;color:var(--faint);font-size:8.5px;line-height:1.5}.option-card em{border:1px solid var(--bronze-dark);color:var(--bronze);padding:3px 5px;font-size:7px;font-style:normal;text-transform:uppercase;white-space:nowrap}.option-card.disabled{opacity:.55;cursor:not-allowed}.map-options .option-card:last-child,.faction-options .option-card:last-child{grid-column:1/-1}
.seg{display:flex;flex-wrap:wrap;gap:6px}.seg button{border:1px solid var(--line);background:#0b0e13;color:var(--dim);padding:9px 12px;font-size:10px;cursor:pointer}.seg button.on{border-color:var(--bronze);background:rgba(200,160,102,.1);color:var(--bronze-high)}.seg button:disabled{opacity:.45;cursor:not-allowed}
.subblk{border:1px dashed var(--line);background:#0b0e13;padding:12px;margin-top:10px}.subblk .cap{margin-bottom:8px;color:var(--bronze-high);font-size:8px;text-transform:uppercase;letter-spacing:.1em}.note{margin-top:9px;border-left:2px solid var(--bronze-dark);background:var(--panel-warm);color:var(--dim);padding:10px 12px;font-size:9px;line-height:1.6}.note.error{border-left-color:var(--red);color:#e9a097}
.impact-callout{margin:12px 0;border:1px solid var(--line-warm);border-left:3px solid var(--bronze);background:var(--panel-warm);padding:16px 18px}.impact-callout b{display:block;font-family:"Oswald","Arial Narrow",sans-serif;font-size:17px;text-transform:uppercase;letter-spacing:.04em}.impact-callout p{margin:6px 0 0;color:var(--dim);font-size:9px;line-height:1.65}
.split-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-label{display:block;margin-bottom:7px;color:var(--bronze-high);font-size:8px;text-transform:uppercase;letter-spacing:.1em}.select-control{width:100%;height:42px;border:1px solid var(--line);background:#080b10;color:var(--ink);padding:0 10px;font-size:10px}
.num-stepper{display:inline-flex;align-items:center;gap:10px}.num-stepper button{width:36px;height:36px;border:1px solid var(--bronze-dark);background:#0b0e13;color:var(--bronze);font-size:17px;cursor:pointer}.num-stepper b{min-width:36px;text-align:center;font-family:"Oswald";font-size:21px}.numfield{display:flex;align-items:center;gap:10px;margin-top:12px}.numfield input{width:110px;border:1px solid var(--bronze);background:#0b0e13;color:var(--ink);padding:9px;text-align:center;font-family:"Oswald";font-size:18px}.numfield span{color:var(--faint);font-size:9px;text-transform:uppercase}
.score-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.score-card{display:grid;grid-template-columns:18px auto 1fr;align-items:center;gap:10px;border:1px solid var(--line);background:#0b0e13;color:var(--ink);padding:14px;text-align:left;cursor:pointer}.score-card.on{border-color:var(--bronze);background:rgba(200,160,102,.08)}.score-card .radio{width:14px;height:14px;border:1px solid #46505e;border-radius:50%}.score-card.on .radio{box-shadow:inset 0 0 0 3px #0b0e13;background:var(--bronze)}.score-card b{font-family:"Oswald";font-size:25px;color:var(--bronze-high)}.score-card small{color:var(--faint);font-size:8px;text-transform:uppercase}.number-pills{display:flex;gap:7px}.number-pills button{display:flex;align-items:center;justify-content:center;min-width:68px;border:1px solid var(--line);background:#0b0e13;color:var(--dim);padding:10px;cursor:pointer}.number-pills button.on{border-color:var(--bronze);color:var(--bronze-high);background:rgba(200,160,102,.08)}
.review-intro{display:flex;align-items:center;gap:12px;border:1px solid rgba(79,209,181,.3);background:rgba(79,209,181,.045);padding:14px 16px;margin-bottom:12px}.review-intro>span{display:grid;place-items:center;width:28px;height:28px;border:1px solid rgba(79,209,181,.3);color:var(--teal)}.review-intro b{font-family:"Oswald";font-size:17px;text-transform:uppercase}.review-intro p{margin:3px 0 0;color:var(--dim);font-size:9px}.summary-list{display:grid;gap:6px}.review{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:12px;border:1px solid var(--line);background:var(--panel);padding:12px 14px;margin:0}.review-check{width:27px;height:27px;display:grid;place-items:center;border:1px solid rgba(79,209,181,.32);color:var(--teal)}.review .rk{color:var(--bronze);font-size:7px;text-transform:uppercase;letter-spacing:.12em}.review .rv{margin-top:2px;font-family:"Oswald";font-size:15px;text-transform:uppercase;letter-spacing:.035em}.review .rd{margin-top:2px;color:var(--faint);font-size:8px}.redit{float:none;border:0;background:transparent;color:var(--bronze);font-size:8px;text-transform:uppercase;text-decoration:none;cursor:pointer}.review-note{margin-top:12px;border-left:3px solid var(--bronze);background:var(--panel-warm);padding:13px 15px}.review-note b{font-family:"Oswald";font-size:14px;text-transform:uppercase}.review-note p{margin:4px 0 0;color:var(--dim);font-size:8.5px;line-height:1.6}
.wizard-footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;border-top:1px solid var(--line);padding:16px 28px;background:var(--panel)}.wizard-footer button{min-height:40px;padding:0 16px;text-transform:uppercase;font-size:10px;cursor:pointer}.wizard-footer .back{justify-self:start;border:1px solid var(--line);background:transparent;color:var(--dim)}.wizard-footer .back:disabled{opacity:.35;cursor:not-allowed}.wizard-footer>span{color:var(--faint);font-size:8px}.wizard-footer .next{justify-self:end;min-width:120px;border:1px solid var(--bronze);background:linear-gradient(180deg,#d9b87f,#a9814c);color:#241a09;font-weight:700}.wizard-footer .next:hover{filter:brightness(1.08)}
.reset-link{display:flex;align-items:center;gap:6px;margin:12px auto 0;border:0;background:transparent;color:var(--faint);font-size:8px;text-transform:uppercase;cursor:pointer}.vbadge{position:fixed;right:8px;bottom:6px;font-size:9px;letter-spacing:.08em;color:#3a4250;z-index:5;pointer-events:none}
.modal-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:18px;background:rgba(4,6,9,.82)}.confirm-dialog{width:min(500px,100%);border:1px solid var(--bronze-dark);background:#0d1118;color:var(--ink);padding:24px;box-shadow:0 25px 80px rgba(0,0,0,.55)}.confirm-dialog h2{margin:5px 0 8px;font-family:"Oswald";font-size:26px;text-transform:uppercase}.confirm-dialog>p{margin:0;color:var(--dim);font-size:10px;line-height:1.6}.confirm-facts{display:flex;gap:6px;flex-wrap:wrap;margin:18px 0}.confirm-facts span{border:1px solid var(--line);background:var(--panel);padding:7px 9px;color:var(--bronze-high);font-size:8px;text-transform:uppercase}.confirm-actions{display:flex;justify-content:flex-end;gap:8px}.confirm-actions button{min-height:40px;padding:0 14px;text-transform:uppercase;font-size:9px;cursor:pointer}.confirm-actions .keep{border:1px solid var(--line);background:transparent;color:var(--dim)}.confirm-actions .create{border:1px solid var(--bronze);background:linear-gradient(180deg,#d9b87f,#a9814c);color:#241a09;font-weight:700}
.errbox{border:1px solid #b3563f;background:rgba(179,86,63,.12);color:#e8926f;font-size:11px;line-height:1.5;padding:10px 12px;margin-top:12px}
.success-shell{position:relative;width:min(620px,calc(100% - 28px));min-height:100vh;margin:0 auto;display:grid;place-items:center;padding:40px 0;overflow:hidden}.success-shell:before,.success-shell:after{content:"";position:fixed;left:50%;top:50%;width:55vmax;height:55vmax;transform:translate(-50%,-50%);border:1px solid rgba(200,160,102,.05);clip-path:polygon(50% 0,94% 25%,94% 75%,50% 100%,6% 75%,6% 25%);pointer-events:none}.success-shell:after{width:38vmax;height:38vmax;border-color:rgba(200,160,102,.08)}.created-card{position:relative;z-index:1;width:100%;border:1px solid var(--line-warm);border-top:3px solid var(--bronze);background:rgba(14,18,25,.97);padding:34px;box-shadow:0 30px 90px rgba(0,0,0,.45)}.created-head{text-align:center}.created-head img{width:52px;height:60px}.created-head h1{margin:6px 0 8px;font-family:"Oswald";font-size:42px;text-transform:uppercase}.created-copy{max-width:52ch;margin:0 auto;color:var(--dim);font-size:10px;line-height:1.6}.codebox{margin:25px 0 10px;border:1px solid var(--line-warm);border-left:3px solid var(--bronze);background:var(--panel-warm);padding:18px}.codelbl{color:var(--bronze);font-size:7px;text-transform:uppercase;letter-spacing:.16em}.codeval{display:block;margin-top:7px;color:var(--bronze-high);font-family:"Oswald";font-size:31px;text-transform:uppercase;letter-spacing:.06em}.codeval em{margin:0 7px;color:#695537;font-style:normal}.where{margin:6px 0 0;color:var(--faint);font-size:8px;line-height:1.5}.coderow{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.obtn{min-height:40px;border:1px solid var(--line);background:transparent;color:var(--bronze);font-size:9px;text-transform:uppercase;cursor:pointer}.rescap{margin:20px 0 8px;color:var(--faint);font-size:8px;text-transform:uppercase;letter-spacing:.14em}.bigact{display:flex;align-items:center;gap:14px;width:100%;border:1px solid var(--line);border-left:3px solid var(--teal);background:var(--panel);color:var(--ink);padding:15px 17px;text-align:left;cursor:pointer}.bigact+.bigact{margin-top:7px;border-left-color:#7c8cf0}.bigact .t{font-family:"Oswald";font-size:16px;text-transform:uppercase}.bigact .d{color:var(--faint);font-size:9px}.bigact .arw{margin-left:auto;color:var(--teal)}.created-card details{margin-top:8px;border:1px solid var(--line);background:var(--panel)}.created-card summary{display:flex;padding:12px 14px;color:var(--dim);font-size:10px;cursor:pointer}.created-card summary:after{content:"+";margin-left:auto}.created-card details[open] summary:after{content:"−"}.dinner{padding:0 14px 14px}.subnote{margin-bottom:10px;color:var(--faint);font-size:9px;line-height:1.5}.linkrow{display:flex;align-items:center;gap:8px;margin-top:6px}.linkrow .who{width:70px;color:var(--faint);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.linkrow .lk{flex:1;min-width:0;border:1px solid var(--line);padding:7px;color:var(--bronze-high);font-size:8px;word-break:break-all}.linkrow .cp{border:1px solid var(--bronze-dark);background:transparent;color:var(--bronze);padding:7px;font-size:8px;cursor:pointer}.idline{margin-top:18px;border-top:1px solid var(--line);padding-top:10px;color:#4a5360;font-size:8px}.idline span{color:var(--dim);user-select:all}
@media(max-width:760px){.wizard-shell{width:min(100% - 20px,960px);padding-top:15px}.topbar{align-items:flex-start}.table-glance span:nth-child(2){display:none}.crumbs{grid-template-columns:repeat(3,1fr)}.crumbs button{padding:7px 5px}.card-heading{display:block;min-height:0;padding:21px 19px 18px}.card-heading>p{margin-top:10px;text-align:left}.step-content{min-height:0;padding:19px}.wizard-footer{padding:14px 19px}.option-grid{grid-template-columns:1fr}.map-options .option-card:last-child,.faction-options .option-card:last-child{grid-column:auto}}
@media(max-width:520px){.brandhead h1{font-size:24px}.brandhead .eye{font-size:7px}.table-glance{max-width:110px}.table-glance span{font-size:7px;padding:6px}.crumbs{gap:2px}.crumbs button{gap:5px}.crumbs button i{width:21px;height:21px}.crumbs button b{font-size:10px}.count-grid{grid-template-columns:repeat(3,1fr)}.optional-row{display:block}.optional-row>button{width:100%;margin-top:14px}.names-grid,.grid2,.split-controls,.score-options{grid-template-columns:1fr}.score-card{grid-template-columns:18px 45px 1fr}.review{grid-template-columns:30px 1fr}.redit{grid-column:1/-1;border-top:1px solid var(--line);padding-top:10px}.wizard-footer{grid-template-columns:1fr 1fr}.wizard-footer>span{display:none}.wizard-footer button{width:100%}.created-card{padding:25px 18px}.coderow{grid-template-columns:1fr}.confirm-actions{display:grid;grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
