/* Cadici Click & Collect — s'appuie sur les variables du thème Cadici, avec valeurs de repli. */
.cc-cart-link{position:relative;display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border:1px solid var(--line-dark,rgba(244,239,230,.16));color:inherit;text-decoration:none}
.cc-cart-link:hover{color:var(--brass,#c4a574)}
.cc-count{position:absolute;top:-.4rem;right:-.4rem;min-width:1.25rem;height:1.25rem;padding:0 .25rem;border-radius:1rem;background:var(--brass,#c4a574);color:var(--night,#0c1412);font:600 .6875rem/1.25rem var(--sans,sans-serif);text-align:center}
.cc-buy{display:flex;gap:.5rem;align-items:center;min-height:2.75rem}
.cc-buy .cc-add{width:100%}
.cc-buy--big{margin:1.25rem 0 2rem}.cc-buy--big .cc-add,.cc-buy--big .cc-qty{max-width:20rem}
.cc-qty{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:2.75rem;border:1px solid var(--ink,#161410);background:#fff}
.cc-qty__b{width:2.75rem;height:2.75rem;border:0;background:none;font-size:1.25rem;cursor:pointer;color:inherit}
.cc-qty__b:hover{background:var(--cream,#f4efe6)}.cc-qty__b[disabled]{opacity:.35;cursor:not-allowed}
.cc-qty__n{font-weight:500;min-width:2rem;text-align:center}
.cc-toast{position:fixed;left:50%;bottom:5.5rem;z-index:60;transform:translate(-50%,1rem);display:flex;gap:1rem;align-items:center;padding:.85rem 1.1rem;background:var(--night,#0c1412);color:var(--cream,#f4efe6);font-size:.875rem;box-shadow:0 8px 24px rgba(0,0,0,.25);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;max-width:calc(100vw - 2rem)}
.cc-toast.is-on{opacity:1;transform:translate(-50%,0);pointer-events:auto}
.cc-toast__undo{background:none;border:0;color:var(--brass,#c4a574);text-decoration:underline;cursor:pointer;min-height:2rem}
.cc-bar{position:fixed;left:0;right:0;bottom:0;z-index:55;background:var(--night,#0c1412);color:var(--cream,#f4efe6);border-top:1px solid var(--line-dark,rgba(244,239,230,.16))}
.cc-bar__in{max-width:76rem;margin:0 auto;padding:.6rem clamp(1.25rem,4vw,2rem);display:flex;justify-content:space-between;align-items:center;gap:1rem}
.cc-bar__sum{margin:0;font-size:.9375rem}
body.has-cc-bar{padding-bottom:4rem}
/* Parcours */
.cc{max-width:46rem}
.cc-steps{list-style:none;margin:1.5rem 0 2rem;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.25rem}
.cc-steps__btn{width:100%;min-height:2.75rem;display:flex;align-items:center;gap:.5rem;padding:.5rem;border:0;border-top:2px solid var(--line,rgba(22,20,16,.14));background:none;font:500 .6875rem/1.2 var(--sans,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:var(--muted,#5c564c);cursor:pointer;text-align:left}
.cc-steps__n{display:inline-grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:50%;border:1px solid currentColor;flex:none;letter-spacing:0}
.cc-steps__btn[aria-current=step]{color:var(--ink,#161410);border-top-color:var(--ink,#161410)}
.cc-steps__btn[aria-current=step] .cc-steps__n{background:var(--ink,#161410);color:var(--cream,#f4efe6)}
.cc-steps__btn.is-done{color:var(--forest,#1a3c32);border-top-color:var(--forest,#1a3c32)}
@media (max-width:560px){.cc-steps__btn{flex-direction:column;align-items:flex-start;font-size:.625rem;letter-spacing:.06em}}
@media (max-width:399px){.cc-steps{grid-template-columns:repeat(4,auto);justify-content:space-between}.cc-steps li{min-width:2.75rem}.cc-steps__btn .cc-steps__l{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.cc-steps__btn[aria-current=step] .cc-steps__l{position:static;width:auto;height:auto;clip:auto}}
.cc:not(.is-js) .cc-steps{display:none}
.cc-panel{border:1px solid var(--line,rgba(22,20,16,.14));background:#fbf8f2;padding:clamp(1.25rem,4vw,2rem);margin-bottom:1.5rem}
.cc-panel h2:focus{outline:none}
.cc-list{list-style:none;margin:0 0 1rem;padding:0}
.cc-line{display:grid;grid-template-columns:56px 1fr auto;grid-template-areas:"img name rm" "img qty sum";gap:.5rem 1rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--line,rgba(22,20,16,.14))}
.cc-line img,.cc-ph{grid-area:img;width:56px;height:56px;object-fit:cover;background:#e9e2d4}
.cc-line__name{grid-area:name;font:400 1.25rem/1.2 var(--serif,serif)}.cc-line__name small{display:block;font:300 .8125rem var(--sans,sans-serif);color:var(--muted,#5c564c)}
.cc-line .cc-qty{grid-area:qty;width:8.5rem}
.cc-line__sum{grid-area:sum;font-weight:500;text-align:right}
.cc-rm{grid-area:rm;justify-self:end;width:2.75rem;height:2.75rem;border:0;background:none;font-size:1.5rem;cursor:pointer;color:var(--muted,#5c564c)}
.cc-rm:hover{color:#8a2d1f}
.cc-total{display:flex;justify-content:space-between;gap:1rem;font-size:1.0625rem;margin:1rem 0}
.cc-list--recap li{display:flex;justify-content:space-between;gap:1rem;padding:.4rem 0;border-bottom:1px solid var(--line,rgba(22,20,16,.14))}
.cc-list--recap .cc-total{border:0;margin:.5rem 0 0}
.cc-pay,.cc-help{font-size:.875rem;color:var(--muted,#5c564c)}
.cc-pre-note{font-size:.875rem;color:var(--brass-dark,#7d5f31);font-weight:500}
.cc-nav{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin:1.5rem 0 0}
.cc-inline{width:auto}
.cc-days{border:0;padding:0;margin:0 0 1.25rem;min-width:0;max-width:100%}
.cc-days__legend{padding:0;margin-bottom:.6rem;font:500 .75rem/1.4 var(--sans,sans-serif);letter-spacing:.14em;text-transform:uppercase}
.cc-days__hint{letter-spacing:0;text-transform:none;font-weight:300;color:var(--muted,#5c564c)}
.cc-days__scroll{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:4.25rem;gap:.5rem;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding:0 .25rem;padding:.25rem .25rem .5rem;margin:0 -.25rem;scrollbar-width:thin;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 2.5rem),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 2.5rem),transparent)}
.cc-days__scroll.is-end{-webkit-mask-image:none;mask-image:none}
.cc-day{position:relative;scroll-snap-align:start;display:grid;grid-template-rows:auto auto auto;justify-items:center;align-content:center;gap:.1rem;height:4.75rem;padding:.35rem .2rem;border:1px solid rgba(22,20,16,.28);background:#fff;cursor:pointer;text-align:center;white-space:nowrap}
.cc-day input,.cc-slot input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.cc-day__w,.cc-day__m{font:500 .6875rem/1.1 var(--sans,sans-serif);letter-spacing:.06em;text-transform:lowercase;color:var(--muted,#5c564c)}
.cc-day__n{font:400 1.625rem/1 var(--serif,serif)}
.cc-day:has(input:checked){background:var(--night,#0c1412);border-color:var(--night,#0c1412);color:var(--cream,#f4efe6);box-shadow:inset 0 -4px 0 var(--brass,#c4a574)}
.cc-day:has(input:checked) .cc-day__w,.cc-day:has(input:checked) .cc-day__m{color:rgba(244,239,230,.85)}
.cc-day:has(input:checked)::after{content:"✓";position:absolute;top:.2rem;right:.3rem;font-size:.6875rem;color:var(--brass,#c4a574)}
.cc-day.is-off{cursor:not-allowed;color:#77716a;border-style:dashed;background:repeating-linear-gradient(135deg,transparent 0 6px,rgba(22,20,16,.05) 6px 12px)}
.cc-day.is-off .cc-day__n{text-decoration:line-through}
.cc-day.is-off .cc-day__m{color:#8a2d1f;text-transform:none;letter-spacing:0}
.cc-day:has(input:focus-visible),.cc-slot:has(input:focus-visible){outline:2px solid var(--brass-dark,#7d5f31);outline-offset:2px;z-index:1}
.cc-slots{border:0;padding:0;margin:0 0 1rem;min-width:0}
.cc-slots legend{font:400 1.25rem var(--serif,serif);margin-bottom:.75rem;padding:0}
.cc-slots__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}
@media (min-width:400px){.cc-slots__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (min-width:700px){.cc-slots__grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
.cc-slot{position:relative;display:flex;align-items:center;justify-content:center;min-height:2.75rem;border:1px solid rgba(22,20,16,.28);background:#fff;font-weight:500;font-size:.9375rem;font-variant-numeric:tabular-nums;cursor:pointer}
.cc-slot:has(input:checked){background:var(--forest,#1a3c32);color:var(--cream,#f4efe6);border-color:var(--forest,#1a3c32);box-shadow:inset 0 -3px 0 var(--brass,#c4a574)}
.cc-slot.is-past,.cc-slot.is-full,.cc-slot:has(input:disabled){color:#8b857c;background:transparent;border-style:dashed;cursor:not-allowed;text-decoration:line-through}
.cc-badge{display:inline-block;padding:.6rem .9rem;background:#e4ece5;border-left:3px solid var(--forest,#1a3c32);font-size:.875rem}
.cc-recap p{margin:.75rem 0}
.cc-info{max-width:46rem;margin-top:3rem}
.cc-info .h2{margin-top:2.5rem}
.cc-how{padding-left:1.25rem}.cc-how li{margin:.4rem 0}
.cc-hours .hours__row{border-color:var(--line,rgba(22,20,16,.14))}
.cc-done{max-width:40rem;border:1px solid var(--line,rgba(22,20,16,.14));background:#fbf8f2;padding:clamp(1.5rem,5vw,3rem)}
.cc-done:focus{outline:none}
.cc-done__check{width:3rem;height:3rem;display:grid;place-items:center;border-radius:50%;background:var(--forest,#1a3c32);color:var(--cream,#f4efe6);font-size:1.5rem}
.cc-done__num{font-size:1.125rem}.cc-done__num strong{font-size:1.375rem;letter-spacing:.04em}
.cc-done__slot{font:400 1.75rem/1.2 var(--serif,serif);text-transform:none}
.cc-done__items{list-style:none;padding:0;margin:1.5rem 0}
.cc-done__items li{display:flex;justify-content:space-between;gap:1rem;padding:.45rem 0;border-bottom:1px solid var(--line,rgba(22,20,16,.14))}
.cc-done__items .cc-total{border:0;font-weight:500}
.cc-done__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.5rem 0}

@media (max-width:359px){.cc-line{grid-template-columns:44px minmax(0,1fr) auto;grid-template-areas:"img name rm" "qty qty sum";gap:.4rem .6rem}.cc-line img,.cc-ph{width:44px;height:44px}.cc-line .cc-qty{width:7.5rem}.cc-panel{padding:1rem}}
