:root{--ink:#2a2118;--paper:#e9dfc6;--paper-dark:#d4c6a4;--olive:#4b4d31;--red:#a3221b;--hud:#f4ead2;--stencil:"Black Ops One", "Oswald", Impact, sans-serif;--type:"Special Elite", "Courier New", monospace}*{box-sizing:border-box}html,body{height:100%;color:var(--hud);overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:none;background:#14110d;margin:0;overflow:hidden}#desk{justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.panel,.plate,.rivet{display:none}#frame,.bezel{width:100%;height:100%}#stage{background:#000;width:100%;height:100%;position:relative;overflow:hidden;container-type:size}#game{width:100%;height:100%;display:block}@media (aspect-ratio>=11/10) and (width>=820px){#desk{background:radial-gradient(at 50% 40%,#ffd28c2e,#0000 60%),repeating-linear-gradient(90deg,#0000001f 0 2px,#0000 2px 9px),repeating-linear-gradient(90deg,#ffffff08 0 40px,#0000000f 40px 120px),linear-gradient(#4a3220,#2f1f13 70%,#1d130b);gap:clamp(12px,2vw,32px);padding:8px}#frame{aspect-ratio:9/8;flex-direction:column;width:auto;max-width:calc(100vw - 16px);height:calc(100vh - 16px);display:flex}.bezel{background:linear-gradient(145deg,#ffffff1f,#0000 40%),repeating-linear-gradient(45deg,#00000014 0 1px,#0000 1px 4px),#3a3c2a;border-radius:14px;flex:1;width:100%;padding:10px;position:relative;box-shadow:0 30px 60px #0009,inset 0 2px #ffffff26,inset 0 -3px #0006}#stage{border-radius:8px;box-shadow:inset 0 0 0 2px #111,0 0 0 3px #222}.rivet{background:radial-gradient(circle at 35% 35%,#c9c3a8,#575440 60%,#222);border-radius:50%;width:10px;height:10px;display:block;position:absolute}.rivet.tl{top:5px;left:5px}.rivet.tr{top:5px;right:5px}.rivet.bl{bottom:5px;left:5px}.rivet.br{bottom:5px;right:5px}.plate{font:600 11px/1 var(--type);letter-spacing:.25em;color:#c8bb94;background:linear-gradient(#5a4e35,#3c3322);border-radius:3px;padding:6px 14px;display:block;box-shadow:0 2px 4px #00000080}.panel{width:clamp(170px,50vw - 56.25vh - 36px,300px);color:var(--ink);font-family:var(--type);flex-direction:column;gap:18px;display:none}#panel-left{transform:rotate(-1.5deg)}#panel-right{transform:rotate(1.2deg)}.paper{background:radial-gradient(ellipse at 20% 10%, #ffffff59, transparent 50%), linear-gradient(var(--paper), var(--paper-dark));padding:18px 18px 16px;position:relative;box-shadow:0 12px 24px #0000008c,inset 0 1px #fff6}.paper:before{content:"";background:#ebe1be99;width:64px;height:18px;position:absolute;top:-9px;left:50%;transform:translate(-50%)rotate(-3deg);box-shadow:0 1px 2px #0003}.paper h2{font:400 20px/1 var(--stencil);letter-spacing:.06em;color:var(--olive);margin:0 0 10px}.paper .row{border-bottom:1px dashed #2a211840;justify-content:space-between;align-items:baseline;gap:8px;padding:4px 0;font-size:14px;display:flex}.paper .row b{font:400 18px/1 var(--stencil);color:var(--ink)}.stamp{border:2px solid var(--red);color:var(--red);font:400 12px/1 var(--stencil);opacity:.75;padding:2px 6px;position:absolute;top:14px;right:10px;transform:rotate(12deg)}.dossier dl{margin:0;font-size:13px}.dossier dt{text-transform:uppercase;opacity:.7;margin-top:6px;font-size:11px;font-weight:700}.dossier dd{margin:0}.map{margin-top:14px;padding:10px 0 18px;position:relative}.map-track{background:repeating-linear-gradient(90deg, var(--ink) 0 6px, transparent 6px 10px);opacity:.8;height:6px;position:relative}#map-pin{--progress:0;top:-7px;left:calc(var(--progress) * 100% - 8px);background:var(--red);border-radius:50% 50% 50% 0;width:16px;height:16px;transition:left .3s;position:absolute;transform:rotate(-45deg);box-shadow:0 2px 3px #00000080}.map-start,.map-end{font-size:11px;position:absolute;bottom:0}.map-end{right:0}.controls kbd{font:12px var(--type);border:1px solid var(--ink);background:#fff6;border-radius:3px;padding:1px 5px}.controls .row span:last-child{margin-left:auto}.note{opacity:.8;margin:10px 0 0;font-size:12px}.dossier-photo{padding:14px 14px 12px;transform:rotate(-2deg)}.dossier-photo img{filter:sepia(.25)contrast(1.05);border:6px solid #f3efe4;width:100%;display:block;box-shadow:0 3px 8px #00000073}.dossier-photo .clip{z-index:2;border:3px solid #9a9a96;border-radius:9px;width:18px;height:46px;position:absolute;top:-14px;left:22px}.dossier-photo .stamp.red{z-index:2;background:#e9dfc626;padding:4px 8px;font-size:18px;top:40%;right:-6px;transform:rotate(-14deg)}.dossier-photo .caption{margin-top:8px;font-size:12px;line-height:1.4}.paper.dossier-photo:before{display:none}.credits{font:14px/1.5 var(--type);color:#d8c9a2;text-align:center;text-shadow:0 1px 2px #000}.credits b{font-family:var(--stencil);letter-spacing:.05em;font-size:18px;font-weight:400}}#hud{padding:calc(env(safe-area-inset-top,0px) + 10px) 14px 10px;font-family:var(--stencil);color:var(--hud);text-shadow:0 2px #000000b3,0 0 10px #0009;pointer-events:none;background:linear-gradient(#00000073,#0000);justify-content:space-between;align-items:flex-start;transition:opacity .4s;display:flex;position:absolute;top:0;left:0;right:0}.hud-block{letter-spacing:.06em;flex-direction:column;font-size:clamp(14px,4.2cqw,22px);display:flex}.hud-block label{color:#e6b54a;font-size:.6em}.hud-block.center{align-items:center}.hud-block.right{flex-direction:row;align-items:center;gap:6px}#hud-lives{color:#e6b54a;margin-right:6px}.nade-ico{background:radial-gradient(circle at 35% 30%,#8f9168,#3c3e25);border-radius:45%;width:.7em;height:.8em;display:inline-block;box-shadow:0 -.2em 0 -.1em #aaa}.hud-hidden #hud,.hud-hidden #btn-mute{opacity:0}#btn-cam,#btn-mute{right:10px;bottom:calc(env(safe-area-inset-bottom,0px) + 10px);z-index:6;cursor:pointer;background:#00000059;border:0;border-radius:50%;width:34px;height:34px;font-size:16px;position:absolute}#btn-cam{right:52px}.hud-hidden #btn-cam{opacity:0}#toast{left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 64px);color:#f3e6c2;font:400 clamp(13px, 2.4cqh, 18px) var(--type);white-space:nowrap;pointer-events:none;opacity:0;z-index:6;background:#0009;border-radius:4px;padding:6px 14px;position:absolute;transform:translate(-50%)}#toast.show{animation:1.8s forwards toast}@keyframes toast{0%{opacity:0;transform:translate(-50%,8px)}12%,75%{opacity:1;transform:translate(-50%)}to{opacity:0}}#bubbles{pointer-events:none;position:absolute;inset:0;overflow:hidden}.bubble{color:#111;text-transform:uppercase;white-space:nowrap;background:#fffdf3;border:2px solid #111;border-radius:14px;max-width:46cqw;padding:5px 9px;font:700 clamp(11px,3.3cqw,15px)/1.1 Oswald,sans-serif;animation:.18s ease-out pop;position:absolute;top:0;left:0}.bubble:after{content:"";border:7px solid #0000;border-top-color:#111;border-bottom:0;position:absolute;bottom:-9px;left:50%;transform:translate(-50%)}.bubble.ally{background:#e7f0d0}.bubble.boss{background:#ffe066;font-size:clamp(13px,3.8cqw,18px)}.popup{font:400 clamp(12px, 3.6cqw, 16px) / 1 var(--stencil);color:#ffe9a8;text-shadow:0 2px #000;white-space:nowrap;position:absolute;top:0;left:0}.popup.big{color:#ffcf40;font-size:clamp(16px,5cqw,24px)}@keyframes pop{0%{scale:.4}to{scale:1}}.bar{z-index:3;pointer-events:none;background:#000;height:0;transition:height .6s;position:absolute;left:0;right:0}.bar.top{top:0}.bar.bottom{bottom:0}.letterbox .bar{height:11%}#stage.flash:after{content:"";pointer-events:none;background:#fff6dc;animation:.35s ease-out forwards flash;position:absolute;inset:0}@keyframes flash{0%{opacity:.55}to{opacity:0}}#overlay{z-index:5;text-align:center;pointer-events:none;font-family:var(--stencil);text-shadow:0 3px #000000b3;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:24px;display:flex;position:absolute;inset:0}#overlay[hidden]{display:none}#overlay.title,#overlay.gameover,#overlay.pause{background:radial-gradient(#00000026,#000000a6)}.logo3d{perspective:700px;width:min(92cqw,640px);animation:1.1s cubic-bezier(.2,.9,.25,1.15) both logo-in;position:relative}.logo-tilt{transform-style:preserve-3d;animation:7s ease-in-out 1.1s infinite logo-sway;position:relative}.logo-img{filter:drop-shadow(0 10px 6px #000000bf)drop-shadow(0 0 26px #ffbe5a2e);-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.logo-shine{mix-blend-mode:screen;background:linear-gradient(105deg,#0000 38%,#fff6d6d9 48%,#fffffff2 50%,#0000 60%) 130% 0/260% 100%;animation:4.5s ease-in-out 1.2s infinite logo-shine;position:absolute;inset:0;-webkit-mask:url(/assets/ui/logo_b.webp) 50%/100% 100% no-repeat;mask:url(/assets/ui/logo_b.webp) 50%/100% 100% no-repeat}.logo-flare{aspect-ratio:3;filter:blur(6px);opacity:0;pointer-events:none;background:radial-gradient(#ffd68c8c,#ff8c2826 40%,#0000 70%);width:140%;animation:1.6s ease-out .55s both logo-flare;position:absolute;top:50%;left:50%;translate:-50% -50%}@keyframes logo-in{0%{opacity:0;filter:blur(14px);transform:scale(2.6)translateZ(0)rotateX(55deg)}55%{opacity:1;filter:blur()}62%{transform:scale(.94)rotateX(-6deg)}70%{transform:scale(1.03)translate(-4px,3px)}78%{transform:scale(1)translate(3px,-2px)}to{transform:none}}@keyframes logo-sway{0%,to{transform:rotateY(-9deg)rotateX(6deg)translateY(0)}50%{transform:rotateY(9deg)rotateX(2deg)translateY(-6px)}}@keyframes logo-shine{0%,55%{background-position:130% 0}85%,to{background-position:-30% 0}}@keyframes logo-flare{0%{opacity:0;transform:scaleX(.3)}20%{opacity:1;transform:scaleX(1.1)}to{opacity:.35;transform:scaleX(1)}}.mg-words span{opacity:0;animation:.6s cubic-bezier(.2,.8,.2,1) both word-in;display:inline-block}.mg-words span:first-child{animation-delay:1.2s}.mg-words span:nth-child(2){animation-delay:1.55s}.mg-words span:nth-child(3){color:#ffd76a;animation-delay:1.9s}@keyframes word-in{0%{opacity:0;letter-spacing:.4em;filter:blur(4px);transform:translateY(14px)scale(.9)}to{opacity:1;letter-spacing:.02em;filter:none;transform:none}}#overlay.title .blink{animation:.5s 2.4s both fade-in,1.1s steps(2,start) 2.9s infinite blink}@keyframes fade-in{0%{opacity:0}}.end-credits .logo3d{width:min(70cqw,420px);margin:0 auto 6px}.title-tag{font:400 clamp(13px, 4cqw, 18px) / 1.3 var(--type);color:#e8dcbc}.title-credits{bottom:calc(env(safe-area-inset-bottom,0px) + 24px);font:400 clamp(12px, 3.4cqw, 15px) var(--type);color:#d6c9a6;position:absolute}.blink{color:#ffd76a;font-size:clamp(14px,4.4cqw,20px);animation:1.1s steps(2,start) infinite blink}@keyframes blink{to{visibility:hidden}}.mg-area{justify-items:center;gap:4px;padding:14px 28px;display:grid;position:relative}.mg-bar{transform-origin:50%;background:linear-gradient(90deg,#0000,#0a0804b8 18% 82%,#0000);border-top:2px solid #c4a463;border-bottom:2px solid #c4a463;animation:.6s cubic-bezier(.7,0,.2,1) both bar-wipe;position:absolute;inset:0}.area-kicker{font:400 clamp(11px, 3.2cqw, 14px) var(--type);letter-spacing:.5em;color:#c4a463;animation:.7s ease-out .35s both word-in;position:relative}.area-name{color:#f2e6c4;background:linear-gradient(#fff6da,#d8b874 60%,#94702e);-webkit-text-fill-color:transparent;filter:drop-shadow(0 3px #000);-webkit-background-clip:text;background-clip:text;font-size:clamp(26px,10cqw,52px);animation:.9s cubic-bezier(.2,.8,.2,1) .45s both track-in;position:relative}.area-sub{font:400 clamp(12px, 3.6cqw, 16px) var(--type);color:#d9cba6;white-space:nowrap;width:calc(var(--n) * 1ch);max-width:90cqw;animation:typing 1.4s steps(var(--n)) 1.1s both, caret .7s steps(2) 1.1s 4 forwards;border-right:2px solid #ffd76a;position:relative;overflow:hidden}@keyframes bar-wipe{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes track-in{0%{opacity:0;letter-spacing:.8em;filter:blur(8px)drop-shadow(0 3px #000)}to{opacity:1;letter-spacing:.06em;filter:drop-shadow(0 3px #000)}}@keyframes typing{0%{width:0}}@keyframes caret{to{border-color:#0000}}.card-title{color:#f6e7bb;font-size:clamp(26px,9cqw,46px);animation:.55s cubic-bezier(.2,.9,.3,1.3) both slam}@keyframes slam{0%{opacity:0;filter:blur(8px);transform:scale(2.2)}to{opacity:1;filter:none;transform:none}}.newsreel{filter:sepia(.5)grayscale(.4);background:#14100abf;border:3px double #d6c9a6;max-width:86cqw;padding:22px 18px}.reel-head{font:400 12px var(--type);letter-spacing:.3em;color:#d6c9a6;margin-bottom:8px}.newsreel p{font:400 clamp(14px, 4.2cqw, 18px) / 1.4 var(--type);color:#efe6cf;text-shadow:none}.reel-score{color:#ffd76a;font-size:clamp(14px,4cqw,18px)}.stats{background:#00000073;border-top:2px solid #c4a463;border-bottom:2px solid #c4a463;gap:6px;min-width:70cqw;padding:14px 16px;display:grid}.stats div{font:400 clamp(13px, 3.8cqw, 17px) var(--type);justify-content:space-between;display:flex}.stats b{font-family:var(--stencil);color:#ffd76a;font-weight:400}.stats .life-bonus b{color:#ff6b6b;animation:.6s ease-out 1s both rise}.end-credits{letter-spacing:.1em;color:#efe2bd;font-size:clamp(22px,6cqw,34px)}.end-credits span{font:400 clamp(12px, 3.4cqw, 15px) var(--type);letter-spacing:0;color:#d6c9a6;margin-top:4px;display:block}.tease{font:400 clamp(13px, 3.8cqw, 16px) / 1.4 var(--type);color:#e8dcbc}#touch{z-index:4;position:absolute;inset:0}#touch[hidden]{display:none}.stick-zone{width:58%;height:60%;position:absolute;bottom:0;left:0}.stick-base{pointer-events:none;opacity:.45;background:radial-gradient(#00000026,#00000059);border:2px solid #fff0c859;border-radius:50%;width:112px;height:112px;margin:-56px 0 0 -56px;transition:opacity .15s;position:absolute;top:82%;left:22%}.stick-base.active{opacity:1;transition:none}.stick-knob{background:radial-gradient(circle at 35% 30%,#a5a77c,#4b4d31);border-radius:50%;width:52px;height:52px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 3px 8px #00000080}#touch button{color:#fff3d0;font:400 15px var(--stencil);text-shadow:0 1px #000;touch-action:none;border:2px solid #fff0c880;border-radius:50%;position:absolute}.btn-fire{right:22px;bottom:calc(env(safe-area-inset-bottom,0px) + 60px);background:radial-gradient(circle at 35% 30%,#c83c28d9,#6e140ad9);width:86px;height:86px}.btn-grenade{right:118px;bottom:calc(env(safe-area-inset-bottom,0px) + 30px);background:radial-gradient(circle at 35% 30%,#787d50d9,#373a23d9);width:64px;height:64px}#touch button.down{filter:brightness(1.3);scale:.92}@media (aspect-ratio>=3/2) and (width>=820px){.panel{display:flex}}a.author{color:inherit;text-underline-offset:3px;pointer-events:auto;cursor:pointer;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}a.author:hover{color:#ffd76a}.logo3d{pointer-events:auto}.test-menu{z-index:20;width:min(92%,420px);font:400 13px var(--type);color:#e7f5dc;pointer-events:auto;background:#0e120cf0;border:2px solid #9cff7a;gap:10px;padding:16px;animation:.35s ease-out slam;display:grid;position:absolute;top:50%;left:50%;translate:-50% -50%;box-shadow:0 0 0 4px #9cff7a26,0 12px 40px #0009}.test-menu[hidden]{display:none}.tm-head{font:400 18px var(--stencil);letter-spacing:.12em;color:#9cff7a}.tm-head span{font:400 12px var(--type);letter-spacing:0;color:#b9d7a9}.tm-label{letter-spacing:.25em;text-transform:uppercase;color:#8fae80;font-size:11px}.tm-row{flex-wrap:wrap;gap:8px;display:flex}.test-menu button{color:#f1fbe9;min-width:90px;font:400 13px/1.25 var(--stencil);cursor:pointer;background:#23301d;border:1px solid #5f8a50;flex:1 1 0;padding:9px 10px}.test-menu button:hover{background:#2f4226;border-color:#9cff7a}.test-menu button.tm-ok{animation:.5s ease-out tm-ok}@keyframes tm-ok{0%{color:#10170c;background:#9cff7a}}.tm-note{color:#8fae80;font-size:11px}.test-menu .tm-close{background:0 0}#stage.test-mode:after{content:"TESTE";left:50%;top:calc(env(safe-area-inset-top,0px) + 30px);z-index:7;font:400 11px var(--stencil);letter-spacing:.2em;color:#9cff7a;pointer-events:none;background:#00000073;border:1px solid #9cff7a;padding:2px 8px;position:absolute;translate:-50%}.boss-bar{left:50%;top:calc(env(safe-area-inset-top,0px) + 44px);z-index:6;width:min(70%,420px);font:400 12px var(--stencil);letter-spacing:.14em;color:#ffd76a;text-align:center;text-shadow:0 2px #000;pointer-events:none;gap:3px;animation:.5s ease-out slam;display:grid;position:absolute;translate:-50%}.boss-bar div{background:#0000008c;border:1px solid #c4a463;height:9px}.boss-bar i{background:linear-gradient(#ff6a4a,#b3150f);height:100%;transition:width .2s;display:block}
