/* price.css — інтерактивні прайси, ризики, пошук і друк */

.price-headline .lead{
  max-width: 920px;
}

.price-tools{
  display:flex;
  gap:14px;
  align-items:center;
  justify-content:space-between;
  margin-bottom:18px;
  flex-wrap:wrap;
}

.tabs{
  display:flex;
  gap:8px;
  align-items:center;
  padding:4px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.04);
  border-radius:10px;
}

.tab{
  border:0;
  background:transparent;
  color:var(--muted);
  border-radius:8px;
  padding:10px 14px;
  font-weight:800;
  cursor:pointer;
}

.tab.is-active{
  background:var(--ink);
  color:#101318;
}

.tools-right{
  display:flex;
  gap:12px;
  align-items:center;
  flex-wrap:wrap;
}

.search{
  flex:1;
  min-width:300px;
}

.search__inp{
  width:100%;
  border-radius:8px;
  padding:12px 14px;
  border:1px solid var(--line-strong);
  background:rgba(0,0,0,.24);
  color:var(--ink);
  outline:none;
}

.search__inp:focus{
  border-color:rgba(111,231,177,.55);
  box-shadow:0 0 0 4px rgba(111,231,177,.10);
}

.search__inp::placeholder{
  color:rgba(255,255,255,.52);
}

.tab-pane{
  display:none;
}

.tab-pane.is-active{
  display:block;
}

.price-section.is-searching .tab-pane{
  display:block;
}

.package-strip{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
  margin-bottom:18px;
}

.package-card{
  min-height:185px;
  padding:16px;
  border-radius:8px;
  border:1px solid var(--line);
  background:
    linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.025)),
    repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 1px, transparent 1px 12px);
  box-shadow:var(--shadow-soft);
  transform-style:preserve-3d;
  transition:transform .2s ease, border-color .2s ease, background .2s ease;
}

.package-card:hover{
  border-color:rgba(111,231,177,.38);
  background:
    linear-gradient(145deg, rgba(111,231,177,.12), rgba(255,255,255,.03)),
    repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 1px, transparent 1px 12px);
}

.package-card__label{
  display:inline-flex;
  padding:5px 8px;
  border-radius:999px;
  border:1px solid rgba(111,231,177,.35);
  color:var(--accent);
  font:700 11px/1 var(--mono);
  letter-spacing:.08em;
  text-transform:uppercase;
}

.package-card h2{
  margin:14px 0 12px;
  font-size:15px;
  line-height:1.35;
  min-height:62px;
}

.package-card__price{
  font-size:24px;
  font-weight:950;
  letter-spacing:0;
}

.package-card a{
  display:inline-flex;
  margin-top:12px;
  color:var(--accent);
  font-weight:800;
  font-size:13px;
}

.price-card{
  padding:18px;
  border-radius:8px;
  background:rgba(20,24,29,.66);
  border:1px solid var(--line);
  box-shadow:var(--shadow-soft);
  margin-bottom:18px;
}

.card__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
  flex-wrap:wrap;
}

.small{
  font-size:13px;
}

.note{
  margin-top:12px;
  color:rgba(255,255,255,.76);
  font-size:13px;
  display:grid;
  gap:6px;
}

.table-title{
  margin:18px 0 10px;
  font-size:17px;
}

.comparison-list,
.price-list{
  display:grid;
  gap:10px;
}

.comparison-row,
.price-list-row{
  border:1px solid var(--line);
  border-radius:8px;
  background:rgba(0,0,0,.18);
}

.comparison-row{
  display:grid;
  grid-template-columns:minmax(260px, .72fr) 1fr;
  gap:12px;
  padding:14px;
}

.comparison-row.is-price{
  border-color:rgba(111,231,177,.32);
  background:linear-gradient(135deg, rgba(111,231,177,.10), rgba(0,0,0,.18));
}

.comparison-service{
  line-height:1.45;
}

.comparison-service b{
  color:#fff;
}

.comparison-values{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
  gap:8px;
}

.comparison-value{
  min-height:74px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:8px;
  padding:10px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:8px;
  background:rgba(255,255,255,.035);
}

.comparison-value span{
  color:var(--muted);
  font-size:12px;
  line-height:1.3;
}

.comparison-value strong{
  color:var(--ink);
  font-weight:950;
}

.price-list-row{
  display:grid;
  grid-template-columns:56px minmax(0, 1fr) minmax(130px, 190px);
  gap:12px;
  align-items:start;
  padding:13px 14px;
}

.price-list-row:hover,
.comparison-row:hover{
  border-color:rgba(111,231,177,.26);
  background:rgba(111,231,177,.055);
}

