:root{color-scheme:light;--page: #f3f6f0;--surface: #fff;--ink: #202b23;--muted: #46584a;--primary: #28583c;--on-primary: #fff;--edge: #677969;--focus: #28583c}:root[data-theme=cyber]{color-scheme:dark;--page: #090a0f;--surface: #14161f;--ink: #fff;--muted: #bac1d1;--primary: #fcee09;--on-primary: #090a0f;--edge: #8f9aac;--focus: #00f0ff}:root[data-theme=night]{color-scheme:dark;--page: #10151e;--surface: #1a2332;--ink: #f3f6fc;--muted: #bec9dc;--primary: #c2dcff;--on-primary: #142238;--edge: #899bb8;--focus: #c2dcff}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--page);color:var(--ink);font:1rem/1.55 system-ui,sans-serif}main{max-width:52rem;margin:auto;padding:clamp(1rem,4vw,2rem)}header,.actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:end}header{justify-content:space-between}h1,h2,p{margin:0 0 .65rem}.eyebrow{color:var(--muted);font-size:.75rem;letter-spacing:.14em;font-weight:700}section{background:var(--surface);border:1px solid var(--edge);border-radius:1rem;margin:.9rem 0;padding:1rem}form{display:grid;gap:.65rem;margin-block:.75rem}label{display:grid;gap:.22rem;color:var(--muted);font-size:.92rem;min-width:0}input,select,button{font:inherit;min-height:44px;max-width:100%;border:1px solid var(--edge);border-radius:.55rem;padding:.42rem .65rem}input,select,.secondary{background:var(--surface);color:var(--ink)}button{font-weight:650;background:var(--primary);color:var(--on-primary);cursor:pointer}button:disabled{cursor:wait}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}ol,ul{padding-left:1.4rem}li{padding:.3rem;overflow-wrap:anywhere}#status{min-height:1.55rem;color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.65rem}.gallery figure{margin:0;border-radius:.55rem;overflow:hidden;border:1px solid var(--edge)}.gallery img{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block}.gallery figcaption{padding:.4rem .55rem;color:var(--muted);overflow-wrap:anywhere}body.pin-mode{color-scheme:dark;background:radial-gradient(ellipse at 50% 12%,#27382d,#111d18 68%);--ink: #fff6e5;--muted: #d7cab4;--primary: #e1c28c;--on-primary: #19170f;--surface: #233127;--edge: #7b826a;--focus: #f8dca6;min-height:100dvh}.pin-screen{max-width:25rem;margin:clamp(1rem,10dvh,5rem) auto 0;padding:0;text-align:center;background:transparent;border:0}.pin-kicker{color:var(--primary);font-size:.7rem;letter-spacing:.2em;font-weight:700}.pin-screen h1{font:700 clamp(2.45rem,9vw,3.8rem)/1.04 Georgia,serif;margin:1rem 0}#pinHelp,#pinMessage{color:var(--muted)}.pin-dots{display:flex;justify-content:center;gap:.8rem;margin:1.6rem 0}.pin-dots i{width:.82rem;height:.82rem;border:1px solid var(--edge);border-radius:50%}.pin-dots i.filled{background:var(--primary);border-color:var(--primary)}.pin-keys{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin-inline:auto;max-width:21rem}.pin-keys button{min-height:clamp(3.15rem,9dvh,4.25rem);border-radius:1rem;touch-action:manipulation}.pin-keys button:not(#pinEnter){background:#26372c;color:var(--ink);font-size:1.55rem}.pin-keys button:active:not(:disabled){filter:brightness(1.24)}#pinEnter:disabled{opacity:.6;cursor:default}#pinMessage{min-height:1.55rem;margin-top:1rem}#parentAccess{color:var(--muted);display:inline-block;padding:.55rem}.guest-heading{justify-content:space-between;align-items:center}#pinCopy{margin-top:.65rem}#pinManageStatus{margin:.7rem 0;color:var(--muted)}#pinPeople li{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;padding-left:0}#pinPeople{padding-left:0}#pinPeople li span{flex:1 1 9rem}:root[data-theme=gold]{color-scheme:dark;--page: #0b120f;--surface: #15221a;--ink: #fff7e7;--muted: #ded1b8;--primary: #efd08a;--on-primary: #221a0d;--edge: #a68e5d;--focus: #ffdfa2}:root[data-theme=gold] body,body.pin-mode{background:radial-gradient(ellipse at 10% 0%,#27362b,transparent 55%),radial-gradient(ellipse at 92% 55%,#202b22,transparent 65%),var(--page)}body.pin-mode{--page:#0b120f}:root[data-theme=gold] h1,:root[data-theme=gold] h2,:root[data-theme=gold] h3,body.pin-mode h1,body.pin-mode h2{font-family:Georgia,Times New Roman,serif;letter-spacing:.012em}:root[data-theme=gold] .eyebrow{color:var(--primary);letter-spacing:.18em}:root[data-theme=gold] section,:root[data-theme=gold] dialog{box-shadow:0 10px 28px #0004,inset 0 0 0 3px #ffffff08}main{max-width:60rem;padding-bottom:calc(7rem + env(safe-area-inset-bottom))}header{align-items:center;margin-bottom:1rem}header h1{font-size:clamp(1.75rem,5vw,2.75rem);margin:0}header label{min-width:8rem}h3{margin:.4rem 0 .7rem}button{touch-action:manipulation}button:active:not(:disabled){filter:brightness(1.15)}a{color:var(--primary)}.notice:not(:empty){border:1px solid var(--edge);border-radius:.65rem;padding:.6rem .8rem;background:var(--surface)}#status:empty{display:none}.hero{display:grid;align-content:end;min-height:14rem;padding:clamp(1rem,5vw,2.4rem);overflow:hidden;color:#fff7e7;background:linear-gradient(90deg,#0b120ffa,#0b120fbc 45%,#0b120f38),url(./zelda-Cr6WLUbQ.jpg) center 48% / cover}.hero h2{font:700 clamp(1.85rem,5.8vw,3.2rem)/1.08 Georgia,serif}.hero p{color:#fff1cc;max-width:31rem}.auth-hero{margin:-1rem -1rem 1.15rem;border-radius:.9rem .9rem 0 0;border-bottom:1px solid var(--edge)}.auth-choice{margin-bottom:1rem}.auth-choice button{flex:1 1 9rem}#signin{max-width:40rem;margin-inline:auto}#signin input{width:100%}.pin-screen{background:transparent;box-shadow:none!important}body.pin-mode .pin-screen{padding-top:.6rem}body.pin-mode .pin-kicker:before,body.pin-mode .pin-kicker:after{content:"◇";margin:0 .45rem}.dock{position:fixed;z-index:3;bottom:0;left:50%;transform:translate(-50%);padding:.35rem .25rem calc(.35rem + env(safe-area-inset-bottom));width:min(100%,56rem);display:grid;grid-auto-columns:1fr;grid-auto-flow:column;background:var(--surface);border:1px solid var(--edge);border-radius:.95rem .95rem 0 0;box-shadow:0 -8px 36px #0005}.dock button{background:transparent;color:var(--muted);border:0;border-radius:.55rem;padding:.35rem .15rem;font-size:clamp(.68rem,2.4vw,.95rem);min-height:53px}.dock button span{display:block;font-size:1.35rem;line-height:1.2;margin-bottom:.15rem}.dock [aria-current]{background:var(--primary);color:var(--on-primary)}.timeline,.event-list{list-style:none;padding:0}.timeline li{padding:.68rem .6rem .68rem 1.05rem;border-bottom:1px solid var(--edge);position:relative}.timeline li:before{content:"◇";color:var(--primary);position:absolute;left:0}.event-list li,.record-row{display:flex;gap:.5rem;align-items:center;justify-content:space-between;padding:.55rem 0;border-bottom:1px solid var(--edge)}.event-list li p{color:var(--muted);margin:.25rem 0 0}.event-list li button,.record-row button{flex-shrink:0}.calendar-toolbar,.agenda-heading{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:.8rem 0}.calendar-toolbar button{min-width:44px;font-size:1.3rem;line-height:1}.calendar-toolbar h3{text-align:center;margin:0;font-size:clamp(1.15rem,4vw,1.55rem)}.calendar-toolbar h3:first-letter{text-transform:uppercase}.calendar-week,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.28rem;text-align:center}.calendar-week{color:var(--muted);font-size:.76rem;padding-bottom:.55rem}.calendar-grid{margin-bottom:.8rem}.calendar-day{position:relative;width:100%;padding:.15rem;color:var(--ink);background:var(--surface);font-variant-numeric:tabular-nums}.calendar-day.other-month{color:var(--muted)}.calendar-day[aria-current]{text-decoration:underline;text-underline-offset:.2rem}.calendar-day[aria-pressed=true]{color:var(--on-primary);background:var(--primary)}.calendar-day.has-event:after{content:"";display:block;position:absolute;width:5px;height:5px;border-radius:50%;left:calc(50% - 2.5px);bottom:3px;background:currentColor}.agenda-heading{padding-top:.8rem;border-top:1px solid var(--edge);margin-top:1rem;flex-wrap:wrap}.agenda-heading h3{margin:0}#examForm{border:1px solid var(--edge);border-radius:.65rem;padding:.8rem}#profileTools,#routineTools,#healthTools{display:flex;flex-wrap:wrap;gap:.55rem;margin:.65rem 0}.subsection{border-top:1px solid var(--edge);padding-top:.8rem;margin-top:1rem}textarea{font:inherit;padding:.45rem .65rem;border-radius:.55rem;color:var(--ink);background:var(--surface);border:1px solid var(--edge);min-width:0}dialog{width:min(calc(100% - 1.5rem),36rem);max-height:calc(100dvh - 2rem);border:1px solid var(--edge);border-radius:1rem;background:var(--surface);color:var(--ink);padding:1.15rem}dialog::backdrop{background:#000a}#recordFields{display:grid;gap:.65rem}#recordFields label:has(input[type=checkbox]),fieldset label{display:flex;align-items:center;gap:.55rem}input[type=checkbox]{width:1.2rem;height:1.2rem;min-height:0;accent-color:var(--primary);flex:none}fieldset{flex:1 1 100%;display:flex;gap:.35rem 1rem;flex-wrap:wrap;border:1px solid var(--edge);border-radius:.6rem}fieldset small{width:100%;color:var(--muted)}#photoAdd,#photoMore{margin:.6rem 0}.gallery figcaption small{display:block;padding:.15rem 0}.gallery figcaption button{margin-top:.3rem}.profile-summary{display:flex;gap:.65rem;align-items:center;margin:.7rem 0}.profile-summary img{width:4.75rem;height:4.75rem;object-fit:cover;border-radius:50%;border:1px solid var(--edge)}.chart-grid{stroke:var(--edge);opacity:.65}.chart-label{fill:var(--muted);font-size:12px}.chart-band{fill:var(--primary);opacity:.15}.chart-median{stroke:var(--primary);stroke-width:2px;fill:none}.chart-samples{stroke:var(--ink);stroke-width:2px;fill:none}.chart-point{fill:var(--ink)}summary{cursor:pointer;min-height:44px;padding:.5rem 0}@media(max-width:360px){.calendar-week,.calendar-grid{gap:.12rem}.calendar-day{border-radius:.32rem}main{padding-inline:.68rem}section{padding:.72rem}.auth-hero{margin:-.72rem -.72rem .85rem}}@media print{body.print-vaccines{background:#fff;color:#000}.print-vaccines header,.print-vaccines #status,.print-vaccines .dock,.print-vaccines [data-panel]:not([data-panel=health]),.print-vaccines #healthTools,.print-vaccines #healthHistory>:not(.vaccine-list),.print-vaccines button,.print-vaccines .vaccine-pending{display:none!important}.print-vaccines section{background:#fff;color:#000;box-shadow:none!important;border:0}}:root[data-theme=cyber]{--hero-art: url(./cyberpunk-D-Kjx3XF.jpg) }:root[data-theme=pokemon]{color-scheme:light;--page:#fff5e7;--surface:#fff;--ink:#271722;--muted:#563345;--primary:#af1833;--on-primary:#fff;--edge:#a3455e;--focus:#9b1735;--hero-art:url(./pokemon-CE_CANfG.png)}:root[data-theme=bts]{color-scheme:dark;--page:#190f2c;--surface:#27173d;--ink:#fff5ff;--muted:#dfcdf6;--primary:#dec2ff;--on-primary:#27123e;--edge:#b294d8;--focus:#e9d2ff;--hero-art:url(./bts-BChxjcG-.jpg)}:root[data-theme=blackpink]{color-scheme:dark;--page:#1d1019;--surface:#2c1624;--ink:#fff6fa;--muted:#f6cce1;--primary:#ffafd6;--on-primary:#2e0d21;--edge:#c47e9f;--focus:#ffc9e4;--hero-art:url(./blackpink-CP0vbeJV.webp)}.hero{background:linear-gradient(0deg,#0b120f,#0b120fb0 44%,#0b120f21 85%),linear-gradient(90deg,#0b120fed,#0b120f35 70%),var(--hero-art,url(./zelda-Cr6WLUbQ.jpg)) center 48% / cover}:root[data-theme=sage] .hero,:root[data-theme=night] .hero{background:linear-gradient(135deg,#182f23,#0b120f)}:root[data-theme=gold] #calendar{background:radial-gradient(ellipse at top right,#463d254d,transparent 42%),var(--surface)}:root[data-theme=gold] #calendar .calendar-grid{background:repeating-radial-gradient(ellipse at 72% 42%,transparent 0 11px,#efd08a0d 12px 13px,transparent 14px 20px)}.guest-dock{--surface:#233127 }
