:root{color:#f8f0d0;background:#121520;font-family:Courier New,Courier,monospace;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),#121520;background-size:8px 8px}button,select,input{font:inherit}button{border:0}h1,h2,h3,p{margin-top:0}h1,h2,h3,button,.difficultyBadge,.riskPill,.trait{letter-spacing:0;text-transform:uppercase}.startScreen,.dashboard{min-height:100vh;padding:24px}.startScreen{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:18px;align-items:stretch;background:radial-gradient(circle at 18% 18%,rgba(245,192,111,.18),transparent 28%),radial-gradient(circle at 86% 30%,rgba(77,176,177,.2),transparent 30%),linear-gradient(180deg,#18213a,#111522)}.titleCartridge{align-self:center;display:grid;gap:18px;max-width:860px}.eyebrow{margin:0 0 8px;color:#f0b35a;font-size:.8rem;font-weight:900}h1{max-width:880px;margin-bottom:10px;color:#fff3b0;font-size:clamp(2.4rem,7vw,5.8rem);line-height:.95;text-shadow:4px 4px 0 #7d2d43,8px 8px 0 #10131f}.heroCopy{max-width:760px;color:#cbd8e8;font-size:1rem;font-weight:700;line-height:1.65}.startControls,.controlCluster{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.primaryButton,.secondaryButton,.iconButton,.chipButton{min-height:42px;border:3px solid #0b0d14;border-radius:0;cursor:pointer;font-weight:900;box-shadow:4px 4px #0b0d14}.primaryButton{padding:0 18px;background:#e66a44;color:#fff7d6}.secondaryButton{padding:0 14px;background:#2f416b;color:#fff7d6}.primaryButton:hover,.secondaryButton:hover,.chipButton:hover,.iconButton:hover{transform:translate(2px,2px);box-shadow:2px 2px #0b0d14}.primaryButton:disabled,.secondaryButton:disabled{cursor:not-allowed;opacity:.5;transform:none}.pixelPanel,.statusItem,.statusMeter,.staffCard,.projectCard,.feedItem,.summaryModal,.difficultyCard{border:4px solid #0b0d14;border-radius:0;background:#20283e;box-shadow:inset 0 0 0 3px #43527c,6px 6px #0b0d14}.difficultyGrid{display:grid;gap:12px;align-content:center;padding:16px}.startSetup{display:grid;gap:12px;align-content:start;padding:16px}.compactDifficulty{padding:0}.difficultyCard{display:grid;grid-template-columns:auto 1fr;gap:8px 12px;padding:14px;color:#f8f0d0;cursor:pointer}.crewHeader{margin-top:4px}.crewSelectGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.crewCard{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:center;min-height:70px;padding:8px;border:3px solid #0b0d14;background:#151b2d;color:#f8f0d0;cursor:pointer;text-align:left;box-shadow:inset 0 0 0 2px #43527c}.crewCard.selected{background:#24385c;box-shadow:inset 0 0 0 3px #63b76c}.crewCard:disabled{cursor:not-allowed;opacity:.45}.crewCard .pixelSprite{grid-row:span 2}.crewCard strong{color:#fff3b0;font-size:.9rem}.crewCard span{color:#9fb2d4;font-size:.68rem;font-weight:900}.difficultyCard.selected{background:#323f6a;box-shadow:inset 0 0 0 3px #f0b35a,6px 6px #0b0d14}.difficultyCard span{color:#fff3b0;font-weight:900}.difficultyCard small{grid-column:2;color:#cbd8e8;line-height:1.45}.pixelScene{position:relative;overflow:hidden;min-height:250px;border:4px solid #0b0d14;background:var(--scene-art, none) center / cover no-repeat,linear-gradient(#6aa8b8 0 48%,#77ad6b 48% 66%,#4a7d4f 66% 100%);box-shadow:inset 0 0 0 4px #f8f0d0,6px 6px #0b0d14;image-rendering:pixelated}.pixelBuilding{position:absolute;left:12%;bottom:28%;width:210px;height:118px;border:5px solid #3b2c33;background:#d6c49a;box-shadow:inset 0 -20px #9e795c}.pixelBuilding:before{content:"";position:absolute;left:30px;top:-45px;width:140px;height:42px;background:#bf6f48;clip-path:polygon(50% 0,100% 100%,0 100%)}.pixelBuilding span{display:inline-block;width:34px;height:26px;margin:22px 0 0 14px;border:4px solid #3b2c33;background:#5aa0b3}.tinyParty{position:absolute;left:42%;bottom:18%;display:flex;gap:12px}.tinyParty span{width:22px;height:34px;border:4px solid #302332;background:#f0b35a;box-shadow:inset 0 10px #f8d7a3,inset 0 -10px #2f416b}.deadlineBeast{position:absolute;right:12%;bottom:18%;width:92px;height:86px;border:5px solid #302332;background:#8f314d;box-shadow:inset 0 -18px #5f223d,12px 0 #302332,-12px 0 #302332}.deadlineBeast:before,.deadlineBeast:after{content:"";position:absolute;top:20px;width:13px;height:13px;background:#fff3b0}.deadlineBeast:before{left:22px}.deadlineBeast:after{right:22px}.dashboard{background:linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(180deg,#151b2d,#10131f);background-size:8px 8px,8px 8px,auto;padding:14px}.appHeader{display:flex;justify-content:space-between;gap:18px;align-items:end;margin-bottom:8px}.appHeader h1{margin:0;font-size:clamp(1.5rem,3vw,2.45rem)}.difficultyBadge{display:inline-flex;align-items:center;min-height:42px;padding:0 12px;border:3px solid #0b0d14;background:#376b63;color:#fff7d6;font-weight:900;box-shadow:4px 4px #0b0d14}.statusBar{display:grid;grid-template-columns:.75fr 1.2fr 1.2fr .75fr .75fr .75fr;gap:10px;margin-bottom:8px}.compactStatus{grid-template-columns:.72fr minmax(220px,1.1fr) .6fr .55fr .7fr}.statusItem,.statusMeter{min-height:58px;padding:8px}.statusItem span,.meterTop span,.panelHeader span,.projectStats span,.feedItem span,.muted{color:#9fb2d4;font-size:.78rem;font-weight:900}.statusItem strong{display:block;margin-top:8px;color:#fff3b0;font-size:1.08rem}.actionSlots div{display:flex;gap:7px;margin-top:12px}.actionSlots b{display:block;width:22px;height:22px;border:3px solid #0b0d14;background:#10131f}.actionSlots b.filled{background:#e66a44}.meter{display:grid;gap:5px}.meterTop{display:flex;justify-content:space-between;gap:10px}.meterTop strong{color:#fff3b0}.meterTrack{overflow:hidden;height:14px;border:3px solid #0b0d14;border-radius:0;background:#10131f}.meterFill{height:100%;border-radius:0}.meterFill.good{background:#63b76c}.meterFill.warning{background:#f0b35a}.meterFill.bad{background:#d94b5f}.battleScene{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(520px,.58fr);gap:18px;min-height:272px;margin-bottom:8px;padding:8px 12px 14px;background:var(--scene-art, none) center bottom / cover no-repeat,linear-gradient(#5d93b0 0 48%,#596b48 48% 66%,#33472f 66% 100%)}.leanBattle{grid-template-columns:minmax(0,1fr) minmax(520px,.58fr)}.battleSky{display:none}.cloud{position:absolute;width:80px;height:28px;background:#d9eef0;box-shadow:24px 8px #d9eef0,-20px 10px #d9eef0}.cloud.one{top:28px;left:12%}.cloud.two{top:58px;right:22%}.partyPlatform{position:relative;z-index:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(98px,1fr));gap:4px;align-self:end;transform:translateY(8px)}.partySlot{display:grid;justify-items:center;gap:4px;padding:6px;color:#fff7d6;font-size:.65rem;font-weight:900;text-align:center}.partySlot span:last-child{color:#f0b35a}.partySlot.down,.leanStaffCard.down{opacity:.55}.pixelSprite{position:relative;width:91px;height:91px;image-rendering:pixelated}.pixelSprite.small{width:38px;height:38px}.bossSprite img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated}.pixelSprite.sheet{overflow:hidden}.spriteSheetFrame{display:block;width:100%;height:100%;background-image:var(--sprite-sheet);background-repeat:no-repeat;background-size:400% 100%;background-position-x:var(--sprite-frame-position);background-position-y:center;image-rendering:pixelated}.spriteHead,.spriteBody,.spriteFeet{position:absolute;left:50%;transform:translate(-50%);border:3px solid #1c1721}.spriteHead{top:0;width:24px;height:22px;background:#f2bf8d;box-shadow:inset 0 5px #4f2f32}.spriteBody{top:22px;width:32px;height:30px;background:#4aa3a2}.spriteFeet{bottom:0;width:36px;height:12px;background:#273247}.pixelSprite.designer .spriteBody{background:#d95f7a}.pixelSprite.photo .spriteBody{background:#4f6fb6}.pixelSprite.video .spriteBody{background:#6d5fc0}.pixelSprite.web .spriteBody{background:#4f9f61}.pixelSprite.student .spriteBody{background:#e6a94e}.bossCard{position:relative;z-index:3;align-self:start;justify-self:end;width:min(278px,100%);padding:9px;border:4px solid #0b0d14;background:#20283ef0;box-shadow:inset 0 0 0 3px #43527c}.bossCard h2{margin-bottom:3px;color:#fff3b0;font-size:1rem}.bossCard p,.projectCard p,.feedItem p,.assignedText{color:#dce6ed;line-height:1.35}.bossSprite{position:relative;width:124px;height:112px;align-self:center;overflow:hidden;border:0;background:transparent;box-shadow:none}.enemySide{position:relative;z-index:2;display:grid;align-self:stretch;min-height:238px}.enemySpriteStage{position:absolute;left:4px;bottom:-8px;z-index:2;display:grid;place-items:end center;width:270px;height:210px;pointer-events:none}.enemySpriteStage .bossSprite{width:262px;height:202px}.bossSprite.sheet .spriteSheetFrame{width:100%;height:100%}.bossSprite:not(.sheet) span{position:absolute;background:#fff3b0}.bossSprite:not(.sheet) span:nth-child(1),.bossSprite:not(.sheet) span:nth-child(2){top:28px;width:14px;height:14px}.bossSprite:not(.sheet) span:nth-child(1){left:22px}.bossSprite:not(.sheet) span:nth-child(2){right:22px}.bossSprite:not(.sheet) span:nth-child(3){left:30px;bottom:26px;width:38px;height:8px;background:#1c1721}.bossHp{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;margin:10px 0}.bossHp span,.bossHp strong{color:#fff3b0;font-weight:900}.bossHp.compact{margin:10px 0 8px}.tacticHand{background:linear-gradient(135deg,rgba(240,179,90,.12),transparent 42%),#20283e}.tacticGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.tacticCard{min-height:112px;padding:9px;border:4px solid #0b0d14;background:#151b2d;box-shadow:inset 0 0 0 3px #43527c;color:#f8f0d0;cursor:pointer;text-align:left}.tacticCard.attack{border-left:10px solid #e66a44}.tacticCard.support{border-left:10px solid #63b76c}.tacticCard.strong{box-shadow:inset 0 0 0 3px #63b76c}.tacticCard.okay{box-shadow:inset 0 0 0 3px #f0b35a}.tacticCard.weak{box-shadow:inset 0 0 0 3px #9fb2d4}.tacticCard:disabled{cursor:not-allowed;opacity:.45}.tacticCard h3{margin:0;color:#fff3b0}.tacticCard .cardTitleRow>span{border:2px solid #0b0d14;padding:4px 7px;background:#2f416b;color:#fff7d6;font-size:.72rem;font-weight:900}.tacticCard p{margin-bottom:6px;font-size:.78rem;color:#dce6ed;line-height:1.32}.previewLine{display:flex;justify-content:space-between;gap:8px;margin:6px 0;color:#f0b35a;font-size:.74rem;font-weight:900}.previewLine span{color:#9fb2d4;text-align:right}.leanGameGrid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}.leanPartyGrid{grid-template-columns:repeat(3,minmax(220px,1fr))}.compactPartyPanel{padding-bottom:10px}.partyStatusGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.partyMiniCard{display:grid;gap:4px;min-width:0;padding:6px;border:3px solid #0b0d14;background:#151b2d;box-shadow:inset 0 0 0 2px #43527c}.partyMiniCard.down{opacity:.55}.partyMiniCard .partyHeader{gap:6px;margin-bottom:2px}.partyMiniCard .partyHeader h3{font-size:.8rem}.partyMiniCard .partyHeader p{font-size:.66rem}.partyMiniCard .pixelSprite.small{width:38px;height:38px}.partyMiniCard .meter{gap:3px}.partyMiniCard .meterTop span,.partyMiniCard .meterTop strong{font-size:.66rem}.partyMiniCard .meterTrack{height:9px;border-width:2px}.leanStaffCard{display:grid;gap:8px}.actionButtons{display:grid;gap:8px;margin-top:4px}.actionButton{min-height:34px;border:3px solid #0b0d14;border-radius:0;background:#2f416b;color:#fff7d6;cursor:pointer;font-weight:900;text-align:left;box-shadow:3px 3px #0b0d14}.actionButton.selected{background:#e66a44;color:#fff3b0}.actionButton:disabled{cursor:not-allowed;opacity:.45}.battleLog{position:sticky;top:16px;max-height:416px;overflow:hidden}.compactFeed{gap:8px;max-height:356px;overflow:auto;padding-right:4px}.dashboardGrid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:start}.mainColumn{display:grid;gap:8px}.pixelPanel{padding:10px}.panelHeader{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:8px}.panelHeader h2{margin:0;color:#fff3b0;font-size:.98rem}.staffGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.staffCard,.projectCard{padding:12px}.partyHeader,.cardTitleRow{display:flex;justify-content:space-between;gap:12px;align-items:start;margin-bottom:10px}.partyHeader{justify-content:flex-start;align-items:center}.partyHeader h3,.cardTitleRow h3{margin-bottom:3px;color:#fff3b0;font-size:1rem}.partyHeader p,.cardTitleRow p{margin-bottom:0;color:#9fb2d4;font-size:.82rem;font-weight:900}.trait,.riskPill,.critical{display:inline-flex;width:fit-content;border:3px solid #0b0d14;border-radius:0;padding:4px 7px;font-size:.7rem;font-weight:900}.trait{margin-bottom:10px;background:#384764;color:#fff7d6}.selectLabel,.assignmentRow label{display:grid;gap:6px;margin-top:12px;color:#f0b35a;font-size:.78rem;font-weight:900;text-transform:uppercase}select{width:100%;min-height:38px;border:3px solid #0b0d14;border-radius:0;background:#f8f0d0;color:#151b2d;padding:0 10px;font-weight:900}.tagList,.projectStats,.assignedChips,.outcomeStats{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.tagList span,.projectStats span,.outcomeStats span{border:2px solid #0b0d14;border-radius:0;padding:4px 7px;background:#111827;color:#cbd8e8;font-size:.72rem;font-weight:900}.projectList,.feedList{display:grid;gap:12px}.projectCard{border-left:10px solid #63b76c}.projectCard.riskMedium,.bossCard.riskMedium{border-left-color:#f0b35a}.projectCard.riskHigh,.bossCard.riskHigh{border-left-color:#e66a44}.projectCard.riskCritical,.bossCard.riskCritical{border-left-color:#d94b5f}.riskPill{background:#31553f;color:#d7ffd3}.riskHigh .riskPill,.riskCritical .riskPill{background:#6a2636;color:#ffd9df}.riskMedium .riskPill{background:#744d25;color:#ffe2ad}.flavor{color:#f0b35a!important;font-style:italic}.critical{background:#8f314d!important;color:#fff7d6!important}.assignmentRow{display:grid;grid-template-columns:220px 1fr;gap:12px;align-items:end;margin-top:12px}.chipButton{min-height:34px;padding:0 10px;background:#376b63;color:#fff7d6}.chaosPanel{position:sticky;top:16px}.feedItem{padding:10px;box-shadow:inset 0 0 0 3px #43527c}.feedItem strong{display:block;margin:4px 0;color:#fff3b0}.feedItem.warning{box-shadow:inset 0 0 0 3px #f0b35a,6px 6px #0b0d14}.feedItem.bad{box-shadow:inset 0 0 0 3px #d94b5f,6px 6px #0b0d14}.feedItem.good{box-shadow:inset 0 0 0 3px #63b76c,6px 6px #0b0d14}.emptyState,.emptyEncounter{padding:24px;border:3px dashed #9fb2d4;color:#cbd8e8;text-align:center}.modalBackdrop{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:18px;background:#080a10c7}.summaryModal{width:min(900px,100%);max-height:min(760px,92vh);overflow:auto;padding:20px}.modalHeader{display:flex;justify-content:space-between;gap:14px;align-items:start}.modalHeader h2,.outcome h2{margin:0;color:#fff3b0;font-size:1.8rem}.iconButton{width:40px;min-height:40px;background:#2f416b;color:#fff7d6}.recap{margin:18px 0;color:#f0b35a;font-size:1rem;font-weight:900}.summaryGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}.summaryGrid>div{min-height:150px;padding:14px;border:3px solid #0b0d14;background:#151b2d}.leanSummaryGrid{grid-template-columns:1.2fr .8fr}.summaryGrid h3{margin-bottom:8px;color:#fff3b0}.summaryGrid p{color:#dce6ed}.outcome,.battleResult{text-align:center}.resultMonster{display:grid;justify-items:center;margin:4px 0 14px}.resultMonster .bossSprite{width:210px;height:124px}.battleResult.won{box-shadow:inset 0 0 0 3px #63b76c,6px 6px #0b0d14}.battleResult.lost{box-shadow:inset 0 0 0 3px #d94b5f,6px 6px #0b0d14}.resultBody{max-width:680px;margin:0 auto 18px;color:#dce6ed;font-weight:800;line-height:1.55}.resultStats{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:18px 0}.resultStats span{border:2px solid #0b0d14;padding:6px 9px;background:#111827;color:#cbd8e8;font-size:.78rem;font-weight:900}.resultActions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.outcome.won{box-shadow:inset 0 0 0 3px #63b76c,6px 6px #0b0d14}.outcome.lost{box-shadow:inset 0 0 0 3px #d94b5f,6px 6px #0b0d14}.outcomeStats{justify-content:center;margin:18px 0}@media(max-width:1160px){.statusBar,.dashboardGrid,.leanGameGrid,.startScreen,.battleScene,.tacticGrid{grid-template-columns:1fr}.partyStatusGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.chaosPanel,.battleLog{position:static}}@media(max-width:860px){.startScreen,.dashboard{padding:14px}.appHeader{align-items:start;flex-direction:column}.statusBar,.staffGrid,.partyStatusGrid,.summaryGrid,.leanSummaryGrid,.assignmentRow,.partyPlatform,.bossCard{grid-template-columns:1fr}.bossSprite{justify-self:center}}@media(max-width:520px){h1{font-size:2.3rem}.panelHeader,.cardTitleRow{align-items:start;flex-direction:column}.trait,.riskPill{max-width:100%}}
