/* Раздел «Кошторис» на главной странице; все правила привязаны к .est. Переменные берутся из styles.css */
.est{padding-block:36px 24px;border-top:1px solid var(--line)}
.est h2{margin:0 0 16px;text-align:center}
.est .tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:16px}
.est .tab{appearance:none;font:600 14px var(--font-body);color:var(--muted);background:var(--panel);border:1px solid var(--line);border-radius:99px;padding:10px 18px;cursor:pointer}
.est .tab.on{color:#1b1206;background:var(--light);border-color:transparent}
.est .tab:focus-visible{outline:2px solid var(--light-hot);outline-offset:2px}
.est .card{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));border:1px solid var(--line);border-radius:18px;padding:22px}
.est .ctop{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.est .ctop h2{margin:0;font:600 16px var(--font-body)}
.est .chip{font-size:12px;color:var(--muted)}
.est .ex-banner{margin:12px 0 4px;padding:10px 14px;border:1px dashed var(--light);border-radius:10px;background:rgba(255,196,102,.08);color:var(--light);font-size:13px;line-height:1.45}
.est .empty{margin:8px 0;color:var(--muted)}
.est .group{margin-top:12px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.02)}
.est .group[open]{background:rgba(255,255,255,.03)}
.est .ghead{display:flex;align-items:center;gap:10px;padding:14px 16px;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}
.est .ghead::-webkit-details-marker{display:none}
.est .ghead:focus-visible{outline:2px solid var(--light-hot);outline-offset:-2px;border-radius:12px}
.est .ghead h3{flex:1;min-width:0;margin:0;font:600 15px/1.3 var(--font-body);color:var(--light)}
.est .gcount{font-size:12px;color:var(--faint);white-space:nowrap}
.est .gsum{font:600 14px var(--font-body);color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.est .chev{width:8px;height:8px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(-45deg);transition:transform .2s;flex:none;margin-right:4px}
.est .group[open] .chev{transform:rotate(45deg)}
.est .group > table{margin:0 16px;width:calc(100% - 32px)}
.est .all{appearance:none;margin-left:auto;background:none;border:0;color:var(--light);font:600 13px var(--font-body);cursor:pointer;padding:4px 0}
.est .all:hover{text-decoration:underline}
.est .gnote{padding:0 16px;margin:0 0 10px;font-size:12px;color:var(--muted);max-width:90ch}
.est table{width:100%;border-collapse:collapse;border:1px solid var(--line);border-radius:12px;overflow:hidden;font-size:14px}
.est thead th{background:rgba(255,255,255,.04);color:var(--muted);font:500 12px var(--font-body);text-align:right;padding:12px 14px}
.est thead th.c-no, .est thead th.c-name{text-align:left}
.est tbody td{padding:12px 14px;border-top:1px solid var(--line);text-align:right;vertical-align:middle;font-variant-numeric:tabular-nums}
.est tbody td.c-no{text-align:left;color:var(--faint);width:42px}
.est tbody td.c-name{text-align:left}
.est .c-unit{text-align:center!important;width:70px}
.est .u{display:none}
.est .nm{color:var(--ink);font-weight:500}
.est .spec{margin-top:3px;font-size:12px;color:var(--muted);font-weight:400}
.est .spec.warn{color:var(--light)}
.est .c-sum{color:var(--light-hot)}
.est .gfoot{display:flex;justify-content:space-between;gap:12px;padding:10px 16px 14px;font-size:13px;color:var(--muted)}
.est .gfoot b{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.est .total{display:flex;flex-wrap:wrap;gap:6px 20px;align-items:baseline;margin-top:24px;padding:16px 18px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.05)}
.est .total span{font:600 15px var(--font-body);color:var(--light)}
.est .total b{font:600 22px var(--font-body);color:var(--light-hot);font-variant-numeric:tabular-nums}

@media (max-width:720px){
  .est .gcount{display:none}
  .est .group > table{margin:0 8px;width:calc(100% - 16px)}
  .est .ghead{padding:12px}
  .est .card{padding:16px}
  .est table, .est tbody, .est tr, .est td{display:block}
  .est thead{display:none}
  .est table{border:0}
  .est tbody tr{display:grid;grid-template-columns:34px repeat(3,minmax(0,1fr));gap:2px 8px;padding:12px 4px;border-top:1px solid var(--line)}
  .est tbody td{border:0;padding:0;text-align:left}
  .est tbody td.c-no{grid-row:1;grid-column:1;width:auto}
  .est tbody td.c-name{grid-row:1;grid-column:2 / -1}
  .est tbody td.c-qty, .est tbody td.c-price, .est tbody td.c-sum{grid-row:2;margin-top:8px;font-size:13px}
  .est tbody td.c-qty{grid-column:2}
  .est tbody td.c-price{grid-column:3}
  .est tbody td.c-sum{grid-column:4;text-align:right}
  .est tbody td.c-unit{display:none}
  .est .u{display:inline}
  .est tbody td[data-l]::before{content:attr(data-l);display:block;font-size:10px;color:var(--faint);margin-bottom:1px}
  .est tbody td.c-sum{font-weight:600}
}
