/* VECTOR — ejercicios, evaluación, progreso, informe, barra inferior y timer (copiado de la app de Mauro; sigue a styles.css) */
/* Fila compacta de ejercicio */
.ex-slim-wrap { margin-bottom: 6px; }
.ex-slim {
  display: flex; align-items: center; gap: 10px; background: var(--surface); border: 1px solid var(--line-soft); border-radius: 10px;
  padding: 7px 12px; box-shadow: 0 1px 2px rgba(62,95,77,.06), var(--raise);
}
.ex-slim.hasub { align-items: flex-start; padding-top: 8px; padding-bottom: 8px; }
.ex-slim.hasub .stick, .ex-slim.hasub .sscheme, .ex-slim.hasub .ibtn, .ex-slim.hasub .slink { margin-top: 1px; }
.ex-slim .sname { flex: 1; font-size: 13.5px; font-weight: 600; min-width: 0; }
.sname.asbtn { background: none; border: 0; padding: 0; text-align: left; font: inherit; font-weight: 600; font-size: 13.5px; color: inherit; cursor: pointer; flex: 1; min-width: 0; }
.ex-slim.done .sname, .ex-slim.done .asbtn { color: var(--green); }
.ex-slim .sscheme { font-family: var(--mono); font-size: 11.5px; color: var(--green); white-space: nowrap; text-align: right; }
.ex-slim .sscheme.val { color: var(--ink); background: var(--surface-2); padding: 3px 8px; border-radius: 6px; }
.ex-slim .slink { text-decoration: none; font-size: 13px; padding: 8px 9px; color: var(--green); }
.ex-slim .slink.searchy { color: var(--muted); }
.ssub { display: block; font-family: var(--mono); font-size: 10.5px; font-weight: 500; color: var(--muted); margin-top: 3px; letter-spacing: .02em; }
.ssub b { color: var(--green); font-weight: 500; }
.sscheme .rpe, .ex-scheme .rpe { display: block; text-align: right; font-size: 9.5px; letter-spacing: .06em; color: var(--gold); margin-top: 2px; }
.stick {
  flex: none; width: 32px; height: 32px; border-radius: 50%; border: 1.5px solid var(--line); background: var(--surface-2); color: transparent;
  font-size: 14px; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; padding: 0;
}
.stick.done { background: linear-gradient(180deg, var(--green-hi), var(--green)); border-color: var(--green); color: var(--on-green); }
.stick.pop { animation: pop .35s cubic-bezier(.2,1.4,.4,1) 1; }
@keyframes pop { 0% { transform: scale(.7); } 60% { transform: scale(1.18); } 100% { transform: scale(1); } }
.ibtn {
  display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; margin-left: 7px; border-radius: 50%;
  border: 1.5px solid var(--green-soft); background: var(--surface-2); color: var(--green); font-family: Georgia, "Times New Roman", serif;
  font-style: italic; font-weight: 700; font-size: 13px; line-height: 1; cursor: pointer; vertical-align: -3px; flex: none; padding: 0;
}
.ibtn.on { background: var(--green); border-color: var(--green); color: var(--on-green); }
.ex-slim .ibtn { margin-left: 0; }
.ex-obs {
  margin: 6px 0 2px; padding: 9px 12px; font-size: 13px; line-height: 1.45; color: var(--ink); background-color: #E4ECE3;
  border-left: 3px solid var(--green); border-radius: 0 9px 9px 0;
}
.ex-obs b { color: var(--green); font-family: var(--mono); font-weight: 500; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; margin-right: 4px; }
.ex-slim-wrap .ex-obs { margin: 0 0 0 44px; border-radius: 0 0 9px 9px; }

