.workout-tool { padding: clamp(1rem, 4vw, 1.5rem); border: 1px solid var(--border); border-radius: 12px; background: var(--bg-alt, #f5f7f8); margin: 1rem 0 1.5rem; }
.workout-tool h2 { margin-top: 0; }
.tool-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); gap: 1rem; }
.workout-tool label { display: block; font-weight: 600; margin-bottom: .4rem; }
.workout-tool input, .workout-tool select { box-sizing: border-box; width: 100%; min-height: 44px; font: inherit; padding: .6rem; border: 1px solid var(--border); border-radius: 6px; background: white; color: #18202b; }
.workout-tool button { min-height: 44px; cursor: pointer; font: inherit; }
.workout-tool :focus-visible { outline: 3px solid #166534; outline-offset: 3px; }
.tool-time { display: block; font-size: clamp(3rem, 12vw, 5rem); line-height: 1.15; font-weight: 800; font-variant-numeric: tabular-nums; }
.workout-tool progress { width: 100%; height: 12px; accent-color: #166534; }
.tool-result { font-size: 1.15rem; font-weight: 600; line-height: 1.6; }
.tool-error { color: #a01625; }
.tool-links { display: flex; flex-wrap: wrap; gap: .6rem; margin: 1rem 0; }
.tool-links a { padding: .65rem .8rem; border: 1px solid var(--border); border-radius: 8px; font-weight: 600; }
.protocol-sheet table.data { min-width: 0; table-layout: fixed; }
.protocol-sheet table.data td, .protocol-sheet table.data th { overflow-wrap: anywhere; padding: .6rem .35rem; }
@media print {
  body { background: white !important; color: black !important; }
  .site-header, .site-footer, .breadcrumb, .tool-links, [data-print], .no-print, #consent-banner { display: none !important; }
  .protocol-sheet { max-width: none; font-size: 11pt; }
  .protocol-sheet table { width: 100%; border-collapse: collapse; }
  .protocol-sheet th, .protocol-sheet td { padding: .3rem; border: 1px solid #aaa; }
  .protocol-sheet h1 { font-size: 22pt; }
  .protocol-sheet h2 { font-size: 15pt; margin: .6rem 0; }
  .protocol-sheet a { color: black; text-decoration: none; }
  @page { margin: 14mm; }
}
