/* Arena light/dark remain available; additional skins only style the platform shell. */
html[data-g42-theme="spielbox"]{
  --skin-bg:#fff8e9;--skin-ink:#152036;--skin-panel:#fffefa;--skin-panel-alt:#daf5eb;
  --skin-action:#ff931f;--skin-action-text:#152036;--skin-accent:#0064e8;--skin-accent-2:#b53e05;
  --skin-header:#0064e8;--skin-header-text:#fff;--skin-shell:#fffefa;--skin-shell-text:#152036;
  --skin-line:#152036;--skin-shadow:5px 6px 0 #b9a2ee;
  --skin-pattern:radial-gradient(circle at 8px 8px,#0064e80d 0 2px,transparent 2.5px),radial-gradient(circle at 24px 24px,#ff931f14 0 3px,transparent 3.5px);
}
html[data-g42-theme="arena-light"]{
  --skin-bg:#f7fbff;--skin-ink:#101721;--skin-panel:#fff;--skin-panel-alt:#e9f5ff;
  --skin-action:#ff7a18;--skin-action-text:#111820;--skin-accent:#008cff;--skin-accent-2:#ff7900;
  --skin-header:#fff;--skin-header-text:#111820;--skin-shell:#fff;--skin-shell-text:#111820;
  --skin-line:#182333;--skin-shadow:8px 8px 0 #b9d9ef;
  --skin-pattern:linear-gradient(rgba(0,140,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,121,0,.045) 1px,transparent 1px);
}
html[data-g42-theme="arena-dark"]{
  --skin-bg:#020407;--skin-ink:#f4f7fb;--skin-panel:#09111b;--skin-panel-alt:#0a1824;
  --skin-action:#ff7900;--skin-action-text:#fff;--skin-accent:#00a9ff;--skin-accent-2:#ff7900;
  --skin-header:#020407;--skin-header-text:#fff;--skin-shell:#05090e;--skin-shell-text:#fff;
  --skin-line:#5ac7ff;--skin-shadow:0 0 0 1px rgba(0,169,255,.4),0 0 28px rgba(0,140,255,.18);
  --skin-pattern:radial-gradient(circle at 82% 10%,rgba(0,140,255,.18),transparent 30rem),radial-gradient(circle at 8% 68%,rgba(255,121,0,.14),transparent 28rem);
}
html[data-g42-theme="tabletop"]{
  --skin-bg:#173a2e;--skin-ink:#f5ecd7;--skin-panel:#21493a;--skin-panel-alt:#2a5746;
  --skin-action:#c85b35;--skin-action-text:#fff8e8;--skin-accent:#e0b95d;--skin-accent-2:#ef8b52;
  --skin-header:#56351f;--skin-header-text:#fff3d8;--skin-shell:#382518;--skin-shell-text:#fff3d8;
  --skin-line:#d6b76b;--skin-shadow:6px 7px 0 #0b2118;
  --skin-pattern:radial-gradient(circle,rgba(255,255,255,.045) 0 1px,transparent 1.5px),linear-gradient(92deg,rgba(3,18,12,.1),transparent 45%,rgba(255,255,255,.025));
}
html[data-g42-theme="party"]{
  --skin-bg:#fff4d9;--skin-ink:#202337;--skin-panel:#fffaf0;--skin-panel-alt:#dff2ea;
  --skin-action:#f05b47;--skin-action-text:#fff;--skin-accent:#315ccf;--skin-accent-2:#e84e8a;
  --skin-header:#315ccf;--skin-header-text:#fff;--skin-shell:#272c49;--skin-shell-text:#fff;
  --skin-line:#202337;--skin-shadow:7px 7px 0 #f0ba3e;
  --skin-pattern:radial-gradient(circle at 10px 10px,rgba(49,92,207,.11) 0 3px,transparent 3.5px),radial-gradient(circle at 25px 25px,rgba(240,91,71,.1) 0 3px,transparent 3.5px);
}
html[data-g42-theme="wordduel"]{
  --skin-bg:#f6df36;--skin-ink:#251542;--skin-panel:#fff9e7;--skin-panel-alt:#a82f91;
  --skin-action:#e94b35;--skin-action-text:#fff;--skin-accent:#5e2a90;--skin-accent-2:#e94b35;
  --skin-header:#5e2a90;--skin-header-text:#fff;--skin-shell:#351b56;--skin-shell-text:#fff;
  --skin-line:#251542;--skin-shadow:7px 7px 0 #e94b35;
  --skin-pattern:linear-gradient(135deg,rgba(255,255,255,.16) 25%,transparent 25% 75%,rgba(94,42,144,.1) 75%);
}
html[data-g42-theme="cityhunt"]{
  --skin-bg:#172536;--skin-ink:#f5eed8;--skin-panel:#23384d;--skin-panel-alt:#29455d;
  --skin-action:#b83731;--skin-action-text:#fff;--skin-accent:#efc14c;--skin-accent-2:#e8663d;
  --skin-header:#101b29;--skin-header-text:#fff8dc;--skin-shell:#0d1723;--skin-shell-text:#fff8dc;
  --skin-line:#efc14c;--skin-shadow:6px 7px 0 #09121d;
  --skin-pattern:linear-gradient(32deg,transparent 47%,rgba(239,193,76,.08) 48% 50%,transparent 51%),linear-gradient(112deg,transparent 47%,rgba(184,55,49,.07) 48% 50%,transparent 51%);
}
html[data-g42-theme="monster"]{
  --skin-bg:#31194e;--skin-ink:#fff8e7;--skin-panel:#482466;--skin-panel-alt:#573071;
  --skin-action:#f27b31;--skin-action-text:#241331;--skin-accent:#a7d942;--skin-accent-2:#ff7d9f;
  --skin-header:#241331;--skin-header-text:#fff;--skin-shell:#21112f;--skin-shell-text:#fff;
  --skin-line:#a7d942;--skin-shadow:7px 7px 0 #1b0b29;
  --skin-pattern:radial-gradient(circle at 8px 8px,rgba(167,217,66,.13) 0 4px,transparent 4.5px),radial-gradient(circle at 26px 24px,rgba(255,125,159,.11) 0 6px,transparent 6.5px);
}
html[data-g42-theme="agents"]{
  --skin-bg:#d9c9a7;--skin-ink:#252522;--skin-panel:#f5eddc;--skin-panel-alt:#e9dec6;
  --skin-action:#a6352f;--skin-action-text:#fff;--skin-accent:#24637b;--skin-accent-2:#a6352f;
  --skin-header:#243039;--skin-header-text:#f8f0df;--skin-shell:#20282e;--skin-shell-text:#f8f0df;
  --skin-line:#343b3c;--skin-shadow:6px 7px 0 #ab9875;
  --skin-pattern:repeating-linear-gradient(0deg,rgba(44,52,54,.035) 0 1px,transparent 1px 6px),radial-gradient(circle at 84% 20%,rgba(166,53,47,.1),transparent 18rem);
}
html[data-g42-theme="character"]{
  --skin-bg:#f4cb3e;--skin-ink:#342044;--skin-panel:#fff8d8;--skin-panel-alt:#eac6e9;
  --skin-action:#e05d42;--skin-action-text:#fff;--skin-accent:#286f91;--skin-accent-2:#9a348c;
  --skin-header:#9a348c;--skin-header-text:#fff;--skin-shell:#4a245d;--skin-shell-text:#fff;
  --skin-line:#342044;--skin-shadow:7px 7px 0 #e05d42;
  --skin-pattern:radial-gradient(circle at 12px 12px,rgba(154,52,140,.12) 0 5px,transparent 5.5px),radial-gradient(circle at 34px 26px,rgba(40,111,145,.1) 0 8px,transparent 8.5px);
}
html[data-g42-theme="creative"]{
  --skin-bg:#edf0f2;--skin-ink:#202743;--skin-panel:#fff;--skin-panel-alt:#dbecef;
  --skin-action:#ee493c;--skin-action-text:#fff;--skin-accent:#315bb7;--skin-accent-2:#7d3f98;
  --skin-header:#7d3f98;--skin-header-text:#fff;--skin-shell:#28325f;--skin-shell-text:#fff;
  --skin-line:#202743;--skin-shadow:7px 7px 0 #f2c43d;
  --skin-pattern:linear-gradient(30deg,transparent 45%,rgba(238,73,60,.07) 46% 51%,transparent 52%),linear-gradient(150deg,transparent 45%,rgba(49,91,183,.07) 46% 51%,transparent 52%);
}
html[data-g42-theme="islands"]{
  --skin-bg:#e8d4a5;--skin-ink:#302b20;--skin-panel:#fff2cf;--skin-panel-alt:#cfe0c3;
  --skin-action:#b45136;--skin-action-text:#fff9e8;--skin-accent:#26737b;--skin-accent-2:#a64d32;
  --skin-header:#305e45;--skin-header-text:#fff6d7;--skin-shell:#264837;--skin-shell-text:#fff6d7;
  --skin-line:#5f563a;--skin-shadow:7px 7px 0 #b59b68;
  --skin-pattern:linear-gradient(30deg,rgba(38,115,123,.06) 12%,transparent 12.5% 87%,rgba(38,115,123,.06) 87.5%),linear-gradient(150deg,rgba(180,81,54,.05) 12%,transparent 12.5% 87%,rgba(180,81,54,.05) 87.5%);
}
html[data-g42-theme="quizshow"]{
  --skin-bg:#171824;--skin-ink:#fff8df;--skin-panel:#27293b;--skin-panel-alt:#33354c;
  --skin-action:#e85b3f;--skin-action-text:#fff;--skin-accent:#f1bd3b;--skin-accent-2:#46aeba;
  --skin-header:#101118;--skin-header-text:#fff8df;--skin-shell:#0e0f16;--skin-shell-text:#fff8df;
  --skin-line:#f1bd3b;--skin-shadow:7px 7px 0 #090a0f;
  --skin-pattern:radial-gradient(circle at 20% 12%,rgba(70,174,186,.13),transparent 20rem),linear-gradient(120deg,transparent 45%,rgba(232,91,63,.07) 46% 54%,transparent 55%);
}
html[data-g42-theme="playroom"]{
  --skin-bg:#cfe9df;--skin-ink:#242a42;--skin-panel:#fff9e8;--skin-panel-alt:#82c9c0;
  --skin-action:#e85f4d;--skin-action-text:#fff;--skin-accent:#315da8;--skin-accent-2:#e85f4d;
  --skin-header:#315da8;--skin-header-text:#fff;--skin-shell:#253b70;--skin-shell-text:#fff;
  --skin-line:#242a42;--skin-shadow:7px 7px 0 #e3b53c;
  --skin-pattern:radial-gradient(circle at 10px 10px,rgba(49,93,168,.09) 0 4px,transparent 4.5px),linear-gradient(45deg,transparent 48%,rgba(232,95,77,.06) 49% 51%,transparent 52%);
}
html[data-g42-theme="afterhours"]{
  --skin-bg:#08090c;--skin-ink:#f8f8f2;--skin-panel:#151821;--skin-panel-alt:#202532;
  --skin-action:#ee4e91;--skin-action-text:#fff;--skin-accent:#3fd4c6;--skin-accent-2:#e8e94e;
  --skin-header:#08090c;--skin-header-text:#fff;--skin-shell:#0b0d12;--skin-shell-text:#fff;
  --skin-line:#3fd4c6;--skin-shadow:6px 7px 0 #ee4e91;
  --skin-pattern:linear-gradient(135deg,transparent 46%,rgba(63,212,198,.055) 47% 49%,transparent 50%),radial-gradient(circle at 85% 15%,rgba(238,78,145,.12),transparent 20rem);
}
html[data-g42-theme="pubnight"]{
  --skin-bg:#25382e;--skin-ink:#f4e5c5;--skin-panel:#354a3e;--skin-panel-alt:#4c302c;
  --skin-action:#a94935;--skin-action-text:#fff4da;--skin-accent:#dfa842;--skin-accent-2:#d87b45;
  --skin-header:#3b251e;--skin-header-text:#fff0cf;--skin-shell:#291b17;--skin-shell-text:#fff0cf;
  --skin-line:#c99846;--skin-shadow:7px 7px 0 #17231c;
  --skin-pattern:repeating-linear-gradient(92deg,rgba(255,255,255,.025) 0 2px,transparent 2px 38px),radial-gradient(circle at 15% 18%,rgba(223,168,66,.08),transparent 18rem);
}
html[data-g42-theme="fairground"]{
  --skin-bg:#f5e4bd;--skin-ink:#27314a;--skin-panel:#fff8e8;--skin-panel-alt:#d8e7e6;
  --skin-action:#d84a3b;--skin-action-text:#fff;--skin-accent:#267a88;--skin-accent-2:#d84a3b;
  --skin-header:#267a88;--skin-header-text:#fff;--skin-shell:#204b5a;--skin-shell-text:#fff;
  --skin-line:#27314a;--skin-shadow:7px 7px 0 #e6ae35;
  --skin-pattern:repeating-linear-gradient(135deg,rgba(216,74,59,.07) 0 10px,transparent 10px 22px),linear-gradient(rgba(255,255,255,.2),rgba(255,255,255,.2));
}
html[data-g42-theme="confetti"]{
  --skin-bg:#f9e8e1;--skin-ink:#2b2941;--skin-panel:#fffdfa;--skin-panel-alt:#d9efe5;
  --skin-action:#e55d55;--skin-action-text:#fff;--skin-accent:#5968b2;--skin-accent-2:#ce4e91;
  --skin-header:#5968b2;--skin-header-text:#fff;--skin-shell:#34375e;--skin-shell-text:#fff;
  --skin-line:#2b2941;--skin-shadow:7px 7px 0 #f2bd42;
  --skin-pattern:linear-gradient(25deg,transparent 47%,rgba(89,104,178,.1) 48% 51%,transparent 52%),radial-gradient(circle at 22px 10px,rgba(229,93,85,.11) 0 3px,transparent 3.5px);
}

html[data-g42-theme] body{color:var(--skin-ink);background-color:var(--skin-bg);background-image:var(--skin-pattern);background-size:32px 32px,32px 32px}
html[data-g42-theme] .masthead{color:var(--skin-header-text);background:var(--skin-header);border-bottom:3px solid var(--skin-accent)}
html[data-g42-theme] .masthead:after{color:color-mix(in srgb,var(--skin-accent) 9%,transparent)}
html[data-g42-theme] .masthead img{filter:drop-shadow(0 0 14px color-mix(in srgb,var(--skin-accent) 35%,transparent))}
html[data-g42-theme] .masthead .eyebrow{color:var(--skin-accent-2)}
html[data-g42-theme] .card,
html[data-g42-theme] .game-card{border-color:var(--skin-line);color:var(--skin-ink);background:var(--skin-panel);box-shadow:var(--skin-shadow);transform:none}
html[data-g42-theme] .rooms-card{background:var(--skin-panel-alt)}
html[data-g42-theme] .action-card{color:var(--skin-action-text);background:var(--skin-action)}
html[data-g42-theme] .action-card .primary,
html[data-g42-theme] .room-actions .primary{border-color:var(--skin-line);color:var(--skin-action-text);background:var(--skin-action)}
html[data-g42-theme] .compact-rooms .room-tile{border-color:var(--skin-line)}
html[data-g42-theme] .compact-rooms .room-tile button{color:var(--skin-header-text);background:var(--skin-header)}
html[data-g42-theme] .how{color:var(--skin-header-text);background:var(--skin-header)}
html[data-g42-theme] .catalog-section{background:var(--skin-bg)}
html[data-g42-theme] .room-view{color:var(--skin-ink);background:var(--skin-bg)}
html[data-g42-theme] .room-view .room-top,
html[data-g42-theme] .room-view .member{border-color:color-mix(in srgb,var(--skin-line) 45%,transparent);border-left-color:var(--member-color,var(--skin-accent))}
html[data-g42-theme] .room-view .room-grid>aside{border-color:var(--skin-line);background:var(--skin-panel)}
html[data-g42-theme] .room-view .vote-card{color:var(--skin-ink);background:var(--skin-panel);box-shadow:var(--skin-shadow)}
html[data-g42-theme] .room-view button{color:inherit;border-color:var(--skin-line)}
html[data-g42-theme] .shellbar{border-color:var(--skin-line);color:var(--skin-shell-text);background:var(--skin-shell);box-shadow:0 8px 30px color-mix(in srgb,var(--skin-accent) 22%,transparent)}
html[data-g42-theme] .shell-player{border-color:color-mix(in srgb,var(--player-color,#68737D) 78%,var(--skin-line))}
html[data-g42-theme] .shellbar #shellMenu button{border-color:color-mix(in srgb,var(--skin-line) 60%,transparent);color:var(--skin-shell-text)}
html[data-g42-theme] #shellbar .shell-player[data-player-color]{background:var(--player-color);border:2px solid color-mix(in srgb,var(--player-color) 65%,#fff);box-shadow:0 2px 3px #0002}
html[data-g42-theme] #shellbar #shellMenu .shell-player-contact{color:#fff;font-weight:900}
html[data-g42-theme] #shellbar #shellMenu .shell-player:is([data-player-color="#EF6C00"],[data-player-color="#C9A600"],[data-player-color="#76A900"],[data-player-color="#F05A9D"],[data-player-color="#F2F2EE"]) .shell-player-contact{color:#171c24}
html[data-g42-theme] #shellbar .host-crown{color:inherit}
html[data-g42-theme] #shellbar .presence-dot{box-shadow:0 0 0 2px #fff,0 0 0 3px #172033}
html[data-g42-theme] #shellbar #shellRoomChat{display:flex;align-items:center;gap:.45rem;min-width:0;max-width:100%;padding:0;border:0;background:transparent;cursor:pointer}
html[data-g42-theme] #shellbar #shellRoomChat:disabled{cursor:default;opacity:1}
html[data-g42-theme] #shellbar #shellRoomChat #shellRoomName{margin:0;line-height:1;align-self:center}
html[data-g42-theme] .private-chat,
html[data-g42-theme] .message-notice{border-color:var(--skin-line);color:var(--skin-shell-text);background:var(--skin-shell);box-shadow:0 12px 32px color-mix(in srgb,var(--skin-ink) 26%,transparent)}
html[data-g42-theme] .private-chat>header,
html[data-g42-theme] .private-chat form{border-color:color-mix(in srgb,var(--skin-line) 35%,transparent)}
html[data-g42-theme] .private-chat>header p,
html[data-g42-theme] .message-notice strong,
html[data-g42-theme] .chat-message>strong{color:var(--skin-accent-2)}
html[data-g42-theme] .private-chat textarea{border-color:color-mix(in srgb,var(--skin-line) 55%,transparent);color:var(--skin-ink);background:var(--skin-panel)}
html[data-g42-theme] .private-chat form button{border-color:var(--skin-line);color:var(--skin-action-text);background:var(--skin-action)}
html[data-g42-theme] .chat-message{border-color:color-mix(in srgb,var(--skin-line) 60%,transparent);color:var(--skin-ink);background:var(--skin-panel-alt)}
html[data-g42-theme] .chat-message.mine{border-color:var(--skin-accent-2);background:color-mix(in srgb,var(--skin-accent-2) 12%,var(--skin-panel))}
html[data-g42-theme] .chat-message.note{border-color:var(--skin-accent-2);background:color-mix(in srgb,var(--skin-accent) 10%,var(--skin-panel))}
html[data-g42-theme] .shell-dialog,
html[data-g42-theme] .join-dialog{border-color:var(--skin-line);color:var(--skin-ink);background:var(--skin-panel);box-shadow:var(--skin-shadow)}

html[data-g42-theme="tabletop"] .card,
html[data-g42-theme="tabletop"] .game-card{border-radius:.45rem;box-shadow:6px 7px 0 #0b2118,0 0 0 1px rgba(255,255,255,.06) inset}
html[data-g42-theme="tabletop"] .masthead{background-image:repeating-linear-gradient(90deg,transparent 0 34px,rgba(255,230,184,.04) 35px,transparent 37px)}
html[data-g42-theme="party"] .card:nth-child(odd),
html[data-g42-theme="party"] .game-card:nth-child(odd){transform:rotate(-.45deg)}
html[data-g42-theme="party"] .card:nth-child(even),
html[data-g42-theme="party"] .game-card:nth-child(even){transform:rotate(.45deg)}
html[data-g42-theme="wordduel"] .card,
html[data-g42-theme="wordduel"] .game-card{border-radius:.2rem;border-width:3px}
html[data-g42-theme="cityhunt"] .masthead{background-image:linear-gradient(115deg,transparent 20%,rgba(239,193,76,.08) 20.5% 21%,transparent 21.5% 70%,rgba(184,55,49,.1) 70.5% 71%,transparent 71.5%)}
html[data-g42-theme="cityhunt"] .card,
html[data-g42-theme="cityhunt"] .game-card{border-radius:.3rem}
html[data-g42-theme="monster"] .card,
html[data-g42-theme="monster"] .game-card{border-radius:1.35rem .55rem 1.35rem .55rem}
html[data-g42-theme="agents"] .card,
html[data-g42-theme="agents"] .game-card{border-width:1px;border-radius:.25rem;background-image:repeating-linear-gradient(0deg,transparent 0 23px,rgba(36,99,123,.055) 24px)}
html[data-g42-theme="character"] .card,
html[data-g42-theme="character"] .game-card{border-radius:1.1rem}
html[data-g42-theme="creative"] .card:nth-child(odd),
html[data-g42-theme="creative"] .game-card:nth-child(odd){border-radius:1.2rem .25rem;transform:rotate(-.25deg)}
html[data-g42-theme="creative"] .card:nth-child(even),
html[data-g42-theme="creative"] .game-card:nth-child(even){border-radius:.25rem 1.2rem;transform:rotate(.25deg)}
html[data-g42-theme="islands"] .card,
html[data-g42-theme="islands"] .game-card{border-width:1px;border-radius:.65rem;box-shadow:7px 7px 0 #b59b68,0 0 0 2px rgba(255,255,255,.2) inset}
html[data-g42-theme="quizshow"] .card,
html[data-g42-theme="quizshow"] .game-card{border-radius:.25rem;border-width:3px}
html[data-g42-theme="playroom"] .card,
html[data-g42-theme="playroom"] .game-card{border-radius:1rem .35rem}
html[data-g42-theme="afterhours"] .card,
html[data-g42-theme="afterhours"] .game-card{border-color:var(--skin-accent);border-radius:.35rem;box-shadow:6px 7px 0 #ee4e91,0 0 20px rgba(63,212,198,.08)}
html[data-g42-theme="pubnight"] .card,
html[data-g42-theme="pubnight"] .game-card{border-radius:.45rem;box-shadow:7px 7px 0 #17231c,0 0 0 1px rgba(255,244,218,.06) inset}
html[data-g42-theme="fairground"] .card,
html[data-g42-theme="fairground"] .game-card{border-radius:.2rem 1rem .2rem 1rem}
html[data-g42-theme="confetti"] .card:nth-child(odd),
html[data-g42-theme="confetti"] .game-card:nth-child(odd){border-radius:1rem;transform:rotate(-.2deg)}
html[data-g42-theme="confetti"] .card:nth-child(even),
html[data-g42-theme="confetti"] .game-card:nth-child(even){border-radius:1rem;transform:rotate(.2deg)}

html[data-g42-theme="spielbox"] .masthead{background-image:linear-gradient(115deg,#009cf0,#0064e8 65%);border-bottom:5px solid #ff931f}
html[data-g42-theme="spielbox"] .masthead img{filter:none}
html[data-g42-theme="spielbox"] .masthead .eyebrow{color:#fff0b8}
html[data-g42-theme="spielbox"] .card,
html[data-g42-theme="spielbox"] .game-card,
html[data-g42-theme="spielbox"] .vote-card{border-radius:1.1rem;border-width:2px}
html[data-g42-theme="spielbox"] .card:first-child{box-shadow:5px 6px 0 #ffbd35}
html[data-g42-theme="spielbox"] .rooms-card{box-shadow:5px 6px 0 #69cfb1}
html[data-g42-theme="spielbox"] .shellbar{box-shadow:0 5px 0 #0064e830}
.theme-choice[data-platform-skin="spielbox"]{--preview-bg:#fff8e9;--preview-a:#0064e8;--preview-b:#ff931f;--preview-shadow:#b9a2ee}

/* Shared badge-inspired geometry. Themes retain their own palette and decoration. */
html[data-g42-theme]{--platform-radius:1rem;--platform-control-radius:.65rem}
html[data-g42-theme] body :is(.card,.game-card,.vote-card,.room-grid>aside){border-radius:var(--platform-radius)!important}
html[data-g42-theme] :is(.shell-dialog,.join-dialog,.private-chat,.message-notice,.volume-popover){border-radius:var(--platform-radius)}
html[data-g42-theme] :is(.mobile-home-tabs,.mobile-room-tabs){border-radius:var(--platform-radius)}
html[data-g42-theme] :is(.mobile-home-tabs button,.mobile-room-tabs button,.random-room-name){border-radius:var(--platform-control-radius)}
html[data-g42-theme] :is(.primary,.ink,.room-actions button,.room-top>button,.room-tile button,.vote-card button,.home-tabs button,.room-tabs button,.theme-choice,.theme-preview,.menu-player-colors button,.chat-message,.private-chat textarea,.private-chat form button){border-radius:var(--platform-control-radius)}
html[data-g42-theme] :is(.game-card.has-art,.vote-card.has-art){color:#fff;background:#172033}
html[data-g42-theme] .vote-card .start-game{border-radius:50%}
html[data-g42-theme] #shellbar{isolation:isolate;border:0;background:transparent;box-shadow:none;border-radius:0;overflow:visible}
html[data-g42-theme] #shellbar::before{content:'';position:absolute;z-index:-1;inset:0;pointer-events:none;border:1px solid color-mix(in srgb,var(--skin-line) 32%,transparent);border-radius:var(--platform-radius);background:var(--skin-shell);box-shadow:inset 0 1px 0 #ffffff80,0 5px 18px #0002;transform:scaleX(0);transform-origin:left center;opacity:0;transition:transform .28s ease,opacity .16s ease}
html[data-g42-theme] #shellbar.open::before{transform:scaleX(1);opacity:1}
html[data-g42-theme] #shellbar .shell-logo{background:transparent;border:0;box-shadow:none;border-radius:0;overflow:visible}
html[data-g42-theme] #shellbar .shell-logo img{object-fit:contain}
html[data-g42-theme] #shellbar .shell-logo:focus-visible{outline:2px solid var(--skin-accent);outline-offset:3px;border-radius:.65rem}
html[data-g42-theme] #shellbar .shell-player{border-radius:var(--platform-control-radius);overflow:hidden}
html[data-g42-theme] #shellbar #shellMenu button{border-radius:var(--platform-control-radius)}
html[data-g42-theme] #shellbar #shellMenu .shell-icon-button{width:2.4rem;height:2.4rem;min-width:2.4rem;padding:.5rem}
html[data-g42-theme] #shellbar .shell-icon-button svg{stroke-linecap:round;stroke-linejoin:round}
html[data-g42-theme] #shellbar .shell-settings{position:static}
html[data-g42-theme] #shellbar .shell-settings-toggle{border-color:transparent;background:color-mix(in srgb,var(--skin-accent) 9%,var(--skin-shell))}
html[data-g42-theme] #shellbar .shell-settings-toggle[aria-expanded="true"]{background:color-mix(in srgb,var(--skin-accent) 18%,var(--skin-shell));border-color:var(--skin-accent)}
.shell-settings-panel{position:absolute;z-index:35;top:calc(100% + .6rem);right:0;display:grid;grid-template-columns:1fr;align-items:stretch;justify-items:stretch;gap:.35rem;width:min(18rem,calc(100vw - 1.5rem));max-height:calc(100dvh - 5.5rem);overflow:auto;padding:.65rem;border:1px solid var(--skin-line);border-radius:var(--platform-radius);background:var(--skin-shell);color:var(--skin-shell-text);box-shadow:0 8px 24px #0003;animation:settings-reveal .16s ease-out}
.shell-settings-panel[hidden]{display:none}
html[data-g42-theme] #shellbar #shellMenu .shell-settings-panel .shell-settings-item{display:grid;grid-template-columns:1.5rem minmax(0,1fr);place-items:center start;width:100%;height:auto;min-width:0;min-height:2.5rem;padding:.5rem .65rem;gap:.65rem;border-color:color-mix(in srgb,var(--skin-shell-text) 18%,transparent);background:color-mix(in srgb,var(--skin-shell-text) 5%,transparent);font:800 .74rem/1.2 Arial,sans-serif;text-align:left}
html[data-g42-theme] #shellbar #shellMenu .shell-settings-panel .shell-settings-item:hover,html[data-g42-theme] #shellbar #shellMenu .shell-settings-panel .shell-settings-item:focus-visible{background:color-mix(in srgb,var(--skin-accent) 14%,var(--skin-shell));border-color:var(--skin-accent)}
.shell-control-label{min-width:0;white-space:normal}
.shell-settings-panel .shell-audio-control{display:grid;grid-template-columns:1fr;align-items:stretch;gap:.35rem}
.shell-settings-panel .volume-popover{position:static;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));opacity:1;visibility:visible;transform:none!important;pointer-events:auto;box-shadow:none;border-color:color-mix(in srgb,var(--skin-shell-text) 16%,transparent);background:color-mix(in srgb,var(--skin-shell-text) 4%,transparent);transition:none}
.shell-settings-panel .volume-popover::before{display:none}
.shell-settings-panel #fullscreen{margin-top:.15rem;border-top-width:2px}
.shell-settings-panel .shell-exit-button{color:#ff9485}
@supports (backdrop-filter:blur(16px)) or (-webkit-backdrop-filter:blur(16px)){
  html[data-g42-theme] #shellbar::before,
  html[data-g42-theme] .shell-settings-panel{background:linear-gradient(135deg,#ffffff24,transparent 55%),color-mix(in srgb,var(--skin-shell) 76%,transparent);backdrop-filter:blur(16px) saturate(135%);-webkit-backdrop-filter:blur(16px) saturate(135%)}
}

/* The voting lobby belongs to the same blue/orange card world as the landing page. */
html[data-g42-theme="spielbox"] .room-view{background-color:var(--skin-bg);background-image:var(--skin-pattern);background-size:32px 32px}
html[data-g42-theme="spielbox"] .room-view .room-top{padding:1.5rem;border:2px solid #152036;border-bottom:5px solid #ff931f;border-radius:1.2rem;background:linear-gradient(115deg,#009cf0,#0064e8 70%);color:#fff;box-shadow:5px 6px 0 #bfd6f5}
html[data-g42-theme="spielbox"] .room-top .eyebrow{color:#fff0b8}
html[data-g42-theme] .room-view{padding-top:max(.75rem,env(safe-area-inset-top))}
html[data-g42-theme] .room-view .room-top{position:relative;min-height:10rem;padding:1.2rem 1.2rem 1.2rem 5rem}
html[data-g42-theme] .room-view .room-title{font-size:clamp(2rem,5vw,4rem);line-height:1;max-width:18ch}
.room-top>.header-chips{inset:.65rem .65rem .65rem auto;width:42%;min-width:90px}
@media(max-width:720px){
 html[data-g42-theme] .room-view .room-top{padding:1rem 1rem 1rem 4.5rem;min-height:11rem}
 html[data-g42-theme] .room-view .room-title{font-size:clamp(1.7rem,8vw,2.6rem);overflow-wrap:anywhere}
 .room-top>.header-chips{inset:auto .4rem .3rem auto;height:76px;width:90px}
 .header-chips .poker-chip{width:72px;height:72px}
}
html[data-g42-theme="spielbox"] .room-view .room-grid>aside{background:#daf5eb;box-shadow:5px 6px 0 #69cfb1}
html[data-g42-theme="spielbox"] .room-view .vote-card{padding:1.3rem;gap:.65rem;border:2px solid #152036;background:linear-gradient(150deg,#fffefa,#eaf4ff)}
html[data-g42-theme="spielbox"] .room-view .vote-card:nth-child(even){background:linear-gradient(150deg,#fffefa,#fff0d8)}
html[data-g42-theme="spielbox"] .vote-card:before{display:none}
html[data-g42-theme="spielbox"] .game-card,
html[data-g42-theme="spielbox"] .room-view .vote-card.is-playable{box-shadow:5px 6px 0 color-mix(in srgb,var(--card-shadow-color,#1565C0) 72%,#fff)}
html[data-g42-theme="spielbox"] .room-view .vote-card.is-unavailable,
html[data-g42-theme="spielbox"] .room-view .vote-card.is-unavailable:hover{box-shadow:none}
html[data-g42-theme="spielbox"] :is(.game-card,.vote-card):nth-child(7n+1){--card-shadow-color:#D32F2F}
html[data-g42-theme="spielbox"] :is(.game-card,.vote-card):nth-child(7n+2){--card-shadow-color:#EF6C00}
html[data-g42-theme="spielbox"] :is(.game-card,.vote-card):nth-child(7n+3){--card-shadow-color:#C9A600}
html[data-g42-theme="spielbox"] :is(.game-card,.vote-card):nth-child(7n+4){--card-shadow-color:#16823A}
html[data-g42-theme="spielbox"] :is(.game-card,.vote-card):nth-child(7n+5){--card-shadow-color:#008C95}
html[data-g42-theme="spielbox"] :is(.game-card,.vote-card):nth-child(7n+6){--card-shadow-color:#1565C0}
html[data-g42-theme="spielbox"] :is(.game-card,.vote-card):nth-child(7n){--card-shadow-color:#9C27B0}
html[data-g42-theme="spielbox"] .vote-card .symbol{color:#0064e8;font:900 2.5rem/1 Arial,sans-serif;margin-top:.5rem}
html[data-g42-theme="spielbox"] .vote-card:nth-child(even) .symbol{color:#c65300}
html[data-g42-theme="spielbox"] .vote-card h3{margin:.25rem 0;font-size:1.35rem}
html[data-g42-theme="spielbox"] .vote-card p{line-height:1.45;margin:.25rem 0}
html[data-g42-theme="spielbox"] .vote-card .vote-actions button{background:#e4efff;color:#124997;border:1px solid #0064e8;font:800 .85rem/1.3 Arial,sans-serif;min-height:2.75rem}
html[data-g42-theme="spielbox"] .vote-card .vote-actions .start-game{background:#ff931f;color:#152036;border:2px solid #152036}
html[data-g42-theme="spielbox"] .vote-card .vote-actions button:disabled{background:#e5e6e9;color:#666b75;border-color:#b8bdc6;cursor:not-allowed}
html[data-g42-theme="spielbox"] .vote-card .vote-actions button:not(:disabled):hover{filter:brightness(.94)}
html[data-g42-theme="spielbox"] .vote-chip{border-radius:.6rem;border-color:color-mix(in srgb,var(--chip) 70%,#152036);border-left-color:var(--chip)}
html[data-g42-theme="spielbox"] .room-view .room-actions button{background:#fffefa;color:#152036}
@keyframes settings-reveal{from{opacity:0;transform:translateY(-.3rem)}to{opacity:1;transform:translateY(0)}}
@media(max-width:720px){
  html[data-g42-theme] #shellbar.open #shellMenu{grid-template-columns:minmax(0,1fr) max-content;grid-template-rows:2.6rem 2.4rem}
  html[data-g42-theme] #shellbar:not(.has-room) .shell-room{display:flex;grid-column:1;grid-row:1}
  html[data-g42-theme] #shellbar:not(.has-room) .shell-settings{grid-column:2;grid-row:1}
  html[data-g42-theme] #shellbar:not(.has-room) .shell-players{grid-column:1/-1;grid-row:2}
  .shell-settings-panel{right:-.25rem;width:min(18rem,calc(100vw - 1rem));max-height:calc(100dvh - 7.5rem)}
}
@media(prefers-reduced-motion:reduce){.shell-settings-panel{animation:none}}

.theme-dialog{width:min(54rem,calc(100% - 2rem));max-height:calc(100dvh - 2rem)}
.theme-dialog>div{max-height:calc(100dvh - 2rem);overflow:auto}
.theme-group-label{margin:1.15rem 0 .55rem;font:900 .7rem Arial,sans-serif;text-transform:uppercase;letter-spacing:.14em;color:var(--skin-accent-2)}
.theme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}
.theme-grid-skins{grid-template-columns:repeat(5,minmax(0,1fr))}
.theme-choice{display:grid;gap:.3rem;min-width:0;padding:.4rem;border:2px solid transparent;background:transparent;color:inherit;text-align:left}
.theme-choice:hover,.theme-choice:focus-visible{border-color:#777;outline:none}
.theme-choice[aria-pressed="true"]{border-color:var(--skin-accent);box-shadow:3px 3px 0 color-mix(in srgb,var(--skin-accent) 30%,transparent)}
.theme-choice strong{font:900 .7rem Arial,sans-serif;text-transform:uppercase;overflow-wrap:anywhere}
.theme-choice small{font-size:.68rem;line-height:1.3;opacity:.68}
.theme-preview{display:grid;grid-template-columns:1fr 1fr;height:2.65rem;border:1px solid #555;overflow:hidden;background:var(--preview-bg)}
.theme-preview:before,.theme-preview:after{content:'';margin:.45rem .15rem .45rem .45rem;background:var(--preview-a);box-shadow:2px 2px 0 var(--preview-shadow)}
.theme-preview:after{margin:.45rem .45rem .45rem .15rem;background:var(--preview-b)}
.theme-choice[data-color-mode="system"]{--preview-bg:linear-gradient(90deg,#fff 50%,#020407 50%);--preview-a:#008cff;--preview-b:#ff7900;--preview-shadow:#557083}
.theme-choice[data-color-mode="light"]{--preview-bg:#fff;--preview-a:#e9f5ff;--preview-b:#ff7a18;--preview-shadow:#b9d9ef}
.theme-choice[data-color-mode="dark"]{--preview-bg:#020407;--preview-a:#00a9ff;--preview-b:#ff7900;--preview-shadow:#10253c}
.theme-choice[data-platform-skin="tabletop"]{--preview-bg:#173a2e;--preview-a:#56351f;--preview-b:#e0b95d;--preview-shadow:#0b2118}
.theme-choice[data-platform-skin="party"]{--preview-bg:#fff4d9;--preview-a:#315ccf;--preview-b:#f05b47;--preview-shadow:#f0ba3e}
.theme-choice[data-platform-skin="wordduel"]{--preview-bg:#f6df36;--preview-a:#5e2a90;--preview-b:#e94b35;--preview-shadow:#251542}
.theme-choice[data-platform-skin="cityhunt"]{--preview-bg:#172536;--preview-a:#efc14c;--preview-b:#b83731;--preview-shadow:#09121d}
.theme-choice[data-platform-skin="monster"]{--preview-bg:#31194e;--preview-a:#a7d942;--preview-b:#f27b31;--preview-shadow:#1b0b29}
.theme-choice[data-platform-skin="agents"]{--preview-bg:#d9c9a7;--preview-a:#24637b;--preview-b:#a6352f;--preview-shadow:#ab9875}
.theme-choice[data-platform-skin="character"]{--preview-bg:#f4cb3e;--preview-a:#9a348c;--preview-b:#286f91;--preview-shadow:#e05d42}
.theme-choice[data-platform-skin="creative"]{--preview-bg:#edf0f2;--preview-a:#315bb7;--preview-b:#ee493c;--preview-shadow:#f2c43d}
.theme-choice[data-platform-skin="islands"]{--preview-bg:#e8d4a5;--preview-a:#305e45;--preview-b:#b45136;--preview-shadow:#b59b68}
.theme-choice[data-platform-skin="quizshow"]{--preview-bg:#171824;--preview-a:#f1bd3b;--preview-b:#e85b3f;--preview-shadow:#090a0f}
.theme-choice[data-platform-skin="playroom"]{--preview-bg:#cfe9df;--preview-a:#315da8;--preview-b:#e85f4d;--preview-shadow:#e3b53c}
.theme-choice[data-platform-skin="afterhours"]{--preview-bg:#08090c;--preview-a:#3fd4c6;--preview-b:#ee4e91;--preview-shadow:#e8e94e}
.theme-choice[data-platform-skin="pubnight"]{--preview-bg:#25382e;--preview-a:#dfa842;--preview-b:#a94935;--preview-shadow:#17231c}
.theme-choice[data-platform-skin="fairground"]{--preview-bg:#f5e4bd;--preview-a:#267a88;--preview-b:#d84a3b;--preview-shadow:#e6ae35}
.theme-choice[data-platform-skin="confetti"]{--preview-bg:#f9e8e1;--preview-a:#5968b2;--preview-b:#e55d55;--preview-shadow:#f2bd42}
@media(max-width:720px){.theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.theme-grid-skins{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-choice{padding:.35rem}.theme-choice strong{font-size:.58rem;overflow-wrap:normal;white-space:nowrap}}

/* Logo Pop: a brighter interpretation of the orange/blue Games42 badge. */
html[data-g42-theme="logopop"]{
  --skin-bg:#fff0bf;--skin-ink:#0b1735;--skin-panel:#fff9e9;--skin-panel-alt:#075ee8;
  --skin-action:#ff5b00;--skin-action-text:#fff;--skin-accent:#0767f2;--skin-accent-2:#ffca22;
  --skin-header:#075ee8;--skin-header-text:#fff;--skin-shell:#071d55;--skin-shell-text:#fff;
  --skin-line:#0a1734;--skin-shadow:7px 8px 0 #e8367d;
  --skin-pattern:radial-gradient(circle at 8% 18%,#ff5b0024 0 2.5rem,transparent 2.6rem),radial-gradient(circle at 92% 30%,#0767f21f 0 4rem,transparent 4.1rem),radial-gradient(circle at 26% 78%,#ef2c7d1b 0 1.7rem,transparent 1.8rem),linear-gradient(135deg,#fff7d9,#ffe7a7);
}
html[data-g42-theme="logopop"] .masthead{border-bottom:.55rem solid #ff7614;background:linear-gradient(130deg,#14bfff 0%,#0875f2 38%,#073bc9 76%,#071d7c 100%);box-shadow:0 .5rem 0 #ffca22}
html[data-g42-theme="logopop"] .masthead::after{color:#ffffff12;transform:rotate(-9deg)}
html[data-g42-theme="logopop"] .masthead .eyebrow{color:#fff39a}
html[data-g42-theme="logopop"] .desk-v2 .card{border-color:#0a1734;box-shadow:7px 8px 0 #e8367d}
html[data-g42-theme="logopop"] .desk-v2 .profile-card{color:#fff;background:linear-gradient(145deg,#ffd32a 0%,#ff8a12 38%,#ff4c00 100%);box-shadow:7px 8px 0 #0767f2}
html[data-g42-theme="logopop"] .desk-v2 .rooms-card{color:#fff;background:linear-gradient(145deg,#12b9ff 0%,#0875f2 42%,#073bc9 100%);box-shadow:7px 8px 0 #ffca22}
html[data-g42-theme="logopop"] .desk-v2 .action-card{color:#fff;background:linear-gradient(145deg,#ffdc31 0%,#ff8a12 38%,#ff4b00 100%);box-shadow:7px 8px 0 #13a6e8}
html[data-g42-theme="logopop"] .desk-v2 :is(.profile-card,.rooms-card,.action-card) :is(input,select){color:inherit;border-color:currentColor}
html[data-g42-theme="logopop"] .desk-v2 .hint{opacity:.84}
html[data-g42-theme="logopop"] .compact-rooms .room-tile{border-color:#ffffffa8}
html[data-g42-theme="logopop"] .compact-rooms .room-tile button,
html[data-g42-theme="logopop"] .action-card .primary{border-color:#0a1734;background:linear-gradient(135deg,#086df2,#073bc9);color:#fff;box-shadow:3px 4px 0 #0a1734}
html[data-g42-theme="logopop"] .room-view{background-color:#fff0bf;background-image:var(--skin-pattern)}
html[data-g42-theme="logopop"] .room-view .room-top{border:.18rem solid #0a1734;border-bottom:.55rem solid #ff6a0a;background:linear-gradient(130deg,#12b9ff,#0767f2 48%,#0733b7);color:#fff;box-shadow:6px 7px 0 #ffca22}
html[data-g42-theme="logopop"] .room-top .eyebrow{color:#fff3a0}
html[data-g42-theme="logopop"] .room-view .room-grid>aside{border-color:#0a1734;color:#fff;background:linear-gradient(145deg,#087ff5,#0649d5 58%,#062b91);box-shadow:6px 7px 0 #ff6a0a}
html[data-g42-theme="logopop"] .room-view .room-grid>aside .member{border-bottom-color:#ffffff5c}
html[data-g42-theme="logopop"] .room-view .room-actions button{border-color:#fff;color:#fff;background:#061f6c}
html[data-g42-theme="logopop"] .room-view .vote-card.is-playable{box-shadow:5px 6px 0 color-mix(in srgb,var(--card-shadow-color,#e8367d) 76%,#fff)}
html[data-g42-theme="logopop"] .room-view .vote-card.is-unavailable,
html[data-g42-theme="logopop"] .room-view .vote-card.is-unavailable:hover{box-shadow:none}
html[data-g42-theme="logopop"] :is(.shell-dialog,.join-dialog){border-color:#061943;color:#fff;background:linear-gradient(145deg,#087cf7,#0648d1 58%,#061f72);box-shadow:8px 9px 0 #ff6410}
html[data-g42-theme="logopop"] :is(.shell-dialog,.join-dialog) .eyebrow{color:#ffe35a}
html[data-g42-theme="logopop"] :is(.shell-dialog,.join-dialog) .dialog-close{color:#fff}
html[data-g42-theme="logopop"] .join-dialog input{color:#fff;border-color:#fff}
html[data-g42-theme="logopop"] :is(.shell-dialog,.join-dialog) .primary{border:2px solid #fff;color:#fff;background:linear-gradient(135deg,#ffd32a,#ff7b0b 48%,#ff4c00);box-shadow:3px 4px 0 #061943}
html[data-g42-theme="logopop"] :is(.shell-dialog,.join-dialog) .danger{border:2px solid #fff;color:#fff;background:linear-gradient(135deg,#ef3f83,#cf175f)}
html[data-g42-theme="logopop"] .private-chat{background:linear-gradient(155deg,#082974,#051943);border-color:#ff9b1f}
html[data-g42-theme="logopop"] .chat-message{color:#0a1734;background:linear-gradient(135deg,#fff7dc,#ffd969)}
html[data-g42-theme="logopop"] .chat-message.mine{color:#fff;background:linear-gradient(135deg,#ff8a12,#ff4c00)}
html[data-g42-theme="logopop"] .private-chat textarea{color:#0a1734;background:#fff9e9}
html[data-g42-theme="logopop"] .mobile-home-tabs,
html[data-g42-theme="logopop"] .mobile-room-tabs{border-color:#0a1734;background:linear-gradient(135deg,#ffd32a,#ff6a0a);box-shadow:4px 5px 0 #0767f2}
html[data-g42-theme="logopop"] .mobile-home-tabs button[aria-selected="true"],
html[data-g42-theme="logopop"] .mobile-room-tabs button[aria-selected="true"]{background:linear-gradient(135deg,#087cf7,#073bc9);color:#fff}
.theme-choice[data-platform-skin="logopop"]{--preview-bg:linear-gradient(135deg,#ffd32a,#ff5200 49%,#12b9ff 51%,#073bc9);--preview-a:#ff7614;--preview-b:#0767f2;--preview-shadow:#e8367d}

/* Shared 42 Games control surface. */
.shellbar.open{width:min(var(--shell-user-width,var(--shell-open-width)),calc(100vw - 1.5rem))}
.shell-pin-toggle,.shell-settings-toggle{opacity:0;pointer-events:none;transform:translateY(-.15rem);transition:opacity .14s ease,transform .14s ease}
.shellbar:is(:hover,.open,:focus-within) :is(.shell-pin-toggle,.shell-settings-toggle){opacity:1;pointer-events:auto;transform:none}
.shellbar.is-pinned .shell-pin-toggle{color:var(--skin-accent-2);background:color-mix(in srgb,var(--skin-accent-2) 16%,transparent)}
.shellbar .shell-settings{display:block;align-self:start;margin-top:.42rem}
html[data-g42-theme] #shellbar #shellMenu .shell-settings-toggle{width:1.3rem;height:1.3rem;min-width:1.3rem;padding:.21rem;border:0;background:transparent;color:color-mix(in srgb,var(--skin-shell-text) 45%,transparent)}
html[data-g42-theme] #shellbar #shellMenu .shell-settings-toggle:is(:hover,:focus-visible,[aria-expanded="true"]){border:0;background:transparent;color:color-mix(in srgb,var(--skin-shell-text) 78%,transparent)}
html[data-g42-theme] #shellbar .shell-settings-toggle svg{width:.84rem;height:.84rem;overflow:visible;transform:rotate(-7deg);filter:drop-shadow(1px 1px 0 color-mix(in srgb,var(--skin-accent-2) 48%,transparent))}
html[data-g42-theme] #shellbar .shell-settings-toggle .comic-gear path{fill:currentColor;stroke:none}
html[data-g42-theme] #shellbar .shell-settings-toggle .comic-gear circle{fill:var(--skin-shell);stroke:currentColor;stroke-width:1.6}
.shell-resize-handle{position:absolute;z-index:38;top:.55rem;right:-.3rem;bottom:.55rem;width:.7rem;cursor:ew-resize;touch-action:none;opacity:0}
.shellbar.open .shell-resize-handle{opacity:1}
.shell-resize-handle::after{content:'';position:absolute;top:25%;bottom:25%;left:.27rem;width:2px;border-radius:2px;background:color-mix(in srgb,var(--skin-shell-text) 46%,transparent)}
.shell-player-initial{display:none;font-weight:900;text-transform:uppercase}
.shellbar.compact-names .shell-player-name{display:none}
.shellbar.compact-names .shell-player-initial{display:inline}
.shellbar.compact-names .shell-player{min-width:2.35rem}
.shell-settings-panel{grid-template-columns:repeat(2,minmax(0,1fr));width:min(13.25rem,calc(100vw - 1.5rem));gap:.28rem;padding:.48rem}
html[data-g42-theme] #shellbar #shellMenu .shell-settings-panel .shell-settings-item{grid-template-columns:1.05rem minmax(0,1fr);min-height:2rem;padding:.34rem .42rem;gap:.34rem;font-size:.61rem}
html[data-g42-theme] #shellbar #shellMenu .shell-settings-panel .shell-settings-item svg{width:.92rem;height:.92rem}
.shell-settings-panel #choosePlayerColor{grid-column:1;grid-row:1}
.shell-settings-panel #chooseTheme{grid-column:2;grid-row:1}
.shell-settings-panel .shell-audio-control{display:contents}
.shell-settings-panel #pinPlatformMenu{grid-column:1;grid-row:2}
.shell-settings-panel #fullscreen{grid-column:2;grid-row:2;margin-top:0;border-top-width:1px}
.shell-settings-panel .volume-popover{grid-column:1/-1;grid-row:3}
.shell-settings-panel .volume-popover{padding:.45rem;gap:.2rem}
.shell-settings-panel .volume-popover>p{margin-bottom:.05rem;font-size:.57rem}
.shell-settings-panel .volume-row{grid-template-rows:1.55rem auto 1rem;gap:.22rem;padding:.08rem .18rem}
.shell-settings-panel .volume-row>button{width:1.55rem;height:1.55rem;padding:.22rem}
.shell-settings-panel .volume-row label{gap:.25rem;font-size:.55rem}
.shell-settings-panel .volume-row input{height:5.25rem}
.shell-settings-panel .volume-row output{font-size:.56rem}
.shell-settings-panel #platformExit{grid-column:1;grid-row:4}
.shell-settings-panel #platformEndGame{grid-column:2;grid-row:4}
html[data-g42-theme] #shellbar #shellMenu .shell-settings-panel .shell-exit-button{color:#ffaaa0;border-color:color-mix(in srgb,#e85749 58%,var(--skin-shell-text));background:color-mix(in srgb,#b82e24 18%,var(--skin-shell))}
html[data-g42-theme] #shellbar #shellMenu .shell-settings-panel .shell-exit-button:disabled{color:color-mix(in srgb,var(--skin-shell-text) 40%,transparent);border-color:color-mix(in srgb,var(--skin-shell-text) 14%,transparent);background:color-mix(in srgb,var(--skin-shell-text) 3%,transparent)}
html[data-g42-theme] #shellbar.is-pinned #shellMenu .shell-settings-panel #pinPlatformMenu{color:#091a4b;border-color:#fff1a6;background:linear-gradient(135deg,#ffe75a,#ff9b13);box-shadow:inset 0 0 0 1px #fff8,0 0 0 2px color-mix(in srgb,#ffb51b 48%,transparent)}
.shell-settings-panel .volume-row>button{position:relative}
.shell-settings-panel .volume-row>button[aria-pressed="true"]::after{content:'';position:absolute;left:.28rem;right:.28rem;top:50%;height:2px;border-radius:2px;background:currentColor;transform:rotate(-42deg);box-shadow:0 0 0 1px color-mix(in srgb,var(--skin-shell) 55%,transparent)}
.host-leave-dialog select,.shell-dialog select{width:100%;margin-top:.4rem;padding:.7rem;border:2px solid currentColor;border-radius:.65rem;background:var(--skin-panel);color:var(--skin-ink)}

/* Compact branded landing composition. */
.masthead{justify-content:center;text-align:center}
.masthead .masthead-copy{position:relative;z-index:2;width:min(74rem,100%)}
.masthead h1{max-width:none;margin:0;font:900 clamp(2rem,4.2vw,3.8rem)/1 Arial Black,Arial,sans-serif;letter-spacing:-.065em;text-transform:none;text-shadow:0 3px 0 #06194355}
.masthead-collage{position:absolute;z-index:0;inset:0;overflow:hidden;pointer-events:none}
.masthead-collage .collage-42{position:absolute;color:#fff;font:900 clamp(4.5rem,10vw,8.5rem)/1 Arial Black,Arial,sans-serif;opacity:.09;transform:rotate(-12deg)}
.masthead-collage .collage-42-a{left:9%;top:-1.65rem}.masthead-collage .collage-42-b{right:7%;bottom:-2.5rem;transform:rotate(11deg)}
.masthead-collage .collage-logo{position:absolute;width:clamp(4.5rem,8vw,7rem);height:auto;object-fit:contain;opacity:.075;filter:grayscale(1) brightness(3);transform:rotate(-15deg)}
.masthead-collage .collage-logo-a{left:29%;bottom:-1.25rem}.masthead-collage .collage-logo-b{right:27%;top:-1.55rem;transform:rotate(14deg)}
.masthead-collage .collage-shape{position:absolute;display:block;background:#ff8617;opacity:.72}
.masthead-collage .collage-diamond{right:3%;top:-2.7rem;width:5.8rem;height:5.8rem;border-radius:1rem;transform:rotate(28deg)}
.dialog-actions button{border-radius:var(--platform-control-radius,.8rem)}
html[data-g42-theme] :is(.shell-dialog,.join-dialog) .dialog-actions .danger{border:1px solid color-mix(in srgb,#ff6b57 72%,var(--skin-shell-text));border-radius:var(--platform-control-radius,.8rem);background:linear-gradient(135deg,color-mix(in srgb,#c73a2d 26%,var(--skin-shell)),color-mix(in srgb,#ff7043 16%,var(--skin-shell)));color:color-mix(in srgb,#ffb0a5 84%,var(--skin-shell-text));box-shadow:inset 0 1px 0 #ffffff28,0 3px 8px #0002;text-align:center}
html[data-g42-theme="logopop"] :is(.shell-dialog,.join-dialog) .dialog-actions .danger{border-color:#ff9a78;background:linear-gradient(135deg,#9d2944cc,#d94a32cc);color:#fff4ef;box-shadow:inset 0 1px 0 #ffffff45,0 4px 0 #06194366}
.catalog-section{padding-top:clamp(1.5rem,4vw,3.5rem)}
html[data-g42-theme="logopop"]{
  --skin-pattern:radial-gradient(circle at 8% 18%,#ff5b0012 0 3rem,transparent 3.1rem),radial-gradient(circle at 92% 30%,#0767f214 0 5rem,transparent 5.1rem),radial-gradient(circle at 26% 78%,#ef2c7d0e 0 2rem,transparent 2.1rem);
}
html[data-g42-theme="logopop"] body{background-color:#fbfaf4;background-image:repeating-linear-gradient(7deg,transparent 0 3.75rem,#18345b0a 3.8rem,transparent 3.86rem),repeating-linear-gradient(173deg,transparent 0 5.2rem,#ff7a1008 5.26rem,transparent 5.34rem),linear-gradient(115deg,#fff 0%,#f8f5e9 48%,#fffdf7 100%);background-size:auto;background-repeat:repeat;background-attachment:fixed}
html[data-g42-theme="logopop"] .masthead{min-height:8.125rem;padding:1.15rem 5rem;border-bottom:.42rem solid #ff7614;box-shadow:0 .35rem 0 #ffca22}
html[data-g42-theme="logopop"] .catalog-section{background:radial-gradient(circle at 11% 20%,#ffe95d 0 5.5rem,transparent 5.6rem),radial-gradient(circle at 89% 76%,#ef2c7d55 0 7.5rem,transparent 7.6rem),linear-gradient(135deg,#ffc52c 0%,#ff9417 32%,#ff6609 68%,#ee3c16 100%);border-top:.5rem solid #ffcf24;border-bottom:.5rem solid #9f240e}

@media(max-width:720px){
  .shellbar.open{width:calc(100vw - 1rem)}
  .shell-resize-handle{display:none}
  .shell-settings-panel{grid-template-columns:repeat(2,minmax(0,1fr));width:min(13.25rem,calc(100vw - 1rem))}
  html[data-g42-theme="logopop"] .masthead{min-height:7.75rem;padding:1rem 4.4rem}
  .masthead h1{font-size:clamp(1.7rem,8vw,2.35rem)}
  .masthead-collage .collage-logo{width:4.3rem}
}
