/* Shared basket surfaces: Studio home, catalog, product page and full overview. */
.nc-cart-stock{font-size:.68rem;line-height:1.4;min-height:1rem}
.nc-cart-variant{display:flex;align-items:baseline;flex-wrap:wrap;gap:2px 10px}.nc-cart-variant>.nc-cart-stock{border-left:1px solid #87998c55;padding-left:10px}
.nc-stock{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.25rem .45rem;color:#286348;font-size:.7rem;line-height:1.5}
.nc-stock small{font-size:inherit;opacity:.8}.nc-stock--delayed,.nc-stock--on_order{color:#815317}.nc-stock--unavailable{color:#9b3832}.nc-stock--unknown{color:#657267}
.nc-stock:is(.nc-stock--delayed,.nc-stock--on_order,.nc-stock--unavailable){padding:1px 5px;border:1px solid currentColor;border-radius:5px;font-weight:500}
.nc-stock-note{font-size:.74rem;line-height:1.65;margin:.75rem 0;padding:.65rem .8rem;border-radius:10px;background:#f8efd9;color:#694a18;border:1px solid #ddc28c}
html[data-commerce-theme=night] .nc-stock{color:#a5d4b4}html[data-commerce-theme=night] .nc-stock--delayed,html[data-commerce-theme=night] .nc-stock--on_order{color:#e7c181}html[data-commerce-theme=night] .nc-stock--unavailable{color:#f3aaa2}html[data-commerce-theme=night] .nc-stock--unknown{color:#a7b7ac}html[data-commerce-theme=night] .nc-stock-note{color:#ebd4a1;background:#352f22;border-color:#746343}
.nc-cart,.nc-basket-drawer,.nc-basket-zoom{
    --basket-bg:#fff;--basket-ink:#15231c;--basket-muted:#59685f;--basket-line:#dfe5de;
    --basket-soft:#edf6f3;--basket-accent:#0fa6aa;--basket-photo:linear-gradient(145deg,#e5ece7,#f3f6ef);
    color:var(--basket-ink);font:inherit;line-height:1.45;
}
[data-public-chat-theme=night] :is(.nc-cart,.nc-basket-drawer,.nc-basket-zoom),
[data-commerce-theme=night] :is(.nc-cart,.nc-basket-drawer,.nc-basket-zoom){
    --basket-bg:#0b2022;--basket-ink:#eff8f6;--basket-muted:#9eb6b3;--basket-line:#294548;
    --basket-soft:#123235;--basket-accent:#39c3c7;--basket-photo:radial-gradient(ellipse at 42% 30%,#d9e8e4,transparent 75%),linear-gradient(145deg,#7da7a5,#bed3cb 56%,#6b9795);
    color-scheme:dark;
}
:is(.nc-cart,.nc-basket-drawer,.nc-basket-zoom) *{box-sizing:border-box}
:is(.nc-cart,.nc-basket-drawer,.nc-basket-zoom) [hidden]{display:none!important}
:is(.nc-cart,.nc-basket-drawer) h2{color:inherit;font-size:16px;line-height:1.4;letter-spacing:-.02em;margin:4px 0}
:is(.nc-cart,.nc-basket-drawer) small{font-size:12px;color:var(--basket-muted)}
:is(.nc-cart,.nc-basket-drawer) input,:is(.nc-cart,.nc-basket-drawer) select{
    border:1px solid var(--basket-line);border-radius:9px;background:var(--basket-bg);color:var(--basket-ink);padding:9px;font:inherit;min-width:0;
}
:is(.nc-cart,.nc-basket-drawer,.nc-basket-zoom) :focus-visible{outline:2px solid var(--basket-accent);outline-offset:3px}
:is(.nc-cart,.nc-basket-drawer) :disabled{opacity:.45;cursor:wait}
.nc-cart{max-width:1400px;margin:auto;padding:24px 0 70px}
.nc-cart-heading{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:32px}
.nc-cart-heading h1{font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-.055em;margin:8px 0}
.nc-cart-heading p{max-width:680px;color:var(--basket-muted)}
.nc-cart-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start}
.nc-cart-lines{display:grid;align-content:start;gap:16px;min-width:0}
.nc-cart-group{border:1px solid var(--basket-line);border-radius:18px;background:var(--basket-bg);padding:20px;min-width:0;container-type:inline-size}
.nc-cart-group-heading{display:flex;align-items:start;justify-content:space-between;gap:18px}
.nc-cart-group-heading>div{min-width:0;overflow-wrap:anywhere}
.nc-cart-service-icon{width:48px;height:48px;object-fit:contain;flex:none}.nc-cart-service-icon+div{flex:1}
.nc-cart-group-heading>strong{font-size:18px;white-space:nowrap;padding-top:21px;margin-left:auto;text-align:right;font-variant-numeric:tabular-nums}
.nc-cart-previews{display:flex;flex-wrap:nowrap;gap:8px;margin:14px 0}
.nc-cart-previews figure{margin:0;min-width:0;width:76px;flex:0 1 76px}
.nc-cart-previews button{display:flex;align-items:center;justify-content:center;border:1px solid var(--basket-line);background:var(--basket-photo);border-radius:10px;padding:5px 0;width:100%;height:76px;cursor:zoom-in;overflow:hidden}
.nc-cart-previews img{display:block;width:74px;max-width:100%;height:100%;object-fit:contain}
.nc-basket-drawer .nc-cart-previews{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);width:100%}
.nc-basket-drawer .nc-cart-previews figure{width:100%}
.nc-cart-previews figcaption{text-align:center;font-size:9px;color:var(--basket-muted);padding-top:4px;overflow-wrap:anywhere}
.nc-cart-line{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(90px,auto);grid-template-areas:"description actions prices";gap:6px 12px;align-items:start;border-top:1px solid var(--basket-line);padding-top:10px;margin-top:10px}
.nc-cart-line>.nc-cart-description{grid-area:description}.nc-cart-line>.nc-cart-line-actions{grid-area:actions;align-self:center}.nc-cart-line>.nc-cart-line-prices{grid-area:prices;align-self:center}
.nc-cart-line:has(>.nc-cart-previews,>.nc-cart-preview-link){grid-template-areas:"previews previews previews" "description actions prices"}
.nc-cart-description{display:grid;gap:3px;font-size:13px;overflow-wrap:anywhere}
.nc-cart-line-total{font-size:14px;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.nc-cart-line-actions,.nc-cart-line-actions form{display:flex;align-items:center;gap:4px;margin:0}
.nc-cart-line-actions:empty{display:none}
.nc-cart-qty-form input[name=qty]{width:58px;height:36px;padding:5px;font-size:12px;text-align:center}
.nc-cart-unit{display:block;font-size:11px;line-height:1.5;opacity:.8}
.nc-cart-line-prices{text-align:right;display:grid;gap:2px;justify-items:end;align-content:start;white-space:nowrap;font-variant-numeric:tabular-nums}
.nc-cart-components{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:0 5px;font-size:10px!important;line-height:1.5}
.nc-cart-components span{white-space:nowrap}.nc-cart-total-count{font-size:.74rem;color:var(--basket-muted,#657267);margin:0}
.nc-cart-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:36px;height:36px;padding:8px;border:0;border-radius:9px;background:transparent;color:var(--basket-ink);cursor:pointer;text-decoration:none}
.nc-cart-icon svg{display:block;width:20px;height:20px;flex:none}
.nc-cart-icon:hover{background:var(--basket-soft)}
.nc-cart-remove:hover{color:#cb443a}
.nc-cart-summary{position:sticky;top:24px;display:grid;gap:18px;border:1px solid var(--basket-line);border-radius:18px;background:var(--basket-bg);padding:24px}
.nc-cart-summary>div:not(.nc-cart-bottom-actions):not([data-stock-summary]){display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:14px}
.nc-cart-summary>[data-stock-summary]:empty{display:none}
.nc-cart-summary strong{font-size:24px;letter-spacing:-.04em;white-space:nowrap}
.nc-cart-summary p{font-size:12px;line-height:1.6;color:var(--basket-muted);margin:0}
.nc-cart-bottom-actions{display:grid;gap:10px}
.nc-cart .nc-cart-button,.nc-basket-drawer .nc-cart-button{display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:12px;padding:11px 16px;border:1px solid transparent;background:var(--basket-accent);color:#14231a;font:inherit;font-size:13px;font-weight:600;text-align:center;text-decoration:none;cursor:pointer}
.nc-cart .nc-cart-button--quiet,.nc-basket-drawer .nc-cart-button--quiet{background:transparent;border-color:var(--basket-line);color:var(--basket-ink)}
.nc-cart-button:hover{filter:brightness(.95)}
.nc-cart-notice{border-radius:12px;background:#eaa81f20;padding:14px;font-size:13px}
.nc-cart-empty{display:grid;align-content:center;justify-items:center;text-align:center;padding:64px 24px;min-height:300px}
.nc-cart-empty>svg{width:62px;height:62px;padding:14px;border:1px solid var(--basket-line);border-radius:20px;background:var(--basket-soft);margin-bottom:16px}
.nc-cart-empty h2{font-size:20px}
.nc-cart-empty p{max-width:280px;margin:8px 0;color:var(--basket-muted);font-size:13px}
.nc-cart-extra-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.nc-cart-extra-grid article{border:1px solid var(--basket-line);border-radius:18px;background:var(--basket-bg);padding:24px}
.nc-cart-extra-grid form{display:grid;gap:12px}
.nc-cart-extra-grid label{display:grid;gap:7px;font-size:13px}
.nc-cart-extras{margin-top:40px}
.nc-basket-count{min-width:18px;font-size:11px;text-align:center;font-variant-numeric:tabular-nums}
.nc-header-basket{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;border:1px solid currentColor;border-radius:14px;color:inherit;text-decoration:none;background:transparent;opacity:.85}
.nc-header-basket svg{width:25px;height:25px}
.nc-header-basket.is-filled{color:#16afb3;opacity:1}
.nc-header-basket.is-filled .nc-basket-bowl{fill:currentColor}
.nc-header-basket.is-filled .nc-basket-bars{stroke:#fff}
.nc-header-basket-count{position:absolute;right:-6px;top:-7px;min-width:20px;height:20px;padding:0 4px;border-radius:20px;display:grid;place-items:center;background:#113a3c;color:#fff;font-family:inherit;font-size:11px;font-weight:600;line-height:1}
.nc-header-basket-count[hidden]{display:none}
.nc-header-basket:focus-visible{outline:2px solid #16afb3;outline-offset:4px}
html[data-public-chat-layout] .site-header.site-header--basket{grid-template-columns:minmax(190px,1fr) auto minmax(130px,1fr) 44px;column-gap:12px}
@media(max-width:840px){.site-header.site-header--basket>.nc-header-basket{order:2}}
.nc-cart-line>:is(.nc-cart-previews,.nc-cart-preview-link){grid-area:previews;margin:0}
.nc-cart-preview-link{color:var(--basket-accent);background:none;border:0;padding:10px 0;cursor:pointer}
.nc-cart-team-label{display:inline-block;margin-top:8px;padding:3px 8px;border:1px solid var(--basket-line);border-radius:20px}
.nc-basket-modal-open{overflow:hidden!important}
.nc-basket-drawer{position:fixed;inset:0 0 0 auto;margin:0;border:0;border-left:1px solid var(--basket-line);width:min(100%,600px);max-width:100%;height:100%;height:100dvh;max-height:100dvh;padding:0;background:var(--basket-bg);color:var(--basket-ink);box-shadow:-12px 0 60px #00181926;overflow:hidden;text-align:left}
.nc-basket-drawer:not([open]),.nc-basket-zoom:not([open]){display:none}
.nc-basket-drawer[open]{display:flex;flex-direction:column}
.nc-basket-drawer::backdrop,.nc-basket-zoom::backdrop{background:#0017197a;backdrop-filter:blur(3px)}
.nc-basket-drawer-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 24px;border-bottom:1px solid var(--basket-line);flex:none}
.nc-basket-drawer-heading h2{font-size:22px;margin:0;display:flex;gap:12px;align-items:center}
.nc-basket-drawer-heading [data-basket-count]{font-size:13px;min-width:28px;border:1px solid var(--basket-line);border-radius:20px;padding:3px 8px;color:var(--basket-muted)}
.nc-basket-drawer-content{display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden}
.nc-basket-drawer-content>.nc-cart-lines{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:20px 24px;scrollbar-width:thin}
.nc-basket-drawer-content .nc-cart-group{border:0;border-radius:0;padding:0 0 20px;border-bottom:1px solid var(--basket-line);background:transparent}
.nc-basket-drawer-content .nc-cart-empty{min-height:100%}
.nc-basket-drawer-content>.nc-cart-summary{position:static;flex:none;border:0;border-top:1px solid var(--basket-line);border-radius:0;padding:20px 24px max(20px,env(safe-area-inset-bottom));gap:12px;box-shadow:0 -8px 20px #00181906}
.nc-basket-drawer .nc-cart-bottom-actions{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.nc-basket-drawer-content[aria-busy=true] .nc-cart-lines{opacity:.65}
.nc-basket-feedback{padding:12px 24px;background:#eaa81f18;border-bottom:1px solid var(--basket-line);font-size:13px}
.nc-basket-feedback p{margin:0 0 8px}
.nc-basket-loading{padding:30px;color:var(--basket-muted);font-size:14px}
.nc-basket-zoom{inset:0;margin:auto;width:min(92vw,800px);max-width:92vw;max-height:90dvh;border:1px solid var(--basket-line);border-radius:20px;background:var(--basket-bg);padding:48px 20px 20px}
.nc-basket-zoom>button{position:absolute;top:8px;right:8px}
.nc-basket-zoom header h2{font-size:18px;margin:0 0 6px;color:inherit}
.nc-basket-zoom header p,.nc-basket-zoom>[role=status]{font-size:13px;color:var(--basket-muted)}
.nc-basket-zoom>[role=status]{min-height:1.5em;margin:.5rem 0}
.nc-basket-gallery{display:grid;grid-template-columns:80px minmax(0,1fr);gap:16px}
.nc-basket-gallery-viewport{height:clamp(220px,52dvh,560px);min-width:0;display:grid;place-items:center;position:relative}
.nc-preview-loading{position:relative}.nc-preview-loading img{visibility:hidden}
.nc-preview-spinner,.nc-preview-loading::after{content:"";position:absolute;top:50%;left:50%;width:22px;height:22px;margin:-11px 0 0 -11px;border:2px solid #67978a55;border-top-color:#209d91;border-radius:50%;box-sizing:border-box;animation:nc-preview-spin .85s linear infinite;z-index:1}
.nc-basket-gallery-viewport[aria-busy=true]>img{opacity:.2}
@keyframes nc-preview-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.nc-preview-spinner,.nc-preview-loading::after{animation-duration:2s}}
.nc-basket-gallery-viewport>img{display:block;width:100%;height:100%;min-height:0;object-fit:contain}
.nc-basket-gallery nav{display:flex;flex-direction:column;gap:8px;max-height:clamp(220px,52dvh,560px);overflow:auto;scrollbar-width:thin}
.nc-basket-gallery nav button{padding:4px;border:1px solid var(--basket-line);border-radius:9px;background:var(--basket-soft);color:inherit;font-size:10px;cursor:pointer}
.nc-basket-gallery nav button[aria-pressed=true]{border-color:var(--basket-accent)}
.nc-basket-gallery nav img{display:block;width:100%;aspect-ratio:1;object-fit:contain}
.nc-basket-gallery-actions{display:flex;gap:14px;margin-top:15px}
.nc-basket-gallery-actions button{border:1px solid var(--basket-line);border-radius:9px;padding:9px 12px;background:var(--basket-soft);color:inherit;cursor:pointer;font:inherit;font-size:12px}
.nc-basket-toast{position:fixed;bottom:24px;right:24px;z-index:100001;max-width:calc(100vw - 48px);padding:18px 24px;background:#123c33;color:#fff;border:1px solid #8cd4b5;border-radius:18px;box-shadow:0 10px 50px #0003;display:flex;gap:18px;align-items:center;font-size:13px}
.nc-basket-toast a{color:#fff;text-decoration:underline}
.nc-basket-toast button{background:none;border:0;color:inherit;cursor:pointer}
.nc-order-lines{display:grid;gap:16px}.nc-order-line{padding:20px;border:1px solid var(--vz-border-color,#dde3e8);border-radius:14px;display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px}.nc-order-line img{width:72px;height:72px;object-fit:contain;border-radius:8px;background:#eef1f3}.nc-order-line form{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-top:12px}.nc-order-line label{display:grid;gap:5px;font-size:12px}.nc-order-line input{max-width:240px}.nc-order-summary{padding:24px;border-radius:16px;background:var(--vz-light,#f2f5f6);margin:20px 0}.nc-order-summary strong{font-size:25px}.nc-order-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:20px}.nc-order-grid>section{padding:22px;border:1px solid var(--vz-border-color,#ddd);border-radius:18px}.nc-order-grid form{display:grid;gap:12px}.nc-order-grid label{display:grid;gap:6px}.nc-order-grid textarea{min-height:94px}
.nc-order-badge{color:var(--vz-body-color,#33413d);background:transparent;border:1px solid var(--vz-border-color,#c7d3ce);font-size:12px;font-weight:500}.nc-order-line--plain{grid-template-columns:1fr}
@media(max-width:900px){.nc-cart-layout{grid-template-columns:1fr}.nc-cart-summary{position:static}.nc-cart-heading{align-items:start;flex-direction:column}.nc-order-line{grid-template-columns:1fr}}
@container(max-width:620px){
    .nc-cart-line .nc-cart-variant{flex-direction:column;align-items:flex-start;gap:0}
    .nc-cart-line .nc-cart-variant>.nc-cart-stock{border:0;padding-left:0}
}
@container(max-width:500px){
    .nc-cart-line{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"description prices" "actions prices";gap:6px 8px}
    .nc-cart-line:has(>.nc-cart-previews,>.nc-cart-preview-link){grid-template-areas:"previews previews" "description prices" "actions prices"}
    .nc-cart-line>.nc-cart-line-actions{justify-self:start}
    .nc-cart-line>.nc-cart-line-prices{align-self:end}
}
@container(max-width:360px){
    .nc-cart-line-actions,.nc-cart-line-actions form{gap:2px}
    .nc-cart-line-actions .nc-cart-icon{width:32px;padding:6px}
    .nc-cart-qty-form input[name=qty]{width:52px}
}
@media(max-width:480px){
    .nc-cart-group{padding:16px}
    .nc-basket-drawer-heading{padding:16px}.nc-basket-drawer-content>.nc-cart-lines{padding:20px 16px}
    .nc-basket-drawer-content>.nc-cart-summary{padding:16px 16px max(16px,env(safe-area-inset-bottom))}
    .nc-cart-group-heading>strong{font-size:16px}.nc-basket-drawer .nc-cart-bottom-actions{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:no-preference){
    .nc-basket-drawer[open]{animation:nc-basket-in .22s ease-out}
    @keyframes nc-basket-in{from{transform:translateX(100%)}to{transform:translateX(0)}}
}
.nc-cart-empty p a { color:var(--nc-ink,inherit); text-decoration:underline; text-underline-offset:3px; font-weight:500; }
.nc-cart-empty p a:hover { color:#278d83; }
