:root{color:#f3eedc;--view-height:100dvh;--ink:#192c2e;--mint:#b6d9ae;--gold:#f0d39a;--muted:#b3c3b7;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#0b141b;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(at 50% 0,#263a3b 0,#0000 65%),#0b141b;place-items:center;min-height:100dvh;margin:0;display:grid}button,select,a{-webkit-tap-highlight-color:transparent}button,select{font:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer;border:0}button:disabled{opacity:.38;cursor:default}button:focus-visible,a:focus-visible,select:focus-visible,canvas:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #f1d391}a{color:inherit;text-decoration:none}button:hover:not(:disabled),a:hover{filter:brightness(1.08)}#app{width:min(var(--view-width,100vw), calc(var(--view-height) * .5625));height:min(var(--view-height), calc(var(--view-width,100vw) * 16 / 9));aspect-ratio:9/16;scrollbar-width:thin;padding:max(16px, env(safe-area-inset-top)) calc(var(--frame-width,390px) * .05) max(14px, env(safe-area-inset-bottom));font-size:clamp(12px, calc(var(--frame-width,390px) * .034), 16px);background:linear-gradient(155deg,#233a37,#14252c 72%);position:relative;overflow:hidden auto;box-shadow:0 0 100px #0007;container-type:inline-size}header{justify-content:space-between;align-items:center;gap:12px;min-height:30px;display:flex}.brand{letter-spacing:.12em;font-size:1.05em;font-weight:800}.brand:before{content:"◆";color:var(--mint);margin-right:8px}.micro{letter-spacing:.15em;color:var(--mint);font-size:.68em;font-weight:700}h1,h2,p{margin:0}h1{font-family:Georgia,serif;font-size:clamp(25px,9cqw,48px);font-weight:500;line-height:1.1}h2{font-family:Georgia,serif;font-size:2em;font-weight:500;line-height:1.2}.subtitle{color:var(--muted);margin-top:10px;font-size:.95em;line-height:1.5}.hero-title{text-align:center;margin-top:6%}.hero-title .micro{margin-bottom:9px}.hero{aspect-ratio:1;filter:drop-shadow(0 18px 20px #08171770);width:60%;margin:0 auto -1%;display:block;transform:rotate(-5deg)}.hero canvas{aspect-ratio:1;width:100%;display:block}.actions{gap:9px;display:grid}.btn{text-align:center;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:12px 16px;font-weight:650;line-height:1.2;display:flex}.primary{background:var(--mint);color:var(--ink);box-shadow:0 3px #698e6b}.secondary{color:#f4efdd;background:#334b46;border:1px solid #698779}.quiet{color:var(--muted);background:0 0;border:1px solid #ffffff25}.accent{color:#322b27;background:#e8b99b}.small{border-radius:8px;min-height:34px;padding:9px 11px;font-size:.82em}.icon-btn{color:var(--muted);background:#ffffff0b;border:1px solid #ffffff20;border-radius:8px;padding:8px 10px;font-size:.82em}.cpu-btn{text-align:left;color:#fff0d5;background:#233738;border:1px solid #587364;border-radius:10px;justify-content:space-between;align-items:center;width:100%;margin-top:13px;padding:13px 16px;display:flex}.cpu-btn strong{font-size:1em;display:block}.cpu-btn span{color:var(--muted);margin-top:3px;font-size:.75em;display:block}.cpu-icon{color:#e8bc98;font-size:2em}.teasers{grid-template-columns:repeat(3,1fr);gap:7px;margin:16px 0;display:grid}.teaser{color:var(--muted);background:#ffffff05;border:1px solid #ffffff15;border-radius:9px;padding:11px 5px;font-size:.72em;line-height:1.3}.teaser span{color:#a6bdaa;margin-bottom:5px;font-size:1.5em;display:block}.menu-footer{justify-content:center;gap:8px;margin-top:12px;display:flex}.menu-footer a,.menu-footer button{flex:1}.settings{justify-content:space-between;align-items:center;gap:8px;margin-top:16px;display:flex}.settings select{max-width:48%;color:var(--muted);background:#172c2d;border:1px solid #658172;border-radius:7px;padding:7px;font-size:.85em}.save-note{color:#93aaa0;text-align:center;margin-top:12px;font-size:.68em;line-height:1.5}.reset{color:#8ea498;background:0 0;margin:8px auto;font-size:.68em;text-decoration:underline;display:block}.stat{color:var(--gold);white-space:nowrap;font-size:.78em}.level-list{grid-template-columns:1fr 1fr;gap:9px;margin:20px 0;display:grid}.level-card{text-align:left;color:#f0ead5;background:#29423e;border:1px solid #536e59;border-radius:10px;min-height:82px;padding:15px 12px}.level-card strong{font-family:Georgia,serif;font-size:1.5em;font-weight:400;display:block}.level-card span{margin-top:5px;font-size:.78em;line-height:1.3;display:block}.level-card.highlight{border-color:#d8b886}.level-card small{color:var(--gold);letter-spacing:.05em;margin-top:7px;display:block}.gap{color:var(--muted);border-left:2px solid var(--gold);padding-left:12px;font-size:.8em;line-height:1.5}.game-heading{justify-content:space-between;align-items:flex-start;gap:10px;margin-top:7%;display:flex}.chip{color:var(--gold);font-variant-numeric:tabular-nums;background:#ffffff0b;border:1px solid #ffffff15;border-radius:8px;padding:8px}.hud{color:var(--muted);justify-content:space-between;gap:8px;margin:15px 0 5px;font-size:.8em;display:flex}.hud strong{color:#f0e4bc;font-weight:600}.board{aspect-ratio:1;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:15px;width:100%;display:block}.legend{color:#b4b5a0;text-align:center;margin:3px 0 14px;font-size:.65em}.tutorial{color:#dce4d1;background:#ffffff07;border-left:2px solid #aaca9e;border-radius:0 8px 8px 0;gap:12px;min-height:64px;padding:12px;font-size:.86em;line-height:1.5;display:flex}.tutorial .spark{color:var(--gold);font-size:1.25em}.toolbar{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px;display:grid}.hint-options{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin-top:12px;font-size:.75em;display:flex}.hint-options select,.accessible-controls select{color:#d7e3cc;font-size:inherit;background:#1c3132;border:1px solid #58735e;border-radius:6px;padding:6px}.accessible-controls{color:var(--muted);margin-top:12px;font-size:.7em}.accessible-controls summary{cursor:pointer}.accessible-controls div{flex-wrap:wrap;gap:5px;margin:8px 0;display:flex}.accessible-controls p{line-height:1.5}.accessible-controls select{max-width:46%}.accessible-controls button{min-height:28px;padding:6px 9px}.live{min-height:16px;color:var(--gold);text-align:center;margin-top:12px;font-size:.78em}.keyboard-hint{color:var(--muted);margin-top:8px;font-size:.68em;line-height:1.5}.score-strip{color:#dbe3ca;justify-content:space-between;margin:12px 0;font-size:.78em;display:flex}.score-strip strong{color:#e7b99f}dialog{color:#efe9d4;background:linear-gradient(150deg,#2d4740,#1c2f33);border:1px solid #719078;border-radius:18px;width:min(90vw,360px);max-height:90dvh;padding:25px;box-shadow:0 24px 100px #0008}dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#08151bbb}dialog h2{margin:6px 0 12px;font-size:2em}dialog p{color:#c4d0be;font-size:.9em;line-height:1.55}dialog .actions{margin-top:20px}dialog .close{color:#bfd1bf;background:0 0;font-size:22px;position:absolute;top:10px;right:10px}.result-glyph{color:var(--gold);margin-bottom:9px;font-size:3.5em}.stars{color:var(--gold);letter-spacing:.1em;text-align:center;margin:16px 0;font-size:2.5em}.result-stats{color:var(--muted);justify-content:center;gap:14px;font-size:.85em;display:flex}.cta-links{gap:8px;margin:18px 0 0;display:grid}.toast{color:#203930;z-index:20;background:#e1e9cf;border-radius:30px;padding:12px 24px;font-size:14px;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 6px 25px #0005}#rotate{z-index:100;text-align:center;color:#e9e6ca;background:#15282c;place-content:center;gap:15px;padding:20px;display:grid;position:fixed;inset:0}#rotate[hidden]{display:none}#rotate span{color:var(--mint);font-size:70px}.gated #app{pointer-events:none;visibility:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (max-height:650px){#app{padding-top:10px}.hero-title{margin-top:3%}.hero{width:65%}.teasers{margin:10px 0}.game-heading{margin-top:4%}.tutorial{min-height:40px;padding:8px}.legend{margin-bottom:8px}}.gated dialog{visibility:hidden}.gated dialog::backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0}@media (max-width:600px){.hero{width:50%}.hero-title{margin-top:4%}.teasers{margin:10px 0}.menu-footer{margin-top:8px}.settings{margin-top:10px}.save-note{margin-top:8px}}@font-face{font-family:"Jersey 10";src:url(/play/stealthmate/art/Jersey10-Regular.ttf)format("truetype");font-display:swap}:root{--gold:#efc24e;--mint:#fcebb4;--muted:#e2dbc9;color:#fff4cd;font-family:"Jersey 10",sans-serif}body{background:#0b1926}#app{font-size:clamp(15px, calc(var(--frame-width,390px) * .041), 20px);background:linear-gradient(#03090a80,#03090ab0),url(/play/stealthmate/art/forest.png) 0/cover;padding-inline:5%}h1,h2,.level-card strong{color:#ffeb9d;font-family:"Jersey 10",sans-serif;font-weight:400}.brand{letter-spacing:.04em;font-size:.9em}.brand:before{content:none}.game-logo{width:88%;image-rendering:pixelated;margin:10px auto 8px;display:block}.hero-title{margin-top:2%}.hero-title h1{font-size:7cqw}.hero-title .subtitle{margin-top:4px}.hero{display:none}.hero-title{margin-bottom:16px}.mode-card,.cpu-btn,.level-card,.teaser,dialog{color:#fcebb4;background:#140d0fed;border:2px solid #d9a437;border-color:#efc24e #d9a437 #85531c;border-radius:7px}.mode-card{gap:6px;padding:10px}.btn{box-shadow:none;color:#fff4cd;text-transform:uppercase;image-rendering:pixelated;background:0 0;border:8px solid #0000;border-image:url(/play/stealthmate/art/button-brown.png) 11 fill/8px;border-radius:0;padding:7px 10px;font-weight:400}.primary,.secondary,.toolbar .btn{border-image:url(/play/stealthmate/art/button-blue.png) 14 fill/8px}.small{min-height:36px;padding:3px 6px}.cpu-btn{margin-top:10px;padding:12px}.cpu-icon{width:32px;height:48px;image-rendering:pixelated;background:url(/play/stealthmate/art/pieces.png) 0 0/256px 256px}.teasers{gap:7px;margin-block:10px}.teaser{padding:8px 4px}.teaser span{margin-bottom:2px}.settings select,.hint-options select,.accessible-controls select,.icon-btn{color:#fff4cd;background:#1a2b23;border-color:#cda953}.game-heading{margin-top:4%}.hud,.tutorial,.chip{color:#f2eed8;background:#1a2b23ec;border:1px solid #cda953;border-radius:5px;padding:8px}.hud{margin-top:10px}.tutorial{line-height:1.3}.game-heading h1{font-size:6cqw}.game-heading .micro{margin-bottom:3px}.legend{margin-bottom:8px}.toolbar{margin-top:8px}.live{min-height:0;margin-top:6px}.accessible-controls,.hint-options{margin-top:6px}.board{image-rendering:pixelated;border-radius:0}.legend{color:#f2eed8}.save-note,.reset{color:#e2dbc9}dialog{font-size:20px}dialog p{color:#e2dbc9}.star-sprite{width:20px;height:20px;image-rendering:pixelated}button,.btn,.brand,.micro,strong{font-weight:400}@media (max-height:700px){.hero{width:30%}.game-logo{width:74%;margin-top:0}.hero-title h1{font-size:6cqw}}.stars .star-sprite{width:40px;height:40px}.settings-gear{color:#cfdbdc;background:0 0;padding:0 4px;font-size:2em;line-height:1}.native-mode{grid-template-columns:1fr 1fr;align-items:center;gap:12px;min-height:120px;margin-bottom:12px;padding:16px 12px;display:grid}.native-mode h2{text-transform:uppercase;text-align:center;margin-bottom:10px;font-size:1.3em}.native-mode p{font-size:.9em;line-height:1.2}.native-mode .btn{min-height:40px;font-size:.84em}.versus-mode{min-height:145px}.match-group{border:2px solid #b58632;padding:22px 8px 10px;position:relative}.match-group>span{text-align:center;color:#fff4cd;margin-bottom:12px;font-size:.78em;display:block}.match-group .btn{width:100%}.campaign-shell{background:#140f0ef0;border:2px solid #d9a437;border-radius:8px;padding:16px}.campaign-shell header h1{text-transform:uppercase;font-size:1.6em}.campaign-list{gap:8px;margin-top:20px;display:grid}.campaign-row{text-align:left;color:#fcebb4;background:#35281f;border:2px solid #654c32;align-items:stretch;padding:0;display:flex}.campaign-row.active{background:#52311c;border-color:#eeb438}.campaign-number{background:#0003;place-items:center;min-width:48px;font-size:1.5em;display:grid}.campaign-row>div{flex:1;padding:10px}.campaign-row h2{text-transform:uppercase;font-size:1.2em}.campaign-row p{margin-top:5px;font-size:.8em}progress{appearance:none;background:#81754d;border:1px solid #948350;width:100%;height:8px}progress::-webkit-progress-bar{background:#81754d}progress::-webkit-progress-value{background:#f1aa2c}progress::-moz-progress-bar{background:#f1aa2c}.campaign-row progress{width:75%;margin-top:8px}.campaign-preview{text-align:center;border:2px solid #e9bc45;margin-top:18px;padding-bottom:12px}.campaign-preview>img{aspect-ratio:16/7;object-fit:cover;width:100%;image-rendering:pixelated;display:block}.campaign-preview h2{text-transform:uppercase;margin:12px 0;font-size:1.45em}.availability{color:#fff0c7;background:#145172;padding:5px 10px;font-size:.85em;display:inline-block}.campaign-preview p{padding:12px 16px;font-size:.9em}.campaign-progress{align-items:center;gap:8px;padding:5px 20px 12px;font-size:.8em;display:flex}.campaign-preview .btn{width:86%;margin:4px auto}.level-list{grid-template-columns:repeat(3,1fr)}.level-card{min-height:78px;padding:10px}.level-card strong{font-size:1.5em}.settings-dialog{width:min(92vw, calc(var(--frame-width,390px) * .92));max-width:600px;height:min(90dvh, calc(var(--view-height) * .9));font-size:clamp(16px, calc(var(--frame-width,390px) * .047), 24px);background:#123027;border:2px solid #cda03a;border-radius:10px;flex-direction:column;gap:14px;padding:24px;display:flex}.settings-dialog:not([open]){display:none}.settings-dialog h2{text-transform:uppercase;text-align:center;margin:8px 0 0;font-size:2.3em}.settings-subtitle{text-align:center;text-transform:uppercase;font-size:.85em}.settings-dialog h3{text-align:center;text-transform:uppercase;margin:0 0 10px;font-size:1.8em}.preference-row{grid-template-columns:1.2fr 36px 58px 36px;align-items:center;gap:6px;min-height:52px;display:grid}.preference-row .btn{min-height:40px;padding:5px;font-size:1.2em}.preference-row output{text-align:center;background:#061e19;border:1px solid #6e8050;padding:8px 0}.preference-wide{grid-template-columns:1.2fr 1fr}.preference-wide span,.preference-wide select{font:inherit;text-align:center;color:#fff0bc;background:#061e19;border:1px solid #6e8050;min-width:0;padding:8px}.audio-toggle{align-items:center;gap:10px;display:flex}.settings-actions{gap:10px;margin-top:auto;display:flex}.settings-actions .btn{flex:1}.result-dialog{box-shadow:none;width:min(96vw, calc(var(--frame-width,390px) * .96));text-align:center;background:0 0;border:0;max-height:94dvh;padding:32px 20px;overflow-y:auto}.result-dialog::backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#080f13b0}.result-dialog h2{text-transform:uppercase;color:#ffeb9d;font-size:clamp(30px, calc(var(--frame-width,390px) * .09), 48px);margin:12px 0;line-height:1.05}.result-level{color:#f4edd6;font-size:1.05em}.result-reason{margin:18px 0}.result-dialog .stars{justify-content:center;align-items:center;gap:12px;margin:26px 0;display:flex}.result-dialog .star-sprite{width:60px;height:60px}.earned{animation:.45s both star-pop;animation-delay:calc(var(--star-index) * .25s + .15s)}@keyframes star-pop{0%{opacity:0;transform:scale(.25)}70%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.result-dialog .result-stats{margin:12px 0;font-size:.8em}.result-dialog .actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:28px;display:flex}.result-dialog .actions .btn{flex:40%;min-height:42px;font-size:.9em}.result-dialog .close{position:fixed;top:10px;right:10px}.result-more{margin-top:12px;font-size:.8em}.result-more summary{cursor:pointer;color:#e8ce8e}.outcome-beat{text-align:center;text-transform:uppercase;color:#fff0b1;z-index:2;pointer-events:none;background:#11291feb;border:2px solid #ffc65a;width:90%;padding:15px 10px;font-size:1.6em;line-height:1.1;position:absolute;top:40%;left:5%}.outcome-beat.lost{border-color:#e67c64}@media (max-height:700px){.native-mode{min-height:100px;padding:10px}.settings-dialog{gap:7px;padding:16px}.preference-row{min-height:44px}.settings-dialog h3{margin-bottom:0}}@media (prefers-reduced-motion:reduce){.earned{animation:none}}.campaign-shell{padding:12px}.campaign-list{gap:6px;margin-top:12px}.campaign-row>div{padding:8px}.campaign-preview{margin-top:12px;padding-bottom:8px}.campaign-preview>img{aspect-ratio:16/5}.campaign-preview h2{margin:8px 0}.campaign-preview p{padding:8px 12px}.campaign-preview .btn{min-height:38px}
