/* Shared material family, based on the approved ROSA game UI kit. */
.rosa-art-icon{display:block;object-fit:contain;width:32px;height:32px;flex:none;pointer-events:none;}
.su-header,.su-only{display:none;}.su-info{display:contents;}
:is(#solitaire-app,#chess-dialog,#mines-dialog,#game-dialog:is([data-game='sudoku'],[data-game='2048'])) .rosa-carved-panel{position:relative;border:1px solid var(--rosa-gold);border-radius:var(--rosa-radius-md);background:var(--rosa-menu-fill);box-shadow:inset 0 0 0 3px #d7a64b20,0 4px 0 #5a3a17,0 9px 20px #0009;backdrop-filter:none;}
:is(#solitaire-app,#chess-dialog,#mines-dialog,#game-dialog:is([data-game='sudoku'],[data-game='2048'])) .rosa-carved-panel::after{content:'';position:absolute;inset:-1px;border:0 solid transparent;border-image:url('assets/mahjong-reference/filigree-frame.webp') 115 / 32px / 0 stretch;background:none;opacity:1;pointer-events:none;z-index:3;}
:is(#solitaire-app,#chess-dialog,#mines-dialog,#game-dialog:is([data-game='sudoku'],[data-game='2048'])) .rosa-button:focus-visible{outline:3px solid var(--rosa-crystal);outline-offset:3px;}
:is(#solitaire-app,#chess-dialog,#mines-dialog,#game-dialog:is([data-game='sudoku'],[data-game='2048'])) .rosa-button:disabled{opacity:.5;filter:grayscale(.8);cursor:not-allowed;}
:is(#solitaire-app,#chess-dialog,#mines-dialog,#game-dialog:is([data-game='sudoku'],[data-game='2048'])) .rosa-button:active:not(:disabled){translate:0 2px;box-shadow:inset 0 2px 6px #0009;}
/* Minesweeper retains its approved alpine environment. */
#mines-dialog{font-family:var(--rosa-font-interface);background-image:linear-gradient(#00131b16,#00101733),url('assets/mines-alpine.webp');}
#mines-dialog .ms-header{min-height:78px;gap:16px;margin:9px 20px 0;padding:5px 16px;}
#mines-dialog .ms-brand{padding-right:16px;border-right:1px solid #c89a484d;}
#mines-dialog .ms-brand img{width:163px;}
#mines-dialog .ms-header nav button{font-size:12px;gap:4px;min-height:62px;}
#mines-dialog .ms-header nav .rosa-art-icon,#mines-dialog .ms-header nav svg{width:31px;height:31px;}
#mines-dialog .ms-header-actions .rosa-art-icon{width:24px;height:24px;}
#mines-dialog .ms-main{grid-template-columns:205px minmax(0,800px) 224px;gap:22px;max-width:1700px;padding:15px 25px 24px;align-items:start;}
#mines-dialog .ms-levels{padding:15px 11px;margin-top:111px;}
#mines-dialog .ms-levels button{min-height:82px;padding:12px 8px;gap:10px;border:1px solid #496b5355;border-radius:10px;background:var(--rosa-menu-item-fill);margin:5px 0;}
#mines-dialog .ms-levels button strong{font-size:14px;}
#mines-dialog .ms-levels button small{font-size:10px;color:var(--rosa-text-muted);}
#mines-dialog .ms-levels button[aria-pressed='true']{border-color:#ffe3a1;background:radial-gradient(ellipse at 10% 0,#ffe79c88,transparent 80%),linear-gradient(115deg,#7b591a,#c18b2b 45%,#574416);box-shadow:inset 0 1px #ffefbb,0 0 14px #eeb74c66;color:#fff2d2;}
#mines-dialog .ms-levels button[aria-pressed='true'] small{color:#fff0c6;}
#mines-dialog .ms-levels .rosa-art-icon,#mines-dialog .ms-levels svg{width:34px;height:34px;}
#mines-dialog .ms-title{margin:0 0 15px;padding-top:0;}
#mines-dialog .ms-title>img{width:128px;height:65px;margin-bottom:-25px;}
#mines-dialog .ms-title h1{font:700 clamp(36px,4.5vw,65px)/1.1 var(--rosa-font-display);font-style:normal;padding:5px 8px;letter-spacing:0;filter:drop-shadow(0 2px #845319) drop-shadow(0 4px 2px #000a);}
#mines-dialog .ms-title p{font-size:9px;letter-spacing:1.5px;margin:3px 0 0;padding:5px 18px;}
#mines-dialog .ms-board-frame{padding:15px;border:4px solid #bb8c36;border-radius:22px;max-width:640px;margin:auto;background:linear-gradient(130deg,#c49745,#60401c 30%,#d5ad59 70%,#7c5424);box-shadow:inset 0 0 0 2px #ffe5a0,0 4px 0 #543716,0 7px 0 #d4a44e,0 15px 26px #0009;}
#mines-dialog .ms-board-frame::after{inset:-4px;border-image-width:52px;}
#mines-dialog .ms-scroll{max-height:max(280px,calc(100dvh - 350px));border:1px solid #bb955844;padding:4px 4px 8px;}
#mines-dialog .ms-cell{border-color:#758b99;border-radius:7%;background:linear-gradient(135deg,#b2cedc,#3c6481 9%,#173c56 18%,#2d5571 48%,#0a263d 50%,#24495f 89%,#8eacba);box-shadow:inset 1px 2px 2px #dcf3f588,inset -2px -4px 3px #000d1ad9,0 3px 0 #001221;}
#mines-dialog .ms-cell.ms-open{background:radial-gradient(ellipse at 20% 10%,#fff5df,transparent 65%),linear-gradient(135deg,#f3e2c8,#d7b987);color:#153d5e;border-color:#b59560;box-shadow:inset 1px 2px 1px #fffae1,inset 0 -2px #a6875444;}
#mines-dialog .ms-cell>.rosa-art-icon{width:82%;height:82%;margin:auto;}
#mines-dialog .ms-cell.ms-mine{background:radial-gradient(#b56b3d,#4a2320);border-color:#ffad67;}
#mines-dialog .ms-right{margin-top:111px;}
#mines-dialog .ms-meters{padding:16px;margin-bottom:20px;}
#mines-dialog .ms-time .rosa-art-icon{width:32px;height:32px;}
#mines-dialog .ms-time button{padding:7px;}
#mines-dialog .ms-counters .rosa-art-icon{width:34px;height:34px;}
#mines-dialog .ms-tools{padding:16px 12px;gap:12px;}
#mines-dialog .ms-tools button{min-height:58px;border-radius:11px;padding:11px;gap:12px;background:var(--rosa-menu-item-fill);}
#mines-dialog .ms-tools .rosa-art-icon{width:33px;height:33px;}
#mines-dialog #ms-autos{top:82px;}
#mines-dialog .ms-bottom{padding:9px;position:relative;border:1px solid #c9a051;border-radius:14px;background:var(--rosa-menu-fill);}
#mines-dialog .ms-bottom button{font-size:11px;padding:10px 6px;min-height:52px;border-radius:10px;background:var(--rosa-menu-item-fill);}
#mines-dialog .ms-bottom .rosa-art-icon{width:26px;height:26px;}
#mines-dialog #ms-message{margin:12px 0 8px;font-size:12px;}
#mines-dialog .ms-rules{font-size:11px;padding:7px 14px;}
#mines-dialog .ms-confirm .rosa-button--primary{background:var(--rosa-primary-fill);color:var(--rosa-bg);border-color:var(--rosa-gold-light);}
/* Sudoku: own shared-header instance, existing puzzle and inputs. */
#game-dialog[data-game='sudoku']{background:linear-gradient(#00192328,#00121c66),url('assets/sudoku-lake.webp') center/cover fixed;color:var(--rosa-text);}
#game-dialog[data-game='sudoku']::before{display:none;}
#game-dialog[data-game='sudoku']>.game-dialog-bar,#game-dialog[data-game='sudoku'] .game-tabs{display:none;}
#game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-header{display:flex;position:relative;align-items:center;gap:20px;margin:9px 20px 0;padding:6px 16px;min-height:78px;border:1px solid var(--rosa-gold);border-radius:var(--rosa-radius-md);background:var(--rosa-menu-fill);box-shadow:inset 0 0 0 3px #d7a64b22,0 5px 14px #0009;}
#game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-header::after{content:'';position:absolute;inset:-1px;border:0 solid transparent;border-image:url('assets/mahjong-reference/filigree-frame.webp') 115 / 32px / 0 stretch;pointer-events:none;}
#game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-brand{padding-right:18px;border-right:1px solid #c89a484d;}
#game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-brand img{display:block;width:163px;height:auto;}
#game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-header nav{display:flex;flex:1;align-self:stretch;gap:0;}
#game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-header nav button{flex:1;min-width:0;min-height:62px;display:flex;flex-direction:column;gap:4px;justify-content:center;align-items:center;padding:5px 10px;border:0;border-radius:0;background:transparent;box-shadow:none;font-size:12px;color:var(--rosa-ivory);}
#game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-header nav .rosa-current{background:radial-gradient(ellipse at bottom,#d7a64b77,transparent 78%);box-shadow:inset 0 -2px #ffde91;}
#game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-header nav .rosa-art-icon{width:32px;height:32px;}
#game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-header-actions{display:flex;gap:9px;}
#game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-header-actions button{width:42px;height:42px;min-width:42px;min-height:42px;display:grid;place-items:center;padding:8px;border:1px solid var(--rosa-gold);border-radius:50%;background:#071c2b;}
#game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-header-actions [data-su-label]{display:none;}
#game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-header-actions :is(svg,.rosa-art-icon){width:25px;height:25px;}
#game-dialog[data-game='sudoku'] .game-dialog-content{width:100%;max-width:1720px;padding:17px 25px 25px;margin:auto;}
#game-dialog[data-game='sudoku'] .game-panel{display:grid;grid-template-columns:230px minmax(0,1fr) 220px;grid-template-rows:auto minmax(0,1fr);align-items:center;gap:20px 25px;padding:0;border:0;background:none;box-shadow:none;backdrop-filter:none;}
#game-dialog[data-game='sudoku'] .game-instructions{display:contents;}
#game-dialog[data-game='sudoku'] .game-instructions>.eyebrow{display:none;}
#game-dialog[data-game='sudoku'] #game-title{grid-column:2;grid-row:1;position:relative;justify-self:center;display:grid;place-items:center;min-width:280px;padding:9px 40px;margin:0;font:700 clamp(40px,4.4vw,62px)/1.15 var(--rosa-font-display);letter-spacing:2px;font-style:normal;text-transform:uppercase;background-image:linear-gradient(#fff4cd,#ffe1a0 30%,#dba545 55%,#9d681f 78%,#f3cd78);filter:drop-shadow(0 2px #694216) drop-shadow(0 4px 2px #0009);}
#game-dialog[data-game='sudoku'] #game-title::after{content:'';position:absolute;inset:0;border:0 solid transparent;border-image:url('assets/mahjong-reference/filigree-frame.webp') 115 / 27px / 0 stretch;pointer-events:none;}
#game-dialog[data-game='sudoku'] .su-info{display:flex;flex-direction:column;gap:19px;grid-column:1;grid-row:2;align-self:start;padding:23px 18px;}
#game-dialog[data-game='sudoku'] .su-only{display:block;}
#game-dialog[data-game='sudoku'] .su-info h4,#game-dialog[data-game='sudoku'] #sudoku-pad h4{font:600 16px/1.4 var(--rosa-font-interface);color:var(--rosa-gold-light);letter-spacing:.2px;margin:0;padding-bottom:10px;border-bottom:1px solid #b7964c44;}
#game-dialog[data-game='sudoku'] #game-hint{font:400 13px/1.8 var(--rosa-font-interface);color:var(--rosa-text-muted);max-width:none;margin:0;}
#game-dialog[data-game='sudoku'] #game-score{display:block;width:100%;max-width:none;padding:14px 10px 18px;border:1px solid #b7964c44;border-bottom-width:3px;border-radius:10px;background:#041421;font:700 29px/1.2 var(--rosa-font-numbers);text-align:center;letter-spacing:1px;color:var(--rosa-gold-light);}
#game-dialog[data-game='sudoku'] #game-score::after{height:3px;background:var(--rosa-primary-fill);}
#game-dialog[data-game='sudoku'] #new-game,#game-dialog[data-game='sudoku'] #su-undo{display:flex;justify-content:center;align-items:center;gap:10px;width:100%;min-height:51px;padding:9px;border:1px solid var(--rosa-gold);border-radius:11px;font:600 13px/1.4 var(--rosa-font-interface);}
#game-dialog[data-game='sudoku'] #new-game{background:linear-gradient(#fff0aa,#f6c85e 40%,#dfa33c 86%,#ffdd84);box-shadow:inset 0 2px #fff5c2,inset 0 -2px #c28a28,0 3px 0 #7d541d,0 0 12px #f9b94744;color:#152317;}
#game-dialog[data-game='sudoku'] #su-undo{background:var(--rosa-menu-item-fill);color:var(--rosa-ivory);}
#game-dialog[data-game='sudoku'] :is(#new-game,#su-undo) .rosa-art-icon{width:27px;height:27px;}
#game-dialog[data-game='sudoku'] .game-board-wrap{grid-column:2;grid-row:2;justify-self:center;align-self:start;position:relative;isolation:isolate;width:auto;max-width:100%;padding:17px;border:5px solid #b98b38;border-radius:22px;background:linear-gradient(125deg,#b98d3b,#69451b 30%,#e0b967 70%,#8c5d26);box-shadow:inset 0 0 0 2px #ffe8a9,0 5px 0 #493214,0 8px 0 #ce9e48,0 20px 30px #0009;transform:none;}
#game-dialog[data-game='sudoku'] .game-board-wrap::before{display:none;}
#game-dialog[data-game='sudoku'] .game-board-wrap::after{content:'';position:absolute;inset:-5px;border:0 solid transparent;border-image:url('assets/mahjong-reference/filigree-frame.webp') 115 / 54px / 0 stretch;pointer-events:none;z-index:3;}
#game-dialog[data-game='sudoku'] .board-sudoku{width:min(100%,calc(100dvh - 265px),620px);min-width:0;gap:0;padding:5px;border:2px solid #122c24;border-radius:7px;background:#6f572c;box-shadow:inset 0 0 0 2px #b89241,0 4px 10px #0008;}
#game-dialog[data-game='sudoku'] .sudoku-cell{position:relative;aspect-ratio:1;border:0;border-right:1px solid #b59b6577;border-bottom:1px solid #b59b6577;border-radius:2px;background:radial-gradient(ellipse at 25% 8%,#fffbee,transparent 75%),linear-gradient(#f7e9ca,#e7cda2);box-shadow:inset 1px 2px 1px #fffff3,inset -1px -3px 2px #bd9d6a66;color:#147a96;font:700 clamp(20px,2.8vw,35px)/1 var(--rosa-font-numbers);text-shadow:0 1px #fff9;transition:background .16s,color .16s,box-shadow .16s;}
#game-dialog[data-game='sudoku'] .sudoku-cell.given{background:linear-gradient(135deg,#f4e7c9,#e4cda4);color:#173d4b;font-weight:750;box-shadow:inset 1px 2px 1px #fff7e0,inset 0 -3px 2px #b79b6c66;}
#game-dialog[data-game='sudoku'] .sudoku-cell.box-right{border-right:4px solid #92703a;}
#game-dialog[data-game='sudoku'] .sudoku-cell.box-bottom{border-bottom:4px solid #92703a;}
#game-dialog[data-game='sudoku'] .sudoku-cell.peer{background:linear-gradient(#e8ead6,#c6d6bf);}
#game-dialog[data-game='sudoku'] .sudoku-cell.same-number{background:linear-gradient(#c4e7e0,#9bc9c8);color:#0c566e;box-shadow:inset 0 0 0 1px #45939b88;}
#game-dialog[data-game='sudoku'] .sudoku-cell.selected{translate:none;z-index:1;background:linear-gradient(#ffe9a4,#edbf62);color:#133848;box-shadow:inset 0 0 0 2px #9f6b23,inset 0 2px #fff3c8;}
#game-dialog[data-game='sudoku'] .sudoku-cell.invalid{background:linear-gradient(#ffe2d2,#e8a18c);color:#9d2929;box-shadow:inset 0 0 0 2px #c64f3c;}
#game-dialog[data-game='sudoku'] .sudoku-cell:focus-visible{outline:3px solid var(--rosa-crystal);outline-offset:-4px;}
#game-dialog[data-game='sudoku'] #sudoku-pad{grid-column:3;grid-row:2;align-self:start;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:none;gap:10px;padding:22px 16px 19px;margin:0;}
#game-dialog[data-game='sudoku'] #sudoku-pad h4{grid-column:1/-1;font-size:15px;}
#game-dialog[data-game='sudoku'] #sudoku-pad button{min-width:0;min-height:58px;padding:8px;border:1px solid #b28d49;border-radius:9px;background:linear-gradient(#fff0cf,#e0be80);color:#1a3d46;font:700 28px/1 var(--rosa-font-numbers);text-shadow:0 1px #fff9;box-shadow:inset 0 2px #fff9df,inset 0 -3px #ad864966,0 3px 0 #6a4c25,0 5px 7px #0006;}
#game-dialog[data-game='sudoku'] #sudoku-pad button.number-active{background:linear-gradient(#ffe7a1,#e7ac43);border-color:#ffdd87;}
#game-dialog[data-game='sudoku'] #sudoku-pad button[data-number='0']{grid-column:1/-1;min-height:46px;background:var(--rosa-menu-item-fill);color:var(--rosa-ivory);font:600 13px/1.3 var(--rosa-font-interface);text-shadow:none;}
#game-dialog[data-game='sudoku'] #game-message{margin:10px 0 0;text-align:center;font-size:12px;color:var(--rosa-ivory);max-width:600px;}
#game-dialog .su-settings[hidden]{display:none!important;}
#game-dialog .su-settings{position:fixed;inset:0;z-index:500;background:#00101ccc;backdrop-filter:blur(7px);display:grid;place-items:center;padding:20px;}
#game-dialog .su-settings-card{width:min(450px,100%);padding:28px;}
#game-dialog .su-settings-card h3{font:700 27px/1.3 var(--rosa-font-display);color:var(--rosa-gold-light);margin:0 40px 24px 0;}
#game-dialog .su-settings-card label{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 0;border-bottom:1px solid #b6974b44;color:var(--rosa-ivory);font-size:14px;}
#game-dialog .su-settings-card select{min-height:44px;background:#071c2b;color:var(--rosa-ivory);border:1px solid var(--rosa-gold);border-radius:8px;padding:7px;}
#game-dialog .su-settings-card input{width:23px;height:23px;accent-color:var(--rosa-gold);}
#game-dialog .su-settings-close{position:absolute;right:15px;top:15px;width:38px;height:38px;border:1px solid var(--rosa-gold);border-radius:50%;background:#071c2b;color:var(--rosa-gold-light);font-size:25px;}
@media(max-width:1100px) and (min-width:901px){#mines-dialog .ms-main{grid-template-columns:160px minmax(0,1fr) 182px;gap:15px;padding-inline:18px;}#mines-dialog .ms-levels button strong{font-size:12px;}#mines-dialog .ms-tools button{font-size:11px;}}
@media(max-width:1100px) and (min-width:801px){#game-dialog[data-game='sudoku'] .game-panel{grid-template-columns:180px minmax(0,1fr) 180px;gap:16px;}#game-dialog[data-game='sudoku'] .su-info{padding:18px 12px;}#game-dialog[data-game='sudoku'] #sudoku-pad{padding:19px 12px;gap:7px;}}
@media(max-width:900px){#mines-dialog .ms-header{flex-wrap:wrap;}#mines-dialog .ms-main{grid-template-columns:minmax(0,1fr) 190px;gap:18px;}#mines-dialog .ms-levels{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:9px;gap:5px;}#mines-dialog .ms-levels button{min-height:66px;margin:0;padding:7px 4px;gap:7px;}#mines-dialog .ms-levels button strong{font-size:11px;}#mines-dialog .ms-levels button small{font-size:9px;}#mines-dialog .ms-right{margin-top:110px;}#mines-dialog .ms-header-actions{margin-left:auto;}}
@media(max-width:800px){
 #game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-header{flex-wrap:wrap;margin:0;padding:7px 10px;border-radius:0;gap:5px;}
 #game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-brand img{width:126px;}#game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-header-actions{margin-left:auto;}
 #game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-header nav{order:3;flex-basis:100%;overflow-x:auto;}
 #game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-header nav button{min-height:48px;font-size:11px;gap:4px;padding:5px;}
 #game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-header nav .rosa-art-icon{width:25px;height:25px;}
 #game-dialog[data-game='sudoku'] .game-dialog-content{padding:14px 10px 25px;}
 #game-dialog[data-game='sudoku'] .game-panel{display:flex;flex-direction:column;gap:16px;padding:0;}
 #game-dialog[data-game='sudoku'] #game-title{order:0;min-width:240px;font-size:39px;padding:8px 30px;align-self:center;}
 #game-dialog[data-game='sudoku'] .game-board-wrap{order:1;margin:0;padding:11px;max-width:100%;border-width:4px;}
 #game-dialog[data-game='sudoku'] .game-board-wrap::after{inset:-4px;border-image-width:38px;}
 #game-dialog[data-game='sudoku'] .board-sudoku{width:min(100%,560px);padding:4px;}
 #game-dialog[data-game='sudoku'] .sudoku-cell{font-size:clamp(18px,4.9vw,30px);}
 #game-dialog[data-game='sudoku'] #sudoku-pad{order:2;grid-template-columns:repeat(9,minmax(0,1fr));max-width:590px;padding:14px 10px;gap:5px;}
 #game-dialog[data-game='sudoku'] #sudoku-pad h4{margin:0;padding-bottom:7px;font-size:13px;}
 #game-dialog[data-game='sudoku'] #sudoku-pad button{min-height:44px;font-size:22px;padding:4px;border-radius:7px;}
 #game-dialog[data-game='sudoku'] #sudoku-pad button[data-number='0']{grid-column:1/-1;font-size:12px;min-height:44px;}
 #game-dialog[data-game='sudoku'] .su-info{order:3;width:100%;max-width:590px;gap:12px;padding:18px 15px;display:grid;grid-template-columns:1fr 1fr;}
 #game-dialog[data-game='sudoku'] .su-info h4,#game-dialog[data-game='sudoku'] #game-hint{grid-column:1/-1;}
 #game-dialog[data-game='sudoku'] #game-hint{font-size:12px;}
 #game-dialog[data-game='sudoku'] #game-score{grid-column:1/-1;font-size:23px;padding:8px 10px;}
 #game-dialog[data-game='sudoku'] #new-game,#game-dialog[data-game='sudoku'] #su-undo{grid-column:auto;grid-row:auto;justify-self:stretch;min-height:46px;margin:0;font-size:12px;padding:8px;}
}
@media(max-width:620px){
 #mines-dialog{background-image:linear-gradient(#00172333,#00101755),url('assets/mines-alpine-mobile.webp');}
 #mines-dialog .ms-header{margin:0;border-radius:0;padding:6px 10px;gap:5px;}
 #mines-dialog .ms-brand img{width:126px;}
 #mines-dialog .ms-header nav button{font-size:11px;min-height:48px;}
 #mines-dialog .ms-header nav .rosa-art-icon,#mines-dialog .ms-header nav svg{width:26px;height:26px;}
 #mines-dialog .ms-main{display:flex;padding:14px 8px 24px;gap:15px;}
 #mines-dialog .ms-center{order:0;}#mines-dialog .ms-levels{order:1;}#mines-dialog .ms-right{order:2;}#mines-dialog .ms-rules{order:3;}
 #mines-dialog .ms-title>img{width:108px;height:53px;margin-bottom:-21px;}
 #mines-dialog .ms-title h1{font-size:clamp(32px,8.5vw,47px);}
 #mines-dialog .ms-title p{font-size:8px;letter-spacing:.6px;padding:4px 10px;}
 #mines-dialog .ms-board-frame{padding:8px;border-width:3px;border-radius:16px;}
 #mines-dialog .ms-board-frame::after{inset:-3px;border-image-width:35px;}
 #mines-dialog .ms-scroll{max-height:65dvh;}
 #mines-dialog .ms-levels{display:grid;grid-template-columns:1fr 1fr;gap:7px;width:100%;padding:12px;}
 #mines-dialog .ms-levels button{flex-direction:row;text-align:left;min-height:65px;padding:8px;gap:8px;}
 #mines-dialog .ms-levels button strong{font-size:11px;}
 #mines-dialog .ms-levels button small{font-size:9px;}
 #mines-dialog .ms-levels :is(.rosa-art-icon,svg){width:27px;height:27px;}
 #mines-dialog .ms-right{margin:0;width:100%;grid-template-columns:1fr;gap:15px;}
 #mines-dialog .ms-meters{padding:15px;margin:0;}
 #mines-dialog .ms-time{padding-bottom:10px;}
 #mines-dialog .ms-time output{font-size:24px;}
 #mines-dialog .ms-counters{padding-top:11px;}
 #mines-dialog .ms-counters span{font-size:11px;}
 #mines-dialog .ms-tools{grid-template-columns:1fr 1fr;gap:9px;padding:14px;}
 #mines-dialog .ms-tools button,#mines-dialog .ms-tools button[data-ms='hint'],#mines-dialog .ms-tools button[data-ms='auto']{grid-column:auto;min-height:55px;font-size:11px;padding:9px;gap:7px;}
 #mines-dialog .ms-tools .rosa-art-icon,#mines-dialog .ms-tools svg{width:25px;height:25px;}
 #mines-dialog .ms-tools b{display:none;}
 #mines-dialog .ms-bottom{gap:6px;padding:7px;}
 #mines-dialog .ms-bottom button{min-height:62px;font-size:10px;padding:7px 3px;}
 #mines-dialog .ms-bottom .rosa-art-icon{width:26px;height:26px;}
}
@media(max-width:380px){#game-dialog[data-game='sudoku'] #sudoku-pad{gap:3px;padding-inline:7px;}#game-dialog[data-game='sudoku'] .sudoku-cell{font-size:18px;}#game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-header nav button{font-size:9px;}#mines-dialog .ms-tools button{font-size:10px;}}
@media(hover:hover){#mines-dialog .rosa-button:hover:not(:disabled),#game-dialog[data-game='sudoku'] .rosa-button:hover:not(:disabled){border-color:#ffe6a8;filter:brightness(1.12);}#game-dialog[data-game='sudoku'] .sudoku-cell:not(.selected):hover{translate:none;box-shadow:inset 0 0 0 1px #c0974d;}}
@media(prefers-reduced-motion:reduce){:is(#solitaire-app,#chess-dialog,#mines-dialog,#game-dialog:is([data-game='sudoku'],[data-game='2048'])) *{animation:none!important;transition:none!important;translate:none!important;}}
#game-dialog.su-no-motion .sudoku-cell,#game-dialog.su-no-motion .rosa-button{animation:none!important;transition:none!important;translate:none!important;}
#game-dialog[data-game='sudoku'] .game-panel:focus{outline:none;}
#game-dialog[data-game='sudoku'] .game-board-wrap{width:min(100%,calc(100dvh - 280px),670px);}
#game-dialog[data-game='sudoku'] .board-sudoku{width:100%;aspect-ratio:1;}
#game-dialog[data-game='sudoku'] #game-message:empty{display:none;}
#game-dialog[data-game='sudoku'] #game-title{isolation:isolate;}
#game-dialog[data-game='sudoku'] #game-title::before{content:'';position:absolute;inset:0;border:1px solid var(--rosa-gold);border-radius:12px;background:var(--rosa-menu-fill);z-index:-1;}
@media(max-width:800px){#game-dialog[data-game='sudoku']{background-image:linear-gradient(#00192322,#00121c55),url('assets/sudoku-lake-mobile.webp');}#game-dialog[data-game='sudoku'] .game-board-wrap{width:min(100%,590px);}}
#game-dialog[data-game='sudoku'] #game-title{background:none;-webkit-text-fill-color:var(--rosa-ivory);color:var(--rosa-ivory);}
#game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-title-text{background:linear-gradient(#fff4cd,#ffe1a0 30%,#dba545 55%,#9d681f 78%,#f3cd78);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
#mines-dialog .ms-board-frame.rosa-carved-panel{padding:15px;border:4px solid #bb8c36;border-radius:22px;background:linear-gradient(130deg,#c49745,#60401c 30%,#d5ad59 70%,#7c5424);box-shadow:inset 0 0 0 2px #ffe5a0,0 4px 0 #543716,0 7px 0 #d4a44e,0 15px 26px #0009;}
#mines-dialog .ms-board-frame.rosa-carved-panel::after{inset:-4px;border-image-width:52px;}
#mines-dialog .ms-title>img{width:112px;height:50px;margin-bottom:-24px;}
#mines-dialog .ms-title h1{font-size:clamp(35px,4.1vw,56px);}
@media(max-width:620px){#mines-dialog .ms-board-frame.rosa-carved-panel{padding:8px;border-width:3px;border-radius:16px;}#mines-dialog .ms-board-frame.rosa-carved-panel::after{inset:-3px;border-image-width:35px;}#mines-dialog .ms-title h1{font-size:clamp(32px,8.5vw,47px);}}
#mines-dialog .ms-mine-art{object-fit:cover;object-position:center top;}
#mines-dialog .ms-cell .ms-mine-art{border-radius:50%;}
@media(max-width:500px){#game-dialog[data-game='sudoku'] #sudoku-pad{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;}#game-dialog[data-game='sudoku'] #sudoku-pad button{min-height:50px;}#game-dialog[data-game='sudoku'] #sudoku-pad button[data-number='0']{grid-column:auto;font-size:10px;min-height:50px;}}
#game-dialog:is([data-game='sudoku'],[data-game='2048']) .su-title-text{filter:drop-shadow(0 1px #fff0b0) drop-shadow(0 3px #81501a) drop-shadow(0 5px 2px #0009);}
@media(max-width:800px){#game-dialog[data-game='sudoku'] .su-info>h4,#game-dialog[data-game='sudoku'] .su-info>#game-hint,#game-dialog[data-game='sudoku'] .su-info>#game-score{grid-row:auto;}}
#mines-dialog[data-theme='sapphire']{background-image:linear-gradient(#07375966,#00142277),url('assets/mines-alpine.webp');}
#mines-dialog[data-theme='night']{background-image:linear-gradient(#03132caa,#010d21cc),url('assets/mines-alpine.webp');}
@media(max-width:620px){#mines-dialog[data-theme='sapphire']{background-image:linear-gradient(#07375966,#00142277),url('assets/mines-alpine-mobile.webp');}#mines-dialog[data-theme='night']{background-image:linear-gradient(#03132caa,#010d21cc),url('assets/mines-alpine-mobile.webp');}}
#mines-dialog .ms-board-frame.rosa-carved-panel{width:min(100%,calc(var(--frame-cols)*var(--frame-cell) + 48px));}
@media(max-width:620px){#mines-dialog .ms-board-frame.rosa-carved-panel{width:100%;}}
@media(max-width:620px){#mines-dialog .ms-tools b{display:grid;width:22px;height:22px;font-size:11px;top:7px;}#mines-dialog #ms-hints{right:calc(50% + 3px);top:7px;}#mines-dialog #ms-autos{right:7px;top:7px;}}
