/* Speedy Cash For Junk Cars: quote sheet */
.sheet-body{background:var(--paper)}
.sheet-body .lot-head .wrap{min-height:68px}
.sheet-body.is-offer .lot-head .phone-line{display:none}
.sheet-main{padding:28px 0 72px;min-height:62vh}
.tally{height:6px;max-width:640px;margin:0 auto 22px;background:var(--paper-deep);border-radius:4px;overflow:hidden}
.tally[hidden]{display:none}
.tally span{display:block;height:100%;width:0;background:var(--pencil);border-radius:4px;transition:width .3s ease}
.leaf{max-width:640px;margin:0 auto}
@media (min-width:768px){
  .leaf.is-card{background:var(--sheet);border:2px solid var(--ink);border-radius:12px;box-shadow:6px 6px 0 var(--ink);padding:30px 36px 32px}
}
.leaf-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;min-height:44px}
.back-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 6px 0 0;border:0;background:none;color:var(--ink-2);font:600 15.5px/1 var(--text);cursor:pointer;text-decoration:none}
.back-link:hover{color:var(--ink);text-decoration:underline}
.back-link svg{width:18px;height:18px}
.car-chip{font:600 14.5px/1.2 var(--text);color:var(--ink-2);text-align:right}
.leaf h1{font-size:clamp(28px,4.6vw,36px);font-weight:800;margin-bottom:8px;letter-spacing:-.02em}
.leaf h1:focus{outline:none}
.leaf .helper{color:var(--ink-2);margin-bottom:20px;font-size:16.5px}
.leaf .helper .link-btn{min-height:0;padding:0;font-size:16px}
.picks{display:grid;gap:10px;margin:0 0 6px;padding:0;border:0}
.pick{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:58px;padding:14px 16px;border:2px solid var(--ink-3);border-radius:10px;background:#fff;color:var(--ink);font:600 17px/1.3 var(--text);text-align:left;cursor:pointer;transition:border-color .12s,background .12s}
.pick:hover{border-color:var(--ink)}
.pick .cue{width:22px;height:22px;flex-shrink:0;color:var(--ink-3)}
.pick[aria-checked="true"]{background:var(--citron);border-color:var(--ink);box-shadow:3px 3px 0 var(--ink)}
.pick[aria-checked="true"] .cue{color:var(--ink)}
.pick[aria-disabled="true"]{border-style:dashed;background:transparent;color:var(--ink-3);cursor:not-allowed;box-shadow:none}
.pick[aria-disabled="true"]:hover{border-color:var(--ink-3)}
.pick .off{font-size:13.5px;font-weight:600;color:var(--ink-3);white-space:nowrap}
.pick.is-tapped{animation:tap .18s ease}
@keyframes tap{50%{transform:scale(.985)}}
.leaf-acts{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:22px}
@media (max-width:767px){.leaf-acts .go-btn,.leaf-acts .ghost-btn{width:100%}}
.ghost-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:12px 22px;border:2.5px solid var(--ink);border-radius:10px;background:transparent;color:var(--ink);font:800 17px/1.1 var(--display);cursor:pointer;text-decoration:none}
.ghost-btn:hover{background:var(--sheet)}
.ghost-btn svg,.go-btn svg{width:20px;height:20px}
.note{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:10px;background:var(--pencil-soft);color:var(--ink);font-size:15.5px;margin:14px 0 6px}
.note svg{width:20px;height:20px;flex-shrink:0;margin-top:2px;color:var(--pencil)}
.note.is-warn{background:var(--alert-soft);color:var(--alert)}
.note.is-warn svg{color:var(--alert)}
.op-alert{margin:14px 0 0;padding:12px 14px;border:2px solid var(--alert);border-radius:10px;background:var(--alert-soft);color:var(--alert);font-weight:600;font-size:15.5px}
.op-alert[hidden]{display:none}
.op-alert .link-btn{color:var(--alert);min-height:0;padding:0}

