/* Единый стиль магазина, унаследован от calc.tsentavr — тёмная тема, чертёжная сетка, терракотовый акцент */
:root{
  --ink:#221C13;
  --panel:#332A1D;
  --panel-2:#3D3222;
  --grid:rgba(193,122,69,0.16);
  --signal:#C17A45;
  --paper:#F3EEE6;
  --muted:#B0A48F;
  --ok:#5FBF8B;
  --err:#D9694F;
  --radius:4px;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background:
    linear-gradient(var(--grid) 1px, transparent 1px) 0 0/32px 32px,
    linear-gradient(90deg, var(--grid) 1px, transparent 1px) 0 0/32px 32px,
    var(--ink);
  color:var(--paper);
  font-family:'IBM Plex Sans', sans-serif;
  -webkit-font-smoothing:antialiased;
  min-height:100vh;
}
a{color:var(--signal);text-decoration:none;}
a:hover{text-decoration:underline;}
.wrap{max-width:1100px;margin:0 auto;padding:24px 16px 60px;}
.eyebrow{
  font-family:'IBM Plex Mono', monospace;
  font-size:12px;letter-spacing:.14em;color:var(--signal);
  text-transform:uppercase;display:flex;align-items:center;gap:8px;margin-bottom:10px;
}
.eyebrow::before{content:"";width:8px;height:8px;background:var(--signal);display:inline-block;}
h1{font-family:'Big Shoulders', sans-serif;font-weight:800;font-size:clamp(26px,5vw,38px);line-height:1.05;margin:0 0 8px;text-transform:uppercase;}
h2{font-family:'Big Shoulders', sans-serif;font-weight:700;font-size:22px;text-transform:uppercase;margin:0 0 14px;}
.sub{color:var(--muted);font-size:15px;line-height:1.5;margin:0 0 24px;max-width:60ch;}

header.site{border-bottom:1px solid rgba(193,122,69,.25);}
header.site .bar{max-width:1100px;margin:0 auto;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
header.site .brand{font-family:'Big Shoulders',sans-serif;font-weight:800;text-transform:uppercase;font-size:18px;letter-spacing:.02em;}
header.site nav{display:flex;gap:18px;font-size:14px;flex-wrap:wrap;}
header.site .cart-link{font-family:'IBM Plex Mono',monospace;font-size:13px;border:1px solid rgba(193,122,69,.4);padding:7px 12px;border-radius:var(--radius);}

.card{position:relative;background:var(--panel);border:1px solid rgba(193,122,69,0.45);border-radius:var(--radius);padding:20px;box-shadow:0 4px 18px rgba(0,0,0,.35);}
.card::before,.card::after,.tick-br,.tick-bl{content:"";position:absolute;width:12px;height:12px;border:2px solid var(--signal);opacity:.55;}
.card::before{top:-1px;left:-1px;border-right:none;border-bottom:none;}
.card::after{top:-1px;right:-1px;border-left:none;border-bottom:none;}
.tick-br{bottom:-1px;right:-1px;border-left:none;border-top:none;}
.tick-bl{bottom:-1px;left:-1px;border-right:none;border-top:none;}

.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;}
.product-card{display:flex;flex-direction:column;gap:10px;}
.product-card .name{font-size:15px;font-weight:600;line-height:1.3;color:var(--paper);}
.product-card .price{font-family:'IBM Plex Mono',monospace;font-size:17px;color:var(--signal);font-weight:600;}
.product-card .sku{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--muted);}
.badge{display:inline-block;font-family:'IBM Plex Mono',monospace;font-size:11px;padding:3px 8px;border-radius:2px;background:rgba(95,191,139,.15);color:var(--ok);width:fit-content;}
.badge.out{background:rgba(217,105,79,.15);color:var(--err);}

.cat-list{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px;}
.cat-pill{border:1px solid rgba(193,122,69,.4);border-radius:var(--radius);padding:9px 14px;font-size:14px;}
.cat-pill.active{background:var(--signal);color:var(--ink);border-color:var(--signal);font-weight:600;}

.btn{display:inline-block;background:var(--signal);color:#1a1005;border:none;border-radius:var(--radius);padding:11px 18px;font-size:14px;font-weight:600;cursor:pointer;font-family:'IBM Plex Sans',sans-serif;}
.btn:hover{filter:brightness(1.08);}
.btn.secondary{background:transparent;color:var(--paper);border:1px solid rgba(193,122,69,.4);}

table.specs{width:100%;border-collapse:collapse;font-size:14px;}
table.specs td{padding:7px 0;border-bottom:1px dashed rgba(193,122,69,.2);}
table.specs td:first-child{color:var(--muted);width:45%;}

.field{margin-bottom:14px;}
.field label{display:block;font-size:12px;color:var(--muted);margin-bottom:5px;}
.field input,.field select,.field textarea{
  width:100%;padding:11px 12px;background:var(--panel-2);border:1px solid rgba(193,122,69,.4);
  border-radius:var(--radius);color:var(--paper);font-size:15px;font-family:'IBM Plex Sans',sans-serif;
}
.field textarea{resize:vertical;min-height:70px;}

.cart-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px dashed rgba(193,122,69,.2);}
.cart-row .name{flex:1;font-size:14px;}
.cart-row input[type=number]{width:60px;padding:6px;background:var(--panel-2);border:1px solid rgba(193,122,69,.4);border-radius:var(--radius);color:var(--paper);text-align:center;}
.cart-total{margin-top:20px;padding-top:16px;border-top:1px solid rgba(193,122,69,.3);font-family:'IBM Plex Mono',monospace;font-size:22px;font-weight:600;}

.admin-table{width:100%;border-collapse:collapse;font-size:13px;}
.admin-table th{text-align:left;padding:8px;border-bottom:1px solid rgba(193,122,69,.3);color:var(--muted);font-weight:500;text-transform:uppercase;font-size:11px;letter-spacing:.05em;}
.admin-table td{padding:8px;border-bottom:1px dashed rgba(193,122,69,.15);vertical-align:middle;}
.admin-table input[type=text],.admin-table input[type=number]{padding:6px 8px;background:var(--panel-2);border:1px solid rgba(193,122,69,.4);border-radius:3px;color:var(--paper);font-size:13px;}

.note{font-size:13px;color:var(--muted);margin-top:8px;line-height:1.5;}
.footer-note{font-family:'IBM Plex Mono',monospace;font-size:11.5px;color:var(--muted);text-align:center;margin-top:40px;opacity:.8;}