.price-list-no{
  color:var(--muted);
  font-family:var(--mono);
  font-size:13px;
}

.price-list-service{
  color:rgba(255,255,255,.9);
  line-height:1.5;
}

.price-list-price{
  justify-self:end;
  text-align:right;
  white-space:normal;
  font-weight:950;
}

.row-no{
  display:inline-flex;
  width:24px;
  height:24px;
  align-items:center;
  justify-content:center;
  margin-right:8px;
  border:1px solid var(--line-strong);
  border-radius:999px;
  color:var(--accent);
  font:800 11px/1 var(--mono);
}

.cell{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:28px;
  height:28px;
  border-radius:999px;
  font-weight:950;
}

.cell--yes{
  background:rgba(111,231,177,.12);
  border:1px solid rgba(111,231,177,.35);
  color:var(--accent);
}

.cell--no,
.cell--muted{
  opacity:.62;
}

.cell-text{
  display:inline-block;
}

.risk{
  margin-top:8px;
  color:rgba(255,255,255,.78);
}

.risk summary{
  cursor:pointer;
  color:var(--accent-warm);
  font-weight:800;
  font-size:12px;
  list-style:none;
}

.risk summary::-webkit-details-marker{
  display:none;
}

.risk summary::before{
  content:"+";
  display:inline-flex;
  width:18px;
  height:18px;
  align-items:center;
  justify-content:center;
  margin-right:6px;
  border:1px solid rgba(217,179,108,.4);
  border-radius:999px;
}

.risk[open] summary::before{
  content:"−";
}

.risk p{
  margin:8px 0 0;
  padding:10px;
  border-radius:8px;
  background:rgba(217,179,108,.08);
  border:1px solid rgba(217,179,108,.20);
  line-height:1.55;
}

.has-tip{
  position:relative;
  cursor:help;
}

.has-tip::after{
  content:attr(data-tip);
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  bottom:calc(100% + 10px);
  width:max-content;
  max-width:260px;
  opacity:0;
  pointer-events:none;
  transition:opacity .16s ease, transform .16s ease;
  z-index:20;
  background:rgba(0,0,0,.92);
  color:#fff;
  border:1px solid var(--line-strong);
  padding:8px 10px;
  border-radius:8px;
  font-size:12px;
  line-height:1.25;
}

.has-tip:hover::after{
  opacity:1;
  transform:translateX(-50%) translateY(-2px);
}

.service-category-nav{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:16px;
}

.service-category-nav a{
  padding:8px 10px;
  border-radius:999px;
  border:1px solid var(--line);
  color:var(--muted);
  font-weight:750;
  font-size:13px;
}

.service-category-nav a:hover{
  color:var(--ink);
  border-color:rgba(111,231,177,.35);
}

.print-head{
  margin:0 0 14px;
  padding:14px 16px;
  border-radius:8px;
  border:1px solid var(--line);
  background:rgba(0,0,0,.25);
}

.print-head__title{
  font-size:18px;
  font-weight:900;
}

.print-head__meta{
  margin-top:4px;
  color:rgba(255,255,255,.75);
  font-size:12px;
}

@media (max-width:1100px){
  .package-strip{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width:575.98px){
  .search,
  .tools-right{
    width:100%;
  }

  .search{
    min-width:100%;
  }

  .package-strip{
    grid-template-columns:1fr;
  }

  .comparison-row,
  .price-list-row{
    grid-template-columns:1fr;
  }

  .price-list-price{
    justify-self:start;
    text-align:left;
  }
}

@media print{
  .site-header,
  .site-footer,
  .call-fab,
  .price-tools,
  .package-strip,
  .service-category-nav,
  .risk summary::before{
    display:none !important;
  }

  .tab-pane{
    display:block !important;
  }

  body{
    background:#fff !important;
    color:#000 !important;
  }

  .content{
    padding-top:0 !important;
  }

  .page-head,
  .section{
    padding:14px 0 !important;
  }

  .price-card,
  .print-head{
    box-shadow:none !important;
    background:#fff !important;
    border:1px solid #d5d5d5 !important;
    break-inside:avoid;
  }

  .muted,
  .lead,
  .risk,
  td{
    color:#000 !important;
  }

  th{
    background:#f0f0f0 !important;
    color:#000 !important;
    position:static !important;
  }

  .col-name{
    position:static !important;
    background:#fff !important;
  }

  .comparison-row,
  .price-list-row,
  .comparison-value{
    background:#fff !important;
    border:1px solid #ddd !important;
  }

  .risk p{
    background:#fff !important;
    border:1px solid #ddd !important;
  }
}
