:root{--orange:#f26132;--ink:#111719;--muted:#69706e;--line:#d3d0c7;--paper:#f1efe9}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.6 Arial,sans-serif}.dev{text-align:center;background:#b12720;color:#fff;font-size:13px;font-weight:bold;padding:6px}header,main,footer{max-width:1100px;margin:auto;padding:25px}header{display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line)}header a{color:var(--ink);font-size:23px;font-weight:900;text-decoration:none}header>span{margin-left:auto;font-size:13px}header strong{font-size:13px;letter-spacing:2px}h1{font-size:clamp(36px,6vw,64px);line-height:1.04;letter-spacing:-2px;margin:16px 0}h1 span,header a span{color:var(--orange)}h2{font-size:22px}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--orange);font-weight:bold}.intro{font-size:18px}.notice{padding:15px 20px;border-left:3px solid var(--orange);background:#e8e5dc}.button,button{display:inline-block;background:var(--orange);color:#fff;font:700 14px Arial,sans-serif;border:0;padding:14px 20px;cursor:pointer}button:disabled{background:#aba9a2;cursor:not-allowed}#dropzone,.summary,#result{border:1px solid var(--line);padding:22px;margin:30px 0}#dropzone.drag{border:2px dashed var(--orange)}#file-status{font-size:13px;color:var(--muted);overflow-wrap:anywhere}.option{padding:20px 0;border-top:1px solid var(--line)}.option>label{font-size:17px;font-weight:bold;display:flex;gap:12px;align-items:center}.option p{font-size:13px;color:var(--muted);margin:6px 0 10px 30px}.option.unavailable>label{color:#707471}.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px;padding:10px 0 0 30px}.fields label{font-size:12px}.fields input,.fields select{display:block;width:100%;padding:10px;border:1px solid var(--line);background:#fff;font:16px Arial,sans-serif}.fields[hidden],[hidden]{display:none!important}input[type=checkbox]{width:18px;height:18px;accent-color:var(--orange)}#error{background:#ffe3dc;color:#952716;padding:15px}.summary strong{font-size:24px}footer{border-top:1px solid var(--line);font-size:12px}a{color:var(--orange)}@media(max-width:600px){header,main,footer{padding:18px}header{gap:12px}header strong{font-size:11px;letter-spacing:1px}header>span{font-size:11px}.fields{grid-template-columns:repeat(2,minmax(0,1fr));padding-left:0}.option p{margin-left:0}}

.consent{margin:24px 0;padding:18px;border:1px solid var(--line)}.consent label{display:block}.consent input{vertical-align:middle;margin-right:8px}.consent p{font-size:12px;color:var(--muted);margin-bottom:0}

.warmup-guide{grid-column:1/-1;margin:16px 0 0}.warmup-guide img{display:block;width:100%;height:auto;max-width:900px}.warmup-guide figcaption{font-size:13px;color:var(--muted);margin-top:8px}

.warmup-stage{position:relative;max-width:900px}.warmup-stage svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.warmup-mask{opacity:0;transition:opacity .3s}.warmup-mask.off{opacity:1}.warmup-controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:12px}.warmup-controls span{font-size:13px}@media(prefers-reduced-motion:reduce){.warmup-mask{transition:none}}

.warmup-preset,.idle-preset{grid-column:1/-1;justify-self:start;font-size:13px}

.warmup-recommendation{grid-column:1/-1;font-size:13px;color:var(--muted);line-height:1.6}

/* Crop both layers using the same original 1536 × 1024 coordinates. */
.warmup-stage{width:100%;max-width:520px;aspect-ratio:770/760;overflow:hidden}
.warmup-stage img,.warmup-stage svg{position:absolute;inset:auto;left:-7.79220779%;top:-24.73684211%;width:199.48051948%;max-width:none;height:134.73684211%}

/* Compact controls, keeping warnings and labels readable on mobile. */
header,main,footer{max-width:1050px;padding:18px 24px}h1{font-size:42px;margin:12px 0}.intro{font-size:16px;margin:10px 0}.notice,.consent{padding:12px 16px;margin:16px 0;font-size:13px}#dropzone,.summary,#result{padding:16px;margin:18px 0}h2{font-size:20px;margin:8px 0}#options{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.option{padding:12px 0;min-width:0}.option:has(.fields){grid-column:1/-1}.option>label{font-size:15px;gap:9px}.option input[type=checkbox]{flex-shrink:0}.fields{gap:8px;padding-top:8px}.fields input,.fields select{padding:8px}.option p{margin:5px 0 0 28px;font-size:12px}.option .option-warning{color:#9a4b00}.option-state{color:#557254}.warmup-guide{margin-top:4px}.warmup-stage{max-width:310px}.warmup-controls{margin-top:8px}.warmup-play{padding:8px 12px;font-size:12px}.warmup-guide figcaption{font-size:12px}.warmup-recommendation{font-size:12px}.summary{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.summary strong{font-size:20px}.summary p{flex:1}@media(max-width:600px){#options{grid-template-columns:1fr}header,main,footer{padding:14px}h1{font-size:34px}.fields{grid-template-columns:repeat(2,minmax(0,1fr))}.warmup-stage{max-width:280px}.summary{gap:8px}}
@media(min-width:850px){.fields:has(.warmup-guide){grid-template-columns:repeat(4,minmax(0,1fr)) 310px;align-items:start;column-gap:10px}.fields:has(.warmup-guide)>label{grid-row:1}.fields:has(.warmup-guide)>.warmup-preset{grid-column:1/5;grid-row:2}.fields:has(.warmup-guide)>.warmup-recommendation{grid-column:1/5;grid-row:3}.fields:has(.warmup-guide)>.warmup-guide{grid-column:5;grid-row:1/5;margin:0 0 0 10px}.warmup-guide figcaption{line-height:1.4}}

