.year-focus{background:var(--green);color:white;border-radius:24px;padding:28px;margin-bottom:22px}.year-focus h2{font-size:28px;line-height:1.2}.year-focus .eyebrow{color:#c9ebdf}.year-focus .primary{background:var(--gold);border-color:var(--gold);color:var(--ink);font-weight:750}.year-focus .button{background:white;color:var(--green)}.year-focus-note{font-size:15px;margin:18px 0 0;color:#d8ece5}.year-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:24px}.year-summary span{background:white;border:1px solid var(--line);border-radius:16px;padding:18px;font-size:16px}.year-summary strong{font-size:30px;display:block}.year-module-row{display:flex;gap:22px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:20px 0}.year-module-row:first-of-type{margin-top:10px}.year-module-row h3{font-size:20px;margin-bottom:8px}.year-module-row h3 a{text-decoration:none}.year-module-row h3 a:hover{text-decoration:underline}.year-module-row p{font-size:16px;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.year-meta{font-size:14px!important;color:var(--muted);margin-bottom:8px!important}.year-row-actions{display:flex;flex-direction:column;gap:10px;flex-shrink:0;align-items:flex-end}.year-state{font-size:14px;background:#edf1f4;color:var(--muted);padding:5px 10px;border-radius:8px}.year-state.working{background:#fff5d9;color:#765308}.year-state.reviewed{background:var(--light);color:var(--green)}.period-title{display:flex;gap:18px;align-items:center}.period-title h2{margin:0 0 4px}.period-title p{margin:0;font-size:17px}.period-number{display:flex;width:48px;height:48px;border:1px solid var(--line);border-radius:12px;align-items:center;justify-content:center;font-weight:750;color:var(--green);flex-shrink:0}.year-note{margin:16px 0 22px}.year-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.year-form-grid input{min-width:0}.year-form-grid>div{min-width:0}#link-course{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}#link-course select{margin-bottom:12px}#module-settings label,#event-form label,#year-settings label,#journal-form label,#calendar-form label{margin-top:18px}#module-settings button,#event-form button,#year-settings button,#journal-form button,#calendar-form button{margin-top:18px}.connection-card{border-left:4px solid var(--green)}.year-tools{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.year-period{padding:26px}.year-module-row .button{min-height:44px;padding:9px 14px;font-size:16px}@media(max-width:760px){.year-focus{padding:24px}.year-focus h2{font-size:25px}.year-summary{gap:8px}.year-summary span{padding:12px;font-size:14px}.year-summary strong{font-size:27px}.year-module-row{display:block;padding:18px 0}.year-row-actions{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;margin-top:14px}.year-module-row>.button{margin-top:12px}.year-period{padding:20px}.period-title{gap:12px}.period-title h2{font-size:23px}.period-number{width:40px;height:40px}.year-form-grid{grid-template-columns:1fr}.year-tools a{flex:1}.year-focus .actions>*{width:100%}}
.catalogue-filters{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0 24px}.catalogue-filters label{min-width:0}.catalogue-filters select{width:100%}.catalogue-intro{border-left:4px solid var(--green)}.ndrc-resource{padding:20px 0;border-top:1px solid var(--line)}.ndrc-resource h3{font-size:20px;margin:4px 0 10px;overflow-wrap:anywhere}.ndrc-resource p{margin:8px 0}.ndrc-lesson summary{font-weight:700;padding:12px 0;cursor:pointer}.ndrc-lesson-text{white-space:pre-wrap;line-height:1.8;overflow-wrap:anywhere;margin:18px 0}.course-grid[hidden]{display:none}#catalogue-search{width:100%;margin-top:8px}#catalogue-count:empty{display:none}@media(max-width:600px){.catalogue-filters{grid-template-columns:1fr}.catalogue-intro h2{font-size:25px}}
