.club-chat{height:var(--chat-height, 70dvh);min-height:180px;display:flex;flex-direction:column;min-width:0;background:#14151c}.chat-heading{padding:3px 16px;display:flex;justify-content:space-between;gap:8px;align-items:center;border-bottom:1px solid #ffffff10;background:#18191f;flex-shrink:0}.chat-heading h2{margin:0;font-size:14px;line-height:18px;letter-spacing:-.4px}.chat-heading p{margin:1px 0 0;font-size:10px;line-height:14px;color:#9b9ca8}.chat-members{display:flex;gap:4px;align-items:center;flex-shrink:0;color:#bce7c6;background:#26503a55;border-radius:22px;padding:5px 7px;font-size:9px}.chat-heading>div{min-width:0}.chat-heading p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-members svg{width:12px;height:12px}.chat-heading .button{min-height:32px;padding:6px 10px;font-size:11px}.chat-feed{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:16px 18px 24px;scrollbar-width:thin}.chat-date{text-align:center;margin:10px 0 20px;color:#878997;font-size:11px}.chat-message{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:20px}.chat-author{font-size:12px;color:#b2b4c2;margin:0 6px 7px;overflow-wrap:anywhere}.chat-message-line{display:flex;align-items:flex-end;gap:7px;width:100%;max-width:100%}.chat-bubble{margin:0;padding:12px 15px;line-height:1.6;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;min-width:0;max-width:min(84%,520px);border:1px solid #ffffff0d;border-radius:4px 18px 18px;background:#292b37;color:#f3f1f8}.chat-message time{font-size:10px;color:#898b9b;flex-shrink:0;margin-bottom:4px}.chat-message.mine{align-items:flex-end}.chat-message.mine .chat-message-line{flex-direction:row-reverse}.chat-message.mine .chat-bubble{background:#6d58dc;border-color:#8a76ec66;border-radius:18px 4px 18px 18px}.chat-empty{color:#9b9ca8;display:grid;justify-items:center;padding:40px 10px;text-align:center;font-size:14px}.chat-older{display:block;margin:0 auto 16px;border:1px solid #ffffff20;border-radius:20px;padding:8px 16px;font-size:12px;color:#c6bedf}.chat-composer{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#18191f;border-top:1px solid #ffffff12;flex-shrink:0}.chat-input{flex:1;min-width:0;position:relative}.chat-input input{width:100%;height:44px;min-height:44px;margin:0;border:1px solid #424251;border-radius:18px;background:#22232d;color:#fff;padding:9px 52px 9px 12px;font-size:16px;line-height:1.5}.chat-input small{position:absolute;top:50%;transform:translateY(-50%);right:9px;font-size:9px;color:#9495a4;pointer-events:none}.chat-send{width:44px;height:44px;flex-shrink:0;border-radius:50%;background:#7760e8;color:#fff;display:grid;place-items:center}.chat-send:disabled{opacity:.4}.chat-admin{height:calc(100dvh - 280px);min-height:420px;border:1px solid #ffffff18;border-radius:18px;overflow:hidden}.chat-delete{margin-left:auto;flex-shrink:0;color:#ef9eab}.chat-delete-preview{white-space:pre-wrap;overflow-wrap:anywhere;padding:16px;border-radius:12px;background:#ffffff08;max-height:220px;overflow:auto}.club-chat>.error-notice{margin:8px 16px;flex-shrink:0}@media(max-width:500px){.chat-heading{padding:2px 12px}.chat-heading h2{font-size:13px;line-height:16px}.chat-heading p{font-size:10px;line-height:12px}.chat-feed{padding-inline:12px}.chat-admin{height:65dvh;min-height:360px}.chat-admin .chat-heading{flex-wrap:wrap}}.chat-nav-icon{position:relative;display:inline-flex}.chat-unread{display:inline-flex;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#df3547;color:#fff;font-size:11px;font-weight:750;line-height:1;flex-shrink:0}.chat-nav-icon .chat-unread{position:absolute;top:-9px;left:14px;min-width:18px;height:18px;font-size:10px}#admin-navigation>button .chat-unread{margin-left:auto}.club-chat .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.chat-inbox{display:grid;grid-template-columns:280px minmax(0,1fr);height:calc(100dvh - 280px);min-height:460px;border:1px solid #ffffff18;border-radius:16px;overflow:hidden;background:#14151c}.chat-room-list{min-width:0;min-height:0;display:flex;flex-direction:column;border-right:1px solid #ffffff18;background:#18191f}.chat-room-list>header{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px;border-bottom:1px solid #ffffff10}.chat-room-list h2{margin:0;font-size:15px}.chat-room-list>header .button{min-height:32px;font-size:11px;padding:6px 10px}.chat-room-scroll{overflow-y:auto;min-height:0;flex:1}.chat-room{display:block;width:100%;min-width:0;padding:16px 12px;text-align:left;border-bottom:1px solid #ffffff0c}.chat-room.active{background:#7760e823;box-shadow:inset 3px 0 #9f8ff2}.chat-room:hover{background:#ffffff08}.chat-room-top,.chat-room-bottom{display:flex;align-items:center;gap:8px;justify-content:space-between}.chat-room-top strong{font-size:13px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-room-top time{font-size:9px;color:#9b9ca8;white-space:nowrap}.chat-room-bottom{margin-top:9px}.chat-room-bottom>span:first-child{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#b2b4c2;font-size:12px}.chat-room-detail{min-width:0;min-height:0}.chat-inbox .chat-admin{height:100%;min-height:0;border:0;border-radius:0}.chat-room-placeholder{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;color:#9b9ca8;font-size:13px}.chat-room-title{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.chat-back{flex-shrink:0;min-width:32px;height:32px}.club-chat>.chat-heading{min-height:34px}@media(max-width:800px){.chat-inbox{grid-template-columns:minmax(0,1fr);height:65dvh;min-height:380px}.chat-inbox .chat-room-detail,.chat-inbox.has-selection .chat-room-list{display:none}.chat-inbox.has-selection .chat-room-detail{display:block}.chat-inbox .chat-heading{flex-wrap:nowrap}}.group-bomb-board{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:24}.group-bomb-result-backdrop{position:absolute;inset:0;display:grid;place-items:center;background:#0008;z-index:26;pointer-events:none}.group-bomb-result{display:grid;gap:32px;text-align:center;width:fit-content;max-width:85%;padding:54px 76px;border:2px solid #f29a54;border-radius:32px;background:linear-gradient(135deg,#35130df5,#120e0af5);box-shadow:0 0 100px #ff5a1633}.group-bomb-result span{font-size:52px;font-weight:800;color:#ffae72}.group-bomb-result strong{font-size:100px;line-height:1.15;overflow-wrap:anywhere;color:#fff6de}.group-bomb-mobile{position:fixed;inset:0;z-index:100;background:radial-gradient(ellipse at 50% 30%,#392516,#0c0c10 68%);color:#fff3d4;overflow:auto;display:flex;flex-direction:column;padding:24px 20px max(24px,env(safe-area-inset-bottom))}.group-bomb-mobile header{display:flex;justify-content:space-between;align-items:center;gap:16px;font-weight:700}.group-bomb-mobile header small{color:#c0ad8b;white-space:nowrap}.group-bomb-mobile-stage{position:relative;width:calc(100% + 40px);margin-left:-20px;max-width:600px;align-self:center;min-height:0;flex:1}.group-bomb-mobile-stage canvas{display:block;position:absolute;top:0;left:0;width:100%;height:auto;max-height:100%;object-fit:contain;object-position:top}.group-bomb-held-time{position:absolute;top:min(78vw,70%);left:0;width:100%;text-align:center;font-variant-numeric:tabular-nums;font-size:clamp(36px,10vw,60px);font-weight:800;color:#ffe386}.group-bomb-wait{position:absolute;top:32%;width:100%;padding:20px;text-align:center;line-height:1.8;color:#ccbea5}.group-bomb-wait strong{display:block;color:#ffdf91;font-size:28px;overflow-wrap:anywhere}.group-bomb-mobile-actions{width:100%;max-width:560px;align-self:center;display:grid;gap:18px;margin-top:20px}.group-bomb-mobile-actions .button{min-height:66px;font-size:24px}.group-bomb-mobile .group-bomb-result{padding:32px 24px;gap:24px;max-width:92%}.group-bomb-mobile .group-bomb-result span{font-size:28px}.group-bomb-mobile .group-bomb-result strong{font-size:clamp(32px,12vw,56px)}.group-bomb-admin-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.group-bomb-admin-actions .button{min-width:0;white-space:normal;min-height:60px}.group-bomb-admin-actions .group-bomb-forfeit{grid-column:1 / -1}.game-music-panel{display:grid;gap:12px;padding:22px;margin:24px 0;border:1px solid #ad8e4d55;border-radius:18px}.game-music-panel h3{margin:0}.game-music-panel audio{width:min(100%,480px);min-width:0}.cupid-title{display:flex;align-items:center;justify-content:center;gap:12px;position:relative}.cupid-title h1{white-space:nowrap;color:#ffe6ed;text-shadow:0 0 22px #f8659970}.cupid-title img{width:116px;height:126px;object-fit:contain;margin-block:-20px;animation:cupid-float 3s ease-in-out infinite}.cupid-title img:last-child{scale:-1 1;animation-delay:-1.5s}@keyframes cupid-float{0%,to{transform:translateY(5px) rotate(-3deg)}50%{transform:translateY(-7px) rotate(3deg)}}.cupid-flights{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:6}.cupid-card-impact{position:absolute;inset:0;z-index:-1;border-radius:inherit;background:#ff80bc;box-shadow:inset 0 0 28px #ffe0ef;pointer-events:none}.cupid-flying-arrow{filter:drop-shadow(0 0 6px #ff8bc9)}.cupid-trail{fill:none;stroke:url(#cupid-trail);stroke-width:6;opacity:.55;stroke-linecap:round}.cupid-counter{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:22px 0;padding:18px;border:1px solid #f29aba66;border-radius:18px;background:#ed719a12}.cupid-counter>svg{width:34px;height:34px}.cupid-counter b{color:#ffadc9;font-size:1.4em}.cupid-counter small{width:100%;color:#bdaab3;line-height:1.6}.cupid-arrow-button{flex:none;position:relative;width:52px;height:52px;display:grid;place-items:center;border-radius:16px;border:1px solid #ff9dc9;background:linear-gradient(135deg,#6e3558,#3a2649);box-shadow:0 0 14px #ef538d25}.cupid-arrow-button svg{width:38px;height:38px}.cupid-arrow-button.sent{opacity:.65}.cupid-arrow-button span{position:absolute;right:2px;bottom:0;color:#d9ff92}.cupid-settings{display:grid;gap:18px;padding:24px;border:1px solid #b9a07550;border-radius:20px;max-width:900px}.cupid-settings>label{font-weight:700}.cupid-settings input{width:100%;margin:0}.cupid-settings .button-row{margin:0}.cupid-admin{display:grid;gap:28px;min-width:0}.cupid-results-backdrop{position:absolute;inset:0;display:grid;place-items:center;background:#07060ed4;z-index:12}.cupid-results-window{width:1820px;height:940px;box-sizing:border-box;display:flex;flex-direction:column;padding:30px;border:2px solid #eeb9ca;border-radius:30px;background:radial-gradient(ellipse at top,#573549,#14121d 75%);box-shadow:0 0 80px #ea6f9b36}.cupid-results-window>header{text-align:center;padding:0 0 26px;flex:none}.cupid-results-window>header span{color:#f2abc5;letter-spacing:7px;font-size:15px}.cupid-results-window>header h1{margin:16px 0 0;font-size:48px;color:#fff2e3}.cupid-results-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));flex:1;min-height:0;overflow:hidden}.cupid-results-columns>.cupid-result-group{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;padding:0 22px}.cupid-results-columns>.cupid-result-group+.cupid-result-group{border-left:1px solid #eeb9ca70}.cupid-results-columns .cupid-result-group h2{font-size:28px;margin:10px 0 24px;white-space:nowrap}.cupid-results-columns .cupid-result-pairs{container-type:size;display:grid;grid-template-rows:repeat(var(--result-rows),minmax(0,1fr));min-height:0;min-width:0}.cupid-results-columns .cupid-pair{--pair-font: min(27px, calc(68cqh / var(--result-rows)));grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:88%;min-height:0;margin:0}.cupid-results-columns .cupid-pair-card{height:100%;min-height:0;box-sizing:border-box;padding:0 8px;gap:6px;border-radius:min(12px,calc(15cqh / var(--result-rows)));font-size:var(--pair-font);line-height:1.1}.cupid-results-columns .cupid-pair-card .type-icon{font-size:.65em;gap:.35em;flex:none}.cupid-results-columns .cupid-pair-card .type-icon svg{width:1em;height:1em}.cupid-results-columns .cupid-pair-card .color-bar{font-size:inherit;width:.8em;height:.8em}.cupid-results-columns .cupid-pair-card .guest-name{font-size:calc(var(--pair-font) * var(--name-scale));white-space:nowrap}.cupid-results-columns .cupid-pair-hearts{height:1em;font-size:var(--pair-font)}.cupid-results-columns .cupid-pair-hearts i{top:0;font-size:1em}.cupid-empty-column{position:absolute;top:120px;left:0;right:0;color:#baa7b2;text-align:center;font-size:23px}.cupid-result-group{padding:6px 0 26px}.cupid-result-group h2{color:#f4cc87;font-size:30px;margin:18px 0 22px;text-align:center}.cupid-pair{display:grid;grid-template-columns:minmax(0,1fr) 100px minmax(0,1fr);align-items:center;margin-top:18px;animation:cupid-pair-in .55s ease-out both}@keyframes cupid-pair-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.cupid-pair-card{min-width:0;display:flex;align-items:center;justify-content:center;gap:14px;padding:24px 18px;border:1px solid #dfb8aa80;border-radius:16px;background:#ffffff0c;font-size:32px}.cupid-pair-card .guest-name{min-width:0;overflow-wrap:anywhere}.cupid-pair-hearts{position:relative;height:50px;color:#ff6a9e}.cupid-pair-hearts i{position:absolute;top:9px;font-style:normal;font-size:30px;animation:cupid-heart 1.8s ease-in-out infinite;filter:drop-shadow(0 0 5px #fe6592)}.cupid-pair-hearts i:nth-child(2){animation-direction:reverse;animation-delay:-.9s}@keyframes cupid-heart{0%{left:0;opacity:0}35%,65%{opacity:1}to{left:75%;opacity:0}}.cupid-no-match{text-align:center;padding:40px 20px;line-height:1.8}.modal .cupid-result-group h2{font-size:19px}.modal .cupid-pair{grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr)}.modal .cupid-pair-card{font-size:17px;padding:16px 8px;gap:8px;flex-direction:column}.modal .cupid-pair-hearts i{font-size:20px}@media(max-width:600px){.cupid-settings{padding:18px}.cupid-settings .button{padding-inline:8px;font-size:13px}}.chip-amount.chip-amount{position:relative;display:inline-flex;align-items:center;gap:.3em;white-space:nowrap;vertical-align:middle;font-size:inherit;font-weight:inherit;line-height:1.2;letter-spacing:normal;color:inherit}.chip-icon,.chip-amount>.chip-icon{display:inline-block;width:var(--chip-size, 1.05em);height:var(--chip-size, 1.05em);object-fit:contain;flex-shrink:0;vertical-align:middle}.chip-amount>bdi{font:inherit;font-variant-numeric:tabular-nums}.chip-amount>.chip-unit{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.barrel-display .barrel-prize-amount,.chip-stat .chip-amount{--chip-size: 1.05em}.chip-stat .chip-amount[data-long]{--chip-size: 1.05em;flex-direction:column;font-size:12px;gap:4px}.tug-mobile .tug-score .chip-icon{--chip-size: 1.05em}.tug-mobile .tug-score strong,.tug-mobile .tug-score strong>span:not(.chip-amount){display:flex;align-items:center;gap:3px;line-height:1}.tug-mobile .tug-score.right strong{justify-content:flex-end}.chip-player-balance{display:flex;align-items:center;gap:8px}.chip-field{display:flex;align-items:center;gap:10px;min-width:0}.chip-field>input{flex:1;min-width:0;width:100%}.chip-field>.chip-icon{--chip-size: 1.05em}.tug-view{width:100%;background:#080609;color:#fff2d7;overflow:hidden}.tug-display{height:100%}.tug-arena{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#12090b url(/tug/optimized-v116/arena.webp) center/100% 100% no-repeat;container-type:inline-size}.tug-display .tug-arena{height:100%;aspect-ratio:auto}.tug-heading{position:absolute;top:3%;left:35%;width:30%;text-align:center;text-shadow:0 3px 10px #000}.tug-heading span{display:block;font-size:1cqw;letter-spacing:.35em;color:#edce88}.tug-heading h1{font-size:2.5cqw;margin:.15em}.tug-score{position:absolute;top:4%;background:#160c0edc;border:1px solid #b786456b;border-radius:12px;padding:1cqw 1.5cqw;min-width:19%;z-index:4}.tug-score.left{left:3%}.tug-score.right{right:3%;text-align:right}.tug-score small{display:block;font-size:1cqw;color:#d4b881}.tug-score strong{display:block;font-size:1.8cqw}.tug-score strong>span:not(.chip-amount){color:#eac278}.tug-player{position:absolute;top:28%;width:21%;height:37.3333%;z-index:3;--fall-x: 155%;--spin: 145deg}.tug-player.left{left:7%}.tug-player.right{right:7%;--fall-x: -155%;--spin: -145deg}.tug-name{position:absolute;bottom:101%;left:-15%;width:130%;text-align:center;font-size:1.9cqw;font-weight:800;text-shadow:0 2px 4px #000,0 0 15px #000;white-space:nowrap}.tug-player-name{display:block;overflow:hidden;text-overflow:ellipsis}.tug-arena-rating{display:inline-block;padding:.12em .55em;margin-top:.1em;border-radius:.3em;background:#10080ee6;border:1px solid currentColor;font-size:2cqw;line-height:1.1;letter-spacing:.04em;animation:tug-rating-hit .24s ease-out}@keyframes tug-rating-hit{0%{transform:scale(.85)}to{transform:scale(1)}}.tug-name b{display:block;font-size:1cqw;color:#ffcf65}.tug-body{width:100%;height:100%;background-image:url(/tug/optimized-v116/fighters.webp);background-size:300% 200%;background-position:0 0;filter:drop-shadow(0 6px 5px #0007)}.tug-player.right .tug-body{background-position:0 100%;transform:scaleX(-1)}.tug-body.pulling{background-position:50% 0}.tug-player.right .tug-body.pulling{background-position:50% 100%}.tug-player.loser:not(.dead){animation:tug-fall 1.5s cubic-bezier(.35,.02,.78,.51) both;animation-delay:var(--fall-delay)}.tug-player.dead{top:54%;left:39.5%;right:auto;transform:none}.tug-body.defeated{background-position:100% 0}.tug-player.right .tug-body.defeated{background-position:100% 100%}.tug-rope{position:absolute;top:42%;left:31%;width:38%;height:.55%;z-index:2;background:repeating-linear-gradient(115deg,#e5b578 0 3px,#75471e 4px 6px,#f8d499 7px 9px);box-shadow:0 1px 3px #000}.tug-ribbon{position:absolute;top:-1cqw;width:1.15cqw;height:5.8cqw;background:linear-gradient(100deg,#a00920,#fb2444 50%,#94071c);clip-path:polygon(15% 0,80% 0,100% 100%,50% 82%,0 100%);transform:translate(-50%);transition:left .09s linear;filter:drop-shadow(0 0 8px red)}.tug-center{position:absolute;left:50%;top:5cqw;height:5cqw;border-left:1px dashed #ffe5b680;z-index:0}.tug-countdown{position:absolute;top:63%;left:35%;width:30%;text-align:center;text-shadow:0 5px 15px black;z-index:5}.tug-countdown b{display:block;font-size:7cqw;color:#ffddb0;line-height:1}.tug-countdown span{font-size:1.15cqw}.tug-time{display:inline-block;padding:.7cqw 1.3cqw;background:#000b;border:1px solid #c39754;border-radius:30px;font-size:2cqw;font-variant-numeric:tabular-nums}.tug-result{position:absolute;top:12%;left:25%;width:50%;text-align:center;background:#10080ee8;padding:1.2cqw;border:1px solid #b7894e;border-radius:12px;z-index:6;box-shadow:0 8px 60px #0008}.tug-result h2{font-size:2.1cqw;margin:.2em}.tug-result p{font-size:1.1cqw;margin:.3em}.tug-result small{color:#f7cd6a;font-size:1cqw;letter-spacing:.3em}.tug-controls{padding:20px;display:flex;flex-direction:column;gap:14px}.tug-controls>p,.tug-controls>small{color:#aeb0bd;font-size:13px;line-height:1.5;text-align:center;margin:0}.tug-gauge-title{display:flex;justify-content:space-between}.tug-gauge-title strong{color:#fdd86e}.tug-gauge-reading{display:flex;gap:10px;align-items:center;font-variant-numeric:tabular-nums}.tug-gauge-reading>span:last-child{min-width:44px;text-align:right}.tug-rating.weak{color:#f17c80}.tug-rating.poor{color:#e8ab72}.tug-rating.normal{color:#d2d6e1}.tug-rating.good{color:#81d5a1}.tug-rating.perfect{color:#ffe28a;text-shadow:0 0 12px #f4be4470}.tug-gauge{height:30px;background:#211c2a;border-radius:18px;border:1px solid #746342;overflow:hidden}.tug-gauge.blue{--gauge-color: #619eff}.tug-gauge.green{--gauge-color: #63c88d}.tug-gauge.yellow{--gauge-color: #f2ce55}.tug-gauge.red{--gauge-color: #ed6c76}.tug-hit-result{min-height:32px;display:flex;justify-content:center;align-items:center;gap:12px}.tug-hit-result strong{font-size:24px;letter-spacing:.04em}.tug-hit-result>span{color:#c8cbd3;font-variant-numeric:tabular-nums}.tug-gauge i{display:block;height:100%;background:var(--gauge-color);box-shadow:0 0 15px var(--gauge-color);transition:width 25ms linear}.tug-pull{font-size:24px;font-weight:900;background:linear-gradient(#f4d694,#b38536);color:#201507;border:1px solid #f4e4b1;border-radius:16px;min-height:76px;touch-action:manipulation;-webkit-user-select:none;user-select:none}.tug-pull:active{transform:scale(.98);background:#ffe8ae}.tug-pull:disabled{opacity:.7}.tug-betting{display:grid;gap:12px}.tug-betting h2{font-size:20px;margin:0}.tug-betting p,.tug-betting small{font-size:13px;color:#ccc1b0;margin:0}.tug-bet-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tug-bet-options button{display:flex;flex-direction:column;gap:4px;overflow-wrap:anywhere}.tug-bet-done{padding:16px;background:#25473366;border-radius:12px}.tug-admin{display:grid;grid-template-columns:340px minmax(0,1fr);gap:20px;align-items:start}.tug-admin .tug-arena{border-radius:16px}.tug-admin .tug-settings{min-width:0;padding:24px;gap:24px}.tug-settings>h2{margin:0;font-size:22px;line-height:1.4}.tug-settings>label{display:grid;gap:10px;min-width:0}.tug-settings select{width:100%;min-width:0;min-height:48px;margin:0}.tug-settings>p,.tug-settings>small{margin:0;font-size:14px;line-height:1.7;overflow-wrap:anywhere;color:#bdb9b2}.tug-settings>.button{min-height:48px;white-space:normal}@media(max-width:600px){.tug-admin .tug-settings{border:0;border-radius:0;background:none;box-shadow:none;padding:8px 0}}.tug-loading{padding:30px}.member-stats{gap:0!important}.member-stats>:is(div,button){flex:1;min-width:0;padding:12px 4px!important;justify-content:center}.member-stats>:is(div,button)>span:last-child{font-size:11px!important;white-space:nowrap}.member-stats .stat-icon{display:none}.member-stats strong{font-size:23px}.member-stats .stat-divider{flex:0 0 1px}.chip-stat strong{color:#e4c270}@keyframes tug-fall{0%{transform:translate(0) rotate(0)}28%{transform:translate(calc(var(--fall-x) * .35),-20%) rotate(calc(var(--spin) * .35))}to{transform:translate(var(--fall-x),125%) rotate(var(--spin));opacity:.5}}@media(max-width:900px){.tug-admin{grid-template-columns:1fr}.tug-mobile .tug-arena{aspect-ratio:16/10}.tug-mobile .tug-score{padding:7px 9px;border-radius:7px}.tug-mobile .tug-score small{font-size:8px}.tug-mobile .tug-score strong{font-size:12px}.tug-mobile .tug-score strong>span:not(.chip-amount){display:block;font-size:11px}.tug-mobile .tug-heading h1{font-size:17px}.tug-mobile .tug-heading span{font-size:8px;letter-spacing:.1em}.tug-mobile .tug-name{font-size:13px}.tug-mobile .tug-result h2{font-size:17px}.tug-mobile .tug-result p{font-size:11px}.tug-mobile .tug-countdown span{font-size:10px}.tug-mobile .tug-countdown b{font-size:38px}.tug-mobile .tug-time{font-size:12px}.tug-mobile .tug-result{left:15%;width:70%}}.tug-player.loser:not(.dead){animation-play-state:paused}.tug-rope-line{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none}.tug-rope{background:none;box-shadow:none}.tug-body{clip-path:inset(0 2% 0 0)}.tug-body.defeated{clip-path:inset(0)}@media(max-width:900px){.tug-mobile .tug-score{min-width:0;top:2%;padding:3px 6px;line-height:1.15}.tug-mobile .tug-score small{font-size:7px}.tug-mobile .tug-score strong{font-size:10px}.tug-mobile .tug-score strong>span:not(.chip-amount){display:inline;font-size:10px}.tug-mobile .tug-name{font-size:12px}.tug-mobile .tug-name:has(.tug-arena-rating){font-size:10px;line-height:1.1;bottom:99%}.tug-mobile .tug-arena-rating{font-size:10px}.tug-mobile .tug-heading h1{font-size:16px}}.tug-player.loser .tug-name{display:none}.tug-arena[data-status=finished] .tug-result,.tug-arena[data-status=cancelled] .tug-result{top:2%;padding:.6cqw}.tug-arena[data-status=finished] .tug-result h2{font-size:1.8cqw}.tug-arena[data-status=finished] .tug-result p{font-size:1cqw}@media(max-width:900px){.tug-mobile .tug-arena[data-status=finished] .tug-result h2{font-size:15px}.tug-mobile .tug-arena[data-status=finished] .tug-result p{font-size:10px}}@media(max-width:900px){.tug-arena:not(.tug-large){background-image:url(/tug/mobile/arena.webp)}.tug-arena:not(.tug-large) .tug-body{background-image:url(/tug/mobile/fighters.webp)}}.bomb-arena{position:relative;width:100%;aspect-ratio:16/9;container-type:inline-size;overflow:hidden;background:#090909 url(/bomb/optimized-v116/arena.webp) center/100% 100% no-repeat}.bomb-arena canvas{display:block;width:100%;height:100%;object-fit:contain}.bomb-display{height:100%;width:100%;display:grid;place-items:center;background:#080808}.bomb-display .bomb-arena{width:100%;height:100%;aspect-ratio:auto}.bomb-display .bomb-arena canvas{object-fit:fill}.bomb-name{position:absolute;top:31%;font-size:2.5cqw;font-weight:800;text-shadow:0 3px 8px #000;text-align:center;width:33.333%;overflow-wrap:anywhere}.bomb-name.left{left:6.25%}.bomb-name.right{right:6.25%}.bomb-countdown{position:absolute;top:4%;left:50%;transform:translate(-50%);display:grid;justify-items:center;padding:1cqw 2cqw;background:#080808ce;border:1px solid #d1b874;border-radius:1.5cqw;color:#f5dda0}.bomb-countdown small{font-size:1.1cqw}.bomb-countdown strong{font-size:4cqw;line-height:1.2}.bomb-result{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);display:grid;justify-items:center;gap:.5cqw;padding:2cqw 3cqw;max-width:40%;border-radius:1.5cqw;border:1px solid #e9c564;background:#17120bf0;box-shadow:0 0 5cqw #ffd65e30;text-align:center}.bomb-result small{font-size:1.1cqw;letter-spacing:.4em;color:#e8ca78}.bomb-result strong{font-size:3.2cqw;overflow-wrap:anywhere}.bomb-result span{font-size:2cqw;color:#f8d575}.bomb-stage-status{position:absolute;bottom:3%;left:50%;transform:translate(-50%);font-size:1.5cqw;padding:.6cqw 2cqw;border-radius:2cqw;background:#000b;white-space:nowrap}.bomb-control{display:grid;gap:20px}.bomb-throw{min-height:72px!important;font-size:24px!important}.bomb-range{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:12px}.bomb-range>span{padding-bottom:16px}.bomb-range label{min-width:0}.bomb-range input{width:100%}.duel-buttons{display:flex;justify-content:center;gap:18px;margin-top:24px}.duel-button{border:1px solid #ba9b61;border-radius:18px;padding:0;background:#24211b;cursor:pointer;flex:none}.duel-button:disabled{opacity:.4;cursor:not-allowed}.duel-icon{display:grid;place-items:center;width:80px;height:80px;border-radius:18px;color:#e9ce8b;background:linear-gradient(145deg,#3c3322,#171613);overflow:hidden}.duel-icon img{display:block;width:100%;height:100%;object-fit:cover}.duel-icon.bomb{color:#ffc778}.duel-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:100%}.duel-actions .button{margin:0;min-width:0;min-height:48px;white-space:normal}.duel-request{display:flex;gap:18px;align-items:center}.duel-request .duel-icon{flex:none}.duel-request p{margin:0;line-height:1.6}.challenge-queue{display:grid;gap:20px}.admin-duel-setup{display:grid;gap:24px;min-width:0}.duel-player-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.duel-player-fields label{display:grid;gap:12px;min-width:0}.duel-player-fields select{width:100%;min-width:0}@media(max-width:600px){.duel-player-fields{grid-template-columns:minmax(0,1fr)}}.challenge-queue h3,.challenge-queue p{margin:0}.challenge-row{display:grid;gap:18px;padding:20px 0;border-top:1px solid #ffffff1a}.challenge-row>div:first-child{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.challenge-row>div:first-child span{color:#b6a777}.challenge-row strong{overflow-wrap:anywhere}@media(max-width:600px){.duel-actions,.duel-request{gap:12px}.duel-icon{width:72px;height:72px}.bomb-mobile .tug-controls{padding:20px 16px}.bomb-range{gap:10px}}.bomb-mobile .tug-score{padding:6px 8px;border-radius:8px;min-width:25%}.bomb-mobile .tug-score small{font-size:9px}.bomb-mobile .tug-score strong{font-size:12px}.bomb-mobile .bomb-name{font-size:14px;line-height:1.3}.bomb-mobile .bomb-countdown{padding:4px 8px}.bomb-mobile .bomb-countdown small{font-size:9px}.bomb-mobile .bomb-countdown strong{font-size:24px}.bomb-mobile .bomb-result strong{font-size:18px}.bomb-mobile .bomb-result small{font-size:8px}.bomb-mobile .bomb-result span{font-size:14px}.bomb-mobile .bomb-stage-status{font-size:12px}@media(max-width:900px){.bomb-arena:not(.bomb-club){background-image:url(/bomb/mobile/arena.webp)}}.auction-stage{color:#fff5d9;background-color:#100c07;background-size:cover;background-position:center;display:flex;flex-direction:column;align-items:center;text-align:center;overflow:hidden;isolation:isolate}.auction-display-root{width:100%;height:100%;position:absolute;inset:0}.auction-display{width:100%;height:100%;padding:3vh 5vw;gap:1.5vh}.auction-clock{display:flex;align-items:center;justify-content:center;gap:2vw;flex-wrap:wrap;color:#edd397;flex:none}.auction-display .auction-clock span{font-size:clamp(22px,2.2vw,46px);font-weight:600}.auction-clock strong{font-variant-numeric:tabular-nums;line-height:1;letter-spacing:.04em}.auction-display .auction-clock strong{font-size:clamp(40px,4.4vw,90px)}.auction-product-title{display:flex;align-items:center;justify-content:center;gap:1em;margin:0;overflow-wrap:anywhere;line-height:1.25;flex:none;max-width:100%}.auction-product-title>span{font-size:.6em;color:#c9b999;white-space:nowrap}.auction-display .auction-product-title{font-size:clamp(24px,2.5vw,52px)}.auction-product-image{min-height:0;flex:1;width:100%;display:flex;align-items:center;justify-content:center;padding:1vh}.auction-product-image img{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 16px 30px #0008)}.auction-participants{margin:0;flex:none;color:#e5d5b7}.auction-participants strong{font-size:1.5em;color:#fff;margin:0 .3em;font-variant-numeric:tabular-nums}.auction-display .auction-participants{font-size:clamp(22px,2vw,40px)}.auction-result{flex:1;min-height:0;width:min(100%,1400px);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2.5vh}.auction-ranking{width:min(100%,1000px);list-style:none;margin:0;padding:0;display:grid;gap:32px}.auction-rank-row{display:grid;grid-template-columns:80px minmax(0,1fr) max-content 110px;align-items:center;gap:28px;text-align:left;color:#c9c7c3;font-size:clamp(28px,2.5vw,48px);min-width:0}.auction-rank-row.auction-winner{color:#ffe5a1;font-size:clamp(42px,4vw,78px);margin-bottom:12px}.auction-rank-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.25}.auction-rank{font-size:clamp(22px,2vw,38px);white-space:nowrap}.auction-rank-bid,.auction-winning-bid{white-space:nowrap;font-weight:700}.auction-winning-bid{color:#f0d27f}.auction-stamp{width:2.8em;height:2.8em;border:4px double #e34242;border-radius:50%;display:grid;place-items:center;color:#ef4b4b;background:#b6101012;transform:rotate(-12deg);font-weight:800;font-size:clamp(20px,1.7vw,34px)}.auction-next{color:#ead9b4;font-size:clamp(18px,1.8vw,36px);margin:clamp(60px,9vh,108px) 0 0}.auction-result h3{font-size:clamp(36px,5vw,96px);margin:0}.auction-empty{margin:auto;color:#e8cd97}.auction-empty>svg{width:80px;height:80px}.auction-empty h2{font-size:clamp(28px,4vw,70px)}.auction-customer{padding:16px 16px 28px;display:grid;gap:18px}.auction-mobile{height:52svh;min-height:310px;max-height:560px;padding:20px 14px;border:1px solid #82633488;border-radius:20px;gap:14px}.auction-mobile .auction-clock{gap:8px;font-size:13px}.auction-mobile .auction-clock strong{font-size:32px}.auction-mobile .auction-product-title{font-size:23px;display:block}.auction-mobile .auction-product-title>span{display:block;margin-bottom:5px}.auction-mobile .auction-participants{font-size:15px}.auction-mobile .auction-ranking{gap:18px}.auction-mobile .auction-rank-row{grid-template-columns:22px minmax(0,1fr) max-content 32px;gap:6px;font-size:14px}.auction-mobile .auction-rank-row.auction-winner{font-size:18px;margin-bottom:4px}.auction-mobile .auction-rank{font-size:12px}.auction-mobile .auction-stamp{font-size:10px;border-width:3px}.auction-mobile .auction-next{font-size:13px;margin-top:36px}.auction-mobile .auction-result h3{font-size:27px}.auction-bid-panel{display:grid;gap:18px}.auction-bid-panel>p{margin:0}.auction-bid-balances{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;font-size:16px}.auction-bid-balances>span{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.auction-bid-form{display:grid;gap:22px}.auction-bid-form p{margin:0;line-height:1.6}.auction-bid-form label{display:grid;gap:12px}.auction-actions{display:flex;gap:14px;align-items:stretch;margin-top:10px}.auction-actions>.button{flex:1;min-width:0;white-space:normal;min-height:48px}.auction-admin{display:grid;gap:24px}.auction-admin>p{margin:0}.auction-settings{border:0;padding:0;margin:0;min-width:0;display:grid;gap:24px}.auction-settings:disabled .button{opacity:.55;cursor:default;pointer-events:none}.auction-settings-top{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.auction-settings label{display:grid;gap:10px}.auction-settings .button{display:flex;gap:10px;align-items:center;justify-content:center}.auction-background-control{display:flex;gap:18px;flex-wrap:wrap;align-items:center}.auction-background-control img{width:100px;height:64px;object-fit:cover;border-radius:10px}.auction-products{display:grid;gap:18px}.auction-product-row{display:grid;grid-template-columns:32px minmax(180px,1fr) minmax(240px,.8fr) minmax(110px,.5fr);grid-template-rows:auto 48px;gap:12px 20px;align-items:center;padding:22px;border:1px solid #ffffff1a;border-radius:16px;background:#ffffff03}.auction-product-number{grid-column:1;grid-row:2;font-size:22px;color:#dfc48d;line-height:1;text-align:center}.auction-settings .auction-product-name,.auction-admin-winner{display:contents}.auction-product-name>span{grid-column:2;grid-row:1}.auction-product-name>input{grid-column:2;grid-row:2;height:48px;margin:0;min-width:0}.auction-image-heading{grid-column:3;grid-row:1;font-size:13px;font-weight:500}.auction-image-upload{grid-column:3;grid-row:2;display:flex;align-items:center;gap:12px;min-width:0;height:48px}.auction-image-upload>.button{height:48px;min-height:48px;box-sizing:border-box;white-space:nowrap;padding:0 16px;margin:0}.auction-image-upload img{width:48px;height:48px;flex:none;object-fit:contain;background:#0003;border-radius:8px}.auction-admin-winner>span{grid-column:4;grid-row:1;font-size:13px;font-weight:500;color:#aaa}.auction-admin-winner>strong{grid-column:4;grid-row:2;color:#ebd19e;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:1050px){.auction-product-row{grid-template-columns:24px minmax(0,1fr);grid-template-rows:auto 48px auto 48px auto 32px;padding:18px;gap:12px}.auction-image-heading{grid-column:2;grid-row:3;margin-top:8px}.auction-image-upload{grid-column:2;grid-row:4;gap:8px}.auction-image-upload>.button{padding:0 10px;gap:6px;font-size:12px}.auction-image-upload img{width:40px;height:40px}.auction-admin-winner>span{grid-column:2;grid-row:5;margin-top:8px}.auction-admin-winner>strong{grid-column:2;grid-row:6}.auction-actions{flex-wrap:wrap}.auction-actions>.button{flex-basis:calc(50% - 14px)}.auction-settings-top{gap:14px}}@media(prefers-reduced-motion:no-preference){.auction-stamp{animation:auction-stamp-in .45s ease-out}@keyframes auction-stamp-in{0%{opacity:0;transform:scale(1.6) rotate(-22deg)}to{opacity:1;transform:scale(1) rotate(-12deg)}}}.snail-arena{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#5b863b url(/snail/track.jpg) center/100% 100%;container-type:inline-size;color:#fff}.snail-sprite{display:block;width:100%;aspect-ratio:340 / 270}.snail-runner{position:absolute;width:11%;transition:left .2s linear;filter:drop-shadow(0 5px 3px #37251155)}.snail-scoreboard{position:absolute;left:50%;top:2%;transform:translate(-50%);width:46%;padding:1% 2%;text-align:center;background:linear-gradient(#432c16ed,#241c12ed);border:.22cqw solid #d9b468;border-radius:1.2cqw;box-shadow:0 4px 18px #0005}.snail-scoreboard>strong{font-size:2.5cqw;color:#ffecb6}.snail-scoreboard>div{display:flex;justify-content:space-between;gap:1cqw;margin-top:.5cqw}.snail-odds{font-size:1.6cqw;white-space:nowrap}.snail-odds b{color:var(--snail-color)}.snail-odds small{display:block;font-size:1.1cqw;color:#dfdacd}.snail-color-0{--snail-color: #f9936e}.snail-color-1{--snail-color: #7cdcff}.snail-color-2{--snail-color: #c3eb63}.snail-display{width:100%;height:100%;display:grid;place-items:center;background:#142519}.snail-display .snail-arena{width:100%;max-height:100%;flex:none}.snail-betting{padding:24px 18px;display:grid;gap:18px}.snail-betting h2,.snail-betting p{margin:0}.snail-betting small{color:var(--muted);line-height:1.65}.snail-wallet{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.snail-wallet span{color:var(--muted)}.snail-bet-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.snail-bet{border:1px solid var(--snail-color);border-radius:18px;background:#22251f;color:#fff;display:flex;align-items:center;flex-direction:column;padding:8px 4px 16px;gap:8px;cursor:pointer;min-width:0}.snail-bet>.snail-sprite{width:100%;margin-top:-8px;margin-bottom:-10px}.snail-bet>strong{font-size:24px;color:var(--snail-color)}.snail-bet>span{font-size:12px}.snail-bet:disabled{cursor:default;opacity:.65}.snail-bet:active:not(:disabled){transform:scale(.96)}.snail-my-payout{font-size:24px;color:#d5ee92;padding:20px 0}.snail-finish{position:absolute;inset:0;display:grid;place-items:center;background:#12271566;z-index:3}.snail-podium-card{position:relative;width:64%;padding:2cqw 3cqw;background:linear-gradient(135deg,#1e3425f5,#14231af5);border:.2cqw solid #eed283;border-radius:2cqw;box-shadow:0 2cqw 5cqw #0007;text-align:center}.snail-podium-card h2{font-size:3.4cqw;margin:0;color:#ffdf82}.snail-podium-card p{font-size:1.45cqw;margin:1.3cqw 0 0;color:#f5edcf}.snail-podium{display:flex;align-items:flex-end;justify-content:center;gap:1cqw}.snail-place{width:30%}.snail-place>.snail-sprite{margin-bottom:-1.7cqw}.snail-place>div{height:9cqw;background:#a0b1bd;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:.7cqw .7cqw 0 0;color:#20271b}.snail-place strong{font-size:3.2cqw}.snail-place span{font-size:2cqw}.snail-place.place-0>div{height:13cqw;background:#f1cc67}.snail-place.place-2>div{height:7cqw;background:#c18f66}.snail-confetti{position:absolute;inset:0;overflow:hidden;pointer-events:none}.snail-confetti i{position:absolute;left:var(--x);top:-10%;width:.5cqw;height:1cqw;background:var(--color);animation:snail-confetti 3.4s linear infinite;animation-delay:var(--delay)}@keyframes snail-confetti{to{transform:translate(var(--drift),65cqw) rotate(720deg)}}.snail-admin{display:grid;gap:24px}.snail-admin-controls{padding:24px;display:grid;gap:20px}.snail-admin-controls h2,.snail-admin-controls p{margin:0}.snail-admin-controls small{line-height:1.7;color:var(--muted)}.snail-admin-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.snail-admin-buttons .button{width:100%;min-width:0;min-height:48px;white-space:normal;line-height:1.5;padding-inline:12px}.reservation-cta.game-participation-cta{background:#d9ed9d;color:#253017!important;border:1px solid #e9f8bd;box-shadow:0 0 22px #bfdc5830;text-align:left;width:100%;cursor:pointer;animation:game-cta-flash 1s steps(1,end) infinite}.game-participation-cta strong{font-size:19px!important;line-height:1.5}.game-participation-cta small{color:#44502f!important;font-size:15px!important}.game-participation-cta .round-arrow{flex-shrink:0}@keyframes game-cta-flash{0%,to{background:#d9ed9d;box-shadow:0 0 22px #bfdc5830}50%{background:#a9ce49;box-shadow:0 0 28px #bfdc5880}}@media(max-width:600px){.snail-admin-controls{padding:18px}.snail-mobile .snail-podium-card{width:82%}.snail-mobile .snail-podium-card h2{font-size:4.4cqw}.snail-mobile .snail-podium-card p{font-size:2.3cqw}.snail-betting h2{font-size:20px}}@media(prefers-reduced-motion:reduce){.snail-confetti i,.game-participation-cta{animation:none}}.snail-dust{position:absolute;left:9%;bottom:13%;width:50%;height:25%;pointer-events:none;z-index:0}.snail-dust i{position:absolute;left:0;bottom:0;width:24%;aspect-ratio:1;border-radius:50%;background:radial-gradient(ellipse,#f6e4bce6 15%,#e0be89a8 52%,#cbb78900 73%);animation:snail-dust-puff .7s ease-out infinite;animation-delay:calc(var(--puff) * -.14s)}.snail-runner.panting{transition:none}.snail-runner>.snail-sprite{position:relative;z-index:1}@keyframes snail-dust-puff{0%{transform:translate(0) scale(.5);opacity:.9}to{transform:translate(-320%,-110%) scale(2.4);opacity:0}}@media(prefers-reduced-motion:reduce){.snail-dust{display:none}}.snail-countdown{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:8;padding:2cqw 3cqw;border:2px solid #ffe4a7b3;border-radius:2cqw;color:#fff2b7;background:#161509b8;box-shadow:0 0 4cqw #fbd36755;font-size:clamp(44px,14cqw,250px);font-weight:800;line-height:1;text-shadow:0 0 2cqw #ffd36b99;white-space:nowrap;pointer-events:none}@media(max-width:900px){.snail-arena:not(.snail-club){background-image:url(/snail/mobile/track.webp)}}.red-light-stage{position:relative;width:100%;aspect-ratio:16/9;background:#ba975f;overflow:hidden}.red-light-stage canvas{display:block;width:100%;height:100%;object-fit:contain}.red-light-countdown{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;font-size:clamp(80px,15vw,280px);font-weight:900;color:#fff3ba;text-shadow:0 8px 0 #6c4b25,0 12px 45px #000b}.red-light-mobile-countdown{text-align:center;font-size:80px;font-weight:900;color:#fff3ba}.red-light-stage>.error-notice{position:absolute;top:16px;left:16px;right:16px}.red-light-admin{display:grid;gap:24px;min-width:0}.red-light-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.red-light-controls h2{margin:0 0 12px}.red-light-controls p{margin:0;color:var(--muted, #aaa)}.red-light-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;max-width:780px}.red-light-actions button{width:100%;min-height:52px;margin:0}.red-light-result-layer{position:absolute;inset:0;display:grid;place-items:center;background:#080b1059;padding:5%}.red-light-result{width:min(78%,1100px);padding:clamp(24px,4vw,80px);display:grid;gap:clamp(16px,2vw,40px);text-align:center;border:2px solid #c7a85d;border-radius:32px;background:linear-gradient(145deg,#24201af5,#12151af5);box-shadow:0 24px 90px #0008;color:#fff5dc}.red-light-result-title{font-size:clamp(24px,3.5vw,68px);color:#eed27f;font-weight:800}.red-light-result strong{font-size:clamp(32px,5.5vw,110px);line-height:1.18;overflow-wrap:anywhere}.red-light-result p{margin:0;font-size:clamp(16px,2vw,38px);color:#d5c9ad}@media(max-width:600px){.red-light-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.red-light-actions button{padding:12px 8px;font-size:14px;white-space:nowrap}.red-light-result{width:92%;padding:20px;gap:12px;border-radius:18px}}.red-light-mobile{min-height:60dvh;padding:24px 20px 340px;position:relative}.red-light-mobile-status{text-align:center;margin:24px 0;color:#ddd}.red-light-move{position:fixed;left:50%;transform:translate(-50%);bottom:calc(110px + env(safe-area-inset-bottom));width:min(240px,65vw);height:auto;aspect-ratio:1;border-radius:50%;border:3px solid #d6f58c;background:#d6ef9a;color:#15220d;box-shadow:0 10px 35px #0006,inset 0 2px #fff6;font-size:clamp(36px,10vw,52px);font-weight:800;display:grid;place-items:center;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transition:background .12s,box-shadow .12s;z-index:5;padding:0;margin:0}.red-light-move.is-held{background:#a8cd58;box-shadow:inset 0 5px 16px #0004,0 0 26px #cee98c44}.red-light-move:disabled{background:#333c2b;border-color:#657052;color:#9ca591;box-shadow:none}.red-light-demo-status{display:flex;flex-wrap:wrap;gap:12px 24px;padding:18px 22px;border-radius:12px;background:#d2bb8420;color:#e9d6ab}.my-reservations-page>h1{margin:8px 0 12px;font-size:28px}.my-reservations-page>.muted{line-height:1.6}.my-reservations-book{margin:22px 0 28px}.my-reservations-page>h2{margin:28px 0 16px;font-size:18px;display:flex;align-items:center;gap:10px}.my-reservations-page>h2>span{color:var(--gold);font-size:14px}.my-reservation-list{list-style:none;padding:0;margin:0;display:grid;gap:14px}.my-reservation-item{padding:20px;border:1px solid #ffffff1f;border-radius:16px;background:#ffffff04}.my-reservation-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.my-reservation-top time{font-size:16px;font-weight:600;line-height:1.5}.my-reservation-top .badge{flex-shrink:0}.my-reservation-top .checked-in{background:#87b89b20;color:#b0d5bb}.my-reservation-today{margin:10px 0 0;font-size:12px;color:var(--gold)}.my-reservation-actions{display:flex;gap:10px;margin-top:18px}.my-reservation-actions>.button{flex:1;min-width:0;min-height:44px;padding:10px 8px;font-size:13px;text-align:center}.my-reservations-empty{padding:32px 16px;text-align:center;color:var(--muted);border-radius:16px;background:#ffffff04}.customer-access{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:24px}.customer-access-card{width:min(100%,420px);border:1px solid var(--line, #373737);background:#191b1c;border-radius:20px;padding:28px}.customer-access-card h1{margin:0 0 16px}.customer-access-card>p{line-height:1.65;margin-bottom:28px}.pin-field{display:grid;gap:10px;min-width:0}.pin-entry{position:relative;max-width:360px;width:100%}.pin-entry input{position:absolute;inset:0;width:100%;height:100%;opacity:.01;z-index:1;padding:0;margin:0;cursor:text;font-size:24px}.pin-boxes{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;pointer-events:none}.pin-boxes span{display:grid;place-items:center;aspect-ratio:1;border:1px solid #555;border-radius:9px;background:#101213;color:#ead6a4;font-size:21px}.pin-entry:focus-within .pin-next,.pin-entry:focus-within .pin-boxes span:last-child{border-color:#d9bf7d}.pin-field small{color:#aaa;line-height:1.5}@media(max-width:380px){.customer-access{padding:16px}.customer-access-card{padding:20px}.pin-boxes{gap:6px}}.push-settings{max-width:880px;margin:0 auto}.push-settings .panel{padding:24px;margin-bottom:20px}.push-settings h2{display:flex;align-items:center;gap:9px}.push-settings fieldset{border:0;padding:0;margin:24px 0;display:flex;flex-wrap:wrap;gap:16px}.push-settings legend{font-weight:600;margin-bottom:12px}.push-settings ol{padding-left:24px;line-height:1.9}.push-settings p{line-height:1.7}.push-settings .push-notice{padding:12px 14px;border:1px solid var(--line, #393939);border-radius:12px;background:#d5b78114}.push-settings .check{display:flex;align-items:center;gap:8px}.push-settings .check input{width:auto;min-height:0}.push-actions{display:flex;gap:10px;flex-wrap:wrap}.push-actions .button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:7px}@media(max-width:600px){.push-settings .panel{padding:18px}.push-actions .button{flex:1 1 100%}.push-settings fieldset{flex-direction:column}}.chip-history-list{list-style:none;padding:0;margin:20px 0;display:grid;gap:0}.chip-history-list li{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.chip-history-list li>div{display:grid;gap:6px;min-width:0}.chip-history-list li>div:last-child{text-align:right;flex-shrink:0}.chip-history-list time,.chip-history-list small,.chip-history-list span{font-size:12px;color:var(--muted)}.chip-history-plus b{color:#9bd6a8}.chip-history-minus b{color:#f59f9f}.chip-adjustment>button{margin-top:8px}.admin-customer-note{display:grid;gap:14px;margin-top:24px;padding-top:24px;border-top:1px solid #393734;min-width:0}.admin-customer-note>label{font-weight:700}.admin-customer-note>small{color:#aaa;line-height:1.6}.admin-customer-note textarea{margin:0;width:100%;min-width:0;resize:vertical}.admin-customer-note-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;color:#aaa;font-size:12px}.admin-customer-note .button-row{margin-top:8px}.admin-customer-note>[role=status]{margin:0;color:#b8d6aa}.members-panel{min-width:0}.members-filters{display:grid;grid-template-columns:minmax(160px,1fr) minmax(150px,220px) auto;align-items:end;gap:16px}.members-filters label{display:grid;gap:8px;font-size:14px}.members-filters input,.members-filters select{width:100%;min-width:0;height:46px}.members-filters .button{height:46px}.members-filters .members-duplicate-filter{grid-column:1 / -1;display:flex;align-items:center;gap:10px;cursor:pointer;width:fit-content}.members-filters .members-duplicate-filter input{width:18px;height:18px;margin:0;accent-color:#d0bd8d}.members-summary{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;margin:24px 0 16px}.members-summary span{color:var(--muted);font-size:13px}.members-list{border-top:1px solid #ffffff20}.member-row{min-width:0;border-bottom:1px solid #ffffff20}.member-summary-row{display:flex;align-items:center;gap:12px;min-height:62px}.member-toggle{flex:1;min-width:0;display:grid;grid-template-columns:16px minmax(0,1fr) 85px 145px 110px;align-items:center;gap:16px;padding:18px 8px;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.member-toggle:hover{background:#ffffff05}.member-toggle:focus-visible{outline:2px solid #d0bd8d;outline-offset:-2px;border-radius:4px}.member-toggle strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px}.member-chevron{color:#a3a5ac;transition:transform .18s}.member-toggle[aria-expanded=true] .member-chevron{transform:rotate(180deg)}.member-summary-type,.member-summary-date{color:#a3a5ac;font-size:13px;white-space:nowrap}.member-state{justify-self:end;background:#ffffff0c;padding:5px 9px;border-radius:7px;color:#c8c9cb;font-size:12px;white-space:nowrap}.member-state.admitted{background:#b6333c;color:#fff}.member-state.confirmed{background:#283b30;color:#b0d2b7}.member-delete.button{flex-shrink:0;min-height:36px;padding:8px 14px;font-size:13px;margin-right:8px}.member-details{padding:4px 40px 22px;background:#ffffff03}.member-details dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 24px;margin:16px 0 22px}.member-details dt{color:#a3a5ac;font-size:12px;margin-bottom:5px}.member-details dd{margin:0;font-size:14px;overflow-wrap:anywhere;white-space:pre-wrap}.member-detail-wide{grid-column:1/-1}.member-details a{color:#d0bd8d}.member-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:420px}.member-actions .button{width:100%;min-width:0;padding:10px 5px;font-size:13px}.members-pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:24px}@media(max-width:1100px){.member-toggle{grid-template-columns:16px minmax(0,1fr) 85px 110px}.member-summary-date{display:none}}@media(max-width:600px){.member-toggle{grid-template-columns:14px minmax(0,1fr) auto;gap:8px;padding:17px 0}.member-summary-type{display:none}.member-summary-row{gap:8px}.member-toggle strong{font-size:14px}.member-state{font-size:10px;padding:5px 6px}.member-delete.button{padding:8px 10px;margin-right:0;font-size:12px}.member-details{padding:2px 12px 18px}.member-details dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}}@media(max-width:500px){.members-filters{grid-template-columns:minmax(0,1fr) auto;gap:12px}.members-filters label:first-child{grid-column:1/-1}}.heart-ranking-stage{width:1920px;height:1080px;padding:48px 76px 32px;box-sizing:border-box;overflow:hidden;color:#f9f1ed;background:radial-gradient(ellipse at 50% 0%,#5d253c 0%,transparent 65%),linear-gradient(145deg,#191720,#100d12);display:flex;flex-direction:column}.heart-ranking-header{display:flex;justify-content:space-between;align-items:center}.heart-ranking-header>span{color:#cbb6bd;letter-spacing:2px;font-size:20px}.heart-ranking-title{text-align:center;margin:24px 0 34px}.heart-ranking-title>span{font-size:17px;color:#dcb988;letter-spacing:6px}.heart-ranking-title h1{display:flex;justify-content:center;align-items:center;gap:22px;margin:12px 0;font-size:64px;letter-spacing:-2px}.heart-ranking-title h1 svg{color:#ed84a7}.heart-ranking-title em{color:#e8c88f;font-style:normal;font-weight:400}.heart-ranking-title p{margin:0;color:#c9acb7;font-size:22px}.heart-ranking-list{list-style:none;margin:0;padding:0;display:grid;grid-template-rows:repeat(5,112px);grid-auto-flow:column;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 32px}.heart-ranking-row{display:flex;align-items:center;gap:20px;padding:16px 24px;min-width:0;border:1px solid #61434d;border-radius:16px;background:#ffffff08}.heart-ranking-row.heart-ranking-top{background:#d48aab18;border-color:#b88666}.heart-ranking-position{position:relative;flex:0 0 70px;text-align:center;color:#cbb8bf}.heart-ranking-position b{font-size:38px;font-weight:500}.heart-ranking-position small{font-size:17px;margin-left:3px}.heart-ranking-position svg{position:absolute;top:-21px;left:13px;color:#edcb8e}.heart-ranking-top .heart-ranking-position{color:#edcb8e}.heart-ranking-name{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.heart-ranking-name>svg{flex-shrink:0;width:28px;height:28px}.heart-ranking-name strong{font-size:32px;line-height:1.2;overflow-wrap:anywhere;max-height:78px;overflow:hidden}.heart-ranking-score{display:flex;gap:9px;align-items:center;flex-shrink:0;color:#f3a2c0;font-variant-numeric:tabular-nums}.heart-ranking-score b{font-size:36px}.heart-ranking-score small{font-size:17px}.heart-ranking-footer{margin-top:auto;text-align:center;color:#b8a1aa;font-size:18px;letter-spacing:1px;padding-top:20px}.heart-ranking-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#dc9ab3;gap:16px}.heart-ranking-empty h2{font-size:42px;margin:0}.heart-ranking-empty p{font-size:24px;color:#bba5ad;margin:0}.display-preview>.heart-ranking-stage{transform:scale(calc(100cqw/1920px));transform-origin:top left}.megaphone-request-toast{position:fixed;z-index:1000;top:max(12px,env(safe-area-inset-top));left:50%;transform:translate(-50%);width:min(420px,calc(100% - 24px));display:flex;align-items:center;gap:8px;padding:8px 10px 8px 14px;border:1px solid #bba57070;border-radius:14px;background:#211f1afa;color:#f6e5ba;box-shadow:0 6px 26px #0008;animation:megaphone-notice-enter .22s ease-out}.megaphone-request-open{display:flex;align-items:center;gap:10px;min-width:0;flex:1;padding:4px 0;background:none;border:0;color:inherit;text-align:left;font-size:14px;line-height:1.5}.megaphone-request-open span{overflow-wrap:anywhere}.megaphone-request-open>svg{flex-shrink:0}.megaphone-request-close{width:36px;height:36px;flex-shrink:0;display:grid;place-items:center;padding:0;border:0;background:none;color:#bfb9ab}@keyframes megaphone-notice-enter{0%{opacity:0;transform:translate(-50%,-30px)}to{opacity:1;transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.megaphone-request-toast{animation:none}}.megaphone-management{display:grid;gap:24px;min-width:0}.megaphone-counts{display:flex;flex-wrap:wrap;gap:12px 28px;color:#aaa}.megaphone-counts strong{color:#dfca96;margin-left:8px}.megaphone-queue{display:grid;gap:16px}.megaphone-card{min-width:0;padding:24px;border:1px solid #393734;border-radius:18px;background:#1b1b1c}.megaphone-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}.megaphone-card-meta strong{overflow-wrap:anywhere}.megaphone-card-meta time{margin-left:auto;color:#aaa;font-size:12px}.megaphone-status{border-radius:20px;background:#302c24;padding:5px 12px;color:#dec891;font-size:12px;white-space:nowrap}.megaphone-status.playing{background:#1c3a30;color:#9be0bd}.megaphone-message{font-size:20px;line-height:1.7;margin:24px 0;color:#fff;overflow-wrap:anywhere;white-space:pre-wrap}.megaphone-card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:12px}.megaphone-card-actions>span{grid-column:1 / -1;font-size:13px}.megaphone-card-actions .button{min-height:48px;width:100%;min-width:0;gap:8px;white-space:nowrap}.megaphone-card-actions .megaphone-delete{padding:0;min-height:48px;flex-shrink:0;color:#f4b8b8}.megaphone-card-actions>span+.megaphone-delete{grid-column:1 / -1}.megaphone-card-actions.with-voice{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.megaphone-voice-choice{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;white-space:nowrap;cursor:pointer}.megaphone-voice-choice input[type=checkbox]{width:20px;height:20px;padding:0;margin:0;accent-color:#d3be8d}@media(max-width:600px){.megaphone-card{padding:18px}.megaphone-card-meta time{flex-basis:100%;margin-left:0}.megaphone-message{font-size:18px;margin:20px 0}.megaphone-card-actions{gap:8px}.megaphone-card-actions .button.primary{padding:10px 8px}}.megaphone-repeat-settings{display:grid;gap:16px;padding:24px;border:1px solid #393734;border-radius:18px;background:#1b1b1c;min-width:0}.megaphone-repeat-controls{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;max-width:460px}.megaphone-repeat-controls input,.megaphone-repeat-controls .button{min-width:0;width:100%;height:52px;min-height:52px;padding:10px 12px;font-size:14px;margin:0}.megaphone-repeat-settings small{color:#aaa;line-height:1.6}.bulk-chips-toolbar{display:flex;justify-content:flex-end;margin:0 0 24px}.bulk-chips-form{display:flex;flex-direction:column;gap:20px}.bulk-chips-form>p{margin:0;line-height:1.6}.bulk-chips-form label{display:flex;flex-direction:column;gap:12px}.bulk-chips-form .modal-actions{margin-top:8px}@media(max-width:600px){.bulk-chips-toolbar>button{width:100%}}.roulette-stage{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,#382046,#100c1b 48%,#07070c 90%);color:#fff2d6}.roulette-stage>h1{max-width:90%;overflow-wrap:anywhere;text-align:center;z-index:1;margin:10px 0 0;font-size:38px;font-weight:600;letter-spacing:6px;text-shadow:0 0 24px #edb85775}.roulette-ambient{position:absolute;inset:0;z-index:-1;background:repeating-conic-gradient(from 5deg at 50% 45%,#ddad7708 0deg 8deg,transparent 8deg 25deg)}.roulette-wheel{position:relative;flex:0 0 auto;width:800px;aspect-ratio:1}.roulette-wheel:before{content:"";position:absolute;inset:4%;border-radius:50%;box-shadow:0 20px 40px #000b,0 0 20px #d787612b}.roulette-wheel>svg,.roulette-disc-motion,.roulette-disc{position:absolute;inset:0;width:100%;height:100%}.roulette-disc-motion{will-change:transform;transform-origin:center}.roulette-pointer{pointer-events:none;filter:drop-shadow(0 4px 5px #0008)}.roulette-sector-label{paint-order:stroke;stroke:#110b1833;stroke-width:2px}.roulette-lights{will-change:opacity;animation:roulette-lights .8s steps(1,end) infinite}.lights-1{animation-delay:-.4s}@keyframes roulette-lights{0%,to{opacity:1}50%{opacity:0}}.roulette-result{flex:0 0 136px;width:85%;max-width:1500px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;text-align:center;padding:12px 20px;border:1px solid transparent;border-radius:22px}.roulette-result.has-result{position:absolute;z-index:5;top:50%;left:50%;transform:translate(-50%,-50%);width:min(80%,1000px);min-height:220px;padding:40px;background:#21192af5;border-color:#f7d59666;box-shadow:0 0 50px #e5ae5315}.roulette-preview .roulette-result.has-result{min-height:150px;padding:24px}.roulette-result>span{color:#d9b889;font-size:22px}.roulette-result>strong{font-size:42px;line-height:1.35;overflow-wrap:anywhere}.roulette-admin{display:grid;grid-template-columns:minmax(320px,1fr) minmax(350px,1.15fr);gap:24px;align-items:start}.roulette-editor{padding:24px;min-width:0}.roulette-templates{display:grid;gap:18px;padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid #343039}.roulette-templates h2{font-size:18px;margin:0}.roulette-templates label{display:grid;gap:9px;min-width:0}.roulette-templates label>:is(input,select){margin:0;width:100%;min-width:0}.roulette-template-save{display:grid;gap:14px}.roulette-template-save .button{min-height:46px}.roulette-template-overwrite{min-height:46px;white-space:normal;overflow-wrap:anywhere}.roulette-templates p{margin:0;font-size:12px;line-height:1.7}.roulette-template-notice{color:#eed098}.roulette-editor-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.roulette-editor-heading h2{font-size:18px}.roulette-total{color:#eed098;white-space:nowrap;font-size:14px}.roulette-editor>.muted{font-size:12px;line-height:1.8;margin-bottom:20px}.roulette-entry{padding:18px 0;border-top:1px solid #343039}.roulette-title-input{display:grid;gap:10px;margin-bottom:24px}.roulette-title-input input{width:100%;min-width:0}.roulette-entry-name{display:flex;align-items:center;gap:10px}.roulette-entry-name>span{border-left:4px solid var(--sector-color);padding-left:8px;color:#bcb3c2;font-size:12px}.roulette-entry-name>input{flex:1;min-width:0}.roulette-entry-name .icon-button{flex:0 0 36px}.roulette-entry-weight{display:flex;align-items:center;gap:12px;margin-top:14px}.roulette-entry-weight>input{flex:1;min-width:45px;padding:0;accent-color:#e0b980}.roulette-entry-weight>label{display:flex;align-items:center;gap:5px;flex:0 0 93px}.roulette-entry-weight label input{width:72px;padding:9px 6px;margin:0}.roulette-lock{padding:10px;min-height:40px;font-size:12px}.roulette-lock.locked{border-color:#debd80;color:#eed098;background:#debd8014}.roulette-edit-actions,.roulette-run-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}.roulette-edit-actions>.button,.roulette-run-actions>.button{min-width:0;width:100%;min-height:48px;white-space:normal;line-height:1.5;padding-inline:12px}.roulette-save-state{margin-top:16px;color:#b4a58c;font-size:12px}.roulette-control{min-width:0}.roulette-preview{border:1px solid #b6894c50;border-radius:18px;padding:16px 0;min-height:420px}.roulette-preview>h1{font-size:22px}.roulette-preview .roulette-wheel{width:min(100%,600px)}.roulette-preview .roulette-result{flex-basis:110px;gap:8px;padding:10px}.roulette-preview .roulette-result>span{font-size:13px}.roulette-preview .roulette-result>strong{font-size:24px}.roulette-run-actions>.button:first-child{font-size:13px}@media(max-width:1100px){.roulette-admin{grid-template-columns:1fr}}@media(max-width:480px){.roulette-editor{padding:18px 12px}.roulette-entry-weight{gap:8px}.roulette-entry-weight>label{flex-basis:82px}.roulette-entry-weight label input{width:65px}.roulette-preview{min-height:320px}}.roulette-template-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.roulette-template-actions .button{width:100%;min-width:0;margin:0;white-space:normal}.display-root{position:fixed;inset:0;background:#08090a;overflow:hidden}.megaphone-overlay{position:absolute;top:0;left:0;width:1920px;height:128px;z-index:60;overflow:hidden;pointer-events:none;background:#000000c2;border-bottom:1px solid #ff5b3633}.megaphone-overlay canvas{display:block;width:100%;height:100%}.qr-code-overlay{position:absolute;z-index:30;left:50%;top:50%;transform:translate(-50%,-50%);width:43.75%;aspect-ratio:1;display:grid;place-items:center;background:#fff;box-shadow:0 12px 60px #0008;pointer-events:none}.qr-code-overlay img{width:92%;height:92%;min-height:0;object-fit:contain}.display-stage{position:absolute;top:50%;left:50%;width:1920px;height:1080px;transform-origin:center center;overflow:hidden;background:#111214}.guest-board{position:relative;isolation:isolate;width:1920px;height:1080px;padding:36px 48px 22px;background:radial-gradient(ellipse at 0% 0%,#87683e42,transparent 46%),radial-gradient(ellipse at 100% 100%,#55432c38,transparent 40%),radial-gradient(ellipse at 80% 0%,#3d4c632e,transparent 55%),repeating-linear-gradient(125deg,#ccb17904 0px,#ccb17904 1px,transparent 1px,transparent 16px),linear-gradient(125deg,#17191e,#090d13 55%,#131519);display:flex;flex-direction:column}.board-header{display:flex;align-items:center;justify-content:space-between;min-height:110px;margin-bottom:20px;border-bottom:1px solid #c5a97550;padding-bottom:22px}.board-header .brand-mark{width:70px;height:70px;font-size:35px;border-color:#c5a97547}.board-header .brand-mark>span{font-size:8px;letter-spacing:3px}.board-header .brand-name{font-size:23px}.board-header .brand-name small{font-size:9px;letter-spacing:2px}.board-title{text-align:center;margin-left:15px}.board-title .eyebrow{font-size:10px;letter-spacing:4px}.board-title h1{font-size:39px;font-weight:500;letter-spacing:3px;color:#fff5df;margin-top:10px;text-shadow:0 2px 22px #c09b5533}.board-title p{font-size:12px;color:#8f8a80;margin-top:12px;letter-spacing:2px}.board-time{text-align:right;min-width:240px}.board-time>small{display:block;font-size:10px;color:#8e8980;letter-spacing:2px;margin-top:12px}.board-meta{display:flex;justify-content:space-between;align-items:center;height:40px;margin-bottom:14px}.board-meta>span{font-size:11px;letter-spacing:2.4px;color:#b2a58d;display:flex;align-items:center;gap:13px}.board-meta>span>i{width:5px;height:5px;border-radius:50%;background:#cdb285}.board-meta b{font-family:Georgia,serif;font-weight:400;font-size:24px;color:#e1c89d;letter-spacing:1px;margin-left:5px}.board-meta>div{display:flex;align-items:center;gap:28px}.board-meta .type-icon>span{font-size:11px}.board-color-legend{flex-wrap:nowrap;white-space:nowrap}.board-color-legend>span{display:inline-flex;align-items:center;gap:10px;font-size:16px;color:#f0e8dc}.board-color-legend .color-bar{width:20px;height:20px}.birthday-legend{display:inline-flex;align-items:center;gap:7px;font-size:11px;color:#b2a285}.birthday-legend svg{color:#c7aa79}.board-grid{--board-row-gap: 10px;display:grid;grid-template-columns:repeat(var(--board-columns, 5),minmax(0,1fr));grid-template-rows:repeat(var(--board-rows, 5),minmax(0,min(calc((100% - 90px)/5),calc((100% - (var(--board-rows, 5) - 1) * var(--board-row-gap)) / var(--board-rows, 5)))));align-content:space-between;grid-auto-flow:row;direction:ltr;gap:var(--board-row-gap) 16px;flex:1;min-height:0}.board-guest{min-height:0;direction:ltr;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:6px 14px;border:1px solid #c9ae7263;border-radius:10px;background:linear-gradient(115deg,#373633be,#252930c4 58%,#24282fc4);box-shadow:inset 0 1px #ffeac21c,0 5px 14px #0004;min-width:0;overflow:hidden;isolation:isolate}.board-card-sheen{position:absolute;inset:-50%;z-index:-1;pointer-events:none;opacity:0;background:linear-gradient(135deg,transparent 38%,#ffedcb12 44%,#fff5df66 50%,#ffedcb12 56%,transparent 62%);transform:translate(-38%,-38%)}.board-number{position:absolute;top:5px;right:9px;font-family:Georgia,serif;font-size:10px;letter-spacing:1px;color:#baaa8a}.board-guest-name-row{display:flex;align-items:center;gap:12px;width:100%;min-width:0}.board-guest-name-row>.type-icon{width:50px;gap:8px;flex-shrink:0}.board-guest-name-row>.type-icon>svg{width:22px;height:22px}.board-guest .guest-name{flex:1;font-size:29px;line-height:1.15;letter-spacing:-.6px;font-weight:650;color:#fffaf0;gap:7px;text-shadow:0 2px 5px #0008}.board-guest .cake{width:34px;height:34px;overflow:visible}.board-dense{--board-row-gap: 5px;column-gap:12px}.board-dense .board-guest{border-radius:7px;gap:9px}.board-dense .guest-name{font-size:23px;line-height:1.15}.board-dense .cake{width:25px;height:25px}.board-dense .board-number{font-size:8px;top:2px;right:5px}.board-guest.birthday-guest{border-color:#daba79b3;background:linear-gradient(115deg,#514432cc,#302e2ccc 70%,#29282acc);box-shadow:inset 0 1px #ffeac236,0 0 16px #bd93400b}.board-guest.vacant{background:#0e121966;border-color:#a89a7921;box-shadow:none}.board-guest-stats{width:100%;height:1.2em;flex-shrink:0;font-size:18px;line-height:1.2;color:#f5e9ce;font-variant-numeric:tabular-nums}.board-guest-stats>span{position:absolute;left:14px;bottom:8px;display:inline-flex;align-items:center;justify-content:flex-start;gap:6px;white-space:nowrap}.board-guest-stats:before{content:"";position:absolute;left:2px;right:2px;bottom:2px;height:38px;z-index:-1;border-radius:0 0 7px 7px;background:#00000080;pointer-events:none}.board-guest-stats>.board-guest-status{left:auto;right:14px;max-width:calc(60% - 14px);justify-content:flex-end;text-align:right}.board-compact .board-guest{gap:3px;padding-block:3px}.board-compact .board-guest-stats{font-size:15px}.board-compact .board-guest-stats:before{height:28px}.board-compact .board-guest-stats>span{bottom:6px}.board-compact .board-guest .cake{width:24px;height:24px}.board-guest.board-guest-entered{border-color:#e7c568;box-shadow:inset 0 0 0 2px #e7c568,0 0 10px #d8ae4824}.board-guest.vacant .board-number{color:#3d4142}.vacant-line{width:26px;height:1px;background:#313332;margin-left:18px}.board-footer{display:flex;align-items:center;justify-content:space-between;padding-top:16px;min-height:46px;margin-top:12px;border-top:1px solid #b59b683d}.board-footer>span:first-child{font-size:12px;color:#928a7b;letter-spacing:1px}.board-wordmark{font-size:9px;color:#b89d6d;letter-spacing:6px}.board-footer .live{font-size:10px}.preview-board{transform-origin:top left;transform:scale(calc(100cqw/1920px))}.logo-stage{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;background:radial-gradient(ellipse,#8d6c222e,transparent 63%),linear-gradient(130deg,#151414,#0d0e10);color:#d6bd90}.logo-video-copy{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:90px 180px;text-align:center;pointer-events:none;color:#fff6e4;text-shadow:0 3px 10px #000d,0 1px 30px #000a}.logo-video-copy h1{max-width:100%;font-size:100px;line-height:1.25;letter-spacing:4px;font-weight:650;overflow-wrap:anywhere}.logo-video-copy p{max-width:1400px;margin-top:34px;font-size:38px;line-height:1.6;white-space:pre-line;overflow-wrap:anywhere}.preview-logo-stage{inset:auto;width:1920px;height:1080px;transform-origin:top left;transform:scale(calc(100cqw/1920px))}.logo-stage video,.birthday-stage>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.birthday-stage{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 75%,#9f742840,transparent 75%),#121112;overflow:hidden}.birthday-vignette{position:absolute;inset:0;background:radial-gradient(ellipse,#0002,#000a)}.birthday-copy{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:120px 180px;text-shadow:0 3px 25px #0008;animation:party-enter 1.3s ease both}.birthday-copy>svg{color:#d6b475;margin-bottom:38px}.birthday-copy>span{font-family:Georgia,serif;font-size:64px;letter-spacing:14px;color:#e0c395}.birthday-copy>h1{font-size:clamp(70px,6vw,116px);font-weight:500;letter-spacing:-5px;color:#fff2d7;max-width:1500px;line-height:1.3;margin:40px 0 30px;overflow-wrap:anywhere}.birthday-copy>p{max-width:1320px;font-size:35px;line-height:1.8;color:#e6d4b1;overflow-wrap:anywhere}.birthday-copy .party-rule{width:180px;margin:50px auto 28px;flex-shrink:0}.birthday-copy>small{font-size:13px;letter-spacing:5px;color:#d1b27d}.screen-controls{position:fixed;bottom:15px;right:15px;display:flex;gap:8px;opacity:.08;transition:opacity .3s;z-index:5}.screen-controls:hover,.screen-controls:focus-within{opacity:1}.screen-controls button{display:flex;align-items:center;gap:8px;font-size:12px;border:1px solid #61533b;background:#151311de;border-radius:6px;padding:12px 15px;color:#d6bd93;justify-content:center;min-width:120px;min-height:44px}.screen-controls{animation:controls-hint 6s ease}.screen-error{position:fixed;bottom:70px;left:50%;transform:translate(-50%);background:#5a302be8;color:#f6d6c4;padding:15px 25px;border-radius:8px;font-size:13px;z-index:7}.confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}.confetti i{position:absolute;top:-40px;width:8px;height:16px;background:#d9b464;opacity:.6;animation:confetti-fall calc(8s + var(--i) * .17s) linear infinite}.confetti i:nth-child(3n){background:#e9d7b0;width:5px;height:5px;border-radius:50%}.confetti i:nth-child(3n+1){background:#a67c4c}.confetti i:nth-child(2n){transform:rotate(30deg)}@keyframes confetti-fall{to{top:110%;transform:translate(100px) rotate(500deg)}}@keyframes controls-hint{0%,70%{opacity:1}to{opacity:.08}}@keyframes party-enter{0%{opacity:0;transform:translateY(28px) scale(.97)}to{opacity:1;transform:none}}.heart-flights{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:5;overflow:hidden}.heart-trail{fill:none;stroke:#ff90b7;stroke-width:2;stroke-dasharray:3 9;opacity:.28}.flying-heart{fill:#ff82af;stroke:#ffe0eb;stroke-width:.7;filter:drop-shadow(0 0 7px #ff438c)}.heart-origin,.heart-destination{fill:#ff77a81a;stroke:#ff90b7;stroke-width:2;opacity:.7}.guest-board:before{content:"";position:absolute;inset:14px;border:1px solid #cbb17626;border-radius:3px;pointer-events:none;z-index:-1}.board-guest .color-bar{height:20px;width:20px}.board-video-backdrop{position:absolute;inset:0;z-index:-2;overflow:hidden;pointer-events:none}.board-video-backdrop video{width:100%;height:100%;object-fit:cover}.board-background-notice{position:absolute;right:48px;top:150px;color:#dfbd88;font-size:11px}.board-activity-status{min-width:290px}.board-activity-status .activity-progress>div{font-size:17px}.board-activity-status .activity-clock{font-size:24px}.board-title h1{overflow-wrap:anywhere}.board-guest .ox-badge{margin-left:auto;flex-shrink:0}.guest-board .modal-backdrop{position:absolute}:root{font-family:Pretendard,Noto Sans KR,Malgun Gothic,Arial,sans-serif;color:#ecebea;background:#101112;font-synthesis:none;font-weight:400;--bg: #101112;--panel: #191a1c;--line: #2c2d2e;--gold: #d7bc8c;--muted: #949597;--soft: #babcbe;--rose: #d59ca9;color-scheme:dark}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.42}button{color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:4px}button{border:0}h1,h2,h3,p{margin:0}input,textarea,select{width:100%;padding:13px 14px;color:#f1efeb;background:#121315;border:1px solid #343537;border-radius:8px;outline:none;line-height:1.6}input:focus,textarea:focus,select:focus{border-color:var(--gold);box-shadow:0 0 0 3px #d7bc8c12}input::placeholder,textarea::placeholder{color:#747579}textarea{resize:vertical}input[type=file]{display:none}label{display:block;font-size:13px;font-weight:500}label>input,label>textarea,label>select{margin-top:9px}label>small{display:block;font-size:11px;color:var(--muted);font-weight:400;line-height:1.6;margin-top:7px}svg{flex-shrink:0}fieldset{padding:0;margin:0;border:0;min-width:0}legend{font-size:13px;margin-bottom:10px}button{background:none}button,a{transition:background .18s,color .18s,border-color .18s,opacity .18s}button:not(:disabled):hover{filter:brightness(1.12)}::selection{background:#d7bc8c55;color:#fff}.brand{display:flex;align-items:center;gap:14px}.brand-mark{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #8c795542;border-radius:50%;width:58px;height:58px;font-family:Georgia,serif;color:var(--gold);font-size:26px;letter-spacing:-1px;line-height:1.05}.brand-mark>span{font-family:Arial,sans-serif;font-size:7px;letter-spacing:3px;margin:4px 0 0 3px}.brand .brand-mark.brand-mark-image{border:0;border-radius:0;background:transparent;flex-shrink:0}.brand-mark-image img{width:100%;height:100%;display:block;object-fit:contain}.brand-name{font-weight:600;font-size:19px;letter-spacing:-.5px}.brand-name small{display:block;font-weight:400;font-size:8px;letter-spacing:2.3px;color:#9f9483;margin-top:8px}.brand.small{gap:10px}.brand.small .brand-mark{width:39px;height:39px;font-size:20px}.brand.small .brand-mark>span{font-size:5px;letter-spacing:2px;margin-top:2px}.brand.small .brand-name{font-size:16px}.brand.small .brand-name small{display:none}.eyebrow{font-size:10px;letter-spacing:2.2px;color:var(--gold);font-weight:500}.gold-dot{color:var(--gold);margin-left:3px}.muted{color:var(--muted);line-height:1.7}.live{display:inline-flex;gap:7px;align-items:center;color:#a7b9a8;font-size:11px;white-space:nowrap}.live i,.subtle-live i,.hero-date i,.venue-status i,.preview-label i,.display-preview-label i{height:5px;width:5px;border-radius:50%;background:#93b29c;box-shadow:0 0 8px #93b29c30}.live.offline{color:#d5ab69}.live.offline i{background:#d5ab69}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 19px;font-size:13px;font-weight:600;border:1px solid transparent;border-radius:8px;min-height:45px;white-space:nowrap}.button.primary{background:var(--gold);border-color:var(--gold);color:#24201a}.button.secondary{background:#232426;border-color:#393a3c;color:#e4e3df}.button.danger{color:#e7a4a4;background:#5b30353d;border-color:#723f4455}.button.text{color:var(--muted);padding-left:8px;padding-right:8px}.button.tiny{min-height:31px;padding:6px 11px;border-radius:5px;font-size:11px}.button.full{width:100%}.button-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:12px}.button-row>.button,.modal-actions>.button{width:100%;min-width:0;min-height:48px;white-space:normal;overflow-wrap:anywhere;line-height:1.5}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:7px;color:#999a9c}.icon-button:hover{background:#ffffff09;color:#f7f6f2}.loading{display:flex;min-height:260px;align-items:center;justify-content:center;flex-direction:column;gap:17px;color:var(--muted);font-size:13px}.loading svg{color:var(--gold)}.spin{animation:spin 1.2s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.boot-screen{min-height:100dvh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:40px}.boot-screen .loading{min-height:140px}.empty{text-align:center;padding:65px 24px}.empty>span{display:inline-flex;padding:17px;border:1px solid #d7bc8c1c;border-radius:50%;color:#ae9671;background:#d7bc8c08;margin-bottom:22px}.empty h3{font-size:17px;font-weight:500;margin-bottom:10px}.empty p{font-size:12px;color:var(--muted);line-height:1.8;max-width:330px;margin:auto}.error-notice{color:#efaaaa;font-size:12px;line-height:1.8;padding:13px 16px;border:1px solid #d36b6b38;background:#53262a44;border-radius:8px;margin:12px 0;word-break:keep-all}.toast{position:fixed;bottom:100px;left:50%;transform:translate(-50%);z-index:100;background:#ede6d8;color:#322b20;border:1px solid #e7d3ae;border-radius:10px;padding:14px 22px;box-shadow:0 8px 40px #0008;display:flex;align-items:center;gap:9px;font-size:13px;width:max-content;max-width:90vw}.type-icon{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;flex-shrink:0}.color-bar{display:inline-block;width:16px;height:16px;border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff50,0 1px 4px #0006;flex-shrink:0}.color-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.color-option{position:relative;cursor:pointer}.color-option input{position:absolute;opacity:0;width:1px;height:1px;margin:0}.color-option-content{display:flex;flex-direction:column;align-items:center;gap:9px;padding:14px 3px;border:1px solid #363638;border-radius:8px;background:#17181a}.color-option-content .color-bar{width:28px;height:28px}.color-option-content strong{font-size:12px;font-weight:500}.color-option-content small{font-size:9px;color:#98999c}.color-option input:checked+.color-option-content{border-color:var(--option-color);background:color-mix(in srgb,var(--option-color) 9%,#17181a)}.color-option input:checked+.color-option-content strong{color:var(--option-color)}.color-option input:focus-visible+.color-option-content{outline:2px solid var(--option-color);outline-offset:3px}.color-help{font-size:10px;color:var(--muted);line-height:1.8;margin-top:11px}.type-icon.couple{color:#c8b1e5}.type-icon.male{color:#91b5d5}.type-icon.female{color:#dba1b1}.type-icon span{font-size:12px;color:#b5b5b7}.guest-name{display:inline-flex;gap:7px;align-items:center;min-width:0;max-width:100%}.guest-name>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cake{flex-shrink:0}.birthday-cake{display:inline-block;vertical-align:middle;flex-shrink:0;filter:drop-shadow(0 1px 2px #0005)}.birthday-flame{animation:birthday-flame-frames .7s steps(1,end) infinite}.birthday-flame-second{animation-name:birthday-flame-second-frames;opacity:0}@keyframes birthday-flame-second-frames{0%,to{opacity:0}50%{opacity:1}}@keyframes birthday-flame-frames{0%,to{opacity:1}50%{opacity:0}}@media(prefers-reduced-motion:reduce){.birthday-flame{animation:none}.birthday-flame-second{opacity:0}}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:5px;padding:6px 9px;font-size:11px;font-weight:500;white-space:nowrap}.badge:before{content:"";width:4px;height:4px;background:currentColor;border-radius:50%}.badge.pending{background:#d5b37b14;color:#d6b878}.badge.payment_requested{background:#87a5d11a;color:#9bbce4}.badge.confirmed{background:#92bda018;color:#a0c9ab}.badge.checked-in{background:#c62828;color:#fff;font-weight:700}.badge.cancelled{background:#9a9b9c14;color:#929598}.form-stack{display:flex;flex-direction:column;gap:24px}.form-stack>.muted{font-size:12px}.required{color:var(--gold)}.optional{font-size:10px;color:#777;margin-left:5px}.char-count{text-align:right}.info-note{font-size:11px;line-height:1.9;color:#999a9b;font-weight:400}.profile-details{margin-top:20px}.profile-details p{font-size:14px;color:#bab8b5;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}.profile-details a{display:inline-flex;align-items:center;gap:5px;margin-top:18px;font-size:13px;color:var(--gold)}.selected-profile{padding:20px 0}.selected-profile>h2{font-size:25px;margin-top:18px;overflow-wrap:anywhere}.selected-profile>p{color:#999;font-size:13px;margin-top:12px}.modal{width:min(460px,calc(100vw - 28px));max-height:calc(100dvh - 36px);overflow:auto;background:#1b1c1e;border:1px solid #44413b;border-radius:18px;padding:27px;color:#ecebea;box-shadow:0 30px 100px #000a}.modal.wide{width:min(650px,calc(100vw - 28px))}.modal::backdrop{background:#060708bd;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:27px}.modal-head h2{min-width:0;overflow-wrap:anywhere;font-size:20px;letter-spacing:-.7px;font-weight:600}.modal-head>.icon-button{flex:0 0 44px;width:44px;height:44px}.modal-body{display:flex;flex-direction:column;gap:24px;min-width:0;line-height:1.7;overflow-wrap:anywhere}.modal .modal-body>*,.modal-body .form-stack>*{min-width:0;margin-block:0}.modal-body>.modal-actions{margin-top:0}.modal .button{min-width:0;white-space:normal;overflow-wrap:anywhere;line-height:1.5}.modal .button>svg{flex-shrink:0}.modal .button-row{gap:12px}.modal .button-row>.button{padding-inline:10px}.modal .selected-profile{display:flex;flex-direction:column;align-items:stretch;gap:18px;padding:0}.modal .selected-profile>*{margin-block:0;min-width:0}.modal .selected-profile>.button{margin-top:6px}.modal .selected-profile>small{display:block;overflow-wrap:anywhere}.modal .profile-details:empty{display:none}.modal .modal-feature{display:flex;flex-direction:column;align-items:center;gap:16px;padding:12px 0}.modal .modal-feature>*{margin-block:0}.modal .modal-feature>.button{margin-top:8px}.modal-text{font-size:14px;color:#b9b9b9;line-height:1.9;margin:10px 0 28px;overflow-wrap:anywhere}.modal-text strong{color:#e7d2af;font-weight:500}.modal-copy{display:grid;gap:14px;color:#c9c9ca;font-size:14px;line-height:1.7;overflow-wrap:anywhere}.modal-copy p{margin:0}.modal-actions{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:stretch;gap:12px;width:100%;margin-top:24px}.game-invitation-actions{gap:8px}.game-invitation-actions>.button{min-width:0;min-height:48px;padding:12px 4px;font-size:13px;white-space:normal}.modal-feature{text-align:center;padding:12px 0 25px}.modal-feature>svg{color:var(--gold);margin-bottom:22px}.modal-feature h3{font-size:19px;margin-bottom:15px}.modal-feature p{font-size:13px;line-height:1.9;color:#a8a7a5;margin-bottom:15px}.modal-feature>.badge{margin-bottom:24px}.type-options{display:flex;gap:9px}.type-options button{display:flex;flex:1;gap:9px;flex-direction:column;align-items:center;padding:16px 4px;border:1px solid #363638;border-radius:8px;color:#929396;font-size:12px}.type-options button.selected{background:#d7bc8c10;border-color:#c8af7f;color:var(--gold)}.payment-symbol{width:62px;height:62px;border-radius:50%;background:#d7bc8c10;display:flex;align-items:center;justify-content:center;color:var(--gold);margin:8px auto 22px}.payment-banner{position:sticky;top:0;z-index:11;display:flex;width:100%;align-items:center;gap:12px;text-align:left;padding:16px 24px;background:#392d1d;border-bottom:1px solid #a98b524f;color:#e6c891}.payment-banner>span{flex:1}.payment-banner strong{display:block;font-size:13px}.payment-banner small{display:block;margin-top:5px;font-size:11px;color:#c5b59c}.channel-notice-banner{background:#3b191e;border-color:#ff7d8955}.channel-notice-banner strong{color:#ff939d;font-size:16px;font-weight:750;line-height:1.55;word-break:keep-all;overflow-wrap:anywhere}.channel-notice-modal .modal-head{align-items:flex-start}.channel-notice-modal .modal-head h2{color:#ff939d;font-size:22px;font-weight:750;line-height:1.5;word-break:keep-all}.payment-amount{padding:18px;margin:0 0 20px;background:#d7bc8c0b;border:1px solid #d7bc8c30;border-radius:9px}.payment-amount>span{font-size:12px;color:#bdaf97}.payment-amount>strong{display:block;margin:12px 0 8px;font-size:28px;color:#e7cfaa}.payment-amount>small{color:#92908c;font-size:10px}.payment-request-note{margin:18px 0}.reservation-fee{display:block;font-size:11px;margin-top:8px;color:#c6b18c}.payment-delivery{display:block;font-size:9px;color:#b79c76;margin-top:6px}.payment-delivery.delivered{color:#9ebba5}.fee-table{width:100%;border-collapse:collapse;table-layout:fixed}.fee-table th{font-size:11px;font-weight:500;color:#b8b5ae}.fee-table th:first-child{width:62px}.fee-table thead th{padding:0 5px 15px}.fee-table tbody th{text-align:left}.fee-table td{padding:7px 4px}.fee-input{position:relative}.fee-input input{margin:0;padding:11px 25px 11px 8px;font-size:12px;appearance:textfield}.fee-input input::-webkit-inner-spin-button{appearance:none}.fee-input>span{position:absolute;top:50%;right:9px;transform:translateY(-50%);font-size:10px;color:#8b8b88;pointer-events:none}.bank-label{margin-bottom:15px;color:#b5b3b0;font-size:11px}.bank-label textarea{font-size:14px;color:#e4cda7;background:#101112;resize:none}.bank-label+.button{margin-bottom:17px}.info-note+.button{margin-top:22px}.customer-layout{min-height:100dvh;display:flex;justify-content:center;background:#090a0b}.desktop-story{position:fixed;inset:0 480px 0 0;background:linear-gradient(180deg,#06050455,#0c0c0dd9),var(--club-bg) center/cover;padding:60px 70px;display:flex;flex-direction:column;justify-content:space-between}.desktop-story>.brand{opacity:.94}.desktop-story>div>.eyebrow{font-size:11px}.desktop-story h1{font-weight:300;letter-spacing:-2.8px;font-size:clamp(38px,4.2vw,76px);line-height:1.35;margin:25px 0 28px}.desktop-story p{color:#bbb4a9;font-size:15px;line-height:2;letter-spacing:.2px}.story-line{display:block;height:1px;background:#c6ae83;width:60px;margin-top:45px}.desktop-story footer{display:flex;justify-content:space-between;font-size:9px;color:#91897c;letter-spacing:3px}.mobile-shell{width:480px;min-height:100dvh;position:relative;margin-left:auto;background:#111214;padding-bottom:88px;box-shadow:-20px 0 80px #0006}.mobile-header{height:54px;padding:0 26px;display:flex;align-items:center;justify-content:space-between;background:#111214;border-bottom:1px solid #ffffff06}.mobile-header .live{font-size:9px;gap:5px}.mobile-hero{height:326.4px;position:relative;padding:26px 28px 20px;background:linear-gradient(180deg,#12121220,#1112141f 30%,#111214c7 88%,#111214),var(--club-bg) 62% 45% / cover;display:flex;flex-direction:column;justify-content:space-between}.hero-date{display:flex;align-items:center;gap:7px;font-size:10px;color:#ddd6cb}.hero-date i{background:var(--gold);box-shadow:none}.hero-date>span{margin-left:auto;border:1px solid #ddc2914d;padding:5px 8px;border-radius:3px;font-size:8px;letter-spacing:1.3px;color:#dbc197;background:#211c1261}.hero-copy{padding-top:32px}.hero-copy .eyebrow{font-size:8px;letter-spacing:2.3px;color:#e1c9a1}.hero-copy h1{font-size:44px;font-weight:300;letter-spacing:-2.3px;line-height:1.4;margin-top:17px;text-shadow:0 2px 30px #000a}.hero-copy h1 em{font-style:normal;color:#dec9a5}.hero-copy p{font-size:12px;color:#bdb6ac;line-height:1.7;margin-top:15px}.hero-bottom{display:flex;justify-content:space-between;align-items:center;color:#b9a788;margin-top:25px}.hero-bottom>span{font-size:8px;letter-spacing:2px}.mobile-content{padding:26px}.welcome-block{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.welcome-block .eyebrow{font-size:7px;letter-spacing:1.7px;color:#8c8374}.welcome-block h2{font-size:19px;letter-spacing:-.6px;font-weight:500;margin-top:9px;overflow-wrap:anywhere}.welcome-star{color:#a68c63;font-size:35px;font-family:Georgia;margin-left:10px}.reservation-cta{width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;background:linear-gradient(110deg,#dbc293,#c2a16c);padding:26px 23px;color:#2e271d;border:1px solid #e3c99d;border-radius:10px;box-shadow:0 6px 25px #0002}.reservation-cta>div{display:flex;flex-direction:column}.reservation-cta span:not(.round-arrow){font-size:8px;letter-spacing:1.5px;color:#69573c}.reservation-cta strong{font-size:22px;font-weight:600;letter-spacing:-.8px;margin:10px 0}.reservation-cta small{font-size:11px;color:#6a583d}.round-arrow{border:1px solid #6a56314d;border-radius:50%;width:45px;height:45px;display:flex;align-items:center;justify-content:center}.member-stats{display:flex;padding:25px 8px;margin:6px 0 10px;gap:20px;align-items:center}.received-hearts-stat{background:transparent;border-radius:10px;text-align:left}.received-hearts-stat:hover,.received-hearts-stat:focus-visible{background:#ce91a615}.received-hearts-label{text-decoration:underline solid #fff;text-underline-offset:4px}.hearts-page>h1{font-size:29px;font-weight:500;margin:15px 0 24px}.hearts-page .received-hearts-total{padding:20px 16px;border:1px solid #ce91a630;border-radius:12px;background:#ce91a60c;font-size:15px}.hearts-page .received-hearts-total strong{margin-left:auto;font-size:24px}.hearts-empty{padding:32px 0;text-align:center}.received-hearts-total{display:flex;align-items:center;gap:10px;color:#e9a9bd;font-size:20px}.received-hearts-list{list-style:none;padding:0}.received-hearts-list li{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.received-hearts-list li>span{min-width:0;overflow-wrap:anywhere}.received-hearts-list strong{display:flex;align-items:center;gap:6px;flex-shrink:0;color:#e9a9bd}.member-stats>:is(div,button){flex:1;display:flex;align-items:center;justify-content:center;gap:12px}.stat-icon{color:var(--gold);background:#d7bc8c0c;width:35px;height:35px;display:flex;align-items:center;justify-content:center;border-radius:50%}.stat-icon.rose{color:#d49dab;background:#ce91a60c}.member-stats>:is(div,button)>span:last-child{font-size:10px;color:#98999a}.member-stats strong{display:block;color:#f5f0e8;font-family:Georgia,serif;font-size:25px;font-weight:400;margin-top:7px}.member-stats strong small{font-family:inherit;font-size:11px;color:#979796;margin-left:6px}.stat-divider{width:1px;height:38px;background:#2c2d2e}.menu-list{border-top:1px solid #2a2b2d}.menu-list button{width:100%;display:flex;align-items:center;text-align:left;border-bottom:1px solid #252628;gap:15px;padding:20px 0}.menu-icon{color:#b6aa97;background:#1e1f20;width:40px;height:40px;border:1px solid #2b2b2b;display:flex;align-items:center;justify-content:center;border-radius:10px}.menu-list button>span:nth-child(2){flex:1}.menu-list strong{display:block;font-size:13px;font-weight:500;margin-bottom:6px}.menu-list small{display:block;font-size:10px;color:#7d7f82}.menu-list button>svg{color:#737477}.privacy-note{text-align:center;color:#77797d;font-size:10px;line-height:1.9;margin:30px 0 12px}.mobile-nav{height:76px;position:fixed;bottom:0;right:0;width:480px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;background:#151618ed;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid #292a2c;z-index:10;padding-bottom:env(safe-area-inset-bottom)}.mobile-nav button{display:flex;flex-direction:column;align-items:center;gap:7px;color:#818386;font-size:9px;min-width:0;padding:10px 4px;white-space:nowrap}.mobile-nav button.active{color:#d6b888}.reservation-card{border:1px solid #d7bc8c35;border-radius:10px;padding:21px;background:linear-gradient(130deg,#d7bc8c0c,#1b1b1c)}.section-line{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-line>span{display:inline-flex;align-items:center;gap:7px;font-size:11px}.reservation-card .section-line>span:first-child{color:#c5b596}.reservation-card h3{font-size:18px;letter-spacing:-.8px;margin:22px 0 10px;font-weight:500}.reservation-card p{font-size:11px;line-height:1.8;color:#a5a3a0}.reservation-card .button{margin-top:20px}.reservation-card.confirmed{border-color:#90b99d35}.guest-page{padding-top:43px}.guest-page>.eyebrow{font-size:8px}.guest-page>h1{font-weight:500;font-size:29px;letter-spacing:-1px;margin:15px 0}.guest-page>.muted{font-size:11px}.guest-legend{display:flex;gap:16px;border-bottom:1px solid #2b2c2e;margin-top:27px;padding-bottom:25px}.guest-legend .type-icon{gap:4px}.guest-legend .type-icon span{font-size:10px}.guest-count{padding:25px 0 8px;color:#989898}.guest-count>span:last-child{font-size:8px;letter-spacing:1px;color:#bbab90}.mobile-guest{display:flex;align-items:center;gap:12px;padding:21px 0;border-bottom:1px solid #292a2b}.guest-index{font-family:Georgia;font-size:13px;color:#757571;min-width:18px}.guest-info-button{padding:0;flex:1;text-align:left;min-width:0}.guest-info-button .guest-name{font-size:14px;font-weight:500}.guest-info-button small{display:block;font-size:10px;color:#8a8988;margin-top:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.heart-button{padding:5px;color:#887379;border:1px solid #3b3034;border-radius:50%;height:44px;width:44px;display:flex;align-items:center;justify-content:center}.heart-button.sent{color:#d69cae;background:#d69cae12;opacity:1;border-color:#bb869630}.heart-button:hover{color:#e9abbf}.me-label{font-size:8px;letter-spacing:1px;color:var(--gold);padding:9px}.end-screen{padding:100px 30px;text-align:center}.end-screen>svg{color:var(--gold);margin-bottom:30px}.end-screen h1{font-size:28px;font-weight:400;letter-spacing:-1px}.end-screen p{font-size:12px;color:#aaa;line-height:2;margin:23px 0 32px}.admin-menu-toggle{display:none}.admin-layout{min-height:100vh;background:#121315}.sidebar{width:238px;position:fixed;inset:0 auto 0 0;padding:35px 23px 25px;background:#17181a;border-right:1px solid #2a2b2d;display:flex;flex-direction:column;z-index:20}.sidebar .admin-brand-row{margin:0 6px 52px}.sidebar .brand-mark{width:48px;height:48px;font-size:25px}.sidebar .brand-name{font-size:19px}.sidebar .brand-name small{font-size:7px;letter-spacing:1.8px}.sidebar-label{font-size:9px;letter-spacing:1.6px;color:#65676b;margin-left:17px;margin-bottom:17px}.sidebar nav{display:flex;flex-direction:column;gap:7px}.sidebar nav>button{display:flex;align-items:center;gap:13px;min-height:48px;padding:0 15px;border:1px solid transparent;border-radius:8px;color:#a0a1a5;text-align:left;font-size:13px}.sidebar nav>button.active{color:#ddc395;background:linear-gradient(110deg,#d7bc8c14,#d7bc8c05);border-color:#b99c6630}.nav-count{margin-left:auto;min-width:21px;height:20px;padding:3px 5px;text-align:center;font-size:10px;border-radius:4px;background:#c3a77518;color:#cfb98f}.sidebar-bottom{margin-top:auto}.venue-status{padding:20px 13px;border-top:1px solid #292a2d;display:flex;align-items:flex-start;gap:10px}.venue-status i{margin-top:5px}.venue-status>span{font-size:11px;color:#a9aaa8}.venue-status small{display:block;margin-top:8px;color:#666a6a;font-size:7px;letter-spacing:1.7px}.sidebar-bottom>a{display:flex;justify-content:space-between;align-items:center;padding:13px 14px;border:1px solid #333437;border-radius:6px;color:#aeb0b2;font-size:11px}.sidebar-bottom>button{display:flex;align-items:center;gap:10px;padding:20px 15px 0;font-size:11px;color:#737579}.admin-main{margin-left:238px;min-height:100vh}.admin-topbar{height:75px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #2c2d2f;padding:0 42px;background:#141517}.admin-topbar>span{display:flex;align-items:center;gap:12px;font-size:11px;color:#7f8286}.admin-topbar strong{font-weight:400;color:#c3c4c5}.admin-topbar>div{display:flex;align-items:center;gap:11px;font-size:11px;color:#afb0b2}.topbar-divider{height:17px;width:1px;background:#353639;margin:0 10px}.admin-avatar{display:flex;align-items:center;justify-content:center;font-family:Georgia;font-size:14px;color:#d6bf9a;background:#d7bc8c12;border:1px solid #cfb7832e;border-radius:50%;width:30px;height:30px}.admin-content{padding:36px 42px 0;max-width:1800px;margin:0 auto}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.page-heading .eyebrow{font-size:8px;letter-spacing:2px;color:#9f9076}.page-heading h1{font-size:32px;letter-spacing:-1.6px;font-weight:500;margin:10px 0 12px}.page-heading p{color:#85888d;font-size:12px}.page-date{display:flex;align-items:center;gap:9px;color:#b0aaa0;font-size:11px;border:1px solid #343333;padding:12px 15px;border-radius:6px;background:#1a1a1c}.page-date>svg{color:#9b8b70}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:24px}.stat-card{border:1px solid #303134;border-radius:10px;background:linear-gradient(115deg,#1e1f21,#191a1c);padding:22px 23px}.stat-card>div{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#b3b3b3}.stat-card>div>svg{color:#83898d}.stat-card.amber>div>svg{color:#c5a676}.stat-card.blue>div>svg{color:#88a1c1}.stat-card.green>div>svg{color:#91af9a}.stat-card>strong{font-family:Georgia,serif;font-weight:400;font-size:39px;line-height:1;display:block;margin:24px 0 13px;letter-spacing:-1.5px}.stat-card>strong>small{font-family:Malgun Gothic,sans-serif;font-size:12px;color:#8b8d8e;margin-left:9px;letter-spacing:0}.stat-card>p{font-size:10px;color:#777b80}.birthday-banner{display:flex;align-items:center;gap:16px;width:100%;padding:17px 23px;border:1px solid #b99a6240;border-radius:9px;background:linear-gradient(100deg,#d4b78514,#d4b78503);text-align:left;margin-bottom:24px}.birthday-banner-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:#d4b889;background:#c7a77111;border:1px solid #b59b7223;border-radius:50%}.birthday-banner>span:nth-child(2){flex:1}.birthday-banner strong{font-size:12px;font-weight:500;color:#d7c3a0}.birthday-banner small{font-size:10px;color:#9b9385;display:block;margin-top:7px}.birthday-banner>span:last-child{font-size:11px;display:flex;align-items:center;gap:8px;color:#c5af89}.panel{border:1px solid #2e3033;border-radius:10px;background:#191a1c}.panel-heading{display:flex;align-items:center;justify-content:space-between;padding:25px 25px 22px}.panel-heading h2{font-size:16px;font-weight:500;letter-spacing:-.5px}.panel-heading h2>span{color:var(--gold);font-size:13px;margin-left:8px}.panel-heading p{font-size:10px;color:#787c82;margin-top:9px}.subtle-live{display:flex;align-items:center;gap:6px;font-size:7px;color:#8b9b90;letter-spacing:1.5px}.subtle-live i{width:4px;height:4px}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 25px 20px}.reservation-views{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.reservation-sound{display:inline-flex;align-items:center;gap:6px;color:var(--gold);padding:8px;font-size:12px;white-space:nowrap}.reservation-notifications{position:fixed;top:84px;right:24px;z-index:150;width:min(370px,calc(100vw - 32px));border:1px solid var(--gold);border-radius:14px;padding:18px;background:#20201f;box-shadow:0 16px 56px #0009}.reservation-notifications>header,.reservation-notifications>header strong{display:flex;align-items:center;gap:8px}.reservation-notifications>header{justify-content:space-between;color:var(--gold)}.reservation-notification-list{max-height:min(45vh,360px);overflow-y:auto;margin:8px 0 16px}.reservation-notification{display:flex;border-bottom:1px solid #ffffff14;align-items:flex-start}.reservation-notification>button:first-child{flex:1;text-align:left;padding:14px 0;min-width:0}.reservation-notification strong,.reservation-notification span,.reservation-notification small{display:block;overflow-wrap:anywhere}.reservation-notification span{color:#ccc;font-size:13px;margin-top:5px}.reservation-notification small{color:var(--gold);margin-top:8px}.notification-sound-hint{display:block;margin-top:12px;color:var(--muted);line-height:1.6}.reservation-views [role=tab]{display:inline-flex;align-items:center;gap:12px;padding:13px 18px;border:1px solid #343638;border-radius:10px;color:var(--muted);background:#191b1d;font-weight:600;flex:1 1 0;min-width:0;min-height:48px;justify-content:center}.reservation-views>.button{flex:1 1 0;min-height:48px;white-space:normal}.reservation-views [aria-selected=true]{color:var(--gold);border-color:var(--gold);background:#2b271f}.reservation-views [role=tab] span{font-variant-numeric:tabular-nums;padding:2px 8px;border-radius:20px;background:#ffffff0c}.reservation-inbox-note{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;margin-bottom:24px;font-size:13px;color:var(--muted)}.reservation-inbox-note p{margin:0}.reservation-inbox-note button{display:inline-flex;align-items:center;color:var(--gold);gap:4px;padding:5px 0}.reservation-visit-date{white-space:nowrap}.reservation-visit-date strong{display:block;font-size:13px}.reservation-visit-date small{display:block;margin-top:5px;color:var(--muted)}.filter-tabs{display:flex;align-items:center;gap:6px}.filter-tabs>button{color:#8b8e93;border:1px solid transparent;border-radius:6px;padding:8px 11px;font-size:10px;white-space:nowrap}.filter-tabs>button.active{border-color:#63563f6b;background:#c5a16a13;color:#d9c395}.filter-tabs>button>span{font-size:9px;margin-left:7px;color:#727579}.filter-tabs>button.active>span{color:#c4aa7e}.search{display:flex;align-items:center;gap:8px;border:1px solid #34363a;background:#151618;border-radius:6px;padding:0 11px;width:195px;color:#777d83}.search input{border:0;box-shadow:none;background:transparent;padding:8px 0;margin:0;font-size:10px;min-width:0}.table-scroll{overflow:auto}.guest-table{width:100%;border-collapse:collapse;white-space:nowrap;text-align:left;font-size:12px}.guest-table th{font-size:10px;color:#898c92;font-weight:400;padding:13px 18px;background:#151618;border-top:1px solid #2a2c30;border-bottom:1px solid #2a2c30}.guest-table th:first-child,.guest-table td:first-child{padding-left:26px;width:61px}.guest-table td{padding:15px 18px;border-bottom:1px solid #282a2d}.guest-table tbody tr:last-child td{border-bottom:0}.guest-table tr:hover td{background:#ffffff02}.row-number{font-family:Georgia;font-size:12px;color:#6b7075}.table-name{display:flex;align-items:center;gap:12px;text-align:left;padding:0;max-width:290px}.avatar{display:flex;align-items:center;justify-content:center;font-size:13px;color:#aa9c83;background:#c7b38610;border:1px solid #c7b38616;border-radius:50%;height:34px;width:34px;flex-shrink:0}.avatar.male{color:#9cabb8;background:#8db1cd0b;border-color:#8db1cd13}.avatar.female{color:#bb9eaa;background:#c89aaf0b;border-color:#c89aaf13}.avatar.couple{color:#b6a3c6;background:#bea2d10b;border-color:#bea2d113}.table-name>span:last-child{min-width:0}.table-name .guest-name{font-size:12px;max-width:210px}.table-name small{display:block;font-size:9px;color:#73787e;margin-top:6px}.guest-table .type-icon span{font-size:10px}.visit-number{color:#d7d4cc;font-size:13px}.guest-table td>.muted{font-size:10px}.first-visit{display:inline-block;margin-left:8px;font-size:7px;letter-spacing:.5px;color:#8d9d8f;background:#8d9d8f12;padding:3px 4px;border-radius:3px}.birthday-toggle{display:flex;align-items:center;justify-content:center;color:#595e64;padding:6px;border-radius:5px}.birthday-toggle.active{color:#d4b47d;background:#c5a47012}.row-actions{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(100px,1fr);align-items:stretch;gap:10px}.row-actions>.button{width:100%;min-width:0;min-height:36px}.row-actions>.icon-button{width:36px;height:auto;min-height:36px;flex-shrink:0;justify-self:center}.cancel-action{margin-left:0}.cancel-action:hover{color:#d8a4a4}.checked-label{font-size:10px;color:#94b5a4;display:flex;align-items:center;gap:5px}.table-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #2d2f32;padding:16px 25px;color:#767a7e;font-size:10px}.table-bottom>span:last-child{display:flex;align-items:center;gap:6px;font-size:9px}.table-bottom svg{color:#9f8b68}.workflow-note{display:flex;gap:12px;align-items:center;padding:23px 4px;color:#696e74}.workflow-note p{font-size:10px;line-height:1.8}.workflow-note strong{font-weight:400;color:#94989a}.workflow-note span{display:block;font-size:9px;color:#676d73}.admin-footer{display:flex;justify-content:space-between;color:#565c61;font-size:9px;padding:30px 0;margin-top:20px;border-top:1px solid #25272a}.admin-footer>span:first-child{color:#92918a;font-size:10px}.admin-footer>span:first-child>span{color:#51565c;font-size:7px;letter-spacing:1.4px;margin-left:12px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.settings-panel{padding:28px}.panel-title{display:flex;align-items:center;gap:13px;margin-bottom:9px}.panel-title>svg{color:#c6ad83}.panel-title h2{font-size:16px;font-weight:500}.panel-title p{font-size:11px;color:#81858b;line-height:1.8;margin-top:7px}.form-divider{height:1px;background:#2f3134;margin:6px 0}.payment-preview{padding:20px;background:#111214;border:1px solid #303034;border-radius:7px}.payment-preview>span{font-size:9px;color:#bca67f}.payment-preview>p{font-size:12px;line-height:2;color:#aaabae;overflow-wrap:anywhere;margin:13px 0}.payment-preview>small{display:flex;align-items:center;gap:5px;font-size:9px;color:#73777c}.settings-panel>.button{align-self:flex-start;min-width:145px}.media-setting{border-top:1px solid #2c2e31;padding-top:24px;margin-top:26px}.media-label{display:flex;align-items:center;gap:11px;margin-bottom:18px}.media-label>svg{color:#949593}.media-label>div{flex:1}.media-label strong{font-size:12px;font-weight:500}.media-label p{font-size:10px;color:#777e85;line-height:1.7;margin-top:7px}.registered{display:flex;align-items:center;gap:4px;color:#91ac95;font-size:9px}.media-preview{width:100%;max-height:175px;aspect-ratio:16/9;object-fit:cover;border:1px solid #353638;border-radius:7px;background:#0b0c0d;display:block;margin-bottom:14px}.media-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:12px}.media-actions>.button{font-size:12px;padding:12px;min-height:48px;min-width:0;width:100%;white-space:normal}.media-actions>.button:only-child,.media-actions>.button:first-child:nth-last-child(2){grid-column:1 / -1}.qr-display-toggle{margin-top:24px;width:100%;min-height:48px}.upload-button{cursor:pointer}.upload-button.disabled{opacity:.4;pointer-events:none}.media-actions small{grid-column:1 / -1;font-size:9px;color:#71777c}.party-layout{display:grid;grid-template-columns:minmax(330px,.85fr) minmax(0,1.3fr);gap:28px;align-items:start}.party-preview{position:relative;min-height:550px;border:1px solid #9e834136;border-radius:12px;overflow:hidden;background:radial-gradient(ellipse at 50% 80%,#8b632626,transparent 65%),#151415;display:flex;align-items:center;justify-content:center}.party-preview video{position:absolute;width:100%;height:100%;object-fit:cover;opacity:.45}.preview-label{position:absolute;top:22px;left:22px;display:flex;gap:7px;align-items:center;font-size:9px;color:#a59b8a;z-index:2}.party-preview-copy{position:relative;z-index:1;text-align:center;padding:60px 35px}.party-preview-copy>svg{display:block;margin:0 auto 25px;color:#b69a64}.party-preview-copy>span{font-family:Georgia,serif;display:block;font-size:24px;letter-spacing:4px;color:#d6bf94}.party-preview-copy>h2{font-weight:500;font-size:42px;color:#f4e8ce;margin:24px 0;letter-spacing:-2px;overflow-wrap:anywhere}.party-preview-copy>p{font-size:15px;color:#bba888;line-height:1.8;overflow-wrap:anywhere}.party-rule{background:linear-gradient(90deg,transparent,#b59763,transparent);height:1px;width:110px;margin:40px auto 25px}.party-preview-copy>small{font-size:8px;letter-spacing:2px;color:#9d865e}.media-needed{display:flex;align-items:center;gap:8px;text-align:left;font-size:11px;line-height:1.7;color:#dab578;border:1px solid #c3a46b38;background:#c3a46b0a;border-radius:6px;padding:14px}.media-needed>svg:last-child{margin-left:auto}.display-controls{display:flex;justify-content:space-between;align-items:center;margin:5px 0 24px;gap:15px}.segmented{display:flex;padding:5px;background:#191a1c;border:1px solid #313236;border-radius:8px;gap:4px}.segmented>button{display:flex;gap:8px;align-items:center;color:#8a8d90;font-size:11px;padding:11px 15px;border-radius:5px}.segmented>button.active{background:#d7bc8c16;color:#d2b889}.display-preview-wrap{border:1px solid #3b3933;border-radius:10px;overflow:hidden;background:#191a1b}.display-preview-label{display:flex;align-items:center;justify-content:space-between;color:#7d7d79;font-size:8px;letter-spacing:1px;padding:15px 20px;border-bottom:1px solid #30302e}.display-preview-label>span:first-child{display:flex;align-items:center;gap:6px;color:#9caa9b}.display-preview{width:100%;aspect-ratio:16/9;position:relative;overflow:hidden;container-type:inline-size}.logo-preview{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;background:radial-gradient(#8e6e2933,transparent 65%);color:#d7be94}.logo-preview .big-logo{font-family:Georgia,serif;font-size:160px;letter-spacing:-12px}.logo-preview>span:last-child{font-size:14px;letter-spacing:8px}.logo-preview>video{width:100%;height:100%;object-fit:cover}.login-screen{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:30px;background:radial-gradient(ellipse at 50% 40%,#a37c3030,transparent 55%),linear-gradient(#111214e8,#111214ed),url(/club-interior.png) center/cover}.login-card{width:410px;padding:35px 20px;text-align:center}.login-card>.brand{justify-content:center;margin-bottom:50px}.login-icon{width:57px;height:57px;border:1px solid #8b724438;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#cbb180;margin:0 auto 24px;background:#c9aa710b}.login-card>.eyebrow{font-size:8px;letter-spacing:2px}.login-card>h1{font-size:28px;letter-spacing:-1px;font-weight:500;margin:15px 0}.login-card>p{font-size:12px;color:#8f9399;margin-bottom:35px}.login-card form{text-align:left}.login-card form label{font-size:11px;color:#bbb6ae}.login-footer{display:block;font-size:7px;letter-spacing:2px;color:#6d6c65;margin-top:40px}@media(min-width:1600px){.admin-content{padding:44px 58px 0}.admin-topbar{padding:0 58px}.page-heading{margin-bottom:36px}.stats-grid{gap:22px}.stat-card{padding:25px 29px}.stat-card>strong{font-size:43px}.guest-table td{padding-top:18px;padding-bottom:18px}.guest-table th,.guest-table td{font-size:13px}.guest-table .table-name .guest-name{font-size:14px}.guest-table .type-icon span,.button.tiny,.guest-table .badge{font-size:12px}.panel-heading{padding:28px}.table-toolbar{padding:0 28px 23px}.filter-tabs>button{font-size:12px;padding:9px 13px}.search{width:230px}.search input{font-size:12px}.stat-card>p{font-size:11px}.page-heading h1{font-size:36px}}@media(max-width:1150px){.sidebar{width:195px;padding:30px 16px}.sidebar .brand-name{font-size:17px}.sidebar .brand-name small{font-size:6px}.sidebar .admin-brand-row{gap:9px;margin-left:0;margin-right:0}.admin-main{margin-left:195px}.admin-content{padding:28px 25px 0}.admin-topbar{padding:0 25px}.stat-card{padding:20px 17px}.stats-grid{gap:12px}.table-toolbar{flex-wrap:wrap}.party-layout{grid-template-columns:1fr 1fr}.settings-grid{gap:16px}.settings-panel{padding:23px}.desktop-story{padding:45px}}@media(max-width:800px){.desktop-story{display:none}.mobile-shell{margin:auto;box-shadow:0 0 80px #0005}.mobile-nav{left:50%;right:auto;transform:translate(-50%)}.sidebar{position:relative;width:100%;padding:18px 20px;border-right:0;border-bottom:1px solid #2b2e30}.sidebar .admin-brand-row{margin:0}.sidebar .brand-mark{width:40px;height:40px;font-size:21px}.sidebar .brand-name small,.sidebar-label,.sidebar-bottom{display:none}.admin-brand-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.admin-brand-row .brand{min-width:0}.admin-brand-row .brand-name{overflow-wrap:anywhere}.admin-menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:0 12px;border:1px solid #d7bc8c40;border-radius:10px;color:var(--gold);background:#d7bc8c0c;white-space:nowrap;flex-shrink:0;font-size:13px}.sidebar nav{display:none}.sidebar.menu-open nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px}.sidebar nav>button{justify-content:flex-start;font-size:13px;padding:12px 10px;gap:8px;min-height:48px;white-space:nowrap;border-color:#ffffff0d;background:#ffffff03}.sidebar nav>button:last-child{grid-column:1 / -1}.sidebar nav>button>svg{width:18px;flex-shrink:0}.sidebar.menu-open .sidebar-bottom{display:block;margin-top:12px}.sidebar-bottom .venue-status,.sidebar-bottom>button{display:none}.sidebar-bottom>a{min-height:44px}.sidebar .nav-count{display:inline-block;flex-shrink:0}.admin-topbar .admin-breadcrumb,.admin-topbar .topbar-divider,.admin-topbar .admin-avatar,.admin-topbar .admin-role{display:none}.admin-topbar>div{width:100%;gap:12px}.admin-topbar .reservation-sound{min-height:44px;padding:0;font-size:12px}.admin-topbar .live{margin-left:auto;font-size:11px}.admin-topbar .header-logout{width:44px;height:44px;flex-shrink:0}.admin-menu-toggle:focus-visible,.sidebar nav>button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.admin-main{margin-left:0}.admin-topbar{height:52px;padding:0 20px}.admin-content{padding:25px 20px 0}.page-heading{align-items:flex-start;flex-direction:column;gap:18px}.page-heading h1{font-size:28px}.page-heading p{font-size:10px}.page-date{width:100%;min-height:48px;font-size:13px;padding:12px 14px;margin-top:0}.page-date>svg{width:14px}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat-card>strong{margin:17px 0 10px}.table-toolbar{padding:0 16px 20px}.filter-tabs{gap:2px;flex-wrap:wrap}.filter-tabs>button{font-size:9px;padding:7px 8px}.panel-heading{padding:20px 17px}.panel-heading h2{font-size:15px}.subtle-live{display:none}.guest-table{min-width:820px}.birthday-banner{padding:15px;gap:12px}.birthday-banner>span:last-child{font-size:0;gap:0}.birthday-banner small{font-size:9px}.table-bottom{padding:15px}.table-bottom>span:last-child{display:none}.settings-grid,.party-layout{grid-template-columns:1fr}.party-preview{min-height:400px}.display-controls{flex-wrap:wrap}.admin-footer{font-size:8px}.admin-footer>span:first-child>span{display:none}.workflow-note p{font-size:9px}.workflow-note span{font-size:8px}.search{width:100%}}@media(max-width:480px){.mobile-shell{width:100%;box-shadow:none}.mobile-nav{width:100%}.mobile-header{padding:0 23px;height:44px}.mobile-header .brand.small .brand-mark{width:32px;height:32px}.mobile-hero{height:304px;padding:23px 25px 18px}.hero-copy h1{font-size:41px}.mobile-content{padding:24px}.welcome-block h2{font-size:18px}.reservation-cta{padding:23px 20px}.reservation-cta strong{font-size:21px}.modal{padding:24px}.modal-head h2{font-size:18px}.member-stats{gap:10px}.member-stats>:is(div,button){gap:10px}.table-toolbar .filter-tabs>button>span{margin-left:4px}.admin-content{padding:25px 14px 0}.sidebar{padding-left:14px;padding-right:14px}.admin-topbar{padding:0 15px}.admin-topbar .live{font-size:9px}.stat-card>div{font-size:11px}.stat-card>p{font-size:9px}.guest-legend{gap:14px}.mobile-guest{gap:10px}.guest-info-button .guest-name{font-size:13px}}.custom-logo-preview{width:50%;height:60%;object-fit:contain;margin-bottom:20px}.logo-stage .custom-logo{width:800px;height:420px;object-fit:contain}.header-logout{margin-left:6px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition:none!important}}.heart-button{flex-direction:column;gap:2px}.heart-countdown{font-size:10px;font-variant-numeric:tabular-nums;line-height:1}.settings-side{display:flex;flex-direction:column;gap:24px;min-width:0}.password-success{color:#a0c9ab;font-size:13px}.game-invitation-banner{position:fixed;bottom:88px;left:50%;transform:translate(-50%);z-index:25;max-width:calc(100vw - 32px);width:400px;padding:13px 16px;border:1px solid #bfa16a;border-radius:12px;color:#fff0d5;background:#292117;box-shadow:0 8px 25px #0008;font-size:13px;cursor:pointer}.badge.departed{color:#a5a5a5;background:#7772}.activity-panel{margin:20px 0;padding:20px;border:1px solid #bba37655;border-radius:18px;background:#19191bd9}.activity-clock{display:inline-block;font-variant-numeric:tabular-nums;color:#e4c990;font-size:19px;font-weight:700}.activity-progress{margin-top:18px}.activity-progress>div{display:flex;justify-content:space-between;gap:18px;color:#b6b2ac;font-size:13px}.activity-progress b{color:#f7eddb;margin-left:5px}.activity-progress progress{display:block;width:100%;height:6px;margin-top:10px;border:0;border-radius:9px;overflow:hidden;accent-color:#ddc18a}.activity-progress progress::-webkit-progress-bar{background:#353432}.activity-progress progress::-webkit-progress-value{background:#ddc18a}.vote-button{flex:0 0 48px;height:48px;border:1px solid #dbc18c;border-radius:50%;background:#dfc692;color:#252016;font-weight:800;font-size:13px}.vote-button:disabled{opacity:.4}.ox-options{display:flex;gap:16px;margin:20px 0}.ox-choice{flex:1;min-height:112px;border:1px solid currentColor;border-radius:20px;background:#ffffff06;font-size:70px;line-height:1.2;font-weight:800}.ox-o{color:#72d9ba}.ox-x{color:#ff8d9b}.ox-choice:disabled{opacity:.4}.ox-badge{flex:0 0 32px;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid currentColor;border-radius:50%;font-size:23px;font-weight:800;margin-left:4px}.poll-result{display:grid;gap:14px;text-align:center;padding:28px 12px;color:#e6cb98}.poll-result strong{font-size:28px;overflow-wrap:anywhere}.poll-result span{font-size:14px;color:#b6b2ac}.result-question{font-size:18px;line-height:1.6;overflow-wrap:anywhere}.activity-admin{max-width:760px}.guest-page h1{overflow-wrap:anywhere}.calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 20px}.calendar-heading>.button{width:48px;height:48px;padding:0;flex-shrink:0}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-bottom:20px}.calendar-grid button{aspect-ratio:1;min-width:0;width:100%;min-height:46px;padding:4px 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:1px solid transparent;border-radius:10px;background:#222325;color:#eee}.calendar-grid .outside{color:#777;background:transparent}.calendar-grid .today{border-color:var(--gold)}.calendar-grid .selected{background:var(--gold);color:#111;font-weight:700}.calendar-grid button:disabled{opacity:.25;cursor:not-allowed}.calendar-weekday{text-align:center;padding:5px 0 10px;color:#aaa;font-size:12px}.calendar-day-number{font-size:15px;line-height:1.2}.calendar-reservation-count{font-size:10px;line-height:1.2;color:#c8c8ce}.calendar-grid .selected .calendar-reservation-count{color:#333}.calendar-grid .holiday .calendar-day-number,.calendar-weekday.holiday{color:#ff8585}.calendar-grid .selected.holiday .calendar-day-number{color:#9b1515}.other-date-button{margin:14px 0}.future-booking{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;padding:15px 0;border-bottom:1px solid #333;background:none;color:#eee;font-size:13px}button.page-date{color:inherit;cursor:pointer}.channel-address{overflow-wrap:anywhere}.nickname-row{display:flex;align-items:center;gap:8px}.nickname-row input{flex:1;min-width:0}a.reservation-cta{text-decoration:none}.board-guest .guest-name.awaiting-entry>span,.mobile-guest .guest-name.awaiting-entry>span{color:#9296a2}.board-guest .guest-name.checked-in>span,.mobile-guest .guest-name.checked-in>span{color:#fff}.chip-adjustment{min-width:130px}.chip-adjustment>strong{display:block;color:#edce88;margin-bottom:6px;font-variant-numeric:tabular-nums}.chip-adjustment strong small{font-size:11px;font-weight:400}.chip-adjustment>div{display:flex;gap:4px}.chip-adjustment input{width:78px;padding:6px;min-width:0}.guest-social-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.guest-social-actions .heart-button{flex-shrink:0}.gift-button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:5px;flex-shrink:0;border-radius:50%;color:#dfc68f;background:#d3bb8110;border:1px solid #77643e}.gift-button:hover{color:#ffe0a0;background:#d3bb8125}@media(max-width:380px){.mobile-guest{gap:7px}.guest-social-actions{gap:6px}.mobile-guest .guest-index{display:none}.mobile-guest .type-icon{flex-shrink:0}}.club-screen-action{display:grid;gap:12px}.club-screen-action>small{color:var(--gold)}.roulette-editor>.club-screen-action{margin-bottom:24px}.closed-weekdays{min-width:0;margin:0;padding:16px;border:1px solid var(--border, #393734);border-radius:12px}.closed-weekdays legend{padding:0 8px;font-weight:700}.closed-weekdays>div{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.closed-weekdays label{display:flex;align-items:center;gap:8px;min-height:44px}.closed-weekdays input[type=checkbox]{width:20px;height:20px;margin:0;accent-color:var(--gold)}.closed-weekdays small{display:block;line-height:1.6}.reservation-cta.holiday-cta{background:#a62e36;border-color:#d45b62;color:#fff}.reservation-cta.holiday-cta small{color:#ffe5e7}.audio-mix-settings{min-width:0;padding:24px;display:grid;gap:24px}.audio-mix-settings label{display:grid;gap:14px}.audio-mix-settings label>span{display:flex;justify-content:space-between;gap:20px}.audio-mix-settings output{color:var(--gold, #cfbd8e);font-variant-numeric:tabular-nums}.audio-mix-settings input[type=range]{width:100%;min-width:0;padding:0;height:28px;accent-color:#cfbd8e}.audio-mix-settings small{line-height:1.6}@media(min-width:801px){.sidebar nav{min-height:0;overflow-y:auto;flex:1 1 auto;gap:5px}.sidebar .admin-brand-row,.sidebar-label,.sidebar-bottom{flex-shrink:0}.sidebar nav>button{flex:0 1 40px;min-height:30px;height:40px}}@media(min-width:801px)and (max-height:800px){.sidebar{padding-top:20px;padding-bottom:16px}.sidebar .admin-brand-row{margin-bottom:24px}.sidebar .venue-status{padding-block:12px}.sidebar-bottom>button{padding-top:12px}}.settings-main{min-width:0;gap:24px}@media(min-width:801px)and (max-height:740px){.sidebar-label{display:none}.sidebar .admin-brand-row{margin-bottom:12px}}.settings-main .audio-mix-settings .button-row{margin:0}.admin-game-group{flex:0 0 auto;min-width:0}.admin-game-group button{display:flex;align-items:center;gap:12px;width:100%;min-height:40px;padding:8px 15px;border:1px solid transparent;border-radius:8px;color:#a0a1a5;text-align:left;font-size:13px}.admin-game-group>button>svg:last-child{margin-left:auto;transition:transform .2s}.admin-game-group>button>svg.expanded{transform:rotate(180deg)}.admin-game-group button.active{color:#ddc395;background:#d7bc8c12;border-color:#b99c6630}.admin-game-submenu{margin:6px 0 8px 12px;padding-left:8px;border-left:1px solid #cfbd8e35;display:grid;gap:5px}.admin-game-submenu button{font-size:12px;padding-left:10px}.admin-game-group button:focus-visible{outline:2px solid #cfbd8e;outline-offset:2px}@media(max-width:800px){.admin-game-group{grid-column:1/-1}.admin-game-group button{min-height:48px}.admin-game-submenu{grid-template-columns:repeat(2,minmax(0,1fr));margin-left:0;padding:8px}.admin-game-submenu button{gap:8px;font-size:12px}}
