/* Phase 6.1: one portrait shell for every playable game mode. */
#play-screen{padding:12px;background-color:#fffdf8;background-blend-mode:soft-light}
#play-screen.active-screen{display:block}
.portrait-game-shell{width:min(100%,520px);min-height:min(100dvh - 44px,820px);margin:0 auto;display:grid;grid-template-rows:auto auto minmax(128px,1fr) auto auto auto;gap:10px;padding:12px;border-radius:22px;background:rgba(255,255,255,.93);box-shadow:0 12px 32px rgba(53,40,68,.16);overflow:hidden}
.portrait-game-shell>*{min-width:0}.game-hud{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center;padding:10px 12px;border-radius:16px;background:linear-gradient(135deg,#fff1f7,#eef8ff)}.game-hud__progress{display:grid;gap:2px;text-align:left;font-size:13px}.game-hud__title{font-size:17px;font-weight:900;color:#563d67;text-align:center;white-space:nowrap}.game-hud__score{text-align:right;font-size:16px!important;white-space:nowrap}
.game-status-panel{display:grid;gap:7px}.game-stage-label{padding:6px 10px;border-radius:999px;background:#eef5ff;color:#3d5e86;font-size:14px;font-weight:900}.game-status-panel .mode-status{margin:0}.game-status-panel .skill-hud{margin:0}.game-status-panel .progress-container,.game-status-panel .timer-container{margin:0;width:100%}
.game-visual-stage{min-height:128px;display:grid;place-items:center;align-content:center;overflow:hidden}.game-visual-card{display:grid;place-items:center;gap:4px;width:100%;height:100%}.game-visual-card[hidden]{display:none}.game-visual-card img{width:min(58vw,220px);height:min(25dvh,190px);max-width:100%;max-height:190px;object-fit:contain;filter:drop-shadow(0 8px 8px rgba(42,53,75,.2))}.game-visual-label{font-size:14px;font-weight:900;color:#62536e}
.portrait-game-shell .boss-panel{width:100%;max-width:100%;margin:0}.portrait-game-shell .boss-arena{min-height:128px;display:grid;place-items:center;position:relative}.portrait-game-shell .boss-image{position:static!important;width:min(62vw,250px)!important;height:min(26dvh,205px)!important;max-width:100%;max-height:205px;object-fit:contain!important;margin:0!important}.portrait-game-shell .player-cat{position:absolute!important;left:8px!important;bottom:8px!important}.portrait-game-shell--boss .game-visual-stage{min-height:172px}.portrait-game-shell--boss .boss-arena:before{top:6px}
.game-question-card{display:grid;place-items:center;min-height:78px;padding:10px;border:2px solid #f1d8e6;border-radius:18px;background:rgba(255,255,255,.96)}.game-question-card .question-text{margin:0!important;max-width:100%;font-size:clamp(29px,8vw,42px)}.game-answer-panel{width:100%}.game-answer-panel #options-container{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}.game-feedback-panel{display:grid;justify-items:center;gap:5px;min-height:42px}.game-feedback-panel #feedback{margin:0!important;min-height:28px!important}
#feedback.game-answer-feedback{display:grid;place-items:center;min-height:32px!important;margin:0!important;font-family:"Gaegu","Jua",cursive,sans-serif!important;font-size:clamp(23px,6.5vw,28px)!important;font-weight:800;line-height:1.2;letter-spacing:.02em;text-align:center;transform-origin:center;animation:portrait-feedback-pop .22s ease-out}.game-answer-feedback.is-correct{color:#df4f8d;text-shadow:0 2px 0 #fff,0 3px 8px rgba(255,179,71,.3)}.game-answer-feedback.is-wrong{color:#c34855;text-shadow:0 2px 0 #fff,0 3px 8px rgba(120,65,79,.18)}@keyframes portrait-feedback-pop{from{opacity:.2;transform:translateY(4px) scale(.92)}to{opacity:1;transform:none}}
#result-screen,.adventure-result-card{width:min(100%,520px);margin-left:auto;margin-right:auto}.portrait-game-active #game-container{max-width:560px}.mode-card.division-exact{background:linear-gradient(145deg,#d3f0c7,#8ccf92)}.mode-card.division-remainder{background:linear-gradient(145deg,#d7cdf7,#a99ae0)}.mode-card.mode-card--locked{position:relative;filter:none;cursor:pointer}.mode-card.mode-card--locked:before{content:"";position:absolute;inset:0;border-radius:inherit;background:rgba(68,73,83,.58);backdrop-filter:grayscale(1);pointer-events:none}.mode-card.mode-card--locked>*{position:relative;z-index:1}.mode-card.mode-card--locked strong:before{content:"🔒 "}.mode-card.mode-card--locked .division-mode-status{color:#fff;background:rgba(25,29,35,.56);padding:4px 7px;border-radius:8px;font-style:normal}.mode-card .division-mode-status{display:block;margin-top:7px;font-size:13px;font-style:normal;font-weight:800}
@media(min-width:700px){.portrait-game-shell{min-height:760px}.game-answer-panel #options-container{grid-template-columns:repeat(2,minmax(0,1fr))!important}.game-visual-card img{width:220px;height:190px}}
@media(max-width:520px){body{padding:0}#game-container{min-height:100dvh;border-radius:0;padding:0}#play-screen{min-height:100dvh;padding:8px}.portrait-game-shell{width:100%;min-height:calc(100dvh - 16px);grid-template-rows:auto auto minmax(112px,1fr) auto auto auto;gap:8px;padding:9px;border-radius:16px}.game-hud{padding:8px;gap:5px}.game-hud__title{font-size:15px}.game-hud__score{font-size:13px!important}.game-visual-stage{min-height:112px}.portrait-game-shell--boss .game-visual-stage{min-height:150px}.game-visual-card img{width:min(58vw,190px);height:min(22dvh,155px)}.portrait-game-shell .boss-arena{min-height:116px}.portrait-game-shell .boss-image{width:min(64vw,210px)!important;height:min(23dvh,165px)!important}.game-question-card{min-height:64px;padding:8px}.game-question-card .question-text{font-size:clamp(25px,8vw,35px)}.btn-answer,.option-btn{min-height:clamp(58px,15vw,76px)!important;font-size:clamp(22px,7vw,31px)!important}.game-feedback-panel{min-height:32px}.game-feedback-panel #feedback{min-height:22px!important}.game-feedback-panel #feedback.game-answer-feedback{min-height:26px!important;font-size:clamp(23px,6.5vw,28px)!important}.portrait-game-shell .player-cat{width:min(42%,150px)!important}.portrait-game-shell .player-cat img{width:40px!important;height:40px!important}}

/* TODO(Phase 6.2): vary diamond-effect positions inside the safe viewport. */
