@font-face{font-family:Display;src:url('/display.ttf');font-display:swap}@font-face{font-family:Body;src:url('/body.ttf');font-display:swap}@font-face{font-family:Brand;src:url('/brand.ttf');font-display:swap}*{box-sizing:border-box}html,body{margin:0;background:#10262b;color:#f8edda;font-family:Body,system-ui,sans-serif;width:100%;height:100%;overscroll-behavior:none}body{font-size:16px;-webkit-text-size-adjust:100%;text-size-adjust:100%}button,a.button{font:inherit;cursor:pointer;touch-action:manipulation;border:1px solid #dcba7890;border-radius:10px;padding:14px 22px;background:#356b5d;color:#f8edda;min-height:48px;display:inline-block;text-decoration:none;box-shadow:0 3px 0 #0003}button:focus-visible,a:focus-visible{outline:3px solid #dcba78;outline-offset:4px}.secondary{background:#183239;color:#f8edda}#game{position:fixed;inset:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);overflow:hidden}canvas{width:100%;height:100%;display:block;touch-action:none;outline:none}#loading{position:fixed;inset:0;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at 50% 35%,#22473e,#10262b 65%);z-index:2}#loading.hidden{display:none}.intro{width:min(100%,420px);text-align:center}.mark{width:88px;height:100px;margin:0 auto 30px;background:url('/emblem.svg') center/contain no-repeat;animation:breathe 3s ease-in-out infinite}h1{font-family:Display,Body,system-ui,sans-serif;font-weight:400;font-size:48px;margin:4px 0 12px}.intro h1{font-family:Brand,Body,sans-serif;font-weight:300;font-size:43px;letter-spacing:8px;margin-left:8px}h2{font-family:Display,Body,system-ui,sans-serif;font-weight:400;font-size:32px;margin:0 0 14px}.intro p{color:#b5c1bd;line-height:1.65}.meter{height:3px;background:#345047;border-radius:3px;margin:32px 30px 16px;overflow:hidden}.meter span{display:block;background:#dcba78;height:100%;width:0;transition:width .2s}#status{font-size:14px}#retry{display:none}#tools{position:fixed;right:18px;bottom:max(14px,env(safe-area-inset-bottom));z-index:1;font-size:12px}#tools button{min-height:36px;font-size:12px;padding:7px 12px;background:#183239;color:#f8edda}dialog{width:min(90vw,450px);max-height:calc(100dvh - 48px);overflow:auto;background:#183239;border:1px solid #dcba7880;border-radius:18px;padding:26px;color:#f8edda;box-shadow:0 24px 90px #081816aa;overscroll-behavior:contain}dialog::backdrop{background:#081816bb;backdrop-filter:blur(5px)}dialog pre{font:16px/1.7 Body,sans-serif;white-space:pre-wrap;background:#10262b;border:1px solid #dcba7830;border-radius:10px;padding:18px;overflow-wrap:anywhere}dialog .buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}dialog button{font-size:16px;padding:12px 18px}input,textarea,select{font:18px Body,sans-serif}#import{display:none}.article{max-width:730px;margin:auto;padding:40px 24px 80px;line-height:1.75}.article h1{font-size:46px}.article h2{font-size:28px;margin:30px 0 10px}.article a{color:#dcba78}.article ul{padding-left:22px}.article .card{background:#183239;border:1px solid #dcba7840;border-radius:12px;padding:22px;margin:22px 0}@keyframes breathe{50%{opacity:.7;transform:translateY(-3px)}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
@media(max-height:559px){#game{position:absolute;inset:0;height:568px}html,body{height:568px;overflow-y:auto;overscroll-behavior:auto}canvas{touch-action:pan-y}}

#recovery{position:fixed;z-index:8;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));padding:16px;background:#183239;border:1px solid #dcba78;border-radius:12px;color:#f8edda;font:16px/1.5 Body,sans-serif}#recovery[hidden]{display:none}#recovery button{margin:10px;min-height:44px}
