/* =========================================================
   GIGZAKAZ — ДИЗАЙН-СИСТЕМА НА ТОКЕНАХ (редизайн, гибрид A+B)
   Вся «шкура» управляется переменными ниже. Меняешь токены —
   меняется весь сайт, без правки вёрстки и логики. Так задизайнено «на вырост».
   ========================================================= */

:root{
  /* ---- Бывшая «тёмная зона» — теперь светлая, как и весь сайт.
     Токены оставлены (алиасами на светлые), чтобы не переписывать вёрстку. ---- */
  --deep-0:var(--surface);
  --deep-1:var(--surface-2);
  --aurora-1:#00e58f;   /* изумруд — используется только как акцент/иконка, не как текст на светлом */
  --aurora-2:#00b3ff;   /* циан */
  --aurora-3:#7b5cff;   /* фиолет */
  --on-dark:var(--ink);
  --on-dark-dim:var(--ink-dim);
  --glass:rgba(10,31,22,.045);
  --glass-2:rgba(10,31,22,.08);
  --glass-brd:rgba(10,31,22,.12);
  --glass-brd-2:rgba(0,176,106,.28);

  /* Текст для НАМЕРЕННО тёмных «плавающих» плашек поверх hero-фото
     (строка поиска, быстрый заказ, табы направлений) — эти плашки
     остаются тёмными для контраста и не должны светлеть вместе с фоном. */
  --on-chip:#eaf5f0;
  --on-chip-dim:#9fb3ac;

  /* ---- Светлая рабочая зона ---- */
  --surface:#f5f8f7;
  --surface-2:#eef2f0;
  --card:#ffffff;
  --card-brd:#e6ebe9;
  --ink:#0a1f16;
  --ink-2:#12211b;
  --ink-dim:#5f7168;

  /* ---- Акценты и статусы ---- */
  --accent:#00b06a;
  --accent-grad:linear-gradient(135deg,#00e58f,#00b06a);
  --accent-glow:0 0 24px rgba(0,229,143,.35);
  --cta-ink:#04241a;
  --urgent-bg:#ffe3d6; --urgent-tx:#993c1d;
  --sf-green:#0a7a48; --sf-amber:#b8860b; --sf-red:#c0392b;
  --price-grad:linear-gradient(90deg,#00c774,#0a7a48);

  /* ---- Геометрия, тени, движение ---- */
  --r-lg:20px; --r:14px; --r-sm:10px; --r-pill:24px;
  --shadow:0 10px 34px rgba(6,20,12,.10);
  --shadow-lg:0 20px 60px rgba(6,20,12,.16);
  --gap:16px;
  --ease:cubic-bezier(.2,.7,.2,1);
  --font:"Manrope", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}

/* ---------- Сброс и база ---------- */
*{ margin:0; padding:0;}
body{
  background-color:var(--surface);
  background-image:url("../img/bg-site.jpg");
  background-size:cover;
  background-position:top center;
  background-repeat:no-repeat;
  background-attachment:fixed;
   
}
/* На мобильных background-attachment:fixed иногда дёргается при скролле — отключаем там */
@media (max-width:900px){
  body{ background-attachment:scroll; }
}
a{color:inherit; text-decoration:none;}
img,svg{display:block; }
button{font-family:inherit; cursor:pointer;}
ul,ol{list-style:none;}

.container{  margin:0 auto; padding:0 18px;}
/* Центрирование содержимого (по выбору пользователя): заголовки и текст блоков по центру.
   Таблицы данных и поля форм оставляем по левому краю — так их удобнее читать/заполнять. */
.order-card, .svc-card, .review-card, .kpi, .stat, .index-chip, .faq-a, .workflow, .panel-title{text-align:center;}
.detail-table, .detail-table td, .field-wrap, .form-field, .form-grid, .filter-grid label, .field-wrap label{text-align:left;}

/* ---------- Кнопки ---------- */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:7px;
   border:none; 
    white-space:nowrap;
}
.btn:hover{transform:translateY(-2px);}
.btn-cta{ color:#fff; }
.btn-cta:hover{box-shadow:0 8px 30px rgba(0,229,143,.5);}
.btn-ghost{background:rgba(6,10,14,.55); color:var(--on-chip); border:1px solid rgba(255,255,255,.16); backdrop-filter:blur(10px);}
.btn-ghost:hover{background:rgba(6,10,14,.7); border-color:rgba(255,255,255,.26);}
.btn-light{background:#fff; color:var(--ink); border:1px solid var(--card-brd);}
.btn-light:hover{background:var(--surface-2);}
.btn-sm{padding:9px 13px; font-size:14px;}

/* ---------- Карточки светлой зоны ---------- */
.card{ border:1px solid var(--card-brd);  }

.badge-urgent{display:inline-block; background:var(--urgent-bg); color:var(--urgent-tx); font-size:12px; font-weight:700; padding:3px 10px; border-radius:6px; animation:pulseUrgent 2s ease-in-out infinite;}
@keyframes pulseUrgent{0%,100%{box-shadow:0 0 0 0 rgba(216,90,48,.45)} 50%{box-shadow:0 0 0 6px rgba(216,90,48,0)}}
.badge-photo{display:inline-flex; align-items:center; gap:4px; background:#e6f6ee; color:#0a7a48; font-size:12px; font-weight:700; padding:3px 9px; border-radius:6px;}

/* =========================================================
   ШАПКА
   ========================================================= */
.site-header{position:sticky; top:0; z-index:50;  backdrop-filter:blur(16px) saturate(140%); }
.header-inner{ display:flex; align-items:center; gap:14px;}
.logo{color:var(--ink);  font-weight:800;  flex:none;}
.logo::after{content:""; display:inline-block; width:7px; height:7px; margin-left:7px; border-radius:50%; background:var(--accent); box-shadow:var(--accent-glow); vertical-align:middle;}

/* ---- Навигация в шапке (Направления · Услуги · Блог) ---- */
.header-nav{display:flex; align-items:center; gap:4px; min-width:0;}
.header-nav a{
  position:relative; flex:none; color:var(--ink-dim);  font-weight:700;
  padding:8px 12px; border-radius:var(--r-sm); white-space:nowrap;
  transition:color .15s var(--ease), background .15s var(--ease);
}
.header-nav a:hover{color:var(--ink); background:rgba(10,31,22,.06);}
.header-nav a.active{color:var(--accent);}
.header-nav a.active::after{
  content:""; position:absolute; left:12px; right:12px; bottom:2px; height:2px;
  border-radius:2px; background:var(--accent-grad);
}

.header-actions{margin-left:auto; display:flex; align-items:center; gap:10px; flex:none;}

/* ---- Выбор языка одной иконкой (выпадающий список) ---- */
.lang-dropdown{position:relative;}
.lang-trigger{
  display:inline-flex; align-items:center; gap:6px; background:transparent;
  border:1px solid rgba(10,31,22,.14); color:var(--ink); font-size:13px; font-weight:700;
  padding:7px 10px; border-radius:var(--r-sm); white-space:nowrap;
  transition:border-color .15s var(--ease), background .15s var(--ease);
}
.lang-trigger:hover{background:rgba(10,31,22,.05); border-color:rgba(10,31,22,.22);}
.lang-trigger > i:first-child{font-size:17px; color:var(--accent);}
.lang-caret{font-size:14px; transition:transform .2s var(--ease);}
.lang-dropdown.open .lang-caret{transform:rotate(180deg);}
.lang-menu{
  position:absolute; top:calc(100% + 8px); right:0; z-index:60; min-width:170px;
  display:none; flex-direction:column; gap:2px; padding:6px;
  background:rgba(255,255,255,.98); border:1px solid var(--glass-brd-2); border-radius:var(--r);
  box-shadow:var(--shadow-lg); backdrop-filter:blur(14px);
}
.lang-dropdown.open .lang-menu{display:flex;}
.lang-menu button{
  display:flex; align-items:center; justify-content:space-between; gap:10px; width:100%;
  background:transparent; border:none; color:var(--on-dark-dim); font-size:14px; font-weight:600;
  padding:9px 12px; border-radius:var(--r-sm); text-align:left; white-space:nowrap;
}
.lang-menu button:hover{background:var(--glass); color:var(--on-dark);}
.lang-menu button.active{background:var(--accent); color:#fff;}
.lang-menu button.active::after{content:"\2713"; font-size:13px;}

/* Планшет: чуть плотнее, навигация в одну строку помещается. */
@media(max-width:899px){
  .header-inner{gap:10px;}
}
/* Телефон: шапка в две строки — сверху логотип и язык, снизу навигация
   на всю ширину по центру. Так пункты видны целиком и удобны для пальца. */
@media(max-width:599px){
  .header-inner{flex-wrap:wrap; height:auto; padding-top:9px; padding-bottom:9px; row-gap:8px;}
  .logo{order:0;}
  .header-actions{order:1;}
  .header-nav{
    order:2; flex-basis:100%; justify-content:center; gap:6px;
    overflow-x:auto; -ms-overflow-style:none; scrollbar-width:none; -webkit-overflow-scrolling:touch;
  }
  .header-nav::-webkit-scrollbar{display:none;}
  .header-nav a{font-size:14px; padding:8px 14px; background:rgba(10,31,22,.05); border:1px solid rgba(10,31,22,.1);}
  .header-nav a.active{background:rgba(10,31,22,.09); border-color:rgba(10,31,22,.16);}
  .header-nav a.active::after{display:none;}
  .lang-trigger{padding:7px 9px;}
}
.btn-login{color:var(--ink); background:transparent; border:none;   padding:8px 6px; display:none;}
.btn-cabinet{color:var(--ink); background:transparent; border:none;   padding:8px 6px; text-decoration:none; }
.btn-login.logged{color:var(--accent);}
.header-actions .btn-cta{display:none;}

/* =========================================================
   ПЕРВЫЙ ЭКРАН — светлый, фон «assets/img/bg-site.jpg»,
   лёгкая белая подложка поверх фото для читаемости текста.
   ========================================================= */
.hero{
   color:var(--ink);  
  background:var(--surface) url("../img/bg-site.jpg") center/cover no-repeat;
}
.hero::before{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg, rgba(255,255,255,.6) 0%, rgba(255,255,255,.4) 45%, rgba(255,255,255,.65) 100%);
}
.hero-inner{position:relative; z-index:1;}
.hero-eyebrow{display:flex;  margin-left:auto; margin-right:auto; align-items:center; gap:7px; font-size:12px; font-weight:600; color:#7fffd0;    border-radius:var(--r-pill); }
.hero-eyebrow i{font-size:14px;}
.hero-title{text-align:center;     background:linear-gradient(92deg,var(--ink) 30%,var(--accent)); -webkit-background-clip:text; background-clip:text; color:transparent;}
.hero-slogan{    max-width:520px; margin-left:auto; margin-right:auto; text-align:center;}

/* Командная строка поиска */
.hero-command{display:flex; align-items:center; gap:8px; background:rgba(6,10,14,.62); border:1px solid rgba(127,255,208,.3); border-radius:var(--r); padding:7px 10px; backdrop-filter:blur(14px); max-width:860px; margin-left:auto; margin-right:auto;}
.hero-command > i{color:var(--aurora-1); font-size:18px; padding-left:4px;}
.hero-command .field{flex:1; background:transparent; border:none; color:var(--on-chip); font-size:15px; padding:9px 4px;}
.hero-command .field::placeholder{color:var(--on-chip-dim);}
.hero-command select.field{color:var(--on-chip);}
.hero-command select.field option{color:#111;}
.hero-command .divider{width:1px; height:22px; background:var(--glass-brd);}

/* Быстрый заказ (компактное стекло на тёмной подложке) */
.quick-order{margin-top:12px; background:rgba(6,10,14,.62); border:1px solid rgba(255,255,255,.12);   backdrop-filter:blur(14px); max-width:860px; margin-left:auto; margin-right:auto;}
.quick-order-label{font-size:12px; font-weight:700; letter-spacing:.6px; color:var(--on-chip-dim); text-transform:uppercase; margin-bottom:8px;}
.quick-order-grid{display:grid; grid-template-columns:1fr 1fr; gap:8px;}
.quick-order-grid .field-wrap{display:flex; flex-direction:column; gap:4px; min-width:0;}
.quick-order-grid label{font-size:12.5px; color:var(--on-chip-dim); font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.qty-combo{display:flex; gap:6px;}
.qty-combo input{flex:1; min-width:0;}
.qty-combo .qty-unit{width:74px; flex:none;}

.field{background:rgba(255,255,255,.95); color:var(--ink); border:none;  padding:10px 12px;  width:100%; }
.field::placeholder{color:#8a978f;}
select.field{appearance:none;}

.hero-cta{display:flex; justify-content:center; flex-wrap:wrap; gap:8px; margin-top:12px;}

/* =========================================================
   НАПРАВЛЕНИЯ — компактные карточки с фото (тёмная секция)
   ========================================================= */
#directions{ color:var(--on-dark); position:relative; padding-top:20px;}
#directions .section-title{color:var(--ink);}
.dir-grid{display:grid;  gap:8px;}
.dir-card{
  position:relative; display:flex; flex-direction:column;
    
  color:var(--on-dark); 
}
.dir-card:hover{transform:translateY(-4px); border-color:color-mix(in srgb, var(--dc,#00e58f) 55%, transparent); box-shadow:0 8px 30px color-mix(in srgb, var(--dc,#00e58f) 22%, transparent);}
/* Фото направления — верх карточки */
.dir-card-img{
  position:relative; display:block; 
  background-size:cover; background-position:center;
}
.dir-card-img::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(5,8,12,.05) 40%, rgba(5,8,12,.85) 100%);}
.dir-card-img i{
  position:absolute; left:10px; bottom:-14px; z-index:2;
  width:34px; height:34px; display:flex; align-items:center; justify-content:center;
  font-size:18px; color:var(--dc,#00e58f); border-radius:9px;
  background:#0b1219; border:1px solid color-mix(in srgb, var(--dc,#00e58f) 45%, transparent);
}
.dir-card-body{display:flex; flex-direction:column; gap:4px;  flex:1;}
.dir-title{ font-weight:800;  color:var(--ink-2);}
.dir-tagline{  color:var(--on-dark-dim); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.dir-card-meta{display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:auto; padding-top:8px;}
.dir-count{font-size:12px; font-weight:700; color:var(--on-dark-dim); background:rgba(10,31,22,.05); padding:3px 8px; border-radius:999px; border:1px solid var(--glass-brd); white-space:nowrap;}
.dir-go{display:inline-flex; align-items:center; gap:4px;  font-weight:700; color:var(--dc,#00e58f); white-space:nowrap;}
@media(min-width:900px){ .dir-grid{grid-template-columns:repeat(3,1fr);} }
/* На узких экранах карточка направления компактнее: ниже фото, без слогана */
@media(max-width:559px){
  .dir-card-img{height:78px;}
  .dir-card-img i{width:28px; height:28px; font-size:15px; bottom:-12px; left:8px;}
  .dir-card-body{padding:16px 9px 9px; gap:3px;}
  .dir-title{font-size:13px;}
  .dir-tagline{display:none;}
  .dir-count{font-size:10px; padding:2px 6px;}
  .dir-go{font-size:11px;}
}

/* =========================================================
   СВЕТЛАЯ РАБОЧАЯ ЗОНА — общий вид
   ========================================================= */
.services-section{ padding-top:26px;}
.svc-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:12px;}
.svc-card{display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; gap:10px;      }
.svc-card:hover{transform:translateY(-3px); border-color:var(--accent); box-shadow:var(--shadow);}
.svc-icon{  display:flex; align-items:center; justify-content:center;  color:var(--accent); background:#e6f6ee; border-radius:50%; transition:transform .2s var(--ease);}
.svc-card:hover .svc-icon{transform:scale(1.1);}
.svc-title{ font-weight:700; color:var(--ink-2); }

/* Поля светлой зоны */
.field-dark{width:100%; background:#fff; color:var(--ink); border:1px solid var(--card-brd);  padding:10px 12px;   }
.field-dark:focus{outline:none; border-color:var(--accent); box-shadow:0 0 0 3px rgba(0,176,106,.15);}
select.field-dark{appearance:none;}

/* Фильтр */
.filter-panel{ margin-bottom:16px;}
.filter-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
.filter-grid .field-wrap{display:flex; flex-direction:column; gap:4px; min-width:0;}
.filter-grid label{font-size:13.5px; font-weight:600; color:var(--ink-dim); white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.filter-checkbox{justify-content:flex-end;}
.filter-checkbox label{flex-direction:row; align-items:center; gap:8px; font-size:14px; color:var(--ink-2); font-weight:600;}
.filter-actions{display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-top:12px;}
.filter-count{font-size:14px; color:var(--ink-dim); font-weight:600;}
.export-group{display:flex; align-items:center; gap:6px; margin-left:auto; flex-wrap:wrap;}
.export-label{font-size:13px; color:var(--ink-dim); font-weight:600;}

/* Лента заказов */
.feed-wrap{position:relative;}
.feed{display:flex; flex-direction:column; gap:10px;}
.feed-arrow{display:none;}
.feed-empty{padding:22px; text-align:center; color:var(--ink-dim); background:#fff; border:1px dashed var(--card-brd); border-radius:var(--r);}
.order-card{padding:14px; background:var(--card); border:1px solid var(--card-brd);  transition:transform .2s var(--ease), box-shadow .2s var(--ease), border-color .2s var(--ease);}
.order-card:hover{transform:translateY(-3px); box-shadow:var(--shadow-lg); border-color:var(--accent);}
.order-card.is-urgent{border-color:#f0997b;}
.order-top{display:flex; justify-content:space-between; align-items:flex-start; gap:8px;}
.order-route{ font-weight:800; color:var(--ink-2);  }
.order-tags{display:flex; flex-wrap:wrap; gap:5px; margin-top:6px; justify-content:center;}
.order-tag{display:inline-block; font-size:12.5px; font-weight:600; color:var(--accent); background:#e6f6ee; padding:2px 8px; border-radius:6px;}
.order-status{display:inline-block; font-size:12.5px; font-weight:700; padding:2px 8px; border-radius:6px;}
.order-status.s-new{color:#185fa5; background:#e6f1fb;}
.order-status.s-offers{color:#8a5a1e; background:#fff3e0;}
.order-sub{ color:var(--ink-dim); margin:7px 0;  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
.order-rate{ font-weight:800; background:var(--price-grad); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:transparent;}
.order-unit{ font-weight:600; -webkit-text-fill-color:var(--ink-dim); color:var(--ink-dim);}
.order-meta{display:flex; gap:12px; margin:8px 0 10px; font-size:13.5px; color:var(--ink-dim); justify-content:center;}
.order-meta i{color:#c9a227;}

/* Аналитика */
.kpi-grid{display:grid;  gap:10px; margin-bottom:12px;}
.kpi{    min-width:0;}
.kpi-label{ color:var(--ink-dim); font-weight:600; overflow-wrap:anywhere;} /* перенос вместо обрезки многоточием (10.09.2026) */
.kpi-value{ font-weight:800; margin:4px 0 2px; background:var(--price-grad); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:transparent; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.kpi-note{  overflow-wrap:anywhere;}
.analytics-row{display:grid; grid-template-columns:1fr; gap:10px; margin-bottom:12px;}
.analytics-card-title{ font-weight:700; margin-bottom:12px;}
@keyframes barGrow{from{transform:scaleY(0)} to{transform:scaleY(1)}}
.corridor{display:flex;   border:1px solid var(--card-brd);}
.corridor-seg{flex:1; text-align:center; padding:12px 4px;  font-weight:700;}
.corridor-seg.low{background:#fdeee7; color:#993c1d;} .corridor-seg.mid{background:#e6f6ee; color:#0a7a48;} .corridor-seg.high{background:#fbe9ef; color:#8c2f4d;}
.corridor-hint{margin-top:10px;  color:var(--ink-dim);}
.index-row{display:grid; grid-template-columns:1fr 1fr; gap:8px;}
.index-chip{background:#fff; border-radius:var(--r); padding:10px 12px; box-shadow:var(--shadow); display:flex; flex-direction:column; gap:2px; min-width:0;}
.index-chip-label{font-size:12.5px; color:var(--ink-dim); font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.index-chip-value{font-size:18px; font-weight:800; color:var(--ink-2); white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.index-chip-value.risk-low{color:var(--sf-green);}

/* Калькулятор */
.calc-note{  margin-bottom:16px; }
.calc-layout{display:grid; grid-template-columns:1fr; gap:16px;}
.calc-form .btn{margin-top:14px;}
.calc-result{ align-self:start;}
.calc-result-empty{color:var(--ink-dim); font-size:15px;}
.calc-total-label{font-size:14px; color:var(--ink-dim); font-weight:600;}
.calc-total{font-size:34px; font-weight:800; margin:4px 0; background:var(--price-grad); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:transparent;}
.calc-total-vat{font-size:15px; -webkit-text-fill-color:var(--ink-dim); color:var(--ink-dim); font-weight:600;}
.calc-vat-note{font-size:14px; color:var(--ink-dim); margin-bottom:14px;}
.calc-breakdown{border-top:1px solid var(--card-brd); padding-top:12px;}
.calc-line{display:flex; justify-content:space-between; font-size:15px; padding:7px 0; color:var(--ink-2);}
.calc-line-total{font-weight:800; border-top:1px solid var(--card-brd); margin-top:6px; padding-top:10px;}
.calc-range{display:grid; grid-template-columns:1fr; gap:9px; margin:15px 0;}
.calc-range-item{border:1px solid var(--card-brd); border-radius:var(--r-sm); padding:12px; display:grid; gap:3px; background:#fff;}
.calc-range-item span{font-size:13px; color:var(--ink-dim); font-weight:700;}
.calc-range-item strong{font-size:20px; color:var(--ink-2);}
.calc-range-item small{font-size:12px; color:var(--ink-dim);}
.calc-range-item.recommended{border-color:rgba(0,181,123,.45); background:#eefaf5; box-shadow:0 6px 18px rgba(0,181,123,.09);}
.calc-range-item.low{background:#f7fafc;}
.calc-range-item.high{background:#fff8ed;}
.calc-meta{display:flex; flex-wrap:wrap; gap:7px; margin:10px 0;}
.calc-meta span{border-radius:var(--r-pill); padding:5px 9px; background:var(--surface-2); color:var(--ink-dim); font-size:12px; font-weight:700;}
.calc-market-note{font-size:14px; color:var(--ink-2); padding-top:10px; border-top:1px solid var(--card-brd);}
.calc-disclaimer{font-size:12px; line-height:1.45; color:var(--ink-dim); margin-top:9px;}
.calc-error{display:grid; gap:8px; padding:14px; border:1px solid rgba(190,52,52,.25); border-radius:var(--r-sm); background:#fff5f5; color:#8f2d2d;}
.calc-error span{font-size:14px;}.calc-error small{color:var(--ink-dim);}
.calc-spinner{width:17px; height:17px; display:inline-block; margin-right:9px; vertical-align:-3px; border:2px solid var(--card-brd); border-top-color:var(--accent); border-radius:50%; animation:calcSpin .7s linear infinite;}
@keyframes calcSpin{to{transform:rotate(360deg)}}

@media (min-width:760px){
  .calc-range{grid-template-columns:repeat(3,minmax(0,1fr));}
}

/* Светофор и теги */
.traffic{display:inline-flex; align-items:center; gap:6px; font-size:15px; font-weight:600; color:var(--ink-2); white-space:nowrap;}
.traffic .dot{width:11px; height:11px; border-radius:50%; flex:none;}
.dot.green{background:var(--sf-green);} .dot.amber{background:var(--sf-amber);} .dot.red{background:var(--sf-red);}
.tag{display:inline-block; font-size:13px; font-weight:600; color:var(--ink-dim); background:var(--surface-2); border:1px solid var(--card-brd); padding:5px 12px; border-radius:var(--r-pill);}

/* ЭДО */
.edo-section{background:var(--surface-2);}
.edo-layout{display:grid; grid-template-columns:1fr; gap:16px;}
.edo-docs, .edo-route{padding:18px;}
.edo-head{display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:12px; flex-wrap:wrap;}
.edo-head-title{font-size:17px; font-weight:700;}
.edo-operator{width:auto; min-width:150px;}
.edo-list li{display:flex; justify-content:space-between; align-items:center; gap:10px; padding:10px 0; border-bottom:1px solid var(--card-brd); font-size:14.5px;}
.edo-list li:last-child{border-bottom:none;}
.edo-list i{color:var(--accent); margin-right:6px;}
.edo-route-title{font-size:14.5px; font-weight:700; margin-bottom:10px;}
.route-steps{display:flex; flex-wrap:wrap; flex-direction:row; gap:8px; margin-bottom:12px;}
.route-steps li{display:flex; align-items:center; gap:7px; font-size:14.5px; color:var(--ink-dim);}
.route-steps li i{width:24px; height:24px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; background:var(--surface-2); color:var(--ink-dim); font-size:13px;}
.route-steps li.done{color:var(--ink-2);} .route-steps li.done i{background:#e6f6ee; color:var(--sf-green);}
.route-steps li.active{color:var(--ink-2); font-weight:700;} .route-steps li.active i{background:var(--accent); color:#fff;}
.edo-integrations{display:flex; flex-wrap:wrap; gap:8px;}

/* Репутация */
.reviews-grid{display:grid; grid-template-columns:1fr; gap:12px; margin-top:16px;}
.review-card{padding:14px;}
.review-top{display:flex; justify-content:space-between; align-items:center; margin-bottom:8px; gap:8px; flex-wrap:wrap;}
.review-role{font-size:12.5px; font-weight:700; color:var(--accent); background:#e6f6ee; padding:3px 8px; border-radius:6px;}
.review-stars{color:#c9a227; font-size:14px; letter-spacing:1px;}
.review-text{font-size:14.5px; color:var(--ink-2); line-height:1.5;}

/* Вопросы-ответы */
.faq-list{display:flex; flex-direction:column; gap:10px;}
.faq-item{overflow:hidden;}
.faq-q{width:100%; text-align:left; background:none; border:none; display:flex; justify-content:space-between; align-items:center; gap:10px; padding:15px 18px; font-size:16px; font-weight:700; color:var(--ink-2);}
.faq-q i{transition:transform .2s var(--ease); color:var(--accent); font-size:18px;}
.faq-item.open .faq-q i{transform:rotate(180deg);}
.faq-a{max-height:0; overflow:hidden; padding:0 18px; font-size:14.5px; color:var(--ink-dim); line-height:1.55; transition:max-height .25s var(--ease), padding .25s var(--ease);}
.faq-item.open .faq-a{max-height:340px; padding:0 16px 14px;}

/* Кабинет */
.cabinet-section{background:var(--surface-2);}
.workflow{padding:14px; margin-bottom:12px;}
.workflow-title{font-size:14.5px; font-weight:700; margin-bottom:10px;}
.workflow-steps{display:flex; flex-wrap:wrap; gap:8px;}
.workflow-steps li{display:flex; align-items:center; gap:7px; font-size:14.5px; font-weight:600; background:var(--surface-2); border:1px solid var(--card-brd); border-radius:var(--r-pill); padding:6px 12px;}
.wf-num{width:24px; height:24px; border-radius:50%; background:var(--accent); color:#fff; display:inline-flex; align-items:center; justify-content:center; font-size:13px; font-weight:700;}
.cabinet-panel{display:grid; grid-template-columns:1fr; gap:16px;}
.panel-actions, .panel-deals{padding:18px;}
.panel-title{font-size:17px; font-weight:700; margin-bottom:14px;}
.panel-actions .btn{width:100%; margin-bottom:8px; justify-content:flex-start;}
.deal-row{display:flex; justify-content:space-between; align-items:center; gap:10px; padding:13px 0; border-bottom:1px solid var(--card-brd);}
.deal-row:last-child{border-bottom:none;}
.deal-name{font-size:16px; font-weight:600;}
.deal-sub{ color:var(--ink-dim); margin-top:2px;}
.deal-btns{display:flex; flex-wrap:wrap; gap:8px; margin-top:9px;}
.deal-empty{font-size:14px; color:var(--ink-dim); padding:10px 0;}
.deal-row-extended{align-items:flex-start; padding:16px 0;}
.deal-main{min-width:0; flex:1;}
.deal-tags{display:flex; flex-wrap:wrap; gap:6px; margin-top:8px;}
.deal-tags span{font-size:12px; font-weight:700; color:var(--ink-dim); background:var(--surface-2); border:1px solid var(--card-brd); border-radius:var(--r-pill); padding:4px 9px;}
.deal-sla-summary{min-width:195px; display:flex; flex-direction:column; align-items:flex-end; gap:5px; text-align:right;}
.deal-list-deadline{font-size:13px; font-weight:700; color:var(--ink-2);}
.deal-task-count,.deal-status-note{font-size:12px; color:var(--ink-dim);}
.dot.yellow{background:#d9aa00;}.dot.orange{background:#e67e22;}
.modal-deal-card{max-width:980px;}
.deal-card-hero{display:flex; justify-content:space-between; align-items:flex-start; gap:18px; padding:18px; border:1px solid var(--card-brd); border-left-width:5px; border-radius:var(--r-md); background:var(--surface-2); margin-bottom:16px;}
.deal-card-hero.is-green{border-left-color:var(--sf-green);}.deal-card-hero.is-yellow{border-left-color:#d9aa00;}.deal-card-hero.is-orange{border-left-color:#e67e22;}.deal-card-hero.is-red{border-left-color:var(--sf-red);}
.deal-card-eyebrow{display:inline-block; font-size:12px; font-weight:800; color:var(--accent); text-transform:uppercase; letter-spacing:.04em; margin-bottom:5px;}
.deal-card-hero h3{font-size:21px; margin:0 0 5px;}.deal-card-hero p{font-size:14px; color:var(--ink-dim); margin:0;}
.deal-card-sla{display:flex; flex-direction:column; align-items:flex-end; gap:5px; text-align:right; min-width:210px;}.deal-card-sla>strong{font-size:16px;}.deal-card-sla>small{color:var(--ink-dim);}
.deal-card-grid{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
.deal-card-section{border:1px solid var(--card-brd);  padding:16px; background:#fff;}
.deal-card-section h4{font-size:17px; margin:0 0 12px;}
.deal-card-kv{display:flex; justify-content:space-between; gap:16px; padding:8px 0; border-bottom:1px solid var(--card-brd); font-size:14px;}.deal-card-kv:last-child{border-bottom:0;}.deal-card-kv span{color:var(--ink-dim);}.deal-card-kv strong{text-align:right; color:var(--ink-2);}
.deal-task-row{display:flex; align-items:flex-start; gap:10px; padding:11px 0; border-bottom:1px solid var(--card-brd);}.deal-task-row:last-child{border-bottom:0;}.deal-task-light{padding-top:4px;}.deal-task-light .dot{display:block; width:11px; height:11px; border-radius:50%;}.deal-task-body{flex:1; min-width:0;}.deal-task-body strong{display:block; font-size:14px;}.deal-task-body div{font-size:12px; color:var(--ink-dim); margin-top:3px;}.deal-task-status{font-size:11px; font-weight:800; color:var(--ink-dim); text-align:right;}
.deal-card-history{margin-top:16px;}.deal-event-row{display:flex; gap:10px; padding:10px 0; border-bottom:1px solid var(--card-brd);}.deal-event-row:last-child{border-bottom:0;}.deal-event-icon{color:var(--accent); font-size:18px;}.deal-event-row strong{display:block; font-size:14px;}.deal-event-row div div{font-size:13px; color:var(--ink-2); margin-top:2px;}.deal-event-row small{display:block; color:var(--ink-dim); margin-top:3px;}
@media(max-width:760px){.deal-row-extended,.deal-card-hero{flex-direction:column;}.deal-sla-summary,.deal-card-sla{align-items:flex-start; text-align:left; min-width:0;}.deal-card-grid{grid-template-columns:1fr;}.deal-card-kv{flex-direction:column; gap:4px;}.deal-card-kv strong{text-align:left;}.modal-deal-card .modal-body{padding:16px;}}
.offer-list{display:flex; flex-direction:column;}
.offer-row{display:flex; justify-content:space-between; align-items:center; gap:10px; padding:12px 0; border-bottom:1px solid var(--card-brd);}
.offer-row:last-child{border-bottom:none;}
.offer-price{font-size:16px; font-weight:700;}
.offer-sub{font-size:14px; color:var(--ink-dim); margin-top:2px;}
/* Чат сделки */
.chat-box{max-height:340px; min-height:180px; overflow-y:auto; display:flex; flex-direction:column; gap:10px; padding:6px 2px 10px;}
.chat-empty{font-size:14px; color:var(--ink-dim); text-align:center; padding:24px 0;}
.chat-msg{max-width:78%; padding:9px 12px; border-radius:14px; font-size:15px;}
.chat-msg.their{align-self:flex-start; background:var(--card-brd); border-bottom-left-radius:4px;}
.chat-msg.mine{align-self:flex-end; background:var(--accent-grad, #2e7d5b); color:#fff; border-bottom-right-radius:4px;}
.chat-author{font-size:12px; font-weight:700; opacity:.75; margin-bottom:2px;}
.chat-text{white-space:pre-wrap; word-break:break-word;}
.chat-time{font-size:11px; opacity:.6; margin-top:3px;}
.chat-input-row{display:flex; gap:8px; margin-top:12px;}
.chat-input-row .field-dark{flex:1;}
/* Колокольчик уведомлений */
.btn-bell{position:relative; background:none; border:none; cursor:pointer;  font-size:22px;  line-height:1; display:inline-flex; align-items:center;}
.bell-badge{position:absolute;   min-width:17px; height:17px; padding:0 4px; border-radius:9px; background:var(--sf-red, #d64545); color:#fff; font-size:11px; font-weight:700; display:inline-flex; align-items:center; justify-content:center;}
.notif-list{display:flex; flex-direction:column;}
.notif-row{display:flex; gap:10px; align-items:flex-start;  border-bottom:1px solid var(--card-brd);}
.notif-row:last-child{border-bottom:none;}
.notif-dot{color:var(--card-brd); font-size:18px; margin-top:1px;}
.notif-row.unread .notif-dot{color:var(--sf-red, #d64545);}
.notif-row.unread .notif-text{font-weight:600;}
.notif-time{ color:var(--ink-dim); margin-top:2px;}
.notif-empty{font-size:14px; color:var(--ink-dim); text-align:center; padding:24px 0;}
/* Реклама / продвижение */
.promo-head{display:flex; align-items:center;  gap:12px; flex-wrap:wrap;}
.promo-sub{color:var(--ink-dim); font-size:14px; margin:6px 0 16px;}
.ads-grid{display:grid; grid-template-columns:1fr; gap:12px;}
@media(min-width:640px){ .ads-grid{grid-template-columns:1fr 1fr;} }
@media(min-width:900px){ .ads-grid{grid-template-columns:repeat(3,1fr);} }
.ad-card{position:relative; padding:16px; text-align:left; border:1px solid var(--card-brd); border-left:3px solid var(--accent, #00b06a);}
.ad-badge{position:absolute; top:12px; right:12px; font-size:11px; font-weight:700; color:var(--ink-dim); background:var(--surface-2); border:1px solid var(--card-brd); border-radius:20px; padding:2px 9px;}
.ad-title{font-size:16px; font-weight:700; padding-right:70px;}
.ad-body{font-size:14px; color:var(--ink-2); margin-top:6px;}
.ad-meta{font-size:13px; color:var(--ink-dim); margin-top:8px;}
.ad-contact{font-size:14px; font-weight:600; margin-top:8px; color:var(--accent, #00b06a);}
/* Статус интеграций */
.integrations-panel{margin-top:14px;}
.intg-row{display:flex; justify-content:space-between; align-items:flex-start; gap:12px; padding:11px 0; border-bottom:1px solid var(--card-brd);}
.intg-row:last-child{border-bottom:none;}
.intg-title{font-size:15px; font-weight:600;}
.intg-cat{font-size:12px; color:var(--ink-dim); margin-top:2px;}
.intg-hint{font-size:12px; color:var(--ink-dim); margin-top:4px;}
.intg-badge{font-size:12px; font-weight:700; padding:4px 10px; border-radius:20px; white-space:nowrap; flex:none;}
.intg-badge.on{background:rgba(46,125,91,.16); color:var(--sf-green, #2e7d5b);}
.intg-badge.off{background:var(--card-brd); color:var(--ink-dim);}
.cabinet-roles{padding:18px;}
.role-chips{display:flex; flex-wrap:wrap; gap:8px;}
.role-chip{background:var(--surface-2); border:1px solid var(--card-brd); border-radius:var(--r-pill); padding:8px 16px; font-size:14px; font-weight:600; color:var(--ink-2);}
.role-chip:hover{border-color:var(--accent);}
.role-chip.active{background:var(--accent-grad); color:#fff; border-color:transparent;}
.cabinet-panel-2{margin-top:16px;}
.panel-employees, .panel-audit{padding:18px;}
.emp-row{padding:12px 0; border-bottom:1px solid var(--card-brd);}
.emp-row:first-child{padding-top:0;}
.emp-head{display:flex; align-items:center; gap:8px;}
.emp-name{font-size:15px; font-weight:600; flex:1;}
.emp-role{width:auto; min-width:130px; padding:7px 10px; font-size:13px;}
.emp-del{background:none; border:none; color:var(--ink-dim); font-size:18px; padding:4px 6px; border-radius:6px;}
.emp-del:hover{color:var(--sf-red); background:#fceceb;}
.emp-perms{display:flex; flex-wrap:wrap; gap:6px; margin-top:8px;}
.perm-chip{font-size:12px; font-weight:600; color:var(--ink-dim); background:var(--surface-2); border:1px solid var(--card-brd); padding:4px 10px; border-radius:var(--r-pill); cursor:pointer;}
.perm-chip.on{color:#fff; background:var(--accent); border-color:transparent;}
.emp-add-row{display:flex; gap:8px; margin-top:14px; flex-wrap:wrap;}
.emp-add-row #emp-new-name{flex:1; min-width:140px;}
.emp-add-row .field-dark.error{border-color:var(--sf-red);}
.audit-row{display:flex; gap:8px; padding:9px 0; border-bottom:1px solid var(--card-brd);}
.audit-row:last-child{border-bottom:none;}
.audit-row > i{color:var(--accent); font-size:16px; margin-top:3px;}
.audit-action{font-size:14px; font-weight:600; color:var(--ink-2);}
.audit-meta{font-size:12px; color:var(--ink-dim); margin-top:1px;}
.audit-empty{font-size:14px; color:var(--ink-dim);}

/* Показатели платформы — на тёмном */
.platform-section{background:var(--deep-0); color:var(--on-dark); position:relative; overflow:hidden;}
.platform-section .section-title{color:var(--ink);}
.stat-grid{display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:20px;}
.stat{background:var(--glass); border:1px solid var(--glass-brd); border-radius:var(--r); padding:14px 12px; text-align:center;}
.stat-value{font-size:32px; font-weight:800; color:var(--accent);}
.stat-label{font-size:15px; color:var(--on-dark-dim); margin-top:6px;}
.admin-block{background:var(--glass); border:1px solid var(--glass-brd); border-radius:var(--r); padding:18px; backdrop-filter:blur(10px);}
.admin-title{font-size:17px; font-weight:700; margin-bottom:14px; color:var(--ink);}
.admin-grid{display:grid; grid-template-columns:1fr; gap:10px;}
.admin-chip{display:flex; align-items:center; gap:8px; font-size:16px; color:var(--on-dark); background:rgba(10,31,22,.04); border-radius:var(--r-sm); padding:12px 14px;}
.admin-chip i{color:var(--accent); font-size:20px;}

/* Первый экран внутренних страниц */
.hero-page{padding:24px 0 30px;}
.hero-page-inner{text-align:center;}
.hero-title-page{font-size:clamp(28px,4.2vw,46px); margin-bottom:2px;}
.hero-page-quick{text-align:left; max-width:820px; margin:16px auto 0;}
/* Поисковая строка категорий: на смартфоне поля в столбик, на десктопе — Город · Наименование · Найти */
.hero-page-quick .quick-order-grid{grid-template-columns:1fr;}
@media(min-width:640px){
  .hero-page-quick .quick-order-grid{grid-template-columns:1fr 1fr auto; align-items:end;}
  .hero-page-quick .svc-apply-wrap .btn{width:100%;}
}

/* Услуги — чипы */
.svc-chips{display:flex; flex-wrap:wrap; gap:10px;}
.svc-chip{display:inline-flex; align-items:center; gap:8px; background:var(--card); border:1px solid var(--card-brd); border-radius:var(--r-pill); padding:10px 18px; font-size:15px; font-weight:700; color:var(--ink-2); transition:border-color .15s var(--ease), transform .12s var(--ease);}
.svc-chip i{color:var(--accent); font-size:18px;}
.svc-chip:hover{border-color:var(--accent); transform:translateY(-2px);}
.svc-head{display:flex; align-items:baseline; gap:14px; flex-wrap:wrap;}
.svc-head .section-title{margin-bottom:0;}

/* =========================================================
   ПЛАВАЮЩАЯ КНОПКА «РАЗМЕСТИТЬ»
   ========================================================= */
/* Плавающая кнопка «Разместить» (справа) — парная к кнопке ассистента слева
   (её стили в assets/js/chatbot.js). Обе держим на одной высоте и на одинаковом
   отступе от краёв, чтобы выглядели как пара, а не случайно разбросанные кнопки.
   На десктопе нижнего меню нет, поэтому отступ снизу небольшой — так кнопка
   не залезает на карточки заказов и на стрелки прокрутки ленты. */
.fab{position:fixed; right:24px; bottom:24px; z-index:70; display:inline-flex; align-items:center; gap:8px; background:var(--accent-grad); color:#fff; font-size:15px; font-weight:700; padding:13px 19px; border:none; border-radius:var(--r-pill); box-shadow:0 8px 30px rgba(0,229,143,.45); transition:transform .15s var(--ease);}
.fab:hover{transform:translateY(-3px) scale(1.03);}
.fab i{font-size:20px;}
/* Планшет/телефон: поднимаем над нижним меню (оно высотой ~62px). */
@media(max-width:899px){ .fab{right:16px; bottom:78px; padding:13px;} .fab span{display:none;} }
@media(max-width:380px){ .fab{right:12px; bottom:74px; padding:12px;} }

/* Cookie-баннер */
.cookie-banner{position:fixed; left:16px; right:16px; bottom:90px; z-index:90; max-width:920px; margin:0 auto; display:flex; flex-wrap:wrap; align-items:center; gap:14px; background:rgba(255,255,255,.97); border:1px solid var(--glass-brd-2); border-radius:var(--r); padding:16px 18px; box-shadow:var(--shadow-lg); backdrop-filter:blur(14px); opacity:0; transform:translateY(20px); transition:opacity .3s var(--ease), transform .3s var(--ease);}
.cookie-banner.show{opacity:1; transform:none;}
.cookie-text{flex:1; min-width:220px; font-size:14px; color:var(--on-dark-dim); line-height:1.5;}
.cookie-text a{color:var(--accent); font-weight:600;}
.cookie-actions{display:flex; gap:8px; align-items:center;}
@media(min-width:900px){ .cookie-banner{left:20px; right:20px; bottom:20px;} }

/* Нижнее мобильное меню */
.bottom-nav{position:fixed; left:0; right:0; bottom:0; z-index:60; display:flex; align-items:center; background:rgba(255,255,255,.92); backdrop-filter:blur(14px); border-top:1px solid rgba(10,31,22,.08); padding:6px 0;}
.bottom-item{flex:1 1 0; min-width:0; display:flex; flex-direction:column; align-items:center; gap:2px; font-size:11px; color:var(--on-dark-dim); padding:4px 2px;}
.bottom-item span{max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.bottom-item i{font-size:22px;}
.bottom-item.active{color:var(--accent);}
.bottom-create i{background:var(--accent-grad); color:#fff; width:40px; height:40px; border-radius:50%; display:flex; align-items:center; justify-content:center; margin-top:-16px; box-shadow:var(--accent-glow);}
.bottom-create{color:var(--accent); font-weight:700;}
body{padding-bottom:72px;}

/* =========================================================
   МОДАЛЬНЫЕ ОКНА И ФОРМЫ
   ========================================================= */
.modal-overlay{position:fixed; inset:0; z-index:100; background:rgba(5,8,12,.6); display:flex; align-items:flex-start; justify-content:center; padding:20px; overflow-y:auto; backdrop-filter:blur(4px);}
.modal{background:#fff;  width:100%;  margin:auto;  animation:modalIn .22s var(--ease);}
@keyframes modalIn{from{opacity:0; transform:translateY(16px) scale(.98)} to{opacity:1; transform:none}}
.modal-head{display:flex; justify-content:space-between; align-items:center;  border-bottom:1px solid var(--card-brd);}
.modal-title{ font-weight:800;}
.modal-close{background:none; border:none; font-size:26px; line-height:1; color:var(--ink-dim); width:38px; height:38px; border-radius:8px;}
.modal-close:hover{background:var(--surface-2); color:var(--ink);}
.modal-foot{ border-top:1px solid var(--card-brd); display:flex; gap:10px; justify-content:flex-end; flex-wrap:wrap;}
.form-grid{display:grid; grid-template-columns:1fr 1fr; gap:14px;}
.form-grid .full{grid-column:1 / -1;}
.form-field label{display:block; font-size:13px; font-weight:600; color:var(--ink-dim); margin-bottom:5px;}
.form-field .req{color:var(--sf-red);}
.form-field .field-dark.error{border-color:var(--sf-red); box-shadow:0 0 0 3px rgba(192,57,43,.12);}
.form-err{font-size:12px; color:var(--sf-red); margin-top:4px; display:none;}
.form-field.invalid .form-err{display:block;}
textarea.field-dark{resize:vertical; min-height:70px; font-family:inherit;}
.success-icon{text-align:center; color:var(--sf-green); font-size:56px; line-height:1; margin:6px 0 12px;}
.success-text{text-align:center; font-size:16px; color:var(--ink-2); line-height:1.5;}
.detail-tag{display:inline-block; font-size:14px; font-weight:700; color:var(--accent); background:#e6f6ee; padding:5px 12px; border-radius:8px; margin-bottom:14px;}
.detail-table{width:100%; border-collapse:collapse;}
.detail-table td{padding:11px 0; border-bottom:1px solid var(--card-brd); font-size:15px; vertical-align:top;}
.detail-table td:first-child{color:var(--ink-dim); width:44%;}
.detail-table td:last-child{font-weight:600; text-align:right;}
.detail-table tr:last-child td{border-bottom:none;}
.respond-sub{font-size:15px; color:var(--ink-dim); margin-bottom:16px;}
.auth-tabs{display:flex; gap:14px; margin-bottom:18px; border-bottom:1px solid var(--card-brd);}
.auth-tab{background:none; border:none; padding:10px 2px; margin-bottom:-1px; font-size:16px; font-weight:700; color:var(--ink-dim); border-bottom:2px solid transparent;}
.auth-tab.active{color:var(--ink-2); border-bottom-color:var(--accent);}

/* Согласия и журнал согласий */
.consent-field{background:var(--surface-2); border:1px solid var(--card-brd); border-radius:var(--r-sm); padding:14px; margin-top:4px;}
.consent-field.invalid{border-color:var(--sf-red); box-shadow:0 0 0 3px rgba(192,57,43,.10);}
.consent-title{font-size:13px; font-weight:700; color:var(--ink-2); margin-bottom:10px;}
.consent-note{font-size:13px; color:var(--ink-dim); margin-bottom:10px; line-height:1.5;}
.consent-note a{color:var(--accent); font-weight:600;}
.consent-optional{color:var(--ink-dim); margin-top:6px; padding-top:8px; border-top:1px dashed var(--card-brd);}
.consent-line{display:flex; align-items:flex-start; gap:9px; font-size:14px; color:var(--ink-2); line-height:1.4; padding:5px 0;}
.consent-line input{margin-top:3px; flex:none;}
.consent-line a{color:var(--accent); font-weight:600;}
.consent-field .consent-err{display:none; margin-top:6px;}
.consent-field.invalid .consent-err{display:block;}
.consent-journal{margin-top:18px; border-top:1px solid var(--card-brd); padding-top:14px;}
.consent-journal-title{font-size:15px; font-weight:700; margin-bottom:10px;}
.consent-row{display:flex; justify-content:space-between; align-items:center; gap:10px; padding:9px 0; border-bottom:1px solid var(--card-brd); font-size:14px; flex-wrap:wrap;}
.consent-row:last-child{border-bottom:none;}
.consent-meta{font-size:12px; color:var(--ink-dim);}
.consent-empty{font-size:14px; color:var(--ink-dim);}

/* =========================================================
   Липкий мини-поиск в шапке (появляется при прокрутке)
   ========================================================= */
/* Поиск умеет сжиматься (min-width:0 и у него, и у поля ввода) — иначе он распирал
   шапку и наезжал на пункты меню «Направления · Услуги · Блог». */
.header-search{display:none; align-items:center; gap:8px; flex:1 1 160px; min-width:0; max-width:340px; margin-left:8px;
  background:var(--glass); border:1px solid var(--glass-brd); 
  padding:5px 6px 5px 14px; opacity:0; transform:translateY(-8px); pointer-events:none;
  transition:opacity .3s var(--ease), transform .3s var(--ease);}
.header-search.show{opacity:1; transform:none; pointer-events:auto;}
.header-search i{color:var(--accent); font-size:16px; flex:none;}
.header-search input{flex:1 1 0; min-width:0; background:transparent; border:none; color:var(--on-dark); font-size:14px;}
.header-search input::placeholder{color:var(--on-dark-dim);}
.header-search button{flex:none; background:var(--accent-grad); color:#fff; border:none;  padding:7px 14px;   white-space:nowrap;}
/* Показываем поиск только когда в шапке реально есть под него место:
   при входе в аккаунт справа добавляются «Кабинет», колокольчик и имя пользователя. */
@media(min-width:1120px){ .header-search{display:flex;} }

/* =========================================================
   Бегущая строка живых заказов
   ========================================================= */
.ticker-wrap{background:var(--deep-0); border-top:1px solid rgba(10,31,22,.08); border-bottom:1px solid rgba(10,31,22,.08); overflow:hidden; }
/* Скорость строки: 110s вместо 42s — успеть прочитать на ходу. Наведение мышью её останавливает. */
.ticker{display:inline-flex; align-items:center; white-space:nowrap; width:max-content; animation:tickerMove 110s linear infinite;}
.ticker:hover{animation-play-state:paused;}
.ticker-item{display:inline-flex; align-items:center; gap:8px; padding:0 26px; color:var(--on-dark-dim);  border-right:1px solid rgba(10,31,22,.1);}
.ticker-item b{color:var(--on-dark); font-weight:700;}
.ticker-item .price{background:var(--price-grad); -webkit-background-clip:text; background-clip:text; color:transparent; font-weight:800;}
.ticker-live{color:var(--accent); font-weight:700; text-transform:uppercase; letter-spacing:.5px; }
.ticker-live::before{content:""; display:inline-block; width:8px; height:8px; border-radius:50%; background:var(--accent); box-shadow:var(--accent-glow); margin-right:6px; animation:pulseDot 1.4s ease-in-out infinite;}
@keyframes tickerMove{from{transform:translateX(0)} to{transform:translateX(-50%)}}
@keyframes pulseDot{0%,100%{opacity:1} 50%{opacity:.25}}

/* 3D-наклон плиток задаётся из JS (inline transform); плавный возврат */
.dir-card{will-change:transform;}

/* =========================================================
   Юридические документы (legal.html)
   ========================================================= */
.legal-page{background:var(--surface);}
.legal-intro{font-size:16px; color:var(--ink-dim); max-width:760px; margin:-14px 0 24px;}
.legal-layout{display:grid; grid-template-columns:1fr; gap:18px;}
.legal-list{display:flex; flex-direction:column; gap:4px; align-self:start;}
.legal-list-title{font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.5px; color:var(--ink-dim); margin:12px 4px 6px;}
.legal-link{display:flex; justify-content:space-between; align-items:center; gap:8px; padding:11px 14px; border-radius:var(--r-sm); font-size:15px; font-weight:600; color:var(--ink-2); background:var(--card); border:1px solid var(--card-brd);}
.legal-link:hover{border-color:var(--accent);}
.legal-link.active{background:#e6f6ee; border-color:var(--accent); color:var(--ink);}
.legal-link.planned{color:var(--ink-dim); font-weight:500; background:transparent; border:1px dashed var(--card-brd); cursor:default;}
.legal-ver{font-size:12px; color:var(--ink-dim); font-weight:700;}
.legal-doc{padding:24px;}
.legal-type{display:inline-block; font-size:12px; font-weight:700; color:var(--accent); background:#e6f6ee; padding:4px 10px; border-radius:6px;}
.legal-doc-title{font-size:26px; font-weight:800; margin:10px 0 12px; letter-spacing:-.4px;}
.legal-meta{display:flex; flex-wrap:wrap; gap:16px; font-size:13px; color:var(--ink-dim); margin-bottom:14px;}
.legal-meta i{color:var(--accent); margin-right:4px;}
.legal-body{font-size:15px; color:var(--ink-2); line-height:1.7;}
.legal-body h3{font-size:17px; margin:18px 0 6px;}
.legal-body p{margin-bottom:10px;}
/* Подпункты «а) …» в Правилах платформы — с отступом, как в самом документе (16.09.2026). */
.legal-body .legal-sub{margin-bottom:6px; padding-left:1.6em;}
/* Поддержка: вид обращения и жалоба на решение площадки (16.09.2026). */
.sup-kinds{display:flex;flex-wrap:wrap;gap:8px}
.sup-kind{display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid var(--card-brd,#dfe7e3);border-radius:10px;cursor:pointer;font-size:14px;font-weight:600}
.sup-kind input{accent-color:#0e6b57}
.sup-kind-note,.sup-measure{margin:8px 0 0;font-size:13px;line-height:1.5;color:var(--ink-2,#3c4b45)}
.sup-measure{font-weight:700}
.sup-fraud-note{padding:8px 10px;border-radius:10px;background:color-mix(in srgb,#e5484d 8%,transparent)}
.sup-order-field{margin-top:10px;max-width:220px}
.sup-order-field label{font-size:13px}
/* Окно с предложением принять Правила платформы: текст короткий — окно узкое, а не во весь экран (16.09.2026). */
.modal.modal-platform-rules-289{width:min(640px,calc(100vw - 24px))!important;max-width:640px!important}
/* Таблица тарифов в юридическом документе. Узкий экран прокручивает её
   внутри себя: страница целиком горизонтально ездить не должна. */
.legal-body .legal-table{width:100%; border-collapse:collapse; margin:12px 0 14px; font-size:14px;}
.legal-body .legal-table th,
.legal-body .legal-table td{border:1px solid var(--card-brd); padding:8px 12px; text-align:left;}
.legal-body .legal-table th{background:#f3f7f5; font-weight:700; color:var(--ink);}
.legal-body .legal-table td:last-child{white-space:nowrap; font-weight:600;}
/* Широкие таблицы новых редакций переносят текст; пометка о новой или прежней редакции (17.09.2026). */
.legal-body .legal-table-wrap td:last-child{white-space:normal; font-weight:400;}
.legal-body .legal-table-wrap td, .legal-body .legal-table-wrap th{overflow-wrap:break-word;}
.legal-edition-note{display:flex; gap:10px; align-items:flex-start; margin:0 0 16px; padding:10px 14px; border-radius:var(--r-sm); font-size:14px; line-height:1.5; background:#f3f7f5; border:1px solid var(--card-brd); color:var(--ink-2);}
.legal-edition-note.is-new{background:#e6f6ee; border-color:var(--accent);}
.legal-edition-note i{color:var(--accent); font-size:18px; line-height:1.3;}
.legal-edition-note a{font-weight:700;}
.ld-draft{background:#fff6ed; border:1px solid #f3d3b3; color:#8a5a1e; padding:10px 14px; border-radius:var(--r-sm); font-size:13px;}
.legal-history{margin-top:22px; border-top:1px solid var(--card-brd); padding-top:14px;}
.legal-history-title{font-size:15px; font-weight:700; margin-bottom:10px;}
.legal-history-row{display:grid; grid-template-columns:60px 110px 1fr; gap:10px; font-size:14px; color:var(--ink-dim); padding:6px 0;}

/* Текстовая кнопка-ссылка (напр. «Забыли пароль?») */
.link-btn{background:none; border:none; padding:2px 0; margin-top:2px; color:var(--accent); font-size:13.5px; font-weight:700; cursor:pointer; text-decoration:underline;}
.link-btn:hover{color:var(--ink);}

/* =========================================================
   Доставка запчастей (service.html?s=parts)
   ========================================================= */
.dlv-results{display:grid; grid-template-columns:1fr; gap:10px; margin-top:14px;}
.dlv-offer{display:flex; align-items:center; gap:14px; padding:14px 18px; flex-wrap:wrap;}
.dlv-title{flex:1; min-width:150px; font-weight:800; font-size:15.5px; text-align:left;}
.dlv-tariff{color:var(--ink-dim); font-weight:600; font-size:13px; margin-left:4px;}
.dlv-days{color:var(--ink-dim); font-size:14px; white-space:nowrap;}
.dlv-days i{color:var(--accent); margin-right:4px;}
.dlv-price{font-weight:800; font-size:18px; white-space:nowrap; background:var(--price-grad); -webkit-background-clip:text; background-clip:text; color:transparent;}
.dlv-badge{font-size:12px; font-weight:700; padding:3px 10px; border-radius:6px; background:var(--surface-2); color:var(--ink-dim); white-space:nowrap;}
.dlv-badge.test{background:#fff6ed; color:#8a5a1e;}
.dlv-badge.live{background:#e6f6ee; color:#0a7a48;}
/* Справочные службы: к площадке не подключены, заказать через ГИГЗАКАЗ нельзя (11.09.2026). */
.dlv-badge.ref{background:transparent; border:1px dashed var(--line, #d8d2c4); color:var(--ink-dim);}
.dlv-offer.ref{opacity:.75;}
.dlv-offer.ref .dlv-price{background:none; color:var(--ink-dim);}
.dlv-ref-head{margin:8px 2px 0; color:var(--ink-dim); font-size:13px;}
.ad-quote-ref-head{margin:10px 0 4px; color:var(--ink-dim); font-size:12px;}
.ad-quote-ref{display:flex; justify-content:space-between; gap:10px; padding:6px 10px; color:var(--ink-dim); font-size:13px; border-bottom:1px dashed var(--line, #d8d2c4);}
.dlv-how{color:var(--ink-dim); font-size:14px; white-space:nowrap;}
.dlv-how i{color:var(--accent); margin-right:4px;}

/* Способ получения: радиокнопки над кнопкой расчёта */
.dlv-modes{display:flex; flex-wrap:wrap; align-items:center; gap:8px 18px; margin-top:12px; color:var(--text-dark); font-size:14px;}
.dlv-modes-label{font-weight:700;}
.dlv-modes label{display:flex; align-items:center; gap:6px; cursor:pointer;}
/* Аккуратный кружок в цвет сайта; нажимается и подпись рядом (11.09.2026). */
.dlv-modes input[type="radio"]{width:18px; height:18px; margin:0; flex:0 0 auto; accent-color:var(--accent, #1aa37a);}

/* Шапка расчёта: маршрут и посылка */
.dlv-summary{margin-top:14px; padding:12px 16px; border-radius:12px; background:var(--surface-2);}
.dlv-route{font-size:16px;}
.dlv-route i{color:var(--accent);}
.dlv-parcel{color:var(--ink-dim); font-size:14px; margin-top:2px;}
.dlv-src{color:var(--ink-dim); font-size:13px; margin-top:2px; font-style:italic;}

/* Карта ПВЗ СДЭК. Виджету нужна заданная высота, иначе он схлопнется в ноль. */
.dlv-map-title{margin:26px 0 4px; font-size:20px; font-weight:800;}
.dlv-map-wrap{margin-top:12px; border-radius:14px; overflow:hidden;}
.dlv-map{width:100%; height:600px;}
@media (max-width:700px){ .dlv-map{height:460px;} }
.dlv-pvz{margin-top:12px; padding:12px 16px; border-radius:12px; background:var(--surface-2); font-size:15px;}
.dlv-pvz i{color:var(--accent); margin-right:4px;}
.dlv-pvz-addr{margin-top:4px;}
.dlv-pvz-time,.dlv-pvz-tariff{color:var(--ink-dim); font-size:14px; margin-top:2px;}

/* =========================================================
   Блог / статьи (blog.html)
   ========================================================= */
.blog-page{background:var(--surface);}

/* Панель рубрик-фильтров */
.art-toolbar{display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin:4px 0 22px;}
.art-chip{background:var(--card); border:1px solid var(--card-brd); color:var(--ink-2); font-size:14px; font-weight:700; padding:8px 14px; border-radius:var(--r-pill); transition:border-color .15s var(--ease), background .15s var(--ease);}
.art-chip:hover{border-color:var(--accent);}
.art-chip.active{background:var(--accent); border-color:var(--accent); color:#fff;}

/* Сетка карточек */
.art-grid{display:grid; grid-template-columns:1fr; gap:18px;}
.art-card{display:flex; flex-direction:column; background:var(--card); border:1px solid var(--card-brd); border-radius:var(--r); box-shadow:var(--shadow); overflow:hidden; transition:transform .18s var(--ease), box-shadow .2s var(--ease);}
.art-card:hover{transform:translateY(-4px); box-shadow:var(--shadow-lg);}
.art-card-cover{height:170px; background-size:cover; background-position:center; background-color:var(--surface-2);}
.art-card-body{display:flex; flex-direction:column; gap:8px; padding:16px 18px 18px; text-align:left;}
.art-badge{align-self:flex-start; font-size:12px; font-weight:700; color:var(--accent); background:#e6f6ee; padding:4px 10px; border-radius:6px;}
.art-card-title{font-size:18px; font-weight:800; line-height:1.35; letter-spacing:-.3px; color:var(--ink);}
.art-card-excerpt{font-size:14px; color:var(--ink-dim); line-height:1.6;}
.art-card-meta{display:flex; flex-wrap:wrap; gap:14px; margin-top:2px; font-size:13px; color:var(--ink-dim);}
.art-card-meta i{color:var(--accent); margin-right:4px;}
.art-empty{padding:30px; text-align:center; color:var(--ink-dim); border:1px dashed var(--card-brd); border-radius:var(--r);}

/* Одна статья */
.art-back{display:inline-flex; align-items:center; gap:6px; font-size:14px; font-weight:700; color:var(--ink-dim); margin-bottom:14px;}
.art-back:hover{color:var(--accent);}
.art-full{overflow:hidden;}
.art-full-cover{height:280px; background-size:cover; background-position:center; background-color:var(--surface-2);}
.art-full-inner{padding:26px; max-width:820px; margin:0 auto; text-align:left;}
.art-full-title{font-size:30px; font-weight:800; line-height:1.2; letter-spacing:-.5px; margin:12px 0 14px; color:var(--ink);}
.art-full-meta{display:flex; flex-wrap:wrap; gap:16px; font-size:13px; color:var(--ink-dim); padding-bottom:16px; margin-bottom:18px; border-bottom:1px solid var(--card-brd);}
.art-full-meta i{color:var(--accent); margin-right:4px;}
.art-full-body{font-size:16px; color:var(--ink-2); line-height:1.75;}
.art-full-body h3{font-size:20px; font-weight:800; margin:24px 0 8px; letter-spacing:-.3px;}
.art-full-body p{margin-bottom:12px;}
.art-full-body ul{margin:0 0 14px; padding-left:0;}
.art-full-body li{position:relative; padding-left:24px; margin-bottom:7px;}
.art-full-body li::before{content:""; position:absolute; left:6px; top:11px; width:7px; height:7px; border-radius:50%; background:var(--accent-grad);}
.art-full-body a{color:var(--accent); font-weight:700; text-decoration:underline;}
.art-full-body blockquote{margin:18px 0; padding:12px 18px; border-left:3px solid var(--accent); background:#e6f6ee; border-radius:0 var(--r-sm) var(--r-sm) 0; font-size:15px; color:var(--ink);}
.art-tags{display:flex; flex-wrap:wrap; gap:8px; margin-top:22px;}
.art-tag{font-size:13px; font-weight:700; color:var(--ink-dim); background:var(--surface-2); padding:5px 11px; border-radius:var(--r-pill);}
.art-share{margin-top:20px; padding-top:18px; border-top:1px solid var(--card-brd);}

/* Похожие статьи */
.art-related{margin-top:30px;}
.art-related-title{font-size:20px; font-weight:800; letter-spacing:-.3px; margin-bottom:14px; text-align:center;}

/* =========================================================
   Футер
   ========================================================= */
.site-footer{background:var(--deep-0); color:var(--on-dark); padding:36px 0 22px; margin-bottom:64px;}
.footer-grid{display:grid; grid-template-columns:1fr 1fr; gap:26px;}
.footer-logo{font-size:20px; font-weight:800; letter-spacing:1.5px; color:var(--ink); margin-bottom:10px;}
.footer-about{font-size:14px; color:var(--on-dark-dim); line-height:1.6;}
.footer-title{ font-weight:700; color:var(--ink); margin-bottom:12px;}
.footer-col a{display:block; font-size:14px; color:var(--on-dark-dim); padding:5px 0;}
.footer-col a:hover{color:var(--accent);}
.footer-bottom{display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; margin-top:28px; padding-top:18px; border-top:1px solid rgba(10,31,22,.1); font-size:13px; color:var(--on-dark-dim);}
@media(min-width:640px){ .legal-layout{grid-template-columns:280px 1fr;} .footer-grid{grid-template-columns:repeat(4,1fr);} .art-grid{grid-template-columns:repeat(2,1fr);} }
@media(min-width:900px){  .art-grid{grid-template-columns:repeat(3,1fr);} }

/* =========================================================
   ПОЯВЛЕНИЕ ПРИ ПРОКРУТКЕ
   ========================================================= */
.reveal{opacity:0; transform:translateY(18px); transition:opacity .5s var(--ease), transform .5s var(--ease); transition-delay:var(--reveal-delay,0s); will-change:opacity, transform;}
.reveal.in{opacity:1; transform:none;}

@media (prefers-reduced-motion: reduce){
  .badge-urgent, .ticker, .ticker-live::before, .abar-col, .dir-hero-icon{animation:none;}
  .reveal{opacity:1; transform:none; transition:none;}
  *{scroll-behavior:auto !important;}
}

/* =========================================================
   АДАПТИВ
   ========================================================= */
@media(min-width:640px){
  .quick-order-grid{grid-template-columns:repeat(3,1fr);}
  .svc-grid{grid-template-columns:repeat(4,1fr);}
}
@media(min-width:900px){
  .main-nav{display:block;}
  .btn-login{display:inline-block;}
  .btn-cabinet{display:inline-block;}
  .header-actions .btn-cta{display:inline-flex;}
  .quick-order-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));}
  .filter-grid{grid-template-columns:repeat(3,1fr);}
  .kpi-grid{grid-template-columns:repeat(4,1fr);}
  .analytics-row{grid-template-columns:1fr 1fr;}
  .index-row{grid-template-columns:repeat(4,1fr);}
  .calc-layout{grid-template-columns:3fr 2fr;}
  .edo-layout{grid-template-columns:3fr 2fr;}
  .reviews-grid{grid-template-columns:repeat(3,1fr);}
  .cabinet-panel{grid-template-columns:1fr 2fr;}
  .stat-grid{grid-template-columns:repeat(4,1fr);}
  .admin-grid{grid-template-columns:repeat(4,1fr);}
  .svc-grid{grid-template-columns:repeat(7,1fr);}

  .feed{flex-direction:row; overflow-x:auto; scroll-behavior:smooth; padding:4px 44px;}
  .feed::-webkit-scrollbar{height:8px;}
  .feed::-webkit-scrollbar-thumb{background:#cdd6d2; border-radius:8px;}
  .order-card{min-width:290px; max-width:290px;}
  .feed-arrow{display:flex; align-items:center; justify-content:center; position:absolute; top:50%; transform:translateY(-50%); width:42px; height:42px; border-radius:50%; background:#fff; border:1px solid var(--card-brd); box-shadow:var(--shadow); color:var(--ink); font-size:20px; z-index:2;}
  .feed-prev{left:0;} .feed-next{right:0;}
  .feed-arrow:hover{border-color:var(--accent); color:var(--accent);}

  .bottom-nav{display:none;}
  .site-footer{margin-bottom:0;}   /* на десктопе нижней панели нет — убираем пустую полосу */
  body{padding-bottom:0;}
}

/* =========================================================
   РЕДИЗАЙН: направления со своей «личностью»
   (акцент --dc/--dc2 приходит из схемы направления)
   ========================================================= */

/* ---------- Табы направлений (hero, документы, калькулятор) ---------- */
/* Табы направлений: все 9 всегда видны — переносим на новые строки и центруем */
.qo-tabs{display:flex; flex-wrap:wrap; justify-content:center; gap:6px; padding:2px 2px 10px;}
.qo-tab{
  display:inline-flex; align-items:center; gap:6px; flex:0 0 auto;
  padding:8px 13px; border-radius:999px; font-size:13.5px; font-weight:700;
  background:rgba(0,0,0,.35); color:var(--on-chip-dim); border:1px solid rgba(255,255,255,.14);
  transition:all .22s var(--ease); white-space:nowrap;
}
.qo-tab i{font-size:16px; color:var(--dc,#00e58f);}
.qo-tab:hover{color:#fff; border-color:var(--dc,#00e58f); transform:translateY(-1px);}
.qo-tab.active{
  background:color-mix(in srgb, var(--dc,#00e58f) 16%, transparent);
  border-color:var(--dc,#00e58f); color:var(--ink);
  box-shadow:0 0 18px color-mix(in srgb, var(--dc,#00e58f) 35%, transparent);
}
/* Светлый вариант табов (на белых секциях) */
.docs-tabs{margin:0 auto 14px; max-width:1000px;}
.docs-tabs .qo-tab{background:#fff; color:var(--ink-dim); border-color:var(--card-brd);}
.docs-tabs .qo-tab:hover{color:var(--ink);}
.docs-tabs .qo-tab.active{
  background:color-mix(in srgb, var(--dc,#00b06a) 10%, #fff);
  border-color:var(--dc,#00b06a); color:var(--ink);
  box-shadow:0 4px 16px color-mix(in srgb, var(--dc,#00b06a) 22%, transparent);
}

/* ---------- Быстрый заказ: ориентир рынка и кнопка ---------- */
.qo-market-value{
  display:flex; align-items:center; flex-wrap:wrap; gap:5px; min-height:38px; padding:8px 11px;
  background:rgba(0,0,0,.3); border:1px dashed rgba(255,255,255,.16); border-radius:var(--r-sm);
  color:var(--on-chip); font-size:13px;
}
.qo-market-value b{background:var(--price-grad); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; font-size:14.5px;}
.qo-market-value span{color:var(--on-chip-dim); font-size:11px;}
.qo-go .btn{width:100%;}

/* Карточки направлений: стили заданы в основном блоке «НАПРАВЛЕНИЯ» выше. */

/* ---------- Карточка-объявление (Avito-стиль: аренда, ресурсы, контейнеры) ---------- */
.lst-card{padding:0; overflow:hidden; display:flex; flex-direction:column; text-align:left;}
.lst-photo{
   height:104px; display:flex; align-items:center; justify-content:center;
  background:
    radial-gradient(circle at 25% 20%, color-mix(in srgb, var(--dc,#00e58f) 30%, transparent), transparent 55%),
    radial-gradient(circle at 80% 85%, color-mix(in srgb, var(--dc2,#00b3ff) 26%, transparent), transparent 55%),
    linear-gradient(160deg,#0d1420,#141d2c);
}
/* Если у направления есть фото — показываем его вместо градиента */
.lst-photo.has-img{background-size:cover; background-position:center;}
.lst-photo.has-img::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg, transparent 45%, rgba(5,8,12,.55));}
.lst-photo.has-img > i{display:none;}
.lst-photo > i{font-size:44px; color:color-mix(in srgb, var(--dc,#00e58f) 80%, #fff);}
.lst-photo .badge-photo{position:absolute; left:8px; bottom:8px; }
.lst-urgent{position:absolute; right:8px; top:8px; }
.lst-body{padding:10px 12px 12px; display:flex; flex-direction:column; text-align:center;}
.lst-title{ font-weight:800; color:var(--ink-2);  margin-top:6px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
.lst-chips{display:flex; flex-wrap:wrap; gap:4px; justify-content:center; margin:7px 0 6px;}
.lst-chip{font-size:12px; font-weight:600; color:var(--ink-dim); background:var(--surface-2); border:1px solid var(--card-brd); padding:2px 8px; border-radius:999px; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.lst-city{font-size:13px; color:var(--ink-dim); margin-top:4px; display:flex; align-items:center; justify-content:center; gap:4px;}
.lst-city i{color:var(--dc,#00b06a);}
.lst-card .order-rate{margin-top:4px;}

/* Бейдж направления в карточке — в цвет направления */
.order-tag{color:color-mix(in srgb, var(--dc,#00b06a) 72%, #133); background:color-mix(in srgb, var(--dc,#00b06a) 12%, #fff); border:1px solid color-mix(in srgb, var(--dc,#00b06a) 25%, transparent);}
.order-card:hover{border-color:color-mix(in srgb, var(--dc,#00b06a) 55%, transparent);}
.route-arr{color:var(--accent); vertical-align:-2px;}

/* ---------- Страница направления: hero и переключатель ---------- */
/* Все 9 направлений видны всегда: перенос строк, по центру */
.dir-switcher{display:flex; flex-wrap:wrap; justify-content:center; gap:6px; padding:0 2px 14px;}
.dir-pill{
  display:inline-flex; align-items:center; gap:7px; flex:0 0 auto;
  padding:8px 14px; border-radius:999px; font-size:14px; font-weight:700;
  background:var(--glass); color:var(--on-dark-dim); border:1px solid var(--glass-brd);
  transition:all .22s var(--ease); white-space:nowrap;
}
.dir-pill i{font-size:16px; color:var(--dc,#00e58f);}
.dir-pill:hover{color:var(--ink); border-color:var(--dc,#00e58f);}
.dir-pill.active{
  background:color-mix(in srgb, var(--dc,#00e58f) 16%, transparent);
  border-color:var(--dc,#00e58f); color:var(--ink);
  box-shadow:0 0 16px color-mix(in srgb, var(--dc,#00e58f) 30%, transparent);
}
@media(min-width:900px){ .dir-switcher{justify-content:center;} }
/* Фото направления как фон hero (ставится из схемы), приглушено подложкой */
.dir-hero-photo{position:absolute; inset:0; background-size:cover; background-position:center;}
.dir-hero-photo::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(255,255,255,.6) 0%, rgba(255,255,255,.4) 50%, rgba(255,255,255,.65) 100%);}
.dir-hero-head{display:flex; align-items:center; justify-content:center; gap:12px; margin-top:4px;}
.dir-hero-icon{
  width:60px; height:60px; flex:0 0 auto; display:flex; align-items:center; justify-content:center;
  font-size:30px; color:var(--dir-c,#00e58f); border-radius:14px;
  background:rgba(0,0,0,.4);
  border:1px solid color-mix(in srgb, var(--dir-c,#00e58f) 45%, transparent);
}
.dir-hero-head .hero-title-page{
  background:linear-gradient(100deg, var(--ink) 30%, var(--dir-c,#00b06a) 80%);
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;
}
.dir-hero-tagline{max-width:640px; margin:8px auto 0; color:var(--on-dark-dim); font-size:15px; line-height:1.5;}
.dir-hero .quick-order-label{display:flex; align-items:center; gap:6px;}
.dir-hero .quick-order-label i{color:var(--dir-c,#00e58f);}
.dir-hero .hero-page-quick{border-color:color-mix(in srgb, var(--dir-c,#00e58f) 30%, transparent);}

/* ---------- Услуги направления (развёрнуто) ---------- */
.dir-features-grid{display:grid; grid-template-columns:1fr; gap:10px;}
.feat-card{padding:14px; text-align:left; border-top:3px solid var(--dir-c,#00b06a); transition:transform .22s var(--ease), box-shadow .22s var(--ease);}
.feat-card:hover{transform:translateY(-3px); box-shadow:var(--shadow-lg);}
.feat-icon{
  width:42px; height:42px; display:flex; align-items:center; justify-content:center;
  font-size:22px; border-radius:10px; color:var(--dir-c,#00b06a);
  background:color-mix(in srgb, var(--dir-c,#00b06a) 11%, #fff);
  margin-bottom:9px;
}
.feat-title{font-size:16px; font-weight:800; color:var(--ink-2); margin-bottom:3px;}
.feat-text{font-size:14px; color:var(--ink-dim); line-height:1.5;}
@media(min-width:640px){ .dir-features-grid{grid-template-columns:1fr 1fr;} }
@media(min-width:900px){ .dir-features-grid{grid-template-columns:repeat(4,1fr);} }

/* Появление с задержкой (для динамически отрисованных блоков) */
.pop-in{opacity:0; transform:translateY(14px) scale(.98); animation:popIn .5s var(--ease) forwards; animation-delay:var(--dly,0ms);}
@keyframes popIn{to{opacity:1; transform:none;}}
@media (prefers-reduced-motion: reduce){ .pop-in{animation:none; opacity:1; transform:none;} }

/* ---------- Документы направления ---------- */
.docs-section{background:var(--surface-2);}
.docs-sub{text-align:center;    }
.docs-grid{display:grid; grid-template-columns:1fr; gap:10px; max-width:1000px; margin:0 auto;}
.doc-card{padding:13px 14px; text-align:left; display:flex; flex-direction:column; gap:4px; border-left:3px solid var(--dir-c,#00b06a); transition:transform .2s var(--ease), box-shadow .2s var(--ease);}
.doc-card:hover{transform:translateY(-2px); box-shadow:var(--shadow-lg);}
.doc-icon{width:34px; height:34px; display:flex; align-items:center; justify-content:center; font-size:18px; border-radius:9px; color:var(--dir-c,#00b06a); background:color-mix(in srgb, var(--dir-c,#00b06a) 10%, #fff);}
.doc-name{font-size:15px; font-weight:800; color:var(--ink-2); line-height:1.3;}
.doc-note{font-size:13px; color:var(--ink-dim); line-height:1.45;}
.doc-status{display:inline-flex; align-items:center; gap:6px; margin-top:auto; font-size:11px; font-weight:600; color:var(--ink-dim);}
.doc-status .dot{width:8px; height:8px; border-radius:50%; display:inline-block;}
.doc-status .dot.amber{background:#e0a92e;}
@media(min-width:640px){ .docs-grid{grid-template-columns:1fr 1fr;} }
@media(min-width:900px){ .docs-grid{grid-template-columns:repeat(3,1fr);} }
.edo-layout-slim{grid-template-columns:1fr !important; max-width:1000px; margin:18px auto 0;}

/* ---------- Аналитика: диаграмма по группам направления ---------- */
.a-bars{display:flex; align-items:stretch; gap:8px; min-height:160px; padding-top:20px; position:relative; flex-wrap:nowrap;}
.abar{flex:1; display:flex; flex-direction:column; align-items:center; gap:4px; min-width:0;}
.abar-track{display:flex; align-items:flex-end; height:86px; width:100%;}
.abar-col{
  width:100%; max-width:44px; margin:0 auto; height:var(--h,20%); border-radius:7px 7px 3px 3px;
  background:linear-gradient(180deg, var(--dir-c,#00c774), color-mix(in srgb, var(--dir-c,#0a7a48) 55%, #063));
  transform-origin:bottom; animation:barGrow .7s var(--ease) backwards; animation-delay:var(--dly,0ms);
}
@keyframes barGrow{from{transform:scaleY(0);}}
.abar-val{font-size:12.5px; font-weight:800; color:var(--ink-2); white-space:nowrap; max-width:100%; overflow:hidden; text-overflow:ellipsis;}
.abar-lbl{
  font-size:11.5px; color:var(--ink-dim); text-align:center; line-height:1.25; max-width:100%;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.a-bars-unit{position:absolute; top:0; right:0; font-size:11px; color:var(--ink-dim); font-weight:600;}
.a-bars-empty{align-self:center; width:100%; text-align:center; color:var(--ink-dim); font-size:14px; padding:30px 10px;}
.analytics-card{position:relative;}
.analytics-card .index-row{margin-top:16px; grid-template-columns:1fr;}
@media(min-width:640px){ .analytics-card .index-row{grid-template-columns:1fr 1fr 1fr;} }

/* ---------- Мелочи ---------- */
.feed-more{align-self:center; margin:6px auto;}
@media(min-width:900px){ .feed-more{flex:0 0 auto; min-width:170px; align-self:center;} }
.filter-checkbox-inline{display:inline-flex; align-items:center; gap:7px; font-size:13.5px; font-weight:600; color:var(--ink-2); cursor:pointer;}
.period-wrap{min-width:120px;}
#ff-grid, #af-grid{display:contents;}

/* ---------- Фото по назначению: реклама и сделки ---------- */
/* Баннер держит пропорции исходного фото (16:9, максимум 300px) — рукопожатие видно целиком */
.promo-banner{
  position:relative; border-radius:var(--r); overflow:hidden; margin:0 auto 14px;
  max-width:820px; aspect-ratio:16/7; max-height:300px;
  background-size:cover; background-position:center 30%;
  display:flex; align-items:flex-end; justify-content:center;
}
.promo-banner::before{content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(4,10,7,.05) 50%, rgba(4,10,7,.7));}
.promo-banner-text{position:relative; color:#fff; padding:14px 18px; font-size:16px; font-weight:700; text-shadow:0 1px 8px rgba(0,0,0,.6); text-align:center;}
.promo-head{justify-content:center;}

/* Заголовки секций: лёгкий градиентный акцент */
.section-title{position:relative;}
.section-title::after{
  content:"";  width:52px; height:4px; border-radius:4px;
  background:linear-gradient(90deg, var(--dir-c,var(--accent)), color-mix(in srgb, var(--dir-c2,var(--aurora-2)) 70%, transparent));
  margin:10px auto 0;
}
#directions .section-title::after{background:var(--accent-grad);}

/* =========================================================
   СМАРТФОН: крупнее шрифты и элементы (читаемость + touch)
   Десктоп остаётся компактным; правила ниже действуют до 600px.
   Поля ввода — 16px: iPhone не приближает страницу при фокусе.
   ========================================================= */
@media(max-width:599px){
  body{font-size:16px;}
  .section-title{font-size:22px;}
  .docs-sub, .calc-note, .promo-sub{font-size:14.5px;}

  /* Блог: компактнее на телефоне (в тон остальному сайту) */
  .art-full-cover{height:180px;}
  .art-full-inner{padding:20px 16px;}
  .art-full-title{font-size:23px; line-height:1.25; margin:10px 0 12px;}
  .art-full-body{font-size:15px;}
  .art-full-body h3{font-size:17px; margin:20px 0 7px;}
  .art-related-title{font-size:18px;}
  .art-card-cover{height:150px;}

  /* Кнопки: высота под палец (~44px) */
  .btn{padding:12px 18px; font-size:15px;}
  .btn-sm{padding:10px 14px; font-size:14px;}

  /* Поля ввода и подписи */
  .field, .field-dark{padding:12px 13px; font-size:16px;}
  .quick-order-grid label{font-size:13px;}
  .filter-grid label{font-size:13.5px;}
  .filter-checkbox-inline{font-size:14.5px;}
  .filter-count{font-size:14px;}

  /* Первый экран */
  .hero-title{font-size:34px;}
  .hero-slogan{font-size:16px;}
  .hero-command .field{font-size:16px;}
  .quick-order-label{font-size:12.5px;}
  .qo-market-value{font-size:14.5px; min-height:46px;}
  .qo-market-value b{font-size:16.5px;}
  .qo-market-value span{font-size:12px;}

  /* Табы направлений и пилюли */
  .qo-tabs .qo-tab{padding:9px 13px; font-size:13.5px; gap:6px;}
  .qo-tabs .qo-tab i{font-size:16px;}
  .dir-switcher .dir-pill{padding:9px 13px; font-size:13.5px;}
  .dir-switcher .dir-pill i{font-size:16px;}

  /* Карточки направлений */
  .dir-card-img{height:92px;}
  .dir-title{font-size:14.5px;}
  .dir-count{font-size:11px; padding:3px 8px;}
  .dir-go{font-size:12.5px;}

  /* Карточки заказов и объявлений */
  .order-route{font-size:17px;}
  .order-tag, .order-status{font-size:12.5px; padding:3px 9px;}
  .order-sub{font-size:14px;}
  .order-rate{font-size:20px;}
  .order-unit{font-size:12.5px;}
  .order-meta{font-size:13.5px;}
  .lst-title{font-size:16px;}
  .lst-chip{font-size:12.5px; padding:3px 10px;}
  .lst-city{font-size:13.5px;}

  /* Аналитика */
  .kpi-label{font-size:13.5px;}
  .kpi-value{font-size:24px;}
  .kpi-note{font-size:12.5px;}
  .index-chip-label{font-size:12.5px;}
  .index-chip-value{font-size:17.5px;}
  .abar-val{font-size:12.5px;}
  .abar-lbl{font-size:11.5px;}
  .analytics-card-title{font-size:16px;}
  .corridor-seg{font-size:13px;}
  .corridor-hint{font-size:13.5px;}

  /* Услуги направления, документы */
  .feat-title{font-size:15.5px;}
  .feat-text{font-size:14px;}
  .feat-icon{width:42px; height:42px; font-size:22px;}
  .doc-name{font-size:15px;}
  .doc-note{font-size:13.5px;}
  .doc-icon{width:38px; height:38px; font-size:20px;}
  .doc-status{font-size:12px;}

  /* Вопросы-ответы, отзывы, шаги */
  .faq-q{font-size:15.5px; padding:15px 16px;}
  .faq-a{font-size:14.5px;}
  .review-text{font-size:14px;}
  .review-role{font-size:12.5px;}
  .workflow-steps li{font-size:14.5px; padding:8px 14px;}
  .route-steps li{font-size:14.5px;}
  .edo-list li{font-size:14.5px;}
  .tag{font-size:12.5px;}

  /* Прочее */
  .calc-total{font-size:30px;}
  .calc-line{font-size:14.5px;}
  .stat-value{font-size:28px;}
  .stat-label{font-size:13.5px;}
  .svc-title{font-size:14px;}
  .ticker-item{font-size:13.5px;}
  .promo-banner-text{font-size:14.5px;}
  .footer-about, .footer-col a{font-size:14.5px;}
  .hero-eyebrow{font-size:12.5px;}
}

/* =========================================================
   ДОСТУПНОСТЬ (a11y) + фолбэки без JS
   ========================================================= */
/* Ссылка «к содержимому» — появляется при табуляции клавиатурой */
.skip-link{
  position:absolute; left:12px; top:-48px; z-index:200;
  background:var(--accent); color:#fff; font-weight:700; font-size:14px;
  padding:10px 16px; border-radius:0 0 10px 10px; transition:top .18s var(--ease);
}
.skip-link:focus{top:0;}

/* Видимая рамка фокуса для клавиатуры (не мешает мыши) */
a:focus-visible, button:focus-visible, input:focus-visible,
select:focus-visible, textarea:focus-visible, .qo-tab:focus-visible,
.dir-pill:focus-visible, .faq-q:focus-visible{
  outline:3px solid var(--accent);
  outline-offset:2px;
  border-radius:6px;
}

/* Статический список направлений (виден без JS и поисковым ботам) */
.dir-fallback{
  display:inline-flex; align-items:center; padding:12px 16px; margin:4px;
  background:var(--glass); border:1px solid var(--glass-brd); border-radius:var(--r-sm);
  color:var(--on-dark); font-weight:700; font-size:14px;
}
.dir-fallback:hover{border-color:var(--accent); color:var(--ink);}

/* Баннер при отключённом JavaScript */
.noscript-note{
  background:#fff3e0; color:#8a5a1e; text-align:center;
  padding:12px 16px; font-size:14px; font-weight:600;
  border-bottom:1px solid #f3d3b3;
}

/* =========================================================
   ТОСТЫ (вместо alert) и скелетоны загрузки
   ========================================================= */
#gz-toasts{position:fixed; left:50%; bottom:88px; transform:translateX(-50%); z-index:300; display:flex; flex-direction:column; gap:8px; align-items:center; pointer-events:none; width:min(92vw,420px);}
.gz-toast{
  background:#0b1219; color:#eaf5f0; border:1px solid var(--glass-brd-2);
  border-left:4px solid var(--accent); border-radius:var(--r-sm);
  padding:12px 16px; font-size:14px; font-weight:600; box-shadow:var(--shadow-lg);
  opacity:0; transform:translateY(12px); transition:opacity .25s var(--ease), transform .25s var(--ease); max-width:100%;
}
.gz-toast.show{opacity:1; transform:none;}
.gz-toast-error{border-left-color:var(--sf-red);}
@media(min-width:900px){ #gz-toasts{bottom:24px;} }

/* Скелетон-подсветка для «Загрузка…» */
.gz-skeleton{position:relative; overflow:hidden; background:var(--surface-2); border-radius:var(--r-sm); min-height:16px;}
.gz-skeleton::after{content:""; position:absolute; inset:0; transform:translateX(-100%);
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.55), transparent);
  animation:gzShimmer 1.2s infinite;}
@keyframes gzShimmer{100%{transform:translateX(100%)}}
@media (prefers-reduced-motion: reduce){ .gz-skeleton::after, .gz-toast{animation:none; transition:none;} }

/* =========================================================
   КАРТЫ И НАВИГАЦИЯ (Яндекс.Карты) — карта заказов и подсказки адресов
   ========================================================= */
.map-block{margin-top:18px;}
#orders-map-wrap{margin-top:12px;}
#orders-map{height:440px; border-radius:var(--r-sm); overflow:hidden; border:1px solid var(--glass-brd-2); background:var(--surface-2);}
.map-loading{display:flex; align-items:center; justify-content:center; height:100%; color:var(--muted); font-size:14px;}
.map-hint{margin-top:10px; font-size:14px; color:var(--muted);}
.map-hint b{color:var(--accent);}
.map-hint small{opacity:.75;}

/* Выбор точек маршрута из калькулятора */
.geo-picker-modal{max-width:920px;}
.geo-picker-body{padding-bottom:14px;}
.geo-picker-points{display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:12px;}
.geo-picker-point{display:flex; align-items:center; gap:10px; min-width:0; padding:11px 13px; text-align:left; background:var(--surface-2); border:1px solid var(--card-brd); border-radius:var(--r-sm); color:var(--ink-2);}
.geo-picker-point.active{border-color:var(--accent); box-shadow:0 0 0 3px rgba(0,168,102,.12);}
.geo-picker-point > span:last-child{min-width:0;}
.geo-picker-point small{display:block; margin-bottom:2px; color:var(--ink-dim); font-size:12px;}
.geo-picker-point b{display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:14px;}
.geo-picker-dot{width:12px; height:12px; flex:none; border-radius:50%; box-shadow:0 0 0 4px rgba(0,0,0,.06);}
.geo-picker-dot.from{background:#00a866;}
.geo-picker-dot.to{background:#e5484d;}
#route-picker-map{height:480px; overflow:hidden; border:1px solid var(--glass-brd-2); border-radius:var(--r-sm); background:var(--surface-2);}
.geo-picker-hint{min-height:20px; margin-top:9px; color:var(--muted); font-size:13px;}
@media(max-width:640px){
  .geo-picker-modal{margin:0;}
  .geo-picker-points{grid-template-columns:1fr;}
  #route-picker-map{height:52vh; min-height:320px;}
  .geo-picker-body{padding:16px;}
}

/* Балун маркера заказа */
.map-balloon{max-width:240px; font:inherit;}
.map-balloon-route{font-weight:700; margin-bottom:4px;}
.map-balloon-name{font-size:13px; color:#5b6b76; margin-bottom:4px;}
.map-balloon-rate{font-weight:700; color:var(--accent); margin-bottom:8px;}

/* Выпадающие подсказки адреса (Геосаджест через наш сервер) */
.geo-suggest{
  position:absolute; z-index:400; max-width:min(92vw,420px);
  background:var(--card); border:1px solid var(--glass-brd-2); border-radius:var(--r-sm);
  box-shadow:var(--shadow-lg); overflow:hidden;
}
.geo-suggest-item{
  display:flex; gap:8px; align-items:flex-start; padding:9px 12px; cursor:pointer;
  font-size:14px; line-height:1.3; color:var(--text-dark, #16232d);
}
.geo-suggest-item i{color:var(--accent); margin-top:2px;}
.geo-suggest-item small{display:block; color:#7b8a94; font-size:12px;}
.geo-suggest-item:hover, .geo-suggest-item.active{background:#e6f6ee;}

/* Заглушка кабинета для гостей (панели кабинета видны только после входа) */
.cabinet-guest{display:flex; flex-direction:column; align-items:center; gap:14px; padding:36px 24px; text-align:center;}
.cabinet-guest[hidden]{display:none;}
.cabinet-guest i{font-size:34px; color:var(--accent);}
.cabinet-guest p{max-width:420px; color:var(--muted); font-size:15px;}
/* =========================================================
   КАРТОЧКА ЗАКАЗА: одинаковая высота и кнопки на одном уровне
   ========================================================= */
/* Карточка — вертикальная колонка: текст сверху, кнопки всегда прижаты к низу.
   Поэтому в ряду ленты у всех карточек кнопки оказываются на одной линии,
   независимо от длины маршрута и описания. */
.order-card{display:flex; flex-direction:column;}
.order-card > .order-actions{margin-top:auto; padding-top:12px;}
/* У карточек-объявлений (lst-card) кнопки лежат глубже — внутри .lst-body.
   Поэтому саму .lst-body тоже делаем растягивающейся колонкой, иначе кнопки
   в таких карточках оказывались выше, чем в остальных, и ряд выглядел рваным. */
.order-card .lst-body{display:flex; flex-direction:column; flex:1 1 auto; min-height:0;
  /* Нижний отступ такой же, как у обычной карточки (14px), иначе кнопки
     в объявлениях стояли на 2px выше и ряд был чуть неровным. */
  padding-bottom:14px;}
.order-card .lst-body > .order-actions{margin-top:auto; padding-top:12px;}
/* Маршрут: не более двух строк — иначе длинные адреса («Республика Башкортостан,
   Туймазинский район, село…») растягивали карточку и сбивали ряд. */
.order-route{display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
/* Кнопки — одной строкой, без переносов. */
.order-actions{display:flex; flex-wrap:nowrap; gap:6px; align-items:stretch; justify-content:center;}
.order-actions .btn{flex:1 1 0; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
/* Кнопки-иконки («Редактировать», «Снять») — фиксированной ширины, не тянутся. */
.order-actions .btn-icon{flex:0 0 auto; width:34px; padding:0; display:inline-flex; align-items:center; justify-content:center;}
.order-actions .btn-icon i{font-size:17px;}
/* =========================================================
   АНАЛИТИКА: горизонтальные полосы, когда групп мало
   (вертикальные столбики при 1–2 группах оставляли широкую пустоту)
   ========================================================= */
.a-bars.a-bars-h{display:flex; flex-direction:column; gap:12px; min-height:0; padding-top:24px; align-items:stretch;}
.abar-row{display:flex; align-items:center; gap:12px;}
.abar-row-lbl{flex:0 0 34%; max-width:34%; font-size:13.5px; font-weight:700; color:var(--ink-2); text-align:left; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.abar-row-track{flex:1 1 auto; height:24px; background:var(--surface-2, #eef3f0); border-radius:6px; overflow:hidden;}
.abar-row-fill{width:var(--w,10%); height:100%; border-radius:6px; background:var(--accent-grad);}
.abar-row-val{flex:0 0 auto; text-align:right; font-size:14px; font-weight:800; color:var(--ink-2); white-space:nowrap;}
.abar-row-n{display:block; font-size:11.5px; font-weight:600; color:var(--ink-dim);}
/* Число заказов в группе под столбиком вертикальной диаграммы. */
.abar-n{color:var(--ink-dim); font-weight:600;}
@media(max-width:599px){
  .abar-row-lbl{flex-basis:40%; max-width:40%; font-size:12.5px;}
  .abar-row-val{font-size:13px;}
}

/* Отклик в списке: кто откликнулся, цена, комментарий и признак надёжности */
.offer-info{min-width:0;}
.offer-who{font-size:14px; color:var(--ink-2); margin-bottom:2px; overflow-wrap:anywhere;}
.offer-who b{font-weight:700;}
.offer-trust{display:inline-flex; align-items:center; gap:5px; margin-top:4px; font-size:12.5px; font-weight:600; color:var(--accent);}
.offer-trust i{font-size:14px;}
.offer-trust-new{color:var(--ink-dim); font-weight:600;}

/* Этап 2 — автоматический пакет документов сделки */
.modal-deal-docs{max-width:980px}
.deal-doc-intro{margin-bottom:16px;color:var(--muted,#66756e);line-height:1.55}
.deal-doc-card{display:flex;justify-content:space-between;gap:20px;padding:18px;border:1px solid var(--line,#dfe7e3);border-left:5px solid var(--sf-green,#0b9a63);border-radius:14px;margin-bottom:12px;background:#fff}
.deal-doc-card.is-yellow{border-left-color:#d8a800}.deal-doc-card.is-orange{border-left-color:#e77716}.deal-doc-card.is-red{border-left-color:var(--sf-red,#d13a2f)}
.deal-doc-main{min-width:0;flex:1}.deal-doc-title-row{display:flex;gap:10px;align-items:flex-start}.deal-doc-title-row strong{display:block;font-size:17px}.deal-doc-title-row small{display:block;margin-top:4px;color:var(--muted,#6b7972)}
.deal-doc-tags{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.deal-doc-tags span{padding:5px 9px;border-radius:999px;background:#eef4f1;font-size:12px;color:#50635a}
.deal-doc-approvals{display:flex;gap:14px;flex-wrap:wrap;font-size:13px;color:#738078}.deal-doc-approvals span{display:inline-flex;align-items:center;gap:5px}.deal-doc-approvals .is-ok{color:#078653;font-weight:700}
.deal-doc-side{display:flex;min-width:220px;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:14px}.deal-doc-deadline{font-weight:700}.deal-doc-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:760px){.deal-doc-card{flex-direction:column}.deal-doc-side{min-width:0;align-items:stretch}.deal-doc-actions{justify-content:stretch}.deal-doc-actions .btn{flex:1}.modal-deal-docs{max-width:none}}

.deal-doc-legal{margin-top:12px;padding:12px 14px;border-radius:12px;background:rgba(15,118,110,.06);display:flex;flex-direction:column;gap:4px;font-size:13px;line-height:1.45}
.deal-doc-legal strong{font-size:14px;color:var(--ink)}
.deal-doc-legal span{color:var(--muted)}
.deal-doc-blockers{margin-top:12px;padding:12px 14px;border-radius:12px;background:rgba(220,38,38,.07);border-left:3px solid #dc2626;font-size:13px;line-height:1.45}
.deal-doc-blockers strong{color:#991b1b}
.deal-doc-blockers ul{margin:6px 0 0 18px;padding:0;color:#7f1d1d}
.deal-doc-card.is-red .deal-doc-deadline{color:#b91c1c}

/* ---------- Форма данных перевозки ---------- */

.deal-transport-editor {
  padding: 4px 0 12px;
}

.deal-transport-editor-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 24px;
  margin-bottom: 24px;
}

.deal-transport-editor-head h3 {
  margin: 0 0 8px;
  font-size: 25px;
}

.deal-transport-editor-head p {
  margin: 0;
  max-width: 780px;
  color: var(--sf-muted);
  line-height: 1.5;
}

.deal-transport-section {
  margin-bottom: 22px;
  padding: 22px;
  border: 1px solid var(--sf-line);
  border-radius: 18px;
  background: #fff;
}

.deal-transport-section h4 {
  margin: 0 0 18px;
  font-size: 21px;
}

.deal-transport-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 17px;
}

.deal-transport-field {
  display: flex;
  flex-direction: column;
  gap: 7px;
  min-width: 0;
}

.deal-transport-field span {
  font-size: 14px;
}

.deal-transport-field input {
  width: 100%;
  min-height: 48px;
  padding: 10px 13px;
  border: 1px solid var(--sf-line);
  border-radius: 12px;
  background: #fff;
  font: inherit;
  color: var(--sf-text);
}

.deal-transport-field input:focus {
  border-color: var(--sf-green);
  outline: 2px solid rgba(0, 179, 112, 0.14);
}

.deal-transport-field input:disabled {
  color: #7b8984;
  cursor: not-allowed;
}

.deal-transport-owner-note {
  margin: 15px 0 0;
  color: var(--sf-muted);
  font-size: 14px;
}

.deal-transport-actions {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  padding-top: 4px;
}

@media (max-width: 760px) {
  .deal-transport-editor-head {
    flex-direction: column;
  }

  .deal-transport-grid {
    grid-template-columns: 1fr;
  }

  .deal-transport-section {
    padding: 17px;
  }

  .deal-transport-actions {
    flex-direction: column-reverse;
  }

  .deal-transport-actions .btn {
    width: 100%;
  }
}

/* Шаг 64 — отчётливое отображение полей данных перевозки */

.deal-transport-field input:not(:disabled) {
  min-height: 52px;
  background: #ffffff;
  border: 1.5px solid #b8c5c0;
  box-shadow: 0 1px 2px rgba(10, 45, 35, 0.05);
}

.deal-transport-field input:not(:disabled):hover {
  border-color: #7f9990;
}

.deal-transport-field input:not(:disabled):focus {
  border-color: var(--sf-green);
  outline: 3px solid rgba(0, 179, 112, 0.14);
  box-shadow: none;
}

.deal-transport-field input:disabled {
  background: #edf1f0;
  border: 1px solid #e0e6e4;
  opacity: 1;
}

.deal-transport-field span {
  font-weight: 500;
  color: #283b35;
}

/* GZ_HERO_TICKER_V2 */
.hero-eyebrow{overflow:hidden;justify-content:flex-start;flex-wrap:nowrap;box-sizing:border-box}
.hero-eyebrow>i{flex:0 0 auto}
.hero-ticker-window{display:block;min-width:0;flex:1 1 auto;line-height:1.2}
.hero-ticker-track{min-width:max-content;padding-left:100%;white-space:nowrap;}
.hero-eyebrow:hover .hero-ticker-track{animation-play-state:paused}
@keyframes gzHeroTicker{from{transform:translateX(0)}to{transform:translateX(-100%)}}
@media(max-width:650px){.hero-eyebrow{width:calc(100% - 12px);padding-left:10px;padding-right:10px}}

/* GZ_HERO_TICKER_V3 */
.hero-ticker-window{overflow:hidden!important;white-space:nowrap!important}
.hero-ticker-track{display:flex!important;width:max-content!important;gap:24px!important;animation:gzHeroTickerV3 28s linear infinite!important;will-change:transform!important}
.hero-ticker-track>span{flex:0 0 auto!important;padding:0!important;color:#00f5d4!important;line-height:1.15!important;letter-spacing:.1px!important;white-space:nowrap!important}
.hero-eyebrow>i{color:#00f5d4!important}
@keyframes gzHeroTickerV3{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 12px))}}
@media(max-width:650px){.hero-ticker-track{gap:18px!important;animation-duration:25s!important}.hero-ticker-track>span{font-size:18px!important}@keyframes gzHeroTickerV3{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 9px))}}}

/* GLOBAL_RESPONSIVE_2_6_4 — единое правило адаптации всех страниц GIGZAKAZ.
   Desktop / laptop / tablet / smartphone: без горизонтального скролла,
   наложений, обрезки текста и неоправданно больших пустых блоков. */
:root {
  --gz-fluid-gutter: clamp(12px, 1.6vw, 24px);
  --gz-touch: 44px;
}

html,
body {
  width: 100%;
  min-width: 0;
}

.container {
  min-width: 0;
}

main,
section,
article,
aside,
nav,
form,
fieldset,
.card,
.filter-panel,
.analytics-card,
.calc-form,
.calc-result,
.legal-doc,
.feed-wrap,
.feed,
.order-card,
.deal-card-section,
.modal,
.modal-body,
.modal-head,
.modal-footer {
  min-width: 0;
  max-width: 100%;
}

img,
video,
canvas,
iframe,
svg {
  max-width: 100%;
}

input,
select,
textarea,
.field,
.field-dark {
  max-width: 100%;
  min-width: 0;
}

textarea { resize: vertical; }

h1, h2, h3, h4, h5, h6,
p, li, td, th, label,
.order-route, .order-sub, .deal-name, .deal-sub,
.cab-row, .cab-card, .cab-muted,
.art-full-body, .legal-doc, .review-card,
.market-object-title, .market-object-route, .market-object-note {
  overflow-wrap: anywhere;
  word-break: normal;
}

pre,
code {
  max-width: 100%;
  overflow-x: auto;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

table {
  width: 100%;
  max-width: 100%;
  border-collapse: collapse;
}

.detail-table,
.admin-table,
.table-wrap,
.cab-table-wrap {
  max-width: 100%;
}

/* На широких мониторах рабочая площадь растёт вместе с экраном,
   но остаётся ограниченной для читаемости. */
@media (min-width: 1440px) {
  .container { max-width: 1480px; }
}

@media (min-width: 1800px) {
  .container { max-width: 1680px; }
  .section { padding-top: 30px; padding-bottom: 30px; }
}

/* Ноутбук и крупный планшет: не оставляем слишком много узких колонок. */
@media (min-width: 900px) and (max-width: 1199px) {
  .svc-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .quick-order-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .filter-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .docs-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dir-features-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Планшет: 2 колонки там, где это действительно удобно. */
@media (min-width: 600px) and (max-width: 899px) {
  .container { padding-left: 18px; padding-right: 18px; }
  .quick-order-grid,
  .filter-grid,
  .form-grid,
  .docs-grid,
  .dir-features-grid,
  .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .svc-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .analytics-row { grid-template-columns: minmax(0, 1fr); }
  .legal-layout { grid-template-columns: minmax(0, 1fr); }
  .legal-nav { position: static; }
}

/* Смартфон: контент в одну логичную колонку, touch-элементы без выхода за экран. */
@media (max-width: 599px) {
  :root { --gz-fluid-gutter: max(12px, env(safe-area-inset-left)); }

  body { background-attachment: scroll; }
  .section-title { margin-bottom: 12px;  }

  .header-inner {
    width: 100%;
    min-width: 0;
  }
  .header-actions {
    min-width: 0;
    max-width: 100%;
    gap: 6px;
  }
  .header-actions > * { min-width: 0; }
  .lang-menu { max-width: calc(100vw - 24px); }

  .hero {  padding-bottom: 22px; }
  .hero-inner { min-width: 0; }
  .hero-title { line-height: 1.08; }
  .hero-slogan { margin-bottom: 10px; }
  .hero-command {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    max-width: 100%;
    gap: 7px;
    padding: 8px;
  }
  .hero-command > i,
  .hero-command .divider { display: none; }
  .hero-command input.field {
    flex: 1 1 100%;
    width: 100%;
  }
  .hero-command select.field {
    flex: 1 1 calc(58% - 4px);
    width: auto;
    max-width: none !important;
  }
  .hero-command .btn {
    flex: 1 1 calc(42% - 4px);
    min-width: 104px;
  }

  .quick-order,
  .filter-panel,
  .analytics-card,
  .calc-form,
  .calc-result,
  .card { max-width: 100%; }

  .quick-order-grid,
  .filter-grid,
  .form-grid,
  .calc-layout,
  .analytics-row,
  .docs-grid,
  .dir-features-grid,
  .legal-layout,
  .footer-grid,
  .admin-grid,
  .cabinet-panel,
  .stat-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .dir-grid,
  .svc-grid,
  .kpi-grid,
  .index-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .filter-actions,
  .export-group,
  .order-top,
  .order-meta,
  .order-actions,
  .deal-row,
  .deal-card-hero,
  .deal-card-kv,
  .calc-line,
  .emp-add-row,
  .cookie-banner {
    min-width: 0;
    max-width: 100%;
    flex-wrap: wrap;
  }

  .export-group {  margin-left: 0; }
  .export-group .btn { flex: 1 1 auto;  }

  .order-top { align-items: flex-start; }
  .order-status { flex: none; }
  .order-meta { justify-content: center; gap: 6px 10px; }
  .order-actions { width: 100%; }
  .order-actions .btn { min-width: 0; }

  .deal-sla-summary,
  .deal-card-sla {
    min-width: 0;
    width: 100%;
    align-items: flex-start;
    text-align: left;
  }
  .deal-card-grid { grid-template-columns: minmax(0, 1fr); }
  .deal-card-kv strong { text-align: left; overflow-wrap: anywhere; }

  .chat-msg { max-width: 92%; overflow-wrap: anywhere; }
  .chat-compose { min-width: 0; }

  .corridor { width: 100%; }
  .corridor-seg { min-width: 0; padding-left: 2px; padding-right: 2px; }
  .abar-row { gap: 7px; }
  .abar-row-lbl { flex-basis: 38%; max-width: 38%; white-space: normal; }
  .abar-row-val { max-width: 36%; overflow-wrap: anywhere; white-space: normal; }

  .legal-history-row { grid-template-columns: minmax(0, 1fr); gap: 2px; }
  .legal-history-row > * { min-width: 0; }

  .modal-overlay,
  .geo-picker-overlay {
    padding: max(8px, env(safe-area-inset-top)) 8px max(8px, env(safe-area-inset-bottom));
  }
  .modal,
  .geo-picker-modal,
  .modal-deal-card,
  .modal-deal-docs {
    width: 100%;
    max-width: calc(100vw - 16px) !important;
    max-height: calc(100dvh - 16px);
    margin: auto;
  }
  .modal-body { overflow-x: hidden; }

  .detail-table,
  .admin-table,
  table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .cookie-banner {
    left: 8px;
    right: 8px;
    bottom: calc(76px + env(safe-area-inset-bottom));
    padding: 12px;
  }
  .cookie-text { min-width: 0; flex-basis: 100%; }

  .fab { right: max(10px, env(safe-area-inset-right)); }
  .bottom-nav { padding-bottom: env(safe-area-inset-bottom); }

  .btn,
  button,
  input,
  select,
  textarea {
    max-width: 100%;
  }
  input,
  select,
  textarea,
  .field,
  .field-dark { font-size: 16px; }
  .btn { white-space: normal; min-height: 42px; line-height: 1.2; }

  .art-full-inner { max-width: 100%; }
  .art-full-body img { height: auto; }
}

/* Узкие смартфоны: 320–390 px. */
@media (max-width: 390px) {
  .container { padding-left: 10px; padding-right: 10px; }
  .logo { font-size: 18px; letter-spacing: 1px; }
  .header-nav { justify-content: flex-start; }
  .header-nav a { flex: 0 0 auto; }
  .hero-command select.field,
  .hero-command .btn { flex-basis: 100%; width: 100%; }
  .dir-grid,
  .svc-grid,
  .kpi-grid,
  .index-row { grid-template-columns: minmax(0, 1fr); }
  .order-actions .btn,
  .deal-btns .btn,
  .cookie-actions .btn { width: 100%; }
  .corridor-seg { font-size: 10px; }
}

/* Невысокий экран (горизонтальный смартфон/планшет): модальные окна не уходят за viewport. */
@media (max-height: 620px) and (max-width: 1024px) {
  .modal,
  .geo-picker-modal,
  .modal-deal-card,
  .modal-deal-docs { max-height: calc(100dvh - 12px); }
  .modal-body { overflow-y: auto; }
}

/* =========================================================
   GIGZAKAZ 2.8.1 — COMPACT NOTIFICATIONS, CSS ONLY
   GZ_NOTIFICATIONS_COMPACT_2_8_1_CSS_ONLY
   Не меняет JS, API или бизнес-логику.
   ========================================================= */

.modal:has(.notif-list) {
  width: min(760px, calc(100vw - 32px)) !important;
  max-width: 760px !important;
  max-height: min(680px, calc(100dvh - 40px)) !important;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.modal:has(.notif-list) .modal-head {
  flex: 0 0 auto;
  padding: 13px 18px;
}

.modal:has(.notif-list) .modal-title {
  font-size: 20px;
  line-height: 1.2;
}

.modal:has(.notif-list) .modal-close {
  width: 34px;
  height: 34px;
  font-size: 24px;
}

.modal:has(.notif-list) .modal-body {
  flex: 1 1 auto;
  min-height: 0;
  max-height: min(520px, calc(100dvh - 160px)) !important;
  padding: 0 18px;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}

.modal:has(.notif-list) .notif-row {
  gap: 8px;
  padding: 9px 0;
}

.modal:has(.notif-list) .notif-row > div {
  min-width: 0;
}

.modal:has(.notif-list) .notif-dot {
  flex: 0 0 auto;
  margin-top: 1px;
  font-size: 14px;
}

.modal:has(.notif-list) .notif-text {
  font-size: 14px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.modal:has(.notif-list) .notif-time {
  margin-top: 2px;
  font-size: 11px;
  line-height: 1.25;
}

.modal:has(.notif-list) .modal-foot {
  flex: 0 0 auto;
  padding: 9px 18px;
}

.modal:has(.notif-list) .modal-foot .btn {
  min-height: 36px;
  padding: 8px 16px;
}

@media (max-width: 1024px) {
  .modal:has(.notif-list) {
    width: min(680px, calc(100vw - 24px)) !important;
    max-width: min(680px, calc(100vw - 24px)) !important;
    max-height: calc(100dvh - 24px) !important;
  }

  .modal:has(.notif-list) .modal-body {
    max-height: calc(100dvh - 145px) !important;
  }
}

@media (max-width: 760px) {
  .modal:has(.notif-list) {
    max-height: calc(100dvh - 16px) !important;
    border-radius: 16px;
  }

  .modal:has(.notif-list) .modal-head {
    padding: 11px 14px;
  }

  .modal:has(.notif-list) .modal-title {
    font-size: 18px;
  }

  .modal:has(.notif-list) .modal-body {
    max-height: calc(100dvh - 132px) !important;
    padding: 0 14px;
  }

  .modal:has(.notif-list) .notif-row {
    padding: 8px 0;
  }

  .modal:has(.notif-list) .notif-text {
    font-size: 14px;
  }

  .modal:has(.notif-list) .modal-foot {
    padding: 8px 14px calc(8px + env(safe-area-inset-bottom));
  }

  .modal:has(.notif-list) .modal-foot .btn {
    width: 100%;
  }
}

@media (max-width: 390px) {
  .modal:has(.notif-list) .modal-head,
  .modal:has(.notif-list) .modal-body {
    padding-left: 12px;
    padding-right: 12px;
  }

  .modal:has(.notif-list) .notif-row {
    gap: 6px;
  }

  .modal:has(.notif-list) .notif-text {
    font-size: 13px;
  }
}

/* =========================================================
   GIGZAKAZ 2.8.2 — FINAL COMPACT NOTIFICATIONS
   GZ_NOTIFICATIONS_COMPACT_2_8_2
   CSS-only override поверх 2.8.1
   ========================================================= */

@media (min-width: 1025px) {
  .modal:has(.notif-list) {
    width: min(640px, calc(100vw - 48px)) !important;
    max-width: 640px !important;
    max-height: min(560px, calc(100dvh - 56px)) !important;
  }

  .modal:has(.notif-list) .modal-head {
    padding: 11px 16px !important;
  }

  .modal:has(.notif-list) .modal-title {
    font-size: 18px !important;
  }

  .modal:has(.notif-list) .modal-body {
    max-height: min(430px, calc(100dvh - 150px)) !important;
    padding: 0 16px !important;
  }

  .modal:has(.notif-list) .notif-row {
    padding: 7px 0 !important;
    gap: 7px !important;
  }

  .modal:has(.notif-list) .notif-text {
    font-size: 13px !important;
    line-height: 1.32 !important;
  }

  .modal:has(.notif-list) .notif-time {
    font-size: 10px !important;
    margin-top: 1px !important;
  }

  .modal:has(.notif-list) .modal-foot {
    padding: 8px 16px !important;
  }

  .modal:has(.notif-list) .modal-foot .btn {
    min-height: 34px !important;
    padding: 7px 14px !important;
  }
}

@media (min-width: 761px) and (max-width: 1024px) {
  .modal:has(.notif-list) {
    width: min(620px, calc(100vw - 24px)) !important;
    max-width: min(620px, calc(100vw - 24px)) !important;
    max-height: calc(100dvh - 24px) !important;
  }

  .modal:has(.notif-list) .modal-body {
    max-height: calc(100dvh - 138px) !important;
  }
}

@media (max-width: 760px) {
  .modal:has(.notif-list) {
    width: calc(100vw - 12px) !important;
    max-width: calc(100vw - 12px) !important;
    max-height: calc(100dvh - 12px) !important;
  }
}
\n\n/* === 2.12/2.13 real-time distribution + market grouping === */
.order-market-group{display:inline-flex;align-items:center;gap:5px;border:1px solid rgba(13,148,136,.22);border-radius:999px;background:rgba(13,148,136,.08);color:#087867;padding:4px 8px;font:inherit;font-size:11px;font-weight:800;cursor:pointer}
.market-group-note{margin-bottom:12px;padding:10px 12px;border-radius:10px;background:rgba(13,148,136,.07);font-size:13px;line-height:1.45;color:var(--muted)}.market-group-list{display:grid;gap:8px}.market-group-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:11px;border:1px solid var(--line);border-radius:12px}.market-group-row strong,.market-group-row span,.market-group-row small{display:block}.market-group-row span{margin-top:2px}.market-group-row small{margin-top:3px;color:var(--muted)}.market-group-rate{text-align:right;font-weight:800;white-space:nowrap}.market-group-rate small{font-weight:500}
@media(max-width:640px){.market-group-row{grid-template-columns:1fr auto}.market-group-row>div:first-child{grid-column:1/-1}.market-group-rate{text-align:left}.order-market-group{max-width:100%;white-space:normal;text-align:left}}

/* =========================================================
   GIGZAKAZ 2.12.1 — ORDER FEED CARD LAYOUT FIX
   Desktop carousel cards never shrink into vertical slivers.
   ========================================================= */
@media (min-width: 900px){
  .feed-wrap{
    overflow:hidden;
  }
  .feed{
    flex-direction:row;
    align-items:stretch;
    gap:12px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    scroll-padding-inline:52px;
    overscroll-behavior-inline:contain;
    padding:6px 52px 14px;
  }
  .feed .order-card{
    flex:0 0 300px;
    width:300px;
    min-width:300px;
    max-width:300px;
    scroll-snap-align:start;
    scroll-snap-stop:always;
    text-align:left;
    padding:14px 15px;
  }
  .feed .order-card.lst-card{
    padding:0;
  }
  .feed .order-card .order-top{
    min-height:42px;
  }
  .feed .order-card .order-route{
    font-size:16px;
    line-height:1.3;
    -webkit-line-clamp:2;
  }
  .feed .order-card .order-tags{
    justify-content:flex-start;
    align-items:center;
    min-height:24px;
    margin-top:8px;
  }
  .feed .order-card .order-sub{
    min-height:40px;
    margin:8px 0 6px;
    font-size:13.5px;
    line-height:1.45;
    -webkit-line-clamp:2;
  }
  .feed .order-card .order-rate{
    margin-top:2px;
    font-size:22px;
    line-height:1.2;
  }
  .feed .order-card .order-unit{
    display:inline;
    font-size:12px;
  }
  .feed .order-card .order-meta{
    justify-content:flex-start;
    margin:9px 0 8px;
    min-height:20px;
  }
  .feed .order-card .order-actions{
    justify-content:stretch;
    margin-top:auto;
    padding-top:10px;
  }
  .feed .order-card .order-actions .btn{
    min-height:36px;
    padding:8px 10px;
    font-size:13px;
  }
  .feed .order-card .order-market-group{
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .feed .lst-body{
    text-align:left;
    padding:11px 13px 13px;
  }
  .feed .lst-title{
    text-align:left;
  }
  .feed .lst-chips{
    justify-content:flex-start;
  }
  .feed .lst-city{
    justify-content:flex-start;
  }
  .feed .lst-photo{
    min-height:118px;
  }
}

@media (min-width: 900px) and (max-width: 1199px){
  .feed .order-card{
    flex-basis:280px;
    width:280px;
    min-width:280px;
    max-width:280px;
  }
}

@media (min-width: 1600px){
  .feed .order-card{
    flex-basis:320px;
    width:320px;
    min-width:320px;
    max-width:320px;
  }
}

@media (max-width: 899px){
  .feed .order-card{
    width:100%;
    min-width:0;
    max-width:100%;
  }
}

/* =========================================================
   GIGZAKAZ 2.12.2 — ORDER FEED COMPACT VISUAL
   Compact marketplace cards, category visuals, clean carousel.
   ========================================================= */

/* Общая карточка — чуть плотнее и визуально чище. */
.feed .order-card{
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg,#fff 0%,#fbfdfc 100%);
  border-color:color-mix(in srgb,var(--dc,#00b06a) 18%,var(--card-brd));
  box-shadow:0 7px 24px rgba(14,43,35,.07);
}
.feed .order-card::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:2px;
  background:linear-gradient(90deg,var(--dc,#00b06a),var(--dc2,#4fd1c5));
  opacity:.72;
}
.feed .order-card:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 34px rgba(12,46,36,.13);
  border-color:color-mix(in srgb,var(--dc,#00b06a) 48%,var(--card-brd));
}

/* Категорийное фото у обычной заявки: маршрут читается прямо на визуальном блоке. */
.order-card-visual{padding:0!important;}
.order-visual{
  min-height:92px;
  padding:14px 14px 12px;
  display:flex;
  align-items:flex-end;
  isolation:isolate;
  background:
    radial-gradient(circle at 82% 18%,color-mix(in srgb,var(--dc2,#4fd1c5) 55%,transparent),transparent 42%),
    linear-gradient(135deg,color-mix(in srgb,var(--dc,#00b06a) 84%,#08291f),color-mix(in srgb,var(--dc2,#4fd1c5) 74%,#061f19));
  background-size:cover;
  background-position:center;
}
.order-visual.has-img{background-size:cover;background-position:center;}
.order-visual-shade{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(2,24,18,.08) 10%,rgba(2,24,18,.76) 100%);
}
.order-visual-icon{
  position:absolute;
  top:10px;
  left:11px;
  width:29px;
  height:29px;
  border-radius:9px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.88);
  color:var(--dc,#00b06a);
  box-shadow:0 5px 18px rgba(0,0,0,.12);
  backdrop-filter:blur(8px);
}
.order-visual-icon i{font-size:17px;}
.order-visual .order-route{
  position:relative;
  margin:28px 50px 0 0;
  color:#fff;
  font-size:16.5px;
  line-height:1.28;
  font-weight:800;
  text-shadow:0 1px 8px rgba(0,0,0,.38);
  -webkit-line-clamp:2;
}
.order-visual .route-arr{color:#62f0b1;}
.order-urgent{
  position:absolute;
  top:10px;
  right:10px;
  margin:0;
  box-shadow:0 4px 14px rgba(96,42,24,.16);
}
.order-card-body{
  display:flex;
  flex:1 1 auto;
  min-height:0;
  flex-direction:column;
}
.order-card-body .order-tags{margin-top:0;}
.order-card-body .order-sub{
  min-height:36px;
  margin:7px 0 5px;
  font-size:13px;
  line-height:1.38;
}
.order-card-body .order-rate{
  margin-top:1px;
  font-size:21px;
  line-height:1.15;
}
.order-card-body .order-meta{
  margin:7px 0 7px;
  min-height:18px;
  font-size:12.75px;
}
.order-card-body .order-actions{
  margin-top:auto;
  padding-top:8px;
}
.order-card-body .order-actions .btn{min-height:34px;}

/* Уже существующие карточки объявлений тоже становятся компактнее. */
.feed .lst-card .lst-photo{
  min-height:92px!important;
  transition:background-size .28s var(--ease),filter .28s var(--ease);
}
.feed .lst-card:hover .lst-photo{filter:saturate(1.04) contrast(1.02);}
.feed .lst-card .lst-body{padding:9px 12px 12px;}
.feed .lst-card .lst-title{font-size:15px;line-height:1.28;-webkit-line-clamp:2;}
.feed .lst-card .lst-chips{margin-top:6px;}
.feed .lst-card .lst-city{font-size:12.5px;}

/* Группировка рынка — короткая подпись, без растягивания карточки. */
.feed .order-market-group{
  padding:3px 7px;
  font-size:10.5px;
  letter-spacing:.01em;
}

@media (min-width:900px){
  /* Стрелки живут в собственных боковых полях и не накладываются на карточки. */
  .feed-wrap{
    padding-inline:50px;
    overflow:visible;
  }
  .feed{
    gap:12px;
    padding:5px 0 12px;
    scroll-padding-inline:0;
    scrollbar-width:thin;
  }
  .feed-arrow{
    top:50%;
    width:40px;
    height:40px;
    z-index:4;
    background:rgba(255,255,255,.96);
    box-shadow:0 7px 24px rgba(14,43,35,.12);
  }
  .feed-prev{left:2px;}
  .feed-next{right:2px;}

  /* На широком desktop ровно четыре карточки в видимой области. */
  .feed .order-card{
    flex:0 0 calc((100% - 36px)/4);
    width:calc((100% - 36px)/4);
    min-width:0;
    max-width:none;
    min-height:292px;
    scroll-snap-align:start;
  }

  /* Верхний фильтр: 4 колонки вместо 3, чтобы занимать только две строки. */
  #orders .filter-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:7px 10px;
  }
  #orders .filter-grid .field-wrap{gap:3px;}
  #orders .filter-actions{
    gap:8px;
  }

  /* На desktop верхняя CTA уже есть — плавающая кнопка не перекрывает рынок. */
  .fab{display:none!important;}
}

/* Средний laptop: три карточки, без частично обрезанной четвёртой. */
@media (min-width:1100px) and (max-width:1399px){
  .feed .order-card{
    flex-basis:calc((100% - 24px)/3);
    width:calc((100% - 24px)/3);
  }
}

/* Узкий laptop/tablet landscape: две полноценные карточки. */
@media (min-width:900px) and (max-width:1099px){
  .feed .order-card{
    flex-basis:calc((100% - 12px)/2);
    width:calc((100% - 12px)/2);
  }
  #orders .filter-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}

/* Очень широкий экран — всё равно 4 карточки, но чуть просторнее внутри. */
@media (min-width:1600px){
  .feed .order-card{
    flex-basis:calc((100% - 42px)/4);
    width:calc((100% - 42px)/4);
    min-width:0;
    max-width:none;
  }
  .feed{gap:14px;}
}

/* Mobile/tablet portrait: обычный вертикальный список, фото компактное. */
@media (max-width:899px){
  #orders .filter-panel{padding:12px;margin-bottom:12px;}
  .feed-wrap{padding:0;}
  .feed .order-card{
    width:100%;
    min-width:0;
    max-width:100%;
    min-height:0;
  }
  .order-visual{min-height:88px;}
  .order-card-body{padding:10px 12px 12px;}
  .feed .lst-card .lst-photo{min-height:96px!important;}
}

/* =========================================================
   GIGZAKAZ 2.12.3 — VIEWPORT SECTIONS / COMPACT WORKSPACE
   ---------------------------------------------------------
   Разделы открываются ниже sticky-шапки, не режут содержимое,
   а desktop/laptop получают более плотную композицию.
   ========================================================= */
:root{
  --gz-header-offset:82px;
  --gz-section-radius:24px;
  --gz-section-ease:cubic-bezier(.22,.72,.24,1);
}
#directions,#services,#orders,#analytics,#calculator,#faq,#cabinet,.section[id]{
  scroll-margin-top:var(--gz-header-offset);
}
.section{
  position:relative;
  overflow:visible;
  isolation:isolate;
}
.section.gz-section-stage{
  transition:opacity .42s var(--gz-section-ease),transform .52s var(--gz-section-ease);
}
.section.gz-section-stage.is-section-visible{opacity:1;transform:none;}
.section.gz-section-stage::before{
  content:"";
  position:absolute;
  inset:10px max(8px,1vw);
  border-radius:var(--gz-section-radius);
  pointer-events:none;
  opacity:0;
  background:linear-gradient(120deg,rgba(0,197,137,.035),rgba(68,196,255,.025),transparent 68%);
  transition:opacity .5s var(--gz-section-ease);
  z-index:-1;
}
.section.gz-section-stage.is-section-visible::before{opacity:1;}

#directions .section-title,#services .section-title,#orders .section-title,
#analytics .section-title,#calculator .section-title{margin-bottom:10px;}
#analytics .docs-sub,#calculator .calc-note{
  margin-left:auto;margin-right:auto;text-align:center;max-width:820px;margin-bottom:12px;
}

@media (min-width:900px){
  #directions{padding-top:22px;padding-bottom:22px;}
  #directions .dir-grid{gap:10px;}
  #directions .dir-card{min-height:0;border-radius:18px;overflow:hidden;}
  #directions .dir-card-img{height:104px;}
  #directions .dir-card-body{padding:16px 14px 12px;gap:3px;}
  #directions .dir-title{font-size:16px;line-height:1.18;}
  #directions .dir-tagline{font-size:12.5px;line-height:1.35;-webkit-line-clamp:2;}
  #directions .dir-card-meta{padding-top:5px;}

  #services{padding-top:20px;padding-bottom:20px;}
  #services .svc-grid{gap:10px;}
  #services .svc-card{min-height:96px;padding:13px 9px;gap:7px;}
  #services .svc-icon{width:44px;height:44px;font-size:22px;}
  #services .svc-title{font-size:13.5px;}

  #orders{padding-top:22px;padding-bottom:22px;}
  #orders .feed{scrollbar-width:none;-ms-overflow-style:none;}
  #orders .feed::-webkit-scrollbar{display:none;}
  #orders .feed-wrap{margin-top:2px;}
  #orders .order-card{min-height:258px;border-radius:18px;}
  #orders .order-card-body .order-sub{min-height:35px;margin:5px 0;}
  #orders .order-card-body .order-meta{margin:5px 0 5px;}

  #analytics{padding-top:22px;padding-bottom:22px;}
  #analytics .filter-panel{padding:11px 13px 10px;margin-bottom:10px;}
  #analytics .filter-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px 10px;}
  #analytics .field-dark{min-height:40px;padding:8px 11px;font-size:14px;}
  #analytics .filter-actions{margin-top:8px;}
  #analytics .kpi-grid{gap:9px;margin-bottom:9px;}
  #analytics .kpi{padding:9px 11px;}
  #analytics .kpi-value{font-size:24px;margin:1px 0;}
  #analytics .kpi-note{font-size:11.5px;}
  #analytics .analytics-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;margin-bottom:9px;}
  #analytics .analytics-card{padding:12px 14px;min-height:176px;}
  #analytics .analytics-card-title{margin-bottom:9px;}
  #analytics .corridor-seg{padding:10px 4px;}
  #analytics .corridor-hint{margin-top:8px;font-size:13px;}
  #analytics .index-row{gap:7px;}
  #analytics .index-chip{padding:8px 10px;}

  #calculator{padding-top:22px;padding-bottom:22px;}
  #calculator .qo-tabs{margin-bottom:10px;gap:7px;}
  #calculator .qo-tabs .btn,#calculator .qo-tabs button{min-height:38px;padding:7px 12px;}
  #calculator .calc-layout{grid-template-columns:minmax(0,3fr) minmax(300px,2fr);gap:14px;align-items:start;}
  #calculator .calc-form{padding:14px;}
  #calculator .calc-form .filter-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px;}
  #calculator .calc-form .field-dark{min-height:40px;padding:8px 11px;font-size:14px;}
  #calculator .calc-form .btn{margin-top:10px;}
  #calculator .calc-result{padding:16px;min-height:142px;}
  #calculator .calc-result-empty{font-size:14px;line-height:1.5;}
}

@media (min-width:900px) and (max-height:800px){
  :root{--gz-header-offset:74px;}
  .section{padding-top:16px;padding-bottom:16px;}
  .section-title{font-size:23px;margin-bottom:8px!important;}
  #directions .dir-card-img{height:88px;}
  #directions .dir-card-body{padding:14px 12px 10px;}
  #services .svc-card{padding:10px 8px;}
  #services .svc-icon{width:40px;height:40px;font-size:20px;}
  #orders .filter-panel,#analytics .filter-panel{padding-top:9px;padding-bottom:9px;}
  #orders .order-card{min-height:244px;}
  #analytics .analytics-card{min-height:154px;}
  #calculator .calc-form{padding:12px;}
  #calculator .calc-result{padding:14px;}
}

@media (min-width:600px) and (max-width:899px){
  :root{--gz-header-offset:104px;}
  .section[id]{scroll-margin-top:var(--gz-header-offset);}
  #directions .dir-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  #services .svc-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  #analytics .analytics-row{grid-template-columns:1fr;}
  #calculator .calc-layout{grid-template-columns:1fr;}
}

@media (max-width:599px){
  :root{--gz-header-offset:132px;}
  html{scroll-padding-top:var(--gz-header-offset);}
  .section[id]{scroll-margin-top:var(--gz-header-offset);}
  .section.gz-section-stage{transform:translateY(4px);}
  #orders .filter-actions{align-items:stretch;}
  #orders .filter-actions .btn{flex:1 1 44%;}
  #analytics .export-group{width:100%;margin-left:0;}
  #calculator .calc-result{min-height:110px;}
}

@media (prefers-reduced-motion:reduce){
  .section.gz-section-stage,.section.gz-section-stage::before{
    opacity:1!important;transform:none!important;transition:none!important;
  }
}

/* =========================================================
   GIGZAKAZ 2.12.4 — EXACT SECTION PAGES / NO CROPPING
   ---------------------------------------------------------
   1) Каждый основной раздел занимает минимум рабочий viewport.
   2) Следующий раздел не "подглядывает" снизу, если текущий короткий.
   3) Корневой scroll-snap работает мягко (proximity), без принуждения.
   4) Точное позиционирование делает JS по фактической высоте sticky-header.
   ========================================================= */
:root{
  --gz-live-header-offset:82px;
  --gz-section-gap:8px;
}

/* Корень знает фактическую высоту header через JS. */
html{
  scroll-padding-top:calc(var(--gz-live-header-offset) + var(--gz-section-gap));
}

/* Главные рабочие экраны — самостоятельные "страницы".
   min-height не режет длинный контент: он свободно растёт вниз. */
#directions.section,
#services.section,
#orders.section,
#analytics.section,
#calculator.section,
#faq.section{
  overflow:visible;
  scroll-margin-top:calc(var(--gz-live-header-offset) + var(--gz-section-gap));
  box-sizing:border-box;
}

/* Сама секция больше не двигается transform-анимацией:
   это исключает визуальный сдвиг уже выровненного якоря.
   Анимация остаётся через opacity/background и дочерний reveal. */

/* На коротких разделах удерживаем контент внутри одной визуальной страницы
   и не показываем начало следующего раздела раньше времени. */
@media (min-width:900px){
  #services.section,
  #faq.section{
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
  }
}

/* Tablet/mobile: min-height сохраняет "страничность", но не мешает длинному контенту. */
@media (max-width:899px){
  html{scroll-snap-type:y proximity;}
}

/* Не применяем snap, если пользователь отключил motion. */
@media (prefers-reduced-motion:reduce){
  html{scroll-snap-type:none;}
}

/* =========================================================
   GIGZAKAZ 2.12.5 — NATIVE SCROLL / NO SNAPBACK
   ---------------------------------------------------------
   Исправляет торможение вертикальной полосы прокрутки:
   • глобальный smooth-scroll отключён;
   • вертикальный scroll-snap отключён;
   • ручной клик по scrollbar больше не тянется к началу секции;
   • плавность остаётся только у явных UI-переходов через JS.
   ========================================================= */
html{
  scroll-behavior:auto!important;
}

/* Сохраняем отдельную горизонтальную механику карточек заказов. */
#orders .feed{
  scroll-behavior:smooth;
}

/* =========================================================
   GIGZAKAZ 2.12.6 — COMPACT FLOW + PREMIUM ORDER CARDS
   ---------------------------------------------------------
   • убирает искусственную высоту секций и пустые поля;
   • карточки заказов компактные, одинаковые и без длинных пустых зон;
   • фото: пользовательское публичное фото, если оно есть, иначе фото направления;
   • мягкие hover/reveal-эффекты без тяжёлой анимации.
   ========================================================= */

/* 2.12.4 намеренно растягивал каждый раздел на viewport.
   Для реального рабочего интерфейса это создаёт огромные пустые зоны.
   Точное позиционирование под sticky-header оставляем, а искусственную высоту убираем. */

/* Сопутствующие услуги — ровный компактный переход к заказам. */
#services{
  margin:0;
}
#services .container{
  padding-top:0;
  padding-bottom:0;
}
#services .section-title{
  margin-bottom:12px!important;
}
#services .svc-grid{
  gap:10px;
}
#services .svc-card{
  min-height:84px!important;
  padding:10px 8px!important;
  border-radius:16px;
}
#services .svc-icon{
  width:40px!important;
  height:40px!important;
  font-size:20px!important;
}
#services .svc-title{
  font-size:13px!important;
}

/* Orders: сам раздел плотнее и без лишних внутренних полей. */
#orders{
  padding-top:22px;
  padding-bottom:18px;
}
#orders .section-title{
  margin-bottom:10px!important;
}
#orders .filter-panel{
  margin-bottom:10px!important;
}

/* Лента больше не растягивает все карточки до самой высокой. */
@media (min-width:900px){
  #orders .feed{
    gap:12px;
    padding-top:4px;
    padding-bottom:6px;
  }

  #orders .feed .order-card{
    transform:translateZ(0);
    animation:gzOrderCardIn .42s cubic-bezier(.22,.72,.24,1) both;
  }

  #orders .feed .order-card:nth-child(2){animation-delay:.035s;}
  #orders .feed .order-card:nth-child(3){animation-delay:.07s;}
  #orders .feed .order-card:nth-child(4){animation-delay:.105s;}
  #orders .feed .order-card:nth-child(n+5){animation-delay:.12s;}

  #orders .order-visual,
  #orders .lst-photo{
    height:96px!important;
    min-height:96px!important;
    flex:0 0 96px;
    overflow:hidden;
  }

  #orders .order-card-body,
  #orders .lst-body{
    padding:9px 11px 10px!important;
  }

  #orders .order-tags{
    flex-wrap:nowrap;
    justify-content:flex-start!important;
    overflow:hidden;
    min-height:23px!important;
    margin-top:0!important;
  }
  #orders .order-tag,
  #orders .order-status,
  #orders .order-market-group{
    flex:0 0 auto;
  }

  #orders .order-sub{
    min-height:34px!important;
    max-height:36px;
    margin:5px 0 4px!important;
    font-size:12.5px!important;
    line-height:1.35!important;
    -webkit-line-clamp:2!important;
  }

  #orders .order-rate{
    margin:1px 0 0!important;
    font-size:20px!important;
    line-height:1.15!important;
  }
  #orders .order-unit{
    font-size:11.5px!important;
  }

  #orders .order-meta{
    margin:5px 0 5px!important;
    min-height:17px!important;
    font-size:12px!important;
  }

  #orders .order-actions,
  #orders .order-card-body .order-actions,
  #orders .lst-body > .order-actions{
    padding-top:5px!important;
    margin-top:auto!important;
  }
  #orders .order-actions .btn{
    min-height:34px!important;
    padding:7px 9px!important;
    font-size:12.5px!important;
  }

  /* Listing/ресурсные карточки: показываем только самые важные данные. */
  #orders .lst-title{
    margin-top:4px!important;
    font-size:14px!important;
    line-height:1.22!important;
    -webkit-line-clamp:2!important;
  }
  #orders .lst-chips{
    flex-wrap:nowrap!important;
    overflow:hidden;
    margin:4px 0!important;
    min-height:22px;
  }
  #orders .lst-chip{
    font-size:10.5px!important;
    padding:2px 6px!important;
  }
  #orders .lst-city{
    margin-top:3px!important;
    max-width:100%;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
    font-size:11.5px!important;
  }

  /* Четыре карточки уже на обычном laptop/desktop.
     На узком desktop — три. */
  @media (max-width:1179px){
    #orders .feed .order-card{
      flex-basis:calc((100% - 24px)/3)!important;
      width:calc((100% - 24px)/3)!important;
    }
  }
}

/* Фото карточки — отдельный слой, чтобы его можно было красиво анимировать. */
.order-visual,
.lst-photo{
  position:relative;
  background:
    radial-gradient(circle at 82% 18%,color-mix(in srgb,var(--dc2,#4fd1c5) 45%,transparent),transparent 42%),
    linear-gradient(135deg,color-mix(in srgb,var(--dc,#00b06a) 84%,#08291f),color-mix(in srgb,var(--dc2,#4fd1c5) 74%,#061f19));
}
.order-media-img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  z-index:0;
  transform:scale(1.001);
  transition:transform .42s cubic-bezier(.22,.72,.24,1),filter .42s ease;
}
.order-card:hover .order-media-img{
  transform:scale(1.055);
  filter:saturate(1.05) contrast(1.02);
}
.order-visual-shade{
  z-index:1!important;
}
.order-visual-icon,
.order-visual .order-route,
.order-urgent,
.lst-photo .badge-photo,
.lst-urgent{
  z-index:2!important;
}
.order-visual::after,
.lst-photo::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(105deg,transparent 15%,rgba(255,255,255,.12) 42%,transparent 65%);
  transform:translateX(-125%);
  transition:transform .7s cubic-bezier(.22,.72,.24,1);
}
.order-card:hover .order-visual::after,
.order-card:hover .lst-photo::before{
  transform:translateX(125%);
}

/* У listing-карточек старый background-image overlay больше не нужен. */
.lst-photo.has-img{
  background-image:none!important;
}
.lst-photo.has-img::after{
  z-index:1;
}

/* Карточка: мягкий подъём и световой акцент по категории. */
#orders .order-card{
  transition:
    transform .24s cubic-bezier(.22,.72,.24,1),
    box-shadow .24s ease,
    border-color .24s ease;
}
#orders .order-card:hover{
  transform:translateY(-4px);
  box-shadow:0 16px 38px rgba(12,46,36,.13);
}

/* Фильтр тоже немного компактнее. */
@media (min-width:900px){
  #orders .filter-grid{
    gap:6px 9px!important;
  }
}

/* На низком ноутбуке ещё плотнее, но без обрезания текста. */
@media (min-width:900px) and (max-height:800px){
  #directions.section,
  #services.section,
  #orders.section,
  #analytics.section,
  #calculator.section,
  #faq.section{
    padding-top:14px;
    padding-bottom:14px;
  }
  #orders .feed .order-card{
    height:304px!important;
    min-height:304px!important;
    max-height:304px!important;
  }
  #orders .order-visual,
  #orders .lst-photo{
    height:84px!important;
    min-height:84px!important;
    flex-basis:84px;
  }
  #services .svc-card{
    min-height:76px!important;
  }
}

/* Tablet/mobile: без фиксированной высоты, карточка растёт по содержимому. */
@media (max-width:899px){
  #directions.section,
  #services.section,
  #orders.section,
  #analytics.section,
  #calculator.section,
  #faq.section{
    min-height:auto!important;
    padding-top:16px;
    padding-bottom:16px;
  }
  #orders .feed .order-card{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }
  #orders .order-visual,
  #orders .lst-photo{
    min-height:92px!important;
  }
}

@keyframes gzOrderCardIn{
  from{opacity:0;transform:translateY(10px) scale(.992);}
  to{opacity:1;transform:none;}
}

@media (prefers-reduced-motion:reduce){
  #orders .feed .order-card{
    animation:none!important;
  }
  .order-media-img,
  .order-visual::after,
  .lst-photo::before{
    transition:none!important;
  }
}

/* =========================================================
   GIGZAKAZ 2.12.7 — ORDER FEED FINAL POLISH
   ---------------------------------------------------------
   • фильтр заказов ещё компактнее;
   • обычные карточки ~294px, без длинной пустой середины;
   • объявления с дополнительными параметрами растут естественно;
   • маршруты — две строки с аккуратным визуальным fade;
   • стрелки карусели легче и меньше;
   • бегущая строка получает безопасные fade-края;
   • фото: upload -> очевидный thematic fallback -> фото направления.
   ========================================================= */

@media (min-width:900px){
  /* ---- компактный фильтр ---- */
  #orders .filter-panel{
    padding:8px 11px 8px!important;
    margin-bottom:9px!important;
    border-radius:18px;
  }
  #orders .filter-grid{
    gap:4px 9px!important;
  }
  #orders .filter-grid .field-wrap{
    gap:2px!important;
  }
  #orders .filter-grid label{
    font-size:11.5px!important;
    line-height:1.15;
  }
  #orders .filter-grid .field-dark{
    min-height:34px!important;
    height:34px;
    padding:5px 10px!important;
    font-size:13px!important;
    border-radius:12px;
  }
  #orders .filter-actions{
    margin-top:6px!important;
    gap:7px!important;
    min-height:34px;
  }
  #orders .filter-actions .btn{
    min-height:34px!important;
    padding:6px 12px!important;
    font-size:12.5px!important;
    border-radius:11px;
  }
  #orders .filter-checkbox-inline,
  #orders .filter-count{
    font-size:12px!important;
  }

  /* ---- карусель и стрелки ---- */
  #orders .feed-wrap{
    padding-inline:42px!important;
  }
  #orders .feed{
    gap:10px!important;
    padding:4px 0 5px!important;
  }
  #orders .feed-arrow{
    width:34px!important;
    height:34px!important;
    font-size:16px!important;
    border-color:rgba(10,31,22,.10)!important;
    background:rgba(255,255,255,.92)!important;
    box-shadow:0 5px 16px rgba(14,43,35,.10)!important;
    backdrop-filter:blur(8px);
  }
  #orders .feed-arrow:hover{
    transform:translateY(-50%) scale(1.06);
    box-shadow:0 7px 20px rgba(14,43,35,.14)!important;
  }
  #orders .feed-prev{left:3px!important;}
  #orders .feed-next{right:3px!important;}

  /* ---- обычная заявка: компактная высота ---- */
  #orders .order-card-visual .order-visual{
    height:88px!important;
    min-height:88px!important;
    flex:0 0 88px!important;
  }
  #orders .order-card-visual .order-card-body{
    padding:8px 10px 9px!important;
  }
  #orders .order-card-visual .order-sub{
    min-height:31px!important;
    max-height:33px!important;
    margin:4px 0 3px!important;
    font-size:12px!important;
    line-height:1.32!important;
  }
  #orders .order-card-visual .order-rate{
    font-size:19px!important;
    margin-top:0!important;
  }
  #orders .order-card-visual .order-meta{
    margin:4px 0 3px!important;
  }
  #orders .order-card-visual .order-actions{
    padding-top:4px!important;
  }

  /* Объявления/ресурсы могут иметь чипы — не режем их жёсткой высотой. */
  #orders .feed .lst-card{
    height:auto!important;
    min-height:294px!important;
    max-height:none!important;
  }
  #orders .feed .lst-card .lst-photo{
    height:88px!important;
    min-height:88px!important;
    flex:0 0 88px!important;
  }
  #orders .feed .lst-card .lst-body{
    padding:8px 10px 9px!important;
  }

  /* Четыре на широком desktop, три на обычном laptop. */
  #orders .feed .order-card{
    flex-basis:calc((100% - 30px)/4)!important;
  }
}

/* Маршрут на фото: 2 строки, затем мягкий fade вместо грубого обрыва. */
#orders .order-visual .order-route{
  position:relative;
  max-width:calc(100% - 52px);
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  line-height:1.16!important;
  font-size:15px!important;
  text-shadow:0 2px 10px rgba(0,0,0,.38);
  padding-right:6px;
  -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 88%,transparent 100%);
          mask-image:linear-gradient(90deg,#000 0%,#000 88%,transparent 100%);
}

/* Если фото повторяется как fallback — карточки всё равно выглядят живее за счёт
   небольшого вариативного кадрирования, зависящего от позиции в ленте. */
#orders .feed .order-card:nth-child(3n+1) .order-media-img{object-position:42% center;}
#orders .feed .order-card:nth-child(3n+2) .order-media-img{object-position:52% center;}
#orders .feed .order-card:nth-child(3n) .order-media-img{object-position:62% center;}

/* CTA компактнее, но остаются крупными для клика. */
#orders .order-actions{
  gap:6px!important;
}

/* Тикер: частичный элемент у края выглядит намеренно, а не как обрезка. */
.ticker-wrap{
  position:relative;
  padding:6px 0!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 34px,#000 calc(100% - 34px),transparent 100%);
          mask-image:linear-gradient(90deg,transparent 0,#000 34px,#000 calc(100% - 34px),transparent 100%);
}
.ticker-item{
  padding-left:18px!important;
  padding-right:18px!important;
  gap:6px!important;
  font-size:13px!important;
}
.ticker-live{font-size:11px!important;}

/* Низкий ноутбук: ещё чуть плотнее. */
@media (min-width:900px) and (max-height:800px){
  #orders .feed .order-card.order-card-visual{
    height:282px!important;
    min-height:282px!important;
    max-height:282px!important;
  }
  #orders .order-card-visual .order-visual,
  #orders .feed .lst-card .lst-photo{
    height:80px!important;
    min-height:80px!important;
    flex-basis:80px!important;
  }
  #orders .filter-panel{
    padding-top:7px!important;
    padding-bottom:7px!important;
  }
}

/* Mobile/tablet — никаких жёстких высот. */
@media (max-width:899px){
  #orders .feed .order-card.order-card-visual,
  #orders .feed .lst-card{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }
  #orders .order-visual .order-route{
    max-width:calc(100% - 46px);
    font-size:14px!important;
  }
}

@media (prefers-reduced-motion:reduce){
  #orders .feed-arrow:hover{transform:translateY(-50%);}
}

/* =========================================================
   GIGZAKAZ 2.12.8 — RATE SEMANTICS + MAP/FAB SPACING
   ---------------------------------------------------------
   • нулевая ставка больше не выглядит как «бесплатно»;
   • вместо 0 ₽ — понятный CTA «Предложите ставку»;
   • единица тарифа сохраняется как контекст;
   • кнопка «Заказы на карте» разведена с плавающим ИИ-чатом.
   ========================================================= */

#orders .order-rate-open{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:4px 7px;
  color:var(--ink);
}
#orders .order-rate-open-label{
  color:var(--accent);
  font-size:16px;
  font-weight:800;
  line-height:1.18;
  letter-spacing:-.01em;
}
#orders .order-rate-open .order-unit{
  color:var(--ink-dim);
  font-size:11.5px!important;
  font-weight:650;
}

/* Уводим карту вправо от круглой кнопки ИИ-ассистента.
   Только desktop: на mobile положение FAB иная. */
@media (min-width:900px){
  #orders .map-block{
    margin-top:8px!important;
    padding-left:58px;
    box-sizing:border-box;
  }
  #orders .map-block #btn-map-toggle{
    min-height:38px;
    padding:8px 14px;
    border-radius:13px;
  }
}

@media (max-width:899px){
  #orders .map-block{
    padding-left:0;
  }
}

@media (prefers-reduced-motion:reduce){
  #orders .map-block #btn-map-toggle{
    transition:none!important;
  }
}

/* =========================================================
   GIGZAKAZ 2.12.9 — COMPACT ORDER DETAILS / DECISION UI
   ========================================================= */
.modal.modal-order-detail{max-width:980px;}
.modal-order-detail .modal-head{padding:18px 22px;}
.modal-order-detail .modal-title{font-size:20px; line-height:1.25; letter-spacing:-.3px;}
.modal-order-detail .modal-body{padding:18px 22px;}
.modal-order-detail .modal-foot{padding:14px 22px;}
.order-detail-shell{display:grid; gap:14px;}
.order-detail-hero{display:grid; grid-template-columns:minmax(0,1.45fr) minmax(260px,.8fr); gap:14px; align-items:stretch;}
.order-detail-main,
.order-price-box,
.order-info-card,
.order-note-card,
.order-response-card,
.order-files-card{background:var(--card); border:1px solid var(--card-brd); border-radius:18px; box-shadow:0 10px 30px rgba(10,31,22,.05);}
.order-detail-main{padding:16px 18px; display:flex; flex-direction:column; justify-content:center; min-width:0;}
.order-detail-tags{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:10px;}
.order-detail-main .detail-tag{margin-bottom:0;}
.order-status-chip{display:inline-flex; align-items:center; min-height:30px; padding:5px 10px; border-radius:999px; font-size:12px; font-weight:800; color:#1e5f49; background:#eef7f2; border:1px solid #d7ebe2;}
.order-status-chip.offers{color:#8a641b; background:#fff6e5; border-color:#f1deb0;}
.order-status-chip.new{color:#285f98; background:#eaf3ff; border-color:#d7e6fb;}
.order-status-chip.urgent{color:#933e12; background:#fff1e7; border-color:#f4d4bf;}
.order-detail-name{font-size:24px; line-height:1.2; font-weight:800; color:var(--ink); margin-bottom:6px; overflow-wrap:anywhere;}
.order-detail-route{font-size:14px; color:var(--ink-dim); line-height:1.45; overflow-wrap:anywhere;}
.order-price-box{padding:16px 18px; display:flex; flex-direction:column; justify-content:center; gap:8px; background:linear-gradient(180deg,#ffffff 0%,#f8fcfa 100%);}
.order-price-caption{font-size:12px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:var(--ink-dim);}
.order-price-box .order-rate,.order-price-box .order-rate-open{margin:0;}
.order-price-hint{font-size:13px; line-height:1.45; color:var(--ink-dim);}
.order-kpis{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px;}
.order-kpi-card{padding:12px 14px; border:1px solid var(--card-brd); border-radius:16px; background:rgba(255,255,255,.92); box-shadow:0 8px 24px rgba(10,31,22,.04); min-width:0;}
.order-kpi-card span{display:block; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--ink-dim);}
.order-kpi-card strong{display:block; margin-top:6px; font-size:18px; line-height:1.25; color:var(--ink); overflow-wrap:anywhere;}
.order-detail-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px;}
.order-info-card{padding:14px 16px; min-width:0;}
.order-info-title{font-size:14px; font-weight:800; color:var(--ink); margin-bottom:10px;}
.order-info-list{display:grid; gap:8px;}
.order-info-row{display:grid; grid-template-columns:minmax(130px,190px) minmax(0,1fr); gap:10px; align-items:start; padding:7px 0; border-bottom:1px solid rgba(10,31,22,.08);}
.order-info-row:last-child{padding-bottom:0; border-bottom:none;}
.order-info-row span{font-size:13px; color:var(--ink-dim);}
.order-info-row strong{font-size:14px; color:var(--ink); text-align:right; line-height:1.45; font-weight:700; overflow-wrap:anywhere;}
.order-props-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px;}
.order-prop-pill{padding:11px 12px; border-radius:14px; background:#f8fbfa; border:1px solid rgba(10,31,22,.08); min-width:0;}
.order-prop-pill span{display:block; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--ink-dim);}
.order-prop-pill strong{display:block; margin-top:5px; font-size:14px; line-height:1.35; color:var(--ink); overflow-wrap:anywhere;}
.order-notes-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px;}
.order-note-card{padding:14px 16px; min-width:0;}
.order-note-card span{display:block; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:var(--ink-dim); margin-bottom:7px;}
.order-note-card p{margin:0; font-size:14px; line-height:1.55; color:var(--ink); overflow-wrap:anywhere;}
.order-response-card{padding:14px 16px; background:linear-gradient(180deg,#ffffff 0%,#f6fbf8 100%);}
.order-response-tips{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px;}
.order-response-tips > div{padding:12px; border-radius:14px; background:#fff; border:1px solid rgba(10,31,22,.08); min-width:0;}
.order-response-tips i{display:inline-flex; width:28px; height:28px; align-items:center; justify-content:center; border-radius:50%; background:#e9f7f0; color:var(--accent); font-size:15px; margin-bottom:8px;}
.order-response-tips strong{display:block; font-size:14px; color:var(--ink); margin-bottom:4px;}
.order-response-tips span{display:block; font-size:13px; line-height:1.45; color:var(--ink-dim);}
.order-files-card{overflow:hidden;}
.order-files-card > summary{list-style:none; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 16px; cursor:pointer; font-size:14px; font-weight:800; color:var(--ink);}
.order-files-card > summary::-webkit-details-marker{display:none;}
.order-files-card > summary small{display:block; font-size:12px; font-weight:600; color:var(--ink-dim); text-align:right;}
.order-files-card[open] > summary{border-bottom:1px solid var(--card-brd); background:#fafcfb;}
.order-files-body{padding:14px 16px;}
.order-files-upload{display:flex; gap:8px; margin-top:10px; flex-wrap:wrap;}
.order-files-upload input[type="file"]{flex:1 1 260px; min-width:0;}
.order-files-hint{font-size:13px; color:var(--ink-dim);}
.order-detail-foot{justify-content:space-between;}
.order-detail-foot .btn:last-child{margin-left:auto;}
@media(max-width:899px){
  .modal.modal-order-detail{max-width:760px;}
  .order-detail-hero,.order-detail-grid,.order-notes-grid,.order-response-tips{grid-template-columns:1fr;}
  .order-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}
  .order-props-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:640px){
  .modal-order-detail .modal-head,.modal-order-detail .modal-body,.modal-order-detail .modal-foot{padding-left:16px; padding-right:16px;}
  .modal-order-detail .modal-title{font-size:18px;}
  .order-detail-name{font-size:20px;}
  .order-kpis,.order-props-grid{grid-template-columns:1fr;}
  .order-info-row{grid-template-columns:1fr; gap:4px;}
  .order-info-row strong{text-align:left;}
  .order-files-card > summary{align-items:flex-start; flex-direction:column;}
  .order-files-card > summary small{text-align:left;}
  .order-detail-foot{justify-content:flex-start;}
  .order-detail-foot .btn{flex:1 1 100%;}
  .order-detail-foot .btn:last-child{margin-left:0;}
}

/* =========================================================
   GIGZAKAZ 2.12.10 — COMPACT DECISION MODAL ADAPTIVE
   ========================================================= */
.modal.modal-order-decision{
  width:min(1120px,calc(100vw - 36px));
  max-width:1120px;
  max-height:min(88vh,820px);
  overflow:hidden;
}
.modal-order-decision .order-decision-head{padding:12px 16px;gap:12px;}
.order-head-copy{min-width:0;display:grid;gap:2px;}
.modal-order-decision .modal-title{
  font-size:18px;line-height:1.22;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.order-head-sub{
  display:none;font-size:12px;color:var(--ink-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.modal-order-decision .order-decision-body{
  padding:12px 16px 10px;overflow:auto;overscroll-behavior:contain;
}
.modal-order-decision .order-decision-foot{
  padding:10px 16px;gap:8px;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);
}
.decision-summary{
  display:grid;grid-template-columns:minmax(0,1.15fr) minmax(245px,.58fr);
  gap:10px;margin-bottom:10px;
}
.decision-summary-main,.decision-rate{
  border:1px solid var(--card-brd);border-radius:14px;background:#fff;
}
.decision-summary-main{padding:12px 14px;min-width:0;}
.decision-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:7px;}
.decision-tags .detail-tag,.decision-tags .order-status-chip{
  min-height:26px;padding:4px 9px;font-size:11.5px;margin:0;
}
.decision-title{
  font-size:20px;line-height:1.17;font-weight:850;color:var(--ink);
  letter-spacing:-.02em;overflow-wrap:anywhere;
}
.decision-route{
  margin-top:4px;color:var(--ink-dim);font-size:12.5px;line-height:1.35;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.decision-rate{
  padding:12px 14px;display:flex;flex-direction:column;justify-content:center;gap:5px;
  background:linear-gradient(180deg,#fff 0%,#f7fcf9 100%);
}
.decision-label{
  font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-dim);
}
.decision-rate .order-rate,.decision-rate .order-rate-open{margin:0;font-size:21px!important;}
.decision-rate .order-rate-open-label{font-size:15px!important;}
.decision-rate small{font-size:11.5px;line-height:1.35;color:var(--ink-dim);}
.decision-metrics{
  grid-column:1/-1;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;
}
.decision-metrics>div{
  min-width:0;padding:8px 10px;border:1px solid rgba(10,31,22,.08);
  border-radius:12px;background:rgba(255,255,255,.92);
}
.decision-metrics span{
  display:block;font-size:9.5px;font-weight:800;letter-spacing:.045em;
  text-transform:uppercase;color:var(--ink-dim);
}
.decision-metrics strong{
  display:block;margin-top:3px;font-size:13.5px;line-height:1.25;color:var(--ink);
  overflow:hidden;text-overflow:ellipsis;
}
.decision-layout{
  display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:10px;align-items:start;
}
.decision-main{display:grid;gap:8px;min-width:0;}
.decision-section,.decision-details,.decision-offer{
  border:1px solid var(--card-brd);border-radius:14px;background:#fff;
}
.decision-section{padding:11px 12px;}
.decision-section-title,.decision-offer-title{
  font-size:13.5px;font-weight:850;color:var(--ink);margin-bottom:8px;
}
.decision-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;}
.decision-facts>div{min-width:0;padding:8px 9px;border-radius:10px;background:#f8fbfa;}
.decision-facts span,.decision-param span{
  display:block;font-size:9.5px;font-weight:800;letter-spacing:.045em;
  text-transform:uppercase;color:var(--ink-dim);
}
.decision-facts strong,.decision-param strong{
  display:block;margin-top:3px;font-size:13px;line-height:1.3;color:var(--ink);overflow-wrap:anywhere;
}
.decision-params{display:grid;gap:7px;}
.decision-param{
  min-width:0;border:1px solid rgba(10,31,22,.07);
  background:#f9fbfa;
}
.decision-details{overflow:hidden;}
.decision-details>summary{
  list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;
  cursor:pointer;font-weight:800;color:var(--ink);
}
.decision-details>summary::-webkit-details-marker{display:none;}
.decision-details>summary small{
  color:var(--ink-dim);font-weight:600;white-space:nowrap;
}
.decision-details[open]>summary{
  border-bottom:1px solid var(--card-brd);background:#fafcfb;
}
.decision-notes{display:grid;gap:7px;}
.decision-note{border-radius:10px;background:#f8fbfa;}
.decision-note span{
  display:block;font-size:9.5px;font-weight:800;text-transform:uppercase;
  letter-spacing:.045em;color:var(--ink-dim);
}
.decision-note p{margin:3px 0 0;color:var(--ink);}
.decision-offer{
  position:sticky;top:0;padding:12px;
  background:linear-gradient(180deg,#fff 0%,#f5fbf8 100%);
  box-shadow:0 10px 30px rgba(7,61,44,.07);
}
.decision-offer-title{margin-bottom:3px;font-size:15px;}
.decision-offer-sub{margin-bottom:9px;font-size:11.5px;line-height:1.4;color:var(--ink-dim);}
.decision-offer-form{display:grid;gap:8px;}
.decision-offer .form-field{gap:4px;}
.decision-offer .form-field label{font-size:11px;font-weight:800;}
.decision-offer .field-dark{
  min-height:36px!important;padding:7px 9px!important;border-radius:10px!important;font-size:13px!important;
}
.decision-offer textarea.field-dark{min-height:62px!important;resize:vertical;}
.decision-price-field small{margin-top:0;font-size:10.5px;color:var(--ink-dim);}
.decision-offer-checklist{
  display:flex;flex-wrap:wrap;gap:5px;align-items:center;padding:7px 8px;
  border-radius:10px;background:#eef8f3;color:var(--ink-dim);font-size:10.5px;
}
.decision-offer-checklist span{width:100%;font-weight:700;}
.decision-offer-checklist b{
  padding:3px 6px;border-radius:999px;background:#fff;color:#24664f;font-size:10px;
}
.decision-submit{
  width:100%;min-height:38px!important;padding:8px 10px!important;border-radius:11px!important;font-size:13px!important;
}
.modal-order-decision .order-files-body{padding:9px 11px;}
.modal-order-decision .order-files-upload{margin-top:7px;}
.order-decision-foot #dt-respond{margin-left:auto;}

@media (min-width:900px) and (max-height:800px){
  .modal.modal-order-decision{max-height:90vh;}
  .modal-order-decision .order-decision-head{padding-top:9px;padding-bottom:9px;}
  .modal-order-decision .order-decision-body{padding-top:9px;padding-bottom:8px;}
  .decision-summary{margin-bottom:8px;gap:8px;}
  .decision-summary-main,.decision-rate{padding:9px 11px;}
  .decision-title{font-size:18px;}
  .decision-metrics>div{padding:6px 8px;}
  .decision-layout{gap:8px;}
  .decision-section,.decision-offer{padding:9px 10px;}
  .decision-params,.decision-facts{gap:5px;}
}

@media (min-width:641px) and (max-width:899px){
  .modal.modal-order-decision{width:min(760px,calc(100vw - 24px));max-height:92vh;}
  .decision-summary{grid-template-columns:minmax(0,1fr) 230px;}
  .decision-metrics{grid-template-columns:repeat(3,minmax(0,1fr));}
  .decision-layout{grid-template-columns:1fr;}
  .decision-offer{position:relative;order:-1;}
  .decision-main{order:2;}
  .decision-offer-form{grid-template-columns:repeat(2,minmax(0,1fr));}
  .decision-offer .decision-price-field,
  .decision-offer .decision-offer-checklist,
  .decision-offer .decision-submit{grid-column:1/-1;}
}

@media (max-width:640px){
  .modal-overlay:has(.modal-order-decision){padding:6px;align-items:flex-end;}
  .modal.modal-order-decision{
    width:100%;max-width:none;max-height:calc(100dvh - 12px);border-radius:16px 16px 10px 10px;
  }
  .modal-order-decision .order-decision-head{padding:10px 12px;}
  .modal-order-decision .modal-title{font-size:16px;}
  .order-head-sub{display:block;}
  .modal-order-decision .order-decision-body{padding:9px 10px 8px;}
  .decision-summary{grid-template-columns:1fr;gap:7px;margin-bottom:7px;}
  .decision-summary-main,.decision-rate{padding:10px 11px;}
  .decision-title{font-size:18px;}
  .decision-route{font-size:11.5px;}
  .decision-rate{display:grid;grid-template-columns:1fr auto;align-items:center;}
  .decision-rate small{grid-column:1/-1;}
  .decision-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;}
  .decision-metrics>div{padding:7px 8px;}
  .decision-layout{grid-template-columns:1fr;gap:7px;}
  .decision-offer{position:relative;order:-1;padding:10px;}
  .decision-main{order:2;}
  .decision-facts{grid-template-columns:repeat(2,minmax(0,1fr));}
  .decision-section{padding:9px 10px;}
  .decision-details>summary small{display:none;}
  .decision-offer textarea.field-dark{min-height:56px!important;}
  .modal-order-decision .order-decision-foot{
    position:sticky;bottom:0;padding:8px 10px;gap:6px;z-index:5;
  }
  .order-decision-foot .btn{
    min-height:34px!important;padding:7px 9px!important;font-size:11.5px!important;
  }
  .order-decision-foot #dt-offers,
  .order-decision-foot #dt-group{display:none;}
}
@media (max-width:390px){
  .decision-facts,.decision-params{grid-template-columns:1fr;}
}
@keyframes decisionModalIn{
  from{opacity:0;transform:translateY(8px) scale(.994);}
  to{opacity:1;transform:none;}
}
.modal-order-decision{animation:decisionModalIn .22s ease-out both;}
@media (prefers-reduced-motion:reduce){
  .modal-order-decision{animation:none!important;}
}

/* =========================================================
   GIGZAKAZ 2.12.11 — ORDER MODAL DECISION-FIRST COMPACT UI
   ========================================================= */

.modal.modal-order-decision-v2{
  width:min(1160px,calc(100vw - 40px));
  max-width:1160px;
  max-height:min(86vh,760px);
}
.modal-order-decision-v2 .order-decision-head{
  padding:9px 14px;
  min-height:52px;
}
.modal-order-decision-v2 .modal-title{
  font-size:15px;
  font-weight:850;
}
.modal-order-decision-v2 .order-head-sub{
  display:block;
  font-size:10.5px;
  color:var(--ink-dim);
}
.modal-order-decision-v2 .modal-close{
  width:32px;
  height:32px;
  font-size:22px;
}
.modal-order-decision-v2 .order-decision-body{
  padding:9px 12px 8px;
}
.modal-order-decision-v2 .order-decision-foot{
  padding:7px 12px;
  min-height:48px;
}
.modal-order-decision-v2 .order-decision-foot .btn{
  min-height:34px;
  padding:7px 12px;
  font-size:12px;
}

.decision-summary-v2{
  grid-template-columns:minmax(0,1fr) 300px;
  gap:7px;
  margin-bottom:7px;
}
.decision-summary-v2 .decision-summary-main,
.decision-summary-v2 .decision-rate{
  border-radius:12px;
  padding:9px 11px;
}
.decision-summary-v2 .decision-tags{
  gap:5px;
  margin-bottom:5px;
}
.decision-summary-v2 .decision-tags .detail-tag,
.decision-summary-v2 .decision-tags .order-status-chip{
  min-height:23px;
  padding:3px 8px;
  font-size:10.5px;
}
.decision-summary-v2 .decision-title{
  font-size:18px;
  line-height:1.12;
}
.decision-summary-v2 .decision-route{
  margin-top:3px;
  font-size:11.5px;
  line-height:1.25;
  -webkit-line-clamp:1;
}
.decision-rate-v2{
  gap:3px;
}
.decision-rate-v2 .decision-label{
  font-size:9.5px;
}
.decision-rate-v2 .order-rate,
.decision-rate-v2 .order-rate-open{
  font-size:20px!important;
  line-height:1.08;
}
.decision-rate-v2 small{
  font-size:10.5px;
  line-height:1.25;
}

.decision-metrics-v2{
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:5px;
}
.decision-metrics-v2 .decision-metric{
  padding:6px 8px;
  min-height:50px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.decision-metrics-v2 span{
  font-size:8.8px;
}
.decision-metrics-v2 strong{
  margin-top:2px;
  font-size:12.5px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.decision-metrics-v2 strong.is-muted{
  color:var(--ink-dim);
  font-weight:700;
}

.decision-layout-v2{
  grid-template-columns:minmax(0,1fr) 300px;
  gap:7px;
}
.decision-main-v2{
  gap:6px;
}
.decision-params-section{
  padding:9px 10px;
}
.decision-section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:6px;
}
.decision-section-head .decision-section-title{
  margin:0;
}
.decision-inline-link{
  border:0;
  background:none;
  color:var(--accent);
  font:inherit;
  font-size:10.5px;
  font-weight:800;
  cursor:pointer;
  padding:2px 4px;
}
.decision-params{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:5px;
}
.decision-param{
  padding:6px 8px;
  border-radius:9px;
  min-height:48px;
}
.decision-param span{
  font-size:8.8px;
}
.decision-param strong{
  margin-top:2px;
  font-size:12px;
  line-height:1.2;
}
.decision-params-more{
  margin-top:5px;
  padding-top:5px;
  border-top:1px dashed rgba(10,31,22,.12);
}
.decision-details{
  border-radius:11px;
}
.decision-notes{
  gap:5px;
  padding:7px 9px 9px;
}
.decision-note{
  padding:6px 8px;
}
.decision-note p{
  font-size:11.5px;
  line-height:1.35;
}
.decision-logic-note{
  display:flex;
  align-items:flex-start;
  gap:7px;
  padding:7px 9px;
  border-radius:10px;
  background:#f6faf8;
  color:var(--ink-dim);
  font-size:10.5px;
  line-height:1.35;
}
.decision-logic-note i{
  color:var(--accent);
  font-size:14px;
  margin-top:1px;
}

.decision-offer-v2{
  padding:9px 10px;
  border-radius:12px;
}
.decision-offer-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:7px;
  margin-bottom:7px;
}
.decision-offer-v2 .decision-offer-title{
  margin:0 0 1px;
  font-size:14px;
}
.decision-offer-v2 .decision-offer-sub{
  margin:0;
  font-size:10px;
  line-height:1.25;
}
.decision-quick-rate{
  flex:none;
  border:1px solid #b9e9d4;
  background:#edfaf4;
  color:#087d54;
  border-radius:9px;
  padding:5px 7px;
  font-size:9.5px;
  font-weight:850;
  cursor:pointer;
  white-space:nowrap;
}
.decision-quick-rate:hover{
  background:#ddf6eb;
}
.decision-offer-v2 .decision-offer-form{
  gap:6px;
}
.decision-offer-v2 .form-field{
  margin:0;
}
.decision-offer-v2 .form-field label{
  margin:0 0 3px;
  font-size:10.5px;
}
.decision-input-wrap{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:6px;
}
.decision-input-wrap>span{
  max-width:112px;
  color:var(--ink-dim);
  font-size:9.5px;
  line-height:1.15;
  text-align:right;
}
.decision-offer-v2 .field-dark{
  min-height:32px!important;
  padding:5px 8px!important;
  border-radius:9px!important;
  font-size:12px!important;
}
.decision-offer-v2 textarea.field-dark{
  min-height:46px!important;
  max-height:76px;
}
.decision-field-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:6px;
  margin-bottom:3px;
}
.decision-field-head label{
  margin:0!important;
}
.decision-term-chips{
  display:flex;
  gap:4px;
}
.decision-term-chips button{
  border:1px solid rgba(10,31,22,.10);
  background:#fff;
  color:var(--ink-dim);
  border-radius:999px;
  padding:3px 6px;
  font-size:9px;
  font-weight:750;
  cursor:pointer;
}
.decision-term-chips button.active{
  color:#087d54;
  border-color:#a8dec6;
  background:#ecf9f3;
}
.decision-offer-hint{
  display:flex;
  align-items:center;
  gap:5px;
  padding:6px 7px;
  border-radius:9px;
  background:#eef8f3;
  color:#456c5e;
  font-size:9.5px;
  line-height:1.25;
}
.decision-offer-hint i{
  color:#0aa76e;
  font-size:13px;
}
.decision-offer-v2 .decision-submit{
  min-height:34px!important;
  padding:6px 9px!important;
  border-radius:9px!important;
  font-size:11.5px!important;
}
.modal-order-decision-v2 .order-files-body{
  padding:7px 9px;
}

/* Desktop wide: keep the whole decision flow in one compact screen. */
@media (min-width:1100px){
  .modal-order-decision-v2 .order-decision-body{
    overflow:auto;
  }
  .decision-offer-v2{
    top:0;
  }
}

/* Tablet: offer immediately after the summary, then parameters. */
@media (min-width:641px) and (max-width:899px){
  .modal.modal-order-decision-v2{
    width:min(780px,calc(100vw - 20px));
    max-height:92vh;
  }
  .decision-summary-v2{
    grid-template-columns:minmax(0,1fr) 240px;
  }
  .decision-metrics-v2{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .decision-layout-v2{
    grid-template-columns:1fr;
  }
  .decision-offer-v2{
    position:relative;
    order:-1;
  }
  .decision-main-v2{
    order:2;
  }
  .decision-offer-v2 .decision-offer-form{
    grid-template-columns:1fr 1fr;
  }
  .decision-price-field,
  .decision-offer-v2 .decision-offer-hint,
  .decision-offer-v2 .decision-submit{
    grid-column:1/-1;
  }
  .decision-params{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

/* Smartphone: summary → proposal → parameters; no horizontal scroll. */
@media (max-width:640px){
  .modal-overlay:has(.modal-order-decision-v2){
    padding:4px;
    align-items:flex-end;
  }
  .modal.modal-order-decision-v2{
    width:100%;
    max-width:none;
    max-height:calc(100dvh - 8px);
    border-radius:15px 15px 8px 8px;
  }
  .modal-order-decision-v2 .order-decision-head{
    padding:8px 10px;
    min-height:46px;
  }
  .modal-order-decision-v2 .modal-title{
    font-size:13px;
  }
  .modal-order-decision-v2 .order-head-sub{
    font-size:9.5px;
  }
  .modal-order-decision-v2 .order-decision-body{
    padding:7px 8px 6px;
  }
  .decision-summary-v2{
    grid-template-columns:1fr;
    gap:5px;
    margin-bottom:5px;
  }
  .decision-summary-v2 .decision-summary-main,
  .decision-summary-v2 .decision-rate{
    padding:8px 9px;
  }
  .decision-summary-v2 .decision-title{
    font-size:16px;
  }
  .decision-summary-v2 .decision-route{
    -webkit-line-clamp:2;
    font-size:10.5px;
  }
  .decision-rate-v2{
    display:grid;
    grid-template-columns:1fr auto;
    align-items:center;
  }
  .decision-rate-v2 small{
    grid-column:1/-1;
  }
  .decision-metrics-v2{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:4px;
  }
  .decision-metrics-v2 .decision-metric{
    min-height:44px;
    padding:5px 6px;
  }
  .decision-metrics-v2 span{
    font-size:7.8px;
  }
  .decision-metrics-v2 strong{
    font-size:11px;
  }
  .decision-layout-v2{
    grid-template-columns:1fr;
    gap:5px;
  }
  .decision-offer-v2{
    position:relative;
    order:-1;
    padding:8px 9px;
  }
  .decision-main-v2{
    order:2;
  }
  .decision-offer-head{
    margin-bottom:5px;
  }
  .decision-quick-rate{
    padding:4px 6px;
    font-size:8.5px;
  }
  .decision-offer-v2 .field-dark{
    min-height:31px!important;
  }
  .decision-offer-v2 textarea.field-dark{
    min-height:42px!important;
  }
  .decision-params{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:4px;
  }
  .decision-param{
    min-height:44px;
    padding:5px 6px;
  }
  .decision-logic-note{
    display:none;
  }
  .modal-order-decision-v2 .order-decision-foot{
    position:sticky;
    bottom:0;
    z-index:6;
    padding:6px 8px;
    min-height:44px;
  }
  .order-decision-foot .decision-secondary{
    display:none;
  }
  .order-decision-foot #dt-close{
    flex:0 0 auto;
  }
  .order-decision-foot #dt-respond{
    flex:1 1 auto;
    margin-left:0;
  }
}

@media (max-width:390px){
  .decision-metrics-v2{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .decision-params{
    grid-template-columns:1fr 1fr;
  }
  .decision-input-wrap{
    grid-template-columns:1fr;
  }
  .decision-input-wrap>span{
    max-width:none;
    text-align:left;
  }
}

/* Motion is subtle and disabled when the OS asks for reduced motion. */
.modal-order-decision-v2 .decision-param,
.modal-order-decision-v2 .decision-metric,
.modal-order-decision-v2 .decision-quick-rate{
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
@media (hover:hover){
  .modal-order-decision-v2 .decision-param:hover,
  .modal-order-decision-v2 .decision-metric:hover{
    transform:translateY(-1px);
    box-shadow:0 7px 18px rgba(7,61,44,.055);
  }
}
@media (prefers-reduced-motion:reduce){
  .modal-order-decision-v2 .decision-param,
  .modal-order-decision-v2 .decision-metric,
  .modal-order-decision-v2 .decision-quick-rate{
    transition:none!important;
  }
}

/* =========================================================
   GIGZAKAZ 2.12.12 — ORDER MODAL FULL INFO FIT
   ========================================================= */

.modal.modal-order-decision-v3{
  max-height:calc(100dvh - 20px);
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  overflow:hidden;
  margin:auto;
}
.modal-order-decision-v3 .order-head-copy{
  min-width:0;
  width:100%;
}
.modal-order-decision-v3 .order-head-sub{
  display:block;
  white-space:normal;
  text-overflow:clip;
  overflow-wrap:anywhere;
}
.modal-order-decision-v3 .order-decision-body{
  min-height:0;
  overflow:auto;
  scrollbar-gutter:stable;
}
.modal-order-decision-v3 .order-decision-foot{
  position:relative;
  inset:auto;
  background:#fff;
  z-index:4;
}

.decision-summary-v3{
  gap:7px;
}
.decision-summary-v3 .decision-title{
  overflow-wrap:anywhere;
}
.decision-rate-v3{
  gap:3px;
  align-self:stretch;
}
.decision-rate-v3 .order-rate,
.decision-rate-v3 .order-rate-open{
  white-space:normal!important;
  overflow:visible!important;
}

.decision-metrics-v3{
  grid-column:1/-1;
  display:grid;
  gap:5px;
}
.decision-metrics-v3 .decision-metric{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
}
.decision-metrics-v3 strong{
  white-space:normal;
  text-overflow:clip;
}
.decision-metrics-v3 strong.is-muted{color:var(--ink-dim);}

.decision-layout-v3{
  display:grid;
  gap:7px;
  align-items:start;
}
.decision-main-v3{
  display:grid;
  gap:6px;
  min-width:0;
}
.decision-params-all{
  display:grid;
  gap:5px;
}
.decision-params-all .decision-param{
  min-width:0;
}
.decision-params-all .decision-param strong{
  white-space:normal;
  overflow-wrap:anywhere;
}
.decision-notes-all{
  display:grid;
  gap:5px;
  padding:0;
}
.decision-notes-all .decision-note p{
  white-space:normal;
}

.decision-offer-v3{
  width:100%;
  min-width:0;
}
.decision-offer-v3 .decision-offer-head{
  gap:6px;
}
.decision-offer-v3 .decision-offer-title{
  margin-bottom:1px;
}
.decision-offer-v3 .decision-offer-sub{
  margin:0;
}
.decision-offer-v3 .decision-quick-rate{
  white-space:normal;
  text-align:center;
}
.decision-offer-v3 .decision-offer-form{gap:6px;}
.decision-offer-v3 .decision-input-wrap{
  gap:3px;
}
.decision-offer-v3 .decision-input-wrap>span{
  max-width:none;
  text-align:left;
  white-space:normal;
  overflow-wrap:anywhere;
}
.decision-offer-v3 .decision-field-head{flex-wrap:wrap;}
.decision-offer-v3 .decision-term-chips{margin-left:auto;}

@media (min-width:900px) and (max-height:760px){
  .modal.modal-order-decision-v3{max-height:calc(100dvh - 10px);}
  .modal-order-decision-v3 .order-decision-head{
    padding-top:7px;padding-bottom:7px;min-height:48px;
  }
  .modal-order-decision-v3 .order-decision-body{padding-top:6px;}
  .decision-summary-v3{gap:5px;margin-bottom:5px;}
  .decision-summary-v3 .decision-summary-main,
  .decision-summary-v3 .decision-rate{padding:7px 9px;}
  .decision-metrics-v3 .decision-metric{min-height:44px;padding:5px 7px;}
  .decision-layout-v3{gap:5px;}
  .decision-main-v3 .decision-section,
  .decision-offer-v3{padding:7px 8px;}
  .modal-order-decision-v3 .order-decision-foot{
    padding-top:5px;padding-bottom:5px;min-height:42px;
  }
}

@media (min-width:641px) and (max-width:899px){
  .decision-params-all{
    grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  }
}

@media (max-width:640px){
  .modal-order-decision-v3 .order-decision-head{
    padding:7px 9px;
    min-height:44px;
  }
  .modal-order-decision-v3 .modal-title{font-size:12.5px;}
  .modal-order-decision-v3 .order-head-sub{font-size:9.5px;}
  .modal-order-decision-v3 .order-decision-body{
    padding:6px 7px 5px;
  }
  .decision-summary-v3{
    gap:5px;
    margin-bottom:5px;
  }
  .decision-summary-v3 .decision-summary-main,
  .decision-summary-v3 .decision-rate{padding:7px 8px;}
  .decision-summary-v3 .decision-title{font-size:15px;}
  .decision-rate-v3{display:block;}
  .decision-rate-v3 .order-rate,
  .decision-rate-v3 .order-rate-open{margin-top:3px;}
  .decision-metrics-v3{
    gap:4px;
  }
  .decision-metrics-v3 .decision-metric{
    min-height:43px;padding:5px 6px;
  }
  .decision-metrics-v3 span{font-size:7.8px;}
  .decision-metrics-v3 strong{font-size:10.8px;}
  .decision-layout-v3{
    gap:5px;
  }
  .decision-params-all{
    gap:4px;
  }
  .decision-params-all .decision-param{
    min-height:42px;padding:5px 6px;
  }
  .decision-details>summary{
    padding:7px 8px;min-height:34px;
  }
  .modal-order-decision-v3 .order-decision-foot{
    padding:5px 7px;min-height:42px;
  }
  .modal-order-decision-v3 .order-decision-foot #dt-respond{
    margin-left:0;
  }
}

@media (max-width:390px){
  .decision-params-all{grid-template-columns:1fr;}
}

@media (prefers-reduced-motion:reduce){
  .modal-order-decision-v3 *{scroll-behavior:auto!important;}
}

/* =========================================================
   GIGZAKAZ 2.12.13 — ORDER MODAL DEVICE BALANCE
   Final balance for desktop / tablet / smartphone.
   ========================================================= */

.modal-order-decision-v3 .order-decision-body{
  overscroll-behavior:contain;
}

/* Desktop: use the width more efficiently and reduce the tall right column. */
@media (min-width:900px){
  .modal.modal-order-decision-v3{
    width:min(1220px,calc(100vw - 24px));
    max-width:1220px;
  }
  .decision-layout-v3{
    grid-template-columns:minmax(0,1fr) minmax(330px,360px);
    gap:8px;
  }
  .decision-params-all{
    grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  }
  .decision-offer-v3{
    padding:8px 9px;
  }
  .decision-offer-v3 .decision-offer-form{
    gap:5px;
  }
  .decision-offer-v3 textarea.field-dark{
    min-height:48px!important;
    max-height:80px;
  }
  .decision-offer-v3 .decision-offer-hint{
    padding:5px 7px;
  }
  .decision-offer-v3 .decision-submit{
    min-height:33px!important;
  }
}

/* Tablet: explicit semantic order. Offer always comes before secondary details. */
@media (min-width:641px) and (max-width:899px){
  .decision-layout-v3{
    display:grid;
    grid-template-areas:
      "offer"
      "main";
  }
  .decision-offer-v3{
    order:initial;
  }
  .decision-main-v3{
    order:initial;
  }
  .decision-offer-v3 .decision-offer-form{
    gap:6px;
  }
}

/* Smartphone: summary -> proposal -> all order information. */
@media (max-width:640px){
  .decision-layout-v3{
    display:grid;
    grid-template-areas:
      "offer"
      "main";
  }
  .decision-offer-v3{
    order:initial;
  }
  .decision-main-v3{
    order:initial;
  }

  .decision-offer-v3{
    padding:7px;
  }
  .decision-offer-v3 .decision-offer-head{
    align-items:center;
    margin-bottom:5px;
  }
  .decision-offer-v3 .decision-offer-title{
    font-size:13px;
  }
  .decision-offer-v3 .decision-offer-sub{
    font-size:9.5px;
  }
  .decision-offer-v3 .decision-offer-form{
    gap:5px;
  }
  .decision-offer-v3 .form-field label{
    font-size:9.8px;
  }
  .decision-offer-v3 .field-dark{
    min-height:30px!important;
    padding:5px 7px!important;
    font-size:11.5px!important;
  }
  .decision-offer-v3 textarea.field-dark{
    min-height:42px!important;
    max-height:70px;
  }
  .decision-offer-v3 .decision-quick-rate{
    max-width:118px;
    padding:4px 6px;
    font-size:8.5px;
  }
  .decision-offer-v3 .decision-offer-hint{
    padding:5px 6px;
    font-size:8.8px;
  }
  .decision-offer-v3 .decision-submit{
    min-height:32px!important;
    padding:5px 8px!important;
    font-size:11px!important;
  }

  .modal-order-decision-v3 .order-decision-foot{
    display:flex;
    align-items:center;
    gap:5px;
    flex-wrap:nowrap;
  }
  .modal-order-decision-v3 .order-decision-foot #dt-close{
    min-width:78px;
  }
}

/* 420–640px: 3 KPI cells per row saves height while preserving full values. */
@media (min-width:420px) and (max-width:640px){
  .decision-metrics-v3{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

/* Very narrow smartphones remain fully readable. */
@media (max-width:419px){
  .decision-metrics-v3{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .decision-params-all{
    grid-template-columns:1fr;
  }
}

/* Low-height tablet/phone landscape: keep actions reachable and content scrollable. */
@media (max-height:620px) and (max-width:899px){
  .modal.modal-order-decision-v3{
    max-height:calc(100dvh - 6px);
  }
  .modal-order-decision-v3 .order-decision-head{
    min-height:40px;
    padding-top:5px;
    padding-bottom:5px;
  }
  .modal-order-decision-v3 .order-decision-foot{
    min-height:38px;
    padding-top:4px;
    padding-bottom:4px;
  }
  .modal-order-decision-v3 .order-decision-body{
    overflow-y:auto;
  }
}

/* =========================================================
   GIGZAKAZ 2.12.14 — HEADER BELL + MODAL ASSISTANT FIX
   ========================================================= */
.btn-bell{
  width:36px;
  height:36px;
  padding:0;
  justify-content:center;
  border-radius:10px;
  color:var(--ink,#0a1f16)!important;
  opacity:1!important;
  visibility:visible;
}
.btn-bell i{
  display:block!important;
  color:currentColor!important;
  font-size:20px!important;
  line-height:1!important;
  opacity:1!important;
}
.btn-bell:hover{
  color:var(--accent,#00b06a)!important;
  background:rgba(10,31,22,.055);
}
.btn-bell:focus-visible{
  outline:2px solid rgba(0,176,106,.36);
  outline-offset:2px;
}
.btn-bell[hidden],
.bell-badge[hidden]{
  display:none!important;
}
.bell-badge{
  top:-3px;
  right:-3px;
  z-index:2;
}

/* While any working modal is open, the floating AI assistant must not cover actions. */
body.gz-modal-open .gzc-fab,
body.gz-modal-open .gzc-panel{
  display:none!important;
  pointer-events:none!important;
}

/* =========================================================
   GIGZAKAZ 2.13.0 — MARKET DEMAND GROUPS
   Exact duplicate demand becomes one analytical market signal.
   ========================================================= */

.order-market-group{
  background:#eef9f5;
  border-color:#b8e8d5;
  color:#087b55;
}
.order-market-group span{font-weight:850}
.order-market-group small{
  font-size:9px;
  font-weight:750;
  opacity:.72;
}
.order-market-group:hover{
  background:#ddf5ea;
  border-color:#92d9bd;
}

.market-demand-signal{
  width:100%;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  border:1px solid #b9e7d5;
  background:linear-gradient(135deg,#f0fbf6,#f8fcfa);
  color:#10372a;
  text-align:left;
  cursor:pointer;
}
.market-demand-signal:hover{
  border-color:#80d2b2;
  box-shadow:0 8px 22px rgba(7,93,63,.07);
  transform:translateY(-1px);
}
.market-demand-signal-icon{
  
  display:grid;place-items:center;
  background:#dff6eb;color:#06835a;
}
.market-demand-signal-copy{min-width:0}
.market-demand-signal-copy strong,
.market-demand-signal-copy small{display:block}
.market-demand-signal-copy small{
  margin-top:2px;color:var(--ink-dim);
}
.market-demand-signal>.ti-chevron-right{color:#19815f}

.modal.modal-market-demand{
  max-height:calc(100dvh - 24px);
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  overflow:hidden;
}
.market-demand-head{
  align-items:center;
}
.market-demand-head>div:first-child{min-width:0}
.market-demand-head-sub{
  display:block;
  margin-top:2px;
  color:var(--ink-dim);
  white-space:normal;
  overflow-wrap:anywhere;
}
.market-demand-body{
  min-height:0;
  overflow:auto;
}
.market-demand-hero{
  display:grid;
  gap:8px;
}
.market-demand-copy,
.market-demand-rate{
  border:1px solid var(--line);
  background:#fff;
}
.market-demand-tags{
  display:flex;flex-wrap:wrap;gap:5px;
}
.market-exact-chip,
.market-safe-chip,
.market-current-chip,
.market-role-chip,
.market-rate-position{
  display:inline-flex;align-items:center;gap:4px;
  border-radius:999px;
  font-weight:800;
}
.market-exact-chip{
  background:#e6f8ef;color:#078057;
}
.market-safe-chip{
  background:#f4f6f5;color:#536861;
}
.market-demand-copy h3{
  margin:0;
}
.market-demand-copy p{
  margin:4px 0 0;color:var(--ink-dim);
}
.market-demand-rate{
  display:flex;flex-direction:column;justify-content:center;
  background:linear-gradient(145deg,#f4fbf8,#fff);
}
.market-demand-rate>span{
  color:var(--ink-dim);font-weight:850;text-transform:uppercase;letter-spacing:.04em;
}
.market-demand-rate strong{
  color:#00a86b;
}
.market-demand-rate small{
  color:var(--ink-dim);
}

.market-demand-kpis{
  display:grid;
  gap:5px;
}
.market-demand-kpis>div{
  min-width:0;
  display:flex;flex-direction:column;justify-content:center;
  border:1px solid var(--line);
  background:#fff;
}
.market-demand-kpis span{
  color:var(--ink-dim);font-weight:800;text-transform:uppercase;
}
.market-demand-kpis strong{
  overflow-wrap:anywhere;
}
.market-demand-warning{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:8px;
  border:1px solid #f0d9a7;
  background:#fffaf0;
  color:#5d4a20;
}
.market-demand-warning>i{margin-top:1px;color:#c4911a}
.market-demand-warning strong,
.market-demand-warning span{display:block}

.market-demand-list-head{
  display:flex;align-items:end;justify-content:space-between;gap:10px;
}
.market-demand-list-head strong,
.market-demand-list-head span{display:block}
.market-demand-list-head div>span{margin-top:1px;color:var(--ink-dim);}
.market-demand-list-head>span{
  color:var(--ink-dim);text-align:right;
}
.market-demand-list{display:grid;gap:5px}
.market-demand-publication{
  display:grid;
  align-items:center;
  gap:8px;
  border:1px solid var(--line);
  background:#fff;
}
.market-demand-publication.is-current{
  border-color:#9edfc5;
  background:#f5fcf8;
}
.market-publication-index{
  border-radius:8px;
  display:grid;place-items:center;
  background:#f0f5f3;color:#47655a;font-weight:900;
}
.market-publication-main{min-width:0}
.market-publication-top{
  display:flex;align-items:center;gap:5px;flex-wrap:wrap;
}
.market-publication-main>span{
  display:block;overflow-wrap:anywhere;
}
.market-publication-main>small{
  display:block;color:var(--ink-dim);
  overflow-wrap:anywhere;
}
.market-current-chip{
  background:#e6f7ef;color:#087b55;
}
.market-role-chip{
  background:#f1f4f3;color:#5e6e68;
}
.market-publication-rate{
  min-width:0;text-align:right;font-weight:850;
}
.market-publication-rate small{
  display:block;margin-top:1px;color:var(--ink-dim);font-weight:600;
}
.market-group-no-rate{color:#079563}
.market-rate-position{
  padding:2px 5px;
  white-space:nowrap;
}
.market-rate-position.neutral{background:#f2f5f4;color:#60706a}
.market-rate-position.low{background:#edf8f1;color:#157344}
.market-rate-position.high{background:#fff1ed;color:#a34d36}

.market-demand-foot{
  display:flex;align-items:center;gap:10px;
}
.market-demand-foot>span{
  margin-left:auto;color:var(--ink-dim);font-size:9px;text-align:right;
}

@media(max-width:760px){
  .modal.modal-market-demand{
    width:min(720px,calc(100vw - 12px));
    max-height:calc(100dvh - 10px);
  }
  .market-demand-hero{grid-template-columns:1fr}
  .market-demand-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .market-demand-publication{
    grid-template-columns:26px minmax(0,1fr) auto;
  }
  .market-publication-rate{
    grid-column:2/3;text-align:left;
  }
  .market-demand-publication>.btn{
    grid-column:3/4;grid-row:1/3;
  }
}
@media(max-width:520px){
  .market-demand-head{padding:8px 10px}
  .market-demand-body{padding:7px}
  .market-demand-kpis{grid-template-columns:1fr 1fr}
  .market-demand-list-head{align-items:flex-start}
  .market-demand-list-head>span{display:none}
  .market-demand-publication{
    grid-template-columns:24px minmax(0,1fr);
    gap:6px;
  }
  .market-demand-publication>.btn{
    grid-column:1/-1;grid-row:auto;width:100%;
  }
  .market-publication-rate{grid-column:2/3}
  .market-demand-foot>span{display:none}
  .market-demand-signal{padding:7px 8px}
}

@media(prefers-reduced-motion:reduce){
  .market-demand-signal{transition:none!important}
}

/* =========================================================
   GIGZAKAZ 2.13.2 — PREMIUM GROUPED MARKET CARD
   Approved decision-first marketplace card for one demand / many publications.
   ========================================================= */
#orders .feed .order-card.order-card-market-cluster{
  height:408px!important;
  min-height:408px!important;
  max-height:408px!important;
  overflow:hidden;
  border:1px solid rgba(15,87,62,.10)!important;
  border-radius:17px!important;
  background:#fff!important;
  box-shadow:0 14px 34px rgba(11,62,47,.12)!important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
#orders .feed .order-card.order-card-market-cluster:hover{
  transform:translateY(-3px);
  border-color:rgba(0,178,111,.30)!important;
  box-shadow:0 20px 42px rgba(11,62,47,.17)!important;
}
.market-card-hero{
  position:relative;
  height:122px;
  min-height:122px;
  overflow:hidden;
  background:linear-gradient(135deg,#d6eee8,#8acfc1);
}
.market-card-hero .order-media-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.market-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,27,20,.12) 0%,rgba(3,27,20,.18) 30%,rgba(2,21,15,.78) 100%)}
.market-card-top-tags{position:absolute;left:9px;right:9px;top:8px;z-index:2;display:flex;gap:4px;align-items:center;flex-wrap:wrap}
.market-card-top-tags .order-tag,.market-card-top-tags .order-status{
  margin:0!important;padding:4px 7px!important;border-radius:8px!important;background:rgba(255,255,255,.94)!important;
  box-shadow:0 3px 10px rgba(0,0,0,.08);font-size:9px!important;line-height:1.1!important;
}
.market-cluster-badge{
  display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:8px;
  background:rgba(240,255,248,.95);color:#087856;font-size:8.8px;font-weight:850;line-height:1.1;
  box-shadow:0 3px 10px rgba(0,0,0,.08);
}
.market-cluster-badge i{font-size:11px}
.market-card-urgent{right:8px!important;top:auto!important;bottom:8px!important;z-index:3}
.market-card-hero-copy{position:absolute;left:10px;right:10px;bottom:10px;z-index:2;color:#fff;min-width:0}
.market-card-hero-copy strong{display:block;font-size:19px;line-height:1.08;font-weight:900;text-shadow:0 2px 12px rgba(0,0,0,.34);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.market-card-hero-copy span{display:-webkit-box;margin-top:3px;font-size:10.5px;font-weight:750;line-height:1.22;text-shadow:0 2px 8px rgba(0,0,0,.35);-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.market-card-hero-copy .ti-arrow-narrow-right{color:#44efaa;font-size:13px}
.market-card-body{display:flex;flex-direction:column;min-height:0;height:calc(100% - 122px);padding:8px 10px 9px}
.market-card-info-row{display:flex;gap:5px;min-height:27px;overflow:hidden}
.market-info-chip{min-width:0;display:inline-flex;align-items:center;gap:4px;padding:4px 6px;border:1px solid #e3e9e6;border-radius:8px;background:#f8faf9;color:#31443d;font-size:8.8px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.market-info-chip i{font-size:11px;flex:0 0 auto}.market-info-chip:nth-child(1){max-width:34%}.market-info-chip:nth-child(2){max-width:34%}.market-info-chip:nth-child(3){max-width:32%}
.market-card-commerce{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.8fr) minmax(0,.78fr);gap:5px;align-items:stretch;margin-top:6px;padding:7px 0;border-top:1px solid #edf1ef;border-bottom:1px solid #edf1ef}
.market-card-rate{display:flex;flex-direction:column;justify-content:center;min-width:0}
.market-card-rate strong{color:#00a96c;font-size:20px;line-height:1;font-weight:950;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.market-card-rate>span{margin-top:2px;color:#4f7467;font-size:8.5px;font-weight:750;white-space:normal;line-height:1.15}
.market-card-rate small{margin-top:2px;color:#64776f;font-size:8.2px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.market-card-rate-open strong{font-size:13px;line-height:1.1;white-space:normal}
.market-card-kpi{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:4px;align-content:center;padding-left:6px;border-left:1px solid #e6ebe9}
.market-card-kpi>i{grid-row:1/3;align-self:center;color:#07855e;font-size:15px}.market-card-kpi>span{color:#75847e;font-size:7.4px;font-weight:750;line-height:1.1}.market-card-kpi>strong{margin-top:1px;font-size:9px;line-height:1.15;white-space:normal;overflow-wrap:anywhere}
.market-card-social{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:center;min-height:25px;padding:5px 0;color:#435851;font-size:8.8px;border-bottom:1px solid #edf1ef}
.market-card-social span{display:flex;align-items:center;gap:4px;min-width:0}.market-card-social span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.market-card-social i{font-size:12px;color:#087b59;flex:0 0 auto}
.market-confidence-panel{display:grid;grid-template-columns:42px minmax(0,1fr);gap:7px;align-items:center;width:100%;margin-top:6px;padding:6px 7px;border:1px solid #cee9dc;border-radius:11px;background:linear-gradient(135deg,#f2fbf7,#fbfefd);color:#163f32;text-align:left;cursor:pointer;transition:border-color .18s ease,background .18s ease}
.market-confidence-panel:hover{border-color:#92d9bb;background:#ecfaf4}
.market-confidence-ring{--score:0;position:relative;width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#00ad70 calc(var(--score)*1%),#dfece7 0)}
.market-confidence-ring::after{content:"";position:absolute;inset:5px;border-radius:50%;background:#fff}.market-confidence-ring b{position:relative;z-index:1;color:#079563;font-size:9px;font-weight:900}
.market-confidence-copy{min-width:0}.market-confidence-copy>strong{display:block;font-size:10.3px;line-height:1.1}.market-confidence-copy>small{display:block;margin-top:2px;color:#61766d;font-size:7.8px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.market-confidence-chips{display:flex;gap:3px;flex-wrap:nowrap;margin-top:4px;overflow:hidden}.market-confidence-chip{display:inline-flex;align-items:center;gap:2px;padding:2px 4px;border:1px solid #d8e8e1;border-radius:999px;background:#fff;color:#355a4d;font-size:6.9px;font-weight:800;white-space:nowrap}.market-confidence-chip i{font-size:7px}.market-confidence-chip.is-match i{color:#00a96c}.market-confidence-chip.is-partial{background:#fff9ea;border-color:#eddcae}.market-confidence-chip.is-mismatch{background:#fff1ed;border-color:#f0c3b5}.market-confidence-chip.is-unknown{color:#71817b}
.market-card-legal{display:flex;align-items:center;gap:4px;min-height:18px;color:#75827d;font-size:7.7px;padding:3px 1px}.market-card-legal i{font-size:9px}
.market-card-actions{display:flex;gap:5px;margin-top:auto}.market-card-actions .btn{min-height:34px!important;padding:6px 7px!important;font-size:9.5px!important;border-radius:9px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.market-card-actions .btn-cta{flex:1.12}.market-card-actions .btn-light{flex:.88}.market-card-actions .btn-icon{flex:0 0 32px!important;width:32px!important;padding:0!important}

/* Group badge inside ordinary detail/list controls remains compact and readable. */
.order-market-group{gap:4px!important;padding:3px 6px!important}.order-market-group small{padding-left:4px;border-left:1px solid rgba(8,123,85,.18)}

@media (min-width:900px) and (max-height:800px){
  #orders .feed .order-card.order-card-market-cluster{height:380px!important;min-height:380px!important;max-height:380px!important}
  .market-card-hero{height:106px;min-height:106px}.market-card-body{height:calc(100% - 106px)}
  .market-card-hero-copy strong{font-size:17px}.market-card-commerce{padding:5px 0}.market-confidence-panel{margin-top:4px;padding-top:5px;padding-bottom:5px}.market-card-legal{min-height:15px;padding:2px 1px}
}

@media (max-width:899px){
  #orders .feed .order-card.order-card-market-cluster{height:auto!important;min-height:0!important;max-height:none!important;width:100%!important}
  .market-card-hero{height:158px;min-height:158px}.market-card-body{height:auto;padding:10px}.market-card-hero-copy strong{font-size:22px}.market-card-hero-copy span{font-size:11px}.market-card-info-row{min-height:31px}.market-info-chip{font-size:9.5px;padding:5px 7px}.market-card-commerce{grid-template-columns:1.2fr 1fr 1fr;padding:9px 0}.market-card-rate strong{font-size:24px}.market-card-kpi>strong{font-size:10px}.market-card-social{font-size:9.5px;padding:7px 0}.market-confidence-panel{grid-template-columns:48px minmax(0,1fr);padding:8px}.market-confidence-ring{width:45px;height:45px}.market-confidence-ring b{font-size:10px}.market-confidence-copy>strong{font-size:11px}.market-confidence-copy>small{font-size:8.5px}.market-confidence-chip{font-size:7.5px}.market-card-actions .btn{min-height:38px!important;font-size:10.5px!important}
}

@media (max-width:560px){
  .market-card-hero{height:145px;min-height:145px}.market-card-top-tags{gap:3px}.market-cluster-badge{order:3;flex-basis:auto}.market-card-hero-copy strong{font-size:21px}.market-card-commerce{grid-template-columns:1fr 1fr}.market-card-rate{grid-column:1/-1;padding-bottom:5px}.market-card-kpi:nth-of-type(2){border-left:0;padding-left:0}.market-card-social{grid-template-columns:1fr}.market-card-social span:last-child{white-space:normal}.market-confidence-panel{grid-template-columns:44px minmax(0,1fr)}.market-confidence-chips{flex-wrap:wrap}.market-card-actions{display:grid;grid-template-columns:1fr}.market-card-actions .btn{width:100%;min-height:42px!important}.market-card-actions .btn-icon{display:none!important}.market-card-legal{font-size:8.2px}
}

@media(prefers-reduced-motion:reduce){#orders .feed .order-card.order-card-market-cluster,.market-confidence-panel{transition:none!important}#orders .feed .order-card.order-card-market-cluster:hover{transform:none}}

/* =========================================================
   GIGZAKAZ 2.13.3 — CARD GRID NORMALIZATION
   One visual system for ordinary / listing / grouped cards.
   ========================================================= */

#orders{
  --gz-card-h:372px;
  --gz-card-media-h:108px;
  --gz-card-radius:16px;
  --gz-card-pad-x:11px;
  --gz-card-gap:10px;
  --gz-card-btn-h:36px;
}

/* Equal geometry for every card type. */
@media (min-width:900px){
  #orders .feed{
    align-items:stretch!important;
    gap:var(--gz-card-gap)!important;
  }
  #orders .feed .order-card,
  #orders .feed .order-card.order-card-visual,
  #orders .feed .order-card.lst-card,
  #orders .feed .order-card.order-card-market-cluster{
    box-sizing:border-box!important;
    height:var(--gz-card-h)!important;
    min-height:var(--gz-card-h)!important;
    max-height:var(--gz-card-h)!important;
    overflow:hidden!important;
    border-radius:var(--gz-card-radius)!important;
    align-self:stretch!important;
  }
  #orders .feed .order-card{
    flex:0 0 calc((100% - 30px)/4)!important;
    width:calc((100% - 30px)/4)!important;
    min-width:0!important;
    max-width:calc((100% - 30px)/4)!important;
  }
  @media (max-width:1240px){
    #orders .feed .order-card{
      flex-basis:calc((100% - 20px)/3)!important;
      width:calc((100% - 20px)/3)!important;
      max-width:calc((100% - 20px)/3)!important;
    }
  }
}

/* Same photo/media baseline. */
#orders .order-card-visual .order-visual,
#orders .feed .lst-card .lst-photo,
#orders .feed .order-card-market-cluster .market-card-hero{
  box-sizing:border-box!important;
  height:var(--gz-card-media-h)!important;
  min-height:var(--gz-card-media-h)!important;
  max-height:var(--gz-card-media-h)!important;
  flex:0 0 var(--gz-card-media-h)!important;
  overflow:hidden!important;
}

/* Grouped hero: tags get own line; route/title get reserved area. */
#orders .market-card-top-tags{
  left:9px!important;
  right:78px!important;
  top:8px!important;
  height:24px!important;
  min-height:24px!important;
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:5px!important;
  overflow:hidden!important;
}
#orders .market-card-top-tags .order-tag,
#orders .market-card-top-tags .order-status{
  box-sizing:border-box!important;
  height:24px!important;
  min-height:24px!important;
  max-height:24px!important;
  display:inline-flex!important;
  align-items:center!important;
  padding:0 8px!important;
  margin:0!important;
  border-radius:8px!important;
  font-size:10.5px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
#orders .market-card-urgent{
  top:8px!important;
  right:8px!important;
  bottom:auto!important;
  height:24px!important;
  min-height:24px!important;
  padding:0 8px!important;
  display:inline-flex!important;
  align-items:center!important;
  font-size:10.5px!important;
}
#orders .market-card-hero-copy{
  left:10px!important;
  right:10px!important;
  bottom:8px!important;
  height:59px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  min-width:0!important;
}
#orders .market-card-hero-copy strong{
  min-height:20px!important;
  max-height:20px!important;
  font-size:17px!important;
  line-height:20px!important;
  font-weight:900!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#orders .market-card-hero-copy span{
  box-sizing:border-box!important;
  min-height:27px!important;
  max-height:27px!important;
  margin-top:3px!important;
  font-size:10.5px!important;
  line-height:13.5px!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  overflow-wrap:anywhere!important;
}

/* One body height for all card types. */
#orders .order-card-body,
#orders .lst-body,
#orders .market-card-body{
  box-sizing:border-box!important;
  height:calc(var(--gz-card-h) - var(--gz-card-media-h))!important;
  min-height:calc(var(--gz-card-h) - var(--gz-card-media-h))!important;
  max-height:calc(var(--gz-card-h) - var(--gz-card-media-h))!important;
  padding:8px var(--gz-card-pad-x) 9px!important;
  overflow:hidden!important;
}

/* Ordinary transport card fixed rhythm. */
#orders .order-card-body{
  display:grid!important;
  grid-template-rows:24px 38px 42px 23px minmax(0,1fr) var(--gz-card-btn-h)!important;
  row-gap:4px!important;
}
#orders .order-card-body .order-tags{
  height:24px!important;
  min-height:24px!important;
  max-height:24px!important;
  margin:0!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  flex-wrap:nowrap!important;
}
#orders .order-card-body .order-tag,
#orders .order-card-body .order-status,
#orders .order-card-body .order-market-group{
  box-sizing:border-box!important;
  min-height:22px!important;
  max-height:22px!important;
  display:inline-flex!important;
  align-items:center!important;
  margin:0!important;
  font-size:10.5px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
#orders .order-card-body .order-sub{
  box-sizing:border-box!important;
  min-height:38px!important;
  max-height:38px!important;
  margin:0!important;
  font-size:12px!important;
  line-height:17px!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  overflow-wrap:anywhere!important;
}
#orders .order-card-body .order-rate{
  box-sizing:border-box!important;
  min-height:42px!important;
  max-height:42px!important;
  margin:0!important;
  display:flex!important;
  align-items:baseline!important;
  align-content:center!important;
  flex-wrap:wrap!important;
  gap:2px 5px!important;
  overflow:hidden!important;
  font-size:21px!important;
  line-height:23px!important;
  font-weight:900!important;
}
#orders .order-card-body .order-rate-open{align-items:center!important}
#orders .order-card-body .order-rate-open-label{
  font-size:17px!important;
  line-height:20px!important;
  font-weight:900!important;
}
#orders .order-card-body .order-unit{
  font-size:10.5px!important;
  line-height:13px!important;
}
#orders .order-card-body .order-meta{
  box-sizing:border-box!important;
  min-height:23px!important;
  max-height:23px!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  font-size:11px!important;
  line-height:1!important;
}
#orders .order-card-body .order-actions{
  grid-row:6!important;
  box-sizing:border-box!important;
  height:var(--gz-card-btn-h)!important;
  min-height:var(--gz-card-btn-h)!important;
  max-height:var(--gz-card-btn-h)!important;
  padding:0!important;
  margin:0!important;
  align-self:end!important;
}

/* Listing/resource card fixed rhythm. */
#orders .feed .lst-card .lst-body{
  display:grid!important;
  grid-template-rows:24px 38px 25px 42px 21px 23px minmax(0,1fr) var(--gz-card-btn-h)!important;
  row-gap:3px!important;
}
#orders .lst-body .order-tags{
  height:24px!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:5px!important;
  overflow:hidden!important;
}
#orders .lst-body .order-tag,
#orders .lst-body .order-status,
#orders .lst-body .order-market-group{
  min-height:22px!important;
  max-height:22px!important;
  display:inline-flex!important;
  align-items:center!important;
  font-size:10.5px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
#orders .lst-title{
  box-sizing:border-box!important;
  min-height:38px!important;
  max-height:38px!important;
  margin:0!important;
  font-size:16px!important;
  line-height:19px!important;
  font-weight:850!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  overflow-wrap:anywhere!important;
}
#orders .lst-chips{
  box-sizing:border-box!important;
  min-height:25px!important;
  max-height:25px!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:4px!important;
  overflow:hidden!important;
}
#orders .lst-chip{
  min-height:21px!important;
  max-height:21px!important;
  display:inline-flex!important;
  align-items:center!important;
  padding:0 6px!important;
  font-size:10px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
#orders .lst-body .order-rate{
  box-sizing:border-box!important;
  min-height:42px!important;
  max-height:42px!important;
  margin:0!important;
  display:flex!important;
  align-items:baseline!important;
  flex-wrap:wrap!important;
  gap:2px 5px!important;
  overflow:hidden!important;
  font-size:21px!important;
  line-height:23px!important;
}
#orders .lst-city{
  box-sizing:border-box!important;
  min-height:21px!important;
  max-height:21px!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  font-size:10.5px!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#orders .lst-body .order-meta{
  box-sizing:border-box!important;
  min-height:23px!important;
  max-height:23px!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  font-size:11px!important;
}
#orders .lst-body>.order-actions{
  grid-row:8!important;
  box-sizing:border-box!important;
  height:var(--gz-card-btn-h)!important;
  min-height:var(--gz-card-btn-h)!important;
  max-height:var(--gz-card-btn-h)!important;
  padding:0!important;
  margin:0!important;
  align-self:end!important;
}

/* Grouped card fixed non-overlapping zones. */
#orders .market-card-body{
  display:grid!important;
  grid-template-rows:22px 25px 60px 20px 46px 13px var(--gz-card-btn-h)!important;
  row-gap:4px!important;
}
#orders .market-card-cluster-row{
  box-sizing:border-box!important;
  min-height:22px!important;
  max-height:22px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:6px!important;
  min-width:0!important;
  overflow:hidden!important;
}
#orders .market-cluster-badge{
  box-sizing:border-box!important;
  min-width:0!important;
  height:22px!important;
  min-height:22px!important;
  max-height:22px!important;
  display:inline-flex!important;
  align-items:center!important;
  padding:0 7px!important;
  border-radius:7px!important;
  background:#eaf8f2!important;
  color:#087856!important;
  box-shadow:none!important;
  font-size:9.5px!important;
  line-height:1!important;
  font-weight:850!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#orders .market-card-cluster-open{
  flex:0 0 auto!important;
  height:22px!important;
  padding:0 2px 0 5px!important;
  border:0!important;
  background:transparent!important;
  color:#087856!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:800!important;
  white-space:nowrap!important;
  cursor:pointer!important;
}
#orders .market-card-cluster-open i{font-size:10px!important}

#orders .market-card-info-row{
  box-sizing:border-box!important;
  height:25px!important;
  min-height:25px!important;
  max-height:25px!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:4px!important;
  overflow:hidden!important;
}
#orders .market-info-chip{
  box-sizing:border-box!important;
  max-width:none!important;
  width:100%!important;
  height:25px!important;
  min-height:25px!important;
  max-height:25px!important;
  padding:0 5px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  font-size:9px!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#orders .market-info-chip i{font-size:10px!important}

#orders .market-card-commerce{
  box-sizing:border-box!important;
  height:60px!important;
  min-height:60px!important;
  max-height:60px!important;
  margin:0!important;
  padding:4px 0!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  grid-template-rows:28px 24px!important;
  gap:2px 6px!important;
  border-top:1px solid #edf1ef!important;
  border-bottom:1px solid #edf1ef!important;
  overflow:hidden!important;
}
#orders .market-card-rate{
  grid-column:1/-1!important;
  box-sizing:border-box!important;
  height:28px!important;
  min-height:28px!important;
  max-height:28px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:baseline!important;
  gap:5px!important;
  overflow:hidden!important;
}
#orders .market-card-rate strong{
  flex:0 1 auto!important;
  min-width:0!important;
  font-size:19px!important;
  line-height:21px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#orders .market-card-rate>span{
  min-width:0!important;
  margin:0!important;
  font-size:8.8px!important;
  line-height:11px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#orders .market-card-rate small{
  margin:0 0 0 auto!important;
  flex:0 0 auto!important;
  font-size:8px!important;
  line-height:10px!important;
  white-space:nowrap!important;
}
#orders .market-card-rate-open strong{font-size:13px!important;line-height:15px!important}

#orders .market-card-kpi{
  box-sizing:border-box!important;
  min-width:0!important;
  height:24px!important;
  min-height:24px!important;
  max-height:24px!important;
  display:grid!important;
  grid-template-columns:14px minmax(0,1fr)!important;
  grid-template-rows:10px 14px!important;
  column-gap:4px!important;
  align-content:center!important;
  padding:0!important;
  border-left:0!important;
  overflow:hidden!important;
}
#orders .market-card-kpi:first-of-type{
  padding-right:6px!important;
  border-right:1px solid #e6ebe9!important;
}
#orders .market-card-kpi>i{
  grid-row:1/3!important;
  align-self:center!important;
  font-size:12px!important;
}
#orders .market-card-kpi>span{
  min-width:0!important;
  font-size:7.5px!important;
  line-height:9px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#orders .market-card-kpi>strong{
  min-width:0!important;
  margin:0!important;
  font-size:9.2px!important;
  line-height:12px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

#orders .market-card-social{
  box-sizing:border-box!important;
  height:20px!important;
  min-height:20px!important;
  max-height:20px!important;
  padding:0!important;
  margin:0!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  gap:8px!important;
  align-items:center!important;
  border-bottom:1px solid #edf1ef!important;
  font-size:9px!important;
  overflow:hidden!important;
}
#orders .market-card-social span{
  min-width:0!important;
  height:21px!important;
  display:flex!important;
  align-items:center!important;
  gap:3px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#orders .market-card-social i{font-size:11px!important}

#orders .market-confidence-panel{
  box-sizing:border-box!important;
  width:100%!important;
  height:46px!important;
  min-height:46px!important;
  max-height:46px!important;
  margin:0!important;
  padding:5px 7px!important;
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr)!important;
  gap:6px!important;
  align-items:center!important;
  overflow:hidden!important;
  border-radius:10px!important;
}
#orders .market-confidence-ring{width:36px!important;height:36px!important}
#orders .market-confidence-ring::after{inset:5px!important}
#orders .market-confidence-ring b{font-size:8px!important;line-height:1!important}
#orders .market-confidence-copy{
  min-width:0!important;
  height:36px!important;
  display:grid!important;
  grid-template-rows:11px 10px 13px!important;
  row-gap:1px!important;
  align-content:center!important;
  overflow:hidden!important;
}
#orders .market-confidence-copy>strong{
  min-width:0!important;
  font-size:9.7px!important;
  line-height:12px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#orders .market-confidence-copy>small{
  min-width:0!important;
  margin:0!important;
  font-size:7.4px!important;
  line-height:10px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#orders .market-confidence-chips{
  height:14px!important;
  min-height:14px!important;
  max-height:14px!important;
  margin:0!important;
  align-items:center!important;
  gap:3px!important;
  flex-wrap:nowrap!important;
  overflow:hidden!important;
}
#orders .market-confidence-chip{
  box-sizing:border-box!important;
  height:14px!important;
  min-height:14px!important;
  max-height:14px!important;
  padding:0 4px!important;
  font-size:6.8px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
#orders .market-confidence-chip i{font-size:6.8px!important}

#orders .market-card-legal{
  box-sizing:border-box!important;
  height:13px!important;
  min-height:13px!important;
  max-height:13px!important;
  padding:0!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  gap:3px!important;
  color:#74827d!important;
  font-size:7.5px!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#orders .market-card-legal i{font-size:8px!important}

#orders .market-card-actions{
  box-sizing:border-box!important;
  height:var(--gz-card-btn-h)!important;
  min-height:var(--gz-card-btn-h)!important;
  max-height:var(--gz-card-btn-h)!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,.88fr)!important;
  gap:5px!important;
  align-self:end!important;
}
#orders .market-card-actions .btn,
#orders .order-actions .btn{
  box-sizing:border-box!important;
  height:var(--gz-card-btn-h)!important;
  min-height:var(--gz-card-btn-h)!important;
  max-height:var(--gz-card-btn-h)!important;
  padding:0 8px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:9px!important;
  font-size:11px!important;
  line-height:1.05!important;
  font-weight:800!important;
  text-align:center!important;
  white-space:normal!important;
  overflow:hidden!important;
}
#orders .market-card-actions .btn-icon,
#orders .order-actions .btn-icon{
  width:36px!important;
  min-width:36px!important;
  max-width:36px!important;
  padding:0!important;
}

#orders .order-tag,
#orders .order-status{font-size:10.5px!important}
#orders .order-meta{color:#5f716a!important}
#orders .order-meta i{font-size:12px!important}

/* Low laptop. */
@media (min-width:900px) and (max-height:800px){
  #orders{
    --gz-card-h:356px;
    --gz-card-media-h:100px;
    --gz-card-btn-h:34px;
  }
  #orders .market-card-body{
    grid-template-rows:21px 24px 56px 20px 44px 12px var(--gz-card-btn-h)!important;
    row-gap:3px!important;
  }
  #orders .market-card-commerce{height:56px!important;min-height:56px!important;max-height:56px!important}
  #orders .market-confidence-panel{height:44px!important;min-height:44px!important;max-height:44px!important}
  #orders .market-card-hero-copy strong{font-size:16px!important}
}

/* Tablet. */
@media (min-width:561px) and (max-width:899px){
  #orders{
    --gz-card-h:380px;
    --gz-card-media-h:112px;
    --gz-card-btn-h:38px;
  }
  #orders .feed{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  #orders .feed .order-card,
  #orders .feed .order-card.order-card-visual,
  #orders .feed .order-card.lst-card,
  #orders .feed .order-card.order-card-market-cluster{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    height:var(--gz-card-h)!important;
    min-height:var(--gz-card-h)!important;
    max-height:var(--gz-card-h)!important;
    overflow:hidden!important;
  }
  #orders .order-card-visual .order-visual,
  #orders .feed .lst-card .lst-photo,
  #orders .feed .order-card-market-cluster .market-card-hero{
    height:var(--gz-card-media-h)!important;
    min-height:var(--gz-card-media-h)!important;
    max-height:var(--gz-card-media-h)!important;
    flex-basis:var(--gz-card-media-h)!important;
  }
  #orders .order-card-body,
  #orders .lst-body,
  #orders .market-card-body{
    height:calc(var(--gz-card-h) - var(--gz-card-media-h))!important;
    min-height:calc(var(--gz-card-h) - var(--gz-card-media-h))!important;
    max-height:calc(var(--gz-card-h) - var(--gz-card-media-h))!important;
  }
}

/* Smartphone. */
@media (max-width:560px){
  #orders{
    --gz-card-h:410px;
    --gz-card-media-h:118px;
    --gz-card-btn-h:42px;
    --gz-card-pad-x:10px;
  }
  #orders .feed{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  #orders .feed .order-card,
  #orders .feed .order-card.order-card-visual,
  #orders .feed .order-card.lst-card,
  #orders .feed .order-card.order-card-market-cluster{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    height:var(--gz-card-h)!important;
    min-height:var(--gz-card-h)!important;
    max-height:var(--gz-card-h)!important;
    overflow:hidden!important;
  }
  #orders .order-card-visual .order-visual,
  #orders .feed .lst-card .lst-photo,
  #orders .feed .order-card-market-cluster .market-card-hero{
    height:var(--gz-card-media-h)!important;
    min-height:var(--gz-card-media-h)!important;
    max-height:var(--gz-card-media-h)!important;
    flex-basis:var(--gz-card-media-h)!important;
  }
  #orders .order-card-body,
  #orders .lst-body,
  #orders .market-card-body{
    height:calc(var(--gz-card-h) - var(--gz-card-media-h))!important;
    min-height:calc(var(--gz-card-h) - var(--gz-card-media-h))!important;
    max-height:calc(var(--gz-card-h) - var(--gz-card-media-h))!important;
  }
  #orders .market-card-body{
    grid-template-rows:22px 27px 68px 22px 50px 14px var(--gz-card-btn-h)!important;
    row-gap:4px!important;
  }
  #orders .market-card-commerce{
    height:68px!important;
    min-height:68px!important;
    max-height:68px!important;
    grid-template-rows:32px 28px!important;
  }
  #orders .market-card-rate{height:32px!important;min-height:32px!important;max-height:32px!important}
  #orders .market-card-rate strong{font-size:20px!important}
  #orders .market-card-social{height:22px!important;min-height:22px!important;max-height:22px!important}
  #orders .market-confidence-panel{height:50px!important;min-height:50px!important;max-height:50px!important}
  #orders .market-card-actions{
    height:var(--gz-card-btn-h)!important;
    min-height:var(--gz-card-btn-h)!important;
    max-height:var(--gz-card-btn-h)!important;
    grid-template-columns:1.15fr .85fr!important;
  }
  #orders .market-card-actions .btn,
  #orders .order-actions .btn{
    height:var(--gz-card-btn-h)!important;
    min-height:var(--gz-card-btn-h)!important;
    max-height:var(--gz-card-btn-h)!important;
    font-size:11px!important;
  }
  #orders .market-card-actions .btn-icon,
  #orders .order-actions .btn-icon{display:none!important}
  #orders .market-card-hero-copy strong{font-size:17px!important}
  #orders .market-card-hero-copy span{font-size:10px!important}
}

@media(prefers-reduced-motion:reduce){
  #orders .feed .order-card,
  #orders .market-confidence-panel{
    transition:none!important;
    animation:none!important;
  }
}

/* =========================================================
   GIGZAKAZ 2.13.4 — INNER BLOCK COMPACTNESS + NO OVERLAP
   Card + exact-demand modal + order details + respond modal.
   ========================================================= */

/* ---------- Grouped card: less density, no text collision ---------- */
#orders .order-card-market-cluster .market-card-body{
  grid-template-rows:22px 25px 58px 20px 38px 13px var(--gz-card-btn-h)!important;
  row-gap:4px!important;
}
#orders .order-card-market-cluster .market-card-commerce{
  height:58px!important;
  min-height:58px!important;
  max-height:58px!important;
  grid-template-rows:30px 22px!important;
  padding:3px 0!important;
}
#orders .order-card-market-cluster .market-card-rate{
  height:30px!important;
  min-height:30px!important;
  max-height:30px!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  grid-template-rows:16px 12px!important;
  align-items:center!important;
  column-gap:5px!important;
  overflow:hidden!important;
}
#orders .order-card-market-cluster .market-card-rate strong{
  grid-row:1/3!important;
  align-self:center!important;
  max-width:110px!important;
  font-size:18px!important;
  line-height:20px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#orders .order-card-market-cluster .market-card-rate>span{
  align-self:end!important;
  min-width:0!important;
  font-size:8.5px!important;
  line-height:10px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#orders .order-card-market-cluster .market-card-rate>small{
  grid-column:2!important;
  align-self:start!important;
  margin:0!important;
  min-width:0!important;
  font-size:7.8px!important;
  line-height:9px!important;
  color:#6a7b75!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#orders .order-card-market-cluster .market-card-kpi{
  height:22px!important;
  min-height:22px!important;
  max-height:22px!important;
  grid-template-columns:12px minmax(0,1fr)!important;
  grid-template-rows:8px 12px!important;
  column-gap:3px!important;
}
#orders .order-card-market-cluster .market-card-kpi>i{font-size:10px!important}
#orders .order-card-market-cluster .market-card-kpi>span{
  font-size:6.9px!important;
  line-height:8px!important;
}
#orders .order-card-market-cluster .market-card-kpi>strong{
  font-size:8.7px!important;
  line-height:11px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#orders .order-card-market-cluster .market-card-social{
  height:20px!important;
  min-height:20px!important;
  max-height:20px!important;
  font-size:8.5px!important;
}
#orders .order-card-market-cluster .market-card-social span{
  height:19px!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#orders .market-confidence-compact{
  box-sizing:border-box!important;
  width:100%!important;
  height:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  padding:4px 7px!important;
  display:grid!important;
  grid-template-columns:36px minmax(0,1fr) auto!important;
  gap:6px!important;
  align-items:center!important;
  border:1px solid #b8e6d2!important;
  border-radius:9px!important;
  background:linear-gradient(135deg,#f3fbf7,#fff)!important;
  overflow:hidden!important;
}
#orders .market-confidence-score{
  width:32px!important;
  height:32px!important;
  display:grid!important;
  place-items:center!important;
  border:3px solid #08ad73!important;
  border-radius:50%!important;
  color:#07815a!important;
  background:#fff!important;
  font-size:8.7px!important;
  line-height:1!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
#orders .market-confidence-compact .market-confidence-copy{
  min-width:0!important;
  height:auto!important;
  display:block!important;
  overflow:hidden!important;
}
#orders .market-confidence-compact .market-confidence-copy strong{
  display:block!important;
  min-width:0!important;
  font-size:9.2px!important;
  line-height:11px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#orders .market-confidence-compact .market-confidence-copy small{
  display:block!important;
  margin-top:1px!important;
  min-width:0!important;
  font-size:7.7px!important;
  line-height:9px!important;
  color:#63756e!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#orders .market-confidence-open{
  display:inline-flex!important;
  align-items:center!important;
  gap:2px!important;
  color:#087d58!important;
  font-size:7.8px!important;
  font-weight:850!important;
  white-space:nowrap!important;
}
#orders .market-confidence-open i{font-size:8px!important}
#orders .market-confidence-ring,
#orders .market-confidence-chips{display:none!important}
#orders .order-card-market-cluster .market-card-actions .btn{
  font-size:10.5px!important;
  line-height:1.05!important;
  padding:0 6px!important;
}
#orders .order-card-market-cluster .market-card-actions{
  grid-template-columns:1fr 1fr!important;
}
#orders .order-card-market-cluster .market-card-legal{
  font-size:7.2px!important;
}

/* Keep all normal cards on the same type scale. */
#orders .order-card:not(.order-card-market-cluster) .order-rate,
#orders .lst-card .order-rate{
  font-variant-numeric:tabular-nums;
}
#orders .order-card .btn{
  letter-spacing:0!important;
}

/* ---------- Exact-demand comparison modal ---------- */
.modal.modal-market-demand{
  width:min(980px,calc(100vw - 28px))!important;
  max-width:980px!important;
  max-height:min(760px,calc(100dvh - 24px))!important;
}
.market-demand-head{
  min-height:48px!important;
  padding:8px 12px!important;
}
.market-demand-head .modal-title{
  font-size:16px!important;
  line-height:1.15!important;
}
.market-demand-head-sub{
  font-size:9.8px!important;
  line-height:1.2!important;
  max-width:820px!important;
}
.market-demand-body{
  padding:8px 10px!important;
}
.market-demand-hero{
  grid-template-columns:minmax(0,1fr) minmax(260px,310px)!important;
  gap:6px!important;
  margin-bottom:6px!important;
}
.market-demand-copy,
.market-demand-rate{
  min-width:0!important;
  padding:8px 10px!important;
  border-radius:10px!important;
}
.market-demand-tags{gap:4px!important;margin-bottom:4px!important}
.market-exact-chip,
.market-safe-chip{
  padding:3px 6px!important;
  font-size:8.5px!important;
  line-height:1!important;
}
.market-demand-copy h3{
  font-size:16px!important;
  line-height:1.1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.market-demand-copy p{
  margin-top:3px!important;
  font-size:9.8px!important;
  line-height:1.2!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
.market-demand-rate>span{font-size:8px!important}
.market-demand-rate strong{
  margin-top:3px!important;
  font-size:15px!important;
  line-height:1.15!important;
  overflow-wrap:anywhere!important;
}
.market-demand-rate small{
  margin-top:2px!important;
  font-size:8.5px!important;
  line-height:1.2!important;
}
.market-demand-kpis{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:4px!important;
  margin-bottom:6px!important;
}
.market-demand-kpis>div{
  min-height:42px!important;
  padding:5px 7px!important;
  border-radius:8px!important;
}
.market-demand-kpis span{font-size:7.5px!important;line-height:9px!important}
.market-demand-kpis strong{
  margin-top:1px!important;
  font-size:10.5px!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.market-demand-warning{
  gap:6px!important;
  margin-bottom:6px!important;
  padding:6px 8px!important;
  border-radius:9px!important;
}
.market-demand-warning>i{font-size:13px!important}
.market-demand-warning strong{font-size:9.3px!important}
.market-demand-warning span{
  margin-top:1px!important;
  font-size:8.6px!important;
  line-height:1.25!important;
}
.market-demand-list-head{
  margin:0 1px 4px!important;
}
.market-demand-list-head strong{font-size:10.8px!important}
.market-demand-list-head div>span,
.market-demand-list-head>span{font-size:8.5px!important}
.market-demand-list{gap:4px!important}
.market-demand-publication{
  grid-template-columns:24px minmax(0,1fr) minmax(125px,150px) 82px!important;
  gap:6px!important;
  padding:6px 7px!important;
  border-radius:9px!important;
}
.market-publication-index{
  width:22px!important;height:22px!important;
  font-size:9px!important;
}
.market-publication-top{gap:4px!important}
.market-publication-main strong{font-size:10px!important}
.market-publication-main>span{
  margin-top:1px!important;
  font-size:9.5px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.market-publication-main>small{
  margin-top:1px!important;
  font-size:8.2px!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.market-current-chip,.market-role-chip{
  padding:2px 4px!important;
  font-size:7.2px!important;
}
.market-publication-rate{
  font-size:10.5px!important;
  line-height:1.1!important;
}
.market-publication-rate small{
  font-size:7.5px!important;
  line-height:1.1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.market-rate-position{
  margin-top:2px!important;
  font-size:7px!important;
}
.market-demand-publication>.btn{
  width:82px!important;
  min-width:82px!important;
  height:32px!important;
  min-height:32px!important;
  padding:0 8px!important;
  font-size:10px!important;
}
.market-demand-foot{
  min-height:44px!important;
  padding:5px 10px!important;
}
.market-demand-foot .btn{
  min-height:32px!important;
  height:32px!important;
  padding:0 11px!important;
  font-size:10.5px!important;
}

/* ---------- Order details modal ---------- */
.modal.modal-order-decision-v3{
  width:min(1120px,calc(100vw - 28px))!important;
  max-width:1120px!important;
  max-height:min(760px,calc(100dvh - 24px))!important;
}
.modal-order-decision-v3 .order-decision-head{
  min-height:46px!important;
  padding:7px 11px!important;
}
.modal-order-decision-v3 .modal-title{
  font-size:13.5px!important;
  line-height:1.15!important;
}
.modal-order-decision-v3 .order-head-sub{
  margin-top:2px!important;
  font-size:12px!important;
  line-height:1.3!important;
  display:-webkit-box!important;
  -webkit-line-clamp:1!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
.modal-order-decision-v3 .order-decision-body{
  padding:7px 9px 6px!important;
}
.decision-summary-v3{
  grid-template-columns:minmax(0,1fr) minmax(245px,285px)!important;
  gap:5px!important;
  margin-bottom:5px!important;
}
.decision-summary-v3 .decision-summary-main,
.decision-summary-v3 .decision-rate{
  min-width:0!important;
  padding:7px 9px!important;
  border-radius:10px!important;
}
.decision-summary-v3 .decision-tags{
  display:flex!important;
  gap:4px!important;
  flex-wrap:wrap!important;
  margin-bottom:3px!important;
}
.decision-summary-v3 .detail-tag,
.decision-summary-v3 .order-status-chip{
  min-height:24px!important;
  padding:0 8px!important;
  display:inline-flex!important;
  align-items:center!important;
  font-size:11px!important;
  line-height:1!important;
}
.decision-summary-v3 .decision-title{
  font-size:16px!important;
  line-height:1.12!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.decision-rate-v3 .decision-label{font-size:11px!important}
.decision-rate-v3 .order-rate,
.decision-rate-v3 .order-rate-open{
  margin-top:2px!important;
  font-size:17px!important;
  line-height:1.12!important;
}
.decision-rate-v3 small{
  margin-top:3px!important;
  font-size:11px!important;
  line-height:1.3!important;
}
.decision-metrics-v3{
  /* Пять показателей: расстояние с 14.09.2026 стоит на маршруте между точками. */
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:4px!important;
}
.decision-metrics-v3 .decision-metric{
  min-height:50px!important;
  padding:6px 8px!important;
  border-radius:8px!important;
}
.decision-metrics-v3 span{font-size:11px!important;line-height:13px!important}
.decision-metrics-v3 strong{
  margin-top:2px!important;
  font-size:13px!important;
  line-height:1.25!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  overflow-wrap:anywhere!important;
}
.market-demand-signal{
  min-height:42px!important;
  padding:6px 8px!important;
  gap:6px!important;
  margin:0 0 5px!important;
  border-radius:9px!important;
}
.market-demand-signal-icon{
  width:28px!important;height:28px!important;
  border-radius:8px!important;
  font-size:13px!important;
}
.market-demand-signal-copy strong{font-size:9.8px!important;line-height:1.15!important}
.market-demand-signal-copy small{font-size:8.2px!important;line-height:1.15!important}
.decision-layout-v3{
  grid-template-columns:minmax(0,1fr) minmax(300px,320px)!important;
  gap:6px!important;
}
.decision-main-v3{gap:5px!important}
.decision-main-v3 .decision-section{
  padding:7px 8px!important;
  border-radius:9px!important;
}
.decision-main-v3 .decision-section-title{
  margin-bottom:4px!important;
  font-size:10.8px!important;
  line-height:1.1!important;
}
.decision-params-all{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:4px!important;
}
.decision-params-all .decision-param{
  min-height:42px!important;
  padding:5px 7px!important;
  border-radius:8px!important;
  overflow:hidden!important;
}
.decision-params-all .decision-param span{font-size:11px!important;line-height:13px!important}
.decision-params-all .decision-param strong{
  margin-top:2px!important;
  font-size:13px!important;
  line-height:1.25!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
.decision-notes-all{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:4px!important;
}
.decision-notes-all .decision-note{
  min-width:0!important;
  padding:5px 7px!important;
  border-radius:8px!important;
  overflow:hidden!important;
}
.decision-notes-all .decision-note span{font-size:11px!important}
.decision-notes-all .decision-note p{
  margin-top:3px!important;
  font-size:12.5px!important;
  line-height:1.35!important;
  display:-webkit-box!important;
  -webkit-line-clamp:3!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  overflow-wrap:anywhere!important;
}
.decision-details>summary{
  min-height:36px!important;
  padding:6px 8px!important;
  border-radius:8px!important;
  font-size:12.5px!important;
}
.decision-details>summary small{font-size:11px!important}
.decision-offer-v3{
  position:sticky!important;
  top:0!important;
  padding:7px 8px!important;
  border-radius:10px!important;
}
.decision-offer-v3 .decision-offer-head{
  align-items:flex-start!important;
  gap:5px!important;
  margin-bottom:5px!important;
}
.decision-offer-v3 .decision-offer-title{font-size:12.5px!important;line-height:1.1!important}
.decision-offer-v3 .decision-offer-sub{font-size:11px!important;line-height:1.3!important}
.decision-offer-v3 .decision-quick-rate{
  flex:0 0 auto!important;
  max-width:160px!important;
  min-height:32px!important;
  padding:4px 9px!important;
  font-size:11.5px!important;
  line-height:1.1!important;
}
.decision-offer-v3 .decision-offer-form{gap:4px!important}
.decision-offer-v3 .form-field label{font-size:12px!important;margin-bottom:4px!important}
.decision-offer-v3 .field-dark{
  min-height:40px!important;
  padding:6px 9px!important;
  font-size:14px!important;
  border-radius:8px!important;
}
.decision-offer-v3 textarea.field-dark{
  min-height:48px!important;
  max-height:72px!important;
}
.decision-offer-v3 .decision-input-wrap{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:2px!important;
}
.decision-offer-v3 .decision-input-wrap>span{
  font-size:8px!important;
  line-height:1.15!important;
  max-height:20px!important;
  overflow:hidden!important;
}
.decision-offer-v3 .decision-term-chips{
  display:flex!important;
  gap:3px!important;
}
.decision-offer-v3 .decision-term-chips button{
  min-height:20px!important;
  padding:2px 6px!important;
  font-size:7.8px!important;
}
.decision-offer-v3 .decision-offer-hint{
  padding:4px 6px!important;
  font-size:8.1px!important;
  line-height:1.15!important;
}
.decision-offer-v3 .decision-submit{
  min-height:40px!important;
  height:40px!important;
  padding:0 12px!important;
  font-size:13px!important;
}
.modal-order-decision-v3 .order-decision-foot{
  min-height:42px!important;
  padding:5px 9px!important;
  gap:5px!important;
  flex-wrap:nowrap!important;
}
.modal-order-decision-v3 .order-decision-foot .btn{
  min-height:32px!important;
  height:32px!important;
  padding:0 9px!important;
  font-size:10px!important;
  white-space:nowrap!important;
}
.modal-order-decision-v3 .order-decision-foot #dt-respond{
  margin-left:auto!important;
}

/* ---------- Compact response modal ---------- */
.modal.modal-order-respond-v4{
  width:min(760px,calc(100vw - 28px))!important;
  max-width:760px!important;
  max-height:min(620px,calc(100dvh - 24px))!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  overflow:hidden!important;
}
.respond-head-v4{
  min-height:46px!important;
  padding:8px 11px!important;
}
.respond-head-v4>div{min-width:0!important}
.respond-head-v4 .modal-title{
  font-size:14px!important;
  line-height:1.15!important;
}
.respond-head-route{
  display:block!important;
  margin-top:2px!important;
  color:var(--ink-dim)!important;
  font-size:9.5px!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.respond-body-v4{
  padding:8px 10px!important;
  overflow:auto!important;
}
.respond-summary-v4{
  display:grid!important;
  grid-template-columns:1.2fr .65fr .85fr 1.3fr!important;
  gap:4px!important;
  margin-bottom:7px!important;
}
.respond-summary-v4>div{
  min-width:0!important;
  min-height:42px!important;
  padding:5px 7px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  border:1px solid var(--line)!important;
  border-radius:8px!important;
  background:#f8faf9!important;
  overflow:hidden!important;
}
.respond-summary-v4 span{
  color:var(--ink-dim)!important;
  font-size:7.2px!important;
  line-height:8px!important;
  font-weight:800!important;
  text-transform:uppercase!important;
}
.respond-summary-v4 strong{
  margin-top:2px!important;
  font-size:9.8px!important;
  line-height:1.15!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  overflow-wrap:anywhere!important;
}
.respond-grid-v4{
  grid-template-columns:1fr 1fr!important;
  gap:7px!important;
}
.respond-grid-v4 .form-field{
  min-width:0!important;
}
.respond-grid-v4 .form-field label{
  font-size:9.5px!important;
  margin-bottom:3px!important;
}
.respond-grid-v4 .field-dark{
  min-height:34px!important;
  padding:6px 8px!important;
  font-size:11.5px!important;
  border-radius:8px!important;
}
.respond-grid-v4 textarea.field-dark{
  min-height:60px!important;
  max-height:90px!important;
  resize:vertical!important;
}
.respond-field-context{
  display:block!important;
  margin-top:3px!important;
  color:var(--ink-dim)!important;
  font-size:8.2px!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.respond-hint-v4{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  margin-top:7px!important;
  padding:5px 7px!important;
  border-radius:8px!important;
  background:#eff9f4!important;
  color:#507267!important;
  font-size:8.6px!important;
  line-height:1.2!important;
}
.respond-hint-v4 i{color:#00a86b!important}
.respond-foot-v4{
  min-height:44px!important;
  padding:6px 10px!important;
  gap:6px!important;
  flex-wrap:nowrap!important;
}
.respond-foot-v4 .btn{
  min-height:32px!important;
  height:32px!important;
  padding:0 11px!important;
  font-size:10.5px!important;
}

/* ---------- Tablet ---------- */
@media (min-width:641px) and (max-width:899px){
  .modal.modal-market-demand,
  .modal.modal-order-decision-v3,
  .modal.modal-order-respond-v4{
    width:min(820px,calc(100vw - 14px))!important;
    max-width:820px!important;
    max-height:calc(100dvh - 12px)!important;
  }
  .market-demand-hero{grid-template-columns:1fr!important}
  .market-demand-kpis{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .decision-summary-v3{grid-template-columns:1fr minmax(220px,250px)!important}
  .decision-metrics-v3{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .decision-layout-v3{
    grid-template-columns:1fr!important;
    grid-template-areas:"offer" "main"!important;
  }
  .decision-offer-v3{
    grid-area:offer!important;
    position:relative!important;
  }
  .decision-main-v3{grid-area:main!important}
  .decision-offer-v3 .decision-offer-form{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:5px!important;
  }
  .decision-offer-v3 .decision-price-field,
  .decision-offer-v3 .decision-offer-hint,
  .decision-offer-v3 .decision-submit{
    grid-column:1/-1!important;
  }
  .respond-summary-v4{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* ---------- Smartphone ---------- */
@media (max-width:640px){
  .modal-overlay:has(.modal-market-demand),
  .modal-overlay:has(.modal-order-decision-v3),
  .modal-overlay:has(.modal-order-respond-v4){
    padding:4px!important;
    align-items:flex-end!important;
  }
  .modal.modal-market-demand,
  .modal.modal-order-decision-v3,
  .modal.modal-order-respond-v4{
    width:100%!important;
    max-width:none!important;
    max-height:calc(100dvh - 8px)!important;
    border-radius:14px 14px 7px 7px!important;
  }

  .market-demand-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .market-demand-publication{
    grid-template-columns:22px minmax(0,1fr)!important;
    gap:5px!important;
  }
  .market-publication-rate{
    grid-column:2!important;
    text-align:left!important;
  }
  .market-demand-publication>.btn{
    grid-column:1/-1!important;
    grid-row:auto!important;
    width:100%!important;
    min-width:0!important;
  }

  .decision-summary-v3{grid-template-columns:1fr!important}
  .decision-metrics-v3{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .decision-layout-v3{
    grid-template-columns:1fr!important;
    grid-template-areas:"offer" "main"!important;
  }
  .decision-offer-v3{
    grid-area:offer!important;
    position:relative!important;
  }
  .decision-main-v3{grid-area:main!important}
  .decision-params-all,
  .decision-notes-all{
    grid-template-columns:1fr!important;
  }
  .modal-order-decision-v3 .order-decision-foot .decision-secondary{
    display:none!important;
  }
  .modal-order-decision-v3 .order-decision-foot #dt-close{
    flex:0 0 auto!important;
  }
  .modal-order-decision-v3 .order-decision-foot #dt-respond{
    flex:1 1 auto!important;
    min-width:0!important;
  }

  .respond-summary-v4{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .respond-grid-v4{
    grid-template-columns:1fr!important;
    gap:5px!important;
  }
  .respond-grid-v4 .full{grid-column:1!important}
  .respond-foot-v4 .btn{
    flex:1 1 0!important;
    min-width:0!important;
  }
}

/* Very narrow phones: prevent any long text from forcing width. */
@media (max-width:390px){
  .respond-summary-v4{grid-template-columns:1fr!important}
  .market-demand-kpis{grid-template-columns:1fr 1fr!important}
  .decision-metrics-v3{grid-template-columns:1fr 1fr!important}
}

@media(prefers-reduced-motion:reduce){
  .modal-market-demand *,
  .modal-order-decision-v3 *,
  .modal-order-respond-v4 *{
    scroll-behavior:auto!important;
    transition:none!important;
  }
}

/* =========================================================
   GIGZAKAZ 2.13.5 — RESPONSE ROUTE + DISTANCE
   ========================================================= */
.modal.modal-order-respond-v5{
  width:min(820px,calc(100vw - 28px))!important;
  max-width:820px!important;
  max-height:min(650px,calc(100dvh - 24px))!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  overflow:hidden!important;
}
.respond-head-v5{min-height:46px!important;padding:8px 11px!important}
.respond-head-v5>div{min-width:0!important}
.respond-head-v5 .modal-title{font-size:14px!important;line-height:1.15!important}
.respond-head-sub{
  display:block!important;margin-top:2px!important;color:var(--ink-dim)!important;
  font-size:9.5px!important;line-height:1.15!important;white-space:nowrap!important;
  overflow:hidden!important;text-overflow:ellipsis!important;
}
.respond-body-v5{padding:8px 10px!important;overflow:auto!important}

.respond-summary-v5{
  display:grid!important;grid-template-columns:1.15fr .7fr .85fr 1.25fr!important;
  gap:4px!important;margin-bottom:7px!important;
}
.respond-summary-v5>div{
  min-width:0!important;min-height:40px!important;padding:5px 7px!important;
  display:flex!important;flex-direction:column!important;justify-content:center!important;
  border:1px solid var(--line)!important;border-radius:8px!important;background:#f8faf9!important;overflow:hidden!important;
}
.respond-summary-v5 span{
  color:var(--ink-dim)!important;font-size:7px!important;line-height:8px!important;
  font-weight:800!important;text-transform:uppercase!important;
}
.respond-summary-v5 strong{
  margin-top:2px!important;font-size:9.6px!important;line-height:1.15!important;
  display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;
  overflow:hidden!important;overflow-wrap:anywhere!important;
}
.respond-grid-v5{grid-template-columns:1fr 1fr!important;gap:6px!important}
.respond-grid-v5 .form-field{min-width:0!important}
.respond-grid-v5 .form-field label{font-size:9.4px!important;margin-bottom:3px!important}
.respond-grid-v5 .field-dark{
  min-height:34px!important;padding:6px 8px!important;font-size:11.3px!important;border-radius:8px!important;
}
.respond-grid-v5 textarea.field-dark{min-height:58px!important;max-height:88px!important;resize:vertical!important}
.respond-grid-v5 .respond-field-context{
  display:block!important;margin-top:3px!important;color:var(--ink-dim)!important;
  font-size:8px!important;line-height:1.15!important;white-space:nowrap!important;
  overflow:hidden!important;text-overflow:ellipsis!important;
}
.respond-hint-v5{
  display:flex!important;align-items:center!important;gap:5px!important;margin-top:6px!important;
  padding:5px 7px!important;border-radius:8px!important;background:#eff9f4!important;
  color:#507267!important;font-size:8.5px!important;line-height:1.2!important;
}
.respond-hint-v5 i{color:#00a86b!important}
.respond-foot-v5{min-height:44px!important;padding:6px 10px!important;gap:6px!important;flex-wrap:nowrap!important}
.respond-foot-v5 .btn{min-height:32px!important;height:32px!important;padding:0 11px!important;font-size:10.5px!important}

@media (min-width:641px) and (max-width:899px){
  .modal.modal-order-respond-v5{width:min(820px,calc(100vw - 14px))!important;max-height:calc(100dvh - 12px)!important}

  .respond-summary-v5{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:640px){
  .modal-overlay:has(.modal-order-respond-v5){padding:4px!important;align-items:flex-end!important}
  .modal.modal-order-respond-v5{
    width:100%!important;max-width:none!important;max-height:calc(100dvh - 8px)!important;
    border-radius:14px 14px 7px 7px!important;
  }

  .respond-summary-v5{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .respond-grid-v5{grid-template-columns:1fr!important;gap:5px!important}
  .respond-grid-v5 .full{grid-column:1!important}
  .respond-foot-v5 .btn{flex:1 1 0!important;min-width:0!important}
}
@media (max-width:390px){
  .respond-summary-v5{grid-template-columns:1fr!important}
}

/* =========================================================
   GIGZAKAZ 2.13.6 — RESPONSE DISTANCE AUTOCALC
   ========================================================= */

.modal.modal-order-respond-v6{
  width:min(820px,calc(100vw - 28px))!important;
  max-width:820px!important;
  max-height:min(650px,calc(100dvh - 24px))!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  overflow:hidden!important;
}

@media (min-width:641px) and (max-width:899px){
  .modal.modal-order-respond-v6{
    width:min(820px,calc(100vw - 14px))!important;
    max-height:calc(100dvh - 12px)!important;
  }
}

@media (max-width:640px){
  .modal-overlay:has(.modal-order-respond-v6){
    padding:4px!important;
    align-items:flex-end!important;
  }
  .modal.modal-order-respond-v6{
    width:100%!important;
    max-width:none!important;
    max-height:calc(100dvh - 8px)!important;
    border-radius:14px 14px 7px 7px!important;
  }
}

/* =========================================================
   GIGZAKAZ 2.14.0 — OFFER DECISION ENGINE UI
   No fake offers. One real offer is evaluated; 2+ are compared.
   ========================================================= */

.modal.modal-offer-compare-2140{
  width:min(1120px,calc(100vw - 28px))!important;
  max-width:1120px!important;
  max-height:min(780px,calc(100dvh - 24px))!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  overflow:hidden!important;
}
.modal-offer-compare-2140 .offer-compare-head{
  min-height:48px!important;
  padding:8px 12px!important;
}
.modal-offer-compare-2140 .offer-compare-head .modal-title{
  min-width:0!important;
  max-width:calc(100% - 42px)!important;
  font-size:14px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.modal-offer-compare-2140 .offer-compare-body{
  padding:8px 10px!important;
  overflow:auto!important;
}
.modal-offer-compare-2140 .offer-compare-foot{
  min-height:44px!important;
  padding:6px 10px!important;
}
.modal-offer-compare-2140 .offer-compare-foot .btn{
  min-height:32px!important;
  height:32px!important;
  padding:0 12px!important;
  font-size:10.5px!important;
}

/* Market context: compact decision band. */
.modal-offer-compare-2140 .offer-market-context{
  box-sizing:border-box!important;
  margin:0 0 6px!important;
  padding:7px 9px!important;
  border:1px solid #dceae4!important;
  border-radius:10px!important;
  background:#f8fbfa!important;
}
.modal-offer-compare-2140 .offer-market-head{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  font-size:10.5px!important;
  line-height:1.15!important;
}
.modal-offer-compare-2140 .offer-market-kpis{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:4px!important;
  margin-top:5px!important;
}
.modal-offer-compare-2140 .offer-market-kpis>span{
  min-width:0!important;
  padding:4px 6px!important;
  border-radius:7px!important;
  background:#fff!important;
  overflow:hidden!important;
}
.modal-offer-compare-2140 .offer-market-kpis small{
  display:block!important;
  color:#6c7c76!important;
  font-size:7px!important;
  line-height:8px!important;
  text-transform:uppercase!important;
}
.modal-offer-compare-2140 .offer-market-kpis b{
  display:block!important;
  margin-top:1px!important;
  font-size:9.7px!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.modal-offer-compare-2140 .offer-market-text,
.modal-offer-compare-2140 .offer-market-meta,
.modal-offer-compare-2140 .offer-market-action{
  margin-top:4px!important;
  font-size:8.3px!important;
  line-height:1.25!important;
  color:#61736c!important;
}

/* Main recommendation/neutral summary. */
.modal-offer-compare-2140 .offer-decision-summary{
  box-sizing:border-box!important;
  margin:0 0 6px!important;
  padding:7px 9px!important;
  border:1px solid #dce8e3!important;
  border-radius:10px!important;
  background:#fff!important;
  overflow:hidden!important;
}
.modal-offer-compare-2140 .offer-decision-summary-best{
  border-color:#a9dfc8!important;
  background:linear-gradient(135deg,#f1fbf6,#fff)!important;
}
.modal-offer-compare-2140 .offer-decision-summary-title{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  font-size:11px!important;
  line-height:1.15!important;
  font-weight:850!important;
}
.modal-offer-compare-2140 .offer-decision-summary-title i{
  color:#00a86b!important;
  font-size:13px!important;
}
.modal-offer-compare-2140 .offer-decision-summary-text,
.modal-offer-compare-2140 .offer-decision-action,
.modal-offer-compare-2140 .offer-decision-method,
.modal-offer-compare-2140 .offer-decision-tradeoff,
.modal-offer-compare-2140 .offer-decision-caution{
  margin-top:4px!important;
  font-size:8.5px!important;
  line-height:1.25!important;
}
.modal-offer-compare-2140 .offer-decision-method{
  color:#6d7d77!important;
}
.modal-offer-compare-2140 .offer-decision-tradeoff,
.modal-offer-compare-2140 .offer-decision-caution{
  padding:5px 7px!important;
  border-radius:7px!important;
  background:#fff8e9!important;
  color:#735a20!important;
}

/* Single real offer: useful now, without pretending there is a comparison. */
.offer-decision-single-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:4px!important;
  margin-top:5px!important;
}
.offer-decision-single-grid>span{
  min-width:0!important;
  padding:4px 6px!important;
  border-radius:7px!important;
  background:#f6f9f8!important;
  overflow:hidden!important;
}
.offer-decision-single-grid small{
  display:block!important;
  color:#6c7c76!important;
  font-size:7px!important;
  line-height:8px!important;
  text-transform:uppercase!important;
}
.offer-decision-single-grid b{
  display:block!important;
  margin-top:1px!important;
  font-size:9.5px!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* Offer list: card rows rather than long text strips. */
.modal-offer-compare-2140 .offer-list{
  display:grid!important;
  gap:6px!important;
}
.modal-offer-compare-2140 .offer-row{
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:stretch!important;
  gap:7px!important;
  margin:0!important;
  padding:7px 8px!important;
  border:1px solid #e0e9e5!important;
  border-radius:10px!important;
  background:#fff!important;
}
.modal-offer-compare-2140 .offer-row-recommended{
  border-color:#9dddc2!important;
  box-shadow:0 0 0 2px rgba(0,168,107,.06)!important;
  background:linear-gradient(135deg,#f4fcf8,#fff)!important;
}
.modal-offer-compare-2140 .offer-info{
  min-width:0!important;
  display:grid!important;
  gap:4px!important;
}
.modal-offer-compare-2140 .offer-who{
  min-width:0!important;
  font-size:10px!important;
  line-height:1.2!important;
  color:#263b33!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.modal-offer-compare-2140 .offer-price-context{
  display:flex!important;
  align-items:baseline!important;
  gap:5px!important;
  min-width:0!important;
}
.modal-offer-compare-2140 .offer-price-label{
  flex:0 0 auto!important;
  color:#6c7c76!important;
  font-size:8px!important;
}
.modal-offer-compare-2140 .offer-price-context strong{
  min-width:0!important;
  color:#00a86b!important;
  font-size:14px!important;
  line-height:1.1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.modal-offer-compare-2140 .offer-price-reference,
.modal-offer-compare-2140 .offer-sub{
  margin:0!important;
  color:#667870!important;
  font-size:8.3px!important;
  line-height:1.25!important;
}
.modal-offer-compare-2140 .offer-sub{
  display:flex!important;
  gap:4px!important;
  flex-wrap:wrap!important;
}
.modal-offer-compare-2140 .offer-sub-sep{color:#b0bbb7!important}

/* Decision signals visible in 1 click. */
.offer-signal-grid-2140{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:4px!important;
}
.offer-signal-2140{
  min-width:0!important;
  padding:4px 5px!important;
  border:1px solid #e1e9e6!important;
  border-radius:7px!important;
  background:#f8faf9!important;
  overflow:hidden!important;
}
.offer-signal-2140 small{
  display:block!important;
  color:#6d7c76!important;
  font-size:6.8px!important;
  line-height:8px!important;
  text-transform:uppercase!important;
}
.offer-signal-2140 b{
  display:block!important;
  margin-top:1px!important;
  font-size:8.8px!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.offer-signal-2140.is-good{
  border-color:#b8e4d1!important;
  background:#f0faf5!important;
}
.offer-signal-2140.is-warn{
  border-color:#eed9ad!important;
  background:#fff9ec!important;
}
.offer-checks-2140{
  display:flex!important;
  align-items:center!important;
  gap:4px!important;
  padding:3px 5px!important;
  border-radius:6px!important;
  background:#fff8e9!important;
  color:#775f2a!important;
  font-size:7.8px!important;
  line-height:1.2!important;
}
.offer-checks-2140.is-good{
  background:#eff9f4!important;
  color:#4c7567!important;
}
.offer-checks-2140 i{font-size:9px!important}

/* Existing recommendation/risk/reputation made compact. */
.modal-offer-compare-2140 .offer-decision-badge,
.modal-offer-compare-2140 .offer-decision-risk{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  width:max-content!important;
  max-width:100%!important;
  padding:3px 6px!important;
  border-radius:6px!important;
  font-size:7.8px!important;
  line-height:1.15!important;
}
.modal-offer-compare-2140 .offer-decision-badge{
  background:#eaf9f2!important;
  color:#007d56!important;
  font-weight:850!important;
}
.modal-offer-compare-2140 .offer-decision-risk{
  background:#f5f7f6!important;
  color:#5e7069!important;
}
.modal-offer-compare-2140 .offer-reputation{
  padding:5px 6px!important;
  border:1px solid #e6ece9!important;
  border-radius:7px!important;
  background:#fafcfb!important;
  overflow:hidden!important;
}
.modal-offer-compare-2140 .offer-reputation-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:5px!important;
  font-size:8px!important;
  line-height:1.15!important;
}
.modal-offer-compare-2140 .offer-reputation-verified{
  color:#5c756b!important;
  white-space:nowrap!important;
}
.modal-offer-compare-2140 .offer-reputation-metrics{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:4px!important;
  margin-top:3px!important;
}
.modal-offer-compare-2140 .offer-reputation-primary,
.modal-offer-compare-2140 .offer-reputation-secondary{
  min-width:0!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:3px 6px!important;
  color:#667770!important;
  font-size:7.5px!important;
  line-height:1.2!important;
}
.modal-offer-compare-2140 .offer-reputation-primary span,
.modal-offer-compare-2140 .offer-reputation-secondary span{
  white-space:nowrap!important;
}
.modal-offer-compare-2140 .offer-row>.offer-accept{
  align-self:center!important;
  min-width:96px!important;
  height:34px!important;
  min-height:34px!important;
  padding:0 10px!important;
  font-size:10px!important;
}

/* Tablet */
@media (min-width:641px) and (max-width:899px){
  .modal.modal-offer-compare-2140{
    width:calc(100vw - 14px)!important;
    max-height:calc(100dvh - 12px)!important;
  }
  .offer-signal-grid-2140{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .modal-offer-compare-2140 .offer-reputation-metrics{
    grid-template-columns:1fr!important;
  }
}

/* Smartphone */
@media (max-width:640px){
  .modal-overlay:has(.modal-offer-compare-2140){
    padding:4px!important;
    align-items:flex-end!important;
  }
  .modal.modal-offer-compare-2140{
    width:100%!important;
    max-width:none!important;
    max-height:calc(100dvh - 8px)!important;
    border-radius:14px 14px 7px 7px!important;
  }
  .modal-offer-compare-2140 .offer-market-kpis,
  .offer-decision-single-grid,
  .offer-signal-grid-2140{
    grid-template-columns:1fr 1fr!important;
  }
  .modal-offer-compare-2140 .offer-row{
    grid-template-columns:1fr!important;
  }
  .modal-offer-compare-2140 .offer-row>.offer-accept{
    width:100%!important;
    min-width:0!important;
  }
  .modal-offer-compare-2140 .offer-reputation-metrics{
    grid-template-columns:1fr!important;
  }
}

@media (max-width:390px){
  .modal-offer-compare-2140 .offer-market-kpis,
  .offer-decision-single-grid,
  .offer-signal-grid-2140{
    grid-template-columns:1fr!important;
  }
}

/* =========================================================
   GIGZAKAZ 2.14.2 — SERVICE DETAILS + CONTACT COMPACT UI
   ========================================================= */

.modal.modal-service-detail-2142{
  width:min(980px,calc(100vw - 28px))!important;
  max-width:980px!important;
  max-height:min(760px,calc(100dvh - 24px))!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  overflow:hidden!important;
}
.modal-service-detail-2142 .svc-detail-head-2142{
  min-height:54px!important;
  padding:9px 14px!important;
}
.svc-detail-head-copy-2142{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
}
.modal-service-detail-2142 .modal-title{
  max-width:100%!important;
  font-size:18px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.svc-detail-head-sub-2142{
  color:#708078!important;
  font-size:10px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.modal-service-detail-2142 .svc-detail-body-2142{
  min-height:0!important;
  padding:12px 14px!important;
  overflow:auto!important;
}
.svc-detail-layout-2142{
  display:grid!important;
  grid-template-columns:minmax(240px,320px) minmax(0,1fr)!important;
  gap:14px!important;
  align-items:start!important;
}
.svc-detail-media-2142{min-width:0!important}
.svc-detail-gallery-2142{
  display:flex!important;
  gap:7px!important;
  overflow-x:auto!important;
  overscroll-behavior-inline:contain!important;
  scroll-snap-type:x proximity!important;
  padding-bottom:2px!important;
}
.svc-detail-gallery-2142 img{
  width:100%!important;
  min-width:100%!important;
  height:210px!important;
  flex:0 0 100%!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:12px!important;
  border:1px solid #e0e8e4!important;
  background:#f4f7f6!important;
  scroll-snap-align:start!important;
}
.svc-detail-gallery-2142.is-single{overflow:hidden!important}
.svc-detail-no-photo-2142{
  height:180px!important;
  display:grid!important;
  place-items:center!important;
  align-content:center!important;
  gap:5px!important;
  border:1px dashed #cfdad5!important;
  border-radius:12px!important;
  background:#f7faf8!important;
  color:#8a9992!important;
}
.svc-detail-no-photo-2142 i{font-size:28px!important}
.svc-detail-no-photo-2142 span{font-size:10px!important}

.svc-detail-content-2142{
  min-width:0!important;
  display:grid!important;
  gap:9px!important;
}
.svc-detail-kpis-2142{
  display:grid!important;
  grid-template-columns:1fr 1fr 1fr!important;
  gap:6px!important;
}
.svc-detail-kpi-2142{
  min-width:0!important;
  padding:8px 9px!important;
  border:1px solid #e0e8e4!important;
  border-radius:10px!important;
  background:#f8faf9!important;
  overflow:hidden!important;
}
.svc-detail-kpi-2142 small{
  display:block!important;
  margin-bottom:2px!important;
  color:#708078!important;
  font-size:8px!important;
  line-height:1.1!important;
  text-transform:uppercase!important;
  letter-spacing:.03em!important;
}
.svc-detail-kpi-2142 b{
  display:block!important;
  font-size:11px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.svc-detail-kpi-2142.is-price{
  border-color:#b7e3cf!important;
  background:#f1fbf6!important;
}
.svc-detail-kpi-2142.is-price b{color:#00a86b!important;font-size:14px!important}

.svc-detail-specs-2142{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:6px!important;
}
.svc-detail-spec-2142{
  min-width:0!important;
  display:flex!important;
  align-items:flex-start!important;
  gap:7px!important;
  padding:7px 8px!important;
  border:1px solid #e4ebe8!important;
  border-radius:9px!important;
  background:#fff!important;
}
.svc-detail-spec-2142>i{
  flex:0 0 auto!important;
  margin-top:1px!important;
  color:#00a86b!important;
  font-size:14px!important;
}
.svc-detail-spec-2142>span{min-width:0!important}
.svc-detail-spec-2142 small{
  display:block!important;
  color:#74837c!important;
  font-size:7.5px!important;
  line-height:1.05!important;
  text-transform:uppercase!important;
}
.svc-detail-spec-2142 b{
  display:block!important;
  margin-top:2px!important;
  font-size:10px!important;
  line-height:1.25!important;
  overflow-wrap:anywhere!important;
}

.svc-detail-text-2142{
  padding:9px 10px!important;
  border:1px solid #e1e9e5!important;
  border-radius:10px!important;
  background:#fff!important;
}
.svc-detail-text-2142.is-secondary{background:#f8faf9!important}
.svc-detail-text-2142 h4{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  margin:0 0 4px!important;
  font-size:10px!important;
  line-height:1.2!important;
}
.svc-detail-text-2142 h4 i{color:#00a86b!important;font-size:13px!important}
.svc-detail-text-2142 p{
  margin:0!important;
  color:#263a32!important;
  font-size:10.5px!important;
  line-height:1.45!important;
  overflow-wrap:anywhere!important;
  white-space:normal!important;
}
.svc-detail-empty-2142{
  padding:10px!important;
  border-radius:9px!important;
  background:#f7f9f8!important;
  color:#78877f!important;
  font-size:9.5px!important;
}

.modal-service-detail-2142 .svc-detail-foot-2142{
  min-height:52px!important;
  padding:8px 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
}
.svc-detail-foot-left-2142,
.svc-detail-foot-actions-2142{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  flex-wrap:wrap!important;
}
.modal-service-detail-2142 .svc-detail-foot-2142 .btn{
  min-height:34px!important;
  height:34px!important;
  padding:0 12px!important;
  font-size:10px!important;
}
.svc-detail-site-2142{white-space:nowrap!important}

/* Compact actionable contact modal. */
.modal.modal-service-contact-2142{
  width:min(520px,calc(100vw - 24px))!important;
  max-width:520px!important;
  max-height:calc(100dvh - 24px)!important;
  overflow:hidden!important;
}
.modal-service-contact-2142 .svc-contact-head-2142{
  min-height:54px!important;
  padding:9px 13px!important;
}
.modal-service-contact-2142 .modal-title{
  font-size:16px!important;
  line-height:1.15!important;
}
.svc-contact-head-sub-2142{
  max-width:420px!important;
  margin-top:2px!important;
  color:#72827a!important;
  font-size:9px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.modal-service-contact-2142 .svc-contact-body-2142{
  padding:12px 13px!important;
}
.svc-contact-card-2142{
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:center!important;
  padding:10px 11px!important;
  border:1px solid #b8e3d1!important;
  border-radius:11px!important;
  background:#f2fbf6!important;
}
.svc-contact-icon-2142{
  width:44px!important;
  height:44px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#00a86b!important;
}
.svc-contact-icon-2142 i{font-size:22px!important}
.svc-contact-copy-2142{min-width:0!important}
.svc-contact-copy-2142 small{
  display:block!important;
  color:#6f8078!important;
  font-size:8px!important;
  line-height:1.1!important;
}
.svc-contact-copy-2142 strong{
  display:block!important;
  margin-top:2px!important;
  color:#10241b!important;
  font-size:17px!important;
  line-height:1.2!important;
  overflow-wrap:anywhere!important;
}
.svc-contact-copy-2142 span{
  display:block!important;
  margin-top:2px!important;
  color:#6d7d76!important;
  font-size:9px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.svc-contact-empty-2142{
  display:flex!important;
  align-items:flex-start!important;
  gap:7px!important;
  padding:10px!important;
  border-radius:10px!important;
  background:#f7f9f8!important;
  color:#6e7e77!important;
  font-size:10px!important;
  line-height:1.35!important;
}
.modal-service-contact-2142 .svc-contact-foot-2142{
  min-height:50px!important;
  padding:8px 13px!important;
  display:flex!important;
  justify-content:flex-end!important;
  gap:7px!important;
}
.modal-service-contact-2142 .svc-contact-foot-2142 .btn{
  min-height:34px!important;
  height:34px!important;
  padding:0 12px!important;
  font-size:10px!important;
}

/* Included 2.14.1 compact single-offer priority styles. */
.modal-offer-compare-2140 .offer-market-compact-2141{
  min-height:36px!important;margin-bottom:5px!important;padding:5px 7px!important;
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;gap:6px!important;
}
.modal-offer-compare-2140 .offer-market-compact-2141 .offer-market-head{
  min-width:0!important;display:flex!important;align-items:center!important;gap:5px!important;overflow:hidden!important;
}
.modal-offer-compare-2140 .offer-market-compact-2141 .offer-market-head>span{
  min-width:0!important;color:#6b7c75!important;font-size:8px!important;line-height:1.1!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
.modal-offer-compare-2140 .offer-market-compact-2141 .offer-market-action{
  margin:0!important;max-width:430px!important;color:#6b7c75!important;font-size:7.8px!important;line-height:1.15!important;text-align:right!important;
}
.modal-offer-compare-2140 .offer-decision-single-2140{
  min-height:0!important;padding:6px 8px!important;margin-bottom:5px!important;
  border-color:#b8e2d1!important;background:linear-gradient(135deg,#f3fbf7,#fff)!important;
}
.offer-single-next-2141{
  display:inline-flex!important;align-items:center!important;min-height:20px!important;
  padding:3px 6px!important;border-radius:999px!important;background:#eef4f1!important;
  color:#63756e!important;font-size:7.5px!important;line-height:1.1!important;
}

/* Tablet */
@media (min-width:641px) and (max-width:899px){
  .modal.modal-service-detail-2142{
    width:calc(100vw - 16px)!important;
    max-height:calc(100dvh - 14px)!important;
  }
  .svc-detail-layout-2142{
    grid-template-columns:minmax(210px,280px) minmax(0,1fr)!important;
    gap:10px!important;
  }
  .svc-detail-gallery-2142 img{height:185px!important}
  .svc-detail-kpis-2142{grid-template-columns:1fr 1fr!important}
  .svc-detail-kpi-2142.is-price{grid-column:1/-1!important}
  .modal-offer-compare-2140 .offer-market-compact-2141{
    grid-template-columns:1fr!important;gap:2px!important;
  }
  .modal-offer-compare-2140 .offer-market-compact-2141 .offer-market-action{
    max-width:none!important;text-align:left!important;
  }
}

/* Smartphone */
@media (max-width:640px){
  .modal-overlay:has(.modal-service-detail-2142),
  .modal-overlay:has(.modal-service-contact-2142){
    padding:4px!important;
    align-items:flex-end!important;
  }
  .modal.modal-service-detail-2142{
    width:100%!important;
    max-width:none!important;
    max-height:calc(100dvh - 8px)!important;
    border-radius:14px 14px 7px 7px!important;
  }
  .modal-service-detail-2142 .svc-detail-head-2142{padding:8px 10px!important}
  .modal-service-detail-2142 .modal-title{font-size:15px!important}
  .modal-service-detail-2142 .svc-detail-body-2142{padding:8px 10px!important}
  .svc-detail-layout-2142{grid-template-columns:1fr!important;gap:9px!important}
  .svc-detail-gallery-2142 img{height:180px!important}
  .svc-detail-no-photo-2142{height:100px!important}
  .svc-detail-kpis-2142{grid-template-columns:1fr 1fr!important}
  .svc-detail-kpi-2142.is-price{grid-column:1/-1!important}
  .svc-detail-specs-2142{grid-template-columns:1fr!important}
  .modal-service-detail-2142 .svc-detail-foot-2142{
    padding:7px 10px!important;
    align-items:stretch!important;
    flex-direction:column!important;
  }
  .svc-detail-foot-left-2142,
  .svc-detail-foot-actions-2142{width:100%!important}
  .svc-detail-foot-actions-2142 .btn,
  .svc-detail-site-2142{flex:1 1 auto!important;justify-content:center!important}

  .modal.modal-service-contact-2142{
    width:100%!important;
    max-width:none!important;
    border-radius:14px 14px 7px 7px!important;
  }
  .modal-service-contact-2142 .svc-contact-foot-2142{
    flex-wrap:wrap!important;
  }
  .modal-service-contact-2142 .svc-contact-foot-2142 .btn{
    flex:1 1 auto!important;
    justify-content:center!important;
  }

  .modal-offer-compare-2140 .offer-market-compact-2141{
    grid-template-columns:1fr!important;gap:2px!important;
  }
  .modal-offer-compare-2140 .offer-market-compact-2141 .offer-market-head{flex-wrap:wrap!important}
  .modal-offer-compare-2140 .offer-market-compact-2141 .offer-market-action{
    max-width:none!important;text-align:left!important;
  }
}

/* =========================================================
   GIGZAKAZ 2.15.0 — MARKET SIGNAL CORE / LIVE MARKET 360°
   ========================================================= */
.market360-section{
  position:relative!important;
  overflow:hidden!important;
}
.market360-section::before{
  content:"";position:absolute;inset:-20% -10% auto auto;width:480px;height:480px;border-radius:50%;
  background:radial-gradient(circle,rgba(0,196,135,.12),transparent 68%);pointer-events:none;
}
.market360-head{justify-content:space-between!important;}
.market360-head>div:first-child{min-width:0!important}
.market360-kicker{display:inline-flex!important;align-items:center!important;gap:6px!important;color:#008d61!important;font-weight:800!important;text-transform:uppercase!important}
.market360-title{text-align:left!important}
.market360-sub{color:#61736c!important;}
.market360-head-actions{display:flex!important;gap:8px!important;flex:0 0 auto!important}
.market360-head-actions .btn{height:42px!important;min-height:42px!important;white-space:nowrap!important}
.market360-types{display:flex!important;align-items:center!important;gap:6px!important;overflow-x:auto!important;padding:2px 0 7px!important;scrollbar-width:none!important}
.market360-types::-webkit-scrollbar{display:none!important}
.market360-type{flex:0 0 auto!important;border:1px solid #d9e7e1!important;background:#fff!important;color:#50675e!important;font:inherit!important;cursor:pointer!important;}
.market360-type:hover,.market360-type.is-active{border-color:#72d6b2!important;background:#eaf9f3!important;color:#007d55!important;box-shadow:0 5px 16px rgba(0,139,95,.08)!important}
.market360-toolbar{display:grid!important;grid-template-columns:minmax(260px,520px) 1fr auto!important;gap:9px!important;align-items:center!important;margin-bottom:11px!important}
.market360-search{display:flex!important;align-items:center!important;gap:7px!important;padding:0 11px!important;border:1px solid #d9e6e1!important;background:#fff!important;}
.market360-search i{color:#00a86b!important;font-size:16px!important}.market360-search input{width:100%!important;border:0!important;outline:0!important;background:transparent!important;font:inherit!important;color:#183128!important}
.market360-status{min-width:0!important;text-align:right!important}
.market360-publish{height:40px!important;min-height:40px!important}
.market360-feed{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
.market-signal-card{--sig:#00a86b;min-width:0!important;display:grid!important;border-top:3px solid var(--sig)!important;overflow:hidden!important;transition:transform .18s ease,box-shadow .18s ease!important}
.market-signal-card:hover{transform:translateY(-2px)!important;box-shadow:0 16px 34px rgba(31,67,54,.11)!important}
.market-signal-card.is-capacity{--sig:#00a86b}.market-signal-card.is-need{--sig:#1475e6}.market-signal-card.is-offer{--sig:#04a982}.market-signal-card.is-buy{--sig:#8a5bd7}.market-signal-card.is-sell{--sig:#dd8b16}.market-signal-card.is-plan{--sig:#7058d8}.market-signal-card.is-partner{--sig:#546e7a}.market-signal-card.is-interest{--sig:#458ba6}.market-signal-card.is-urgent{box-shadow:0 12px 30px rgba(198,65,31,.11)!important}.market-signal-kind{display:inline-flex!important;align-items:center!important;gap:4px!important;border-radius:999px!important;background:color-mix(in srgb,var(--sig) 10%,white)!important;color:var(--sig)!important;font-weight:850!important;white-space:nowrap!important}.market-signal-source{color:#829089!important;font-weight:800!important}.market-signal-urgent{display:inline-flex!important;align-items:center!important;gap:3px!important;color:#b44d2d!important;background:#fff2eb!important;border:1px solid #f2cab9!important;border-radius:999px!important;font-weight:850!important;white-space:nowrap!important}
.market-signal-card h3{color:#10251c!important;}.market-signal-route{color:#60746b!important;}.market-signal-route i{color:var(--sig)!important;flex:0 0 auto!important}.market-signal-facts small{display:block!important;color:#7a8982!important;text-transform:uppercase!important}.market-signal-facts b{margin-top:2px!important;color:#183028!important;text-overflow:ellipsis!important;}.market-signal-desc{margin:0!important;color:#6c7d76!important;font-size:9px!important;line-height:1.3!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}.market-signal-bottom{align-items:center!important;justify-content:space-between!important;}.market-signal-time{display:inline-flex!important;align-items:center!important;gap:3px!important;color:#8a9791!important;}
.market360-note{display:flex!important;align-items:flex-start!important;gap:6px!important;margin-top:10px!important;color:#73827b!important;}.market360-note i{color:#00a86b!important;font-size:13px!important}.market360-empty{grid-column:1/-1!important;min-height:180px!important;display:grid!important;place-items:center!important;align-content:center!important;gap:6px!important;border:1px dashed #cbded5!important;border-radius:15px!important;background:#fff!important;color:#708078!important;text-align:center!important}.market360-empty i{font-size:26px!important;color:#00a86b!important}.market360-empty b{color:#22372f!important;font-size:13px!important}.market360-empty span{font-size:10px!important}.market360-empty .btn{margin-top:5px!important}

/* Create signal */
.modal.modal-market-create-2150{max-height:calc(100dvh - 20px)!important;display:grid!important;grid-template-rows:auto minmax(0,1fr) auto!important;overflow:hidden!important}.market-create-head{padding:9px 12px!important}.market-create-head .modal-title{font-size:16px!important}.market-create-sub{margin-top:2px!important;color:#74837c!important;font-size:9px!important}.market-create-body{min-height:0!important;padding:10px 12px!important;overflow:auto!important}.market-create-legal{display:flex!important;align-items:flex-start!important;gap:6px!important;margin-bottom:9px!important;padding:7px 8px!important;border-radius:9px!important;background:#eef8f4!important;color:#577168!important;font-size:9px!important;line-height:1.25!important}.market-create-legal i{color:#00a86b!important;font-size:13px!important}.market-create-grid{display:grid!important;gap:8px!important}.market-create-grid label{min-width:0!important;display:grid!important;gap:4px!important}.market-create-grid label>span{color:#5f7169!important;font-size:9px!important;font-weight:750!important}.market-create-grid .field-dark{width:100%!important;min-width:0!important;min-height:38px!important;padding:8px 10px!important;font-size:11px!important;background:#fff!important;color:#173027!important;border:1px solid #d9e4df!important}.market-create-grid textarea.field-dark{resize:vertical!important}.market-create-urgent{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center!important;gap:8px!important;padding:7px 9px!important;border:1px solid #ead9cc!important;border-radius:9px!important;background:#fff8f2!important}.market-create-urgent input{width:16px!important;height:16px!important}.market-create-urgent span{display:flex!important;flex-direction:column!important;gap:1px!important}.market-create-urgent b{color:#8e4b2e!important;font-size:10px!important}.market-create-urgent small{color:#8b7d74!important;font-size:8px!important}.market-create-foot{padding:8px 12px!important;gap:7px!important}.market-create-foot .btn{height:34px!important;min-height:34px!important;font-size:10px!important}

/* Signal details */
.modal.modal-market-detail-2150{width:min(760px,calc(100vw - 24px))!important;max-width:760px!important;max-height:calc(100dvh - 20px)!important;display:grid!important;grid-template-rows:auto minmax(0,1fr) auto!important;overflow:hidden!important}.market-detail-head{padding:9px 12px!important}.market-detail-head .modal-title{max-width:640px!important;font-size:16px!important;line-height:1.2!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.market-detail-sub{display:flex!important;align-items:center!important;gap:5px!important;margin-top:4px!important}.market-detail-body{padding:10px 12px!important;overflow:auto!important}.market-detail-kpis{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;}.market-detail-kpis>span{min-width:0!important;border:1px solid #e0e8e4!important;background:#f8faf9!important}.market-detail-kpis small{display:block!important;color:#75857d!important;text-transform:uppercase!important}.market-detail-kpis b{display:block!important;margin-top:2px!important;color:#173027!important;line-height:1.25!important;overflow-wrap:anywhere!important}.market-detail-section{margin-top:8px!important;border:1px solid #e0e8e4!important;background:#fff!important}.market-detail-section h4{margin:0 0 4px!important;}.market-detail-section p{margin:0!important;color:#526860!important;white-space:pre-wrap!important;overflow-wrap:anywhere!important}.market-detail-legal{display:flex!important;align-items:flex-start!important;gap:5px!important;margin-top:8px!important;background:#eef8f4!important;color:#62756d!important;line-height:1.3!important}.market-detail-legal i{color:#00a86b!important;font-size:12px!important}.market-detail-foot{padding:8px 12px!important;gap:6px!important}.market-detail-foot .btn{height:34px!important;min-height:34px!important;font-size:10px!important}

@media (max-width:1180px){.market360-feed{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media (max-width:899px){.market360-head{align-items:flex-start!important;flex-direction:column!important}.market360-head-actions{width:100%!important}.market360-head-actions .btn{flex:1 1 0!important}.market360-toolbar{grid-template-columns:1fr auto!important}.market360-status{display:none!important}.market360-feed{grid-template-columns:repeat(2,minmax(0,1fr))!important}.market-signal-card{min-height:238px!important}}
@media (max-width:640px){.market360-section{padding-top:20px!important;padding-bottom:22px!important}.market360-title{font-size:24px!important}.market360-sub{font-size:11px!important}.market360-head-actions{display:grid!important;grid-template-columns:1fr 1fr!important}.market360-head-actions .btn{min-width:0!important;padding:0 8px!important;font-size:10px!important}.market360-toolbar{grid-template-columns:1fr!important}.market360-publish{width:100%!important}.market360-feed{grid-template-columns:1fr!important;gap:8px!important}.market-signal-card{grid-template-rows:auto auto auto auto auto auto!important;padding:10px!important}.market-signal-bottom{align-items:stretch!important;flex-direction:column!important}.market-signal-actions{width:100%!important}.market-signal-actions .btn{flex:1 1 0!important}.modal-overlay:has(.modal-market-create-2150),.modal-overlay:has(.modal-market-detail-2150){padding:4px!important;align-items:flex-end!important}.modal.modal-market-create-2150,.modal.modal-market-detail-2150{width:100%!important;max-width:none!important;max-height:calc(100dvh - 8px)!important;border-radius:14px 14px 7px 7px!important}.market-detail-kpis{grid-template-columns:1fr!important}.market-detail-foot{flex-wrap:wrap!important}.market-detail-foot .btn{flex:1 1 auto!important}}
@media (max-width:390px){.market360-head-actions{grid-template-columns:1fr!important}}

/* GIGZAKAZ 2.15.1 — MARKET SIGNAL COMPACT LIVE UX */
.market-signal-card{grid-template-rows:auto auto auto auto 1fr!important;}
.market-signal-freshness{flex-direction:column!important;}
.market-signal-valid{display:inline-flex!important;align-items:center!important;gap:3px!important;color:#667a71!important;font-weight:750!important;}
.market-signal-valid i{color:var(--sig)!important}
.market360-more{justify-content:center!important;min-height:0!important;margin-top:10px!important}
.market360-more:empty{display:none!important}
.market360-more-btn{height:34px!important;min-height:34px!important;padding:0 18px!important;font-size:10px!important}
.modal.modal-market-create-2150{width:min(900px,calc(100vw - 24px))!important;max-width:900px!important}
.market-create-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important}
.market-create-grid .span-2{grid-column:span 2!important}
.market-create-grid .span-4{grid-column:1/-1!important}
.market-create-grid textarea.field-dark{min-height:54px!important;max-height:86px!important}
.market-create-urgent{min-height:42px!important}
@media (max-width:899px){.market-create-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.market-create-grid .span-2,.market-create-grid .span-4{grid-column:1/-1!important}}
@media (max-width:640px){.market-signal-card{min-height:0!important}.market-signal-facts{grid-template-columns:repeat(2,minmax(0,1fr))!important}.market-create-grid{grid-template-columns:1fr!important}.market-create-grid .span-2,.market-create-grid .span-4{grid-column:auto!important}.market-create-body{padding-bottom:8px!important}.market-create-grid textarea.field-dark{min-height:60px!important}}
@media (max-width:390px){.market-signal-facts{grid-template-columns:1fr!important}}

/* GIGZAKAZ 2.15.1R1 — MARKET CARD VERTICAL ALIGNMENT
   Desktop/tablet cards use identical content tracks so titles, routes,
   commercial facts and actions stay on one horizontal level across a row. */
@media (min-width:641px){
  .market-signal-card{
    gap:6px!important;
  }
  .market-signal-top{
    height:20px!important;
    min-height:20px!important;
    max-height:20px!important;
    align-self:start!important;
    overflow:hidden!important;
  }
  .market-signal-card h3{
    height:36px!important;
    min-height:36px!important;
    max-height:36px!important;
    line-height:1.22!important;
    align-self:start!important;
  }
  .market-signal-route{
    height:30px!important;
    min-height:30px!important;
    max-height:30px!important;
    align-self:start!important;
    overflow:hidden!important;
  }
  .market-signal-route span{
    -webkit-line-clamp:2!important;
  }
  .market-signal-facts{
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
    align-self:start!important;
  }
  .market-signal-facts>span{
    height:48px!important;
    min-height:48px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
  }
  .market-signal-facts small{
    min-height:14px!important;
    display:flex!important;
    align-items:flex-start!important;
  }
  .market-signal-bottom{
    height:34px!important;
    min-height:34px!important;
    max-height:34px!important;
    align-self:end!important;
  }
}

/* GIGZAKAZ 2.15.1R2 — ALIGNED MARKET CARDS + CATEGORY PICTOGRAM
   One compact visual anchor per card. It opens the same detail view as «Подробнее».
   Real photos are not forced when the source publication has no reliable image. */
.market-signal-main h3{min-width:0!important}
.market-signal-visual{display:grid!important;place-items:center!important;padding:0!important;border:1px solid color-mix(in srgb,var(--sig) 22%,#dce8e3)!important;background:color-mix(in srgb,var(--sig) 8%,white)!important;color:var(--sig)!important;box-shadow:none!important;cursor:pointer!important;transition:transform .16s ease,background .16s ease,border-color .16s ease!important}
.market-signal-visual i{line-height:1!important}
.market-signal-visual:hover{transform:translateY(-1px)!important;background:color-mix(in srgb,var(--sig) 13%,white)!important;border-color:color-mix(in srgb,var(--sig) 36%,#dce8e3)!important}
.market-signal-visual:focus-visible{outline:2px solid color-mix(in srgb,var(--sig) 55%,white)!important;outline-offset:2px!important}
@media (min-width:641px){
  .market-signal-card{grid-template-rows:20px 42px 30px 48px minmax(0,1fr) 34px!important}
  .market-signal-main{height:42px!important;min-height:42px!important;max-height:42px!important;overflow:hidden!important}
  .market-signal-main h3{height:36px!important;min-height:36px!important;max-height:36px!important}
}
@media (max-width:640px){
  .market-signal-main{grid-template-columns:32px minmax(0,1fr)!important;gap:7px!important}
  .market-signal-visual{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;border-radius:9px!important}
  .market-signal-visual i{font-size:17px!important}
}

/* === GIGZAKAZ 2.16.0 — UNIFIED MARKET / ACTIVE MOTION === */
/* === GIGZAKAZ 2.16.1 — UNIFIED UX CLEAN === */
.market-legacy-orders[hidden]{display:none!important}
.unified-market-section{position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(240,252,248,.94),rgba(248,254,252,.98) 48%,rgba(234,250,246,.92))}
.unified-market-section:before{content:"";position:absolute;inset:-30% auto auto 62%;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(0,199,139,.12),transparent 68%);pointer-events:none;animation:marketGlowDrift 7s ease-in-out infinite alternate}
.unified-market-head{position:relative;z-index:1;gap:28px}
.market-live-dot{display:inline-block;width:8px;height:8px;margin-left:7px;border-radius:999px;background:var(--accent,#00c98b);box-shadow:0 0 0 0 rgba(0,201,139,.35);animation:marketLivePulse 1.8s ease-out infinite}
.unified-market-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-width:min(520px,42vw)}
.unified-market-actions-single{grid-template-columns:1fr;min-width:min(340px,28vw);justify-items:end}
.market-primary-action{min-height:68px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;padding:12px 18px!important;text-align:left!important;border-radius:18px!important;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease!important}
.market-primary-action-single{background:linear-gradient(135deg,#06d58f,#00b977)!important;border-color:#00bf7a!important;}
.market-primary-action-single small{opacity:.88}
.market-primary-action>i{font-size:25px;flex:0 0 auto}.market-primary-action span{display:grid;gap:1px;min-width:0}.market-primary-action small{opacity:.72;white-space:normal;line-height:1.25}
.market-primary-action:active{transform:scale(.98)}
.market-quick{position:relative;z-index:1;gap:8px;}
.market-quick-btn{border:1px solid rgba(13,61,48,.12);background:rgba(255,255,255,.86);color:#315d51;gap:7px;font:inherit;cursor:pointer;}
.market-quick-btn.is-active{background:#fff;border-color:rgba(0,190,132,.48);color:#087e5e;box-shadow:0 7px 24px rgba(0,132,96,.08)}
.unified-market-tabs{position:relative;z-index:1;}.unified-market-tabs .market360-type{background:rgba(255,255,255,.88)!important;transition:transform .22s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease}.unified-market-tabs .market360-type.is-active{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,142,101,.10)}
.market-match-tab{position:relative}.market-match-tab #market-match-count{min-width:21px;height:21px;padding:0 6px;border-radius:999px;background:var(--accent,#00c98b);color:white;display:inline-grid;place-items:center;font-size:11px;font-weight:800;animation:marketCountPop .35s ease}
.unified-market-toolbar{position:relative;z-index:1;border:1px solid rgba(12,77,60,.08)!important;}.market-notify-btn{border-radius:14px!important}.market360-status{font-weight:800!important;color:#40675c!important}.market360-status.is-bump{animation:marketCountBump .32s ease}
.market-new-items{position:relative;z-index:2;margin:10px auto 4px;border:0;border-radius:999px;padding:10px 18px;background:#0b8d69;color:#fff;font:inherit;font-weight:800;display:flex;align-items:center;gap:8px;cursor:pointer;box-shadow:0 10px 30px rgba(4,128,94,.18);animation:marketNewBar .55s cubic-bezier(.2,.9,.2,1),marketNewPulse 2.2s ease-in-out infinite}
.market-new-items[hidden]{display:none}.market-new-items i{animation:marketArrowUp 1.2s ease-in-out infinite}
.unified-market-feed{position:relative;z-index:1}.unified-market-card{opacity:0;animation:marketCardIn .42s cubic-bezier(.2,.85,.25,1) forwards;animation-delay:var(--market-delay,0ms);transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease!important;will-change:transform}
.unified-market-card.is-match{box-shadow:0 12px 36px rgba(0,153,109,.10)}.unified-market-card.is-match:after{content:"";position:absolute;inset:-1px;border:1px solid rgba(0,199,139,.28);border-radius:inherit;pointer-events:none;animation:marketMatchRing 2.4s ease-out infinite}
.market-card-title-wrap{align-items:flex-start;justify-content:space-between;gap:8px}.market-card-title-wrap h3{min-width:0}.market-match-chip{align-items:center;gap:4px;flex:0 0 auto;border-radius:999px;padding:5px 8px;background:rgba(0,199,139,.10);color:#087a5b;font-weight:800;white-space:nowrap}.market-match-chip i{animation:marketSparkle 1.8s ease-in-out infinite}
.market-action-btn i{transition:transform .2s ease}.market-action-btn:active i{transform:translateX(4px)}
.unified-market-empty{grid-column:1/-1}.unified-market-note{position:relative;z-index:1;display:flex;align-items:flex-start;gap:9px;background:rgba(255,255,255,.72)!important;border:1px solid rgba(15,92,73,.08)!important}.unified-market-note b{color:#174f40}
.market-create-caption{color:#71847e;margin-top:3px}.modal-market-create-2160{width:min(980px,calc(100vw - 28px))!important}.unified-create-body{padding-top:14px!important}.market-create-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:5px;background:#eef7f4;border-radius:15px;margin-bottom:14px}.market-create-switch button{border:0;background:transparent;border-radius:11px;padding:11px 14px;font:inherit;font-weight:800;color:#587169;cursor:pointer;transition:background .2s ease,transform .2s ease,color .2s ease}.market-create-switch button.is-active{background:#fff;color:#087c5d;box-shadow:0 5px 18px rgba(0,92,69,.08);transform:translateY(-1px)}
.unified-create-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:11px!important}.market-create-extra{border:1px solid #dce9e5;border-radius:14px;background:#fbfefd}.market-create-extra>summary{list-style:none;cursor:pointer;padding:12px 14px;font-weight:800;color:#365f54;display:flex;align-items:center;gap:7px}.market-create-extra>summary::-webkit-details-marker{display:none}.market-create-extra>summary span{margin-left:auto;font-size:11px;color:#879690;font-weight:600}.market-extra-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0 12px 12px}.market-extra-grid label{display:grid;gap:6px}.market-extra-grid .span-4{grid-column:span 4}.market-create-result-hint{display:flex;gap:9px;align-items:flex-start;margin-top:12px;padding:11px 13px;border-radius:13px;background:rgba(0,199,139,.07);color:#456d62;font-size:12px}.market-create-result-hint i{color:#00a978;font-size:18px}
.market-notify-settings{display:grid;gap:13px}.market-notify-settings>label{display:grid;gap:6px}.market-notify-switch{display:flex!important;align-items:center;gap:11px;padding:13px;border:1px solid #dbe9e4;border-radius:14px;background:#fbfefd}.market-notify-switch input{width:22px;height:22px}.market-notify-switch span{display:grid;gap:2px}.market-notify-switch small{color:#778c85}.market-notify-info{display:flex;align-items:flex-start;gap:9px;background:#eef9f5;border-radius:14px;padding:12px;color:#52766b;font-size:12px}.market-notify-info i{font-size:19px;color:#00a878}
@media (hover:hover) and (pointer:fine){.market-primary-action:hover{transform:translateY(-4px);box-shadow:0 14px 32px rgba(0,150,106,.14)!important}.market-quick-btn:hover{transform:translateY(-2px);border-color:rgba(0,190,132,.4)}.unified-market-card:hover{transform:translateY(-7px);box-shadow:0 20px 50px rgba(14,94,74,.14)!important}.unified-market-card:hover .market-signal-visual{transform:scale(1.08) rotate(-2deg)}.market-action-btn:hover i{transform:translateX(4px)}}
@media(max-width:1050px){.unified-market-head{display:grid!important}.unified-market-actions{min-width:0;width:100%}.unified-market-actions-single{justify-items:stretch}.market-primary-action-single{justify-self:stretch}.unified-market-toolbar{grid-template-columns:1fr auto!important}.unified-market-toolbar .market360-status{grid-column:1/-1;order:3}.market-extra-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.market-extra-grid .span-4{grid-column:span 2}}
@media(max-width:720px){.unified-market-actions{grid-template-columns:1fr}.market-primary-action{min-height:58px!important}.market-primary-action-single{min-width:0!important}.market-quick{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px;scrollbar-width:none}.market-quick::-webkit-scrollbar{display:none}.market-quick-btn{white-space:nowrap}.unified-market-tabs{display:grid!important;grid-template-columns:1fr 1fr;gap:7px}.unified-market-toolbar{grid-template-columns:1fr!important}.market-notify-btn,.unified-market-toolbar .market360-status{grid-column:auto}.unified-create-grid{grid-template-columns:1fr!important}.unified-create-grid .span-2,.unified-create-grid .span-4{grid-column:span 1!important}.market-extra-grid{grid-template-columns:1fr}.market-extra-grid .span-4{grid-column:span 1}.market-card-title-wrap{display:block}.market-match-chip{margin-top:5px}}
@keyframes marketCardIn{0%{opacity:0;transform:translateY(20px) scale(.975)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes marketLivePulse{0%{box-shadow:0 0 0 0 rgba(0,201,139,.35)}70%{box-shadow:0 0 0 9px rgba(0,201,139,0)}100%{box-shadow:0 0 0 0 rgba(0,201,139,0)}}
@keyframes marketGlowDrift{from{transform:translate3d(-20px,-8px,0) scale(.96)}to{transform:translate3d(28px,20px,0) scale(1.06)}}
@keyframes marketCountBump{0%{transform:scale(.92);opacity:.65}70%{transform:scale(1.06)}100%{transform:scale(1);opacity:1}}
@keyframes marketNewBar{0%{opacity:0;transform:translateY(-12px) scale(.95)}100%{opacity:1;transform:none}}
@keyframes marketNewPulse{0%,100%{box-shadow:0 10px 30px rgba(4,128,94,.16)}50%{box-shadow:0 12px 38px rgba(4,128,94,.30)}}
@keyframes marketArrowUp{0%,100%{transform:translateY(2px)}50%{transform:translateY(-3px)}}
@keyframes marketMatchRing{0%{opacity:.9;transform:scale(.985)}70%,100%{opacity:0;transform:scale(1.025)}}
@keyframes marketSparkle{0%,100%{transform:rotate(0) scale(1)}50%{transform:rotate(12deg) scale(1.16)}}
@keyframes marketCountPop{0%{transform:scale(.7)}75%{transform:scale(1.12)}100%{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.unified-market-section:before,.market-live-dot,.market-new-items,.market-new-items i,.unified-market-card,.unified-market-card.is-match:after,.market-match-chip i{animation:none!important}.unified-market-card{opacity:1}.market-primary-action,.market-quick-btn,.unified-market-card,.market-action-btn i{transition:none!important}}

/* Покупка запчасти (2.24.0): как проходит оплата напрямую продавцу. */
.buy-flow-note{display:flex; gap:10px; align-items:flex-start; margin:10px 0 12px; padding:10px 12px; border-radius:12px; background:color-mix(in srgb, var(--accent) 8%, transparent); font-size:13px; line-height:1.5;}
.buy-flow-note > i{color:var(--accent); font-size:20px; margin-top:1px;}

/* Налоговый режим откликнувшегося. Заказчику на ОСНО важно видеть его до
   выбора исполнителя: отклик без НДС дороже на сумму вычета, которого не будет. */
.offer-tax{display:inline-block; font-size:11px; font-weight:700; padding:1px 7px; border-radius:999px;
  background:#eef3f1; color:var(--ink-dim); border:1px solid var(--card-brd);}
.offer-tax-vat{background:#e6f6ee; color:#12805c; border-color:#bde3d2;}
.offer-tax-unknown{background:transparent; font-weight:600; font-style:italic;}

/* 2.25.0: индекс надёжности контрагента в сделках и откликах. */
.gz-trust-chip{display:inline-flex;align-items:center;gap:4px;margin-left:6px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;line-height:1.5;white-space:nowrap;vertical-align:middle;cursor:help;border:1px solid transparent}
.gz-trust-chip i{font-size:13px}
.gz-trust-high{background:#e6f6ee;color:#0e6b57;border-color:#bfe5d3}
.gz-trust-medium{background:#eef4fb;color:#1d4f86;border-color:#cfe0f3}
.gz-trust-low{background:#fdecec;color:#a12626;border-color:#f5c7c7}
.gz-trust-unverified{background:#f4f4f2;color:#5b605d;border-color:#e2e3df}
