/* Original Build a Sentence drill, using the shared IELTS take-page controls. */
.tf-sentence { max-width: 58rem; margin-inline: auto; }
.tf-sentence-source { margin: -.5rem 0 1.5rem; color: rgb(148,163,184);
  font-size: .76rem; line-height: 1.55; }
.tf-sentence-source a { color: rgb(125,211,252); }
.tf-sentence-list { list-style: none; padding: 0; margin: 0; }
.tf-sentence-item { padding: 1.15rem 1.25rem; }
.tf-sentence-item.is-right { border-color: rgba(74,222,128,.45); }
.tf-sentence-item.is-wrong { border-color: rgba(251,146,60,.45); }
.tf-sentence-number { margin: 0 0 .35rem !important; font-size: .75rem !important;
  color: rgb(45,212,191) !important; font-weight: 700; }
.tf-sentence-lead { font-size: 1rem !important; color: rgb(226,232,240) !important;
  font-weight: 600; }
.tf-sentence-zh { margin-top: -.35rem !important; color: rgb(148,163,184) !important;
  font-size: .82rem !important; }
.tf-sentence-prompt { margin: .75rem 0 .3rem !important; color: rgb(148,163,184) !important;
  font-size: .82rem !important; }
.tf-sentence-built { display: flex; flex-wrap: wrap; gap: .4rem; align-items: center;
  min-height: 3.25rem; margin: .4rem 0 .75rem; padding: .5rem; border: 1px dashed rgba(167,139,250,.5);
  border-radius: .6rem; background: var(--reading-surface); }
.tf-sentence-empty { color: rgb(100,116,139); font-size: .83rem; }
.tf-sentence-bank { display: flex; flex-wrap: wrap; gap: .4rem; }
.tf-sentence-bank button, .tf-sentence-token { min-height: 40px; border-radius: .5rem;
  padding: .45rem .65rem; font: inherit; font-size: .85rem; line-height: 1.35; cursor: pointer; }
.tf-sentence-bank button { background: rgba(56,189,248,.1); color: rgb(186,230,253);
  border: 1px solid rgba(56,189,248,.3); }
.tf-sentence-token { background: rgba(167,139,250,.2); color: rgb(221,214,254);
  border: 1px solid rgba(167,139,250,.5); }
.tf-sentence-bank button:disabled { opacity: .3; cursor: default; }
.tf-sentence-token:disabled { cursor: default; }
.tf-sentence-verdict { display: block; margin: .75rem 0 0 !important; font-size: .84rem !important;
  line-height: 1.65; color: rgb(203,213,225) !important; }
.tf-sentence-verdict strong { display: block; color: rgb(134,239,172); }
.tf-sentence-verdict span { display: block; }
.tf-sentence-verdict[hidden], .tf-sentence .ie-take-submit[hidden] { display: none !important; }
html[data-theme="light"] .tf-sentence-source, html[data-theme="light"] .tf-sentence-prompt,
html[data-theme="light"] .tf-sentence-zh { color: rgb(80,94,113) !important; }
html[data-theme="light"] .tf-sentence-lead { color: rgb(30,41,59) !important; }
html[data-theme="light"] .tf-sentence-bank button { color: rgb(3,85,135); }
html[data-theme="light"] .tf-sentence-token { color: rgb(91,33,182); }
html[data-theme="light"] .tf-sentence-verdict { color: rgb(51,63,82) !important; }
html[data-theme="light"] .tf-sentence-verdict strong { color: rgb(21,128,61); }
@media (max-width: 680px) { .tf-sentence-item { padding: .85rem; } }

/* ▼▼ LIGHT THEME — GENERATED by scripts/build_light_theme.py from the rules above. Do not edit by hand: run the builder. Hand tuning goes in 36-theme-light.css. ▼▼ */
html[data-theme="light"] .tf-sentence-source{color:rgb(61 75 94)}
html[data-theme="light"] .tf-sentence-source a{color:rgb(0 90 133)}
html[data-theme="light"] .tf-sentence-number{color:rgb(20 110 98)!important}
html[data-theme="light"] .tf-sentence-lead{color:rgb(44 63 88)!important}
html[data-theme="light"] .tf-sentence-zh{color:rgb(61 75 94)!important}
html[data-theme="light"] .tf-sentence-prompt{color:rgb(61 75 94)!important}
html[data-theme="light"] .tf-sentence-empty{color:rgb(87 101 122)}
html[data-theme="light"] .tf-sentence-bank button{color:rgb(1 87 132)}
html[data-theme="light"] .tf-sentence-token{color:rgb(23 0 133)}
html[data-theme="light"] .tf-sentence-verdict{color:rgb(48 65 85)!important}
html[data-theme="light"] .tf-sentence-verdict strong{color:rgb(12 113 49)}
/* ▲▲ LIGHT THEME END ▲▲ */
