.ecu-timing{--ecu-ink:#16313d;--ecu-blue:#245ab4;--ecu-soft:#edf3ff;box-sizing:border-box;margin:1.5rem 0;padding:clamp(16px,3vw,30px);border:1px solid #c9d5e0;border-radius:18px;background:#fff;color:var(--ecu-ink);font-family:inherit;line-height:1.6;overflow-wrap:anywhere;color-scheme:light}
.ecu-timing *{box-sizing:border-box;min-width:0}
.ecu-timing [hidden]{display:none!important}
.ecu-timing h3,.ecu-timing h4,.ecu-timing p,.ecu-timing legend,.ecu-timing label,.ecu-timing figcaption,.ecu-timing summary{color:var(--ecu-ink)}
.ecu-timing h3{font-size:clamp(24px,3vw,34px);line-height:1.2;margin:.4rem 0 1rem}
.ecu-timing p{margin:.65rem 0}
.ecu-timing .ecu-timing__eyebrow{font-weight:700;color:var(--ecu-blue);letter-spacing:.06em;text-transform:uppercase;font-size:14px}
.ecu-timing__presets{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 10px}
.ecu-timing button{font:inherit;font-weight:650;line-height:1.35;min-height:46px;padding:12px 16px;border:2px solid var(--ecu-blue);border-radius:9px;background:#fff;color:var(--ecu-blue);cursor:pointer;white-space:normal;text-align:left}
.ecu-timing button:hover{background:var(--ecu-soft)}
.ecu-timing button[aria-pressed="true"]{background:var(--ecu-blue);color:#fff}
.ecu-timing button:focus-visible,.ecu-timing :is(select,input):focus-visible,.ecu-timing summary:focus-visible{outline:3px solid #956310;outline-offset:3px}
.ecu-timing .ecu-timing__hint{font-size:14px;line-height:1.5;color:#465b66}
.ecu-timing__mode{font-weight:650}
.ecu-timing__controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}
.ecu-timing__car{margin:0;padding:14px;border:1px solid #b8c9d9;border-radius:12px;background:#f6f8fb}
.ecu-timing__car legend{font-size:18px;font-weight:750;padding:0 5px}
.ecu-timing label{display:block;font-size:14px;font-weight:650;margin:5px 0}
.ecu-timing :is(select,input[type="time"]){display:block;width:100%;min-height:46px;padding:9px 28px 9px 10px;margin:0 0 12px;border:1px solid #6d8190;border-radius:6px;background-color:#fff;color:#16313d!important;-webkit-text-fill-color:#16313d;font-family:inherit;font-size:16px;line-height:1.3;appearance:auto;opacity:1}
.ecu-timing select option{background:#fff;color:#16313d}
.ecu-timing__car-result{font-size:14px;border-top:1px solid #cbd7e1;padding-top:10px}
.ecu-timing__car-result[data-complete="false"]{color:#91360a;font-weight:650}
.ecu-timing__metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}
.ecu-timing__metrics>div{background:var(--ecu-soft);border-radius:12px;padding:16px}
.ecu-timing__metrics span,.ecu-timing__metrics small{display:block;font-size:14px}
.ecu-timing__metrics strong{display:block;font-size:clamp(24px,3vw,34px);line-height:1.35;margin:8px 0}
.ecu-timing .ecu-timing__feedback{padding:16px;border-left:4px solid #3c7464;background:#eff7f3;border-radius:0 8px 8px 0;margin:16px 0 24px}
.ecu-timing .ecu-timing__feedback[data-complete="false"],.ecu-timing__error{background:#fff3e8;border-left:4px solid #a4420b;color:#703009;padding:16px}
.ecu-timing__figure{margin:24px 0;max-width:100%}
.ecu-timing figcaption{font-size:16px;font-weight:700;margin-bottom:8px}
.ecu-timing__chart{width:100%;max-width:100%}
.ecu-timing svg{display:block;width:100%;height:auto;overflow:hidden;font-family:inherit}
.ecu-timing details{border-top:1px solid #d3dce3;padding:14px 0;margin-top:8px}
.ecu-timing summary{font-weight:650;cursor:pointer;min-height:38px;line-height:1.5}
.ecu-timing table{width:100%;border-collapse:collapse;margin-top:12px;font-size:14px;table-layout:fixed}
.ecu-timing th,.ecu-timing td{border-bottom:1px solid #cbd7e1;text-align:left;vertical-align:top;padding:10px 5px;color:var(--ecu-ink)}
.ecu-timing caption{font-size:14px;text-align:left;margin-bottom:8px}
@media(max-width:900px){.ecu-timing__controls{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.ecu-timing__controls,.ecu-timing__metrics{grid-template-columns:1fr}.ecu-timing__presets{display:grid;grid-template-columns:1fr}.ecu-timing__metrics>div{padding:12px 16px}.ecu-timing__metrics strong{margin:3px 0}.ecu-timing th:first-child{width:38%}}
@media print{.ecu-timing{border:1px solid #888}.ecu-timing__presets{display:none}.ecu-timing__car{break-inside:avoid}.ecu-timing__figure{break-inside:avoid}}

.ecu-timing input[type="time"]{padding:10px;font-variant-numeric:tabular-nums;min-width:0;max-width:100%}.ecu-timing input[aria-invalid="true"]{border-color:#a4420b}
