/* Shared featured textbook: web selectors and the app book chooser. */
tl-grammar-textbook { display:block; min-width:0; container-type:inline-size; }
tl-grammar-textbook .fg-book {
  display:grid; grid-template-columns:160px minmax(0,1fr); align-items:center;
  gap:var(--tl-space-6); padding:var(--tl-space-5); min-height:var(--tl-control-min);
  color:var(--tl-ink); background:var(--tl-glass-strong); border:1px solid var(--tl-glass-border);
  border-radius:var(--tl-radius-panel); text-decoration:none;
  font-family:var(--tl-font-ui); -webkit-backdrop-filter:blur(var(--tl-blur)); backdrop-filter:blur(var(--tl-blur));
}
tl-grammar-textbook .fg-book:focus-visible { outline:3px solid var(--tl-focus); outline-offset:4px; }
.fg-book__cover { display:block; min-width:0; border-radius:4px 8px 8px 4px; overflow:hidden; box-shadow:0 8px 18px rgba(23,40,51,.18); }
.fg-book__cover img { display:block; width:100%; height:auto; aspect-ratio:2/3; object-fit:contain; }
.fg-book__copy { display:grid; justify-items:start; gap:var(--tl-space-3); min-width:0; }
.fg-book__eyebrow { font-size:12px; font-weight:700; letter-spacing:.11em; color:var(--tl-sepia); line-height:1.6; }
.fg-book__title { display:block; margin:0; font-size:clamp(24px,3.2cqi,38px); font-weight:650; line-height:1.18; letter-spacing:-.035em; }
.fg-book__title > span { display:block; color:var(--tl-seal); }
.fg-book__description { font-size:16px; line-height:1.65; color:var(--tl-ink-soft); max-width:36ch; }
.fg-book__action { display:flex; align-items:center; justify-content:space-between; gap:var(--tl-space-5); min-height:var(--tl-control-min); border-bottom:1px solid var(--tl-seal); font-size:16px; font-weight:700; color:var(--tl-seal); }
@container (max-width:580px) {
  tl-grammar-textbook .fg-book { grid-template-columns:110px minmax(0,1fr); gap:var(--tl-space-4); padding:var(--tl-space-4); }
  .fg-book__title { font-size:24px; line-height:1.22; }
  .fg-book__eyebrow { font-size:11px; letter-spacing:.06em; }
  .fg-book__copy { gap:var(--tl-space-2); }
  .fg-book__description { display:none; }
  .fg-book__action { font-size:14px; gap:var(--tl-space-2); }
}
@container (max-width:340px) {
  tl-grammar-textbook .fg-book { grid-template-columns:82px minmax(0,1fr); gap:var(--tl-space-3); padding:var(--tl-space-3); }
  .fg-book__title { font-size:21px; }
}
@container (max-width:240px) {
  tl-grammar-textbook .fg-book { grid-template-columns:minmax(0,1fr); }
  .fg-book__cover { width:100px; }
}
@media (prefers-reduced-transparency:reduce) {
  tl-grammar-textbook .fg-book { background:var(--tl-glass-strong); backdrop-filter:none; -webkit-backdrop-filter:none; }
}
