/* Preserve the supplied Bridges design while keeping controls classroom-readable. */
:root{--orange-deep:#9d4b06;--teal:#086b74}
:focus-visible{outline-color:var(--teal)}
input::placeholder{color:var(--ink-soft);opacity:1}
h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}
.top-inner{flex-wrap:wrap}.top nav{flex-wrap:wrap;gap:10px 18px}
.wordmark img{display:block;width:166px;height:auto}
.top nav a{min-height:44px;display:inline-flex;align-items:center}
.top nav [aria-current="page"]{text-decoration:underline;text-underline-offset:5px}
.program-nav{display:flex;flex-wrap:wrap;gap:8px 24px;padding:24px 0 0}
.program-nav a{display:inline-flex;align-items:center;min-height:44px;font-weight:700;text-underline-offset:5px}
.program-nav [aria-current="page"]{color:var(--teal);text-decoration:underline}
.hub-intro{padding:64px 0 32px;max-width:850px}
.hub-intro h1{font-size:clamp(40px,5vw,64px);line-height:1.05;margin:0 0 24px}
.program-entry{display:flex;gap:32px;padding:32px 0;align-items:center;border-bottom:1px solid var(--line)}
.program-entry:last-child{border-bottom:0;padding-bottom:8px}
.program-entry img{object-fit:contain;background:var(--teal-soft);border-radius:12px;padding:8px;flex:0 0 120px}
.program-entry h2{margin:0 0 12px}.program-entry p{max-width:65ch;margin:0 0 20px}
.hub-note{max-width:75ch;margin:32px 0}
::selection{background:var(--teal-soft);color:var(--ink)}
input{caret-color:var(--teal)}
.hero h1{letter-spacing:-.02em}
.region-context{display:flex;align-items:center;gap:20px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:22px}
.region-context label{flex:1 1 280px}.region-context>div{flex:2 1 280px;min-width:0}
.region-context p{margin:0 0 6px;font-size:15px;max-width:70ch}
.region-context select{width:100%;min-width:0}.region-context a{font-size:15px;font-weight:700}
.controls>*{min-width:0}.grades{flex-wrap:wrap}.grades button{min-width:44px;min-height:44px}
.tabs{flex-wrap:wrap}.tabs button{min-height:44px}
.tabs button:disabled{opacity:1;color:#58657b;background:#edf0f5;cursor:not-allowed}
.months button,.concepts button{min-height:44px}
.year ol{scrollbar-width:thin}.year{min-width:0}
.availability{margin:0 0 12px;color:var(--ink-soft);font-size:14px;font-weight:700}
.standards-note{font-size:14px;line-height:1.5;color:var(--ink-soft);margin:0 0 16px}
.plan-grade{font-weight:700;font-size:14px;margin:0 0 8px}
.unit-link{margin-top:14px!important}.book-cover-link{display:grid;place-items:center;width:100%;height:100%}
.card .cover{background:var(--teal-soft)}
.search-wrap input{width:100%;min-width:0}.btn{min-height:44px}
.focus-filter{display:block}.focus-filter select{width:100%;max-width:100%;min-width:0}
body:not([data-program="bridges"]) .year ol{min-width:0}
.hub-intro h1{font-family:var(--display);font-weight:800}
.card .acts{align-items:stretch}.card .acts .btn{flex-basis:140px}
.grid>.recommended{grid-column:1/-1;display:grid;grid-template-columns:minmax(160px,1fr) minmax(0,2fr);border-color:var(--teal)}
.recommended .cover{height:100%;min-height:240px}.recommended .cover img{max-height:240px}
.card .start-label{font:800 25px/1.2 var(--display);color:var(--teal);margin:0 0 18px}
.other-units{grid-column:1/-1;margin-top:14px;border-top:1px solid var(--line);padding-top:18px}
.other-units summary{cursor:pointer;min-height:44px;display:list-item;font-weight:700;padding:10px 0;list-style-position:inside}
.other-units>.grid{margin-top:18px}.reading-note{max-width:70ch}
@media(max-width:560px){.grid>.recommended{display:flex}.recommended .cover{min-height:0;height:200px}.recommended .cover img{max-height:170px}.card .acts .btn{flex-basis:100%;white-space:normal;overflow-wrap:anywhere;text-align:center}.other-units>.grid{grid-template-columns:1fr}}
@media(max-width:560px){.top nav .hide-sm{display:inline-flex}.top nav{font-size:14px;gap:8px 14px}.top-inner{gap:12px}.hero h1{font-size:40px}.region-context{gap:12px}.controls{gap:16px}.controls>label{width:100%;flex:0 0 100%}.tabs button{flex:1 1 120px}}
@media(max-width:560px){.program-entry{align-items:flex-start;gap:16px}.program-entry img{width:70px;height:100px;flex-basis:70px}.program-entry h2{font-size:25px}.program-entry .btn{white-space:normal}.hub-intro{padding-top:36px}.program-nav{gap:4px 16px}.path{grid-template-columns:1fr}.section-buttons button{min-width:0;overflow-wrap:anywhere}}
@media print{body>*:not(dialog){display:block!important}header.top,.planner,.more,footer,.btn{display:none!important}main{max-width:none}.hero{display:block;padding:0}.span{display:none}.card{break-inside:avoid}.grid{grid-template-columns:1fr 1fr}.card .cover{height:130px}.card .cover img{max-height:110px}}
@media print{body.printing-planning .hero,body.printing-planning .program-nav,body.printing-planning .region-context,body.printing-planning .controls,body.printing-planning .tabs,body.printing-planning .year,body.printing-planning .section-buttons,body.printing-planning .concepts,body.printing-planning .focus-filter,body.printing-planning #planner>h2,body.printing-planning #planner>p,body.printing-planning #planner>label{display:none!important}body.printing-planning #planner{display:block!important;border:0;padding:0}body.printing-planning #view{display:block!important}body.printing-planning .path{display:block}body.printing-planning .context{break-inside:avoid}}
