﻿.curriculum-header{text-align:center}.curriculum-header .curriculum-title{color:#fff;letter-spacing:2px;text-transform:uppercase;text-align:center;margin:0;font-size:clamp(1.8rem,3vw,2.6rem);font-weight:800}.curriculum-title.fade-in{opacity:0;animation:.6s forwards curriculum-title-fade;transform:translateY(18px)}@keyframes curriculum-title-fade{to{opacity:1;transform:translateY(0)}}.page-container{box-sizing:border-box;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:100%;margin:0 auto;padding:0 0 16px}.box{--glass-card-padding:var(--course-box-padding,24px);width:100%}.box-header{color:#fff;letter-spacing:.8px;margin-bottom:18px;font-size:1.4em;font-weight:700}.list{margin:0;padding:0;list-style:none}.list-item{--glass-list-gap:10px;--glass-list-padding:14px 16px}.custom-link{color:inherit;text-overflow:ellipsis;white-space:nowrap;width:100%;max-width:100%;text-decoration:none;display:block;overflow:hidden}.custom-link:hover,.custom-link:focus{text-decoration:none}@media (max-width:768px){.curriculum-header{margin:0 0 20px;padding:0 16px}.curriculum-header .curriculum-title{letter-spacing:1.1px;word-break:break-word;margin-top:68px;font-size:clamp(1.45rem,5vw,2rem)}.page-container{grid-template-columns:1fr;gap:14px;max-width:100%;padding:0 16px 24px;overflow-x:hidden}.box{--course-box-padding:18px;--glass-card-padding:var(--course-box-padding);width:100%;max-width:100%}.list-item{--glass-list-padding:12px 14px;--glass-list-gap:8px}.custom-link{white-space:normal;word-break:break-word;line-height:1.35}}.list-empty{color:#c8d8ecb8;flex-direction:column;gap:8px;margin:0;font-size:14px;display:flex}.list-empty__message{margin:0}.list-empty__link{color:#a0c4e7f2;font-weight:600;text-decoration:none}.list-empty__link:hover,.list-empty__link:focus{color:#f6fbff;text-decoration:underline}.course-retry-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f17500eb,#db6100eb);border:none;border-radius:5px;margin-top:12px;padding:10px 16px;font-size:14px;font-weight:600;transition:transform .15s,box-shadow .15s,opacity .15s}.course-retry-button:hover{transform:translateY(-1px);box-shadow:0 10px 24px -14px #f17500b3}.course-retry-button:disabled{opacity:.6;cursor:default}@media (max-width:480px){.curriculum-header{padding:0 12px}.curriculum-header .curriculum-title{letter-spacing:.9px;font-size:clamp(1.3rem,6vw,1.7rem)}.page-container{gap:12px;padding:0 12px 20px}.box{--course-box-padding:16px;--glass-card-padding:var(--course-box-padding);--glass-card-radius:5px;--glass-card-shadow:0 10px 20px #00000047;--glass-card-shadow-hover:0 12px 22px #00000059}.box-header{font-size:1.2rem}.list-item{--glass-list-padding:10px 12px;--glass-list-gap:8px}.custom-link{line-height:1.4}}.course-access-wrapper{flex-direction:column;gap:16px;width:100%;margin-bottom:24px;display:flex}.course-access-card{background:#121212eb;border:1px solid #ffffff29;border-radius:16px;padding:20px;box-shadow:0 16px 32px #00000059}.course-access-card__header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.course-access-card__header h2{margin:0;font-size:1.2rem}.course-access-card__tag{color:#a5b4fc;font-size:.85rem}.course-access-card__copy{color:#ffffffbf;margin:0 0 12px}.course-access-card__metrics{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.course-access-card__metric{background:#ffffff0a;border:1px solid #ffffff14;border-radius:12px;padding:12px}.course-access-card__metric span{color:#ffffffa6;margin-bottom:4px;font-size:.8rem;display:block}.course-access-card__metric strong{font-size:1.4rem;font-weight:700}.course-access-card__actions{flex-wrap:wrap;gap:12px;margin-top:16px;display:flex}.note-action{cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;padding:10px 20px;font-weight:600;text-decoration:none;transition:opacity .15s,transform .15s;display:inline-flex}.note-action--primary{color:#0b0b0b;background:linear-gradient(135deg,#ff8a05,#ffa940)}.note-action--secondary{color:#fff;background:#ffffff1f}.note-action:disabled{opacity:.6;cursor:not-allowed}.note-action:not(:disabled):hover,.note-action:not(:disabled):focus-visible{transform:translateY(-1px)}.note-row{background:#ffffff05;border:1px solid #ffffff29;border-radius:5px;padding:0;transition:transform .15s,background .15s,border-color .15s,box-shadow .15s}.note-row:hover{background:#ffffff14;border-color:#ffffff47;transform:translateY(-2px);box-shadow:0 12px 24px #00000040}.note-row__content{grid-template-columns:110px 1fr auto;align-items:center;gap:16px;padding:14px 16px;display:grid}.resource-layout{flex-direction:column;gap:24px;display:flex}.resource-filters{flex-wrap:wrap;justify-content:center;gap:12px;padding-bottom:16px;display:flex;position:relative}.resource-filter{color:#e7eef5;cursor:pointer;background:#1c1c1cb2;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:.9rem;transition:background .2s,border .2s;display:flex}.resource-filter__count{background:#ffffff1f;border-radius:999px;padding:2px 8px;font-size:.75rem}.resource-filter:hover,.resource-filter:focus-visible{background:#1c1c1c4d;border-color:#ffffff4d}.resource-filter--active{background:#1a1a1a;border-color:#6cf2ff;box-shadow:0 6px 18px #00000040}.resource-filter--assignment.resource-filter--active{color:#f7d284;background:#452f16;border-color:#f7d284}.resource-filter--assignment.resource-filter--active .resource-filter__count{background:#f7d28440}.resource-filter--exam_paper.resource-filter--active{color:#e2acce;background:#491d35;border-color:#e2acce}.resource-filter--exam_paper.resource-filter--active .resource-filter__count{background:#e2acce40}.resource-filter--notes.resource-filter--active{color:#b0b5ef;background:#2b2a47;border-color:#b0b5ef}.resource-filter--notes.resource-filter--active .resource-filter__count{background:#b0b5ef40}.resource-filter--lecture_slides.resource-filter--active{color:#b0d7fc;background:#26344b;border-color:#b0d7fc}.resource-filter--lecture_slides.resource-filter--active .resource-filter__count{background:#b0d7fc40}.resource-filters__line{background:linear-gradient(900deg,#fff0 0%,#ffffff59 20% 80%,#fff0 100%);height:1px;position:absolute;bottom:0;left:0;right:0}.note-card-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:18px;margin:0;padding:0;list-style:none;display:grid}.note-card-grid-wrapper{background:#1c1c1c;border:1px solid #ffffff14;border-radius:24px;padding:24px}.note-card{aspect-ratio:3/2;cursor:default;background:#ffffff08;border:1px solid #ffffff1f;border-radius:15px;align-items:stretch;min-height:0;transition:none;display:flex;overflow:hidden}.note-card.note-card--clickable{cursor:pointer}.note-card--unlocked{box-shadow:none;border-color:#ffffff1f}.note-card__media{background:#ffffff0a;border-right:1px solid #ffffff0d;flex:0 0 50%;justify-content:center;align-items:center;width:50%;height:100%;display:flex}.note-card__media img{object-fit:cover;width:100%;height:100%}.note-card__media-placeholder{color:#fff9;text-align:center;padding:0 12px;font-size:1.4rem;font-weight:600}.note-card__content{flex-direction:column;flex:0 0 50%;gap:12px;width:50%;height:100%;padding:16px 7px;font-size:.48rem;display:flex}.note-card__info{flex-direction:column;gap:8px;display:flex}.note-card__title{color:#fff;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere;margin:0;font-size:.62rem;font-weight:700}.note-card__course{color:#ffffffb3;margin:0;font-size:.48rem}.note-card__footer{flex-direction:column;align-items:flex-start;gap:6px;margin-top:auto;display:flex}.note-card__footer-row{align-items:center;gap:6px;display:flex}.note-card__resource{letter-spacing:.05em;border:1px solid;border-radius:9px;padding:.2rem;font-size:.4rem}.note-card__resource--assignment{color:#f7d284;background:#452f16;border-color:#f7d284}.note-card__resource--exam_paper{color:#e2acce;background:#491d35;border-color:#e2acce}.note-card__resource--notes{color:#b0b5ef;background:#2b2a47;border-color:#b0b5ef}.note-card__resource--lecture_slides{color:#b0d7fc;background:#26344b;border-color:#b0d7fc}.note-card__status{color:#fff;align-items:center;gap:6px;margin-top:5px;font-size:.55rem;font-weight:400;display:inline-flex}.note-card__status-icon{border-radius:999px;width:18px;height:18px}.note-card__views{color:#ffffffb3;letter-spacing:.05em;text-transform:uppercase;font-size:.45rem}.note-card__status-icon-wrapper{background:#fff;border-radius:999px;justify-content:center;align-items:center;width:12px;height:12px;display:inline-flex}.note-row__thumb{background:#ffffff0a;border:1px solid #ffffff1f;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:110px;height:150px;display:flex;overflow:hidden}.note-row__thumb img{object-fit:cover;width:100%;height:100%;display:block}.note-row__thumb-placeholder{color:#ffffff80;font-size:1.8rem;font-weight:600}.note-row__info{flex-direction:column;gap:4px;min-width:0;display:flex}.note-row__title{letter-spacing:.02em;color:#fff;font-size:15px;font-weight:400;line-height:1.2;text-decoration:none}.note-row--link{cursor:pointer}.note-row--link:focus-visible{border-color:#ffffff52;outline:none;box-shadow:0 12px 24px #00000059}.note-row--link:hover .note-row__title,.note-row--link:focus-visible .note-row__title{color:#fff}.note-row--clickable{cursor:pointer}.note-row--clickable[aria-disabled=true]{cursor:default;opacity:.8}.note-row--clickable:focus-visible{outline:none;box-shadow:0 0 0 2px #ffffff2e}.note-row--link:hover{background:#ffffff14;border-color:#ffffff47;transform:translateY(-2px)}.note-row__meta{color:#ffffffa6;font-size:.85rem}.note-row__badges{flex-wrap:wrap;gap:8px;display:flex}.note-row__badge{text-transform:uppercase;letter-spacing:.04em;border:1px solid #ffffff2e;border-radius:999px;padding:2px 8px;font-size:.48rem}.note-row__badge--success{color:#4ade80;border-color:#4ade8099}.note-row__badge--locked{color:#f87171;border-color:#f8717199}.note-row__actions{text-align:right;flex-shrink:0}.note-row__lock-group{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.note-row__hint{color:#fff9;margin:0;font-size:.75rem}.course-status{border-radius:12px;justify-content:space-between;align-items:center;padding:12px 16px;font-size:.95rem;display:flex}.course-status--success{color:#4ade80;background:#22c55e26}.course-status--error{color:#f87171;background:#f8717126}.course-status--info{color:#93c5fd;background:#3b82f61f}.course-status__close{color:inherit;cursor:pointer;background:0 0;border:none;font-size:1.1rem}.course-modal-overlay{z-index:1000;background:#000000a6;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.course-modal{background:#101010;border:1px solid #ffffff26;border-radius:16px;width:min(420px,100%);padding:24px;position:relative}.course-modal__close{color:#fffc;cursor:pointer;background:0 0;border:none;font-size:1.3rem;position:absolute;top:12px;right:12px}.course-modal__title{color:#fff;margin:0 0 8px;font-size:1.3rem}.course-modal__copy{color:#ffffffbf;margin:0 0 16px;line-height:1.4}.course-modal__actions{flex-wrap:wrap;gap:12px;display:flex}.course-modal__actions .note-action{border-radius:8px;padding:10px 18px}.course-modal__actions .note-action--primary{color:#000;background:#fff;border:none;font-weight:700;box-shadow:0 8px 18px #00000026}.course-modal__actions .note-action--primary:hover{transform:translateY(-1px);box-shadow:0 12px 24px #00000040}.course-modal__actions .note-action--secondary{color:#fff;background:#272725;border:1px solid #333332}@media (max-width:768px){.course-access-card__metrics{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.resource-filters{justify-content:flex-start}.note-row__content{grid-template-columns:1fr;align-items:flex-start}.note-card-grid-wrapper{padding:16px}.note-row__thumb{width:100%;height:220px}.note-row__actions{width:100%}.note-row__lock-group{align-items:flex-start;width:100%}.course-access-card__actions{flex-direction:column}}@media (max-width:640px){.resource-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-bottom:0;display:grid}.resource-filter{justify-content:center;width:100%}.resource-filters__line{display:none}}
