/* ==========================================================================
   funnel.css — воронка Slig eSIM (направления → страна → корзина → checkout).
   Использует токены из style.css. Подключать ПОСЛЕ style.css.
   ========================================================================== */

.breadcrumb{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;color:var(--muted-dim);font-size:.85rem;font-family:var(--font-mono);margin:1.8rem 0 1.4rem}
.breadcrumb a:hover{color:var(--muted)}
.breadcrumb .sep{opacity:.5}

.page-head{margin-bottom:1.8rem}
.page-head h1{font-size:var(--fs-h1);font-weight:800;letter-spacing:-.03em;line-height:1.04}
.page-head p{color:var(--muted);margin-top:.7rem;max-width:52ch;line-height:1.6}

/* ---- поиск по странам ---- */
.dir-search{position:relative;margin:1.6rem 0 2rem;max-width:560px}
.dir-search--sticky{position:sticky;top:calc(var(--header-h) + .5rem);z-index:20;margin:1rem 0 1.2rem}
.dir-search--sticky input{background:var(--bg);box-shadow:0 10px 30px -14px rgba(0,0,0,.8)}
.dir-head h1{font-size:clamp(1.6rem,1.2rem + 2vw,2.6rem)}
@media(max-width:640px){.dir-lead{display:none}.dir-head{margin-bottom:.2rem}.dir-head h1{font-size:1.5rem}}
body.is-tma .dir-head .eyebrow{display:none}
body.is-tma .dir-search--sticky{top:var(--tg-content-safe-area-inset-top,0px)}
/* плоские строки стран */
.country-list[hidden], .seo-h2[hidden]{display:none!important}
.country-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);overflow:hidden;margin-bottom:1.6rem}
.country-row{display:flex;align-items:center;gap:.9rem;padding:.8rem 1rem;border-top:1px solid var(--border-soft);color:var(--text);transition:background var(--dur-fast)}
.country-row:first-child{border-top:0}
.country-row:hover{background:var(--card-hover)}
.cr-flag{flex:0 0 36px;width:36px;height:36px;border-radius:50%;overflow:hidden;background:var(--well);border:1px solid var(--surface-3)}
.cr-flag .fi{width:100%;height:100%;object-fit:cover;display:block}
.cr-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}
.cr-name{font-weight:600;font-size:1rem;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cr-sub{font-size:.78rem;color:var(--muted-dim)}
.cr-price{font-family:var(--font-mono);font-weight:600;font-size:.92rem;color:var(--accent);white-space:nowrap}
.cr-arw{color:var(--muted-dim);font-size:1.3rem;line-height:1;margin-left:-.2rem}
.country-list .dir-empty{padding:2rem 1rem}
@media(min-width:900px){.country-list{display:grid;grid-template-columns:1fr 1fr;border:0;background:transparent;gap:.5rem 1rem;overflow:visible}
  .country-list .country-row{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card)}}
.dir-search svg{position:absolute;left:1.1rem;top:50%;transform:translateY(-50%);color:var(--muted-dim)}
.dir-search input{width:100%;background:var(--card);border:1px solid var(--border);color:var(--text);
  padding:1em 1.1em 1em 3rem;border-radius:var(--radius-full);font-size:1rem;outline:none;
  transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}
.dir-search input::placeholder{color:var(--muted-dim)}
.dir-search input:focus{border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-dim)}

/* ---- сетка направлений ---- */
.country-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.1rem;padding-bottom:4rem}
.country-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;
  cursor:pointer;display:flex;flex-direction:column;text-align:left;
  transition:transform var(--dur-med) var(--ease),border-color var(--dur-med) var(--ease),box-shadow var(--dur-med) var(--ease)}