/* Tarjeta de ejercicio abierta */
.ex-card { padding: 13px 15px 15px; }
.ex-card.isdone { border-color: color-mix(in srgb, var(--green-soft) 45%, var(--line-soft)); }
.ex-top { display: flex; align-items: center; justify-content: space-between; gap: 9px; }
.ex-top .ex-name { flex: 1; min-width: 0; font-weight: 650; font-size: 14.5px; }
.ex-top .stick { width: 30px; height: 30px; }
.ex-scheme { font-family: var(--mono); font-size: 12.5px; font-weight: 500; white-space: nowrap; color: var(--green); text-align: right; }
.ex-detail { color: var(--muted); font-size: 12.5px; margin-top: 3px; }
.ex-links { display: flex; gap: 8px; margin-top: 9px; flex-wrap: wrap; align-items: center; }
.vlink, .timerbtn {
  display: inline-flex; align-items: center; gap: 5px; font-family: var(--sans); font-size: 12.5px; font-weight: 700; text-decoration: none;
  border: 1px solid var(--line); padding: 8px 13px; min-height: 38px; border-radius: 999px; background: var(--surface-2); cursor: pointer;
}
.vlink { color: var(--green); }
.vlink.searchy { color: var(--muted); border-style: dashed; }
.timerbtn { color: var(--clay); }
.foldbtn { flex: none; margin-left: 2px; width: 30px; height: 30px; border-radius: 9px; border: 1px solid var(--line); background: var(--surface-2); color: var(--muted); font-size: 12px; cursor: pointer; line-height: 1; padding: 0; }
.serieline { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 11px 0 2px; }
.serieline .slab { font-family: var(--mono); font-size: 10.5px; letter-spacing: .05em; text-transform: uppercase; color: var(--muted); }
.serieline .sers { display: flex; gap: 6px; flex-wrap: wrap; }
.serieline .ser { min-width: 34px; height: 30px; padding: 0 8px; border-radius: 8px; border: 1px dashed var(--line); display: grid; place-items: center; font-family: var(--mono); font-size: 12px; color: var(--muted); }
.serieline .ser.on { border-style: solid; border-color: var(--green); background: var(--green); color: var(--on-green); font-weight: 700; }
.logline { display: grid; grid-template-columns: 1fr 96px; gap: 6px; margin-top: 11px; }
.logline .row2 { grid-column: 1 / -1; display: flex; gap: 6px; }
.logline input { width: 100%; min-width: 0; font-family: var(--sans); font-size: 16px; padding: 10px 11px; min-height: 44px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-2); color: var(--ink); }
.logline .row2 input { flex: 1; }
.lastlog { font-size: 12.5px; margin-top: 10px; display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.lastlog b { font-family: var(--mono); font-weight: 500; }
.hoy { font-size: 12.5px; margin-top: 6px; color: var(--muted); }
.hoy b { font-family: var(--mono); font-weight: 500; color: var(--ink); }
.hist { margin: 6px 0 0; padding: 0; list-style: none; font-size: 12.5px; color: var(--muted); }
.hist li { display: flex; align-items: center; gap: 8px; padding: 4px 0; border-top: 1px dashed var(--line-soft); }
.hist li b { color: var(--ink); font-family: var(--mono); font-weight: 500; margin-left: auto; }

/* Complementarios a elección */
.menu-hint { font-size: 12.5px; color: var(--muted); margin: 0 2px 10px; }
.menu-hint b { color: var(--green); }
.menu-group { margin-bottom: 12px; }
.menu-lab { display: block; font-family: var(--mono); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); margin: 0 2px 5px; }
.menu-group.picked .menu-lab { color: var(--green); }
.menu-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 6px; }
.mchip {
  display: inline-flex; flex-direction: column; align-items: flex-start; gap: 1px; min-height: 40px; padding: 6px 12px; text-align: left;
  border-radius: 12px; border: 1px solid var(--line); background: var(--surface); color: var(--ink); font-family: var(--sans); font-size: 13px; font-weight: 650;
  cursor: pointer; box-shadow: 0 1px 2px rgba(62,95,77,.08), var(--raise);
}
.mchip small { font-family: var(--mono); font-size: 10px; font-weight: 500; color: var(--muted); }
.mchip.on { background: linear-gradient(180deg, var(--green-hi), var(--green)); border-color: var(--green); color: var(--on-green); box-shadow: 0 2px 8px rgba(62,95,77,.30), inset 0 1px 0 rgba(255,255,255,.18); }
.mchip.on small { color: var(--sage); }
.menu-n { display: inline-block; font-family: var(--mono); font-size: 9.5px; background: var(--green); color: var(--on-green); border-radius: 99px; padding: 1px 7px; margin-left: 6px; vertical-align: 1px; }

