@font-face{font-family:Fredoka;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/fredoka.woff2) format("woff2")}@font-face{font-family:Nunito;font-style:normal;font-weight:500 800;font-display:swap;src:url(/fonts/nunito.woff2) format("woff2")}:root{--round: "Fredoka", ui-rounded, "SF Pro Rounded", system-ui, sans-serif;--read: "Nunito", ui-rounded, "SF Pro Rounded", system-ui, sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;overscroll-behavior:none}body{background:var(--bgDeep);font:500 15px/1.5 var(--read);color:var(--dim);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;touch-action:none}canvas{display:block}#c{position:fixed;inset:0}.dogview #c,.dogview .layer{filter:url(#dogvision)}#hud{position:fixed;top:calc(10px + env(safe-area-inset-top));right:calc(14px + env(safe-area-inset-right));font:600 12px var(--round);color:var(--dim);opacity:.7;pointer-events:none}#gate{position:fixed;top:calc(10px + env(safe-area-inset-top));left:calc(10px + env(safe-area-inset-left));width:40px;height:40px;padding:0;border:0;border-radius:50%;background:none;cursor:pointer;touch-action:none}#gate:before{content:"";position:absolute;inset:13px;border-radius:50%;background:var(--dim);opacity:.35}#gate:after{content:"";position:absolute;inset:4px;border-radius:50%;border:3px solid var(--ink);opacity:0;transform:scale(.4);transition:opacity .15s,transform .15s}#gate.holding:after{opacity:.8;transform:scale(1);transition:transform 2s linear,opacity .2s}#gate[hidden]{display:none}.layer{position:fixed;inset:0;overflow-y:auto;touch-action:pan-y;padding:16px;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:color-mix(in srgb,var(--bgDeep) 92%,transparent);-webkit-user-select:none;user-select:none}.layer[hidden],.card[hidden]{display:none}.card{max-width:440px;margin:0 auto;padding:22px 20px;border-radius:22px;background:var(--card);border:1px solid var(--line);text-align:center}h1{margin:0 0 6px;font:600 26px var(--round);color:var(--ink)}h2{margin:22px 0 8px;font:600 15px var(--round);color:var(--dim);text-transform:lowercase;letter-spacing:.02em}.logo{font-size:38px;color:var(--target)}p{margin:6px 0}.ink{color:var(--ink)}.big{font:600 22px var(--round);color:var(--ink)}.note{font-size:13px}small{display:block;font-size:12px}button{font:600 16px var(--round);color:var(--bgDeep);background:var(--target);border:0;border-radius:14px;padding:11px 20px;margin:6px 3px;cursor:pointer;touch-action:manipulation}button.quiet{background:none;color:var(--ink);border:1px solid var(--line)}button:active{transform:scale(.97)}#dogName{display:block;width:100%;margin:0 0 8px;padding:10px 14px;border-radius:14px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:600 16px var(--round);text-align:center;-webkit-user-select:text;user-select:text;touch-action:manipulation}#dogName::placeholder{color:var(--dim)}#savePaint{margin-top:10px}.seg{display:flex;gap:6px;justify-content:center}.seg button{flex:1;margin:0;background:none;color:var(--ink);border:1px solid var(--line)}.seg.small{flex-wrap:wrap;justify-content:flex-end;gap:4px}.seg.small button{flex:none;padding:6px 10px;font-size:14px;border-radius:10px}.seg button[aria-pressed=true]{background:var(--targetAlt);border-color:var(--targetAlt);color:#fff}#games{display:grid;gap:8px}.game{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center;text-align:left;margin:0;padding:12px 14px;background:var(--bg);color:var(--ink);border:1px solid var(--line)}.game .icon{grid-row:span 2;font-size:32px}.game span:last-child{font:500 13px var(--read);color:var(--dim)}.row{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;padding:8px 0;border-top:1px solid var(--line);color:var(--ink)}.row button{margin:0;flex:none}input[type=range]{flex:1;max-width:200px;accent-color:var(--target);touch-action:none}input[type=checkbox]{width:22px;height:22px;accent-color:var(--target)}#gateKeys{display:flex;justify-content:center;gap:8px;margin:12px 0}#gateKeys button{width:60px;height:60px;margin:0;font-size:24px;background:var(--bg);color:var(--ink)}.nope{animation:nope .35s}@keyframes nope{25%{transform:translate(-8px)}75%{transform:translate(8px)}}#cardCal.wide{max-width:none;min-height:100%;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:20px;background:none;border:0;padding:0}#cardBox{flex:none;border:3px solid var(--target);border-radius:3.2mm;background:color-mix(in srgb,var(--target) 10%,transparent)}.cal-do{max-width:320px}.cal-do .row{border:0}.cal-do .row input{max-width:none}