.country-card:hover{transform:translateY(-5px);border-color:var(--accent-line);box-shadow:0 24px 60px -30px rgba(0,0,0,.7)}
.cc-tile{position:relative;aspect-ratio:16/10;overflow:hidden;
  background:radial-gradient(120% 120% at 20% 0%,var(--c1),transparent 60%),linear-gradient(160deg,var(--c2),#0a0d12 90%)}
.cc-tile::before{content:"";position:absolute;inset:0;
  background-image:radial-gradient(rgba(255,255,255,.10) 1px,transparent 1.4px);background-size:14px 14px;opacity:.5;
  -webkit-mask-image:linear-gradient(180deg,#000,transparent);mask-image:linear-gradient(180deg,#000,transparent)}
.cc-tile .watermark{position:absolute;right:-6px;bottom:-14px;font-size:6.6rem;line-height:1;opacity:.18;transform:rotate(-8deg)}
.cc-flag{position:absolute;top:.85rem;left:.85rem;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:0;
  font-size:1.15rem;background:rgba(8,9,11,.6);border:1.5px solid rgba(255,255,255,.18);backdrop-filter:blur(6px);box-shadow:0 4px 14px rgba(0,0,0,.4)}
.cc-flag .fi{width:100%;height:100%;object-fit:cover;display:block}
.fi-inline{width:24px;height:18px;border-radius:3px;object-fit:cover;display:inline-block;vertical-align:-4px;margin-right:5px;box-shadow:0 1px 4px rgba(0,0,0,.5)}
.cc-body{padding:1rem 1.1rem 1.15rem;display:flex;align-items:flex-end;justify-content:space-between;gap:.6rem}
.cc-name{font-weight:700;font-size:1.05rem;letter-spacing:-.01em}
.cc-from{font-family:var(--font-mono);font-size:.72rem;color:var(--muted-dim);text-transform:uppercase;letter-spacing:.05em;margin-top:.15rem}
.cc-price{font-family:var(--font-mono);font-weight:600;font-size:1.1rem;color:var(--accent);white-space:nowrap}
.dir-empty{grid-column:1/-1;text-align:center;color:var(--muted);padding:3rem 0}
.dir-skeleton{height:60px;background:linear-gradient(100deg,var(--card),var(--card-hover),var(--card));background-size:200% 100%;border-radius:var(--radius-lg);animation:sk 1.2s var(--ease) infinite}
@keyframes sk{to{background-position:-200% 0}}

/* ---- страница страны ---- */
.country-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:1.2rem;align-items:start;padding-bottom:3rem}
.country-layout>*{min-width:0}
/* мобильный порядок: заголовок → конфигуратор → свёрнутые подробности */
.country-copy{display:contents}
.country-copy .page-head{order:0}
.country-config{order:1}
.country-more{order:2}
@media(min-width:920px){
  .country-layout{grid-template-columns:minmax(0,1fr) 420px;gap:2rem;padding-bottom:4rem}
  .country-copy{display:block}
  .country-config{order:0}
  .country-more>summary{display:none}
}
.country-more{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:0 1.1rem}
.country-more>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;font-weight:600}
.country-more>summary::-webkit-details-marker{display:none}
.country-more>summary .plus{position:relative;width:18px;height:18px;flex:0 0 18px}
.country-more>summary .plus::before,.country-more>summary .plus::after{content:"";position:absolute;left:50%;top:50%;background:var(--accent);transform:translate(-50%,-50%);transition:transform var(--dur-fast) var(--ease)}
.country-more>summary .plus::before{width:14px;height:2px}
.country-more>summary .plus::after{width:2px;height:14px}
.country-more[open]>summary .plus::after{transform:translate(-50%,-50%) rotate(90deg)}
.country-more .lead{margin-top:.2rem}
.country-more .feat-list{margin:1.2rem 0 1.4rem}
.country-more .country-hero{margin-bottom:1.1rem}
@media(min-width:920px){.country-more{border:0;background:transparent;padding:0}.country-more>summary{display:none}.country-more .feat-list{margin:1.6rem 0 2rem}.country-more .country-hero{margin-bottom:0}}
@media(max-width:919px){.country-config .config-card{position:static}}
.feat-list{list-style:none;display:flex;flex-direction:column;gap:.9rem;margin:1.6rem 0 2rem}
.feat-list li{display:flex;gap:.7rem;align-items:flex-start;font-size:1rem}
.feat-list .ic{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--accent-dim);border:1px solid var(--accent-line);color:var(--accent);display:flex;align-items:center;justify-content:center;margin-top:1px}
.country-hero{position:relative;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:16/9;border:1px solid var(--border);
  background:radial-gradient(120% 120% at 20% 0%,var(--c1),transparent 60%),linear-gradient(160deg,var(--c2),#0a0d12 92%)}
.country-hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.10) 1px,transparent 1.4px);background-size:16px 16px;opacity:.45}
.country-hero .watermark{position:absolute;right:6px;bottom:-10px;font-size:10rem;line-height:1;opacity:.16;transform:rotate(-8deg)}
.country-hero .cc-flag{width:52px;height:52px;font-size:1.5rem;top:1.1rem;left:1.1rem}

