:root{font-family:Inter,ui-rounded,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#20233a;background:#fff8e7;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 12% 12%,rgba(255,122,168,.22),transparent 24rem),radial-gradient(circle at 88% 22%,rgba(66,198,255,.22),transparent 24rem),linear-gradient(135deg,#fff8e7,#e9fbff 48%,#fff1f7)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{min-height:100vh}.top-bar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem clamp(1rem,4vw,2.5rem);background:#ffffffdb;border-bottom:3px solid rgba(32,35,58,.08);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.brand-button,.pill-button,.primary-action,.secondary-action,.danger-action,.icon-button{min-height:44px;border:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font-weight:800;color:#20233a}.brand-button{background:transparent;font-size:clamp(1rem,2.4vw,1.35rem)}.top-actions,.welcome-actions,.join-actions,.result-actions,.modal-actions,.step-nav,.form-footer{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center}.pill-button,.secondary-action{background:#fff;border:3px solid rgba(32,35,58,.1);padding:.8rem 1.05rem;box-shadow:0 8px #20233a14}.pill-button.is-on{background:#ddffe9;border-color:#65c984}.primary-action,.draw-button{border:0;border-radius:999px;min-height:54px;display:inline-flex;align-items:center;justify-content:center;gap:.65rem;padding:.95rem 1.35rem;background:linear-gradient(135deg,#ffd166,#ff7aa8);color:#2f1534;font-size:1rem;font-weight:900;box-shadow:0 10px #d34c7b38;transition:transform .16s ease,box-shadow .16s ease}.primary-action:hover,.secondary-action:hover,.draw-button:hover,.danger-action:hover{transform:translateY(-2px)}.danger-action{background:#ffe3e3;color:#8b1f1f;border:3px solid #ffb3b3;padding:.8rem 1.05rem}.icon-button{width:44px;padding:0;background:#fff;border:3px solid rgba(32,35,58,.1)}.icon-button.danger{color:#a82424;background:#fff0f0}.welcome-page{min-height:100vh;padding:clamp(1rem,4vw,2.5rem);position:relative;overflow:hidden}.welcome-hero{position:relative;min-height:min(780px,calc(100vh - 3rem));border-radius:28px;overflow:hidden;display:grid;align-items:end;box-shadow:0 24px 70px #2a20462e;isolation:isolate}.welcome-hero img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:-2}.welcome-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(0deg,rgba(255,248,231,.94) 0%,rgba(255,248,231,.54) 38%,transparent 72%);z-index:-1}.welcome-copy{max-width:760px;padding:clamp(1.25rem,5vw,4rem)}.welcome-copy h1{margin:.5rem 0;font-size:clamp(2.4rem,8vw,5.7rem);line-height:.94;letter-spacing:0;color:#26143d}.welcome-copy p{margin:0 0 1.4rem;font-size:clamp(1.25rem,3vw,2rem);font-weight:800}.sticker,.mini-badge,.together-label,.count-chip,.zone-label,.team-number{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.36rem .7rem;font-weight:900;background:#fff;border:2px solid rgba(32,35,58,.09)}.floating-shape{position:absolute;width:4.5rem;height:4.5rem;border-radius:40% 60% 55% 45%;animation:bob 5s ease-in-out infinite;opacity:.72}.shape-one{background:#ff7aa8;top:1.5rem;left:4%}.shape-two{background:#7bd66f;right:7%;bottom:8%;animation-delay:.7s}.shape-three{background:#ffd166;right:22%;top:7%;animation-delay:1.2s}@keyframes bob{50%{transform:translateY(-16px) rotate(8deg)}}.draw-page{width:min(1220px,100%);margin:0 auto;padding:clamp(1rem,3vw,2rem)}.step-progress{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.6rem;padding:0;margin:0 0 1.2rem}.step-progress button{width:100%;min-height:72px;border:3px solid rgba(32,35,58,.08);border-radius:22px;background:#fff;box-shadow:0 8px #20233a0f;display:grid;place-items:center;gap:.15rem;font-weight:900}.step-progress li.active button{background:#fff0b8;border-color:#f4b942}.step-progress li.done button{background:#ddffe9;border-color:#65c984}.step-stage{min-height:520px;padding:clamp(1rem,3vw,1.6rem);background:#ffffffb3;border:3px solid rgba(32,35,58,.08);border-radius:26px;box-shadow:0 18px 45px #2a20461c}.section-heading{margin-bottom:1rem}.section-heading h2{margin:.45rem 0 .2rem;font-size:clamp(1.75rem,4vw,3rem);line-height:1.03;letter-spacing:0}.section-heading p{margin:0;color:#596072;font-size:1.08rem;font-weight:700}.participant-form{display:grid;gap:1rem;margin-bottom:1.2rem}.friend-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.8rem}.friend-input-row.with-email{grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto auto}.friend-input-row input,.modal textarea,.zone-header input,.number-picker input,select{width:100%;border:3px solid rgba(32,35,58,.12);border-radius:18px;background:#fff;color:#20233a;padding:.9rem 1rem;font-size:1rem;font-weight:800}.avatar-selector,.participants-grid,.mandatory-list,.option-grid,.results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.85rem}.avatar-selector{grid-template-columns:repeat(auto-fit,minmax(58px,1fr))}.avatar-selector button{min-height:62px;border:3px solid rgba(32,35,58,.1);border-radius:20px;background:#fff;font-size:1.8rem}.avatar-selector button.selected,.participant-card.selected,.choice-card.selected{outline:4px solid #42c6ff;border-color:#236f93}.friendly-message,.small-note{margin:0;font-weight:800;color:#3e6c4d}.participant-card,.mandatory-card,.draggable-unit,.choice-card,.result-team{border:3px solid rgba(32,35,58,.08);border-radius:22px;background:#fff;box-shadow:0 9px #20233a12}.participant-card{padding:.75rem;display:grid;gap:.5rem}.participant-main{border:0;background:transparent;padding:0;text-align:left;display:flex;align-items:center;gap:.75rem;min-width:0}.participant-card.blocked{background:#f3f4f8}.avatar-bubble{width:48px;height:48px;flex:0 0 48px;border-radius:16px;display:grid;place-items:center;font-size:1.55rem;border:3px solid rgba(255,255,255,.86);box-shadow:inset 0 -5px #20233a14}.avatar-bubble.large{width:70px;height:70px;flex-basis:70px;font-size:2.15rem}.participant-name{min-width:0;overflow-wrap:anywhere;font-weight:900}.participant-info,.participant-editor{display:grid;gap:.35rem;min-width:0}.email-chip{display:inline-flex;align-items:center;gap:.25rem;width:fit-content;max-width:100%;padding:.24rem .5rem;border-radius:999px;background:#e9fbff;color:#236f93;font-size:.82rem;font-weight:900;overflow-wrap:anywhere}.email-chip.muted{background:#f3f4f8;color:#596072}.participant-editor input{border:3px solid rgba(32,35,58,.12);border-radius:16px;padding:.7rem .8rem;font-weight:800}.card-actions{display:flex;justify-content:flex-end;gap:.4rem}.card-actions button{width:40px;height:40px;border:0;border-radius:14px;background:#f5f7ff}.empty-state{min-height:210px;border:4px dashed rgba(32,35,58,.16);border-radius:24px;display:grid;place-items:center;align-content:center;gap:.4rem;text-align:center;padding:1rem;color:#596072}.empty-state>span{font-size:3rem}.mandatory-board,.zones-board,.prep-layout,.results-board{display:grid;gap:1rem}.mandatory-card{padding:1rem;border-color:#ff9ec0;background:linear-gradient(180deg,#fff,#fff0f7)}.mandatory-title,.zone-header,.result-team header{display:flex;align-items:center;gap:.7rem;justify-content:space-between}.avatar-stack{display:flex;margin:.9rem 0}.avatar-stack .avatar-bubble+.avatar-bubble{margin-left:-.6rem}.mandatory-actions{display:flex;gap:.6rem;align-items:center;margin-top:.7rem}.zones-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.available-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.75rem;padding:.85rem;border-radius:22px;background:#ffffffa3;border:3px dashed rgba(32,35,58,.12)}.draggable-unit{padding:.75rem;display:grid;grid-template-columns:auto minmax(0,1fr);gap:.45rem .7rem;align-items:center;touch-action:none}.draggable-unit select,.unit-chip select{grid-column:1 / -1;padding:.55rem .7rem;border-radius:14px;font-size:.92rem}.draggable-unit.dragging{opacity:.78;transform-origin:center;box-shadow:0 20px 30px #2a204633}.draw-zone{border:4px solid var(--zone-color);border-radius:24px;min-height:240px;background:color-mix(in srgb,var(--zone-color) 14%,white);padding:.85rem;transition:transform .16s ease,background .16s ease}.draw-zone.drop-over{transform:scale(1.015);background:color-mix(in srgb,var(--zone-color) 24%,white)}.zone-dot{width:22px;height:22px;border-radius:999px;background:var(--zone-color);border:3px solid #ffffff;box-shadow:0 0 0 2px #20233a14}.zone-header label{flex:1}.zone-drop-area{display:grid;gap:.65rem;margin-top:.8rem}.drop-hint{min-height:130px;display:grid;place-items:center;align-content:center;gap:.4rem;color:#596072;font-weight:900}.unit-chip{display:grid;gap:.35rem;background:#fff;border-radius:18px;border:2px solid rgba(32,35,58,.08);padding:.7rem}.unit-chip strong,.draggable-unit strong{overflow-wrap:anywhere}.unit-chip em,.draggable-unit em{color:#a12671;font-style:normal;font-weight:900}.team-size-selector{display:grid;gap:1rem}.option-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.choice-card{min-height:150px;padding:1rem;display:grid;gap:.5rem;justify-items:center;text-align:center;background:#fff}.choice-card span{color:#596072;font-weight:800}.mode-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.mode-card{min-height:220px;border:4px solid rgba(32,35,58,.1);border-radius:26px;background:#fff;color:#20233a;padding:1.1rem;display:grid;gap:.55rem;justify-items:start;text-align:left;box-shadow:0 10px #20233a14}.mode-card.recommended{background:linear-gradient(135deg,#fff7cc,#ffeff7 52%,#e3fbff);border-color:#f4b942}.mode-card.selected{outline:4px solid #42c6ff}.mode-card strong{font-size:1.35rem}.mode-card span,.mode-card em{font-style:normal;color:#596072;font-weight:800}.mode-card em{color:#267c42;background:#ddffe9;border-radius:999px;padding:.35rem .65rem}.mode-card b{font-size:1.45rem}.compact-heading{margin-top:.5rem;margin-bottom:.5rem}.compact-heading h3{margin:0;font-size:1.45rem}.special-rules{display:grid;gap:.8rem;border-radius:24px;background:#fff;border:3px solid rgba(32,35,58,.08);padding:1rem}.rule-actions,.rules-list{display:grid;gap:.65rem}.rule-actions{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.rule-row{display:grid;grid-template-columns:minmax(130px,1fr) auto minmax(130px,1fr) auto;gap:.55rem;align-items:center;padding:.65rem;border-radius:18px;background:#fff5f5;border:2px solid #ffd0d0;font-weight:900}.rule-row.must{background:#f0fff6;border-color:#b8edc8}.empty-rule{display:flex;align-items:center;gap:.55rem;min-height:64px;padding:.8rem;border:3px dashed rgba(32,35,58,.12);border-radius:18px;color:#3e6c4d;font-weight:900}.gift-link-rule{margin-top:.8rem}.number-picker,.toggle-row{display:flex;align-items:center;gap:.8rem;font-weight:900}.number-picker input{width:120px}.toggle-row{background:#fff;border-radius:20px;padding:.9rem 1rem;border:3px solid rgba(32,35,58,.08)}.toggle-row input{width:24px;height:24px}.draw-summary{padding:1rem;border-radius:24px;background:#fff;border:3px solid rgba(32,35,58,.08)}.draw-summary h3{margin:0 0 .8rem;font-size:1.45rem}.summary-grid,.summary-people{display:flex;flex-wrap:wrap;gap:.55rem}.summary-grid span,.summary-people span{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .75rem;border-radius:999px;background:#f5f7ff;font-weight:900}.summary-people{margin-top:.75rem}.summary-people span{background:color-mix(in srgb,var(--friend-color) 22%,white)}.draw-button{width:min(430px,100%);margin:0 auto;font-size:1.25rem}.results-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.result-team{padding:1rem;border-color:var(--zone-color);background:linear-gradient(180deg,#fff,color-mix(in srgb,var(--zone-color) 16%,white))}.result-members{display:grid;gap:.75rem;margin:1rem 0}.result-member{display:flex;align-items:center;gap:.7rem;font-size:1.1rem}.exchange-results,.secret-board{display:grid;gap:1rem}.mode-actions{justify-content:flex-end}.exchange-zone{border:4px solid var(--zone-color);border-radius:26px;background:color-mix(in srgb,var(--zone-color) 12%,white);padding:1rem}.exchange-zone header,.secret-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.exchange-zone h3,.secret-header h3{margin:0;font-size:1.55rem}.circle-route{padding:.7rem .9rem;border-radius:18px;background:#fff;font-weight:900;overflow-wrap:anywhere}.exchange-list{display:grid;gap:.75rem}.exchange-card{display:grid;grid-template-columns:minmax(110px,1fr) auto minmax(110px,1fr);gap:.7rem;align-items:center;border-radius:22px;background:#fff;border:3px solid color-mix(in srgb,var(--zone-color, #42c6ff) 52%,white);padding:.85rem;box-shadow:0 8px #20233a12}.exchange-card p{grid-column:1 / -1;margin:0;color:#596072;font-weight:900;text-align:center}.exchange-person{display:grid;justify-items:center;gap:.35rem;min-width:0}.exchange-person strong{overflow-wrap:anywhere;text-align:center}.big-arrow{color:#a12671;font-weight:900}.secret-board{border-radius:24px;background:#fff;border:3px solid rgba(32,35,58,.08);padding:1rem}.secret-header p,.secret-reveal p{margin:.25rem 0 0;color:#596072;font-weight:800}.secret-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}.secret-name{min-height:86px;border-radius:20px;border:3px solid rgba(32,35,58,.1);background:#f8fbff;display:grid;grid-template-columns:auto minmax(0,1fr);gap:.55rem;align-items:center;padding:.65rem;text-align:left}.secret-name.selected{border-color:#236f93;outline:4px solid #42c6ff}.secret-name em{grid-column:1 / -1;color:#267c42;font-style:normal;font-weight:900}.secret-reveal{display:grid;justify-items:center;gap:.85rem;text-align:center}.exchange-card.solo{width:min(520px,100%)}.email-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.65rem;margin:1rem 0}.email-summary>*{border-radius:18px;background:#fff;border:2px solid rgba(32,35,58,.08);padding:.7rem;font-weight:900}.email-list{display:grid;gap:.65rem;max-height:45vh;overflow:auto;padding-right:.25rem}.email-result-card{display:grid;grid-template-columns:minmax(160px,1fr) auto minmax(180px,auto);gap:.75rem;align-items:center;border-radius:20px;border:3px solid rgba(32,35,58,.08);background:#fff;padding:.75rem}.email-result-card>div:first-child{display:grid;gap:.25rem}.email-result-card>div:first-child span{color:#596072;font-weight:800;overflow-wrap:anywhere}.delivery-status{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;border-radius:999px;padding:.42rem .65rem;background:#f5f7ff;font-weight:900}.email-result-card.sent .delivery-status{background:#ddffe9;color:#267c42}.email-result-card.missing_email .delivery-status,.email-result-card.invalid_email .delivery-status{background:#fff2bd;color:#806000}.email-result-card.failed .delivery-status{background:#ffe3e3;color:#8b1f1f}.email-card-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.45rem}.compact-button{min-height:38px;padding:.45rem .65rem;box-shadow:none;font-size:.9rem}.animation-overlay,.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#0f1323ad;display:grid;place-items:center;padding:1rem}.mystery-box,.modal{width:min(680px,100%);max-height:calc(100vh - 2rem);overflow:auto;border-radius:28px;background:#fff8e7;border:5px solid #ffffff;box-shadow:0 24px 80px #0000004d;padding:clamp(1.1rem,4vw,2rem);text-align:center}.modal{text-align:left}.modal.email-modal{width:min(860px,100%)}.modal-close{float:right}.modal h3{margin-top:0;font-size:1.8rem}.stacked-label{display:grid;gap:.5rem;font-weight:900}.tombola{width:200px;height:200px;margin:0 auto 1rem;border-radius:50%;background:radial-gradient(circle,#fff 0,#fff 42%,#42c6ff 43%,#42c6ff 62%,#ff7aa8 63%,#ff7aa8);border:8px solid #ffffff;position:relative;animation:spin 1.1s linear infinite}.tombola span{position:absolute;left:50%;top:50%;width:42px;height:42px;display:grid;place-items:center;border-radius:16px;transform:rotate(calc(var(--i, 1) * 30deg)) translate(58px)}.tombola span:nth-child(1){--i: 1}.tombola span:nth-child(2){--i: 2}.tombola span:nth-child(3){--i: 3}.tombola span:nth-child(4){--i: 4}.tombola span:nth-child(5){--i: 5}.tombola span:nth-child(6){--i: 6}.tombola span:nth-child(7){--i: 7}.tombola span:nth-child(8){--i: 8}.tombola span:nth-child(9){--i: 9}.tombola span:nth-child(10){--i: 10}@keyframes spin{to{transform:rotate(360deg)}}.reveal-stack{display:grid;gap:.55rem;margin:1rem 0}.revealed-team{border-radius:18px;background:#fff;padding:.65rem;display:grid;gap:.25rem;animation:popIn .26s ease both}.revealed-team.gift-line{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center}@keyframes popIn{0%{opacity:0;transform:translateY(10px) scale(.96)}}.confetti-field{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.confetti-field span{position:absolute;top:-24px;left:calc((100% / 28) * var(--n, 1));width:12px;height:18px;border-radius:4px;background:#ffd166;animation:fall 2.4s linear infinite}.confetti-field span:nth-child(3n){background:#ff7aa8}.confetti-field span:nth-child(3n+1){background:#42c6ff}.confetti-field span:nth-child(1){--n: 1;animation-delay:0s}.confetti-field span:nth-child(2){--n: 2;animation-delay:.12s}.confetti-field span:nth-child(3){--n: 3;animation-delay:.24s}.confetti-field span:nth-child(4){--n: 4;animation-delay:.36s}.confetti-field span:nth-child(5){--n: 5;animation-delay:.48s}.confetti-field span:nth-child(6){--n: 6;animation-delay:.6s}.confetti-field span:nth-child(7){--n: 7;animation-delay:.72s}.confetti-field span:nth-child(8){--n: 8;animation-delay:.84s}.confetti-field span:nth-child(9){--n: 9;animation-delay:.96s}.confetti-field span:nth-child(10){--n: 10;animation-delay:1.08s}.confetti-field span:nth-child(11){--n: 11;animation-delay:1.2s}.confetti-field span:nth-child(12){--n: 12;animation-delay:1.32s}.confetti-field span:nth-child(13){--n: 13;animation-delay:1.44s}.confetti-field span:nth-child(14){--n: 14;animation-delay:1.56s}.confetti-field span:nth-child(15){--n: 15;animation-delay:1.68s}.confetti-field span:nth-child(16){--n: 16;animation-delay:1.8s}.confetti-field span:nth-child(17){--n: 17;animation-delay:1.92s}.confetti-field span:nth-child(18){--n: 18;animation-delay:2.04s}.confetti-field span:nth-child(19){--n: 19;animation-delay:2.16s}.confetti-field span:nth-child(20){--n: 20;animation-delay:2.28s}.confetti-field span:nth-child(21){--n: 21;animation-delay:2.4s}.confetti-field span:nth-child(22){--n: 22;animation-delay:2.52s}.confetti-field span:nth-child(23){--n: 23;animation-delay:2.64s}.confetti-field span:nth-child(24){--n: 24;animation-delay:2.76s}.confetti-field span:nth-child(25){--n: 25;animation-delay:2.88s}.confetti-field span:nth-child(26){--n: 26;animation-delay:3s}.confetti-field span:nth-child(27){--n: 27;animation-delay:3.12s}.confetti-field span:nth-child(28){--n: 28;animation-delay:3.24s}@keyframes fall{to{transform:translateY(110vh) rotate(280deg)}}.notice{position:sticky;top:78px;z-index:12;display:flex;align-items:center;gap:.65rem;margin-bottom:1rem;padding:.85rem 1rem;border-radius:18px;font-weight:900}.notice.error{background:#ffe3e3;color:#8b1f1f;border:3px solid #ffb3b3}.notice button{margin-left:auto;border:0;background:transparent;font-size:1.5rem}.autosave{position:fixed;right:1rem;bottom:1rem;z-index:10;padding:.6rem .8rem;border-radius:999px;background:#ffffffe0;border:2px solid rgba(32,35,58,.08);font-weight:900;font-size:.9rem}.help-tooltip{position:relative;display:inline-flex;margin-left:.4rem;vertical-align:middle}.help-tooltip button{width:34px;height:34px;border-radius:50%;border:0;background:#ddf7ff;display:grid;place-items:center}.help-tooltip span{position:absolute;left:50%;bottom:calc(100% + .5rem);transform:translate(-50%);width:min(260px,70vw);background:#20233a;color:#fff;border-radius:14px;padding:.7rem;font-size:.92rem;opacity:0;pointer-events:none;transition:opacity .14s ease;z-index:30}.help-tooltip:focus-within span,.help-tooltip:hover span{opacity:1}.tutorial-overlay{position:fixed;right:1rem;top:5.4rem;z-index:30;width:min(360px,calc(100vw - 2rem));background:#fff;border:4px solid #ffd166;border-radius:24px;padding:1rem;box-shadow:0 18px 45px #2a20462e}.tutorial-overlay .icon-button{float:right}.tutorial-overlay h3{margin:.4rem 0;font-size:1.35rem}.tutorial-overlay p{display:flex;gap:.45rem;align-items:flex-start;color:#596072;font-weight:800}.history-popover{position:relative}.history-popover summary{list-style:none;min-height:44px;display:inline-flex;align-items:center;gap:.45rem;padding:.65rem .85rem;border-radius:999px;background:#fff;border:3px solid rgba(32,35,58,.1);font-weight:900;cursor:pointer}.history-panel{position:absolute;right:0;top:calc(100% + .6rem);width:min(520px,calc(100vw - 2rem));max-height:70vh;overflow:auto;background:#fff;border:3px solid rgba(32,35,58,.1);border-radius:22px;padding:1rem;box-shadow:0 18px 45px #2a20462e}.compact .results-grid{grid-template-columns:1fr}@media(max-width:780px){.top-bar,.friend-input-row,.step-nav{align-items:stretch}.top-bar{position:static;flex-direction:column}.top-actions,.welcome-actions,.result-actions,.join-actions{width:100%}.primary-action,.secondary-action,.danger-action,.pill-button{flex:1 1 180px}.step-progress{grid-template-columns:repeat(5,minmax(68px,1fr));overflow-x:auto;padding-bottom:.4rem}.step-progress button{min-width:68px;min-height:64px;font-size:.82rem}.friend-input-row{grid-template-columns:1fr}.welcome-page{padding:0}.welcome-hero{min-height:100vh;border-radius:0}.welcome-copy{padding-bottom:2rem}.zones-grid,.available-strip,.participants-grid,.results-grid,.mode-grid,.rule-row,.exchange-card,.friend-input-row.with-email,.email-result-card{grid-template-columns:1fr}.rule-row{justify-items:stretch}.exchange-zone header,.secret-header{align-items:stretch;flex-direction:column}.autosave{position:static;width:fit-content;margin:1rem auto 0}}@media print{.top-bar,.step-progress,.step-nav,.result-actions,.autosave,.tutorial-overlay{display:none}body{background:#fff}.step-stage,.result-team{box-shadow:none}}
