*{box-sizing:border-box}body{margin:0}:root{--red:#e3263a;--red-hi:#ff5a5f;--red-dark:#9c1023;--red-edge:#b8172b;--panel:#e9f3fb;--card:#fff;--ink:#1a1f3a;--muted:#5d6788;--line:#cfdbea;--sky:#a5ebff;--sky2:#d9f6ff;--grass:#5ccf6b;--lcd:#c4e88a;--lcd-ink:#203512;--lcd-dim:#86b05a;--lens:#36a3f0;--yellow:#ffcb05;--display:"Lilita One","Arial Rounded MT Bold",system-ui,sans-serif;--body:"Nunito",system-ui,sans-serif;--mono:"DM Mono",ui-monospace,monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html,body{height:100%}body{background:radial-gradient(120% 70% at 20% 0%,var(--red-hi),var(--red) 45%,var(--red-dark));color:var(--ink);font-family:var(--body);font-size:15px;overflow:hidden}#root{max-width:640px;height:100%;padding-left:max(12px,env(safe-area-inset-left,0px));padding-right:max(12px,env(safe-area-inset-right,0px));flex-direction:column;margin:0 auto;display:flex}button{font:inherit;cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--yellow);outline-offset:1px}.top{align-items:center;gap:10px;padding-block:12px 10px;display:flex}.lens{background:radial-gradient(circle at 35% 35%,#bfe6ff 0 18%,var(--lens) 19% 62%,#1b6fb0 63%);width:42px;height:42px;box-shadow:0 0 0 2px var(--red-dark);border:4px solid #fff;border-radius:50%;flex:none;animation:3s ease-in-out infinite glow}.leds{gap:6px;display:flex}.leds i{border:2px solid var(--red-dark);border-radius:50%;width:10px;height:10px}.leds i:first-child{background:#ff5b5b}.leds i:nth-child(2){background:var(--yellow)}.leds i:nth-child(3){background:#4cd964}.brand{text-align:right;color:#fff;margin-left:auto;line-height:1.1}.brand b{font-family:var(--display);letter-spacing:.5px;text-shadow:0 2px 0 var(--red-dark),0 0 12px #ffffff40;font-size:26px;display:block}.brand small{opacity:.85;font-size:11px}.body{background:linear-gradient(180deg,#f4faff,var(--panel));border:3px solid var(--red-dark);min-height:0;box-shadow:inset 0 2px 0 #fff,0 6px 0 var(--red-dark),0 10px 24px #50000a59;border-radius:14px 14px 4px 4px;flex-direction:column;flex:1;display:flex;overflow:hidden}.pane{overscroll-behavior:contain;flex-direction:column;flex:1;gap:14px;min-height:0;padding:14px;display:flex;overflow-y:auto}.tabs{padding-block:10px calc(10px + env(safe-area-inset-bottom,0px));grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.tabs button{color:#dfe6ff;font-family:var(--display);letter-spacing:.3px;background:linear-gradient(#3a3f5c,#1a1f3a);border:0;border-radius:12px;padding:11px 4px;font-size:18px;transition:transform 80ms;box-shadow:inset 0 2px #ffffff2e,0 4px #0d1024}.tabs button:active{transform:translateY(3px);box-shadow:inset 0 2px #ffffff2e,0 1px #0d1024}.tabs button[aria-selected=true]{background:linear-gradient(180deg,#ffe066,var(--yellow) 55%,#e6a800);color:#3a2a00;box-shadow:inset 0 2px #fff9,0 4px #a87400}.sp{width:var(--s,64px);height:var(--s,64px);image-rendering:pixelated;background-image:url(/dex.png);background-repeat:no-repeat;background-size:calc(var(--s,64px)*20) auto;background-position:calc(var(--x)*var(--s,64px)*-1) calc(var(--y)*var(--s,64px)*-1);flex:none;display:block}.sp.off{filter:brightness(0);opacity:.18}.lcd{background:repeating-linear-gradient(0deg,#0000000a 0 2px,transparent 2px 4px),radial-gradient(120% 120% at 30% 20%,#dcf5a8,var(--lcd) 60%,#a9cf6c);color:var(--lcd-ink);font-family:var(--display);border:10px solid #2b2d35;border-radius:6px 6px 6px 24px;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:12px;display:grid;box-shadow:inset 0 0 18px #20351259}.lcd .sp{--s:112px}.lcd .nm{color:var(--lcd-dim);font-size:13px}.lcd .big{font-size:38px;line-height:1}.lcd .next{flex-direction:column;gap:4px;font-size:13px;display:flex}.seg{background:var(--lcd-dim);height:10px;display:block}.seg i{background:var(--lcd-ink);height:100%;display:block}.label{font-family:var(--display);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:13px}.meta{color:var(--muted);font-size:13px}.stats{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.stat{background:var(--card);box-shadow:0 3px 0 var(--line),0 6px 14px #1a1f3a14;border:0;border-radius:12px;flex-direction:column;padding:8px 10px;display:flex}.stat b{font-family:var(--display);color:var(--red);font-variant-numeric:tabular-nums;font-size:30px;line-height:1.1}.stat span{color:var(--muted);font-size:11px}.sec-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}h2{font-family:var(--display);color:var(--ink);margin:0;font-size:24px}.hp{font-family:var(--display);background:var(--ink);color:#fff;border-radius:12px;align-items:center;gap:8px;padding:8px 12px;display:flex}.hp .bar{border:2px solid var(--ink);background:#fff;border-radius:8px;flex:1;height:12px;padding:0;display:block;overflow:hidden;border-color:#fff!important}.hp .bar i{background:linear-gradient(180deg,#8ff09a,var(--grass) 50%,#34a845);height:100%;transition:width .4s;display:block}.hp .bar i.mid{background:var(--yellow)}.hp .bar i.low{background:#ff5b5b}.week{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.day{background:var(--card);box-shadow:0 2px 0 var(--line);color:var(--muted);border:2px solid #0000;border-radius:10px;flex-direction:column;align-items:center;gap:3px;padding:4px 2px;font-size:11px;display:flex}.day i{background:var(--panel);border-radius:3px;align-items:flex-end;width:70%;height:34px;display:flex;overflow:hidden}.day i em{background:linear-gradient(180deg,var(--red-hi),var(--red));width:100%;display:block}.day b{font-family:var(--mono);color:var(--ink);font-size:11px}.day.today{border-color:var(--ink)}.day:disabled{opacity:.4;cursor:default}.grid{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:6px;display:grid}.cell{background:radial-gradient(circle at 50% 40%,var(--sky2),var(--sky));box-shadow:0 2px 0 var(--line);border:2px solid #fff;border-radius:12px;flex-direction:column;align-items:center;padding:2px 0 4px;display:flex;position:relative}.cell .sp{--s:56px}.cell small{font-family:var(--mono);color:var(--muted);font-size:10px}.cell.new{border-color:var(--yellow);box-shadow:0 0 0 2px var(--yellow),0 4px 12px #ffb40080}.cell.locked{background:var(--card)}.cell.locked small{opacity:.6}.dayline{background:linear-gradient(180deg,#2b3150,var(--ink));color:#fff;border-radius:12px;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 10px;display:flex}.dayline .label{color:#b9bcc8}.dayline input{padding:5px 8px}.chipbtn{color:#fff;background:0 0;border:2px solid #4a4c57;border-radius:99px;padding:4px 10px;font-size:13px}.chipbtn[aria-pressed=true]{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.btn{background:linear-gradient(180deg,var(--red-hi),var(--red));color:#fff;box-shadow:inset 0 1px 0 #ffffff59,0 3px 0 var(--red-dark);border:0;border-radius:10px;padding:9px 16px;font-weight:800}.btn:active{box-shadow:0 1px 0 var(--red-dark);transform:translateY(2px)}.btn.sec{background:var(--card);color:var(--ink);border:2px solid var(--line);box-shadow:none}input,textarea,select{font:inherit;color:var(--ink);background:var(--card);border:2px solid var(--line);border-radius:10px;min-width:0;padding:7px 10px}textarea{box-sizing:border-box;width:100%;font-family:var(--mono);min-height:120px;font-size:13px}.box{background:var(--card);box-shadow:0 3px 0 var(--line);border:0;border-radius:12px;flex-direction:column;gap:10px;padding:12px;display:flex}.list{flex-direction:column;gap:8px;display:flex}.ex{background:var(--card);box-shadow:0 3px 0 var(--line),0 6px 14px #1a1f3a0f;border:0;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:8px 10px;padding:10px;display:grid}.ex .sp{--s:48px;background-color:var(--sky);border-radius:50%;box-shadow:inset 0 -4px #00000014}.ex h3{font-family:var(--display);text-transform:capitalize;margin:0;font-size:20px;line-height:1.1}.add{display:flex}.add input{border-right:0;border-radius:10px 0 0 10px;width:96px}.plus{background:linear-gradient(180deg,var(--red-hi),var(--red));color:#fff;border:0;border-radius:0 10px 10px 0;width:42px;font-size:22px;font-weight:800}.chips{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:4px;display:flex}.chip{font-family:var(--mono);background:var(--panel);font-variant-numeric:tabular-nums;border-radius:8px;flex-direction:column;padding:3px 8px;font-size:13px;line-height:1.25;display:flex}.chip small{color:var(--muted);font-size:10px}.chip.last{outline:2px solid var(--ink)}.chip.pr{background:linear-gradient(180deg,#ffe066,var(--yellow))}.chip.pr small:after{content:" PR";color:var(--ink);font-weight:700}.sep{color:var(--line);font-family:var(--mono)}.tag{background:var(--ink);color:var(--yellow);border-radius:3px;padding:1px 6px;font-size:11px}.logs{flex-direction:column;display:flex}.log{border-bottom:1px solid var(--line);font-family:var(--mono);justify-content:space-between;align-items:center;gap:8px;padding:9px 2px;font-size:13px;display:flex}.x{border:2px solid var(--line);color:var(--muted);background:0 0;border-radius:4px;padding:2px 8px;font-size:12px}.empty{color:var(--muted);flex-direction:column;align-items:flex-start;gap:10px;padding:10px 0;display:flex}.lock{color:#ffd9dc;font-size:11px}.finish{border:2px solid var(--yellow);background:linear-gradient(100deg,#fff 40%,#fff6cf);border-radius:14px;align-items:center;gap:10px;padding:10px 12px;display:flex;box-shadow:0 3px #e6b400}.finish .sp{--s:48px}.finish b{font-family:var(--display);font-size:18px}.finish .sp{background-color:var(--sky);border-radius:50%}.btn:disabled{background:var(--line);color:var(--muted);box-shadow:none;cursor:default}.catch{z-index:9;background:#140a0cb8;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.catch .card{background:radial-gradient(120% 120% at 30% 20%,#dcf5a8,var(--lcd) 60%,#a9cf6c);color:var(--lcd-ink);font-family:var(--display);text-align:center;border:10px solid #2b2d35;border-radius:8px;flex-direction:column;align-items:center;gap:6px;max-width:300px;padding:18px 22px;display:flex}.catch .sp{--s:160px;animation:.5s steps(4,end) pop}.catch b{font-size:28px}@keyframes glow{50%{box-shadow:0 0 0 2px var(--red-dark),0 0 18px 4px #78d2ffcc}}@keyframes pop{0%{filter:brightness(4);transform:scale(.2)}to{filter:none;transform:scale(1)}}.toast{left:50%;bottom:calc(80px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--yellow);font-family:var(--display);z-index:8;text-align:center;border-radius:12px;max-width:90vw;padding:9px 16px;font-size:15px;position:fixed;transform:translate(-50%);box-shadow:0 6px 20px #0000004d}@media (width<=420px){.lcd .sp{--s:88px}.lcd .big{font-size:28px}.ex{grid-template-columns:auto 1fr}.add{grid-column:1/-1}.add input{flex:1;width:auto}}@media (prefers-reduced-motion:reduce){.catch .sp,.lens{animation:none}}.login{flex-direction:column;align-items:stretch;gap:12px;width:100%;max-width:340px;margin:auto;display:flex}.login h2{font-size:28px}.login .err{color:var(--red);font-size:13px}.linkbtn{color:var(--muted);background:0 0;border:0;padding:0;font-size:13px;text-decoration:underline}.login .google-btn{justify-content:center;display:flex}.login .google-btn:empty{display:none}.login .legal{text-align:center;font-size:12px}.login .legal a{color:inherit}.ex-info{min-width:0}.ex .cur{color:var(--ink);font-family:var(--mono)}.ex .tag{margin-left:6px}.edit{border:2px solid var(--line);color:var(--muted);background:0 0;border-radius:8px;padding:3px 10px;font-size:12px;font-weight:700}.edit[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.ex .add{grid-column:1/-1}.ex .add input{flex:1;width:auto}.ex.editing{box-shadow:0 0 0 2px var(--ink),0 6px 14px #1a1f3a14}.chips{gap:6px}.chip{flex-direction:row;align-items:baseline;gap:6px;padding:4px 9px;position:relative}.chip.last{background:var(--ink);color:#fff;outline:none}.chip.last small{color:#b9bcc8}.chip-x{background:var(--red);color:#fff;border:0;border-radius:50%;align-self:center;width:20px;height:20px;margin-left:2px;padding:0;font-size:14px;line-height:1}.ex-danger{border-top:1px dashed var(--line);flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:8px;padding-top:8px;display:flex}.btn.danger{color:var(--red);border:2px solid var(--red);box-shadow:none;background:0 0;padding:6px 12px}.dayline-wrap{flex-direction:column;gap:6px;display:flex}.cal{background:var(--card);box-shadow:0 3px 0 var(--line),0 6px 14px #1a1f3a14;border-radius:14px;align-self:flex-start;width:100%;max-width:340px;padding:10px 12px}.cal-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.cal-head b{font-family:var(--display);text-transform:capitalize;font-size:18px}.cal-nav{background:var(--panel);width:34px;height:34px;color:var(--ink);border:0;border-radius:8px;font-size:20px}.cal-nav:disabled{opacity:.3;cursor:default}.cal-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.cal-wd{color:var(--muted);padding-bottom:2px;font-size:11px;font-weight:700}.cal-day{aspect-ratio:1;color:var(--ink);font-family:var(--mono);background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;font-size:13px;display:flex;position:relative}.cal-day:hover:not(:disabled){background:var(--panel)}.cal-day:disabled{color:var(--line);cursor:default}.cal-day.today{box-shadow:inset 0 0 0 2px var(--ink)}.cal-day.done:after{content:"";background:var(--grass);border-radius:50%;width:5px;height:5px;position:absolute;bottom:3px}.cal-day.caught:after{background:var(--red);width:6px;height:6px}.cal-day.sel{background:var(--yellow);font-weight:700}.cal-legend{align-items:center;gap:6px;margin-top:6px;font-size:12px;display:flex}.cal-legend .dot{background:var(--grass);border-radius:50%;width:7px;height:7px;display:inline-block}.cal-legend .dot.ball{background:var(--red);margin-left:8px}@media (width<=420px){.ex{grid-template-columns:auto 1fr auto}}.chip.pr,.chip.pr.last{background:var(--panel);color:var(--ink)}.chip.pr.last{background:var(--ink);color:#fff}.chip.pr small:after{color:var(--red)}.chip.pr.last small{color:#b9bcc8}.chip.pr.last small:after{color:var(--yellow)}.ex.done{box-shadow:0 0 0 2px var(--grass),0 6px 14px #1a1f3a0f}.ex .chips .label{font-size:11px}.edit{min-width:36px;font-size:16px;line-height:1}.cap:first-letter{text-transform:uppercase}.cal{max-width:none}.day-catch{align-items:center;gap:8px;display:flex}.day-catch .sp{--s:48px;background:var(--sky);border-radius:50%}.tabs button{font-size:15px}@media (width<=380px){.tabs button{font-size:13px}}.cal-day.sel,.cal-day.sel:hover:not(:disabled){background:var(--yellow);font-weight:700}
