
.esw-rtc{
    --esw-bg:#f5f7fb;
    --esw-card:#ffffff;
    --esw-text:#101828;
    --esw-muted:#667085;
    --esw-border:#e4e7ec;
    --esw-accent:#2563eb;
    --esw-accent-dark:#1d4ed8;
    --esw-danger:#b42318;
    --esw-success:#067647;
    --esw-warning:#b54708;
    --esw-radius:20px;
    box-sizing:border-box;
    max-width:820px;
    margin:24px auto;
    padding:18px;
    background:linear-gradient(180deg,#f8faff 0%,#f4f6fa 100%);
    border:1px solid var(--esw-border);
    border-radius:28px;
    color:var(--esw-text);
    font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    box-shadow:0 20px 55px rgba(16,24,40,.08)
}
.esw-rtc *{box-sizing:border-box}
.esw-rtc__header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px}
.esw-rtc__header h2{font-size:clamp(26px,4vw,38px);line-height:1.05;margin:5px 0 8px;font-weight:800;letter-spacing:-.03em}
.esw-rtc__header p{margin:0;color:var(--esw-muted);font-size:15px;line-height:1.5;max-width:590px}
.esw-rtc__eyebrow{font-size:11px;letter-spacing:.14em;font-weight:800;color:var(--esw-accent)}
.esw-rtc__status{font-size:12px;font-weight:800;padding:8px 10px;background:#eef4ff;color:#3538cd;border-radius:999px;white-space:nowrap}
.esw-rtc__card,.esw-rtc__results{background:var(--esw-card);border:1px solid var(--esw-border);border-radius:var(--esw-radius);padding:18px;margin-top:14px}
.esw-rtc__offer{margin-bottom:18px}
.esw-rtc__field{display:flex;flex-direction:column;gap:7px}
.esw-rtc__field>span{font-size:13px;font-weight:750;color:#344054}
.esw-rtc input{
    width:100%;
    min-width:0;
    border:1px solid #d0d5dd;
    border-radius:13px;
    background:#fff;
    color:#101828;
    min-height:52px;
    font-size:18px;
    font-weight:700;
    outline:none;
    padding:12px 14px;
    transition:border-color .15s,box-shadow .15s
}
.esw-rtc input:focus{border-color:#84adff;box-shadow:0 0 0 4px rgba(37,99,235,.10)}
.esw-rtc__money-wrap{position:relative}
.esw-rtc__money-wrap input{font-size:30px;padding-left:38px;min-height:64px}
.esw-rtc__currency{position:absolute;left:15px;top:50%;transform:translateY(-50%);font-weight:850;font-size:24px;color:#475467;z-index:1}
.esw-rtc__unit-input{position:relative}
.esw-rtc__unit-input input{padding-right:46px}
.esw-rtc__unit-input small{position:absolute;right:13px;top:50%;transform:translateY(-50%);color:#98a2b3;font-weight:800;font-size:12px;pointer-events:none}
.esw-rtc__section-title{font-size:12px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#475467;margin:18px 0 10px}
.esw-rtc__grid{display:grid;gap:10px}
.esw-rtc__grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.esw-rtc__grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.esw-rtc__calc-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.esw-rtc__calc-btn,.esw-rtc__button{
    appearance:none;border:1px solid #d0d5dd;background:#fff;color:#344054;border-radius:13px;min-height:52px;
    padding:10px 12px;cursor:pointer;font:inherit;font-weight:750;transition:transform .1s,box-shadow .15s,border-color .15s,background .15s
}
.esw-rtc__calc-btn:hover,.esw-rtc__button:hover{border-color:#98a2b3;box-shadow:0 3px 10px rgba(16,24,40,.06)}
.esw-rtc__calc-btn:active,.esw-rtc__button:active{transform:translateY(1px)}
.esw-rtc__calc-btn strong,.esw-rtc__calc-btn span{display:block}
.esw-rtc__calc-btn strong{font-size:14px}
.esw-rtc__calc-btn span{font-size:11px;color:#667085;margin-top:2px}
.esw-rtc__calc-btn--primary,.esw-rtc__button--primary{background:var(--esw-accent);border-color:var(--esw-accent);color:#fff}
.esw-rtc__calc-btn--primary span{color:#dbeafe}
.esw-rtc__button--primary:hover,.esw-rtc__calc-btn--primary:hover{background:var(--esw-accent-dark);border-color:var(--esw-accent-dark)}
.esw-rtc__button--danger{color:var(--esw-danger)}
.esw-rtc__result-main{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;padding-bottom:15px;border-bottom:1px solid var(--esw-border)}
.esw-rtc__result-label{width:100%;font-size:12px;color:var(--esw-muted);font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.esw-rtc__result-offer{font-size:40px;font-weight:900;letter-spacing:-.04em;line-height:1}
.esw-rtc__verdict{margin-left:auto;padding:7px 10px;border-radius:999px;background:#f2f4f7;font-size:12px;font-weight:850;color:#475467}
.esw-rtc__verdict.is-good{background:#ecfdf3;color:var(--esw-success)}
.esw-rtc__verdict.is-watch{background:#fffaeb;color:var(--esw-warning)}
.esw-rtc__metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
.esw-rtc__metric{border:1px solid var(--esw-border);background:#fcfcfd;border-radius:14px;padding:12px}
.esw-rtc__metric span,.esw-rtc__metric small{display:block}
.esw-rtc__metric span{font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:800;color:#667085}
.esw-rtc__metric strong{display:block;font-size:20px;margin:4px 0 2px}
.esw-rtc__metric small{font-size:10px;line-height:1.3;color:#98a2b3}
.esw-rtc__insight{margin-top:14px;background:#f8fafc;border-left:4px solid var(--esw-accent);padding:12px 14px;border-radius:10px;font-size:13px;line-height:1.5;color:#344054}
.esw-rtc__actions{display:grid;grid-template-columns:1.2fr 1fr;gap:9px;margin-top:14px}
.esw-rtc__history-head{display:flex;justify-content:space-between;gap:15px;align-items:center}
.esw-rtc__history-head .esw-rtc__section-title{margin:0 0 5px}
.esw-rtc__history-head p{margin:0;color:var(--esw-muted);font-size:12px}
.esw-rtc__history-list{margin-top:14px;display:grid;gap:8px}
.esw-rtc__history-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:11px 12px;border-radius:12px;background:#f9fafb;border:1px solid var(--esw-border)}
.esw-rtc__history-row strong{font-size:13px}
.esw-rtc__history-row small{display:block;color:#667085;margin-top:2px}
.esw-rtc__history-row button{border:0;background:transparent;cursor:pointer;color:#b42318;font-weight:800;padding:6px}
.esw-rtc__empty{padding:18px;text-align:center;color:#98a2b3;font-size:13px;border:1px dashed #d0d5dd;border-radius:12px}
.esw-rtc__text-button{border:0;background:transparent;color:#667085;font:inherit;font-size:12px;padding:10px 0 0;cursor:pointer;text-decoration:underline}
.esw-rtc__profit-note{margin-top:14px;padding:15px 16px;border-radius:16px;background:#101828;color:#fff;display:flex;flex-direction:column;gap:6px}
.esw-rtc__profit-note strong{font-size:15px}
.esw-rtc__profit-note span{font-size:12px;line-height:1.45;color:#d0d5dd}
.esw-rtc__profit-note a{color:#fff;font-weight:800;font-size:12px;text-decoration:none}
.esw-rtc__privacy{font-size:10px;line-height:1.4;text-align:center;color:#98a2b3;margin:12px 8px 2px}
.esw-rtc [hidden]{display:none!important}
.esw-rtc button:disabled{opacity:.45;cursor:not-allowed}

@media(max-width:640px){
    .esw-rtc{margin:12px auto;padding:11px;border-radius:20px}
    .esw-rtc__header{display:block}
    .esw-rtc__status{display:inline-block;margin-top:10px}
    .esw-rtc__card,.esw-rtc__results{padding:13px;border-radius:16px}
    .esw-rtc__grid{gap:7px}
    .esw-rtc__field>span{font-size:11px}
    .esw-rtc input{font-size:16px;min-height:48px;padding:10px}
    .esw-rtc__money-wrap input{font-size:27px;min-height:58px;padding-left:35px}
    .esw-rtc__currency{font-size:21px;left:13px}
    .esw-rtc__unit-input input{padding-right:34px}
    .esw-rtc__unit-input small{right:9px;font-size:10px}
    .esw-rtc__calc-btn{padding:8px 5px}
    .esw-rtc__metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
    .esw-rtc__metric{padding:10px}
    .esw-rtc__metric strong{font-size:18px}
    .esw-rtc__actions{grid-template-columns:1fr 1fr}
    .esw-rtc__history-head{align-items:flex-start;flex-direction:column}
    .esw-rtc__history-head .esw-rtc__button{width:100%}
}


/* v1.1 earnings preferences */
.esw-rtc__preferences{margin-top:14px}
.esw-rtc__preferences-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.esw-rtc__preferences-head .esw-rtc__section-title{margin:0 0 5px}
.esw-rtc__preferences-head p{margin:0;color:var(--esw-muted);font-size:12px;line-height:1.45}
.esw-rtc__saved-pill{font-size:10px;font-weight:800;white-space:nowrap;padding:7px 9px;border-radius:999px;background:#f2f4f7;color:#475467}
.esw-rtc__pref-table{margin-top:14px;border:1px solid var(--esw-border);border-radius:14px;overflow:hidden}
.esw-rtc__pref-row{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:9px;align-items:center;padding:9px 10px;border-top:1px solid var(--esw-border)}
.esw-rtc__pref-row:first-child{border-top:0}
.esw-rtc__pref-row--head{background:#f9fafb;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:850;color:#667085}
.esw-rtc__pref-row strong{font-size:12px}
.esw-rtc__pref-input{position:relative}
.esw-rtc__pref-input>span{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:12px;font-weight:800;color:#667085;z-index:1}
.esw-rtc__pref-input input{min-height:43px;font-size:14px;padding:8px 34px 8px 23px}
.esw-rtc__pref-input small{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:9px;font-weight:800;color:#98a2b3}
.esw-rtc__pref-note{margin:10px 2px 0!important;font-size:10px!important;color:#98a2b3!important;line-height:1.4!important}

.esw-rtc__verdict{
    width:100%;
    margin:10px 0 0;
    padding:12px 14px;
    border-radius:12px;
    text-align:center;
    font-size:13px;
    font-weight:900;
    letter-spacing:.02em;
    background:#f2f4f7;
    color:#475467
}
.esw-rtc__verdict.is-good{background:#dcfae6;color:#05603a;border:1px solid #75e0a7}
.esw-rtc__verdict.is-okay{background:#fef0c7;color:#93370d;border:1px solid #fec84b}
.esw-rtc__verdict.is-low{background:#fee4e2;color:#b42318;border:1px solid #fda29b}
.esw-rtc__verdict.is-bad{background:#d92d20;color:#fff;border:1px solid #b42318}

@media(max-width:640px){
  .esw-rtc__preferences-head{display:block}
  .esw-rtc__saved-pill{display:inline-block;margin-top:8px}
  .esw-rtc__pref-row{grid-template-columns:.9fr 1fr 1fr;gap:5px;padding:8px 6px}
  .esw-rtc__pref-row strong{font-size:10px}
  .esw-rtc__pref-input input{min-height:42px;font-size:13px;padding-left:21px;padding-right:29px}
  .esw-rtc__pref-input>span{left:8px}
  .esw-rtc__pref-input small{right:6px}
}


/* v1.2 quick clear button */
.esw-rtc__clear-data{
    width:100%;
    margin-top:14px;
    min-height:46px;
    appearance:none;
    border:1px solid #d0d5dd;
    border-radius:12px;
    background:#f9fafb;
    color:#475467;
    font:inherit;
    font-size:12px;
    font-weight:900;
    letter-spacing:.08em;
    cursor:pointer;
    transition:background .15s,border-color .15s,transform .1s
}
.esw-rtc__clear-data:hover{background:#f2f4f7;border-color:#98a2b3}
.esw-rtc__clear-data:active{transform:translateY(1px)}


/* v1.3 light / dark theme */
.esw-rtc__header-tools{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    flex-wrap:wrap
}
.esw-rtc__theme-toggle{
    appearance:none;
    display:inline-flex;
    align-items:center;
    gap:6px;
    min-height:34px;
    padding:7px 10px;
    border:1px solid var(--esw-border);
    border-radius:999px;
    background:var(--esw-card);
    color:var(--esw-text);
    font:inherit;
    font-size:11px;
    font-weight:850;
    cursor:pointer
}
.esw-rtc__theme-toggle:hover{border-color:#98a2b3}
.esw-rtc__theme-toggle [data-theme-icon]{font-size:14px;line-height:1}

/* Dark palette */
.esw-rtc.esw-rtc--dark{
    --esw-bg:#0b0f14;
    --esw-card:#121820;
    --esw-text:#f2f4f7;
    --esw-muted:#98a2b3;
    --esw-border:#2b3440;
    background:linear-gradient(180deg,#0b1016 0%,#10161d 100%);
    color:var(--esw-text);
    box-shadow:0 20px 55px rgba(0,0,0,.30)
}
.esw-rtc--dark .esw-rtc__header p,
.esw-rtc--dark .esw-rtc__history-head p{color:#98a2b3}
.esw-rtc--dark .esw-rtc__field>span,
.esw-rtc--dark .esw-rtc__section-title{color:#d0d5dd}
.esw-rtc--dark input{
    background:#0d131a;
    color:#f9fafb;
    border-color:#344054
}
.esw-rtc--dark input::placeholder{color:#667085}
.esw-rtc--dark .esw-rtc__currency{color:#d0d5dd}
.esw-rtc--dark .esw-rtc__unit-input small,
.esw-rtc--dark .esw-rtc__pref-input small{color:#98a2b3}
.esw-rtc--dark .esw-rtc__pref-row--head,
.esw-rtc--dark .esw-rtc__history-row,
.esw-rtc--dark .esw-rtc__metric,
.esw-rtc--dark .esw-rtc__clear-data{background:#171e27}
.esw-rtc--dark .esw-rtc__pref-input>span{color:#98a2b3}
.esw-rtc--dark .esw-rtc__calc-btn,
.esw-rtc--dark .esw-rtc__button{
    background:#171e27;
    border-color:#344054;
    color:#f2f4f7
}
.esw-rtc--dark .esw-rtc__calc-btn span{color:#98a2b3}
.esw-rtc--dark .esw-rtc__calc-btn--primary,
.esw-rtc--dark .esw-rtc__button--primary{
    background:var(--esw-accent);
    border-color:var(--esw-accent);
    color:#fff
}
.esw-rtc--dark .esw-rtc__insight{
    background:#171e27;
    color:#d0d5dd
}
.esw-rtc--dark .esw-rtc__history-row small,
.esw-rtc--dark .esw-rtc__text-button{color:#98a2b3}
.esw-rtc--dark .esw-rtc__empty{color:#98a2b3;border-color:#344054}
.esw-rtc--dark .esw-rtc__saved-pill{
    background:#1d2939;
    color:#d0d5dd
}
.esw-rtc--dark .esw-rtc__theme-toggle{
    background:#171e27;
    border-color:#344054;
    color:#f2f4f7
}
.esw-rtc--dark .esw-rtc__clear-data{color:#d0d5dd;border-color:#344054}
.esw-rtc--dark .esw-rtc__clear-data:hover{background:#1d2939}
.esw-rtc--dark .esw-rtc__privacy{color:#667085}

@media(max-width:640px){
    .esw-rtc__header-tools{justify-content:flex-start;margin-top:10px}
    .esw-rtc__header .esw-rtc__status{margin-top:0}
}


/* v1.4 */
.esw-rtc__calc-btn--time{background:#2563eb !important;border-color:#2563eb !important;color:#fff !important}
.esw-rtc__calc-btn--time span{color:#dbeafe !important}
.esw-rtc__calc-btn--time:hover{background:#1d4ed8 !important;border-color:#1d4ed8 !important}
.esw-rtc__calc-btn--miles{background:#0f766e !important;border-color:#0f766e !important;color:#fff !important}
.esw-rtc__calc-btn--miles span{color:#ccfbf1 !important}
.esw-rtc__calc-btn--miles:hover{background:#115e59 !important;border-color:#115e59 !important}
.esw-rtc__calc-btn--both{background:#4f46e5 !important;border-color:#4f46e5 !important;color:#fff !important}
.esw-rtc__calc-btn--both span{color:#e0e7ff !important}
.esw-rtc__calc-btn--both:hover{background:#4338ca !important;border-color:#4338ca !important}
.esw-rtc__clear-data{background:#344054 !important;border-color:#344054 !important;color:#fff !important}
.esw-rtc__clear-data:hover{background:#1d2939 !important;border-color:#1d2939 !important}
.esw-rtc__apps-link{margin-top:4px;color:#fff !important;font-size:12px;font-weight:850;text-decoration:none}
.esw-rtc__apps-link:hover{text-decoration:underline}
.esw-rtc--dark .esw-rtc__calc-btn--time{background:#2563eb !important;border-color:#2563eb !important}
.esw-rtc--dark .esw-rtc__calc-btn--miles{background:#0f766e !important;border-color:#0f766e !important}
.esw-rtc--dark .esw-rtc__calc-btn--both{background:#4f46e5 !important;border-color:#4f46e5 !important}
.esw-rtc--dark .esw-rtc__clear-data{background:#344054 !important;border-color:#475467 !important;color:#fff !important}


/* v1.5 preference persistence, cleaner header, and action colors */
.esw-rtc__status--hidden{display:none !important}

.esw-rtc__save-preferences{
    width:100%;
    margin-top:12px;
    min-height:44px;
    appearance:none;
    border:0;
    border-radius:12px;
    background:#344054;
    color:#fff;
    font:inherit;
    font-size:11px;
    font-weight:900;
    letter-spacing:.06em;
    cursor:pointer
}
.esw-rtc__save-preferences:hover{background:#1d2939}

.esw-rtc__calc-btn--miles{
    background:#f97316 !important;
    border-color:#f97316 !important;
    color:#fff !important
}
.esw-rtc__calc-btn--miles span{color:#fff7ed !important}
.esw-rtc__calc-btn--miles:hover{
    background:#ea580c !important;
    border-color:#ea580c !important
}

.esw-rtc__calc-btn--both{
    background:#71ac3d !important;
    border-color:#71ac3d !important;
    color:#fff !important
}
.esw-rtc__calc-btn--both span{color:#f0fdf4 !important}
.esw-rtc__calc-btn--both:hover{
    background:#5f9632 !important;
    border-color:#5f9632 !important
}

.esw-rtc--dark .esw-rtc__calc-btn--miles{
    background:#f97316 !important;
    border-color:#f97316 !important
}
.esw-rtc--dark .esw-rtc__calc-btn--both{
    background:#71ac3d !important;
    border-color:#71ac3d !important
}
.esw-rtc--dark .esw-rtc__save-preferences{
    background:#344054;
    color:#fff
}


/* v1.7 brighter profitability verdict banners */
.esw-rtc__verdict.is-good{
    background:#39e75f !important;
    color:#071a0c !important;
    border:2px solid #20b947 !important;
    font-weight:900 !important
}
.esw-rtc__verdict.is-okay{
    background:#ffd400 !important;
    color:#000 !important;
    border:2px solid #e6b800 !important;
    font-weight:900 !important
}
.esw-rtc__verdict.is-bad{
    background:#e52521 !important;
    color:#fff !important;
    border:2px solid #b91c1c !important;
    font-weight:900 !important
}

/* Keep the same strong contrast in dark mode. */
.esw-rtc--dark .esw-rtc__verdict.is-good{
    background:#39e75f !important;
    color:#071a0c !important
}
.esw-rtc--dark .esw-rtc__verdict.is-okay{
    background:#ffd400 !important;
    color:#000 !important
}
.esw-rtc--dark .esw-rtc__verdict.is-bad{
    background:#e52521 !important;
    color:#fff !important
}


/* v1.9 operating-cost and tax-reserve preferences */
.esw-rtc__business-prefs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:14px
}
.esw-rtc__business-pref{
  display:flex;
  flex-direction:column;
  gap:7px;
  padding:13px;
  border:1px solid var(--esw-border);
  border-radius:14px;
  background:var(--esw-card)
}
.esw-rtc__business-pref>span{
  font-weight:850;
  font-size:13px
}
.esw-rtc__business-pref>small{
  color:var(--esw-muted);
  font-size:11px;
  line-height:1.4
}
.esw-rtc__business-pref .esw-rtc__pref-input{
  width:100%
}
.esw-rtc__metric--profit{
  border-style:dashed
}
.esw-rtc__metric--net strong{
  font-size:24px
}
@media (max-width:620px){
  .esw-rtc__business-prefs{grid-template-columns:1fr}
}


/* v2.1.1 — remove browser number-input spinner arrows */
.esw-rtc input[type="number"]{
  -moz-appearance:textfield;
  appearance:textfield;
}
.esw-rtc input[type="number"]::-webkit-outer-spin-button,
.esw-rtc input[type="number"]::-webkit-inner-spin-button{
  -webkit-appearance:none;
  margin:0;
}


/* v2.2.1 — light blue Download Day button */
.esw-rtc [data-action="downloadDay"]{
  background:#60a5fa !important;
  border-color:#60a5fa !important;
  color:#0b1f33 !important;
}
.esw-rtc [data-action="downloadDay"]:hover{
  background:#93c5fd !important;
  border-color:#93c5fd !important;
  color:#0b1f33 !important;
}
.esw-rtc [data-action="downloadDay"]:disabled{
  background:#bfdbfe !important;
  border-color:#bfdbfe !important;
  color:#475569 !important;
}


/* v2.4.0 — optional tips and unpaid / empty driving */
.esw-rtc__earnings-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:12px;
  align-items:start;
  margin-bottom:18px
}
.esw-rtc__earnings-grid .esw-rtc__offer{margin-bottom:0}
.esw-rtc__tip-field>span small,
.esw-rtc__optional{
  font-size:.82em;
  font-weight:750;
  text-transform:none;
  letter-spacing:0;
  color:var(--esw-muted)
}
.esw-rtc__money-wrap--compact input{
  font-size:22px;
  min-height:64px
}
.esw-rtc__field-help{
  display:block;
  margin-top:1px;
  font-size:10px;
  line-height:1.35;
  color:var(--esw-muted)
}
.esw-rtc__tip-edit{
  margin-top:9px;
  padding-top:8px;
  border-top:1px dashed var(--esw-border)
}
.esw-rtc__tip-edit>span{
  display:block;
  margin-bottom:5px;
  font-size:10px;
  font-weight:800;
  color:var(--esw-muted);
  text-transform:uppercase;
  letter-spacing:.04em
}
.esw-rtc__tip-edit-controls{
  display:grid;
  grid-template-columns:auto minmax(70px,110px) auto;
  gap:6px;
  align-items:center
}
.esw-rtc__tip-edit-controls>span{
  font-weight:850;
  color:var(--esw-muted)
}
.esw-rtc__tip-edit-controls input{
  min-height:36px;
  padding:6px 8px;
  font-size:13px;
  border-radius:9px
}
.esw-rtc__history-row .esw-rtc__tip-update{
  min-height:36px;
  padding:6px 9px;
  border:1px solid #60a5fa;
  border-radius:9px;
  background:#dbeafe;
  color:#1e3a5f;
  font-size:10px;
  font-weight:900
}
.esw-rtc__history-row .esw-rtc__tip-update:hover{background:#bfdbfe}
.esw-rtc__history-row .esw-rtc__remove{
  color:#b42318;
  align-self:start
}
.esw-rtc__empty-driving .esw-rtc__history-head p{
  max-width:650px;
  line-height:1.45
}
.esw-rtc__empty-entry-fields{margin-top:14px}
.esw-rtc__button--empty{
  width:100%;
  margin-top:12px;
  background:#344054;
  border-color:#344054;
  color:#fff
}
.esw-rtc__button--empty:hover{
  background:#1d2939;
  border-color:#1d2939
}
.esw-rtc__empty-cost-preview{
  margin:8px 2px 0;
  font-size:11px;
  line-height:1.4;
  color:var(--esw-muted)
}
.esw-rtc__empty-summary{
  margin-top:10px;
  padding:10px 12px;
  border-radius:10px;
  background:#f8fafc;
  color:#475467;
  font-size:11px;
  font-weight:750
}
.esw-rtc--dark .esw-rtc__tip-edit-controls input{background:#0d131a;color:#f9fafb}
.esw-rtc--dark .esw-rtc__history-row .esw-rtc__tip-update{
  background:#1e3a5f;
  border-color:#60a5fa;
  color:#dbeafe
}
.esw-rtc--dark .esw-rtc__empty-summary{background:#171e27;color:#d0d5dd}
.esw-rtc--dark .esw-rtc__button--empty{background:#344054;border-color:#475467;color:#fff}

@media(max-width:640px){
  .esw-rtc__earnings-grid{grid-template-columns:1fr}
  .esw-rtc__tip-edit-controls{grid-template-columns:auto minmax(60px,1fr) auto}
  .esw-rtc__history-row--tip{grid-template-columns:minmax(0,1fr) auto}
}

/* v2.4.2 — optional tip moved below ride details and above calculation buttons */
.esw-rtc__tip-after-trip-fields{margin:4px 0 14px;max-width:360px}
.esw-rtc__tip-after-trip-fields .esw-rtc__tip-field{margin:0}
.esw-rtc__tip-after-trip-fields .esw-rtc__money-wrap{max-width:220px}
@media(max-width:640px){
 .esw-rtc__tip-after-trip-fields{max-width:none;width:100%}
 .esw-rtc__tip-after-trip-fields .esw-rtc__money-wrap{max-width:none;width:100%}
}


/* v2.4.3 — at-a-glance hourly profitability headline */
.esw-rtc__result-main{
  display:block
}
.esw-rtc__headline-rates{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  width:100%
}
.esw-rtc__headline-rate{
  min-width:0;
  text-align:center;
  padding:6px 4px 2px
}
.esw-rtc__headline-rate strong{
  display:block;
  font-size:clamp(28px,7vw,42px);
  line-height:1;
  font-weight:950;
  letter-spacing:-.045em;
  white-space:nowrap;
  color:var(--esw-text)
}
.esw-rtc__headline-rate span{
  display:block;
  margin-top:7px;
  font-size:11px;
  line-height:1.2;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--esw-muted)
}
.esw-rtc__result-main .esw-rtc__verdict{
  margin-top:14px
}
@media(max-width:420px){
  .esw-rtc__headline-rates{gap:6px}
  .esw-rtc__headline-rate strong{font-size:clamp(23px,7.2vw,32px)}
  .esw-rtc__headline-rate span{font-size:9px;letter-spacing:.04em}
}


/* v2.4.4 — separate large hourly amount from smaller /HR suffix */
.esw-rtc__headline-rates{
  column-gap:20px
}
.esw-rtc__headline-rate{
  overflow:hidden
}
.esw-rtc__headline-value{
  display:flex !important;
  align-items:baseline;
  justify-content:center;
  gap:4px;
  min-width:0;
  white-space:nowrap
}
.esw-rtc__headline-value > span{
  display:inline;
  font-size:clamp(28px,7vw,42px);
  line-height:1;
  font-weight:950;
  letter-spacing:-.045em;
  color:var(--esw-text)
}
.esw-rtc__headline-value > small{
  display:inline;
  flex:0 0 auto;
  font-size:clamp(12px,3vw,17px);
  line-height:1;
  font-weight:900;
  letter-spacing:-.01em;
  color:var(--esw-text)
}
@media(max-width:420px){
  .esw-rtc__headline-rates{column-gap:14px}
  .esw-rtc__headline-value{gap:3px}
  .esw-rtc__headline-value > span{font-size:clamp(25px,7.6vw,34px)}
  .esw-rtc__headline-value > small{font-size:clamp(10px,2.8vw,13px)}
}

/* v2.4.5 diagnostic marker */
.esw-rtc__version-marker{margin-top:10px;text-align:center;font-size:9px;line-height:1.2;font-weight:600;letter-spacing:.04em;color:var(--esw-muted);opacity:.58;user-select:text}


/* v2.6.0 — Workday Timer */
.esw-rtc__workday{overflow:hidden}
.esw-rtc__workday-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.esw-rtc__workday-head p{margin:5px 0 0;color:var(--esw-muted);font-size:12px;line-height:1.45}
.esw-rtc__workday-status{flex:0 0 auto;border:1px solid var(--esw-border);border-radius:999px;padding:6px 10px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:var(--esw-muted);background:rgba(148,163,184,.08)}
.esw-rtc__workday-status.is-working{color:#15803d;background:rgba(34,197,94,.10);border-color:rgba(34,197,94,.28)}
.esw-rtc__workday-status.is-break{color:#b45309;background:rgba(245,158,11,.11);border-color:rgba(245,158,11,.3)}
.esw-rtc__workday-status.is-finished{color:#475467;background:rgba(148,163,184,.12)}

.esw-rtc__workday-clocks{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:9px;margin-top:15px}
.esw-rtc__workday-clock{min-width:0;border:1px solid var(--esw-border);border-radius:13px;padding:11px 10px;background:rgba(148,163,184,.045)}
.esw-rtc__workday-clock span{display:block;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.07em;color:var(--esw-muted);margin-bottom:5px}
.esw-rtc__workday-clock strong{display:block;font-variant-numeric:tabular-nums;font-size:clamp(18px,4.2vw,25px);line-height:1;font-weight:900;letter-spacing:-.035em;color:var(--esw-text);white-space:nowrap}
.esw-rtc__workday-clock--main{border-color:rgba(37,99,235,.22);background:rgba(37,99,235,.045)}

.esw-rtc__workday-actions{display:grid;grid-template-columns:1fr auto;gap:9px;margin-top:10px}
.esw-rtc__workday-main,.esw-rtc__workday-finish{min-height:44px;border-radius:11px;border:1px solid transparent;font:inherit;font-size:11px;font-weight:900;letter-spacing:.04em;cursor:pointer}
.esw-rtc__workday-main{background:#2563eb;color:#fff}
.esw-rtc__workday-main.is-break-action{background:#f59e0b;color:#111827}
.esw-rtc__workday-main.is-work-action{background:#71AC3D;color:#fff}
.esw-rtc__workday-finish{padding:0 16px;background:transparent;color:#b42318;border-color:rgba(180,35,24,.28)}
.esw-rtc__workday-finish:disabled{opacity:.38;cursor:not-allowed}

.esw-rtc__target{margin-top:12px;border:1px solid var(--esw-border);border-radius:14px;padding:12px;background:rgba(148,163,184,.035)}
.esw-rtc__target-top{display:flex;align-items:center;justify-content:space-between;gap:14px}
.esw-rtc__target-kicker{display:block;font-size:9px;font-weight:900;letter-spacing:.09em;color:var(--esw-muted)}
.esw-rtc__target-top strong{display:block;margin-top:2px;font-size:clamp(27px,6vw,38px);line-height:1;font-weight:950;letter-spacing:-.045em;font-variant-numeric:tabular-nums;color:var(--esw-text)}
.esw-rtc__target-top strong.is-reached{color:#b42318}
.esw-rtc__target-top small{display:block;margin-top:5px;font-size:10px;color:var(--esw-muted)}
.esw-rtc__target-modes{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--esw-border);border-radius:10px;overflow:hidden;min-width:184px}
.esw-rtc__target-modes button{border:0;background:transparent;color:var(--esw-muted);padding:8px 9px;font:inherit;font-size:9px;font-weight:850;cursor:pointer;white-space:nowrap}
.esw-rtc__target-modes button+button{border-left:1px solid var(--esw-border)}
.esw-rtc__target-modes button.is-active{background:#2563eb;color:#fff}

.esw-rtc__target-inputs{display:flex;align-items:flex-end;gap:7px;margin-top:10px}
.esw-rtc__target-inputs[hidden]{display:none!important}
.esw-rtc__target-inputs label{display:block}
.esw-rtc__target-inputs label>span{display:block;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--esw-muted);margin:0 0 4px 2px}
.esw-rtc__target-inputs input{box-sizing:border-box;width:68px;height:39px;border:1px solid var(--esw-border);border-radius:10px;background:var(--esw-bg,#fff);color:var(--esw-text);padding:7px 9px;font:inherit;font-size:15px;font-weight:800;text-align:center}
.esw-rtc__target-time-label input{width:140px!important;text-align:left!important}
.esw-rtc__target-colon{height:39px;display:flex;align-items:center;font-size:19px;font-weight:900;color:var(--esw-muted)}

.esw-rtc__workday-log{margin-top:12px;border-top:1px solid var(--esw-border);padding-top:10px}
.esw-rtc__workday-log summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;font-size:11px;font-weight:850;color:var(--esw-text)}
.esw-rtc__workday-log summary::-webkit-details-marker{display:none}
.esw-rtc__workday-log summary:after{content:'+';font-size:17px;color:var(--esw-muted);margin-left:4px}
.esw-rtc__workday-log[open] summary:after{content:'−'}
.esw-rtc__workday-log summary small{margin-left:auto;font-size:9px;font-weight:700;color:var(--esw-muted)}
.esw-rtc__workday-log-list{display:grid;gap:6px;margin-top:10px}
.esw-rtc__workday-log-row{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;padding:8px 9px;border:1px solid var(--esw-border);border-radius:10px;background:rgba(148,163,184,.03)}
.esw-rtc__workday-log-dot{width:7px;height:7px;border-radius:999px;background:#71AC3D}
.esw-rtc__workday-log-row.is-break .esw-rtc__workday-log-dot{background:#f59e0b}
.esw-rtc__workday-log-row strong{display:block;font-size:10px}
.esw-rtc__workday-log-row small{display:block;margin-top:2px;font-size:9px;color:var(--esw-muted)}
.esw-rtc__workday-log-row b{font-size:10px;font-variant-numeric:tabular-nums}
.esw-rtc__workday-log-empty{padding:10px;text-align:center;font-size:10px;color:var(--esw-muted)}

.esw-rtc__workday-reset{border:0;background:transparent;color:var(--esw-muted);font:inherit;font-size:10px;text-decoration:underline;cursor:pointer;padding:9px 0 0}
.esw-rtc__workday-note{margin:6px 0 0;font-size:9px!important;color:var(--esw-muted);line-height:1.4}

.esw-rtc--dark .esw-rtc__workday-clock,
.esw-rtc--dark .esw-rtc__target,
.esw-rtc--dark .esw-rtc__workday-log-row{background:rgba(255,255,255,.025)}
.esw-rtc--dark .esw-rtc__target-inputs input{background:#0d131a;color:#f9fafb}

@media(max-width:560px){
  .esw-rtc__workday-head{align-items:center}
  .esw-rtc__workday-head p{max-width:270px}
  .esw-rtc__workday-clocks{grid-template-columns:1.2fr 1fr 1fr;gap:6px}
  .esw-rtc__workday-clock{padding:10px 7px}
  .esw-rtc__workday-clock strong{font-size:clamp(15px,4.4vw,20px)}
  .esw-rtc__target-top{align-items:flex-start;flex-direction:column}
  .esw-rtc__target-modes{width:100%;min-width:0}
}


/* v2.6.1 — optional timer note + Trip Calculator section divider */
.esw-rtc__workday-head .esw-rtc__workday-optional{
  margin-top:9px;
  max-width:680px;
  font-size:10px;
  line-height:1.5;
  color:var(--esw-muted)
}
.esw-rtc__workday-optional strong{
  color:var(--esw-text);
  font-weight:900
}
.esw-rtc__calculator-divider{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:13px;
  margin:22px 2px 12px
}
.esw-rtc__calculator-divider span{
  display:block;
  height:1px;
  background:var(--esw-border)
}
.esw-rtc__calculator-divider h3{
  margin:0;
  padding:0;
  font-size:clamp(17px,4vw,21px);
  line-height:1;
  font-weight:950;
  letter-spacing:-.025em;
  color:var(--esw-text)
}
@media(max-width:560px){
  .esw-rtc__workday-head .esw-rtc__workday-optional{
    max-width:none;
    font-size:9px
  }
  .esw-rtc__calculator-divider{
    gap:10px;
    margin-top:20px
  }
}


/* v2.7.0 — three-part tool structure, project timer, compact histories */
.esw-rtc__tool-intro{
  margin:22px 2px 4px;
  text-align:center;
  padding:8px 12px
}
.esw-rtc__tool-intro-title{
  font-size:clamp(18px,4.5vw,24px);
  line-height:1.1;
  font-weight:950;
  letter-spacing:-.025em;
  color:var(--esw-text)
}
.esw-rtc__tool-intro p{
  margin:7px auto 0;
  max-width:620px;
  font-size:11px;
  line-height:1.5;
  color:var(--esw-muted)
}
.esw-rtc__tool-intro strong{color:var(--esw-text)}
.esw-rtc__calculator-divider h3{text-transform:uppercase;letter-spacing:.035em;font-size:clamp(15px,3.7vw,19px)}

.esw-rtc__workday-clocks{
  grid-template-columns:repeat(4,minmax(0,1fr))
}
.esw-rtc__workday-status.is-project{
  color:#6d28d9;
  background:rgba(124,58,237,.10);
  border-color:rgba(124,58,237,.28)
}
.esw-rtc__workday-actions--four{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:7px
}
.esw-rtc__workday-mode-btn,
.esw-rtc__workday-actions--four .esw-rtc__workday-finish{
  min-width:0;
  min-height:43px;
  padding:0 7px;
  border-radius:10px;
  border:1px solid var(--esw-border);
  background:transparent;
  color:var(--esw-text);
  font:inherit;
  font-size:10px;
  font-weight:900;
  letter-spacing:.035em;
  cursor:pointer
}
.esw-rtc__workday-mode-btn--work.is-active{
  background:#71AC3D;
  border-color:#71AC3D;
  color:#fff
}
.esw-rtc__workday-mode-btn--break.is-active{
  background:#f59e0b;
  border-color:#f59e0b;
  color:#111827
}
.esw-rtc__workday-mode-btn--project.is-active{
  background:#7c3aed;
  border-color:#7c3aed;
  color:#fff
}
.esw-rtc__workday-actions--four .esw-rtc__workday-finish{
  color:#b42318;
  border-color:rgba(180,35,24,.30)
}
.esw-rtc__workday-actions--four .esw-rtc__workday-finish:disabled{opacity:.36;cursor:not-allowed}
.esw-rtc__workday-log-row.is-project .esw-rtc__workday-log-dot{background:#7c3aed}

.esw-rtc__compact-details{
  margin-top:10px;
  border-top:1px solid var(--esw-border);
  padding-top:10px
}
.esw-rtc__compact-details summary{
  display:flex;
  align-items:center;
  gap:10px;
  cursor:pointer;
  list-style:none;
  color:var(--esw-text);
  font-size:11px;
  font-weight:850
}
.esw-rtc__compact-details summary::-webkit-details-marker{display:none}
.esw-rtc__compact-details summary small{
  margin-left:auto;
  color:var(--esw-muted);
  font-size:9px;
  font-weight:700
}
.esw-rtc__compact-details summary:after{
  content:'+';
  color:var(--esw-muted);
  font-size:17px;
  line-height:1
}
.esw-rtc__compact-details[open] summary:after{content:'−'}
.esw-rtc__compact-details .esw-rtc__history-list{margin-top:10px}

@media(max-width:560px){
  .esw-rtc__workday-clocks{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .esw-rtc__workday-actions--four{grid-template-columns:repeat(2,minmax(0,1fr))}
  .esw-rtc__tool-intro{margin-top:18px}
}


/* v2.7.2 — Daily Analysis + full workday reset */
.esw-rtc__day-actions{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:7px;
  flex:0 0 auto
}
.esw-rtc__day-actions .esw-rtc__button{
  width:100%;
  white-space:nowrap
}
.esw-rtc__button--reset-day{
  background:transparent !important;
  color:#b42318 !important;
  border-color:rgba(180,35,24,.34) !important
}
.esw-rtc__button--reset-day:hover{
  border-color:rgba(180,35,24,.58) !important
}
@media(max-width:560px){
  .esw-rtc__history-head{align-items:flex-start}
  .esw-rtc__day-actions{
    width:100%;
    margin-top:8px
  }
}


/* v2.7.3 — destructive reset emphasis */
.esw-rtc__button--reset-day{
  background:#ff1f1f !important;
  color:#fff !important;
  border-color:#ff1f1f !important;
  box-shadow:0 5px 14px rgba(255,31,31,.18)
}
.esw-rtc__button--reset-day:hover,
.esw-rtc__button--reset-day:focus{
  background:#e60000 !important;
  color:#fff !important;
  border-color:#e60000 !important
}
.esw-rtc--dark .esw-rtc__button--reset-day{
  background:#ff2b2b !important;
  color:#fff !important;
  border-color:#ff2b2b !important
}


/* v2.7.4 — responsive Workday Timer values */
.esw-rtc__workday-clock{
  min-width:0;
  overflow:hidden
}
.esw-rtc__workday-clock > span{
  display:block;
  min-width:0
}
.esw-rtc__workday-clock > strong{
  display:block;
  width:100%;
  min-width:0;
  max-width:100%;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:clip;
  text-align:center;
  font-size:clamp(18px,4.4vw,29px);
  line-height:1.05;
  letter-spacing:-.055em;
  font-variant-numeric:tabular-nums;
  font-feature-settings:"tnum" 1
}

/* Preserve four cards in a single row where the container has enough room. */
@media(min-width:561px){
  .esw-rtc__workday-clocks{
    grid-template-columns:repeat(4,minmax(0,1fr))
  }
  .esw-rtc__workday-clock > strong{
    font-size:clamp(17px,3.25vw,27px)
  }
}

/* Reflow on phones instead of allowing HH:MM:SS to spill into neighboring cards. */
@media(max-width:560px){
  .esw-rtc__workday-clocks{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:7px
  }
  .esw-rtc__workday-clock > strong{
    font-size:clamp(22px,7.1vw,31px);
    letter-spacing:-.05em
  }
}

/* Extra protection for very narrow phones. */
@media(max-width:360px){
  .esw-rtc__workday-clock > strong{
    font-size:clamp(19px,6.6vw,25px);
    letter-spacing:-.06em
  }
}


/* v2.7.5 — center Daily Analysis / Reset Workday actions */
.esw-rtc__history-head{
  align-items:center
}
.esw-rtc__day-actions{
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:8px;
  flex:1 1 100%;
  width:100%;
  margin-top:10px
}
.esw-rtc__day-actions .esw-rtc__button{
  width:auto;
  min-width:170px;
  flex:0 1 auto;
  text-align:center
}

@media(max-width:560px){
  .esw-rtc__history-head{
    align-items:center
  }
  .esw-rtc__day-actions{
    flex-direction:column;
    justify-content:center;
    align-items:center;
    width:100%;
    margin-top:10px
  }
  .esw-rtc__day-actions .esw-rtc__button{
    width:min(100%,260px);
    min-width:0
  }
}


/* v2.8.0 — six timer controls, fueling/charging, and pause */
.esw-rtc__workday-actions--six{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px
}
.esw-rtc__workday-actions--six .esw-rtc__workday-mode-btn,
.esw-rtc__workday-actions--six .esw-rtc__workday-finish{
  min-width:0;
  min-height:44px;
  padding:7px 8px;
  border-radius:10px;
  font-size:9px;
  line-height:1.15;
  text-align:center;
  white-space:normal
}
.esw-rtc__workday-mode-btn--fuel.is-active{
  background:#0f766e;
  border-color:#0f766e;
  color:#fff
}
.esw-rtc__workday-mode-btn--pause{
  color:var(--esw-text)
}
.esw-rtc__workday-mode-btn--pause.is-active{
  background:#475569;
  border-color:#475569;
  color:#fff
}
.esw-rtc__workday-status.is-fuel{
  color:#0f766e;
  background:rgba(15,118,110,.10);
  border-color:rgba(15,118,110,.28)
}
.esw-rtc__workday-status.is-paused{
  color:#475569;
  background:rgba(71,85,105,.10);
  border-color:rgba(71,85,105,.26)
}
.esw-rtc__workday-log-row.is-fuel .esw-rtc__workday-log-dot{background:#0f766e}

@media(max-width:420px){
  .esw-rtc__workday-actions--six{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
}


/* v2.9.0 — persistent collapsible main sections */
.esw-rtc__section-panel{
  margin:14px 0;
  border:1px solid var(--esw-border);
  border-radius:16px;
  background:var(--esw-card);
  overflow:hidden
}
.esw-rtc__section-panel > summary{
  list-style:none;
  cursor:pointer;
  min-height:62px;
  display:flex;
  align-items:center;
  gap:14px;
  padding:13px 16px;
  user-select:none;
  -webkit-tap-highlight-color:transparent
}
.esw-rtc__section-panel > summary::-webkit-details-marker{display:none}
.esw-rtc__section-panel-summary > div{
  min-width:0;
  flex:1
}
.esw-rtc__section-panel-summary strong{
  display:block;
  font-size:13px;
  line-height:1.2;
  font-weight:950;
  letter-spacing:.045em;
  color:var(--esw-text)
}
.esw-rtc__section-panel-summary small{
  display:block;
  margin-top:4px;
  font-size:10px;
  line-height:1.35;
  font-weight:600;
  color:var(--esw-muted)
}
.esw-rtc__section-panel-icon{
  position:relative;
  width:30px;
  height:30px;
  flex:0 0 30px;
  border:1px solid var(--esw-border);
  border-radius:50%;
  background:var(--esw-bg);
  transition:transform .18s ease,border-color .18s ease
}
.esw-rtc__section-panel-icon:before,
.esw-rtc__section-panel-icon:after{
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  width:11px;
  height:2px;
  border-radius:2px;
  background:var(--esw-text);
  transform:translate(-50%,-50%)
}
.esw-rtc__section-panel-icon:after{
  transform:translate(-50%,-50%) rotate(90deg);
  transition:transform .18s ease
}
.esw-rtc__section-panel[open] .esw-rtc__section-panel-icon:after{
  transform:translate(-50%,-50%) rotate(0deg)
}
.esw-rtc__section-panel[open] > summary{
  border-bottom:1px solid var(--esw-border)
}
.esw-rtc__section-panel-body{
  padding:12px
}
.esw-rtc__section-panel-body > .esw-rtc__card{
  margin-top:0;
  margin-bottom:0;
  border:0;
  border-radius:12px;
  box-shadow:none
}
.esw-rtc__section-panel-body > .esw-rtc__results{
  margin-top:12px
}
.esw-rtc__section-panel-body > .esw-rtc__history{
  margin-top:12px
}
.esw-rtc__section-panel:focus-within > summary,
.esw-rtc__section-panel > summary:focus-visible{
  outline:2px solid currentColor;
  outline-offset:-2px
}
@media(hover:hover) and (pointer:fine){
  .esw-rtc__section-panel > summary:hover{
    background:rgba(127,127,127,.045)
  }
}
@media(max-width:560px){
  .esw-rtc__section-panel{
    margin:11px 0;
    border-radius:14px
  }
  .esw-rtc__section-panel > summary{
    min-height:58px;
    padding:12px 13px;
    gap:10px
  }
  .esw-rtc__section-panel-summary strong{
    font-size:12px
  }
  .esw-rtc__section-panel-summary small{
    font-size:9px
  }
  .esw-rtc__section-panel-body{
    padding:8px
  }
  .esw-rtc__section-panel-icon{
    width:28px;
    height:28px;
    flex-basis:28px
  }
}


/* v2.9.1 — stronger section-panel borders and consistent rounded corners */
.esw-rtc__section-panel{
  border:2px solid #111827 !important;
  border-radius:16px !important;
  overflow:hidden;
  background:var(--esw-card)
}
.esw-rtc--dark .esw-rtc__section-panel{
  border-color:#ffffff !important
}

.esw-rtc__section-panel > summary{
  border:0 !important;
  border-radius:14px !important;
  outline:none !important;
  box-shadow:none !important
}

/* Keep the outer card shape intact while open. */
.esw-rtc__section-panel[open] > summary{
  border-bottom:1px solid var(--esw-border) !important;
  border-radius:14px 14px 0 0 !important
}
.esw-rtc__section-panel[open] .esw-rtc__section-panel-body{
  border-radius:0 0 14px 14px !important
}

/* Avoid browser tap/focus artifacts that can make corners look squared or broken. */
.esw-rtc__section-panel > summary:focus,
.esw-rtc__section-panel > summary:focus-visible,
.esw-rtc__section-panel > summary:active{
  outline:none !important;
  box-shadow:none !important
}
.esw-rtc__section-panel:focus-within{
  outline:none !important;
  box-shadow:none !important
}

/* Ensure the collapsed summary fills the rounded shell cleanly. */
.esw-rtc__section-panel:not([open]) > summary{
  border-radius:14px !important
}

@media(max-width:560px){
  .esw-rtc__section-panel{
    border-radius:14px !important
  }
  .esw-rtc__section-panel > summary{
    border-radius:12px !important
  }
  .esw-rtc__section-panel[open] > summary{
    border-radius:12px 12px 0 0 !important
  }
  .esw-rtc__section-panel[open] .esw-rtc__section-panel-body{
    border-radius:0 0 12px 12px !important
  }
}


/* v2.9.2 — responsive hardening across the entire tool */
.esw-rtc,
.esw-rtc *,
.esw-rtc *::before,
.esw-rtc *::after{
  box-sizing:border-box
}
.esw-rtc{
  width:100%;
  max-width:100%;
  overflow-x:hidden
}
.esw-rtc__header,
.esw-rtc__header > *,
.esw-rtc__card,
.esw-rtc__results,
.esw-rtc__section-panel,
.esw-rtc__section-panel-body,
.esw-rtc__preferences-head > *,
.esw-rtc__workday-head > *,
.esw-rtc__target-top > *,
.esw-rtc__history-head > *,
.esw-rtc__grid > *,
.esw-rtc__metrics > *,
.esw-rtc__headline-rates > *,
.esw-rtc__workday-clocks > *,
.esw-rtc__workday-actions > *{
  min-width:0;
  max-width:100%
}
.esw-rtc input,
.esw-rtc button{
  max-width:100%
}

/* Timer values scale for the actual mobile layout rather than the full viewport. */
@media(max-width:560px){
  .esw-rtc__workday-clock > strong{
    font-size:clamp(17px,5vw,23px) !important;
    letter-spacing:-.045em !important
  }
}
@media(max-width:360px){
  .esw-rtc__workday-clock > strong{
    font-size:clamp(16px,4.8vw,20px) !important
  }
}

/* Let timer header/status wrap instead of squeezing either side. */
@media(max-width:480px){
  .esw-rtc__workday-head{
    flex-wrap:wrap;
    gap:10px
  }
  .esw-rtc__workday-status{
    margin-left:0
  }
}

/* The target area becomes vertical before its controls can collide. */
@media(max-width:520px){
  .esw-rtc__target-top{
    flex-direction:column;
    align-items:stretch;
    gap:11px
  }
  .esw-rtc__target-modes{
    width:100%;
    min-width:0
  }
  .esw-rtc__target-top strong{
    font-size:clamp(27px,9vw,36px)
  }
  .esw-rtc__target-inputs{
    max-width:100%;
    flex-wrap:wrap
  }
  .esw-rtc__target-time-label,
  .esw-rtc__target-time-label input{
    max-width:100%
  }
}

/* Inputs and calculation grids reflow cleanly on very narrow devices. */
@media(max-width:390px){
  .esw-rtc__grid--3{
    grid-template-columns:1fr
  }
  .esw-rtc__grid--2{
    grid-template-columns:1fr
  }
  .esw-rtc__calc-buttons{
    grid-template-columns:1fr
  }
  .esw-rtc__actions{
    grid-template-columns:1fr
  }
  .esw-rtc__metrics{
    grid-template-columns:1fr
  }
  .esw-rtc__headline-rates{
    grid-template-columns:1fr;
    row-gap:10px
  }
  .esw-rtc__headline-value > span{
    font-size:clamp(26px,10vw,36px)
  }
}

/* Preference rows keep their table layout when possible, then stack when needed. */
@media(max-width:380px){
  .esw-rtc__pref-row:not(.esw-rtc__pref-row--head){
    grid-template-columns:1fr;
    gap:7px;
    padding:10px
  }
  .esw-rtc__pref-row--head{
    display:none
  }
  .esw-rtc__pref-row strong{
    font-size:11px
  }
  .esw-rtc__pref-input,
  .esw-rtc__pref-input input{
    width:100%
  }
}

/* Saved rides and empty-driving rows can wrap without forcing horizontal scroll. */
@media(max-width:460px){
  .esw-rtc__history-row,
  .esw-rtc__history-row--tip{
    grid-template-columns:1fr;
    align-items:start
  }
  .esw-rtc__history-row .esw-rtc__remove{
    justify-self:start
  }
  .esw-rtc__tip-edit-controls{
    max-width:100%;
    flex-wrap:wrap
  }
  .esw-rtc__tip-edit-controls input{
    min-width:0;
    flex:1 1 110px
  }
}

/* Keep the six Workday controls readable at all widths. */
.esw-rtc__workday-actions--six > button{
  overflow-wrap:anywhere
}
@media(max-width:560px){
  .esw-rtc__workday-actions--six{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
}
@media(max-width:330px){
  .esw-rtc__workday-actions--six{
    grid-template-columns:1fr
  }
}

/* Collapsible headers also adapt without clipping their descriptions. */
.esw-rtc__section-panel-summary small,
.esw-rtc__section-panel-summary strong{
  overflow-wrap:anywhere
}
@media(max-width:340px){
  .esw-rtc__section-panel > summary{
    padding:11px
  }
  .esw-rtc__section-panel-summary small{
    font-size:8px
  }
  .esw-rtc__section-panel-icon{
    width:26px;
    height:26px;
    flex-basis:26px
  }
}

/* Long headings and report controls should wrap naturally. */
.esw-rtc__tool-intro-title,
.esw-rtc__header h2,
.esw-rtc__profit-note,
.esw-rtc__empty-summary,
.esw-rtc__history-head p{
  overflow-wrap:anywhere
}


/* v2.9.3 — consistent, noticeable 1px adaptive borders */
.esw-rtc{
  --esw-ui-outline:#111827;
}
.esw-rtc.esw-rtc--dark{
  --esw-ui-outline:#ffffff;
}

/* Main cards, collapsible shells, nested panels and result surfaces */
.esw-rtc__section-panel,
.esw-rtc__card,
.esw-rtc__results,
.esw-rtc__profit-note,
.esw-rtc__target-card,
.esw-rtc__workday-clock,
.esw-rtc__history-row,
.esw-rtc__empty-row,
.esw-rtc__pref-table,
.esw-rtc__cost-card{
  border-width:1px !important;
  border-style:solid !important;
  border-color:var(--esw-ui-outline) !important;
}

/* Buttons and button-like controls */
.esw-rtc button,
.esw-rtc__button,
.esw-rtc__theme-toggle,
.esw-rtc__workday-mode-btn,
.esw-rtc__workday-finish,
.esw-rtc__target-modes,
.esw-rtc__section-panel-icon{
  border-width:1px !important;
  border-style:solid !important;
  border-color:var(--esw-ui-outline) !important;
}

/* Form fields */
.esw-rtc input,
.esw-rtc select,
.esw-rtc textarea,
.esw-rtc__pref-input,
.esw-rtc__input-wrap{
  border-width:1px !important;
  border-style:solid !important;
  border-color:var(--esw-ui-outline) !important;
}

/* Preserve semantic selected/action fills while keeping the adaptive outline. */
.esw-rtc button:disabled{
  border-color:var(--esw-ui-outline) !important;
  opacity:.55
}

/* The collapsible section shell previously used a heavier 2px outline. */
.esw-rtc__section-panel{
  border-width:1px !important
}

/* Keep inner separators subtle; they are dividers rather than container borders. */
.esw-rtc__section-panel[open] > summary{
  border-bottom:1px solid var(--esw-ui-outline) !important
}

/* Maintain clean rounded edges after the universal border normalization. */
.esw-rtc__section-panel,
.esw-rtc__card,
.esw-rtc__results,
.esw-rtc__target-card,
.esw-rtc__workday-clock{
  background-clip:padding-box
}


/* v2.9.4 — restore compact Trip Calculator layout on phones */
@media(max-width:390px){
  /* Keep the calculator's time fields together instead of stacking vertically. */
  .esw-rtc__offer-card .esw-rtc__grid--3{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:6px
  }

  /* Keep pickup/trip distance side by side. */
  .esw-rtc__offer-card .esw-rtc__grid--2{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:7px
  }

  /* Keep Time / Mileage / Both in one row. */
  .esw-rtc__offer-card .esw-rtc__calc-buttons{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:6px
  }

  /* Keep result headline figures side by side. */
  .esw-rtc__results .esw-rtc__headline-rates{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    column-gap:10px;
    row-gap:0
  }

  /* Keep result metric cards in two columns to avoid an extra-long page. */
  .esw-rtc__results .esw-rtc__metrics{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:7px
  }

  /* Keep Save Trip / Download Trip side by side. */
  .esw-rtc__results .esw-rtc__actions{
    grid-template-columns:1fr 1fr !important;
    gap:7px
  }

  /* Scale dense calculator inputs rather than forcing them to stack. */
  .esw-rtc__offer-card .esw-rtc__field > span{
    font-size:9px
  }
  .esw-rtc__offer-card .esw-rtc__unit-input input{
    min-width:0;
    width:100%;
    font-size:15px;
    padding-left:7px;
    padding-right:27px
  }
  .esw-rtc__offer-card .esw-rtc__unit-input small{
    right:7px;
    font-size:8px
  }
  .esw-rtc__offer-card .esw-rtc__calc-btn{
    min-width:0;
    padding:8px 3px
  }
  .esw-rtc__offer-card .esw-rtc__calc-btn strong{
    font-size:11px
  }
  .esw-rtc__offer-card .esw-rtc__calc-btn span{
    font-size:8px
  }
}

/* Only on extremely narrow screens do distance fields stack as a last-resort safeguard. */
@media(max-width:310px){
  .esw-rtc__offer-card .esw-rtc__grid--2{
    grid-template-columns:1fr !important
  }
}


/* v2.9.5 — keep the two headline $/hour figures fully inside their columns */
.esw-rtc__headline-rates{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important
}
.esw-rtc__headline-rate{
  min-width:0;
  overflow:hidden;
  padding-left:2px;
  padding-right:2px
}
.esw-rtc__headline-value{
  display:flex !important;
  width:100%;
  min-width:0;
  max-width:100%;
  align-items:baseline;
  justify-content:center;
  gap:3px !important;
  white-space:nowrap;
  overflow:hidden
}
.esw-rtc__headline-value > span{
  display:block;
  min-width:0;
  max-width:100%;
  font-size:clamp(25px,5.5vw,38px) !important;
  line-height:1 !important;
  letter-spacing:-.06em !important;
  white-space:nowrap
}
.esw-rtc__headline-value > small{
  display:block;
  flex:0 0 auto;
  font-size:clamp(9px,2vw,13px) !important;
  line-height:1 !important;
  letter-spacing:-.02em !important;
  white-space:nowrap
}

/* Phone widths: shrink the amount before allowing either column to overflow. */
@media(max-width:560px){
  .esw-rtc__headline-rates{
    gap:6px !important
  }
  .esw-rtc__headline-value{
    gap:2px !important
  }
  .esw-rtc__headline-value > span{
    font-size:clamp(22px,7.1vw,31px) !important
  }
  .esw-rtc__headline-value > small{
    font-size:clamp(8px,2.4vw,11px) !important
  }
  .esw-rtc__headline-rate > span{
    font-size:8px !important;
    letter-spacing:.025em !important
  }
}

/* Extra safeguard for narrow phones while keeping both figures side by side. */
@media(max-width:380px){
  .esw-rtc__headline-value > span{
    font-size:clamp(20px,6.8vw,27px) !important
  }
  .esw-rtc__headline-value > small{
    font-size:8px !important
  }
}


/* v2.9.6 — lighter headline hourly figures */
.esw-rtc__headline-value,
.esw-rtc__headline-value > span,
.esw-rtc__headline-value > small{
  font-weight:400 !important
}


/* v2.9.7 — remove double borders around wrapped form fields */
.esw-rtc__pref-input,
.esw-rtc__input-wrap,
.esw-rtc__unit-input{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:transparent !important
}

/* The actual input is the single visible bordered control. */
.esw-rtc__pref-input input,
.esw-rtc__input-wrap input,
.esw-rtc__unit-input input{
  border:1px solid var(--esw-ui-outline) !important;
  outline:0;
  box-shadow:none;
  background-clip:padding-box
}


/* v2.9.8 — responsive desktop max width */
.esw-rtc{
  width:calc(100% - 24px) !important;
  max-width:820px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

@media(max-width:860px){
  .esw-rtc{
    width:calc(100% - 20px) !important;
    max-width:none !important;
  }
}

@media(max-width:480px){
  .esw-rtc{
    width:calc(100% - 12px) !important;
  }
}


/* v2.9.9 — clean text actions + current-page dark background */

/* Text-only actions should not inherit the universal button border. */
.esw-rtc .esw-rtc__text-button,
.esw-rtc button.esw-rtc__text-button,
.esw-rtc .esw-rtc__remove,
.esw-rtc button.esw-rtc__remove,
.esw-rtc .esw-rtc__workday-reset,
.esw-rtc button.esw-rtc__workday-reset{
  width:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  padding:6px 0 !important;
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:transparent !important
}
.esw-rtc .esw-rtc__text-button{
  color:var(--esw-muted) !important;
  text-decoration:underline;
  text-underline-offset:2px
}
.esw-rtc .esw-rtc__remove{
  color:#d92d20 !important;
  text-decoration:none
}
.esw-rtc .esw-rtc__text-button:focus-visible,
.esw-rtc .esw-rtc__remove:focus-visible{
  outline:2px solid currentColor !important;
  outline-offset:3px !important;
  border-radius:3px !important
}

/* Dark mode affects only the current page while this calculator is active. */
html.esw-rtc-page-dark,
body.esw-rtc-page-dark{
  background:#0b111b !important;
  color:#f8fafc !important
}

/* Common WordPress content wrappers become transparent so dark mode reaches the page edges. */
body.esw-rtc-page-dark #page,
body.esw-rtc-page-dark .site,
body.esw-rtc-page-dark .site-content,
body.esw-rtc-page-dark .content-area,
body.esw-rtc-page-dark .site-main,
body.esw-rtc-page-dark main,
body.esw-rtc-page-dark article,
body.esw-rtc-page-dark .entry-content,
body.esw-rtc-page-dark .wp-site-blocks,
body.esw-rtc-page-dark .wp-block-group,
body.esw-rtc-page-dark .wp-block-post-content{
  background-color:transparent !important
}

/* Keep surrounding page copy readable. */
body.esw-rtc-page-dark .entry-content,
body.esw-rtc-page-dark .wp-block-post-content,
body.esw-rtc-page-dark .site-main{
  color:#f8fafc
}
body.esw-rtc-page-dark .entry-content a,
body.esw-rtc-page-dark .wp-block-post-content a{
  color:#93c5fd
}

/* Leave site chrome alone so this does not restyle the whole website theme. */


/* v2.9.12 — stable mobile viewport + section navigation */
.esw-rtc{
  position:relative;
  left:auto !important;
  right:auto !important;
  transform:none !important;
  min-width:0;
  overflow-x:clip;
}
.esw-rtc__section-panel{
  scroll-margin-top:8px
}

/*
 * iPhone/iPad Safari automatically zooms when focusing controls whose text
 * is smaller than 16px. Keeping mobile form controls at 16px prevents that
 * involuntary zoom/pan and keeps the centered calculator fully in view.
 */
@media(max-width:768px){
  .esw-rtc input,
  .esw-rtc select,
  .esw-rtc textarea{
    font-size:16px !important
  }

  .esw-rtc{
    margin-left:auto !important;
    margin-right:auto !important;
    transform:none !important
  }

  body{
    overflow-x:hidden
  }
}


/* v2.9.13 — responsive preference badge + clean target toggle */

/* Prevent the Saved locally pill from shrinking underneath its own text on tablets. */
.esw-rtc__saved-pill{
  flex:0 0 auto !important;
  width:max-content;
  max-width:100%;
  min-width:max-content;
  line-height:1.15;
  text-align:center
}
.esw-rtc__preferences-head > div:first-child{
  min-width:0;
  flex:1 1 auto
}
@media(max-width:760px){
  .esw-rtc__preferences-head{
    flex-wrap:wrap
  }
  .esw-rtc__saved-pill{
    min-width:0;
    white-space:nowrap
  }
}

/* The two target-mode buttons share one continuous rounded outer shell. */
.esw-rtc__target-modes{
  position:relative;
  isolation:isolate;
  overflow:hidden !important;
  border:1px solid var(--esw-ui-outline,var(--esw-border)) !important;
  border-radius:10px !important;
  background:transparent;
  background-clip:padding-box
}
.esw-rtc__target-modes button{
  min-width:0;
  border:0 !important;
  border-radius:0 !important;
  outline:0;
  box-shadow:none !important;
  background-clip:padding-box
}
.esw-rtc__target-modes button+button{
  border-left:1px solid var(--esw-ui-outline,var(--esw-border)) !important
}
.esw-rtc__target-modes button:first-child{
  border-radius:9px 0 0 9px !important
}
.esw-rtc__target-modes button:last-child{
  border-radius:0 9px 9px 0 !important
}
.esw-rtc__target-modes button:focus-visible{
  outline:2px solid currentColor !important;
  outline-offset:-3px !important
}


/* v2.9.15 — WordPress Details blocks remain readable with calculator page dark mode.
 *
 * The calculator's page-level dark mode makes normal page copy light. WordPress
 * Details blocks can keep a light content surface, so their inherited light text
 * becomes nearly invisible. Give native/WordPress details blocks an explicit
 * dark-mode surface and readable foreground colors instead of letting the theme
 * and page-level overrides conflict.
 */
body.esw-rtc-page-dark .entry-content details:not(.esw-rtc__section-panel):not(.esw-rtc__timer-help),
body.esw-rtc-page-dark .wp-block-post-content details:not(.esw-rtc__section-panel):not(.esw-rtc__timer-help),
body.esw-rtc-page-dark details.wp-block-details{
  color:#f8fafc !important;
  background:#111827 !important;
  border-color:#e5e7eb !important;
}

body.esw-rtc-page-dark .entry-content details:not(.esw-rtc__section-panel):not(.esw-rtc__timer-help) > summary,
body.esw-rtc-page-dark .wp-block-post-content details:not(.esw-rtc__section-panel):not(.esw-rtc__timer-help) > summary,
body.esw-rtc-page-dark details.wp-block-details > summary{
  color:#f8fafc !important;
  background:#111827 !important;
  border-color:#e5e7eb !important;
}

body.esw-rtc-page-dark .entry-content details:not(.esw-rtc__section-panel):not(.esw-rtc__timer-help) > :not(summary),
body.esw-rtc-page-dark .wp-block-post-content details:not(.esw-rtc__section-panel):not(.esw-rtc__timer-help) > :not(summary),
body.esw-rtc-page-dark details.wp-block-details > :not(summary){
  color:#f8fafc !important;
  background-color:transparent !important;
}

body.esw-rtc-page-dark .entry-content details:not(.esw-rtc__section-panel):not(.esw-rtc__timer-help) p,
body.esw-rtc-page-dark .entry-content details:not(.esw-rtc__section-panel):not(.esw-rtc__timer-help) li,
body.esw-rtc-page-dark .entry-content details:not(.esw-rtc__section-panel):not(.esw-rtc__timer-help) strong,
body.esw-rtc-page-dark .entry-content details:not(.esw-rtc__section-panel):not(.esw-rtc__timer-help) em,
body.esw-rtc-page-dark .wp-block-post-content details:not(.esw-rtc__section-panel):not(.esw-rtc__timer-help) p,
body.esw-rtc-page-dark .wp-block-post-content details:not(.esw-rtc__section-panel):not(.esw-rtc__timer-help) li,
body.esw-rtc-page-dark .wp-block-post-content details:not(.esw-rtc__section-panel):not(.esw-rtc__timer-help) strong,
body.esw-rtc-page-dark .wp-block-post-content details:not(.esw-rtc__section-panel):not(.esw-rtc__timer-help) em{
  color:inherit !important;
}

body.esw-rtc-page-dark .entry-content details:not(.esw-rtc__section-panel):not(.esw-rtc__timer-help) a,
body.esw-rtc-page-dark .wp-block-post-content details:not(.esw-rtc__section-panel):not(.esw-rtc__timer-help) a,
body.esw-rtc-page-dark details.wp-block-details a{
  color:#93c5fd !important;
}


/* v2.9.16 — Keep site navigation controls visible in calculator page dark mode. */
body.esw-rtc-page-dark header,
body.esw-rtc-page-dark nav,
body.esw-rtc-page-dark .site-header,
body.esw-rtc-page-dark .wp-site-blocks > header,
body.esw-rtc-page-dark .wp-block-template-part header{
  color:#f8fafc !important;
}

body.esw-rtc-page-dark header a,
body.esw-rtc-page-dark nav a,
body.esw-rtc-page-dark .site-header a,
body.esw-rtc-page-dark .wp-block-navigation a,
body.esw-rtc-page-dark .wp-block-navigation-item__content,
body.esw-rtc-page-dark .wp-block-navigation__responsive-container-open,
body.esw-rtc-page-dark .wp-block-navigation__responsive-container-close,
body.esw-rtc-page-dark .menu-toggle,
body.esw-rtc-page-dark .hamburger,
body.esw-rtc-page-dark .nav-toggle,
body.esw-rtc-page-dark .search-toggle,
body.esw-rtc-page-dark .wp-block-search__button{
  color:#f8fafc !important;
}

body.esw-rtc-page-dark header button,
body.esw-rtc-page-dark nav button,
body.esw-rtc-page-dark .site-header button,
body.esw-rtc-page-dark .wp-block-navigation button{
  color:#f8fafc !important;
  border-color:rgba(248,250,252,.7) !important;
}

body.esw-rtc-page-dark header svg,
body.esw-rtc-page-dark nav svg,
body.esw-rtc-page-dark .site-header svg,
body.esw-rtc-page-dark .wp-block-navigation svg,
body.esw-rtc-page-dark .wp-block-search svg{
  color:#f8fafc !important;
  fill:currentColor !important;
  stroke:currentColor;
}

body.esw-rtc-page-dark .wp-block-search__inside-wrapper,
body.esw-rtc-page-dark .search-form,
body.esw-rtc-page-dark header input[type="search"],
body.esw-rtc-page-dark nav input[type="search"],
body.esw-rtc-page-dark .wp-block-search__input{
  color:#f8fafc !important;
  border-color:rgba(248,250,252,.7) !important;
}

body.esw-rtc-page-dark header input[type="search"],
body.esw-rtc-page-dark nav input[type="search"],
body.esw-rtc-page-dark .wp-block-search__input{
  background:#111827 !important;
}

body.esw-rtc-page-dark header input[type="search"]::placeholder,
body.esw-rtc-page-dark nav input[type="search"]::placeholder,
body.esw-rtc-page-dark .wp-block-search__input::placeholder{
  color:#cbd5e1 !important;
  opacity:1;
}

body.esw-rtc-page-dark .wp-block-navigation__responsive-container.is-menu-open{
  background:#0b111b !important;
  color:#f8fafc !important;
}






/* v2.9.20 — Responsive Driver Preferences rate fields. */
.esw-rtc__preferences-table,
.esw-rtc__preferences-table *{
  min-width:0;
}

.esw-rtc__preferences-table .esw-rtc__pref-input,
.esw-rtc__preferences-table .esw-rtc__unit-input{
  width:100%;
  max-width:100%;
}

.esw-rtc__preferences-table .esw-rtc__pref-input input,
.esw-rtc__preferences-table .esw-rtc__unit-input input{
  width:100%;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
  font-size:clamp(17px,4.8vw,26px) !important;
  line-height:1.1 !important;
  letter-spacing:-.02em;
  padding-left:38px !important;
  padding-right:42px !important;
  text-overflow:clip;
}

@media(max-width:520px){
  .esw-rtc__preferences-table{
    table-layout:fixed;
    width:100%;
  }

  .esw-rtc__preferences-table th,
  .esw-rtc__preferences-table td{
    min-width:0;
    padding-left:6px;
    padding-right:6px;
  }

  .esw-rtc__preferences-table th:first-child,
  .esw-rtc__preferences-table td:first-child{
    width:30%;
  }

  .esw-rtc__preferences-table th:nth-child(2),
  .esw-rtc__preferences-table td:nth-child(2),
  .esw-rtc__preferences-table th:nth-child(3),
  .esw-rtc__preferences-table td:nth-child(3){
    width:35%;
  }

  .esw-rtc__preferences-table .esw-rtc__pref-input input,
  .esw-rtc__preferences-table .esw-rtc__unit-input input{
    font-size:clamp(16px,4.6vw,22px) !important;
    padding-left:32px !important;
    padding-right:34px !important;
  }
}

@media(max-width:390px){
  .esw-rtc__preferences-table th,
  .esw-rtc__preferences-table td{
    padding-left:4px;
    padding-right:4px;
  }

  .esw-rtc__preferences-table .esw-rtc__pref-input input,
  .esw-rtc__preferences-table .esw-rtc__unit-input input{
    font-size:16px !important;
    padding-left:28px !important;
    padding-right:30px !important;
    letter-spacing:-.035em;
  }

  .esw-rtc__preferences-table .esw-rtc__pref-prefix,
  .esw-rtc__preferences-table .esw-rtc__pref-suffix{
    font-size:12px !important;
  }
}

@media(max-width:340px){
  .esw-rtc__preferences-table .esw-rtc__pref-input input,
  .esw-rtc__preferences-table .esw-rtc__unit-input input{
    font-size:16px !important;
    padding-left:25px !important;
    padding-right:27px !important;
  }
}


/* v2.9.21 — iPhone Driver Preferences field fit fix.
 * Use an explicit 3-column layout ($ | value | unit) so the number can never
 * slide underneath /hr or /mi on narrow screens.
 */
.esw-rtc__preferences-table .esw-rtc__pref-input,
.esw-rtc__preferences-table .esw-rtc__unit-input{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:6px !important;
  padding:0 10px !important;
  overflow:hidden !important;
}

.esw-rtc__preferences-table .esw-rtc__pref-input input,
.esw-rtc__preferences-table .esw-rtc__unit-input input{
  grid-column:2 !important;
  position:static !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  text-align:left !important;
  font-size:clamp(16px,5.2vw,25px) !important;
  line-height:1.15 !important;
  letter-spacing:-.035em !important;
}

.esw-rtc__preferences-table .esw-rtc__pref-prefix,
.esw-rtc__preferences-table .esw-rtc__pref-suffix,
.esw-rtc__preferences-table .esw-rtc__pref-input > span,
.esw-rtc__preferences-table .esw-rtc__unit-input > span{
  position:static !important;
  inset:auto !important;
  transform:none !important;
  margin:0 !important;
  white-space:nowrap !important;
  pointer-events:none;
}

.esw-rtc__preferences-table .esw-rtc__pref-prefix,
.esw-rtc__preferences-table .esw-rtc__pref-input > span:first-child,
.esw-rtc__preferences-table .esw-rtc__unit-input > span:first-child{
  grid-column:1 !important;
}

.esw-rtc__preferences-table .esw-rtc__pref-suffix,
.esw-rtc__preferences-table .esw-rtc__pref-input > span:last-child,
.esw-rtc__preferences-table .esw-rtc__unit-input > span:last-child{
  grid-column:3 !important;
}

@media(max-width:430px){
  .esw-rtc__preferences-table .esw-rtc__pref-input,
  .esw-rtc__preferences-table .esw-rtc__unit-input{
    gap:4px !important;
    padding-left:7px !important;
    padding-right:7px !important;
  }

  .esw-rtc__preferences-table .esw-rtc__pref-input input,
  .esw-rtc__preferences-table .esw-rtc__unit-input input{
    font-size:16px !important;
    letter-spacing:-.045em !important;
  }

  .esw-rtc__preferences-table .esw-rtc__pref-prefix,
  .esw-rtc__preferences-table .esw-rtc__pref-suffix,
  .esw-rtc__preferences-table .esw-rtc__pref-input > span,
  .esw-rtc__preferences-table .esw-rtc__unit-input > span{
    font-size:11px !important;
  }
}

@media(max-width:360px){
  .esw-rtc__preferences-table .esw-rtc__pref-input,
  .esw-rtc__preferences-table .esw-rtc__unit-input{
    gap:3px !important;
    padding-left:5px !important;
    padding-right:5px !important;
  }

  .esw-rtc__preferences-table .esw-rtc__pref-input input,
  .esw-rtc__preferences-table .esw-rtc__unit-input input{
    font-size:16px !important;
    letter-spacing:-.06em !important;
  }
}


/* v2.9.22 — Driver Preferences rate layout redesign.
 * Put each rate level on its own row/card so the two numeric fields have
 * substantially more horizontal room on phones.
 */
.esw-rtc__rate-groups{
  display:grid;
  gap:14px;
}

.esw-rtc__rate-group{
  padding:14px;
  border:1px solid var(--esw-ui-outline,var(--esw-border));
  border-radius:14px;
  min-width:0;
}

.esw-rtc__rate-group-title{
  display:block;
  margin-bottom:10px;
  font-size:15px;
  line-height:1.2;
}

.esw-rtc__rate-fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  min-width:0;
}

.esw-rtc__rate-field{
  display:block;
  min-width:0;
}

.esw-rtc__rate-field > span{
  display:block;
  margin:0 0 6px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--esw-muted);
}

.esw-rtc__rate-field .esw-rtc__pref-input{
  width:100%;
  max-width:100%;
  min-width:0;
}

/* These new fields use the original proven overlay pattern, but now have far
 * more available width because the left-hand Level column is gone. */
.esw-rtc__rate-field .esw-rtc__pref-input{
  position:relative !important;
  display:block !important;
  padding:0 !important;
  overflow:visible !important;
}

.esw-rtc__rate-field .esw-rtc__pref-input > span{
  position:absolute !important;
  left:10px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  z-index:1;
  font-size:12px !important;
}

.esw-rtc__rate-field .esw-rtc__pref-input > small{
  position:absolute !important;
  right:9px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  z-index:1;
  font-size:10px !important;
  white-space:nowrap;
}

.esw-rtc__rate-field .esw-rtc__pref-input input{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  min-height:48px;
  padding:9px 38px 9px 25px !important;
  font-size:18px !important;
  line-height:1.1 !important;
  letter-spacing:0 !important;
  text-align:left !important;
  box-sizing:border-box;
}

@media(max-width:430px){
  .esw-rtc__rate-group{
    padding:12px;
  }

  .esw-rtc__rate-fields{
    gap:8px;
  }

  .esw-rtc__rate-field .esw-rtc__pref-input input{
    font-size:16px !important;
    padding-left:24px !important;
    padding-right:34px !important;
  }
}

@media(max-width:330px){
  .esw-rtc__rate-fields{
    grid-template-columns:1fr;
  }
}


/* v2.10.0 — Rideshare commitment timer + contextual Help */
.esw-rtc__workday-head-tools{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:0 0 auto}
.esw-rtc__timer-help{position:relative}
.esw-rtc__timer-help>summary{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--esw-ui-outline,var(--esw-border));border-radius:999px;background:transparent;color:var(--esw-text);font-size:14px;font-weight:900;cursor:pointer;list-style:none;user-select:none}
.esw-rtc__timer-help>summary::-webkit-details-marker{display:none}
.esw-rtc__timer-help[open]>summary{background:rgba(37,99,235,.10)}
.esw-rtc__timer-help-panel{position:absolute;z-index:40;top:38px;right:0;width:min(420px,calc(100vw - 44px));padding:14px;border:1px solid var(--esw-ui-outline,var(--esw-border));border-radius:14px;background:var(--esw-card,#fff);color:var(--esw-text);box-shadow:0 14px 34px rgba(15,23,42,.18);font-size:11px;line-height:1.5}
.esw-rtc__timer-help-panel>strong{display:block;margin-bottom:8px;font-size:13px}
.esw-rtc__timer-help-panel p{margin:7px 0!important;color:var(--esw-text)!important;font-size:11px!important;line-height:1.5!important}
.esw-rtc__timer-help-panel .esw-rtc__timer-help-key{margin-top:10px!important;padding-top:10px;border-top:1px solid var(--esw-border)}
.esw-rtc__timer-help-panel a{display:inline-block;margin-top:6px;color:#2563eb;text-decoration:underline;text-underline-offset:2px}
.esw-rtc--dark .esw-rtc__timer-help-panel{background:#111820;box-shadow:0 14px 34px rgba(0,0,0,.42)}
.esw-rtc__workday-clocks--five{grid-template-columns:1.25fr repeat(4,minmax(0,1fr))}
.esw-rtc__commitment-strip{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;padding:8px 10px;border:1px solid var(--esw-ui-outline,var(--esw-border));border-radius:10px;background:rgba(37,99,235,.04);color:var(--esw-muted);font-size:10px;font-weight:800;letter-spacing:.02em}
.esw-rtc__commitment-strip strong{color:var(--esw-text);font-size:12px;font-variant-numeric:tabular-nums}
@media(max-width:720px){
  .esw-rtc__workday-clocks--five{grid-template-columns:repeat(2,minmax(0,1fr))}
  .esw-rtc__workday-clocks--five .esw-rtc__workday-clock--main{grid-column:1/-1}
}
@media(max-width:560px){
  .esw-rtc__workday-head{align-items:flex-start}
  .esw-rtc__workday-head-tools{gap:6px}
  .esw-rtc__timer-help-panel{position:fixed;top:50%;right:auto;left:50%;transform:translate(-50%,-50%);width:min(400px,calc(100vw - 28px));max-height:78vh;overflow:auto}
}


/* v2.10.1 — paired, bounded Workday Timer cards */
.esw-rtc__workday-clocks--paired{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:9px;
  width:100%;
  max-width:640px;
  margin:15px auto 0;
}
.esw-rtc__workday-clocks--paired .esw-rtc__workday-clock{
  width:100%;
  min-width:0;
  max-width:none;
  overflow:hidden;
}
.esw-rtc__workday-clocks--paired .esw-rtc__workday-clock > strong{
  width:100%;
  max-width:100%;
  overflow:visible;
  text-align:left;
  font-size:clamp(20px,3.4vw,28px) !important;
  letter-spacing:-.045em !important;
}
.esw-rtc__workday-clocks--paired .esw-rtc__workday-clock--commitment{
  border-color:rgba(37,99,235,.22);
  background:rgba(37,99,235,.045);
}
.esw-rtc__workday-actions--six{
  width:100%;
  max-width:640px;
  margin-left:auto;
  margin-right:auto;
}
@media(max-width:560px){
  .esw-rtc__workday-clocks--paired{gap:7px}
  .esw-rtc__workday-clocks--paired .esw-rtc__workday-clock{padding:10px 8px}
  .esw-rtc__workday-clocks--paired .esw-rtc__workday-clock > strong{
    font-size:clamp(18px,6vw,24px) !important;
    letter-spacing:-.05em !important;
  }
  .esw-rtc__workday-clocks--paired .esw-rtc__workday-clock > span{
    font-size:8px;
    letter-spacing:.045em;
  }
}
@media(max-width:340px){
  .esw-rtc__workday-clocks--paired .esw-rtc__workday-clock > strong{
    font-size:clamp(16px,5.6vw,20px) !important;
  }
}


/* v2.10.2 — compact Commitment label + centered timer values */
.esw-rtc__workday-clocks--paired .esw-rtc__workday-clock > strong{
  display:block;
  margin-left:auto;
  margin-right:auto;
  text-align:center !important;
}


/* v2.10.3 — Workday Timer Help: dark-mode isolation, mobile close, and viewport-safe modal */
.esw-rtc__timer-help[open]{
  z-index:10020;
}

.esw-rtc__timer-help-backdrop{
  display:none;
  position:fixed;
  inset:0;
  z-index:10010;
  width:100vw;
  height:100vh;
  margin:0;
  padding:0;
  border:0 !important;
  border-radius:0 !important;
  background:rgba(15,23,42,.48) !important;
  cursor:default;
  appearance:none;
  -webkit-appearance:none;
}

.esw-rtc__timer-help[open] .esw-rtc__timer-help-backdrop{
  display:block;
}

.esw-rtc__timer-help-panel{
  z-index:10020 !important;
  isolation:isolate;
  overflow-wrap:anywhere;
}

.esw-rtc__timer-help-close{
  position:absolute;
  top:10px;
  right:10px;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  min-width:34px;
  min-height:34px;
  margin:0;
  padding:0 0 2px;
  border:1px solid var(--esw-ui-outline,var(--esw-border)) !important;
  border-radius:999px;
  background:var(--esw-card,#fff) !important;
  color:var(--esw-text,#111827) !important;
  font:700 24px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  cursor:pointer;
  z-index:2;
}

.esw-rtc__timer-help-panel>strong{
  padding-right:42px;
}

.esw-rtc--dark .esw-rtc__timer-help-panel,
body.esw-rtc-page-dark .esw-rtc .esw-rtc__timer-help-panel{
  background:#111820 !important;
  color:#f8fafc !important;
  border-color:#f8fafc !important;
}

.esw-rtc--dark .esw-rtc__timer-help-panel p,
.esw-rtc--dark .esw-rtc__timer-help-panel strong,
body.esw-rtc-page-dark .esw-rtc .esw-rtc__timer-help-panel p,
body.esw-rtc-page-dark .esw-rtc .esw-rtc__timer-help-panel strong{
  color:#f8fafc !important;
}

.esw-rtc--dark .esw-rtc__timer-help-panel a,
body.esw-rtc-page-dark .esw-rtc .esw-rtc__timer-help-panel a{
  color:#93c5fd !important;
}

.esw-rtc--dark .esw-rtc__timer-help-close,
body.esw-rtc-page-dark .esw-rtc .esw-rtc__timer-help-close{
  background:#111820 !important;
  color:#f8fafc !important;
  border-color:#f8fafc !important;
}

@media(max-width:560px){
  .esw-rtc__timer-help-panel{
    position:fixed !important;
    top:50% !important;
    left:50% !important;
    right:auto !important;
    transform:translate(-50%,-50%) !important;
    width:min(420px,calc(100vw - 28px)) !important;
    max-width:calc(100vw - 28px) !important;
    max-height:min(78vh,680px) !important;
    padding:18px 16px 16px !important;
    overflow-y:auto !important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }

  .esw-rtc__timer-help-close{
    position:sticky;
    top:0;
    float:right;
    margin:-5px -3px 4px 10px;
  }

  .esw-rtc__timer-help-panel>strong{
    padding-right:0;
  }
}


/* v2.10.4 — Native top-layer Workday Timer Help.
 * <dialog>.showModal() escapes theme/container overflow and transformed ancestors,
 * which prevents iPhone clipping inside the calculator.
 */
.esw-rtc__timer-help{
  position:relative;
}

.esw-rtc__timer-help-trigger{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  min-width:30px;
  min-height:30px;
  margin:0;
  padding:0 0 1px;
  border:1px solid var(--esw-ui-outline,var(--esw-border)) !important;
  border-radius:999px;
  background:transparent !important;
  color:var(--esw-text) !important;
  font:900 14px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
}

.esw-rtc__timer-help-trigger:hover,
.esw-rtc__timer-help-trigger:focus-visible{
  background:rgba(37,99,235,.10) !important;
}

.esw-rtc__timer-help-dialog{
  position:fixed !important;
  inset:0 !important;
  width:min(440px,calc(100vw - 28px)) !important;
  max-width:calc(100vw - 28px) !important;
  height:auto !important;
  max-height:min(82dvh,720px) !important;
  margin:auto !important;
  padding:0 !important;
  overflow:visible !important;
  border:0 !important;
  border-radius:16px !important;
  background:transparent !important;
  color:inherit !important;
}

.esw-rtc__timer-help-dialog:not([open]){
  display:none !important;
}

.esw-rtc__timer-help-dialog::backdrop{
  background:rgba(15,23,42,.58);
}

.esw-rtc__timer-help-dialog .esw-rtc__timer-help-panel{
  position:relative !important;
  inset:auto !important;
  transform:none !important;
  width:100% !important;
  max-width:none !important;
  max-height:min(82dvh,720px) !important;
  margin:0 !important;
  padding:20px 18px 18px !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  border:1px solid var(--esw-ui-outline,var(--esw-border)) !important;
  border-radius:16px !important;
  background:var(--esw-card,#fff) !important;
  color:var(--esw-text,#111827) !important;
  box-shadow:0 18px 48px rgba(15,23,42,.28) !important;
  box-sizing:border-box !important;
}

.esw-rtc__timer-help-dialog .esw-rtc__timer-help-panel>strong{
  display:block;
  margin:0 44px 10px 0;
  padding:0;
  font-size:15px;
  line-height:1.3;
  color:inherit !important;
}

.esw-rtc__timer-help-dialog .esw-rtc__timer-help-panel p{
  margin:8px 0 !important;
  font-size:13px !important;
  line-height:1.55 !important;
  color:inherit !important;
}

.esw-rtc__timer-help-dialog .esw-rtc__timer-help-panel .esw-rtc__timer-help-key{
  margin-top:12px !important;
  padding-top:12px;
  border-top:1px solid var(--esw-border) !important;
}

.esw-rtc__timer-help-dialog .esw-rtc__timer-help-panel a{
  display:inline-block;
  margin-top:8px;
  color:#2563eb !important;
}

.esw-rtc__timer-help-dialog .esw-rtc__timer-help-close{
  position:absolute !important;
  top:12px !important;
  right:12px !important;
  float:none !important;
  width:36px;
  height:36px;
  min-width:36px;
  min-height:36px;
  margin:0 !important;
  padding:0 0 2px !important;
  border:1px solid var(--esw-ui-outline,var(--esw-border)) !important;
  border-radius:999px !important;
  background:var(--esw-card,#fff) !important;
  color:var(--esw-text,#111827) !important;
  font:700 25px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  z-index:2;
}

.esw-rtc--dark .esw-rtc__timer-help-dialog .esw-rtc__timer-help-panel,
body.esw-rtc-page-dark .esw-rtc .esw-rtc__timer-help-dialog .esw-rtc__timer-help-panel{
  background:#111820 !important;
  color:#f8fafc !important;
  border-color:#f8fafc !important;
}

.esw-rtc--dark .esw-rtc__timer-help-dialog .esw-rtc__timer-help-close,
body.esw-rtc-page-dark .esw-rtc .esw-rtc__timer-help-dialog .esw-rtc__timer-help-close{
  background:#111820 !important;
  color:#f8fafc !important;
  border-color:#f8fafc !important;
}

.esw-rtc--dark .esw-rtc__timer-help-dialog .esw-rtc__timer-help-panel a,
body.esw-rtc-page-dark .esw-rtc .esw-rtc__timer-help-dialog .esw-rtc__timer-help-panel a{
  color:#93c5fd !important;
}

@media(max-width:560px){
  .esw-rtc__timer-help-dialog{
    width:calc(100vw - 24px) !important;
    max-width:calc(100vw - 24px) !important;
    max-height:calc(100dvh - 32px) !important;
  }

  .esw-rtc__timer-help-dialog .esw-rtc__timer-help-panel{
    max-height:calc(100dvh - 32px) !important;
    padding:18px 16px 16px !important;
  }

  .esw-rtc__timer-help-dialog .esw-rtc__timer-help-panel p{
    font-size:13px !important;
  }
}


/* v2.11.0 — Today's Earnings Goal */
.esw-rtc__earnings-goal{
  max-width:680px;
  margin-inline:auto;
}

.esw-rtc__earnings-goal-head p{
  margin:5px 0 0;
}

.esw-rtc__goal-setter{
  width:min(100%,320px);
  margin:16px auto 14px;
  text-align:center;
}

.esw-rtc__goal-setter>label{
  display:block;
  margin-bottom:7px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--esw-muted);
}

.esw-rtc__goal-input{
  width:100%;
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:2px;
  padding:10px 16px;
  border:1px solid var(--esw-ui-outline,var(--esw-border));
  border-radius:13px;
  background:var(--esw-card);
  color:var(--esw-text);
  box-sizing:border-box;
  overflow:hidden;
}

.esw-rtc__goal-input>span{
  position:static;
  transform:none;
  flex:0 0 auto;
  font-size:22px;
  line-height:1;
  font-weight:800;
  pointer-events:none;
}

.esw-rtc__goal-input input{
  width:calc(var(--esw-goal-ch,3) * 1ch + .45ch) !important;
  max-width:calc(100% - 28px) !important;
  min-width:3ch;
  min-height:30px;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0;
  background:transparent !important;
  color:var(--esw-text);
  box-shadow:none !important;
  font-size:22px !important;
  line-height:1.1;
  font-weight:800;
  text-align:left;
  box-sizing:content-box;
}

.esw-rtc__goal-progress-card{
  width:min(100%,560px);
  margin:0 auto 12px;
  padding:14px;
  border:1px solid var(--esw-ui-outline,var(--esw-border));
  border-radius:14px;
  background:var(--esw-soft);
}

.esw-rtc__goal-progress-top{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}

.esw-rtc__goal-progress-top>div{
  min-width:0;
}

.esw-rtc__goal-progress-top small,
.esw-rtc__goal-metric small{
  display:block;
  margin-bottom:4px;
  font-size:10px;
  font-weight:900;
  letter-spacing:.055em;
  color:var(--esw-muted);
}

.esw-rtc__goal-progress-top strong{
  display:block;
  line-height:1.25;
  overflow-wrap:anywhere;
}

.esw-rtc__goal-percent{
  flex:0 0 auto;
  font-size:22px;
}

.esw-rtc__goal-progress{
  width:100%;
  height:13px;
  overflow:hidden;
  border:1px solid var(--esw-ui-outline,var(--esw-border));
  border-radius:999px;
  background:var(--esw-card);
}

.esw-rtc__goal-progress>span{
  display:block;
  width:0;
  height:100%;
  border-radius:inherit;
  background:#71AC3D;
  transition:width .35s ease;
}

.esw-rtc__goal-metrics{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  width:min(100%,560px);
  margin:0 auto;
}

.esw-rtc__goal-metric{
  min-width:0;
  padding:12px;
  border:1px solid var(--esw-ui-outline,var(--esw-border));
  border-radius:13px;
  text-align:center;
  background:var(--esw-card);
}

.esw-rtc__goal-metric strong{
  display:block;
  font-size:18px;
  line-height:1.2;
  overflow-wrap:anywhere;
}

.esw-rtc__goal-metric span{
  display:block;
  margin-top:4px;
  font-size:10px;
  color:var(--esw-muted);
}

.esw-rtc__goal-insight{
  width:min(100%,560px);
  margin:12px auto 0;
  padding:12px 14px;
  border:1px solid var(--esw-ui-outline,var(--esw-border));
  border-radius:13px;
  line-height:1.45;
  text-align:center;
  background:var(--esw-soft);
}

.esw-rtc__goal-insight.is-good,
.esw-rtc__goal-insight.is-reached{
  background:rgba(113,172,61,.14);
}

.esw-rtc__goal-insight.is-watch{
  background:rgba(255,212,0,.14);
}

.esw-rtc__goal-context{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:8px 18px;
  width:min(100%,560px);
  margin:12px auto 0;
  font-size:11px;
  color:var(--esw-muted);
  text-align:center;
}

.esw-rtc__goal-note{
  width:min(100%,560px);
  margin:12px auto 0 !important;
  font-size:10px !important;
  line-height:1.45;
  color:var(--esw-muted) !important;
  text-align:center;
}

@media(max-width:560px){
  .esw-rtc__goal-setter{
    width:100%;
    max-width:280px;
  }

  .esw-rtc__goal-input input{
    font-size:20px !important;
  }

  .esw-rtc__goal-progress-top{
    align-items:center;
  }

  .esw-rtc__goal-progress-top strong{
    font-size:14px;
  }

  .esw-rtc__goal-percent{
    font-size:20px !important;
  }

  .esw-rtc__goal-metric strong{
    font-size:17px;
  }
}

@media(max-width:340px){
  .esw-rtc__goal-metrics{
    grid-template-columns:1fr;
  }
}


/* v2.12.0 — Daily Analysis dashboard */
.esw-rtc__analysis{max-width:720px;margin-inline:auto;min-width:0}.esw-rtc__analysis-empty{padding:20px;border:1px solid var(--esw-ui-outline,var(--esw-border));border-radius:14px;text-align:center;color:var(--esw-muted)}
.esw-rtc__analysis-block{margin:0 0 18px;padding:16px;border:1px solid var(--esw-ui-outline,var(--esw-border));border-radius:16px;background:var(--esw-card);min-width:0}.esw-rtc__analysis-heading{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:12px}.esw-rtc__analysis-heading strong{font-size:17px}.esw-rtc__analysis-heading span{font-size:11px;color:var(--esw-muted);text-align:right;max-width:48%}
.esw-rtc__analysis-grid{display:grid;gap:10px;min-width:0}.esw-rtc__analysis-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.esw-rtc__analysis-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.esw-rtc__analysis-kpi{padding:13px 10px;border:1px solid var(--esw-ui-outline,var(--esw-border));border-radius:13px;text-align:center;min-width:0;background:var(--esw-soft)}.esw-rtc__analysis-kpi small{display:block;font-size:9px;font-weight:900;letter-spacing:.045em;color:var(--esw-muted);margin-bottom:5px}.esw-rtc__analysis-kpi strong{display:block;font-size:20px;line-height:1.15;overflow-wrap:anywhere}.esw-rtc__analysis-kpi span{display:block;font-size:9px;color:var(--esw-muted);margin-top:4px}
.esw-rtc__analysis-callout,.esw-rtc__analysis-question{margin-top:11px;padding:12px 14px;border:1px solid var(--esw-ui-outline,var(--esw-border));border-radius:13px;line-height:1.45;background:var(--esw-soft)}.esw-rtc__analysis-question{font-weight:800;text-align:center;background:rgba(113,172,61,.12)}
.esw-rtc__timebar{display:flex;width:100%;height:16px;overflow:hidden;border:1px solid var(--esw-ui-outline,var(--esw-border));border-radius:999px;margin:2px 0 12px;background:var(--esw-soft)}.esw-rtc__timebar span{height:100%}.esw-rtc__timebar .is-rideshare{background:#71AC3D}.esw-rtc__timebar .is-task{background:#2563eb}.esw-rtc__timebar .is-break{background:#f97316}.esw-rtc__timebar .is-project{background:#8b5cf6}
.esw-rtc__sessions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.esw-rtc__session{padding:12px;border:1px solid var(--esw-ui-outline,var(--esw-border));border-radius:13px;min-width:0}.esw-rtc__session small,.esw-rtc__session strong,.esw-rtc__session span{display:block}.esw-rtc__session small{font-size:9px;font-weight:900;color:var(--esw-muted)}.esw-rtc__session strong{margin:4px 0;font-size:14px}.esw-rtc__session span{font-size:11px;color:var(--esw-muted);overflow-wrap:anywhere}.esw-rtc__analysis-footnote,.esw-rtc__analysis-muted{font-size:10px;color:var(--esw-muted);line-height:1.45}.esw-rtc__analysis-insights{display:grid;gap:9px}.esw-rtc__analysis-insights>div{padding:12px 14px;border-left:4px solid #71AC3D;background:var(--esw-soft);border-radius:0 11px 11px 0;line-height:1.45}
.esw-rtc__whatif-card{padding:14px;border:1px solid var(--esw-ui-outline,var(--esw-border));border-radius:14px;margin-top:11px;background:var(--esw-soft)}.esw-rtc__whatif-card>strong{font-size:15px}.esw-rtc__whatif-card>p{font-size:11px;color:var(--esw-muted);line-height:1.45}.esw-rtc__whatif-input-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.esw-rtc__whatif-input{display:block;min-width:0}.esw-rtc__whatif-input>span{display:block;font-size:10px;font-weight:800;margin-bottom:5px}.esw-rtc__whatif-input>div{position:relative;display:flex;align-items:center;gap:5px}.esw-rtc__whatif-input input{width:100%;min-width:0;min-height:44px;padding:8px 10px;border:1px solid var(--esw-ui-outline,var(--esw-border));border-radius:10px;background:var(--esw-card);color:var(--esw-text);font-size:16px}.esw-rtc__whatif-input b,.esw-rtc__whatif-input small{font-size:11px}.esw-rtc__whatif-result{margin-top:10px;font-size:12px;line-height:1.5}.esw-rtc__analysis-actions{display:grid;grid-template-columns:repeat(2,minmax(0,240px));justify-content:center;gap:10px;margin-top:16px}
.esw-rtc__ride-time-edit{margin-top:8px}
@media(max-width:620px){.esw-rtc__analysis-grid--3{grid-template-columns:1fr}.esw-rtc__analysis-grid--2,.esw-rtc__sessions,.esw-rtc__whatif-input-row{grid-template-columns:repeat(2,minmax(0,1fr))}.esw-rtc__analysis-heading{display:block}.esw-rtc__analysis-heading span{display:block;max-width:none;text-align:left;margin-top:3px}.esw-rtc__analysis-kpi strong{font-size:18px}}
@media(max-width:390px){.esw-rtc__analysis-grid--2,.esw-rtc__sessions,.esw-rtc__whatif-input-row,.esw-rtc__analysis-actions{grid-template-columns:1fr}.esw-rtc__analysis-kpi strong{font-size:17px}}


/* v2.13.0 — Daily Analysis clarity, compact Saved Ride controls, and bottom section closers */
.esw-rtc__panel-close-row{
  display:flex;
  justify-content:flex-end;
  width:100%;
  margin-top:16px;
  padding-top:12px;
  border-top:1px solid var(--esw-ui-outline,var(--esw-border));
}
.esw-rtc__section-close{
  appearance:none;
  min-height:38px;
  padding:7px 11px;
  border:1px solid var(--esw-ui-outline,var(--esw-border));
  border-radius:10px;
  background:var(--esw-soft);
  color:var(--esw-text);
  font-size:11px;
  font-weight:850;
  line-height:1.2;
  cursor:pointer;
}
.esw-rtc__section-close::after{
  content:"  ▲";
  font-size:.8em;
}
.esw-rtc__section-close:focus-visible{
  outline:3px solid rgba(37,99,235,.28);
  outline-offset:2px;
}

.esw-rtc__ride-time-edit .esw-rtc__tip-edit-controls{
  grid-template-columns:minmax(105px,150px) auto;
  justify-content:start;
  width:min(100%,270px);
}
.esw-rtc__history-row .esw-rtc__time-update{
  width:auto;
  min-width:0;
  min-height:34px;
  padding:5px 8px;
  white-space:nowrap;
  font-size:9px;
}
.esw-rtc__ride-time-edit input[type="time"]{
  width:100%;
  min-width:0;
}

.esw-rtc__hundred-copy{
  margin-bottom:12px;
  font-size:12px;
  line-height:1.55;
}
.esw-rtc__hundred-bar{
  display:flex;
  width:100%;
  min-height:22px;
  overflow:hidden;
  border:1px solid var(--esw-ui-outline,var(--esw-border));
  border-radius:999px;
  background:var(--esw-soft);
}
.esw-rtc__hundred-bar span{display:block;min-width:0}
.esw-rtc__hundred-bar .is-cost{background:#f97316}
.esw-rtc__hundred-bar .is-tax{background:#2563eb}
.esw-rtc__hundred-bar .is-remain{background:#71AC3D}
.esw-rtc__hundred-legend{
  display:grid;
  gap:7px;
  margin-top:11px;
}
.esw-rtc__hundred-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:9px;
  align-items:center;
  min-width:0;
  padding:9px 10px;
  border:1px solid var(--esw-ui-outline,var(--esw-border));
  border-radius:11px;
  background:var(--esw-soft);
}
.esw-rtc__hundred-row span{
  min-width:0;
  font-size:11px;
  overflow-wrap:anywhere;
}
.esw-rtc__hundred-row strong{
  font-size:13px;
  white-space:nowrap;
}
.esw-rtc__hundred-row small{
  min-width:48px;
  text-align:right;
  font-size:10px;
  font-weight:850;
  color:var(--esw-muted);
}

.esw-rtc__take-job-rate{
  width:min(100%,460px);
  margin:0 auto 10px;
  padding:16px 12px;
  border:1px solid var(--esw-ui-outline,var(--esw-border));
  border-radius:14px;
  text-align:center;
  background:var(--esw-soft);
}
.esw-rtc__take-job-rate small,
.esw-rtc__take-job-rate strong,
.esw-rtc__take-job-rate span{
  display:block;
}
.esw-rtc__take-job-rate small{
  margin-bottom:6px;
  font-size:9px;
  font-weight:900;
  letter-spacing:.05em;
  color:var(--esw-muted);
}
.esw-rtc__take-job-rate strong{
  font-size:clamp(26px,7vw,38px);
  line-height:1.05;
}
.esw-rtc__take-job-rate span{
  margin-top:6px;
  font-size:10px;
  line-height:1.4;
  color:var(--esw-muted);
}

.esw-rtc__job-compare-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  margin-top:12px;
}
.esw-rtc__job-compare-card,
.esw-rtc__job-after-cost{
  min-width:0;
  padding:12px 10px;
  border:1px solid var(--esw-ui-outline,var(--esw-border));
  border-radius:12px;
  text-align:center;
  background:var(--esw-card);
}
.esw-rtc__job-compare-card small,
.esw-rtc__job-compare-card strong,
.esw-rtc__job-compare-card span,
.esw-rtc__job-after-cost small,
.esw-rtc__job-after-cost strong,
.esw-rtc__job-after-cost span{
  display:block;
}
.esw-rtc__job-compare-card small,
.esw-rtc__job-after-cost small{
  font-size:8.5px;
  font-weight:900;
  letter-spacing:.04em;
  color:var(--esw-muted);
}
.esw-rtc__job-compare-card strong,
.esw-rtc__job-after-cost strong{
  margin:5px 0 3px;
  font-size:18px;
  overflow-wrap:anywhere;
}
.esw-rtc__job-compare-card span,
.esw-rtc__job-after-cost span{
  font-size:10px;
  color:var(--esw-muted);
}
.esw-rtc__job-after-cost{
  width:min(100%,360px);
  margin:9px auto 0;
  background:rgba(113,172,61,.11);
}

@media(max-width:460px){
  .esw-rtc__ride-time-edit .esw-rtc__tip-edit-controls{
    grid-template-columns:minmax(0,1fr) auto;
    width:100%;
  }
  .esw-rtc__hundred-row{
    grid-template-columns:minmax(0,1fr) auto;
  }
  .esw-rtc__hundred-row small{
    grid-column:2;
  }
}
@media(max-width:390px){
  .esw-rtc__job-compare-grid{
    grid-template-columns:1fr;
  }
}


/* v2.14.0 — terminology, analysis clarity, and consistent section-close behavior */
.esw-rtc__section-close.esw-rtc__section-close--icon{
  width:38px;
  height:38px;
  min-width:38px;
  min-height:38px;
  padding:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--esw-ui-outline,var(--esw-border));
  border-radius:50%;
  background:var(--esw-soft);
  color:var(--esw-text);
  font-size:24px;
  font-weight:500;
  line-height:1;
  cursor:pointer;
}
.esw-rtc__section-close.esw-rtc__section-close--icon::after{
  content:none;
}

/* $100 analysis cards: title, amount, percentage — all centered. */
.esw-rtc__hundred-legend{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:12px;
}
.esw-rtc__hundred-row{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-width:0;
  min-height:116px;
  padding:12px 10px;
  border:1px solid var(--esw-ui-outline,var(--esw-border));
  border-radius:13px;
  background:var(--esw-soft);
  text-align:center;
}
.esw-rtc__hundred-row span{
  order:1;
  width:100%;
  font-size:9.5px;
  line-height:1.3;
  font-weight:800;
}
.esw-rtc__hundred-row strong{
  order:2;
  font-size:24px;
  line-height:1.05;
  white-space:nowrap;
}
.esw-rtc__hundred-row small{
  order:3;
  min-width:0;
  font-size:12px;
  font-weight:850;
  color:var(--esw-muted);
}

/* Keep the Saved Ride time action compact. */
.esw-rtc__history-row .esw-rtc__time-update{
  width:auto;
  min-width:0;
  min-height:34px;
  padding:5px 8px;
  white-space:nowrap;
  font-size:9px;
}

@media(max-width:520px){
  .esw-rtc__hundred-legend{
    grid-template-columns:1fr;
  }
  .esw-rtc__hundred-row{
    min-height:98px;
  }
}


/* v2.14.1 — Saved Ride Details responsive control cleanup */
.esw-rtc__history-row .esw-rtc__tip-edit-controls,
.esw-rtc__history-row .esw-rtc__ride-time-edit .esw-rtc__tip-edit-controls{
  display:flex !important;
  align-items:center;
  justify-content:flex-start;
  flex-wrap:wrap;
  gap:8px;
  width:100% !important;
  max-width:100%;
  min-width:0;
}

.esw-rtc__history-row .esw-rtc__tip-edit-controls input{
  flex:0 1 150px;
  width:150px !important;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
}

.esw-rtc__history-row .esw-rtc__ride-time-edit input[type="time"]{
  flex:0 1 150px;
  width:150px !important;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
}

.esw-rtc__history-row .esw-rtc__tip-update,
.esw-rtc__history-row .esw-rtc__time-update{
  flex:0 0 auto !important;
  width:auto !important;
  max-width:100%;
  min-width:0 !important;
  min-height:34px;
  padding:6px 10px !important;
  border-radius:9px;
  white-space:nowrap;
  font-size:10px !important;
  line-height:1.15;
}

@media (max-width:480px){
  .esw-rtc__history-row .esw-rtc__tip-edit-controls input,
  .esw-rtc__history-row .esw-rtc__ride-time-edit input[type="time"]{
    flex:1 1 120px;
    width:auto !important;
    max-width:165px;
  }
  .esw-rtc__history-row .esw-rtc__tip-update,
  .esw-rtc__history-row .esw-rtc__time-update{
    flex:0 0 auto !important;
  }
}

@media (max-width:340px){
  .esw-rtc__history-row .esw-rtc__tip-edit-controls,
  .esw-rtc__history-row .esw-rtc__ride-time-edit .esw-rtc__tip-edit-controls{
    align-items:stretch;
  }
  .esw-rtc__history-row .esw-rtc__tip-edit-controls input,
  .esw-rtc__history-row .esw-rtc__ride-time-edit input[type="time"]{
    flex:1 1 100%;
    width:100% !important;
    max-width:100%;
  }
  .esw-rtc__history-row .esw-rtc__tip-update,
  .esw-rtc__history-row .esw-rtc__time-update{
    align-self:flex-start;
  }
}

/* Match the bottom minus control to the existing top disclosure control. */
.esw-rtc__section-close.esw-rtc__section-close--icon{
  width:32px !important;
  height:32px !important;
  min-width:32px !important;
  min-height:32px !important;
  padding:0 !important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--esw-ui-outline,var(--esw-border));
  border-radius:50%;
  background:var(--esw-soft);
  color:var(--esw-text);
  font-size:19px !important;
  font-weight:500;
  line-height:1;
}
.esw-rtc__section-close.esw-rtc__section-close--icon::after{content:none !important;}


/* v2.14.3 — authoritative Saved Ride Details + section-control sizing */

/*
 * Bottom close button is only an invisible wrapper.
 * The visible child uses the exact same .esw-rtc__section-panel-icon class as
 * the top control, so desktop/mobile sizing comes from one shared rule.
 */
.esw-rtc__section-close.esw-rtc__section-close--icon{
  appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:inherit;
  box-shadow:none !important;
  line-height:1;
}
.esw-rtc__section-close.esw-rtc__section-close--icon::before,
.esw-rtc__section-close.esw-rtc__section-close--icon::after{
  content:none !important;
}
.esw-rtc__section-close.esw-rtc__section-close--icon .esw-rtc__section-panel-icon{
  margin:0;
}

/*
 * Actual Ride Time: intentionally compact. The field only needs enough room
 * for a localized time such as "5:44 PM"; Update Time stays beside it.
 */
.esw-rtc__history-row .esw-rtc__ride-time-edit .esw-rtc__tip-edit-controls{
  display:grid !important;
  grid-template-columns:118px auto !important;
  align-items:center;
  justify-content:start;
  gap:8px;
  width:auto !important;
  max-width:100%;
  min-width:0;
}

.esw-rtc__history-row .esw-rtc__ride-time-edit input[type="time"]{
  width:118px !important;
  min-width:118px !important;
  max-width:118px !important;
  min-height:38px;
  padding:6px 7px !important;
  box-sizing:border-box;
  font-size:16px !important; /* Prevent iOS focus zoom. */
}


/* Preserve the compact side-by-side layout on normal phones. */
@media (max-width:480px){
  .esw-rtc__history-row .esw-rtc__ride-time-edit .esw-rtc__tip-edit-controls{
    grid-template-columns:112px auto !important;
    gap:7px;
  }

  .esw-rtc__history-row .esw-rtc__ride-time-edit input[type="time"]{
    width:112px !important;
    min-width:112px !important;
    max-width:112px !important;
  }
}

/* Only stack on exceptionally narrow layouts where the two controls cannot fit. */
@media (max-width:285px){
  .esw-rtc__history-row .esw-rtc__ride-time-edit .esw-rtc__tip-edit-controls{
    grid-template-columns:1fr !important;
  }

  .esw-rtc__history-row .esw-rtc__ride-time-edit input[type="time"]{
    width:100% !important;
    min-width:0 !important;
    max-width:150px !important;
  }

  .esw-rtc__history-row .esw-rtc__ride-time-edit .esw-rtc__time-update{
    justify-self:start;
  }
}


/* v2.14.4 — Update Tip and Update Time use one identical button size */
.esw-rtc__history-row .esw-rtc__tip-update,
.esw-rtc__history-row .esw-rtc__time-update{
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  min-height:34px !important;
  height:auto !important;
  padding:6px 10px !important;
  border-radius:9px !important;
  white-space:nowrap !important;
  font-size:10px !important;
  line-height:1.15 !important;
  flex:0 0 auto !important;
  box-sizing:border-box !important;
}


/* v2.15.0 — saved offer editor matches the existing compact tip editor */
.esw-rtc__history-row .esw-rtc__offer-edit{
  margin-top:8px;
}
.esw-rtc__history-row .esw-rtc__offer-update{
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  min-height:34px !important;
  height:auto !important;
  padding:6px 10px !important;
  border-radius:9px !important;
  white-space:nowrap !important;
  font-size:10px !important;
  line-height:1.15 !important;
  flex:0 0 auto !important;
  box-sizing:border-box !important;
}


/* v2.15.1 — compact Saved Ride Offer editor */
.esw-rtc__history-row .esw-rtc__offer-edit .esw-rtc__tip-edit-controls{
  display:grid !important;
  grid-template-columns:auto minmax(0, 1fr) auto !important;
  align-items:center;
  justify-content:start;
  gap:8px;
  width:min(100%, 390px) !important;
  max-width:100%;
  min-width:0;
}

.esw-rtc__history-row .esw-rtc__offer-edit input{
  width:118px !important;
  min-width:118px !important;
  max-width:118px !important;
  box-sizing:border-box;
}

.esw-rtc__history-row .esw-rtc__offer-update{
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  min-height:34px !important;
  height:auto !important;
  padding:6px 10px !important;
  border-radius:9px !important;
  white-space:nowrap !important;
  font-size:10px !important;
  line-height:1.15 !important;
  box-sizing:border-box !important;
}

/* Normal phones: keep Offer Amount and Update Offer on one line. */
@media (max-width:480px){
  .esw-rtc__history-row .esw-rtc__offer-edit .esw-rtc__tip-edit-controls{
    grid-template-columns:auto 112px auto !important;
    gap:7px;
    width:100% !important;
  }

  .esw-rtc__history-row .esw-rtc__offer-edit input{
    width:112px !important;
    min-width:112px !important;
    max-width:112px !important;
  }
}

/* Extreme narrow fallback only. */
@media (max-width:285px){
  .esw-rtc__history-row .esw-rtc__offer-edit .esw-rtc__tip-edit-controls{
    grid-template-columns:auto minmax(0, 1fr) !important;
  }

  .esw-rtc__history-row .esw-rtc__offer-update{
    grid-column:2;
    justify-self:start;
  }

  .esw-rtc__history-row .esw-rtc__offer-edit input{
    width:100% !important;
    min-width:0 !important;
    max-width:150px !important;
  }
}

/* v2.15.4 — In-Depth Analysis: Two Main Takeaways */
.esw-rtc .esw-rtc__takeaways{margin-top:20px}
.esw-rtc .esw-rtc__takeaway-card{margin-top:12px;padding:16px;border:1px solid var(--esw-ui-outline);border-radius:12px}
.esw-rtc .esw-rtc__takeaway-card>small{display:block;font-weight:700;letter-spacing:.03em;margin-bottom:10px}
.esw-rtc .esw-rtc__takeaway-reserves{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}
.esw-rtc .esw-rtc__takeaway-reserves>div{padding:12px;text-align:center;border:1px solid var(--esw-ui-outline);border-radius:10px}
.esw-rtc .esw-rtc__takeaway-reserves span{display:block;font-size:11px;line-height:1.3}
.esw-rtc .esw-rtc__takeaway-reserves strong{display:block;margin-top:5px;font-size:24px;line-height:1.1}
.esw-rtc .esw-rtc__takeaway-closing{display:block;margin-top:12px;text-align:center}
@media(max-width:560px){.esw-rtc .esw-rtc__takeaway-card{padding:13px}.esw-rtc .esw-rtc__takeaway-reserves{grid-template-columns:1fr}.esw-rtc .esw-rtc__takeaway-reserves strong{font-size:22px}}


/* v2.15.5 — local data transfer / backup */
.esw-rtc .esw-rtc__data-transfer{
  margin-top:18px;
  padding:16px;
  border:1px solid var(--esw-ui-outline);
  border-radius:12px;
}
.esw-rtc .esw-rtc__data-transfer-heading strong{
  display:block;
  font-size:14px;
  letter-spacing:.035em;
}
.esw-rtc .esw-rtc__data-transfer-heading span{
  display:block;
  margin-top:4px;
  font-size:13px;
  line-height:1.45;
}
.esw-rtc .esw-rtc__data-transfer-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}
.esw-rtc .esw-rtc__data-transfer-actions .esw-rtc__button{
  flex:0 1 auto;
  min-width:120px;
}
.esw-rtc .esw-rtc__data-transfer-note{
  margin:10px 0 0;
  font-size:12px;
  line-height:1.5;
}
@media(max-width:420px){
  .esw-rtc .esw-rtc__data-transfer-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .esw-rtc .esw-rtc__data-transfer-actions .esw-rtc__button{
    width:100%;
    min-width:0;
  }
}
@media(max-width:285px){
  .esw-rtc .esw-rtc__data-transfer-actions{
    grid-template-columns:1fr;
  }
}


/* v2.15.6 — Tips & Passenger Experience */
.esw-rtc .esw-rtc__passenger-experience{
  margin-top:12px;
  padding:14px;
  border:1px solid var(--esw-ui-outline);
  border-radius:12px;
}
.esw-rtc .esw-rtc__passenger-experience>strong{
  display:block;
  margin-bottom:6px;
}
.esw-rtc .esw-rtc__passenger-experience p{
  margin:0;
  line-height:1.55;
}


/* v2.15.7 — In-Depth Analysis live what-if assumptions */
.esw-rtc .esw-rtc__analysis-assumptions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 14px;
  margin-bottom:14px;
  padding:12px 14px;
  border:1px solid var(--esw-ui-outline);
  border-radius:12px;
}
.esw-rtc .esw-rtc__analysis-assumptions>strong{
  width:100%;
}
.esw-rtc .esw-rtc__analysis-assumptions>span{
  font-size:13px;
}
.esw-rtc .esw-rtc__analysis-assumptions>small{
  width:100%;
  line-height:1.45;
  opacity:.82;
}
@media(max-width:560px){
  .esw-rtc .esw-rtc__analysis-assumptions{
    align-items:flex-start;
    flex-direction:column;
    gap:5px;
  }
}


/* v2.16.0 — English / Spanish language toggle */
.esw-rtc .esw-rtc__language-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-height:34px;
  padding:5px 9px;
  border:1px solid var(--esw-ui-outline);
  border-radius:999px;
  background:transparent;
  color:inherit;
  font:inherit;
  font-size:12px;
  font-weight:700;
  cursor:pointer;
}
.esw-rtc .esw-rtc__language-option{
  opacity:.5;
  transition:opacity .15s ease, transform .15s ease;
}
.esw-rtc .esw-rtc__language-option.is-active{
  opacity:1;
  transform:scale(1.05);
}
.esw-rtc .esw-rtc__language-divider{opacity:.45}
.esw-rtc .esw-rtc__language-toggle:focus-visible{
  outline:2px solid currentColor;
  outline-offset:2px;
}
@media(max-width:420px){
  .esw-rtc .esw-rtc__language-toggle{
    min-height:32px;
    padding:4px 8px;
  }
}


/* v2.18.0 — readable explanatory text without enlarging compact controls */
.esw-rtc .esw-rtc__analysis-footnote{
  font-size:13px;
  line-height:1.55;
}
.esw-rtc .esw-rtc__analysis-muted{
  font-size:12px;
  line-height:1.5;
}
.esw-rtc .esw-rtc__whatif-card>p{
  font-size:13px;
  line-height:1.55;
}
.esw-rtc .esw-rtc__data-transfer-note{
  font-size:13px;
  line-height:1.55;
}
.esw-rtc .esw-rtc__workday-note{
  font-size:12px !important;
  line-height:1.5 !important;
}
.esw-rtc .esw-rtc__pref-note{
  font-size:12px !important;
  line-height:1.5 !important;
}
.esw-rtc .esw-rtc__privacy{
  font-size:12px;
  line-height:1.5;
}
.esw-rtc .esw-rtc__takeaway-card>p{
  font-size:15px;
  line-height:1.55;
}
.esw-rtc .esw-rtc__takeaway-reserves{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.esw-rtc .esw-rtc__takeaway-reserves span{
  font-size:12px;
  line-height:1.35;
}
.esw-rtc .esw-rtc__takeaway-personal{
  background:rgba(113,172,61,.10);
}
@media(max-width:780px){
  .esw-rtc .esw-rtc__takeaway-reserves{
    grid-template-columns:1fr;
  }
}
@media(max-width:560px){
  .esw-rtc .esw-rtc__analysis-footnote,
  .esw-rtc .esw-rtc__whatif-card>p,
  .esw-rtc .esw-rtc__data-transfer-note{
    font-size:14px;
  }
  .esw-rtc .esw-rtc__workday-note,
  .esw-rtc .esw-rtc__pref-note,
  .esw-rtc .esw-rtc__privacy{
    font-size:13px !important;
  }
  .esw-rtc .esw-rtc__takeaway-card>p{
    font-size:16px;
  }
}


/* v2.19.0 — Weekly Overview and local-data protection */
.esw-rtc .esw-rtc__weekly-note{
  margin:8px 0 14px;
  font-size:14px;
  line-height:1.55;
}
.esw-rtc .esw-rtc__weekly-table-wrap{
  width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  border:1px solid var(--esw-ui-outline);
  border-radius:12px;
}
.esw-rtc .esw-rtc__weekly-table{
  width:100%;
  min-width:570px;
  border-collapse:collapse;
  background:var(--esw-card);
  color:var(--esw-text);
}
.esw-rtc .esw-rtc__weekly-table th,
.esw-rtc .esw-rtc__weekly-table td{
  padding:10px 12px;
  border-bottom:1px solid color-mix(in srgb, var(--esw-ui-outline) 28%, transparent);
  text-align:right;
  white-space:nowrap;
  font-size:13px;
}
.esw-rtc .esw-rtc__weekly-table th:first-child,
.esw-rtc .esw-rtc__weekly-table td:first-child{
  text-align:left;
}
.esw-rtc .esw-rtc__weekly-table thead th{
  font-size:11px;
  letter-spacing:.025em;
  font-weight:800;
}
.esw-rtc .esw-rtc__weekly-table tbody tr:last-child th,
.esw-rtc .esw-rtc__weekly-table tbody tr:last-child td{
  border-bottom:0;
}
.esw-rtc .esw-rtc__weekly-table tr.is-today{
  background:rgba(113,172,61,.10);
}
.esw-rtc .esw-rtc__backup-warning{
  margin-top:14px;
  padding:14px 16px;
  border:1px solid #b7791f;
  border-radius:12px;
  background:#fff7d6;
  color:#3b2f11;
}
.esw-rtc.esw-rtc--dark .esw-rtc__backup-warning{
  border-color:#f6c453;
  background:rgba(246,196,83,.10);
  color:var(--esw-text);
}
.esw-rtc .esw-rtc__backup-warning>strong{
  display:block;
  font-size:14px;
  letter-spacing:.035em;
}
.esw-rtc .esw-rtc__backup-warning p{
  margin:8px 0 0;
  font-size:14px;
  line-height:1.55;
}
.esw-rtc .esw-rtc__backup-warning ul{
  margin:8px 0 0 20px;
  padding:0;
  font-size:14px;
  line-height:1.55;
}
@media(max-width:560px){
  .esw-rtc .esw-rtc__weekly-note,
  .esw-rtc .esw-rtc__backup-warning p,
  .esw-rtc .esw-rtc__backup-warning ul{
    font-size:14px;
  }
}


/* v2.19.1 — compact saved-offer row and quick trip actions */
.esw-rtc .esw-rtc__history-row .esw-rtc__offer-edit .esw-rtc__tip-edit-controls{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:7px !important;
  width:auto !important;
  max-width:100% !important;
}
.esw-rtc .esw-rtc__history-row .esw-rtc__offer-edit input{
  flex:0 0 118px !important;
  width:118px !important;
  min-width:118px !important;
  max-width:118px !important;
}
.esw-rtc .esw-rtc__history-row .esw-rtc__offer-update{
  flex:0 0 auto !important;
}
.esw-rtc .esw-rtc__quick-trip-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:10px;
}
.esw-rtc .esw-rtc__quick-trip-actions .esw-rtc__button{
  width:100%;
}
.esw-rtc .esw-rtc__quick-trip-actions .esw-rtc__button:disabled{
  opacity:.48;
  cursor:not-allowed;
}
@media(max-width:480px){
  .esw-rtc .esw-rtc__history-row .esw-rtc__offer-edit input{
    flex-basis:112px !important;
    width:112px !important;
    min-width:112px !important;
    max-width:112px !important;
  }
  .esw-rtc .esw-rtc__quick-trip-actions{
    gap:7px;
  }
}
@media(max-width:285px){
  .esw-rtc .esw-rtc__history-row .esw-rtc__offer-edit .esw-rtc__tip-edit-controls{
    flex-wrap:wrap !important;
  }
  .esw-rtc .esw-rtc__history-row .esw-rtc__offer-update{
    margin-left:calc(1em + 7px);
  }
}


/* v2.20.0 — optional persistent platform tracking */
.esw-rtc .esw-rtc__platform-picker{
  margin:14px 0 4px;
  padding:12px;
  border:1px solid var(--esw-ui-outline);
  border-radius:12px;
}
.esw-rtc .esw-rtc__platform-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.esw-rtc .esw-rtc__platform-heading>span{font-weight:800}
.esw-rtc .esw-rtc__platform-heading small{font-weight:500;color:var(--esw-muted);margin-left:4px}
.esw-rtc .esw-rtc__platform-add{border:0;background:transparent;color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:6px 2px;font:inherit;font-size:12px}
.esw-rtc .esw-rtc__platform-options{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.esw-rtc .esw-rtc__platform-option{
  min-height:38px;padding:7px 13px;border:1px solid var(--esw-ui-outline);border-radius:999px;background:transparent;color:inherit;font:inherit;font-weight:700;cursor:pointer
}
.esw-rtc .esw-rtc__platform-option.is-active{background:#71AC3D;color:#111;border-color:#71AC3D}
.esw-rtc .esw-rtc__platform-custom{display:flex;align-items:end;gap:7px;flex-wrap:wrap;margin-top:10px}
.esw-rtc .esw-rtc__platform-custom[hidden]{display:none}
.esw-rtc .esw-rtc__platform-custom label{display:grid;gap:4px;min-width:180px;flex:1}
.esw-rtc .esw-rtc__platform-custom label span{font-size:12px;font-weight:700}
.esw-rtc .esw-rtc__platform-custom input{width:100%;min-height:42px;border:1px solid var(--esw-ui-outline);border-radius:9px;padding:8px 10px;background:transparent;color:inherit;font:inherit}
.esw-rtc .esw-rtc__platform-note{margin:8px 0 0;color:var(--esw-muted);font-size:12px;line-height:1.45}
.esw-rtc .esw-rtc__platform-breakdown{display:grid;gap:5px;margin-top:8px}
.esw-rtc .esw-rtc__platform-summary-row{display:grid;grid-template-columns:minmax(90px,.35fr) minmax(0,1fr);gap:8px;align-items:start;padding:7px 9px;border:1px solid color-mix(in srgb,var(--esw-ui-outline) 35%,transparent);border-radius:9px;font-size:12px}
.esw-rtc .esw-rtc__platform-summary-row strong{overflow-wrap:anywhere}
.esw-rtc .esw-rtc__platform-summary-row span{color:var(--esw-muted);line-height:1.45;overflow-wrap:anywhere}
@media(max-width:560px){
  .esw-rtc .esw-rtc__platform-custom input{font-size:16px}
  .esw-rtc .esw-rtc__platform-summary-row{grid-template-columns:1fr}
  .esw-rtc .esw-rtc__platform-note{font-size:13px}
}

/* v2.20.4 — compact persistent platform dropdown at the start of Trip Calculator */
.esw-rtc .esw-rtc__platform-select-wrap{margin:0 0 14px;padding:10px 12px;border:1px solid var(--esw-ui-outline);border-radius:12px}
.esw-rtc .esw-rtc__platform-select-label{display:grid;grid-template-columns:auto minmax(150px,220px);align-items:center;justify-content:space-between;gap:10px;margin:0}
.esw-rtc .esw-rtc__platform-select-label>span{font-weight:800}
.esw-rtc .esw-rtc__platform-select-label small{font-weight:500;color:var(--esw-muted);margin-left:4px}
.esw-rtc .esw-rtc__platform-select-label select{width:100%;min-height:42px;padding:7px 34px 7px 10px;border:1px solid var(--esw-ui-outline);border-radius:9px;background:transparent;color:inherit;font:inherit}
@media(max-width:560px){.esw-rtc .esw-rtc__platform-select-label{grid-template-columns:minmax(0,1fr) minmax(145px,58%)}.esw-rtc .esw-rtc__platform-select-label select{font-size:16px}}
@media(max-width:330px){.esw-rtc .esw-rtc__platform-select-label{grid-template-columns:1fr}}

/* v2.20.5 */
.esw-rtc .esw-rtc__platform-empty{margin:0;padding:4px 0;color:var(--esw-muted);font-size:13px;line-height:1.5}

/* v2.20.6 — Saved Ride platform editor */
.esw-rtc .esw-rtc__saved-platform-select{min-height:34px;max-width:180px;padding:5px 28px 5px 8px;border:1px solid var(--esw-ui-outline);border-radius:9px;background:transparent;color:inherit;font:inherit}
@media(max-width:560px){.esw-rtc .esw-rtc__saved-platform-select{font-size:16px;max-width:min(180px,55vw)}}


/* v2.21.0 — persistent manual/automatic calculation mode */
.esw-rtc .esw-rtc__auto-mode{margin:0 0 14px;padding:10px 12px;border:1px solid var(--esw-ui-outline);border-radius:12px}
.esw-rtc .esw-rtc__auto-mode-label{display:block;margin:0 0 8px;font-weight:800}
.esw-rtc .esw-rtc__auto-mode-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.esw-rtc .esw-rtc__auto-mode-btn{min-height:38px;padding:7px 8px;border:1px solid var(--esw-ui-outline);border-radius:9px;background:transparent;color:inherit;font:inherit;font-size:12px;font-weight:750;line-height:1.15;cursor:pointer;touch-action:manipulation}
.esw-rtc .esw-rtc__auto-mode-btn.is-active{background:#71AC3D;color:#111;border-color:#4f7f2a;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
.esw-rtc.esw-rtc--dark .esw-rtc__auto-mode-btn.is-active{color:#081006;border-color:#9ad16b}
.esw-rtc .esw-rtc__auto-mode-btn:focus-visible{outline:3px solid color-mix(in srgb,#2563eb 70%,transparent);outline-offset:2px}
.esw-rtc .esw-rtc__auto-mode-note{display:block;margin-top:7px;color:var(--esw-muted);font-size:12px;line-height:1.4}
@media(max-width:560px){.esw-rtc .esw-rtc__auto-mode{padding:9px 10px}.esw-rtc .esw-rtc__auto-mode-options{gap:4px}.esw-rtc .esw-rtc__auto-mode-btn{min-height:40px;padding:6px 4px;font-size:11px}.esw-rtc .esw-rtc__auto-mode-note{font-size:13px}}
@media(max-width:330px){.esw-rtc .esw-rtc__auto-mode-options{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v2.22.0 — Annual Reality Check */
.esw-rtc .esw-rtc__annual-projections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:14px 0 20px}
.esw-rtc .esw-rtc__annual-card{min-width:0;padding:14px;border:1px solid var(--esw-ui-outline);border-radius:12px;background:var(--esw-card-bg,transparent)}
.esw-rtc .esw-rtc__annual-card-heading strong,.esw-rtc .esw-rtc__annual-card-heading span{display:block}
.esw-rtc .esw-rtc__annual-card-heading strong{font-size:14px;line-height:1.25}
.esw-rtc .esw-rtc__annual-card-heading span{margin-top:4px;font-size:12px;line-height:1.35;opacity:.78}
.esw-rtc .esw-rtc__annual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}
.esw-rtc .esw-rtc__annual-grid>div{min-width:0;padding:11px 8px;text-align:center;border:1px solid var(--esw-ui-outline);border-radius:10px}
.esw-rtc .esw-rtc__annual-grid small{display:block;font-size:10px;line-height:1.3}
.esw-rtc .esw-rtc__annual-grid strong{display:block;margin-top:5px;font-size:21px;line-height:1.1;overflow-wrap:anywhere}
.esw-rtc .esw-rtc__annual-personal{grid-column:1/-1}
.esw-rtc .esw-rtc__takeaway-subheading{margin-top:20px}
@media(max-width:760px){.esw-rtc .esw-rtc__annual-projections{grid-template-columns:1fr}}
@media(max-width:420px){.esw-rtc .esw-rtc__annual-card{padding:12px}.esw-rtc .esw-rtc__annual-grid{grid-template-columns:1fr}.esw-rtc .esw-rtc__annual-personal{grid-column:auto}.esw-rtc .esw-rtc__annual-grid strong{font-size:20px}}

/* v2.23.0 analysis refinements */
.esw-rtc__weekly-first-block{margin-top:18px}
.esw-rtc__takeaway-reserves>div>small{display:block;margin-top:3px;color:var(--esw-muted);font-size:11px;font-weight:600}
@media(max-width:560px){.esw-rtc__weekly-first-block{margin-top:16px}}

/* v2.24.0: semantic section icons, annual percentages, and experimental voice input. */
.esw-rtc .esw-rtc__section-visual{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;color:var(--esw-text)}
.esw-rtc .esw-rtc__section-visual svg{display:block;width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.esw-rtc .esw-rtc__annual-percent{display:block;margin-top:4px;font-size:9px;line-height:1.25;font-weight:750;color:var(--esw-muted)}
.esw-rtc .esw-rtc__voice-beta{margin:14px 0;padding:12px;border:1px solid var(--esw-ui-outline);border-radius:12px;background:var(--esw-card)}
.esw-rtc .esw-rtc__voice-beta-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.esw-rtc .esw-rtc__voice-beta-head>div:first-child{min-width:0}
.esw-rtc .esw-rtc__voice-beta-head strong{display:block;font-size:12px;line-height:1.25;color:var(--esw-text)}
.esw-rtc .esw-rtc__voice-beta-head strong span{display:inline-block;margin-left:4px;padding:2px 6px;border:1px solid currentColor;border-radius:999px;font-size:8px;letter-spacing:.06em;text-transform:uppercase}
.esw-rtc .esw-rtc__voice-beta-head small{display:block;margin-top:3px;font-size:9px;line-height:1.35;color:var(--esw-muted)}
.esw-rtc .esw-rtc__voice-beta-actions{display:flex;align-items:center;gap:7px;flex:0 0 auto}
.esw-rtc .esw-rtc__voice-button,.esw-rtc .esw-rtc__voice-help-trigger{min-height:36px;border:1px solid var(--esw-ui-outline);background:var(--esw-bg);color:var(--esw-text);cursor:pointer}
.esw-rtc .esw-rtc__voice-button{display:flex;align-items:center;gap:6px;padding:7px 10px;border-radius:9px;font-size:10px;font-weight:850}
.esw-rtc .esw-rtc__voice-button.is-listening{outline:2px solid #e52521;outline-offset:2px}
.esw-rtc .esw-rtc__voice-button:disabled{opacity:.5;cursor:not-allowed}
.esw-rtc .esw-rtc__voice-help-trigger{width:36px;border-radius:999px;font-size:14px;font-weight:950}
.esw-rtc .esw-rtc__voice-status{margin:9px 0 0!important;font-size:9.5px!important;line-height:1.4!important;color:var(--esw-muted)!important}
.esw-rtc .esw-rtc__voice-help-dialog{width:min(500px,calc(100vw - 28px));max-width:500px;max-height:min(82vh,680px);padding:0;border:0;border-radius:14px;background:transparent;color:var(--esw-text);overflow:visible}
.esw-rtc .esw-rtc__voice-help-dialog:not([open]){display:none}
.esw-rtc .esw-rtc__voice-help-dialog::backdrop{background:rgba(0,0,0,.56)}
.esw-rtc .esw-rtc__voice-help-panel{position:relative;max-height:min(82vh,680px);overflow:auto;padding:18px;border:1px solid var(--esw-ui-outline);border-radius:14px;background:var(--esw-card);color:var(--esw-text);box-shadow:0 18px 50px rgba(0,0,0,.28)}
.esw-rtc .esw-rtc__voice-help-panel>strong{display:block;padding-right:36px;font-size:19px;line-height:1.3}
.esw-rtc .esw-rtc__voice-help-panel p{font-size:15px!important;line-height:1.55!important;color:var(--esw-text)!important}
.esw-rtc .esw-rtc__voice-help-close{position:absolute;top:10px;right:10px;width:32px;height:32px;border:1px solid var(--esw-ui-outline);border-radius:999px;background:var(--esw-bg);color:var(--esw-text);font-size:20px;line-height:1;cursor:pointer}
.esw-rtc .esw-rtc__voice-examples{display:grid;gap:5px;margin:12px 0;padding:11px;border:1px solid var(--esw-border);border-radius:10px}
.esw-rtc .esw-rtc__voice-examples b{font-size:11px}.esw-rtc .esw-rtc__voice-examples span{font-size:10px;line-height:1.35}
.esw-rtc .esw-rtc__voice-help-panel a{color:#2563eb;text-decoration:underline;text-underline-offset:2px;font-size:13px}
.esw-rtc--dark .esw-rtc__voice-help-panel,body.esw-rtc-page-dark .esw-rtc .esw-rtc__voice-help-panel{background:#111820}
@media(max-width:560px){
 .esw-rtc .esw-rtc__section-visual{width:29px;height:29px;flex-basis:29px}.esw-rtc .esw-rtc__section-visual svg{width:27px;height:27px}
 .esw-rtc .esw-rtc__section-panel-summary{gap:10px}
 .esw-rtc .esw-rtc__voice-beta-head{align-items:flex-start;flex-direction:column}.esw-rtc .esw-rtc__voice-beta-actions{width:100%}.esw-rtc .esw-rtc__voice-button{flex:1;justify-content:center;min-height:40px}.esw-rtc .esw-rtc__voice-help-trigger{width:40px;height:40px}
 .esw-rtc .esw-rtc__voice-help-dialog{width:calc(100vw - 20px);max-height:84vh}.esw-rtc .esw-rtc__voice-help-panel{max-height:84vh;padding:16px}
}
.esw-rtc .esw-rtc__voice-mic{width:16px;height:16px;display:grid;place-items:center}.esw-rtc .esw-rtc__voice-mic svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.esw-rtc .esw-rtc__section-visual--steering svg{width:34px;height:34px;stroke-width:2}
@media (max-width:560px){.esw-rtc .esw-rtc__section-visual--steering svg{width:29px;height:29px}}

.esw-rtc .esw-rtc__voice-examples{font-size:15px!important;line-height:1.5!important;gap:9px!important}
.esw-rtc .esw-rtc__voice-examples>span{font-size:15px!important;line-height:1.5!important}


/* v2.24.3: balanced driver icon and discreet release diagnostic. */
.esw-rtc__section-visual--driver svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}
.esw-rtc__version{margin-top:8px;text-align:center;font-size:11px;line-height:1.35;opacity:.62;letter-spacing:.01em}
@media (max-width:560px){.esw-rtc__version{font-size:10.5px}}


/* v2.24.4: clearer, more readable Voice Input Beta guidance. */
.esw-rtc .esw-rtc__voice-beta-head strong{font-size:17px;line-height:1.3}
.esw-rtc .esw-rtc__voice-beta-head strong span{font-size:10px;padding:3px 7px}
.esw-rtc .esw-rtc__voice-beta-head small{margin-top:5px;font-size:14px;line-height:1.45}
.esw-rtc .esw-rtc__voice-status{margin-top:11px!important;font-size:15px!important;line-height:1.5!important;color:var(--esw-text)!important}
@media(max-width:560px){.esw-rtc .esw-rtc__voice-beta-head strong{font-size:18px}.esw-rtc .esw-rtc__voice-beta-head small,.esw-rtc .esw-rtc__voice-status{font-size:16px!important}}

/* v2.25.0: end-of-workflow report/reset controls */
.esw-rtc .esw-rtc__end-actions{margin-top:16px;}
@media (max-width:560px){.esw-rtc .esw-rtc__end-actions{gap:10px;}}

/* v2.25.1 — interactive Weekly Overview platform ride editor */
.esw-rtc .esw-rtc__platform-summary-item{display:grid;gap:7px}
.esw-rtc button.esw-rtc__platform-summary-row.is-interactive{width:100%;text-align:left;background:transparent;color:inherit;font:inherit;cursor:pointer;-webkit-appearance:none;appearance:none}
.esw-rtc button.esw-rtc__platform-summary-row.is-interactive:focus-visible{outline:3px solid color-mix(in srgb,currentColor 30%,transparent);outline-offset:2px}
.esw-rtc .esw-rtc__platform-chevron{display:inline-block;margin-left:5px;color:inherit;transition:transform .18s ease}
.esw-rtc button.esw-rtc__platform-summary-row[aria-expanded="true"] .esw-rtc__platform-chevron{transform:rotate(180deg)}
.esw-rtc .esw-rtc__weekly-platform-rides{display:grid;gap:8px;padding:2px 0 8px}
.esw-rtc .esw-rtc__weekly-ride-editor{display:grid;gap:7px;padding:10px;border:1px solid color-mix(in srgb,var(--esw-ui-outline) 35%,transparent);border-radius:9px;background:color-mix(in srgb,currentColor 3%,transparent)}
.esw-rtc .esw-rtc__weekly-ride-title{font-size:12px;line-height:1.35}
.esw-rtc .esw-rtc__weekly-edit-row{display:grid;grid-template-columns:minmax(95px,.42fr) minmax(0,1fr);gap:8px;align-items:center;font-size:12px}
.esw-rtc .esw-rtc__weekly-edit-controls{display:flex;align-items:center;gap:6px;min-width:0}
.esw-rtc .esw-rtc__weekly-edit-controls input,.esw-rtc .esw-rtc__weekly-edit-controls select{min-width:0;max-width:180px;min-height:34px;padding:5px 8px;border:1px solid var(--esw-ui-outline);border-radius:9px;background:transparent;color:inherit;font:inherit}
@media(max-width:560px){.esw-rtc .esw-rtc__weekly-edit-row{grid-template-columns:1fr}.esw-rtc .esw-rtc__weekly-edit-controls input,.esw-rtc .esw-rtc__weekly-edit-controls select{font-size:16px;max-width:min(180px,55vw)}}


/* v2.26.1 — historical ride verdicts and persistent weekly editing context */
.esw-rtc .esw-rtc__saved-verdict{display:inline-flex;align-items:center;gap:6px;width:max-content;margin:5px 0 3px;padding:3px 8px;border:1px solid var(--esw-ui-outline);border-radius:999px;font-size:11px;font-weight:800;line-height:1.25}
.esw-rtc .esw-rtc__verdict-dot{width:10px;height:10px;flex:0 0 10px;border-radius:50%;background:#7b8491;border:1px solid rgba(0,0,0,.2)}
.esw-rtc .is-green .esw-rtc__verdict-dot{background:#39e75f}.esw-rtc .is-yellow .esw-rtc__verdict-dot{background:#ffd400}.esw-rtc .is-red .esw-rtc__verdict-dot{background:#e52521}
.esw-rtc .esw-rtc__verdict-breakdown{display:grid;gap:8px}
.esw-rtc .esw-rtc__verdict-summary-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--esw-ui-outline);border-radius:10px}
.esw-rtc .esw-rtc__verdict-summary-label{display:flex;align-items:center;gap:7px}.esw-rtc .esw-rtc__verdict-summary-row>span:last-child{text-align:right;font-size:12px}
.esw-rtc .esw-rtc__platform-edit-hint{margin:7px 0 11px!important;font-size:12px!important;line-height:1.45!important;color:var(--esw-muted)!important}
.esw-rtc .esw-rtc__weekly-verdict{display:flex}
.esw-rtc .esw-rtc__weekly-edit-confirm{display:grid;gap:8px;margin-top:4px;padding:9px;border:1px solid var(--esw-ui-outline);border-radius:9px;background:var(--esw-card)}
.esw-rtc .esw-rtc__weekly-edit-confirm>strong{font-size:12px}.esw-rtc .esw-rtc__weekly-edit-confirm>div{display:flex;flex-wrap:wrap;gap:7px}
.esw-rtc .esw-rtc__weekly-finished{font-weight:850}
@media(max-width:560px){.esw-rtc .esw-rtc__verdict-summary-row{align-items:flex-start}.esw-rtc .esw-rtc__verdict-summary-row>span:last-child{font-size:11.5px}.esw-rtc .esw-rtc__platform-edit-hint{font-size:13px!important}}


/* v2.26.1 — weekly rendering regression and verdict spacing correction */
.esw-rtc .esw-rtc__verdict-summary-row { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:10px 12px; border:1px solid var(--esw-ui-outline); border-radius:10px; }
.esw-rtc .esw-rtc__verdict-summary-label { display:inline-flex; align-items:center; gap:7px; flex:0 0 auto; }
.esw-rtc .esw-rtc__verdict-summary-stats { display:block; margin-left:10px; text-align:right; font-size:12px; }
.esw-rtc .esw-rtc__verdict-breakdown { display:grid; gap:8px; }
.esw-rtc .esw-rtc__platform-summary-item { min-width:0; }
.esw-rtc .esw-rtc__platform-summary-row.is-interactive { width:100%; text-align:left; cursor:pointer; }
@media (max-width:560px) {
  .esw-rtc .esw-rtc__verdict-summary-row { align-items:flex-start; gap:10px; }
  .esw-rtc .esw-rtc__verdict-summary-stats { margin-left:8px; font-size:11.5px; }
}


/* v2.26.2 — centered verdict distribution and resilient weekly platform cards */
.esw-rtc .esw-rtc__verdict-breakdown{display:grid;gap:10px;text-align:center}
.esw-rtc .esw-rtc__verdict-summary-row{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;padding:10px 12px}
.esw-rtc .esw-rtc__verdict-summary-label{display:inline-flex;align-items:center;justify-content:center;gap:7px;margin:0;text-align:center}
.esw-rtc .esw-rtc__verdict-summary-stats{display:block;margin:0!important;text-align:center!important;font-size:12px}
.esw-rtc .esw-rtc__platform-breakdown--weekly{display:grid;gap:8px}
.esw-rtc .esw-rtc__platform-summary-item{display:grid;gap:7px;min-width:0}
.esw-rtc button.esw-rtc__platform-summary-row.is-interactive{display:grid;width:100%;text-align:left;background:transparent;color:inherit;font:inherit;cursor:pointer;-webkit-appearance:none;appearance:none}
@media(max-width:560px){.esw-rtc .esw-rtc__verdict-summary-row{align-items:center}.esw-rtc .esw-rtc__verdict-summary-stats{font-size:12px}}
