[data-course-row] .resource-link[aria-disabled="true"]{opacity:.45;cursor:not-allowed;pointer-events:none}
.course-row-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}
.topic[data-course-row]:has(.course-row-controls:not([hidden]))>.links{max-width:300px}
.course-row-status{font-size:12px;font-weight:700;color:#8c593b}
.course-lock-button,.content-retry{min-height:44px;padding:9px;border:2px solid #183024;border-radius:0;background:#fffdf8;color:#183024;font:11px/1.4 Site2Pixel,Pixel,pixel,monospace;cursor:pointer}
.course-lock-button{display:inline-grid;place-items:center;width:44px;min-width:44px;height:44px;padding:6px;border:0;background:transparent}
.course-lock-button img,.course-row-status img{display:block;width:32px;height:32px;object-fit:contain;image-rendering:pixelated}
.course-row-status:has(img){display:inline-grid;place-items:center;width:44px;height:44px}
.course-lock-button:hover{background:#e6eadf}
.course-unit-lock{margin-left:auto;flex-shrink:0;align-self:center}
.course-unit-error{margin:14px 24px}
.course-unit-lock[hidden],.course-unit-error[hidden],#announcement-cancel-edit[hidden]{display:none!important}
.course-row-error,.content-error{color:#9d4e3d;font-size:15px}
.course-row-error{flex-basis:100%}
.content-load-error{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0;padding:10px;border:2px solid #9d4e3d;font-size:16px}
.content-load-error[hidden],.course-row-controls[hidden],.course-row-controls [hidden],#admin-tools[hidden],#announcement-result[hidden],#announcement-status[hidden],.announcement-controls[hidden],.announcement-controls [hidden]{display:none!important}
.course-lock-button:disabled,.content-retry:disabled{opacity:.55;cursor:wait}
.course-lock-button:focus-visible,.content-retry:focus-visible,#announcement-form :focus-visible{outline:3px solid #d3a268;outline-offset:3px}
.announcement-post p{white-space:pre-wrap;overflow-wrap:anywhere}
.announcement-post h2{overflow-wrap:anywhere}
.announcement-tag[data-tag="assignment"]{background:#73558c;color:#fffdf8}
.announcement-tag[data-tag="test"]{background:#d3a268;color:#183024}
.announcement-tag[data-tag="reminder"]{background:#396746;color:#fffdf8}
.announcement-tag[data-tag="misc"]{background:#625f56;color:#fffdf8}
#admin-tools{margin-top:26px;padding-top:22px;border-top:2px solid #183024}
#admin-tools h2{margin:24px 0 18px;font:14px/1.7 Site2Pixel,monospace}
#admin-tools>a{display:block;margin-bottom:14px;color:#183024;font-weight:700}
#announcement-form label{display:block;margin:16px 0 6px;font-size:16px;font-weight:700}
#announcement-form input,#announcement-form select,#announcement-form textarea{display:block;width:100%;min-height:44px;padding:9px;border:2px solid #183024;border-radius:0;background:#fffdf8;color:#183024;font:16px/1.5 Site2Body,Arial,sans-serif}
#announcement-form select{height:44px;min-height:44px}
#announcement-form textarea{min-height:180px;resize:vertical}
#announcement-result a{color:#183024;font-weight:700}
.announcements-page #admin-tools{margin:0;padding:22px 38px;border-top:0;border-bottom:2px solid #183024;background:#f5f0e5}
#announcement-composer summary{display:list-item;width:fit-content;max-width:100%;min-height:44px;padding:11px 13px;border:2px solid #183024;background:#396746;color:#fffdf8;font:11px/1.7 Site2Pixel,monospace;cursor:pointer}
#announcement-form button,.announcement-controls button{min-height:44px;padding:11px 13px;border:2px solid #183024;border-radius:0;background:#396746;color:#fffdf8;font:11px/1.5 Site2Pixel,monospace;cursor:pointer}
#announcement-form button{margin-top:20px}
.announcement-controls{margin-top:8px}
.announcement-controls .announcement-delete{background:#a74738}
.announcement-controls .announcement-cancel{background:#fffdf8;color:#183024}
.announcement-controls>.announcement-edit,.announcement-controls>.announcement-delete{min-width:44px;padding:10px 8px;border:0;background:transparent;color:#625f56;font:14px/1.5 Site2Body,Arial,sans-serif}
.announcement-controls>.announcement-edit{margin-left:-8px}
.announcement-controls>.announcement-delete{color:#8c593b}
.announcement-controls>button:hover{text-decoration:underline}
#announcement-form #announcement-cancel-edit{margin-left:8px;background:#fffdf8;color:#183024}
.announcement-delete-confirm{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.announcement-delete-confirm p{flex-basis:100%}
.announcement-controls .content-error{margin-top:10px}
.announcement-empty{padding-top:24px}
.announcement-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:0 38px 26px;padding-top:18px;border-top:2px solid #b9b2a5}
.announcement-pagination[hidden],.announcement-link-status[hidden]{display:none!important}
.announcement-pagination button{min-height:44px;padding:11px 13px;border:2px solid #183024;border-radius:0;background:#fffdf8;color:#183024;font:11px/1.5 Site2Pixel,monospace;cursor:pointer}
.announcement-pagination button:disabled{opacity:.45;cursor:default}
.announcement-pagination button:focus-visible{outline:3px solid #d3a268;outline-offset:3px}
.announcement-pagination span{font-size:15px}
.announcement-link-status{margin:20px 38px;color:#8c593b}
.announcement-list,.announcement-post{scroll-margin-top:18px}
.announcement-list:focus,.announcement-post:focus{outline:none}
@media(max-width:700px){.announcement-pagination{margin:0 22px 22px;gap:8px}.announcement-pagination button{padding:10px 8px}.announcement-pagination span{font-size:14px}.announcement-link-status{margin:18px 22px}}
#announcement-form button:disabled,.announcement-controls button:disabled{opacity:.6;cursor:wait}
#announcement-composer summary:focus-visible,.announcement-controls button:focus-visible{outline:3px solid #d3a268;outline-offset:3px}
@media(max-width:700px){.announcements-page #admin-tools{padding:20px 22px}}
@media(max-width:760px){.course-row-controls{justify-content:flex-start}}
