/* styles for area reception — one-hand goods-in flow */
.rec{padding-bottom:4px}
.rec .top .rec-histbtn .ico{width:17px;height:17px}
.rec .av{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;color:#fff;font-weight:800;font-size:13px;letter-spacing:-.02em;flex:none;box-shadow:inset 0 1px 0 rgb(var(--hl) / calc(.3 * var(--hla))),0 6px 14px -8px rgb(var(--sk) / .5)}
.rec-opt{font-style:normal;font-weight:600;color:var(--faint)}
.btn[data-off]{opacity:.5}

/* progress */
.rec-prog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.rec-prog .s{all:unset;box-sizing:border-box;display:flex;flex-direction:column;gap:7px;min-width:0;cursor:default}
.rec-prog .s[data-act]{cursor:pointer}
.rec-prog i{display:block;height:6px;border-radius:6px;background:rgb(var(--k) / .08);position:relative;overflow:hidden}
.rec-prog i::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(90deg,#7A4DFF,#4A1FE6);transform:scaleX(0);transform-origin:left}
.rec-prog .done i::after{transform:none}
.rec-prog .on i::after{animation:recFill .75s var(--ease) .12s both}
.rec-prog.all i::after{background:linear-gradient(90deg,#2FB985,#078A5E)}
@keyframes recFill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.rec-prog span{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:800;color:var(--faint);white-space:nowrap;overflow:hidden;letter-spacing:-.005em}
.rec-prog span b{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:10px;background:rgb(var(--k) / .07);flex:none}
.rec-prog span .ico{width:15px;height:15px;color:var(--ok);stroke-width:2.6}
.rec-prog .on span{color:var(--accent)}
.rec-prog .on span b{background:var(--accent-solid);color:#fff}
.rec-prog .done span{color:var(--ink)}
.rec-prog em{font-style:normal;font-size:10.5px;padding:1px 7px;border-radius:99px;background:rgba(74,31,230,.1);color:var(--accent)}

/* step motion */
.rec-stage{display:flex;flex-direction:column;gap:14px}
.rec-stage.fwd{animation:recFwd .5s var(--ease) both}
.rec-stage.bwd{animation:recBwd .5s var(--ease) both}
@keyframes recFwd{from{opacity:0;transform:translateX(40px)}}
@keyframes recBwd{from{opacity:0;transform:translateX(-40px)}}

/* sticky CTA */
.rec-cta{display:grid;grid-template-columns:1fr 1.7fr;gap:8px;padding:8px;border-radius:26px;background:rgb(var(--w) / .66);-webkit-backdrop-filter:blur(20px) saturate(1.8);backdrop-filter:blur(20px) saturate(1.8);border:1px solid var(--edge);filter:none;box-shadow:0 18px 40px -16px rgba(40,30,120,.42);transition:bottom .25s var(--ease)}
.rec-cta.one,.rec-cta.col{grid-template-columns:1fr}
.rec-cta .btn{height:56px;padding:0 14px;white-space:nowrap;overflow:hidden}
.rec-cta .btn .ico{flex:none}
.rec-n{min-width:24px;height:24px;border-radius:12px;background:var(--ink-bg);color:var(--on-ink);display:inline-grid;place-items:center;font-size:12px;padding:0 7px;box-sizing:border-box}
body.rec-kb .rec-cta{bottom:calc(var(--rec-kb,0px) + 6px);padding:6px}
body.rec-kb .rec-cta .btn{height:46px}

/* step 1 — supplier */
.rec-q{padding:6px 2px 0}
.rec-q .title{font-size:36px}
.rec-q .sub{margin:6px 0 0;font-size:14px}
.rec-sups{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (min-width:600px){.rec-sups{grid-template-columns:repeat(3,1fr)}}
.rec-sup{all:unset;box-sizing:border-box;cursor:pointer;min-height:112px;padding:14px;border-radius:22px;background:var(--glass);border:1px solid var(--edge);box-shadow:var(--sh);display:flex;flex-direction:column;gap:4px;min-width:0;transition:transform .2s var(--ease),background .25s,color .25s;animation:rise .5s var(--ease) both;animation-delay:calc(var(--i,0) * 40ms + 80ms)}
.rec-sup .av{margin-bottom:8px}
.rec-sup b{font-size:15.5px;font-weight:800;letter-spacing:-.02em;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rec-sup em{font-style:normal;font-size:12px;font-weight:650;color:var(--muted)}
.rec-sup:hover{background:var(--glass-hi)}
.rec-sup:active{transform:scale(.95)}
.rec-sup.on{background:var(--ink-bg);color:var(--on-ink);border-color:var(--ink-bg);transform:scale(.97)}
.rec-sup.on em{color:rgba(255,255,255,.7)}
.rec-sup:focus-visible{outline:2.5px solid var(--accent)}
.rec-new{display:flex;flex-direction:column;gap:12px}

/* step 2 — products */
.rec-supbar{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:20px;background:var(--glass-2);border:1px solid var(--edge)}
.rec-supbar .tx{flex:1;min-width:0}
.rec-supbar b{display:block;font-weight:800;font-size:15px;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rec-supbar em{display:block;font-style:normal;font-size:12.5px;color:var(--muted);font-weight:600}
.rec-lines{display:flex;flex-direction:column;gap:8px}
.rec-row{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:12px;padding:10px 14px 10px 10px;border-radius:18px;background:var(--glass);border:1px solid var(--edge);box-shadow:var(--sh);min-height:62px;transition:transform .18s var(--ease),background .2s}
.rec-row:hover{background:var(--glass-hi)}
.rec-row:active{transform:scale(.98)}
.rec-row .th,.rec-ctl-h .th{width:42px;height:42px;border-radius:13px;overflow:hidden;flex:none;background:rgba(74,31,230,.08);display:grid;place-items:center}
.rec-row .th img,.rec-ctl-h .th img,.rec-ph .th img{width:100%;height:100%;object-fit:cover;display:block}
.rec-row .th.n{color:var(--accent);font-weight:700;font-size:14px}
.rec-row .tx,.rec-ctl-h .tx,.rec-h .tx{flex:1;min-width:0}
.rec-row .tx b,.rec-ctl-h .tx b,.rec-h .tx b{display:block;font-weight:800;font-size:14.5px;letter-spacing:-.015em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rec-row .tx em,.rec-ctl-h .tx em,.rec-h .tx em{display:block;font-style:normal;font-size:12.5px;color:var(--muted);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}
.rec-row .t{font-weight:700;font-size:16px;flex:none}
.rec-row .t.ok{color:var(--ok)}.rec-row .t.bad{color:var(--bad)}.rec-row .t.none{color:var(--faint)}
.rec-row .ed{width:16px;height:16px;color:var(--faint);flex:none}
.rec-row.warn{background:color-mix(in srgb,rgb(255 240 243 / .8) var(--pastel),rgb(var(--w) / .8));border-color:rgba(212,42,72,.28)}
.rec-row.pop{animation:recPop .65s var(--spring) both}
@keyframes recPop{0%{opacity:0;transform:translateY(40px) scale(.92)}60%{box-shadow:0 0 0 4px rgba(7,138,94,.22),var(--sh)}100%{opacity:1;transform:none}}

.rec-card{padding:16px;display:flex;flex-direction:column;gap:20px;border-radius:26px;background:rgb(var(--w) / .8)}
.rec-card.slide{animation:recSlide .6s var(--spring) both}
@keyframes recSlide{from{opacity:0;transform:translateX(80px) rotate(1.5deg) scale(.96)}}
.rec-card.editing{box-shadow:0 0 0 2px rgba(74,31,230,.4),var(--sh-lg);animation:recOpen .4s var(--ease) both}
@keyframes recOpen{from{opacity:0;transform:scale(.97)}}
.rec-card-h{min-height:28px;margin-bottom:-8px}
.rec-card-h .lbl{color:var(--accent)}
.rec-f{display:flex;flex-direction:column;gap:9px;min-width:0}
.rec-big{height:60px;font-size:20px;font-weight:800;letter-spacing:-.025em;border-radius:18px}
.rec-big::placeholder{color:#9AA0BC;font-weight:700}
.rec-sugs{display:flex;flex-direction:column;gap:7px}
.rec-sugs:empty{display:none}
.rec-sugs .chips{flex-wrap:wrap}
.rec-sugs .chip{background:var(--glass-hi);color:var(--ink)}
.chip.mine .ico{width:14px;height:14px;margin-right:6px;color:var(--accent)}
.rec-memo{display:flex;gap:8px;align-items:flex-start;padding:10px 12px;border-radius:14px;background:rgba(74,31,230,.07);color:var(--accent);font-size:12.5px;font-weight:750;line-height:1.4;animation:popin .45s var(--spring) both}
.rec-memo .ico{width:16px;height:16px;margin-top:1px}
.rec-qty{display:flex;gap:8px;align-items:center}
.rec-qty .input{width:92px;flex:none;height:48px;text-align:center;font-size:19px;font-weight:700;padding:0 8px}
.rec-units{display:flex;gap:6px;flex:1;min-width:0}
.rec-units .chip{flex:1;justify-content:center;padding:9px 6px;min-width:0}

/* temperature */
.rec-temp{padding:14px;border-radius:22px;background:rgb(var(--k) / .035);border:1.5px solid rgb(var(--k) / .06);transition:background .35s var(--ease),border-color .35s}
.rec-temp.ok{background:rgba(7,138,94,.08);border-color:rgba(7,138,94,.3)}
.rec-temp.bad{background:rgba(212,42,72,.08);border-color:rgba(212,42,72,.4)}
.rec-types{margin:0 -2px}
.rec-types .chip{padding:9px 13px;font-size:12.5px}
.rec-types .chip .mono{margin-left:6px;opacity:.65;font-size:11.5px}
.rec-tv{display:flex;align-items:center;gap:10px;padding:4px 0}
.rec-tv .step{width:64px;height:64px;border-radius:22px;flex:none;background:var(--solid);box-shadow:0 0 0 1px var(--line) inset,0 8px 18px -12px rgba(40,30,120,.5)}
.rec-tnum{flex:1;display:flex;align-items:baseline;justify-content:center;gap:2px;min-width:0;cursor:text}
.rec-tnum input{all:unset;box-sizing:border-box;width:4.4ch;min-width:0;text-align:right;font-family:var(--mono);font-size:58px;font-weight:700;letter-spacing:-.06em;line-height:1.05;color:var(--ink);transition:color .3s;caret-color:var(--accent)}
.rec-tnum input::placeholder{color:#B8BCD0}
.rec-tnum small{font-size:20px;color:var(--faint);font-weight:700;font-family:var(--mono)}
.rec-temp.ok .rec-tnum input{color:var(--ok)}
.rec-temp.bad .rec-tnum input{color:var(--bad)}
.rec-tst{display:flex;align-items:center;justify-content:center;gap:7px;font-size:13px;font-weight:800;color:var(--muted);min-height:20px;text-align:center}
.rec-tst .ico{width:17px;height:17px}
.rec-temp.ok .rec-tst{color:var(--ok)}
.rec-temp.bad .rec-tst{color:var(--bad)}
.rec-qt{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;padding:2px;overflow:visible}
.rec-qt .chip{justify-content:center;padding:9px 0;font-size:14px;min-width:0;background:rgb(var(--w) / .75)}
.rec-qt .chip.hot{color:var(--bad)}
.rec-qt .chip.on{background:var(--ok);border-color:var(--ok);color:#fff}
.rec-qt .chip.on.hot{background:var(--bad);border-color:var(--bad)}
.rec-dry{margin:0;padding:4px 2px 0}

.rec-date{position:relative;gap:6px}
.rec-date .ico{width:15px;height:15px}
.rec-date input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;border:0;padding:0}
.rec-fr .chip .ico{width:15px;height:15px;margin-right:6px;opacity:.7}

/* proof photo */
.rec-proof{gap:10px}
.rec-ph{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:12px;padding:10px 14px 10px 10px;border-radius:18px;border:1.5px dashed rgba(74,31,230,.32);background:rgba(74,31,230,.035);min-height:66px;transition:background .2s}
.rec-ph:hover{background:rgba(74,31,230,.07)}
.rec-ph .tx{flex:1;min-width:0}
.rec-ph .tx b{display:block;font-weight:800;font-size:14.5px;letter-spacing:-.015em}
.rec-ph .tx em{display:block;font-style:normal;font-size:12.5px;color:var(--muted);font-weight:600}
.rec-ph > .ico:last-child{color:var(--faint)}
.rec-ph.has{border-style:solid;border-color:rgba(7,138,94,.3);background:rgba(7,138,94,.05);cursor:default;padding-right:8px}
.rec-ph .th{width:52px;height:52px;border-radius:13px;overflow:hidden;flex:none;position:relative;background:rgb(var(--k) / .06)}
.rec-ph .th.scan::after{content:"";position:absolute;left:0;right:0;height:40%;top:-40%;background:linear-gradient(180deg,transparent,rgba(122,77,255,.55));animation:sweep 1.1s var(--ease) infinite}
.rec-x{width:44px;height:44px}
.rec-x .ico{width:16px;height:16px}
.rec-lot{display:flex;align-items:center;gap:12px}
.rec-lot .lbl{flex:none;width:72px}
.rec-lot .input{height:46px}

/* step 3 — control */
.rec-sum{display:flex;flex-direction:column;gap:14px}
.rec-sum-h{display:flex;align-items:center;gap:12px}
.rec .rec-sum-h .av,.rec-hs-h .av{width:46px;height:46px;border-radius:15px;font-size:15px}
.rec-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.rec-stats span{display:flex;flex-direction:column;padding:10px 12px;border-radius:16px;background:rgb(var(--k) / .04);font-size:12px;font-weight:700;color:var(--muted);min-width:0}
.rec-stats b{font-size:26px;color:var(--ink);line-height:1.1}
.rec-stats .ok b{color:var(--ok)}
.rec-stats .bad{background:rgba(212,42,72,.08);color:var(--bad)}
.rec-stats .bad b{color:var(--bad)}
.rec-callout{display:flex;gap:10px;align-items:center;padding:12px 14px;border-radius:16px;background:rgba(212,42,72,.09);color:var(--bad);font-weight:750;font-size:13.5px;line-height:1.35}
.rec-callout.ok{background:rgba(7,138,94,.09);color:var(--ok)}
.rec-ctls{display:flex;flex-direction:column;gap:10px}
.rec-ctl{border-radius:22px;overflow:hidden;transition:background .3s,border-color .3s}
.rec-ctl-h{all:unset;box-sizing:border-box;cursor:pointer;width:100%;display:flex;align-items:center;gap:12px;padding:12px 14px;min-height:64px}
.rec-ctl.issue{background:rgb(var(--w) / .9);border-color:rgba(212,42,72,.4);box-shadow:0 0 0 1px rgba(212,42,72,.18),0 18px 36px -20px rgba(212,42,72,.45)}
.rec-ctl.issue .rec-ctl-h{cursor:default}
.rec-ctl.reserve{border-color:rgba(184,108,0,.4);box-shadow:0 0 0 1px rgba(184,108,0,.15),var(--sh)}
.rec-ctl.refused{background:color-mix(in srgb,rgb(255 236 240 / .9) var(--pastel),rgb(var(--w) / .9));border-color:rgba(212,42,72,.4)}
.rec-ctl.refused .tx b{text-decoration:line-through;text-decoration-color:rgba(212,42,72,.6);text-decoration-thickness:2px}
.rec-ctl-b{padding:0 14px 14px;display:flex;flex-direction:column;gap:12px;animation:recOpen .35s var(--ease) both}
.rec-iss{display:flex;gap:6px;flex-wrap:wrap}
.rec-iss .pill .ico{width:13px;height:13px}
.rec-seg button{min-height:44px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;line-height:1.2}
.rec-seg.none .knob{opacity:0}
.rec-seg button.refuse.on{color:var(--bad)}
.rec-seg button.reserve.on{color:var(--warn)}
.rec-seg button.ok.on{color:var(--ok)}
.rec-why{display:flex;flex-direction:column;gap:8px}
.rec-why .chips{flex-wrap:wrap}
.rec-why .input{height:46px}

/* step 4 — done */
.rec-donev .rec-stage > *{animation:rise .6s var(--ease) both}
.rec-donev .rec-stage > :nth-child(2){animation-delay:.35s}
.rec-donev .rec-stage > :nth-child(3){animation-delay:.45s}
.rec-donev .rec-stage > :nth-child(4){animation-delay:.55s}
.rec-hero{text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px;padding:18px 0 6px}
.rec-hero .sub{margin:4px 0 0;font-size:14px}
.rec-seal{width:120px;height:120px;position:relative;display:grid;place-items:center;margin-bottom:10px}
.rec-seal::before{content:"";position:absolute;inset:10px;border-radius:50%;background:linear-gradient(150deg,#34C88F,#078A5E);box-shadow:0 22px 44px -14px rgba(7,138,94,.75),inset 0 2px 0 rgb(var(--hl) / calc(.35 * var(--hla)));animation:pop .7s var(--spring) both}
.rec-seal svg{width:54px;height:54px;position:relative;stroke:#fff;fill:none;stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;animation:drawc .55s .35s var(--ease) both}
.rec-seal .r1,.rec-seal .r2{position:absolute;inset:0;border-radius:50%;border:2px solid rgba(7,138,94,.4);animation:recRing 1.6s .3s var(--ease) both}
.rec-seal .r2{animation-delay:.6s}
@keyframes recRing{from{transform:scale(.55);opacity:1}to{transform:scale(1.55);opacity:0}}
.rec-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.rec-tiles > div{background:var(--glass);border:1px solid var(--edge);border-radius:20px;padding:14px 8px;display:flex;flex-direction:column;align-items:center;gap:2px;box-shadow:var(--sh)}
.rec-tiles b{font-size:30px;line-height:1.05;color:var(--faint)}
.rec-tiles span{font-size:12px;font-weight:750;color:var(--muted)}
.rec-tiles .ok b{color:var(--ok)}.rec-tiles .warn b{color:var(--warn)}.rec-tiles .bad b{color:var(--bad)}
.rec-refl .li{padding:10px 0}

/* history */
.rec-day{display:flex;flex-direction:column;gap:8px}
.rec-day + .rec-day{margin-top:8px}
.rec-day > .lbl{padding:0 6px}
.rec-hlist{padding:4px 6px}
.rec-h{all:unset;box-sizing:border-box;cursor:pointer;width:100%;display:flex;align-items:center;gap:12px;padding:12px 10px;border-radius:16px;transition:background .2s;min-height:64px}
.rec-h:hover{background:rgb(var(--w) / .55)}
.rec-h + .rec-h{box-shadow:0 -1px 0 var(--line)}
.rec-h .phi,.rec-h .chv{width:16px;height:16px;color:var(--faint)}
.rec-hs-h{display:flex;gap:12px;align-items:center}
.rec-hs-h .av{display:grid;place-items:center;color:#fff;font-weight:800;flex:none}
.rec-hs{max-height:52vh;overflow:auto;margin:0 -4px;padding:0 4px}
.rec-hs .li .tx em{white-space:normal}

@media (min-width:960px){
 .rec-q .title{font-size:40px}
 .rec-card{padding:22px;gap:22px}
}
.view[data-route=reception]{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 14px)}
.rec-types{flex-wrap:nowrap}
.rec-types .chip{flex:1;justify-content:center;padding:9px 8px}
@media (min-width:960px){.rec-cta.col{grid-template-columns:1.5fr 1fr}}
.rec-ph.has{gap:10px}.rec-ph.has .tx em{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ── QA pass: one-hand reach, tap targets, clarity ── */
/* the primary CTA always sits at the thumb, even on short screens (step 1, a 1-product contrôle) */
@media (max-width:959px){.rec{min-height:100%;box-sizing:border-box}.rec > .rec-cta{margin-top:auto}}
/* progress steps: same look, 44px hit area */
.rec-prog .s{padding:9px 0;margin:-9px 0}
.rec-card-h .btn{height:44px}
/* DLC: every choice visible on a phone, no hidden horizontal scroll */
.rec-dlc{display:grid;grid-template-columns:repeat(5,minmax(0,1fr)) minmax(48px,auto);gap:6px}
.rec-dlc .chip{justify-content:center;padding:9px 4px;min-width:0}
.rec-dlc .rec-date{padding:9px 12px}
.rec-dlc .rec-date .ico{width:17px;height:17px}
.rec-date .mono{font-size:12.5px}
.rec-f.shake > .lbl,.rec-f.shake > .row .lbl{color:var(--bad)}
.rec-f.shake .rec-dlc .chip:not(.on){border-color:rgba(212,42,72,.45)}
.rec-fr{flex-wrap:wrap;overflow:visible}
/* contrôle: undecided = two clear, tinted buttons, not floating text */
.rec-seg.none{background:none;border:0;padding:0;gap:8px}
.rec-seg.none button{min-height:52px;background:var(--solid);border-radius:16px;box-shadow:0 0 0 1.5px var(--line) inset,0 8px 18px -14px rgba(40,30,120,.5);transition:transform .15s var(--ease)}
.rec-seg.none button:active{transform:scale(.97)}
.rec-seg.none button.reserve{color:var(--warn);box-shadow:0 0 0 1.5px rgba(184,108,0,.35) inset,0 8px 18px -14px rgba(184,108,0,.6)}
.rec-seg.none button.refuse{color:var(--bad);box-shadow:0 0 0 1.5px rgba(212,42,72,.35) inset,0 8px 18px -14px rgba(212,42,72,.6)}
.rec-seg.none button.fix{color:var(--accent);box-shadow:0 0 0 1.5px rgba(74,31,230,.3) inset,0 8px 18px -14px rgba(74,31,230,.6)}
.rec-fix{align-self:flex-start;height:44px;margin:-4px 0 -6px -8px}
.rec-fix .ico{width:15px;height:15px}
.rec-undo{all:unset;cursor:pointer;margin-left:6px;padding:10px 12px;margin-block:-10px;font-weight:800;color:#B9A6FF}

/* done: one compact bar, the label list stays visible */
.rec-cta.done2{grid-template-columns:1fr 1fr}
.rec-cta.done2 .btn{height:52px;gap:8px;font-size:14.5px}
.rec-cta.done2 .btn span:not(.rec-n){overflow:hidden;text-overflow:ellipsis}
.rec-cta.done2 .rec-n{background:rgba(255,255,255,.25)}
.rec-donev .rec-hero{padding:6px 0 0}
.rec-donev .rec-seal{width:96px;height:96px;margin-bottom:6px}
.rec-donev .rec-seal svg{width:44px;height:44px}
.rec-donev .rec-tiles > div{padding:10px 8px}
.rec-donev .rec-tiles b{font-size:26px}

/* product card: one column on phones, two on wide screens */
.rec-cgrid,.rec-ccol{display:contents}

/* desktop: use the width (P1-4) */
@media (min-width:960px){
  .inner.narrow.rec{max-width:1040px}
  .rec-sups{grid-template-columns:repeat(4,minmax(0,1fr))}
  .rec-s1 .rec-new{flex-direction:row;align-items:flex-end}
  .rec-s1 .rec-new .field{flex:1;min-width:0}
  .rec-cgrid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:22px;align-items:start}
  .rec-ccol{display:flex;flex-direction:column;gap:22px;min-width:0}
  .rec-lines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .rec-ctls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
  .rec-s3 .rec-sum{flex-direction:row;align-items:center;flex-wrap:wrap;gap:14px 20px}
  .rec-s3 .rec-sum-h{flex:1 1 220px}
  .rec-s3 .rec-stats{flex:2 1 360px}
  .rec-s3 .rec-sum .field{flex:1 1 100%}
  .rec-cta{max-width:640px;width:100%;margin-left:auto;margin-right:auto;box-sizing:border-box}
  .rec-cta.done2{max-width:560px}
  .rec-donev .rec-stage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:14px 22px;align-items:start}
  .rec-donev .rec-stage > .rec-hero{grid-column:1;padding-top:24px}
  .rec-donev .rec-stage > .rec-tiles{grid-column:1}
  .rec-donev .rec-stage > .glass{grid-column:2;grid-row:1 / span 3}
  .rec-donev .rec-stage > .rec-refl{grid-column:1;grid-row:auto}
  .rec-hlist{padding:4px 10px}
}
@media (min-width:1500px){.inner.narrow.rec{max-width:1160px}}
@media (max-width:959px){.rec-cta.done2{grid-template-columns:1.25fr 1fr}.rec-cta.done2 .btn.soft{padding:0 10px}}
@media (max-width:420px){.rec-cta.done2 .btn.soft .ico{display:none}}
@media (max-width:959px){.rec-cta.done2{grid-template-columns:1fr 1fr}.rec-cta.done2 .btn{padding:0 10px;font-size:14px}}
@media (max-width:420px){.rec-cta.done2 .btn .ico{display:none}}

/* montant de la livraison + prix par produit (alimente Finances) */
.rec-cost{display:flex;flex-direction:column;gap:12px}
.rec-amt{position:relative;display:block}
.rec-amt input{height:62px;font-size:26px;font-weight:700;letter-spacing:-.04em;padding-right:76px}
.rec-amt b{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:15px;font-weight:800;color:var(--faint);pointer-events:none}
.rec-amt input.bump{animation:bump .32s var(--spring)}
.rec-sumln{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:13px;font-weight:650;color:var(--muted);min-height:0}
.rec-sumln:empty{display:none}
.rec-sumln b{color:var(--ink)}
.rec-sumln .btn.ghost{margin:-6px -8px -6px 0}
.rec-pt{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:12px;padding:10px 12px 10px 10px;border-radius:16px;background:rgb(var(--k) / .035);min-height:60px;transition:background .2s}
.rec-pt .ic{width:38px;height:38px;border-radius:13px}
.rec-pt .tx{flex:1;min-width:0}
.rec-pt .tx b{display:block;font-weight:800;font-size:14.5px;letter-spacing:-.015em}
.rec-pt .tx em{display:block;font-style:normal;font-size:12.5px;color:var(--muted);font-weight:600}
.rec-pt .chv{color:var(--faint);transition:transform .35s var(--spring)}
.rec-pt.on .chv{transform:rotate(180deg)}
.rec-pt:hover{background:rgba(74,31,230,.06)}
.rec-pt:focus-visible{outline:2.5px solid var(--accent)}
.rec-prices{display:flex;flex-direction:column;animation:rise .45s var(--ease) both}
.rec-pr{display:flex;align-items:center;gap:12px;padding:8px 0}
.rec-pr+.rec-pr{border-top:1px solid var(--line)}
.rec-pr .tx{flex:1;min-width:0}
.rec-pr .tx b{display:block;font-weight:750;font-size:14.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rec-pr .tx em{display:block;font-style:normal;font-size:12.5px;color:var(--muted)}
.rec-pin{position:relative;flex:none;width:140px}
.rec-pin input{height:48px;padding-right:62px;text-align:right;font-weight:700}
.rec-pin small{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:11px;font-weight:800;color:var(--faint);pointer-events:none;max-width:56px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rec-hamt{display:flex;align-items:center;gap:12px;padding:12px;border-radius:18px;background:rgb(var(--k) / .035)}
.rec-hamt .tx{flex:1;min-width:0}
.rec-hamt .tx b{display:block;font-weight:800;font-size:15px}
.rec-hamt .tx em{display:block;font-style:normal;font-size:12px;color:var(--muted);font-weight:600}
