*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#9db0b4;color:#faf8ef;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",system-ui,sans-serif}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible{outline:2px solid #e8d291;outline-offset:4px}#app{position:fixed;inset:0}canvas{display:block;touch-action:none}header{position:fixed;top:0;left:0;right:0;padding:25px 30px;display:flex;align-items:start;justify-content:space-between;pointer-events:none;background:linear-gradient(#10251b70,transparent)}header>*{pointer-events:auto}.eyebrow{font-size:10px;letter-spacing:.22em;opacity:.8}h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:27px;letter-spacing:.17em;font-weight:500;margin:7px 0}h1 span{display:block;font-family:system-ui;font-size:10px;letter-spacing:.25em;margin-top:8px;opacity:.85}.icon,nav,aside,footer{background:#142c25cf;backdrop-filter:blur(14px);border:1px solid #ffffff25}.icon{border-radius:50px;padding:10px 18px;font-size:12px}nav{position:fixed;bottom:65px;left:50%;transform:translateX(-50%);display:flex;border-radius:12px;padding:5px;gap:4px;box-shadow:0 8px 35px #152c2850}nav button{white-space:nowrap;border:0;background:transparent;border-radius:8px;padding:12px 20px;font-size:13px;transition:background .2s}nav b{font-size:9px;opacity:.6;letter-spacing:.06em;margin-right:5px}nav button.active,nav button:hover{background:#f4efde;color:#213d31}footer{position:fixed;bottom:0;left:0;right:0;border-width:1px 0 0;display:flex;justify-content:space-between;gap:16px;padding:13px 25px;font-size:11px;color:#f5f1e2dc}.help{opacity:.65}aside{position:fixed;top:100px;right:25px;width:min(370px,calc(100vw - 32px));padding:23px;border-radius:12px;font-size:12px;line-height:1.9;max-height:65vh;overflow:auto}aside h2{font-family:serif;font-size:18px;font-weight:500}aside button{display:block;border:1px solid #ffffff35;border-radius:6px;background:#ffffff10;margin-top:8px;padding:8px 12px;width:100%;text-align:left}#loading{position:fixed;inset:0;z-index:30;background:#19362d;display:grid;place-items:center}#loading>img{width:100%;height:100%;object-fit:cover;position:absolute;opacity:.45;filter:blur(3px)}.loading-card{position:relative;text-align:center;background:#132b24cf;backdrop-filter:blur(14px);padding:40px 45px;border:1px solid #ffffff25;border-radius:12px;max-width:90vw}.loading-card h1{font-size:35px;margin:20px 0}.loading-card p{font-size:12px}.small{opacity:.6}progress{width:240px;max-width:100%;height:3px;border:0;background:#ffffff25;accent-color:#d4bd7d}#retry{background:#ffffff20;border:1px solid #fff5;border-radius:6px;padding:8px 15px}#loading[hidden],aside[hidden]{display:none}@media(max-width:650px){header{padding:17px 18px}h1{font-size:23px}.eyebrow{font-size:8px}nav{bottom:calc(61px + env(safe-area-inset-bottom));max-width:calc(100vw - 24px);width:420px;justify-content:space-around}nav button{padding:12px 7px;font-size:11px}nav b{display:block;margin:0 0 4px}footer{padding:11px 15px calc(11px + env(safe-area-inset-bottom));font-size:10px}.help{display:none}aside{top:100px;right:16px}.loading-card{padding:30px 20px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.attribution{position:fixed;bottom:calc(44px + env(safe-area-inset-bottom));right:13px;z-index:35;padding:2px 7px;border-radius:3px;background:#142c25dc;color:#efe9d7;font-size:9px;line-height:1.3;text-decoration:underline;text-underline-offset:2px}
