/* Students-only styles. Frame and widgets come from /shared/site.css and /shared/ui.css. */
.board{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:8px 0 0}
.board .col{background:var(--cream);border-radius:8px;padding:12px;min-height:120px;display:flex;flex-direction:column;gap:8px;transition:background .2s}
.board h4{margin:0 0 4px;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}
.board .col:empty::after,.board .col .hint{font-size:12px;color:var(--muted)}
.plan-card{padding:12px;font-size:14px;display:flex;justify-content:space-between;gap:8px;align-items:center}
.plan-card button{min-width:32px;min-height:32px;font-size:16px}
.deadline{font-weight:600}
.deadline.soon{color:var(--warn)}
.deadline-missing{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:4px}
#home-sch{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));min-width:0}
#hub-finder{scroll-margin-top:168px}
.hub-pair{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin-top:16px;min-width:0}
.hub-fold{margin:16px 0 0;border-top:1px solid var(--line);min-width:0}
.hub-fold>summary{min-height:44px;padding:12px 4px;font-size:18px;font-weight:600;cursor:pointer;line-height:1.3}
.hub-fold[open]>summary{margin-bottom:8px}
.hub-see{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin:0 0 16px}
.hub-see a,.hub-fold [data-gear] a{display:flex;align-items:center;min-height:44px;max-width:100%}
.nav[data-scroll].active{color:#69716c}
.nav[data-scroll].active:after{content:none}
[data-theme="dark"] .nav[data-scroll].active{color:#bbbebc}
@media(min-width:800px){.hub-pair{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}
@media(max-width:700px){.board{grid-template-columns:1fr}}
@media(max-width:600px){.hub-fold>summary{font-size:16px}}
