@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;450;500;550;600;650;700&family=Heebo:wght@400;500;600;700&display=swap";:root{font-family:DM Sans,Heebo,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none;font-weight:400;--bg:#f8f5ed;--paper:#fffcf5;--ink:#203e35;--muted:#687266;--line:#e5e3d7;--accent:#214c3d;--soft:#eceee5;--coral:#bf6c54;--shadow:0 16px 45px #31423108;--heading:Georgia,"Times New Roman",serif;color-scheme:light}*{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit}button,input,textarea,select{-webkit-tap-highlight-color:transparent}button{border:0;background:none}button:disabled{cursor:not-allowed;opacity:.48}a{color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #d6a66b;outline-offset:4px}button,svg{flex-shrink:0}p{line-height:1.65}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--heading);font-weight:400}h1{letter-spacing:-2.5px}h2{font-size:26px;letter-spacing:-.6px}h3{font-size:22px;letter-spacing:-.35px}input,textarea,select{width:100%;padding:14px 15px;background:var(--bg);border:1px solid var(--line);border-radius:10px;color:var(--ink);outline:none;min-height:48px}input::placeholder,textarea::placeholder{color:#9b9c91}input:focus,textarea:focus,select:focus{border-color:#759381}input[type=number]{width:90px}input[type=color]{width:75px;padding:5px;height:43px}input[type=range]{padding:0;min-height:20px;width:95px;accent-color:var(--accent)}input[type=file]{display:none}label{display:flex;flex-direction:column;gap:9px;font-size:13px;font-weight:600;margin-top:22px}label:first-of-type{margin-top:0}textarea{resize:vertical;line-height:1.8}main{max-width:1220px;padding:0 40px;margin:auto;min-height:calc(100vh - 180px)}.site-header{max-width:1300px;height:100px;padding:0 40px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:9px;font-family:var(--heading);font-weight:700;font-size:28px;letter-spacing:-1px}.brand-dot{font-size:14px;vertical-align:top;margin-inline-start:4px;color:#bc8a4f}.site-header nav{display:flex;gap:33px;margin-inline-start:80px}.nav-link{font-size:13px;color:var(--muted);padding:17px 0;position:relative}.nav-link.selected{color:var(--ink)}.nav-link.selected:after{content:"";height:1px;position:absolute;bottom:6px;left:0;right:0;background:var(--ink)}.header-tools{display:flex;gap:15px;align-items:center}.header-divider{height:20px;width:1px;background:var(--line)}.language-pill{display:flex;align-items:center;gap:7px;font-size:12px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%}.icon-button:hover{background:var(--soft)}.home-hero{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:58px 0 40px;align-items:center}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;text-transform:uppercase;display:flex;align-items:center;gap:8px;color:#9d694d}.hero-copy .eyebrow>span{height:6px;width:6px;border-radius:50%;background:#b88454}.hero-copy h1{font-size:66px;line-height:1.08;margin:24px 0}.hero-intro{font-size:15px;color:var(--muted);max-width:420px;line-height:1.9}.home-actions{display:grid;gap:12px;margin:30px 0 25px}.action-card{padding:20px;display:flex;align-items:center;gap:16px;text-align:start;border:1px solid var(--line);border-radius:16px;transition:transform .2s,box-shadow .2s;width:100%}.action-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.action-card strong{display:block;font-family:var(--heading);font-size:22px;font-weight:400}.action-card small{font-size:11px;opacity:.7;display:block;margin-top:5px}.action-card>svg{margin-inline-start:auto}.create-card{background:var(--accent);color:#fff8e8;border-color:var(--accent)}.join-card{background:var(--paper)}.action-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #ffffff30;border-radius:50%}.join-card .action-icon{border-color:var(--line)}.hero-trust{display:flex;gap:20px;color:var(--muted);font-size:10px}.hero-trust span{display:flex;gap:5px;align-items:center}.hero-art{min-height:565px;background:#dfe5d6;border-radius:170px 170px 24px 24px;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:45px;isolation:isolate}.hero-art:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 40%,#fff8e98a,transparent 65%);z-index:-1}.hero-art-top{position:absolute;top:33px;display:flex;align-items:center;justify-content:center;gap:15px;font-size:8px;letter-spacing:1.7px;color:#637764}.hero-art-top span:last-child{color:#a4824e}.hero-art .wheel-stage{width:95%;margin:0 auto;z-index:2}.art-caption{text-align:center;position:relative;z-index:2;margin-top:-5px;padding-bottom:24px}.tiny-stars{font-size:12px;color:#a78650}.art-caption p{font-family:var(--heading);font-size:23px;margin:9px 0 4px;color:#264d3c}.art-caption small{font-size:9px;letter-spacing:.9px;color:#657661}.hero-gifts{position:absolute;inset:auto auto -62px -50px;width:240px;height:240px;object-fit:cover;mix-blend-mode:multiply;opacity:.8;-webkit-mask-image:linear-gradient(0deg,#000,transparent 92%);mask-image:linear-gradient(0deg,#000,transparent 92%);z-index:1}.pine-decoration{position:absolute;inset:auto -8px 0 auto;display:flex;gap:0;transform:rotate(-17deg);color:#315e4599}.pine-decoration svg:first-child{width:83px;height:120px;stroke-width:.4}.pine-decoration svg:last-child{width:60px;height:140px;stroke-width:.5}.feature-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1fr;padding:25px 0;gap:27px;margin:10px 0 40px}.feature-strip>div,.feature-strip>button{display:flex;align-items:flex-start;gap:14px;text-align:start;padding:0}.feature-strip svg{width:20px;color:#8a9a81}.feature-strip strong{font-size:10px;display:block;font-weight:600;letter-spacing:.6px}.feature-strip small{font-size:10px;color:var(--muted);line-height:1.7;display:block;margin-top:6px}.feature-strip>button{cursor:pointer}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-heading>span{font-size:11px;color:var(--muted)}.recent{padding-bottom:35px}.recent-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.recent-grid button{display:flex;gap:15px;text-align:start;align-items:center;padding:16px;background:var(--paper);border:1px solid var(--line);border-radius:12px}.recent-grid strong{display:block;font-size:13px;font-weight:500}.recent-grid small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.recent-grid button>svg{margin-inline-start:auto}.mini-icon{background:var(--soft);height:40px;width:40px;border-radius:10px;display:grid;place-items:center}.site-footer{max-width:1220px;margin:35px auto 0;padding:25px 40px 30px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:10px;border-top:1px solid var(--line);gap:20px}.site-footer>span{display:flex;align-items:center;gap:6px}.site-footer>span:first-child{font-family:var(--heading);font-size:15px;color:var(--ink)}.footer-heart svg{color:#b96d58}.form-page{padding:30px 0 40px}.text-button{display:inline-flex;align-items:center;gap:7px;font-size:12px;padding:0;font-weight:500}.text-button:hover{text-decoration:underline}.back-button{color:var(--muted)}.form-heading{text-align:center;margin:28px 0 35px}.form-heading .eyebrow{justify-content:center}.form-heading h1{font-size:45px;margin:12px 0}.form-heading p{font-size:13px;color:var(--muted)}.form-columns{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:24px;max-width:960px;margin:auto}.panel{padding:26px;background:var(--paper);border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow)}.form-main{display:grid;gap:20px}.panel-title{display:flex;align-items:center;gap:11px;margin-bottom:24px}.panel-title h2{font-size:23px}.step-number{color:#ae8c5d;font-size:10px;width:27px;height:27px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center}.capacity-row{display:flex;align-items:center;gap:12px}.capacity-row>span{font-size:11px;color:var(--muted);font-weight:400}.capacity-row>svg{margin-inline-start:auto;color:#93a18f}.small{font-size:11px;line-height:1.7}.muted{color:var(--muted)}.panel>p.small{margin-top:12px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice{position:relative;text-align:start;display:flex;align-items:flex-start;flex-direction:column;gap:10px;padding:20px 16px;border:1px solid var(--line);border-radius:11px;background:var(--bg)}.choice strong{font-size:12px;font-weight:600}.choice small{font-size:10px;line-height:1.65;color:var(--muted)}.choice.chosen{border-color:#65816a;background:#eaf0e5}.radio-dot{position:absolute;right:12px;top:12px;width:13px;height:13px;border-radius:50%;border:1px solid #bfc6b8}.chosen .radio-dot{border:4px solid var(--accent);background:#fff}.soft-note{display:flex;gap:8px;align-items:center;background:var(--soft);padding:12px;border-radius:8px;font-size:10px;margin-top:18px;color:#65765b}.toggle-row{display:flex;flex-direction:row;position:relative;align-items:center;gap:15px;padding:19px 0;border-bottom:1px solid var(--line);margin:0}.toggle-row:first-of-type{padding-top:0}.toggle-row:last-child{border-bottom:0;padding-bottom:0}.toggle-row>span:first-child{flex:1}.toggle-row strong{font-size:12px;font-weight:600;display:block}.toggle-row small{display:block;font-size:10px;line-height:1.7;color:var(--muted);font-weight:400;margin-top:5px}.toggle-row input{position:absolute;opacity:0;width:40px;height:26px;inset-inline-end:0;min-height:0;margin:0;cursor:pointer}.switch{width:37px;height:22px;background:#d7dacf;border-radius:20px;position:relative;pointer-events:none;transition:background .2s}.switch:after{content:"";height:16px;width:16px;border-radius:50%;position:absolute;left:3px;top:3px;background:#fff;box-shadow:0 1px 2px #0002;transition:transform .2s}.toggle-row input:checked+.switch{background:var(--accent)}.toggle-row input:checked+.switch:after{transform:translate(15px)}.toggle-row input:focus-visible+.switch{outline:3px solid #d6a66b;outline-offset:3px}.preview-card{position:sticky;top:25px;padding:15px 25px 27px;background:#e8ecdf;border:1px solid #dfe4d6;border-radius:18px;text-align:center}.preview-card h3{font-size:26px}.preview-card p{font-size:12px;color:#75806c;margin:10px 0 25px}.preview-card .small{display:inline-flex;align-items:center;gap:4px;margin-top:15px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px 22px;min-height:48px;border-radius:10px;font-size:12px;font-weight:600;transition:filter .2s,transform .2s}.button:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.primary{background:var(--accent);color:#fff9eb}.coral{background:var(--coral);color:#fffaf3}.secondary{background:var(--paper);border:1px solid var(--line)}.quiet{background:transparent;color:var(--muted)}.preview-card .button{width:100%}.field-label{display:block;font-size:12px;font-weight:600;margin:18px 0 10px}.segmented{display:flex;gap:3px;padding:4px;background:var(--soft);border-radius:9px;margin-bottom:13px}.segmented button{flex:1;border-radius:6px;padding:9px;font-size:11px}.segmented .on{background:var(--paper);box-shadow:0 2px 4px #0001}.cover-options{padding-bottom:18px;border-bottom:1px solid var(--line)}.upload-cover{display:flex;flex-direction:row;align-items:center;gap:16px;cursor:pointer;margin-top:10px!important}.upload-cover img{height:65px;width:65px;object-fit:cover;border-radius:9px}.upload-cover span{display:flex;align-items:center;gap:7px;font-size:11px}.join-page .form-columns{max-width:850px}.code-input{font-size:23px;letter-spacing:8px;font-weight:600;text-transform:uppercase}.room-page{padding:36px 0}.room-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.room-heading h1{font-size:40px;letter-spacing:-1.2px;margin:13px 0}.room-code-line{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted);flex-wrap:wrap}.room-code-line button{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink);padding:0}.room-code-line b{letter-spacing:2px;font-weight:600}.phase-pill{border:1px solid var(--line);border-radius:20px;padding:4px 9px;font-size:9px;margin-inline-start:3px}.round-label{font-size:8px;letter-spacing:.5px;background:var(--soft);color:var(--muted);padding:4px 7px;border-radius:10px;margin-inline-start:5px}.room-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:25px}.game-card{background:linear-gradient(160deg,#eef0e6,#e3e9db);border:1px solid #dfe3d6;border-radius:22px;padding:20px 25px 30px;position:relative;overflow:hidden}.game-card-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.game-card-heading .eyebrow{font-size:9px;letter-spacing:1.3px;color:#6b7f66}.game-card .wheel-stage{max-width:400px;margin:0 auto}.game-actions{text-align:center;max-width:400px;margin:auto;min-height:105px}.game-actions h2{font-size:25px}.game-actions p{font-size:11px;color:#74826b;margin:10px auto 18px;max-width:340px;line-height:1.7}.game-actions .button{min-width:230px}.spin-button{font-size:15px;min-height:52px!important;min-width:270px!important;box-shadow:0 6px 17px #9f5d3c20}.spinning-label{display:flex;justify-content:center;align-items:center;gap:10px;font-family:var(--heading);font-size:23px}.room-sidebar{display:flex;flex-direction:column;gap:17px}.guest-panel{padding:23px}.guest-panel h2{font-size:22px}.count-pill{background:var(--soft);padding:5px 8px;border-radius:12px;font-size:10px!important}.guest-list{margin:15px 0 8px;max-height:500px;overflow:auto}.guest-row{display:flex;align-items:center;gap:11px;padding:13px 0;border-bottom:1px solid var(--line)}.guest-row:last-child{border-bottom:0}.avatar{width:37px;height:37px;border-radius:50%;display:grid;place-items:center;font-family:var(--heading);font-size:19px;position:relative;color:#4a674f;background:#e3e9d9}.avatar-1{background:#eddfd5;color:#946955}.avatar-2{background:#e8ddc5;color:#8e7652}.avatar-3{background:#dae2dd;color:#5b7a6b}.avatar-4{background:#e7e3d5;color:#77745c}.avatar>svg{position:absolute;bottom:-2px;right:-2px;width:14px;height:14px;border:2px solid var(--paper);border-radius:50%;background:#527960;color:#fff;padding:1px}.guest-name{min-width:0}.guest-name strong{display:block;font-size:12px;font-weight:500;max-width:150px;overflow:hidden;text-overflow:ellipsis}.guest-name strong small{display:inline;font-weight:400}.guest-name small{font-size:9px;color:var(--muted);display:block;margin-top:4px}.status{display:flex;gap:4px;align-items:center;margin-inline-start:auto;font-size:9px;color:#8a8f82}.status-picked{color:#4f7857}.status-picking{color:#b28855}.status-waiting>span{width:4px;height:4px;border-radius:50%;background:#a8ac9f}.auto-update{display:flex;align-items:center;justify-content:center;gap:6px;color:var(--muted);font-size:8px;padding-top:13px;border-top:1px solid var(--line)}.auto-update button{display:flex;color:#87947e;margin-inline-start:5px}.live-dot{width:5px;height:5px;background:#7e9e73;border-radius:50%;display:inline-block}.private-card{padding:23px;border:1px solid var(--line);border-radius:14px;background:transparent}.private-card>svg{color:#b48a55;margin-bottom:12px}.private-card h3{font-size:19px}.private-card p{font-size:10px;color:var(--muted);line-height:1.85;margin:10px 0 15px}.private-card .text-button{font-size:10px}.host-card{padding:18px 22px;display:flex;align-items:center;justify-content:space-between;border:1px dashed var(--line);border-radius:12px}.host-card>span{font-size:10px;color:var(--muted)}.danger{color:#a76e55}.sidebar-back{align-self:center;color:var(--muted);font-size:10px;margin:7px}.result-card{margin-top:18px;padding:22px;border:1px solid #dfd9c8;background:var(--paper);border-radius:16px;animation:fade-in .4s ease-out}.result-card-top{display:flex;gap:12px;align-items:center}.result-card-top h3{font-size:20px}.result-card-top p{font-size:9px;color:var(--muted);margin-top:4px}.result-card-top>svg{margin-inline-start:auto;color:#9eac91}.result-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:#f1e7d7;color:#a16e49}.result-reveal{margin-top:19px;width:100%;background:var(--soft);border:1px solid var(--line);border-radius:10px;min-height:74px;padding:15px;position:relative;overflow:hidden}.result-text{display:block;font-family:var(--heading);font-size:28px;filter:blur(9px);-webkit-user-select:none;user-select:none;transition:filter .3s;color:var(--ink)}.result-reveal.revealed .result-text{filter:none;padding-inline-end:25px;-webkit-user-select:auto;user-select:auto}.reveal-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:7px;font-size:11px;background:#eff0e3a1}.revealed .reveal-label{inset:0 12px 0 auto;background:none;justify-content:flex-end}.saved-note{display:flex;align-items:center;justify-content:center;gap:5px;font-size:9px;color:var(--muted);margin-top:13px}.music-controls{display:flex;align-items:center;justify-content:center;gap:15px;margin:18px 0;color:var(--muted)}.music-controls .text-button{font-size:10px}.wheel-stage{position:relative;width:100%;aspect-ratio:1;max-width:470px;display:grid;place-items:center;isolation:isolate}.wheel-disc{width:87%;height:87%;z-index:2;filter:drop-shadow(0 10px 9px #2f3f2b26)}.wheel-disc svg{display:block;width:100%;height:100%;overflow:visible}.wheel-hub{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:15%;height:15%;border-radius:50%;background:linear-gradient(145deg,#d9be88,#b38b50);border:4px solid #f0dbaa;z-index:5;display:grid;place-items:center;color:#fff4d8;box-shadow:0 4px 7px #634c3c40,inset 0 0 0 1px #a67d42}.wheel-pointer{position:absolute;left:50%;top:3%;transform:translate(-50%);height:10%;width:7%;background:linear-gradient(100deg,#dbbf80,#ae874e);clip-path:polygon(0 0,100% 0,100% 35%,50% 100%,0 35%);border-radius:10px 10px 3px 3px;z-index:6;filter:drop-shadow(0 3px 3px #0002)}.wheel-shadow{position:absolute;width:58%;height:5%;bottom:3%;border-radius:50%;background:#50624d20;filter:blur(9px);z-index:-1}.wheel-orbit{position:absolute;border:1px solid #b8be9c50;width:94%;height:94%;border-radius:50%;z-index:-1}.orbit-two{width:100%;height:100%;border-style:dashed;border-color:#acb68f30;animation:orbit 120s linear infinite}.wheel-star{position:absolute;color:#b79057;z-index:5;animation:twinkle 4s infinite}.star-one{left:2%;top:19%;font-size:26px}.star-two{right:3%;top:29%;font-size:30px;animation-delay:1s}.star-three{right:13%;bottom:5%;font-size:15px;animation-delay:2s}.winning-slice{transition:transform .5s ease-out;filter:drop-shadow(0 0 4px #fff5cc)}.winner-sparkles{position:absolute;inset:0;display:flex;align-items:flex-start;justify-content:space-between;z-index:10;color:#ba9049;font-size:40px;pointer-events:none;animation:fade-in .4s}.winner-sparkles span{margin-top:20%}.notice{display:flex;align-items:center;justify-content:space-between;padding:13px 18px;border-radius:9px;margin:20px 0;font-size:12px;gap:10px}.notice.error{background:#f9e5dc;color:#955b42;border:1px solid #edcdbd}.notice.offline{background:#f3e9ce;color:#907239}.notice button{display:flex;padding:2px}.toast{position:fixed;bottom:max(25px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);display:flex;align-items:center;gap:9px;background:var(--accent);color:#fff8e9;padding:13px 23px;border-radius:40px;box-shadow:0 8px 30px #0002;z-index:100;font-size:12px;max-width:90vw;animation:fade-in .2s}.modal-overlay{position:fixed;inset:0;background:#172a2370;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:80;display:flex;align-items:center;justify-content:center;padding:25px}.modal{max-width:450px;width:100%;max-height:90dvh;overflow:auto;background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:35px;position:relative;box-shadow:0 25px 100px #0003;animation:fade-in .2s}.modal-close{position:absolute;inset-inline-end:12px;top:12px}.modal-icon{display:grid;place-items:center;width:47px;height:47px;border-radius:50%;background:var(--soft);color:#8b9b7f;margin-bottom:20px}.modal h2{font-size:30px;line-height:1.2;margin-bottom:20px}.modal>p{font-size:12px;color:var(--muted);margin:12px 0 20px}.modal>.button{width:100%;margin-top:15px}.modal>.quiet{margin-top:3px}.theme-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.theme-options button{display:flex;align-items:center;flex-direction:column;gap:10px;border:1px solid var(--line);border-radius:10px;padding:15px 7px;font-size:11px}.theme-options .on{background:var(--soft);border-color:#79916d}.theme-options svg{width:20px}.how-steps{display:grid;gap:20px}.how-steps>div{display:flex;gap:14px}.how-steps>div>span{color:#b58d59;font-size:11px;padding-top:4px}.how-steps h3{font-size:20px}.how-steps p{font-size:11px;color:var(--muted);margin-top:6px}.install-note{display:flex;align-items:center;gap:13px;padding:14px;background:var(--soft);border-radius:10px;margin-top:23px;color:var(--muted)}.install-note p{font-size:10px}.loading{animation:orbit 1s linear infinite}.page-loading{padding:25px;display:flex;align-items:center;justify-content:center;gap:15px}.snowfall{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}.snowfall i{position:absolute;top:-10px;width:3px;height:3px;background:#c9b98880;border-radius:50%;animation:snow 15s linear infinite}[dir=rtl] h1{letter-spacing:-1.5px}[dir=rtl] .direction-arrow{transform:scaleX(-1)}[dir=rtl] .hero-copy h1{font-size:57px;line-height:1.25}[dir=rtl] .eyebrow{letter-spacing:.5px}[dir=rtl] .radio-dot{right:auto;left:12px}[dir=rtl] .revealed .reveal-label{inset:0 auto 0 12px}[dir=rtl] .brand{font-family:Georgia,Times New Roman,serif;direction:ltr}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes twinkle{0%,to{opacity:.4;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}@keyframes snow{to{transform:translate(50px,105vh)}}@keyframes fade-in{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}@media(min-width:1500px){.home-hero{padding-top:75px;gap:75px}.hero-copy h1{font-size:74px}.hero-art{min-height:610px}}@media(max-width:1050px){.home-hero{gap:30px}.hero-copy h1{font-size:56px}.hero-art{min-height:510px}.hero-trust{gap:10px;flex-wrap:wrap}.action-card{padding:17px}.action-card strong{font-size:21px}.form-columns,.room-layout{grid-template-columns:1.3fr 1fr}.guest-name strong{max-width:120px}.feature-strip{gap:18px}.room-heading h1{font-size:34px}[dir=rtl] .hero-copy h1{font-size:49px}}@media(max-width:760px){.site-header{height:78px;padding:0 22px}.brand{font-size:25px}.brand>svg{width:23px}.site-header nav{display:none}.header-tools{gap:8px}.header-divider{margin-inline:4px}main{padding:0 22px}.home-hero{grid-template-columns:1fr;gap:30px;padding:36px 0 25px}.hero-copy .eyebrow{font-size:9px;letter-spacing:1.2px}.hero-copy h1{font-size:54px;line-height:1.08;margin:20px 0}.hero-intro{font-size:13px;line-height:1.85;max-width:480px}.home-actions{margin:25px 0 20px;gap:10px}.action-card{padding:16px}.action-card strong{font-size:21px}.action-card small{font-size:10px}.hero-trust{font-size:9px;gap:14px}.hero-art{min-height:0;aspect-ratio:1/1.06;border-radius:130px 130px 20px 20px;padding-top:30px;max-width:480px;width:100%;margin:auto}.hero-art .wheel-stage{width:88%}.hero-art-top{top:24px;font-size:7px}.art-caption{margin-top:-15px;padding-bottom:19px}.art-caption p{font-size:21px;margin-top:4px}.art-caption small{font-size:8px}.tiny-stars{font-size:9px}.feature-strip{grid-template-columns:1fr;gap:20px;padding:25px 2px;margin-bottom:25px}.feature-strip>div,.feature-strip>button{gap:15px}.feature-strip small{margin-top:4px;font-size:10px}.feature-strip strong{font-size:10px}.feature-strip svg{width:22px;margin-top:1px}.recent-grid{grid-template-columns:1fr}.section-heading h2{font-size:23px}.section-heading>span{font-size:9px}.site-footer{margin:25px 22px 0;padding:22px 0 max(24px,env(safe-area-inset-bottom));flex-wrap:wrap;gap:13px}.site-footer p{font-size:9px}.footer-heart{display:none!important}.form-page{padding-top:23px}.form-heading{margin:27px 0}.form-heading h1{font-size:34px;letter-spacing:-1px}.form-heading p{font-size:12px}.form-columns{display:flex;flex-direction:column}.panel{padding:23px}.form-aside .preview-card{padding:20px}.preview-card>.wheel-stage{display:none}.preview-card h3{font-size:23px}.preview-card p{margin:10px 0 20px}.preview-card>.button{min-height:52px}.choice{padding:18px 13px}.choice strong{font-size:11px}.choice small{font-size:9px}.toggle-row strong{font-size:12px}.room-page{padding:28px 0}.room-heading{align-items:flex-start;margin-bottom:23px;gap:10px}.room-heading .eyebrow{font-size:8px;letter-spacing:.8px;flex-wrap:wrap}.room-heading h1{font-size:30px;line-height:1.18;letter-spacing:-.8px;margin:12px 0}.room-code-line{gap:8px;font-size:10px}.room-code-line b{font-size:12px}.phase-pill{font-size:8px;margin-inline-start:0}.share-button{font-size:0;padding:0;width:38px;height:38px;min-height:38px;border-radius:50%;margin-top:5px}.share-button svg{width:16px}.room-layout{display:flex;flex-direction:column;gap:22px}.game-card{padding:15px 15px 23px;border-radius:18px}.game-card .wheel-stage{max-width:350px}.game-card-heading .eyebrow{font-size:8px}.game-actions h2{font-size:23px}.game-actions p{font-size:10px;margin-bottom:14px}.game-actions .button{min-width:220px;font-size:12px}.spin-button{min-width:240px!important;font-size:14px!important}.game-actions{min-height:85px}.guest-panel{padding:22px}.guest-name strong{max-width:200px}.guest-row{padding:12px 0}.guest-name strong{font-size:12px}.status{font-size:10px}.private-card{padding:21px}.private-card p{font-size:11px}.private-card h3{font-size:21px}.private-card .text-button{font-size:11px}.host-card,.result-card{padding:18px}.result-card-top h3{font-size:19px}.result-card-top p{font-size:9px}.result-text{font-size:27px}.result-reveal{min-height:72px}.modal-overlay{padding:18px}.modal{padding:30px 25px;border-radius:19px}.modal h2{font-size:27px}.snowfall i{width:2px;height:2px}[dir=rtl] .hero-copy h1{font-size:45px;line-height:1.22}[dir=rtl] .form-heading h1{font-size:32px}[dir=rtl] .room-heading h1{font-size:27px}.code-input{font-size:22px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}.snowfall{display:none}.wheel-disc{transition:transform .01s!important}}.mixed-toggle{margin-top:20px}.mixed-toggle .toggle-row{border-top:1px solid var(--line);padding-top:18px}.mystery-popout{position:absolute;inset:20% 16% auto;z-index:9;border:2px solid #d8ba80;border-radius:15px;background:#fff5df;color:#244f43;padding:20px;display:flex;align-items:center;justify-content:center;gap:12px;box-shadow:0 15px 40px #173d3340;animation:mystery-pop .55s cubic-bezier(.2,.8,.2,1.15)}.mystery-popout span{font-family:var(--heading);font-size:20px;overflow-wrap:anywhere}@keyframes mystery-pop{0%{transform:scale(.3) rotate(-15deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}body{padding-top:env(safe-area-inset-top)}@media(max-width:760px){input,textarea,select{font-size:16px}.code-input{font-size:22px}.site-header{padding-inline:max(22px,env(safe-area-inset-left)) max(22px,env(safe-area-inset-right))}main{padding-inline:max(22px,env(safe-area-inset-left)) max(22px,env(safe-area-inset-right))}}.room-heading>div{min-width:0}.room-heading h1,.result-text,.mystery-popout span{overflow-wrap:anywhere}.recent-grid button>span:not(.mini-icon){min-width:0}.recent-grid strong{overflow-wrap:anywhere}:root,[data-theme=holiday]{--bg:#160e19;--paper:#23141f;--ink:#fff5e6;--muted:#c6b6c8;--line:#62402f;--accent:#ad203e;--on-accent:#fff9ed;--soft:#371c2c;--coral:#bf2e4a;--gold:#edc77a;--success:#94d2ba;--shadow:0 18px 70px #00000030;--art-bg:linear-gradient(150deg,#371523d9,#210e19e6 68%,#190e18ed);--art-ink:#fff3df;--art-muted:#e9cdd0;--game-bg:linear-gradient(145deg,#321928e8,#21121fe8);color-scheme:dark}[data-theme=light]{--bg:#faf9f7;--paper:#ffffff;--ink:#322d35;--muted:#716a75;--line:#e6e1e6;--accent:#ad304e;--on-accent:#ffffff;--soft:#f5edf0;--coral:#b73551;--gold:#946d29;--success:#267366;--shadow:0 14px 40px #35273708;--art-bg:linear-gradient(145deg,#f6e8e3,#f2dbe0);--art-ink:#662c40;--art-muted:#775b64;--game-bg:linear-gradient(145deg,#ffffff,#f8f2f1);color-scheme:light}[data-theme=dark]{--bg:#17151d;--paper:#23212b;--ink:#f7ece5;--muted:#bfb0ba;--line:#423641;--accent:#b83c5b;--on-accent:#ffffff;--soft:#362531;--coral:#bd405c;--gold:#dfbd7b;--success:#8fd2bc;--shadow:0 16px 45px #00000024;--art-bg:linear-gradient(150deg,#702940,#3b2134);--art-ink:#ffefdb;--art-muted:#e4c2c7;--game-bg:linear-gradient(145deg,#2b222d,#24212b);color-scheme:dark}body{background:var(--bg);box-shadow:inset 0 4px 0 var(--accent)}.site-header,main,.site-footer{position:relative;z-index:1}.site-header{border-bottom-color:var(--line)}.brand>svg,.brand-dot,.footer-heart svg{color:var(--accent)}.hero-art{background:var(--art-bg);border:1px solid color-mix(in srgb,var(--gold) 25%,transparent)}.hero-art:before{background:radial-gradient(ellipse at 50% 38%,#ffe5b729,transparent 65%)}.hero-art-top,.art-caption small{color:var(--art-muted)}.art-caption p{color:var(--art-ink)}.hero-art-top span:last-child,.tiny-stars{color:var(--gold)}.hero-art .tiny-stars{color:#e8c784}.hero-gifts{mix-blend-mode:luminosity;opacity:.25}.pine-decoration{color:color-mix(in srgb,var(--art-muted) 35%,transparent)}.primary,.create-card,.toast{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.coral{background:var(--coral);color:var(--on-accent)}.preview-card,.game-card{background:var(--game-bg);border-color:var(--line)}.preview-card p,.game-actions p,.game-card-heading .eyebrow{color:var(--muted)}.hero-copy .eyebrow,.eyebrow,.step-number{color:var(--gold)}.hero-copy .eyebrow>span{background:var(--accent)}.feature-strip svg,.capacity-row>svg{color:var(--gold)}.choice.chosen{background:var(--soft);border-color:var(--accent)}.chosen .radio-dot{border-color:var(--accent)}.soft-note{color:var(--muted);background:var(--soft)}.switch{background:var(--line)}.switch:after,.toggle-row input:checked+.switch:after{background:#fff}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.75}input:focus,textarea:focus,select:focus{border-color:var(--accent)}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:var(--gold)}.result-card{border-color:var(--line)}.result-icon{background:var(--soft);color:var(--gold)}.result-card-top>svg,.private-card>svg{color:var(--gold)}.reveal-label{background:color-mix(in srgb,var(--paper) 85%,transparent)}.revealed .reveal-label{background:none}.danger{color:var(--accent)}[data-theme=holiday] .danger{color:#ff9eae}[data-theme=dark] .danger{color:#ffa4b9}.wheel-orbit{border-color:color-mix(in srgb,var(--gold) 32%,transparent)}.wheel-shadow{background:color-mix(in srgb,var(--accent) 15%,transparent)}.wheel-slice,.winning-slice{transition:transform .55s cubic-bezier(.2,.8,.2,1.15),filter .55s}.winning-slice{filter:drop-shadow(0 5px 5px #38252e65)}.theme-options{grid-template-columns:repeat(4,minmax(0,1fr))}.theme-options .on{background:var(--soft);border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.theme-options button{min-width:0}.snowfall i{background:var(--gold);opacity:.35}[data-theme=dark] .snowfall i{background:#fff6ea;opacity:.3}[data-theme=holiday] .snowfall i{width:4px;height:4px;box-shadow:0 0 5px #d9ab6b45}.cover-upload{position:relative;margin-top:15px}.cover-upload-main{display:flex;gap:14px;align-items:center}.cover-upload-main>img{width:82px;height:82px;object-fit:cover;border-radius:12px;border:1px solid var(--line)}.cover-upload-main>div{min-width:0;flex:1}.cover-upload-main strong{font-size:12px}.cover-upload-main p{font-size:11px;color:var(--muted);margin:5px 0 10px;line-height:1.6}.upload-button{min-height:38px;padding:8px 12px;font-size:11px;gap:7px}input.accessible-file{display:block;position:absolute;width:1px;height:1px;min-height:0;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.cover-upload:focus-within .upload-button{outline:2px solid var(--gold);outline-offset:3px}.upload-error,.upload-success{font-size:11px;line-height:1.6;margin-top:12px;overflow-wrap:anywhere}.upload-error{color:#ad2945;background:var(--soft);padding:10px 12px;border-radius:8px}[data-theme=dark] .upload-error,[data-theme=holiday] .upload-error{color:#ffabc0}.upload-success{color:var(--success);display:flex;gap:6px;align-items:baseline;flex-wrap:wrap}.upload-success span{color:var(--muted)}.cover-reset{margin-top:12px;color:var(--muted);font-size:11px}.turn-banner{border:1px solid var(--line);border-radius:16px;background:var(--paper);margin-bottom:24px;padding:20px 24px;box-shadow:var(--shadow)}.turn-banner.my-turn{border-color:var(--accent);background:var(--game-bg)}.turn-banner-main{display:flex;align-items:center;gap:14px}.turn-banner-icon{width:43px;height:43px;display:grid;place-items:center;background:var(--soft);color:var(--accent);border-radius:13px;flex-shrink:0}.turn-banner-icon svg{width:22px;height:22px}.turn-banner-main>div{min-width:0}.turn-kicker{display:block;color:var(--muted);text-transform:uppercase;letter-spacing:1.2px;font-size:9px;font-weight:600;margin-bottom:5px}.turn-banner-main strong{display:block;font-size:17px;line-height:1.4;overflow-wrap:anywhere}.turn-banner-main small{display:block;color:var(--muted);font-size:11px;margin-top:4px;line-height:1.6}.turn-number{margin-inline-start:auto;white-space:nowrap;border:1px solid var(--line);padding:7px 11px;border-radius:20px;color:var(--muted);font-size:11px}.round-progress{display:flex;justify-content:space-between;gap:12px;margin:17px 0 9px;color:var(--muted);font-size:10px;line-height:1.6}.round-progress>span:first-child{white-space:nowrap;font-weight:600;color:var(--ink)}.round-progress-track{height:5px;border-radius:8px;background:var(--soft);overflow:hidden}.round-progress-track>div{height:100%;background:var(--accent);border-radius:inherit;transition:width .4s}.round-complete .round-progress-track>div{background:var(--success)}.count-pill{display:inline-flex;align-items:center;gap:5px}.queue-caption{font-size:10px;color:var(--muted);margin-top:10px}.guest-list{margin-inline:-10px}.guest-row{padding:13px 10px;gap:9px;border-radius:10px;border-bottom-color:transparent}.guest-row+.guest-row{margin-top:3px}.guest-row.current-player{background:var(--soft);box-shadow:inset 3px 0 0 var(--accent)}[dir=rtl] .guest-row.current-player{box-shadow:inset -3px 0 0 var(--accent)}.queue-position{font-size:10px;min-width:17px;color:var(--muted);font-variant-numeric:tabular-nums;display:grid;place-items:center}.avatar{background:var(--soft);color:var(--accent);width:34px;height:34px;font-size:17px}.avatar-1,.avatar-4{background:#f4e2cf;color:#92582d}.avatar-2{background:#e1ebe7;color:#346b61}.avatar-3{background:#ebdfec;color:#785c81}[data-theme=dark] .avatar{background:#50313e;color:#ffcfdb}[data-theme=holiday] .avatar{background:#542038;color:#ffcfdb}[data-theme=dark] .avatar-1,[data-theme=dark] .avatar-4{background:#493b2e;color:#efd1a6}[data-theme=dark] .avatar-2{background:#293f3b;color:#bee3d5}[data-theme=dark] .avatar-3{background:#3f3149;color:#e5cbea}.avatar>svg{background:var(--success)}.guest-name{flex:1}.guest-name strong{max-width:100%;font-size:12px;overflow-wrap:anywhere}.status{font-size:10px;max-width:115px;line-height:1.5;color:var(--muted);text-align:end}.status-picked{color:var(--success)}.status-picking{color:var(--gold)}.status-ready{font-weight:700;color:var(--accent)}[data-theme=dark] .status-ready{color:#ffa8bf}[data-theme=holiday] .status-ready{color:#ffb4c4}.live-dot{background:var(--success)}@media(max-width:760px){.preview-card>.wheel-stage{display:grid;max-width:300px;margin:-10px auto 4px}.preview-card{position:static}.form-aside .preview-card{padding:15px 20px 23px}.turn-banner{padding:17px;margin-bottom:20px}.turn-banner-main{gap:10px;flex-wrap:wrap}.turn-banner-main>div{flex:1}.turn-banner-main strong{font-size:15px}.turn-number{font-size:10px;padding:5px 8px}.round-progress>span:last-child{max-width:65%;font-size:9px}.status{max-width:120px}.guest-name strong{max-width:100%}}@media(max-width:380px){.theme-options{grid-template-columns:repeat(2,minmax(0,1fr))}.guest-row{gap:7px}.queue-position{min-width:14px}.avatar{width:30px;height:30px;font-size:15px}.status{font-size:9px;max-width:92px}.turn-number{margin-inline-start:53px}}:root{--heading:"Cormorant Garamond",Georgia,serif;--decoration-opacity:1}[dir=rtl]{--heading:"Heebo",sans-serif}body{box-shadow:none;isolation:isolate;background:var(--bg);overflow-x:clip}[data-theme=holiday] body{background:radial-gradient(ellipse at 65% 34%,#59112750,transparent 48%),radial-gradient(ellipse at 7% 78%,#60212b20,transparent 40%),#160e19}[data-theme=light]{--decoration-opacity:.36}[data-theme=dark]{--decoration-opacity:.55}.site-header{max-width:1220px;height:118px;padding:29px 40px 0;border-bottom:1px solid color-mix(in srgb,var(--gold) 58%,transparent)}.brand{font-size:31px;font-family:var(--heading);font-weight:600;letter-spacing:-.7px;gap:11px}.brand>svg{color:var(--gold)}.site-header nav{margin-inline-start:20px;gap:45px}.nav-link{font-size:14px;padding:15px 0;color:var(--muted)}.nav-link.selected:after{background:var(--gold);height:1px;bottom:3px}.header-tools{gap:22px}.appearance-pill{display:flex;align-items:center;gap:10px;border:1px solid color-mix(in srgb,var(--gold) 65%,transparent);border-radius:28px;padding:10px 16px;font-size:13px;background:color-mix(in srgb,var(--paper) 58%,transparent)}.appearance-pill>svg:first-child{color:var(--gold)}.header-tools>.icon-button{border:1px solid color-mix(in srgb,var(--gold) 55%,transparent);width:41px;height:41px}main{max-width:1300px;padding-inline:80px;min-height:calc(100vh - 220px)}.home-hero{grid-template-columns:1.04fr 1fr;gap:25px;padding:34px 0 42px;min-height:608px;align-items:center}.hero-copy{position:relative;z-index:5;padding-bottom:8px}.christmas-edition{display:inline-flex;align-items:center;border:1px solid var(--gold);border-radius:30px;color:var(--gold);padding:8px 17px;font-size:11px;line-height:1;letter-spacing:2.2px;text-transform:uppercase}.hero-copy h1{font-family:var(--heading);font-size:clamp(58px,5.6vw,86px);font-weight:500;line-height:.96;letter-spacing:-3.3px;margin:21px -25px 20px 0}.hero-copy h1>span,.hero-copy h1>em{display:block;white-space:nowrap}.hero-copy h1 em{font-weight:500;color:var(--gold)}.hero-intro{font-size:20px;line-height:1.55;max-width:520px;color:var(--muted)}.hero-intro>span{display:block}.home-actions{display:flex;gap:13px;margin:26px 0 20px}.hero-create,.hero-join{min-height:60px;padding:16px 25px;font-size:22px;font-family:var(--heading);font-weight:600;letter-spacing:.2px;border-radius:12px}.hero-create{min-width:230px}.hero-join{min-width:180px;border-color:var(--gold);background:color-mix(in srgb,var(--bg) 75%,transparent);color:var(--gold)}.primary,.create-card{background:linear-gradient(150deg,#bd2946,#8d1634);border:1px solid #dd7185;color:#fff4e4;box-shadow:inset 0 1px #ffacb633,0 5px 20px #7c102b20}.button:hover:not(:disabled){filter:brightness(1.15);transform:translateY(-2px)}.hero-trust{font-size:12px;gap:25px;color:var(--muted)}.hero-trust svg{color:var(--gold)}.hero-art{min-height:0;aspect-ratio:1;width:100%;border-radius:32px;padding:0;overflow:visible;border-color:color-mix(in srgb,#bf5771 38%,transparent);justify-content:center}.hero-art:before{background:radial-gradient(ellipse,#c65b3d24,transparent 70%);border-radius:inherit}.hero-art .wheel-stage{max-width:none;width:104%;margin:0;z-index:2;transform:translateY(-6px)}.hero-wheel-halo{position:absolute;inset:8%;border-radius:50%;box-shadow:0 0 70px #e49c3520,inset 0 0 60px #bc383216;animation:christmas-breathe 7s ease-in-out infinite}.christmas-gifts{position:absolute;width:126%;max-width:none;height:auto;inset:auto auto -19px -13%;z-index:4;pointer-events:none;filter:drop-shadow(0 9px 15px #0005);animation:gift-candlelight 6s ease-in-out infinite}.hero-wheel-caption{position:absolute;z-index:6;bottom:0;left:50%;transform:translate(-50%);white-space:nowrap;display:flex;align-items:center;gap:11px;border:1px solid var(--gold);border-radius:40px;padding:13px 20px;background:#1b1019ed;box-shadow:0 0 25px #e7aa4c1a;color:#fff6e9;font-size:13px}.hero-wheel-caption svg{color:var(--gold)}.christmas-steps{display:grid;grid-template-columns:repeat(3,1fr);margin:7px -80px 38px;padding:30px 30px 28px;border:1px solid color-mix(in srgb,var(--gold) 70%,transparent);border-radius:24px;background:linear-gradient(115deg,color-mix(in srgb,var(--paper) 78%,transparent),color-mix(in srgb,var(--bg) 80%,transparent));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.christmas-steps>div{text-align:center;padding:0 30px;display:flex;flex-direction:column;align-items:center}.christmas-steps>div+div{border-inline-start:1px solid color-mix(in srgb,var(--gold) 36%,transparent)}.christmas-steps svg{color:var(--gold);margin-bottom:12px}.christmas-steps h2{font-size:27px;font-weight:600;letter-spacing:-.2px;margin-bottom:5px}.christmas-steps p{color:var(--muted);font-size:14px;line-height:1.7;max-width:280px}.recent{padding-top:14px}.recent-grid button{background:color-mix(in srgb,var(--paper) 85%,transparent);border-color:var(--line)}.recent-grid strong{font-family:var(--heading);font-size:21px}.site-footer{max-width:1220px;border:0;margin-top:4px;padding:24px 40px 30px;font-size:11px}.site-footer>span:first-child{font-size:18px}.site-footer>span:first-child>svg{color:var(--gold)}.form-heading h1{font-family:var(--heading);font-size:52px;font-weight:500;letter-spacing:-1px}.form-columns{max-width:1040px;gap:27px}.panel{border-radius:19px;background:color-mix(in srgb,var(--paper) 94%,transparent);border-color:color-mix(in srgb,var(--gold) 26%,var(--line));box-shadow:var(--shadow)}.panel-title h2{font-size:28px;font-weight:500}.preview-card{border:1px solid color-mix(in srgb,var(--gold) 40%,transparent);border-radius:24px;isolation:isolate;padding:18px 26px 29px;overflow:hidden}.preview-card h3{font-size:31px;font-weight:500}.preview-card p{line-height:1.8;font-size:12px}.preview-card:before{content:"";position:absolute;inset:auto -20% -10px;aspect-ratio:3;opacity:.1;z-index:-1;background:url(/assets/christmas-gifts.png) bottom/contain no-repeat;pointer-events:none}.preview-card .button{min-height:52px;font-size:13px}.game-card{border-radius:24px;border-color:color-mix(in srgb,var(--gold) 40%,transparent);background:radial-gradient(circle at 50% 40%,#d79c3420,transparent 55%),var(--game-bg);isolation:isolate}.game-card-heading .eyebrow{color:var(--gold);font-size:10px}.game-actions h2{font-size:31px;font-weight:500}.room-heading h1{font-size:48px;font-weight:500}.modal{max-width:480px;border-color:color-mix(in srgb,var(--gold) 45%,transparent);border-radius:24px;background:var(--paper)}.modal h2{font-size:35px;font-weight:500}.modal-overlay{background:#0b0614b3}.modal-icon{color:var(--gold)}.theme-options button{font-size:12px}.motion-preference{margin-top:20px;border-top:1px solid var(--line);padding-top:18px}.motion-preference .toggle-row{padding:0}.turn-banner{border-color:color-mix(in srgb,var(--gold) 35%,var(--line));background:color-mix(in srgb,var(--paper) 95%,transparent)}.turn-banner.my-turn{border-color:var(--gold)}.turn-banner-icon{color:var(--gold)}.choice.chosen{border-color:var(--gold)}.theme-options .on{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}.toggle-row input:checked+.switch{background:#b12b49}.wheel-hub{width:15%;height:15%;background:radial-gradient(circle at 33% 25%,#f6d997,#b67c32 70%,#6d451f);border:3px solid #e8bf70;box-shadow:0 0 0 2px #623f23,0 0 0 5px #d7a451,0 5px 16px #0007,inset 0 0 0 3px #9d692c;color:#ffe8a8}.wheel-pointer{background:linear-gradient(100deg,#e0aa54,#fff0bc 48%,#bd8138);filter:drop-shadow(0 0 7px #f9bb595c);width:8%;height:11%;top:2%;border-radius:2px;clip-path:polygon(0 0,100% 0,50% 100%)}.wheel-disc{filter:drop-shadow(0 0 14px #efa4473d) drop-shadow(0 10px 9px #0005)}.wheel-orbit{border-color:#c496514f}.orbit-two{border-color:#eac57633}.wheel-star{color:#f4cc7b;text-shadow:0 0 17px #ffd78c;animation:christmas-star 4s ease-in-out infinite}.wheel-bulb{fill:#fff4c9;filter:drop-shadow(0 0 3px #ffc169);animation:wheel-bulb-glow 3.6s ease-in-out infinite}.hero-art .wheel-disc{animation:wheel-reverie 12s ease-in-out infinite}.winner-sparkles{color:var(--gold);text-shadow:0 0 15px #ffc55e;animation:twinkle 3s ease-in-out infinite}.winner-confetti{position:absolute;inset:0;z-index:8;pointer-events:none;overflow:visible}.winner-confetti>span{position:absolute;left:50%;top:22%;color:#e8c278;font-size:18px;animation:christmas-confetti 2.8s ease-out both}.winner-confetti>span:nth-child(3n){color:#ff7e98}.winner-confetti>span:nth-child(3n+1){color:#fff0d5}.festive-atmosphere{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;opacity:var(--decoration-opacity);contain:strict}.christmas-glow{position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,#ad27451c,transparent 68%);animation:christmas-breathe 10s ease-in-out infinite}.glow-left{left:-300px;bottom:-150px}.glow-right{right:-180px;top:80px;animation-delay:-4s}.fairy-lights{position:absolute;inset:0 0 auto;width:100%;height:64px;overflow:visible;z-index:3}.light-cable{fill:none;stroke:#8f623f;stroke-width:1.4;filter:drop-shadow(0 1px 2px #f8ba5a70)}.fairy-bulb{fill:#fff3cc;filter:drop-shadow(0 0 5px #ffb74b) drop-shadow(0 0 12px #ffb74b9c);animation:fairy-twinkle 3.5s ease-in-out infinite}.bulb-1{fill:#ffe1a0}.bulb-2{fill:#fff8e6;animation-duration:4.3s}.hanging-ornaments{position:absolute;top:-24px;right:-20px;width:230px;height:auto;transform-origin:90% 0;filter:drop-shadow(0 5px 12px #0003);animation:ornament-sway 9s ease-in-out infinite;z-index:2}.actual-snowflakes{position:absolute;inset:0;overflow:hidden}.snowflake{display:block;position:absolute;top:-10vh;color:#fff5e7;animation-name:snowflake-drift;animation-timing-function:linear;animation-iteration-count:infinite;will-change:transform;opacity:0}.snowflake svg{width:100%;height:100%}.snowflake-depth-1{filter:blur(.5px)}.snowflake-depth-2{filter:blur(1.2px)}.frost-decoration{position:absolute;width:170px;height:170px;color:#cf8f8b;opacity:.2;filter:blur(2px);animation:frost-turn 60s linear infinite}.frost-left{left:-70px;top:13%}.frost-right{right:-85px;top:44%;width:240px;height:240px;animation-direction:reverse}.christmas-stardust{position:absolute;inset:0}.christmas-stardust>svg{position:absolute;color:#f1bc62;filter:drop-shadow(0 0 5px #e6ad4f);animation:christmas-star 5s ease-in-out infinite}[data-theme=light] .snowflake{color:#b56d83}[data-theme=light] .frost-decoration{color:#b14f68}[data-theme=light] .hero-wheel-caption{background:#fff7ed;color:#542138}[data-motion=reduced] .festive-atmosphere .snowflake,[data-motion=reduced] .frost-decoration,[data-motion=reduced] .christmas-stardust{display:none}[data-motion=reduced] .fairy-bulb,[data-motion=reduced] .hanging-ornaments,[data-motion=reduced] .christmas-glow,[data-motion=reduced] .hero-wheel-halo,[data-motion=reduced] .christmas-gifts,[data-motion=reduced] .hero-art .wheel-disc,[data-motion=reduced] .wheel-star,[data-motion=reduced] .wheel-bulb,[data-motion=reduced] .wheel-orbit,[data-motion=reduced] .winner-sparkles{animation:none!important}[data-motion=reduced] .winner-confetti{display:none}@keyframes snowflake-drift{0%{transform:translate3d(0,-10vh,0) rotate(0);opacity:0}10%{opacity:.35}80%{opacity:.3}to{transform:translate3d(var(--snow-sway),118vh,0) rotate(var(--snow-spin));opacity:0}}@keyframes fairy-twinkle{0%,to{opacity:.7;filter:drop-shadow(0 0 4px #ffb74b) drop-shadow(0 0 9px #ffb74b80)}50%{opacity:1;filter:drop-shadow(0 0 6px #ffb74b) drop-shadow(0 0 16px #ffb74bd0)}}@keyframes ornament-sway{0%,to{transform:rotate(-1deg)}50%{transform:rotate(1.5deg)}}@keyframes christmas-star{0%,to{opacity:.35;transform:scale(.7) rotate(-8deg)}50%{opacity:1;transform:scale(1.12) rotate(8deg)}}@keyframes christmas-breathe{0%,to{opacity:.65;transform:scale(.97)}50%{opacity:1;transform:scale(1.04)}}@keyframes gift-candlelight{0%,to{filter:drop-shadow(0 8px 15px #0005) brightness(.94)}50%{filter:drop-shadow(0 8px 15px #0005) brightness(1.08)}}@keyframes frost-turn{to{transform:rotate(360deg)}}@keyframes wheel-bulb-glow{0%,to{opacity:.75;filter:drop-shadow(0 0 3px #ffc169)}50%{opacity:1;filter:drop-shadow(0 0 6px #ffd283)}}@keyframes wheel-reverie{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes christmas-confetti{0%{transform:translate(0) rotate(0);opacity:0}12%{opacity:1}to{transform:translate(var(--confetti-x),230px) rotate(var(--confetti-r));opacity:0}}@media(min-width:1500px){.home-hero{padding-top:34px;gap:25px}.hero-copy h1{font-size:86px}.hero-art{min-height:0}}@media(max-width:1200px){main{padding-inline:50px}.site-header{margin-inline:35px;padding-inline:15px}.home-hero{gap:24px;min-height:560px}.hero-copy h1{font-size:clamp(52px,6.5vw,76px);letter-spacing:-2.4px}.hero-intro{font-size:15px}.hero-create,.hero-join{font-size:16px;padding-inline:18px;min-width:0;min-height:55px}.hero-trust{gap:15px;font-size:10px}.christmas-steps{margin-inline:-20px}.hanging-ornaments{width:180px;right:-40px}.site-header nav{gap:28px;margin-inline-start:0}}@media(max-width:900px)and (min-width:761px){main{padding-inline:30px}.hero-copy h1{font-size:57px;letter-spacing:-2px}.hero-intro{font-size:14px}.hero-create,.hero-join{font-size:14px;padding-inline:14px}.home-actions{gap:8px}.hero-trust{flex-wrap:wrap;gap:10px}.christmas-edition{font-size:9px;letter-spacing:1.2px;padding:8px 12px}.hero-wheel-caption{font-size:10px;padding:10px 12px}.christmas-steps{margin-inline:0;padding:25px 12px}.christmas-steps>div{padding-inline:17px}.christmas-steps h2{font-size:23px}.christmas-steps p{font-size:11px}}@media(max-width:760px){.site-header{height:103px;margin-inline:22px;padding:30px 0 0;gap:10px}.brand{font-size:27px;gap:7px}.brand>svg{width:25px}.header-tools{gap:10px}.appearance-pill{font-size:11px;padding:8px 11px;gap:6px}.header-tools>.icon-button{width:34px;height:34px}main{padding-inline:24px}.home-hero{display:flex;flex-direction:column;gap:30px;padding:35px 0 40px;min-height:0}.hero-copy{width:100%;padding-bottom:0}.christmas-edition{font-size:9px;letter-spacing:1.7px;padding:8px 13px}.hero-copy h1{font-size:clamp(40px,12vw,75px);line-height:.99;letter-spacing:-1.6px;margin:21px 0 17px}.hero-copy h1>span,.hero-copy h1>em{white-space:normal}.hero-intro{font-size:14px;line-height:1.7;max-width:450px}.home-actions{margin:22px 0 17px;gap:10px;display:flex}.hero-create,.hero-join{font-size:17px;min-height:53px;padding:13px 17px;flex:1;min-width:0}.hero-create>svg{width:19px}.hero-trust{font-size:9px;gap:19px;flex-wrap:wrap}.hero-trust svg{width:13px}.hero-art{border-radius:25px;max-width:470px;width:100%;aspect-ratio:1;min-height:0;padding:0;margin:10px auto 4px}.hero-art .wheel-stage{width:104%;max-width:none;transform:translateY(-6px)}.christmas-gifts{width:118%;left:-9%;bottom:-12px}.hero-wheel-caption{bottom:-2px;padding:11px 17px;font-size:11px;gap:8px}.christmas-steps{grid-template-columns:1fr;margin:15px 0 25px;padding:6px 23px;border-radius:20px}.christmas-steps>div{padding:24px 0;display:grid;grid-template-columns:36px 1fr;column-gap:16px;text-align:start;align-items:center}.christmas-steps>div+div{border-inline-start:0;border-top:1px solid color-mix(in srgb,var(--gold) 27%,transparent)}.christmas-steps svg{grid-row:span 2;width:30px;height:30px;margin:0}.christmas-steps h2{font-size:25px;line-height:1.2;margin-bottom:4px}.christmas-steps p{font-size:11px;max-width:none;line-height:1.7}.hanging-ornaments{width:140px;right:-45px;top:-20px;opacity:.65}.fairy-lights{height:49px;min-width:850px;left:-100px}.frost-decoration{width:100px;height:100px;opacity:.15;left:-60px}.frost-right{left:auto;right:-70px;width:150px;height:150px}.snowflake{scale:.8}.site-footer{margin-inline:24px;padding:18px 0 28px;gap:14px}.site-footer>span:first-child{font-size:17px}.site-footer p{font-size:9px}.form-heading h1{font-size:38px}.form-heading p{font-size:12px}.panel-title h2{font-size:27px}.room-heading h1{font-size:35px}.game-actions h2{font-size:28px}.preview-card h3{font-size:29px}.modal h2{font-size:32px}[dir=rtl] .hero-copy h1{font-size:clamp(35px,9.8vw,60px);line-height:1.24;letter-spacing:-1px}}[dir=rtl] .hero-copy h1{margin-inline-end:-15px;margin-inline-start:0;letter-spacing:-1.4px;font-size:clamp(46px,4.7vw,70px);line-height:1.2}[dir=rtl] .hero-copy h1 em{font-style:normal}[dir=rtl] .brand{font-family:Cormorant Garamond,Georgia,serif}@media(max-width:760px){[dir=rtl] .hero-copy h1{font-size:clamp(35px,9.8vw,60px);line-height:1.24;margin:21px 0 17px}}@media(prefers-reduced-motion:reduce){.festive-atmosphere .snowflake,.frost-decoration,.christmas-stardust,.winner-confetti{display:none!important}.hero-art .wheel-disc,.fairy-bulb,.wheel-bulb,.hanging-ornaments,.christmas-gifts,.hero-wheel-halo{animation:none!important}}:root{--pointer-gold:#f5d28a;--pointer-rose:#ff9bb1}[data-theme=light]{--pointer-gold:#9d6823;--pointer-rose:#b92e50}.pointer-magic{position:fixed;inset:0;z-index:200;pointer-events:none!important;overflow:hidden;contain:strict}.pointer-spark{position:absolute;display:block;line-height:1;font-family:Georgia,serif;-webkit-user-select:none;user-select:none;pointer-events:none;filter:drop-shadow(0 0 4px #efb86166);will-change:transform,opacity}.trail-spark{filter:none}@media(hover:hover)and (pointer:fine){[data-cursor=custom] body{cursor:url(/cursors/christmas-arrow.svg?v=3) 2 1,auto}[data-cursor=custom] :is(button,a[href],select,summary,[role=button],label[for],input[type=checkbox],input[type=radio],input[type=range],input[type=color],.toggle-row,.upload-cover):not(:disabled){cursor:url(/cursors/christmas-pointer.svg?v=3) 2 1,pointer}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),textarea,[contenteditable=true]{cursor:text}button:disabled,input:disabled{cursor:not-allowed}}@media(forced-colors:active){[data-cursor=custom] body{cursor:auto}[data-cursor=custom] :is(button,a[href],select,summary,[role=button],label[for],input[type=checkbox],input[type=radio],input[type=range],input[type=color],.toggle-row,.upload-cover):not(:disabled){cursor:pointer}}[data-motion=reduced] .pointer-magic{display:none}@media(prefers-reduced-motion:reduce){.pointer-magic{display:none}}@media(hover:none)and (pointer:coarse){.cursor-preference{display:none}}.roster-fields{padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:22px}.roster-fields>.field-label{margin-top:0}.roster-choices .choice{padding:16px 12px}.roster-choices .choice small{font-size:11px}.join-identity-fields>label,.join-identity-fields>.small{margin-top:20px}.join-identity-fields>label:first-child{margin-top:0}.roster-loading{display:flex;gap:8px;align-items:center;margin-top:15px;color:var(--muted);font-size:12px}.invitation-preview{display:flex;flex-direction:column;gap:6px;background:var(--soft);border:1px solid var(--line);padding:15px;border-radius:12px;margin-top:20px}.invitation-preview strong{font-family:var(--heading);font-size:23px;font-weight:500}.invitation-preview small{font-size:11px;color:var(--muted)}.remembered-return{width:100%;margin-top:14px}.room-identity{padding:21px}.identity-heading{display:flex;align-items:center;gap:9px;font-size:13px;line-height:1.6}.identity-heading svg{color:var(--gold)}.room-identity label{margin-top:17px!important}.room-identity>.small{margin-top:10px}.roster-claim-progress{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--gold);margin-top:16px}.unclaimed-roster{display:flex;flex-wrap:wrap;gap:6px;margin-top:15px;padding-top:13px;border-top:1px solid var(--line)}.unclaimed-roster>span{width:100%;font-size:10px;color:var(--muted);margin-bottom:3px}.unclaimed-roster small{font-size:11px;padding:4px 8px;border:1px solid var(--line);border-radius:20px;color:var(--muted)}.kick-button{width:28px;height:30px;display:grid;place-items:center;border-radius:8px;color:var(--muted);flex-shrink:0;padding:0}.kick-button:hover{color:#ff9eae;background:var(--soft)}.kick-dialog>strong{font-size:20px;overflow-wrap:anywhere}.kick-dialog .kick-warning{color:var(--gold);border:1px solid var(--line);padding:12px;border-radius:10px}.kick-dialog .button{width:100%;margin-top:12px}.room-memory .button{width:100%;padding-inline:12px;font-size:11px}.room-memory .recovery-privacy{display:flex;gap:7px;align-items:flex-start;font-size:10px;line-height:1.8;margin-bottom:0}.room-memory .recovery-privacy svg{margin-top:3px;flex-shrink:0}.room-library{position:relative;padding:25px 0 30px}.room-library h2{display:flex;align-items:center;gap:10px;font-size:30px}.room-library h2 svg{color:var(--gold)}.library-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.library-actions .text-button{font-size:11px;color:var(--gold)}.library-help{display:flex;gap:8px;align-items:flex-start;font-size:11px;color:var(--muted);margin-top:14px;line-height:1.8;max-width:700px}.library-help svg{flex-shrink:0;margin-top:3px}.library-toolbar{display:flex;align-items:center;gap:18px;margin-top:24px}.library-toolbar .segmented{flex:1;margin-bottom:0}.library-toolbar .segmented button{min-height:38px}.library-search{display:flex;flex-direction:row;gap:7px;align-items:center;margin:0!important;position:relative;flex:1}.library-search>svg{position:absolute;inset-inline-start:13px;color:var(--muted)}.library-search input{min-height:46px;padding-inline-start:36px;font-size:12px}.library-grid{max-height:600px;overflow:auto;padding:3px}.library-grid small+small{opacity:.75;font-size:9px}.library-empty{padding:20px 0}.is-slicing .wheel-orbit{border-color:var(--gold);box-shadow:0 0 30px #e6bc6230;transition:border-color .3s,box-shadow .3s}.joining-slice{animation:slice-welcome .72s ease-out both}@keyframes slice-welcome{0%{opacity:0;filter:brightness(2) drop-shadow(0 0 8px #ffdd8b)}35%{opacity:1;filter:brightness(1.5) drop-shadow(0 0 4px #ffdd8b)}to{opacity:1;filter:brightness(1)}}[data-motion=reduced] .joining-slice{animation:none}@media(max-width:760px){.room-library{padding-top:15px}.room-library>.section-heading{align-items:flex-start;flex-direction:column;gap:16px}.room-library h2{font-size:27px}.library-actions{gap:18px}.library-actions .text-button{font-size:11px}.library-toolbar{flex-direction:column;align-items:stretch;gap:12px;margin-top:18px}.library-toolbar .segmented button{font-size:10px;padding-inline:6px}.library-search input{font-size:16px}.library-grid{max-height:550px}.guest-row{gap:6px}.status{max-width:97px}.kick-button{width:26px}}
