.arcade-hub{padding:24px;border:1px solid #4e3d6e;background:linear-gradient(130deg,#21192f,#111523);border-radius:14px;margin-bottom:24px}.hub-profile{display:flex;align-items:center;gap:17px;margin-bottom:22px}.hub-crest{display:grid;place-items:center;width:56px;height:56px;flex-shrink:0;background:#382449;border:1px solid #9061b8;color:#d6b3ff;border-radius:12px;font-size:31px}.hub-profile strong{display:block;margin:7px 0;color:#e9d6ff;font-size:19px}.hub-profile small{display:block;color:#aa98bc;font-size:11px}#hubStreak{margin-left:auto;color:#c9ad82;font:11px Consolas,monospace}.hub-actions{display:flex;gap:9px;flex-wrap:wrap}.hub-actions button{font-size:11px;padding:11px 15px}.hub-bottom{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:19px}.hub-bottom input,.hub-bottom select,.hub-room-box input{padding:11px;border:1px solid #534467;border-radius:7px;background:#161322;color:#d8c9e7;font-size:12px;max-width:100%}.hub-bottom>input{flex:1;min-width:160px}.hub-bottom label{color:#bca7cf;font-size:11px}.hub-bottom select{margin-left:10px}#hubNotice{font-size:10px;color:#a494b7;flex-basis:100%}.hub-room-box{margin-top:20px;padding:20px;border:1px solid #72538e;border-radius:10px;background:#191527}.hub-room-box p{font-size:12px;color:#b4a5c6;line-height:1.8}.hub-room-box label{display:block;margin:20px 0 10px;font-size:11px}.hub-room-box input{display:block;width:100%;margin-top:8px}.room-open{display:inline-block;text-decoration:none;font-size:12px;margin:12px 0}.arc-catalog [hidden],[hidden]{display:none!important}.arcade-expanded>.sidebar,.arcade-expanded>main>header,.arcade-expanded .heading,.arcade-expanded .status-line,.arcade-expanded footer{display:none!important}.arcade-expanded>main{margin-left:0}.arcade-expanded .content{padding:16px}.arcade-expanded #coreArcade{max-width:1600px;margin:auto}#coreArcade:fullscreen{background:#100e19;overflow-y:auto;padding:24px}#coreArcade:fullscreen .arc-hero{display:none}#coreArcade:fullscreen .arc-catalog{max-height:250px;overflow:auto}.number-pad{display:flex;gap:7px;flex-wrap:wrap;margin-top:17px}.number-pad button{padding:10px 13px}.sudoku-grid{display:grid;grid-template-columns:repeat(9,1fr);max-width:520px;border:3px solid #9a7bb8;background:#30293a;gap:1px}.sudoku-grid button{aspect-ratio:1;min-width:0;background:#231e2e;color:#c99dff;border:0;font:22px Consolas,monospace;cursor:pointer}.sudoku-grid button.given{color:#e6ddec;background:#191623;font-weight:bold}.sudoku-grid button:nth-child(3n){border-right:2px solid #9275a9}.sudoku-grid button:nth-child(n+19):nth-child(-n+27),.sudoku-grid button:nth-child(n+46):nth-child(-n+54){border-bottom:2px solid #9275a9}.sudoku-grid button.selected{background:#654a7c;outline:2px solid #d6b3ff;outline-offset:-3px}.sudoku-grid button.invalid{color:#ff8c9c;background:#482834}#advancedCanvas{display:block;max-width:100%;height:auto;border-radius:12px;border:2px solid #665077;touch-action:none;margin:12px auto 20px;box-shadow:0 15px 45px #0003}.advanced-blocks #advancedCanvas{max-height:600px;width:min(100%,300px)}.advanced-buttons{display:flex;gap:7px;flex-wrap:wrap;justify-content:center}.advanced-buttons button{padding:10px 14px}.checker-board,.room-chess{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));max-width:560px;aspect-ratio:1;border:3px solid #7c648f}.checker-board button,.room-chess button{aspect-ratio:1;border:0;min-width:0;cursor:pointer}.checker-board .dark,.room-chess .dark{background:#342a46}.checker-board .light,.room-chess .light{background:#b7a5bb}.checker-board .selected,.room-chess .selected{outline:4px solid #e8c586;outline-offset:-4px}.checker-board .legal{box-shadow:inset 0 0 0 4px #af88d3}.piece{display:inline-grid;place-items:center;width:75%;height:75%;border-radius:50%;font-size:clamp(16px,3vw,28px);border:3px solid #e6cffa;box-shadow:inset 0 -5px #0004,0 3px 5px #0004}.piece.human{color:#42264a;background:#c192de}.piece.computer{color:#e6d8ef;background:#201d2c;border-color:#6b5d81}.solitaire-top{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:25px}.playing-card,.card-slot{display:block;position:relative;width:100%;min-height:68px;padding:9px 3px;background:#e3dce5;border:1px solid #a8a0ad;border-radius:6px;color:#171323;font:17px Georgia,serif;text-align:center;cursor:pointer}.playing-card.red{color:#a52a5d}.playing-card.back{background:repeating-linear-gradient(45deg,#4d3665,#4d3665 4px,#39264e 4px,#39264e 8px);color:#c3a7da;border-color:#9075aa}.solitaire-top .playing-card,.solitaire-top .card-slot{width:55px;flex-shrink:0}.card-slot{background:#24212e;color:#aa91bf;border:1px dashed #80698f}.solitaire-piles{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;align-items:start;min-height:310px}.solitaire-piles .playing-card{margin-top:-35px}.solitaire-piles .playing-card:first-child{margin-top:0}.solitaire-piles .playing-card.selected{outline:3px solid #ddbb7f}.solitaire-piles>div{padding-top:35px}.room-page{background:#100d18;color:#e4d8f0}.room-page main{margin:0 auto;padding:35px 24px;max-width:1050px}.room-mast{padding:30px;border:1px solid #674b7d;border-radius:16px;background:linear-gradient(90deg,#20162ee8,#17122399),url('/assets/shadow-art') right 20%/cover;margin-bottom:25px}.room-mast h1{font:36px Georgia,serif;color:#dfb7ff;margin:15px 0}.room-mast p{font-size:12px;color:#b9a7c8}.room-page footer{padding:25px 0;color:#947fa5;font-size:11px}.room-page footer a{color:#c5a4df}.room-page label{display:block;color:#c1aecf;font-size:12px;margin:15px 0}.room-page input,.room-page textarea,.room-page select{display:block;width:100%;border:1px solid #6e5186;border-radius:8px;padding:12px;background:#1d1628;color:#efe4f7;margin-top:8px;font-size:16px}.room-header{padding:22px;border:1px solid #5d4573;background:#1d1629;border-radius:12px;margin-bottom:22px}.room-header h2{font:26px Georgia,serif;color:#dcc4ed;margin:12px 0}.room-header p{color:#c29edf;font-size:14px}.room-header button{margin-right:12px}.room-connect{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px;max-width:600px;margin:20px auto}.room-connect button{border:1px solid #6e5687;background:#282035;color:#cdb6de;border-radius:8px;min-width:0;padding:10px}.room-connect button.disc{aspect-ratio:1;border-radius:50%;font-size:clamp(18px,4vw,42px);padding:0}.room-connect .disc-1{color:#d0a4f3}.room-connect .disc-2{color:#eac58e}.room-memory{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;max-width:600px;margin:20px auto}.room-memory button{aspect-ratio:1;border:1px solid #765b8d;border-radius:9px;background:#272034;color:#c4a2e0;font:23px Consolas,monospace}.room-memory button.revealed{background:#59406c;color:#ecd9ff}.room-chess{margin:20px auto}.room-chess button{font-size:clamp(25px,5vw,54px);color:#161122;text-shadow:0 1px #f4e8ff}.room-race>div{border:1px solid #65507e;padding:18px;margin:15px 0;border-radius:9px}.room-race strong{color:#d1b4ee;display:block}.room-race progress{width:100%;height:18px;accent-color:#b685e3;margin:15px 0}.room-race span{font:12px Consolas,monospace;color:#c6add7}.room-race blockquote{padding:25px;background:#21182d;border-left:3px solid #b38ad1;color:#d8c7e4;line-height:1.9;margin:25px 0}.room-page p{line-height:1.8}.room-result{padding:20px;background:#352449;border:1px solid #af83d4;color:#e6d1f5;border-radius:10px}#roomError{color:#ffb1c6;padding:10px 0;white-space:pre-wrap}.room-page #joinRoom{padding:25px;max-width:500px;background:#211a2d;border-radius:15px;border:1px solid #624b79}.room-page #joinRoom h2{color:#cfb0ed}.room-page .room-header button:disabled{opacity:.5}.room-page #roomMain>footer{display:block}
@media(max-width:700px){.hub-profile{flex-wrap:wrap}#hubStreak{margin:0;flex-basis:100%}.arcade-hub{padding:18px}.hub-actions button{padding:10px;font-size:10px}.sudoku-grid button{font-size:18px}.solitaire-piles{gap:3px}.playing-card{font-size:13px;min-height:58px}.solitaire-top .playing-card,.solitaire-top .card-slot{width:42px}.room-page main{padding:15px}.room-mast{padding:22px}.room-mast h1{font-size:28px}.room-connect,.room-memory{gap:5px}#coreArcade:fullscreen{padding:12px}}

.playing-card[data-selected=true]{outline:3px solid #ddbb7f;outline-offset:-3px}

.arcade-play-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}.arcade-play-toolbar label{font-size:11px;color:#b99dcc;margin-right:auto}.arcade-play-toolbar select{padding:10px;border:1px solid #735287;border-radius:7px;background:#24182e;color:#e0c5f0;margin-left:10px;max-width:210px}.arcade-play-toolbar button{font-size:11px;padding:10px 14px}.arcade-play-toolbar+ .arc-elapsed{margin-top:0}

/* Focus mode gives the board the screen, keeping only essential controls. */
.arcade-expanded #coreArcade>.arc-hero,.arcade-expanded #coreArcade>.arcade-hub,.arcade-expanded #coreArcade>.arc-catalog,.arcade-expanded #coreArcade>.arc-local{display:none!important}.arcade-expanded #coreArcade .arc-play{margin:0;padding:14px}.arcade-expanded #coreArcade .arc-controls{display:none}.arcade-expanded #coreArcade .arc-board-layout,.arcade-expanded #coreArcade .arc-cube-layout{grid-template-columns:minmax(0,1fr)!important}.arcade-expanded .arcade-play-toolbar{margin-bottom:10px}.arcade-expanded .arcade-play-toolbar [data-gallery]{display:none}.arcade-expanded .arc-elapsed{padding:8px 14px;margin-bottom:10px}.arcade-expanded .arc-elapsed strong{font-size:22px;margin-top:3px}.arcade-expanded .arc-elapsed .eyebrow{font-size:8px}.arcade-expanded .arc-difficulty{padding:9px 14px;margin-bottom:12px}.arcade-expanded .arc-difficulty strong{font-size:12px;margin-top:4px}.arcade-expanded .arc-difficulty small{display:none}.arcade-expanded .arc-scores{margin-bottom:12px}.arcade-expanded .arc-scores>div{padding:10px 15px}.arcade-expanded .arc-scores strong{font-size:23px;margin-top:5px}.arcade-expanded .sudoku-grid{width:min(100%,calc(100vh - 340px));margin:auto}.arcade-expanded .checker-board{width:min(100%,calc(100vh - 320px));margin:auto}.arcade-expanded .advanced-blocks #advancedCanvas{max-height:calc(100vh - 350px);width:auto}.arcade-expanded #advancedCanvas{max-height:calc(100vh - 330px);width:auto}.arcade-expanded .arc-cube-stage canvas{height:calc(100vh - 270px)}.arcade-expanded .arc-cube-stage{min-height:0}.arcade-expanded .arcade-play-toolbar button{padding:8px 12px}.arcade-expanded .number-pad{justify-content:center;margin-top:12px}.arcade-expanded .number-pad button{padding:7px 11px}

.arcade-expanded #coreArcade .arc-controls{display:block}.arcade-expanded #coreArcade .arc-controls>h2,.arcade-expanded #coreArcade .arc-controls>p,.arcade-expanded #coreArcade .arc-controls>.eyebrow,.arcade-expanded #coreArcade .arc-shortcuts{display:none}.arcade-expanded #coreArcade .arc-cube-layout{grid-template-columns:minmax(0,1.3fr) minmax(250px,1fr)!important}.arcade-expanded .arc-cube-layout .arc-controls{max-height:calc(100vh - 245px);overflow-y:auto;padding-right:8px}@media(max-width:650px){.arcade-expanded #coreArcade .arc-cube-layout{grid-template-columns:1fr!important}.arcade-expanded .arc-cube-layout .arc-controls{max-height:240px}}
