/* GEM GAMES: only uses the existing online demo's palette and Inter typography. */
.game-page{max-width:1120px;margin:0 auto}.game-shell{padding:clamp(13px,2.5vw,23px)}
.game-layout-head{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:17px}.game-layout-head h2{font-size:19px;letter-spacing:-.025em;margin:0 0 4px}.game-layout-head p{font-size:12px;margin:0}.game-head-actions{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.game-mode-toggle{display:flex;align-items:center;gap:3px;border:1px solid #3c495b;border-radius:11px;background:#101418;padding:4px}.game-mode-toggle button{padding:9px 15px;border:0;border-radius:8px;color:#abb6c6;background:transparent;font-size:12px;font-weight:800}.game-mode-toggle button.active{color:white;background:#315c92}.game-head-actions .outline-button{min-height:38px;padding:8px 14px;font-size:12px}.game-account-line{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin:16px 0;color:#9ca6b3;font-size:11px}.game-account-line .tag{max-width:100%;overflow-wrap:anywhere}.game-progress{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0;font-size:13px}.game-dots{display:flex;gap:6px}.game-dots span{width:13px;height:6px;background:#3b4657;border-radius:9px}.game-dots span.used{background:#6da7f2}.game-dots span.won{background:var(--good)}.game-guess-form{display:flex;gap:9px;margin:13px auto 3px;max-width:750px}.game-input-wrap{position:relative;flex:1;min-width:0}.game-guess-form input{width:100%;min-height:48px;padding:10px 13px;border-radius:11px;background:#121820;border:1px solid #4c5562;color:#f7f8fc;font-size:16px}.game-guess-form button{min-height:48px;min-width:100px}.game-suggestions{position:absolute;left:0;right:0;z-index:25;top:calc(100% + 5px);background:#1f272f;border:1px solid #4b6d98;border-radius:11px;max-height:235px;overflow-y:auto;box-shadow:0 15px 40px #000c;padding:4px}.game-suggestions[hidden]{display:none}.game-suggestions button{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;border:0;border-radius:8px;text-align:left;background:none;color:#e5ecf4;padding:10px 12px;font-size:13px}.game-suggestions button:hover,.game-suggestions button:focus-visible{background:#29415e}.game-suggestions small{color:#99b9df;white-space:nowrap}.game-notice{color:#f1bb82;font-size:12px;min-height:20px;margin:5px 0 12px;text-align:center}.game-scroller{overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#4b6382 #181e25;padding-bottom:8px}.game-table{min-width:720px}.game-column-labels,.game-tiles{display:grid;grid-template-columns:1.2fr 1.08fr .9fr .9fr .9fr .85fr;gap:7px}.game-column-labels{font-size:10px;color:#a2b7d5;font-weight:850;letter-spacing:.085em;text-align:center;padding:9px 2px}.game-empty{text-align:center;border:1px dashed #414e5d;padding:35px 15px;border-radius:12px;background:#1d232a;color:#8795a7;font-size:13px}.game-row{margin-bottom:12px}.game-guess-name{font-size:12px;display:block;color:#dce8f9;margin-bottom:6px}.game-tile{min-height:83px;border-radius:10px;border:1px solid #ffffff14;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:7px;text-align:center;background:#323a48}.game-tile.right{background:linear-gradient(140deg,#407d69,#2f6752)}.game-tile.close{background:linear-gradient(140deg,#957c3f,#746026)}.game-tile.miss{background:#353c4b}.game-tile-main{display:flex;align-items:center;justify-content:center;gap:3px;flex-wrap:wrap;font-size:12px;line-height:1.25;font-weight:850}.game-tile-main strong{font-size:12px}.game-helmet{flex:0 0 auto;filter:drop-shadow(0 2px 2px #0005)}.game-division-icon{display:inline-flex;line-height:0}.game-tile-hint{font-size:10px;opacity:.92}.game-legend{display:flex;flex-wrap:wrap;gap:10px 15px;font-size:11px;color:#b2c0d0;margin:14px 0 6px}.game-legend span{display:inline-flex;align-items:center;gap:6px}.game-key{width:10px;height:10px;border-radius:3px;background:#353c4b}.game-key.right{background:#407d69}.game-key.close{background:#957c3f}.game-finished{margin-top:18px;display:flex;align-items:center;gap:9px;flex-wrap:wrap;border:1px solid #3b6084;border-radius:13px;padding:14px;background:#213047}.game-finished span{flex:1;font-size:13px;font-weight:800}.game-finished button{font-size:12px;min-height:38px;padding:8px 13px}.game-foot{border-top:1px solid var(--line);padding-top:14px;margin-top:17px;font-size:11px;color:#9eabb9;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px}.game-how{margin-top:15px}.game-how h3{font-size:15px;margin:0 0 8px}.game-how p{font-size:12px;color:#aab6c4;margin:0;line-height:1.6}.game-overlay{position:fixed;z-index:90;inset:0;background:rgba(0,0,0,.84);display:flex;justify-content:center;align-items:center;padding:12px;overflow-y:auto;overscroll-behavior:contain}.game-dialog{width:min(100%,540px);max-height:min(90dvh,820px);overflow-y:auto;background:#1d2126;border:1px solid #536077;border-radius:18px;padding:clamp(14px,3vw,23px);box-shadow:0 22px 70px #000c;outline:none}.game-dialog-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.game-dialog-header .eyebrow{margin-bottom:4px}.game-dialog-header h2{font-size:23px;line-height:1.2;letter-spacing:-.035em;margin:0}.game-result-desc{font-size:13px;color:#c3d1e3;margin:16px 0}.game-result-desc strong{color:white}.game-modal-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:17px 0}.game-modal-stats>div{border:1px solid #3c4652;border-radius:11px;background:#252b34;padding:11px}.game-modal-stats small{display:block;font-size:10px;color:#9cabbf}.game-modal-stats b{font-size:20px}.game-board-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:18px 0 12px}.game-board-head h3{margin:0;font-size:17px}.game-leader-list{list-style:none;margin:0;padding:0;display:grid;gap:7px}.game-leader-row{display:flex;align-items:center;gap:9px;border:1px solid #3c4552;border-radius:9px;background:#272d37;padding:10px 12px;font-size:12px}.game-leader-row.mine{background:#293a56;border-color:#4a6c9b}.game-leader-row strong{flex:1;font-size:13px;overflow-wrap:anywhere}.game-leader-row small{color:#a5cbfa;font-size:10px}.game-leader-row>span:last-child{font-weight:850;color:#d4e5ff;white-space:nowrap}.game-rank{min-width:21px;color:#9caed1}.game-none{color:#a2b2c4;font-size:12px;text-align:center;padding:19px 10px;border:1px dashed #3d485a;border-radius:9px}.game-pop-note{font-size:11px;color:#91a0b3;line-height:1.5;margin:14px 0}.game-modal-buttons{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;border-top:1px solid #354253;padding-top:14px}.game-modal-buttons button{font-size:12px;min-height:41px}.game-dialog button:focus-visible{outline-offset:2px}
@media(max-width:640px){.game-page{min-width:0}.game-layout-head{align-items:flex-start}.game-head-actions{width:100%;justify-content:space-between}.game-mode-toggle{flex:1}.game-mode-toggle button{flex:1;padding:8px 12px}.game-guess-form{gap:6px}.game-guess-form button{min-width:78px;padding:9px 10px}.game-table{min-width:670px}.game-tile{min-height:76px}.game-dialog{max-height:calc(100dvh - 24px)}.game-legend{font-size:10px}.game-finished span{flex-basis:100%}.game-account-line{margin:13px 0}.game-head-actions .outline-button{padding:8px 9px}}
@media(max-width:350px){.game-modal-stats{gap:5px}.game-modal-stats>div{padding:7px}.game-leader-row{padding:9px 7px}}
