
.electives-app{width:100%;display:grid;gap:14px}
.electives-intro{margin:0;color:var(--muted,#647b7b);font-size:14px;line-height:1.6}
.electives-controls{display:grid;gap:10px}
.electives-search{width:100%;min-height:48px;padding:0 15px;border:1px solid #dce8e6;border-radius:12px;background:#fff;color:#354b4d;font:inherit;outline:none}
.electives-search:focus{border-color:#008f95;box-shadow:0 0 0 3px rgba(0,143,149,.12)}
.electives-toolbar{display:flex;gap:8px;flex-wrap:wrap}
.electives-action{border:1px solid #dce8e6;border-radius:10px;background:#fff;color:#123f46;padding:10px 13px;font:inherit;font-size:13px;cursor:pointer}
.electives-action:hover{border-color:#008f95;color:#008f95}
.electives-count{margin:0;color:#718383;font-size:12px}
.electives-list{display:grid;gap:10px}
.elective-card{border:1px solid #dce8e6;border-radius:14px;background:#fff;overflow:hidden}
.elective-card[open]{border-color:rgba(0,143,149,.45);box-shadow:0 5px 18px rgba(18,63,70,.06)}
.elective-card summary{list-style:none;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px;cursor:pointer;color:#123f46}
.elective-card summary::-webkit-details-marker{display:none}
.elective-card-title{display:flex;gap:10px;min-width:0;align-items:flex-start}
.elective-code{flex:0 0 auto;color:#008f95;font-size:12px;font-weight:750;padding-top:2px}
.elective-name{font-size:14px;font-weight:650;line-height:1.45}
.elective-chevron{flex:0 0 25px;width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#f1f6f4;color:#008f95;transition:transform .2s}
.elective-card[open] .elective-chevron{transform:rotate(180deg)}
.elective-details{border-top:1px solid #e1ebe9;padding:14px 16px 17px}
.elective-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:14px}
.elective-meta-item{background:#f4f7f5;border-radius:9px;padding:10px}
.elective-meta-label{display:block;color:#718383;font-size:10px;line-height:1.4;margin-bottom:5px}
.elective-meta-value{display:block;color:#123f46;font-size:13px;font-weight:700;line-height:1.4;overflow-wrap:anywhere}
.elective-description-label{margin:0 0 6px;color:#123f46;font-size:12px;font-weight:750}
.elective-description{margin:0;color:#405657;font-size:13px;line-height:1.65}
.electives-empty{padding:24px;text-align:center;background:#f4f7f5;border-radius:12px;color:#718383;font-size:14px}
.electives-note{margin:2px 0 0;padding:14px 15px;border-left:3px solid #008f95;background:#f4f7f5;border-radius:0 10px 10px 0;color:#647b7b;font-size:12px;line-height:1.6}
@media(max-width:600px){.elective-card summary{padding:14px 12px}.elective-details{padding:13px 12px 15px}.elective-meta{grid-template-columns:1fr 1fr}.elective-meta-item:last-child{grid-column:1/-1}.elective-name{font-size:13px}.electives-toolbar .electives-action{flex:1}}
