:root{font-family:Arial,Helvetica,sans-serif;color:#f3f4f7;background:#101722;color-scheme:dark;font-synthesis:none;--cyan:#53d5ef;--orange:#ff9157;--muted:#a9b5c5;--game-ratio:1.7778}*{box-sizing:border-box}body{margin:0}button,a,input{touch-action:manipulation}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}button:disabled{opacity:.45;cursor:default}button{border:1px solid #384456;border-radius:9px;color:inherit;background:#1c2735}button:hover{background:#2b394b}a{color:inherit}img{max-width:100%}.app{width:min(1440px,96%);margin:auto}.masthead{height:76px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:24px;letter-spacing:-1px}.brand img{width:40px;height:40px}.header-actions{display:flex;gap:10px;align-items:center}.icon-button{width:38px;height:36px;font-size:21px}.text-button{padding:8px 14px;font-size:14px}.game-shell{border:1px solid #374152;border-radius:14px;overflow:hidden;background:#121c29;box-shadow:0 24px 75px #0004}.game-toolbar{min-height:60px;display:flex;justify-content:space-between;align-items:center;padding:10px 20px;gap:10px}.location{display:flex;gap:14px;align-items:center}.location>span{font-size:12px;letter-spacing:1px;color:var(--cyan);font-weight:700}.location strong{font-size:16px}.hud{display:flex;align-items:center;gap:15px}#health{color:#fa7766;letter-spacing:3px;white-space:nowrap}.gem-counter{color:#ffdc8b;white-space:nowrap;font-size:16px}#gem-total{font-size:12px;color:var(--muted)}#treasure-status{color:#ffdc8b}.stage-wrap{position:relative;aspect-ratio:var(--game-ratio);overflow:hidden;background:#111d2e}#game{position:absolute;inset:0;outline:none}#game canvas{display:block;width:100%;height:100%;object-fit:contain}.overlay{position:absolute;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;overflow:auto;padding:25px;background:linear-gradient(100deg,#0a101ce8,#101c2bca);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.hidden{display:none!important}.menu{width:min(1040px,100%);margin:auto}.eyebrow{color:var(--cyan);font-size:12px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;margin-bottom:10px}h1{font-size:clamp(28px,4vw,52px);line-height:1.04;letter-spacing:-1.8px;margin:0 0 13px}h2{margin:0 0 12px;font-size:28px;letter-spacing:-.8px}p{color:#bcc8d7;font-size:16px;line-height:1.55;margin:0 0 18px}.faction-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:26px}.faction{padding:28px;text-align:left;min-height:150px;border-radius:12px;border:1px solid #53d5ef66;background:linear-gradient(130deg,#174053,#101b29);position:relative}.faction[data-faction=periodistas]{border-color:#ff915766;background:linear-gradient(130deg,#503326,#1b1823)}.faction strong{display:block;font-size:32px;letter-spacing:-1px;margin-bottom:13px}.faction span{color:#c0d0dd;font-size:15px}.faction em{position:absolute;right:22px;top:27px;font-style:normal;font-size:32px;color:var(--cyan)}.faction[data-faction=periodistas] em{color:var(--orange)}.menu-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.back{font-size:14px;border:0;background:transparent;padding:8px 0;color:#b8c6d7}.roster{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.person{padding:0;overflow:hidden;background:#1c2735;border:2px solid transparent;text-align:left;border-radius:8px}.person[aria-pressed=true]{border-color:var(--cyan);box-shadow:0 0 20px #53d5ef20}.person .portrait{aspect-ratio:.9;background-color:#6d6964;background-size:200% auto;background-position:87% top;background-repeat:no-repeat}.person strong{display:block;padding:11px 10px;font-size:15px}.selection-bottom{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:20px}.primary-button{background:var(--cyan);color:#09212b;border:0;padding:14px 25px;border-radius:8px;font-weight:800;font-size:16px}.primary-button:hover{background:#9beafb}.secondary-button{padding:12px 18px;font-size:15px}.saved-note{font-size:13px;color:#a8b8cc;margin:8px 0}.light-choice{display:flex;align-items:center;gap:8px;font-size:14px}.light-choice input{accent-color:var(--cyan);width:18px;height:18px}.controls{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:10px 18px;font-size:13px;color:#a9b5c5}#player-note{color:#e2eaf3;font-weight:700}kbd{font-family:inherit;font-size:12px;background:#273346;border:1px solid #43516a;border-radius:4px;padding:3px 5px;margin-left:10px}.result-card{max-width:560px;text-align:center}.result-card .eyebrow{margin-bottom:16px}.result-gems{font-size:22px;color:#ffdc8b;margin:20px 0}.result-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.toast{position:absolute;z-index:12;bottom:20px;left:50%;transform:translate(-50%);background:#0b1528ed;border:1px solid #51677c;border-radius:8px;padding:11px 20px;max-width:80%;text-align:center;font-size:14px;opacity:0;pointer-events:none;transition:opacity .2s}.toast.visible{opacity:1}.touch-controls{position:absolute;inset:0;z-index:15;pointer-events:none;display:none;align-items:flex-end;justify-content:space-between;padding:14px max(18px,env(safe-area-inset-right))}.touch-controls.inactive{visibility:hidden}.touch-directions,.touch-actions{display:flex;gap:12px;pointer-events:auto}.touch-controls button{background:#102337bb;border:1px solid #d7e9ff88;width:68px;height:62px;font-size:25px;border-radius:14px;-webkit-user-select:none;user-select:none;touch-action:none}.touch-controls small{display:block;font-size:10px;letter-spacing:.5px}.touch-controls button.held{background:#337a93dc;transform:scale(.95)}.rotate-prompt{display:none}.install-guide{color:#edf4ff;background:#172437;border:1px solid #50617a;border-radius:16px;width:min(540px,92vw);padding:28px;max-height:90vh;overflow:auto}.install-guide::backdrop{background:#000b}.install-guide h2{font-size:25px}.install-guide p,.install-guide li{font-size:16px;line-height:1.6;color:#d1dce9}.install-guide button{padding:10px 16px}.install-guide-close{float:right}.install-step{margin:15px 0}.install-guide .primary-button{color:#09212b}.install-help{position:absolute;top:14px;right:14px}.checkpoint-note{font-size:13px;color:var(--muted)}@media(max-width:900px){.app{width:100%}.masthead{height:52px;padding:0 15px}.brand{font-size:20px}.brand img{width:30px;height:30px}.game-shell{border-radius:0}.game-toolbar{padding:7px 12px;min-height:46px}.hud{gap:9px}.location{gap:8px}.location strong{font-size:14px}.location>span{font-size:10px}.icon-button{width:32px;height:30px;font-size:19px}.controls{font-size:11px;padding:8px 12px}.keyboard-help{display:none}.overlay{padding:18px}.faction-grid{gap:12px;margin-top:18px}.faction{min-height:100px;padding:20px}.faction strong{font-size:26px}.roster{gap:6px}.person strong{font-size:12px;padding:8px 5px}.menu-top{margin-bottom:10px}.selection-bottom{margin-top:12px}.primary-button{padding:11px 18px;font-size:14px}h1{font-size:32px}.saved-note{font-size:11px}}@media(pointer:coarse),(max-width:759px){body.touch-layout .app{height:100dvh;display:flex;flex-direction:column}body.touch-layout .masthead{height:40px;flex-shrink:0}body.touch-layout .game-shell{flex:1;display:flex;flex-direction:column;min-height:0}body.touch-layout .stage-wrap{flex:1;aspect-ratio:auto;min-height:0}body.touch-layout .controls{min-height:25px;padding:4px 12px}body.touch-layout .game-toolbar{min-height:38px;padding:3px 12px}body.touch-layout .touch-controls{display:flex}body.touch-layout .toast{bottom:85px;font-size:12px;padding:8px 12px}body.touch-layout .menu{max-width:850px}body.touch-layout .person .portrait{aspect-ratio:1.1}body.touch-layout .eyebrow{margin-bottom:6px}body.touch-layout h1{font-size:28px;margin-bottom:8px}body.touch-layout h2{font-size:24px}body.touch-layout p{font-size:14px;margin-bottom:10px}body.touch-layout .menu-top{margin-bottom:6px}body.touch-layout .selection-bottom{margin-top:8px}body.touch-layout .faction-grid{margin-top:12px}body.touch-layout .faction{padding:18px;min-height:110px}.needs-rotation .rotate-prompt{position:fixed;inset:0;background:#101722;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.rotate-prompt>span{font-size:70px;color:var(--cyan)}}@media(max-width:560px)and (orientation:portrait){.roster{grid-template-columns:repeat(3,1fr)}.selection-bottom{flex-wrap:wrap}.location>span{display:none}.hud{gap:6px}}@media(min-width:901px)and (pointer:fine){.app{width:min(1440px,96%,calc((100dvh - 160px)*1.777778))}.masthead{height:64px}.game-toolbar{min-height:52px}.controls{min-height:40px}.menu h1{font-size:clamp(28px,3.5vw,46px)}.overlay{padding:20px}.faction-grid{margin-top:20px}}.replay-zone{font-size:12px;padding:5px 8px;margin:4px 2px}.touch-layout .app{width:100%}:where(#game,#touch-controls,.game-toolbar,.controls),:where(#game,#touch-controls,.game-toolbar,.controls) *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.toolbar-brand{display:none}:root{--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px)}@media(pointer:coarse),(max-width:759px){body.touch-layout .app{position:fixed;inset:0;margin:0;padding:0;width:100%;height:100dvh}body.touch-layout .masthead,body.touch-layout .controls{display:none}body.touch-layout .game-shell{position:relative;border:0;border-radius:0}body.touch-layout .game-toolbar{position:absolute;inset:0 0 auto;z-index:30;height:calc(44px + var(--safe-top));min-height:44px;padding:var(--safe-top) calc(10px + var(--safe-right)) 0 calc(10px + var(--safe-left));gap:10px;background:#121c299c;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);text-shadow:0 1px 3px #0008}body.touch-layout .overlay{padding:calc(60px + var(--safe-top)) calc(16px + var(--safe-right)) calc(16px + var(--safe-bottom)) calc(16px + var(--safe-left))}body.touch-layout .toolbar-brand{display:flex;flex-shrink:0}body.touch-layout .toolbar-brand img{width:26px;height:26px}body.touch-layout .location{flex:1;min-width:0;position:relative;height:100%;gap:8px;overflow:hidden}body.touch-layout .location>span{white-space:nowrap;font-size:10px;letter-spacing:.5px}body.touch-layout .location strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.touch-layout .hud{flex-shrink:0;gap:9px}body.touch-layout .icon-button{width:36px;height:36px}body.touch-layout #health{font-size:13px;letter-spacing:1px}body.touch-layout .gem-counter{font-size:14px}body.touch-layout .toast{inset:0;transform:none;max-width:none;border:0;border-radius:0;padding:0;background:transparent;display:flex;align-items:center;text-align:left;font-size:12px;line-height:1.25}body.touch-layout .location:has(.toast.visible)>span,body.touch-layout .location:has(.toast.visible)>strong{visibility:hidden}body.touch-layout #game{bottom:0;overflow:hidden}body.touch-layout .touch-controls{top:auto;height:calc(60px + var(--safe-bottom));padding:3px calc(12px + var(--safe-right)) calc(3px + var(--safe-bottom)) calc(12px + var(--safe-left));background:transparent;align-items:center}body.touch-layout .touch-controls button{height:54px;width:68px;background:#142b3db3;border-color:#a2bfd1b3;font-size:25px}body.touch-layout .touch-controls button.held{background:#337a93}}#score-display{white-space:nowrap;font-size:15px;color:#f3f4f7;font-variant-numeric:tabular-nums}#score-display small{font-size:11px;color:#a9b5c5}.competition-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px;font-size:13px}.competition-controls label{display:flex;gap:7px;align-items:center}.competition-controls [hidden]{display:none!important}.competition-controls input,.competition-controls select,.leaderboard-dialog select{font:inherit;border:1px solid #60738b;border-radius:6px;padding:8px;background:#142335;color:#fff}.competition-controls input{width:200px}.competition-controls>span{color:#adbed0;font-size:12px}.leaderboard-dialog{color:#eef4fc;background:#142132;border:1px solid #61718a;border-radius:14px;width:min(620px,94vw);max-height:92dvh;padding:24px}.leaderboard-dialog::backdrop{background:#030914d9}.leaderboard-close{float:right}.leaderboard-dialog h2{padding-right:40px}.leaderboard-dialog label{display:flex;align-items:center;gap:10px}.leaderboard-dialog table{width:100%;border-collapse:collapse;text-align:left;font-size:14px;font-variant-numeric:tabular-nums}.leaderboard-dialog th,.leaderboard-dialog td{padding:9px 6px;border-bottom:1px solid #35475b}.leaderboard-dialog td small{display:block;color:#adbed0;margin-top:3px}.ranking-note,.leaderboard-dialog details p{font-size:13px;margin:12px 0}.ranking-results{min-height:100px;margin:12px 0}.leaderboard-dialog details{font-size:13px;margin-top:16px;color:#c8d5e5}.result-score{font-size:30px;font-weight:700;color:#53d5ef;margin:14px 0 8px}.result-card #score-submission{font-size:14px}.result-gems{font-size:18px;margin:12px 0}.touch-layout .hud{gap:7px}.touch-layout #score-display{font-size:13px}.touch-layout .competition-controls{gap:8px;margin-top:8px}.touch-layout .competition-controls input,.touch-layout .competition-controls select{padding:5px}.touch-layout .competition-controls input{width:180px}.touch-layout .leaderboard-dialog{padding:16px}.score-form{text-align:left;max-width:620px;margin:12px auto}.score-form label{display:block;margin-bottom:8px;font-weight:700}.score-form-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.score-form input{min-width:140px;flex:1;padding:12px;border:1px solid #60768d;border-radius:8px;background:#101d2a;color:#fff;font:inherit}.score-error{color:#ffbdad;font-size:14px;margin:8px 0}.score-form button:disabled{opacity:.65}#score-submission{margin:16px 0}.brand img,.toolbar-brand img{border-radius:22%;object-fit:cover}.ending-video{position:fixed;inset:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;border:0;background:#080c12;color:#f3f4f7;padding:max(8px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));overflow:hidden}.ending-video[open]{display:flex;flex-direction:column;gap:8px;align-items:center}.ending-video::backdrop{background:#080c12}.ending-actions{display:flex;justify-content:flex-end;gap:8px;width:100%;flex-shrink:0}.ending-actions button{padding:9px 14px;min-height:44px}.ending-video video{display:block;width:100%;flex:1;min-height:0;object-fit:contain}.ending-status{margin:0;font-size:14px;text-align:center;flex-shrink:0}.ending-status:empty{display:none}
