/* Proof and governance pages: impact, reports, changes log, policies, Pathways curriculum and partner forms. */

/* In short (policy pages) */
.pol-short{background:var(--paper-2);border-bottom:1px solid var(--line)}
.pol-short .wrap{display:grid;grid-template-columns:10rem minmax(0,1fr);gap:1.5rem 3rem;padding-top:2.2rem;padding-bottom:2.2rem;align-items:start}
.pol-short .mono{margin:0;padding-top:.25rem;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;color:var(--sun-ink)}
.pol-short ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 2.5rem;counter-reset:short}
.pol-short li{counter-increment:short;display:grid;grid-template-columns:2rem minmax(0,1fr);font-family:var(--f-display);font-size:1.16rem;line-height:1.35;font-weight:360;color:var(--text)}
.pol-short li::before{content:counter(short,decimal-leading-zero);font-family:var(--f-mono);font-size:.72rem;color:var(--muted);padding-top:.35rem}
@media (max-width:820px){.pol-short .wrap{grid-template-columns:1fr}.pol-short ol{grid-template-columns:1fr}}

/* Policy layout */
.pol{grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr)}
.pol-toc .guide-toc{margin-bottom:1.6rem}
.pol-meta{font-size:.86rem;color:var(--muted);max-width:18rem}
.pol-meta a{color:var(--text);text-decoration-color:var(--sun)}
.pol-text .pol-sec{padding:0 0 2.6rem;margin-bottom:2.6rem;border-bottom:1px solid var(--line)}
.pol-text .pol-sec:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.pol-text .pol-sec>h2:first-child{margin-top:0}
.pol-text .ticks{margin-bottom:1.4rem;padding-left:0}
.pol-text .facts{grid-template-columns:13rem minmax(0,1fr);margin-top:.4rem}
@media (max-width:900px){.pol{grid-template-columns:1fr}.pol-toc{display:none}}
@media (max-width:640px){.pol-text .facts{grid-template-columns:1fr}}

