/* Supplied Poppu artwork, clear actions and usable game controls. */
.home-play-actions { width:100%;max-width:480px;margin:2px 0 8px;align-self:flex-start; }
.home-play-actions button { width:100%;min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;font-size:1.1rem;padding:12px 22px;border-radius:18px; }
#resume-btn { flex-wrap:wrap; }
#resume-detail { width:100%;order:3;font-size:.8rem;font-weight:600;opacity:.9; }
.arcade-hub { position:relative;margin-top:14px; }
.arcade-heading { padding-right:92px; }
.arcade-navigation { display:none;position:absolute;right:0;top:27px;gap:8px; }
.arcade-navigation button { width:44px;height:44px;background:#fffdf8;border:1px solid #d6dfd4;border-radius:50%;font-size:1.2rem;color:#35584a;cursor:pointer; }
.arcade-card { display:block;border-radius:22px; }
.arcade-card-art { height:auto!important;aspect-ratio:8/5;min-height:0!important; }
.arcade-card-art .premium-card-image { position:static;display:block;width:100%;height:100%;object-fit:cover;transform:none;filter:none;pointer-events:none; }
.arcade-card-copy { gap:7px; }
.arcade-card-play { padding:9px 14px; }
.brand-mascot img,.tutorial-mascot img,.game-mascot-wrap img { aspect-ratio:1;object-fit:contain; }
.game-mascot-wrap img { width:64px;height:64px; }
.tutorial-mascot img { width:128px;height:128px; }
.journey-mascot { width:44px;height:44px;object-fit:contain; }
.help-art { width:112px;height:112px;object-fit:contain;display:block;margin:0 auto; }
.help-art.is-scene { width:100%;height:auto;max-height:180px;object-fit:contain;border-radius:16px;margin-bottom:14px; }
.help-example { font-size:1.5rem;font-weight:800;color:#426653;letter-spacing:.04em;margin:8px 0; }
.help-example:empty { display:none; }
.help-card { max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain; }
.block-grid { border:2px solid #c8ad85;background:#d9bf96;box-shadow:inset 0 3px 5px #8b653b30; }
.block-cell { border:1px solid #bfa882;background:#fff6e5; }
.block-cell[class*='block-color-'] { border-color:#765c3d50; }
.block-color-0 { background:#62a69b!important; }.block-color-1 { background:#b48bc5!important; }.block-color-2 { background:#d7996a!important; }.block-color-3 { background:#7c9dc5!important; }
.block-cell.is-preview { background:var(--preview-color);opacity:.72;outline:2px dashed #58402c;outline-offset:-3px; }
.block-cell.preview-anchor::after { content:'•';color:#fff;font-size:1.6rem; }
.block-piece { --piece-unit:14px;position:relative;padding:9px 2px 17px;min-height:76px; }
.piece-preview { grid-auto-rows:var(--piece-unit); }
.piece-dot { width:var(--piece-unit);height:var(--piece-unit);border:1px solid #ffffff50;box-shadow:inset 0 -2px #00000015; }
.piece-name { position:absolute;bottom:1px;font:700 .66rem var(--font);color:#6b5740; }
body.a11y-contrast .block-cell { border:2px solid #594527; }
@media(max-width:799px) {
 .arcade-cards { display:flex;overflow-x:auto;gap:16px;scroll-snap-type:x mandatory;padding:0 2px 14px;scrollbar-width:thin;scrollbar-color:#9cad9e transparent; }
 .arcade-card { flex:0 0 84%;scroll-snap-align:start; }
 .arcade-navigation { display:flex; }
 .arcade-card-copy { padding:16px 18px; }
 .arcade-card-title { font-size:1.2rem; }
 .arcade-card-desc { font-size:.88rem; }
 .arcade-card-play { background:#eef3e9!important;padding:8px 12px;font-size:.9rem;width:max-content; }
 .arcade-card-meta { font-size:.74rem; }
 .track-pick { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;gap:5px; }
 .track-btn { padding:9px 4px;font-size:.73rem;min-height:48px;border-radius:14px; }
 .start-screen > .brand-mascot img { width:86px; }
 .start-screen > .subtitle { max-width:77%; }
 .arcade-heading h2 { font-size:1.65rem; }
}
@media(max-width:370px) {
 .track-btn { font-size:.68rem; }
 .arcade-heading { padding-right:0; }
 .arcade-navigation { position:static;justify-content:flex-end;margin-top:-8px;margin-bottom:10px; }
 .arcade-card { flex-basis:90%; }
 .block-piece { --piece-unit:13px; }
}
@media(min-width:700px) and (max-height:500px) {
 body[data-arcade]:not([data-arcade='']) .app { max-width:850px;padding-top:60px; }
 body[data-arcade]:not([data-arcade='']) .journey { display:none; }
 .arcade-blocks { display:grid;grid-template-columns:220px 1fr;gap:12px 24px;align-items:center;padding:12px 18px; }
 .arcade-blocks .block-grid { grid-row:1/3;max-width:208px;width:208px; }
 .arcade-blocks .block-tray { margin:0;grid-template-columns:repeat(2,1fr);gap:8px; }
 .arcade-blocks .block-piece { min-height:72px; }
 .arcade-blocks .arcade-toolbar { margin:0;flex-wrap:wrap; }
 .arcade-blocks .block-cell { min-height:40px; }
 .arcade-blocks .arcade-status { flex-basis:100%; }
}
@media(prefers-reduced-motion:reduce) { .arcade-cards { scroll-behavior:auto; } }
.home-play-actions .btn-primary { color:#fff;background:linear-gradient(#2f8064,#21644e);box-shadow:0 5px 0 #194d3d,0 8px 18px #1b523a25; }
.home-play-actions .btn-primary:hover { background:#21644e; }
.piece-dot { color:#342b24; }
