.game-page{max-width:1180px;margin:0 auto;padding:58px 0 86px}.game-intro{display:grid;grid-template-columns:1.15fr .85fr;gap:30px;align-items:end;padding-bottom:42px}.game-intro h1{font:600 clamp(66px,10vw,150px)/.82 'Playfair Display';letter-spacing:-.08em;margin:0}.game-intro h1 em{color:#ff806b;font-weight:500}.game-intro>p:not(.eyebrow){font-size:19px;line-height:1.5;color:#c5d4db;max-width:380px;margin:0 0 9px}.game-meta{grid-column:1/-1;display:flex;gap:10px;flex-wrap:wrap;border-top:1px solid #34566d;padding-top:18px}.game-meta span{font:10px 'DM Mono';text-transform:uppercase;color:#8fa8b6;border-right:1px solid #34566d;padding-right:16px}.game-meta strong{font:17px 'DM Sans';color:#f5f0e8;margin-right:5px}.game-card{background:#172f45;border-radius:16px;padding:28px;max-width:820px;min-height:510px;box-sizing:border-box;position:relative;overflow:hidden}.game-card:after{content:'?';position:absolute;right:24px;bottom:-64px;color:#29445a;font:260px 'Playfair Display';line-height:1;pointer-events:none}.game-topline{display:flex;justify-content:space-between;color:#8ee3d4;font:11px 'DM Mono';text-transform:uppercase;letter-spacing:.08em}.clue-stack{display:grid;gap:10px;margin:52px 0 28px;position:relative;z-index:1}.clue{border-left:3px solid #ff806b;background:#102235;padding:14px 16px;color:#f5f0e8;font:500 22px/1.15 'Playfair Display';animation:clue-in .35s ease both}.clue small{display:block;color:#8fa8b6;font:10px 'DM Mono';text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px}.choices{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;position:relative;z-index:1}.choice,.game-next,.share-button{border:1px solid #46657a;background:transparent;color:#f5f0e8;border-radius:10px;padding:16px;text-align:left;font:13px 'DM Sans';cursor:pointer;transition:.18s ease}.choice:hover,.choice:focus-visible{background:#8ee3d4;color:#102235;border-color:#8ee3d4;transform:translateY(-2px)}.choice.correct{background:#8ee3d4;color:#102235;border-color:#8ee3d4}.choice.wrong{background:#ff806b;color:#172b40;border-color:#ff806b}.choice:disabled{cursor:default}.game-feedback{min-height:26px;padding-top:18px;position:relative;z-index:1;font:13px 'DM Mono';color:#c5d4db}.game-feedback strong{color:#8ee3d4}.game-next{display:block;margin-top:10px;background:#ff806b;color:#172b40;border-color:#ff806b;position:relative;z-index:1}.game-next:hover,.share-button:hover{background:#ff9a87;border-color:#ff9a87}.share-strip{display:flex;justify-content:space-between;gap:28px;align-items:center;border-top:1px solid #34566d;border-bottom:1px solid #34566d;padding:26px 0;margin-top:48px;max-width:820px}.share-strip h2{font:500 35px 'Playfair Display';margin:0 0 7px}.share-strip p:not(.eyebrow){max-width:470px;color:#8fa8b6;line-height:1.45;margin:0}.share-button{background:#8ee3d4;color:#102235;border-color:#8ee3d4;white-space:nowrap}.game-footnote{color:#8fa8b6;font:11px 'DM Mono';margin-top:24px}@keyframes clue-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(max-width:700px){.game-page{padding:40px 0 55px}.game-intro{grid-template-columns:1fr;gap:22px}.game-intro h1{font-size:82px}.game-meta{grid-column:auto}.game-card{padding:18px;min-height:560px}.clue-stack{margin-top:42px}.clue{font-size:19px}.choices{grid-template-columns:1fr}.share-strip{display:block}.share-button{margin-top:20px;width:100%;text-align:center}}
.hint-button{border:1px solid #8ee3d4;background:transparent;color:#8ee3d4;border-radius:10px;padding:11px 14px;font:11px 'DM Mono';cursor:pointer;margin-bottom:14px}.hint-button:hover{background:#8ee3d4;color:#102235}
.guess-box{position:relative;z-index:2}.guess-box label{display:block;color:#8fa8b6;font:10px 'DM Mono';text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.guess-row{display:flex;gap:8px}.guess-row input{flex:1;min-width:0;border:1px solid #46657a;background:#102235;color:#f5f0e8;border-radius:10px;padding:15px;font:16px 'DM Sans';outline:none}.guess-row input:focus{border-color:#8ee3d4;box-shadow:0 0 0 2px #8ee3d433}.submit-guess{border:1px solid #ff806b;background:#ff806b;color:#172b40;border-radius:10px;padding:0 18px;font:11px 'DM Mono';cursor:pointer}.submit-guess:hover{background:#ff9a87}.suggestions{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.suggestion{border:1px solid #46657a;background:#173b51;color:#c5d4db;border-radius:18px;padding:7px 10px;font:11px 'DM Sans';cursor:pointer}.suggestion:hover{border-color:#8ee3d4;color:#8ee3d4}.wrong-copy{color:#ff806b}
.locked-review{border:1px solid #34566d;color:#8fa8b6;padding:16px;border-radius:10px;font:12px 'DM Mono'}
.snapshot-game{max-width:1180px;margin:0 auto;padding:58px 0 86px}.snapshot-head{padding:42px 0;max-width:600px}.snapshot-head h1{font:600 clamp(66px,10vw,140px)/.82 'Playfair Display';letter-spacing:-.08em;margin:0}.snapshot-head h1 em{color:#ff806b;font-weight:500}.snapshot-head>p:not(.eyebrow){font-size:19px;line-height:1.5;color:#8fa8b6;max-width:400px}.snapshot-card{max-width:900px;background:#172f45;border-radius:16px;padding:24px;overflow:hidden}.snapshot-meta{display:flex;justify-content:space-between;color:#8ee3d4;font:11px 'DM Mono';text-transform:uppercase}.snapshot-stage{height:280px;margin:24px 0 15px;background:#102235;border:1px solid #34566d;border-radius:12px;position:relative;overflow:hidden}.camera-frame{position:absolute;z-index:2;inset:14px;border:1px solid #ff806b;color:#ff806b;padding:8px;width:max-content;height:max-content;font:10px 'DM Mono';pointer-events:none}.snapshot-lane{position:absolute;inset:0}.passing-object{position:absolute;top:50%;left:100%;transform:translateY(-50%);width:78px;height:78px;border:0;background:#8ee3d4;border-radius:50%;font-size:38px;cursor:pointer;animation:pass-by linear forwards;z-index:1}.passing-object:hover{background:#ff806b;transform:translateY(-50%) scale(1.12)}@keyframes pass-by{from{left:100%}to{left:-90px}}.snapshot-controls{display:flex;align-items:center;justify-content:space-between}.snapshot-start{border:1px solid #ff806b;background:#ff806b;color:#172b40;border-radius:10px;padding:13px 16px;font:11px 'DM Mono';cursor:pointer}.snapshot-start:hover{background:#ff9a87}.snapshot-controls span{color:#8ee3d4;font:18px 'DM Mono'}@media(max-width:700px){.snapshot-game{padding:40px 0 55px}.snapshot-card{padding:18px}.snapshot-stage{height:230px}}
.games-hub,.character-game{max-width:1180px;margin:0 auto;padding:58px 0 86px}.games-hub h1,.character-head h1{font:600 clamp(62px,9vw,132px)/.84 'Playfair Display';letter-spacing:-.08em;margin:0}.games-hub h1 em,.character-head h1 em{color:#ff806b;font-weight:500}.hub-intro,.character-head>p:not(.eyebrow){font-size:19px;line-height:1.5;color:#8fa8b6;max-width:440px;margin:24px 0 42px}.game-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:900px}.game-tile{display:block;min-height:300px;padding:28px;background:#172f45;border-radius:16px;color:#f5f0e8;text-decoration:none;border:1px solid #29445a;transition:transform .2s ease,border-color .2s ease}.game-tile:hover{transform:translateY(-4px);border-color:#8ee3d4}.game-tile h2{font:500 42px 'Playfair Display';margin:24px 0 10px}.game-tile p{color:#8fa8b6;line-height:1.45;max-width:320px}.game-tile strong{display:inline-block;margin-top:20px;color:#8ee3d4;font:11px 'DM Mono'}.tile-icon{display:block;font-size:30px}.character-head{max-width:620px;padding:42px 0}.character-card{max-width:720px;background:#172f45;border-radius:16px;padding:24px;overflow:hidden}.character-meta{display:flex;justify-content:space-between;color:#8ee3d4;font:11px 'DM Mono';text-transform:uppercase}.character-photo{height:390px;background:#102235;margin:24px 0 12px;overflow:hidden;position:relative;display:grid;place-items:center}.character-photo img{width:100%;height:100%;object-fit:cover;transition:filter .45s ease,transform .45s ease}.photo-cover{position:absolute;inset:0;background:#102235aa;pointer-events:none}.reveal-progress{display:flex;gap:7px;margin:12px 0 17px}.reveal-dot{width:8px;height:8px;border-radius:50%;background:#46657a}.reveal-dot.revealed{background:#8ee3d4}.reveal-character,.character-film-link{display:inline-block;border:1px solid #8ee3d4;background:transparent;color:#8ee3d4;border-radius:10px;padding:12px 14px;font:11px 'DM Mono';cursor:pointer;text-decoration:none}.reveal-character:hover{background:#8ee3d4;color:#102235}.character-guess{margin-top:25px}.character-guess label{display:block;color:#8fa8b6;font:10px 'DM Mono';text-transform:uppercase;margin-bottom:8px}.character-feedback small{display:block;color:#8fa8b6;margin-top:8px}.character-film-link{margin-top:14px}.game-feedback small{display:block;color:#8fa8b6;margin-top:8px}@media(max-width:700px){.game-directory{grid-template-columns:1fr}.games-hub,.character-game{padding:40px 0 55px}.game-tile h2{font-size:35px}.character-photo{height:300px}.character-card{padding:18px}}
.game-archive{max-width:820px;border-top:1px solid #34566d;margin-top:58px;padding-top:26px}.game-archive h2{font:500 42px 'Playfair Display';margin:0 0 7px}.game-archive>p:not(.eyebrow){color:#8fa8b6;line-height:1.45}.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px}.archive-day{border:1px solid #34566d;background:#102235;color:#f5f0e8;border-radius:10px;padding:13px;text-align:left;cursor:pointer}.archive-day:hover{border-color:#8ee3d4;background:#173b51}.archive-day span{display:block;color:#8fa8b6;font:10px 'DM Mono';margin-bottom:7px}.archive-day strong{display:block;font:16px/1.1 'Playfair Display'}
.snapshot-stage{background:radial-gradient(circle at 50% 50%,#294d61 0,#102235 45%,#091521 100%);background-size:100% 100%}.snapshot-stage:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 7px,#8ee3d40b 8px 9px);animation:scan-lines 1.2s linear infinite;pointer-events:none}.snapshot-stage:after{content:'';position:absolute;top:0;bottom:0;left:50%;width:1px;background:#8ee3d422;box-shadow:0 0 40px 18px #8ee3d40a;pointer-events:none}.camera-frame{inset:50% auto auto 50%;width:170px;height:170px;transform:translate(-50%,-50%);box-sizing:border-box;border:2px solid #ff806b;padding:10px;color:#ff806b;box-shadow:0 0 0 999px #07152222,0 0 24px #ff806b44;animation:frame-breathe 2s ease-in-out infinite}.camera-frame:before,.camera-frame:after{content:'';position:absolute;width:18px;height:18px;border-color:#8ee3d4;border-style:solid}.camera-frame:before{left:-2px;top:-2px;border-width:3px 0 0 3px}.camera-frame:after{right:-2px;bottom:-2px;border-width:0 3px 3px 0}.passing-object{display:grid;place-items:center;pointer-events:none;border:2px solid #8ee3d4;background:#173b51;box-shadow:0 5px 14px #0007;font-size:34px}.snapshot-stage.flash:after{animation:shutter-flash .32s ease-out}.snapshot-stage.flash .camera-frame{animation:frame-snap .32s ease-out}.snapshot-controls:after{content:'SPACE = SNAP';color:#8fa8b6;font:10px 'DM Mono';margin-left:auto;margin-right:14px}@keyframes scan-lines{from{transform:translateY(-9px)}to{transform:translateY(9px)}}@keyframes frame-breathe{0%,100%{box-shadow:0 0 0 999px #07152222,0 0 24px #ff806b44}50%{box-shadow:0 0 0 999px #07152222,0 0 34px #ff806b77}}@keyframes shutter-flash{50%{background:#f5f0e8aa}}@keyframes frame-snap{50%{transform:translate(-50%,-50%) scale(.96);border-color:#8ee3d4}}@media(prefers-reduced-motion:reduce){.snapshot-stage:before,.camera-frame{animation:none}}
.snapshot-stage{background-color:#1b2d37;background-image:linear-gradient(105deg,transparent 0 8%,#f5f0e81c 8% 16%,transparent 16% 25%,#f5f0e81c 25% 33%,transparent 33% 42%,#f5f0e81c 42% 50%,transparent 50% 59%,#f5f0e81c 59% 67%,transparent 67% 76%,#f5f0e81c 76% 84%,transparent 84%);background-size:100% 100%;}.passing-object{width:96px;height:96px;border-radius:12px;background-color:#102235;background-size:400% 300%;background-repeat:no-repeat;border:1px solid #8ee3d4;box-shadow:0 5px 18px #0009}.snapshot-controls span{min-width:44px;text-align:right}.snapshot-controls:after{content:'SPACE = SNAP';}
.snapshot-stage{background-color:#1b2d37!important;background-image:linear-gradient(105deg,transparent 0 8%,#f5f0e81c 8% 16%,transparent 16% 25%,#f5f0e81c 25% 33%,transparent 33% 42%,#f5f0e81c 42% 50%,transparent 50% 59%,#f5f0e81c 59% 67%,transparent 67% 76%,#f5f0e81c 76% 84%,transparent 84%)!important}.passing-object{width:96px!important;height:96px!important;border-radius:12px!important;background-color:#102235!important;background-size:400% 300%!important;background-repeat:no-repeat!important;border:1px solid #8ee3d4!important;box-shadow:0 5px 18px #0009!important}.snapshot-controls span{min-width:44px;text-align:right}.snapshot-controls:after{content:'SPACE = SNAP'}
.topbar{background:#102235;border-bottom-color:#29445a}.brand{min-width:auto;background:transparent;color:#f5f0e8;font:600 24px 'Playfair Display';letter-spacing:-.06em;padding:0}.brand i{color:#8ee3d4;font-weight:500}
.snapshot-snap{display:none;border:1px solid #8ee3d4;background:#8ee3d4;color:#102235;border-radius:10px;padding:13px 16px;font:700 12px 'DM Mono';cursor:pointer}.snapshot-snap:hover{background:#b3f0e5}.snapshot-stop{border:1px solid #ff806b;background:transparent;color:#ffb0a4;border-radius:10px;padding:13px 16px;font:11px 'DM Mono';cursor:pointer}.snapshot-stop:hover{background:#ff806b;color:#172b40}@media(max-width:700px){.snapshot-snap{display:inline-block}.snapshot-controls{justify-content:flex-start;gap:8px}.snapshot-controls span{margin-left:auto}}
