/* A focused, readable branching adventure. */
body.fun-page:has(.survival){background:#090909;color:#fff}
body.fun-page:has(.survival) .fun-shell{width:min(100% - 36px,1360px);max-width:none;padding:26px 0 100px}
.survival{font-family:Atkinson Hyperlegible,Arial,sans-serif;color:#fff}
.survival-back{display:inline-flex;align-items:center;padding:12px 0;margin-bottom:28px;color:#fff;font-size:15px;font-weight:800;text-decoration:none;border-bottom:2px solid #f0182b}
.survival-back:hover,.survival-back:focus-visible{color:#ffcd32;outline-offset:5px}
.survival-intro{min-height:min(75vh,700px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(28px,7vw,95px);border:1px solid #67202a;border-top:8px solid #e91329;background:radial-gradient(ellipse at 85% 15%,#6e0c1e 0%,#250810 32%,#080808 74%)}
.survival-tag{color:#ffcf36;font-size:13px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.survival-intro h1{font-size:clamp(3.2rem,8.5vw,8.8rem);line-height:.92;letter-spacing:-.07em;font-weight:950;max-width:1100px;margin:20px 0 30px}
.survival-intro h1 em{font-style:normal;color:#f0182b}
.survival-intro>p:not(.survival-tag):not(.survival-hint){font-size:clamp(1.15rem,2vw,1.6rem);line-height:1.5;max-width:690px}
.survival-intro-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:36px}
.survival-primary,.survival-secondary{cursor:pointer;border:2px solid #f0182b;border-radius:0;padding:18px 28px;font:900 17px/1.3 Atkinson Hyperlegible,Arial,sans-serif}
.survival-primary{background:#ed152b;color:#fff}
.survival-secondary{background:#101010;color:#fff}
.survival-primary:hover,.survival-primary:focus-visible,.survival-secondary:hover,.survival-secondary:focus-visible{background:#fff;color:#111;outline:3px solid #ffcf36;outline-offset:3px}
.survival-hint{font-size:14px;color:#ccc;margin-top:30px}
.survival-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:20px;align-items:start}
.survival-main{background:#141414;border-top:7px solid #e91329;padding:clamp(24px,5vw,70px);min-height:610px}
.survival-main h1{font-size:clamp(2.8rem,5vw,5.5rem);line-height:1.03;letter-spacing:-.06em;margin:26px 0}
.survival-progress{height:6px;background:#3c3031;margin:26px 0 36px}
.survival-progress i{display:block;height:100%;background:#ffcf36}
.survival-story{font-size:clamp(1.15rem,1.7vw,1.4rem);line-height:1.7;max-width:65ch;color:#eee}
.survival-question{font-size:clamp(1.4rem,2.5vw,2rem);margin:48px 0 18px}
.survival-choices{display:grid;gap:12px}
.survival-choice{width:100%;display:grid;grid-template-columns:44px minmax(0,1fr) 25px;align-items:center;gap:16px;padding:20px;text-align:left;border:1px solid #605153;background:#222;color:#fff;cursor:pointer;font-family:inherit}
.survival-choice strong{display:block;font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.35}
.survival-choice small{display:block;color:#ccc;font-size:14px;margin-top:7px}
.survival-choice-number{font-size:20px;font-weight:900;color:#ffcf36}
.survival-choice:hover,.survival-choice:focus-visible{background:#65101f;border-color:#ffcf36;outline:2px solid #ffcf36;outline-offset:2px}
.survival-stats{position:sticky;top:20px;padding:24px;background:#252525;color:#f5f5f5;border:1px solid #494949;border-top:5px solid #e91329}
.survival-stats-title{font-size:22px;font-weight:950;border-bottom:5px solid #e91329;padding-bottom:16px;margin-bottom:12px}
.survival-stats>div:not(.survival-stats-title):not(.survival-stats-footer){padding:13px 0;border-bottom:1px solid #505050}
.survival-stats span{display:block;color:#c4c4c4;font-size:13px;margin-bottom:6px}
.survival-stats strong{display:block;font-size:19px;overflow-wrap:anywhere}
.survival-meter{height:7px;background:#ddd;margin-top:9px}
.survival-meter i{display:block;background:#d9002b;height:100%}
.survival-stats-footer{font-size:13px;line-height:1.5;color:#bdbdbd;margin-top:20px}
.survival-consequence{min-height:60vh;padding:clamp(30px,7vw,90px);background:linear-gradient(145deg,#4d0b18,#0b0b0b);border-top:7px solid #f0182b;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.survival-consequence h2{font-size:clamp(2.5rem,5vw,5rem);line-height:1.05;letter-spacing:-.05em;margin:20px 0}
.survival-consequence>p:not(.survival-tag){font-size:clamp(1.1rem,2vw,1.4rem);line-height:1.6;max-width:55ch}
.survival-consequence button{margin-top:24px}
.survival-recap{margin:40px 0}
.survival-recap h2{font-size:1.5rem}
.survival-recap li{margin:10px 0;line-height:1.5}
@media(max-width:900px){.survival-layout{grid-template-columns:1fr}.survival-stats{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.survival-stats-title,.survival-stats-footer{grid-column:1/-1}.survival-main{min-height:auto}}
@media(max-width:520px){.survival-intro{min-height:550px}.survival-choice{grid-template-columns:28px minmax(0,1fr) 15px;gap:9px;padding:17px 12px}.survival-stats{padding:20px}.survival-main{padding:24px 18px}}
@media(prefers-reduced-motion:no-preference){.survival-choice,.survival-primary,.survival-secondary{transition:background .18s,color .18s,border-color .18s}}