/* corners */
.corners{margin:16px 0 4px;padding:16px;border:2px solid var(--ink);border-radius:12px;background:var(--sheet)}
.corners legend{padding:0 6px;font:700 16px/1.2 var(--text)}
.corners .end{display:block;text-align:center;font:600 13px/1 var(--text);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:6px 0}
.corner-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:relative}
.corner{position:relative}
.corner input{position:absolute;opacity:0;width:1px;height:1px}
.corner label{display:flex;align-items:center;gap:10px;min-height:56px;padding:10px 12px;border:2px solid var(--ink-3);border-radius:10px;background:#fff;font-weight:600;cursor:pointer}
.corner label::before{content:"";width:20px;height:20px;border:2px solid var(--ink-3);border-radius:5px;flex-shrink:0;background:#fff}
.corner input:checked+label{background:var(--citron);border-color:var(--ink)}
.corner input:checked+label::before{border-color:var(--ink);background:var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M4.5 10.5l3.4 3.4 7.6-8' fill='none' stroke='%23D5EF3E' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.corner input:focus-visible+label{outline:3px solid var(--pencil);outline-offset:2px}
.corners[aria-invalid="true"]{border-color:var(--alert)}

/* single-field steps */
.solo .inp{font-size:20px;min-height:58px}
.check-row{display:flex;align-items:center;gap:10px;margin-top:14px;min-height:44px;font-weight:600;cursor:pointer}
.check-row input{width:22px;height:22px;accent-color:var(--ink)}
.seg{display:inline-grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border:2px solid var(--ink);border-radius:12px;margin-bottom:18px;width:100%;max-width:420px}
.seg button{min-height:46px;border:0;border-radius:8px;background:transparent;color:var(--ink);font:700 15.5px/1.1 var(--text);cursor:pointer}
.seg button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.vin-count{position:absolute;right:12px;top:42px;font:600 14px/1 var(--text);color:var(--ink-3)}
.found{display:flex;gap:10px;align-items:center;padding:12px 14px;border-radius:10px;background:var(--citron);border:2px solid var(--ink);font-weight:700;margin:4px 0 8px}
.found svg{width:22px;height:22px}

/* loading */
.wait{text-align:center;padding:30px 0}
.wait-spin{width:84px;height:84px;margin:0 auto 18px;color:var(--pencil)}
.wait-spin circle{animation:spin 1.6s linear infinite;transform-origin:50% 50%}
@keyframes spin{to{transform:rotate(360deg)}}
.wait-car{font:700 18px/1.3 var(--display);margin-bottom:18px}
.wait ul{list-style:none;padding:0;margin:0 auto;max-width:320px;text-align:left}
.wait li{display:flex;gap:10px;align-items:center;padding:8px 0;color:var(--ink-3);font-weight:600;transition:color .2s}
.wait li svg{width:22px;height:22px;flex-shrink:0;opacity:.25;transition:opacity .2s}
.wait li.is-done{color:var(--ink)}
.wait li.is-done svg{opacity:1;color:var(--ok)}
.wait-slow{margin-top:16px;color:var(--ink-2)}

/* end screens */
.endcap{text-align:left}
.endcap .badge{width:64px;height:64px;margin-bottom:12px;color:var(--pencil)}
.endcap .acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px;align-items:center}
.recap{margin:20px 0;padding:0;list-style:none;border-top:1.5px dashed var(--rule)}
.recap li{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1.5px dashed var(--rule);font-size:16px}
.recap li span:first-child{color:var(--ink-3);font-weight:600}
.recap li span:last-child{font-weight:700;text-align:right}

/* offer / accept */
.deal{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;max-width:1080px;margin:0 auto}
@media (min-width:1024px){.deal{grid-template-columns:minmax(0,1fr) 340px;gap:48px;align-items:start}}
.deal-main{max-width:640px;width:100%;min-width:0}
.eyebrow{font:700 15px/1.3 var(--text);color:var(--ink-2);margin-bottom:2px}
.amt{position:relative;display:inline-block;font:800 clamp(56px,11vw,84px)/1 var(--display);letter-spacing:-.035em;margin:2px 0 6px;padding:6px 26px 8px 8px}
.amt svg{position:absolute;inset:-8px -14px -6px -16px;width:calc(100% + 30px);height:calc(100% + 14px);color:var(--pencil);pointer-events:none}
.amt-sub{color:var(--ink-2);font-size:17px;margin-bottom:22px}
.part{padding:22px 0 8px;border-top:2px solid var(--ink)}
.part h2{font-size:23px;font-weight:800;margin-bottom:14px}
.part[hidden]{display:none}
.duo{display:grid;gap:0 14px}
@media (min-width:560px){.duo{grid-template-columns:1fr 1fr}}
.disclose{font-size:14.5px;color:var(--ink-2);line-height:1.5;margin:6px 0 16px;padding-left:12px;border-left:3px solid var(--citron-press)}
.after-note{font-size:14.5px;color:var(--ink-3);margin-top:10px}
.who{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:10px;background:var(--paper-deep);margin-bottom:14px}
.who div{display:flex;gap:10px;align-items:flex-start}
.who svg{width:22px;height:22px;color:var(--ok);flex-shrink:0;margin-top:1px}
.who strong{display:block}
.who span{color:var(--ink-2);font-size:15px;word-break:break-word}
.vin-help{font-size:15px}
.final{padding-top:22px;border-top:2px solid var(--ink)}
.final .go-btn{width:100%;min-height:62px;font-size:21px}
.final-note{margin:12px 0 4px;font-size:15px;color:var(--ink-2)}
.terms-line{font-size:14.5px;color:var(--ink-2);margin-top:8px}
.terms-line .link-btn{min-height:0;padding:0;font-size:14.5px}
.gaps{margin-bottom:14px}
.gaps[hidden]{display:none}
.spin-dot{width:18px;height:18px;border:2.5px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite;display:inline-block}

/* rail */
.rail{display:grid;gap:18px}
@media (min-width:1024px){.rail{position:sticky;top:24px}}
.rail-card{background:var(--sheet);border:2px solid var(--ink);border-radius:12px;padding:20px 22px;box-shadow:5px 5px 0 var(--ink)}
.rail-card .label{font:700 13px/1 var(--text);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.rail-card .big{font:800 42px/1.05 var(--display);letter-spacing:-.03em;margin:6px 0 4px}
.rail-card .car{font-weight:600;color:var(--ink-2)}
.rail-card .soon{margin-top:10px;font-weight:700;color:var(--ok)}
.steps-next h3{font-size:22px;margin-bottom:12px}
.steps-next ol{list-style:none;margin:0;padding:0;counter-reset:n}
.steps-next li{counter-increment:n;display:grid;grid-template-columns:34px 1fr;gap:10px;padding:8px 0;color:var(--ink-2);font-size:15.5px}
.steps-next li::before{content:counter(n);font:700 30px/0.9 var(--hand);color:var(--pencil);text-align:center}
.steps-next strong{color:var(--ink);display:block}
@media (max-width:1023px){.rail-card{display:none}}

/* pickup */
.early{display:flex;align-items:center;gap:12px;width:100%;min-height:58px;padding:12px 16px;border:2px solid var(--ink-3);border-radius:10px;background:#fff;color:var(--ink);font:600 16.5px/1.3 var(--text);text-align:left;cursor:pointer}
.early[aria-pressed="true"]{background:var(--citron);border-color:var(--ink);box-shadow:3px 3px 0 var(--ink)}
.early .dot{width:20px;height:20px;border:2px solid var(--ink);border-radius:50%;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}
.early[aria-pressed="true"] .dot::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--ink)}
.days-toggle{margin-top:6px}
.days{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 2px 10px;margin:4px 0}
.days button{scroll-snap-align:start;flex:0 0 auto;min-width:64px;min-height:64px;padding:8px 6px;border:2px solid var(--ink-3);border-radius:10px;background:#fff;color:var(--ink);font:700 14px/1.2 var(--text);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center}
.days button small{font-weight:600;color:var(--ink-3);font-size:12.5px}
.days button.is-weekend{background:var(--paper-deep)}
.days button[aria-pressed="true"]{border-color:var(--ink);background:var(--ink);color:var(--paper)}
.days button[aria-pressed="true"] small{color:var(--citron)}
.pager{display:none}
@media (min-width:1024px){
  .days{display:grid;grid-template-columns:repeat(7,1fr);overflow:visible}
  .days button{min-width:0}
  .pager{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14.5px;color:var(--ink-2);margin-top:8px}
  .pager button{width:44px;height:44px;border:2px solid var(--ink);border-radius:8px;background:#fff;cursor:pointer;font-size:18px}
  .pager button[disabled]{opacity:.35;cursor:not-allowed}
}
.wins{display:grid;gap:8px;margin-top:8px}
.wins h3{font:700 15.5px/1.3 var(--text);margin:6px 0 2px}
.wins button{min-height:50px;padding:10px 14px;border:2px solid var(--ink-3);border-radius:10px;background:#fff;color:var(--ink);font:600 16px/1.2 var(--text);text-align:left;cursor:pointer}
.wins button[aria-pressed="true"]{background:var(--citron);border-color:var(--ink)}
.wins-hint{font-size:14.5px;color:var(--ink-3);margin:6px 0 0}
.picked{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:12px 14px;border-radius:10px;background:var(--pencil-soft);font-weight:600}
.picked .link-btn{min-height:44px}

/* dialogs */
.scrim{position:fixed;inset:0;background:rgba(35,20,48,.55);z-index:80;display:flex;align-items:flex-end;justify-content:center}
.scrim[hidden]{display:none}
.dlg{background:var(--sheet);width:100%;max-width:560px;max-height:92vh;overflow:auto;border-radius:16px 16px 0 0;border:2px solid var(--ink);border-bottom:0;padding:26px 22px 24px;box-shadow:0 -6px 0 rgba(0,0,0,.04)}
@media (min-width:768px){.scrim{align-items:center}.dlg{border-radius:14px;border-bottom:2px solid var(--ink);box-shadow:8px 8px 0 var(--ink);padding:30px 32px 28px}}
.dlg h2{font-size:26px;font-weight:800;margin-bottom:10px}
.dlg h2:focus{outline:none}
.dlg p{color:var(--ink-2)}
.dlg .acts{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:flex-end;margin-top:20px}
@media (max-width:767px){.dlg .acts{flex-direction:column-reverse;align-items:stretch}.dlg .acts .go-btn{width:100%}}
.dlg .vin-sample{font:700 20px/1 ui-monospace,Menlo,Consolas,monospace;letter-spacing:.06em;padding:12px 14px;background:#fff;border:2px dashed var(--ink-3);border-radius:8px;text-align:center;margin:12px 0 4px;word-break:break-all}
.dlg .two{display:grid;gap:4px 24px}
@media (min-width:600px){.dlg .two{grid-template-columns:1fr 1fr}}
.dlg h3{font-size:17px;margin:14px 0 6px}
.dlg ul{margin:0;padding-left:20px;color:var(--ink-2)}
.dlg li{margin:3px 0}
.shift-new{font:800 54px/1 var(--display);letter-spacing:-.03em;margin:10px 0 2px}
.shift-old{color:var(--ink-3);font-size:15.5px}
.shift-up{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:6px;background:var(--citron);font:700 15px/1.4 var(--text);vertical-align:middle;color:var(--ink)}

/* transitions */
.slide-fwd{animation:inR .22s ease}
.slide-back{animation:inL .22s ease}
@keyframes inR{from{opacity:0;transform:translateX(26px)}to{opacity:1;transform:none}}
@keyframes inL{from{opacity:0;transform:translateX(-26px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.slide-fwd,.slide-back{animation:fade .15s ease}@keyframes fade{from{opacity:0}to{opacity:1}}}
