/* Clave Cero · Version 1.3 · rustic future skin */
:root{--ink:#17130f;--paper:#e9deca;--paper2:#d8cab1;--red:#d84b3f;--blue:#168fb2;--green:#4fa978;--muted:#716654;--line:#9e8969;--wood:#3a2115;--wood-deep:#160d09;--leather:#171818;--brass:#b68945;--brass-light:#e0ba73;--cyan:#2bc4d7;--tile:#ead8b7}
html{background:var(--wood-deep)}body{min-width:280px;background:radial-gradient(circle at 50% -20%,#6a4127 0,transparent 47%),repeating-linear-gradient(92deg,#2d190f 0 4px,#21130d 4px 9px,#371e12 9px 15px);color:var(--ink)}
button,input{border-radius:5px}button:focus-visible,input:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}
.center{position:relative;isolation:isolate;padding:clamp(16px,4vw,54px);background:radial-gradient(circle at 12% 12%,#e2a75624 0 1px,transparent 2px),radial-gradient(circle at 84% 72%,#20c2d51a,transparent 28%),repeating-linear-gradient(91deg,#301b11 0 5px,#21120c 5px 11px,#3d2214 11px 18px);background-size:17px 17px,auto,auto}.center::before{z-index:-1;opacity:.75;background:linear-gradient(90deg,transparent 49.8%,#27b8cb32 50%,transparent 50.2%),linear-gradient(0deg,transparent 49.8%,#bd47352b 50%,transparent 50.2%);background-size:112px 112px;mask-image:radial-gradient(circle,#000 0,transparent 76%)}
.card{border:1px solid #ddbd7b;border-radius:18px;background:linear-gradient(135deg,#ffffff4a,transparent 18%),repeating-linear-gradient(2deg,#eadfc9 0 3px,#e5d7bd 3px 7px,#eadfc9 7px 12px);box-shadow:0 0 0 6px #171311,0 0 0 8px #9b733b,0 26px 70px #000c,inset 0 0 35px #72522b1f;overflow:hidden}.card::before{content:"";position:absolute;inset:10px;z-index:-1;border:1px solid #8f71444d;border-radius:10px;pointer-events:none}
.entry-card{width:min(1100px,100%);min-height:660px;padding:52px 53% 44px 52px;border-top:1px solid var(--brass-light)}.entry-card::after{content:"";position:absolute;z-index:-1;inset:0 0 0 49%;background:linear-gradient(90deg,#19100ee8 0,transparent 18%),linear-gradient(0deg,#110b08b0 0,transparent 35%),url("/clave-cero-board-v1.png") center/cover no-repeat;border-left:2px solid var(--brass);box-shadow:inset 22px 0 45px #120b09bd}.entry-card>*{position:relative;z-index:1}.entry-card .intro{margin:64px 0 38px}.entry-card .intro h1{color:#21170f;text-shadow:0 1px #fff8dc}.entry-card .intro h1 em{color:#a53a32}.entry-card .privacy{margin-top:34px}.rules-link{top:30px;right:calc(51% + 30px)}
.brand-icon{border:1px solid var(--brass-light);border-radius:8px;background:linear-gradient(145deg,#242524,#090b0c);color:var(--brass-light);box-shadow:inset 0 0 0 3px #000,0 3px 8px #0006;text-shadow:0 0 12px #2bc4d785}.brand-lockup b{color:#271d15}.kicker,.step{color:#a53a32}
.btn{border:1px solid #5d432a;border-radius:7px;box-shadow:inset 0 1px #ffffff2c,0 5px 10px #1a0e0938;transition:transform .16s ease,filter .16s ease,box-shadow .16s ease}.btn:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.08)}.btn:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 2px 6px #0006}.primary{border-color:#126174;background:linear-gradient(145deg,#178da7,#0b566b);color:#fff9e9;box-shadow:inset 0 1px #60e5f07a,0 4px 0 #063845,0 0 18px #2bc4d72a}.ghost{background:linear-gradient(#f0e5d1,#d8c6a6);border-color:#614a32}.privacy>span,.live-pill{color:var(--cyan)}
.form-card,.lobby-card{border-top:1px solid var(--brass-light)}.form-card{width:min(690px,100%)}.form-head,.lobby-head{border-color:#9e896977}.field input{border:1px solid #8a7353;background:#fff8e9;box-shadow:inset 0 2px 5px #5e43251c}.team-option,.room-language button,.mode-picker button{border-radius:7px;background:linear-gradient(145deg,#e4d6bd,#cdbb9c);border-color:#9e8969;box-shadow:inset 0 1px #fff9}.team-option.selected,.room-language button.selected,.mode-picker button.selected{border-color:var(--brass);box-shadow:0 0 0 2px #1c1815,4px 4px 0 #83633a}.team-option.red.selected{background:linear-gradient(145deg,#f6d5cd,#d99585)}.team-option.blue.selected{background:linear-gradient(145deg,#cbeaf0,#79b9c9)}.role-toggle,.waiting,.selector-notice{border:1px solid #9e896966;border-radius:7px}
.lobby-card{width:min(980px,100%)}.team{border-radius:8px;border-color:#8c7454;background:#f4ead7;box-shadow:0 5px 14px #3a241526;overflow:hidden}.team h3{background:linear-gradient(90deg,#241914,#3a291e);color:#f4e3c1}.red-team h3{box-shadow:inset 5px 0 var(--red)}.blue-team h3{box-shadow:inset 5px 0 var(--blue)}.member-avatar{border-radius:6px;background:linear-gradient(145deg,#e7d6b6,#bfa47d);border:1px solid #9a7d54}
.game{border:0;background:linear-gradient(#1a1713f0,#1a1713f0),repeating-linear-gradient(91deg,#382115 0 5px,#25150e 5px 12px,#442719 12px 18px);color:#f1e5cf}.game-head{height:78px;border-bottom:1px solid #bd9659;background:linear-gradient(180deg,#252320,#111312);box-shadow:0 4px 14px #0008}.game-head .brand-lockup b,.game-room{color:#e8d3ac}.game-room{background:#090c0d;border:1px solid #6f583b;border-radius:5px;padding:9px 12px}.status{height:50px;border-bottom:1px solid #69543a;background:linear-gradient(90deg,#171817,#24201b,#171817);box-shadow:inset 0 1px #ffffff0c}.status.red{box-shadow:inset 6px 0 var(--red),inset 0 1px #ffffff0c}.status.blue{box-shadow:inset 6px 0 var(--blue),inset 0 1px #ffffff0c}.status i{box-shadow:0 0 12px currentColor}.game-content{max-width:1500px;margin:0 auto;padding-top:42px}.game-title h1{color:#f5dfb6;text-shadow:0 2px #000}.game-title p{color:#b9aa92}.game-title .step{color:var(--cyan)}
.counter{overflow:hidden;border:1px solid #806747;border-radius:8px;background:#e6d7bd;color:var(--ink);box-shadow:0 8px 22px #0005}.counter span{border-color:#a78d67}.counter .remaining{background:linear-gradient(#242523,#101211)}.counter .remaining b{color:#f06a5e}.counter .turn-timer{background:linear-gradient(#f3e6c7,#d9bd80)}
.clue-control,.selector-notice,.interference-notice{border:1px solid #907653;border-left:5px solid var(--cyan);border-radius:8px;background:linear-gradient(90deg,#eadcc3,#d6c3a4);color:var(--ink);box-shadow:0 8px 22px #0004}.selector-notice.yours{border-left-color:var(--green);background:linear-gradient(90deg,#dce8d9,#c8d8c3)}.interference-notice{border-left-color:#a879d0;background:linear-gradient(90deg,#dac9e6,#c5acd8)}
.board{gap:clamp(8px,1vw,14px);padding:clamp(14px,2vw,24px);border:1px solid #9c7849;border-radius:16px;background:linear-gradient(145deg,#ffffff08,transparent 26%),repeating-linear-gradient(91deg,#3a2519 0 3px,#281811 3px 9px,#45291a 9px 15px);box-shadow:inset 0 0 0 5px #151311,inset 0 0 0 7px #9b743e,0 18px 45px #0008}.word{min-height:96px;overflow:hidden;border:1px solid #a9885b;border-radius:9px;background:linear-gradient(145deg,#fff8dc99,transparent 26%),repeating-linear-gradient(3deg,#ead8b7 0 3px,#e3cdab 3px 7px,#ead8b7 7px 11px);color:#25180f;font-family:Georgia,"Times New Roman",serif;font-size:clamp(15px,1.35vw,20px);font-weight:700;text-shadow:0 1px #fff4d5;box-shadow:inset 0 0 0 3px #ffffff32,inset 0 -7px 12px #67451c18,0 5px 0 #79552f,0 9px 13px #0006}.word:hover:not(:disabled){transform:translateY(-3px);border-color:var(--cyan);box-shadow:inset 0 0 0 2px #38c9d855,0 7px 0 #79552f,0 12px 17px #0007}.word:active:not(:disabled){transform:translateY(2px);box-shadow:inset 0 3px 9px #0004,0 2px 0 #79552f}.word small{color:#725b3e}.word.selectable::after{color:#8c302a;font-weight:900}.word.red,.word.blue,.word.civil,.word.assassin,.word.silence,.word.signal_interrupted,.word.screen_altered{color:#fff;text-shadow:0 1px 2px #000b;border-color:#ffffff45;box-shadow:inset 0 0 18px #0005,0 5px 0 #090a0a,0 9px 13px #0007}.word.red{background:linear-gradient(145deg,#ef6a58,#8e211f)}.word.blue{background:linear-gradient(145deg,#27a9cb,#14548e)}.word.civil{background:linear-gradient(145deg,#aaa38f,#615e56)}.word.assassin{background:radial-gradient(circle at 40% 25%,#3b3e3d,#060707 70%)}.word.silence,.word.signal_interrupted,.word.screen_altered{background:linear-gradient(145deg,#a27bc5,#4c2d6f)}.word.my-vote{outline-color:#53d68c;box-shadow:0 0 0 3px #122018,0 0 24px #53d68c9c,0 5px 0 #79552f}.word.team-proposal{outline-color:var(--brass-light);box-shadow:0 0 24px #e0ba7399,0 5px 0 #79552f}.vote-badge{border:1px solid var(--brass);background:#151716}
.rules-overlay,.guess-modal{background:#090907e8}.rules-dialog,.guess-dialog{border:1px solid var(--brass-light);border-radius:14px;background:linear-gradient(145deg,#ede2ce,#d8c5a5);box-shadow:0 0 0 5px #151311,0 0 0 7px #99723d,0 30px 80px #000c;overflow:hidden}.rules-close,.modal-symbol{background:linear-gradient(145deg,#263032,#0b0e0e);color:var(--cyan)}.victory h1{color:#f0dcba}.victory>span,.victory p{color:var(--cyan)}
@media(max-width:900px){.entry-card{padding-right:44px;min-height:auto}.entry-card::after{inset:0;opacity:.15;filter:saturate(.8)}.entry-card::before{background:#eadcc5e8;inset:0;border:0;border-radius:0}.rules-link{right:30px}.game-title{align-items:stretch}}
@media(max-width:720px){.center{padding:14px}.card{border-radius:12px;box-shadow:0 0 0 4px #171311,0 0 0 6px #9b733b,0 18px 50px #000b}.entry-card{padding:30px 26px 28px}.entry-card .intro{margin:74px 0 30px}.entry-card .intro h1{font-size:clamp(42px,13vw,58px)}.game-head{height:64px}.game-content{padding:26px 12px 34px}.board{padding:12px;border-radius:11px}.word{min-height:82px}}
@media(max-width:480px){.center{padding:8px}.entry-card,.form-card,.lobby-card{padding:24px 20px}.entry-card .intro{margin-top:72px}.rules-link{top:24px;right:20px}.game-room{padding:7px}.board{gap:9px;padding:9px}.word{min-height:76px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

/* Version 1.3.1 · clearer, shorter entry experience */
.entry-card .brand-lockup{min-height:46px}.entry-card .brand-lockup b{font-size:13px;letter-spacing:.18em}.entry-card .intro{margin:92px 0 42px;max-width:390px}.entry-card .intro h1{margin:0 0 18px;font-size:clamp(44px,5vw,62px);line-height:.96;color:#201710;text-shadow:0 1px #fff5dc}.entry-card .intro p{max-width:330px;color:#514638;font-size:17px;font-weight:650;line-height:1.45}.entry-card .home-actions{grid-template-columns:1fr;max-width:390px;gap:12px}.entry-card .btn{min-height:58px}.entry-card .primary{background:linear-gradient(145deg,#168ba2,#0a586b);border-color:#0b5364}.entry-card .ghost{background:linear-gradient(#f2e7d2,#d8c6a6);border-color:#73583a;color:#201710}.rules-link{top:28px!important;right:28px!important;left:auto!important;min-width:88px;min-height:40px;border:1px solid var(--brass-light);border-radius:6px;background:linear-gradient(145deg,#242624,#0c0f0f);color:#f5dfb7;box-shadow:0 3px 10px #0007;font-size:10px}.rules-link:hover{background:#126f82;color:#fff;border-color:var(--cyan)}
@media(max-width:900px){.entry-card .intro{margin-top:88px}.entry-card::before{background:#eadcc5f2}.entry-card::after{opacity:.11}.rules-link{top:24px!important;right:24px!important}}
@media(max-width:480px){.entry-card .brand-lockup{padding-right:100px}.entry-card .intro{margin:76px 0 34px}.entry-card .intro h1{font-size:clamp(39px,12vw,50px)}.entry-card .intro p{font-size:15px;max-width:250px}.entry-card .btn{min-height:56px}.rules-link{top:20px!important;right:20px!important}}

/* Version 1.3.2 · graphite atmosphere and reliable responsive header */
body{background:#0b1114}.center{background:radial-gradient(circle at 18% 12%,#1f3940 0,transparent 34%),radial-gradient(circle at 84% 82%,#152d34 0,transparent 30%),linear-gradient(145deg,#10191d,#070b0d)}.center::before{opacity:.42;background-image:linear-gradient(#88dfe80d 1px,transparent 1px),linear-gradient(90deg,#88dfe80d 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(circle,#000 0,transparent 82%)}
.entry-card{border-color:#6d9297;background:linear-gradient(145deg,#f3f1eb,#dfe4e1);box-shadow:0 0 0 5px #0a0e10,0 0 0 7px #57767b,0 26px 70px #000c,inset 0 0 35px #16343b14}.entry-card::after{background:linear-gradient(90deg,#e9efecf7 0,#dfe7e2c9 25%,#13212738 78%),linear-gradient(0deg,#0b171b52,transparent 55%),url("/clave-cero-board-v1.png") center/cover no-repeat;border-left-color:#6e9297;filter:saturate(.32) contrast(.92)}.entry-card::before{border-color:#64808755}.entry-card .intro h1{color:#111a1d;text-shadow:0 1px #fff}.entry-card .intro p{color:#3f5053}.entry-card .brand-lockup b{color:#152326}.entry-card .ghost{background:linear-gradient(#f2f3ef,#d7dedb);border-color:#667d80;color:#152326}.entry-card>.rules-link{position:absolute!important;z-index:5;top:28px!important;right:28px!important;left:auto!important;margin:0!important;transform:none!important;background:linear-gradient(145deg,#1a292d,#091114);border-color:#5f8d94;color:#dff8f7}.entry-card>.rules-link:hover{transform:none!important;background:#126f82;border-color:#5be1eb;color:#fff}
@media(max-width:900px){.entry-card{background:linear-gradient(145deg,#f1f0ea,#dce3df)}.entry-card::before{background:linear-gradient(145deg,#eef1edf8,#dce3dff4)}.entry-card::after{opacity:.13;filter:grayscale(.55) saturate(.45)}.entry-card>.rules-link{top:24px!important;right:24px!important}}
@media(max-width:480px){.center{padding:10px}.entry-card{width:100%;min-height:calc(100svh - 20px);border-radius:14px}.entry-card .brand-lockup{padding-right:92px}.entry-card>.rules-link{top:18px!important;right:18px!important;min-width:76px;min-height:38px}.entry-card .intro{margin-top:82px}.entry-card .home-actions{width:100%}}
@media(max-width:350px){.entry-card{padding-left:17px;padding-right:17px}.entry-card>.rules-link{right:17px!important}.entry-card .brand-lockup b{font-size:11px;letter-spacing:.12em}.entry-card .brand-icon{width:38px;height:38px}}

/* Version 1.3.3 · unified forms and rules */
.form-head h2{margin-top:0}.role-toggle input:checked+i{background:#168ba2;box-shadow:0 0 0 1px #0b566b,0 0 14px #2bc4d74d}.role-toggle input:checked+i::after{background:#efffff}.role-toggle:has(input:checked){border-color:#4b939d;background:linear-gradient(90deg,#d9e7e4,#c8dbd8)}.role-toggle .role-symbol{background:linear-gradient(145deg,#1b2b2f,#0b1113);color:var(--cyan)}
.rules-overlay{padding:clamp(10px,3vw,28px);background:#060a0ceF;backdrop-filter:blur(10px)}.rules-dialog{width:min(900px,100%);max-height:calc(100dvh - clamp(20px,6vw,56px));border:1px solid #5c858b;border-radius:16px;background:#dfe5e2;box-shadow:0 0 0 5px #080d0f,0 0 0 7px #48686d,0 30px 90px #000d}.rules-dialog>header{min-height:94px;padding:22px 26px;border:0;background:linear-gradient(135deg,#1c2b2f,#091012);color:#eef8f5}.rules-dialog>header .step{color:#64d6df}.rules-dialog h2{margin:3px 0 0;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:clamp(30px,5vw,43px)}.rules-close{flex:0 0 46px;width:46px;height:46px;border:1px solid #60949b;border-radius:7px;background:#0b1518;color:#9df4f6}.rules-close:hover{background:#126f82;color:#fff}.rules-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;overflow:auto;padding:18px;background:linear-gradient(145deg,#edf0ed,#d9e0dd)}.rules-content section{display:block;padding:18px;border:1px solid #9bacaa;border-radius:9px;background:#f7f7f2;box-shadow:0 4px 12px #08111312}.rules-content section>b{display:block;margin-bottom:9px;color:#126f82;font-size:10px;letter-spacing:.1em}.rules-content p{color:#354548;font-size:13px;line-height:1.55}
@media(max-width:650px){.rules-overlay{padding:8px}.rules-dialog{max-height:calc(100dvh - 16px);border-radius:12px}.rules-dialog>header{min-height:78px;padding:16px 18px}.rules-dialog h2{font-size:31px}.rules-close{width:42px;height:42px;flex-basis:42px}.rules-content{grid-template-columns:1fr;gap:9px;padding:10px}.rules-content section{padding:15px}.rules-content p{font-size:12px;line-height:1.5}}
@media(max-width:350px){.rules-dialog>header{padding:13px 14px}.rules-dialog h2{font-size:27px}.rules-content{padding:8px}.rules-content section{padding:13px}}

/* Version 1.3.4 · one palette across the complete game */
:root{--team-gold:#c99a36;--team-gold-light:#f0ce73;--team-silver:#aab7bd;--team-silver-light:#e6edf0;--deep-violet:#392349;--deep-violet-light:#66417a}
.form-card,.lobby-card{border-color:#6d9297;background:linear-gradient(145deg,#f3f1eb,#dfe4e1);box-shadow:0 0 0 5px #0a0e10,0 0 0 7px #57767b,0 26px 70px #000c,inset 0 0 35px #16343b14}.form-card::before,.lobby-card::before{border-color:#64808755}.form-head h2,.lobby-head h2{color:#142226}.form-head p,.lobby-copy{color:#526164}.back{color:#365a61}.back:hover{color:#0f8295}.field input{border-color:#769095;background:#f7faf7;color:#152326}.field input:focus{border-color:#168ba2;box-shadow:0 0 0 3px #168ba226}.room-language button,.mode-picker button,.team-option{background:linear-gradient(145deg,#edf0ed,#d4ddda);border-color:#8ba1a2;color:#172528}.room-language button.selected,.mode-picker button.selected{background:linear-gradient(145deg,#e9f4f2,#c9dedb);border-color:#168ba2;box-shadow:0 0 0 2px #102326,4px 4px 0 #537a80}.mode-picker button small{color:#536467}
.team-option.red .team-dot{color:var(--team-gold)}.team-option.blue .team-dot{color:var(--team-silver)}.team-option.red.selected{background:linear-gradient(145deg,#f4dfa5,#c79a3d);border-color:#8c6722}.team-option.blue.selected{background:linear-gradient(145deg,#f2f6f7,#aab8be);border-color:#6e7f86}.team-option.selected{box-shadow:0 0 0 2px #102326,4px 4px 0 #537a80}.role-toggle{background:linear-gradient(90deg,#e4e9e6,#d0dad7);border-color:#8ba1a2}.role-toggle small{color:#536467}
.lobby-bg{background:radial-gradient(circle at 18% 12%,#1f3940 0,transparent 34%),radial-gradient(circle at 84% 82%,#152d34 0,transparent 30%),linear-gradient(145deg,#10191d,#070b0d)}.live-pill{border:1px solid #78a7aa;border-radius:20px;background:#d9ebe7;color:#0d7280}.team{border-color:#82989b;background:#f4f6f2}.team h3{background:linear-gradient(90deg,#203034,#11191c)}.red-team h3{box-shadow:inset 6px 0 var(--team-gold)}.blue-team h3{box-shadow:inset 6px 0 var(--team-silver)}.red-team h3 span{background:var(--team-gold)}.blue-team h3 span{background:var(--team-silver)}.player{border-color:#d4dedd}.member-avatar{background:linear-gradient(145deg,#eff3f0,#bdcbc8);border-color:#8ca09f}.waiting{background:linear-gradient(90deg,#dce8e5,#c8d9d5);border-color:#72979a}.waiting i{background:var(--cyan);box-shadow:0 0 0 6px #2bc4d724}.room-code{color:#152326}
.game{background:radial-gradient(circle at 15% 5%,#20383e 0,transparent 30%),radial-gradient(circle at 90% 90%,#142d33 0,transparent 27%),linear-gradient(145deg,#10191d,#070b0d);color:#e8f0ed}.game-head{border-color:#4d7379;background:linear-gradient(180deg,#1d2a2d,#091012)}.game-room{border-color:#537b82;color:#d9ecea}.status{border-color:#3f5e63;background:linear-gradient(90deg,#111b1e,#1c2a2d,#111b1e)}.status.red{box-shadow:inset 6px 0 var(--team-gold),inset 0 1px #ffffff0c}.status.blue{box-shadow:inset 6px 0 var(--team-silver),inset 0 1px #ffffff0c}.status.red i{background:var(--team-gold);color:var(--team-gold)}.status.blue i{background:var(--team-silver);color:var(--team-silver)}.game-title h1{color:#edf3f0;text-shadow:0 2px #000}.game-title p{color:#aebfbd}.game-title .step{color:#63dce5}.counter{border-color:#6f8a8d;background:#e2e8e5}.counter span{border-color:#a6b7b5}.counter .remaining{background:linear-gradient(#1f2b2e,#0b1113)}.counter .remaining b{color:var(--cyan)}.counter .turn-timer{background:linear-gradient(#e6eeeb,#bfcfcb)}
.board{border-color:#557a80;background:linear-gradient(145deg,#ffffff09,transparent 28%),linear-gradient(135deg,#18272b,#0d1518);box-shadow:inset 0 0 0 5px #070b0d,inset 0 0 0 7px #476a70,0 18px 45px #000a}.word{border-color:#92a5a4;background:linear-gradient(145deg,#ffffffaa,transparent 28%),linear-gradient(#e8ece8,#cbd4d1);color:#182326;text-shadow:0 1px #fff;box-shadow:inset 0 0 0 3px #ffffff32,inset 0 -7px 12px #1d393b13,0 5px 0 #667a7b,0 9px 13px #0007}.word small{color:#5c7274}.word:hover:not(:disabled){border-color:var(--cyan);box-shadow:inset 0 0 0 2px #38c9d855,0 7px 0 #667a7b,0 12px 17px #0008}.word.red{background:linear-gradient(145deg,var(--team-gold-light),#9b6f1d);color:#19130a;text-shadow:0 1px #ffe8a6;border-color:#f4d681}.word.blue{background:linear-gradient(145deg,var(--team-silver-light),#788991);color:#101719;text-shadow:0 1px #fff;border-color:#eff7f8}.word.civil{background:linear-gradient(145deg,#66777b,#344247)}.word.silence,.word.signal_interrupted,.word.screen_altered{background:linear-gradient(145deg,var(--deep-violet-light),var(--deep-violet));border-color:#8f69a2}.word.my-vote{outline-color:var(--cyan);box-shadow:0 0 0 3px #102326,0 0 24px #2bc4d78c,0 5px 0 #667a7b}.word.team-proposal{outline-color:var(--team-gold-light)}.vote-badge{border-color:#72c8cf;background:#10191c}.clue-control,.selector-notice{border-color:#719399;border-left-color:var(--cyan);background:linear-gradient(90deg,#e2e9e6,#cbd9d5)}.interference-notice{border-color:#715181;border-left-color:#8f69a2;background:linear-gradient(90deg,#d9cde0,#bda8c8)}
@media(max-width:720px){.form-card,.lobby-card{background:linear-gradient(145deg,#f1f2ed,#dce3e0)}.lobby-bg{padding-top:14px}.game-content{padding-top:24px}}
.word.red small,.word.red em{color:#39290c;text-shadow:none}.word.blue small,.word.blue em{color:#1f2a2e;text-shadow:none}

/* Version 1.3.5 · blue-led rustic system */
:root{--ocean:#0b4354;--ocean-deep:#061d27;--ocean-mid:#0f657a;--ocean-light:#25a8bd;--oak:#583924;--oak-dark:#26170f;--oak-light:#96633c;--cool-paper:#e8eeeb}
body{background:var(--ocean-deep)}.center,.lobby-bg{background:radial-gradient(circle at 16% 8%,#16758b 0,transparent 32%),radial-gradient(circle at 85% 85%,#0d5366 0,transparent 29%),linear-gradient(145deg,#0a3948,#03151d)}.center::before{opacity:.48;background-image:linear-gradient(#72d8e20b 1px,transparent 1px),linear-gradient(90deg,#72d8e20b 1px,transparent 1px),repeating-linear-gradient(92deg,transparent 0 86px,#7b4b2b18 87px 89px);background-size:48px 48px,48px 48px,180px 100%}
.card,.entry-card,.form-card,.lobby-card{border:1px solid #9a6a42;background:linear-gradient(145deg,#f1f3ee,#dce6e3);box-shadow:0 0 0 5px var(--oak-dark),0 0 0 8px var(--oak-light),0 0 32px #24a8bd28,0 28px 75px #000c,inset 0 0 30px #0c59620e}.card::before,.entry-card::before,.form-card::before,.lobby-card::before{border-color:#6b8e914f}.entry-card::after{background:linear-gradient(90deg,#edf2eff8 0,#dbe9e3d5 27%,#0b4d5b73 74%),linear-gradient(0deg,#06253186,transparent 58%),url("/clave-cero-board-v1.png") center/cover no-repeat;border-left:2px solid var(--oak-light);filter:saturate(.55) hue-rotate(8deg)}.entry-card .intro h1,.form-head h2,.lobby-head h2{color:#102d35}.entry-card .intro p,.form-head p,.lobby-copy{color:#405c61}.brand-icon{border-color:#a87546;background:linear-gradient(145deg,#113f4b,#06181f);color:#e2bc6e;box-shadow:inset 0 0 0 3px #041218,0 3px 10px #0008,0 0 15px #28bdd244}.entry-card>.rules-link{background:linear-gradient(145deg,#12677a,#07313f);border-color:#55b8c5;color:#efffff}.entry-card>.rules-link:hover{background:#168ba2;border-color:#9aebf0}
.primary{background:linear-gradient(145deg,#168da5,#084c60);border-color:#2bb6c7;box-shadow:inset 0 1px #78eff47a,0 4px 0 #04303c,0 0 20px #25a8bd38}.ghost,.entry-card .ghost{background:linear-gradient(#eef3ef,#d1dcda);border-color:#718d90;color:#12333b}.back{color:#0b6d81}.field input{border-color:#6e979d;background:#f8fbf8}.room-language button,.mode-picker button,.team-option{background:linear-gradient(145deg,#edf3f0,#cfddda);border-color:#759da2}.room-language button.selected,.mode-picker button.selected{background:linear-gradient(145deg,#e7f6f3,#bcd9d5);border-color:#168ba2;box-shadow:0 0 0 2px #092d36,4px 4px 0 #457a84}.role-toggle{background:linear-gradient(90deg,#dceae7,#c5d9d5);border-color:#6f999e}.role-toggle:has(input:checked){background:linear-gradient(90deg,#d8eeeb,#afd6d3);border-color:#168ba2}
.lobby-card{background:linear-gradient(145deg,#eff3ef,#d9e4e1)}.live-pill{background:#d2ebe7;border-color:#4e9aa4;color:#075d70}.team{border-color:#678f94;background:#f1f5f2}.team h3{background:linear-gradient(90deg,#0c5364,#062630)}.player{border-color:#cbdad7}.waiting{background:linear-gradient(90deg,#d8ebe7,#bdd8d4);border-color:#5d9298}
.game{background:radial-gradient(circle at 12% 4%,#146d82 0,transparent 27%),radial-gradient(circle at 90% 92%,#0b4c5e 0,transparent 26%),linear-gradient(145deg,#082f3c,#03141b)}.game-head{background:linear-gradient(180deg,#0d5364,#05232d);border-bottom:2px solid var(--oak-light)}.game-room{background:#041b23;border-color:#3b96a3;color:#e4f3f1}.status{background:linear-gradient(90deg,#07313d,#0d5262,#07313d);border-color:#467c83}.game-title h1{color:#edf5f2}.game-title p{color:#acc5c4}.counter{border-color:#6e989b;background:#e2eae7}.counter .remaining{background:linear-gradient(#0d5363,#052630)}.counter .turn-timer{background:linear-gradient(#dcebe7,#b5d0cb)}
.board{border-color:#a26c40;background:linear-gradient(145deg,#ffffff08,transparent 26%),linear-gradient(#0b4656,#062833);box-shadow:inset 0 0 0 5px var(--oak-dark),inset 0 0 0 8px var(--oak-light),0 0 28px #20b0c22e,0 20px 48px #000b}.word{border-color:#8b9f9d;background:linear-gradient(145deg,#ffffffaa,transparent 28%),repeating-linear-gradient(3deg,#e6ece8 0 3px,#d4dfdb 3px 7px,#e6ece8 7px 11px);box-shadow:inset 0 0 0 3px #ffffff32,inset 0 -7px 12px #0d465015,0 5px 0 #436c72,0 9px 13px #0007}.word:hover:not(:disabled){border-color:#69e0ea;box-shadow:inset 0 0 0 2px #38c9d855,0 7px 0 #436c72,0 12px 17px #0008}.clue-control,.selector-notice{border-color:#60969d;border-left-color:#25b9ca;background:linear-gradient(90deg,#e0ece8,#c2d9d4)}.interference-notice{border-color:#725184;border-left-color:#8f69a2;background:linear-gradient(90deg,#d7c8df,#b99fc7)}
.rules-dialog{border-color:#5a9ba4;background:#dce7e3;box-shadow:0 0 0 5px var(--oak-dark),0 0 0 8px var(--oak-light),0 0 30px #24a8bd35,0 30px 90px #000d}.rules-dialog>header{border-bottom:2px solid var(--oak-light);background:linear-gradient(135deg,#0f6477,#052833)}.rules-content{background:linear-gradient(145deg,#e7efeb,#cfddda)}.rules-content section{border-color:#759a9e;border-left:4px solid var(--oak-light);background:#f2f5f1}.rules-content section>b{color:#0b7185}.rules-close{border-color:#61bdc7;background:#052833;color:#baf8f8}
@media(max-width:900px){.entry-card::before{background:linear-gradient(145deg,#eef3eff8,#d7e4e0f5)}.entry-card::after{opacity:.17;filter:saturate(.5) hue-rotate(8deg)}}
@media(max-width:480px){.card,.entry-card,.form-card,.lobby-card{box-shadow:0 0 0 4px var(--oak-dark),0 0 0 6px var(--oak-light),0 18px 50px #000b}.board{box-shadow:inset 0 0 0 4px var(--oak-dark),inset 0 0 0 6px var(--oak-light),0 14px 34px #000a}.rules-dialog{box-shadow:0 0 0 3px var(--oak-dark),0 0 0 5px var(--oak-light),0 20px 60px #000c}}

/* Version 1.3.6 · branded form validation */
.form-card .error{display:none;min-height:0;margin:0}.form-card .error:not(:empty){display:flex;align-items:center;gap:11px;padding:12px 14px;border:1px solid #67b8c2;border-left:4px solid var(--ocean-light);border-radius:7px;background:linear-gradient(90deg,#0d4f60,#082e3a);color:#f1ffff;font-size:12px;font-weight:750;line-height:1.4;box-shadow:0 7px 18px #00141b3d}.form-card .error:not(:empty)::before{content:"!";display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;border:1px solid #7ddce4;border-radius:50%;background:#082630;color:#9cf7fa;font-weight:950}.field input.invalid{border-color:#1aa4b8;background:#effdfb;box-shadow:0 0 0 3px #1ba9bb35,0 0 18px #25a8bd24}.field input.invalid:focus{outline-color:#51d9e3}
@media(max-width:480px){.form-card .error:not(:empty){padding:11px 12px;font-size:11px}.form-card .error:not(:empty)::before{flex-basis:24px;width:24px;height:24px}}

/* Version 1.3.7 · balanced walnut and ocean palette */
:root{--walnut-text:#563823;--walnut-soft:#765038;--walnut-light:#c79a72;--blue-border:#3e8997}
.brand-icon{border-color:#805334;background:linear-gradient(145deg,#0d5b6c,#042932);color:#d9f4f3;box-shadow:inset 0 0 0 2px #2a1b13,0 3px 9px #00171e82}.entry-card .brand-lockup b{color:var(--walnut-text)}.entry-card .intro h1{color:#4b3020;text-shadow:0 1px #fff}.entry-card .intro p{color:#685244}.entry-card>.rules-link{border:1px solid #71482e;background:linear-gradient(145deg,#0f5d6e,#093945);color:#eaf8f6;box-shadow:0 3px 8px #00182030}.entry-card>.rules-link:hover{border-color:#8a6144;background:#0d5364;color:#fff;box-shadow:none}.entry-card .ghost{border-color:#806048;color:var(--walnut-text)}
.form-head h2,.lobby-head h2{color:var(--walnut-text)}.form-head p,.lobby-copy{color:#6c5849}.field,.team-picker legend,.room-language legend,.mode-picker legend{color:var(--walnut-text)}.field input{color:#3f2d22}.room-language button b,.mode-picker button b,.team-option b,.role-toggle b{color:var(--walnut-text)}.room-language button small,.mode-picker button small,.team-option small,.role-toggle small{color:#66574d}.back{color:#6a4731}.back:hover{color:#0b7185}.form-card .primary,.lobby-card .primary{color:#fff}.form-card .error:not(:empty){border-color:#557f87;border-left-color:#8c5b39}
.room-code,.lobby-card .player b{color:var(--walnut-text)}.lobby-card .step{color:#0b7185}.team h3{color:#fff}.waiting b{color:var(--walnut-text)}
.rules-dialog{border-color:#3d7f8c}.rules-dialog>header h2{color:#f3e4d5}.rules-dialog>header .step{color:#c89c75}.rules-close{border-color:#557f87;color:#e6f5f3;box-shadow:none}.rules-content section{border:1px solid var(--blue-border);border-left:4px solid var(--blue-border);background:#f2f4ef}.rules-content section>b{color:var(--walnut-text)}.rules-content p{color:#5c493c}
.game-title h1{color:#d8b18e;text-shadow:0 2px #00151b}.game-title .step{color:#63c9d5}.game-title p{color:#c8d5d1}.clue-control b,.selector-notice b,.interference-notice b{color:var(--walnut-text)}.clue-control small,.selector-notice small{color:#68574d}.counter b{color:var(--walnut-text)}.counter .remaining b{color:#8bdde3}.game-room b{color:#d8b18e}.victory h1{color:#d8b18e}.victory p{color:#68cfda}
@media(max-width:900px){.entry-card .brand-lockup b{color:var(--walnut-text)}}

/* Version 1.3.8 · walnut typography, blue surfaces */
:root{--ui-walnut:#563823;--ui-walnut-dark:#3b2518;--action-blue-soft:#b9d8d8;--action-blue-hover:#cbe4e2}
.entry-card .brand-icon{border-color:var(--ui-walnut);box-shadow:inset 0 0 0 2px #2d1c13,0 3px 9px #00171e82}.entry-card #create,.form-card .primary{border-color:#568a92;background:linear-gradient(145deg,#c9e1df,var(--action-blue-soft));color:var(--ui-walnut);text-shadow:0 1px #efffff;box-shadow:inset 0 1px #ffffff88,0 4px 0 #6a9699,0 0 16px #25a8bd24}.entry-card #create:hover:not(:disabled),.form-card .primary:hover:not(:disabled){background:linear-gradient(145deg,#d7e9e6,var(--action-blue-hover));color:var(--ui-walnut-dark)}.entry-card #create b,.form-card .primary b{color:inherit}.entry-card>.rules-link{border:0;background:#c1dcdaeb;color:var(--ui-walnut);box-shadow:0 3px 9px #00182030}.entry-card>.rules-link:hover{border:0;background:#d1e5e2;color:var(--ui-walnut-dark);box-shadow:0 3px 9px #00182030}
.room-language button span:last-child{color:var(--ui-walnut);font-weight:900}.room-language button.selected span:last-child{color:var(--ui-walnut-dark)}.role-toggle b{color:var(--ui-walnut)}.form-card .role-symbol{border:1px solid #6c8f92;background:linear-gradient(145deg,#d1e4e1,#abcac8);color:var(--ui-walnut);font-weight:950}.form-card .role-toggle input:checked+i{background:#168ba2}.form-card .role-toggle:has(input:checked){border-color:#4b939d;background:linear-gradient(90deg,#d9e7e4,#c8dbd8)}

/* Version 1.3.9 · restore original blue button surfaces */
:root{--button-walnut:#d6aa82}.entry-card #create,.form-card .primary{border-color:#2bb6c7;background:linear-gradient(145deg,#168da5,#084c60);color:var(--button-walnut);text-shadow:0 1px #00232c;box-shadow:inset 0 1px #78eff47a,0 4px 0 #04303c,0 0 20px #25a8bd38}.entry-card #create:hover:not(:disabled),.form-card .primary:hover:not(:disabled){background:linear-gradient(145deg,#1b9bb3,#0a5b70);color:#e1bb98}.entry-card>.rules-link{border:0;background:linear-gradient(145deg,#12677a,#07313f);color:var(--button-walnut);box-shadow:0 3px 9px #00182030}.entry-card>.rules-link:hover{border:0;background:#126f82;color:#e1bb98;box-shadow:0 3px 9px #00182030}.form-card .role-symbol{border-color:#795139;background:linear-gradient(145deg,#12677a,#07313f);color:var(--button-walnut)}

/* Version 1.3.10 · darker ocean and matching dark walnut text */
:root{--button-walnut:var(--ui-walnut)}.entry-card #create,.form-card .primary{border-color:#176778;background:linear-gradient(145deg,#0f7083,#063b4b);color:var(--button-walnut);text-shadow:0 1px #66aab333;box-shadow:inset 0 1px #5cc6d259,0 4px 0 #032a35,0 0 18px #0b53642e}.entry-card #create:hover:not(:disabled),.form-card .primary:hover:not(:disabled){background:linear-gradient(145deg,#147f92,#084657);color:var(--ui-walnut-dark)}.entry-card>.rules-link{background:linear-gradient(145deg,#0e6577,#052f3c);color:var(--ui-walnut);text-shadow:0 1px #66aab333}.entry-card>.rules-link:hover{background:#0b5b6d;color:var(--ui-walnut-dark)}.form-card .role-symbol{background:linear-gradient(145deg,#0e6577,#052f3c);color:var(--ui-walnut)}

/* Version 1.3.11 · cyan typography on blue controls */
:root{--logo-cyan:#d9f4f3}.primary,.entry-card #create,.form-card .primary,.entry-card>.rules-link,.form-card .role-symbol{color:var(--logo-cyan);text-shadow:0 1px #00232c}.primary:hover:not(:disabled),.entry-card #create:hover:not(:disabled),.form-card .primary:hover:not(:disabled),.entry-card>.rules-link:hover{color:#efffff}.primary b,.entry-card #create b,.form-card .primary b{color:inherit}

/* Version 1.3.12 · rules and secondary action refinement */
.rules-dialog>header h2{color:var(--logo-cyan)}.rules-content section{border:1px solid #0b5364;border-left:4px solid #0b5364}.entry-card #join{border-color:#74aeb4;background:linear-gradient(145deg,#d6ece9,#b9d9d7);color:#17363c;box-shadow:inset 0 1px #ffffffaa,0 4px 0 #739a9c,0 8px 16px #001a2030}.entry-card #join:hover{background:linear-gradient(145deg,#e1f1ee,#c7e2df);border-color:#8bc1c5;color:#0c2d34}

/* Version 1.3.13 · walnut label on the light secondary action */
.entry-card #join,.entry-card #join b{color:var(--ui-walnut)}.entry-card #join:hover,.entry-card #join:hover b{color:var(--ui-walnut-dark)}

/* Version 1.3.14 · desktop rules placement and mobile picker containment */
@media(min-width:901px){.entry-card>.rules-link{right:calc(51% + 28px)!important;left:auto!important}}
@media(max-width:600px){.form-card{width:100%;max-width:100%;min-width:0;overflow:hidden}.form-card fieldset,.room-language,.mode-picker,.team-picker{width:100%;max-width:100%;min-width:0}.room-language>div{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mode-picker>div,.team-picker>div{width:100%;grid-template-columns:1fr;gap:9px}.room-language button,.mode-picker button,.team-option{width:100%;max-width:100%;min-width:0}.room-language button{padding:9px 6px;gap:6px}.room-language button.selected,.mode-picker button.selected,.team-option.selected{box-shadow:0 0 0 2px #102326}.language-flag{font-size:22px}.room-language button span:last-child,.mode-picker button b,.mode-picker button small{min-width:0;overflow-wrap:anywhere}}
@media(max-width:320px){.room-language>div{grid-template-columns:1fr}.room-language button{min-height:58px}}

/* Version 1.3.15 · aligned home header and safer mobile form spacing */
@media(min-width:901px){.entry-card>.rules-link{top:45px!important}}
@media(max-width:600px){
html,body,#app{max-width:100%;overflow-x:hidden}
.center:has(.form-card){padding:16px}
.form-card{padding:26px 20px;width:100%;max-width:100%}
.form-card fieldset,.room-language,.mode-picker,.team-picker{min-inline-size:0}
.room-language>div,.mode-picker>div,.team-picker>div{width:100%;padding:2px}
.room-language button.selected,.mode-picker button.selected,.team-option.selected{box-shadow:inset 0 0 0 2px #102326}
.role-toggle,.form-card .primary{width:100%;max-width:100%;min-width:0}
.role-toggle b,.role-toggle small,.mode-picker button small{min-width:0;overflow-wrap:anywhere}
}
@media(max-width:340px){.center:has(.form-card){padding:14px}.form-card{padding:24px 18px}}

/* Version 1.3.16 · shared header line and narrow-screen safe area */
.entry-topbar{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;width:49%;gap:14px}
.entry-topbar .brand-lockup{padding-right:0}
.entry-topbar>.rules-link{position:static!important;inset:auto!important;flex:0 0 auto;min-width:70px;min-height:34px;padding:0 10px;margin:0!important;transform:none!important;font-size:9px}
@media(max-width:900px){.entry-topbar{width:100%}.entry-card .intro{margin-top:72px}}
@media(max-width:600px){
.center:has(.form-card){padding:22px}
.form-card{width:calc(100vw - 44px);padding:26px 22px}
.form-card::before{inset:9px}
.form-card .form-head h2{overflow-wrap:anywhere}
}
@media(max-width:340px){
.center:has(.form-card){padding:20px}
.form-card{width:calc(100vw - 40px);padding:22px 17px}
.room-language>div,.mode-picker>div,.team-picker>div{padding:0}
.role-toggle{padding-left:12px;padding-right:12px;gap:10px}
.entry-card{padding-left:17px;padding-right:17px}
.entry-topbar{gap:9px}.entry-topbar>.rules-link{min-width:62px;padding:0 8px;font-size:8px}
}

/* Version 1.3.17 · restore the rules treatment and desktop anchor */
.entry-topbar>.rules-link{border:0;background:linear-gradient(145deg,#0e6577,#052f3c);color:var(--logo-cyan);text-shadow:0 1px #00232c;box-shadow:0 3px 9px #00182030}
.entry-topbar>.rules-link:hover{border:0;background:#0b5b6d;color:#efffff;box-shadow:0 3px 9px #00182030}
@media(min-width:901px){
.entry-topbar{display:contents}
.entry-topbar>.rules-link{position:absolute!important;top:59px!important;right:calc(51% + 28px)!important;left:auto!important}
}

/* Version 1.3.18 · true mobile centering without viewport-width drift */
@media(max-width:600px){
.center:has(.form-card){display:grid;place-items:start center;padding-inline:24px}
.form-card{justify-self:center;width:100%;max-width:690px;margin-inline:auto;padding-inline:22px}
.form-card>.form-head,.form-card>.field,.form-card>fieldset,.form-card>.role-toggle,.form-card>.continue,.form-card>.error{justify-self:stretch;width:100%;margin-left:0;margin-right:0}
.room-language>div,.mode-picker>div,.team-picker>div{margin-inline:0}
}
@media(max-width:340px){
.center:has(.form-card){padding-inline:22px}
.form-card{width:100%;padding-inline:17px}
}

/* Version 1.3.19 · prevent intrinsic button widths from moving the form */
@media(max-width:600px){
.center:has(.form-card){display:flex;flex-direction:column;align-items:center;width:100%;max-width:100%;overflow-x:hidden}
.form-card{flex:0 1 auto;inline-size:100%;max-inline-size:690px;min-inline-size:0}
.form-card>.form-head,.form-card>.field,.form-card>fieldset,.form-card>.role-toggle,.form-card>.continue,.form-card>.error{min-inline-size:0;max-inline-size:100%}
.form-head p,.room-language button,.mode-picker button,.team-option,.role-toggle{min-width:0;max-width:100%;overflow-wrap:anywhere}
.room-language>div,.mode-picker>div,.team-picker>div{grid-template-columns:minmax(0,1fr);min-width:0;max-width:100%}
}

/* Version 1.3.20 · contained inputs and centered tablet actions */
@media(max-width:600px){
.form-card .field{min-width:0;max-width:100%;overflow:hidden}
.form-card .field input{display:block;width:100%;min-width:0;max-width:100%}
}
@media(min-width:601px) and (max-width:900px){
.entry-card .home-actions{margin-left:auto;margin-right:auto}
}

/* Version 1.3.21 · balance actions inside the desktop text panel */
@media(min-width:901px){
.entry-card{container-type:inline-size}
.entry-card .home-actions{width:390px;max-width:390px;margin-left:calc((49cqw - 390px)/2 - 52px);margin-right:0}
}

/* Version 1.3.22 · center actions whenever the image is no longer a side panel */
@media(max-width:900px){
.entry-card .home-actions{margin-left:auto;margin-right:auto}
}

/* Version 1.3.23 · real desktop text column instead of offset arithmetic */
@media(min-width:901px){
.entry-card{container-type:normal;display:grid;grid-template-columns:49% 51%;grid-template-rows:auto auto auto;padding:52px 0 44px}
.entry-topbar{display:flex;grid-column:1;grid-row:1;width:auto;margin:0 52px}
.entry-topbar>.rules-link{position:static!important;inset:auto!important}
.entry-card .intro{grid-column:1;grid-row:2;width:auto;max-width:390px;margin:92px 52px 42px}
.entry-card .home-actions{grid-column:1;grid-row:3;justify-self:center;width:min(390px,calc(100% - 60px));max-width:390px;margin:0}
}

/* Version 1.3.24 · keep desktop actions at the standard control height */
@media(min-width:901px){
.entry-card .home-actions{align-self:start;grid-auto-rows:58px}
.entry-card .home-actions>.btn{height:58px;min-height:58px}
}

/* Version 1.3.25 · raise the desktop action group */
@media(min-width:901px){.entry-card .home-actions{transform:translateY(-24px)}}

/* Version 1.3.26 · integrated lobby status and brand-consistent team details */
.lobby-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.lobby-meta .live-pill{padding:5px 8px;font-size:8px;line-height:1}
.team h3{color:var(--logo-cyan)}
.member-avatar{color:var(--ui-walnut);text-shadow:0 1px #fff}
@media(max-width:720px){.lobby-meta{align-items:flex-start;flex-direction:column;gap:7px}}

/* Version 1.3.27 · cyan word board with unmistakable silver and graphite */
.game-title .team-decision-title{color:var(--logo-cyan);text-shadow:0 2px #00151b}
.word{border-color:#75aeb3;background:linear-gradient(145deg,#efffff99,transparent 28%),repeating-linear-gradient(3deg,#cce7e4 0 3px,#b9d9d7 3px 7px,#cce7e4 7px 11px);color:var(--ui-walnut-dark);text-shadow:0 1px #efffff;box-shadow:inset 0 0 0 3px #ffffff4d,inset 0 -7px 12px #0d465018,0 5px 0 #46777d,0 9px 13px #0007}
.word small{color:#526f72}
.word.blue{border-color:#f4fbfc;background:linear-gradient(135deg,#ffffff 0,#b9c5ca 24%,#66777f 45%,#f1f5f6 66%,#8b9ba2 100%);color:#172126;text-shadow:0 1px #fff;box-shadow:inset 0 0 0 3px #ffffff75,inset 0 -9px 16px #26353b3d,0 5px 0 #4a5960,0 9px 13px #0008}
.word.blue small,.word.blue em{color:#26343a;text-shadow:0 1px #fff}
.word.civil{border-color:#777872;background:linear-gradient(145deg,#686862,#303334 72%);color:#fff;text-shadow:0 1px 2px #000;box-shadow:inset 0 0 18px #0005,0 5px 0 #17191a,0 9px 13px #0008}
.word.civil small,.word.civil em{color:#e5e4de;text-shadow:0 1px #000}

/* Version 1.3.28 · walnut voting accent and petroleum icon */
.selector-notice,.selector-notice.yours{border-left-color:var(--oak-light)}
.selector-notice i,.selector-notice.yours i{border:1px solid #347f8c;background:var(--ocean);color:var(--logo-cyan);text-shadow:0 0 10px #8ff7f8}

/* Version 1.3.29 · unmistakable revealed cards for team leaders */
.word.chief-revealed{z-index:2;outline:3px solid var(--logo-cyan);outline-offset:2px;filter:saturate(1.12) brightness(1.08);box-shadow:inset 0 0 0 3px #ffffff70,0 0 0 6px #0b4354,0 0 24px #8ff7f8b8,0 7px 14px #0009}
.word.chief-revealed::after{content:"✓";position:absolute;top:7px;right:7px;display:grid;place-items:center;width:25px;height:25px;border:1px solid #7ee3e8;border-radius:50%;background:var(--ocean);color:var(--logo-cyan);font:900 14px/1 sans-serif;text-shadow:0 0 8px #baffff;box-shadow:0 2px 8px #00182099}

/* Version 1.3.30 · metallic gold team and red forbidden card */
.word.red{border-color:#fff0ae;background:linear-gradient(135deg,#fff8d0 0,#d9ad42 24%,#8c5c0b 45%,#ffe69a 66%,#b57712 100%);color:#2f2108;text-shadow:0 1px #fff4bf;box-shadow:inset 0 0 0 3px #fff5bf70,inset 0 -9px 16px #4f32083d,0 5px 0 #6d480b,0 9px 13px #0008}
.word.red small,.word.red em{color:#3d2b0b;text-shadow:0 1px #fff0ae}
.word.assassin{border-color:#ffb7aa;background:linear-gradient(145deg,#ff7666 0,#b71925 48%,#5d0710 100%);color:#fff;text-shadow:0 1px 2px #400008;box-shadow:inset 0 0 0 3px #ffcabf45,inset 0 -10px 18px #46000966,0 5px 0 #4d0710,0 9px 15px #0009}
.word.assassin small,.word.assassin em{color:#ffe7e2;text-shadow:0 1px #50000a}

/* Version 1.3.31 · content-sized mobile home card */
@media(max-width:600px){
.welcome{min-height:100svh;place-items:center;align-content:center;padding-top:18px;padding-bottom:18px}
.welcome .entry-card{min-height:0;height:auto;padding-bottom:30px}
.welcome .entry-card .home-actions{margin-bottom:0}
}

/* Version 1.3.32 · keep the compact home card centered at every breakpoint */
.welcome{width:100%;justify-items:center}
.welcome .entry-card{margin-left:auto;margin-right:auto}

/* Version 1.3.33 · clean cyan backs and consistent readable team words */
.word{background:linear-gradient(145deg,#ddf1ee 0,#c7e3e0 52%,#afd3d1 100%)}
.word>span,.word.red>span,.word.blue>span{color:var(--ui-walnut-dark);text-shadow:none}
.word.red{background:linear-gradient(135deg,#f6dda0 0,#d2a33d 34%,#efd17f 68%,#a97113 100%)}
.word.blue{background:linear-gradient(135deg,#eef3f4 0,#bbc6ca 34%,#e0e7e9 68%,#87979e 100%)}
.word.civil>span,.word.assassin>span,.word.silence>span,.word.signal_interrupted>span,.word.screen_altered>span{color:#fff;text-shadow:0 1px 2px #000}

/* Version 1.3.34 · explicit winner after the forbidden red card */
.victory .forbidden-winner{margin:14px 0 0;color:var(--logo-cyan);font-size:clamp(18px,3vw,28px);font-weight:950;letter-spacing:.08em;text-shadow:0 2px #00151b}

/* Version 1.3.35 · insufficient-player return notice */
.lobby-alert{display:flex;align-items:center;gap:12px;margin:18px 0;padding:13px 15px;border:1px solid #8b6244;border-left:5px solid var(--oak-light);border-radius:8px;background:linear-gradient(90deg,#f2e2d1,#d8e5e1);color:var(--ui-walnut-dark);box-shadow:0 6px 16px #07191d20}
.lobby-alert i{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:var(--ocean);color:var(--logo-cyan);font-style:normal;font-weight:950}
.lobby-alert b{font-size:12px;line-height:1.5}

/* Version 1.5 - keep every mobile card and its shadow inside the board frame */
@media(max-width:720px){
.game-content{padding-bottom:max(42px,env(safe-area-inset-bottom))}
.board{width:100%;min-width:0;box-sizing:border-box;padding-bottom:22px;margin-bottom:4px}
.word{min-width:0;max-width:100%;box-sizing:border-box}
}
@media(max-width:480px){.board{padding-bottom:18px}}

/* Version 1.5 - live team word progress */
.game-metrics{display:grid;justify-items:end;gap:10px}
.team-progress{display:grid;grid-template-columns:repeat(2,minmax(128px,1fr));overflow:hidden;border:1px solid #6e989b;border-radius:8px;background:#dce8e5;box-shadow:0 7px 18px #0004}
.team-progress>span{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:10px 12px;color:var(--ui-walnut-dark)}
.team-progress>span+span{border-left:1px solid #9eb2b0}
.team-progress i{width:10px;height:10px;border-radius:50%;box-shadow:0 0 0 3px #fff7}
.team-progress .gold-progress i{background:var(--team-gold)}
.team-progress .silver-progress i{background:var(--team-silver)}
.team-progress small{font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.team-progress b{font:900 24px/1 Georgia,"Times New Roman",serif}
@media(max-width:720px){.game-metrics{width:100%;justify-items:stretch}.team-progress{grid-template-columns:1fr 1fr}.team-progress>span{padding:9px}.team-progress small{font-size:7px}.team-progress b{font-size:21px}}
@media(max-width:390px){.team-progress{grid-template-columns:1fr}.team-progress>span+span{border-left:0;border-top:1px solid #9eb2b0}}

/* Version 1.6 - clearer room, feedback, accessibility and mobile controls */
.difficulty-picker{border:0;padding:0;margin:0;min-inline-size:0}.difficulty-picker legend{margin-bottom:9px;color:var(--walnut-text);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.difficulty-picker>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.difficulty-picker button{min-width:0;min-height:76px;padding:10px;border:1px solid #759da2;border-radius:7px;background:linear-gradient(145deg,#edf3f0,#cfddda);color:var(--walnut-text);text-align:left;cursor:pointer}.difficulty-picker button b,.difficulty-picker button small{display:block}.difficulty-picker button small{margin-top:5px;color:#66574d;font-size:10px;line-height:1.35}.difficulty-picker button.selected{border-color:#168ba2;background:linear-gradient(145deg,#e7f6f3,#bcd9d5);box-shadow:inset 0 0 0 2px #102326}
.connection-overlay{position:fixed;z-index:1000;inset:0;display:grid;place-content:center;justify-items:center;gap:16px;background:#03141bea;color:#d9f7f5;backdrop-filter:blur(7px)}.connection-overlay i{width:42px;height:42px;border:4px solid #ffffff35;border-top-color:var(--logo-cyan);border-radius:50%;animation:reconnect-spin .8s linear infinite}.connection-overlay b{letter-spacing:.05em}@keyframes reconnect-spin{to{transform:rotate(1turn)}}
.readiness{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.readiness>span{padding:10px 12px;border:1px solid #719399;border-radius:7px;background:#dce8e5;color:var(--ui-walnut-dark);font-size:11px}.share-actions,.profile-actions,.game-head-actions,.rematch-actions{display:flex;align-items:center;gap:8px}.mini-action,.effects-toggle{min-height:36px;padding:0 11px;border:1px solid #628b91;border-radius:6px;background:#dceae7;color:var(--ui-walnut-dark);font-size:9px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}.profile-actions{margin:0 0 12px}.effects-toggle{width:38px;padding:0;color:var(--logo-cyan);background:var(--ocean)}
.team-progress>span{position:relative;overflow:hidden}.team-progress u{position:absolute;left:0;bottom:0;width:var(--progress);height:4px;background:var(--team-gold);text-decoration:none;transition:width .45s ease}.team-progress .silver-progress u{background:var(--team-silver)}
.card-symbol{position:absolute;right:8px;top:7px;color:currentColor;font:900 16px/1 sans-serif;opacity:.9}.vote-badge{display:flex;align-items:center;gap:5px}.vote-dots{display:flex;gap:2px}.vote-dots i{width:5px;height:5px;border:1px solid #fff;border-radius:50%}.vote-dots i.filled{background:#fff}
.reveal-toast{position:fixed;z-index:900;left:50%;top:18px;transform:translateX(-50%);display:flex;align-items:center;gap:12px;width:min(430px,calc(100% - 24px));padding:13px 16px;border:1px solid #78bec6;border-radius:10px;background:#e1efeb;color:var(--ui-walnut-dark);box-shadow:0 16px 40px #00182099;animation:toast-in .25s ease}.reveal-toast>i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--ocean);color:var(--logo-cyan);font-style:normal;font-weight:900}.reveal-toast span{display:grid;gap:3px}.reveal-toast small{color:#66574d}@keyframes toast-in{from{opacity:0;transform:translate(-50%,-15px)}}
.rematch-actions{justify-content:center;flex-wrap:wrap;margin-top:24px}.rematch-actions .btn{min-width:190px;margin:0}
@media(max-width:720px){.difficulty-picker>div{grid-template-columns:1fr}.lobby-head{gap:12px}.share-actions{width:100%}.share-actions>*{flex:1}.readiness{grid-template-columns:1fr}.profile-actions>*{flex:1}.game-head-actions{gap:5px}.game-room{font-size:8px}.reveal-toast{top:max(10px,env(safe-area-inset-top))}}
.qr-overlay{position:fixed;z-index:950;inset:0;display:grid;place-items:center;padding:18px;background:#03141be8;backdrop-filter:blur(6px)}.qr-card{position:relative;display:grid;justify-items:center;gap:11px;padding:24px;border:2px solid var(--oak-light);border-radius:14px;background:#edf3ef;color:var(--ui-walnut-dark);box-shadow:0 20px 60px #000c}.qr-card img{width:240px;max-width:70vw;aspect-ratio:1;border:8px solid #fff}.qr-card button{position:absolute;right:7px;top:7px;width:34px;height:34px;border:0;border-radius:50%;background:var(--ocean);color:#fff;font-size:22px;cursor:pointer}.qr-card small{font:900 20px/1 ui-monospace,monospace;letter-spacing:.15em}

/* Version 1.6.1 - compact creation choices above the fold */
.room-language button{min-height:58px;padding:8px}.mode-picker button{min-height:64px;padding:9px}.difficulty-picker button{min-height:64px;padding:9px}.room-language button,.mode-picker button,.difficulty-picker button{box-shadow:none}.mode-picker button small,.difficulty-picker button small{font-size:9px;line-height:1.25}
.mode-picker button,.difficulty-picker button{align-content:center;justify-items:center;text-align:center}
.mode-picker button,.difficulty-picker button{min-height:48px}
@media(max-width:720px){
.form-card{gap:14px}.form-head{padding-bottom:15px}.form-head h2{margin-top:5px}.room-language>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.mode-picker>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.difficulty-picker>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.room-language button{min-height:54px;padding:6px 4px}.language-flag{font-size:20px}.mode-picker button,.difficulty-picker button{min-height:58px;padding:7px}.mode-picker button b,.difficulty-picker button b{font-size:10px}.mode-picker button small,.difficulty-picker button small{font-size:8px}.room-language legend,.mode-picker legend,.difficulty-picker legend{margin-bottom:6px}
}
@media(max-width:340px){.mode-picker button small,.difficulty-picker button small{display:none}.mode-picker button,.difficulty-picker button{min-height:46px;text-align:center}.difficulty-picker>div{gap:4px}}

/* Version 1.6.3 - focused sharing actions and a consistent copy icon */
#share-room{display:none}.share-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(390px,100%)}
.share-actions{margin-inline:auto}.lobby-meta .step{text-transform:uppercase;font-family:inherit;font-weight:900;font-style:normal}
.game-exit-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.game-exit-actions .effects-toggle{flex:0 0 38px}.game-exit-actions .leave-room{flex:0 0 auto}
@media(max-width:480px){.game-exit-actions{gap:5px}.game-exit-actions .effects-toggle{width:34px;flex-basis:34px}.game-exit-actions .leave-room{padding:0 7px}}
.room-code span{position:relative;display:inline-block;width:16px;height:16px;margin-left:4px;font-size:0;vertical-align:middle}
.room-code span::before,.room-code span::after{content:"";position:absolute;width:9px;height:9px;border:1.5px solid currentColor;border-radius:1px;background:transparent}
.room-code span::before{left:2px;top:5px}.room-code span::after{left:6px;top:1px;background:#edf3ef}
