/* ==========================================================================
   Intcenta redesign — shop.css  (v1)
   Plain CSS (no build step). Loaded by resources/views/layouts/shop.blade.php.
   Design system from the approved prototype. Colour rules:
   - primary/chrome #22262B (NOT red) · red #D61F27 = urgency only
   - green in stock · amber low stock
   ========================================================================== */
:root{
  --chrome:#22262B; --hero-dark:#1b1e22; --accent:#D61F27; --stock:#1d7a3c; --low:#b98a00;
  --surface:#fff; --page:#e9e8e6; --panel:#f4f4f3; --chip:#f0efee;
  --ink:#000; --ink-2:#767676; --ink-3:#8a8a8a; --ink-4:#999;
  --line:#e6e6e6; --line-2:#e2e2e2; --line-3:#eee; --input:#d5d5d5;
  --on-dark-1:#b6bcc4; --on-dark-2:#aab0b8; --on-dark-3:#9aa0a8; --on-dark-4:#7f858d;
  --ff:'Archivo',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,Menlo,monospace;
}
*{box-sizing:border-box;}
body.shop{margin:0;background:var(--page);font-family:var(--ff);color:var(--ink);-webkit-font-smoothing:antialiased;}
.shop a{color:inherit;text-decoration:none;}
.shop img{max-width:100%;}
.shop .clk{cursor:pointer;}
.tnum{font-variant-numeric:tabular-nums;}
.mono{font-family:var(--mono);}
.shop-shell{width:1280px;max-width:100%;margin:0 auto;background:var(--surface);min-height:100vh;display:flex;flex-direction:column;}
.eyebrow{font-weight:500;font-size:11px;letter-spacing:.18em;text-transform:uppercase;}
.section{padding:28px 32px;}

