/* The original layout and components, updated for the supplied navy/teal identity. */
body{font-size:1rem}button,input,select,textarea{font-size:1rem}input,select,textarea{max-width:100%}button,a{overflow-wrap:anywhere}p{line-height:1.65}label{display:block;font-size:.875rem;font-weight:600;margin:.8rem 0 .35rem}textarea{width:100%;min-height:110px;border:1px solid var(--line);border-radius:5px;padding:.75rem;resize:vertical;background:white;color:var(--ink)}select{padding:.55rem .7rem;min-height:44px}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.8125rem;line-height:1.6;max-width:100%;background:#eff4f7;padding:1rem;border-radius:5px}code{overflow-wrap:anywhere}
.sidebar{width:264px;padding:22px 18px;overflow-y:auto;background:#eaf0f4;scrollbar-width:thin}.brand{letter-spacing:-.5px;font-size:1.4rem;line-height:1.15;gap:10px;flex:none}.logo-crop{display:block;width:74px;height:53px;overflow:hidden;background:#fff;border-radius:6px}.logo-crop img{display:block;width:74px;height:74px}.workspace-label{display:block;font-size:.75rem;letter-spacing:0;color:var(--muted);margin:18px 0}.primary-nav button{font-size:.875rem;padding:9px 10px;min-height:38px;color:var(--muted)}.primary-nav button.active{background:#cfe7e9;color:var(--ink)}.nav-label{font-size:.75rem;margin:22px 8px 8px}.sidebar-bottom{padding-top:20px;flex:none}.local-label,.progress-line,.backup-actions{font-size:.875rem}.sidebar-bottom>small{font-size:.75rem}.meter,.tiny-meter{background:#d0e0e7}.meter i,.tiny-meter i{background:var(--green)}#year-nav button{font-size:.875rem;padding:8px}#year-nav button.active,#year-nav button:hover{background:#d9e9ed}.green-dot{background:var(--green)}main{margin-left:264px;padding:0 clamp(20px,3.1vw,50px);max-width:1700px}.topbar{height:66px;font-size:.875rem;gap:12px}.private-badge{font-size:.75rem;color:var(--muted);background:#eef5f6;flex:none}.breadcrumb{color:var(--muted)}.breadcrumb b{color:var(--ink)}.hero{padding:26px 0 22px;align-items:flex-start}.hero .eyebrow{font-size:.75rem;letter-spacing:.06em;color:var(--muted)}h1{font-size:clamp(30px,3vw,43px);letter-spacing:-.9px;margin:10px 0 12px}.hero p{font-size:1rem}.hero-aside{min-width:155px;padding-top:18px}.primary-button{font-size:.875rem;min-height:44px;gap:16px}.primary-button:hover{background:#075763}.source-bar{font-size:.875rem;gap:10px;flex-wrap:wrap;color:var(--muted)}.source-bar select{font-size:.875rem;max-width:290px}.source-note{font-size:.75rem}.source-bar button{font-size:.875rem}.section-heading{gap:12px;align-items:flex-start}.section-heading h2,.unit-section-head h2{font-size:1.65rem}.section-heading small,.path-hint,.result-line,.semester-label{font-size:.8125rem;color:var(--muted)}.phase-labels{font-size:.75rem}.year-code,.year-card .year-code,.year-card small{font-size:.75rem}.year-card{background:white}.year-card.active{background:#dff1f1;border-color:#208c91;color:var(--ink)}.year-card.foundation{background:#edf6f8}.year-card.foundation.active{background:#dff1f1}.year-card strong{color:var(--ink)}.filters{flex-wrap:wrap}.filters input,.filters select{font-size:.875rem;min-height:44px}.filters select{max-width:100%;flex:1;min-width:130px}.searchbox{flex:2;min-width:min(270px,100%);background:white}.unit-card .scope,.unit-card p{font-size:1rem;color:var(--muted)}.unit-card h3{font-size:1.5rem}.subject-badge,.card-id,.card-footer{font-size:.75rem}.unit-card{background:white;min-width:0}.unit-card:hover{border-color:#0b8a90}.subject-badge{background:#edf4f6;color:#245566}.unit-arrow{color:var(--green)}.notice{font-size:.875rem;background:#eef5f8;border-color:#cadae4;color:#314f63}.empty,.source-panel.active{background:#e9f4f4}.empty p,.source-panel p,.source-details p,.source-details li,.dialog-body p{font-size:1rem;color:var(--muted)}.source-panel h3{font-size:1.5rem}.source-panel.active{border-color:#238f91}.source-details summary{font-size:1rem}.source-details ul{font-size:1rem}.source-panel{min-width:0}.source-panel button{font-size:.875rem}.resource-card h3{font-size:1.4rem}.resource-card p{font-size:1rem}.resource-card .resource-meta{font-size:.8125rem;color:var(--muted)}.resource-actions,.load-more{font-size:.875rem}.eyebrow,.dialog-eyebrow{font-size:.75rem;color:var(--muted)}.dialog-head{background:#edf4f7}.dialog-tabs button{font-size:.875rem}.dialog-body h3{font-size:1rem}.dialog-body .competency{font-size:1rem;background:#e6f3f3;color:var(--ink)}.topic-list span,.pill{font-size:.8125rem;color:var(--muted);background:#e8f0f4}.metadata{font-size:.875rem;grid-template-columns:minmax(110px,160px) minmax(0,1fr)}.metadata dt{color:var(--muted)}.metadata dd{margin:0;overflow-wrap:anywhere}.progress-row select,.progress-row small,.provenance,.micro,.resource-row small{font-size:.8125rem}.resource-row h4{font-size:1.25rem}.resource-row a{font-size:.875rem}.relation-node{background:white;font-size:1rem}.relation-node small{font-size:.75rem}.relation-node.current{background:#e3f4f4;border-color:#18868b}.relation-column h4{font-size:.875rem}.text-button,.inline-link{font-size:inherit;color:#076f79;text-decoration:underline;text-underline-offset:3px;padding:0;display:inline}.inline-link{min-height:30px}.action-row{display:flex;flex-wrap:wrap;gap:22px;align-items:center;margin:24px 0}.first14-grid,.queue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0}.first14-grid h3{margin:14px 0}.first14-grid p+p{margin-top:12px}.entry-route{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:#e0f1f1;border:1px solid #aacfd1;border-radius:6px;padding:15px;margin:20px 0}.entry-route button{padding:0;text-decoration:underline}.entry-route strong{font-size:1rem}.diagnostic-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:22px}.diagnostic-nav{display:grid;align-content:start;gap:5px;max-height:650px;overflow:auto}.diagnostic-nav button{font-size:.875rem;text-align:left;padding:10px;border:1px solid var(--line);border-radius:5px;background:white}.diagnostic-nav button[aria-current=step]{background:#d8eff0;border-color:#18868b}.diagnostic-nav small{display:block;color:var(--muted);font-size:.75rem}.diagnostic-question h2{margin-top:8px}.diagnostic-question .diagnostic-prompt{font-size:1.2rem;color:var(--ink);margin:18px 0}.diagnostic-question textarea{min-height:170px}.diagnostic-question form button{margin-top:14px}.review-key{border-top:1px solid var(--line);margin-top:22px;padding-top:22px}.review-key h3{margin:0 0 12px}.review-key p{background:#e5f2f3;padding:16px}.gate-note{border-left:3px solid #18868b;background:#edf5f6;padding:12px 16px;margin:10px 0}.gate-note p{margin-top:6px}.graph-scroll{max-width:100%;overflow:auto;background:white;border:1px solid var(--line);border-radius:8px;margin:22px 0;max-height:750px}.prerequisite-map{width:100%;min-width:1180px;display:block}.graph-semester{font-size:13px;fill:#506577}.stats-strip{display:flex;flex-wrap:wrap;gap:20px;margin:24px 0;padding:18px 0;border-block:1px solid var(--line)}.stats-strip span{color:var(--muted);font-size:.875rem}.stats-strip strong{color:var(--ink);font-size:1.5rem;display:block}.about-brand{display:flex;gap:22px;align-items:center}.about-brand img{object-fit:contain;flex:none;background:white;border-radius:8px}.about-brand p{margin:10px 0}.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand img{object-fit:contain;background:white;border-radius:5px}footer{font-size:.8125rem;color:var(--muted);align-items:center}.loading img{object-fit:contain;background:white;border-radius:8px}.source-table,.source-table td small{font-size:.75rem}.source-table td{overflow-wrap:anywhere}.warning{font-size:.875rem}.missing{font-size:.875rem}.source-details h2{font-size:1.5rem}#toast{font-size:.875rem}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#168d97}
@media(max-width:1100px){.hero-aside{display:none}.year-rail{grid-template-columns:repeat(4,minmax(0,1fr))}.phase-labels{display:none}.diagnostic-layout{grid-template-columns:170px minmax(0,1fr)}}
@media(max-width:800px){.sidebar{position:relative;width:100%;height:auto;padding:15px 18px;overflow:visible;display:block}.brand{font-size:1.3rem}.logo-crop{width:64px;height:46px}.logo-crop img{width:64px;height:64px}.workspace-label{margin:10px 0 14px}.primary-nav{display:flex;overflow-x:auto;gap:6px;padding-bottom:8px}.primary-nav button{flex:none;width:auto;white-space:nowrap;padding:9px 12px}.nav-label,#year-nav,.sidebar-bottom{display:none}main{margin:0;padding:0 20px}.hero{padding:20px 0}.hero .eyebrow{font-size:.75rem;line-height:1.6}.topbar{font-size:.8125rem;height:auto;min-height:54px}.breadcrumb span{margin:0 7px}.source-bar>span:first-child,.source-note{display:none}.source-bar select{max-width:calc(100% - 95px);flex:1}.source-bar button{font-size:.8125rem}.first14-grid,.queue-grid{grid-template-columns:1fr}.year-rail{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.year-card{padding:12px 8px;min-height:100px}.year-card strong{font-size:1.25rem}.year-card small,.year-card .year-code{font-size:.75rem}.diagnostic-layout{grid-template-columns:1fr}.diagnostic-nav{display:flex;overflow:auto;max-height:none;gap:8px}.diagnostic-nav button{min-width:130px}.about-brand{display:block}.about-brand img{width:150px;height:150px}.filters{display:flex}.filters select:last-child:nth-child(4){max-width:none}.unit-grid,.resource-grid,.source-grid{grid-template-columns:1fr}.unit-section-head{align-items:flex-start;gap:12px}.unit-section-head p{font-size:.8125rem}.path-hint{font-size:.875rem}.card-footer{font-size:.75rem;flex-wrap:wrap}.dialog-tabs{gap:18px}.dialog-tabs button{font-size:.875rem}.dialog-body{padding:22px 18px}.metadata{grid-template-columns:110px minmax(0,1fr)}.relation-grid{grid-template-columns:1fr}.relation-arrow{display:none}.resource-actions{font-size:.875rem}.resource-row{align-items:flex-start}footer{flex-direction:column;align-items:flex-start;gap:16px}.section-heading small{font-size:.8125rem}.section-heading h2{font-size:1.45rem}.private-badge{font-size:.75rem;padding:5px 7px}.source-panel{padding:18px}.progress-row{flex-wrap:wrap}}
@media(max-width:380px){main{padding:0 14px}.topbar .private-badge{display:none}.year-rail{grid-template-columns:repeat(3,minmax(0,1fr))}.metadata{grid-template-columns:1fr;gap:4px}.metadata dd{margin-bottom:12px}.entry-route{gap:8px}.filters select{min-width:110px}}
footer a{color:inherit;text-underline-offset:3px}footer{gap:24px;line-height:1.7}.error-page{display:block}.error-page .error-content{margin:0 auto;padding:64px 24px;max-width:760px;text-align:center}.error-content>img{object-fit:contain}.error-content .primary-button{display:inline-block;margin:12px}
