:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#faf6ee;--surface:#fff;--surface-2:#f0ece2;--ink:#1f2a33;--ink-soft:#4b5b67;--line:#ddd6c6;--line-strong:#7c8993;--accent:#1f6f5f;--accent-hover:#185a4d;--accent-ink:#fff;--accent-soft:#e0f0ea;--sky:#e4eff8;--sky-line:#86aecb;--water:#4f8fbf;--danger:#a63a2a;--danger-soft:#fbe8e4;--attn:#7a4400;--attn-soft:#fff0d6;--focus:#1b5fb8;--shadow-1:0 1px 2px #1f2a331a, 0 2px 6px #1f2a330f;--shadow-2:0 2px 0 #1f2a331a, 0 8px 18px #1f2a331a;--s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s5:1.5rem;--s6:2rem;--s7:3rem;--r-sm:10px;--r-md:16px;--r-lg:24px;--r-pill:999px;--t-sm:.9375rem;--t-base:1.125rem;--t-lg:1.375rem;--t-xl:1.75rem;--t-2xl:2.25rem;--t-3xl:clamp(2rem, 1.2rem + 3.5vw, 3rem);--t-option:clamp(1.25rem, 1rem + 1.2vw, 1.75rem);--tap:3.5rem;--tap-child:5.5rem;--tap-field:3rem}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#151c22;--surface:#1e272f;--surface-2:#28333c;--ink:#eaeff2;--ink-soft:#a9b7c1;--line:#33414b;--line-strong:#7f909c;--accent:#5fc3a8;--accent-hover:#7fd2ba;--accent-ink:#0c241d;--accent-soft:#1d3a33;--sky:#22384a;--sky-line:#4f7da1;--water:#5f9fd0;--danger:#ff9b88;--danger-soft:#3a2420;--attn:#f0c27a;--attn-soft:#3a2f1c;--focus:#8ec1ff;--shadow-1:0 1px 2px #0006;--shadow-2:0 2px 0 #00000059, 0 8px 18px #00000059}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:system-ui,Segoe UI,Roboto,sans-serif;font-size:var(--t-base);-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;line-height:1.5}h1{font-size:var(--t-2xl);margin:var(--s2) 0 var(--s4);line-height:1.15}h2{font-size:var(--t-xl);margin:var(--s5) 0 var(--s2);line-height:1.2}h3{font-size:var(--t-lg);margin:0 0 var(--s2);line-height:1.25}p,ul{margin:0 0 var(--s3)}hr{border:0;border-top:2px solid var(--line);margin:var(--s5) 0;width:100%}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}@media (prefers-reduced-motion:reduce){*{transition:none!important}}button{font:inherit;min-height:var(--tap);padding:var(--s2) var(--s5);border:2px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1);cursor:pointer;touch-action:manipulation;font-weight:600;transition:background-color .12s,transform 60ms}button:hover:not(:disabled){background:var(--surface-2)}button:active:not(:disabled){box-shadow:none;transform:translateY(1px)}button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-size:var(--t-lg);min-height:4.5rem}button.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}button.danger{border-color:var(--danger);color:var(--danger)}button.danger:hover:not(:disabled){background:var(--danger-soft)}button.quiet{box-shadow:none;color:var(--accent);background:0 0;border-color:#0000}button.quiet:hover:not(:disabled){background:var(--accent-soft)}.show-password{min-width:var(--tap);min-height:var(--tap);justify-self:start}input{font:inherit;width:100%;min-height:var(--tap-field);padding:var(--s2) var(--s3);border:2px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--ink)}input::placeholder{color:var(--ink-soft);opacity:.8}input:focus-visible{border-color:var(--focus)}.form label{gap:var(--s1);font-weight:600;font-size:var(--t-sm);text-align:left;display:grid}.form label input{font-weight:400;font-size:var(--t-base)}.form{gap:var(--s4);display:grid}.form section{margin-bottom:var(--s2)}.row{gap:var(--s3);flex-wrap:wrap;align-items:center;display:flex}.row input{flex:12rem;width:auto}.hint{color:var(--ink-soft);font-size:var(--t-sm);margin:0 0 var(--s3)}.notice{background:var(--sky);border-left:4px solid var(--sky-line);border-radius:var(--r-sm);padding:var(--s3) var(--s4);margin:var(--s3) 0}p[role=alert]{background:var(--danger-soft);color:var(--danger);border-left:4px solid var(--danger);border-radius:var(--r-sm);padding:var(--s3) var(--s4);margin:0;font-weight:600}p[role=status]{background:var(--accent-soft);color:var(--ink);border-left:4px solid var(--accent);border-radius:var(--r-sm);padding:var(--s3) var(--s4);margin:0 0 var(--s3)}.banner.warn{background:var(--attn-soft);color:var(--attn);border-left-color:var(--attn);font-weight:600}.card{background:var(--surface);border:1px solid var(--line);padding:var(--s4) var(--s5);box-shadow:var(--shadow-1);border-radius:20px}.card ul{gap:var(--s1);margin:0;padding-left:1.2rem;display:grid}.pill{background:var(--attn-soft);color:var(--attn);border-radius:var(--r-pill);padding:0 var(--s3);font-size:var(--t-sm);font-weight:600;display:inline-block}:root{--pad:var(--s4)}@media (min-width:768px){:root{--pad:var(--s6)}}.screen{min-height:100%;padding:var(--pad) var(--pad) var(--s6);flex-direction:column;display:flex}.center{text-align:center;justify-content:center;align-items:center}.big{font-size:var(--t-lg)}.huge{font-size:var(--t-3xl);margin:var(--s2) 0;font-weight:700;line-height:1.1}.narrow{text-align:center;max-width:26rem}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);width:100%;max-width:26rem;box-shadow:var(--shadow-2);padding:var(--s5);text-align:left}.auth-card h1{font-size:var(--t-xl);margin-top:0}.auth-card .form{margin-bottom:var(--s3)}.auth-card .form button{width:100%}.auth-card>button{width:100%;margin-top:var(--s2)}.session-bar{gap:var(--s2) var(--s4);padding:var(--s3) var(--pad);border-top:1px solid var(--line);background:var(--surface-2);color:var(--ink-soft);font-size:var(--t-sm);flex-wrap:wrap;align-items:center;display:flex}.session-bar p{margin:0}.session-bar button{min-height:48px}.account{padding:var(--pad);max-width:30rem}.corner-button{top:var(--s3);right:var(--s3);min-height:var(--tap);font-size:var(--t-sm);padding:var(--s2) var(--s4);box-shadow:none;background:0 0;position:absolute}.corner-button.left{right:auto;left:var(--s3)}.tiles-screen{justify-content:center;align-items:center;gap:var(--s4);padding-top:5rem;position:relative}.hello{font-size:var(--t-3xl);text-align:center}.tile-grid{gap:var(--s4);grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));width:100%;max-width:46rem;display:grid}.tile{min-height:8rem;font-size:var(--t-xl);background:var(--sky);border-color:var(--sky-line);border-radius:var(--r-lg);box-shadow:var(--shadow-2);font-weight:700}.tile:hover:not(:disabled){background:var(--sky);filter:brightness(.97)}.child{padding-bottom:0}.child-header{justify-content:space-between;align-items:center;gap:var(--s3);min-height:var(--tap);display:flex}.child-header .corner-button{position:static}.child-name{font-size:var(--t-lg);background:var(--sky);border-radius:var(--r-pill);padding:var(--s1) var(--s4);font-weight:600}.child-main{text-align:center;justify-content:center;align-items:center;gap:var(--s4);width:100%;max-width:46rem;padding:var(--s4) 0;flex-direction:column;flex:1;margin:0 auto;display:flex}.child h1{font-size:var(--t-3xl);text-wrap:balance;margin:0}.options{gap:var(--s3);grid-template-columns:1fr;width:100%;display:grid}.options.grid{grid-template-columns:repeat(2,1fr)}@media (min-width:768px){.options,.options.grid{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}}.option{min-height:var(--tap-child);font-size:var(--t-option);border-radius:var(--r-lg);box-shadow:var(--shadow-2);font-weight:600}.option.suggested{background:var(--accent-soft);border:3px solid var(--accent)}.gentle{color:var(--accent);background:var(--accent-soft);border-radius:var(--r-pill);padding:var(--s1) var(--s4);font-size:var(--t-sm);margin:0;font-weight:600}.timer{font-size:var(--t-lg);color:var(--ink-soft);margin:0}.countdown{width:100%}.bar{border:2px solid var(--line-strong);border-radius:var(--r-pill);background:var(--surface);height:1.75rem;overflow:hidden}.bar-fill{background:var(--water);border-radius:var(--r-pill);height:100%;transition:width 1s linear}.child-footer{margin:auto calc(var(--pad) * -1) 0;padding:var(--s3) var(--pad) calc(var(--s3) + env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--line);z-index:2;justify-content:center;display:flex;position:sticky;bottom:0}.fresh{width:100%;max-width:24rem;min-height:4.5rem;font-size:var(--t-lg);background:var(--accent-soft);border:2px solid var(--accent);color:var(--accent);border-radius:var(--r-lg);font-weight:700}.fresh:hover:not(:disabled){background:var(--accent-soft);filter:brightness(.96)}.pinpad{flex-direction:column;align-items:center;width:100%;display:flex}.pin-dots{gap:var(--s4);margin:var(--s2) 0;display:flex}.dot{border:2px solid var(--line-strong);background:var(--surface);border-radius:50%;width:1.25rem;height:1.25rem}.dot.filled{background:var(--accent);border-color:var(--accent)}.pin-msg{min-height:2.5rem;margin:var(--s1) 0 var(--s2);padding:0 var(--s4);color:var(--attn);border-radius:var(--r-sm);font-weight:600;line-height:2.5rem}.pin-msg.wrong{background:var(--attn-soft)}.pin-keys{gap:var(--s3);grid-template-columns:repeat(3,minmax(0,5rem));display:grid}.pin-keys button{min-height:4.25rem;font-size:var(--t-xl);border-radius:var(--r-lg);box-shadow:var(--shadow-2);font-variant-numeric:tabular-nums;padding:0}.pin-keys .quiet{font-size:var(--t-sm);box-shadow:none}.parent{width:100%;max-width:72rem;margin:0 auto;position:relative}.parent-header{align-items:center;gap:var(--s2) var(--s4);margin-bottom:var(--s3);flex-wrap:wrap;display:flex}.parent-header h1{font-size:var(--t-xl);flex:1;margin:0}.parent-header .corner-button{margin-left:auto;position:static}.tabs{gap:var(--s1);padding:var(--s1);background:var(--surface-2);border-radius:var(--r-pill);flex-basis:100%;order:3;display:flex}.tab{min-height:3rem;padding:var(--s1) 0;white-space:nowrap;box-shadow:none;border-radius:var(--r-pill);font-size:var(--t-sm);background:0 0;border-color:#0000;flex:1}.tab.active,.tab.active:hover:not(:disabled){background:var(--accent);color:var(--accent-ink)}@media (min-width:768px){.tabs{flex-basis:auto;order:0}.tab{padding:var(--s1) var(--s5);font-size:var(--t-base);flex:none}}.day-list{gap:var(--s2);margin:var(--s3) 0;padding-bottom:var(--s1);display:flex;overflow-x:auto}.day-pill{min-height:3rem;padding:var(--s1) var(--s4);border-radius:var(--r-pill);box-shadow:none;flex:none}.day-pill.active,.day-pill.active:hover:not(:disabled){background:var(--accent-soft);border:3px solid var(--accent);font-weight:700}.summary-cards{gap:var(--s4);grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));display:grid}.week-grid{gap:var(--s3);flex-direction:column;display:flex}.week-row{gap:var(--s3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s3) var(--s4);box-shadow:var(--shadow-1);grid-template-columns:1fr 1fr;align-items:end;display:grid;position:relative}.week-row label{font-size:var(--t-sm);color:var(--ink-soft)}.week-row label input{color:var(--ink)}.week-date{font-weight:700;font-size:var(--t-lg);grid-column:1/-1;align-self:center}.week-row>label:first-of-type{grid-column:1/-1}.toggle{align-items:center;gap:var(--s2);font-size:var(--t-sm);color:var(--ink-soft);order:1;grid-column:1/-1;font-weight:600;display:flex}.toggle span{margin-right:auto}.toggle button{min-width:4rem;min-height:3rem;padding:var(--s1) var(--s4);box-shadow:none}.toggle button.on,.toggle button.on:hover:not(:disabled){background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.saved{top:var(--s3);right:var(--s4);color:var(--accent);font-size:var(--t-sm);order:2;font-weight:600;position:absolute}@media (min-width:1000px){.week-row{gap:var(--s3) var(--s4);grid-template-columns:9rem 1fr 8.5rem auto 8.5rem 4rem}.week-date,.week-row>label:first-of-type{grid-column:auto}.toggle{order:0;grid-column:auto}.toggle span{margin-right:var(--s1)}.saved{order:0;align-self:center;position:static}}.form-actions{margin-top:var(--s4)}.chips{margin:var(--s2) 0 var(--s3);gap:var(--s2);flex-wrap:wrap;padding:0;list-style:none;display:flex}.chips li{background:var(--sky);border:1px solid var(--sky-line);border-radius:var(--r-pill);padding:var(--s1) var(--s1) var(--s1) var(--s4);align-items:center;gap:var(--s2);display:flex}.chip-x{min-width:2.75rem;min-height:2.75rem;box-shadow:none;border-radius:50%;padding:0}.data section{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s4) var(--s5);margin-bottom:var(--s4);box-shadow:var(--shadow-1)}.data section h2{font-size:var(--t-lg);margin-top:0}.confirm{gap:var(--s3);flex-wrap:wrap;align-items:center;display:flex}.confirm .big{margin:var(--s2) 0;flex-basis:100%}.admin{width:100%;max-width:56rem;margin:0 auto}.admin-head{align-items:center;gap:var(--s2) var(--s4);margin-bottom:var(--s3);border-bottom:4px solid var(--ink);padding-bottom:var(--s2);flex-wrap:wrap;display:flex}.admin-head h1{font-size:var(--t-xl);flex:1;margin:0}.admin-head p{margin:0}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s4) var(--s5);margin:var(--s4) 0;box-shadow:var(--shadow-1)}.panel h2{font-size:var(--t-lg);margin-top:0}.panel .form{max-width:28rem}.list{gap:var(--s3);margin:0;padding:0;list-style:none;display:grid}.list-item{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s4);box-shadow:var(--shadow-1);gap:var(--s3);display:grid}.list-main{align-items:center;gap:var(--s2) var(--s3);font-size:var(--t-lg);flex-wrap:wrap;display:flex}.list-item .form,.list-item .week-view{padding-top:var(--s3);border-top:1px solid var(--line)}.list-item .form{max-width:28rem}.week-view section{border-top:1px solid var(--line);padding:var(--s3) 0}.week-view h3{font-size:var(--t-base);margin:0 0 var(--s1)}.week-nav{align-items:center;gap:var(--s3);margin-bottom:var(--s3);flex-wrap:wrap;display:flex}.week-nav button{min-height:3rem}.dev-note{color:var(--ink-soft);font-size:var(--t-sm);margin:var(--s3) 0 0;text-align:center}.app-name{margin:0 0 var(--s2);color:var(--accent);font-weight:700;font-size:var(--t-base)}.session-section{margin-top:var(--s5)}
