:root{--mint:#00b4c9;--ink:#10202a;--paper:#f7f1e6;--orange:#f08a58;--navy:#122b46}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans KR",sans-serif}.skip{position:fixed;top:-60px;left:20px;z-index:20;background:#fff;padding:12px}.skip:focus{top:10px}.site-header{height:80px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 4vw;border-bottom:1px solid #19262c33;background:#fbf7ef}.brand img{display:block;width:112px}.newsis-logo img{display:block;width:105px}.visual-newsis{justify-self:end;color:var(--ink);font-size:12px;font-weight:800;letter-spacing:.12em;text-decoration:none}.intro{min-height:410px;display:grid;grid-template-columns:1fr minmax(240px,390px);align-items:end;position:relative;overflow:hidden;padding:70px max(5vw,40px) 42px;background:linear-gradient(135deg,#f7f1e6 0 62%,#bcecf0 62%)}.intro>div{align-self:center}.intro p,.game-head p{color:#b74532;font-size:11px;font-weight:800;letter-spacing:.18em}.intro h1{font-family:"Black Han Sans",sans-serif;font-size:clamp(76px,11vw,180px);font-weight:400;line-height:.85;margin:18px 0 28px;letter-spacing:-.06em}.intro span{font-family:"Noto Serif KR",serif;font-size:clamp(18px,2vw,28px)}.intro img{width:100%;max-height:330px;object-fit:contain;filter:drop-shadow(0 16px 10px #18304020)}.intro small{position:absolute;right:4vw;bottom:18px;font-size:10px;letter-spacing:.12em}.game-section{padding:90px max(5vw,40px)}.game-head{display:flex;justify-content:space-between;align-items:end;max-width:1180px;margin:0 auto 30px}.game-head h2{font-family:"Noto Serif KR",serif;font-size:clamp(34px,5vw,64px);line-height:1.15;margin:12px 0}.game-head dl{display:flex;gap:40px;margin:0}.game-head dl div{min-width:90px;border-top:2px solid var(--ink);padding-top:8px}.game-head dt{font-size:11px}.game-head dd{margin:4px 0;font-size:24px;font-weight:800}.game-stage{position:relative;max-width:1180px;height:min(55vw,560px);min-height:390px;margin:auto;overflow:hidden;outline:none;background:linear-gradient(#8edee7 0 57%,#f8dfae 57% 72%,#26323a 72%);border:8px solid var(--ink);box-shadow:12px 12px 0 var(--orange)}.skyline{position:absolute;inset:19% 0 28%;opacity:.22;background:linear-gradient(90deg,transparent 0 5%,var(--ink) 5% 12%,transparent 12% 15%,var(--ink) 15% 25%,transparent 25% 30%,var(--ink) 30% 35%,transparent 35% 45%,var(--ink) 45% 57%,transparent 57% 64%,var(--ink) 64% 72%,transparent 72% 79%,var(--ink) 79% 95%,transparent 95%)}.road{position:absolute;left:0;right:0;bottom:0;height:28%;background:repeating-linear-gradient(90deg,#26323a 0 110px,#31424a 110px 220px)}.road:after{content:"";position:absolute;top:48%;left:0;width:200%;border-top:5px dashed #f7f1e6;animation:road 1s linear infinite paused}.is-playing .road:after{animation-play-state:running}@keyframes road{to{transform:translateX(-220px)}}.runner{position:absolute;z-index:4;left:10%;bottom:19%;width:170px;height:190px;background:url('./assets/chungmuman-run.png') center bottom/contain no-repeat;transform-origin:center bottom}.runner.is-jumping{background-image:url('./assets/chungmuman-jump.png')}.runner.hit{animation:shake .35s}.runner.finish{background-image:url('./assets/chungmuman-idle.png')}@keyframes shake{25%{transform:translateX(-8px) rotate(-4deg)}75%{transform:translateX(8px) rotate(4deg)}}.object{position:absolute;z-index:3;bottom:20%;left:105%;will-change:transform}.object.obstacle{width:74px;height:70px;background:#f5e6c9;border:5px solid var(--ink);box-shadow:7px 7px 0 #b74635;display:grid;place-items:center;font-family:"Black Han Sans";font-size:22px;transform:rotate(-3deg)}.object.news{width:62px;height:76px;background:#fff;border:4px solid var(--ink);box-shadow:6px 6px 0 var(--mint);padding:8px;transform:rotate(5deg)}.object.news:before{content:"NEWS";font-weight:900;font-size:10px;color:var(--mint)}.object.news:after{content:"";display:block;margin-top:8px;border-top:12px solid var(--ink);border-bottom:5px double var(--ink);height:13px}.start-panel{position:absolute;inset:0;z-index:8;display:grid;place-content:center;text-align:center;background:#10202ad9;color:#fff}.start-panel p{font-family:"Noto Serif KR";font-size:18px}.start-panel button,.result a,.result button{border:0;background:var(--mint);color:#07171b;padding:16px 26px;font:800 15px "Noto Sans KR";cursor:pointer;text-decoration:none}.game-note{position:absolute;right:18px;top:16px;font-size:11px;font-weight:800;letter-spacing:.12em}.mobile-control{max-width:1180px;margin:18px auto;text-align:right}.mobile-control button{width:110px;height:54px;border:3px solid var(--ink);background:var(--orange);font-weight:900;box-shadow:5px 5px 0 var(--ink)}.result{max-width:1180px;margin:60px auto 0;display:grid;grid-template-columns:36% 1fr;background:#112c2a;color:#f7f1e6;align-items:center;padding:30px 6vw}.result[hidden]{display:none}.result img{width:100%}.result small{color:var(--mint);letter-spacing:.15em}.result h2{font:700 clamp(32px,5vw,64px)/1.2 "Noto Serif KR"}.result p{color:#d8d5ca}.result a{display:inline-block;margin-right:8px}.result button{background:transparent;color:#fff;border:1px solid #ffffff66}.other-games{display:grid;grid-template-columns:1fr 2fr;gap:6vw;background:#101712;color:#f7f1e6;padding:70px 5vw}.other-games h2{font:700 42px/1.2 "Noto Serif KR"}.other-games nav{display:grid;grid-template-columns:1fr 1fr}.other-games a{display:flex;gap:20px;padding:22px;color:inherit;text-decoration:none;border-bottom:1px solid #ffffff33}.other-games span{color:var(--mint)}footer{display:flex;justify-content:space-between;padding:22px 5vw;background:#080b0a;color:#aaa;font-size:11px}footer a{color:#fff;text-decoration:none}@media(max-width:720px){.site-header{height:64px;padding:0 18px}.brand img{width:82px}.newsis-logo img{width:82px}.visual-newsis{font-size:9px}.intro{min-height:360px;grid-template-columns:1.2fr 1fr;padding:55px 22px 32px}.intro h1{font-size:66px}.intro span{font-size:14px}.intro img{transform:scale(1.2)}.game-section{padding:60px 16px}.game-head{align-items:start}.game-head dl{gap:12px}.game-head dl div{min-width:58px}.game-head dd{font-size:18px}.game-stage{height:450px;min-height:0;border-width:5px;box-shadow:7px 7px 0 var(--orange)}.runner{width:125px;height:145px;left:4%;bottom:20%}.object{bottom:21%}.result{grid-template-columns:1fr;padding:20px}.result img{max-height:220px;object-fit:contain}.other-games{grid-template-columns:1fr}.other-games nav{grid-template-columns:1fr}footer{gap:15px;flex-wrap:wrap}}
.start-panel[hidden]{display:none}.game-stage{touch-action:none;user-select:none;-webkit-user-select:none}
.runner.is-sliding{width:230px;height:138px;background-image:url('./assets/chungmuman-slide.png');bottom:18%}
.deadline{--pressure:18%;position:absolute;z-index:2;left:calc(var(--pressure) - 22%);bottom:21%;width:88px;height:88px;border:5px solid var(--ink);border-radius:50%;background:#fff0d1;display:grid;place-items:center;transition:left .25s;filter:drop-shadow(6px 6px 0 #b74635)}
.deadline i,.deadline i:after{position:absolute;content:"";width:3px;height:25px;background:var(--ink);transform-origin:bottom;bottom:50%}.deadline i{transform:rotate(35deg)}.deadline i:after{height:18px;transform:rotate(115deg)}.deadline b{position:absolute;bottom:-26px;background:#b74635;color:#fff;padding:3px 9px;font-size:11px}.is-playing .deadline{animation:deadlineBob .42s ease-in-out infinite alternate}@keyframes deadlineBob{to{transform:translateY(-6px) rotate(2deg)}}
.object{transition:opacity .15s,filter .15s}.object.papers{width:88px;height:54px;background:repeating-linear-gradient(#f7f1e6 0 9px,#b9aa8e 10px 11px);border:4px solid var(--ink);box-shadow:6px 6px 0 #b74635;transform:rotate(-4deg)}.object.papers:after{content:"신문 뭉치";font-size:9px;font-weight:900;display:grid;place-items:center;height:100%}
.object.puddle{width:100px;height:28px;border:4px solid var(--ink);border-radius:50%;background:#9c633f;box-shadow:inset 0 0 0 7px #c98e5d}.object.puddle:after{content:"";position:absolute;right:8px;top:-32px;width:32px;height:30px;background:#fff;border:4px solid var(--ink);border-radius:4px 4px 12px 12px;transform:rotate(72deg)}
.object.lens{width:64px;height:64px;border:8px solid var(--ink);border-radius:50%;background:radial-gradient(circle at 35% 30%,#bfeef2 0 12%,#315a73 13% 38%,#0c1720 39%);box-shadow:5px 5px 0 var(--mint);animation:lensRoll .7s linear infinite}@keyframes lensRoll{to{rotate:-360deg}}
.object.breaking,.object.mic{bottom:49%;height:42px;border:4px solid var(--ink);display:grid;place-items:center;font-weight:900}.object.breaking{width:170px;background:#b74635;color:#fff;box-shadow:6px 6px 0 #f7dfac}.object.breaking:after{content:"속보 · BREAKING"}.object.mic{width:190px;background:var(--ink);color:#fff;transform-origin:right}.object.mic:before{content:"MIC";position:absolute;left:-18px;width:48px;height:30px;border-radius:50%;background:var(--mint);border:4px solid var(--ink);display:grid;place-items:center;font-size:9px}.object.mic:after{content:"";width:140px;border-top:6px solid #d8d2c5}
.object.coffee{width:52px;height:58px;border:4px solid var(--ink);border-radius:5px 5px 15px 15px;background:var(--mint);box-shadow:5px 5px 0 #fff}.object.coffee:before{content:"COFFEE";font-size:8px;font-weight:900;display:grid;place-items:center;height:100%}.object.coffee:after{content:"";position:absolute;width:20px;height:23px;border:4px solid var(--ink);border-left:0;border-radius:0 14px 14px 0;right:-20px;top:12px}.object.collected{opacity:0;filter:blur(5px);scale:1.35}.object.blocked{opacity:.25}.has-shield .runner{filter:drop-shadow(0 0 10px var(--mint)) drop-shadow(0 0 16px #fff)}
.mobile-control{display:flex;justify-content:flex-end;gap:12px}.mobile-control #slideButton{background:#f7dfac}
@media(max-width:720px){.runner.is-sliding{width:175px;height:110px;left:2%}.deadline{width:64px;height:64px}.object.breaking,.object.mic{bottom:45%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.road:after{animation:none!important}}

/* Rebuilt, event-driven runner */
.deadline{left:0;bottom:18%;width:150px;height:64%;border:0;border-right:8px solid var(--ink);border-radius:0;background:repeating-linear-gradient(0deg,#b8a487 0 22px,#88745d 23px 27px);filter:drop-shadow(9px 0 0 #b74635);transition:none;place-items:start center;overflow:hidden}
.deadline:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 31px,#10202a22 32px 34px),linear-gradient(#fff2 50%,transparent 50%);background-size:auto,100% 54px}.deadline i{position:relative;width:auto;height:auto;background:var(--ink);color:#fff;padding:8px 12px;margin-top:28px;font-style:normal;font-weight:900;writing-mode:vertical-rl;transform:none}.deadline i:after{display:none}.deadline b{position:relative;bottom:auto;margin-top:12px;background:#f7dfac;color:var(--ink);border:3px solid var(--ink)}.is-playing .deadline{animation:wallRumble .17s linear infinite alternate}.deadline.is-fast{filter:drop-shadow(14px 0 0 #b74635)}.deadline.is-slow{filter:drop-shadow(5px 0 0 var(--mint))}@keyframes wallRumble{to{translate:2px 0}}
.runner.is-pushed{animation:pushed .22s linear infinite alternate!important;filter:drop-shadow(-10px 0 0 #b7463555)}@keyframes pushed{from{transform:translateX(0) rotate(-4deg)}to{transform:translateX(20px) rotate(5deg)}}
.runner.is-double-jumping{filter:drop-shadow(0 8px 3px #10202a44)}
.result--text{display:block;max-width:1180px;padding:70px max(7vw,60px);text-align:left}.result--text>div{max-width:760px;margin:0 auto}.result--text .result-actions{display:flex;gap:10px;align-items:center;margin-top:28px}.result--text .result-actions a{margin:0}@media(max-width:720px){.result--text{padding:48px 24px}.result--text .result-actions{align-items:stretch;flex-direction:column}.result--text .result-actions a,.result--text .result-actions button{text-align:center;width:100%}}
.object{bottom:20%;display:grid;place-items:center;font-weight:900;letter-spacing:-.03em;text-align:center}.object.beat,.object.scoop{width:112px;height:54px;background:#fff;border:4px solid var(--ink);box-shadow:6px 6px 0 var(--mint);border-radius:50%;color:var(--ink)}.object.beat{bottom:46%}.object.scoop{bottom:70%;background:var(--mint);font-size:19px}.object.beat:before,.object.scoop:before{content:"";position:absolute;bottom:-18px;border:10px solid transparent;border-top-color:var(--ink)}
.object.fake,.object.false-tip{bottom:47%;width:135px;height:54px;background:#b74635;color:#fff;border:4px solid var(--ink);box-shadow:6px 6px 0 #f7dfac;transform:rotate(-2deg)}.object.false-tip{background:#5c546b;transform:rotate(2deg)}
.object.coffee{bottom:20%;color:transparent;font-size:0}.object.coffee:before{content:"커피";color:var(--ink);font-size:10px}
.object.gap,.object.wide-gap{bottom:0;width:150px;height:29%;background:#071014;clip-path:polygon(0 0,12% 18%,24% 2%,37% 24%,50% 5%,64% 25%,78% 1%,88% 20%,100% 4%,100% 100%,0 100%);border:0;box-shadow:none}.object.wide-gap{width:220px}.object.gap i,.object.wide-gap i{position:absolute;inset:20% 8% 5%;background:repeating-linear-gradient(120deg,transparent 0 20px,#f7f1e622 21px 24px)}.object.gap b,.object.wide-gap b{position:absolute;top:40%;color:#f7f1e6;font-size:12px;letter-spacing:.08em}
.object.resolved{opacity:.12;filter:blur(3px);scale:1.1}.object.missed{filter:saturate(.3)}
.toast{position:absolute;z-index:12;left:50%;top:18%;translate:-50% 0;background:var(--ink);color:#fff;border:3px solid #fff;padding:12px 20px;font-weight:900;box-shadow:6px 6px 0 #0005;animation:toast .95s both}.toast.good{background:#008fa0}.toast.bad{background:#b74635}@keyframes toast{0%{opacity:0;transform:translateY(15px) scale(.9)}15%,70%{opacity:1;transform:none}100%{opacity:0;transform:translateY(-15px)}}
@media(max-width:720px){.deadline{width:105px}.object.beat{bottom:43%}.object.scoop{bottom:65%}.object.fake,.object.false-tip{bottom:44%;width:112px}.object.gap,.object.wide-gap{height:27%}}

/* Clean chroma-key character sprites and simplified Chungmuro backdrop */
.skyline{inset:auto 0 28%;height:35%;opacity:.2;background:#10202a;clip-path:polygon(0 58%,7% 58%,7% 30%,22% 30%,22% 50%,34% 50%,34% 12%,49% 12%,49% 47%,64% 47%,64% 29%,78% 29%,78% 54%,91% 54%,91% 37%,100% 37%,100% 100%,0 100%)}
.road{background:#26343c!important}
.runner{background-image:url('./assets/chungmuman-run.png?v=20260811-3')!important}
.runner.is-jumping{background-image:url('./assets/chungmuman-jump.png?v=20260811-3')!important}
.runner.is-double-jumping{background-image:url('./assets/chungmuman-double.png?v=20260811-3')!important}
.runner.is-sliding{width:250px;height:150px;background-image:url('./assets/chungmuman-slide.png?v=20260811-3')!important}
.runner.is-pushed{width:170px;height:190px;background-image:url('./assets/chungmuman-pushed.png?v=20260811-3')!important;animation:pushed .2s linear infinite alternate!important}
.deadline b{display:none}.deadline i{font-size:16px;letter-spacing:.12em}
.result--text{display:grid;grid-template-columns:minmax(260px,38%) 1fr;gap:5vw;max-width:1180px;padding:55px max(5vw,40px);text-align:left}.result--text>img{display:block;width:100%;max-height:330px;object-fit:contain}.result--text>div{align-self:center;max-width:760px;margin:0}
@media(max-width:720px){.runner.is-sliding{width:185px;height:110px}.runner.is-pushed{width:125px;height:145px}.result--text{grid-template-columns:1fr;padding:38px 22px}.result--text>img{max-height:210px}.result--text>div{width:100%}}
.runner.is-double-jumping{filter:none!important}.runner.is-pushed{filter:none!important;animation:wallPush .18s linear infinite alternate!important}@keyframes wallPush{from{translate:0 0}to{translate:8px 0}}
@media(max-width:720px){.runner{left:14%;bottom:20%;width:92px;height:108px}.runner.is-sliding{left:12%;bottom:19%;width:138px;height:82px}.runner.is-pushed{left:14%;width:92px;height:108px}.deadline{width:92px}.object{scale:.84}.object.gap,.object.wide-gap{scale:1}.game-note{font-size:9px;right:9px}}