.config-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.4rem;position:sticky;top:calc(var(--header-h) + 1rem)}
.seg{display:flex;gap:.35rem;background:var(--well);border:1px solid var(--border-soft);border-radius:var(--radius-full);padding:.32rem;margin-bottom:1.4rem}
.seg button{flex:1;padding:.6em 1em;border-radius:var(--radius-full);font-weight:600;font-size:.85rem;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;gap:.4em;transition:all var(--dur-fast) var(--ease)}
.seg button.is-active{background:var(--ink-inverse);color:var(--ink-inverse-text)}
.cfg-label{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-dim);margin-bottom:.65rem}
.chip-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.4rem}
.chip{padding:.6em 1.05em;border-radius:var(--radius-full);border:1px solid var(--border);color:var(--text);font-size:.9rem;font-weight:500;transition:all var(--dur-fast) var(--ease)}
.chip:hover:not(:disabled){border-color:var(--muted)}
.chip.is-active{background:var(--ink-inverse);color:var(--ink-inverse-text);border-color:var(--ink-inverse)}
.chip:disabled{opacity:.3;cursor:not-allowed}
.chip--price{display:inline-flex;flex-direction:column;align-items:center;gap:.1em;line-height:1.15;padding:.5em 1em}
.chip--price small{font-size:.74em;font-weight:500;color:var(--muted);font-family:var(--font-mono)}
.chip--price.is-active small{color:var(--ink-inverse-text);opacity:.65}
.cfg-price-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:.4rem;margin-bottom:1.2rem}
.cfg-price{font-family:var(--font-mono);font-weight:700;font-size:2rem;letter-spacing:-.02em}
.cfg-accordion{border-top:1px solid var(--border-soft)}
.cfg-acc-item{border-bottom:1px solid var(--border-soft)}
.cfg-acc-q{width:100%;display:flex;align-items:center;gap:.8rem;padding:1rem .2rem;text-align:left}
.cfg-acc-q .ic{width:32px;height:32px;border-radius:10px;background:var(--surface-2);border:1px solid var(--border-soft);color:var(--muted);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cfg-acc-q .txt{flex:1}
.cfg-acc-q .txt small{display:block;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted-dim)}
.cfg-acc-q .txt b{font-weight:600;font-size:.92rem}
.cfg-acc-q .arw{color:var(--muted-dim);transition:transform var(--dur-med) var(--ease)}
.cfg-acc-item.is-open .cfg-acc-q .arw{transform:rotate(90deg)}
.cfg-acc-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--dur-med) var(--ease)}
.cfg-acc-item.is-open .cfg-acc-a{grid-template-rows:1fr}
.cfg-acc-a .inner{overflow:hidden}
.cfg-acc-a p{color:var(--muted);font-size:.86rem;line-height:1.65;padding:0 .2rem 1rem}

/* ---- корзина в шапке + шторка ---- */
.cart-btn{position:relative}
.cart-count{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--accent-btn);color:var(--on-accent)b;font-family:var(--font-mono);font-size:.66rem;font-weight:600;display:none;align-items:center;justify-content:center}
.cart-count.show{display:flex}
.drawer-scrim{position:fixed;inset:0;z-index:190;background:rgba(4,6,9,.55);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity var(--dur-med) var(--ease),visibility var(--dur-med)}
.drawer-scrim.open{opacity:1;visibility:visible}
.cart-drawer{position:fixed;top:0;right:0;bottom:0;z-index:200;width:min(420px,100vw);background:var(--bg);border-left:1px solid var(--border);
  display:flex;flex-direction:column;transform:translateX(100%);transition:transform var(--dur-med) var(--ease)}
