:root{font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#f9f4f7;background:#140f20;font-synthesis:none;--pink:#fa648e;--text:#f9f4f7;--muted:#b2a9bd;--surface:#251b33;--border:rgba(255,255,255,.1)}*{box-sizing:border-box}body{margin:0;min-height:100svh;overflow-x:hidden}button,input{font:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible{outline:3px solid #fab0cb;outline-offset:3px}.hidden{display:none!important}.ambient{position:fixed;pointer-events:none;border-radius:50%;filter:blur(70px);z-index:-1}.ambient-a{top:-180px;left:-170px;width:500px;height:450px;background:rgba(112,40,105,.30)}.ambient-b{top:25vh;right:-260px;width:550px;height:550px;background:rgba(198,44,90,.14)}.shell{max-width:520px;margin:0 auto;min-height:100svh;padding:22px 24px 30px}.topbar{display:flex;align-items:center;justify-content:space-between;margin:0 -1px 24px}.brand-mini{display:flex;gap:10px;align-items:center;font-size:13px;letter-spacing:.15em;font-weight:800}.brand-mini b{color:#f78bb0}.brand-mark{font-size:21px;color:#fe6794}.top-actions{display:flex;align-items:center;gap:12px}.adult-badge,.room-indicator{font-size:10px;font-weight:900;letter-spacing:.1em;background:#36273e;color:#f5bdd0;border:1px solid #644056;border-radius:9px;padding:7px 9px}.icon-button{background:#2f243c;color:white;width:32px;height:32px;border-radius:50%;border:1px solid #57455e;font-size:18px;font-weight:700}.view{animation:appear .25s ease}@keyframes appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.hero{text-align:center;padding:28px 0 40px}.eyebrow{color:#f7a2bc;font-size:10px;letter-spacing:.23em;font-weight:850}.sparkle{color:#ffbc70;padding:0 4px}.hero-symbol{width:95px;height:95px;display:grid;place-items:center;position:relative;margin:22px auto 16px;border:1px solid #74405f;border-radius:26px;transform:rotate(-8deg);background:linear-gradient(145deg,#582442,#301b3b);box-shadow:0 20px 65px #ed4f8430}.hero-symbol span{font-size:69px;line-height:1;transform:rotate(8deg);color:#ff75a0;text-shadow:0 5px 30px #ff477c60}.hero-symbol i{position:absolute;right:-15px;top:-13px;color:#ffc69a;font-size:24px;font-style:normal}h1{margin:0;font-size:clamp(54px,14vw,76px);font-weight:950;line-height:.91;letter-spacing:-.07em;text-shadow:0 15px 40px #ed4f8438}h1 em,.age-dialog h2 em{color:#fe80a7;font-style:normal}.hero-subtitle{margin:23px auto 19px;color:#c9bccc;font-size:16px;line-height:1.6}.hero-subtitle strong{color:#fff;font-weight:700}.hero-pills{display:flex;justify-content:center;gap:7px;flex-wrap:wrap}.hero-pills span{border:1px solid #554158;background:#2b2038;border-radius:100px;padding:7px 11px;color:#f6d4e0;font-size:11px;font-weight:650}.mode-section h2{font-size:17px;letter-spacing:-.02em;margin:0 0 6px}.muted{font-size:13px;color:var(--muted);line-height:1.65;margin:0 0 17px}.mode-card{display:flex;align-items:center;text-align:left;width:100%;gap:14px;border:1px solid #4a3652;color:#fff;background:linear-gradient(130deg,#30203b,#241a32);border-radius:17px;padding:19px;margin:11px 0;transition:transform .15s,border-color .15s}.mode-card:hover{transform:translateY(-2px);border-color:#bd688e}.primary-mode{background:linear-gradient(120deg,#532944,#47233d);border-color:#aa5378;box-shadow:0 10px 30px #00000020}.mode-icon{display:grid;place-items:center;width:52px;height:52px;flex-shrink:0;border-radius:13px;background:#e85f8b23;color:#ff91b5;font-size:32px}.mode-icon.duo{font-size:31px}.mode-copy{flex:1;display:grid;gap:5px}.mode-copy b{font-size:16px}.mode-copy small{font-size:11px;color:#cfbcd2}.arrow{color:#fab1ca;font-size:22px}.home-bottom{text-align:center;display:grid;gap:9px;justify-items:center;padding:23px 0}.home-bottom span{font-size:11px;color:#8f839b}.text-button{background:transparent;color:#ffc0d1;border:0;padding:8px 6px;text-decoration:none;font-size:12px;font-weight:650}.text-button:hover{text-decoration:underline}footer{text-align:center;border-top:1px solid #342b3e;margin-top:29px;padding-top:20px;color:#817486;font-size:9px;letter-spacing:.11em;line-height:2}.section-top,.game-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:25px 0 24px}.back-button{background:transparent;border:0;color:#e4d2e3;font-size:13px;padding:5px 0}.eyebrow.mini{font-size:9px;letter-spacing:.14em}.page-title{font-size:29px;letter-spacing:-.04em;line-height:1.1;margin:0 0 12px}.setup-form{display:grid;gap:15px;margin-top:25px}.setup-form label,.remote-panel label{display:grid;gap:8px;font-weight:700;font-size:12px;color:#ebdfe8}input[type=text],input:not([type]){width:100%;padding:15px 14px;background:#281d35;color:white;border:1px solid #58445d;border-radius:12px;outline:none;font-size:15px}input:focus{border-color:#f77da4}.level-label{color:#e9dce7;font-size:12px;font-weight:800;margin-top:12px}.little-help{color:#ad8da5}.level-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.level-option{text-align:center;display:flex!important;align-items:center;gap:5px!important;padding:15px 7px;background:#282036;border:1px solid #4e3a52;border-radius:13px;cursor:pointer}.level-option input{position:absolute;opacity:0;pointer-events:none}.level-option.selected{border-color:#ff90b3;background:#693450}.level-option>span{color:#ffa3c4;font-size:23px}.level-option b{font-size:12px}.level-option small{font-weight:500;color:#c8abc1;font-size:10px}.consent-note{display:flex;align-items:flex-start;gap:12px;margin:10px 0;background:#2b2338;border:1px solid #54445e;padding:14px;border-radius:14px}.consent-note>span{color:#fa91b1;font-size:26px;line-height:1}.consent-note p{margin:0;color:#cfc0d4;line-height:1.5;font-size:11px}.consent-note strong{color:#fff}.main-button{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;min-height:55px;border-radius:13px;border:1px solid #fa7ca3;background:linear-gradient(115deg,#f76d9a,#ec5286);box-shadow:0 12px 25px #d83c7722;color:#260e1d;font-size:14px;font-weight:850;letter-spacing:.01em}.main-button span{font-size:21px}.main-button.outline{background:#36273f;color:#ffd8e5;border-color:#a95d80;box-shadow:none}.main-button:disabled{box-shadow:none}.remote-sections{margin-top:26px}.remote-panel{border:1px solid #564059;background:#261c34;border-radius:18px;padding:20px;display:grid;gap:16px}.remote-panel-header{display:flex;gap:10px;align-items:center;font-size:15px}.number-bubble{width:29px;height:29px;display:grid;place-items:center;border-radius:8px;color:#ffc1d3;background:#63334f;font-size:12px;font-weight:800}.or-divider{position:relative;text-align:center;color:#ac9db2;font-size:10px;font-weight:800;margin:17px 0}.or-divider:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:#4b3951;z-index:-1}.or-divider span{background:#140f20;padding:0 12px}.code-entry{text-transform:uppercase;letter-spacing:.18em;font-weight:750}.warning-card{border:1px solid #d7a05d;background:#57391f44;border-radius:12px;padding:14px 16px;color:#ffdeb0;font-size:12px}.warning-card p{font-size:12px;margin:7px 0 0;line-height:1.55}.footnote{font-size:11px;color:#93879e;line-height:1.6;margin:18px 3px}.game-top{margin:10px 0 18px}.room-indicator{color:#d2b9d2;border-color:#55425d;background:#291e38}.game-board{padding-top:5px}.score-panel{display:grid;grid-template-columns:1fr 70px 1fr;gap:6px;align-items:center;background:#241b30;border:1px solid #45334d;border-radius:16px;padding:13px}.score-person{min-width:0;font-size:13px;font-weight:750}.score-person>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-person.right{text-align:right}.score-dots{color:#f88eb0;letter-spacing:.18em;font-size:14px;margin-top:6px}.score-middle{text-align:center;border-left:1px solid #49394d;border-right:1px solid #49394d}.score-middle span{display:block;font-size:8px;letter-spacing:.15em;color:#c5b3c4}.score-middle strong{font-size:21px;color:#fda4c0}.game-caption{text-align:center;margin:24px 0 6px;color:#f5bfd0;font-weight:800;font-size:15px}.table-area{display:flex;align-items:center;justify-content:center;gap:32px;min-height:248px;padding:15px 0 24px}.deck-stack,.active-card-wrap{text-align:center;display:grid;justify-items:center;gap:13px}.deck-stack>small,.active-card-wrap>small{color:#95869d;font-size:9px;font-weight:750;letter-spacing:.12em}.draw-card,.playing-card{width:114px;height:171px;border-radius:15px;position:relative;box-shadow:0 15px 35px #0006;overflow:hidden}.draw-card{border:5px solid #f5c0d1;background:repeating-linear-gradient(45deg,#3f2649 0,#3f2649 12px,#4d2a4d 12px,#4d2a4d 24px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#ff9fc2;transform:rotate(-8deg)}.draw-card:before{content:"";position:absolute;inset:7px;border:1px solid #b37b9e;border-radius:8px}.draw-card span{z-index:1}.stack-heart{font-size:57px;line-height:1;text-shadow:0 7px 17px #ff588c80}.draw-card span:last-child{font-size:10px;font-weight:900;letter-spacing:.14em}.playing-card{--base:#eb5359;background:linear-gradient(145deg,color-mix(in srgb,var(--base) 78%,white),var(--base));border:4px solid #fff8ed;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#fff}.playing-card:after{content:"";position:absolute;inset:11px;border:2px solid #ffffff70;border-radius:10px;pointer-events:none}.card-red{--base:#ea4e66}.card-yellow{--base:#e3a834}.card-green{--base:#329e7d}.card-blue{--base:#467bd1}.card-wild{--base:#61486f;background:conic-gradient(#e95a83,#edb546,#49aa85,#478ad9,#e95a83)}.corner-top,.corner-bottom{position:absolute;font-weight:950;font-size:20px;left:13px;top:12px;text-shadow:0 2px 5px #0005}.corner-bottom{left:auto;top:auto;right:13px;bottom:11px;transform:rotate(180deg)}.card-center{font-weight:1000;font-size:55px;line-height:1;text-shadow:0 4px 10px #0004;letter-spacing:-.08em}.card-caption{font-size:9px;font-weight:950;text-align:center;text-shadow:0 2px 5px #0005;letter-spacing:.04em;margin:12px 7px 0}.turn-strip{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #49394d;padding:14px 0 16px;font-size:13px}.turn-indicator{width:8px;height:8px;display:inline-block;background:#ff79a0;border-radius:50%;box-shadow:0 0 13px #ff7ca2;margin-right:5px}.turn-strip #turnNote{color:#baaaba;font-size:11px}.level-pill{color:#f5c7d5;background:#552943;border-radius:20px;padding:7px 9px;font-size:9px;font-weight:850;white-space:nowrap}.game-utility{display:flex;justify-content:space-between;align-items:center;margin:22px 0 12px;font-size:13px;font-weight:800}.duo-button{border:1px solid #e897b1;background:#753555;color:#ffe4ea;border-radius:20px;padding:8px 12px;font-size:10px;font-weight:850}.hand{display:flex;gap:8px;overflow-x:auto;padding:4px 4px 20px;scrollbar-width:thin;scrollbar-color:#6d4663 transparent;min-height:166px}.hand .playing-card{width:86px;height:133px;flex:0 0 86px;cursor:pointer;border-width:3px;border-radius:12px;transition:transform .16s;box-shadow:0 7px 12px #0003}.hand .playing-card:hover{transform:translateY(-6px)}.hand .playing-card:disabled{opacity:.46;transform:none;cursor:not-allowed}.hand .playing-card:after{inset:7px}.hand .corner-top,.hand .corner-bottom{font-size:14px;left:9px;top:8px}.hand .corner-bottom{left:auto;top:auto;right:9px;bottom:8px}.hand .card-center{font-size:36px}.hand .card-caption{font-size:7px;line-height:1.1;margin:9px 4px 0}.hand-placeholder{color:#a99dad;font-size:13px;padding:35px 5px;text-align:center;flex:1}.game-hint{text-align:center;color:#a59aaf;font-size:11px;line-height:1.5;margin:0}.game-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:25px;border-top:1px solid #36283d;padding-top:12px;color:#9e8aa4;font-size:11px}.overlay{position:fixed;inset:0;z-index:20;display:flex;justify-content:center;align-items:center;background:rgba(8,6,15,.87);backdrop-filter:blur(12px);padding:20px;overflow-y:auto}.dialog{width:min(420px,100%);max-height:95svh;overflow-y:auto;background:linear-gradient(148deg,#352339,#21192f);border:1px solid #704663;border-radius:23px;padding:29px 25px;text-align:center;position:relative;box-shadow:0 30px 80px #0009}.dialog-icon{font-size:62px;color:#ff7fa8;text-shadow:0 4px 40px #df478a60}.dialog h2{font-size:29px;margin:15px 0 11px;letter-spacing:-.04em}.age-dialog h2{font-size:32px}.dialog p{line-height:1.6;color:#d0bed0;font-size:13px}.dialog .main-button{margin-top:23px}.dialog .text-button{margin-top:10px}.modal-x{position:absolute;top:10px;right:14px;background:none;border:0;color:#d5afc7;font-size:26px;padding:8px}.dialog .eyebrow{margin-top:10px}.dialog .accent-title{color:#ff8dae}.dialog .choice-row{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:20px 0}.choice-color{height:52px;border:3px solid #ffffffb0;border-radius:12px}.choice-color.red{background:#ea4e66}.choice-color.yellow{background:#e3a834}.choice-color.green{background:#329e7d}.choice-color.blue{background:#467bd1}.dialog .alt-button{display:block;border:1px solid #79566e;color:#fbd4df;background:#3a283e;border-radius:12px;width:100%;min-height:48px;margin-top:10px;font-size:13px;font-weight:750}.modal-bullets{text-align:left;font-size:12px;color:#d9c8d9;line-height:1.8;padding-left:17px}.code-display{letter-spacing:.21em;font-size:30px;font-weight:900;color:#ffa6c3;margin:17px 0;background:#1e152a;padding:17px;border:1px dashed #b86990;border-radius:12px;user-select:all}.waiting-dots{animation:pulse 1.5s infinite}@keyframes pulse{50%{opacity:.4}}.toast{position:fixed;left:50%;bottom:25px;transform:translateX(-50%);max-width:calc(100% - 35px);padding:13px 18px;background:#f4d5e1;color:#371d2d;z-index:35;box-shadow:0 12px 30px #0007;border-radius:12px;font-weight:700;font-size:12px;text-align:center}.small-muted{font-size:11px!important;color:#ab9eaf!important}.screenreader{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}@media(max-width:380px){.shell{padding:19px 16px}.hero{padding:15px 0 28px}.table-area{gap:18px}.hand .playing-card{width:78px;flex-basis:78px;height:125px}.draw-card,.playing-card{width:99px;height:148px}.card-center{font-size:45px}.level-option{padding:13px 4px}}@media(min-width:800px){.shell{max-width:610px}.hero{padding-top:42px}}

.remote-panel select{width:100%;padding:13px;background:#281d35;color:#fff;border:1px solid #58445d;border-radius:12px;font-size:13px}.level-pill{border:0;cursor:pointer}.level-pill:hover{background:#723a55}

.turn-controls{display:flex;gap:8px;align-items:center}
