/* TET Worksheet Library. Inherits the theme's fonts; colours are tokens. */
.tet-wsl{--wsl-ink:#1d2433;--wsl-muted:#5b6475;--wsl-line:#dfe3ea;--wsl-soft:#f5f7fa;--wsl-accent:#1f4e8c;--wsl-accent-ink:#fff;--wsl-amber:#8a5a00;--wsl-amber-bg:#fdf3dc;
  color:var(--wsl-ink);max-width:1100px;margin:0 auto;padding:16px;box-sizing:border-box;line-height:1.5}
.tet-wsl *,.tet-wsl *::before,.tet-wsl *::after{box-sizing:border-box}
.tet-wsl [hidden]{display:none!important}
.tet-wsl-main{display:block}
.tet-wsl a.tet-wsl-btn,.tet-wsl span.tet-wsl-btn{display:inline-block;padding:.55em 1em;border:1px solid var(--wsl-accent);border-radius:6px;color:var(--wsl-accent);background:#fff;text-decoration:none;font-weight:600;line-height:1.2;margin:2px 4px 2px 0;white-space:nowrap}
.tet-wsl .tet-wsl-btn:hover,.tet-wsl-btn:focus{background:var(--wsl-soft)}
.tet-wsl .tet-wsl-btn.is-primary{background:var(--wsl-accent);color:var(--wsl-accent-ink)}
.tet-wsl .tet-wsl-btn.is-primary:hover,.tet-wsl-btn.is-primary:focus{filter:brightness(1.1)}
.tet-wsl .tet-wsl-btn.is-ghost{border-color:var(--wsl-line);color:var(--wsl-ink)}
.tet-wsl .tet-wsl-btn.is-small{padding:.35em .7em;font-size:.85em}
.tet-wsl .tet-wsl-btn.is-off{opacity:.5;cursor:not-allowed}
.tet-wsl-join{border:1px solid var(--wsl-line);background:var(--wsl-soft);border-radius:8px;padding:14px 16px;margin:0 0 16px}
.tet-wsl-join p{margin:.3em 0}
.tet-wsl-allowance{margin:0 0 12px;color:var(--wsl-muted);font-size:.95em}
.tet-wsl-controls{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;margin:0 0 16px}
.tet-wsl-tabs{display:flex;flex-wrap:wrap;gap:6px}
.tet-wsl button.tet-wsl-tab{border:1px solid var(--wsl-line)!important;background:#fff!important;color:var(--wsl-ink)!important;border-radius:999px!important;padding:.45em 1em!important;font:inherit!important;font-weight:600!important;cursor:pointer;text-transform:none!important;letter-spacing:normal!important;box-shadow:none!important;margin:0!important;line-height:1.3!important}
.tet-wsl button.tet-wsl-tab small{color:var(--wsl-muted);font-weight:400}
.tet-wsl button.tet-wsl-tab.is-on{background:var(--wsl-accent)!important;border-color:var(--wsl-accent)!important;color:#fff!important}
.tet-wsl button.tet-wsl-tab.is-on small{color:#dbe6f5}
.tet-wsl-search{flex:1 1 260px}
.tet-wsl-search input{width:100%;padding:.6em .8em;border:1px solid var(--wsl-line);border-radius:6px;font:inherit}
.tet-wsl-count{margin:0;color:var(--wsl-muted);font-size:.9em;flex-basis:100%}
.tet-wsl-course-h{font-size:1.4em;margin:.2em 0 .6em}
.tet-wsl-course-h small{font-size:.6em;color:var(--wsl-muted);font-weight:400}
.tet-wsl-theme{border:1px solid var(--wsl-line);border-radius:8px;margin:0 0 12px;background:#fff}
.tet-wsl-theme>summary{cursor:pointer;padding:12px 16px;font-weight:700;font-size:1.08em;background:var(--wsl-soft);border-radius:8px}
.tet-wsl-theme[open]>summary{border-bottom:1px solid var(--wsl-line);border-radius:8px 8px 0 0}
.tet-wsl-section{padding:4px 16px 8px}
.tet-wsl-section h3{font-size:.95em;text-transform:uppercase;letter-spacing:.04em;color:var(--wsl-muted);margin:12px 0 4px}
.tet-wsl-list{list-style:none;margin:0;padding:0}
.tet-wsl-item{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;padding:8px 0;border-top:1px solid var(--wsl-line)}
.tet-wsl-item:first-child{border-top:0}
.tet-wsl-item-title{flex:1 1 280px;color:var(--wsl-ink);text-decoration:none;font-weight:600}
.tet-wsl-item-title:hover{color:var(--wsl-accent);text-decoration:underline}
.tet-wsl-spec{display:inline-block;min-width:4.6em;color:var(--wsl-accent);font-variant-numeric:tabular-nums;font-weight:700}
.tet-wsl-actions{display:flex;flex-wrap:wrap}
.tet-wsl-badge{display:inline-block;font-size:.78em;padding:.15em .6em;border-radius:999px;background:var(--wsl-soft);color:var(--wsl-muted);border:1px solid var(--wsl-line);margin-right:6px}
.tet-wsl-badge.is-alevel{background:var(--wsl-amber-bg);color:var(--wsl-amber);border-color:#f0dcae}
.tet-wsl-none{color:var(--wsl-muted)}
/* Topic page */
.tet-wsl-crumbs{font-size:.9em;color:var(--wsl-muted);margin:0 0 10px}
.tet-wsl-crumbs a{color:var(--wsl-muted)}
.tet-wsl-eyebrow{margin:0;color:var(--wsl-muted);font-size:.85em;text-transform:uppercase;letter-spacing:.05em}
.tet-wsl-title{margin:.2em 0 .3em;font-size:clamp(1.6em,4vw,2.2em);line-height:1.2}
.tet-wsl-title .tet-wsl-spec{min-width:0;margin-right:.2em}
.tet-wsl-badges{margin:0 0 8px}
.tet-wsl-intro{font-size:1.08em;max-width:70ch}
.tet-wsl-preview{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin:16px 0}
.tet-wsl-preview section{border:1px solid var(--wsl-line);border-radius:8px;padding:12px 16px;background:var(--wsl-soft)}
.tet-wsl-preview h2{font-size:1.1em;margin:0 0 6px}
.tet-wsl-preview ol{margin:0;padding-left:1.3em}
.tet-wsl-members{margin:16px 0}
.tet-wsl-downloads{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--wsl-line);border-radius:8px;padding:12px 16px;margin:0 0 16px}
.tet-wsl-downloads .tet-wsl-allowance{margin:0}
.tet-wsl-lesson-bar{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}
.tet-wsl-lesson-bar h2{font-size:1.3em;margin:0 0 8px}
.tet-wsl-frame{display:block;width:100%;height:1400px;border:1px solid var(--wsl-line);border-radius:8px;background:#fff}
.tet-wsl-pager{display:flex;justify-content:space-between;gap:12px;margin:24px 0 8px;font-size:.95em}
.tet-wsl-pager a{color:var(--wsl-accent);text-decoration:none;max-width:48%}
.tet-wsl-pager .next{text-align:right;margin-left:auto}
@media (max-width:600px){.tet-wsl{padding:16px}.tet-wsl-item-title{flex-basis:100%}.tet-wsl-spec{min-width:0;margin-right:.3em}}