.cart-drawer.open{transform:translateX(0)}
.cart-head{display:flex;align-items:center;justify-content:space-between;padding:1.3rem 1.4rem;border-bottom:1px solid var(--border-soft)}
.cart-head h3{font-size:1.05rem;font-weight:700}
.cart-close{width:36px;height:36px;border-radius:50%;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--muted);transition:all var(--dur-fast) var(--ease)}
.cart-close:hover{border-color:var(--accent-line);color:var(--text)}
.cart-items{flex:1;overflow-y:auto;padding:1rem 1.4rem;display:flex;flex-direction:column;gap:.9rem}
.cart-empty{text-align:center;color:var(--muted-dim);padding:3rem 1rem;font-size:.9rem}
.cart-item{display:flex;gap:.9rem;align-items:center;background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius-md);padding:.85rem}
.ci-flag{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:1.2rem;background:var(--accent-dim);border:1px solid var(--accent-line)}
.ci-flag .fi{width:100%;height:100%;object-fit:cover;display:block}
.ci-main{flex:1;min-width:0}
.ci-name{font-weight:600;font-size:.95rem}
.ci-spec{font-family:var(--font-mono);font-size:.72rem;color:var(--muted-dim);margin-top:.15rem}
.ci-price{font-family:var(--font-mono);color:var(--accent);font-size:.9rem;margin-top:.3rem}
.ci-side{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}
.ci-del{color:var(--muted-dim);transition:color var(--dur-fast) var(--ease)}
.ci-del:hover{color:var(--danger)}
.qty{display:flex;align-items:center;gap:.1rem;background:var(--well);border:1px solid var(--border-soft);border-radius:var(--radius-full);padding:.15rem}
.qty button{width:26px;height:26px;border-radius:50%;color:var(--muted);font-size:1rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:all var(--dur-fast) var(--ease)}
.qty button:hover{color:var(--accent)}
.qty span{min-width:22px;text-align:center;font-family:var(--font-mono);font-size:.85rem}
.cart-foot{border-top:1px solid var(--border-soft);padding:1.3rem 1.4rem;display:flex;flex-direction:column;gap:1rem}
.cart-total{display:flex;align-items:center;justify-content:space-between}
.cart-total span{color:var(--muted)}
.cart-total b{font-family:var(--font-mono);font-size:1.4rem}

/* ---- checkout ---- */
.checkout-layout{display:grid;grid-template-columns:1fr;gap:1.6rem;align-items:start;padding-bottom:4rem}
@media(min-width:920px){.checkout-layout{grid-template-columns:1fr 400px}}
.guest-banner{display:flex;align-items:center;gap:1rem;background:var(--accent-dim);border:1px solid var(--accent-line);border-radius:var(--radius-md);padding:1.1rem 1.2rem;margin-bottom:1.8rem;flex-wrap:wrap}
.guest-banner .ic{width:44px;height:44px;border-radius:12px;background:var(--surface-2);color:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.guest-banner .gb-main{flex:1;min-width:180px}
.guest-banner .gb-main b{font-weight:600}
.guest-banner .gb-main p{color:var(--muted);font-size:.85rem;margin-top:.2rem}
.checkout-sec h2{font-size:1.3rem;font-weight:700;margin-bottom:1rem}
.email-row{display:flex;gap:.7rem;flex-wrap:wrap;align-items:flex-end}
.email-row .field{flex:1;min-width:200px;margin-bottom:0}
.summary{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.4rem;position:sticky;top:calc(var(--header-h) + 1rem)}
.sum-item{display:flex;gap:.8rem;align-items:center;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid var(--border-soft)}
.sum-line[hidden]{display:none!important}
.sum-line{display:flex;justify-content:space-between;align-items:center;padding:.35rem 0;color:var(--muted);font-size:.92rem}
.sum-line b{color:var(--text);font-family:var(--font-mono)}
.sum-total{display:flex;justify-content:space-between;align-items:center;padding-top:.9rem;margin-top:.4rem;border-top:1px solid var(--border);font-size:1.05rem;font-weight:700}
.sum-total b{font-family:var(--font-mono);font-size:1.3rem}
.terms{display:flex;gap:.6rem;align-items:flex-start;margin:1.2rem 0;font-size:.85rem;color:var(--muted);cursor:pointer}
.terms input{margin-top:.15rem;accent-color:var(--accent);width:16px;height:16px;flex-shrink:0}
.terms a{color:var(--accent)}
.pay-note{color:var(--muted-dim);font-size:.75rem;text-align:center;margin-top:.9rem;line-height:1.5}
.pay-methods{display:grid;grid-template-columns:repeat(4,1fr);gap:.45rem;margin-top:.9rem}
.pay-methods span{display:flex;align-items:center;justify-content:center;text-align:center;font-size:.72rem;font-weight:600;letter-spacing:.03em;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md,12px);padding:.6em .4em;min-height:2.6em;line-height:1.15}
@media(max-width:420px){.pay-methods{grid-template-columns:repeat(2,1fr)}}
.pay-alt{width:100%;margin-top:.7rem;padding:.9em;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--muted);font-weight:600;font-size:.9rem;display:flex;align-items:center;justify-content:center;gap:.4rem;transition:all var(--dur-fast) var(--ease)}
.pay-alt:hover{border-color:var(--accent-line);color:var(--text)}