/* Avisos y día completado */
.banner-done { background: var(--gold-bg); border: 1px solid color-mix(in srgb, var(--gold) 35%, transparent); border-radius: 12px; padding: 14px 16px; margin-bottom: 12px; box-shadow: var(--shadow); }
.banner-done p { margin: 0 0 10px; font-size: 13.5px; }
.banner-backup { margin: 14px 0; padding: 13px 14px; border-radius: 12px; border: 1px solid var(--gold); background: color-mix(in srgb, var(--gold) 9%, var(--surface)); }
.banner-backup p { margin: 0 0 10px; font-size: 13px; line-height: 1.5; }
.viewnote { margin: 10px 2px; padding: 9px 12px; border-left: 3px solid var(--gold); background: color-mix(in srgb, var(--gold) 10%, transparent); border-radius: 0 8px 8px 0; font-size: 12.5px; line-height: 1.5; }
.daydone-card {
  display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; width: 100%; text-align: left; margin: 10px 0 0; padding: 15px 14px;
  border: 1px solid var(--green); border-radius: 14px; background: linear-gradient(180deg, rgba(175,200,180,.22), rgba(175,200,180,.10)); cursor: pointer; text-decoration: none; color: inherit;
}
.daydone-card .dd-tick { width: 30px; height: 30px; border-radius: 50%; background: var(--green); color: var(--on-green); display: grid; place-items: center; font-size: 15px; font-weight: 700; }
.daydone-card .dd-body b { display: block; font-size: 14.5px; }
.daydone-card .dd-body span { display: block; margin-top: 3px; font-size: 12.5px; color: var(--muted); line-height: 1.4; }
.daydone-card .dd-chev { font-family: var(--mono); font-size: 10.5px; letter-spacing: .05em; text-transform: uppercase; color: var(--green); white-space: nowrap; }
.card.notesaved { background: color-mix(in srgb, var(--sage) 18%, var(--surface)); border-left: 3px solid var(--green-soft); }
.card.notesaved p { font-size: 13.5px; line-height: 1.5; white-space: pre-wrap; }
textarea.notes, .search, .impbox { width: 100%; font-family: var(--sans); font-size: 16px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-2); color: var(--ink); }
textarea.notes { min-height: 70px; resize: vertical; }
.search { min-height: 44px; margin-bottom: 4px; }

/* Evaluación del entreno */
.evblock { border-top: 4px solid var(--green); }
.evblock.ev-mol { border-top-color: var(--clay); }
.evblock.ev-sueno { border-top-color: var(--slate); }
.evhead { font-family: var(--display); font-weight: 400; font-size: 12px; letter-spacing: .04em; text-transform: uppercase; margin: 0 0 2px; color: var(--green); }
.ev-mol .evhead { color: var(--clay); }
.ev-sueno .evhead { color: var(--slate); }
.evlabel { font-family: var(--mono); font-size: 10px; text-transform: uppercase; letter-spacing: .12em; color: var(--muted); margin: 12px 0 6px; }
.evlabel:first-of-type { margin-top: 2px; }
.evread { margin: 8px 0 2px; font-size: 13px; color: var(--muted); display: flex; align-items: center; gap: 8px; }
.evread b { font-family: var(--mono); font-weight: 500; font-size: 13px; color: var(--on-green); background: var(--green); border-radius: 8px; padding: 3px 8px; flex: none; }
.evread.warn b { background: var(--gold); }
.evread.bad b { background: var(--clay); }
.evinput { width: 100%; font-family: var(--sans); font-size: 16px; padding: 10px 12px; min-height: 44px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-2); color: var(--ink); margin-top: 2px; }
.chips10 { display: flex; flex-wrap: wrap; gap: 5px; }
.chip10 {
  width: 34px; height: 36px; border-radius: 10px; border: 1px solid var(--line); background: var(--surface-2); color: var(--muted);
  font-family: var(--mono); font-size: 12.5px; font-weight: 500; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; padding: 0;
}
.chip10.sel { background: linear-gradient(180deg, var(--green-hi), var(--green)); border-color: var(--green); color: var(--on-green); }
.rpe-table { margin: 8px 0 0; padding: 0; list-style: none; font-size: 12px; color: var(--muted); }
.rpe-table li { display: flex; gap: 8px; padding: 4px 0; border-top: 1px dashed var(--line-soft); }
.rpe-table b { font-family: var(--mono); min-width: 34px; color: var(--green); }
.rpe-table strong { color: var(--ink); }
.sesprev { display: flex; align-items: center; justify-content: space-between; gap: 8px; width: 100%; margin: 8px 2px 0; padding: 9px 12px; min-height: 40px; border: 1px dashed var(--line); border-radius: 10px; background: transparent; color: var(--muted); font-family: var(--mono); font-size: 11px; letter-spacing: .04em; text-transform: uppercase; cursor: pointer; }
.sesprev .n { font-weight: 700; color: var(--green); background: var(--surface-2); border-radius: 999px; padding: 1px 8px; }
.seslist { list-style: none; margin: 0; padding: 0; }
.seslist li { display: grid; grid-template-columns: auto 1fr auto; gap: 10px; align-items: baseline; padding: 8px 0; border-bottom: 1px solid var(--line-soft); font-size: 13px; }
.seslist li:last-child { border-bottom: 0; }
.seslist li b { font-family: var(--mono); font-size: 11.5px; color: var(--muted); }

