/* Main ECG controls: measurements first, one transport button, compact settings. */
.ecg-player{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;width:100%;max-width:760px;margin:0 auto;min-width:0;padding:4px 0 0}
.ecg-player .player-timeline{display:flex;align-items:center;gap:10px;width:100%;margin:0;min-width:0;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}
.player-timeline .play-time,.player-timeline .play-total{flex:none;white-space:nowrap;min-width:42px}
.player-timeline .play-position{flex:1;min-width:0;width:0}
.player-timeline .play-position::-webkit-slider-runnable-track{background:#b8b080}
.player-timeline .play-position::-webkit-slider-thumb{background:#ded5a2}
.player-timeline .play-position::-moz-range-track{background:#b8b080}
.player-timeline .play-position::-moz-range-thumb{background:#ded5a2}
.ecg-player .player-end{min-width:36px;width:36px;min-height:34px;padding:6px;border:0;background:transparent;border-radius:8px}
.player-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;width:100%;min-width:0}
.ecg-player .button,.ecg-player .select-trigger,.ecg-player .player-options>summary{border-radius:8px;min-height:44px;text-transform:none;letter-spacing:0;font-size:14px}
.ecg-player .ruler,.ecg-player .ruler[aria-pressed=true]{min-width:160px;background:#a8e3d3;border-color:#a8e3d3;color:#153a31;font-weight:600;justify-content:center;padding:10px 20px}
.ecg-player .ruler[aria-pressed=true]{box-shadow:inset 0 0 0 2px #357e69}
.ecg-player .play{min-width:124px;justify-content:center;background:#ded5a2;border-color:#ded5a2;color:#343321;font-weight:600;padding:10px 18px}
.ecg-player .ruler:hover{background:#b9e9dc}.ecg-player .play:hover{background:#e8dfb4}
.ecg-player .ruler:disabled{background:#354447;color:var(--muted);border-color:var(--line);opacity:1}
.ecg-player>.player-options{display:block;position:static;flex-basis:100%;width:100%;order:1}
.ecg-player>.player-options:not([open]){display:none}
.ecg-player .player-settings-toggle{display:flex;align-items:center;justify-content:center;width:44px;min-width:44px;padding:10px;background:transparent;border:1px solid var(--line)}
.ecg-player .player-settings-toggle[aria-expanded=true]{background:#2d383b;border-color:#7a8c8b}
.ecg-player .player-settings{position:static;flex-basis:100%;display:grid;gap:14px;width:100%;max-width:none;max-height:none;overflow:visible;inset:auto;padding:16px;border:0;border-radius:10px;background:#2a3438;box-shadow:none}
.player-options:not([open])>.player-settings{display:none}
.ecg-player .playback-speed{display:flex;justify-content:flex-start;align-items:center;gap:16px;font-size:13px;color:var(--muted)}
.ecg-player .playback-speed>span{display:block;position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}
.ecg-player .playback-speed .custom-select{width:108px;min-width:108px;max-width:none}
.ecg-player .playback-speed .select-trigger{min-height:44px;padding:10px 14px;background:#424438;border-color:#c8be8a;color:#e8e0b8;font-weight:600}
.ecg-player .playback-speed .select-options{top:auto;bottom:calc(100% + 8px);left:0;right:auto;min-width:132px;max-height:240px;border-radius:8px;background:#2a3438;z-index:12}
.ecg-player .playback-speed .select-option{min-height:40px;border-radius:5px}
.ecg-player .playback-speed .select-option[aria-selected=true]{background:#ded5a2;color:#343321;font-weight:600}
.player-settings-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-width:0}
.ecg-player .player-settings-actions .button{justify-content:center;background:#354144;border:1px solid #657a76;color:var(--ink);font-weight:500;min-height:46px;min-width:0;padding:10px 12px}
.ecg-player .player-settings-actions .button:hover{background:#40514f}
.ecg-player .repeat-toggle[aria-pressed=true]{background:#424438;border-color:#c8be8a;color:#e8e0b8}
.repeat-state{font-size:11px;font-weight:400}
.mobile-view-controls{display:none}
span.lead-label:hover{background:transparent;color:#3e5760}
.viewer-heading .screen-toggle{display:none}
.ecg-player>.screen-toggle{position:static;order:0}
.expanded .ecg-player>.screen-toggle{display:flex;flex:none;width:44px;padding:10px;order:0}
.expanded .ecg-player .player-timeline{flex:1;width:auto}
.measurement-bar{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 16px;padding:4px 0}.measurement-result{justify-content:center}
.measurement-save{border:1px solid var(--line);border-radius:8px;padding:8px 12px;font-size:13px;min-height:40px}
.measurement-save:hover{background:#ffffff08}.measurement-save-status{font-size:12px;color:var(--muted)}
@media(max-width:760px){
 .ecg-viewer{grid-template-rows:auto minmax(0,1fr) auto auto;row-gap:8px}
 .ecg-viewer>.viewer-heading{grid-row:1;position:relative;padding-right:100px}
 .ecg-viewer>.plot-region{grid-row:2}
 .ecg-viewer>.measurement-bar{grid-row:3}
 .ecg-viewer>.ecg-player{grid-row:4}
 .viewer-heading .viewer-title{padding-right:0;margin-bottom:2px}
 .viewer-heading .screen-toggle{display:flex;position:absolute;top:0;right:44px;width:44px;padding:10px;border-radius:8px}
 .ecg-player{gap:8px;padding:0}
 .ecg-player .player-timeline{gap:6px}
 .player-timeline .play-time,.player-timeline .play-total{font-size:11px;min-width:35px}
 .player-actions{gap:8px}
 .ecg-player .ruler{min-width:124px;padding:10px 12px}
 .ecg-player .play{min-width:105px;padding:10px 12px}
 .ecg-player .ruler>span,.ecg-player .play>span{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}
 .ecg-player .player-settings{position:absolute;top:auto;bottom:calc(100% + 8px);left:0;right:0;width:100%;max-height:65dvh;overflow:auto;padding:12px;gap:12px;border:1px solid #566168}
 .ecg-player .playback-speed .select-options{top:calc(100% + 6px);bottom:auto}
 .player-settings-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .player-settings-actions .repeat-toggle{grid-column:1/-1}
 .ecg-player .mobile-view-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border-top:1px solid #465553;padding-top:12px;min-width:0}
 .mobile-view-controls .layout-select{font-size:13px;gap:8px}
 .mobile-view-controls .lead-picker{display:block;position:relative}
 .mobile-view-controls .lead-picker>summary{border-radius:8px;min-height:44px}
 .mobile-view-controls .lead-picker-panel{position:absolute;top:auto;bottom:calc(100% + 8px);left:auto;right:0;width:260px;max-width:calc(100vw - 48px);border-radius:8px;z-index:12}
 .mobile-view-controls .window-control,.mobile-view-controls .window-offset{flex-basis:100%;display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}
 .mobile-view-controls .window-control>span{position:static;width:auto;height:auto;clip:auto;overflow:visible}
 .mobile-view-controls .window-presets{flex:1}
 .ecg-player .window-presets button{border-radius:6px;min-height:40px}
 .ecg-viewer.expanded{grid-template-rows:minmax(0,1fr) auto auto;padding:8px;gap:8px}
 .ecg-viewer.expanded>.plot-region{grid-row:1}
 .ecg-viewer.expanded>.measurement-bar{grid-row:2}
 .ecg-viewer.expanded>.ecg-player{grid-row:3}
 .expanded .screen-toggle span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
}
@media(max-width:360px){.player-actions{gap:6px}.ecg-player .ruler{min-width:116px;padding:10px 8px}.ecg-player .play{min-width:96px;padding:10px 8px}.ecg-player .player-settings-toggle{width:40px;min-width:40px}}
@media(max-height:540px){.ecg-player{gap:5px}.ecg-player .button,.ecg-player .player-options>summary,.ecg-player .select-trigger{min-height:38px;padding-top:7px;padding-bottom:7px}.ecg-player .player-settings{padding:10px;gap:8px}.ecg-player .player-settings-actions .button{min-height:38px}}
@media(forced-colors:active){.ecg-player .ruler,.ecg-player .play,.ecg-player .repeat-toggle[aria-pressed=true],.ecg-player .playback-speed .select-trigger{background:ButtonFace;color:ButtonText;border-color:ButtonText}}