/* ---- страница успеха ---- */
.success-esim{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.4rem;margin-bottom:1.2rem;display:flex;gap:1.4rem;flex-wrap:wrap;align-items:center}
.success-esim .qr{width:150px;height:150px;background:#fff;border-radius:var(--radius-md);padding:8px;flex-shrink:0}
.success-esim .qr img{width:100%;height:100%}
.success-esim .meta{flex:1;min-width:200px}
.success-esim .meta h3{font-size:1.1rem;display:flex;align-items:center;gap:.5rem}
.success-esim .meta .lpa{font-family:var(--font-mono);font-size:.72rem;color:var(--muted);word-break:break-all;background:var(--well);border:1px solid var(--border-soft);border-radius:var(--radius-sm);padding:.6rem;margin-top:.7rem}

/* ---- toast ---- */
.toast{position:fixed;bottom:1.4rem;left:50%;transform:translateX(-50%) translateY(200%);opacity:0;visibility:hidden;z-index:300;background:var(--card);border:1px solid var(--accent-line);color:var(--text);
  padding:.9em 1.3em;border-radius:var(--radius-full);font-size:.9rem;box-shadow:0 20px 50px -20px rgba(0,0,0,.8);transition:transform var(--dur-med) var(--ease);display:flex;align-items:center;gap:.5rem}
.toast.show{transform:translateX(-50%) translateY(0);opacity:1;visibility:visible}
.toast.err{border-color:rgba(255,93,93,.5)}
.toast .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent)}
.toast.err .dot{background:var(--danger);box-shadow:0 0 8px var(--danger)}

/* промокод в чекауте */
.promo-row{display:flex;gap:.5rem;margin:0 0 .6rem}
.promo-row input{flex:1;background:var(--well);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.65rem .9rem;color:var(--text);font-size:.9rem;text-transform:uppercase;letter-spacing:.04em}
.promo-row input:focus{border-color:var(--accent-line);outline:0;box-shadow:0 0 0 3px var(--accent-dim)}
.promo-row button{padding:.65rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--border);font-weight:600;font-size:.85rem;color:var(--text)}
.promo-row button:hover{border-color:var(--accent-line);background:var(--accent-dim)}
.promo-msg{font-size:.8rem;min-height:1rem;margin-bottom:.6rem}
.promo-msg.ok{color:var(--accent)}.promo-msg.err{color:var(--danger)}

.cfg-pergb{font-size:.78rem;color:var(--muted);margin-top:.15rem}

/* апселл в чекауте */
.upsell{display:flex;align-items:center;gap:.8rem;padding:.8rem 1rem;margin:.4rem 0 .8rem;border:1px dashed var(--accent-line);border-radius:var(--radius-md);background:var(--accent-dim)}
.upsell-main{display:flex;flex-direction:column;gap:.15rem;flex:1;min-width:0}
.upsell-main b{font-size:.92rem}
.upsell-main span{font-size:.8rem;color:var(--muted)}
.upsell .btn{white-space:nowrap;font-family:var(--font-mono)}