.considers{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden;margin:1.6rem 0 1.8rem}
.consider{background:var(--paper-3);padding:1.5rem 1.5rem 1.6rem}
.consider .mono{display:block;color:var(--sun-ink);margin-bottom:1.6rem}
.consider h3{font-family:var(--f-display)!important;font-weight:380!important;font-size:1.45rem!important;letter-spacing:-.01em;margin:0 0 .45rem!important}
.consider p{margin:0;font-size:.95rem;color:var(--body)}
@media (max-width:640px){.considers{grid-template-columns:1fr}}
.callout--urgent{background:#fbe9e7;border-color:#f0c4bd;color:#5d1610;margin:0 0 1.6rem}
.callout--urgent strong{color:#3d0c07}

/* Policies and records links */
.pol-links{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 2rem;border-top:1px solid var(--line-2)}
.pol-links li{border-bottom:1px solid var(--line-2)}
.pol-links a{display:block;padding:1.2rem 2rem 1.3rem 0;text-decoration:none;position:relative}
.pol-links a::after{content:"";position:absolute;right:.3rem;top:1.65rem;width:.5rem;height:.5rem;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:rotate(45deg);transition:transform .3s var(--ease)}
.pol-links a:hover::after{transform:translateX(4px) rotate(45deg)}
.pol-links strong{display:block;font-family:var(--f-display);font-weight:380;font-size:1.3rem;letter-spacing:-.01em;line-height:1.2;margin-bottom:.25rem}
.pol-links span{display:block;font-size:.92rem;color:var(--muted)}
.pol-links a:hover strong{text-decoration:underline;text-decoration-color:var(--sun);text-underline-offset:.18em;text-decoration-thickness:1px}
.pol-links--stack{grid-template-columns:1fr}
@media (max-width:900px){.pol-links{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.pol-links{grid-template-columns:1fr}}

/* Facts on night */
.facts--night{border-color:var(--line-night)}
.facts--night dt,.facts--night dd{border-color:var(--line-night)}
.facts--night dt{color:var(--on-night-3)}
.facts--night dd{color:var(--on-night-2)}
.facts--night a{color:var(--on-night);text-decoration-color:var(--sun)}

/* Impact */
.impact-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem 3rem;flex-wrap:wrap;margin-bottom:2.6rem}
.impact-head .h2{margin:0}
.impact-status{display:inline-flex;align-items:center;gap:.65rem;margin:0;padding:.55rem 1rem;border:1px solid var(--line-2);border-radius:999px;font-family:var(--f-mono);font-size:.74rem;letter-spacing:.06em;color:var(--muted)}
.impact-status .dot{width:.55rem;height:.55rem;border-radius:50%;background:var(--line-2);flex:none}
[data-state=loading] .impact-status .dot{animation:pulse 1.4s ease-in-out infinite}
[data-state=ready] .impact-status .dot{background:var(--ok);box-shadow:0 0 0 4px rgba(47,125,82,.16)}
[data-state=error] .impact-status .dot{background:var(--err)}
@keyframes pulse{50%{opacity:.3}}
.impact noscript .callout,.impact-error{margin-bottom:2rem}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--text);border-bottom:1px solid var(--line)}
.stat{padding:1.6rem 1.6rem 1.8rem 0;display:flex;flex-direction:column}
.stat+.stat{padding-left:1.6rem;border-left:1px solid var(--line)}
.stat__label{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 1.4rem;min-height:2.4em}
.stat__num{margin:0 0 1rem;font-family:var(--f-display);font-weight:300;font-size:clamp(3.6rem,2.4rem + 4vw,6.4rem);line-height:.9;letter-spacing:-.04em;color:var(--text);font-variant-numeric:lining-nums tabular-nums}
.stat__num .num{display:inline-block;transition:opacity .5s var(--ease),transform .6s var(--ease)}
[data-state=loading] .stat__num .num{opacity:.25}
.stat.is-zero .stat__num{color:#8a8170}
.stat__note{margin:auto 0 0;font-size:.92rem;line-height:1.5;color:var(--body);max-width:17rem}
@media (max-width:980px){.stats{grid-template-columns:1fr 1fr}.stat:nth-child(3){padding-left:0;border-left:0}.stat:nth-child(n+3){border-top:1px solid var(--line)}}
@media (max-width:520px){.stats{grid-template-columns:1fr}.stat,.stat+.stat{padding:1.4rem 0 1.6rem;border-left:0}.stat+.stat{border-top:1px solid var(--line)}.stat__label{min-height:0}}
.impact-zero{margin:2.2rem 0 0;padding:1.4rem 1.6rem;border-left:3px solid var(--sun);background:var(--paper-3);max-width:46rem}
.impact-zero p{margin:0;font-family:var(--f-display);font-size:1.2rem;line-height:1.45;color:var(--body)}
.impact-more{margin-top:clamp(3rem,2rem + 3vw,5rem)}
.impact-sub{font-size:.93rem;max-width:30rem}
.impact-sub a,.impact-zero a{color:var(--text);text-decoration-color:var(--sun)}
.bars{list-style:none;margin:1.6rem 0 0;padding:0;border-top:1px solid var(--line)}
.bars li{display:grid;grid-template-columns:7rem minmax(0,1fr) 3.5rem;align-items:center;gap:1rem;padding:.95rem 0;border-bottom:1px solid var(--line)}
.bar__name a{font-weight:600;text-decoration:none}
.bar__name a:hover{text-decoration:underline;text-decoration-color:var(--sun)}
.bar__track{height:10px;border-radius:999px;background:var(--paper-2);overflow:hidden}
.bar__fill{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--sun),var(--ember));transition:width 1.1s var(--ease)}
.bar__num{text-align:right;font-family:var(--f-display);font-size:1.5rem;font-variant-numeric:tabular-nums;color:var(--text)}
.chips{list-style:none;margin:1.6rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.chips li{display:inline-flex;align-items:center;gap:.5rem;height:38px;padding:0 1rem;border-radius:999px;background:var(--night);color:var(--on-night);font-size:.92rem}
.chips li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--sun)}
.chips:empty{display:none}
.impact-empty{margin:1.4rem 0 0;color:var(--muted);font-style:italic;font-family:var(--f-display);font-size:1.15rem}

