.exercise-actions,.exercise-browse,.exercise-content-tags{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem}
/* Scoped learning filters: readable controls in both themes and on phones. */
.workspace form.learning-filters{align-items:flex-end}
.workspace form.learning-filters>div,.workspace form.learning-filters>label{display:grid;gap:6px;min-width:0;flex:1 1 170px}
.workspace form.learning-filters label{font-size:14px;line-height:1.5}
.workspace form.learning-filters :is(input:not([type=hidden]),select){width:100%;max-width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface,#fff);color:var(--navy);font:inherit}
.workspace form.learning-filters :focus-visible{outline:3px solid var(--blue);outline-offset:3px}
@media(max-width:680px){.workspace form.learning-filters>div,.workspace form.learning-filters>label,.workspace form.learning-filters>.button{flex-basis:100%}}
.collection-row{display:grid;grid-template-columns:minmax(200px,1fr) auto auto auto;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}.collection-row h2,.collection-row h3{font-size:16px;line-height:1.5;margin:0}.collection-row p{font-size:13px;margin:5px 0 0;overflow-wrap:anywhere}.collection-row .button{min-height:44px}.collection-row :focus-visible{outline:3px solid var(--blue);outline-offset:3px}@media(max-width:900px){.collection-row{grid-template-columns:minmax(0,1fr) auto;gap:12px}.collection-row>div:first-child{grid-column:1/-1}.collection-row>.exercise-actions,.collection-row>form{grid-column:1/-1}}
.exercise-browse{justify-content:space-between}.exercise-statement{max-width:80ch;overflow-wrap:anywhere;line-height:1.7}
.exercise-code{max-width:100%;overflow:auto;padding:1.25rem;border:1px solid var(--line);border-radius:8px;background:#142033;color:#f8fafc;font:1rem/1.6 Consolas,"Courier New",monospace;tab-size:4}
.exercise-code code{font:inherit;color:inherit;white-space:pre}.exercise-statement p{margin:.8rem 0}
.exercise-explorer{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:start}
.exercise-folders{min-width:0;padding:18px 0}.exercise-folders h2{font-size:13px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0 12px 16px}
.exercise-folder{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;min-height:44px;border-radius:8px;text-decoration:none;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.exercise-folder:hover,.exercise-folder.is-selected{background:var(--workspace-soft);color:var(--blue)}.exercise-folder.is-selected{font-weight:700;box-shadow:inset 3px 0 var(--blue)}
.exercise-folders details{margin-top:8px}.exercise-folders summary{cursor:pointer;min-height:44px;padding:10px 12px}.exercise-folders summary .exercise-count{float:right}.exercise-folder--topic{margin-left:12px;font-size:13px}.exercise-count{flex-shrink:0;white-space:nowrap;color:var(--muted);font-size:12px}.exercise-folders__note{font-size:12px;line-height:1.6;color:var(--muted);padding:16px 12px;border-top:1px solid var(--line);margin-top:22px}
.exercise-workspace{min-width:0;border:1px solid var(--line);background:var(--surface,#fff);border-radius:12px;padding:22px}
.exercise-path{display:flex;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:13px;line-height:1.5;margin-bottom:18px}.exercise-path a{text-decoration:none;color:var(--muted)}.exercise-path a:hover{color:var(--blue)}
.exercise-search{display:flex;gap:10px}.exercise-search input,.exercise-filter-popover select{min-width:0;width:100%;min-height:44px;border:1px solid var(--line);background:var(--surface,#fff);color:var(--navy);border-radius:8px;font:inherit;padding:10px 12px}
.exercise-search input::placeholder{color:var(--muted)}.exercise-filter-line{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-top:14px}.exercise-difficulties{display:flex;flex-wrap:wrap;gap:7px}
.exercise-pill{display:inline-flex;align-items:center;justify-content:center;width:fit-content;gap:5px;border-radius:6px;padding:5px 8px;white-space:nowrap;font-size:12px;line-height:1.4;font-weight:650;text-decoration:none;background:var(--workspace-soft);color:var(--muted);border:1px solid transparent}
.exercise-difficulties .exercise-pill{min-height:36px;padding:7px 10px}.exercise-difficulties .is-selected{border-color:currentColor;box-shadow:0 0 0 1px currentColor}
.language-python{background:#e3efff;color:#205c9d}.language-csharp{background:#f0e8ff;color:#7140b0}.language-cpp{background:#e1f4fa;color:#146780}.language-java{background:#fff0df;color:#984e13}.language-javascript{background:#fff6d1;color:#765b0e}
.difficulty-easy{background:#e4f5eb;color:#21663f}.difficulty-medium{background:#fff1d7;color:#825512}.difficulty-hard{background:#fce7e8;color:#a33240}.difficulty-challenge{background:#eee6fc;color:#7042a3}
.exercise-more-filters{position:relative;flex:0 0 auto;font-size:14px}.exercise-more-filters summary{min-height:36px;cursor:pointer;padding:8px 4px;color:var(--muted)}.exercise-filter-popover{display:grid;gap:12px;width:250px;padding:16px;background:var(--surface,#fff);border:1px solid var(--line);border-radius:10px;position:absolute;right:0;z-index:5;box-shadow:0 8px 24px #0002}.exercise-filter-popover label{display:block;margin-bottom:6px;font-size:13px}
.exercise-list-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:24px 0 12px}.exercise-list-heading h2{font-size:17px;margin:0}.exercise-list-heading>span{font-size:13px}
.exercise-row{display:grid;grid-template-columns:minmax(150px,1fr) 85px 100px 125px 70px;gap:14px;align-items:center;padding:11px 10px;border-bottom:1px solid var(--line)}.exercise-row--head{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding-top:8px;padding-bottom:10px}.exercise-row:not(.exercise-row--head):hover{background:var(--workspace-soft)}
.exercise-row__main{min-width:0}.exercise-row h3{margin:0;font-size:15px;line-height:1.5}.exercise-row h3 a{text-decoration:none}.exercise-row h3 a:hover{text-decoration:underline}.exercise-row p{font-size:12px;line-height:1.5;color:var(--muted);margin:4px 0 0;overflow-wrap:anywhere}.exercise-answer-mark{font-size:11px;color:var(--muted);line-height:1.5}.exercise-row__kind{font-size:12px;color:var(--muted)}.exercise-row__open{display:flex;align-items:center;min-height:44px;color:var(--blue);font-size:13px;text-decoration:none}.exercise-row__open:hover{text-decoration:underline}
.exercise-empty{text-align:center;padding:40px 16px;color:var(--muted)}.exercise-empty h3{color:var(--navy)}.exercise-answer>summary{min-height:28px;cursor:pointer;font-weight:650}.exercise-answer>summary .muted{font-size:13px;font-weight:400}
.exercise-explorer :focus-visible,.exercise-code:focus-visible,.exercise-answer :focus-visible{outline:3px solid var(--blue);outline-offset:3px}
html[data-theme=dark] .language-python{background:#193955;color:#9bcfff}html[data-theme=dark] .language-csharp{background:#382b51;color:#d4b7ff}html[data-theme=dark] .language-cpp{background:#173b45;color:#90dce9}html[data-theme=dark] .language-java{background:#48301d;color:#ffc28b}html[data-theme=dark] .language-javascript{background:#413b1e;color:#efdc8a}
html[data-theme=dark] .difficulty-easy{background:#1b3b30;color:#8bdbaf}html[data-theme=dark] .difficulty-medium{background:#44351e;color:#f5cc7c}html[data-theme=dark] .difficulty-hard{background:#482934;color:#ffa7b2}html[data-theme=dark] .difficulty-challenge{background:#352949;color:#d2b1fa}
@media(max-width:1200px){.exercise-explorer{grid-template-columns:180px minmax(0,1fr);gap:16px}.exercise-row{grid-template-columns:minmax(120px,1fr) 75px 90px 65px;gap:10px}.exercise-row__kind,.exercise-row--head>span:nth-child(4){display:none}}
@media(max-width:760px){.exercise-explorer{grid-template-columns:minmax(0,1fr);gap:14px}.exercise-folders{padding:0}.exercise-folders h2,.exercise-folders__note{display:none}.exercise-folders{display:flex;flex-wrap:wrap;align-items:start;gap:8px}.exercise-folders details{margin:0}.exercise-folders details[open]{flex:1 1 100%}.exercise-workspace{padding:16px}.exercise-filter-line{flex-wrap:wrap}.exercise-difficulties .exercise-pill{min-height:44px}.exercise-more-filters summary{min-height:44px}.exercise-filter-popover{left:0;right:auto}.exercise-search{flex-wrap:wrap}.exercise-search input{flex:1 1 200px}.exercise-row{grid-template-columns:auto auto 1fr;padding:16px 0;gap:8px}.exercise-row--head{display:none}.exercise-row__main{grid-column:1/-1}.exercise-row__open{justify-self:end}.exercise-row h3{font-size:16px}.exercise-actions .button{flex:1 1 auto}.exercise-code{font-size:.9rem;padding:.8rem}}