/* Progreso */
.stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; margin: 16px 0 12px; }
.stat { background: var(--surface); border: 1px solid var(--line-soft); border-radius: 12px; padding: 12px 13px; box-shadow: var(--shadow), var(--raise); min-width: 0; }
.stat .n { font-family: var(--display); font-size: 23px; line-height: 1.15; color: var(--green); }
.stat .n small { font-size: 14px; font-family: var(--mono); color: var(--muted); }
.stat .l { font-family: var(--mono); font-size: 8.5px; text-transform: uppercase; letter-spacing: .11em; color: var(--muted); margin-top: 4px; }
.weekdots { display: flex; gap: 5px; margin-top: 10px; flex-wrap: wrap; }
.weekdots span { width: 30px; height: 30px; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; font-family: var(--mono); font-size: 11.5px; font-weight: 500; background: var(--surface-2); border: 1px solid var(--line-soft); color: var(--muted); }
.weekdots span.d { background: linear-gradient(180deg, var(--green-hi), var(--green)); border-color: var(--green); color: var(--on-green); }
.exrow { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 10px 0; border-top: 1px dashed var(--line-soft); }
.exrow:first-of-type { border-top: 0; }
.exrow.asrow { width: 100%; text-align: left; background: transparent; border: 0; border-bottom: 1px solid var(--line-soft); cursor: pointer; font-family: inherit; color: inherit; }
.exrow .nm { font-size: 13px; font-weight: 650; }
.exrow .ctx { color: var(--muted); font-size: 11px; }
.exrow .val { font-family: var(--mono); font-weight: 500; font-size: 13.5px; white-space: nowrap; }
.pr { font-family: var(--mono); font-size: 10.5px; color: var(--gold); }
.deltapill { display: inline-block; margin-top: 4px; margin-right: 6px; padding: 1px 7px; border-radius: 999px; font-family: var(--mono); font-size: 10px; background: var(--surface-2); color: var(--muted); }
.deltapill.up { background: color-mix(in srgb, var(--green) 16%, transparent); color: var(--green); font-weight: 700; }
.deltapill.down { background: color-mix(in srgb, var(--clay) 16%, transparent); color: var(--clay); font-weight: 700; }
.exdetail { padding: 6px 2px 14px; border-bottom: 1px solid var(--line-soft); }
.exdetail .seslist { margin-top: 8px; }
.dim { color: var(--muted); font-size: 10.5px; }
.spark polyline { fill: none; stroke: var(--green-soft); stroke-width: 1.6; }
.spark circle { fill: var(--green); }
.bigspark { width: 100%; height: 56px; margin-top: 8px; }
.bigspark polyline { fill: none; stroke: var(--green-soft); stroke-width: 2; }
.bigspark circle { fill: var(--green); }
.kpis { display: flex; gap: 16px; flex-wrap: wrap; margin-top: 8px; }
.kpi .v { font-family: var(--mono); font-weight: 500; font-size: 16px; }
.kpi .k { font-family: var(--mono); font-size: 9px; text-transform: uppercase; letter-spacing: .1em; color: var(--muted); }
.delta { font-family: var(--mono); font-size: 11px; }
.delta.down { color: var(--green-soft); }
.delta.up { color: var(--clay); }
.linechart { width: 100%; height: 92px; display: block; overflow: visible; }
.linechart .ax { stroke: var(--line); stroke-width: 1; }
.linechart .ln { fill: none; stroke-width: 2; stroke-linejoin: round; stroke-linecap: round; }
.linechart .ln.clay { stroke: var(--clay); }
.linechart .ln.green { stroke: var(--green); }
.linechart .dt { fill: var(--green); }
.linechart .axn, .linechart .axd { fill: var(--muted); font-family: var(--mono); font-size: 7px; }
.barchart { display: flex; flex-direction: column; gap: 5px; }
.brow { display: grid; grid-template-columns: 52px 1fr auto; align-items: center; gap: 9px; }
.brow .bl { font-family: var(--mono); font-size: 10.5px; font-weight: 700; }
.brow .bt { height: 13px; border-radius: 999px; background: var(--surface-2); overflow: hidden; }
.brow .bt span { display: block; height: 100%; border-radius: 999px; background: linear-gradient(90deg, var(--green-soft), var(--green)); }
.brow .bt span.zero { background: var(--line); }
.brow .bv { font-family: var(--mono); font-size: 11px; white-space: nowrap; }
.footer-note { color: var(--muted); font-size: 12.5px; margin: 22px 2px 0; text-align: center; }