/* brand wordmark */
.brand{font:700 19px var(--ff);letter-spacing:-.02em;line-height:1;white-space:nowrap;color:var(--ink);}
.brand--sm{font-size:15px;}
.brand--invert{color:#fff;}
/* Official logo, inline SVG — the navy wordmark tracks `color` via
   currentColor so the same markup works on light and dark backgrounds;
   the red accent stroke stays fixed to the brand accent token. */
.brand-logo-svg{width:auto;display:block;}
.brand-logo{height:24px;color:var(--chrome);}
.brand-logo--footer{height:20px;color:#fff;}

/* ---- utility bar ---- */
.utilbar{display:flex;justify-content:space-between;align-items:center;background:var(--chrome);color:#fff;padding:6px 32px;font:400 12px var(--ff);}
.utilbar .left,.utilbar .right{display:flex;gap:20px;align-items:center;}
.utilbar .muted{color:var(--on-dark-3);}
.utilbar a.strong{font-weight:600;color:#fff;}
.utilbar a:hover{color:var(--accent);}

/* ---- header ---- */
.header{display:flex;align-items:center;gap:28px;padding:18px 32px;border-bottom:1px solid var(--line);}
.header .logo{flex:none;}
.search{flex:1;display:flex;height:44px;border:2px solid var(--chrome);border-radius:6px;overflow:hidden;position:relative;}
.search input{flex:1;border:0;outline:none;padding:0 16px;font:400 14px var(--ff);color:#333;min-width:0;}
.search button{display:flex;align-items:center;padding:0 22px;background:var(--chrome);color:#fff;font:600 13px var(--ff);border:0;cursor:pointer;}
.search .search-results{position:absolute;top:46px;left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:0 0 6px 6px;box-shadow:0 8px 24px rgba(0,0,0,.12);z-index:40;max-height:60vh;overflow:auto;}
.sres-empty{padding:18px 16px;font:500 13px var(--ff);color:var(--ink-3);text-align:center;}
.sres-dym{padding:9px 14px;font:500 12px var(--ff);color:var(--ink-2);background:var(--surface);border-bottom:1px solid var(--line-2);}
.sres-dym strong{color:var(--chrome);}
.sres-cats{display:flex;flex-wrap:wrap;gap:6px;padding:10px 14px;border-bottom:1px solid var(--line-2);}
.sres-cat{font:600 11px var(--ff);color:var(--chrome);background:var(--panel);border:1px solid var(--line-2);border-radius:20px;padding:4px 11px;text-decoration:none;white-space:nowrap;}
.sres-cat:hover{background:var(--chrome);color:#fff;}
.sres-list{display:flex;flex-direction:column;}
.sres-row{display:flex;align-items:center;gap:12px;padding:9px 14px;text-decoration:none;border-bottom:1px solid var(--line-2);}
.sres-row:last-child{border-bottom:0;}
.sres-row:hover,.sres-row.is-active{background:var(--surface);}
.sres-thumb{flex:none;width:34px;height:34px;border-radius:5px;background:#f7f6f4;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.sres-thumb img{max-width:100%;max-height:100%;object-fit:contain;}
.sres-mid{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;}
.sres-name{font:600 13px var(--ff);color:#000;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.sres-code{font:400 11px var(--mono);color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.sres-end{flex:none;display:flex;align-items:center;gap:8px;}
.sres-dot{width:8px;height:8px;border-radius:50%;flex:none;}
.sres-dot--in{background:var(--stock);}
.sres-dot--out{background:var(--ink-3);}
.sres-price{font:700 13px var(--ff);color:#000;white-space:nowrap;}
.sres-more{display:block;padding:11px 14px;font:600 12px var(--ff);color:var(--chrome);text-align:center;border-top:1px solid var(--line);text-decoration:none;background:var(--surface);}
.sres-more:hover{color:var(--accent);}
.actions{display:flex;gap:22px;flex:none;font:500 12px var(--ff);}
.action{display:flex;flex-direction:column;align-items:center;gap:4px;position:relative;background:none;border:0;color:#000;cursor:pointer;font:500 12px var(--ff);}
.action .ico{width:20px;height:20px;border:1.5px solid var(--chrome);}
.action .ico--sq{border-radius:4px;}.action .ico--rnd{border-radius:50%;}.action .ico--cart{border-radius:4px 4px 8px 8px;}
.cart-badge{position:absolute;top:-6px;right:2px;background:var(--accent);color:#fff;font:600 10px var(--ff);border-radius:9px;padding:1px 6px;min-width:16px;text-align:center;}

/* ---- category nav ---- */
.catnav{display:flex;gap:4px;align-items:center;padding:0 32px;background:var(--panel);border-bottom:1px solid var(--line);font:500 13px var(--ff);color:#1a1a1a;flex-wrap:wrap;}
.catnav .item{padding:12px 14px;white-space:nowrap;color:inherit;}
.catnav .item--all{padding:12px 16px;background:var(--chrome);color:#fff;}
.catnav .item:not(.item--all):hover{color:var(--accent);}
.catnav .spacer{flex:1;}
.catnav .item--selloff{color:var(--accent);font-weight:700;}
.catnav .item--new{font-weight:700;}

/* ---- footer ---- */
.footer{background:var(--chrome);color:#fff;padding:28px 32px;display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:auto;flex-wrap:wrap;}
.footer .links{display:flex;gap:24px;font:400 12px var(--ff);color:var(--on-dark-2);}
.footer .links a:hover{color:#fff;}
.footer .copy{font:400 11px var(--ff);color:var(--on-dark-4);}

/* ---- buttons ---- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:6px;font:600 13px var(--ff);padding:11px 22px;white-space:nowrap;border:0;cursor:pointer;}
a.btn--dark,.btn--dark{background:var(--chrome);color:#fff;}
a.btn--light,.btn--light{background:#fff;color:var(--chrome);}
a.btn--ghost-dark,.btn--ghost-dark{border:1.5px solid #565c65;color:#fff;background:transparent;}
a.btn--outline,.btn--outline{border:1.5px solid var(--chrome);color:var(--chrome);background:#fff;}
.btn--block{display:flex;width:100%;}

/* ---- hero ---- */
.hero{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:40px;padding:40px 32px;background:var(--hero-dark);color:#fff;}
.hero .copy{flex:1;}
.hero .eyebrow{color:#ff8a8e;margin-bottom:10px;display:flex;align-items:center;gap:7px;}
.hero .eyebrow .livedot{width:7px;height:7px;border-radius:50%;background:#8de0a6;flex:none;box-shadow:0 0 0 3px rgba(141,224,166,.25);}
.hero h1{font:700 34px/1.12 var(--ff);letter-spacing:-.01em;max-width:540px;margin:0;color:#fff;}
.hero p{font:400 14px/1.5 var(--ff);color:var(--on-dark-1);margin:12px 0 20px;max-width:480px;}
.hero .hero-cta{display:flex;gap:12px;flex-wrap:wrap;}
.hero .hero-img{width:460px;height:230px;flex:none;background:#fff;border:1px solid #333;border-radius:8px;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.hero .hero-img img{width:100%;height:100%;object-fit:contain;}
.hero-stats{display:flex;gap:14px;margin:18px 0 22px;flex-wrap:wrap;}
.hero-stats .hero-stat{background:rgba(255,255,255,.05);border:1px solid #33383f;border-radius:8px;padding:12px 18px;}
.hero-stats .hero-stat .hs-v{font:700 22px var(--ff);color:#fff;}
.hero-stats .hero-stat .hs-l{font:500 11px var(--ff);color:var(--on-dark-2);text-transform:uppercase;letter-spacing:.06em;margin-top:2px;}

/* ---- quick-order pad ---- */
.qopad{background:var(--chrome);border:1px solid #2e3339;border-radius:10px;padding:20px;display:flex;flex-direction:column;gap:12px;}
.qopad .qo-head{font:700 14px var(--ff);color:#fff;}
.qopad .qo-sub{font:400 12px var(--ff);color:var(--on-dark-2);margin-top:-8px;}
.qopad textarea{width:100%;min-height:110px;resize:vertical;background:#1a1d21;border:1px solid #383e45;border-radius:8px;color:#fff;font:400 13px var(--mono);padding:10px 12px;outline:none;}
.qopad textarea::placeholder{color:#666d75;}
.qopad .qo-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.qopad .qo-add{background:var(--accent);color:#fff;border:0;border-radius:6px;padding:11px 18px;font:600 13px var(--ff);cursor:pointer;flex:1;}
.qopad .qo-add:hover{filter:brightness(1.08);}
.qopad .qo-upload{font:500 12px var(--ff);color:var(--on-dark-2);border:1px solid #444b53;border-radius:6px;padding:10px 14px;cursor:pointer;white-space:nowrap;}
.qopad .qo-upload input{display:none;}
.qopad .qo-note{font:400 11px var(--ff);color:var(--on-dark-3);}
.qopad .qo-results{display:flex;flex-direction:column;gap:4px;max-height:140px;overflow:auto;}
.qopad .qo-line{display:flex;justify-content:space-between;gap:8px;font:400 12px var(--ff);padding:5px 0;border-top:1px solid #2e3339;}
.qopad .qo-line:first-child{border-top:0;}
.qopad .qo-line .code{font-family:var(--mono);color:var(--on-dark-1);}
.qopad .qo-line .ok{color:#8de0a6;}
.qopad .qo-line .err{color:#ff9a9d;}
.qopad .qo-login{font:400 13px/1.5 var(--ff);color:var(--on-dark-1);}
.qopad .qo-login a{color:#fff;font-weight:700;text-decoration:underline;}

/* ---- spec quick-access chips ---- */
.spec-chips{display:flex;flex-wrap:wrap;gap:10px;}
.spec-chip{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;background:var(--chip);border:1px solid var(--line-2);border-radius:20px;font:500 12px var(--ff);color:#000;}
.spec-chip:hover{border-color:var(--chrome);color:var(--chrome);}
.spec-chip .grp{color:var(--ink-3);}

/* ---- trade CTA band ---- */
.trade-cta{background:var(--hero-dark);border-radius:14px;padding:34px 40px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;color:#fff;}
.trade-cta .t{font:700 22px var(--ff);letter-spacing:-.01em;}
.trade-cta .s{font:400 13px var(--ff);color:var(--on-dark-1);margin-top:6px;max-width:460px;}

/* ---- section heads / grids ---- */
.sec-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:16px;}
.sec-title{font:700 18px var(--ff);color:#000;}
.sec-link{font:500 12px var(--ff);color:var(--accent);}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}

/* ---- image box + placeholder ---- */
.imgbox{background:#fff;border:1px solid var(--line-3);border-radius:6px;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.imgbox img{width:100%;height:100%;object-fit:contain;}
.imgbox.is-empty{background:radial-gradient(circle at 30% 30%,#fbfbfb,#f1f1f0);position:relative;}
.imgbox.is-empty::after{content:"";position:absolute;inset:24%;border-radius:4px;background:linear-gradient(180deg,#dfe1e3,#c7cace 60%,#b6b9bd);box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 -2px 4px rgba(0,0,0,.12);}

/* ---- category card ---- */
.cat-card{border:1px solid var(--line-2);border-radius:8px;padding:16px;display:flex;flex-direction:column;gap:12px;background:#fff;}
.cat-card .imgbox{height:100px;}
.cat-card .t{font:600 14px var(--ff);color:#000;}
.cat-card .s{font:400 12px var(--ff);color:#777;margin-top:2px;}

/* ---- product card ---- */
.pcard{border:1px solid var(--line-2);border-radius:8px;padding:14px;display:flex;flex-direction:column;gap:10px;background:#fff;position:relative;}
.pcard .imgbox{height:130px;}
.pcard .brand-line{font:400 11px var(--mono);color:var(--ink-3);}
.pcard .name{font:500 13px/1.35 var(--ff);color:#000;min-height:35px;}
.pcard .card-code{display:block;font:400 10px var(--mono);color:#9a9a9a;margin-top:-6px;}
.pcard .price{font:700 17px var(--ff);color:#000;}
.pcard .tag{position:absolute;top:10px;left:10px;font:700 9px var(--ff);letter-spacing:.06em;text-transform:uppercase;padding:3px 7px;border-radius:4px;color:#fff;}
.tag--new{background:var(--chrome);}
.tag--selloff{background:var(--accent);}
.tag--phaseout{background:#494ea3;}
.addcart{background:var(--chrome);color:#fff;border-radius:6px;display:flex;align-items:center;justify-content:center;font:600 12px var(--ff);height:36px;width:100%;border:0;cursor:pointer;}
.addcart:hover{filter:brightness(1.1);}
.morebtn{border:1.5px solid var(--chrome);color:var(--chrome);background:#fff;border-radius:6px;display:flex;align-items:center;justify-content:center;font:600 12px var(--ff);height:36px;width:100%;}
.login-hint{font:500 11px var(--ff);color:var(--ink-2);text-align:center;padding:8px 0;}

/* ---- trust ---- */
.trust{display:flex;gap:12px;align-items:flex-start;background:var(--panel);border-radius:8px;padding:16px;}
.trust .bar{width:8px;height:34px;background:var(--accent);border-radius:3px;flex:none;}
.trust .t{font:600 13px var(--ff);color:#000;}
.trust .b{font:400 12px/1.45 var(--ff);color:#666;}

/* ---- brands ---- */
.brands-sec{text-align:center;}
.brands-label{display:flex;align-items:center;justify-content:center;gap:14px;font:700 12px var(--ff);letter-spacing:.14em;color:var(--ink-3);margin-bottom:22px;}
.brands-rule{display:inline-block;width:36px;height:2px;background:var(--accent);}
.brands-row{display:flex;flex-wrap:wrap;gap:36px;align-items:center;justify-content:center;}
.brands-name{font:500 15px var(--ff);letter-spacing:.1em;color:var(--ink-2);white-space:nowrap;text-transform:uppercase;}

/* ---- responsive ---- */
@media(max-width:1000px){.grid-4{grid-template-columns:repeat(2,1fr);}}
@media(max-width:760px){
  .section{padding:22px 18px;}
  .utilbar{padding:6px 18px;font-size:11px;}
  .utilbar .muted.hide-sm{display:none;}
  .header{padding:14px 18px;gap:14px;flex-wrap:wrap;}
  .header .logo{order:1;}.actions{order:2;margin-left:auto;gap:16px;}.search{order:3;flex-basis:100%;}
  .catnav{overflow-x:auto;flex-wrap:nowrap;padding:0 18px;}
  .hero{grid-template-columns:1fr;align-items:stretch;padding:24px 18px;gap:20px;}
  .hero .hero-img{width:100%;}.hero h1{font-size:27px;}
  .hero-stats{gap:18px;}
  .grid-4,.grid-3{grid-template-columns:repeat(2,1fr);}
  .footer{flex-direction:column;align-items:flex-start;gap:14px;}
  .trade-cta{padding:26px 22px;}
}
@media(max-width:460px){.grid-4,.grid-3{grid-template-columns:1fr;}}

/* ===== CATALOG ===== */
.crumb{font:400 12px var(--ff);color:var(--ink-2);margin-bottom:8px;}
.crumb a:hover{color:var(--accent);}
.crumb .cur{color:#000;}
.page-title{font:700 26px var(--ff);letter-spacing:-.01em;color:#000;}
.page-count{font:400 13px var(--ff);color:var(--ink-2);}
.catalog-grid{display:grid;grid-template-columns:248px 1fr;gap:24px;align-items:start;}
.side-panel{font:400 13px var(--ff);color:#333;}
.side-panel h3{font:700 14px var(--ff);color:#000;margin:0 0 12px;}
.side-block{border-top:1px solid var(--line);padding:16px 0;}
.side-block:first-child{border-top:0;padding-top:0;}
.cat-tree ul{list-style:none;margin:0;padding:0;}
.cat-tree .content-box__link{display:block;padding:6px 0;font:500 13px var(--ff);color:#333;}
.cat-tree .content-box__link:hover{color:var(--accent);}
.cat-tree .content-box__link.active-cat{color:var(--chrome);font-weight:700;}
.cat-tree .content-box__link.has-child{position:relative;padding-right:18px;cursor:pointer;}
.cat-tree .content-box__link.has-child::after{content:"";position:absolute;right:2px;top:12px;width:6px;height:6px;border-right:1.5px solid var(--ink-2);border-bottom:1.5px solid var(--ink-2);transform:rotate(-45deg);transition:transform .15s;}
.cat-tree .content-box__link.has-child.is-open::after{transform:rotate(45deg);}
.cat-tree .content-box__sub-cats{list-style:none;padding-left:12px;border-left:1px solid var(--line-2);margin:2px 0 6px;display:none;}
.cat-tree .content-box__sub-cats.is-open{display:block;}

/* admin-only inline category reordering (sidebar tree + top nav) */
.content-box__link.is-draggable{cursor:grab;}
.content-box__link.is-draggable::before{content:"⠿";display:inline-block;margin-right:6px;color:var(--ink-3);}
.catnav .item.is-draggable{cursor:grab;}
[data-cat-id].is-dragging{opacity:.35;}
.filter-panel .filter__box{margin-bottom:10px;}
.filter-panel select{width:100%;height:40px;border:1px solid var(--input);border-radius:6px;padding:0 12px;font:400 13px var(--ff);background:#fff;color:#000;cursor:pointer;}
.filter-panel .filter__btn{border:0;padding:0;background:none;}
.filter-panel .dropdown__action{font:600 12px var(--ff);color:#000;margin-bottom:8px;}
.filter__price{display:flex;gap:10px;margin-bottom:8px;}
.filter__col{flex:1;}
.filter__col label{display:block;font:500 11px var(--ff);color:var(--ink-2);margin-bottom:4px;}
.filter__col input{width:100%;height:38px;border:1px solid var(--input);border-radius:6px;padding:0 10px;font:400 13px var(--ff);}
.filter-panel .range-slider{display:none;}
.range-slider-submit{display:inline-block;margin-top:6px;padding:7px 14px;background:var(--chrome);color:#fff;border-radius:6px;font:600 11px var(--ff);cursor:pointer;}
.filter-panel .filter__actions{display:flex;gap:10px;align-items:center;margin-top:12px;}
.filter-panel .filter__actions button{flex:1;height:40px;background:var(--chrome);color:#fff;border:0;border-radius:6px;font:600 12px var(--ff);cursor:pointer;}
.filter-panel .filter__actions a{font:500 12px var(--ff);color:var(--ink-2);}
.clear-filters{display:inline-block;margin-top:8px;font:500 11px var(--ff);color:var(--accent);}
.results-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:16px;font:500 13px var(--ff);color:var(--ink-2);}
.catalog-grid .pagination{display:flex;list-style:none;gap:6px;padding:24px 0;margin:0;justify-content:center;flex-wrap:wrap;}
.catalog-grid .pagination .page-link{display:flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 8px;border:1px solid var(--input);border-radius:6px;font:500 13px var(--ff);color:#000;text-decoration:none;}
.catalog-grid .pagination .active .page-link{background:var(--chrome);color:#fff;border-color:var(--chrome);}
.catalog-grid .pagination .disabled .page-link{color:#bbb;}
@media(max-width:900px){.catalog-grid{grid-template-columns:1fr;}}

/* ===== PRODUCT DETAIL ===== */
.pd-crumb{padding:18px 32px 6px;font:400 12px var(--ff);color:var(--ink-2);}
.pd-crumb a:hover{color:var(--accent);}
.pd-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:36px;padding:16px 32px 28px;}
.gallery{display:flex;gap:14px;}
.gallery .thumbs{display:flex;flex-direction:column;gap:10px;}
.gallery .thumb{width:64px;height:64px;border:1px solid var(--line-2);border-radius:6px;overflow:hidden;background:#fff;padding:0;cursor:pointer;}
.gallery .thumb.is-active{border:2px solid var(--chrome);}
.gallery .thumb img{width:100%;height:100%;object-fit:contain;}
.gallery .main-img{flex:1;background:#fff;border:1px solid var(--line-2);border-radius:10px;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:360px;}
.gallery .main-img img{width:100%;height:100%;object-fit:contain;padding:20px;}
.brand-chips{display:flex;gap:8px;margin-bottom:10px;flex-wrap:wrap;}
.bchip{font:600 10px var(--ff);letter-spacing:.06em;padding:4px 8px;border-radius:4px;text-transform:uppercase;}
.bchip--dark{background:var(--chrome);color:#fff;}
.bchip--grey{background:var(--panel);color:#444;}
.bchip--accent{background:var(--accent);color:#fff;}
.pd-title{font:700 26px/1.2 var(--ff);letter-spacing:-.01em;color:#000;margin:0;}
.pd-code{font:400 13px var(--mono);color:var(--ink-3);margin:6px 0 16px;}
.pd-desc{font:400 14px/1.55 var(--ff);color:#555;margin:16px 0;}
.pd-desc h1,.pd-desc h2,.pd-desc h3{font-size:15px;font-weight:700;margin:12px 0 6px;color:#000;}
.pd-desc ul{padding-left:18px;margin:8px 0;}
.pd-desc table{width:100%;border-collapse:collapse;font-size:13px;}
.pd-desc td,.pd-desc th{border-bottom:1px solid var(--line-3);padding:6px 8px;text-align:left;}
.buybox{border:1px solid var(--line-2);border-radius:10px;padding:18px;}
.buybox .price{font:700 30px var(--ff);color:#000;font-variant-numeric:tabular-nums;}
.buybox .vat{font:400 12px var(--ff);color:var(--ink-4);margin:2px 0 14px;}
.buybox .buy-row{display:flex;gap:10px;align-items:center;}
.buybox .stepper{display:flex;align-items:center;border:1px solid var(--input);border-radius:8px;height:46px;overflow:hidden;flex:none;}
.buybox .stepper button{width:36px;height:100%;border:0;background:none;font-size:18px;cursor:pointer;color:var(--ink-2);}
.buybox .stepper input{width:44px;height:100%;border:0;text-align:center;font:500 15px var(--ff);-moz-appearance:textfield;outline:none;}
.buybox .stepper input::-webkit-outer-spin-button,.buybox .stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.buybox .add{flex:1;height:46px;background:var(--chrome);color:#fff;border:0;border-radius:8px;font:600 14px var(--ff);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;}
.buybox .add:hover{filter:brightness(1.1);}
.buybox .login-note{font:500 13px var(--ff);color:var(--low);}
.buybox .nostock{font:500 13px var(--ff);color:var(--accent);}
.dlbtn{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:10px 16px;border:1.5px solid var(--chrome);color:var(--chrome);border-radius:8px;font:600 12px var(--ff);}
.pd-section{padding:0 32px 28px;}
.pd-section h2{font:700 18px var(--ff);margin:0 0 12px;color:#000;}
.dl-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line-3);font:400 13px var(--ff);}
.dl-row .dlink{color:var(--accent);font-weight:600;white-space:nowrap;}
@media(max-width:900px){.pd-grid{grid-template-columns:1fr;}}

/* ===== CART ===== */
.cart-grid{display:grid;grid-template-columns:1fr 340px;gap:28px;align-items:start;}
.cart-head,.cart-line{display:grid;grid-template-columns:72px 1fr 130px 110px 110px 32px;gap:14px;align-items:center;}
.cart-head{padding:10px 0;border-bottom:1px solid var(--line);font:600 11px var(--ff);letter-spacing:.04em;color:var(--ink-2);}
.cart-head .r{text-align:right;}
.cart-line{padding:16px 0;border-bottom:1px solid var(--line-3);}
.cart-line .imgbox{width:72px;height:60px;}
.cart-line .nm{font:600 14px var(--ff);color:#000;}
.cart-line .ean{font:400 11px var(--mono);color:var(--ink-3);margin:3px 0 4px;}
.cart-line .stk{font:500 11px var(--ff);display:flex;align-items:center;gap:6px;}
.cart-line .stk .dot{width:8px;height:8px;border-radius:50%;flex:none;}
.stk--green{color:var(--stock);}.stk--green .dot{background:var(--stock);}
.stk--yellow{color:var(--low);}.stk--yellow .dot{background:var(--low);}
.stk--red{color:var(--accent);}.stk--red .dot{background:var(--accent);}
.cart-line .unit{font:500 14px var(--ff);color:#000;font-variant-numeric:tabular-nums;}
.cart-line .ltot{text-align:right;font:700 15px var(--ff);color:#000;font-variant-numeric:tabular-nums;}
.cart-line .rm{background:none;border:0;color:#bbb;cursor:pointer;font-size:18px;line-height:1;}
.cart-line .rm:hover{color:var(--accent);}
.cstep{display:flex;align-items:center;border:1px solid var(--input);border-radius:8px;height:40px;width:110px;overflow:hidden;}
.cstep button{width:32px;height:100%;border:0;background:none;font-size:16px;cursor:pointer;color:var(--ink-2);}
.cstep input{width:46px;height:100%;border:0;text-align:center;font:500 14px var(--ff);-moz-appearance:textfield;outline:none;}
.cstep input::-webkit-outer-spin-button,.cstep input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.cart-msg{margin-top:18px;}
.cart-msg label{font:600 12px var(--ff);color:#000;display:block;margin-bottom:6px;}
.cart-msg textarea{width:100%;min-height:80px;border:1px solid var(--input);border-radius:8px;padding:10px 12px;font:400 13px var(--ff);resize:vertical;outline:none;}
.cart-links-row{display:flex;gap:20px;margin-top:14px;flex-wrap:wrap;}
.cart-links-row a{font:500 13px var(--ff);color:var(--chrome);}
.summary{border:1px solid var(--line-2);border-radius:10px;padding:20px;}
.summary h3{font:700 15px var(--ff);color:#000;margin:0 0 14px;}
.summary .row{display:flex;justify-content:space-between;font:400 13px var(--ff);color:#444;padding:5px 0;}
.summary .row--vat{border-bottom:1px solid var(--line-3);margin-bottom:8px;}
.summary .total{display:flex;justify-content:space-between;align-items:baseline;padding:6px 0 16px;}
.summary .total .l{font:700 15px var(--ff);}
.summary .total .v{font:700 22px var(--ff);font-variant-numeric:tabular-nums;}
.summary .co{height:48px;}
.credit-warn{margin-top:12px;background:#fdeceb;border:1px solid #f5c2be;color:#a5271f;border-radius:8px;padding:10px 12px;font:500 12px/1.4 var(--ff);}
.cart-empty{padding:40px 0;color:var(--ink-2);font:400 14px var(--ff);}
@media(max-width:900px){.cart-grid{grid-template-columns:1fr;}}
@media(max-width:600px){.cart-head{display:none;}.cart-line{grid-template-columns:56px 1fr;gap:8px 12px;}.cart-line .cstep,.cart-line .unit,.cart-line .ltot{grid-column:2;}.cart-line .rm{grid-column:2;justify-self:start;}}

/* ===== CONFIRM / SUCCESS ===== */
.confirm{padding:60px 32px 80px;display:flex;flex-direction:column;align-items:center;text-align:center;}
.confirm .check{width:64px;height:64px;border-radius:50%;background:var(--stock);display:flex;align-items:center;justify-content:center;color:#fff;font-size:30px;margin-bottom:20px;}
.confirm h1{font:700 28px var(--ff);letter-spacing:-.01em;color:#000;margin:0;}
.confirm .sub{font:400 14px/1.6 var(--ff);color:var(--ink-2);margin:12px 0 0;max-width:480px;text-wrap:pretty;}
.confirm .cbtns{display:flex;gap:12px;margin-top:26px;flex-wrap:wrap;justify-content:center;}

/* ===== ACCOUNT (orders / invoices) ===== */
.acct-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;}
.acct-tabs{display:flex;gap:8px;}
.acct-tabs a{padding:9px 16px;border-radius:6px;font:600 13px var(--ff);color:var(--chrome);border:1px solid var(--line-2);background:#fff;}
.acct-tabs a.is-active{background:var(--chrome);color:#fff;border-color:var(--chrome);}
.acct-table{border:1px solid var(--line-2);border-radius:8px;overflow:hidden;margin-top:16px;}
.acct-table__head,.acct-table__row{display:grid;grid-template-columns:130px 1fr 70px 150px 150px;gap:12px;align-items:center;padding:12px 16px;}
.acct-table__head{background:var(--panel);font:600 11px var(--ff);letter-spacing:.04em;color:var(--ink-2);}
.acct-table__row{border-top:1px solid var(--line-3);font:400 13px var(--ff);}
.acct-table__row .num{font-family:var(--mono);font-weight:500;}
.acct-table__row .tot{font-weight:700;font-variant-numeric:tabular-nums;}
.acct-table__row .doc{color:var(--accent);font-weight:600;}
.acct-empty{padding:40px 16px;text-align:center;color:var(--ink-2);font:400 14px var(--ff);}
.acct-search{margin-top:22px;background:var(--panel);border-radius:10px;padding:20px;}
.acct-search .t{font:700 15px var(--ff);color:#000;}
.acct-search .s{font:400 13px var(--ff);color:var(--ink-2);margin:4px 0 12px;}
.acct-search input{width:100%;max-width:420px;height:44px;border:1px solid var(--input);border-radius:8px;padding:0 14px;font:400 14px var(--ff);outline:none;}
.acct-pager{display:flex;gap:10px;margin-top:16px;}
.acct-pager a{padding:9px 16px;border:1px solid var(--input);border-radius:6px;font:600 12px var(--ff);color:#000;}
@media(max-width:760px){.acct-table__head{display:none;}.acct-table__row{grid-template-columns:1fr 1fr;}}

/* ============ Catalog comparison table (Catalog Redesign) ============ */
.results-head{display:flex;align-items:center;justify-content:space-between;gap:16px;}
.view-toggle{display:flex;gap:2px;border:1px solid var(--input);border-radius:7px;overflow:hidden;}
.view-toggle a{padding:8px 14px;font:600 12px var(--ff);color:#555;background:var(--surface);text-decoration:none;}
.view-toggle a.is-active{background:var(--chrome);color:#fff;}

.cat-table-wrap{overflow-x:auto;margin-top:6px;}
/* table-layout:fixed only has column widths from .ct-name/.ct-stock/.ct-price
   to work with — on narrow viewports it was proportionally shrinking ALL
   columns (including the "fixed" px ones) to fit, instead of scrolling,
   which wrapped/overlapped the product name or collapsed it to 0 width when
   several spec columns competed for the same squeeze. A min-width floor
   forces the wrapper's horizontal scroll to kick in instead. */
.cat-table{width:100%;min-width:860px;border-collapse:collapse;font:500 13px var(--ff);table-layout:fixed;}
.cat-table thead th{background:var(--chrome);color:#fff;font:600 11px var(--ff);text-align:left;padding:11px 12px;white-space:nowrap;position:sticky;top:0;}
.cat-table thead th:first-child{border-radius:8px 0 0 0;}
.cat-table thead th:last-child{border-radius:0 8px 0 0;text-align:right;}
.cat-table thead th a{color:#fff;text-decoration:none;display:inline-flex;gap:5px;align-items:center;}
.cat-table thead th a:hover{color:#fff;filter:none;text-decoration:underline;}
.ct-ar{opacity:.55;font-size:10px;}
.cat-table tbody td{padding:10px 12px;border-bottom:1px solid var(--line-3);vertical-align:middle;white-space:nowrap;}
.cat-table tbody tr:nth-child(odd) td{background:#f8f7f5;}
.cat-table tbody tr:hover td{background:#f1efec;}
.ct-check{width:34px;text-align:center;}
.ct-name{width:26%;}
.ct-stock{width:120px;}
.ct-price{width:120px;}
.cmp-check{width:15px;height:15px;accent-color:var(--chrome);cursor:pointer;}
.ct-prod{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit;min-width:0;}
.ct-thumb{width:42px;height:34px;flex:none;background:#fff;border:1px solid var(--line-3);border-radius:5px;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.ct-thumb img{width:100%;height:100%;object-fit:contain;}
.ct-name-text{min-width:0;}
.ct-title{display:block;font-weight:600;color:var(--chrome);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
/* Search / all-products views have no spec columns, so let the product name
   take the free width and wrap instead of truncating. */
.cat-table--nospec .ct-name{width:auto;}
.cat-table--nospec .ct-title{white-space:normal;overflow:visible;text-overflow:clip;}
.ct-code{display:block;font:400 10px var(--mono);color:#9a9a9a;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ct-spec{font-variant-numeric:tabular-nums;color:#333;overflow:hidden;}
.ct-spec-val{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:default;}
.stock{font-weight:600;}
.stock--in{color:var(--stock);}
.stock--low{color:var(--low);}
.stock--out{color:var(--ink-3);font-weight:500;}
.ct-price{text-align:right;}
.ct-price-cell{display:flex;flex-direction:column;align-items:flex-end;gap:6px;}
.ct-eur{font:700 15px var(--ff);white-space:nowrap;}
.ct-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;}
.ct-qty-mini{width:38px;height:30px;border:1px solid var(--line-2);border-radius:6px;text-align:center;font:600 12px var(--ff);}
.ct-add,.ct-more{width:30px;height:30px;flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;background:var(--chrome);color:#fff;text-decoration:none;font-size:17px;line-height:1;}
.ct-add:hover,.ct-more:hover{filter:brightness(1.15);color:#fff;}

.cmp-bar{position:sticky;bottom:14px;margin:18px 0 6px;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:var(--chrome);border-radius:9px;color:#fff;box-shadow:0 12px 30px -12px rgba(0,0,0,.5);}
.cmp-bar__n{font:500 13px var(--ff);}
.cmp-bar__actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;}
.cmp-bar__actions button{border:0;cursor:pointer;font:600 12px var(--ff);}
#cmp-clear{background:transparent;color:var(--on-dark-1);}
#cmp-go{background:#fff;color:var(--chrome);padding:10px 20px;border-radius:6px;}
#cmp-move-target{height:34px;border-radius:6px;border:1px solid var(--line-2);padding:0 8px;font:500 12px var(--ff);max-width:220px;}
#cmp-move{background:var(--accent);color:#fff;padding:10px 16px;border-radius:6px;}

/* admin-only inline category management (rename / add subgroup / add main group) */
.cat-row{display:flex;align-items:center;gap:2px;}
.cat-row .content-box__link{flex:1;min-width:0;}
.cat-actions{display:flex;gap:2px;flex:none;}
.cat-act{border:1px solid var(--line-2);background:#fff;color:var(--ink-2);width:20px;height:20px;line-height:1;border-radius:4px;cursor:pointer;font-size:12px;padding:0;}
.cat-act:hover{color:var(--accent);border-color:var(--accent);}
.cat-add-root{border:1px solid var(--line-2);background:#fff;color:var(--ink-2);border-radius:6px;padding:5px 10px;font:600 11px var(--ff);cursor:pointer;}
.cat-add-root:hover{color:var(--accent);border-color:var(--accent);}
.cat-snackbar{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:999;display:flex;align-items:center;gap:16px;padding:12px 18px;background:var(--chrome);color:#fff;border-radius:8px;box-shadow:0 12px 30px -12px rgba(0,0,0,.5);font:500 13px var(--ff);}
.cat-snackbar button{border:0;background:#fff;color:var(--chrome);font:600 12px var(--ff);padding:7px 14px;border-radius:6px;cursor:pointer;}
.cat-move-panel{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin:10px 0;padding:10px;background:#f8f7f5;border:1px solid var(--line-2);border-radius:8px;}
.cat-move-panel label{display:flex;flex-direction:column;gap:3px;font:600 11px var(--ff);color:var(--ink-2);}
.cat-move-panel select{height:32px;border-radius:6px;border:1px solid var(--line-2);padding:0 6px;font:500 12px var(--ff);max-width:180px;}
.cat-move-panel button{height:32px;border:0;border-radius:6px;padding:0 12px;font:600 12px var(--ff);cursor:pointer;}
#cat-move-go{background:var(--accent);color:#fff;}
#cat-move-cancel{background:transparent;color:var(--ink-2);}

/* ---- horizontal filter chips (catalog table) ---- */
.fchip-bar{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:2px 0 12px;}
.fchip{display:inline-flex;align-items:center;gap:6px;background:var(--surface);border:1px solid var(--input);border-radius:7px;padding:7px 10px 7px 12px;font:500 12px var(--ff);cursor:pointer;}
.fchip.is-on{border-color:var(--chrome);box-shadow:inset 0 0 0 1px var(--chrome);}
.fchip-lbl{color:var(--ink-3);}
.fchip.is-on .fchip-lbl{color:var(--chrome);font-weight:600;}
.fchip-sel{border:0;background:transparent;outline:none;font:600 12px var(--ff);color:var(--ink);cursor:pointer;max-width:130px;}
.fchip-spacer{flex:1;}
.fchip-count{font:600 13px var(--ff);color:var(--ink);white-space:nowrap;}
.fpills{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 12px;}
.fpill{display:inline-flex;align-items:center;gap:7px;background:var(--chrome);color:#fff;border-radius:16px;padding:6px 12px;font:500 11px var(--ff);text-decoration:none;}
.fpill span{opacity:.7;}
.fpill:hover{color:#fff;filter:brightness(1.15);}
.fpill-clear{font:500 11px var(--ff);color:var(--ink-3);text-decoration:none;padding:6px 4px;}
.fpill-clear:hover{color:var(--accent);}

/* ==================== Info pages (About / Contact / Delivery) ==================== */
.info-wrap{max-width:1000px;}
.info-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:26px;}
.info-tabs a{padding:12px 18px;font:600 13px var(--ff);color:#5a5f65;text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px;}
.info-tabs a:hover{color:var(--ink);}
.info-tabs a.is-active{color:var(--ink);border-bottom-color:var(--accent);}

.info-hero{display:grid;grid-template-columns:1.3fr 1fr;gap:30px;align-items:center;padding:8px 0 30px;}
.info-hero h1{font:800 30px var(--ff);letter-spacing:-.02em;line-height:1.12;margin:0 0 12px;}
.info-hero p{font:400 15px var(--ff);color:#5a5f65;line-height:1.6;margin:0;}
.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.stat{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px;}
.stat__n{font:800 20px var(--ff);color:var(--chrome);letter-spacing:-.01em;}
.stat__l{font:500 12px var(--ff);color:#767676;margin-top:3px;}

.info-section{padding:26px 0;border-top:1px solid var(--line);}
.info-section h2{font:700 22px var(--ff);letter-spacing:-.01em;margin:0 0 18px;}
.info-sub{font:700 16px var(--ff);margin:28px 0 14px;}

.offer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.offer-card{display:block;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s;}
.offer-card:hover{border-color:var(--chrome);box-shadow:0 10px 24px -16px rgba(0,0,0,.4);color:inherit;}
.offer-card__h{font:700 16px var(--ff);color:var(--chrome);margin-bottom:8px;}
.offer-card p{font:400 13px var(--ff);color:#5a5f65;line-height:1.55;margin:0 0 12px;}
.offer-card__go{font:600 12px var(--ff);color:var(--accent);}

.value-grid,.cards-3{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.cards-3{grid-template-columns:repeat(3,1fr);}
.value-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px;}
.value-card__h{font:700 14px var(--ff);margin-bottom:7px;}
.value-card p{font:400 12.5px var(--ff);color:#5a5f65;line-height:1.5;margin:0;}

.cta-band{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--chrome);color:#fff;border-radius:11px;padding:22px 26px;margin-top:26px;font:600 16px var(--ff);}
.cta-band__btn{background:#fff;color:var(--chrome);border-radius:7px;padding:11px 20px;font:600 13px var(--ff);text-decoration:none;white-space:nowrap;}
.cta-band__btn:hover{color:var(--chrome);filter:brightness(.94);}

/* Contact */
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:26px;align-items:start;}
.contact-cards{display:flex;flex-direction:column;gap:12px;}
.contact-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:15px 16px;}
.contact-card__l{font:600 11px var(--ff);text-transform:uppercase;letter-spacing:.05em;color:#8a8a8a;}
.contact-card__v{display:block;font:700 16px var(--ff);color:var(--chrome);text-decoration:none;margin:3px 0 2px;}
a.contact-card__v:hover{color:var(--accent);}
.contact-card__s{font:400 12px var(--ff);color:#767676;}
.map-holder{margin-top:12px;height:180px;border:1px dashed var(--input);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#aaa;font:500 13px var(--ff);background:var(--panel);}

.contact-form{display:flex;flex-direction:column;gap:14px;}
.form-row2{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.contact-form label{font:600 12px var(--ff);color:#444;display:flex;flex-direction:column;gap:6px;}
.contact-form input,.contact-form textarea{border:1.5px solid var(--input);border-radius:7px;padding:10px 12px;font:400 14px var(--ff);color:#222;outline:none;}
.contact-form input:focus,.contact-form textarea:focus{border-color:var(--chrome);}
.form-full{width:100%;}
.form-check{flex-direction:row;align-items:center;gap:9px;font-weight:500;color:#333;}
.form-check input{width:16px;height:16px;accent-color:var(--chrome);}
.form-submit{align-self:flex-start;background:var(--chrome);color:#fff;border:0;border-radius:7px;padding:13px 26px;font:600 13px var(--ff);cursor:pointer;}
.form-submit:hover{filter:brightness(1.12);}
.form-note{background:var(--chip);border-radius:7px;padding:10px 12px;font:500 12px var(--ff);color:#444;}
.form-alert{border-radius:7px;padding:10px 12px;font:500 13px var(--ff);}
.form-alert--err{background:#fdecec;color:#a11;border:1px solid #f4c3c3;}

/* Delivery */
.zone-wrap{margin-bottom:8px;}
.zone-table{width:100%;border-collapse:collapse;font:500 13.5px var(--ff);}
.zone-table th{background:var(--chrome);color:#fff;text-align:left;padding:11px 14px;font:600 12px var(--ff);}
.zone-table th:first-child{border-radius:8px 0 0 0;}
.zone-table th:last-child{border-radius:0 8px 0 0;}
.zone-table td{padding:12px 14px;border-bottom:1px solid var(--line-3);}
.zone-table tbody tr:nth-child(odd) td{background:#f8f7f5;}
.zone-note{font:400 12px var(--ff);color:#8a8a8a;margin:10px 0 0;}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.step{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:16px;}
.step__n{width:26px;height:26px;border-radius:50%;background:var(--chrome);color:#fff;display:flex;align-items:center;justify-content:center;font:700 13px var(--ff);margin-bottom:9px;}
.step__h{font:700 14px var(--ff);margin-bottom:5px;}
.step p{font:400 12.5px var(--ff);color:#5a5f65;line-height:1.5;margin:0;}

@media(max-width:820px){
  .info-hero,.contact-grid{grid-template-columns:1fr;}
  .offer-grid,.value-grid,.cards-3,.steps{grid-template-columns:1fr 1fr;}
  .form-row2{grid-template-columns:1fr;}
}
@media(max-width:520px){
  .offer-grid,.value-grid,.cards-3,.steps,.stat-grid{grid-template-columns:1fr;}
}

/* ---- legal pages (Terms / Privacy) ---- */
.legal-page{max-width:760px;padding:14px 0 10px;}
.legal-page h1{font:800 28px var(--ff);letter-spacing:-.02em;margin:6px 0 20px;}
.legal-page h2{font:700 18px var(--ff);margin:26px 0 10px;}
.legal-page h3{font:700 15px var(--ff);margin:20px 0 8px;}
.legal-page p,.legal-page li{font:400 14.5px var(--ff);color:#3a3f45;line-height:1.65;}
.legal-page ul,.legal-page ol{padding-left:22px;margin:10px 0;}
.legal-page li{margin:4px 0;}
.legal-page a{color:var(--accent);}
.legal-empty{color:#8a8a8a;font-style:italic;}

/* legal-page tables (privacy processing-purposes table) */
.legal-page table{width:100%;border-collapse:collapse;margin:14px 0 20px;font:400 13.5px var(--ff);}
.legal-page table td{padding:9px 12px;border:1px solid var(--line-2);vertical-align:top;}
.legal-page table tr:first-child td{background:var(--chrome);color:#fff;font-weight:600;}
.legal-page table tr:nth-child(even):not(:first-child) td{background:#f8f7f5;}

/* Fix: .shop a{color:inherit} (base reset) has higher CSS specificity
   (class+type) than the single-class component rules above that set an
   explicit anchor color, silently overriding them (e.g. white text on a
   white button background). Restate the intended colors with matching
   specificity so the component rules actually win. */
a.btn--dark{color:#fff;}
a.btn--outline{color:var(--chrome);}
a.cta-band__btn{color:var(--chrome);}
a.ct-add,a.ct-more{color:#fff;}
a.fpill{color:#fff;}
a.fpill-clear{color:var(--ink-3);}
a.addcart{color:#fff;}
a.contact-card__v{color:var(--chrome);}

/* ---- order/invoice detail (cart_history_element) + order product search ---- */
.acct-subhead{font:700 17px var(--ff);margin:28px 0 4px;}
.acct-summary{display:flex;flex-wrap:wrap;gap:22px;align-items:center;background:var(--panel);border:1px solid var(--line-2);border-radius:10px;padding:18px 20px;margin-top:16px;}
.acct-summary > div{display:flex;flex-direction:column;gap:3px;}
.acct-summary span{font:600 11px var(--ff);letter-spacing:.04em;color:var(--ink-2);text-transform:uppercase;}
.acct-summary strong{font:600 14px var(--ff);color:#000;}
.acct-summary strong.tot{font:700 15px var(--ff);}
.acct-summary__pdf{margin-left:auto;background:var(--chrome);color:#fff;border-radius:6px;padding:9px 16px;font:600 12px var(--ff);text-decoration:none;white-space:nowrap;}
.acct-table--products .acct-table__head,.acct-table--products .acct-table__row{grid-template-columns:2.2fr .9fr .6fr .9fr .9fr;}
.acct-table--search .acct-table__head,.acct-table--search .acct-table__row{grid-template-columns:2fr 1fr .8fr .8fr;}
.acct-tbc{color:var(--accent);font:600 11px var(--ff);}
a.acct-summary__pdf{color:#fff;}

/* ==================== Login / Register ==================== */
.auth-wrap{max-width:1000px;}
.auth-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:36px;align-items:start;}
.auth-col{background:var(--surface);}
.auth-h1{font:800 24px var(--ff);letter-spacing:-.01em;margin:0 0 4px;}
.auth-sub{font:400 13px var(--ff);color:var(--ink-2);margin:0 0 18px;}
.auth-benefits{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:8px;}
.auth-benefits li{font:500 13px var(--ff);color:var(--ink-2);padding-left:22px;position:relative;}
.auth-benefits li::before{content:"✓";position:absolute;left:0;color:var(--stock);font-weight:700;}
.auth-err{font:500 12px var(--ff);color:var(--accent);margin:-8px 0 2px;}
.auth-pass{display:flex;gap:8px;}
.auth-pass input{flex:1;}
.auth-pass-toggle{border:1.5px solid var(--input);background:#fff;border-radius:7px;padding:0 12px;font:600 11px var(--ff);color:#444;cursor:pointer;white-space:nowrap;}
.auth-tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin-bottom:20px;}
.auth-tab{background:none;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;padding:10px 16px;font:600 13px var(--ff);color:#5a5f65;cursor:pointer;}
.auth-tab:hover{color:var(--ink);}
.auth-tab.is-active{color:var(--ink);border-bottom-color:var(--accent);}
.auth-panel{display:none;}
.auth-panel.is-active{display:block;}
@media(max-width:820px){.auth-grid{grid-template-columns:1fr;}}