.checksum-warning{margin:20px 0;padding:20px;border:2px solid var(--orange);background:#fff0e7}.checksum-warning strong{display:block;font-size:clamp(21px,3vw,28px);line-height:1.25}.checksum-warning p{font-size:16px;font-weight:700;margin:12px 0 0;line-height:1.5}

/* Keep the existing dial and SVG animation precisely aligned; clip only the
   image background around the circular bezel, leaving A–D overlays intact. */
.warmup-stage img{clip-path:ellipse(22.4% 33.5% at 27.2% 56.8%)}
.warmup-stage{max-width:240px}
h1{font-size:34px;letter-spacing:-1px}.intro{font-size:14px}.setup{display:grid;grid-template-columns:1.2fr 1fr;gap:18px;align-items:stretch;margin:20px 0}.setup .consent,.setup #dropzone{margin:0;padding:16px}.setup p{font-size:12px}.setup label{font-size:13px}
#options{display:block}.option-group{margin:16px 0 22px}.option-group h3{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin:0;padding:10px 0;border-bottom:2px solid var(--line)}.option-list.toggles{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.option-list.values{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.values .option:has([data-value="rev_limit"]),.values .option:has(.warmup-guide){grid-column:1/-1}.values .option:has([data-value="idle_curve"]),.values .option:has([data-choice="sport"]){grid-column:auto}.values .fields{padding-left:0;grid-template-columns:repeat(4,minmax(0,1fr))}.values .fields:has(select){grid-template-columns:1fr}.values .option:has([data-value="rev_limit"]){grid-row:2}.values .option:has(.warmup-guide){grid-row:3}.values .fields:has([data-value="rev_limit"]){grid-template-columns:repeat(8,minmax(0,1fr))}
@media(min-width:850px){.values .fields:has(.warmup-guide){grid-template-columns:repeat(4,minmax(0,1fr)) 250px}.warmup-guide{justify-self:end}}
@media(max-width:849px){.values .fields:has(.warmup-guide){grid-template-columns:repeat(4,minmax(0,1fr))}.warmup-guide{justify-self:center}.values .fields:has([data-value="rev_limit"]){grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){.setup,.option-list.toggles,.option-list.values{grid-template-columns:1fr}.values .option{grid-column:1!important;grid-row:auto!important}.values .fields,.values .fields:has(.warmup-guide){grid-template-columns:repeat(2,minmax(0,1fr))}.values .fields:has([data-value="rev_limit"]){grid-template-columns:repeat(2,minmax(0,1fr))}h1{font-size:30px}.warmup-stage{max-width:220px}.setup{gap:12px}}
.warmup-guide{width:100%;max-width:240px}.fields>label{display:flex;flex-direction:column;justify-content:flex-end}.fields>label input,.fields>label select{margin-top:4px}

#configuration.locked #options{opacity:.55}#configuration input:disabled,#configuration select:disabled{background:#e6e3dc;color:#777c78;cursor:not-allowed}.settings-hint{font-size:13px;padding:10px 14px;border-left:3px solid var(--orange);background:#e8e5dc}
.section-nav{justify-content:space-between;gap:20px;min-height:88px}.section-nav .section-brand{display:flex;align-items:center;gap:10px;font-family:'Arial Narrow',Arial,sans-serif;font-size:18px;font-weight:900;letter-spacing:2px;white-space:nowrap}.section-brand img{width:60px;height:60px;flex-shrink:0}.nav-right{display:flex;align-items:center;gap:26px}.section-nav .home-link{font-size:11px;letter-spacing:1px;color:var(--orange)}.language-switch{display:flex;padding:3px;border:1px solid var(--line);background:#e8e6df}.section-nav .language-switch a{font-size:10px;padding:7px 8px;color:var(--muted);letter-spacing:.06em}.section-nav .language-switch a.active{background:#fff;color:var(--ink);box-shadow:0 1px 4px #0001}.section-nav .nav-cta{font-size:12px;letter-spacing:1px}.nav-cta b{color:var(--orange);margin-left:12px}.coming-soon{margin:18px 0}.coming-soon h3{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.coming-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.coming-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px dashed var(--line);color:var(--muted);font-size:13px}.coming-badge{font-size:9px;text-transform:uppercase;color:#a24b2c;background:#f0e2d8;padding:3px 5px;white-space:nowrap}@media(max-width:700px){.section-nav{flex-wrap:wrap;gap:14px}.nav-right{gap:14px;flex-wrap:wrap}.coming-list{grid-template-columns:1fr 1fr}.section-nav .nav-cta{font-size:10px}}@media(max-width:420px){.coming-list{grid-template-columns:1fr}.section-nav .section-brand{font-size:16px}.section-nav .nav-cta{display:none}}

.custom-section{border-top:2px solid var(--line);margin-top:32px;padding-top:20px}.custom-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.custom-section label{display:block;font-size:13px;margin:12px 0}.custom-section input:not([type=checkbox]),.custom-section textarea{display:block;width:100%;padding:10px;margin-top:6px;border:1px solid var(--line);background:#fff;font:15px Arial,sans-serif}.custom-section textarea{resize:vertical}.custom-section .custom-consent{line-height:1.6}.custom-consent input{vertical-align:middle}.custom-privacy{font-size:12px;color:var(--muted)}#custom-status{padding:12px;border-left:3px solid var(--orange);background:#e8e5dc}@media(max-width:600px){.custom-fields{grid-template-columns:1fr;gap:0}}

.custom-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.custom-heading h2{margin:0}.custom-heading button{padding:8px 12px;font-size:12px;white-space:nowrap}.custom-heading button:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