/* Informe */
.rep { padding: 8px 0 8px; }
.rep-head { border-bottom: 3px solid var(--green); padding-bottom: 14px; margin-bottom: 4px; }
.rep-eyebrow { font-family: var(--mono); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--green-soft); margin: 0; }
.rep-head h1 { font-family: var(--display); font-weight: 400; font-size: 25px; line-height: 1.1; margin: 7px 0 8px; }
.rep-sub { font-size: 13px; color: var(--muted); line-height: 1.55; margin: 0; }
.rep-sub b { color: var(--ink); }
.rep-sec { margin-top: 24px; break-inside: avoid; }
.rep-sec.long { break-inside: auto; }
.rep-sec h2 { font-family: var(--mono); font-size: 11px; font-weight: 500; letter-spacing: .09em; text-transform: uppercase; color: var(--green); margin: 0 0 11px; padding-bottom: 6px; border-bottom: 1px solid var(--line); }
.rep-kpis { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 12px; }
.rep-kpis .rk { flex: 1 1 96px; padding: 10px 11px; border: 1px solid var(--line-soft); border-radius: 10px; background: var(--surface); }
.rep-kpis .rk b { display: block; font-family: var(--mono); font-size: 17px; }
.rep-kpis .rk span { display: block; margin-top: 2px; font-size: 10.5px; color: var(--muted); line-height: 1.35; }
.rep-note { font-size: 12.5px; line-height: 1.5; margin: 9px 0 0; }
.rep-note.muted { color: var(--muted); }
.rep-ses { padding: 10px 0; border-bottom: 1px solid var(--line-soft); break-inside: avoid; }
.rep-ses:last-child { border-bottom: 0; }
.rs-top { margin: 0; font-size: 12.5px; color: var(--muted); }
.rs-top b { font-family: var(--mono); color: var(--ink); }
.rs-top .ok { color: var(--green); font-family: var(--mono); font-size: 10px; text-transform: uppercase; letter-spacing: .05em; }
.rs-ev { margin: 4px 0 0; font-size: 12.5px; color: var(--clay); font-weight: 600; }
.rs-nota { margin: 4px 0 0; font-size: 12.5px; line-height: 1.5; }
.rs-regs { margin: 5px 0 0; font-size: 12px; line-height: 1.7; }
.rs-regs b { font-family: var(--mono); }
.rs-regs.otros { margin-top: 4px; font-size: 10.5px; color: var(--muted); }
.rep-tab { width: 100%; border-collapse: collapse; font-size: 12px; }
.rep-tab th { text-align: left; font-family: var(--mono); font-size: 9.5px; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); font-weight: 500; padding: 0 6px 6px 0; border-bottom: 1px solid var(--line); }
.rep-tab td { padding: 8px 6px 8px 0; border-bottom: 1px solid var(--line-soft); vertical-align: top; line-height: 1.45; }
.rep-tab .r { text-align: right; padding-right: 0; white-space: nowrap; }
.rep-tab .mono { font-family: var(--mono); font-size: 11px; }
.rep-tab .up { color: var(--green); font-weight: 700; }
.rep-tab .down { color: var(--clay); font-weight: 700; }
.rep-foot { margin: 26px 0 0; padding-top: 10px; border-top: 1px solid var(--line-soft); font-family: var(--mono); font-size: 9.5px; letter-spacing: .05em; text-transform: uppercase; color: var(--muted); }
.rep-actions { padding: 18px 0 20px; display: flex; flex-direction: column; gap: 8px; }

