.qy-course-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:18px}.qy-course-card h2{margin-top:10px}.qy-course-top-actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.qy-course-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:20px 0}.qy-course-counts span{border:1px solid var(--line);border-radius:12px;padding:12px;font-size:11px;color:var(--muted)}.qy-course-counts b{display:block;font-size:24px;color:var(--ink);margin-bottom:5px}.qy-course-tabs{gap:7px}.qy-course-tabs button{font-size:12px}.qy-enrollment-row{align-items:center}.qy-enrollment-row .stack{display:grid;gap:8px;flex:none}.qy-course-warning{color:#a34e25!important;font-size:12px}.qy-course-workbench{margin-bottom:24px}.qy-parent-link input[readonly]{font-size:12px}.qy-enrollment-row h3{overflow-wrap:anywhere}.qy-parent-link p{overflow-wrap:anywhere}@media(max-width:560px){.qy-enrollment-row{align-items:flex-start;flex-wrap:wrap}.qy-enrollment-row .event-body{min-width:180px}.qy-enrollment-row .stack{display:flex;flex-wrap:wrap;gap:8px;width:100%}.qy-course-counts span{padding:10px 7px}.qy-course-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}.qy-course-tabs button{flex:none}.qy-course-workbench .section-head{align-items:flex-start;gap:10px}.qy-course-card .button{width:100%}}
.qy-roster-filters{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin:14px 0}.qy-roster-filters label{display:grid;gap:5px;min-width:120px;flex:1}.qy-roster-filters input,.qy-roster-filters select{width:100%;min-height:42px}.qy-roster-pages{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:14px}.qy-roster-pages span{margin-right:auto;color:var(--muted)}

.qy-roster-details-action .button{background:#4c321f;color:#fff8e8;border:1px solid #4c321f;min-height:42px;font-weight:700}.qy-roster-details-action .button:hover{background:#352215;border-color:#352215;color:#fff}.qy-roster-details-action .button:focus-visible{outline:3px solid #c99d48;outline-offset:3px}.qy-roster-details-action .button:active{background:#28190f}.qy-roster-details-action .button:disabled{background:#6b625b;border-color:#6b625b;color:#fff;opacity:.65;cursor:not-allowed}
