.settings-panel{position:fixed;inset:0;z-index:9998;display:flex;align-items:center;justify-content:center;padding:16px;background:#34263999}.settings-panel[hidden]{display:none}.settings-modal{width:100%;max-width:320px;border:4px solid var(--line);border-radius:0;background:var(--panel);box-shadow:var(--shadow-modal);overflow:hidden}.settings-body{display:grid;gap:12px;padding:20px 18px}.settings-footer{padding:12px 18px;border-top:3px solid var(--line);background:#fff2f8;text-align:center}.welcome-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:16px;background:#342639b8}.welcome-overlay[hidden]{display:none}.welcome-modal{width:100%;max-width:420px;max-height:86dvh;display:grid;gap:16px;padding:20px 18px;border:4px solid var(--line);border-radius:0;background:var(--paper);box-shadow:var(--shadow-modal);overflow-y:auto}.welcome-body{font-size:.95rem;line-height:1.75;white-space:pre-wrap;color:var(--ink)}.device-overlay{display:none;position:fixed;inset:0;z-index:9999;background:var(--panel, #fff8fb);flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center;padding:32px}@media(orientation:landscape)and (hover:none)and (pointer:coarse){.landscape-overlay{display:flex}}:root{color-scheme:light;--sakura: #f8a8c6;--sakura-soft: #ffe6f0;--mint: #7bdcb5;--mint-dark: #278f70;--ink: #342639;--panel: #fff8fb;--paper: #fffdf7;--sky: #b9ecff;--violet: #8b6fb8;--warning: #f3b44c;--danger: #d95b76;--shadow: #7a647b;--line: #4c384f;--pixel: 4px;--shadow-window: 6px 6px 0 rgba(52, 38, 57, .28);--shadow-modal: 8px 8px 0 rgba(52, 38, 57, .32);--shadow-button-strong: inset -4px -4px 0 rgba(52, 38, 57, .18), 4px 4px 0 rgba(52, 38, 57, .28);--shadow-button-strong-hover: inset -3px -3px 0 rgba(52, 38, 57, .2), 3px 3px 0 rgba(52, 38, 57, .24);--shadow-button-compact: inset -3px -3px 0 rgba(52, 38, 57, .18), 3px 3px 0 rgba(52, 38, 57, .28);--shadow-button-compact-hover: inset -2px -2px 0 rgba(52, 38, 57, .2), 2px 2px 0 rgba(52, 38, 57, .24);--shadow-button-soft: inset -4px -4px 0 rgba(52, 38, 57, .12), 4px 4px 0 rgba(52, 38, 57, .22);--shadow-button-soft-hover: inset -3px -3px 0 rgba(52, 38, 57, .14), 3px 3px 0 rgba(52, 38, 57, .18);--shadow-button-flat: inset -4px -4px 0 rgba(52, 38, 57, .1), 4px 4px 0 rgba(52, 38, 57, .18);--shadow-button-flat-hover: inset -3px -3px 0 rgba(52, 38, 57, .12), 3px 3px 0 rgba(52, 38, 57, .14);--shadow-button-small: inset -3px -3px 0 rgba(52, 38, 57, .12), 3px 3px 0 rgba(52, 38, 57, .2);--shadow-button-small-hover: inset -2px -2px 0 rgba(52, 38, 57, .14), 2px 2px 0 rgba(52, 38, 57, .16);font-family:Noto Sans TC,Microsoft JhengHei,system-ui,sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:linear-gradient(90deg,rgba(255,255,255,.22) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.22) 1px,transparent 1px),linear-gradient(135deg,#ffcee0,#f7f0b6 48%,#bff3db);background-size:16px 16px,16px 16px,auto;color:var(--ink)}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{min-height:100vh;min-height:100dvh;padding:16px 12px}.game-window{width:100%;max-width:480px;min-height:calc(100dvh - 32px);margin:0 auto;display:grid;grid-template-rows:auto auto 1fr auto;border:4px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:var(--shadow-window);overflow:hidden}.window-controls{display:flex;gap:6px}.window-dot{width:18px;aspect-ratio:1;border:3px solid var(--line);background:var(--paper);box-shadow:inset -3px -3px #00000029}.status-strip{display:grid;grid-template-columns:minmax(150px,auto) 1fr minmax(100px,165px);gap:12px;align-items:center;padding:12px;border-bottom:4px solid var(--line);background:#fff2f8}.stat-box{display:grid;gap:2px;padding:8px 10px;border:3px solid var(--line);background:var(--paper);box-shadow:inset -4px -4px #3426391f}.progress-wrap{display:grid;gap:6px}.pixel-progress{position:relative;height:24px;border:3px solid var(--line);background:repeating-linear-gradient(90deg,#f7d7e3 0 16px,#ffeef5 16px 32px);overflow:hidden}.pixel-progress__fill{width:0%;height:100%;background:repeating-linear-gradient(90deg,var(--mint) 0 18px,#a7ebcf 18px 36px);transition:width .24s steps(6)}.pixel-progress__defs{position:absolute;width:0;height:0;overflow:hidden}.pixel-progress__icons{position:absolute;inset:0;display:grid;grid-template-columns:repeat(12,1fr);align-items:center;padding:0 6px;pointer-events:none}.progress-icon{justify-self:center;width:16px;height:16px;overflow:visible;filter:drop-shadow(1px 1px 0 rgba(52,38,57,.42));transform-origin:center;transition:filter .18s steps(3),transform .18s steps(3)}.progress-icon__leaf{fill:#278f70;opacity:1}.progress-icon__heart{fill:#d95b76;opacity:0}.progress-icon.is-heart{filter:drop-shadow(1px 1px 0 rgba(52,38,57,.45)) drop-shadow(0 0 4px rgba(248,168,198,.75));transform:translateY(-1px) scale(1.08)}.progress-icon.is-heart .progress-icon__leaf{opacity:0}.progress-icon.is-heart .progress-icon__heart{opacity:1}.main-grid{display:flex;flex-direction:column;align-items:center;min-height:0;overflow:hidden}.scene-panel{position:relative;width:min(470px,100%);flex-shrink:0;border-bottom:4px solid var(--line);overflow:hidden}.scene-header{z-index:2;display:flex;justify-content:space-between;gap:12px;padding:12px;border-bottom:4px solid var(--line);background:#fffdf7e6}.scene-visual{position:relative;display:grid;place-items:end center;width:min(470px,100%);height:190px;flex-shrink:0;padding:8px 8px 0;background:linear-gradient(#ffffff47,#ffffff14),var(--scene-bg, linear-gradient(180deg, #b9ecff 0%, #f8ffc9 58%, #b8e6b8 100%))}.scene-visual:before{content:"";position:absolute;inset:auto 0 0;height:32%;background:linear-gradient(90deg,rgba(76,56,79,.18) 1px,transparent 1px),linear-gradient(rgba(76,56,79,.16) 1px,transparent 1px),#fff8fb73;background-size:24px 24px;border-top:4px solid rgba(76,56,79,.55)}.scene-visual[data-bg=club]{--scene-bg: linear-gradient(180deg, #b9ecff 0%, #eafbd8 52%, #f9cfdf 100%)}.scene-visual[data-bg=campus]{--scene-bg: linear-gradient(180deg, #9ee2ff 0%, #fff1a8 54%, #a3d98b 100%)}.scene-visual[data-bg=shop]{--scene-bg: linear-gradient(180deg, #ffd4e7 0%, #fff9bd 46%, #bfe8dc 100%)}.scene-visual[data-bg=recycle]{--scene-bg: linear-gradient(180deg, #a8f0d1 0%, #ddf7f1 50%, #b7d9ff 100%)}.scene-visual[data-bg=city]{--scene-bg: linear-gradient(180deg, #bad7ff 0%, #f4d4ff 52%, #d7f0b7 100%)}.scene-visual[data-bg=library]{--scene-bg: linear-gradient(180deg, #f3ddb1 0%, #ffeef6 50%, #c8ebd1 100%)}.portrait-container{position:relative;align-self:end;justify-self:center}.character-portrait{position:relative;z-index:1;display:block;width:160px;height:180px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(6px 6px 0 rgba(52,38,57,.22));pointer-events:none;-webkit-user-drag:none;user-select:none}.portrait-guard{position:absolute;inset:0;z-index:2;cursor:default;-webkit-user-drag:none;user-select:none}.side-panel{display:grid;align-self:stretch;min-width:0;background:#fff8fb;overflow:auto}.name-entry{display:grid;gap:12px;padding:16px;border-bottom:4px solid var(--line);background:var(--paper)}.name-entry[hidden]{display:none}.name-entry h2,.result-panel h2{margin:0;font-size:1.1rem}.name-row{display:grid;grid-template-columns:1fr auto;gap:8px}.dialog-box{display:flex;flex-direction:column;gap:8px;padding:16px;width:360px;flex:1;min-height:175px;overflow:hidden;background:#fffdf7}.main-grid:has(.side-panel:not([hidden])) .dialog-box{flex:0 0 175px;border-bottom:4px solid var(--line)}.dialog-box[hidden]{display:none}.choice-area{display:grid;align-content:start;gap:12px;padding:16px;overflow:auto}.choices{display:grid;gap:10px}.feedback-box{display:grid;gap:8px;padding:12px;border:3px solid var(--line);background:#fffdf7}.choice-area[hidden],.feedback-box[hidden],.result-panel[hidden],.toast-stack[hidden],.side-panel[hidden],.footer-bar[hidden],.status-strip[hidden]{display:none}@media(min-width:861px){.app-shell{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px}.game-window{width:min(100%,1180px);max-width:none;min-height:min(760px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);grid-template-rows:auto auto minmax(0,1fr) auto}.game-window:has(.result-panel:not([hidden])){grid-template-rows:auto minmax(0,1fr) auto}.status-strip{grid-template-columns:minmax(180px,220px) minmax(300px,1fr) minmax(180px,240px);padding:14px 16px}.main-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,420px);grid-template-rows:minmax(0,1fr) auto;align-items:stretch;min-height:0}.scene-panel{grid-column:1;grid-row:1 / 3;width:100%;border-right:4px solid var(--line);border-bottom:0}.scene-visual{width:100%;height:100%;min-height:clamp(300px,calc(100dvh - 230px),520px);padding:18px 18px 0}.character-portrait{width:min(42vw,360px);height:clamp(280px,calc(100dvh - 260px),520px)}.dialog-box{grid-column:2;grid-row:1;width:100%;min-height:0;border-bottom:4px solid var(--line)}.main-grid:not(:has(.side-panel:not([hidden]))) .dialog-box{grid-row:1 / 3;border-bottom:0}.main-grid:has(.side-panel:not([hidden])){grid-template-rows:minmax(0,1fr) minmax(0,clamp(160px,34dvh,300px))}.main-grid:has(.side-panel:not([hidden])) .dialog-box{flex:none}.side-panel{grid-column:2;grid-row:2;min-height:0;height:100%;max-height:none;border-top:0;overflow:hidden}.main-grid:has(.result-panel:not([hidden])) .side-panel{grid-row:1 / 3;max-height:none;border-top:0}.choice-area{min-height:0;height:100%;max-height:100%}.main-grid:has(.result-panel:not([hidden])) .result-panel{min-height:100%;border-top:0}}.footer-bar{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:10px 12px;border-top:4px solid var(--line);background:#fffdf7}.toast-stack{display:grid;gap:8px;margin-top:4px}.scene-visual.is-hidden-unlock{animation:hidden-route-flash 1.2s ease-out 1;box-shadow:inset 0 0 0 4px #fff,0 0 24px #7bdcb5d1}@keyframes hidden-route-flash{0%{filter:brightness(1)}35%{filter:brightness(1.55) saturate(1.15)}to{filter:brightness(1)}}.result-panel{display:grid;gap:14px;padding:16px;border-top:4px solid var(--line);background:#fffdf7}.result-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.group-stats,.result-actions{display:grid;gap:10px}.group-stats,.result-actions{padding:12px;border:3px solid var(--line);background:#fff8fb}.group-stats h3{margin:0;font-size:.95rem}.group-stat-row{display:grid;grid-template-columns:56px minmax(0,1fr) 76px;align-items:center;gap:8px}.group-stat-bar{height:12px;border:3px solid var(--line);background:#fff;overflow:hidden}.group-stat-fill{display:block;height:100%;width:0%;background:var(--mint)}.result-actions{background:#f7fbff}.day-transition-overlay{position:fixed;inset:0;z-index:10001;display:flex;align-items:center;justify-content:center;background:#0d0a1af5;opacity:0;pointer-events:none}.day-transition-overlay[hidden]{display:none}.day-transition-window{border:4px solid var(--line);background:var(--panel);box-shadow:8px 8px #34263980;min-width:220px;overflow:hidden;opacity:0;transform:scale(.7)}.day-transition-dots{display:flex;gap:4px}.day-transition-dot{width:10px;height:10px;border:2px solid var(--line);background:#fff;flex-shrink:0}.day-transition-body{padding:28px 36px;text-align:center}@keyframes blink{50%{opacity:0}}.home-shell{min-height:100vh;min-height:100dvh;padding:16px 12px;display:flex;align-items:center;justify-content:center}.home-window{width:100%;max-width:480px;border:4px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:var(--shadow-window);overflow:hidden}.home-hero{position:relative;display:flex;flex-direction:column;align-items:center;padding:20px 16px 60px;background:linear-gradient(180deg,#fff2f8,#fffdf7);border-bottom:4px solid var(--line);gap:12px;overflow:hidden}.home-characters{position:absolute;bottom:-72px;left:0;right:0;display:flex;justify-content:center;align-items:flex-end;gap:0}.home-char-container{position:relative;flex-shrink:0}.home-character-img{width:72px;height:130px;object-fit:contain;object-position:top;image-rendering:pixelated;filter:drop-shadow(3px 0 0 rgba(52,38,57,.2));margin:0 -8px;pointer-events:none;-webkit-user-drag:none;user-select:none}.home-char-guard{position:absolute;inset:0;z-index:2;cursor:default;-webkit-user-drag:none;user-select:none}.home-menu{display:grid;gap:12px;padding:20px 16px}.home-modal-overlay{position:fixed;inset:0;z-index:9998;display:flex;align-items:center;justify-content:center;padding:16px;background:#34263999}.home-modal-overlay[hidden]{display:none}.home-modal-window{width:100%;max-width:420px;max-height:80dvh;display:flex;flex-direction:column;border:4px solid var(--line);background:var(--paper);box-shadow:var(--shadow-modal);overflow:hidden}.home-modal-body{overflow-y:auto;padding:16px;display:grid;gap:12px}.knowledge-day-group{display:grid;gap:8px}.knowledge-day-cards-header{display:flex;align-items:center;gap:10px;padding-bottom:10px;border-bottom:3px solid var(--line)}.settings-titlebar{display:flex;align-items:center;gap:8px;min-height:42px;padding:6px 12px;background:linear-gradient(90deg,var(--sakura),var(--mint));border-bottom:4px solid var(--line)}.settings-title{flex:1;font-weight:900;font-size:.95rem}.settings-copyright{margin:0;font-size:.8rem;color:#76586f}.settings-link{color:var(--mint-dark);font-weight:700;text-decoration:none}.settings-link:hover{text-decoration:underline}.welcome-title{margin:0;font-size:1.15rem;font-weight:900;padding-bottom:10px;border-bottom:3px solid var(--line)}.device-overlay__msg{margin:0;font-size:1.3rem;font-weight:900;line-height:1.5}.title-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;padding:8px 12px;background:linear-gradient(90deg,var(--sakura),var(--mint));border-bottom:4px solid var(--line)}.title-meta{display:flex;align-items:center;gap:8px;min-width:0}.brand{margin:0;font-size:clamp(1rem,2vw,1.35rem);line-height:1.2}.stat-label{font-size:.75rem;color:#76586f}.stat-value{font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress-top{display:flex;justify-content:space-between;gap:12px;font-weight:800}.scene-label{display:grid;gap:2px}.scene-kicker{font-size:.76rem;font-weight:800;color:var(--mint-dark);text-transform:uppercase}.scene-title{margin:0;font-size:clamp(1.1rem,2vw,1.55rem)}.scene-score{min-width:112px;text-align:right;font-weight:900}.speaker{display:inline-flex;width:fit-content;padding:4px 10px;border:3px solid var(--line);background:var(--sakura-soft);font-weight:900}.dialog-text{flex:1;min-height:0;overflow-y:auto;margin:0;font-size:1.02rem;line-height:1.7;white-space:pre-wrap}.dialog-text:after{content:"";display:inline-block;width:8px;height:1.1em;margin-left:2px;background:var(--mint-dark);vertical-align:-.18em;animation:blink .9s step-end infinite}.dialog-text.is-finished:after{display:none}.dialog-continue{display:flex;align-items:center;gap:4px;margin-top:4px;font-size:.8rem;font-weight:700;color:var(--mint-dark);animation:blink 1.2s step-end infinite;cursor:pointer}.dialog-continue[hidden]{display:none}.situation{margin:0;line-height:1.65;font-weight:700}.feedback-title{margin:0;font-weight:900}.feedback-text{margin:0;line-height:1.6}.route-lock{font-weight:800;color:#6d526b}.toast-message{padding:10px 12px;border:3px solid var(--line);background:#d9fff0;font-weight:800}.report-header{display:grid;gap:6px;padding:12px;border:3px solid var(--line);background:linear-gradient(180deg,#fff8fb,#edfff8);box-shadow:inset -4px -4px #34263914}.report-kicker{color:#6d526b;font-size:.72rem;font-weight:900;letter-spacing:0}.report-header p{margin:0;color:#5f465c;font-size:.92rem;line-height:1.55;white-space:pre-line}.report-identity{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.group-stat-list{display:grid;gap:8px}.group-stat-name,.group-stat-value{font-weight:900}.group-stat-name,.group-stat-value{text-align:center}.form-note{margin:0;color:#76586f;font-size:.9rem;line-height:1.5}.day-transition-titlebar{display:flex;align-items:center;gap:6px;min-height:34px;padding:4px 10px;background:linear-gradient(90deg,var(--sakura),var(--mint));border-bottom:4px solid var(--line)}.day-transition-label{margin:0;font-size:clamp(2rem,9vw,3.5rem);font-weight:900;color:var(--ink);letter-spacing:.15em;text-shadow:4px 0 0 var(--sakura),0 4px 0 var(--sakura),4px 4px 0 rgba(52,38,57,.25);opacity:0}.home-title-bar{display:flex;align-items:center;gap:8px;min-height:42px;padding:6px 12px;background:linear-gradient(90deg,var(--sakura),var(--mint));border-bottom:4px solid var(--line)}.home-brand{flex:1;margin:0;font-size:.95rem;font-weight:900}.pixel-title-wrap{display:flex;flex-direction:column;align-items:center;gap:6px;padding-bottom:8px}.pixel-title-badge{margin:0;font-family:"Press Start 2P",monospace;font-size:.58rem;color:var(--mint-dark);letter-spacing:.08em;opacity:.9}.pixel-game-title{margin:0;font-size:clamp(1.8rem,7vw,2.5rem);font-weight:900;text-align:center;line-height:1.25;letter-spacing:.06em;text-shadow:4px 0 0 var(--sakura),-2px 0 0 var(--sakura),0 4px 0 var(--mint),4px 4px 0 rgba(52,38,57,.28),8px 8px 0 rgba(52,38,57,.1)}.team-content{display:flex;flex-direction:column;gap:6px}.team-main-title{margin:0 0 4px;font-size:1rem;font-weight:900;border-bottom:3px solid var(--line);padding-bottom:6px}.team-section-title{margin:10px 0 2px;font-size:.88rem;font-weight:900;color:var(--mint-dark)}.team-list{margin:0;padding-left:1.4em;display:flex;flex-direction:column;gap:2px;font-size:.92rem}.team-desc{margin:0;font-size:.88rem;line-height:1.65;color:#5a4860}.team-content hr{border:none;border-top:2px solid var(--line);margin:8px 0 4px;opacity:.4}.team-link{color:var(--mint-dark);font-weight:700;text-decoration:none}.team-link:hover{text-decoration:underline}.home-footer{padding:10px 16px;border-top:3px solid var(--line);background:#fff2f8;text-align:center;font-size:.8rem;color:#76586f}.home-footer a{color:var(--mint-dark);font-weight:700;text-decoration:none}.home-modal-titlebar{display:flex;align-items:center;gap:8px;min-height:42px;padding:6px 12px;background:linear-gradient(90deg,var(--sakura),var(--mint));border-bottom:4px solid var(--line);flex-shrink:0}.home-modal-title{display:flex;align-items:center;flex:1;margin:0;font-size:.95rem;font-weight:900}.knowledge-day-label{margin:0;font-size:.82rem;font-weight:900;color:var(--mint-dark);text-transform:uppercase;padding-bottom:4px;border-bottom:2px solid var(--line)}.knowledge-card{padding:10px 12px;border:3px solid var(--line);background:#fefbd4;font-size:.92rem;line-height:1.65}.knowledge-card--locked{display:flex;align-items:center;background:#f0f0f0;color:#999;font-style:italic}.knowledge-day-list{display:grid;gap:10px}.knowledge-day-cards-title{font-size:.88rem;font-weight:900;color:var(--mint-dark);line-height:1.3;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(min-width:861px){.brand{font-size:1.28rem}.dialog-text{font-size:1.08rem;line-height:1.78}.scene-title{font-size:1.42rem}.progress-top,.stat-value{font-size:.95rem}.report-header p{font-size:.96rem}}.settings-close-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;flex-shrink:0;border:3px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);font-size:.85rem;font-weight:900;box-shadow:var(--shadow-button-compact)}.settings-close-btn:hover{transform:translate(1px,1px);box-shadow:var(--shadow-button-compact-hover)}.settings-action-btn{display:flex;align-items:center;min-height:46px;padding:10px 16px;border:3px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);font-weight:900;font-size:.95rem;text-align:left;box-shadow:var(--shadow-button-soft)}.settings-action-btn:hover{transform:translate(1px,1px);box-shadow:var(--shadow-button-soft-hover)}.settings-action-btn--warning{background:var(--sakura-soft);border-color:var(--danger)}.settings-action-btn--info{background:#e8f7f0;border-color:var(--mint-dark)}.welcome-confirm-btn{justify-self:end;min-height:42px;padding:8px 18px;border:3px solid var(--line);border-radius:0;background:var(--mint);color:var(--ink);font-weight:900;font-size:.95rem;box-shadow:var(--shadow-button-strong);cursor:pointer}.welcome-confirm-btn:hover{transform:translate(1px,1px);box-shadow:var(--shadow-button-strong-hover)}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.settings-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;flex-shrink:0;border:3px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);font-size:1.1rem;line-height:1;box-shadow:var(--shadow-button-compact)}.settings-button:hover{transform:translate(1px,1px);box-shadow:var(--shadow-button-compact-hover)}.text-input{min-width:0;padding:10px 12px;border:3px solid var(--line);border-radius:0;background:#fff;box-shadow:inset 4px 4px #3426391a}.pixel-button{min-height:42px;padding:8px 14px;border:3px solid var(--line);border-radius:0;background:var(--mint);color:var(--ink);font-weight:900;box-shadow:var(--shadow-button-strong)}.pixel-button:hover:not(:disabled),.choice-button:hover:not(:disabled){transform:translate(1px,1px);box-shadow:var(--shadow-button-strong-hover)}.pixel-button:disabled{opacity:.58}.choice-button{min-height:52px;padding:10px 12px;border:3px solid var(--line);border-radius:0;background:#fff;text-align:left;font-weight:800;line-height:1.45;box-shadow:inset -4px -4px #34263914,4px 4px #34263926}.choice-button.is-pending{background:#e8d5ff;border-color:var(--violet);box-shadow:inset -4px -4px #8b6fb826,4px 4px #34263933}.choice-button.is-correct{background:#c9f5df}.choice-button.is-wrong{background:#ffd6e1}.settings-action-btn--home{background:#e8f0ff;border-color:#4a6fa5}.home-menu-btn{display:flex;align-items:center;min-height:52px;padding:10px 18px;border:3px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);font-weight:900;font-size:1rem;text-align:left;box-shadow:var(--shadow-button-soft);cursor:pointer}.home-menu-btn:hover{transform:translate(1px,1px);box-shadow:var(--shadow-button-soft-hover)}.home-menu-btn--primary{background:var(--mint)}.home-menu-btn--secondary{background:var(--sakura-soft)}.home-menu-btn--knowledge{background:#fefbd4;border-color:#b8a02a}.home-menu-btn--team{background:#f0ebe8;border-color:#8b6e5a}.menu-btn-icon{display:block;width:20px;height:20px;margin-right:8px;image-rendering:pixelated;image-rendering:crisp-edges;flex-shrink:0}.settings-btn-icon{display:block;width:18px;height:18px;image-rendering:pixelated;image-rendering:crisp-edges}.modal-title-icon{display:block;width:18px;height:18px;margin-right:6px;image-rendering:pixelated;image-rendering:crisp-edges;flex-shrink:0}.knowledge-lock-icon{display:block;width:14px;height:14px;margin-right:4px;image-rendering:pixelated;image-rendering:crisp-edges;flex-shrink:0}.home-modal-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;flex-shrink:0;border:3px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);font-size:.85rem;font-weight:900;box-shadow:var(--shadow-button-compact);cursor:pointer}.chapter-btn{min-height:52px;padding:10px 16px;border:3px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);font-weight:900;font-size:.95rem;text-align:left;cursor:pointer;box-shadow:var(--shadow-button-flat)}.chapter-btn:hover{transform:translate(1px,1px);box-shadow:var(--shadow-button-flat-hover)}.chapter-btn--current{background:#e8f7f0;border-color:var(--mint-dark)}.chapter-btn--sp{background:#fff5f8;border-color:var(--sakura)}.knowledge-day-btn{position:relative;display:flex;align-items:center;width:100%;min-height:72px;padding:10px 60px 10px 12px;border:3px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);text-align:left;cursor:pointer;box-shadow:var(--shadow-button-flat);overflow:hidden}.knowledge-day-btn:hover:not(:disabled){transform:translate(1px,1px);box-shadow:var(--shadow-button-flat-hover)}.knowledge-day-btn--locked{background:#f5f5f5;border-color:#b0a0b0;color:#9a8a9a;cursor:not-allowed;box-shadow:inset -2px -2px #3426390f,2px 2px #3426391a}.knowledge-day-btn__info{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.knowledge-day-btn__day-label{display:flex;align-items:center;font-size:.78rem;font-weight:900;color:var(--mint-dark);letter-spacing:.04em}.knowledge-day-btn--locked .knowledge-day-btn__day-label{color:#9a8a9a}.knowledge-day-btn__chapter{font-size:.92rem;font-weight:800;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.knowledge-day-btn__thumb{position:absolute;bottom:-50px;right:-42px;width:100px;height:120px;object-fit:contain;object-position:top;image-rendering:pixelated;transform:rotate(-15deg);transform-origin:bottom center;pointer-events:none;-webkit-user-drag:none;user-select:none}.knowledge-day-btn--locked .knowledge-day-btn__thumb{filter:grayscale(1) opacity(.45)}.knowledge-back-btn{flex-shrink:0;min-height:34px;padding:6px 12px;border:3px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);font-weight:900;font-size:.85rem;cursor:pointer;box-shadow:var(--shadow-button-small)}.knowledge-back-btn:hover{transform:translate(1px,1px);box-shadow:var(--shadow-button-small-hover)}@media(min-width:861px){.pixel-button{min-width:160px}.choice-button{min-height:58px;padding:12px 14px}.text-input{min-height:48px}}@media(max-width:860px){.status-strip,.name-row,.report-identity,.result-grid{grid-template-columns:1fr}.scene-header{display:grid}.scene-score{min-width:0;text-align:left}.footer-bar{align-items:stretch;flex-direction:column}}
