.protect-page{background:radial-gradient(circle at 50% -18%,rgba(153,70,28,.78) 0,rgba(49,37,25,.88) 30%,rgba(12,35,23,.97) 68%,#07110c 100%)}
.protect-shell{position:relative;z-index:1;width:min(1240px,100%);margin:0 auto;padding:16px 12px 64px}.protect-screen{position:relative}.protect-topbar{min-height:64px}.protect-logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:118px;height:58px;display:flex;align-items:center;justify-content:center}.protect-logo img{width:112px;max-height:55px;object-fit:contain}.protect-topbar #protectResetBtn{margin-left:auto}.protect-topbar #protectMenuBtn{margin-right:auto}
.protect-intro{padding:0;display:block;aspect-ratio:1894/830;min-height:0;background:#111 url('../assets/protect/banner/protect-yourself-banner.png') center/contain no-repeat;border-width:5px;box-shadow:9px 10px 0 rgba(0,0,0,.44)}.protect-intro:before,.protect-intro:after{display:none!important}.threat-first-intro-copy{display:none!important}
.protect-panel{padding:20px;margin-top:15px;border-width:5px}.mission-intro-copy{font-size:16px;font-weight:900;line-height:1.4;max-width:820px}.protect-category-label{margin:18px 0 8px;font-family:Impact,'Arial Black',sans-serif;letter-spacing:.08em;font-size:14px}.mission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;position:relative;z-index:1}.last-stand-grid{grid-template-columns:1fr}.mission-card{appearance:none;border:4px solid #111;border-radius:18px;aspect-ratio:1672/941;padding:0;overflow:hidden;position:relative;background:#303c2c;box-shadow:6px 7px 0 rgba(0,0,0,.34);cursor:pointer;background-size:cover;background-position:center;transition:transform .14s ease,outline-color .14s ease}.mission-card:before,.mission-card:after{display:none}.mission-copy{display:none}.mission-card.selected{outline:6px solid #ffe14d;outline-offset:3px;transform:translateY(-4px)}.mission-card[data-scenario="sahara"]{background-image:url('../assets/protect/mission_cards/africa-cross-the-sahara.png')}.mission-card[data-scenario="swamp"]{background-image:url('../assets/protect/mission_cards/south-america-swamp-run.png')}.mission-card[data-scenario="mountain"]{background-image:url('../assets/protect/mission_cards/europe-mountain-pass.png')}.mission-card[data-scenario="island"]{background-image:url('../assets/protect/mission_cards/australia-island-of-teeth.png')}.mission-card[data-scenario="adrift"]{background-image:url('../assets/protect/mission_cards/open-ocean-adrift.png')}.mission-card[data-scenario="frozen"]{background-image:url('../assets/protect/mission_cards/north-america-frozen-outpost.png')}.mission-card[data-scenario="laststand"]{background-image:url('../assets/protect/mission_cards/last-stand.png')}
.protect-difficulty{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;position:relative;z-index:1}.protect-difficulty button{border:4px solid #111;border-radius:13px;background:#fff2c7;box-shadow:4px 5px 0 rgba(0,0,0,.25);padding:16px 12px;cursor:pointer;min-height:96px}.protect-difficulty b{display:block;font-family:Impact,'Arial Black',sans-serif;font-size:28px}.protect-difficulty small{display:block;font-weight:900;margin-top:3px}.protect-difficulty button.selected{background:#ffe04b;transform:translateY(-3px)}.mission-brief{margin-top:15px;padding:20px 22px;background:linear-gradient(110deg,#fff4c9,#e8cf92);border-width:5px}.mission-brief h3{font-family:Impact,'Arial Black',sans-serif;font-size:34px;margin:4px 0}.mission-brief p{font-weight:900;line-height:1.35;margin:7px 0;max-width:920px}.brief-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.brief-chip{border:2px solid #111;border-radius:999px;background:#fff9df;padding:5px 9px;font-weight:1000;font-size:11px}.protect-start{width:100%;margin-top:16px}
.survival-header{padding:16px 18px;display:flex;align-items:center;gap:18px;background:linear-gradient(120deg,#fff0b6,#ffc943);border-width:5px}.survival-header>div:first-child{flex:1}.survival-header h2{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(34px,5vw,58px);line-height:.95;margin:3px 0}.survival-header p{font-weight:1000;margin:5px 0 0}.you-status{min-width:190px;border:4px solid #111;border-radius:13px;background:#111;color:#ffe34f;padding:10px 12px;text-align:center}.journey-phase{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin:0 auto 8px;padding:6px 10px;border-radius:999px;background:#2a2617;color:#fff0a7;font-family:Impact,'Arial Black',sans-serif;font-size:16px;letter-spacing:.04em}.journey-phase:before{content:"☀";font-size:15px;line-height:1}.journey-phase.night:before{content:"☾"}.journey-phase.wave:before{content:"⚠"}.you-status small{display:block;font-weight:1000;letter-spacing:.13em}.you-status b{display:block;font-family:Impact,'Arial Black',sans-serif;font-size:25px}.you-health{height:10px;border:2px solid #ffe9a5;background:#45241d;border-radius:10px;overflow:hidden;margin-top:6px}.you-health span{display:block;height:100%;width:100%;background:#46bd64;transition:width .25s ease}
.survival-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:14px;margin-top:14px;align-items:start}.survival-main{display:grid;gap:14px}.story-stage{padding:28px;border-width:5px;min-height:390px;background:linear-gradient(110deg,rgba(255,241,190,.97),rgba(255,202,70,.94));overflow:hidden}.story-stage[data-tone="danger"]{background:linear-gradient(115deg,#ffe2a8,#ed7550)}.story-stage[data-tone="good"]{background:linear-gradient(115deg,#f4f2b2,#70c977)}.story-stage[data-tone="dark"]{background:linear-gradient(115deg,#e8d4ab,#a87554)}.story-kicker{display:inline-block;background:#111;color:#ffe14c;border:3px solid #111;padding:6px 10px;font-family:Impact,'Arial Black',sans-serif;letter-spacing:.05em;transform:rotate(-1deg)}.story-stage h1{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(48px,6.5vw,82px);line-height:.88;margin:16px 0 14px;max-width:860px}.story-copy{font-size:clamp(17px,2vw,22px);font-weight:900;line-height:1.42;max-width:850px;margin:0}.story-extra{margin-top:18px;display:grid;gap:9px}.story-callout{border:4px solid #111;border-radius:12px;background:#fff5cf;padding:12px 14px;font-weight:1000;line-height:1.35}.story-callout.bad{background:#111;color:#ffe35a}.story-callout.good{background:#eaffbd}.story-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.story-action{border:4px solid #111;border-radius:12px;background:#ffe04a;color:#111;box-shadow:5px 6px 0 rgba(0,0,0,.28);padding:13px 18px;font-family:Impact,'Arial Black',sans-serif;font-size:22px;cursor:pointer}.story-action.secondary{background:#fff3c8}.story-action:hover{transform:translateY(-2px)}
.recruitment-panel{padding:20px;border-width:5px}.recruit-heading{display:flex;justify-content:space-between;gap:16px;align-items:center}.recruit-heading h2{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(32px,5vw,50px);line-height:.95;margin:4px 0}.recruit-heading p{font-weight:900;margin:7px 0 14px}.one-choice-stamp{border:4px solid #111;background:#ffe04b;padding:9px 12px;font-family:Impact,'Arial Black',sans-serif;font-size:22px;transform:rotate(2deg);box-shadow:4px 4px 0 rgba(0,0,0,.24);white-space:nowrap}.recruit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.recruit-card{position:relative;border:4px solid #111;border-radius:13px;background:#111;box-shadow:5px 6px 0 rgba(0,0,0,.28);overflow:hidden;min-width:0}.recruit-card .aa-card-surface{width:100%;aspect-ratio:18/25;background:#111}.recruit-card .aa-card-surface>img{width:100%;height:100%;object-fit:cover;display:block}.recruit-card .aa-card-overlay{height:37.5%}.recruit-card .aa-card-copy{font-size:3.45cqw}.recruit-count{position:absolute;right:7px;top:7px;z-index:9;border:3px solid #111;border-radius:10px;background:#ffe04b;color:#111;min-width:46px;padding:5px 7px;text-align:center;font-family:Impact,'Arial Black',sans-serif;font-size:24px;box-shadow:3px 4px 0 rgba(0,0,0,.4)}.recruit-card button{width:100%;border:0;border-top:3px solid #111;background:#ffe04b;padding:10px 6px;font-family:Impact,'Arial Black',sans-serif;font-size:14px;cursor:pointer}.recruit-card button:hover{background:#ffd229}
.protection-panel{position:sticky;top:78px;padding:16px;border-width:5px;background:linear-gradient(160deg,#fff0bb,#e6c987)}.protection-heading h2{font-family:Impact,'Arial Black',sans-serif;font-size:34px;line-height:.95;margin:4px 0 12px}.protection-empty{border:3px dashed #111;border-radius:10px;padding:16px;font-weight:900;line-height:1.35}.protection-list{display:grid;gap:9px}.protection-group{border:3px solid #111;border-radius:11px;background:#151914;color:#fff7d3;overflow:hidden;box-shadow:3px 4px 0 rgba(0,0,0,.2)}.protection-group-top{display:grid;grid-template-columns:62px 1fr;gap:9px;align-items:center;padding:7px}.protection-group img{width:62px;height:62px;object-fit:cover;border:2px solid #ffe5a0;border-radius:7px}.protection-group-name{min-width:0}.protection-group-name b{display:block;font-family:Impact,'Arial Black',sans-serif;font-size:20px;line-height:1}.protection-group-name small{display:block;font-size:9px;font-weight:900;margin-top:3px;color:#ffe14b}.protection-count{font-family:Impact,'Arial Black',sans-serif;font-size:30px;color:#ffe14b;line-height:1}.condition-track{height:8px;background:#492f24;border-top:2px solid #111;overflow:hidden}.condition-track span{display:block;height:100%;background:#4abe66}.protection-group-footer{display:flex;justify-content:space-between;gap:5px;padding:5px 7px;font-size:8px;font-weight:1000;background:#252820}.protection-summary{margin-top:12px;border-top:3px solid #111;padding-top:10px;display:grid;grid-template-columns:1fr 1fr;gap:7px}.protection-summary div{border:2px solid #111;border-radius:8px;background:#fff4cd;padding:7px;text-align:center}.protection-summary small{display:block;font-size:8px;font-weight:1000}.protection-summary b{font-family:Impact,'Arial Black',sans-serif;font-size:22px}.group-info-btn{border:2px solid #ffe04b;background:#111;color:#ffe04b;border-radius:6px;font-family:Impact,'Arial Black',sans-serif;font-size:9px;cursor:pointer;padding:3px 5px}
.story-history-panel{padding:14px 16px;border-width:4px}.story-history{display:grid;gap:8px;margin-top:7px}.history-beat{border-left:6px solid #111;background:rgba(255,247,213,.72);padding:8px 10px;font-size:12px;font-weight:800;line-height:1.35}.history-beat b{font-family:Impact,'Arial Black',sans-serif;font-size:15px}.history-beat.bad{border-left-color:#c83f31}.history-beat.good{border-left-color:#3d9b4d}.history-beat.quiet{border-left-color:#8c745b}
.protect-end{padding:30px 26px;background:linear-gradient(135deg,#fff1b6,#ffc44d);text-align:center;border-width:5px}.protect-end h2{font-family:Impact,'Arial Black',sans-serif;margin:5px 0;font-size:clamp(48px,7vw,78px);line-height:.9}.protect-end-shout{display:inline-block;background:#111;color:#ffe14c;border:4px solid #111;padding:8px 13px;font-family:Impact,'Arial Black',sans-serif;font-size:30px;transform:rotate(-1deg)}.protect-end>p{max-width:760px;margin:10px auto;font-weight:1000;line-height:1.4}.protect-end-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;max-width:840px;margin:20px auto}.protect-end-stats>div{border:3px solid #111;border-radius:10px;background:#fff3c8;padding:11px}.protect-end-stats small{display:block;font-size:9px;font-weight:1000}.protect-end-stats b{font-family:Impact,'Arial Black',sans-serif;font-size:25px;line-height:1.05}.end-survivors{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:18px auto 22px;max-width:980px}.end-survivor{width:112px;min-height:204px;border:3px solid #111;border-radius:10px;overflow:hidden;background:#111;color:#fff3c4;cursor:pointer;display:flex;flex-direction:column;justify-content:flex-start;box-shadow:4px 5px 0 rgba(0,0,0,.18)}.end-survivor img{width:100%;aspect-ratio:215/300;object-fit:contain;object-position:center top;display:block;background:#111}.end-survivor b{display:flex;align-items:center;justify-content:center;min-height:42px;padding:6px;font-size:11px;line-height:1.15;text-align:center}
.protect-animal-modal{width:min(680px,94vw);max-height:92vh;overflow:auto;padding:22px}.protect-detail-card{width:min(245px,58vw);margin:0 auto 14px;border:4px solid #111;border-radius:13px;background:#111;overflow:hidden;box-shadow:5px 6px 0 rgba(0,0,0,.25);container-type:inline-size}.protect-detail-surface{width:100%;aspect-ratio:18/25;position:relative;overflow:hidden}.protect-detail-surface>img{width:100%;height:100%;object-fit:cover;display:block}.protect-animal-modal h2{font-size:clamp(34px,6vw,56px);text-align:center}.protect-animal-modal>p{text-align:center;font-weight:900}.protect-health-detail{font-family:Impact,'Arial Black',sans-serif;font-size:20px;margin:8px 0 12px;text-align:center}.stat-bars{display:grid;gap:7px;margin-top:12px}.stat-row{display:grid;grid-template-columns:95px 1fr 28px;align-items:center;gap:8px;font-size:11px;font-weight:1000}.stat-track{height:12px;border:2px solid #111;background:#e0c996;border-radius:10px;overflow:hidden}.stat-track span{display:block;height:100%;background:#ef8d2f}.toast{z-index:100}
.last-stand-picker{margin-top:16px;border:3px solid #111;border-radius:12px;background:rgba(255,249,222,.72);padding:12px}.last-stand-picker>small{display:block;font-weight:1000;letter-spacing:.1em;font-size:9px;margin-bottom:8px}.last-stand-options{display:flex;flex-wrap:wrap;gap:7px}.last-stand-options button{border:3px solid #111;border-radius:8px;background:#fff3c7;padding:8px 10px;font-family:Impact,'Arial Black',sans-serif;font-size:13px;cursor:pointer;box-shadow:2px 3px 0 rgba(0,0,0,.2)}.last-stand-options button.selected{background:#ffe04b;transform:translateY(-2px)}.last-stand-note{font-size:11px!important;margin:9px 0 0!important}
@media(max-width:1020px){.survival-layout{grid-template-columns:1fr}.protection-panel{position:relative;top:auto}.protection-list{grid-template-columns:repeat(2,1fr)}.recruit-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.protect-shell{padding:10px 8px 48px}.protect-logo{width:100px}.protect-logo img{width:96px}.protect-intro{aspect-ratio:1894/830;min-height:0;padding:0;background-position:center;background-size:contain}.mission-grid{grid-template-columns:1fr 1fr}.last-stand-grid{grid-template-columns:1fr}.protect-difficulty{grid-template-columns:1fr}.survival-header{align-items:flex-start;flex-wrap:wrap}.you-status{width:100%}.story-stage{padding:21px;min-height:0}.recruit-grid{grid-template-columns:repeat(2,1fr)}.protection-list{grid-template-columns:repeat(2,1fr)}.protect-end-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.protect-intro{aspect-ratio:1894/830;min-height:0;padding:0;background-size:contain}.mission-grid{grid-template-columns:1fr}.protect-panel{padding:15px}.mission-brief{padding:16px}.story-stage h1{font-size:49px}.story-copy{font-size:16px}.story-action{width:100%;font-size:20px}.recruit-heading{align-items:flex-start}.one-choice-stamp{font-size:17px}.recruit-grid{gap:8px}.protection-list{grid-template-columns:1fr}.recruit-card button{font-size:12px}.protect-end-stats{grid-template-columns:repeat(2,1fr)}}

/* Temporary gameplay-build correction until the Adrift artwork is redrawn. */
.mission-card[data-scenario="adrift"]:after{display:flex!important;content:"LIFE RAFT. OPEN OCEAN. RESCUE IS SOMEWHERE OUT THERE.";position:absolute;left:0;right:0;bottom:0;height:20%;align-items:center;padding:0 14px;background:rgba(8,12,10,.94);color:#fff;font-weight:1000;font-size:11px;z-index:3;box-sizing:border-box}

/* === Protect Yourself v4: stripped story flow + live battle === */
.simple-recruit-heading{display:block;margin-bottom:14px}
.simple-recruit-heading h2{margin:0!important;font-size:clamp(34px,5.2vw,54px)!important}
.story-kicker.hidden{display:none!important}

.protect-battle-head{padding:18px 22px;border-width:5px;background:linear-gradient(110deg,#fff0b8,#ffc444);text-align:center}
.protect-battle-head h2{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(42px,6vw,70px);line-height:.9;margin:5px 0 6px}
.protect-battle-head p{font-weight:900;margin:0;font-size:16px}
.protect-live-battle{margin-top:14px;padding:18px;border-width:5px;background:linear-gradient(145deg,#ffe8ad,#f4b742);overflow:hidden}
.protect-battle-sides{display:grid;grid-template-columns:minmax(220px,.85fr) 150px minmax(0,1.45fr);gap:15px;align-items:stretch}
.protect-battle-side{border:4px solid #111;border-radius:14px;background:#151914;color:#fff4cc;box-shadow:5px 6px 0 rgba(0,0,0,.3);padding:12px;min-width:0}
.battle-side-label{font-family:Impact,'Arial Black',sans-serif;color:#ffe04b;letter-spacing:.08em;font-size:13px;margin-bottom:9px;text-align:center}
.battle-threat-card{width:min(220px,100%);margin:0 auto;border:3px solid #111;border-radius:11px;background:#000;overflow:hidden;box-shadow:4px 5px 0 rgba(0,0,0,.35)}
.battle-threat-card img{display:block;width:100%;aspect-ratio:18/25;object-fit:cover}
.battle-big-count{display:flex;align-items:end;justify-content:center;gap:8px;margin:10px 0 8px;text-align:center}
.battle-big-count b{font-family:Impact,'Arial Black',sans-serif;font-size:52px;line-height:.8;color:#ffdf42}
.battle-big-count span{font-family:Impact,'Arial Black',sans-serif;font-size:19px;line-height:1;max-width:150px}
.battle-force-track,.live-group-track{height:16px;border:3px solid #111;border-radius:999px;background:#442b20;overflow:hidden}
.battle-force-track i,.live-group-track i{display:block;height:100%;transition:width .55s cubic-bezier(.2,.8,.2,1),background .35s ease}
.protect-battle-centre{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;text-align:center;min-width:0}
.battle-vs{font-family:Impact,'Arial Black',sans-serif;font-size:56px;line-height:.8;color:#111;text-shadow:3px 3px 0 rgba(255,255,255,.5)}
.battle-live-callout{border:4px solid #111;background:#111;color:#ffe04b;padding:10px 9px;font-family:Impact,'Arial Black',sans-serif;font-size:21px;line-height:1;transform:rotate(-1deg);box-shadow:4px 5px 0 rgba(0,0,0,.25);width:100%;box-sizing:border-box}
.battle-twist{border:4px solid #111;background:#e64e3f;color:#fff;padding:9px 7px;font-family:Impact,'Arial Black',sans-serif;font-size:19px;line-height:1;transform:rotate(2deg);box-shadow:4px 5px 0 rgba(0,0,0,.25);width:100%;box-sizing:border-box;animation:twistHit .35s ease-out}
@keyframes twistHit{0%{transform:scale(.65) rotate(-7deg)}70%{transform:scale(1.1) rotate(4deg)}100%{transform:scale(1) rotate(2deg)}}
.battle-protector-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}
.live-protector{display:grid;grid-template-columns:70px 1fr;grid-template-rows:1fr auto;gap:6px 9px;align-items:center;border:3px solid #111;border-radius:10px;background:#f2dfad;color:#111;overflow:hidden;padding:6px;transition:filter .3s ease,opacity .3s ease}
.live-protector img{width:70px;height:82px;object-fit:cover;border:2px solid #111;border-radius:6px;grid-row:1/3}
.live-protector-copy{min-width:0}
.live-protector-copy b{display:block;font-family:Impact,'Arial Black',sans-serif;font-size:31px;line-height:.9;color:#111}
.live-protector-copy span{display:block;font-family:Impact,'Arial Black',sans-serif;font-size:15px;line-height:1;overflow:hidden;text-overflow:ellipsis}
.live-group-track{height:11px;border-width:2px;align-self:end}
.live-protector.live-out{filter:grayscale(1);opacity:.42}
.battle-ticker{margin-top:15px;border:4px solid #111;border-radius:11px;background:#fff2c7;padding:12px 14px;text-align:center;font-weight:1000;font-size:17px;min-height:22px;box-shadow:4px 5px 0 rgba(0,0,0,.2)}
.battle-result{margin-top:16px;border:5px solid #111;border-radius:13px;background:#fff1b7;padding:18px;text-align:center;box-shadow:6px 7px 0 rgba(0,0,0,.25)}
.battle-result h2{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(42px,6vw,68px);line-height:.9;margin:5px 0 8px}
.battle-result p{font-weight:1000;font-size:16px;line-height:1.35;max-width:820px;margin:0 auto 14px}
.battle-result .story-action{min-width:220px}

@media(max-width:900px){
  .protect-battle-sides{grid-template-columns:1fr 110px 1.3fr}
  .battle-protector-grid{grid-template-columns:1fr}
  .live-protector{grid-template-columns:58px 1fr}.live-protector img{width:58px;height:70px}
}
@media(max-width:680px){
  .protect-battle-sides{grid-template-columns:1fr;gap:10px}
  .protect-battle-centre{display:grid;grid-template-columns:70px 1fr;gap:8px}
  .battle-vs{font-size:44px}.battle-twist{grid-column:1/3}
  .battle-protector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .live-protector{grid-template-columns:48px 1fr;padding:5px;gap:4px 6px}.live-protector img{width:48px;height:60px}.live-protector-copy b{font-size:25px}.live-protector-copy span{font-size:11px}
  .battle-threat-card{width:180px}.battle-big-count b{font-size:46px}
}
@media(max-width:460px){
  .protect-live-battle{padding:10px}.protect-battle-head{padding:13px}
  .battle-protector-grid{grid-template-columns:1fr}
  .battle-ticker{font-size:14px;padding:10px}
}


/* === Protect Yourself v5: believable counts, threat glance and battle-ready GO === */
.story-stage.has-threat-card{padding-right:230px;min-height:420px}
.story-stage.has-threat-card .story-copy{max-width:720px}
.story-threat-glance{position:absolute;right:24px;top:24px;width:180px;z-index:2}
.story-threat-card{position:relative;width:100%;border:4px solid #111;border-radius:14px;background:#111;overflow:visible;box-shadow:6px 7px 0 rgba(0,0,0,.30);container-type:inline-size}
.story-threat-card .aa-card-surface{width:100%;aspect-ratio:18/25;overflow:hidden;border-radius:10px}
.story-threat-card .aa-card-surface>img{width:100%;height:100%;object-fit:cover;display:block}
.story-threat-card .aa-card-overlay{height:37.5%}
.story-threat-card .aa-card-copy{font-size:3.35cqw}
.story-threat-count{position:absolute;right:-12px;top:-13px;z-index:12;display:grid;place-items:center;min-width:58px;height:50px;padding:0 8px;border:4px solid #111;border-radius:11px;background:#ffe04b;color:#111;font-family:Impact,'Arial Black',sans-serif;font-size:31px;line-height:1;box-shadow:4px 5px 0 rgba(0,0,0,.35);transform:rotate(3deg)}
.battle-go-button{appearance:none;border:5px solid #111;border-radius:14px;background:#ffe04b;color:#111;box-shadow:6px 7px 0 rgba(0,0,0,.34);padding:15px 24px;font-family:Impact,'Arial Black',sans-serif;font-size:44px;line-height:.9;cursor:pointer;min-width:120px;transform:rotate(-1deg)}
.battle-go-button:hover{transform:translateY(-2px) rotate(-1deg)}
.battle-go-button:disabled{opacity:.55;cursor:default}
@media(max-width:760px){.story-stage.has-threat-card{padding-right:21px;min-height:0}.story-threat-glance{position:relative;right:auto;top:auto;width:min(190px,56vw);margin:18px auto 0}.recruit-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:460px){.battle-go-button{font-size:34px;min-width:100px;padding:12px 18px}}


/* === v6: battle freeze repair + Last Stand strip === */
.last-stand-grid .mission-card,
.mission-card[data-scenario="laststand"]{
  aspect-ratio:2172/724;
  min-height:0;
  max-height:none;
  background:#111;
  background-size:contain;
  background-repeat:no-repeat;
  background-position:center;
}
.battle-twist{
  max-height:72px;
  min-height:48px;
  padding:8px 10px;
  display:flex;
  align-items:center;
  justify-content:center;
}
@media(max-width:760px){
  .last-stand-grid .mission-card,
  .mission-card[data-scenario="laststand"]{aspect-ratio:2172/724;min-height:0;max-height:none;background-size:contain;background-repeat:no-repeat;background-position:center}
}
@media(max-width:520px){
  .last-stand-grid .mission-card,
  .mission-card[data-scenario="laststand"]{aspect-ratio:2172/724;min-height:0;max-height:none;background-size:contain;background-repeat:no-repeat;background-position:center}
}

/* === v10: Protect start-page UI fixes === */
.protect-topbar #protectMenuBtn{
  margin-left:0 !important;
  margin-right:auto !important;
  flex:0 0 auto !important;
  position:relative !important;
  z-index:3 !important;
}
.protect-topbar #protectResetBtn{
  margin-left:auto !important;
  margin-right:0 !important;
  flex:0 0 auto !important;
  position:relative !important;
  z-index:3 !important;
}

/* Adrift artwork already contains its own wording. */
.mission-card[data-scenario="adrift"]:after{
  display:none !important;
  content:none !important;
}

/* Preserve the actual Last Stand artwork while fitting the full 3:1 image. */
.last-stand-grid .mission-card,
.mission-card[data-scenario="laststand"]{
  aspect-ratio:2172/724 !important;
  min-height:0 !important;
  max-height:none !important;
  background-color:#111 !important;
  background-image:url('../assets/protect/mission_cards/last-stand.png') !important;
  background-size:contain !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
}


/* === Protect Yourself v17: comic-first story flow === */
/* Lose the repeated system labels. */
.survival-header .eyebrow,.protection-heading .eyebrow,.protect-battle-head .eyebrow{display:none!important}
.you-status{min-width:175px;padding:12px 14px}
.you-status b{font-size:30px;letter-spacing:.02em}
.protection-heading h2{margin-top:0}
.story-copy:empty,.protect-battle-head p:empty,.battle-result .eyebrow:empty{display:none!important}

/* Threat pages use the animal art as a huge, almost-black backdrop. */
.story-stage{position:relative;isolation:isolate}
.story-stage.has-threat-card{background:#100f0c!important;color:#fff2cf}
.story-stage.has-threat-card:before{content:"";position:absolute;inset:-8%;z-index:-2;background-image:var(--threat-bg);background-size:cover;background-position:center 30%;opacity:.20;filter:grayscale(.75) brightness(.42) contrast(1.22);transform:scale(1.16)}
.story-stage.has-threat-card:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(6,7,5,.92) 0%,rgba(8,8,6,.82) 48%,rgba(8,8,6,.55) 72%,rgba(8,8,6,.78) 100%)}
.story-stage.has-threat-card h1,.story-stage.has-threat-card .story-copy{color:#fff3d1;text-shadow:0 2px 0 #000}
.story-stage.has-threat-card .story-threat-card{box-shadow:0 0 0 3px rgba(255,224,75,.18),7px 8px 0 rgba(0,0,0,.6)}

/* No diary panel: keep the page on the story and the animals. */
.story-history-panel{display:none!important}
.simple-recruit-heading h2{font-size:clamp(31px,4.5vw,48px)!important}

/* Punchier fight screen. */
.protect-battle-head h2{margin:0;font-size:clamp(40px,5.5vw,64px)}
.battle-go-button{font-size:clamp(23px,3vw,34px);min-width:190px;padding:15px 18px}
.battle-result .eyebrow{display:none!important}
.battle-result p{max-width:700px}

/* Death is not a technical state. It is the end. */
.protect-page.protect-dead{background:radial-gradient(circle at 50% 20%,#7d180f 0,#3a100d 34%,#160806 70%,#080302 100%)}
#battleScreen.death-state .protect-battle-head{background:linear-gradient(110deg,#7c140e,#e2462f);color:#fff1d2}
#battleScreen.death-state .protect-live-battle{background:linear-gradient(145deg,#4f100c,#b1261a)}
#battleScreen.death-state .battle-result{background:#a91e16;color:#fff3dc;border-color:#120505;box-shadow:7px 8px 0 rgba(0,0,0,.55)}
#battleScreen.death-state .battle-result h2{font-size:clamp(64px,10vw,118px);color:#fff;text-shadow:5px 5px 0 #3c0705;margin:8px 0 12px}
#battleScreen.death-state .battle-result p{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(20px,2.7vw,31px);line-height:1.05;text-transform:uppercase}
#battleScreen.death-state .story-action{background:#111;color:#ffe04b;border-color:#111}

@media(max-width:760px){
  .you-status{min-width:145px}.you-status b{font-size:24px}
  .story-stage.has-threat-card:before{background-position:center top;opacity:.16}
  .story-stage.has-threat-card:after{background:linear-gradient(180deg,rgba(7,7,5,.83),rgba(7,7,5,.94))}
  .battle-go-button{min-width:170px}
}

#battleScreen.resolved .protect-battle-head{display:none!important}

.story-stage:not(.has-threat-card){min-height:250px;display:flex;flex-direction:column;justify-content:center}
.story-stage:not(.has-threat-card) .story-actions{margin-top:20px}


/* === Protect Yourself v18: stronger visual threat + death punch === */
.survival-header #storyCondition:empty{display:none!important}

.story-stage.has-threat-card{overflow:hidden}
.story-stage.has-threat-card:before{
  z-index:0!important;
  inset:-18%!important;
  opacity:.30!important;
  filter:grayscale(.55) brightness(.34) contrast(1.28)!important;
  transform:scale(1.34)!important;
  background-position:center 22%!important;
}
.story-stage.has-threat-card:after{
  z-index:1!important;
  background:linear-gradient(90deg,rgba(6,7,5,.94) 0%,rgba(8,8,6,.78) 46%,rgba(8,8,6,.38) 72%,rgba(8,8,6,.72) 100%)!important;
}
.story-stage.has-threat-card > *{position:relative;z-index:2}
.story-stage.has-threat-card .story-threat-glance{z-index:3}

.story-stage.has-scene-art{background:#100f0c!important;color:#fff2cf;overflow:hidden}
.story-stage.has-scene-art:before{content:"";position:absolute;inset:0;z-index:0;background-image:var(--scene-bg);background-size:cover;background-repeat:no-repeat;background-position:center;filter:brightness(.48) contrast(1.08) saturate(.95)}
.story-stage.has-scene-art:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(7,7,5,.82) 0%,rgba(7,7,5,.58) 36%,rgba(7,7,5,.38) 64%,rgba(7,7,5,.62) 100%)}
.story-stage.has-scene-art > *{position:relative;z-index:2}
.story-stage.has-scene-art h1,.story-stage.has-scene-art .story-copy{color:#fff3d1;text-shadow:0 2px 0 rgba(0,0,0,.72)}
.story-stage.has-scene-art .story-action{box-shadow:5px 6px 0 rgba(0,0,0,.38)}
.story-stage.has-scene-art .story-copy{max-width:760px;font-size:clamp(17px,1.8vw,22px);line-height:1.35}
.story-stage.has-scene-art h1{max-width:900px}

.story-stage:not(.has-threat-card):not(.has-scene-art) .story-copy{max-width:760px;font-size:clamp(17px,1.8vw,22px);line-height:1.35}
.story-stage:not(.has-threat-card):not(.has-scene-art) h1{max-width:900px}

.protect-death-overlay{
  position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:24px;
  background:radial-gradient(circle at 50% 42%,rgba(235,55,34,.98) 0%,rgba(157,22,15,.98) 42%,rgba(54,6,5,.995) 100%);
  opacity:0;transform:scale(1.05);transition:opacity .16s ease,transform .16s ease;
}
.protect-death-overlay.hidden{display:none!important}
.protect-death-overlay.show{opacity:1;transform:scale(1)}
.protect-death-overlay:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle,rgba(255,238,190,.14) 1.2px,transparent 1.4px) 0 0/9px 9px,linear-gradient(135deg,transparent 0 43%,rgba(0,0,0,.12) 43% 46%,transparent 46% 100%);mix-blend-mode:overlay}
.protect-death-card{position:relative;width:min(1000px,94vw);text-align:center;color:#fff4d8;padding:clamp(28px,5vw,64px) 22px;border:7px solid #100403;border-radius:18px;background:linear-gradient(145deg,#d82c1d,#8f110d);box-shadow:14px 16px 0 rgba(0,0,0,.46);transform:rotate(-.6deg)}
.protect-death-kicker{font-family:Impact,'Arial Black',sans-serif;letter-spacing:.12em;font-size:clamp(18px,2.1vw,26px);color:#ffe04b}
.protect-death-card h2{margin:8px 0 12px;font-family:Impact,'Arial Black',sans-serif;font-size:clamp(92px,16vw,220px);line-height:.78;color:#fff;text-shadow:8px 9px 0 #4a0504;letter-spacing:-.02em}
.protect-death-card p{margin:0 auto 24px;max-width:760px;font-family:Impact,'Arial Black',sans-serif;font-size:clamp(24px,3.2vw,44px);line-height:1;text-transform:uppercase}
.protect-death-button{appearance:none;border:5px solid #111;border-radius:13px;background:#ffe04b;color:#111;box-shadow:7px 8px 0 rgba(0,0,0,.38);padding:14px 24px;font-family:Impact,'Arial Black',sans-serif;font-size:clamp(20px,2.4vw,30px);cursor:pointer}
#battleScreen.death-state .battle-result h2{font-size:clamp(44px,6vw,68px)!important}
#battleScreen.death-state .battle-result p{font-size:clamp(18px,2vw,24px)!important}
@media(max-width:760px){
  .story-stage.has-threat-card:before{inset:-28%!important;transform:scale(1.45)!important;opacity:.25!important;background-position:center 18%!important}
  .story-stage.has-threat-card:after{background:linear-gradient(180deg,rgba(7,7,5,.66),rgba(7,7,5,.93))!important}
  .story-stage.has-scene-art:after{background:linear-gradient(180deg,rgba(7,7,5,.56),rgba(7,7,5,.82))}
  .story-stage.has-scene-art:before{background-position:center}
  .protect-death-card h2{font-size:clamp(76px,23vw,150px)}
  .protect-win-card h2{font-size:clamp(76px,23vw,150px)}
}


/* v19: region-locked protectors + death breakdown */
.recruit-card{cursor:pointer}
.recruit-card:focus-visible{outline:4px solid #ffe04b;outline-offset:4px}
#battleScreen.death-state .protect-death-card h2{margin-top:0}

.protect-win-overlay{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(circle at 50% 42%,rgba(255,220,81,.98) 0%,rgba(226,159,32,.985) 42%,rgba(120,78,8,.995) 100%);opacity:0;transform:scale(1.05);transition:opacity .16s ease,transform .16s ease}.protect-win-overlay.hidden{display:none!important}.protect-win-overlay.show{opacity:1;transform:scale(1)}.protect-win-overlay:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle,rgba(255,245,191,.18) 1.2px,transparent 1.4px) 0 0/9px 9px,linear-gradient(135deg,transparent 0 43%,rgba(0,0,0,.10) 43% 46%,transparent 46% 100%);mix-blend-mode:overlay}.protect-win-card{position:relative;width:min(1000px,94vw);text-align:center;color:#111;padding:clamp(28px,5vw,64px) 22px;border:7px solid #100403;border-radius:18px;background:linear-gradient(145deg,#f7c725,#dd9c12);box-shadow:14px 16px 0 rgba(0,0,0,.34);transform:rotate(-.6deg)}.protect-win-kicker{display:inline-block;background:#111;color:#ffe04b;border:4px solid #111;padding:8px 13px;font-family:Impact,'Arial Black',sans-serif;font-size:clamp(24px,3vw,34px);transform:rotate(-1deg)}.protect-win-card h2{margin:14px 0 12px;font-family:Impact,'Arial Black',sans-serif;font-size:clamp(92px,16vw,220px);line-height:.78;color:#fff7da;text-shadow:8px 9px 0 #613f05;letter-spacing:-.02em}.protect-win-card p{margin:0 auto 24px;max-width:760px;font-family:Impact,'Arial Black',sans-serif;font-size:clamp(24px,3.2vw,44px);line-height:1;text-transform:uppercase;color:#111}.protect-win-button{appearance:none;border:5px solid #111;border-radius:13px;background:#111;color:#ffe04b;box-shadow:7px 8px 0 rgba(0,0,0,.25);padding:14px 24px;font-family:Impact,'Arial Black',sans-serif;font-size:clamp(20px,2.4vw,30px);cursor:pointer}


/* === v24: reliable threat artwork, centred threat card, live day/night, cleaner win === */
.story-stage.has-art-backdrop{position:relative;isolation:isolate;background:#100f0c!important;color:#fff2cf;overflow:hidden}
.story-stage.has-art-backdrop:before{display:none!important}
.story-art-backdrop{position:absolute!important;inset:0!important;z-index:0!important;display:block;pointer-events:none;background-repeat:no-repeat;background-position:center;background-size:cover;opacity:1;overflow:hidden}
.story-art-backdrop.hidden{display:none!important}
.story-art-backdrop:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,7,5,.78) 0%,rgba(7,7,5,.56) 42%,rgba(7,7,5,.30) 72%,rgba(7,7,5,.55) 100%)}
.story-stage.threat-art .story-art-backdrop{inset:-14%!important;transform:scale(1.18);background-position:center 25%;filter:grayscale(.42) brightness(.66) contrast(1.18) saturate(.9)}
.story-stage.scene-art .story-art-backdrop{filter:brightness(.64) contrast(1.06) saturate(.95)}
.story-stage.has-art-backdrop > :not(.story-art-backdrop){position:relative;z-index:2}
.story-stage.has-art-backdrop h1,.story-stage.has-art-backdrop .story-copy{color:#fff3d1;text-shadow:0 2px 0 #000}
.story-stage.has-threat-card{padding-right:270px!important;min-height:430px!important}
.story-stage.has-threat-card .story-extra{position:static!important;margin-top:0!important}
.story-stage.has-threat-card .story-threat-glance{position:absolute!important;right:34px!important;top:50%!important;width:190px!important;margin:0!important;transform:translateY(-50%)!important;z-index:4!important}
.story-stage.has-threat-card .story-copy{max-width:720px}
.protect-win-kicker{display:none!important}
.protect-win-card h2{margin-top:0!important}

@media(max-width:760px){
  .story-stage.has-threat-card{padding-right:21px!important;min-height:0!important}
  .story-stage.has-threat-card .story-extra{position:relative!important;margin-top:18px!important}
  .story-stage.has-threat-card .story-threat-glance{position:relative!important;right:auto!important;top:auto!important;width:min(190px,56vw)!important;margin:18px auto 0!important;transform:none!important}
  .story-stage.threat-art .story-art-backdrop{inset:-10%!important;transform:scale(1.12);background-position:center 18%}
  .story-art-backdrop:after{background:linear-gradient(180deg,rgba(7,7,5,.48),rgba(7,7,5,.82))}
}

/* v24 visibility correction: the real artwork layer replaces all legacy pseudo artwork. */
.story-stage.has-art-backdrop:after{display:none!important}
.story-stage.threat-art .story-art-backdrop{filter:grayscale(.32) brightness(.74) contrast(1.12) saturate(.96)!important}
.story-stage.scene-art .story-art-backdrop{filter:brightness(.72) contrast(1.04) saturate(.98)!important}
.story-art-backdrop:after{background:linear-gradient(90deg,rgba(7,7,5,.66) 0%,rgba(7,7,5,.46) 42%,rgba(7,7,5,.22) 72%,rgba(7,7,5,.42) 100%)!important}
@media(max-width:760px){.story-art-backdrop:after{background:linear-gradient(180deg,rgba(7,7,5,.42),rgba(7,7,5,.72))!important}}


/* === Timed Survival: 24-hour rescue clock + protector countdown === */
.journey-phase.timed{background:#5a210f;color:#ffe16a;min-width:148px}
.journey-phase.timed.day:before{content:"☀"}
.journey-phase.timed.night:before{content:"☾"}
.timed-recruitment .simple-recruit-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}
.recruit-countdown{flex:0 0 auto;display:grid;grid-template-columns:auto auto;align-items:center;gap:8px;border:4px solid #111;border-radius:12px;background:#111;color:#ffe04b;padding:7px 10px;box-shadow:4px 5px 0 rgba(0,0,0,.28);transform:rotate(1deg)}
.recruit-countdown.hidden{display:none!important}
.recruit-countdown small{font-family:Impact,'Arial Black',sans-serif;font-size:12px;letter-spacing:.08em;color:#fff1ba}
.recruit-countdown b{font-family:Impact,'Arial Black',sans-serif;font-size:38px;line-height:.8;min-width:30px;text-align:center}
.recruit-countdown.urgent{background:#b92518;color:#fff;animation:recruitPanic .55s ease-in-out infinite alternate}
.recruitment-panel.timed-out{background:linear-gradient(135deg,#f4b53a,#df5132)}
.recruitment-panel.timed-out #recruitTitle{color:#111}
.recruit-card.disabled{pointer-events:none;filter:grayscale(.85) brightness(.62)}
@keyframes recruitPanic{from{transform:rotate(1deg) scale(1)}to{transform:rotate(-1deg) scale(1.06)}}
@media(max-width:760px){
  .timed-recruitment .simple-recruit-heading{align-items:flex-start}
  .recruit-countdown{grid-template-columns:1fr;text-align:center;gap:2px;padding:7px 9px}
  .recruit-countdown b{font-size:34px}
  .journey-phase.timed{min-width:0}
}

.battle-rescue-clock{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin:0 auto 9px;border:4px solid #111;border-radius:999px;background:#5a210f;color:#ffe16a;padding:7px 12px;font-family:Impact,'Arial Black',sans-serif;font-size:18px;letter-spacing:.05em;box-shadow:3px 4px 0 rgba(0,0,0,.22)}
.battle-rescue-clock:before{content:"☀";font-size:16px}.battle-rescue-clock.night:before{content:"☾"}.battle-rescue-clock.hidden{display:none!important}
