/* A self-contained learning card: sidebar heading rules must not style its data. */
body .tc-resource-actions, body .tc-resource-actions * { box-sizing:border-box; }
body .tc-resource-actions {
  display:grid; gap:16px; min-inline-size:0; padding:20px;
  border:1px solid #cddbd3; border-radius:18px;
  background:linear-gradient(150deg,#fcfdf9,#edf4ef);
  color:#183e35; box-shadow:0 8px 24px rgb(20 54 44 / .07);
}
body .tc-resource-actions > .tc-eyebrow { margin:0; color:#6c551f; font:800 12px/1.5 Inter,ui-sans-serif,system-ui,sans-serif; letter-spacing:.09em; }
body .tc-resource-actions :is(h2,.tc-resource-actions__title) { margin:0; color:#183e35; font:700 24px/1.2 Georgia,serif; letter-spacing:-.025em; overflow-wrap:normal; }
body .tc-resource-actions p, body .tc-resource-actions__auto { margin:0; color:#4a6259; font:400 14px/1.6 Inter,ui-sans-serif,system-ui,sans-serif; }
body .tc-resource-actions p strong { color:#183e35; font:700 14px/1.6 Inter,ui-sans-serif,system-ui,sans-serif; }
body .tc-resource-actions__head { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; align-items:start; }
body .tc-resource-actions__head > div { min-inline-size:0; }
/* The badge already names the same state; do not show it twice. */
body .tc-resource-actions__head > div > p { display:none; }
body .tc-resource-actions .tc-status { justify-self:start; inline-size:auto; max-inline-size:100%; min-inline-size:0; padding:6px 11px; border:1px solid #bed2c5; border-radius:999px; background:#e1eee4; color:#23553f; font:700 13px/1.4 Inter,ui-sans-serif,system-ui,sans-serif; letter-spacing:0; word-break:normal; overflow-wrap:normal; white-space:normal; text-transform:none; }
body .tc-resource-actions .tc-status--failed { border-color:#e4bdb4; }
body .tc-resource-actions__controls { display:grid; gap:10px; margin:0; padding:0; }
body .tc-resource-actions__controls :is(form,p) { margin:0; }
body .tc-resource-actions__controls > br, body .tc-resource-actions__controls > p:empty, body .tc-resource-actions > [data-tc-reading-progress] { display:none; }
body .tc-resource-actions .tc-button { display:flex; align-items:center; justify-content:center; inline-size:100%; min-inline-size:0; min-block-size:46px; margin:0; padding:12px 14px; border:1px solid #1d5b48; border-radius:10px; background:#1d5b48; color:#fff; box-shadow:none; font:750 14px/1.4 Inter,ui-sans-serif,system-ui,sans-serif; letter-spacing:0; text-align:center; text-decoration:none; white-space:normal; overflow-wrap:normal; }
body .tc-resource-actions__controls > a { order:-1; }
body .tc-resource-actions__controls > button[data-tc-open-assignment] { background:#fffdf7; border-color:#bdcfc3; color:#234e3e; }
body .tc-resource-actions .tc-button:hover { background:#164635; border-color:#164635; color:#fff; }
body .tc-resource-actions .tc-button:focus-visible { outline:3px solid #a37b27; outline-offset:3px; }
body .tc-resource-actions__note { border-block-start:1px solid #d5e1d8; padding-block-start:12px; }
body .tc-resource-actions__note a { color:#28553f; text-underline-offset:3px; }
/* Keep the numeric value above a slim track, never on a coloured fill. */
body .tc-resource-actions .tc-reading-progress-meter { position:relative; display:block; overflow:visible; block-size:38px; min-block-size:38px; margin:2px 0 0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
body .tc-resource-actions .tc-reading-progress-meter::before { content:'Reading progress'; position:absolute; inset:0 auto auto 0; color:#4a6259; font:600 13px/1.4 Inter,ui-sans-serif,system-ui,sans-serif; }
body .tc-resource-actions .tc-reading-progress-meter::after { content:''; position:absolute; inset:auto 0 0; block-size:7px; border-radius:999px; background:#d6e3d9; }
body .tc-resource-actions .tc-reading-progress-meter > span { z-index:1; inset:auto auto 0 0; block-size:7px; max-inline-size:100%; border-radius:999px; background:#297354; }
body .tc-resource-actions .tc-reading-progress-meter > strong { position:absolute; z-index:2; inset:0 0 auto auto; margin:0; padding:0; color:#183e35; font:800 15px/1.3 Inter,ui-sans-serif,system-ui,sans-serif; font-variant-numeric:tabular-nums; letter-spacing:0; white-space:nowrap; }
body .tc-resource-actions__controls select { background:#fff; color:#183e35; border-color:#bdcfc3; font-size:16px; }
@media (prefers-reduced-motion:reduce) { body .tc-resource-actions .tc-reading-progress-meter > span { transition:none; } }
