/* Size the whole single-subject control row together, including form buttons.
   Full mock controls inherit their native exam-actions design instead. */
body .exercise-toolbar nav button,body .exercise-toolbar nav .practice-set-link,
body .sorting-practice .exam-buttons button,body .sorting-practice .exam-buttons .practice-set-link{
  display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;
  height:48px!important;min-height:48px!important;border-radius:8px!important;
  padding:8px 14px!important;font:600 16px/1.65 Arial,"PingFang SC",sans-serif!important;
  border:1px solid #a8d6d7!important;white-space:nowrap;
}
body .exercise-toolbar .bookmark-button,body .exercise-toolbar #listen-bookmark,
body .exercise-toolbar #rc-bookmark,body .exercise-toolbar #essay-bookmark,
body .exercise-toolbar [data-speaking-bookmark] button,body .sorting-practice .bookmark-button{
  background:transparent!important;color:#fff!important;
}
.exercise-toolbar nav>form:has(.bookmark-button),.exercise-toolbar nav>[data-speaking-bookmark],
.exercise-toolbar nav>#listen-bookmark,.exercise-toolbar nav>#rc-bookmark,.exercise-toolbar nav>#essay-bookmark,
.sorting-practice .exam-buttons>form:has(.bookmark-button){order:-1}
body .bookmark-button:disabled,body [data-speaking-bookmark] button:disabled{opacity:.55}
.rounded-bookmark{gap:6px!important}
.toolbar-bookmark-star{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;pointer-events:none}
.rounded-bookmark[data-bookmarked=true] .toolbar-bookmark-star{fill:currentColor}
.card-favorite-wrap{display:inline-flex;align-items:center;flex:0 0 24px;width:24px;height:24px;vertical-align:middle}
.bookmark-search-card{position:relative}.bank-result-pane .bookmark-search-card>.bank-card{height:100%;padding-right:42px}.bookmark-search-card>.card-favorite-wrap{position:absolute;right:12px;top:14px}
body .card-favorite{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:2px;border:0;border-radius:5px;background:transparent;color:#27817f;cursor:pointer;box-shadow:none;vertical-align:middle}
.card-favorite svg{width:18px;height:18px;fill:currentColor;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}
.card-favorite[aria-pressed=false] svg{fill:none}
.card-favorite:hover{background:#e8f5f1}.card-favorite:focus-visible{outline:2px solid #19757c;outline-offset:2px}.card-favorite:disabled{opacity:.5;cursor:wait}
.bookmark-toast{position:fixed;bottom:32px;left:50%;transform:translateX(-50%);z-index:10000;padding:12px 20px;max-width:calc(100vw - 32px);border:1px solid #bcdada;border-radius:12px;background:#eff8f7;color:#236b70;box-shadow:0 6px 24px #214d5320;font-size:14px;opacity:1;transition:opacity .35s ease;pointer-events:none}
.bookmark-toast.is-fading{opacity:0}@media(prefers-reduced-motion:reduce){.bookmark-toast{transition:none}}
.hub-heading:has(.favorite-filter){display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;margin-bottom:16px}
.hub-heading:has(.favorite-filter) h2{margin:0}
.favorite-filter{margin:0 0 0 auto;flex-shrink:0;font-size:14px;font-weight:500;color:#65758b}
.favorite-filter label{display:inline-flex;align-items:center;gap:6px;cursor:pointer;position:relative;min-height:32px;white-space:nowrap}
.favorite-filter input[type=checkbox]{position:absolute;width:1px;height:1px;opacity:0}
.favorite-filter svg{width:18px;height:18px;fill:none;stroke:#27817f;stroke-width:1.6;stroke-linejoin:round}
.favorite-filter input:checked+svg{fill:#27817f}
.favorite-filter label:has(input:focus-visible){outline:2px solid #19757c;outline-offset:3px;border-radius:4px}