/* Changes log */
.feed-link{margin:1.6rem 0 0}
.feed-link .btn{height:44px;font-size:.92rem}
.log-kinds{list-style:none;margin:0;padding:0}
.log-kinds li{display:flex;align-items:center;gap:.8rem;padding:.6rem 0;border-bottom:1px solid var(--line);font-size:.92rem;color:var(--body)}
.log-kinds .log__kind{min-width:6.6rem;justify-content:center}
.log{list-style:none;margin:0;padding:0}
.log__day{position:relative;padding-left:2.2rem;padding-bottom:1rem}
.log__day::before{content:"";position:absolute;left:.35rem;top:.6rem;bottom:0;width:1px;background:var(--line-2)}
.log__day::after{content:"";position:absolute;left:0;top:.35rem;width:.8rem;height:.8rem;border-radius:50%;background:var(--sun);box-shadow:0 0 0 5px var(--paper)}
.log__date{font-family:var(--f-display);font-weight:340;font-size:clamp(1.7rem,1.3rem + 1.2vw,2.4rem);letter-spacing:-.018em;line-height:1;margin:0 0 1.4rem}
.log__items{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.log__item{padding:1.4rem 0 1.5rem;border-bottom:1px solid var(--line);scroll-margin-top:100px}
.log__item:target{background:linear-gradient(90deg,rgba(242,163,58,.12),transparent)}
.log__item h3{font-family:var(--f-display);font-weight:380;font-size:1.4rem;line-height:1.2;letter-spacing:-.01em;margin:.7rem 0 .4rem}
.log__item p{margin:0;color:var(--body);max-width:40rem}
.log__item a{color:var(--text);text-decoration-color:var(--sun)}
.log__kind{display:inline-flex;align-items:center;height:24px;padding:0 .6rem;border-radius:999px;font-family:var(--f-mono);font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line-2);color:var(--muted)}
.log__kind--programs{background:#e4efe8;border-color:#c4dccd;color:#1f4a37}
.log__kind--eligibility{background:#e8eaf3;border-color:#c9cee3;color:#2c3566}
.log__kind--terms{background:#f3e6ee;border-color:#e1c8d7;color:#5e2445}
.log__kind--policies{background:#fbefd9;border-color:#efd6a8;color:#6b4206}
.log__kind--site{background:var(--paper-3);color:var(--muted)}

/* Report template */
.ph{display:inline;padding:.05em .4em;border-radius:6px;background:#fff3d6;border:1px dashed #d79a3a;color:#6b4206;font-family:var(--f-mono);font-size:.82em;font-style:normal;letter-spacing:0;line-height:1.7;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.h1 .ph{font-size:.5em;vertical-align:middle;background:rgba(242,163,58,.14);border-color:var(--sun);color:var(--sun-2)}
.tpl-banner{background:#fff3d6;border-bottom:1px solid #efd6a8}
.tpl-banner .wrap{padding-top:1.1rem;padding-bottom:1.1rem}
.tpl-banner p{margin:0;color:#4a3410}
.tpl-table{width:100%;border-collapse:collapse;margin:.6rem 0 1.4rem;font-size:.95rem}
.tpl-table th,.tpl-table td{padding:.75rem 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.tpl-table th{font-weight:500;color:var(--body);width:45%;padding-right:1rem}

/* Pathways curriculum */
.track-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2rem 3rem;align-items:center}
.track-jump{list-style:none;margin:0;padding:0;border-top:1px solid var(--line-2)}
.track-jump a{display:flex;align-items:baseline;gap:1rem;padding:.9rem 0;border-bottom:1px solid var(--line-2);text-decoration:none}
.track-jump .mono{color:var(--sun-ink);flex:none;width:5.5rem}
.track-jump strong{font-family:var(--f-display);font-weight:380;font-size:1.25rem;letter-spacing:-.01em}
.track-jump a:hover strong{text-decoration:underline;text-decoration-color:var(--sun);text-decoration-thickness:1px;text-underline-offset:.18em}
@media (max-width:900px){.track-intro{grid-template-columns:1fr}}
.track-outcomes{margin-top:2rem}
.track-outcomes .mono,.track-sources .mono{display:block;letter-spacing:.12em;text-transform:uppercase;font-size:.7rem;color:var(--muted);margin-bottom:.6rem}
.modules{list-style:none;margin:0;padding:0;counter-reset:mod;border-top:1px solid var(--line)}
.modules li{counter-increment:mod;display:grid;grid-template-columns:3.4rem minmax(0,1fr);padding:1.4rem 0;border-bottom:1px solid var(--line)}
.modules li::before{content:counter(mod,decimal-leading-zero);grid-row:span 2;font-family:var(--f-display);font-weight:300;font-size:1.9rem;line-height:1;color:var(--sun-ink)}
.modules h3{margin:0 0 .35rem;font-family:var(--f-display);font-weight:400;font-size:1.3rem;line-height:1.2;letter-spacing:-.008em}
.modules p{margin:0;color:var(--body);font-size:.97rem}
.track-sources{margin-top:2rem}
.track-sources ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.track-sources a{display:inline-flex;align-items:center;min-height:34px;padding:.3rem .85rem;border:1px solid var(--line-2);border-radius:999px;font-size:.85rem;text-decoration:none;color:var(--body)}
.track-sources a:hover{border-color:var(--text);color:var(--text)}

/* Linked cards (Pathways program page uses org.css card styles; these refine them when proof.css is loaded) */
.card--link{display:flex;flex-direction:column;text-decoration:none;transition:border-color .3s,transform .4s var(--ease)}
.card--link:hover{border-color:var(--text);transform:translateY(-2px)}
.card--link .link-arrow{margin-top:auto}
[data-state=error] .stats,[data-state=error] .impact-more,[data-state=error] .impact-zero{display:none}
