:root{color-scheme:light;font-family:Noto Sans KR,system-ui,sans-serif;color:#202337;background:#fff8e8;font-synthesis:none;--ink: #202337;--ink-soft: #5d6073;--paper: #fffdf7;--cream: #fff8e8;--sun: #ffd84c;--coral: #ef795f;--indigo: #5965d8;--indigo-dark: #3943a4;--mint: #9ddcc1;--line: #242638;--danger: #b53d38;--shadow: 5px 6px 0 rgba(32, 35, 55, .13);--radius: 24px}*{box-sizing:border-box}html,body,#app{min-width:320px;min-height:100%;margin:0}body{min-height:100vh;min-height:100svh;overflow-x:hidden;background:radial-gradient(circle at 8% 12%,rgba(255,216,76,.24) 0 80px,transparent 81px),linear-gradient(145deg,#fff8e8,#f7f1e7)}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:4px solid #1675e0;outline-offset:3px}.game-shell{min-height:100vh;min-height:100svh;padding:max(12px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.topbar{position:relative;z-index:5;display:flex;width:min(1180px,100%);min-height:52px;margin:0 auto 20px;align-items:center;justify-content:space-between;gap:12px}.wordmark{display:inline-flex;min-height:44px;align-items:center;color:var(--ink);font-family:DM Sans,system-ui,sans-serif;font-size:1.3rem;font-weight:800;text-decoration:none;letter-spacing:-.05em}.topbar-actions,.button-row,.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.game-main{width:min(1180px,100%);margin:0 auto}.game-main:focus{outline:none}.skip-link{position:fixed;z-index:100;top:8px;left:8px;padding:12px 16px;color:#fff;background:var(--ink);border-radius:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}h1,h2,h3,p{margin-top:0}h1,h2,h3,.button,.metric strong,.grade,.total-score{font-family:DM Sans,Noto Sans KR,sans-serif}h1{margin-bottom:18px;font-size:clamp(2.15rem,5vw,4.8rem);line-height:.98;letter-spacing:-.065em}h2{margin-bottom:14px;font-size:clamp(1.15rem,2vw,1.45rem);letter-spacing:-.035em}h3{margin-bottom:8px;font-size:1.04rem}p,li{font-size:1rem;line-height:1.65}.eyebrow{margin-bottom:12px;color:var(--indigo-dark);font-family:DM Sans,Noto Sans KR,sans-serif;font-size:.88rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.lead{color:var(--ink-soft);font-size:clamp(1.05rem,2vw,1.25rem)}.button{display:inline-flex;min-width:44px;min-height:44px;padding:10px 17px;align-items:center;justify-content:center;color:var(--ink);background:#fff;border:2px solid var(--line);border-radius:14px;box-shadow:2px 3px 0 var(--line);cursor:pointer;font-size:.95rem;font-weight:800;text-decoration:none;transition:transform .14s ease,box-shadow .14s ease,background .14s ease}.button:hover:not(:disabled){transform:translate(-1px,-1px);box-shadow:4px 5px 0 var(--line)}.button:active:not(:disabled){transform:translate(2px,2px);box-shadow:none}.button:disabled{color:#6f7180;background:#e7e5df;border-color:#9b9ba2;box-shadow:none;cursor:not-allowed}.button-primary{color:#fff;background:var(--indigo)}.button-secondary{background:var(--sun)}.button-quiet{background:transparent;border-color:transparent;box-shadow:none}.button-icon{padding-inline:13px;background:var(--paper);box-shadow:none}.button-large{min-height:54px;padding-inline:26px;font-size:1.05rem}.button-full{width:100%}.hero{display:grid;min-height:calc(100svh - 100px);grid-template-columns:minmax(0,.88fr) minmax(320px,1.12fr);align-items:center;gap:clamp(28px,6vw,88px)}.hero-copy{position:relative;z-index:2;padding:clamp(20px,4vw,54px)}.hero h1{font-size:clamp(4.2rem,10vw,8.5rem)}.hero h1 em{color:var(--coral);font-style:normal;-webkit-text-stroke:2px var(--ink);text-shadow:5px 6px 0 var(--sun)}.hero-subtitle{margin-bottom:8px;font-size:clamp(1.15rem,2vw,1.45rem);font-weight:800}.hero-art{position:relative;min-height:min(70vh,720px);overflow:hidden;background:#baded8;border:3px solid var(--line);border-radius:48% 48% 26px 26px;box-shadow:var(--shadow)}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:center 42%;position:absolute}.sticker{position:absolute;z-index:2;padding:8px 11px;background:var(--sun);border:2px solid var(--line);box-shadow:3px 3px 0 var(--line);font-family:DM Sans,sans-serif;font-size:.8rem;font-weight:800;transform:rotate(-5deg)}.sticker-one{top:7%;left:7%}.sticker-two{right:6%;bottom:7%;background:#fff;transform:rotate(5deg)}.center-stage{display:grid;min-height:calc(100svh - 105px);place-items:center;padding:24px 0 60px}.scene-card,.form-card,.insight-panel,.control-panel,.report-card,.score-card{background:#fffdf7f5;border:2px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.scene-card{width:min(600px,100%);padding:clamp(26px,6vw,62px);text-align:center}.intro-illustration,.outcome-mark{display:grid;width:110px;height:110px;margin:0 auto 28px;place-items:center;color:var(--ink);background:var(--sun);border:3px solid var(--line);border-radius:50% 46% 44% 52%;font-family:DM Sans,sans-serif;font-size:2.2rem;font-weight:800;transform:rotate(-4deg)}.dot-nav{display:flex;margin:28px 0;justify-content:center;gap:8px}.dot-nav span{width:10px;height:10px;background:#c7c5bd;border-radius:50%}.dot-nav .active{width:30px;background:var(--indigo);border-radius:10px}.scene-card .button-row{justify-content:center}.setup-layout{display:grid;min-height:calc(100svh - 120px);grid-template-columns:minmax(240px,.78fr) minmax(320px,1.1fr);align-items:center;gap:clamp(28px,7vw,100px);padding:20px clamp(0px,4vw,60px) 60px}.setup-side p:not(.eyebrow){max-width:430px;color:var(--ink-soft)}.mini-poster{width:145px;margin-top:32px;padding:20px;color:#fff;background:var(--coral);border:3px solid var(--line);box-shadow:5px 6px 0 var(--sun);font-family:DM Sans,sans-serif;font-size:1.4rem;font-weight:800;line-height:1.35;text-align:center;transform:rotate(-4deg)}.form-card{padding:clamp(24px,5vw,48px)}.form-card label,.form-card legend{display:block;margin-bottom:10px;font-weight:800}.form-card input{width:100%;min-height:54px;padding:12px 15px;color:var(--ink);background:#fff;border:2px solid var(--line);border-radius:12px;font-size:1rem}.field-help,.form-note{color:var(--ink-soft);font-size:.88rem}.field-error,.disabled-reason{color:var(--danger);font-size:.88rem;font-weight:700}.form-card fieldset{padding:0;margin:28px 0 0;border:0}.segmented{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.segmented button{min-height:48px;color:var(--ink);background:#fff;border:2px solid #b5b3ae;border-radius:12px;cursor:pointer;font-weight:700}.segmented button.selected{color:#fff;background:var(--indigo);border-color:var(--line);box-shadow:2px 3px 0 var(--line)}.form-note{padding:12px;margin:20px 0;background:#f2f0e9;border-radius:10px}.orbit{display:grid;width:124px;height:124px;margin:0 auto 28px;place-items:center;background:var(--indigo);border:3px solid var(--line);border-radius:50%;box-shadow:0 0 0 15px #5965d81f;color:#fff;font:800 2rem DM Sans,sans-serif;animation:orbit-pulse 1.8s ease-in-out infinite}.loading-line{height:10px;margin:28px 0 16px;overflow:hidden;background:#ddd9cd;border:1px solid var(--line);border-radius:10px}.loading-line:after{display:block;width:42%;height:100%;background:var(--sun);content:"";animation:loading 1.25s ease-in-out infinite alternate}.recruit-layout,.week-layout,.result-layout{display:grid;align-items:start;gap:24px;padding-bottom:56px}.recruit-layout{grid-template-columns:minmax(0,1fr) 320px}.recruit-main{min-width:0}.section-heading,.week-banner,.subheading,.progress-label{display:flex;align-items:center;justify-content:space-between;gap:16px}.section-heading h1,.week-banner h1{margin-bottom:0;font-size:clamp(2rem,4vw,3.5rem)}.source-badge,.roster-pill{flex:0 0 auto;padding:7px 10px;color:var(--indigo-dark);background:#e7e9ff;border:1px solid #a3a9e8;border-radius:999px;font-size:.78rem;font-weight:700}.recruit-counter{position:relative;padding:clamp(22px,4vw,36px);margin:24px 0 34px;background:var(--sun);border:2px solid var(--line);border-radius:var(--radius)}.recruit-counter>span{font-weight:700}.recruit-counter>strong{display:block;margin:3px 0 18px;font:800 clamp(3rem,8vw,5.2rem)/1 "DM Sans",sans-serif}.recruit-counter small{font-size:.35em}.seat-track{position:relative;height:18px;background:#ffffffb8;border:2px solid var(--line);border-radius:9px}.seat-track b{display:block;height:100%;background:var(--indigo);border-radius:7px}.minimum-mark{position:absolute;z-index:2;top:-8px;bottom:-8px;width:3px;background:var(--coral)}.minimum-mark i{position:absolute;bottom:24px;left:50%;width:max-content;padding:3px 6px;background:var(--paper);border:1px solid var(--line);border-radius:5px;font-size:.72rem;font-style:normal;font-weight:800;transform:translate(-50%)}.number-pop{position:absolute;top:22px;right:30px;color:var(--coral);font:800 2rem DM Sans,sans-serif;animation:number-pop .7s ease both}.choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.choice-card{display:flex;min-width:0;padding:20px;flex-direction:column;justify-content:space-between;gap:18px;background:var(--paper);border:2px solid var(--line);border-radius:16px;box-shadow:3px 4px #2023371a}.choice-card p{margin-bottom:0;color:var(--ink-soft);font-size:.9rem}.choice-card.is-disabled{background:#eeece6}.button-card{width:100%;background:#fff;box-shadow:none}.insight-panel,.control-panel{position:sticky;top:16px;padding:24px}.quote{padding:14px;margin-bottom:28px;background:#f1f2ff;border-left:4px solid var(--indigo);border-radius:0 10px 10px 0;font-size:.9rem}.competitor-list,.compact-log,.event-list,.week-log ul{padding-left:20px;margin-bottom:26px}.competitor-list li,.compact-log li,.event-list li,.week-log li{margin-bottom:7px;font-size:.9rem}.progress-block{margin-bottom:18px}.progress-label{margin-bottom:7px;font-size:.88rem}.progress-track{height:12px;overflow:hidden;background:#ddd9cd;border-radius:10px}.progress-track span{display:block;height:100%;background:var(--indigo);border-radius:inherit;transition:width .4s ease}.progress-block.danger .progress-track span{background:var(--coral)}.outcome-card .outcome-mark{color:#fff;background:var(--coral)}.outcome-card.failed{background:#f4eee6}.week-layout{grid-template-columns:minmax(0,1fr) 350px}.room-panel{min-width:0}.canvas-wrap{position:relative;height:clamp(310px,48vw,560px);margin:20px 0;overflow:hidden;background:#cfe7df;border:2px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.canvas-wrap canvas{display:block;width:100%;height:100%}.week-prop{position:absolute;top:16px;right:16px;padding:7px 10px;color:#fff;background:var(--coral);border:2px solid var(--line);box-shadow:2px 3px 0 var(--line);font-size:.82rem;font-weight:800;transform:rotate(3deg)}.member-panel,.week-log{padding:20px;background:#fffdf7e0;border:2px solid var(--line);border-radius:18px}.subheading h2{margin:0}.subheading span{color:var(--ink-soft);font-size:.82rem}.member-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.member-chip{display:flex;min-height:58px;padding:8px;align-items:center;gap:9px;color:var(--ink);background:#fff;border:2px solid #c0beb7;border-radius:14px;text-align:left;cursor:pointer}.member-chip.selected{background:#ebedff;border-color:var(--indigo)}.member-chip .avatar{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;color:#fff;background:var(--indigo);border:1px solid var(--line);border-radius:50%;font-size:.8rem;font-weight:800}.member-chip .mood-happy{background:#28795e}.member-chip .mood-quiet{background:#73798d}.member-chip .mood-worried{background:var(--coral)}.member-chip strong,.member-chip small{display:block}.member-chip small{margin-top:2px;color:var(--ink-soft);font-size:.76rem}.empty-state{margin:16px 0 0;color:var(--ink-soft)}.week-log{margin-top:12px}.week-log ul{margin-bottom:0}.metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:22px}.metric{padding:12px;background:#f3f1eb;border-radius:12px}.metric span,.metric strong{display:block}.metric span{margin-bottom:2px;color:var(--ink-soft);font-size:.78rem}.metric strong{font-size:1.35rem}.metric-ap{background:var(--sun)}.action-heading{padding-top:12px;margin-bottom:12px;border-top:1px solid #d4d1c8}.action-list{display:grid;max-height:min(44vh,520px);padding:2px 4px 10px 2px;margin-bottom:14px;overflow-y:auto;gap:10px}.action-list .choice-card{padding:13px}.action-list .choice-card h3{font-size:.92rem}.action-list .choice-card p{font-size:.8rem}.action-list .button{min-height:44px}.result-layout{grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);align-items:stretch}.score-card,.report-card{padding:clamp(24px,5vw,48px)}.score-card{text-align:center;background:var(--sun)}.score-card h1{font-size:clamp(1.8rem,4vw,3rem)}.grade{display:grid;width:min(210px,65vw);aspect-ratio:1;margin:24px auto;place-items:center;color:#fff;background:var(--indigo);border:4px solid var(--line);border-radius:50% 44% 48% 46%;box-shadow:8px 9px 0 var(--coral);font-size:clamp(5rem,13vw,9rem);line-height:1;transform:rotate(-4deg)}.total-score{display:block;margin-bottom:16px;font-size:2.4rem}.total-score small{font-size:.4em}.axis-list{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0}.review-grid article{padding:17px;background:#f1f2ff;border-radius:14px}.review-grid article:nth-child(2){background:#fff1dd}.review-grid span{color:var(--indigo-dark);font-size:.8rem;font-weight:800}.review-grid p{margin:7px 0 0;font-size:.9rem}.campaign-rail,.mission-strip{width:min(1180px,100%);margin-inline:auto}.campaign-rail{margin-bottom:10px;padding:9px 12px;overflow-x:auto;border:2px solid var(--line);border-radius:13px;background:var(--ink);box-shadow:3px 4px #20233724;scrollbar-width:thin}.campaign-rail ol{display:grid;min-width:660px;padding:0;margin:0;grid-template-columns:repeat(7,1fr);list-style:none}.campaign-rail li{position:relative;color:#c7c9d6;font-size:.72rem;font-weight:800;text-align:center}.campaign-rail li:not(:last-child):after{position:absolute;z-index:0;top:12px;right:-50%;width:100%;height:3px;content:"";background:#5b5e70}.campaign-rail li.is-complete:not(:last-child):after{background:var(--mint)}.campaign-rail li span{position:relative;z-index:1;display:grid;justify-items:center;gap:3px}.campaign-rail li i{display:grid;width:26px;height:26px;place-items:center;border:2px solid #777a8e;border-radius:7px;background:var(--ink);font-size:.68rem;font-style:normal}.campaign-rail li.is-complete{color:var(--mint)}.campaign-rail li.is-complete i{color:var(--ink);border-color:var(--mint);background:var(--mint)}.campaign-rail li.is-current{color:#fff}.campaign-rail li.is-current i{color:var(--ink);border-color:var(--sun);background:var(--sun);box-shadow:0 0 0 3px #ffd84c3d}.mission-strip{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);align-items:stretch;gap:8px;margin-bottom:14px}.current-objective,.guide-message{min-width:0;margin:0;border:2px solid var(--line);border-radius:12px}.current-objective{display:grid;grid-template-columns:auto minmax(180px,1fr) minmax(130px,.5fr);align-items:center;gap:10px;padding:9px 12px;background:var(--paper)}.current-objective>span{padding:4px 7px;color:var(--ink);background:var(--sun);border:1px solid var(--line);border-radius:6px;font-size:.68rem;font-weight:900}.current-objective strong,.current-objective p{display:block;margin:0}.current-objective strong{font-size:.92rem}.current-objective p{color:var(--ink-soft);font-size:.74rem;line-height:1.4}.mission-progress{position:relative;height:24px;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:#e2e0d9}.mission-progress i{position:absolute;inset:0 auto 0 0;background:var(--mint)}.mission-progress b{position:relative;display:grid;height:100%;place-items:center;font-size:.7rem}.guide-message{display:flex;align-items:center;gap:6px;padding:9px 12px;color:#fff;background:var(--indigo-dark);font-size:.74rem;line-height:1.45}.guide-message>span{display:grid;width:28px;height:28px;flex:0 0 auto;place-items:center;color:var(--ink);background:var(--sun);border-radius:50% 50% 44% 52%}.guide-message strong{color:var(--sun)}.campaign-board{gap:14px}.campaign-title .hero-copy>p:not(.eyebrow,.hero-subtitle){max-width:520px}.title-feature-tape{display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:18px 0;list-style:none}.title-feature-tape li{padding:5px 8px;border:1px solid var(--line);border-radius:6px;background:var(--paper);font-size:.72rem;font-weight:800}.title-feature-tape li span{margin-right:5px;color:var(--indigo-dark)}.title-mini-hud{position:absolute;right:6%;bottom:15%;display:grid;max-width:220px;padding:8px 10px;border:2px solid var(--line);border-radius:8px;background:#fffdf7f0;box-shadow:3px 4px 0 var(--line);transform:rotate(-2deg)}.title-mini-hud span{color:var(--indigo-dark);font-size:.6rem;font-weight:900}.title-mini-hud strong{font-size:.76rem}.game-dialogue{position:relative;width:min(680px,100%);padding-left:clamp(110px,20vw,170px);text-align:left}.guide-portrait{position:absolute;top:50%;left:clamp(18px,5vw,48px);display:grid;width:84px;height:84px;place-items:center;border:3px solid var(--line);border-radius:50% 50% 44% 52%;background:var(--sun);font-size:1.8rem;transform:translateY(-50%)}.guide-portrait:before,.guide-portrait:after{position:absolute;top:-9px;width:24px;height:24px;content:"";background:var(--sun);border-top:3px solid var(--line);border-left:3px solid var(--line);transform:rotate(45deg)}.guide-portrait:before{left:7px}.guide-portrait:after{right:7px}.guide-portrait strong{position:absolute;bottom:-26px;padding:3px 7px;color:#fff;background:var(--indigo);border:2px solid var(--line);border-radius:5px;font-size:.68rem}.game-dialogue .button-row{justify-content:flex-start}.campaign-setup{gap:clamp(20px,4vw,50px)}.campaign-setup .setup-side h1{font-size:clamp(2.15rem,4.4vw,4rem);text-wrap:balance}.setup-heading-line{display:block;white-space:nowrap}.setup-guide-card{display:flex;align-items:center;gap:9px;max-width:450px;padding:9px;border:2px solid var(--line);border-radius:10px;background:#f1f2ff}.setup-guide-card>span{display:grid;width:34px;height:34px;flex:0 0 auto;place-items:center;border-radius:50%;background:var(--sun)}.setup-guide-card p{margin:0;font-size:.76rem;line-height:1.45}.setup-guide-card strong{color:var(--indigo-dark)}.setup-console{padding:clamp(18px,3vw,32px);border-radius:14px}.setup-console>header{display:flex;justify-content:space-between;gap:8px;padding-bottom:10px;margin-bottom:16px;border-bottom:2px dashed #c7c4ba}.setup-console>header span{color:var(--indigo-dark);font-weight:900}.setup-console>header strong{font-size:.76rem}.setup-console input{font-weight:800}.setup-console .form-note strong{display:inline-block;margin-right:5px;color:var(--indigo-dark)}.game-calculator{width:min(680px,100%);border-radius:14px}.game-calculator h1{font-size:clamp(1.5rem,4vw,2.7rem);line-height:1.2}.calculation-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:12px 0}.calculation-steps span{padding:5px;border:1px solid #b9b6ac;border-radius:6px;background:#f2f0e9;font-size:.68rem;font-weight:800}.board-heading{margin:16px 0 9px}.board-heading>span,.noticeboard-title small,.submission-board>div span,.action-heading>div>span{color:var(--indigo-dark);font-size:.68rem;font-weight:900;letter-spacing:.08em}.board-heading h2{margin:1px 0 0;font-size:1.1rem}.operation-list{display:grid;gap:8px}.operation-choice{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,auto);align-items:center;gap:12px;padding:12px;border:2px solid #b8b6ae;border-radius:12px;background:var(--paper);box-shadow:2px 3px #2023371a;transition:border-color .14s ease,transform .14s ease,box-shadow .14s ease}.operation-choice:has(.operation-call:hover:not(:disabled)),.operation-choice:has(.operation-call:focus-visible){border-color:var(--indigo);box-shadow:3px 4px #5965d833}.operation-choice.is-recommended{border-color:var(--indigo);background:#f4f3ff}.operation-choice.is-disabled{background:#f0eee8}.operation-copy{min-width:0}.operation-heading{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.operation-heading h3{margin:0;font-size:.94rem}.recommended-badge,.operation-cost{padding:2px 5px;border-radius:5px;font-size:.64rem;font-weight:900}.recommended-badge{color:#fff;background:var(--indigo)}.operation-cost{color:var(--ink);background:var(--sun)}.operation-copy>p{margin:4px 0 0;color:var(--ink-soft);font-size:.76rem;line-height:1.45}.effect-preview{display:flex;gap:6px}.effect-preview span{flex:0 0 auto;color:#24634d;font-weight:900}.operation-call{min-width:180px;padding-inline:12px;background:#fff;font-size:.76rem;line-height:1.35}.operation-choice.is-recommended .operation-call{color:#fff;background:var(--indigo)}.recruit-layout{grid-template-columns:minmax(0,1fr) 300px}.recruit-counter{padding:18px 20px;margin:12px 0;border-radius:14px}.recruit-scoreline{display:flex;align-items:baseline;gap:8px;margin-bottom:22px}.recruit-scoreline>span{font-weight:800}.recruit-scoreline>strong{font-size:clamp(2rem,5vw,3.5rem);line-height:1}.recruit-scoreline strong small{font-size:.35em}.recruit-scoreline em{margin-left:auto;font-size:.78rem;font-style:normal;font-weight:900}.seat-labels{display:flex;justify-content:space-between;margin-top:5px;font-size:.66rem}.seat-labels strong{color:var(--danger)}.game-noticeboard{padding:17px;border-radius:14px}.noticeboard-title{display:flex;align-items:center;gap:9px;margin-bottom:14px}.noticeboard-title>span{display:grid;width:38px;height:38px;place-items:center;color:#fff;background:var(--indigo);border:2px solid var(--line);border-radius:9px;font-weight:900}.noticeboard-title h2{margin:0;font-size:.95rem}.game-noticeboard .quote{margin-bottom:16px}.game-noticeboard section{padding-top:12px;border-top:1px dashed #bbb8ad}.game-noticeboard section h2{font-size:.88rem}.game-noticeboard ul,.game-noticeboard ol{margin-bottom:14px}.week-layout{grid-template-columns:minmax(0,1fr) 390px}.week-banner h1{font-size:clamp(1.55rem,3vw,2.5rem)}.week-gauge{display:grid;grid-template-columns:minmax(180px,.4fr) 1fr;align-items:center;gap:18px;padding:9px 12px;margin:8px 0;color:#fff;background:var(--ink);border:2px solid var(--line);border-radius:10px}.week-gauge span,.week-gauge strong{display:block}.week-gauge span{color:#c7c9d6;font-size:.66rem}.week-gauge strong{font-size:.82rem}.week-gauge-track{position:relative;display:flex;height:22px;align-items:center;justify-content:space-between;padding-inline:4px;border:1px solid #777a8e;border-radius:6px;background:#383b50}.week-gauge-track>i{position:absolute;inset:0 auto 0 0;border-radius:5px;background:var(--indigo)}.week-gauge-track>b{position:relative;display:grid;width:16px;height:16px;place-items:center;border-radius:4px;background:#5c5f73;font-size:.6rem}.week-gauge-track>b.is-passed{color:var(--ink);background:var(--sun)}.week-scene-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr);gap:8px}.canvas-wrap{height:clamp(240px,30vw,360px);margin:0;border-radius:14px}.room-status{position:absolute;bottom:10px;left:10px;padding:6px 9px;color:#fff;background:#202337e0;border:1px solid #fff;border-radius:7px}.room-status span,.room-status strong{display:block}.room-status span{font-size:.58rem}.room-status strong{font-size:.72rem}.ai-news-panel{position:relative;min-width:0;padding:14px;overflow:hidden;border:2px solid var(--line);border-radius:14px;background:#f4f3ff;box-shadow:3px 4px #2023371f}.ai-news-panel:after{position:absolute;right:-18px;bottom:-26px;width:82px;height:82px;border:13px solid rgba(89,101,216,.12);border-radius:50%;content:""}.ai-news-panel header{display:flex;justify-content:space-between;gap:8px}.ai-news-panel header span{padding:3px 6px;color:#fff;background:var(--indigo);border-radius:4px;font-size:.66rem;font-weight:900}.ai-news-panel time{color:var(--ink-soft);font-size:.65rem}.ai-news-panel h2{margin:13px 0 7px;font-size:1rem;line-height:1.35}.ai-news-panel p{margin-bottom:10px;font-size:.78rem;line-height:1.5}.ai-news-panel small{color:var(--indigo-dark);font-size:.68rem;font-weight:800}.chat-room-panel{margin-top:8px;padding:14px;border-radius:14px}.channel-name{color:var(--indigo-dark)!important;font-weight:900}.member-list{display:grid;grid-template-columns:1fr;gap:6px;margin-top:10px}.member-chip{position:relative;min-height:62px;padding:7px 50px 7px 8px;border-width:1px;border-radius:10px;transition:transform .14s ease,border-color .14s ease,background .14s ease}.member-chip .avatar{width:34px;height:34px}.chat-copy{min-width:0}.member-chip small{color:#414456;font-size:.78rem;line-height:1.4}.member-chip>i{position:absolute;top:50%;right:10px;padding:3px 6px;color:var(--indigo-dark);background:#eceeff;border-radius:5px;font-size:.64rem;font-style:normal;font-weight:900;opacity:0;transform:translateY(-50%)}.member-chip:hover:not(:disabled)>i,.member-chip:focus-visible>i,.member-chip.selected>i{opacity:1}.week-command-center{top:10px;padding:14px;border-radius:14px}.submission-board{position:relative;display:grid;grid-template-columns:1fr auto;gap:6px 12px;padding:12px;border:2px solid var(--line);border-radius:11px;background:var(--sun)}.submission-board h2{margin:0;font-size:1rem}.submission-board>strong{grid-row:1 / span 2;grid-column:2;align-self:center;font-size:2.1rem;line-height:1}.submission-board>strong small{font-size:.4em}.submission-track{grid-column:1 / -1;height:9px;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:#ffffffb3}.submission-track i{display:block;height:100%;background:var(--indigo)}.submission-board p{grid-column:1 / -1;margin:0;font-size:.72rem;line-height:1.4}.resource-ribbon{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:8px 0}.resource-ribbon .metric{padding:8px;border:1px solid #c6c3ba;border-radius:8px}.resource-ribbon .metric strong{font-size:1rem}.room-pulse{display:grid;grid-template-columns:1fr 1fr;gap:8px}.room-pulse .progress-block{margin-bottom:8px}.room-pulse .progress-label{font-size:.7rem}.room-pulse .progress-track{height:8px}.action-heading{padding-top:8px;margin-bottom:7px}.action-heading h2{margin:0;font-size:.96rem}.action-list{max-height:min(38vh,410px);gap:6px}.action-list .operation-choice{grid-template-columns:1fr;gap:7px;padding:9px}.action-list .operation-call{width:100%;min-width:0;min-height:40px}.week-log{padding:14px;border-radius:14px}.week-log h2{font-size:.96rem}.week-log ul{display:grid;gap:5px;padding:0;list-style:none}.week-log li{padding:6px 8px;margin:0;border-left:3px solid var(--mint);background:#fff;font-size:.76rem}.result-layout{grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr)}.score-card,.report-card{padding:clamp(20px,3.5vw,38px);border-radius:16px}.score-card{position:relative;overflow:hidden}.score-card h1{margin-bottom:8px;font-size:clamp(1.5rem,3vw,2.4rem)}.result-board-label{display:inline-block;padding:4px 8px;border:2px solid var(--line);border-radius:6px;background:#fff;font-size:.72rem;font-weight:900}.grade-stamp{position:relative;width:min(230px,70vw);margin:18px auto}.grade{width:150px;margin:0 auto;font-size:6rem}.total-score{position:absolute;right:-3px;bottom:3px;margin:0;padding:6px 9px;border:2px solid var(--line);border-radius:8px;background:#fff;font-size:1.6rem;transform:rotate(3deg)}.result-verdict{font-weight:800}.result-confetti i{position:absolute;width:12px;height:26px;background:var(--coral);transform:rotate(24deg)}.result-confetti i:nth-child(1){top:8%;left:8%}.result-confetti i:nth-child(2){top:18%;right:9%;background:var(--indigo);transform:rotate(-28deg)}.result-confetti i:nth-child(3){bottom:10%;left:13%;background:var(--mint);transform:rotate(65deg)}.result-confetti i:nth-child(4){right:12%;bottom:7%;transform:rotate(12deg)}.result-axis-list .progress-block{padding:8px;margin:0;border:1px solid #d0cdc3;border-radius:8px;background:#fff}.review-grid{margin:14px 0}.review-grid article{padding:12px;border:2px solid var(--line);border-radius:10px}.review-grid h3{margin:3px 0;font-size:.9rem}.memory-board{padding-top:12px;border-top:2px dashed #c6c3ba}.memory-board h2{font-size:1rem}.event-list{display:grid;gap:6px;padding:0;list-style:none}.event-list li{display:flex;align-items:center;gap:8px;margin:0;font-size:.78rem}.event-list li span{display:grid;width:24px;height:24px;flex:0 0 auto;place-items:center;color:#fff;background:var(--indigo);border-radius:6px;font-size:.65rem;font-weight:900}.result-actions .button{flex:1 1 220px}.button:focus-visible,.member-chip:focus-visible,.segmented button:focus-visible,.wordmark:focus-visible{outline:4px solid #1675e0;outline-offset:3px}.button:hover:not(:disabled),.member-chip:hover:not(:disabled),.segmented button:hover:not(:disabled),.wordmark:hover{cursor:pointer}.member-chip:hover:not(:disabled),.segmented button:hover:not(:disabled){border-color:var(--indigo);background:#f1f2ff;transform:translateY(-1px)}.wordmark:hover{color:var(--indigo-dark);text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:4px}.button:active:not(:disabled),.member-chip:active:not(:disabled),.segmented button:active:not(:disabled),.wordmark:active{transform:translateY(1px) scale(.99)}.member-chip:disabled,.segmented button:disabled{cursor:not-allowed}@keyframes orbit-pulse{50%{transform:scale(1.05) rotate(3deg)}}@keyframes loading{0%{transform:translate(-20%)}to{transform:translate(160%)}}@keyframes number-pop{0%{opacity:0;transform:translateY(18px) scale(.8)}40%{opacity:1}to{opacity:0;transform:translateY(-18px) scale(1.08)}}@media(max-width:900px){.hero{min-height:auto;grid-template-columns:1fr}.hero-art{min-height:56vh;grid-row:1}.hero-copy{padding-inline:4px}.setup-layout,.recruit-layout,.week-layout,.result-layout{grid-template-columns:1fr}.setup-layout{padding-inline:0}.mini-poster{display:none}.insight-panel,.control-panel{position:static}.action-list{max-height:none;grid-template-columns:1fr 1fr}.choice-grid,.mission-strip,.week-scene-grid{grid-template-columns:1fr}.current-objective{grid-template-columns:auto minmax(0,1fr)}.mission-progress{grid-column:1 / -1}.week-layout{grid-template-columns:1fr}}@media(max-width:560px){.game-shell{padding-inline:max(12px,env(safe-area-inset-left))}.topbar{margin-bottom:10px}.topbar .button-quiet{display:none}.hero-art{min-height:48vh;border-radius:34% 34% 20px 20px}.hero h1{font-size:clamp(3.9rem,22vw,6.5rem)}.hero-actions .button,.button-row .button{width:100%}.scene-card,.form-card,.insight-panel,.control-panel,.score-card,.report-card{padding:20px;border-radius:18px}.setup-side h1,.section-heading h1,.week-banner h1{font-size:2.2rem}.segmented{grid-template-columns:1fr}.segmented button{min-height:46px}.section-heading,.week-banner{align-items:flex-start;flex-direction:column}.recruit-counter{margin-top:16px}.recruit-counter>strong{font-size:3.4rem}.number-pop{top:15px;right:18px}.canvas-wrap{height:330px}.member-list,.action-list,.axis-list,.review-grid{grid-template-columns:1fr}.member-chip{width:100%}.subheading{align-items:flex-start;flex-direction:column;gap:4px}.campaign-rail{margin-inline:-4px;border-radius:9px}.current-objective{grid-template-columns:1fr}.current-objective>span{width:fit-content}.operation-choice{grid-template-columns:1fr}.operation-call{width:100%;min-width:0}.recruit-scoreline{display:grid;grid-template-columns:1fr auto}.recruit-scoreline em{grid-column:1 / -1;margin-left:0}.week-gauge,.week-scene-grid{grid-template-columns:1fr}.canvas-wrap{height:250px}.room-pulse,.axis-list{grid-template-columns:1fr 1fr}}@media(max-width:360px){html,body,#app{min-width:320px}.game-shell{padding-inline:max(8px,env(safe-area-inset-left))}.topbar{gap:6px}.wordmark{font-size:1.05rem}.topbar-actions{gap:4px}.button-icon{padding-inline:9px;font-size:.78rem}.mission-strip{gap:5px}.guide-message,.current-objective{padding:8px}.campaign-board{min-width:0}.recruit-counter{padding-inline:14px}.seat-labels{font-size:.58rem}.operation-choice{padding:9px}.week-banner h1{overflow-wrap:anywhere;font-size:1.42rem}.roster-pill{padding:5px 7px}.canvas-wrap{height:220px}.chat-room-panel,.week-command-center{padding:9px}.member-chip{padding-right:8px}.member-chip>i{position:static;margin-left:auto;transform:none}.resource-ribbon,.room-pulse,.axis-list,.review-grid{grid-template-columns:1fr}.result-layout{min-width:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}@media(forced-colors:active){.button,.scene-card,.form-card,.insight-panel,.control-panel,.choice-card,.member-chip{border:2px solid ButtonText}.progress-track span,.seat-track b{background:Highlight}}
