.q-shell{max-width:560px;margin:auto;padding:16px 12px 32px;color:#f9f6ff;background:radial-gradient(ellipse at top,#352555,#151122 65%);font-family:system-ui;box-sizing:border-box}.q-shell *{box-sizing:border-box}.q-head{display:flex;align-items:center;justify-content:space-between}.q-head small{font-size:9px;letter-spacing:2px;color:#bbabd7}.q-head h1{font-size:23px;line-height:1.1;margin:8px 0 16px}.q-head em,.q-cover em{font-style:normal;color:#f4cf78}.q-count{font-size:28px;color:#e9ccff;text-align:center}.q-count small{display:block;font-size:8px}.q-duel{display:flex;align-items:center;gap:12px}.q-duel>div{flex:1;min-width:0;background:#ffffff09;border:1px solid #ffffff13;border-radius:13px;padding:10px}.q-duel>div.active{border-color:#c89aff;background:#a577ef22}.q-duel span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700;font-size:13px}.q-duel small{font-size:9px;color:#bdaace}.q-duel>b{font-size:11px;color:#bdaace}.q-status{font-weight:750;text-align:center;padding:14px 0;font-size:14px;color:#f7d890}.q-secret{display:flex;align-items:center;gap:10px;background:#1c172c;border:1px solid #ffffff12;border-radius:14px;padding:6px 10px;margin-bottom:14px}.q-secret svg{width:42px;height:46px}.q-secret small{display:block;font-size:8px;color:#b3a2c8}.q-secret strong{display:block;font-size:14px}.q-secret>span{margin-left:auto;font-size:10px;color:#a896bc}.q-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px 7px;perspective:900px}.q-card{border:0;border-bottom:4px solid #9873c8;border-radius:12px;background:#e6daf6;padding:0;overflow:hidden;cursor:pointer;box-shadow:0 4px 0 #080510;touch-action:manipulation;transition:background .25s,border-color .25s}.q-card-art{height:74px;position:relative;background:linear-gradient(145deg,#f9eddd,#d5c6eb);transform-origin:bottom;transition:transform .32s,opacity .32s}.q-card svg{width:100%;height:100%;display:block}.q-card b{display:block;color:#44305c;font-size:11px;padding:4px 0}.q-card i{display:none}.q-card.down{background:#332842;border-color:#42314e}.q-card.down .q-card-art{transform:rotateX(73deg);opacity:.22}.q-card.down b{color:#9e86b5}.q-hint{text-align:center;font-size:11px;color:#b4a3c8;margin:12px 0}.q-controls{display:grid;grid-template-columns:1fr 110px;gap:8px;position:sticky;bottom:8px;padding:9px;background:#221b35f5;border:1px solid #ffffff18;border-radius:16px;z-index:2;box-shadow:0 8px 24px #0007}.q-controls select{width:100%;min-width:0;background:#35294a;color:white;border:1px solid #685079;border-radius:10px;padding:12px 8px;font-size:12px}.q-controls button,.q-modal button{padding:12px 8px;background:linear-gradient(#b28cff,#8051da);border:0;border-radius:10px;color:white;font-weight:750}.q-controls .secondary{grid-column:1/-1;background:#ffffff0a;color:#dcc9ef}.q-controls button:disabled{opacity:.35}.q-shell details{margin-top:16px;border:1px solid #ffffff12;border-radius:13px;padding:12px;font-size:12px;color:#c5b5d6}.q-shell summary{font-weight:700;color:#eadff5;cursor:pointer}.q-history{max-height:180px;overflow:auto;padding-top:10px;overscroll-behavior:contain}.q-history>div{display:grid;grid-template-columns:1fr auto;gap:4px;padding:9px 0;border-bottom:1px solid #ffffff0b}.q-history small{grid-column:1/-1;color:#9782ae}.yes{color:#74dfb8}.no{color:#fa94a5}#qError{color:#ff9fa9;font-size:12px;text-align:center}.q-modal{position:fixed;inset:0;background:#090611cc;display:grid;place-items:center;z-index:99999;padding:24px;backdrop-filter:blur(8px)}.q-modal>div{max-width:310px;width:100%;border:1px solid #a276d3;border-radius:24px;background:#2b2040;padding:24px;text-align:center;color:white}.q-modal svg{width:140px;height:150px}.q-modal button{display:block;width:100%;margin-top:10px}.q-modal .cancel{background:#ffffff12}.q-result{display:flex;justify-content:center;gap:32px;padding:10px 0 20px}.q-result>div{text-align:center}.q-result svg{width:80px;display:block}.q-result b,.q-result small{display:block}.q-result small{font-size:10px}.q-cover{text-align:center;padding:25px 15px;color:white}.q-cover-faces{display:flex;justify-content:center;align-items:end;height:160px}.q-cover-faces svg{width:110px;height:120px;background:#dac6f4;border:5px solid #ffffff50;border-radius:24px;transform:rotate(-12deg);box-shadow:0 10px 24px #0005}.q-cover-faces svg:nth-child(2){height:145px;transform:translateY(-10px);z-index:1;background:#ffe3a0}.q-cover-faces svg:nth-child(3){transform:rotate(12deg);background:#abdfd0}.q-cover h1{font-size:42px;font-weight:900;line-height:.98;margin:25px 0 15px;letter-spacing:-2px}.q-cover p{color:#c9b5e1;font-size:13px}@media(min-width:460px){.q-board{grid-template-columns:repeat(6,minmax(0,1fr))}.q-card-art{height:83px}}@media(prefers-reduced-motion:reduce){.q-card,.q-card-art{transition:none}}

.q-answer{padding:18px;border:1px solid #b48de9;border-radius:16px;text-align:center;background:#38264b}.q-answer strong{display:block;margin-bottom:12px}.q-answer button{padding:12px 28px;margin:0 6px;border:0;border-radius:12px;background:#b895f3;color:#211831;font-weight:800}

.q-shell.team-0 .q-card{border-bottom-color:#479bda;background:#cce9ff}.q-shell.team-1 .q-card{border-bottom-color:#d16b78;background:#ffdae0}.q-card.down{background:#332842!important;border-bottom-color:#42314e!important}#qCustomForm{display:flex;gap:8px;grid-column:1/-1}#qCustom{min-width:0;flex:1;background:#35294a;color:white;border:1px solid #685079;border-radius:10px;padding:12px;font-size:16px}.q-shell .wg-exitbar{margin-bottom:8px}

/* Illustrated portrait atlas: same crop and scale for all 24 identities. */
.q-portrait{display:block;width:100%;height:100%;background-image:url('/quienes/portraits-v1.png');background-size:600% 400%;background-position:var(--px) var(--py);background-repeat:no-repeat;border-radius:inherit}
.q-card-art{height:auto!important;aspect-ratio:1}.q-card{border:2px solid #7ebcf0;border-bottom:5px solid #3a6c9b;border-radius:10px;box-shadow:0 3px 0 #080c1c,0 7px 10px #0004}.q-card b{padding:6px 0;font-size:11px;color:#24425f}.q-shell.team-1 .q-card{border-color:#e9a6aa;border-bottom-color:#9d4256}.q-shell.team-1 .q-card b{color:#723649}.q-card-art{overflow:hidden;border-radius:7px 7px 0 0}.q-board{background:linear-gradient(140deg,#365379,#1d304b);padding:12px;border:1px solid #92b3d952;border-radius:18px;gap:12px 8px;box-shadow:inset 0 1px 0 #fff3,0 12px 25px #05071299}.team-1 .q-board{background:linear-gradient(140deg,#773d51,#422236)}.q-secret>.q-portrait{width:48px;height:48px;flex-shrink:0;border-radius:9px}.q-result .q-portrait{width:86px;height:86px;border-radius:12px}.q-modal .q-portrait{width:170px;height:170px;margin:auto;border-radius:15px}.q-cover-faces>.q-portrait{width:112px;height:130px;border:4px solid #fff8;border-radius:20px;box-shadow:0 12px 25px #0005;transform:rotate(-12deg);background-size:600% 400%}.q-cover-faces>.q-portrait:nth-child(2){transform:translateY(-16px);z-index:1}.q-cover-faces>.q-portrait:nth-child(3){transform:rotate(12deg)}

/* Explicit width prevents flex shrink-to-content before secret selection. */
#vJuego.q-game-view{background:#151122;min-width:0}
#vJuego.q-game-view #jgBody{display:block!important;width:100%!important;max-width:none!important;min-width:0;min-height:0;padding:0!important;overflow-x:hidden;overflow-y:auto}
.q-shell{width:100%;max-width:600px;min-width:0;flex-shrink:0;padding:10px 8px calc(24px + env(safe-area-inset-bottom));margin:0 auto}
.q-board{width:100%;padding:8px;gap:10px 6px}.q-secret{min-height:62px}.q-secret>.q-portrait{margin-left:0}
.q-duel .q-standing{display:flex;gap:5px;align-items:baseline;margin-top:5px;font-size:11px;color:#e3d2f7}.q-duel .q-standing span{font-size:21px;line-height:1;font-variant-numeric:tabular-nums;color:#fff}
.q-miss{padding:10px 12px;margin-bottom:10px;background:#ffbb6314;border:1px solid #ffbb6333;border-radius:12px;font-size:12px;color:#f9d29d}
@media(max-width:459px){.q-head h1{font-size:21px}.q-board{grid-template-columns:repeat(4,minmax(0,1fr))}.q-card b{font-size:11px;padding:4px 0}.q-head small{letter-spacing:1px}.q-duel{gap:8px}.q-duel>div{padding:8px}.q-controls{grid-template-columns:minmax(0,1fr) 96px}.q-status{padding:10px 0}}

/* In-game HUD: one exit control, no duplicate app/game title bar. */
#vJuego.q-game-view>.top{display:none!important}
.q-head{margin:0 0 12px}.q-head .wg-exitbar{margin:0;padding:0}
