/* Shared Soruify play theme. Existing game states and API hooks stay intact. */
body.play-page{--play-ink:#25243a;--play-muted:#747385;--play-purple:#6750df;--play-line:#e8e3ef;background:#fcfbfe;color:var(--play-ink);font-family:Inter,"Segoe UI",Arial,sans-serif;display:block;min-height:100vh;padding:0;margin:0}
.play-page *{box-sizing:border-box}.play-page button,.play-page input,.play-page select{font:inherit}.play-page a,.play-page button{touch-action:manipulation}.play-page :is(a,button,input,select):focus-visible{outline:3px solid #a58ae9;outline-offset:4px}.play-page button:disabled{cursor:default}.play-page .play-header{max-width:1120px;margin:auto;padding:20px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--play-line)}.play-brand img{display:block;width:130px;height:50px;object-fit:contain}.play-header nav{display:flex;align-items:center;gap:27px;font-size:13px;font-weight:650}.play-header a{color:var(--play-ink);text-decoration:none}.play-header .play-nav-room{padding:12px 16px;background:#eee8fc;color:#6147cb;border-radius:10px}.play-nav-room span{margin-left:12px}
.play-page>.container,.play-page>.whoami-container{width:100%;max-width:1020px;margin:0 auto;padding:0 28px 65px;animation:none}.play-page .container>.header,.play-page .header-top{display:none}.play-intro{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:42px 0 32px;text-align:left}.play-eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:750;color:#87759e}.play-intro h1{margin:12px 0 13px;font-size:clamp(29px,4vw,43px);letter-spacing:-1.5px;line-height:1.15;color:var(--play-ink)}.play-intro p{margin:0;max-width:520px;font-size:14px;line-height:1.8;color:var(--play-muted)}.play-art{width:150px;height:125px;position:relative;flex-shrink:0;display:grid;place-items:center;background:radial-gradient(ellipse,#eee5ff,transparent 70%)}.play-art-card{display:grid;place-items:center;width:78px;height:91px;background:#fff;border:1px solid #e5dcef;border-radius:17px;font-weight:800;font-size:43px;color:#8b6fd4;transform:rotate(12deg);box-shadow:0 10px 25px -15px #8b70b9}.play-art-spark{position:absolute;left:0;top:8px;font-size:40px;color:#c4a34e}.play-art-dot{position:absolute;right:7px;bottom:0;background:#dcefe3;color:#568b6b;border:5px solid #fcfbfe;width:43px;height:43px;display:grid;place-items:center;border-radius:50%;font-weight:800}
.play-page .settings-form.card{max-width:none!important;padding:32px!important;border:1px solid var(--play-line)!important;border-radius:22px!important;box-shadow:0 12px 35px -25px #75618f55!important;background:#fff!important;transform:none!important}.play-page .settings-form.card:hover{transform:none}.play-form-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:28px;align-items:start}.play-guide{border:1px solid #e3daef;background:#f1ecf9;border-radius:22px;padding:30px;color:#534961}.play-guide h2{font-size:23px;letter-spacing:-.6px;margin:14px 0}.play-guide p{font-size:13px;line-height:1.8;color:#7d708d}.play-guide ol{list-style:none;padding:0;counter-reset:steps;margin:26px 0 0}.play-guide li{counter-increment:steps;display:flex;align-items:center;gap:13px;margin:19px 0;font-size:13px;line-height:1.6}.play-guide li:before{content:counter(steps);display:grid;place-items:center;flex-shrink:0;width:28px;height:28px;background:#fff;border-radius:9px;color:#8a6fc1;font-weight:750}.play-guide-note{border-top:1px solid #dfd5ea;padding-top:16px;margin-top:25px!important}.play-page .form-group{margin-bottom:21px}.play-page .form-group label{font-size:13px;color:#51465e!important}.play-page .form-control{width:100%;min-height:52px;padding:13px 15px!important;border:1px solid #e4deed!important;border-radius:11px!important;background:#fcfaff!important;color:#393146!important;box-shadow:none!important;font-size:15px}.play-page .form-control:focus{border-color:#9476df!important}.play-page .form-control[readonly]{background:#f1eef6!important;color:#80768c!important}.play-page .action-btn,.play-page .btn{min-height:48px;border:0!important;border-radius:11px!important;background:#6750df!important;color:#fff!important;box-shadow:none!important;padding:13px 21px;font-size:14px!important;font-weight:700;text-decoration:none;justify-content:center;transition:background .15s,transform .15s}.play-page .action-btn:hover,.play-page .btn:hover{background:#5640c6!important;transform:translateY(-1px)}.play-page .settings-form>a.action-btn{background:#f3eff8!important;color:#766788!important;margin-top:12px!important}.play-page #room_code{font-size:26px;letter-spacing:7px;text-align:center;font-weight:750}.play-page .quiz-container{width:100%;max-width:800px;padding:30px;background:#fff;border:1px solid var(--play-line);border-radius:23px;box-shadow:0 15px 35px -30px #71579255;backdrop-filter:none;margin:0 auto}.play-page .logo img{animation:none;filter:none}.play-page .ads-banner{display:none}
/* Question states retain their original correct/wrong classes. */
.play-quiz>.container{max-width:860px}.play-quiz .play-intro{padding:24px 0 22px}.play-quiz .play-intro h1{font-size:27px;margin:9px 0}.play-quiz .play-art{width:90px;height:80px}.play-quiz .play-art-card{width:48px;height:57px;font-size:28px;border-radius:12px}.play-quiz .play-art-spark{font-size:25px}.play-quiz .play-art-dot{width:31px;height:31px;font-size:12px}.play-quiz #question-display-main{font-size:clamp(21px,3vw,29px)!important;line-height:1.5;text-align:left;letter-spacing:-.5px;margin:25px 0 28px!important;color:#302a40}.play-quiz .options-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.play-quiz .option-btn{min-width:0;min-height:72px;padding:17px!important;display:flex;align-items:center;gap:13px;text-align:left;background:#fff;border:1px solid #e6e0ee;border-radius:13px;box-shadow:none;color:#51445f;font-size:15px;line-height:1.5;transform:none}.play-quiz .option-btn strong{display:grid;place-items:center;min-width:32px;height:32px;background:#f2eef9;color:#8c79a9;border-radius:8px;font-size:12px}.play-quiz .option-btn:hover:not(:disabled){background:#f6f1ff;border-color:#a28bd5;transform:translateY(-1px)}.play-quiz .option-btn.correct{background:#e8f6ed!important;border-color:#69ad84!important;color:#286242!important}.play-quiz .option-btn.wrong{background:#fff0ef!important;border-color:#d89591!important;color:#a3423d!important}.play-quiz .option-btn.double-pick{background:#fff7e4!important;color:#836321!important}.play-quiz .joker-bar{padding:0 0 20px!important;margin:0 0 22px!important;gap:9px;border-bottom:1px solid #eee9f4}.play-quiz .joker-btn{min-height:40px!important;min-width:0!important;flex:1;padding:9px!important;border-radius:10px!important;background:#f4effb!important;border:1px solid #e6dff1!important;color:#7c669e!important;font-size:12px!important;box-shadow:none!important}.play-quiz .joker-btn:disabled{opacity:.4}.play-quiz #question-counter{font-size:12px;font-weight:750;letter-spacing:.4px;color:#86729d}.play-quiz #score-display{color:#6750df}.play-quiz #feedback-area{text-align:center;font-size:14px}.play-quiz #quiz-status-area{margin-top:18px!important}.play-quiz #quiz-status-area>.header{display:none}.play-quiz .timer,.play-quiz .quiz-timer-badge{background:#eee8fb;color:#6750df;border:1px solid #e0d7f2;border-radius:12px;padding:10px 20px;box-shadow:none;font-size:18px;font-variant-numeric:tabular-nums}.play-quiz .dynamic-bg{display:none}.play-quiz #race-area{border-radius:16px;background:#f3f0fa;box-shadow:none}
/* Room invitation and conversation. */
.play-lobby>.container{max-width:860px}.play-lobby .quiz-container{max-width:none}.play-lobby .room-code-display{font-size:clamp(31px,8vw,48px);font-weight:800;letter-spacing:8px;background:#f1ebfc!important;color:#7859b6!important;border:1px dashed #cfc0e8;border-radius:16px;padding:22px;margin:0 auto 12px;cursor:pointer;box-shadow:none}.play-lobby .share-btn{border-radius:10px!important;box-shadow:none!important}.play-lobby .whatsapp{background:#e7f5ec!important;color:#327e51!important}.play-lobby .copy-link{background:#f0ebf8!important;color:#785ea3!important}.play-lobby .player-list{gap:12px}.play-lobby .player-item{background:#fcfaff;border:1px solid #e9e1f1;border-radius:13px;color:#493b5b;padding:16px;box-shadow:none}.play-lobby .player-avatar{background:#e9dff8;color:#8c6ac1;box-shadow:none}.play-lobby .chat-section{border:1px solid #e7e0ee;background:#fff;border-radius:16px;overflow:hidden;box-shadow:none}.play-lobby .chat-header{background:#f3eff9;color:#7c669a;border-bottom:1px solid #e7dfee}.play-lobby .chat-messages{background:#fcfaff}.play-lobby .chat-input-area{background:#fff}.play-lobby #chat-input{background:#f7f4fb;border:1px solid #e3dbea;color:#3c304f;border-radius:10px;min-width:0}.play-lobby .chat-placeholder{color:#93829f}.play-lobby .start-overlay{background:#faf7ffef;backdrop-filter:blur(5px)}.play-lobby .starting-text{color:#6750df;text-shadow:none}
/* Results use a static illustration instead of an endless particle canvas. */
.play-result>.container{max-width:860px}.play-result .result-hero{background:#eee8fa!important;border:1px solid #e0d5ef;border-radius:18px;padding:30px 20px;box-shadow:none}.play-result .result-hero:before,.play-result .result-hero:after,.play-result .trophy-ring,.play-result .trophy-ring-inner,.play-result .trophy-glow{display:none}.play-result .trophy-container{width:90px;height:80px;margin:0 auto 14px}.play-result .trophy-icon{font-size:60px;animation:none!important;filter:none!important;text-shadow:none!important;color:#bc9650!important}.play-result .score-card{background:#fff!important;border:1px solid #e6dff0;border-radius:17px;box-shadow:none;backdrop-filter:none;padding:22px 38px}.play-result .score-label{color:#9581ab}.play-result .score-display{color:#7354b9!important;text-shadow:none!important;font-size:64px;line-height:1.2}.play-result .correct-count{color:#7c6c8e}.play-result .hero-badge{background:#fff!important;color:#876baf!important;border:1px solid #e0d3ef;box-shadow:none}.play-result .hero-badge i{color:#876baf!important}.play-result .action-buttons{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.play-result .action-buttons>a:first-child{background:#f0ebf7!important;color:#7b6695!important}.play-result .wrong-item{border:1px solid #eadfeb;border-radius:14px;box-shadow:none}.play-result .leaderboard-card{border:1px solid #e5dced;box-shadow:none}
/* Football mode shares the paper/pastel treatment while preserving match colors. */
.play-whoami .game-title{display:none}.play-whoami .game-title+p{display:none}.play-whoami .setup-card{background:#edf6f0;border:1px solid #d5e6dc;border-radius:22px;padding:32px;box-shadow:none;color:#315747}.play-whoami .setup-card h3{color:#315747!important}.play-whoami .btn-green{background:#28745b!important}.play-whoami .setup-card .btn:not(.btn-green){background:#fff!important;color:#517664!important;border:1px solid #d9e5df!important}.play-whoami .search-input{background:#fff;color:#315747;border:1px solid #d6e3da;backdrop-filter:none;font-size:16px}.play-whoami .search-results{background:#fff;color:#315747;border-color:#d8e7dd;box-shadow:0 12px 24px -15px #345c4e66}.play-whoami .search-item{border-color:#e7eee9}.play-whoami .search-item:hover{background:#edf6f0}.play-whoami .guess-row,.play-whoami .player-column{background:#fff;border:1px solid #dce7df;box-shadow:none}.play-whoami .guess-player-name{color:#315747}.play-whoami .player-col-header{background:#edf6f0;color:#315747}.play-whoami .attr-box{background:#edf2ee;color:#50645a}.play-whoami .attr-box.correct{background:#c8ebd4;color:#21613a}.play-whoami .attr-box.wrong{background:#f8dedb;color:#923f39}.play-whoami .attr-box.partial{background:#faecc5;color:#846321}
@media(max-width:640px){.play-page .play-header{padding:14px 18px;gap:12px}.play-brand img{width:108px;height:42px}.play-header nav{gap:12px;font-size:12px}.play-header .play-nav-room{padding:10px}.play-header .play-nav-room span{display:none}.play-header nav>a:first-child{display:none}.play-page>.container,.play-page>.whoami-container{padding:0 18px 35px}.play-intro{gap:10px;padding:29px 0 24px}.play-intro h1{font-size:30px;letter-spacing:-1px}.play-intro p{font-size:13px}.play-art{width:77px;height:95px}.play-art-card{width:54px;height:66px;font-size:30px;border-radius:12px}.play-art-spark{font-size:24px;left:-4px;top:0}.play-art-dot{right:-5px;width:31px;height:31px;font-size:12px}.play-form-layout{grid-template-columns:1fr;gap:18px}.play-page .settings-form.card{padding:23px!important;border-radius:18px!important}.play-guide{padding:23px}.play-guide ol{margin-top:17px}.play-guide h2{font-size:21px}.play-page .quiz-container{padding:20px;border-radius:18px}.play-quiz .options-grid{grid-template-columns:1fr;gap:10px}.play-quiz .option-btn{min-height:61px;padding:13px!important;font-size:14px}.play-quiz #question-display-main{font-size:22px!important;margin:22px 0!important}.play-quiz .play-intro p{display:none}.play-quiz .play-intro h1{font-size:25px}.play-quiz .play-art{height:61px}.play-quiz .joker-btn{font-size:11px!important;gap:6px}.play-lobby .share-buttons{flex-wrap:wrap}.play-lobby .share-btn{padding:11px 14px!important;font-size:12px}.play-result .score-card{padding:22px}.play-result .action-buttons{grid-template-columns:1fr}.play-result .result-hero{padding:25px 12px}.play-whoami .setup-card{padding:24px}.play-whoami .guess-row{padding:16px}.play-whoami .attr-box{min-width:70px}.play-whoami .attributes-grid{gap:8px}}
.play-whoami .attr-value{color:inherit}.play-whoami .attr-label{color:#6f8076}.play-whoami .attr-box.match-true{background:#dcf2e3;color:#21613a;box-shadow:none}.play-whoami .attr-box.match-false{background:#fce8e5;color:#923f39}.play-guide li::marker{content:''}.play-result .trophy-icon{-webkit-text-fill-color:#bc9650!important;background:none!important}.play-quiz .joker-btn{flex-direction:row!important}.play-quiz .joker-btn i{font-size:15px!important}.play-quiz .joker-bar{background:transparent!important;box-shadow:none!important}
.play-result .score-card,.play-result .hero-badge,.play-result .trophy-container{opacity:1;animation:none!important;transform:none}
@media(prefers-reduced-motion:reduce){.play-page *,.play-page *:before,.play-page *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
