/* Корзина и подбор домена (scripts/cart.js, docs/CART-PLAN.md). Цвета — из утверждённого макета:
   тёмно-синий текст и цены, одна залитая кнопка — оранжевая #b9570e (белый текст на фирменном #e87722
   не держит контраст), зелёный — «в корзине» и скидка. Кнопки не ниже 44 px. */
.p3c-sr{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.p3c-muted{color:#4a5568}
.p3c-small{font-size:13px}
.p3c-price{font-weight:700;color:#1d335f;white-space:nowrap}
.p3c-price-big{font-size:24px}
.p3c-old{color:#6b7587;text-decoration:line-through;font-size:13px;margin-right:6px;white-space:nowrap}
.p3c-save{color:#1f7a4d;font-weight:600}
.p3c-taken{color:#8a2b2b;font-weight:600}
.p3c-error{color:#a94442;font-size:15px;margin:12px 0}
.p3c-note{background:#fdf0e6;color:#8a430b;border-radius:8px;padding:10px 14px;font-size:14px;margin:8px 0}

.p3c-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 18px;
  border-radius:10px;font:inherit;font-size:15px;font-weight:600;line-height:1.2;cursor:pointer;text-decoration:none;
  white-space:nowrap;box-sizing:border-box;transition:background .15s,border-color .15s}
.p3c-btn:focus-visible,.p3c-pill:focus-visible,.p3c-link:focus-visible,.p3c-rm:focus-visible,.p3c-x:focus-visible{outline:3px solid #7fb3e0;outline-offset:2px}
.p3c-btn-cta{background:#b9570e;border:0;color:#fff}
.p3c-btn-cta:hover,.p3c-btn-cta:focus{background:#9c4a0c;color:#fff;text-decoration:none}
.p3c-btn-navy{background:#1d335f;border:0;color:#fff}
.p3c-btn-navy:hover{background:#15274a}
.p3c-btn-navy[disabled]{opacity:.7;cursor:progress}
.p3c-btn-line{background:#fff;border:2px solid #1d335f;color:#1d335f}
.p3c-btn-line:hover,.p3c-btn-line:focus{background:#eef3f9;color:#1d335f;text-decoration:none}
.p3c-btn-in{background:#eef8f2;border:2px solid #1f7a4d;color:#1f7a4d}
.p3c-btn-big{min-height:52px;padding:0 24px;font-size:16px}
.p3c-btn-wide{width:100%;min-height:56px;font-size:18px}
.p3c-link{background:none;border:0;padding:0 2px;min-height:44px;color:#1b6fa3;text-decoration:underline;font:inherit;font-size:15px;cursor:pointer}

/* Кнопка в шапке — значок сумки, слово «Корзина» и число, без рамки (как у nic.ru, но со словом — решение 3.10.2026).
   Отделена от меню тонкой чертой */
.p3c-head-btn{display:inline-flex;align-items:center;gap:6px;min-height:44px;min-width:44px;padding:0 6px;box-sizing:border-box;
  border:0;background:transparent;color:#1d335f;font-size:17px;font-weight:600;line-height:1;text-decoration:none;cursor:pointer}
.p3c-head-btn:hover,.p3c-head-btn:focus{color:#2183be;text-decoration:none}
.p3c-head-btn:focus-visible{outline:3px solid #7fb3e0;outline-offset:2px;border-radius:8px}
.p3c-head-btn svg{flex:none}
.p3c-head-text{font-size:15px;font-weight:600}
.p3c-count{font-variant-numeric:tabular-nums}
.p3c-count[hidden]{display:none}
/* Меню на 1024 px занимает строку целиком, поэтому до 1280 px логотип без широких полей и пункты меню на 1 px мельче —
   иначе они переносятся в две строки (замерено 3.10.2026) */
.header .p3c-head-wrap{flex:none;align-self:center;margin:0 14px 0 6px;padding-left:12px;border-left:1px solid #dfe6ee}
/* Слово «Корзина» — с 1280 px: уже со словом меню упирается в корзину (замерено 3.10.2026 после новой шапки),
   там значок и число, слово остаётся для экранных чтилок */
@media (min-width:801px) and (max-width:1279px){
  .header .p3c-head-text{position:absolute;left:-9999px}
}
@media (min-width:801px) and (max-width:1279px){
  .header .logo{flex:0 0 auto;margin:14px 10px 14px 16px}
  .header .logo img{width:138px}
}
@media (min-width:901px) and (max-width:1279px){
  nav.navigation > li{font-size:12px}
}
/* Телефон (до 800 px): корзина — белый значок в тёмно-синей полосе шапки, слева от кнопки меню; число — кружком в углу */
.p3c-head-m{display:none}
@media only screen and (max-width:800px){
  .p3c-head-m{display:block;position:absolute;top:env(safe-area-inset-top);right:56px;width:52px;height:56px;z-index:11}
  .p3c-head-m .p3c-head-btn{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#fff}
  .p3c-head-m .p3c-head-btn:hover{color:#fff;opacity:.85}
  .p3c-head-m .p3c-head-btn svg{width:26px;height:26px}
  .p3c-head-m .p3c-head-text{position:absolute;left:-9999px}   /* слово — для экранных чтилок */
  .p3c-head-m .p3c-count{position:absolute;top:9px;right:4px;min-width:18px;height:18px;padding:0 5px;box-sizing:border-box;
    border-radius:9px;background:#b9570e;color:#fff;font-size:11px;font-weight:700;line-height:18px;text-align:center}
}

/* Панель корзины */
html.p3c-lock,html.p3c-lock body{overflow:hidden}
.p3c-shade{position:fixed;inset:0;background:rgba(15,27,51,.45);z-index:100000}
.p3c-drawer{position:fixed;top:0;right:0;bottom:0;width:460px;max-width:100%;background:#fff;color:#1d335f;z-index:100001;
  display:flex;flex-direction:column;box-shadow:-12px 0 32px rgba(15,27,51,.18);font-size:15px;line-height:1.4}
.p3c-shade[hidden],.p3c-drawer[hidden],.p3c-bar[hidden]{display:none}
.p3c-head{display:flex;align-items:center;padding:20px 24px 8px}
.p3c-head h2{margin:0;font-size:28px;font-weight:700;flex:1;color:#1d335f}
.p3c-x,.p3c-rm{width:44px;height:44px;border:0;background:transparent;color:#4a5568;cursor:pointer;display:inline-flex;
  align-items:center;justify-content:center;border-radius:8px;flex:none}
.p3c-x:hover,.p3c-rm:hover{background:#f1f4f8;color:#1d335f}
.p3c-body{flex:1;overflow:auto;padding:0 24px 16px;-webkit-overflow-scrolling:touch}
.p3c-empty{font-size:16px;margin:20px 0 16px}
.p3c-line{border-bottom:1px solid #e6ecf2;padding:14px 0;display:flex;flex-direction:column;gap:10px}
.p3c-line-top{display:flex;align-items:flex-start;gap:10px}
.p3c-line-text{flex:1;min-width:0}
.p3c-line-title{font-size:17px;font-weight:600;overflow-wrap:anywhere}
.p3c-line-text .p3c-muted{font-size:13px}
.p3c-line-sum{text-align:right;font-size:17px}
.p3c-line .p3c-rm{margin:-8px -10px 0 0}
.p3c-gift{display:flex;align-items:center;gap:8px;font-size:14px;color:#1f7a4d;font-weight:600}
/* Строка тарифа как у masterhost: категория над названием, выгода выбранного срока, период списком */
.p3c-line .p3c-kicker{font-size:12px;margin-bottom:2px}
.p3c-offer{display:flex;align-items:center;gap:8px;font-size:14px;color:#1d335f}
.p3c-offer svg{flex:none;color:#2183be}
.p3c-field{display:flex;flex-direction:column;gap:4px;max-width:280px}
.p3c-field-label{font-size:13px;color:#4a5568;font-weight:600}
.p3c-select{height:44px;padding:0 12px;border:1px solid #b7c5d6;border-radius:8px;background:#fff;color:#1d335f;font:inherit;font-size:15px}
.p3c-select:focus{outline:3px solid #7fb3e0;outline-offset:1px}
.p3c-promo{background:#f6f9fc;border:1px solid #dfe6ee;border-radius:12px;padding:12px 14px;margin:4px 0 6px;display:flex;flex-direction:column;gap:6px}
.p3c-promo-row{display:flex;gap:8px}
.p3c-promo-input{flex:1;min-width:0;height:44px;box-sizing:border-box;padding:0 12px;border:1px solid #b7c5d6;border-radius:8px;
  font:inherit;font-size:16px;color:#1d335f;text-transform:uppercase;background:#fff}
.p3c-promo-input[readonly]{background:#eef8f2;border-color:#1f7a4d}
.p3c-promo .p3c-error{margin:0}
.p3c-periods{display:flex;gap:6px;flex-wrap:wrap}
.p3c-pill{min-height:40px;padding:0 12px;border-radius:8px;border:1px solid #b7c5d6;background:#fff;color:#1d335f;font:inherit;font-size:14px;cursor:pointer}
.p3c-pill.is-on{border:2px solid #1d335f;background:#1d335f;color:#fff;font-weight:600}
.p3c-up{margin-top:14px;border:1px solid #dfe6ee;border-radius:12px;padding:14px 16px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.p3c-up-text{flex:1;min-width:180px}
.p3c-up-title{font-size:16px;font-weight:600}
.p3c-up .p3c-muted{font-size:14px}
.p3c-up-zones{display:block;background:#f6f9fc}
.p3c-up-row{display:flex;align-items:center;gap:12px;margin-top:10px}
.p3c-up-dom{flex:1;min-width:0;font-weight:600;overflow-wrap:anywhere}
.p3c-foot{border-top:1px solid #dfe6ee;padding:14px 24px 20px;display:flex;flex-direction:column;gap:8px}
.p3c-row{display:flex;justify-content:space-between;font-size:16px}
.p3c-total{display:flex;align-items:baseline;gap:8px;font-size:20px;font-weight:700}
.p3c-total>span:first-child{flex:1}
.p3c-total-sum{font-size:26px}
.p3c-foot .p3c-btn-wide{margin-top:6px}

/* Телефон, как у nic.ru (3.10.2026): нижней панели корзины нет — корзина открывается значком в шапке и выезжает справа
   панелью той же ширины, что меню (страница слева затемнена), итог и «Оформить» — внутри. Раньше панель внизу
   перекрывалась полосой cookie, а корзина занимала весь экран. Разметку .p3c-bar cart.js по-прежнему строит — не показываем. */
.p3c-bar{display:none !important}
@media (max-width:760px){
  .p3c-drawer{width:min(88vw,380px)}
  .p3c-head{padding:12px 16px 4px}
  .p3c-head h2{font-size:26px}
  .p3c-body{padding:0 16px 16px}
  .p3c-foot{padding:12px 16px calc(16px + env(safe-area-inset-bottom))}
}
/* На сенсорных экранах — без рамки фокуса после нажатия (она оставалась на значке корзины после закрытия панели);
   с клавиатуры на компьютере рамка остаётся */
@media (hover:none){
  .p3c-head-btn:focus-visible,.p3c-x:focus-visible{outline:none}
  .p3c-head-btn,.p3c-x{-webkit-tap-highlight-color:transparent}
}

/* Подбор */
.p3c-lead{font-size:15px;margin:0 0 12px}
.p3c-pick-form{display:flex;gap:10px;flex-wrap:wrap}
.p3c-pick-form input{flex:1 1 260px;min-width:0;height:52px;box-sizing:border-box;padding:0 16px;font:inherit;font-size:18px;
  color:#1d335f;border:2px solid #c8d4e3;border-radius:10px;background:#fff}
.p3c-pick-form input:focus{border-color:#2183be;outline:none;box-shadow:0 0 0 3px rgba(33,131,190,.15)}
.p3c-pick-out{margin-top:16px;display:flex;flex-direction:column;gap:10px}
.p3c-main{background:#fff;border:1px solid #dfe6ee;border-radius:14px;padding:18px 22px;display:flex;flex-direction:column;gap:10px}
.p3c-main.is-free{border:2px solid #e8b48a}
.p3c-ok{display:flex;align-items:center;gap:8px;color:#1f7a4d;font-weight:600;font-size:15px}
.p3c-ok svg,.p3c-gift svg,.p3c-btn svg{flex:none}
.p3c-main-row,.p3c-pick-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.p3c-main-dom{flex:1;min-width:0;font-size:30px;font-weight:700;color:#1d335f;overflow-wrap:anywhere;line-height:1.15}
.p3c-pick-price{text-align:right}
.p3c-main .p3c-price{font-size:24px}
.p3c-pick-row{background:#fff;border:1px solid #dfe6ee;border-radius:12px;padding:12px 22px;min-height:68px;box-sizing:border-box}
.p3c-pick-dom{flex:1;min-width:0;font-size:19px;font-weight:600;color:#1d335f;overflow-wrap:anywhere}
.p3c-pick-row .p3c-price{font-size:18px}
.p3c-link{align-self:flex-start}
.p3c-site{margin-top:18px}
.p3c-site h3{margin:0 0 4px;font-size:22px;color:#1d335f}
.p3c-site>p{margin:0 0 12px;font-size:15px}
.p3c-svc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.p3c-svc{background:#fff;border:1px solid #dfe6ee;border-radius:14px;padding:18px 20px;display:flex;flex-direction:column;gap:8px}
.p3c-kicker{font-size:13px;color:#4a5568;font-weight:600;text-transform:uppercase;letter-spacing:.5px}
.p3c-svc-title{font-size:20px;font-weight:700;color:#1d335f}
.p3c-svc .p3c-muted{font-size:14px}
.p3c-svc-row{display:flex;align-items:flex-end;gap:12px;margin-top:4px;flex-wrap:wrap}
.p3c-svc-price{flex:1;min-width:150px}
.p3c-hint{font-size:13px;color:#1f7a4d}
@media (max-width:760px){
  .p3c-pick-form{flex-wrap:nowrap}
  .p3c-pick-form input{flex:1 1 auto;font-size:17px}
  .p3c-pick-form .p3c-btn-big{padding:0 14px}
  .p3c-ok{font-size:14px}
  .p3c-svc-grid{grid-template-columns:minmax(0,1fr)}
  .p3c-main{padding:16px}
  .p3c-main-dom{font-size:24px;flex-basis:100%}
  .p3c-pick-row{padding:12px 14px}
  .p3c-pick-dom{font-size:17px;flex-basis:100%}
  .p3c-pick-price{text-align:left;flex:1}
}

/* Плашка «добавлен в корзину» под значком в шапке (как у nic.ru): не исчезает сама, закрывается крестиком */
.header .p3c-head-wrap{position:relative}
.p3c-pop{position:absolute;top:calc(100% + 14px);right:-8px;width:300px;box-sizing:border-box;padding:20px 22px 22px;
  background:#e8eef3;color:#1d335f;border-radius:14px;box-shadow:0 12px 32px rgba(15,27,51,.18);z-index:10050;
  text-align:left;font-size:15px;line-height:1.35;white-space:normal;transform:none;text-transform:none;letter-spacing:normal;font-weight:400}
.p3c-pop:before{content:"";position:absolute;top:-8px;right:28px;width:16px;height:16px;background:#e8eef3;transform:rotate(45deg);border-radius:3px}
.p3c-pop-x{position:absolute;top:8px;right:8px;width:40px;height:40px;border:0;background:transparent;color:#1d335f;cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;border-radius:8px}
.p3c-pop-x:hover{background:rgba(29,51,95,.08)}
.p3c-pop-title{font-size:19px;font-weight:700;padding-right:36px;overflow-wrap:anywhere;margin-bottom:6px}
.p3c-pop-text{color:#4a5568;margin-bottom:14px}
.p3c-pop .p3c-btn{width:100%;min-height:48px;font-size:16px}
@media (max-width:800px){
  .p3c-head-m .p3c-pop{position:fixed;top:calc(64px + env(safe-area-inset-top));right:10px;left:auto;width:calc(100vw - 20px);max-width:340px}
  .p3c-head-m .p3c-pop:before{right:64px}   /* стрелка — на значок корзины (56–108 px от правого края) */
}

/* Выбранный тариф на страницах хостинга и VDS: карточка с зелёной рамкой и меткой, кнопка «В корзине ✓» — светло-зелёная
   (у «Популярного» кнопка залита синим — выбор должен читаться иначе, чем реклама) */
.vds-plan2.p3c-picked{border:2px solid #1f7a4d !important;box-shadow:0 6px 18px rgba(31,122,77,.14)}
.vds-plan2.p3c-picked:after{content:"✓ В корзине";position:absolute;top:-1px;left:18px;padding:3px 10px;border-radius:0 0 8px 8px;
  background:#1f7a4d;color:#fff;font-size:12px;font-weight:700;letter-spacing:.2px;line-height:1.4;z-index:2}
#hp a.t-cta.p3c-in,#hp a.t-cta.p3c-in:hover{background:#eef8f2 !important;border-color:#1f7a4d !important;color:#1f7a4d !important;box-shadow:none !important}
.p3c-client{align-self:center;font-size:14px;min-height:40px;display:inline-flex;align-items:center}
