.mobile-shell .mp-shell:is(.game-sp_common,.game-dp_common) { --cm-brand:var(--theme-primary,#007f7b); --cm-deep:var(--theme-primary-deep,#005a57); --cm-surface:#fff; --cm-soft:#edf5f8; --cm-ink:#193a4d; --cm-muted:#617d8d; --cm-line:#cbdfe7; padding-bottom:0!important; }
html[data-app-theme=neon] .mobile-shell .mp-shell:is(.game-sp_common,.game-dp_common) { --cm-surface:#172c42; --cm-soft:#10253a; --cm-ink:#f2f9ff; --cm-muted:#b3c7d8; --cm-line:#38566e; }
.mobile-shell :is(.game-sp_common,.game-dp_common) .mp-header { min-height:56px; padding:7px 10px!important; gap:7px; background:linear-gradient(125deg,var(--cm-brand),var(--cm-deep)); }
.mobile-shell :is(.game-sp_common,.game-dp_common) .mp-header h1 { font-size:clamp(15px,3.8vw,19px); white-space:normal; line-height:1.25; color:#fff!important; }
.mobile-shell :is(.game-sp_common,.game-dp_common) .mp-wallet-pill { min-height:32px; padding:0 8px; font-size:11px; }
.mobile-shell :is(.game-sp_common,.game-dp_common) .mp-back { width:28px; height:32px; }
.mobile-shell :is(.game-sp_common,.game-dp_common) .mp-content { padding:10px 10px 160px!important; }
.common-play { color:var(--cm-ink); }
.common-play button,.common-play input,.common-play select { font:inherit; touch-action:manipulation; }
.common-heading { display:flex; align-items:center; gap:9px; margin-bottom:12px; }
.common-mark { display:grid; place-items:center; width:40px; height:40px; border-radius:12px; border:1px solid #ffffffc0; color:#fff; background:linear-gradient(135deg,color-mix(in srgb,var(--cm-brand),white 32%),var(--cm-deep)); box-shadow:0 3px 8px #123d4f24,inset 0 1px 3px #ffffffa0; font-weight:900; font-size:16px; }
.common-heading strong { display:block; font-size:16px; }
.common-heading small { display:block; margin-top:3px; font-size:11px; color:var(--cm-muted); }
.common-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.common-fields label { min-width:0; font-size:12px; font-weight:750; }
.common-fields input,.common-fields .common-session,.common-starline { display:block; width:100%; min-width:0; min-height:48px; margin-top:5px; padding:9px 12px; border:1px solid var(--cm-line); border-radius:13px; background:var(--cm-surface); color:var(--cm-ink); box-shadow:0 3px 8px #12394c08; }
.common-fields input { font-size:22px; font-weight:750; }
.common-fields .common-session,.common-starline { font-size:14px; font-weight:750; }
.common-starline { display:flex; align-items:center; }
.common-fields input:focus { outline:2px solid var(--cm-brand); outline-offset:1px; }
.common-fields input[aria-invalid=true] { border-color:#cc2851; }
.common-toolbar { display:flex; align-items:center; gap:8px; margin:14px 0 9px; min-height:30px; }
.common-toolbar strong { font-size:13px; }
.common-toolbar>span { margin-left:auto; font-size:10px; color:var(--cm-muted); }
.common-toolbar button { min-height:30px; border:1px solid var(--cm-line); border-radius:9px; padding:5px 8px; font-size:10px; font-weight:700; background:var(--cm-surface); color:var(--cm-ink); cursor:pointer; }
.common-digits { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:9px 8px; }
.common-digits button { min-width:0; min-height:64px; display:grid; align-content:center; gap:5px; padding:7px 2px; border:1px solid hsl(var(--common-hue) 52% 73%); border-radius:14px; color:var(--cm-ink); background:linear-gradient(145deg,var(--cm-surface),hsl(var(--common-hue) 70% 91%)); box-shadow:0 3px 0 hsl(var(--common-hue) 35% 82%),inset 0 1px 2px #ffffffa0; cursor:pointer; transition:transform .12s; }
.common-digits strong { font-size:26px; font-weight:850; line-height:1.1; }
.common-digits span { font-size:9px; color:var(--cm-muted); font-weight:650; }
.common-digits button.selected { background:linear-gradient(130deg,hsl(var(--common-hue) 68% 43%),hsl(var(--common-hue) 70% 26%)); border-color:hsl(var(--common-hue) 60% 30%); box-shadow:0 3px 0 hsl(var(--common-hue) 60% 20%),inset 0 1px 3px #ffffff80; }
.mobile-shell :is(.game-sp_common,.game-dp_common) .common-digits button.selected strong,.mobile-shell :is(.game-sp_common,.game-dp_common) .common-digits button.selected span { color:#fff!important; }
.common-digits button:active,.common-panas button:active { transform:scale(.96); }
.common-play button:disabled { opacity:.5; cursor:default; }
.common-play button:focus-visible { outline:3px solid #ffc342; outline-offset:2px; }
.common-feedback { margin:9px 0; color:#c8244e; font-size:12px; line-height:1.5; }
.common-feedback:empty { display:none; }
.common-empty { display:grid; justify-items:center; gap:7px; padding:25px 8px; margin-top:16px; border:1px dashed var(--cm-line); border-radius:16px; color:var(--cm-muted); text-align:center; }
.common-empty>span { font-size:26px; color:var(--cm-brand); }
.common-empty strong { font-size:13px; color:var(--cm-ink); }
.common-empty small { font-size:11px; }
.common-group { margin-top:14px; border:1px solid hsl(var(--common-hue) 48% 67%); border-radius:15px; padding:7px; background:linear-gradient(var(--cm-surface),hsl(var(--common-hue) 65% 94%)); box-shadow:0 3px 10px #163e500a; }
.common-group>header { display:flex; align-items:center; gap:7px; padding-bottom:9px; }
.common-group-digit { display:grid; place-items:center; flex-shrink:0; width:31px; height:31px; border-radius:10px; background:hsl(var(--common-hue) 60% 89%); color:hsl(var(--common-hue) 65% 24%); font-size:18px; font-weight:850; }
.common-group header strong { display:block; font-size:12px; color:var(--cm-ink); }
.common-group header small { display:block; margin-top:3px; font-size:9px; color:var(--cm-muted); }
.common-group header button { margin-left:auto; min-height:30px; padding:5px 7px; border:1px solid var(--cm-line); border-radius:9px; background:var(--cm-soft); color:var(--cm-ink); font-size:10px; font-weight:650; cursor:pointer; }
.common-panas { display:grid; grid-template-columns:repeat(9,minmax(0,1fr)); gap:4px; }
.common-panas button { min-width:0; position:relative; display:grid; justify-items:center; align-content:start; gap:3px; min-height:62px; padding:15px 1px 5px; border:1px solid hsl(var(--common-hue) 48% 70%); border-radius:8px; color:var(--cm-ink); background:linear-gradient(145deg,var(--cm-surface),hsl(var(--common-hue) 70% 87%)); cursor:pointer; transition:transform .12s; }
.common-panas strong { max-width:100%; font-size:clamp(10px,3vw,14px); line-height:1.15; font-weight:800; letter-spacing:-.2px; }
.common-panas span { min-width:0; max-width:100%; font-size:8px; line-height:1.3; white-space:normal; overflow-wrap:anywhere; color:var(--cm-ink); }
.common-panas i { position:absolute; top:1px; right:3px; font-style:normal; font-size:10px; line-height:1; color:#9a173a; }
.mobile-shell :is(.game-sp_common,.game-dp_common) .mp-bottom-bar { min-height:62px; background:var(--cm-surface); color:var(--cm-ink); }
.mobile-shell :is(.game-sp_common,.game-dp_common) .mp-submit-btn { min-height:44px; background:linear-gradient(125deg,var(--cm-brand),var(--cm-deep)); }
html[data-app-theme=neon] .common-panas button { background:linear-gradient(145deg,#172c42,hsl(var(--common-hue) 35% 18%)); border-color:hsl(var(--common-hue) 30% 38%); }
html[data-app-theme=neon] .common-group { border-color:hsl(var(--common-hue) 30% 38%); }
html[data-app-theme=neon] .common-group { background:linear-gradient(#172c42,hsl(var(--common-hue) 38% 16%)); }
html[data-app-theme=neon] .common-digits button:not(.selected) { background:linear-gradient(#172c42,hsl(var(--common-hue) 45% 23%)); }
@media(prefers-reduced-motion:reduce) { .common-play * { transition:none!important; } }
