:root{--ink: #1a1714;--ink-soft: #4a4541;--ink-muted: #8a847d;--cream: #faf8f5;--cream-dark: #f0ece6;--cream-darker: #e5e0d8;--accent: #c8432b;--accent-hover: #b03822;--accent-light: #f5d9d3;--accent-glow: rgba(200, 67, 43, .08);--sage: #6b7c5e;--sage-light: #e8ede4;--gold: #c9a84c;--gold-light: #f7f0dc;--shadow-sm: 0 1px 3px rgba(26, 23, 20, .06);--shadow-md: 0 4px 16px rgba(26, 23, 20, .08);--shadow-lg: 0 8px 40px rgba(26, 23, 20, .1);--shadow-xl: 0 16px 64px rgba(26, 23, 20, .12);--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--radius-xl: 28px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:DM Sans,sans-serif;background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:hidden}button{font-family:DM Sans,sans-serif}.logo{font-family:Fraunces,serif;font-weight:700;font-size:26px;color:var(--ink);letter-spacing:-.02em;text-decoration:none}.logo span{color:var(--accent)}.sound-toggle{width:40px;height:40px;border-radius:50%;border:1px solid var(--cream-darker);background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--ink-muted);transition:all .2s;flex-shrink:0}.sound-toggle:hover{border-color:var(--ink-muted);color:var(--ink)}.sound-toggle.on{color:var(--accent);border-color:var(--accent-light)}.screen-nav{width:100%;display:flex;justify-content:space-between;align-items:center;padding:28px 48px;max-width:900px;margin:0 auto}.nav-back{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--ink-muted);cursor:pointer;border:none;background:none;transition:color .2s;padding:4px}.nav-back:hover{color:var(--ink)}.nav-spacer{width:60px}.landing{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:40px 24px;position:relative;overflow:hidden}.landing:before{content:"";position:absolute;top:-200px;right:-200px;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,var(--accent-glow) 0%,transparent 70%);pointer-events:none}.landing:after{content:"";position:absolute;bottom:-150px;left:-100px;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(107,124,94,.06) 0%,transparent 70%);pointer-events:none}.landing-header{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:28px 48px;z-index:2}.landing-content{text-align:center;max-width:560px;position:relative;z-index:1}.landing-content h1{font-family:Fraunces,serif;font-weight:700;font-size:52px;line-height:1.1;letter-spacing:-.03em;color:var(--ink);margin-bottom:16px}.landing-content .tagline{font-size:17px;color:var(--ink-muted);line-height:1.6;margin-bottom:44px;font-weight:400}.search-bar{display:flex;align-items:center;background:#fff;border-radius:100px;padding:6px 6px 6px 28px;box-shadow:var(--shadow-md);border:1px solid var(--cream-darker);max-width:480px;margin:0 auto 16px;transition:box-shadow .3s,border-color .3s}.search-bar:focus-within{box-shadow:var(--shadow-lg);border-color:var(--accent-light)}.search-bar .pin{color:var(--accent);margin-right:12px;flex-shrink:0;display:flex}.search-bar input{flex:1;min-width:0;border:none;outline:none;font-family:DM Sans,sans-serif;font-size:16px;color:var(--ink);background:transparent}.search-bar input::placeholder{color:var(--ink-muted);font-weight:300}.search-bar .go-btn{flex-shrink:0;width:52px;height:52px;border-radius:50%;background:var(--accent);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .15s}.search-bar .go-btn:hover{background:var(--accent-hover);transform:scale(1.04)}.use-location{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--ink-muted);cursor:pointer;padding:8px 16px;border-radius:100px;border:none;background:transparent;transition:color .2s,background .2s}.use-location:hover{color:var(--accent);background:var(--accent-glow)}.landing-error{margin-top:14px;font-size:13px;color:var(--accent);min-height:18px}.landing-footer{position:absolute;bottom:28px;left:0;right:0;text-align:center;font-size:12px;color:var(--ink-muted);letter-spacing:.02em}.landing-footer a{color:var(--ink-muted);text-decoration:none;border-bottom:1px solid var(--cream-darker);transition:color .2s,border-color .2s}.landing-footer a:hover{color:var(--accent);border-color:var(--accent-light)}.landing-footer .brand-link{color:var(--accent);border-bottom:none}.footer-links{margin-top:6px;display:flex;gap:14px;justify-content:center}.picker{display:flex;flex-direction:column;align-items:center;min-height:100vh;padding:0 24px 60px}.location-tag{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:var(--sage-light);border-radius:100px;font-size:13px;font-weight:500;color:var(--sage);margin-bottom:32px}.filters-section{max-width:760px;width:100%;margin-bottom:36px}.filters-row{display:flex;gap:32px;align-items:flex-start;justify-content:center;flex-wrap:wrap}.filter-group label{display:block;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:10px}.filter-pills{display:flex;gap:6px}.pill{padding:10px 20px;border-radius:100px;border:1px solid var(--cream-darker);background:#fff;font-size:14px;font-weight:500;color:var(--ink-soft);cursor:pointer;transition:all .2s}.pill:hover{border-color:var(--ink-muted)}.pill.active{background:var(--ink);border-color:var(--ink);color:#fff}.cuisine-select{padding:10px 36px 10px 16px;border-radius:100px;border:1px solid var(--cream-darker);background:#fff;font-family:DM Sans,sans-serif;font-size:14px;font-weight:500;color:var(--ink-soft);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238a847d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;transition:border-color .2s}.cuisine-select:hover{border-color:var(--ink-muted)}.mode-selector{display:flex;gap:4px;padding:5px;background:var(--cream-dark);border-radius:100px;margin-bottom:44px}.mode-option{display:flex;align-items:center;gap:7px;padding:9px 18px;border-radius:100px;border:none;background:transparent;font-size:13px;font-weight:600;color:var(--ink-muted);cursor:pointer;transition:all .2s;white-space:nowrap}.mode-option:hover{color:var(--ink)}.mode-option.active{background:#fff;color:var(--accent);box-shadow:var(--shadow-sm)}.mode-option svg{flex-shrink:0}.mode-stage{width:100%;display:flex;flex-direction:column;align-items:center}.loading-stage{display:flex;flex-direction:column;align-items:center;gap:28px;padding:20px 0 40px}.skeleton-circle{width:340px;height:340px;max-width:80vw;max-height:80vw;border-radius:50%;background:linear-gradient(110deg,var(--cream-dark) 40%,#f6f2ec 50%,var(--cream-dark) 60%);background-size:200% 100%;animation:shimmer 1.4s ease-in-out infinite}.skeleton-bar{width:220px;height:56px;border-radius:100px;background:linear-gradient(110deg,var(--cream-dark) 40%,#f6f2ec 50%,var(--cream-dark) 60%);background-size:200% 100%;animation:shimmer 1.4s ease-in-out infinite}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.loading-note{font-size:14px;color:var(--ink-muted)}.wheel-container{position:relative;margin-bottom:44px}.wheel-outer{width:340px;height:340px;border-radius:50%;background:#fff;box-shadow:var(--shadow-xl);display:flex;align-items:center;justify-content:center;position:relative}.wheel-pointer{position:absolute;top:-14px;left:50%;transform:translate(-50%);z-index:10;width:0;height:0;border-left:14px solid transparent;border-right:14px solid transparent;border-top:24px solid var(--ink);filter:drop-shadow(0 2px 4px rgba(0,0,0,.15));transform-origin:50% 20%}.wheel-pointer.ticking{animation:pointerNudge .09s ease-out}@keyframes pointerNudge{0%{transform:translate(-50%) rotate(0)}40%{transform:translate(-50%) rotate(-7deg)}to{transform:translate(-50%) rotate(0)}}.wheel-canvas{width:300px;height:300px;border-radius:50%;cursor:pointer}.wheel-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:56px;height:56px;border-radius:50%;background:#fff;box-shadow:var(--shadow-md);display:flex;align-items:center;justify-content:center;z-index:5;color:var(--accent);pointer-events:none}.spin-btn{display:inline-flex;align-items:center;gap:10px;padding:18px 56px;border-radius:100px;background:var(--accent);border:none;color:#fff;font-size:17px;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:background .2s,transform .15s,box-shadow .2s,opacity .2s;box-shadow:0 4px 20px #c8432b4d}.spin-btn:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 6px 28px #c8432b59}.spin-btn:active:not(:disabled){transform:translateY(0)}.spin-btn:disabled{opacity:.55;cursor:default}.slot-machine{max-width:440px;width:100%;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);overflow:hidden;border:1px solid var(--cream-darker)}.slot-top{background:var(--ink);padding:24px 32px;text-align:center}.slot-top .slot-logo{font-family:Fraunces,serif;font-size:22px;color:#fff;font-weight:700}.slot-top .slot-logo em{color:var(--accent);font-style:normal}.slot-top .sub{font-size:13px;color:#ffffff80;margin-top:4px}.slot-body{padding:32px}.slot-reels{display:flex;gap:12px;margin-bottom:28px;justify-content:center}.reel{width:110px;height:140px;background:var(--cream);border:2px solid var(--cream-darker);border-radius:var(--radius-md);overflow:hidden;position:relative}.reel-label{font-size:9px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);text-align:center;padding:8px 0 0;background:var(--cream);position:relative;z-index:2}.reel-window{height:90px;overflow:hidden}.reel-strip{display:flex;flex-direction:column;align-items:center}.reel-item{height:90px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:var(--ink);text-align:center;padding:0 8px;white-space:nowrap;max-width:106px;overflow:hidden}.reel-item.winner{color:var(--accent);font-weight:700}.reel:after{content:"";position:absolute;top:50%;left:0;right:0;height:44px;transform:translateY(-50%);border-top:2px solid var(--accent);border-bottom:2px solid var(--accent);pointer-events:none;z-index:3;background:var(--accent-glow)}.slot-btn{width:100%;padding:18px;border-radius:var(--radius-md);background:var(--accent);border:none;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 20px #c8432b40;margin-bottom:16px}.slot-btn:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.slot-btn:active:not(:disabled){transform:translateY(0)}.slot-btn:disabled{opacity:.55;cursor:default}.slot-result{text-align:center;padding:20px;background:var(--cream);border-radius:var(--radius-md);opacity:0;transform:translateY(10px);transition:opacity .4s ease,transform .4s ease}.slot-result.visible{opacity:1;transform:translateY(0)}.slot-result h3{font-family:Fraunces,serif;font-size:22px;font-weight:700;margin-bottom:4px}.slot-result p{font-size:13px;color:var(--ink-muted)}.card-counter{text-align:center;font-size:13px;color:var(--ink-muted);margin-bottom:16px}.card-counter strong{color:var(--ink)}.card-stack{max-width:400px;width:100%;position:relative;height:440px;margin-bottom:16px}.fcard{position:absolute;width:100%;height:400px;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;border:1px solid var(--cream-darker);transition:transform .6s cubic-bezier(.34,1.56,.64,1),opacity .4s;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.fcard.dragging{transition:none;cursor:grabbing}.fcard.gone-l{transform:translate(-120%) rotate(-15deg)!important;opacity:0!important;transition:all .5s ease!important}.fcard.gone-r{transform:translate(120%) rotate(15deg)!important;opacity:0!important;transition:all .5s ease!important}.fcard-hero{height:200px;position:relative;display:flex;align-items:flex-end;padding:20px 24px}.fcard-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(26,23,20,.6) 0%,transparent 60%)}.fcard-hero h3{font-family:Fraunces,serif;font-size:30px;font-weight:700;color:#fff;position:relative;z-index:1;text-shadow:0 2px 12px rgba(0,0,0,.3)}.fcard-badge{position:absolute;top:16px;right:16px;background:#fffffff2;border-radius:100px;padding:5px 12px;font-size:13px;font-weight:600;z-index:2;display:flex;align-items:center;gap:4px}.fcard-badge .star{color:var(--gold);display:flex}.fcard-body{padding:20px 24px}.fcard-meta{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}.fcard-meta span{font-size:13px;font-weight:500;color:var(--ink-muted)}.fcard-meta .dot{width:3px;height:3px;border-radius:50%;background:var(--cream-darker);padding:0}.fcard-meta .open{color:var(--sage)}.fcard-desc{font-size:14px;color:var(--ink-soft);line-height:1.5;margin-bottom:12px}.fcard-addr{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-muted)}.fcard-addr svg{color:var(--accent);flex-shrink:0}.card-btns{display:flex;justify-content:center;gap:24px;margin-bottom:8px}.card-btn-col{display:flex;flex-direction:column;align-items:center}.cbtn{width:64px;height:64px;border-radius:50%;border:2px solid var(--cream-darker);background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;box-shadow:var(--shadow-sm)}.cbtn:hover{transform:scale(1.08)}.cbtn.pass{color:var(--ink-muted)}.cbtn.pass:hover{border-color:var(--ink-muted);background:var(--cream)}.cbtn.pick{color:var(--accent);border-color:var(--accent-light)}.cbtn.pick:hover{background:var(--accent-light);border-color:var(--accent)}.cbtn.shuf{color:var(--gold);border-color:var(--gold-light)}.cbtn.shuf:hover{background:var(--gold-light);border-color:var(--gold)}.cbtn-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);margin-top:6px}.bracket{max-width:700px;width:100%}.bracket-round{margin-bottom:40px}.round-label{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:16px;text-align:center}.matchups{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.matchup{background:#fff;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--cream-darker);width:300px;box-shadow:var(--shadow-sm);transition:box-shadow .2s}.matchup:hover{box-shadow:var(--shadow-md)}.matchup.championship{width:360px}.matchup-head{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);padding:10px 16px;border-bottom:1px solid var(--cream-dark);text-align:center;background:var(--cream)}.mo{display:flex;align-items:center;padding:16px;cursor:pointer;transition:background .15s;position:relative}.mo:hover{background:var(--accent-glow)}.mo+.mo{border-top:1px solid var(--cream-dark)}.mo.sel{background:var(--accent-light)}.mo.sel:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent)}.mo.elim{opacity:.35}.mo-dot{width:40px;height:40px;border-radius:10px;margin-right:14px;flex-shrink:0}.mo-info{flex:1;min-width:0}.mo-name{font-weight:600;font-size:15px;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mo-meta{font-size:12px;color:var(--ink-muted)}.mo-rating{font-size:13px;font-weight:600;display:flex;align-items:center;gap:3px}.mo-rating .star{color:var(--gold);display:flex}.bracket-size{display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:28px}.bracket-size .label{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);margin-right:6px}.pill.small{padding:7px 16px;font-size:13px}.bracket-round.pending-round{opacity:.45;pointer-events:none}.bracket-round.reveal{animation:cardIn .5s ease-out}.winner-card{text-align:center;padding:32px;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:400px;margin:0 auto;border:2px solid var(--gold-light);animation:cardIn .5s ease-out}.winner-card .label{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}.winner-card h3{font-family:Fraunces,serif;font-size:32px;font-weight:700;margin-bottom:8px}.winner-card .meta{font-size:14px;color:var(--ink-muted)}.winner-card.celebrate{animation:championPop .7s cubic-bezier(.34,1.56,.64,1),championGlow 2s ease-out .35s}@keyframes championPop{0%{opacity:0;transform:scale(.7) translateY(26px)}60%{opacity:1;transform:scale(1.045) translateY(-3px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes championGlow{0%,to{box-shadow:var(--shadow-lg)}30%{box-shadow:0 8px 44px #c9a84c73}65%{box-shadow:0 8px 48px #c9a84c38}}.win-dots{display:flex;gap:9px;justify-content:center;margin-top:18px}.win-dots span{width:10px;height:10px;border-radius:50%;opacity:0;transform:scale(0);animation:dotPop .5s cubic-bezier(.34,1.56,.64,1) forwards}.win-dots span:nth-child(1){background:#d4a574;animation-delay:.4s}.win-dots span:nth-child(2){background:#c9a84c;animation-delay:.52s}.win-dots span:nth-child(3){background:#6b7c5e;animation-delay:.64s}.win-dots span:nth-child(4){background:#c8876b;animation-delay:.76s}.win-dots span:nth-child(5){background:#8a9e7a;animation-delay:.88s}@keyframes dotPop{70%{opacity:1;transform:scale(1.35)}to{opacity:1;transform:scale(1)}}.result{display:flex;flex-direction:column;align-items:center;min-height:100vh;padding:0 24px 60px}.result-card{max-width:520px;width:100%;background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-xl);animation:cardIn .5s ease-out}@keyframes cardIn{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.result-image{width:100%;height:280px;background:linear-gradient(135deg,#d4a574,#c8876b,#a67c6b);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.result-image:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 30% 40%,rgba(255,255,255,.12) 0%,transparent 60%),radial-gradient(circle at 70% 70%,rgba(0,0,0,.08) 0%,transparent 50%)}.result-image-name{font-family:Fraunces,serif;font-size:44px;font-weight:700;color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.15);position:relative;z-index:1;padding:0 24px;text-align:center}.result-badge{position:absolute;top:20px;right:20px;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:100px;padding:6px 14px;font-size:13px;font-weight:600;color:var(--ink);display:flex;align-items:center;gap:4px;z-index:2}.result-badge .star{color:var(--gold);display:flex}.result-badge .count{color:var(--ink-muted);font-weight:400}.result-body{padding:32px}.result-title{font-family:Fraunces,serif;font-size:28px;font-weight:700;letter-spacing:-.02em;margin-bottom:8px}.result-meta{display:flex;align-items:center;gap:16px;margin-bottom:16px;flex-wrap:wrap}.meta-tag{font-size:13px;font-weight:500;color:var(--ink-muted);display:flex;align-items:center;gap:5px}.meta-tag.open{color:var(--sage)}.meta-tag.closed{color:var(--accent)}.meta-divider{width:3px;height:3px;border-radius:50%;background:var(--cream-darker)}.result-desc{font-size:15px;color:var(--ink-soft);line-height:1.6;margin-bottom:24px}.result-address{display:flex;align-items:center;gap:10px;padding:14px 18px;background:var(--cream);border-radius:var(--radius-md);font-size:14px;color:var(--ink-soft);margin-bottom:28px}.result-address .addr-icon{color:var(--accent);flex-shrink:0;display:flex}.result-actions{display:flex;gap:10px;margin-bottom:20px}.action-btn{flex:1;padding:14px;border-radius:var(--radius-md);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:none;text-align:center;text-decoration:none;color:inherit;display:flex;align-items:center;justify-content:center;gap:8px}.action-btn.primary{background:var(--ink);color:#fff}.action-btn.primary:hover{background:#2a2520}.action-btn.secondary{background:var(--cream);color:var(--ink-soft);border:1px solid var(--cream-darker)}.action-btn.secondary:hover{border-color:var(--ink-muted);color:var(--ink)}.order-row{display:flex;gap:8px}.order-btn{flex:1;padding:12px;border-radius:var(--radius-sm);border:1px solid var(--cream-darker);background:#fff;font-size:12px;font-weight:600;color:var(--ink-soft);cursor:pointer;transition:all .2s;text-align:center;letter-spacing:.02em;text-decoration:none}.order-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-glow)}.affiliate-disclosure{margin-top:10px;font-size:12px;color:var(--ink-muted);text-align:center}.bottom-actions{display:flex;gap:10px;margin-top:24px;max-width:520px;width:100%}.bottom-btn{flex:1;padding:16px;border-radius:100px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;text-align:center;border:none}.bottom-btn.spin-again{background:var(--accent);color:#fff;box-shadow:0 4px 20px #c8432b40}.bottom-btn.spin-again:hover{background:var(--accent-hover);transform:translateY(-1px)}.bottom-btn.spin-again:active{transform:translateY(0)}.bottom-btn.new-search,.bottom-btn.share{background:#fff;color:var(--ink-soft);border:1px solid var(--cream-darker)}.bottom-btn.new-search:hover,.bottom-btn.share:hover{border-color:var(--ink-muted);color:var(--ink)}.bottom-btn.share{flex:1}.bottom-btn.share.nudge{animation:shareNudge 1.6s ease-out 1}@keyframes shareNudge{0%,to{box-shadow:0 0 #c8432b00}35%{box-shadow:0 0 0 8px #c8432b24}70%{box-shadow:0 0 0 4px #c8432b14}}.share-toast{position:fixed;bottom:32px;left:50%;transform:translate(-50%) translateY(20px);background:var(--ink);color:#fff;padding:12px 24px;border-radius:100px;font-size:14px;font-weight:500;opacity:0;transition:opacity .3s,transform .3s;pointer-events:none;z-index:200}.share-toast.visible{opacity:1;transform:translate(-50%) translateY(0)}.legal{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:0 24px 80px}.legal-content{max-width:640px;width:100%;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:48px;animation:cardIn .5s ease-out}.legal-content h1{font-family:Fraunces,serif;font-size:36px;font-weight:700;letter-spacing:-.02em;margin-bottom:8px}.legal-content .updated{font-size:13px;color:var(--ink-muted);margin-bottom:28px}.legal-content h2{font-family:Fraunces,serif;font-size:20px;font-weight:500;margin:28px 0 10px}.legal-content p{font-size:15px;color:var(--ink-soft);line-height:1.7;margin-bottom:12px}.legal-note{background:var(--sage-light);color:var(--sage);border-radius:var(--radius-md);padding:14px 18px;font-size:13px;font-weight:500;margin-bottom:24px}.sound-nudge{position:absolute;top:74px;right:40px;background:var(--ink);color:#fff;font-size:13px;font-weight:500;padding:9px 16px;border-radius:100px;box-shadow:var(--shadow-md);z-index:50;opacity:0;transform:translateY(-6px);transition:opacity .3s ease,transform .3s ease;pointer-events:none;white-space:nowrap}.sound-nudge:before{content:"";position:absolute;top:-5px;right:22px;width:10px;height:10px;background:var(--ink);transform:rotate(45deg)}.sound-nudge.visible{opacity:1;transform:translateY(0)}.mode-option:disabled{opacity:.4;cursor:default}.mode-option:disabled:hover{color:var(--ink-muted)}.picker-note{font-size:13px;color:var(--ink-muted);text-align:center;margin:-28px 0 28px}.empty-state{text-align:center;padding:48px 32px;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);max-width:420px;animation:cardIn .5s ease-out}.empty-state h3{font-family:Fraunces,serif;font-size:26px;font-weight:700;letter-spacing:-.02em;margin-bottom:10px}.empty-state p{font-size:15px;color:var(--ink-soft);line-height:1.6;margin-bottom:24px}.empty-state .reset-filters{padding:14px 32px;border-radius:100px;background:var(--accent);border:none;color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:background .2s,transform .15s;box-shadow:0 4px 20px #c8432b40}.empty-state .reset-filters:hover{background:var(--accent-hover);transform:translateY(-1px)}.single-match{border:2px solid var(--gold-light)}.single-match .label{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}.fresh-picks{display:inline-flex;align-items:center;gap:7px;margin-top:28px;font-size:13px;font-weight:600;color:var(--ink-muted);background:transparent;border:none;cursor:pointer;padding:8px 16px;border-radius:100px;transition:color .2s,background .2s}.fresh-picks:hover{color:var(--gold);background:var(--gold-light)}.result-image.has-photo:before{background:linear-gradient(#1a17142e,#1a171452),var(--hero-photo) center / cover no-repeat}.room-body{width:100%;max-width:760px;display:flex;flex-direction:column;align-items:center;padding-bottom:40px}.room-people{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;align-items:center;margin-bottom:20px;max-width:560px}.person-chip{padding:5px 12px;border-radius:100px;background:var(--sage-light);color:var(--sage);font-size:12px;font-weight:600}.person-count{font-size:12px;color:var(--ink-muted);margin-left:4px}.room-code-line{font-size:12px;color:var(--ink-muted);margin:10px 0 28px;text-align:center}.room-card{max-width:440px}.room-body a.spin-btn{color:#fff;text-decoration:none}.picker-note a{color:var(--accent);text-decoration:none}.picker-note a:hover{text-decoration:underline}.room-join{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.room-join input,.group-start input{padding:12px 18px;border-radius:100px;border:1px solid var(--cream-darker);font-family:DM Sans,sans-serif;font-size:15px;color:var(--ink);outline:none;background:#fff;min-width:0;width:180px}.room-join input:focus,.group-start input:focus{border-color:var(--accent-light);box-shadow:var(--shadow-sm)}.room-join .spin-btn{padding:12px 28px;font-size:15px}.mo.voted{background:var(--accent-glow)}.mo.voted .mo-name:after{content:" — your vote";font-size:11px;font-weight:500;color:var(--accent)}.mo-votes{font-size:11px;font-weight:600;color:var(--accent);margin-top:3px}.mo.lobby-row{cursor:default}.mo.lobby-row:hover{background:transparent}.lock-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;background:var(--cream);border-top:1px solid var(--cream-dark)}.lock-status{font-size:12px;color:var(--ink-muted)}.lock-btn:disabled{opacity:.45;cursor:default}.group-cta{display:flex;align-items:center;gap:10px;margin-top:28px;font-size:13px;color:var(--ink-muted);flex-wrap:wrap;justify-content:center}.group-start{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:center;background:#fff;border:1px solid var(--cream-darker);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:14px 18px;margin-bottom:28px;max-width:720px}.group-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:#fff;border:1px solid var(--cream-darker);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:16px 22px;margin-bottom:28px;max-width:720px;width:100%}.group-banner-text{display:flex;flex-direction:column;gap:2px}.group-banner-text strong{font-size:15px}.group-banner-text span{font-size:13px;color:var(--ink-muted)}.btn-compact{padding:12px 26px;font-size:15px}.select-compact{padding:10px 32px 10px 14px;font-size:13px}.group-start[hidden]{display:none}.timer-picker-wrap{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.timer-picker{display:inline-flex;gap:3px;padding:4px;background:var(--cream-dark);border-radius:100px}.setting-label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.timer-pill{min-width:42px;padding:8px 13px;border:none;border-radius:100px;background:transparent;font-size:13px;font-weight:600;color:var(--ink-muted);cursor:pointer;transition:all .2s}.timer-pill:hover{color:var(--ink)}.timer-pill.active{background:#fff;color:var(--accent);box-shadow:var(--shadow-sm)}.switch-label{display:inline-flex;flex:0 0 auto;align-items:center;gap:8px;font-size:13px;color:var(--ink-soft);cursor:pointer;white-space:nowrap}.switch{position:relative;display:inline-block;width:40px;height:22px}.switch input{opacity:0;width:0;height:0;position:absolute}.switch-track{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:100px;background:var(--cream-darker);transition:background .2s}.switch-track:before{content:"";position:absolute;width:16px;height:16px;border-radius:50%;background:#fff;top:3px;left:3px;box-shadow:var(--shadow-sm);transition:transform .2s}.switch input:checked+.switch-track{background:var(--accent)}.switch input:checked+.switch-track:before{transform:translate(18px)}.switch input:focus-visible+.switch-track{outline:2px solid var(--accent-light);outline-offset:2px}.round-timer{margin-left:8px;color:var(--accent);text-transform:none;letter-spacing:0;display:inline-block;font-size:15px}.room .round-label{font-size:13px}.room .round-timer{font-size:17px}.round-timer.urgent{font-weight:700;animation:timerShake .6s ease-in-out infinite}@keyframes timerShake{0%,to{transform:translate(0) rotate(0)}20%{transform:translate(-1.5px) rotate(-1.5deg)}40%{transform:translate(1.5px) rotate(1.5deg)}60%{transform:translate(-1px) rotate(-1deg)}80%{transform:translate(1px) rotate(1deg)}}.room-settings{display:flex;gap:6px;justify-content:center;margin-bottom:10px}.tb-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a171473;display:flex;align-items:center;justify-content:center;z-index:300;animation:tbFade .25s ease-out;padding:24px}@keyframes tbFade{0%{opacity:0}}.tb-card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);padding:28px 34px 24px;text-align:center;max-width:420px;width:100%;animation:cardIn .35s ease-out}.tb-tie{font-family:Fraunces,serif;font-weight:700;font-size:32px;letter-spacing:-.02em;margin-bottom:4px}.tb-card .label{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:4px}.tb-rows{display:flex;flex-direction:column;gap:10px;margin-top:20px;text-align:left}.tb-row{display:flex;align-items:center;gap:14px;padding:13px 16px;border-radius:var(--radius-md);border:1px solid var(--cream-darker);background:#fff;transition:background .08s,border-color .08s,transform .25s,opacity .3s;position:relative}.tb-row .dot{width:36px;height:36px;border-radius:10px;flex-shrink:0}.tb-row-info{min-width:0}.tb-row .n{font-weight:600;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tb-row .m{font-size:12px;color:var(--ink-muted)}.tb-row.hot{background:var(--accent-glow);border-color:var(--accent-light)}.tb-row.won{background:var(--accent-light);border-color:var(--accent);transform:scale(1.03)}.tb-row.lost{opacity:.4}.tb-chip{margin-left:auto;background:var(--accent);color:#fff;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:100px;animation:dotPop .4s cubic-bezier(.34,1.56,.64,1)}.tb-note{font-size:11px;font-weight:500;color:var(--ink-muted);text-align:center;padding:8px 12px;background:var(--cream);border-top:1px solid var(--cream-dark)}.intent{max-width:720px;margin:0 auto;padding:0 24px 80px}.intent-header{display:flex;justify-content:space-between;align-items:center;padding:28px 0}.intent h1{font-family:Fraunces,serif;font-weight:700;font-size:44px;line-height:1.1;letter-spacing:-.03em;margin:28px 0 16px}.intent .lede{font-size:17px;color:var(--ink-muted);line-height:1.65;margin-bottom:28px}.intent h2{font-family:Fraunces,serif;font-weight:500;font-size:26px;letter-spacing:-.01em;margin:44px 0 12px}.intent h3{font-size:16px;font-weight:600;margin:24px 0 6px}.intent p,.intent li{font-size:16px;color:var(--ink-soft);line-height:1.7}.intent p{margin-bottom:14px}.intent ol,.intent ul{padding-left:22px;margin-bottom:14px}.intent li{margin-bottom:8px}.intent li strong{color:var(--ink)}.intent a{color:var(--accent);text-decoration:none}.intent a:hover{text-decoration:underline}.intent .cta-row{margin:32px 0 8px;text-align:center}.intent a.spin-btn{color:#fff;text-decoration:none}.intent a.spin-btn:hover{text-decoration:none}.intent .intent-footer{margin-top:56px;padding-top:24px;border-top:1px solid var(--cream-darker);font-size:13px;color:var(--ink-muted);display:flex;gap:16px;flex-wrap:wrap}.intent .intent-footer a{color:var(--ink-muted)}@media(max-width:640px){.intent h1{font-size:34px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}@media(max-width:640px){.landing-content h1{font-size:36px}.landing-header,.screen-nav{padding:20px 24px}.result-body{padding:24px}.filters-row{gap:20px}.wheel-outer{width:280px;height:280px}.wheel-canvas{width:250px;height:250px}.result-image-name{font-size:34px}.mode-selector{flex-wrap:wrap;justify-content:center;max-width:320px;border-radius:var(--radius-lg)}.mode-option{flex:1 1 42%;justify-content:center;padding:10px 12px;font-size:12px}.legal-content{padding:32px 24px}.slot-body{padding:24px}.reel{width:96px}.card-stack{height:420px}.fcard{height:380px}.fcard-hero{height:180px}}@media(max-width:380px){.landing-content h1{font-size:32px}.wheel-outer{width:260px;height:260px}.wheel-canvas{width:232px;height:232px}.slot-reels{gap:8px}.reel{width:88px}.reel-item{font-size:11px;max-width:84px}.matchup,.matchup.championship{width:100%}.card-btns{gap:16px}.cbtn{width:56px;height:56px}.bottom-actions{flex-wrap:wrap}.bottom-btn.share{flex:1 1 100%}}
