/* Общая сцена REASTRA: фон остаётся видимым, текст читается за счёт локальной тени. */
.topbar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;padding-right:var(--gutter);min-height:98px}
.topbar .profile-chip{max-width:100%;justify-self:start;min-height:60px;gap:12px}
.avatar-ring{--level-progress:0%;position:relative;display:inline-grid;place-items:center;width:62px;height:62px;flex:none;border-radius:50%;background:conic-gradient(var(--accent) var(--level-progress),#ffffff42 0);padding:3px}
.avatar-ring.unknown-progress{background:#ffffff42}
.avatar-motion{position:relative;display:block;width:100%;height:100%;border-radius:50%;overflow:hidden;background:var(--raised)}
.avatar-motion>.profile-avatar{width:100%;height:100%;border-radius:50%;background:transparent}
.avatar-motion>.shared-resource{position:absolute;inset:0}
.avatar-motion.large{width:120px;height:120px}
.level-badge{position:absolute;right:-4px;bottom:-5px;display:grid;place-items:center;min-width:22px;height:22px;padding:0 4px;border-radius:50%;background:var(--accent);color:var(--accent-ink);font:700 11px var(--font-numbers);text-shadow:none}
.identity{max-width:min(25vw,240px);font-size:14px;line-height:1.25}
.identity strong{display:block;overflow:hidden;text-overflow:ellipsis;font-weight:600}
.identity small{display:block;margin-top:4px;letter-spacing:0;font-size:12px;color:var(--text)}
.header-center{justify-self:center;text-align:center;line-height:1.1}
.header-brand{display:block;font:600 11px var(--font-accent);letter-spacing:.12em;color:var(--muted)}
.header-balance{display:flex;align-items:center;justify-content:center;gap:4px}
.header-balance .balance-chip{min-height:38px;font-size:21px;font-weight:650;padding:2px 4px}
.header-plus{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);font-size:24px;line-height:1}
.menu-button{position:static;justify-self:end;margin:0}
.shell-back{display:block;margin:0 auto;max-width:var(--page-width);width:100%;padding:0 var(--gutter);text-align:left;min-height:38px;color:var(--text);font-size:14px}
.shell-back:hover{text-decoration:underline}
main{padding-top:14px}
.home-grid{max-width:960px;margin:0 auto;align-items:stretch}
.home-grid .card{background:transparent;border:1px solid #ffffff4d;box-shadow:0 4px 22px #0005;text-shadow:0 2px 8px #000b;backdrop-filter:blur(2px)}
.home-grid .card:nth-child(2){background:transparent}
.home-grid .card-image{align-self:center;object-fit:contain;width:auto;max-width:100%;height:120px}
.home-grid .card[data-size=featured] .card-image{width:100%;height:180px;object-fit:cover}
.home-grid .balance-card{grid-column:1/-1;justify-self:center;width:min(100%,440px);text-align:center;align-items:center}
.home-grid .balance-card .actions{justify-content:center;margin:auto 0 0}
.home-grid .profile-card{grid-column:1/-1;justify-self:center;width:min(100%,440px);align-items:center;text-align:center;min-height:190px}
.home-grid .profile-card .avatar-motion{width:72px;height:72px;margin-bottom:10px}
.home-grid .profile-card h3{margin:0 0 7px}
.home-grid .profile-card p{margin:0}
.guest-banner{max-width:880px;margin:0 auto 28px;text-align:center;text-shadow:0 2px 8px #000b}
.topbar .guest-banner{grid-column:1/-1;justify-self:center;width:100%;margin:8px auto 6px}
.guest-warning{color:var(--danger);font-weight:650}
.link-button{color:var(--lagoon);text-decoration:underline;font-size:inherit}
.guest-help{max-width:610px;margin:0 auto;color:var(--text)}
.guest-entry{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:5px 12px;margin:8px auto 0;max-width:600px;padding:0;background:transparent;border:0}
.guest-entry .button{padding:9px 20px;min-height:42px}
.guest-entry small{color:var(--muted)}
.profile-main{margin-left:auto;margin-right:auto;text-align:center;background:#101b30a8}
.profile-main .profile-avatar-action{display:inline-block;margin:auto}
.profile-main .profile-appearance{width:136px;height:136px;padding:6px;border-radius:50%;margin:0 auto 16px}
.profile-main progress{width:min(100%,310px);height:11px;accent-color:var(--accent)}
.profile-main .actions{justify-content:center}
.setting-switch{display:flex;align-items:center;gap:12px;justify-content:center;min-height:48px;color:var(--text)}
.setting-switch input,.menu-setting input{width:20px;height:20px;accent-color:var(--accent);margin:0}
.account-panel{margin-left:auto;margin-right:auto}
.account-panel .password-toggle{color:var(--lagoon);text-decoration:underline;margin-top:4px;min-height:32px}
.form-status:not(:empty){color:var(--text);margin-top:12px}
.security-block{margin:14px auto;padding:20px 24px}
.security-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.security-heading h2{font-size:23px;margin:0}
.help-button{display:grid;place-items:center;min-width:44px;min-height:44px;color:var(--lagoon);font-size:20px}
.security-help{border-left:2px solid var(--lagoon);padding-left:12px;margin:12px 0;color:var(--muted)}
.security-block>.button{padding:8px 15px;min-height:42px}
.security-block>p{margin:6px 0 10px}
.security-form{margin-top:18px;padding-top:8px;border-top:1px solid var(--border)}
.login-password-title{font-size:23px;text-align:center;margin-top:30px}
.guest-banner p{font-size:13px;margin:0;line-height:1.6}
.guest-available{font-weight:400;color:var(--text)}
.guest-help p{font-size:14px;margin:8px 0;text-align:left}
.guest-entry small{white-space:nowrap;font-size:11px}
.home-grid>.card{align-items:center;text-align:center}
.home-grid>.card:not(.balance-card) h3{margin:12px 0 8px}
.home-grid>.card p{max-width:42ch}
/* Общий вход в раздел короче игровых карточек; рисунок по-прежнему даёт модуль. */
.home-grid>.overview-card{grid-column:1/-1;justify-self:center;width:min(100%,440px);min-height:146px;padding:14px 24px;gap:0}
.home-grid>.overview-card h3{font-size:20px;margin:6px 0}
.home-grid>.overview-card p{font-size:13px;line-height:1.4;margin:0}
.home-grid>.overview-card .card-media{height:64px;margin-bottom:0}
.home-grid>.overview-card .symbol{font-size:32px}
.hold-stage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;min-height:150px;max-width:620px;margin:24px auto;padding:16px;border:1px solid #ffffff55;border-radius:20px}
.hold-button{grid-row:1;min-width:165px;touch-action:none;user-select:none;white-space:nowrap}
.hold-button[data-slot="0"]{grid-column:1;justify-self:start}.hold-button[data-slot="1"]{grid-column:2;justify-self:center}.hold-button[data-slot="2"]{grid-column:3;justify-self:end}
.hold-button.holding{transform:scale(1.06);box-shadow:0 0 0 5px #ef9bbe55}
.credential-warning,.logout-warning{color:var(--danger);font-weight:650}
#menu{inset:calc(12px + env(safe-area-inset-top)) var(--gutter) auto auto;min-height:min(420px,90vh);display:flex;flex-direction:column;background:#101b30ef}
#menu:not([open]){display:none}
.menu-collapse{align-self:flex-start;color:var(--muted);min-height:44px}
.menu-setting{display:flex;align-items:center;gap:10px;min-height:48px;padding:8px 12px;color:var(--text)}
.menu-logout{align-self:flex-end;margin-top:auto;min-height:48px;color:var(--danger);font-weight:650}
.confirm-dialog{inset:0;margin:auto;width:min(460px,calc(100% - 24px));text-align:center}
.confirm-dialog .actions{justify-content:center}
.confirm-dialog .primary{background:var(--danger);border-color:var(--danger);color:#280d16}
footer{letter-spacing:0;text-align:center;font-size:12px;border:0}
footer span{float:none}
footer a{color:var(--lagoon);text-decoration:underline}
.footer-brand{display:block;margin-top:8px;letter-spacing:.18em;color:var(--muted)}
@media(max-width:760px){.topbar{grid-template-columns:minmax(0,1fr) auto 48px;padding-top:calc(8px + env(safe-area-inset-top));min-height:80px}.avatar-ring{width:48px;height:48px}.header-balance .balance-chip{font-size:16px}.header-plus{width:28px;height:28px;font-size:20px}.identity{max-width:25vw}.home-grid .card:not(.balance-card):not(.overview-card){min-height:180px}}
@media(max-width:430px){.topbar{gap:4px}.topbar .profile-chip{gap:6px}.avatar-ring{width:42px;height:42px}.identity{max-width:23vw;font-size:12px}.identity small{font-size:10px}.header-brand{font-size:10px}.header-balance .balance-chip{font-size:14px}.header-balance .star-icon{width:16px;height:16px}.header-plus{width:26px;height:26px}.menu-button{width:40px}.home-grid .balance-card,.home-grid .profile-card{grid-column:1}.guest-banner{margin-bottom:16px}}
@media(max-width:430px){.hold-stage{grid-template-columns:repeat(3,minmax(0,1fr));padding:6px}.hold-button{min-width:0;width:125px;max-width:calc(100vw - 60px);min-height:56px;font-size:12px;line-height:1.2;white-space:normal;overflow-wrap:anywhere}.hold-button[data-slot="0"]{justify-self:start}.hold-button[data-slot="1"]{justify-self:center}.hold-button[data-slot="2"]{justify-self:end}}
