.content-shell{width:min(1180px,100%);padding:28px 32px 72px;margin:auto;color:var(--o-text,#fff)}.page-intro{max-width:800px;margin-bottom:32px}.page-intro h1{font-size:clamp(30px,4.7vw,52px);line-height:1.16;letter-spacing:-.035em;margin:12px 0 18px;font-weight:750}.page-intro p{color:var(--o-text-muted);font-size:17px;line-height:1.6;max-width:64ch}.page-kicker{font-size:14px!important;color:var(--o-accent,#b52ccc)!important}.page-intro .btn{margin:6px 8px 0 0}.guide-search{display:grid;gap:8px;max-width:760px;margin-bottom:24px}.guide-search input,.config-row input,.config-row select,.config-row textarea{font:inherit;color:#fff;border:1px solid var(--o-border);background:#25113e;border-radius:10px;padding:13px 16px;min-width:0;width:100%}.guide-search input:focus-visible,.config-row :is(input,select,textarea):focus-visible{outline:2px solid #f4b5ff;outline-offset:3px}.guide-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:start}.guide-card{border:1px solid var(--o-border);border-radius:14px;background:var(--o-surface);overflow:hidden;scroll-margin-top:24px}.guide-card summary{padding:0 16px 16px;cursor:pointer;list-style:none}.guide-card summary::-webkit-details-marker{display:none}.guide-card summary:focus-visible{outline:2px solid #f4b5ff;outline-offset:-3px}.guide-art{display:flex;align-items:center;justify-content:space-between;min-height:112px;margin:0 -16px 16px;padding:20px;background:radial-gradient(ellipse at 70% 0%,#75319b88,transparent 75%),#231036;border-bottom:1px solid var(--o-border);color:#d4abe9;font-size:12px}.guide-art img{opacity:.95}.guide-title{display:block;font-weight:700;line-height:1.45;min-height:44px}.guide-category{display:inline-block;font-size:12px;border:1px solid var(--o-border);border-radius:20px;padding:3px 9px;margin-top:12px;color:#e2c2f0}.guide-content{padding:0 16px 18px;font-size:14px;line-height:1.7}.guide-content ol{padding-left:20px;margin:0}.guide-content li+li{margin-top:10px}.guide-content a,.vps-consent a,#vps-login{color:#f2b7ff}.guide-card[open]{grid-column:span 2}.help-contact{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:40px;padding-top:24px;border-top:1px solid var(--o-border)}.help-contact>div{margin-right:auto}.help-contact h2{font-size:22px;margin:0 0 8px}.help-contact p{margin:0;color:var(--o-text-muted)}.vps-config{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:32px;padding:28px;border:1px solid var(--o-border);border-radius:18px;background:var(--o-surface)}.vps-config h2,.page-section h2{font-size:25px;margin:0 0 12px}.vps-config p,.page-section>p{color:var(--o-text-muted);line-height:1.6}.config-row{display:grid;grid-template-columns:180px minmax(0,1fr);align-items:center;gap:16px;margin:14px 0;font-size:14px}.vps-summary{background:#1a0b31;padding:22px;border:1px solid var(--o-border);border-radius:14px;align-self:start}.vps-summary h2{font-size:20px}.vps-summary dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:14px}.vps-summary dt{color:var(--o-text-muted)}.vps-summary dd{margin:0;text-align:right;overflow-wrap:anywhere}.quote-label{font-size:22px;font-weight:700;color:#f0adff!important}.vps-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.6;margin:24px 0}.vps-consent input{width:18px;height:18px;flex-shrink:0;accent-color:#b52ccc}.page-section{margin-top:40px}.preset-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:20px}.preset-card{border:1px solid var(--o-border);border-radius:14px;padding:20px;background:var(--o-surface);display:flex;flex-direction:column;align-items:start}.preset-card h3{margin:0 0 8px}.preset-card p{font-size:14px;color:var(--o-text-muted);line-height:1.6}.preset-card .btn{margin-top:auto}.order-steps{padding-left:24px;line-height:1.8;color:var(--o-text-muted)}.vps-faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.vps-faq details{border:1px solid var(--o-border);padding:18px;border-radius:12px;background:var(--o-surface)}.vps-faq summary{cursor:pointer;font-weight:650}.vps-faq p{line-height:1.6;color:var(--o-text-muted)}.content-shell [hidden]{display:none!important}.content-shell .btn{cursor:pointer;font:inherit;text-align:center}.content-shell button:disabled{opacity:.6;cursor:wait}
@media(max-width:1000px){.guide-grid,.preset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vps-config{grid-template-columns:1fr}.vps-summary{width:100%}}
@media(max-width:600px){.content-shell{padding:20px 18px 48px}.guide-grid,.preset-grid,.vps-faq{grid-template-columns:1fr}.guide-card[open]{grid-column:auto}.config-row{grid-template-columns:1fr;gap:8px}.vps-config{padding:18px;gap:20px}.guide-title{min-height:0}.help-contact{align-items:stretch;flex-direction:column}.page-intro h1{font-size:32px}}

.content-shell .btn-primary { background: var(--o-accent); color: white; border-color: var(--o-accent); }
.content-shell .btn-primary:hover { background: var(--o-accent-hover); }

/* Форма сохраняет ширину карточки на узких экранах. */
.vps-config > *, .config-row { min-width: 0; }
.config-row :is(input, select, textarea) { max-width: 100%; }
@media (max-width: 1000px) { .vps-config { grid-template-columns: minmax(0, 1fr); } }

.content-shell .btn { max-width: 100%; white-space: normal; overflow-wrap: anywhere; height: auto; min-height: var(--o-control-h, 48px); }
/* Safari сохраняет компактный системный select без appearance:none. */
.config-row select {
  appearance: none;
  -webkit-appearance: none;
  min-height: var(--o-control-h, 48px);
  padding-right: 42px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23d5bbeb' stroke-width='1.5'/%3E%3C/svg%3E");
  background-position: right 16px center;
  background-size: 12px 8px;
  background-repeat: no-repeat;
}
@media (max-width: 600px) { .config-row :is(input, select, textarea) { font-size: 16px; } }

@media (max-width: 760px) { .vps-config > .vps-summary { order: -1; } }
#vps-purchase-status:not(:empty) { padding: 14px; border: 1px solid var(--stroke); border-radius: 14px; color: var(--text); background: rgba(189,49,221,.12); }

.preset-card.is-selected { border-color: #d968ed; box-shadow: 0 0 0 1px #d968ed; }
.preset-card.is-selected [data-preset] { background: #b52ccc; color: #fff; border-color: #b52ccc; }

/* Мобильные цели касания не меньше 44px. */
@media (max-width: 700px) {
  .vps-faq summary { min-height: 44px; display: flex; align-items: center; }
  .vps-consent { min-height: 44px; align-items: center; }
  .vps-consent input[type='checkbox'] { width: 22px; height: 22px; }
  .site-footer a { display: inline-block; padding: 12px 0; }
}

/* Отделяем конфигуратор от карточек тарифов. */
#vps-tariffs + .vps-config { margin-top: 32px; }