/* конфигуратор: подпись с кнопкой-подсказкой и мини-калькулятор */
.cfg-label--row{display:flex;align-items:center;justify-content:space-between;gap:.6rem}
.cfg-help{font-family:var(--font-sans, Inter, system-ui, sans-serif);font-size:.78rem;font-weight:500;color:var(--muted);text-decoration:underline;text-underline-offset:3px;text-transform:none;letter-spacing:0}
.cfg-calc{border:1px dashed var(--accent-line);border-radius:var(--radius-md);padding:.9rem 1rem;margin:-.4rem 0 1rem;background:var(--accent-dim)}
.cfg-calc-title{font-size:.9rem;font-weight:600;margin-bottom:.6rem}
.cfg-calc .chip-row{margin-bottom:.7rem}
.cfg-calc .chip{font-size:.82rem}
.cfg-calc-check{display:flex;align-items:center;gap:.5rem;font-size:.86rem;color:var(--muted)}
.cfg-calc-check input{accent-color:var(--accent);width:16px;height:16px}
.cfg-calc-out{margin-top:.7rem;font-size:.86rem;color:var(--muted);line-height:1.5}
.cfg-calc-out b{color:var(--text)}

/* подарок в чекауте */
.gift-toggle{margin-top:1.2rem;font-size:.92rem;color:var(--text)}
.gift-box{margin-top:.9rem;padding:1rem;border:1px dashed var(--accent-line);border-radius:var(--radius-md);background:var(--accent-dim)}
.gift-box textarea{width:100%;background:var(--bg);border:1px solid var(--border);color:var(--text);padding:.7em .9em;border-radius:var(--radius-sm);font:inherit;resize:vertical}

/* пустой результат поиска — с действиями */
.dir-empty--rich{padding:2.5rem 1rem;max-width:520px;margin:0 auto}
.dir-empty--rich .de-ic{width:48px;height:48px;border-radius:14px;background:var(--well);display:flex;align-items:center;justify-content:center;margin:0 auto .9rem;color:var(--muted)}
.dir-empty--rich .de-title{font-size:1.1rem;font-weight:700;color:var(--text);margin:0 0 .35rem}
.dir-empty--rich .de-sub{font-size:.9rem;line-height:1.45;margin:0 0 1rem}
.dir-empty--rich .de-chips{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center;margin-bottom:1rem}
.dir-empty--rich .de-link{font-size:.88rem;color:var(--accent);text-decoration:none;font-weight:600}
.dir-empty--rich .de-link:hover{text-decoration:underline}
/* чип «ещё N вариантов» в конфигураторе */
.chip.chip--more{border-style:dashed;color:var(--muted);background:transparent;font-weight:500}
.chip.chip--more:hover{color:var(--text);border-color:var(--text)}
.seg button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem}

/* карточка страны на главной / в каталоге — плоская, без градиентов */
.ccard{display:flex;flex-direction:column;gap:.85rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.1rem 1.15rem 1rem;color:var(--text);text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s}
.ccard:hover{transform:translateY(-3px);border-color:var(--accent-line);box-shadow:var(--shadow,0 16px 40px -24px rgba(0,0,0,.5))}
.ccard-top{display:flex;align-items:center;gap:.8rem}
.ccard-flag{width:48px;height:36px;border-radius:8px;object-fit:cover;flex:none;box-shadow:0 0 0 1px var(--border)}
.ccard-title{min-width:0;flex:1}
.ccard-title b{display:block;font-size:1.05rem;font-weight:700;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ccard-title span{display:block;font-size:.82rem;color:var(--muted);margin-top:.1rem}
.ccard-arw{width:28px;height:28px;border-radius:50%;background:var(--well);display:flex;align-items:center;justify-content:center;flex:none;color:var(--muted);transition:background .2s,color .2s}
.ccard-arw svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ccard:hover .ccard-arw{background:var(--accent-btn,var(--accent));color:var(--on-accent,#06301A)}
.ccard-chips{display:flex;flex-wrap:wrap;gap:.35rem;min-height:1.6rem}
.ccard-chips span{font-size:.74rem;font-weight:600;color:var(--muted);background:var(--well);border-radius:999px;padding:.2rem .55rem}
.ccard-chips span.is-unl{color:var(--accent);background:var(--accent-dim)}
.ccard-foot{display:flex;justify-content:space-between;align-items:baseline;padding-top:.8rem;border-top:1px solid var(--border);font-size:.82rem;color:var(--muted)}
.ccard-foot b{font-size:1.05rem;font-weight:800;color:var(--text);letter-spacing:-.01em}
