/* CampusOne Student + Lecturer Experience V4 */
.co-ui-v4 .co-course-nav-group{margin:2px 8px 6px}.co-ui-v4 .co-nav-parent{min-height:38px!important;padding:8px 10px!important;border-radius:7px!important}.co-ui-v4 .co-course-subnav{padding:2px 0 0!important;margin:0!important;display:none;gap:2px}.co-ui-v4 .co-course-nav-group.is-open .co-course-subnav{display:grid!important}.co-ui-v4 .co-course-subitem{min-width:0;height:34px;padding:0 10px!important;margin:0!important;border-radius:6px;display:flex;align-items:center;gap:6px;color:#aebbc2;text-decoration:none;font-size:12px;white-space:nowrap;overflow:hidden}.co-ui-v4 .co-course-subitem strong{flex:0 0 auto;font-size:11px}.co-ui-v4 .co-course-subitem span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.co-ui-v4 .co-course-subitem:hover{background:rgba(255,255,255,.055);color:#fff}.co-ui-v4 .co-course-subitem.is-active{background:rgba(33,143,104,.22);color:#fff;border-left:2px solid #47c39a;padding-left:8px!important}.co-ui-v4 .co-course-chevron{margin-left:auto;width:13px;height:13px;transform:rotate(0deg);transition:transform .16s ease}.co-ui-v4 .co-course-nav-group.is-open .co-course-chevron{transform:rotate(90deg)}
.co-ui-v4 .co-course-workspace-bar{display:none!important}.co-ui-v4 .co-course-nav-v4{margin:8px 0 12px;position:sticky;top:58px;z-index:18;background:#f4f6f7;padding-top:2px}.co-ui-v4 .co-course-tabs-v4{display:flex;overflow-x:auto;background:#fff;border:1px solid #d9e1e5;border-radius:9px;min-height:58px}.co-ui-v4 .co-course-tabs-v4 a{min-width:100px;padding:10px 18px!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#65727a!important;border-right:1px solid #e3e8eb;text-decoration:none;font-size:12px;font-weight:650;position:relative}.co-ui-v4 .co-course-tabs-v4 a:last-child{border-right:0}.co-ui-v4 .co-course-tabs-v4 a .co-icon{width:17px;height:17px}.co-ui-v4 .co-course-tabs-v4 a.is-active{background:#f4fbf8!important;color:#087a55!important}.co-ui-v4 .co-course-tabs-v4 a.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:#16865f;border-radius:3px 3px 0 0}
.co-ui-v4 .co-two-week-v4{overflow:hidden}.co-ui-v4 .co-two-week-grid-v4{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));border-top:1px solid #dce3e7;border-left:1px solid #dce3e7;overflow-x:auto}.co-ui-v4 .co-two-week-day{min-height:118px;background:#fff;border-right:1px solid #dce3e7;border-bottom:1px solid #dce3e7}.co-ui-v4 .co-two-week-day>header{height:38px;padding:6px 9px;display:flex;align-items:baseline;gap:6px;background:#fafbfb}.co-ui-v4 .co-two-week-day>header span,.co-ui-v4 .co-two-week-day>header small{font-size:9px;color:#77838b;text-transform:uppercase}.co-ui-v4 .co-two-week-day>header strong{font-size:15px;color:#1d2c34}.co-ui-v4 .co-two-week-day.is-today>header{background:#edf8f3}.co-ui-v4 .co-day-events{padding:6px;display:grid;gap:4px}.co-ui-v4 .co-mini-event{border-left:3px solid #839199;background:#f5f7f8;padding:5px 6px;border-radius:4px;min-width:0}.co-ui-v4 .co-mini-event b,.co-ui-v4 .co-mini-event span,.co-ui-v4 .co-mini-event small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.co-ui-v4 .co-mini-event b{font-size:9px}.co-ui-v4 .co-mini-event span{font-size:10px;font-weight:650}.co-ui-v4 .co-mini-event small{font-size:8px}.co-ui-v4 .co-mini-event.is-assignment{border-color:#16865f;background:#eef8f4}.co-ui-v4 .co-mini-event.is-quiz{border-color:#3478b9;background:#eff6fc}.co-ui-v4 .co-mini-event.is-test{border-color:#d28a1d;background:#fff7e9}.co-ui-v4 .co-mini-event.is-exam{border-color:#bd4b4b;background:#fff1f1}.co-ui-v4 .co-calendar-legend{display:flex;gap:16px;flex-wrap:wrap;padding:10px 14px;border-top:1px solid #e0e6e9;font-size:10px}.co-ui-v4 .co-calendar-legend span:before{content:"";display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:5px}.co-ui-v4 .co-calendar-legend .assignment:before{background:#16865f}.co-ui-v4 .co-calendar-legend .quiz:before{background:#3478b9}.co-ui-v4 .co-calendar-legend .test:before{background:#d28a1d}.co-ui-v4 .co-calendar-legend .exam:before{background:#bd4b4b}.co-ui-v4 .co-upcoming-v4{border-top:1px solid #e0e6e9;padding:12px 14px}.co-ui-v4 .co-upcoming-row{display:grid;grid-template-columns:80px 70px 1fr auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid #eef1f2;font-size:11px}.co-ui-v4 .co-event-type{font-size:9px;font-weight:700;text-transform:uppercase}.co-ui-v4 .co-event-type.is-assignment{color:#16865f}.co-ui-v4 .co-event-type.is-quiz{color:#3478b9}.co-ui-v4 .co-event-type.is-test{color:#b8730c}.co-ui-v4 .co-event-type.is-exam{color:#b54040}
.co-ui-v4 .co-notification-menu{position:relative}.co-ui-v4 .co-notification-menu>summary{list-style:none;position:relative}.co-ui-v4 .co-notification-menu>summary::-webkit-details-marker{display:none}.co-ui-v4 .co-notification-badge{position:absolute;right:-4px;top:-5px;min-width:16px;height:16px;padding:0 4px;border-radius:9px;background:#c44;color:#fff;font-size:9px;display:grid;place-items:center;font-weight:700}.co-ui-v4 .co-notification-popover{right:0;width:350px;max-width:calc(100vw - 24px);padding:0!important;overflow:hidden}.co-ui-v4 .co-notification-popover .co-popover-head{display:flex;justify-content:space-between;align-items:center;padding:13px 14px;border-bottom:1px solid #e1e6e9}.co-ui-v4 .co-notification-popover .co-popover-head span strong,.co-ui-v4 .co-notification-popover .co-popover-head span small{display:block}.co-ui-v4 .co-notification-list{max-height:360px;overflow:auto}.co-ui-v4 .co-notification-item{display:grid!important;grid-template-columns:8px 1fr!important;gap:9px!important;padding:11px 14px!important;border-bottom:1px solid #eef1f2!important}.co-ui-v4 .co-notification-item span:nth-child(2){display:block}.co-ui-v4 .co-notification-item strong,.co-ui-v4 .co-notification-item small,.co-ui-v4 .co-notification-item time{display:block}.co-ui-v4 .co-notification-item strong{font-size:11px}.co-ui-v4 .co-notification-item small,.co-ui-v4 .co-notification-item time{font-size:9px;color:#7b878e;margin-top:2px}.co-ui-v4 .co-notification-dot{width:6px;height:6px;border-radius:50%;background:#c8d0d4;margin-top:5px}.co-ui-v4 .co-notification-item.is-unread .co-notification-dot{background:#16865f}.co-ui-v4 .co-notification-item.is-unread{background:#f6fbf9}.co-ui-v4 .co-notification-empty{padding:28px 16px;display:grid;place-items:center;text-align:center;color:#78848b;gap:5px}.co-ui-v4 .co-notification-empty .co-icon{width:24px;height:24px}.co-ui-v4 .co-notification-footer{display:block!important;text-align:center;padding:11px!important;font-weight:650;border-top:1px solid #e1e6e9}
.co-ui-v4 .co-week-grid{display:grid;grid-template-columns:repeat(5,minmax(180px,1fr));gap:8px;overflow-x:auto}.co-ui-v4 .co-week-day{border:1px solid #dce3e7;border-radius:8px;background:#fff;min-width:180px}.co-ui-v4 .co-week-day>header{padding:10px 12px;border-bottom:1px solid #e5eaed;display:flex;justify-content:space-between}.co-ui-v4 .co-week-day.is-today>header{background:#eef8f4;color:#087a55}.co-ui-v4 .co-week-sessions{padding:8px;display:grid;gap:7px}.co-ui-v4 .co-class-session{padding:9px;border-left:3px solid #16865f;background:#f6faf8;border-radius:5px}.co-ui-v4 .co-class-session time,.co-ui-v4 .co-class-session strong,.co-ui-v4 .co-class-session span,.co-ui-v4 .co-class-session small{display:block}.co-ui-v4 .co-class-session time{font-size:9px;color:#64727a}.co-ui-v4 .co-class-session strong{font-size:11px;margin-top:2px}.co-ui-v4 .co-class-session span{font-size:10px}.co-ui-v4 .co-class-session small{font-size:9px;color:#758188;margin-top:3px}.co-ui-v4 .co-no-class{font-size:10px;color:#9aa4aa;padding:8px}.co-ui-v4 .co-timetable-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}.co-ui-v4 .co-empty-state-v4{padding:42px 20px;text-align:center;display:grid;place-items:center;gap:6px;color:#718087}.co-ui-v4 .co-empty-state-v4 .co-icon{width:28px;height:28px}
.co-ui-v4 .co-attendance-layout,.co-ui-v4 .co-behaviour-layout{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(520px,1.6fr);gap:12px}.co-ui-v4 .co-inline-form-v4,.co-ui-v4 .co-behaviour-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.co-ui-v4 .co-inline-form-v4 label,.co-ui-v4 .co-behaviour-form label{display:grid;gap:4px;font-size:10px;font-weight:650}.co-ui-v4 .co-inline-form-v4 input,.co-ui-v4 .co-behaviour-form input,.co-ui-v4 .co-behaviour-form select,.co-ui-v4 .co-behaviour-form textarea,.co-ui-v4 .co-attendance-row select,.co-ui-v4 .co-attendance-row input{border:1px solid #cfd9de!important;background:#fff!important;color:#26343b!important;border-radius:6px!important;padding:8px!important}.co-ui-v4 .co-inline-form-v4 .co-btn{align-self:end}.co-ui-v4 .co-session-list{display:grid;gap:5px;margin-top:14px}.co-ui-v4 .co-session-item{display:grid;padding:9px 10px;border:1px solid #e0e5e8;border-radius:6px;text-decoration:none}.co-ui-v4 .co-session-item.is-active{border-color:#16865f;background:#f0f8f4}.co-ui-v4 .co-session-item span{font-size:9px;color:#718087}.co-ui-v4 .co-attendance-table{margin-top:10px}.co-ui-v4 .co-attendance-row{display:grid;grid-template-columns:minmax(190px,1.4fr) minmax(130px,.8fr) 110px;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid #e8edef}.co-ui-v4 .co-attendance-row.head{font-size:9px;text-transform:uppercase;color:#748087;font-weight:700}.co-ui-v4 .co-attendance-row span strong,.co-ui-v4 .co-attendance-row span small{display:block}.co-ui-v4 .co-attendance-row span small{color:#7b878e;font-size:9px}.co-ui-v4 .co-form-actions{display:flex;justify-content:flex-end;margin-top:12px}.co-ui-v4 .co-behaviour-form .wide{grid-column:1/-1}.co-ui-v4 .co-note-timeline{display:grid;gap:8px;margin-top:12px}.co-ui-v4 .co-note-card{border:1px solid #dfe6e9;border-left:3px solid #85949b;border-radius:6px;padding:10px 12px}.co-ui-v4 .co-note-card.is-positive{border-left-color:#16865f}.co-ui-v4 .co-note-card.is-concern{border-left-color:#c35b4b}.co-ui-v4 .co-note-card header{display:flex;justify-content:space-between}.co-ui-v4 .co-note-card p{font-size:11px}.co-ui-v4 .co-note-card footer{font-size:9px;color:#7b878e}.co-ui-v4 .co-student-roster-v4{display:grid}.co-ui-v4 .co-student-row{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;padding:10px 4px;border-bottom:1px solid #e9edef;text-decoration:none}.co-ui-v4 .co-student-row span:nth-child(2) strong,.co-ui-v4 .co-student-row span:nth-child(2) small{display:block}.co-ui-v4 .co-student-row span:nth-child(2) small{font-size:9px;color:#7b878e}.co-ui-v4 .co-assessment-hub .resource .actions .co-btn{color:#fff!important;background:#16865f!important;border-color:#16865f!important}
/* Fix course-settings contrast collisions from earlier generic green styles. */.co-ui-v4 .co-lms-shell .button,.co-ui-v4 .co-lms-shell button.button,.co-ui-v4 .co-lms-shell .co-btn.primary{background:#16865f!important;color:#fff!important;border-color:#16865f!important}.co-ui-v4 .co-lms-shell .secondary,.co-ui-v4 .co-lms-shell a.secondary{background:#fff!important;color:#26343b!important;border:1px solid #cfd9de!important}.co-ui-v4 .co-lms-shell .danger{background:#fff4f3!important;color:#a93f36!important;border-color:#e8b9b5!important}
@media(max-width:1100px){.co-ui-v4 .co-attendance-layout,.co-ui-v4 .co-behaviour-layout{grid-template-columns:1fr}.co-ui-v4 .co-two-week-grid-v4{grid-template-columns:repeat(7,130px)}.co-ui-v4 .co-week-grid{grid-template-columns:repeat(5,180px)}}
@media(max-width:760px){.co-ui-v4 .co-course-nav-v4{top:52px}.co-ui-v4 .co-course-tabs-v4 a{min-width:82px;padding:9px 12px!important}.co-ui-v4 .co-upcoming-row{grid-template-columns:70px 55px 1fr}.co-ui-v4 .co-upcoming-row time{grid-column:3}.co-ui-v4 .co-inline-form-v4,.co-ui-v4 .co-behaviour-form{grid-template-columns:1fr}.co-ui-v4 .co-behaviour-form .wide{grid-column:auto}.co-ui-v4 .co-attendance-row{grid-template-columns:1fr}.co-ui-v4 .co-attendance-row.head{display:none}}
/* CAMPUSONE_UAT_SESSION1_IDENTITY_ACCESS_POLISH_V1 */
.co-flash-wrap { margin-top:14px !important; }
.co-flash {
  padding:14px 16px !important;
  border-width:1px 1px 1px 4px !important;
  border-radius:8px !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:1.45 !important;
  box-shadow:0 4px 14px rgba(13,25,32,.06);
}
.co-flash.success {
  border-color:#2f7d32 !important;
  background:#edf8ee !important;
  color:#1f5b22 !important;
}
.co-flash.error {
  border-color:#b42318 !important;
  background:#fff0ef !important;
  color:#8f1712 !important;
}
.co-flash.warning {
  border-color:#a96d00 !important;
  background:#fff7e6 !important;
  color:#744d00 !important;
}
.co-form-alert {
  margin:0 0 14px;
  padding:12px 14px;
  border:1px solid;
  border-left-width:4px;
  border-radius:8px;
  font-size:13px;
  font-weight:750;
}
.co-form-alert.error {
  border-color:#b42318;
  background:#fff0ef;
  color:#8f1712;
}
.co-login-form { display:grid; gap:12px; }
.co-login-field { display:grid; gap:5px; }
.co-login-field label { font-size:12px; font-weight:750; color:var(--co-ink); }
.co-login-field input { width:100%; min-height:42px; padding:9px 10px; }
.co-field-error { color:#a61b16; font-size:12px; font-weight:750; }


/* CAMPUSONE_EDITS_GLOBAL_UX_V1 */
.co-ui-v4 a,.co-ui-v4 button,.co-ui-v4 input,.co-ui-v4 select,.co-ui-v4 textarea{transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease,color .16s ease,transform .16s ease}.co-ui-v4 button:not(:disabled):hover,.co-ui-v4 .button:hover,.co-ui-v4 .secondary:hover,.co-ui-v4 .co-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(20,42,51,.10)}.co-ui-v4 a:focus-visible,.co-ui-v4 button:focus-visible,.co-ui-v4 input:focus-visible,.co-ui-v4 select:focus-visible,.co-ui-v4 textarea:focus-visible{outline:3px solid rgba(22,134,95,.20)!important;outline-offset:2px}.co-ui-v4 input:not([type="checkbox"]):not([type="radio"]),.co-ui-v4 select,.co-ui-v4 textarea{color:#26343b!important;background:#fff!important;border-color:#cbd5da!important}.co-ui-v4 input::placeholder,.co-ui-v4 textarea::placeholder{color:#87939a!important;opacity:1}.co-ui-v4 input[type="checkbox"],.co-ui-v4 input[type="radio"]{accent-color:#16865f;vertical-align:middle}.co-ui-v4 label:has(> input[type="checkbox"]),.co-ui-v4 label:has(> input[type="radio"]){align-items:center}.co-ui-v4 .crumb,.co-ui-v4 .access-crumb{display:flex;gap:6px;align-items:center;flex-wrap:wrap;color:#6f7c83;font-size:11px}.co-ui-v4 .crumb a,.co-ui-v4 .access-crumb a{color:#315f55;text-decoration:none}.co-ui-v4 .crumb a:hover,.co-ui-v4 .access-crumb a:hover{text-decoration:underline}.co-ui-v4 .actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.co-ui-v4 .actions .button,.co-ui-v4 .actions .secondary,.co-ui-v4 .actions .co-btn{min-height:36px;display:inline-flex;align-items:center;justify-content:center}.co-public-form{max-width:860px;margin:0 auto;padding:28px 22px 60px}.co-public-form>.panel{margin-top:14px}.co-public-form form p{display:grid;gap:5px;margin:0 0 13px}.co-public-form form label{font-size:11px;font-weight:750;color:#33444c}.co-public-form form input,.co-public-form form select,.co-public-form form textarea{width:100%;box-sizing:border-box;padding:9px 10px;border:1px solid #cbd5da;border-radius:6px;background:#fff;color:#26343b}.co-public-form .helptext{display:block;color:#77848b;font-size:10px}.co-status-card{display:grid;gap:4px;border:1px solid #dce4e7;border-left:4px solid #74828a;border-radius:7px;background:#fff;padding:12px 14px;margin:12px 0}.co-status-card strong{font-size:18px}.co-status-card span,.co-status-card small{font-size:10px;color:#718087}.co-status-card.status-submitted,.co-status-card.status-under_review{border-left-color:#b27818;background:#fffaf0}.co-status-card.status-offered,.co-status-card.status-accepted{border-left-color:#16865f;background:#f1faf6}.co-status-card.status-rejected{border-left-color:#b84b43;background:#fff3f2}.co-file-list{display:grid;gap:7px;margin:12px 0}.co-file-card{display:flex;align-items:center;gap:10px;border:1px solid #dce4e7;border-radius:7px;background:#fff;padding:10px 12px}.co-file-card .co-file-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:6px;background:#eef7f3;color:#16865f;font-weight:800}.co-file-card strong,.co-file-card small{display:block}.co-file-card small{font-size:10px;color:#758188;margin-top:2px}.co-ui-v4 .button[disabled],.co-ui-v4 button[disabled]{opacity:.48!important;cursor:not-allowed!important;transform:none!important;box-shadow:none!important}

/* CAMPUSONE_COURSE_NAVIGATION_SIDEBAR_V1 */
.co-ui-v4 .co-course-tree{display:grid!important;gap:2px!important;padding-top:3px!important}
.co-ui-v4 .co-course-catalog,.co-ui-v4 .co-sidebar-term{min-width:0;margin:0}
.co-ui-v4 .co-course-catalog>summary,.co-ui-v4 .co-sidebar-term>summary{list-style:none;cursor:pointer;user-select:none}
.co-ui-v4 .co-course-catalog>summary::-webkit-details-marker,.co-ui-v4 .co-sidebar-term>summary::-webkit-details-marker{display:none}
.co-ui-v4 .co-course-tree-root{min-height:32px;padding:0 10px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-radius:6px;color:#d1d9dd;font-size:11px;font-weight:750;letter-spacing:.01em}
.co-ui-v4 .co-course-tree-root:hover{background:rgba(255,255,255,.055);color:#fff}
.co-ui-v4 .co-course-tree-body{display:grid;gap:2px;padding:2px 0 2px 5px}
.co-ui-v4 .co-sidebar-term>summary{min-height:31px;padding:0 7px 0 10px;display:flex;align-items:center;justify-content:space-between;gap:6px;border-radius:6px;color:#9fadb4;font-size:10.5px;font-weight:650}
.co-ui-v4 .co-sidebar-term>summary:hover{background:rgba(255,255,255,.045);color:#e5eaed}
.co-ui-v4 .co-sidebar-term-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.co-ui-v4 .co-sidebar-term-name strong{color:#c2cdd2;font-weight:800}
.co-ui-v4 .co-sidebar-term-meta{display:flex;align-items:center;gap:4px;flex:0 0 auto}
.co-ui-v4 .co-sidebar-term-meta small{min-width:18px;height:18px;padding:0 5px;border-radius:9px;display:grid;place-items:center;background:rgba(255,255,255,.06);color:#8fa0a8;font-size:9px;font-weight:750}
.co-ui-v4 .co-tree-chevron{width:12px;height:12px;flex:0 0 12px;transition:transform .16s ease}
.co-ui-v4 .co-course-catalog[open]>.co-course-tree-root .co-tree-chevron,.co-ui-v4 .co-sidebar-term[open]>summary .co-tree-chevron{transform:rotate(90deg)}
.co-ui-v4 .co-sidebar-term-list{display:grid;gap:1px;padding:1px 0 4px 7px;border-left:1px solid rgba(255,255,255,.07);margin-left:10px}
.co-ui-v4 .co-sidebar-term-list .co-course-subitem{height:31px!important;padding:0 8px!important;gap:5px!important;border-radius:5px!important;font-size:10.5px!important}
.co-ui-v4 .co-sidebar-term-list .co-course-subitem strong{font-size:10px!important;color:#c3cdd2}
.co-ui-v4 .co-sidebar-term-list .co-course-subitem span{color:#9eabb2}
.co-ui-v4 .co-sidebar-term-list .co-course-subitem:hover strong,.co-ui-v4 .co-sidebar-term-list .co-course-subitem:hover span,.co-ui-v4 .co-sidebar-term-list .co-course-subitem.is-active strong,.co-ui-v4 .co-sidebar-term-list .co-course-subitem.is-active span{color:#fff}
.co-ui-v4 .co-sidebar-term-list .co-course-subitem.is-active{border-left:2px solid #47c39a!important;padding-left:6px!important}
.co-ui-v4 .co-course-tree-empty{padding:8px 10px;color:#7f9098;font-size:10px}

/* CAMPUSONE_COURSE_NAVIGATION_SIDEBAR_V1_1 */
/* Make My Courses / My Classes a first-class nav row, aligned with Dashboard. */
.co-ui-v4 .co-course-nav-group{margin:0!important;min-width:0}
.co-ui-v4 .co-nav-parent{
  position:relative;width:100%;min-height:38px!important;display:flex;align-items:center;gap:10px;
  margin:2px 0!important;padding:8px 10px!important;border:0!important;border-radius:6px!important;
  background:transparent!important;color:var(--co-sidebar-text)!important;text-align:left;white-space:nowrap;
  font:inherit;font-size:12px!important;font-weight:600!important;line-height:1.2;cursor:pointer;
  box-shadow:none!important;transform:none!important;
}
.co-ui-v4 .co-nav-parent>.co-icon:first-child{width:17px;height:17px;flex:0 0 17px;color:#95a2a9}
.co-ui-v4 .co-nav-parent:hover{background:rgba(255,255,255,.06)!important;color:#fff!important}
.co-ui-v4 .co-nav-parent:hover>.co-icon:first-child{color:#c6e9d8}
.co-ui-v4 .co-nav-parent.is-active{background:rgba(31,122,90,.25)!important;color:#fff!important;box-shadow:inset 3px 0 0 #42a67f!important}
.co-ui-v4 .co-nav-parent.is-active>.co-icon:first-child{color:#65c49d}
.co-ui-v4 .co-course-chevron{margin-left:auto!important;width:13px!important;height:13px!important;flex:0 0 13px!important}

/* V1 had .co-course-tree{display:grid!important}, which overrode the closed state. */
.co-ui-v4 .co-course-nav-group:not(.is-open) .co-course-subnav.co-course-tree{display:none!important}
.co-ui-v4 .co-course-nav-group.is-open .co-course-subnav.co-course-tree{display:grid!important}
.co-ui-v4 .co-course-subnav.co-course-tree{gap:1px!important;padding:1px 0 3px 27px!important;margin:0!important}
.co-ui-v4 .co-course-tree-body{display:grid!important;gap:1px!important;padding:0!important;min-width:0}

/* All Courses / All Classes is a destination link, not another accordion. */
.co-ui-v4 .co-course-subnav .co-course-all-link{
  min-height:31px!important;height:31px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
  gap:6px!important;margin:0!important;padding:0 7px 0 10px!important;border-radius:6px!important;
  color:#c7d1d6!important;text-decoration:none!important;font-size:10.5px!important;font-weight:750!important;
}
.co-ui-v4 .co-course-subnav .co-course-all-link:hover{background:rgba(255,255,255,.05)!important;color:#fff!important}
.co-ui-v4 .co-course-subnav .co-course-all-link.is-active{background:rgba(33,143,104,.18)!important;color:#fff!important;box-shadow:none!important}
.co-ui-v4 .co-tree-link-chevron{width:12px!important;height:12px!important;flex:0 0 12px!important;color:#778891!important}
.co-ui-v4 .co-course-all-link:hover .co-tree-link-chevron,.co-ui-v4 .co-course-all-link.is-active .co-tree-link-chevron{color:#dce5e9!important}

/* Semester rows sit at the same nested level as All Courses. */
.co-ui-v4 .co-sidebar-term>summary{padding-left:10px!important}
.co-ui-v4 .co-sidebar-term-list{margin-left:10px!important}

/* Keep the compact sidebar usable when the whole navigation rail is collapsed. */
.co-ui-v4 .co-app-shell.co-sidebar-collapsed .co-nav-parent{justify-content:center!important;padding-inline:0!important}
.co-ui-v4 .co-app-shell.co-sidebar-collapsed .co-nav-parent>span,
.co-ui-v4 .co-app-shell.co-sidebar-collapsed .co-nav-parent .co-course-chevron,
.co-ui-v4 .co-app-shell.co-sidebar-collapsed .co-course-subnav{display:none!important}

/* CAMPUSONE_CLASS_ACTIONS_UI_V1 */
/* Course action controls must be available on class pages that do not load lms.css. */
body.co-ui-v4 .co-course-shell-nav{
  display:flex!important;
  align-items:flex-start!important;
  gap:10px!important;
  margin:0 0 12px!important;
}
body.co-ui-v4 .co-course-shell-nav .co-course-tabs{flex:1 1 auto!important;min-width:0!important}
body.co-ui-v4 .co-course-add-menu{position:relative!important;flex:0 0 auto!important;margin:0!important}
body.co-ui-v4 .co-course-add-menu>summary{
  list-style:none!important;
  cursor:pointer!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:38px!important;
  padding:8px 14px!important;
  border:1px solid #16865f!important;
  border-radius:9px!important;
  background:#16865f!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:750!important;
  line-height:1!important;
  box-shadow:none!important;
}
body.co-ui-v4 .co-course-add-menu>summary::-webkit-details-marker{display:none!important}
body.co-ui-v4 .co-course-add-menu>summary:hover{background:#117451!important;border-color:#117451!important;color:#fff!important}
body.co-ui-v4 .co-course-add-popover{
  position:absolute!important;
  right:0!important;
  top:44px!important;
  z-index:40!important;
  width:280px!important;
  padding:7px!important;
  border:1px solid #d7e0e4!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 16px 40px rgba(34,49,61,.16)!important;
}
body.co-ui-v4 .co-course-add-popover a{
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
  padding:9px 10px!important;
  border-radius:7px!important;
  color:#26343b!important;
  text-decoration:none!important;
}
body.co-ui-v4 .co-course-add-popover a:hover{background:#f2f7f5!important}
body.co-ui-v4 .co-course-add-popover strong{font-size:11px!important;color:#1f3038!important}
body.co-ui-v4 .co-course-add-popover small{font-size:9px!important;color:#718087!important}

/* V1 had a higher-specificity .actions a rule that painted text green on filled green buttons. */
body.co-ui-v4 .co-lms-shell .actions a.button:not(.secondary):not(.danger),
body.co-ui-v4 .co-lms-shell .actions button.button:not(.secondary):not(.danger),
body.co-ui-v4 .co-lms-shell a.button:not(.secondary):not(.danger),
body.co-ui-v4 .co-lms-shell button.button:not(.secondary):not(.danger),
body.co-ui-v4 a.co-btn.primary,
body.co-ui-v4 button.co-btn.primary,
body.co-ui-v4 input.co-btn.primary{
  background:#16865f!important;
  border-color:#16865f!important;
  color:#fff!important;
}
body.co-ui-v4 .co-lms-shell .actions a.button:not(.secondary):not(.danger):hover,
body.co-ui-v4 .co-lms-shell .actions button.button:not(.secondary):not(.danger):hover,
body.co-ui-v4 .co-lms-shell a.button:not(.secondary):not(.danger):hover,
body.co-ui-v4 .co-lms-shell button.button:not(.secondary):not(.danger):hover,
body.co-ui-v4 a.co-btn.primary:hover,
body.co-ui-v4 button.co-btn.primary:hover{
  background:#117451!important;
  border-color:#117451!important;
  color:#fff!important;
}

@media(max-width:900px){
  body.co-ui-v4 .co-course-shell-nav{flex-direction:column!important}
  body.co-ui-v4 .co-course-add-menu{align-self:flex-end!important}
}
@media(max-width:620px){
  body.co-ui-v4 .co-course-add-popover{position:fixed!important;left:12px!important;right:12px!important;top:auto!important;width:auto!important}
}

/* CAMPUSONE_OVERLAY_EDITORS_CALENDAR_TYPING_V1 */
body.co-modal-open{overflow:hidden!important}
.co-editor-overlay{
  position:fixed;inset:0;z-index:10000;
  display:flex;align-items:center;justify-content:center;
  padding:22px;background:rgba(16,31,38,.56);
  backdrop-filter:blur(2px);
}
.co-editor-modal{
  width:min(1120px,96vw);max-height:94vh;
  display:flex;flex-direction:column;overflow:hidden;
  border:1px solid #d7e0e4;border-radius:16px;background:#fff;
  box-shadow:0 28px 80px rgba(16,31,38,.28);
}
.co-editor-modal-head{
  min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:14px 18px;border-bottom:1px solid #e1e8eb;background:#fff;
}
.co-editor-modal-head>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.co-editor-modal-kicker{font-size:10px;line-height:1.2;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#16865f}
.co-editor-modal-title{font-size:18px;line-height:1.25;color:#172b38;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.co-editor-modal-close{
  width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;
  padding:0;border:1px solid #d7e0e4;border-radius:10px;background:#fff;color:#4c616d;
  font-size:26px;line-height:1;cursor:pointer;
}
.co-editor-modal-close:hover{background:#f3f7f6;color:#172b38;border-color:#bfcdd2}
.co-editor-modal-body{position:relative;min-height:260px;height:min(780px,calc(94vh - 68px));background:#fff}
.co-editor-loading{position:absolute;inset:0;z-index:1;display:grid;place-items:center;color:#72838b;font-size:13px;background:#fff}
.co-editor-frame{width:100%;height:100%;border:0;background:#fff;opacity:0;transition:opacity .12s ease}
.co-editor-frame.is-ready{opacity:1}
@media(max-width:720px){
  .co-editor-overlay{padding:0}
  .co-editor-modal{width:100vw;max-height:100vh;height:100vh;border:0;border-radius:0}
  .co-editor-modal-body{height:calc(100vh - 68px)}
}

