.planning-goals{padding:64px 0 42px;color:#dcecf7;background:radial-gradient(ellipse at 80% 15%,#16334b 0,transparent 60%),#0a1523}.planning-goals h2{font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.12;margin:.5rem 0 1rem;letter-spacing:-.04em}.planning-goals p{line-height:1.65;color:#b3c9dc}.planning-goals a{color:#7bdfff}.plan-goal-top{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;margin-bottom:30px}.plan-goal-top>div:first-child{max-width:520px}.plan-end-goal{border-left:1px solid #426176;padding:10px 0 10px 32px}.plan-end-goal>span,.plan-label{font:11px/1.4 var(--font-mono,monospace);letter-spacing:.1em;color:#a8c6dd}.plan-end-goal strong{display:block;font-size:clamp(1.9rem,3.7vw,3.3rem);color:#e7faff;font-variant-numeric:tabular-nums;margin:8px 0}.plan-end-goal small,.plan-end-goal a{display:block;line-height:1.7}.plan-goal-grid{display:grid;grid-template-columns:1.2fr 1fr;border:1px solid #35546d;border-radius:22px;overflow:hidden;background:#0c2031a8}.plan-phase-card,.plan-progress-card{padding:28px}.plan-phase-card{border-right:1px solid #35546d}.plan-phase-head{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap;font-size:10px;letter-spacing:.08em;color:#95b8d1}.plan-phase-head select{max-width:100%;background:#15324a;color:#eefaff;border:1px solid #41617a;border-radius:8px;padding:8px;font-size:12px}.plan-phase-amount{display:block;font-size:clamp(2rem,4vw,3.4rem);line-height:1.2;letter-spacing:-.04em;margin-top:20px}.plan-participation{display:flex;align-items:center;gap:18px}.plan-participation svg{width:40%;flex:none}.plan-participation p{font-size:14px}.plan-participation strong{color:#c6f0ff}.plan-participation span{color:#7bdfff}.planning-goals details{font-size:12px;border-top:1px solid #314a5f;padding-top:12px}.planning-goals summary{cursor:pointer;color:#bfe7fa}.plan-progress-number{display:flex;align-items:baseline;gap:14px;margin-top:24px}.plan-progress-number strong{font-size:32px;line-height:1.2}.plan-progress-number span{font-size:12px;color:#b3c9dc}.plan-progress-track{height:8px;background:#263e55;border-radius:20px;margin:24px 0 14px;overflow:hidden}.plan-progress-track i{height:100%;display:block;background:#6be0ff;transition:width .6s}.planning-goals .plan-small{font-size:12px}.plan-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 15px}.plan-actions .btn-primary{background:#80e5ff;color:#072338}.plan-actions .btn-secondary{background:#15364b;color:#d5f6ff;border-color:#42647a}.plan-progress-card>span:last-child{font-size:12px;color:#a2c8df}.plan-purpose{display:flex;gap:25px;margin:32px 0 22px;max-width:930px}.plan-purpose>span{display:grid;place-items:center;color:#8ce5ff;font-size:32px;flex:none;width:62px;height:62px;border:1px solid #3d687e;border-radius:50%}.plan-purpose h3{font-size:20px;margin:0 0 8px}.plan-purpose p{margin:0}.plan-caveat{font-size:12px}.plan-admin-grid{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(400px,1.8fr);gap:28px;margin:24px 0}.plan-admin-grid>aside{align-self:start;position:sticky;top:90px;max-height:76vh;overflow:auto}.plan-admin-grid label,.effort-member label{display:grid;gap:6px}.plan-admin-grid input,.plan-admin-grid select,.plan-admin-grid textarea,.effort-member input,.effort-member textarea{width:100%;padding:10px;border:1px solid #bccddd;border-radius:8px;font:inherit}.plan-admin-grid .check-row,.effort-review-list .check-row{display:flex;align-items:center}.plan-admin-grid .check-row input{width:auto}.plan-admin-grid aside>button{margin:15px 0}#plan-admin-results{display:grid;gap:8px}#plan-admin-results>button{text-align:left;display:grid;gap:4px;padding:14px;background:#f0f6fa;border:1px solid #cadbe5;border-radius:10px;color:#163449}#plan-admin-results span,#plan-admin-results small{font-size:11px;color:#496a7c}.plan-admin-grid details,.effort-review-list details{border:1px solid #c1d4e0;border-radius:12px;padding:16px;margin:8px 0}.plan-admin-grid summary,.effort-review-list summary{cursor:pointer;font-weight:600}.plan-admin-grid details>p{font-size:12px}.effort-steps{display:grid;grid-template-columns:1fr 1.4fr;gap:32px;padding:24px 0}.effort-member{scroll-margin-top:95px}.effort-member textarea{resize:vertical}#share-copy-area{display:grid;gap:10px;margin:15px 0}#share-copy-area small{font-size:11px}.effort-history{margin-top:24px}.effort-history article{border-top:1px solid #d3dfe8;padding:14px 0}.effort-history article>div{display:flex;gap:15px;align-items:center}.effort-history article span{font-size:12px}.effort-review-list{max-width:1000px}.effort-review-list code{word-break:break-all}#effort-settings{max-width:650px;background:#f1f6fa;padding:20px;border-radius:14px}.plan-admin-grid [role=status]{overflow-wrap:anywhere}.plan-admin-grid button,.effort-member button{transition:background .2s,transform .2s}.plan-admin-grid button:hover,.effort-member button:hover{transform:translateY(-1px)}.planning-goals :focus-visible,.plan-admin-grid :focus-visible,.effort-member :focus-visible{outline:3px solid #3caed3;outline-offset:4px}.campus-map-metrics [data-explain]{pointer-events:auto}.campus-map svg [data-explain]{cursor:help}
@media(max-width:800px){.planning-goals{padding:36px 0}.plan-goal-top,.plan-goal-grid,.plan-admin-grid,.effort-steps{grid-template-columns:1fr;gap:20px}.plan-goal-top{gap:15px}.plan-end-goal{padding:20px 0 0;border-left:0;border-top:1px solid #426176}.plan-phase-card{border-right:0;border-bottom:1px solid #35546d}.plan-goal-grid{gap:0}.plan-phase-card,.plan-progress-card{padding:20px}.plan-admin-grid>aside{position:static;max-height:300px}.plan-purpose{gap:15px}.plan-purpose>span{width:42px;height:42px;font-size:24px}.plan-participation{align-items:start}.plan-participation svg{margin-top:12px}}
@media(prefers-reduced-motion:reduce){.plan-progress-track i,.plan-admin-grid button,.effort-member button{transition:none}.plan-admin-grid button:hover,.effort-member button:hover{transform:none}}

/* One shared center axis across the heading, goal and progress rows. */
.planning-goals>.container{position:relative}.plan-goal-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;margin-bottom:0;align-items:stretch}.plan-goal-top>div{padding:0 36px 28px}.plan-goal-top>div:first-child{max-width:none;padding-left:28px}.plan-end-goal{border-left:1px solid #35546d;display:flex;flex-direction:column;justify-content:center}.plan-goal-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-radius:0 0 20px 20px}.plan-phase-card,.plan-progress-card{padding:28px 36px}.plan-phase-card{padding-left:28px}.plan-goal-top h2{color:#f0f8ff}.plan-goal-top .eyebrow{font-size:11px;letter-spacing:.1em;color:#98c9df}.plan-participation{display:block;max-width:42ch;margin:22px 0 12px;font-size:17px;line-height:1.6}.plan-participation strong{color:#e4f6ff}.plan-phase-amount{margin-top:6px;color:#f2faff}.plan-amount-label{display:block;margin:9px 0 16px;color:#9fbccc;font-size:12px}.plan-phase-description{min-height:4.8em}.plan-vision-note{border-left:2px solid #70e1ff;padding-left:14px}.plan-progress-card{display:flex;flex-direction:column;align-items:stretch}.plan-progress-card .plan-actions{margin-top:auto;padding-top:24px}.planning-goals .btn-primary{color:#102113}.planning-goals .btn-secondary{color:#ecf8ff;border-color:#668294}.plan-purpose{border-top:1px solid #35546d;margin-top:28px;padding-top:28px}.planning-goals details[open] p{max-width:55ch}.plan-end-goal strong{font-size:clamp(2rem,3.6vw,3.2rem)}
@media(max-width:800px){.plan-goal-top,.plan-goal-grid{grid-template-columns:1fr}.plan-goal-top>div,.plan-goal-top>div:first-child{padding:20px}.plan-end-goal{border-left:0;border-top:1px solid #35546d}.plan-phase-card,.plan-progress-card{padding:22px 20px}.plan-phase-card{border-right:0}.plan-phase-description{min-height:0}.plan-goal-grid{border-radius:16px}.plan-participation{font-size:16px}}
/* Financial phases and the ten-year program share the Institute's blue palette. */
.plan-first-amount{display:block;font-size:clamp(2rem,4vw,3.35rem);font-weight:750;letter-spacing:-.04em;line-height:1.1;color:#e9f9ff;margin:15px 0 22px}
.plan-goal-top>div{min-width:0}.plan-goal-top .eyebrow,.plan-end-goal>span{text-transform:none;font:600 1rem/1.4 inherit;letter-spacing:.02em}.plan-goal-top{align-items:start}.plan-end-goal strong{margin-top:15px}
.program-budget{padding:24px;border:1px solid #b7d1e1;border-radius:20px;margin:26px 0;background:#f3f8fc;color:#15364f}.program-budget h2{font-size:1.7rem}.program-budget-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:center}.program-budget-heading>div:last-child{display:grid;gap:9px;border-left:1px solid #b7d1e1;padding-left:24px}.program-budget-heading strong{font-size:clamp(1.9rem,3.3vw,2.65rem);letter-spacing:-.04em}.program-components{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:22px 0}.program-components>div{display:grid;gap:8px;border-top:2px solid #50b6ed;padding-top:12px}.program-components span{font-size:.8rem;color:#49687e}.program-budget details{border-top:1px solid #d2e0e9;padding:14px 0}.program-budget summary{font-weight:650;cursor:pointer}.program-budget p,.program-budget li{font-size:.92rem;line-height:1.65}.program-table-wrap{overflow:auto;margin:18px 0}.program-budget table{width:100%;border-collapse:collapse;white-space:nowrap;text-align:left}.program-budget th,.program-budget td{padding:11px 12px;border-bottom:1px solid #d6e3eb}.program-budget thead{background:#15364f;color:white}.program-budget td:last-child{text-align:right;font-variant-numeric:tabular-nums}.program-budget a{color:#106ca0}.proving-diagram svg{width:100%;height:auto;display:block;margin-top:20px}.program-admin{margin-bottom:28px;padding:20px;border:1px solid #bad4e4;border-radius:15px}.program-admin>div{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.program-admin label{display:block}.program-admin input[type=number]{display:block;width:100%;margin-top:8px}.program-admin p{font-size:.87rem;color:#5b7284}
@media(max-width:850px){.program-components{grid-template-columns:repeat(2,1fr)}.program-budget-heading{grid-template-columns:1fr}.program-budget-heading>div:last-child{border-left:0;padding-left:0}.program-admin>div{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.program-budget{padding:16px}.program-admin>div{grid-template-columns:1fr}}
