/* HSK review hub — aggregates already scheduled work, never fabricates due items */
.rh-root{--rh-ink:#244438;--rh-muted:#647669;--rh-line:#d8e6d9;--rh-bg:#fff;--rh-soft:#eff7f0;--rh-accent:#26754f;border:1px solid var(--rh-line);border-radius:18px;background:linear-gradient(110deg,#eff8f0,#f8faf3);padding:22px;margin:20px 0;color:var(--rh-ink)}
.rh-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.rh-head>div:first-child{flex:1;min-width:0}
.rh-kicker{font-size:10px;letter-spacing:.12em;font-weight:850;color:var(--rh-accent)}
.rh-head h2{font-size:clamp(21px,2.6vw,28px);margin:8px 0;color:var(--rh-ink)}
.rh-head p,.rh-footnote{font-size:11px;color:var(--rh-muted);line-height:1.75}
.rh-count{background:#e3f3e7;border:1px solid #aad7b6;border-radius:13px;padding:14px 17px;min-width:135px;display:grid;text-align:center;gap:5px}
.rh-count b{font-size:25px;color:#1a7549}.rh-count span{font-size:11px;color:#31664b}
.rh-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:19px 0}
.rh-stats>div{background:var(--rh-bg);border:1px solid var(--rh-line);border-radius:11px;padding:13px 17px;display:grid;gap:5px}
.rh-stats b{font-size:22px;color:var(--rh-accent)}.rh-stats span{font-size:11px;color:var(--rh-muted)}
.rh-breakdown{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:15px}
.rh-breakdown span{font-size:10.5px;background:var(--rh-bg);border:1px solid var(--rh-line);border-radius:30px;padding:6px 10px;color:var(--rh-ink)}.rh-breakdown strong{margin-left:4px}
.rh-filters{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:12px 0}
.rh-filters label{font-size:11px;font-weight:750;display:flex;gap:7px;align-items:center}
.rh-filters select{padding:9px 12px;background:var(--rh-bg);color:var(--rh-ink);border:1px solid #b5d4be;border-radius:8px;font-size:11px}
.rh-found{margin-left:auto;font-size:11px;color:var(--rh-muted)}
.rh-queue{display:grid;gap:9px;margin:15px 0}.rh-item{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--rh-bg);border:1px solid var(--rh-line);border-radius:12px;padding:13px 16px}
.rh-item>div{min-width:0;flex:1}.rh-tag{color:var(--rh-accent);font-size:10px;letter-spacing:.025em;font-weight:800}.rh-item h3{font-size:13px;margin:6px 0;color:var(--rh-ink);overflow-wrap:anywhere}
.rh-item small{font-size:10px;color:var(--rh-muted)}.rh-item button{white-space:nowrap;font-size:11px}
.rh-empty{background:var(--rh-bg);border:1px dashed #aad6b7;border-radius:12px;padding:20px;margin:16px 0}
.rh-empty strong{font-size:14px;color:var(--rh-ink)}.rh-empty p{font-size:12px;line-height:1.75;color:var(--rh-muted)}
.rh-empty button{font-size:11px}.rh-more{font-size:10px;color:var(--rh-muted)}
.rh-root :is(button,select):focus-visible{outline:3px solid #32986a;outline-offset:3px}
body.dark .rh-root{--rh-ink:#e5f5e8;--rh-muted:#b7d1bf;--rh-line:#4b7256;--rh-bg:#243729;--rh-soft:#2c4334;--rh-accent:#ace9bb;background:linear-gradient(110deg,#29412f,#1e3527)}
body.dark .rh-count{background:#31543e;border-color:#649472}body.dark .rh-count b,body.dark .rh-count span{color:#d9ffdf}
@media(max-width:710px){.rh-root{padding:15px}.rh-head{align-items:stretch;flex-direction:column}.rh-count{min-width:0}.rh-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.rh-stats>div{padding:10px}.rh-item{align-items:stretch;flex-direction:column}.rh-item button{align-self:flex-start}.rh-found{margin-left:0}}
@media(max-width:390px){.rh-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.rh-stats>div:last-child{grid-column:1/-1}.rh-filters label{width:100%}.rh-filters select{flex:1}}