/* Barra inferior */
nav.bottom {
  position: fixed; bottom: 0; left: 0; right: 0; z-index: 40; display: flex; justify-content: space-around; padding: 8px 4px calc(8px + env(safe-area-inset-bottom));
  background: rgba(249,243,228,.86); -webkit-backdrop-filter: saturate(160%) blur(14px); backdrop-filter: saturate(160%) blur(14px);
  border-top: 1px solid var(--line-soft); box-shadow: 0 -6px 24px rgba(62,95,77,.12);
}
nav.bottom a {
  flex: 1; max-width: 130px; display: flex; flex-direction: column; align-items: center; gap: 3px; padding: 7px 0 4px; min-height: 50px; margin: 0 3px;
  border-radius: 14px; text-decoration: none; color: var(--muted); font-family: var(--mono); font-size: 9px; font-weight: 500; letter-spacing: .1em; text-transform: uppercase; transition: background .15s ease;
}
nav.bottom svg { width: 22px; height: 22px; stroke: currentColor; fill: none; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
nav.bottom a.active { background: linear-gradient(180deg, #E4EDE3, #D6E3D7); color: var(--green); box-shadow: inset 0 1px 0 rgba(255,255,255,.6); }

/* Timer de descanso */
#timer {
  position: fixed; left: 50%; transform: translateX(-50%); bottom: calc(78px + env(safe-area-inset-bottom)); z-index: 50;
  background: linear-gradient(180deg, var(--green-hi), var(--green)); color: var(--on-green); border-radius: 16px; padding: 14px 18px;
  display: none; align-items: center; gap: 14px; box-shadow: 0 10px 30px rgba(38,51,43,.35); min-width: 280px; justify-content: space-between;
}
#timer.on { display: flex; }
#timer .t { font-family: var(--mono); font-size: 30px; font-weight: 500; min-width: 92px; }
#timer button { background: color-mix(in srgb, var(--on-green) 16%, transparent); color: var(--on-green); border: 0; border-radius: 9px; font-family: var(--sans); font-weight: 800; font-size: 13px; padding: 10px 12px; min-height: 40px; cursor: pointer; }
#timer.zero { animation: pulse .6s ease 4; }
@keyframes pulse { 50% { transform: translateX(-50%) scale(1.04); } }

@media print {
  nav.bottom, #timer, .masthead, .rep-actions, .footer-note, .toast, .no-print { display: none !important; }
  html, body { background: #fff !important; padding: 0 !important; margin: 0 !important; }
  .rep-kpis .rk, .rep-tab, .brow .bt { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  @page { size: A4; margin: 14mm 13mm; }
}
@media (prefers-reduced-motion: reduce) { * { animation: none !important; transition: none !important; } }
