/* Which Framework tools: only the market pages. Generated from css/tools.css by gen/csssplit.py; edit tools.css, then rerun. */
/* Market expansion: shared chips */
.tl-imp { display: inline-block; padding: 1px var(--space-2); border-radius: 999px; font-size: var(--text-xs); font-weight: 700; white-space: nowrap; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.tl-imp--3 { background: var(--color-slate-900); color: #fff; }
.tl-imp--2 { background: var(--color-slate-600); color: #fff; }
.tl-imp--1 { background: var(--color-slate-200); color: var(--color-slate-800); }
.tl-imp--0 { background: #fff; color: var(--color-slate-600); box-shadow: inset 0 0 0 1px var(--color-slate-400); font-weight: 500; }
.tl-pdir { font-size: var(--text-xs); font-weight: 600; white-space: nowrap; }
.tl-pdir--help { color: #15803d; }
.tl-pdir--hurt { color: #b42318; }
.tl-pdir--both { color: var(--color-slate-700); }
.tl-pdir--help::before { content: "+ "; }
.tl-pdir--hurt::before { content: "− "; }
.tl-pdir--both::before { content: "± "; }
.tl-pforce { display: grid; gap: 4px; }
.tl-pforce select { width: 9rem; }
.tl-pcell__sel { display: grid; grid-template-columns: 1fr 1fr; gap: 4px var(--space-2); margin-top: var(--space-2); }
.tl-pcell__lab { display: block; margin: 0; font-size: var(--text-xs); font-weight: 600; color: var(--color-text-secondary); }
.tl-pcell__lab > span { display: block; margin-bottom: 2px; }
.tl-pcell.is-rated { background: var(--color-slate-100); }
.tl-pcell--home { background: var(--color-bg-tertiary); }
@media (max-width: 640px) {
  .tl-pcell.is-rated, .tl-pcell--home { background: transparent; }
  .tl-pforce select { width: 100%; }
}
/* PESTEL: results */
.tl-pranks { display: grid; gap: var(--space-3); }
@media (min-width: 760px) {
  .tl-pranks { grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); }
}
.tl-prank { padding: var(--space-3) var(--space-4); border: 1px solid var(--color-border-strong); border-top: 4px solid var(--color-slate-800); border-radius: var(--radius-md); background: var(--color-bg-secondary); break-inside: avoid; }
.tl-prank__head { margin: 0 0 var(--space-2); font-family: var(--font-display); font-weight: 400; font-size: var(--text-xl); color: var(--color-text-primary); }
.tl-prank__list { margin: 0; padding-left: 1.3rem; font-size: var(--text-sm); }
.tl-prank__list li { padding: var(--space-2) 0; border-top: 1px solid var(--color-border); }
.tl-prank__list li:first-child { border-top: 0; padding-top: 0; }
.tl-prank__line strong { color: var(--color-text-primary); }
.tl-prank__note, .tl-pscan__note { display: block; margin-top: 2px; color: var(--color-text-secondary); font-size: var(--text-xs); }
.tl-prank__tags { display: block; margin-top: 4px; }
.tl-prank__tags .tl-tag { margin: 0 4px 0 0; }
.tl-pscan td { text-align: left; font-weight: 400; vertical-align: top; }
.tl-pscan tbody th .tl-pcat { display: block; font-size: var(--text-xs); font-weight: 400; color: var(--color-text-muted); }
@media print {
  .tl-pranks { grid-template-columns: repeat(auto-fit, minmax(55mm, 1fr)); }
  .tl-pscan tr { break-inside: avoid; }
}
/* Five Forces */
.tl-ffs1 { margin: 0 0 var(--space-3); font-size: var(--text-sm); color: var(--color-text-secondary); }
.tl-ffs1 ol { margin: 2px 0 0; padding-left: 1.2rem; }
.tl-ffcard { margin: 0 0 var(--space-5); padding: var(--space-4) var(--space-5); border: 1px solid var(--color-border-strong); border-radius: var(--radius-md); background: var(--color-bg-tertiary); }
.tl-ffcard__head { margin: 0 0 var(--space-2); font-family: var(--font-display); font-weight: 400; font-size: var(--text-2xl); color: var(--color-text-primary); }
.pb-grid.tl-fftab { min-width: 0; width: 100%; background: var(--color-bg-secondary); }
.tl-fftab th, .tl-fftab td { text-align: left; vertical-align: top; font-weight: 400; }
.tl-fftab thead th { font-weight: 600; }
.tl-fftab tbody th { width: 28%; }
.tl-fftab td[data-l="How strong"] { width: 12rem; }
.tl-fftab td[data-l="Could you get around it?"] { width: 11rem; }
.tl-fftab textarea { display: block; width: 100%; min-width: 10rem; padding: var(--space-1) var(--space-2); font: var(--text-sm)/1.35 var(--font-body); border: 1px solid var(--color-border-strong); border-radius: var(--radius-sm); background: var(--color-bg-secondary); resize: vertical; }
.tl-fftab tbody th strong { display: block; color: var(--color-text-primary); }
.tl-fftab tbody th small { display: block; color: var(--color-text-secondary); font-size: var(--text-xs); line-height: 1.4; }
.tl-fftab select { width: 100%; min-width: 7rem; padding: 3px var(--space-1); font: var(--text-sm) var(--font-body); border: 1px solid var(--color-border-strong); border-radius: var(--radius-sm); background: var(--color-bg-secondary); }
.tl-fftab select:disabled { opacity: .45; }
.tl-fftab textarea:focus, .tl-fftab select:focus { outline: 2px solid var(--color-accent); outline-offset: 1px; border-color: var(--color-accent); }
.tl-fftab tr.is-dec th, .tl-fftab tr.is-dec td { background: var(--color-amber-50); }
.tl-ffhint { display: block; margin-top: 2px; font-size: var(--text-xs); color: var(--color-text-muted); }
.tl-ffverdict { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2) var(--space-5); margin-top: var(--space-3); font-size: var(--text-sm); }
.tl-ffverdict__sug { flex: 1 1 18rem; margin: 0; color: var(--color-text-secondary); }
.tl-ffverdict .tl-field { display: flex; align-items: center; gap: var(--space-2); margin: 0; }
.tl-ffverdict .tl-field label { margin: 0; white-space: nowrap; }
.tl-ffverdict select { width: auto; }
@media (max-width: 640px) {
  .tl-ffcard { padding: var(--space-3); }
  .tl-fftab thead { display: none; }
  .tl-fftab, .tl-fftab tbody, .tl-fftab tr, .tl-fftab td, .tl-fftab th { display: block; width: auto !important; }
  .pb-grid.tl-fftab { border: 0 !important; background: transparent; }
  .tl-fftab tr { margin: 0 0 var(--space-3); padding: var(--space-2) var(--space-3); border: 1px solid var(--color-border-strong); border-radius: var(--radius-md); background: var(--color-bg-secondary); }
  .tl-fftab td, .tl-fftab th { border: 0 !important; padding: var(--space-1) 0 !important; }
  .tl-fftab td[data-l]::before { content: attr(data-l); display: block; font-size: var(--text-xs); font-weight: 600; color: var(--color-text-secondary); margin-bottom: 2px; }
  .tl-ffverdict .tl-field { flex-wrap: wrap; }
}
.tl-ffv { display: grid; gap: var(--space-3); }
@media (min-width: 760px) {
  .tl-ffv { grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); }
}
.tl-ffv__card { padding: var(--space-3) var(--space-4); border: 1px solid var(--color-border-strong); border-top-width: 4px; border-radius: var(--radius-md); background: var(--color-bg-secondary); break-inside: avoid; }
.tl-ffv__card--mixed { border-top-color: var(--color-amber-400); }
.tl-ffv__card--unattractive { border-top-color: #b42318; }
.tl-ffv__head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--space-2); margin: 0 0 var(--space-2); }
.tl-ffv__name { margin: 0; font-family: var(--font-display); font-weight: 400; font-size: var(--text-xl); color: var(--color-text-primary); }
.tl-ffv__card ul { margin: 0; padding-left: 1.1rem; font-size: var(--text-sm); color: var(--color-text-secondary); }
.tl-ffv__card li + li { margin-top: var(--space-1); }
.tl-ffv__go { margin: var(--space-2) 0 0; font-size: var(--text-sm); font-weight: 700; color: var(--color-text-primary); }
.tl-ffcmp td { text-align: left; font-weight: 400; vertical-align: top; }
.tl-ffcmp td small { display: block; margin-top: 2px; font-size: var(--text-xs); color: var(--color-text-secondary); }
.tl-ffcmp tr.tl-ffcmp__v th, .tl-ffcmp tr.tl-ffcmp__v td { border-top: 2px solid var(--color-slate-700); }
.tl-ffcmp .tl-ffcmp__dec { display: inline-block; margin-left: 4px; font-size: var(--text-xs); font-weight: 700; color: var(--color-amber-600); }
@media print {
  .tl-ffv { grid-template-columns: repeat(auto-fit, minmax(55mm, 1fr)); }
}
/* PESTEL: the balance of outside forces (hurts to the left, helps to the right) */
.tl-pbal { display: grid; gap: var(--space-2); max-width: 46rem; }
.tl-pbal__row { display: grid; grid-template-columns: 11rem 1fr 11rem; align-items: center; gap: var(--space-3); padding: var(--space-2) var(--space-3); border: 1px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-bg-secondary); }
.tl-pbal__row.is-lean { border-color: var(--color-slate-700); }
.tl-pbal__name { font-weight: 600; color: var(--color-text-primary); }
.tl-pbal__bar { display: grid; grid-template-columns: 1fr 1fr; height: 1rem; }
.tl-pbal__half { display: flex; background: var(--color-slate-100); }
.tl-pbal__half--u { justify-content: flex-end; border-right: 2px solid var(--color-slate-800); }
.tl-pbal__half > span { display: block; height: 100%; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.tl-pbal__half--u > span { background: #e7837a; }
.tl-pbal__half--h > span { background: #4fa36b; }
.tl-pbal__num { font-size: var(--text-sm); }
.tl-pbal__num strong { font-size: var(--text-base); color: var(--color-text-primary); }
#pBalNote { margin-top: var(--space-2); font-size: var(--text-sm); max-width: 46rem; }
@media (max-width: 640px) {
  .tl-pbal__row { grid-template-columns: 1fr auto; }
  .tl-pbal__bar { grid-column: 1 / -1; grid-row: 2; }
}
.tl-pbal__key { display: grid; grid-template-columns: 11rem 1fr 11rem; gap: var(--space-3); padding: 0 var(--space-3); font-size: var(--text-xs); font-weight: 600; color: var(--color-text-secondary); }
.tl-pbal__key .tl-pbal__bar { height: auto; }
.tl-pbal__key .tl-pbal__bar span:first-child { text-align: right; padding-right: var(--space-2); color: #b42318; }
.tl-pbal__key .tl-pbal__bar span:last-child { padding-left: var(--space-2); color: #15803d; }
@media (max-width: 640px) {
  .tl-pbal__key { grid-template-columns: 1fr; }
  .tl-pbal__key > span:not(.tl-pbal__bar) { display: none; }
}
/* Ansoff Matrix: a real 2x2, dark axis bands, quadrants tinted by risk */
.tl-actx ul { margin: var(--space-1) 0 0; padding-left: 1.1rem; font-size: var(--text-sm); }
.tl-actx { margin-bottom: var(--space-4); }
.tl-ans { display: grid; grid-template-columns: 2.5rem 1fr 1fr; margin: var(--space-3) 0 var(--space-4); border: 2px solid var(--color-slate-800); border-radius: var(--radius-md); overflow: hidden; background: var(--color-slate-800); gap: 1px; }
.tl-ans__corner, .tl-ans__col, .tl-ans__row { background: var(--color-slate-800); color: #fff; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.tl-ans__col { margin: 0; padding: var(--space-2) var(--space-3); text-align: center; font-size: var(--text-xs); font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.tl-ans__col + .tl-ans__col { color: var(--color-amber-400); }
.tl-ans__row { margin: 0; display: flex; align-items: center; justify-content: center; font-size: var(--text-xs); font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.tl-ans__row span { writing-mode: vertical-rl; transform: rotate(180deg); white-space: nowrap; }
.tl-ans__row:nth-of-type(4) { color: var(--color-amber-400); }
.tl-ans__box { padding: var(--space-3) var(--space-4); min-width: 0; break-inside: avoid; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.tl-ans__box--pen { background: #f1f8f4; }
.tl-ans__box--dev, .tl-ans__box--mkt { background: var(--color-amber-50); }
.tl-ans__box--div { background: #fcf1f0; }
.tl-ans__name { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-1) var(--space-2); margin: 0; font-weight: 700; color: var(--color-text-primary); }
.tl-ans__risk { padding: 1px var(--space-2); border-radius: 999px; font-size: 11px; font-weight: 600; white-space: nowrap; }
.tl-ans__risk--low { background: #d5ecdd; color: #14532d; }
.tl-ans__risk--mid { background: var(--color-amber-100); color: #92400e; }
.tl-ans__risk--high { background: #f8d6d3; color: #8a1c13; }
.tl-ans__short { margin: 2px 0 var(--space-2); font-size: var(--text-xs); color: var(--color-text-secondary); }
.tl-ans__two { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-2); }
.tl-ans--res .tl-ans__box { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-1); }
.tl-ans--res .tl-ans__name { align-self: stretch; }
.tl-ans__why { margin: 0; font-size: var(--text-xs); color: var(--color-text-secondary); }
.tl-acards { display: grid; gap: var(--space-3); }
@media (min-width: 900px) {
  .tl-acards { grid-template-columns: 1fr 1fr; }
}
.tl-acard { padding: var(--space-3) var(--space-4); border: 1px solid var(--color-border-strong); border-top-width: 4px; border-radius: var(--radius-md); background: var(--color-bg-secondary); }
.tl-acard--open, .tl-acard--keep { border-top-color: var(--color-slate-300); }
.tl-acard--strike { border-top-color: #b42318; }
.tl-acard--choose { border-top-color: #15803d; }
.tl-acard__route { margin: 0; font-size: var(--text-xs); font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--color-amber-600); }
.tl-acard__head { margin: 2px 0 0; font-size: var(--text-base); font-weight: 700; color: var(--color-text-primary); }
.tl-acard--strike .tl-acard__head { text-decoration: line-through; text-decoration-color: var(--color-slate-500); }
.tl-acard__mp { margin: 2px 0 0; font-size: var(--text-xs); color: var(--color-text-secondary); }
.tl-achecks { margin: var(--space-2) 0 0; padding-left: 1.1rem; font-size: var(--text-xs); color: var(--color-text-secondary); }
.tl-acheck--bad { color: #b42318; font-weight: 600; }
.tl-aadv { margin: var(--space-2) 0 0; padding: var(--space-2) var(--space-3); border: 1px solid var(--color-border); border-radius: var(--radius-sm); font-size: var(--text-sm); }
.tl-aadv legend { padding: 0 var(--space-1); font-size: var(--text-xs); font-weight: 600; color: var(--color-text-secondary); }
.tl-aadv label { display: block; margin: 2px 0; }
.tl-adec { display: flex; flex-wrap: wrap; gap: var(--space-2); margin: var(--space-3) 0 0; padding: 0; border: 0; }
.tl-adec__opt { display: inline-flex; align-items: center; gap: var(--space-1); padding: var(--space-1) var(--space-3); border: 1px solid var(--color-border-strong); border-radius: 999px; font-size: var(--text-sm); cursor: pointer; background: #fff; }
.tl-adec__opt:has(input:checked) { border-color: var(--color-slate-900); background: var(--color-slate-100); font-weight: 600; }
.tl-areason select { width: 100%; margin-top: var(--space-1); padding: 3px var(--space-1); font: var(--text-xs) var(--font-body); border: 1px solid var(--color-border-strong); border-radius: var(--radius-sm); background: var(--color-bg-secondary); }
.tl-achoice { max-width: 44rem; }
@media (max-width: 640px) {
  .tl-ans { grid-template-columns: 1fr; }
  .tl-ans__corner, .tl-ans__col { display: none; }
  .tl-ans__row { justify-content: flex-start; padding: var(--space-2) var(--space-3); }
  .tl-ans__row span { writing-mode: horizontal-tb; transform: none; }
  .tl-ans__two { grid-template-columns: 1fr; }
}
@media print {
  .tl-ans { grid-template-columns: 8mm 1fr 1fr; }
  .tl-ans__box { padding: 2mm 3mm; }
}
/* STP */
.tl-ssegs input[type="text"] { width: 100%; min-width: 12rem; padding: var(--space-1) var(--space-2); font: var(--text-sm) var(--font-body); border: 1px solid var(--color-border-strong); border-radius: var(--radius-sm); background: var(--color-bg-secondary); }
.tl-sadv { max-width: 40rem; margin-top: var(--space-3); }
.tl-srate { display: grid; gap: var(--space-3); }
@media (min-width: 900px) {
  .tl-srate { grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr)); }
}
.tl-scard { padding: var(--space-3) var(--space-4); border: 1px solid var(--color-border-strong); border-top-width: 4px; border-top-color: var(--color-slate-300); border-radius: var(--radius-md); background: var(--color-bg-secondary); }
.tl-scard.is-first { border-top-color: var(--color-slate-900); box-shadow: var(--shadow-md); }
.tl-scard__top { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--space-2); }
.tl-scard__head { margin: 0; font-size: var(--text-base); font-weight: 700; color: var(--color-text-primary); }
.tl-scard__note { margin: 2px 0 0; font-size: var(--text-xs); color: var(--color-text-secondary); }
.tl-scard { display: grid; grid-template-rows: subgrid; grid-row: span 4; row-gap: var(--space-3); align-content: start; }
.tl-scard > * { margin-top: 0; margin-bottom: 0; }
.tl-scard__sel { display: grid; gap: var(--space-2); align-self: start; }
.tl-scard__sel .tl-ans__f { display: grid; grid-template-columns: minmax(0, 1fr) 11.5rem; align-items: center; gap: var(--space-2); margin: 0; }
.tl-scard__first { align-self: end; }
.tl-scard__sel select { width: 100%; padding: 3px var(--space-1); font: var(--text-sm) var(--font-body); border: 1px solid var(--color-border-strong); border-radius: var(--radius-sm); background: #fff; }
.tl-scard__first { display: flex; align-items: center; gap: var(--space-2); margin-top: var(--space-3); font-size: var(--text-sm); font-weight: 600; color: var(--color-text-primary); cursor: pointer; }
.tl-spromise { margin-top: var(--space-5); }
.tl-sprofields { display: grid; gap: var(--space-3); }
@media (min-width: 760px) {
  .tl-sprofields { grid-template-columns: 1fr 1.3fr 1.3fr; }
}
.tl-spromise__say { margin: var(--space-3) 0 0; font-size: var(--text-base); color: var(--color-text-primary); }
.tl-spromise__card { margin: 0; padding: var(--space-4) var(--space-5); border: 1px solid var(--color-border-strong); border-radius: var(--radius-md); background: var(--color-amber-50); font-family: var(--font-display); font-size: var(--text-xl); line-height: 1.4; color: var(--color-text-primary); -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.tl-spromise__card cite { display: block; margin-top: var(--space-2); font-family: var(--font-body); font-size: var(--text-sm); font-style: normal; color: var(--color-text-secondary); }
.tl-srank td { text-align: left; font-weight: 400; }
@media (max-width: 640px) {
  .tl-scard__sel .tl-ans__f { grid-template-columns: minmax(0, 1fr) 10rem; }
  .tl-ssegs input[type="text"] { min-width: 0; }
}
@media print {
  .tl-srank tr { break-inside: avoid; }
}
/* Positioning map */
.tl-pmtabs { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); margin: 0 0 var(--space-3); }
.tl-pmtab { padding: var(--space-1) var(--space-3); border: 1px solid var(--color-border-strong); border-radius: 999px; background: #fff; font: var(--text-sm) var(--font-body); color: var(--color-text-secondary); cursor: pointer; }
.tl-pmtab.is-on { border-color: var(--color-slate-900); background: var(--color-slate-900); color: #fff; }
.tl-pmtab--add { border-style: dashed; color: var(--color-text-primary); }
.tl-pmtab__del { margin-left: var(--space-2); font-size: var(--text-sm); }
.tl-pmaxes { display: grid; gap: var(--space-3); }
@media (min-width: 900px) {
  .tl-pmaxes { grid-template-columns: 1fr 1fr; }
}
.tl-pmaxis { margin: 0; padding: var(--space-3); border: 1px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-bg-secondary); }
.tl-pmaxis legend { padding: 0 var(--space-1); font-size: var(--text-xs); font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--color-text-secondary); }
.tl-pmaxis .tl-pair { margin-top: var(--space-2); }
.tl-pmpq { margin-top: var(--space-2); color: #b45309; }
.tl-pmyou { max-width: 24rem; margin-bottom: var(--space-3); }
.tl-pmbrands input[type="text"] { width: 100%; min-width: 14rem; padding: var(--space-1) var(--space-2); font: var(--text-sm) var(--font-body); border: 1px solid var(--color-border-strong); border-radius: var(--radius-sm); background: var(--color-bg-secondary); }
.tl-pmwrap { display: grid; gap: var(--space-4); align-items: start; }
@media (min-width: 900px) {
  .tl-pmwrap { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); }
}
.tl-pmmap { max-width: 34rem; }
.tl-pmmap--res { max-width: 38rem; }
.tl-pmsvg { display: block; width: 100%; height: auto; touch-action: none; user-select: none; }
.tl-pmsvg__plot { fill: #fff; stroke: var(--color-slate-700); stroke-width: 1.5; }
.tl-pmsvg__mid { stroke: var(--color-slate-300); stroke-width: 1; stroke-dasharray: 4 4; }
.tl-pmsvg__end { font: 11px var(--font-body); fill: var(--color-text-secondary); }
.tl-pmsvg__tray { font: italic 11px var(--font-body); fill: var(--color-text-muted); }
.tl-pmsvg__ax { font: 600 12px var(--font-body); fill: var(--color-text-primary); }
.tl-pmdot { cursor: grab; }
.tl-pmdot circle { fill: var(--color-slate-700); stroke: #fff; stroke-width: 2; }
.tl-pmdot text { font: 11px var(--font-body); fill: var(--color-text-primary); paint-order: stroke; stroke: #fff; stroke-width: 3px; stroke-linejoin: round; }
.tl-pmdot--you circle { fill: var(--color-amber-400); stroke: var(--color-slate-900); stroke-width: 2.5; }
.tl-pmdot--you text { font-weight: 700; }
.tl-pmdot.is-tray circle { fill: var(--color-slate-300); }
.tl-pmdot--you.is-tray circle { fill: var(--color-amber-100); }
.pb-grid.tl-pmpos { min-width: 0; width: 100%; }
.tl-pmpos th, .tl-pmpos td { text-align: left; }
.tl-pmpos input[type="number"] { width: 5rem; padding: 2px var(--space-1); font: var(--text-sm) var(--font-body); border: 1px solid var(--color-border-strong); border-radius: var(--radius-sm); }
.tl-pmpos tr.is-you th { color: #92400e; }
.tl-pmpay { margin-top: var(--space-4); }
.tl-pmpay select { max-width: 30rem; width: 100%; }
.tl-pmothers { display: grid; gap: var(--space-3); grid-template-columns: repeat(auto-fill, minmax(14rem, 19rem)); }
.tl-pmother .tl-pmsvg { max-width: 19rem; }
.tl-pmother { margin: 0; padding: var(--space-2); border: 1px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-bg-secondary); }
.tl-pmother figcaption { font-size: var(--text-xs); color: var(--color-text-secondary); }
.tl-pmq { margin: 0 0 var(--space-3); padding: 0; border: 0; display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
.tl-pmq legend { flex: 1 1 100%; margin-bottom: var(--space-1); padding: 0; font-size: var(--text-sm); font-weight: 600; color: var(--color-text-primary); }
.tl-pmq__ans { display: none; }
.tl-pmentry__sug { margin: var(--space-3) 0; font-size: var(--text-lg); color: var(--color-text-primary); }
.pb-grid.tl-pmmodes { min-width: 34rem; }
.tl-pmmodes td { text-align: left; font-weight: 400; }
.tl-pmreview { display: flex; flex-wrap: wrap; align-items: flex-end; gap: var(--space-2) var(--space-4); margin-top: var(--space-4); }
.tl-pmreview .tl-field { min-width: 12rem; }
.tl-pmreview__date { margin: 0; font-size: var(--text-sm); color: var(--color-text-secondary); flex: 1 1 18rem; }
@media (max-width: 640px) {
  .tl-pmbrands input[type="text"] { min-width: 0; }
  .pb-grid.tl-pmmodes { min-width: 0; }
}
@media print {
  .tl-pmq .tl-adec__opt { display: none; }
  .tl-pmq__ans { display: inline; font-weight: 700; }
  .tl-pmreview select, .tl-pmreview label { display: none; }
  .tl-pmentry { break-inside: avoid; }
  .pb-grid.tl-pmmodes { min-width: 0; font-size: 8.5pt; }
  .tl-pmmap--res { max-width: 120mm; }
}
@media (max-width: 640px) {
  .tl-pmdot text { font-size: 13px; }
  .tl-pmsvg__end, .tl-pmsvg__tray { font-size: 13px; }
  .tl-pmsvg__ax { font-size: 14px; }
}
@media print {
  .tl-pmothers { grid-template-columns: repeat(3, 1fr); }
  .tl-pmother { break-inside: avoid; }
}
