:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#1e231d;--ink:oklch(.25 .015 140);--muted:oklch(.43 .02 140);--surface:oklch(.99 0 0);--line:oklch(.84 .015 140);--brand:oklch(.48 .085 140);--pale:oklch(.94 .02 140);font-size:16px;color-scheme:light}*{box-sizing:border-box}body{margin:0;overflow:hidden;background:#e4efe2}[hidden]{display:none!important}#world{width:100%;height:100dvh;display:block;touch-action:none;outline:none}header{position:fixed;inset:0 0 auto;min-height:74px;padding:14px 28px;display:flex;align-items:center;gap:22px;background:var(--surface);border-bottom:1px solid var(--line);z-index:10}header a{font-size:30px;font-weight:800;letter-spacing:-.035em;text-decoration:none;color:var(--ink)}header a span{color:var(--brand);font-size:16px;margin-left:4px}header #connection{font-size:14px;color:var(--muted);margin-right:auto}button,input,select{font:inherit;min-height:46px;border-radius:8px;border:1px solid var(--line);padding:10px 13px;color:var(--ink);background:#fff}button{cursor:pointer;font-weight:650}button:hover{background:var(--pale)}button:active{transform:translateY(1px)}button:disabled{opacity:.6;cursor:wait}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--brand);outline-offset:3px}.primary{background:var(--brand);color:#fff;border-color:var(--brand)}.primary:hover{background:#2f5227}#entry{position:fixed;top:74px;bottom:0;left:0;width:min(460px,47vw);overflow:auto;background:var(--surface);padding:40px 32px}h1{font-size:2.6rem;line-height:1.09;letter-spacing:-.035em;margin:16px 0 24px;text-wrap:balance}p{line-height:1.55;max-width:65ch;color:var(--muted);text-wrap:pretty}.intro{font-size:14px;color:var(--brand);font-weight:650}label{display:block;font-size:14px;font-weight:650;margin:16px 0 7px}input,select{width:100%}#login button{width:100%;margin-top:20px}small{font-size:12px;line-height:1.5;color:var(--muted)}#login-error{color:#831a1d;font-weight:600;min-height:20px}#tools{position:fixed;left:20px;top:94px;width:290px;background:var(--surface);padding:18px;border-radius:12px;max-height:calc(100dvh - 300px);overflow:auto}#tools p{font-size:13px;margin:10px 0}.tool-heading{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}.tool-heading strong{font-size:20px}.tool-heading span{font-size:13px;color:var(--muted)}details{border-top:1px solid var(--line);padding:12px 0}summary{cursor:pointer;font-size:14px;font-weight:650;min-height:24px}.colors{display:flex;flex-wrap:wrap;gap:6px}.colors button{flex:1 0 42%;font-size:13px}.answer-row{display:flex;gap:8px}.answer-row input{min-width:0}#day{width:100%;font-size:13px}#metrics{position:fixed;right:20px;top:94px;width:310px;max-height:calc(100dvh - 120px);overflow:auto;background:var(--surface);padding:20px;border-radius:12px;z-index:20}h2{font-size:19px;line-height:1.3;margin:0 0 16px}dl{margin:0}dl div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding:9px 0;font-size:13px}dd{margin:0;font-variant-numeric:tabular-nums;font-weight:700}#metrics button{margin-top:10px;width:100%;font-size:13px}#metrics small{display:block;margin-top:12px}#metrics p{font-size:12px}#controls{position:fixed;bottom:48px;left:24px;right:24px;display:flex;justify-content:space-between;align-items:end;pointer-events:none}#controls button{pointer-events:auto;touch-action:none;user-select:none;-webkit-user-select:none;background:var(--surface)}.pad{display:grid;grid-template-columns:repeat(3,52px);gap:5px}.pad button{font-size:24px;padding:6px}.pad button[data-dir=up]{grid-column:2}.pad button[data-dir=left]{grid-column:1}.actions{display:flex;gap:8px}footer{position:fixed;bottom:0;width:100%;text-align:center;font-size:12px;padding:8px;background:var(--surface);color:var(--muted)}@media(max-width:700px){header{padding:10px 16px;gap:10px;min-height:64px}header a{font-size:25px}header #connection{font-size:12px}header button{font-size:12px;padding:8px}#entry{top:64px;width:100%;padding:24px;max-width:420px;background:var(--surface)}h1{font-size:2.1rem}#tools{top:78px;left:12px;width:235px;padding:12px;max-height:calc(100dvh - 270px)}#metrics{right:12px;top:78px;width:min(310px,calc(100vw - 24px));max-height:calc(100dvh - 100px)}#controls{left:12px;right:12px;bottom:42px}footer{font-size:10px}.actions{flex-direction:column}}@media(prefers-reduced-motion:reduce){button:active{transform:none}}header a small{display:block;font-size:11px;line-height:1.2;letter-spacing:0;font-weight:500;color:var(--muted)}
