.parent-home{--ph-ink:#193e48;--ph-muted:#60767d;--ph-accent:#087f83;--ph-line:#deeaeb;--ph-bg:#f3f8f8;max-width:1120px;color:var(--ph-ink);overflow-wrap:anywhere;margin:auto;padding-bottom:12px}.parent-home *,.ph-urgent-dialog *,.ph-settings-dialog *{box-sizing:border-box}.parent-home button,.ph-urgent-dialog button,.ph-settings-dialog button{touch-action:manipulation}:is(.parent-home button:focus-visible,.parent-home summary:focus-visible,.parent-home input:focus-visible,.parent-home select:focus-visible,.ph-urgent-dialog button:focus-visible){outline-offset:3px;outline:3px solid #158d97}.parent-home button:disabled{opacity:.5;cursor:not-allowed}.ph-hero{color:#fff;background:linear-gradient(125deg,#123f4c,#087f83);border-radius:24px;padding:26px 30px;position:relative;overflow:hidden}.ph-brand-row,.ph-brand,.ph-hero-message,.ph-section-heading,.ph-child-heading,.ph-event-title,.ph-news-footer,.ph-action-row{justify-content:space-between;align-items:center;gap:14px;display:flex}.ph-brand{justify-content:flex-start;gap:11px}.ph-brand img{object-fit:contain;background:#fff;border-radius:13px;width:46px;height:46px;padding:3px}.ph-brand b{font-size:16px;display:block}.ph-brand span{color:#cce6e5;margin-top:2px;font-size:12px;display:block}.ph-hero-message{align-items:flex-end;margin-top:30px}.ph-hero-message p{color:#cce6e5;font-size:14px}.ph-hero-message h2{color:#fff;margin:4px 0 8px;font-size:30px;font-weight:750;line-height:1.5}.ph-hero-message>div>span{color:#d7eceb;font-size:13px}.ph-hero-mark{color:#e1f1db;background:#ffffff10;border:1px solid #ffffff26;border-radius:24px;place-items:center;width:76px;height:76px;display:grid;transform:rotate(-8deg)}.ph-icon-button{color:inherit;cursor:pointer;background:0 0;border:0;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}.ph-icon-button:hover{background:#0d7a7e10}.ph-hero .ph-icon-button{background:#ffffff12;border:1px solid #ffffff28}.ph-sync{margin:12px 0}.ph-sync>div{background:0 0!important;border:0!important;padding:4px 2px!important;font-size:12px!important}.ph-sync button{border-radius:30px;min-height:38px}.parent-home .ph-tabs{flex-direction:column;gap:20px;display:flex}.parent-home .ph-navigation{border:1px solid var(--ph-line);background:#fff;border-radius:18px;gap:4px;width:100%;height:auto;min-height:60px;padding:5px;display:flex;box-shadow:0 4px 20px #163f4805}.parent-home .ph-navigation [role=tab]{min-width:0;height:auto;min-height:48px;color:var(--ph-muted);white-space:normal;text-align:center;background:0 0;border:0;border-radius:13px;flex:1 1 0;justify-content:center;gap:7px;padding:9px 6px;font-size:14px;display:flex}.parent-home .ph-navigation [role=tab][data-state=active]{color:#096e74;box-shadow:none;background:#e6f3f1;font-weight:700}.parent-home .ph-navigation [role=tab]:after{display:none}.parent-home [role=tabpanel]{outline:none;min-width:0;margin-top:0}.parent-home [role=tabpanel][data-state=inactive]{display:none}.ph-view-stack{flex-direction:column;gap:20px;display:flex}.ph-card{border:1px solid var(--ph-line);background:#fff;border-radius:20px;min-width:0;padding:24px}.ph-section-heading h3{font-size:19px;line-height:1.6}.ph-section-heading{margin-bottom:2px}.ph-kicker{color:#577d83;letter-spacing:.1px;align-items:center;gap:6px;margin-bottom:3px;font-size:12px;font-weight:650;display:flex}.ph-text-button{color:#08777e;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:5px;padding:8px 0;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.ph-primary-button,.ph-secondary-button,.ph-small-button{cursor:pointer;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:11px 18px;font-size:14px;font-weight:650;line-height:1.5;display:inline-flex}.ph-primary-button{color:#fff;background:#087f83}.ph-primary-button:hover{background:#06686d}.ph-secondary-button,.ph-small-button{color:#215d66;background:#fff;border-color:#d4e3e6}.ph-small-button{min-height:40px;padding:8px 12px;font-size:13px}.ph-secondary-button:hover,.ph-small-button:hover{background:#f1f7f7}.ph-muted,.ph-note{color:var(--ph-muted);font-size:13px;line-height:1.8}.ph-note{font-size:12px}.ph-empty-inline{text-align:center;color:var(--ph-muted);flex-direction:column;justify-content:center;align-items:center;gap:9px;padding:28px 12px;display:flex}.ph-empty-inline small{font-size:12px}.ph-welcome{text-align:center;padding:38px 24px}.ph-welcome-icon{color:#087f83;background:#e8f5f1;border-radius:20px;place-items:center;width:60px;height:60px;margin-bottom:12px;display:inline-grid}.ph-welcome h3{margin-bottom:8px;font-size:23px}.ph-welcome p{max-width:390px;color:var(--ph-muted);margin:0 auto 22px;font-size:15px;line-height:1.9}.ph-children-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.ph-child-card{border:1px solid var(--ph-line);background:#fff;border-radius:20px;min-width:0;padding:23px;overflow:hidden;box-shadow:0 3px 12px #163f4803}.ph-child-heading{justify-content:flex-start;align-items:center;margin-bottom:17px}.ph-child-heading>div{min-width:0}.ph-child-heading h3{font-size:20px;line-height:1.6}.ph-child-heading p,.ph-family-row p{color:var(--ph-muted);font-size:12px;line-height:1.8}.ph-child-avatar{color:#2c6e5b;background:#edf5ee;border-radius:16px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:22px;font-weight:700;display:grid}.ph-child-card:nth-child(2n) .ph-child-avatar{color:#456b9b;background:#eef2f9}.ph-status{color:#5f6c7c;background:#f0f3f6;border-radius:20px;align-items:center;gap:6px;width:fit-content;padding:5px 10px;font-size:12px;font-weight:650;line-height:1.7;display:inline-flex}.ph-status.present{color:#286849;background:#e7f5ec}.ph-status.late{color:#7e560b;background:#fff3d9}.ph-status.absent{color:#a5423b;background:#fff0ef}.ph-status.leave{color:#6c50a1;background:#f0ebfb}.ph-status.left{color:#305e8d;background:#e9f1fb}.ph-times{background:#f8fbfb;border:1px solid #e8eff0;border-radius:14px;grid-template-columns:1fr 1fr;margin:16px 0 10px;display:grid;overflow:hidden}.ph-times>div{padding:12px 15px}.ph-times>div+div{border-right:1px solid #e4ecee}.ph-times dt{color:#71858b;align-items:center;gap:6px;font-size:12px;display:flex}.ph-times dd{font-variant-numeric:tabular-nums;color:#214750;margin:5px 0 0;font-size:21px;font-weight:700}.ph-card-action{color:#08777e;text-align:right;background:0 0;border:0;border-top:1px solid #e8eff0;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:42px;margin-top:14px;padding:14px 0 0;font-size:13px;font-weight:700;display:flex}.ph-child-picker{border:1px solid var(--ph-line);color:var(--ph-muted);background:#fff;border-radius:15px;align-items:center;gap:12px;margin-bottom:18px;padding:13px 17px;font-size:13px;display:flex}.ph-child-picker select{font:inherit;min-width:0;min-height:36px;color:var(--ph-ink);background:0 0;border:0;flex:1;max-width:100%;font-weight:700}.ph-date-control{color:var(--ph-muted);align-items:center;gap:12px;margin-top:18px;font-size:13px;display:flex}.ph-date-control input{min-height:40px;color:var(--ph-ink);background:#fff;border:1px solid #d4e3e6;border-radius:10px;min-width:0;max-width:100%;padding:7px 10px}.ph-day-label{border-bottom:1px solid #e8eff0;flex-wrap:wrap;align-items:center;gap:8px;padding:18px 0;font-size:14px;display:flex}.ph-day-label .ph-status{margin-right:auto}.ph-event{gap:12px;padding-top:23px;display:flex}.ph-event-dot{color:#277653;background:#e6f5ee;border-radius:12px;flex-shrink:0;place-items:center;width:37px;height:37px;display:grid}.ph-event-dot.left{color:#42709a;background:#edf3fb}.ph-event-content{border-bottom:1px solid #e8eff0;flex:1;min-width:0;padding-bottom:20px}.ph-event-title h4{margin:0;font-size:16px;font-weight:700}.ph-event-title time{font-variant-numeric:tabular-nums;direction:ltr;font-size:17px;font-weight:700}.ph-event-note{white-space:pre-wrap;margin-top:8px;font-size:13px}.ph-event-photo summary{color:#08777e;cursor:pointer;padding:9px 0;font-size:13px}.parent-home .attendance-capture{border:1px solid var(--ph-line);border-radius:15px;margin:10px 0;overflow:hidden}.parent-home .attendance-capture img{object-fit:contain;background:#f1f6f7;width:100%;max-height:360px}.parent-home .attendance-capture figcaption{color:var(--ph-muted);padding:9px 12px;font-size:12px}.parent-home .capture-unavailable{color:var(--ph-muted);font-size:13px;line-height:1.8}.ph-calendar>summary{cursor:pointer;align-items:center;gap:9px;min-height:35px;list-style:none;display:flex}.ph-calendar>summary:after{content:"+";color:#08777e;margin-right:auto;font-size:22px}.ph-calendar[open]>summary:after{content:"−"}.ph-calendar>summary span{color:var(--ph-muted);font-size:12px}.ph-calendar-heading{justify-content:space-between;align-items:center;margin:16px 0;display:flex}.ph-month-counts{flex-wrap:wrap;gap:10px;margin-bottom:18px;display:flex}.ph-month-counts span{color:#60767d;background:#f4f8f8;border-radius:8px;padding:6px 9px;font-size:12px}.ph-month-counts b{color:#193e48;margin-right:5px}.ph-weekdays,.ph-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.ph-weekdays{color:#687e85;text-align:center;margin-bottom:9px;font-size:11px}.ph-calendar-grid button{text-align:center;color:#697c82;background:#f8fbfb;border:1px solid #e4ecee;border-radius:10px;min-width:0;min-height:60px;padding:7px 2px}.ph-calendar-grid b{font-size:15px;display:block}.ph-calendar-grid span{font-size:9px;line-height:1.5;display:block}.ph-calendar-grid .present{color:#286849;background:#eaf7ef}.ph-calendar-grid .late{color:#7e560b;background:#fff6e2}.ph-calendar-grid .absent{color:#a5423b;background:#fff0ef}.ph-calendar-grid .leave{color:#6c50a1;background:#f1ecfb}.ph-calendar-grid .selected{outline-offset:0;outline:2px solid #087f83}.ph-calendar>.ph-muted{margin-top:16px}.ph-news-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.ph-news-card{border:1px solid var(--ph-line,#deeaeb);background:#fff;border-radius:20px;min-width:0;overflow:hidden}.ph-news-body{padding:22px}.ph-news-body h3{margin:5px 0 8px;font-size:20px;line-height:1.6}.ph-excerpt{white-space:pre-wrap;-webkit-line-clamp:3;color:#556e76;-webkit-box-orient:vertical;font-size:14px;line-height:1.9;display:-webkit-box;overflow:hidden}.ph-news-footer{border-top:1px solid #e7eeee;margin-top:16px;padding-top:8px}.ph-news-footer time{color:#6b8086;font-size:12px}.ph-poster{object-fit:contain;background:#f0f5f5;width:100%;height:auto;max-height:310px;display:block}.ph-urgent-label{color:#a84b3a}.ph-image-error{color:#5e7075;background:#f5f8f8;align-items:center;gap:8px;margin:0;padding:16px;font-size:13px;display:flex}.ph-filters{scrollbar-width:thin;gap:7px;padding:2px 1px 7px;display:flex;overflow-x:auto}.ph-filters button{white-space:nowrap;color:#5e777f;background:#fff;border:1px solid #dce8e9;border-radius:20px;min-height:40px;padding:8px 14px;font-size:13px}.ph-filters button[aria-pressed=true]{color:#fff;background:#193f4b;border-color:#193f4b}.ph-learning-card{border:1px solid var(--ph-line);text-align:right;background:#fff;border-radius:20px;flex-direction:column;gap:9px;min-width:0;padding:23px;display:flex}.ph-learning-card h3{font-size:18px;line-height:1.6}.ph-learning-card>p{color:var(--ph-muted);font-size:13px}.ph-learning-card .ph-text-button{align-self:flex-end}.ph-grade{color:#087f83;font-size:32px}.ph-grade small{color:#6b8086;font-size:18px}.ph-family-list{flex-direction:column;gap:12px;display:flex}.ph-family-row{border:1px solid var(--ph-line);background:#fff;border-radius:18px;align-items:center;gap:13px;padding:20px;display:flex}.ph-family-row>div{flex:1;min-width:0}.ph-family-row h3{font-size:17px;line-height:1.6}.ph-family-row small{color:#2b775e;align-items:center;gap:5px;margin-top:5px;font-size:11px;display:flex}.ph-link-area>h3{font-size:19px}.ph-link-area>.ph-muted{margin-top:7px}.ph-link-methods{gap:8px;margin:18px 0;display:flex}.ph-link-methods button{color:#40636d;background:#fff;border:1px solid #d4e4e5;border-radius:12px;flex:1;min-height:47px;padding:8px;font-size:13px}.ph-link-methods button[aria-pressed=true]{color:#0b706e;background:#e9f5f2;border-color:#8cc5bd;font-weight:700}.ph-link-area>.panel{box-shadow:none;border:0;border-radius:0;margin:0;padding:10px 0!important}.ph-link-area input,.ph-link-area select{min-width:0;max-width:100%}.ph-request-history>summary{cursor:pointer;color:#496b73;min-height:32px;font-size:14px}.ph-request-history>.panel{box-shadow:none;margin-top:16px}.ph-finance-shortcut{text-align:right;border:1px solid var(--ph-line);color:#194954;background:#fff;border-radius:18px;align-items:center;gap:14px;padding:20px;display:flex}.ph-finance-shortcut>span{color:var(--ph-muted);flex:1;font-size:13px}.ph-finance-shortcut strong{color:#194954;margin-top:4px;font-size:21px;display:block}.ph-contact{text-align:center}.ph-contact h3{font-size:21px}.ph-contact>p{color:var(--ph-muted);margin:8px 0 20px;font-size:14px}.ph-action-row{flex-wrap:wrap;justify-content:center}.ph-request-list>button{border:0;border-top:1px solid var(--ph-line);text-align:right;background:0 0;width:100%;margin-top:15px;padding:18px 0;display:block}.ph-request-list>button>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.ph-request-list h4{margin:0;font-size:15px}.ph-request-list p{margin-top:10px;font-size:13px}.ph-push-prompt{color:#244d54;background:#eef7f5;border:1px solid #d5e9e4;border-radius:17px;flex-wrap:wrap;align-items:center;gap:12px;padding:18px;display:flex}.ph-push-icon{color:#087f83;background:#fff;border-radius:13px;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.ph-push-prompt>div{flex:1;min-width:160px}.ph-push-prompt h3{margin:0 0 3px;font-size:15px;font-weight:700}.ph-push-prompt p{color:#5d787e;font-size:12px;line-height:1.8}.ph-push-prompt>.ph-push-message{flex-basis:100%;width:100%;font-size:13px}.ph-push-prompt>button{max-width:100%;min-height:40px;font-size:13px}.ph-settings-dialog{color:#193e48;max-height:88dvh;background:#fff!important;border-radius:22px!important;max-width:min(560px,100vw - 28px)!important;padding:24px!important;overflow:auto!important}.ph-settings-dialog .ph-section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.ph-settings-dialog .pwa-install{flex-wrap:wrap;margin:0}.ph-settings-dialog .pwa-install>div{flex:1;min-width:0}.ph-settings-dialog .pwa-install-button{white-space:normal}.ph-urgent-dialog{color:#1d434d;flex-direction:column;width:100%;max-height:90dvh;overflow:hidden;background:#fff!important;border:0!important;border-radius:24px!important;gap:0!important;max-width:min(580px,100vw - 28px)!important;padding:0!important;display:flex!important;box-shadow:0 28px 90px #061e3650!important}.ph-urgent-top{color:#995039;background:#fff4ed;border-bottom:1px solid #f2dfd0;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;display:flex}.ph-urgent-top>span{align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.ph-urgent-scroll{overscroll-behavior:contain;min-height:0;overflow:auto}.ph-urgent-dialog .ph-poster{max-height:42dvh}.ph-urgent-copy{text-align:right;padding:25px 26px 20px}.ph-urgent-title{color:#193e48;font-size:25px!important;font-weight:750!important;line-height:1.6!important}.ph-urgent-description{white-space:pre-wrap;overflow-wrap:anywhere;margin:14px 0 12px;color:#546f77!important;font-size:16px!important;line-height:1.95!important}.ph-urgent-bottom{background:#fff;border-top:1px solid #e5eeee;flex-shrink:0;padding:16px 24px 19px}.ph-urgent-bottom button{width:100%;min-height:48px}.ph-urgent-bottom p{text-align:center;color:#70848a;margin-top:9px;font-size:11px;line-height:1.6}@media (min-width:900px){.ph-hero{padding:30px 36px}.ph-hero-message h2{font-size:35px}.ph-child-card{padding:27px}.ph-child-heading h3{font-size:21px}}@media (max-width:640px){.ph-hero{border-radius:21px;padding:21px}.ph-brand img{width:42px;height:42px}.ph-brand b{font-size:14px}.ph-hero-message{margin-top:23px}.ph-hero-message h2{font-size:26px}.ph-hero-mark{border-radius:18px;width:59px;height:59px}.ph-hero-mark svg{width:30px}.ph-card{border-radius:18px;padding:19px}.ph-children-grid,.ph-news-grid{grid-template-columns:minmax(0,1fr)}.ph-view-stack{gap:17px}.ph-section-heading h3{font-size:17px}.ph-child-card{padding:20px}.ph-child-heading h3{font-size:19px}.ph-navigation{z-index:20;position:sticky;top:7px}.parent-home .ph-navigation{border-radius:16px;gap:1px;min-height:66px;padding:4px}.parent-home .ph-navigation [role=tab]{flex-direction:column;gap:4px;min-height:55px;padding:5px 2px;font-size:11px;line-height:1.5}.parent-home .ph-navigation [role=tab] svg{width:19px;height:19px}.ph-filters{max-width:100%}.ph-family-row{gap:10px;padding:15px}.ph-family-row h3{font-size:15px}.ph-family-row .ph-child-avatar{width:40px;height:40px;font-size:19px}.ph-child-picker{gap:8px;padding:12px}.ph-child-picker>span{font-size:12px}.ph-child-picker select{font-size:13px}.ph-calendar{padding:15px}.ph-calendar-grid{gap:4px}.ph-calendar-grid button{min-height:56px}.ph-calendar-grid span{font-size:8px}.ph-weekdays{gap:2px;font-size:9px}.ph-urgent-copy{padding:19px 20px}.ph-urgent-title{font-size:22px!important}.ph-urgent-description{font-size:15px!important}.ph-push-prompt{gap:9px;padding:15px}.ph-push-prompt>div{min-width:140px}.ph-push-prompt>.ph-icon-button{margin-right:auto}.ph-settings-dialog{padding:19px!important}}@media (prefers-reduced-motion:reduce){.parent-home *,.ph-urgent-dialog *,.ph-settings-dialog *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@media print{.ph-navigation,.ph-sync,.ph-push-prompt,.ph-hero .ph-icon-button,.ph-urgent-dialog,.ph-settings-dialog{display:none!important}.ph-hero{color:#193e48;background:#fff;border:1px solid #ddd}.ph-hero h2,.ph-hero p,.ph-hero span{color:#193e48!important}}
