/* Vetro satinato, Colpo fumetto e riferimenti reali. Touch targets remain at least 44 px. */
.astra-state{display:flex;flex-direction:column;align-items:flex-end;gap:1px;flex:none}.astra-state #abandon-room{margin:0;min-height:44px;padding:6px 10px;font-size:10px;line-height:1.1;background:transparent;border:0;color:var(--text-muted,#aeb6cc);box-shadow:none}.astra-state #abandon-room:hover{color:#ffaf9e}.astra-state .room-state{min-width:83px;text-align:center}
.score-reference{background:#e7eff4;border:1px solid #afcad5;box-shadow:0 8px 24px #0002;color:#18213e}.score-reference .sr-banner{background:#18213e;border:0;box-shadow:none;border-radius:10px;color:#fff}.score-reference .sr-board{background:#edf3f5;border:0;box-shadow:none;padding:5px}.score-reference .sr-row{border:1px solid #c5d6df;background:#fffcf3;box-shadow:0 2px 4px #1833540c;min-height:62px;grid-template-columns:60px minmax(0,1fr) 42px;padding:4px 6px;gap:7px;border-radius:10px}.score-reference .sr-symbol,.score-reference .sr-colpo{width:58px;height:52px}.score-reference .sr-name{font-size:15px;color:#18213e;text-transform:none}.score-reference .sr-points{border:0;box-shadow:none;background:#e7eff4;color:#18213e;border-radius:8px;font-size:25px}.score-reference .sr-closed{background:#dce9e9}.score-reference .sr-selected{border:2px solid #078dc2;box-shadow:0 0 0 2px #53cced}.score-reference .sr-confirm{left:76px;font-size:9px}.score-reference .sr-game{background:#f8fbfc;border:0;box-shadow:none;color:#18213e}.score-reference .sr-game-head{gap:8px;flex-wrap:wrap}.score-reference .sr-game-head strong{display:none}.sr-turn-track{height:5px;border-radius:9px;background:#d4e1e7;margin-bottom:9px;overflow:hidden}.sr-turn-track i{display:block;height:100%;background:#078dc2;border-radius:9px;transition:width .24s ease}.score-reference .sr-stamps{display:none}.score-reference .sr-collection{display:none}
.astra-records{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:9px;border-top:1px solid #d4e1e7;padding-top:7px}.astra-record-scope{grid-column:1/-1;font-size:10px;color:#4b617a}.astra-record{display:grid;grid-template-columns:1fr auto;gap:2px 6px;padding:5px 7px;border-radius:8px;background:#e7eef1}.astra-record small{font-size:10px}.astra-record b{grid-column:2;grid-row:1/3;font-size:22px}.astra-record>span{font-size:10px;color:#3c5574;overflow-wrap:anywhere}
.app-layout-active .felt{grid-template-rows:auto minmax(0,1fr) auto}.astra-shelf{display:flex;align-items:center;gap:7px;min-width:0;overflow:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding-bottom:5px;flex:none}.astra-material{display:flex;align-items:center;gap:6px;flex:none;color:#e7f3f7;font-size:10px;max-width:110px;line-height:1.1}.astra-material>i{font-style:normal;font-size:30px;color:#bce4e6}.astra-material small{display:block;font-size:9px;opacity:.6;padding-top:3px}.astra-trophy{display:grid;grid-template-columns:30px minmax(0,1fr);gap:1px 5px;align-items:center;flex:0 0 110px;min-height:44px;text-align:left;color:#eef6f8;border:1px solid #ffffff20;background:#ffffff0b;border-radius:9px;padding:4px;font:inherit}.astra-trophy img{width:30px;height:32px;object-fit:cover;border-radius:5px;grid-row:1/3}.astra-trophy>span{font-size:10px;font-weight:700}.astra-trophy small{font-size:9px;color:#bdd0d9}.astra-trophy.is-locked img{filter:grayscale(1);opacity:.6}.astra-trophy:focus-visible{outline:2px solid #53cced;outline-offset:1px}
.app-layout-active .room-grid--play{grid-template-rows:54px minmax(0,1fr) clamp(245px,32dvh,310px)}.app-layout-active .players-strip>.player-tile{height:52px}.app-layout-active .room-grid--play>.players-strip{height:54px}.app-layout-active .room-grid--play{min-width:0}.app-layout-active .felt,.score-panel{min-width:0}.dice-renderer canvas{display:block;width:100%;height:100%}
@media(max-width:600px){.score-reference .sr-columns{grid-template-columns:minmax(0,1fr)}.app-layout-active .room-page{padding:3px 10px 8px!important}.app-layout-active .room-top{margin-bottom:5px}.app-layout-active .room-title p{display:none}.score-reference .sr-row{min-height:59px}.score-reference .sr-banner{height:49px;min-height:49px}.score-reference .sr-brand{font-size:32px}.app-layout-active .room-grid--play{grid-template-columns:minmax(0,1fr);grid-template-areas:"players" "score" "felt"}}
@media(max-height:650px){.app-layout-active .room-grid--play{grid-template-rows:44px minmax(0,1fr) 210px}.app-layout-active .players-strip>.player-tile{height:42px}.app-layout-active .room-grid--play>.players-strip{height:44px}.app-layout-active .room-title h1{font-size:24px}}
@media(prefers-reduced-motion:reduce){.sr-turn-track i{transition:none}}

.score-reference--mix .sr-avatar{outline:2px solid #a9d7e5}.score-reference--mix .sr-points{border:0;border-radius:8px;background:#e7eff4}.dadi-in-volo .score-reference--mix .sr-open.sr-playable{border-style:solid}.score-reference--mix .sr-row{border-style:solid}
/* Specificità dei vecchi layout capsula: riserva vera altezza alla fisica, senza ridurre il tavolo alla sola fila. */
.app-layout-active .room-grid--play:has(.dice-renderer--capsule),.app-layout-active .app-layout-solo .room-grid--play{grid-template-rows:50px minmax(0,1fr) clamp(245px,32dvh,310px)}
.app-layout-active .room-top{position:relative;margin-bottom:5px;padding:0}.app-layout-active .room-heading{margin-top:0;min-height:66px}.app-layout-active .back-button{min-height:36px}.astra-state #abandon-room{color:#41556d}
.astra-material{color:#18213e}.astra-material>i{color:#274c60}.astra-trophy{color:#18213e;background:#eff7f688;border-color:#527b8d55}.astra-trophy small{color:#3d586b}
.score-reference--mix{-webkit-mask:none;mask:none;border-radius:14px}.score-reference--mix .sr-row{border:1px solid #c5d6df;border-radius:10px;background:#fffcf3;grid-template-columns:60px minmax(0,1fr) 42px}.score-reference--mix .sr-closed{background:#dce9e9}.score-reference--mix .sr-selected{border:2px solid #078dc2;box-shadow:0 0 0 2px #53cced}
@media(max-height:650px){.app-layout-active .room-grid--play:has(.dice-renderer--capsule),.app-layout-active .app-layout-solo .room-grid--play{grid-template-rows:42px minmax(0,1fr) 210px}.app-layout-active .room-heading{min-height:54px}.app-layout-active .back-button{min-height:30px}}
.astra-records-hub{color:#18213e;background:#f4f9f8;border:0;border-radius:10px;padding:10px;margin-bottom:12px}
.dice-stage.has-physics .die.tenuto::after{border:0;border-radius:99px;background:#18213e;color:#effbfc;font-size:9px;letter-spacing:.02em;padding:4px 8px;clip-path:none;transform:translateX(-50%);bottom:-9px}
.app-layout-active .room-grid--play>.score-panel{scroll-padding-bottom:56px}

/* Pagina libera: la scheda punti non cattura lo scorrimento del dispositivo. Solo sotto i 761px (iPhone): da iPad in su vale il viewport fisso di #5309, scheda e dadi interi senza scorrere. */
@media(max-width:760px){
body.app-layout-active{height:auto;overflow-y:auto;overscroll-behavior:auto}
.app-layout-active .app-shell{height:auto;min-height:100dvh;overflow:visible}
.app-layout-active main{overflow:visible;min-height:auto}
.app-layout-active .room-page{height:auto;max-height:none;overflow:visible;min-height:auto}
.app-layout-active .room-grid--play,.app-layout-active .room-grid--play:has(.dice-renderer--capsule),.app-layout-active .app-layout-solo .room-grid--play{flex:none;grid-template-rows:66px auto clamp(245px,32dvh,310px)}
.app-layout-active .room-grid--play>.players-strip{height:66px}
.app-layout-active .players-strip>.player-tile{height:64px}
.app-layout-active .room-grid--play>.score-panel,.app-layout-active .room-grid--play>.side-stack,.app-layout-active .room-grid--play>.results{height:auto;max-height:none;overflow:visible;overscroll-behavior:auto}
.app-layout-active .room-grid--play>.score-panel .sr-game{position:static}
}
.astra-state #abandon-room{position:relative;isolation:isolate;min-height:44px;padding:7px 12px;border:1px solid #fff8;border-radius:999px;background:linear-gradient(145deg,#ffbac1aa,#ee486588 48%,#ce214577);color:#6e0c25;box-shadow:inset 0 1px 0 #fffe,inset 0 -1px 0 #a4123033,0 3px 10px #9a163c24;backdrop-filter:blur(16px) saturate(1.6);-webkit-backdrop-filter:blur(16px) saturate(1.6);font-weight:750}
.astra-state #abandon-room:hover{background:linear-gradient(145deg,#ffd4daaa,#ee4865aa);color:#58091d}
.astra-state #abandon-room:focus-visible{outline:3px solid #9b1636;outline-offset:3px}

.app-layout-active .room-grid--play>.score-panel .sr-footer{position:static}
