.calendar-app-page{min-height:100dvh;overflow-x:hidden;background:var(--canvas);color:var(--ink)}
.calendar-app-shell{width:min(720px,calc(100% - 32px));max-width:100%;margin:0 auto;padding:32px 0 calc(112px + env(safe-area-inset-bottom))}
.calendar-app-brand{min-width:0;display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}
.calendar-app-home{display:inline-flex;align-items:center;gap:9px;color:var(--navy);font-size:15px;font-weight:700}
.calendar-app-home img{width:33px;height:33px;padding:3px;background:#fff;border:1px solid var(--rule);border-radius:8px;object-fit:contain}
.calendar-app-back{color:var(--blue);font-size:12px;font-weight:700}
.calendar-app-calendar{width:100%;max-width:100%}
.calendar-app-calendar .parenting-calendar-frame{width:100%;min-width:0}
.calendar-app-calendar .parenting-calendar-header{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:20px}
.calendar-app-calendar .parenting-calendar-current{min-width:0;margin-left:0;white-space:nowrap}
.calendar-app-calendar .parenting-calendar-frame{padding:34px;box-shadow:14px 14px 0 var(--wash)}
.calendar-app-calendar .parenting-calendar-frame::before{right:34px}
.calendar-app-calendar .parenting-calendar-header h1{max-width:390px;margin:0;color:var(--navy);font-size:27px;line-height:1.32;letter-spacing:-.018em}
.calendar-app-page .parenting-calendar-entry{padding-top:27px}
.calendar-app-page .parenting-calendar-entry h3{font-size:25px;line-height:1.42}
.calendar-app-page .parenting-calendar-explanation,.calendar-app-page .parenting-calendar-action,.calendar-app-page .parenting-calendar-warning,.calendar-app-page .parenting-calendar-evidence,.calendar-app-page .parenting-calendar-disclaimer{display:block}
.calendar-app-page .parenting-calendar-profile:not([hidden]){display:block}
.calendar-install{margin-top:24px;padding:22px 24px;background:var(--paper);border:1px solid var(--rule);border-radius:16px}
.calendar-install-kicker{margin:0 0 5px;color:var(--blue);font-size:12px;font-weight:700}
.calendar-install h2{margin:0;color:var(--navy);font-size:18px;line-height:1.4}
.calendar-install p:not(.calendar-install-kicker){margin:9px 0 0;color:var(--muted);font-size:13px;line-height:1.65}
.calendar-install-button{min-height:44px;margin-top:16px;padding:0 14px;color:#fff;background:var(--blue);border:0;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer}
.calendar-install-button:hover{background:var(--blue-deep)}
.calendar-install-button:focus-visible{outline:3px solid rgba(0,147,221,.28);outline-offset:3px}
@media(max-width:760px){.calendar-app-shell{width:calc(100vw - 32px);padding-top:20px}.calendar-app-brand{margin-bottom:20px}.calendar-app-back{flex:none}.calendar-app-calendar .parenting-calendar-frame{padding:22px;border-radius:16px;box-shadow:8px 8px 0 var(--wash)}.calendar-app-calendar .parenting-calendar-frame::before{right:22px}.calendar-app-calendar .parenting-calendar-header{column-gap:12px}.calendar-app-calendar .parenting-calendar-heading{max-width:190px}.calendar-app-calendar .parenting-calendar-header h1{max-width:100%;font-size:22px}.calendar-app-page .parenting-calendar-current{max-width:112px;font-size:10px}.calendar-app-page .parenting-calendar-age{max-width:100%;overflow:hidden;text-overflow:ellipsis}.calendar-app-page .parenting-calendar-entry{padding-top:22px}.calendar-app-page .parenting-calendar-entry h3{font-size:21px}.calendar-app-page .parenting-calendar-explanation{font-size:15px;line-height:1.8}.calendar-app-page .parenting-calendar-action{padding:16px}.calendar-app-page .parenting-calendar-evidence li{grid-template-columns:64px 1fr}.calendar-install{padding:19px 20px}}
