.ws-tool-page { min-inline-size:0; }
main.rc-scope>.ws-tool-page { padding-inline-start:12px; }
.ws-tool-page p,.ws-tool-page li,.ws-tool-page dt,.ws-tool-page dd { overflow-wrap:anywhere; }
.ws-tool-page .ws-page-section { margin-block:24px; scroll-margin-block-start:6rem; }
.ws-tool-hero { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; padding:clamp(18px,3vw,32px); border:1px solid var(--border); border-radius:var(--r-panel); background:var(--brand-soft); }
.ws-tool-hero>* { min-inline-size:0; }
.ws-tool-kicker { margin-block:0 8px; color:var(--brand); font-weight:800; font-size:.875rem; letter-spacing:.04em; }
.ws-tool-hero h1 { margin-block-start:0; }
.ws-tool-hero .lede { margin-block-end:16px; }
.ws-tool-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:16px; margin-block-start:20px; }
.ws-tool-hero-actions>a { display:inline-flex; align-items:center; min-block-size:44px; }
.ws-tool-hero-actions .button { padding:12px 20px; min-block-size:44px; }
.ws-tool-visual { margin:0; padding:20px; border:1px solid var(--border); border-radius:var(--r-panel); background:var(--surface); }
.ws-tool-visual figcaption { color:var(--text); font-family:var(--font-display); font-weight:800; font-size:1.125rem; line-height:1.4; }
.ws-tool-visual-path { display:grid; gap:10px; margin-block:20px; }
.ws-tool-visual-path>* { min-inline-size:0; overflow-wrap:anywhere; }
.ws-tool-visual-path>span { padding-inline-start:12px; border-inline-start:3px solid var(--brand); }
.ws-tool-visual strong { display:block; font-family:var(--font-display); font-size:1.5rem; font-weight:800; font-variant-numeric:tabular-nums; }
.ws-tool-visual-path strong { color:var(--brand); }
.ws-tool-visual-claim { padding:16px; border:1px solid var(--border); border-radius:var(--r-control); background:var(--surface-alt); }
.ws-tool-visual-claim strong { margin-block-start:6px; }
.ws-tool-visual>p { margin-block-end:0; color:var(--text-dim); font-size:.9375rem; }
.ws-tool-workspace { padding:8px; border:1px solid var(--border); border-block-start:4px solid var(--brand); border-radius:var(--r-panel); background:var(--surface-alt); }
.ws-tool-section-heading h2 { margin-block-start:0; }
.ws-tool-page .ws fieldset { margin-block:20px; padding:8px; }
.ws-tool-page .ws-result { padding:12px; }
.ws-tool-page .ws input,.ws-tool-page .ws select,.ws-tool-page .ws textarea { box-sizing:border-box; }
.ws-tool-page .ws textarea { inline-size:100%; max-inline-size:100%; padding:var(--s-2) var(--s-3); border:1px solid var(--control-border); border-radius:var(--r-control); font:inherit; color:var(--text); background:var(--surface); resize:vertical; }
.ws-tool-page .ws-source-reference { background:var(--surface-alt); }
.ws-tool-source-explainer,.ws-tool-save { padding:20px; border:1px solid var(--border); border-radius:var(--r-panel); background:var(--surface-alt); }
.ws-tool-lanes { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; margin-block:16px; }
.ws-tool-lanes>div { padding:16px; border:1px solid var(--border); border-radius:var(--r-control); background:var(--surface); }
.ws-tool-lanes dt { font-family:var(--font-display); font-weight:800; }
.ws-tool-lanes dd { margin:8px 0 0; }
.ws-tool-programme-list { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; }
.ws-tool-programme-list>article { min-inline-size:0; padding:20px; border:1px solid var(--border); border-radius:var(--r-panel); background:var(--surface); }
.ws-tool-programme-list h3 { margin-block-start:0; font-weight:800; }
.ws-tool-programme-list dl { margin-block:16px; }
.ws-tool-programme-list dl>div { padding-block:10px; border-block-end:1px solid var(--border); }
.ws-tool-programme-list dt { font-weight:800; }
.ws-tool-programme-list dd { margin:4px 0 0; }
.ws-tool-programme-list article>a { display:inline-flex; align-items:center; min-block-size:44px; font-weight:700; }
@media (min-width:768px) { main.rc-scope>.ws-tool-page { padding-inline-start:var(--gutter); } .ws-tool-workspace { padding:20px; } .ws-tool-page .ws fieldset { padding:16px; } .ws-tool-page .ws-result { padding:20px; } .ws-tool-lanes { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (min-width:1024px) { .ws-tool-hero { grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); align-items:start; } }
@media print {
  .ws-tool-hero { display:block; padding:0; border:0; background:var(--print-paper); }
  .ws-tool-visual,.ws-tool-hero-actions { display:none; }
  .ws-tool-workspace { padding:0; border:0; }
  .ws-tool-page .ws-print-record { inline-size:100%; border-collapse:collapse; }
  .ws-tool-page .ws-print-record th,.ws-tool-page .ws-print-record td { white-space:pre-wrap; overflow-wrap:anywhere; }
  .ws-tool-page .ws-print-record th { inline-size:38%; }
  .ws-tool-page .ws-page-section { break-before:auto; break-after:auto; }
}
