/* 首页育儿日历：独立样式，避免影响共享的 v2.css。 */
.home-page .hero:has(.parenting-calendar){width:min(1200px,calc(100% - 48px));max-width:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(400px,.83fr);gap:72px;align-items:center}
.parenting-calendar{position:relative;min-width:0;--pc-blue-deep:#087fb9;--pc-blue-soft-border:#c8dbe3;--pc-yellow-border:#f5dd9f;--pc-yellow-deep:#946300}
.parenting-calendar-frame{position:relative;padding:30px;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-xl);box-shadow:18px 18px 0 var(--wash)}
.parenting-calendar-frame::before{content:"";position:absolute;right:30px;top:-1px;width:82px;height:7px;background:var(--yellow);border-radius:0 0 7px 7px}
.parenting-calendar-header{display:flex;gap:20px;align-items:flex-start;padding-bottom:20px;border-bottom:1px solid var(--rule)}
.parenting-calendar-heading{min-width:0}
.parenting-calendar-kicker{margin:0 0 7px;color:var(--blue);font-size:12px;font-weight:700}
.parenting-calendar-header h2{max-width:300px;margin:0;color:var(--navy);font-size:22px;line-height:1.35;letter-spacing:-.015em}
.parenting-calendar-current{min-width:max-content;margin-left:auto;display:grid;gap:4px;justify-items:end;color:var(--muted);font-size:11px;line-height:1.35;text-align:right}
.parenting-calendar-current time{color:var(--ink);font-weight:650;font-variant-numeric:tabular-nums}
.parenting-calendar-age{padding:0;color:var(--blue);background:transparent;border:0;font:inherit;font-weight:700;cursor:pointer}
.parenting-calendar-close{display:none}
.parenting-calendar-entry{padding-top:22px}
.parenting-calendar-entry h3{margin:0;color:var(--navy);font-size:21px;line-height:1.42;letter-spacing:-.01em;overflow-wrap:anywhere}
.parenting-calendar-explanation{margin:13px 0 0;color:var(--ink);font-size:14px;line-height:1.75}
.parenting-calendar-action{margin-top:18px;padding:15px 16px;background:var(--yellow-wash);border:1px solid var(--pc-yellow-border);border-radius:10px}
.parenting-calendar-action strong{display:block;color:var(--pc-yellow-deep);font-size:12px}
.parenting-calendar-action p{margin:5px 0 0;color:var(--ink);font-size:13px;line-height:1.65}
.parenting-calendar-warning{margin:14px 0 0;padding:12px 0;color:#80531b;border-top:1px solid var(--pc-yellow-border);border-bottom:1px solid var(--pc-yellow-border);font-size:12px;line-height:1.65}
.parenting-calendar-warning strong{display:block;margin-bottom:3px;color:var(--pc-yellow-deep);font-size:12px}
.parenting-calendar-evidence{margin-top:14px;color:var(--muted);font-size:11px}
.parenting-calendar-evidence summary{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:7px;align-items:center;width:100%;color:var(--blue);font-weight:700;cursor:pointer;list-style:none}
.parenting-calendar-evidence summary::-webkit-details-marker{display:none}
.parenting-calendar-evidence summary::before{content:"›";font-size:16px;line-height:1;transform-origin:center;transition:transform 160ms ease-out}
.parenting-calendar-evidence[open] summary::before{transform:rotate(90deg)}
.parenting-calendar-evidence summary .parenting-calendar-disclaimer{justify-self:end;margin:0;color:var(--muted);font-size:11px;font-weight:400;line-height:1.45;text-align:right}
.parenting-calendar-evidence ul{margin:10px 0 0;padding:0;list-style:none}
.parenting-calendar-evidence li{display:grid;grid-template-columns:72px 1fr;gap:8px;padding:8px 0;border-top:1px solid var(--rule);line-height:1.55}
.parenting-calendar-evidence strong{color:var(--ink);font-weight:650}
.parenting-calendar-install-entry{display:flex;flex-wrap:wrap;gap:5px 8px;margin:13px 0 0;padding-top:12px;border-top:1px solid var(--rule);line-height:1.55}
.parenting-calendar-install-entry a{color:var(--blue);font-weight:700}
.parenting-calendar-install-entry span{color:var(--muted)}
.parenting-calendar-controls{display:flex;gap:10px;align-items:center;margin-top:22px;padding-top:18px;border-top:1px solid var(--rule)}
.parenting-calendar-expand{display:none}
.parenting-calendar-clear{min-height:44px;padding:0;color:var(--blue);background:transparent;border:0;font-size:12px;font-weight:700;cursor:pointer}
.parenting-calendar-profile{margin-top:17px;padding-top:17px;border-top:1px solid var(--rule)}
.parenting-calendar-profile label{display:block;color:var(--ink);font-size:12px;font-weight:700}
.parenting-calendar-date-row{display:flex;gap:8px;margin-top:8px}
.parenting-calendar-date-row input{min-width:0;flex:1;height:42px;padding:0 11px;color:var(--ink);background:#fff;border:1px solid var(--pc-blue-soft-border);border-radius:8px;font-size:13px;outline:0}
.parenting-calendar-date-row input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,147,221,.15)}
.parenting-calendar-date-row button{height:42px;padding:0 14px;color:#fff;background:var(--blue);border:0;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer}
.parenting-calendar-date-row button:hover{background:var(--pc-blue-deep)}
.parenting-calendar-date-hint{margin:7px 0 0;color:var(--muted);font-size:10px;line-height:1.55}
.parenting-calendar-sex-row{margin-top:12px}
.parenting-calendar-sex-row label{margin-bottom:7px}
.parenting-calendar-sex-row select{width:100%;height:42px;padding:0 11px;color:var(--ink);background:#fff;border:1px solid var(--pc-blue-soft-border);border-radius:8px;font-size:13px}
.parenting-calendar-sex-row select:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,147,221,.15)}
.parenting-calendar-profile-action{min-height:42px;margin-top:18px;padding:0 14px;color:#fff;background:var(--blue);border:0;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer}
.parenting-calendar-profile-action:hover{background:var(--pc-blue-deep)}
.parenting-calendar-date-error{margin:7px 0 0;color:var(--danger);font-size:11px;line-height:1.5}
.parenting-calendar-clear{margin-top:10px;color:var(--danger)}
.parenting-calendar-loading,.parenting-calendar-load-error{margin:32px 0;color:var(--muted);font-size:13px}
.parenting-calendar-refreshing{margin:14px 0 0;color:var(--muted);font-size:11px;line-height:1.5}
.parenting-calendar-future,.parenting-calendar-complete,.parenting-calendar-sex-required{min-height:230px;display:flex;justify-content:center;flex-direction:column}
.parenting-calendar-status{margin:16px 0 6px;color:var(--pc-yellow-deep);font-size:12px;font-weight:700}
.parenting-calendar-future h3{font-size:20px}
.parenting-calendar-age:focus-visible,.parenting-calendar-clear:focus-visible,.parenting-calendar-expand:focus-visible,.parenting-calendar-close:focus-visible,.parenting-calendar-profile-action:focus-visible,.parenting-calendar-evidence summary:focus-visible{outline:3px solid rgba(0,147,221,.28);outline-offset:3px}
@media(max-width:1120px){.home-page .hero:has(.parenting-calendar){grid-template-columns:minmax(0,1fr) minmax(340px,.76fr);gap:42px}.parenting-calendar-frame{padding:25px}.parenting-calendar-header h2{font-size:20px}.parenting-calendar-entry h3{font-size:19px}}
@media(max-width:900px){.home-page .hero:has(.parenting-calendar){display:block;width:min(880px,calc(100% - 48px));max-width:none}.parenting-calendar{margin-top:38px;max-width:640px}.parenting-calendar-frame{box-shadow:12px 12px 0 var(--wash)}}
@media(max-width:760px){.home-page .hero:has(.parenting-calendar){width:calc(100% - 32px)}.parenting-calendar{max-width:none;margin-top:30px}.parenting-calendar-frame{padding:20px;border-radius:16px;box-shadow:8px 8px 0 var(--wash)}.parenting-calendar-frame::before{right:20px;width:64px}.parenting-calendar-header{gap:12px;padding-bottom:14px}.parenting-calendar-header h2{font-size:18px}.parenting-calendar-kicker{margin-bottom:5px;font-size:11px}.parenting-calendar-current{font-size:10px}.parenting-calendar-entry{padding-top:16px}.parenting-calendar-entry h3{font-size:17px;line-height:1.45}.parenting-calendar-explanation,.parenting-calendar-action,.parenting-calendar-warning,.parenting-calendar-evidence,.parenting-calendar-disclaimer{display:none}.parenting-calendar-controls{margin-top:16px;padding-top:14px;justify-content:flex-start;flex-wrap:wrap}.parenting-calendar-expand{min-height:44px;padding:0 13px;display:inline-flex;align-items:center;color:#fff;background:var(--blue);border:0;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer}.parenting-calendar-profile{display:none}.parenting-calendar.is-expanded{position:fixed;z-index:100;inset:0;margin:0;max-width:none;overflow-y:auto;background:var(--canvas);overscroll-behavior:contain}.parenting-calendar.is-expanded .parenting-calendar-frame{min-height:100%;padding:calc(22px + env(safe-area-inset-top)) 20px calc(28px + env(safe-area-inset-bottom));border:0;border-radius:0;box-shadow:none}.parenting-calendar.is-expanded .parenting-calendar-frame::before{top:0;right:52px}.parenting-calendar.is-expanded .parenting-calendar-close{width:44px;height:44px;display:grid;place-items:center;flex:0 0 auto;color:var(--navy);background:#fff;border:1px solid var(--rule);border-radius:50%;font-size:25px;line-height:1;cursor:pointer}.parenting-calendar.is-expanded .parenting-calendar-header h2{max-width:250px;font-size:21px}.parenting-calendar.is-expanded .parenting-calendar-current{font-size:11px}.parenting-calendar.is-expanded .parenting-calendar-content{max-width:640px;margin:0 auto}.parenting-calendar.is-expanded .parenting-calendar-entry{padding-top:24px}.parenting-calendar.is-expanded .parenting-calendar-entry h3{font-size:24px;line-height:1.4}.parenting-calendar.is-expanded .parenting-calendar-explanation,.parenting-calendar.is-expanded .parenting-calendar-action,.parenting-calendar.is-expanded .parenting-calendar-warning,.parenting-calendar.is-expanded .parenting-calendar-evidence,.parenting-calendar.is-expanded .parenting-calendar-disclaimer{display:block}.parenting-calendar.is-expanded .parenting-calendar-explanation{font-size:16px;line-height:1.82}.parenting-calendar.is-expanded .parenting-calendar-action{padding:18px}.parenting-calendar.is-expanded .parenting-calendar-action p{font-size:14px}.parenting-calendar.is-expanded .parenting-calendar-warning{font-size:13px}.parenting-calendar.is-expanded .parenting-calendar-evidence{font-size:12px}.parenting-calendar.is-expanded .parenting-calendar-disclaimer{font-size:11px}.parenting-calendar.is-expanded .parenting-calendar-controls{max-width:640px;margin:24px auto 0}.parenting-calendar.is-expanded .parenting-calendar-expand{display:none}.parenting-calendar.is-expanded .parenting-calendar-profile{display:block;max-width:640px;margin-left:auto;margin-right:auto}.parenting-calendar.is-expanded .parenting-calendar-date-row input{font-size:16px}.parenting-calendar-open{overflow:hidden}}
@media(prefers-reduced-motion:reduce){.parenting-calendar *{scroll-behavior:auto}.parenting-calendar-evidence summary::before{transition:none}}
