@import "https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&family=Nunito:wght@400;600;700;800&display=swap";:root{--grape:#8b5cf6;--grape-dark:#6d3bf0;--bubble:#ff5fa2;--mint:#22c79b;--mint-dark:#12a87e;--coral:#ff7a59;--coral-dark:#f2603e;--sun:#ffd23f;--ink:#2b2140;--ink-soft:#6b5e85;--cloud:#fff;--sky-1:#f3ecff;--sky-2:#e7f6ff;--card-shadow:0 14px 0 #2b21401a;--sticker:6px 6px 0 var(--ink)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;margin:0;padding:0}body{color:var(--ink);background:radial-gradient(120% 80% at 15% 0%, #ffe9f4 0%, transparent 55%), radial-gradient(120% 90% at 90% 10%, #e4f5ff 0%, transparent 55%), linear-gradient(160deg, var(--sky-1), var(--sky-2));justify-content:center;align-items:center;min-height:100dvh;padding:16px;font-family:Nunito,system-ui,sans-serif;display:flex}.phone{border:4px solid var(--ink);background:linear-gradient(175deg,#fff,#fbf7ff);border-radius:38px;flex-direction:column;width:100%;max-width:400px;min-height:760px;padding:18px 18px 26px;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 60px #2b214047,inset 0 0 0 3px #fff}@media (width<=440px){body{padding:0}.phone{min-height:100dvh;box-shadow:none;border:none;border-radius:0;max-width:none;padding:14px 16px 26px}}.topbar{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.brand{align-items:center;gap:8px;display:flex}.brand .logo{background:var(--grape);width:38px;height:38px;box-shadow:3px 3px 0 var(--ink);border-radius:12px;place-items:center;display:grid;transform:rotate(-4deg)}.brand .logo svg{width:24px;height:24px}.brand h1{letter-spacing:.3px;margin:0;font-family:Fredoka;font-size:22px;font-weight:700}.brand h1 span{color:var(--bubble)}.brand .tag{color:var(--ink-soft);margin-top:-3px;font-family:Fredoka;font-size:11px;font-weight:600;display:block}.kidlink{color:var(--ink);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);white-space:nowrap;background:#efe7ff;border-radius:999px;padding:7px 12px;font-family:Fredoka;font-size:12.5px;font-weight:600;text-decoration:none}:focus-visible{outline:3px solid var(--grape-dark);outline-offset:3px}.streak{background:var(--sun);border:3px solid var(--ink);box-shadow:3px 3px 0 var(--ink);border-radius:16px;justify-content:center;align-items:center;gap:8px;margin:4px 0 14px;padding:7px 12px;font-family:Fredoka;font-size:14px;font-weight:600;display:flex}.streak b{font-size:16px}.stage{text-align:center;flex-direction:column;flex:1;justify-content:flex-start;align-items:center;display:flex}.headline{margin:8px 8px 4px;font-family:Fredoka;font-size:26px;font-weight:700;line-height:1.1}.subline{color:var(--ink-soft);margin:0 10px 14px;font-size:15px;font-weight:600}.timerbox{border:3px solid var(--coral-dark);box-shadow:4px 4px 0 var(--ink);background:#fff3ec;border-radius:20px;width:100%;margin-bottom:14px;padding:14px 16px}.timerbox .lab{color:var(--coral-dark);text-transform:uppercase;letter-spacing:.5px;font-family:Fredoka;font-size:13px;font-weight:600}.timerbox .count{color:var(--ink);margin:2px 0 8px;font-family:Fredoka;font-size:42px;font-weight:700;line-height:1}.dots{justify-content:center;align-items:center;gap:8px;display:flex}.dots .dot{border:2.5px solid var(--ink);background:#fff;border-radius:50%;width:16px;height:16px;transition:all .2s}.dots .dot.lit{background:var(--coral)}.dots .dot.lit.esc{background:var(--bubble)}.dots .lbl{color:var(--ink-soft);margin-left:4px;font-size:12px;font-weight:700}.parentalert{background:var(--bubble);color:#fff;border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);text-align:left;border-radius:16px;align-items:center;gap:8px;margin-bottom:14px;padding:10px 14px;font-size:13.5px;font-weight:800;display:none}.parentalert.show{display:flex}.actions{width:100%;margin-top:auto}.bigbtn{border:4px solid var(--ink);color:#fff;cursor:pointer;width:100%;box-shadow:var(--sticker);border-radius:22px;justify-content:center;align-items:center;gap:10px;padding:18px;font-family:Fredoka;font-size:21px;font-weight:700;transition:transform 80ms,box-shadow 80ms;display:flex}.bigbtn:active{box-shadow:2px 2px 0 var(--ink);transform:translate(4px,4px)}.bigbtn:disabled{opacity:.6;cursor:not-allowed}.bigbtn.out{background:var(--coral)}.bigbtn.in{background:var(--mint)}.bigbtn.snooze{color:var(--ink);box-shadow:4px 4px 0 var(--ink);background:#fff;border-width:3px;margin-top:10px;padding:12px;font-size:15px}.logwrap{text-align:left;width:100%;margin-top:6px}.logwrap h3{color:var(--ink-soft);margin:0 0 8px;font-family:Fredoka;font-size:15px}.logrow{background:#fff;border:2.5px solid #eee7f7;border-radius:13px;align-items:flex-start;gap:9px;margin-bottom:7px;padding:8px 10px;display:flex}.logrow .ic{font-size:16px;line-height:1.4}.logrow .txt{font-size:13px;font-weight:700}.logrow .time{color:var(--ink-soft);font-size:11px;font-weight:700}.logempty{color:var(--ink-soft);text-align:center;padding:18px;font-size:13px;font-weight:600}.hero{border:4px solid var(--ink);box-shadow:var(--sticker);text-align:center;border-radius:24px;margin-bottom:14px;padding:18px;transition:background .3s}.hero.in{background:linear-gradient(170deg,#e8fbf3,#d3f6e8)}.hero.out{background:linear-gradient(170deg,#fff1ea,#ffe2d6)}.hero .badge{border:3px solid var(--ink);box-shadow:3px 3px 0 var(--ink);border-radius:999px;align-items:center;gap:7px;margin-bottom:10px;padding:6px 14px;font-family:Fredoka;font-size:14px;font-weight:700;display:inline-flex}.hero.in .badge{background:var(--mint);color:#fff}.hero.out .badge{background:var(--coral);color:#fff}.hero .big{margin:2px 6px 4px;font-family:Fredoka;font-size:23px;font-weight:700;line-height:1.12}.hero .sub{color:var(--ink-soft);margin:0;font-size:14px;font-weight:600}.stats{gap:10px;margin-bottom:14px;display:flex}.stat{border:3px solid var(--ink);box-shadow:3px 3px 0 var(--ink);text-align:center;background:#fff;border-radius:16px;flex:1;padding:11px}.stat .n{font-family:Fredoka;font-size:24px;font-weight:700;line-height:1}.stat .l{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.4px;margin-top:3px;font-size:11px;font-weight:700}.stat.alert .n{color:var(--bubble)}.escbar{background:var(--bubble);color:#fff;border:3px solid var(--ink);box-shadow:3px 3px 0 var(--ink);border-radius:14px;align-items:center;gap:8px;margin-bottom:14px;padding:9px 13px;font-size:13px;font-weight:800;display:none}.escbar.show{display:flex}.hint{color:var(--ink-soft);text-align:center;margin:8px 4px 0;font-size:11.5px;font-weight:700}.toastzone{pointer-events:none;z-index:40;flex-direction:column;align-items:center;gap:8px;padding:0 14px;display:flex;position:absolute;top:10px;left:0;right:0}.toast{border:3px solid var(--ink);opacity:0;background:#fff;border-radius:16px;align-items:center;gap:10px;width:100%;max-width:360px;padding:11px 13px;transition:transform .4s cubic-bezier(.2,1.4,.5,1),opacity .3s;display:flex;transform:translateY(-140%);box-shadow:0 8px #2b21402e}.toast.show{opacity:1;transform:translateY(0)}.toast .picon{background:var(--grape);width:34px;height:34px;box-shadow:2px 2px 0 var(--ink);border-radius:10px;flex:none;place-items:center;display:grid}.toast .picon svg{width:20px;height:20px}.toast .pt{text-align:left}.toast .pt .app{color:var(--grape-dark);font-family:Fredoka;font-size:12px;font-weight:700}.toast .pt .msg{font-size:13px;font-weight:700;line-height:1.2}.toast.parent .picon{background:var(--bubble)}.toast.parent .pt .app{color:var(--bubble)}.loginwrap{flex-direction:column;flex:1;justify-content:center;gap:14px;width:100%;display:flex}.loginwrap h2{text-align:center;margin:0 0 4px;font-family:Fredoka;font-size:22px}.loginwrap label{color:var(--ink-soft);margin-bottom:4px;font-family:Fredoka;font-size:13px;font-weight:600;display:block}.loginwrap input{border:3px solid var(--ink);border-radius:14px;width:100%;margin-bottom:12px;padding:12px 14px;font-family:Nunito;font-size:16px}.loginwrap .err{color:var(--coral-dark);text-align:center;min-height:18px;font-size:13px;font-weight:700}.hintcard{color:var(--ink-soft);text-align:left;background:#fff;border:3px solid #eee7f7;border-radius:16px;margin-bottom:14px;padding:12px 14px;font-size:13px;font-weight:600}.hintcard b{color:var(--ink)}.enablebtn{border:3px solid var(--ink);background:var(--grape);color:#fff;cursor:pointer;width:100%;box-shadow:3px 3px 0 var(--ink);border-radius:16px;margin-top:8px;padding:10px;font-family:Fredoka;font-size:14px;font-weight:700}
