.dcv_shop{
  --dcv_bg:#1b2838;
  --dcv_panel:#1e2d3d;
  --dcv_panel2:#16202d;
  --dcv_border:rgba(102,192,244,.13);
  --dcv_text:#c7d5e0;
  --dcv_muted:rgba(199,213,224,.60);
  --dcv_accent:#66c0f4;
  --dcv_accent2:#2a475e;
  --dcv_ok:#a4d007;
  --dcv_err:#ff5a5f;

  /* Models list scroll sizing */
  --dcv_items_rows:6;
  --dcv_item_h:58px;
  --dcv_item_gap:4px;
  --dcv_items_pad:8px;
  color:var(--dcv_text);
  font-family:'Motiva Sans',Arial,Helvetica,sans-serif;
  background:var(--dcv_bg);
}

/* ── HEAD ─────────────────────────────────────────────── */
.dcv_shop_head{
  padding:14px 14px;
  border:1px solid rgba(102,192,244,.18);
  border-radius:4px;
  background:
    linear-gradient(180deg,#2a3f55 0%,#1b2838 40%,#16202d 100%);
  display:flex;
  align-items:stretch;
  justify-content:stretch;
  gap:14px;
  box-shadow:
    0 2px 0 rgba(0,0,0,.30),
    0 0 0 1px rgba(0,0,0,.40),
    inset 0 1px 0 rgba(255,255,255,.05);
}

/* ── HERO ─────────────────────────────────────────────── */
.dcv_hero{
  width:100%;
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:0;
  border-radius:3px;
  overflow:hidden;
  background:
    linear-gradient(90deg, rgba(11,17,24,.94) 0%, rgba(11,17,24,.70) 55%, rgba(11,17,24,.10) 100%);
  border:1px solid rgba(102,192,244,.14);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}

.dcv_hero_left{
  padding:20px 18px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:10px;
}

.dcv_hero_title{
  font-size:26px;
  font-weight:700;
  letter-spacing:.8px;
  text-transform:uppercase;
  color:#c7d5e0;
  text-shadow:0 1px 14px rgba(102,192,244,.30);
}

.dcv_hero_text{
  color:rgba(199,213,224,.75);
  font-size:13px;
  line-height:1.50;
  max-width:620px;
}

.dcv_hero_right{
  position:relative;
  min-height:140px;
}

.dcv_hero_img{
  position:absolute;
  inset:0;
  background-image:
    url("/modules_extra/dc_viver/hero.png"),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='520' height='280' viewBox='0 0 520 280'%3E%3Cdefs%3E%3ClinearGradient id='a' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%2366c0f4' stop-opacity='.12'/%3E%3Cstop offset='1' stop-color='%232a475e' stop-opacity='.26'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M380 -30 L560 90 L420 320 L240 200 Z' fill='url(%23a)'/%3E%3Ccircle cx='430' cy='80' r='52' fill='%2366c0f4' fill-opacity='.07'/%3E%3Ccircle cx='470' cy='210' r='78' fill='%23ffffff' fill-opacity='.03'/%3E%3C/svg%3E");
  background-repeat:no-repeat,no-repeat;
  background-position:right bottom, right center;
  background-size:contain, cover;
  filter:drop-shadow(0 18px 55px rgba(0,0,0,.60));
  animation:dcv_hero_float 3.8s ease-in-out infinite;
}

@keyframes dcv_hero_float{
  0%,100%{ transform:translateY(0) }
  50%{ transform:translateY(-7px) }
}

/* ── SHOP HEAD TITLE ──────────────────────────────────── */
.dcv_shop_title{
  font-size:18px;
  font-weight:700;
  letter-spacing:.8px;
  text-transform:uppercase;
  color:#c7d5e0;
  display:flex;
  align-items:center;
  gap:10px;
}

.dcv_shop_title i{
  font-size:20px;
  color:var(--dcv_accent);
  filter:drop-shadow(0 0 6px rgba(102,192,244,.45));
}

.dcv_shop_sub{
  margin-top:4px;
  font-size:11px;
  color:var(--dcv_muted);
  letter-spacing:.5px;
  text-transform:uppercase;
}

/* ── PILLS ────────────────────────────────────────────── */
.dcv_shop_pills{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.dcv_shop_pill{
  height:22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 10px;
  border-radius:2px;
  border:1px solid rgba(102,192,244,.22);
  background:rgba(102,192,244,.10);
  color:#66c0f4;
  font-weight:700;
  font-size:11px;
  letter-spacing:.5px;
  text-transform:uppercase;
}

.dcv_shop_pill.is_anim{
  border-color:rgba(164,208,7,.22);
  background:rgba(164,208,7,.10);
  color:#a4d007;
}

/* ── EMPTY ────────────────────────────────────────────── */
.dcv_shop_empty{
  margin-top:12px;
  padding:14px 16px;
  border-radius:3px;
  border:1px solid var(--dcv_border);
  background:rgba(0,0,0,.22);
  color:var(--dcv_muted);
  font-size:13px;
}

/* ── LAYOUT ───────────────────────────────────────────── */
.dcv_shop_layout{
  margin-top:12px;
  display:grid;
  grid-template-columns:320px 1fr;
  gap:10px;
  min-height:620px;
}

/* ── LIST PANEL ───────────────────────────────────────── */
.dcv_shop_list{
  border:1px solid rgba(102,192,244,.13);
  border-radius:4px;
  background:linear-gradient(180deg,#1e2d3d 0%,#16202d 100%);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  box-shadow:
    0 2px 0 rgba(0,0,0,.30),
    0 0 0 1px rgba(0,0,0,.30);
}

.dcv_shop_list::after{
  content:"";
  flex:1 1 auto;
  min-height:0;
  border-top:1px solid rgba(102,192,244,.06);
  background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.18) 100%);
  pointer-events:none;
}

.dcv_shop_list_head{
  padding:10px 12px;
  border-bottom:1px solid rgba(102,192,244,.10);
  background:rgba(0,0,0,.20);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.dcv_shop_list_title{
  font-weight:700;
  letter-spacing:.5px;
  text-transform:uppercase;
  font-size:13px;
  color:#c7d5e0;
  display:flex;
  align-items:center;
  gap:8px;
}

.dcv_shop_list_title i{
  font-size:16px;
  color:var(--dcv_accent);
}

.dcv_shop_list_tabs{
  display:flex;
  gap:6px;
}

.dcv_shop_list_tab{
  height:28px;
  padding:0 10px;
  border-radius:2px;
  border:1px solid rgba(199,213,224,.12);
  background:rgba(0,0,0,.28);
  color:rgba(199,213,224,.78);
  font-weight:700;
  font-size:11px;
  letter-spacing:.4px;
  text-transform:uppercase;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:6px;
  white-space:nowrap;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  transition:all .12s ease;
}

.dcv_shop_list_tab i{
  font-size:14px;
}

.dcv_shop_list_tab.is_active{
  border-color:rgba(102,192,244,.35);
  background:rgba(102,192,244,.12);
  color:var(--dcv_accent);
}

.dcv_shop_list_tab:hover:not(.is_active){
  border-color:rgba(199,213,224,.20);
  background:rgba(255,255,255,.06);
  color:#c7d5e0;
}

/* ── ITEMS SCROLL ─────────────────────────────────────── */
.dcv_shop_items{
  display:flex;
  flex-direction:column;
  overflow-y:auto;
  overflow-x:hidden;
  max-height:calc(var(--dcv_items_rows) * (var(--dcv_item_h) + var(--dcv_item_gap)) - var(--dcv_item_gap) + (var(--dcv_items_pad) * 2));
  -webkit-overflow-scrolling:touch;
  padding:var(--dcv_items_pad);
  gap:var(--dcv_item_gap);
  scrollbar-gutter:stable;
  scrollbar-width:thin;
  scrollbar-color:rgba(102,192,244,.30) transparent;
}

.dcv_shop_items::-webkit-scrollbar{ width:8px }
.dcv_shop_items::-webkit-scrollbar-track{ background:transparent }
.dcv_shop_items::-webkit-scrollbar-thumb{ background:rgba(102,192,244,.30); border-radius:4px }
.dcv_shop_items::-webkit-scrollbar-thumb:hover{ background:rgba(102,192,244,.40) }

/* ── SINGLE ITEM ──────────────────────────────────────── */
.dcv_shop_item{
  text-align:left;
  border:1px solid rgba(102,192,244,.10);
  background:
    linear-gradient(180deg, rgba(42,67,94,.38) 0%, rgba(27,40,56,.70) 100%);
  color:var(--dcv_text);
  padding:12px 12px;
  min-height:64px;
  cursor:pointer;
  transition:background .12s ease, border-color .12s ease;
  border-radius:3px;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  position:relative;
  overflow:hidden;
}

.dcv_shop_item::before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:2px;
  background:transparent;
  transition:background .12s ease;
}

.dcv_shop_item:hover{
  border-color:rgba(102,192,244,.22);
  background:linear-gradient(180deg, rgba(42,67,94,.42) 0%, rgba(27,40,56,.72) 100%);
}

.dcv_shop_item:hover::before{
  background:rgba(102,192,244,.40);
}

.dcv_shop_item.is_active{
  border-color:rgba(102,192,244,.34);
  background:
    linear-gradient(180deg, rgba(42,67,94,.55) 0%, rgba(27,40,56,.85) 100%);
}

.dcv_shop_item.is_active::before{
  background:var(--dcv_accent);
}

.dcv_shop_item_row{
  display:flex;
  align-items:center;
  gap:12px;
}

.dcv_shop_item_row > div{
  min-width:0;
  display:grid;
  gap:5px;
  align-content:center;
}

.dcv_shop_item_icon{
  width:44px;
  height:44px;
  border-radius:4px;
  border:1px solid rgba(102,192,244,.22);
  background:linear-gradient(180deg, rgba(102,192,244,.12) 0%, rgba(0,0,0,.18) 100%);
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  color:var(--dcv_accent);
}

.dcv_shop_item_icon i{
  font-size:18px;
}

.dcv_shop_item_title{
  font-weight:800;
  font-size:14px;
  letter-spacing:.2px;
  color:#c7d5e0;
  line-height:1.2;
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}

.dcv_shop_item_title_text{
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.dcv_shop_badge_new{
  height:16px;
  padding:0 7px;
  border-radius:2px;
  border:none;
  background:linear-gradient(180deg,#a4d007 0%,#7ab200 100%);
  color:#0b0f14;
  font-size:10px;
  font-weight:900;
  letter-spacing:.4px;
  text-transform:uppercase;
  flex:0 0 auto;
}

.dcv_shop_item_meta{
  margin-top:0;
  font-size:11px;
  color:var(--dcv_muted);
  display:flex;
  align-items:center;
  gap:6px;
}

.dcv_shop_item_meta i{
  font-size:13px;
  color:rgba(199,213,224,.55);
}

/* ── VIEW PANEL ───────────────────────────────────────── */
.dcv_shop_view{
  border:1px solid rgba(102,192,244,.13);
  border-radius:4px;
  background:linear-gradient(180deg,#1a2535 0%,#111b27 100%);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-width:0;
  box-shadow:
    0 2px 0 rgba(0,0,0,.30),
    0 0 0 1px rgba(0,0,0,.30);
}

.dcv_shop_view_top{
  display:flex;
  align-items:center;
  justify-content:stretch;
  gap:8px;
  padding:8px 10px;
  border-bottom:1px solid rgba(102,192,244,.10);
  background:rgba(0,0,0,.22);
}

.dcv_shop_tabs{
  display:flex;
  gap:4px;
}

.dcv_shop_tab{
  height:30px;
  padding:0 14px;
  border-radius:2px;
  border:1px solid rgba(199,213,224,.12);
  background:rgba(0,0,0,.26);
  color:rgba(199,213,224,.75);
  font-weight:700;
  font-size:12px;
  letter-spacing:.4px;
  text-transform:uppercase;
  cursor:pointer;
  transition:all .12s ease;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}

.dcv_shop_tab:hover:not(.is_active){
  border-color:rgba(199,213,224,.20);
  color:#c7d5e0;
  background:rgba(255,255,255,.05);
}

.dcv_shop_tab.is_active{
  border-color:rgba(102,192,244,.32);
  background:rgba(102,192,244,.12);
  color:var(--dcv_accent);
}

/* ── BUY BUTTON ───────────────────────────────────────── */
.dcv_shop_buy{
  height:36px;
  padding:0 18px;
  border-radius:2px;
  border:1px solid rgba(102,192,244,.32);
  background:
    linear-gradient(180deg,rgba(102,192,244,.22) 0%,rgba(42,71,94,.50) 100%);
  color:#c7d5e0;
  font-weight:700;
  font-size:12px;
  letter-spacing:.6px;
  text-transform:uppercase;
  cursor:pointer;
  white-space:nowrap;
  display:inline-flex;
  align-items:center;
  gap:8px;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  width:100%;
  justify-content:center;
  transition:all .12s ease;
  box-shadow:
    0 1px 0 rgba(0,0,0,.40),
    inset 0 1px 0 rgba(255,255,255,.06);
}

.dcv_shop_buy:hover{
  background:linear-gradient(180deg,rgba(102,192,244,.32) 0%,rgba(42,71,94,.65) 100%);
  border-color:rgba(102,192,244,.50);
  color:#dbe8f0;
  box-shadow:
    0 0 12px rgba(102,192,244,.18),
    0 1px 0 rgba(0,0,0,.40),
    inset 0 1px 0 rgba(255,255,255,.08);
}

.dcv_shop_buy.is_hidden{
  display:none;
}

.dcv_shop_buy i{
  font-size:16px;
  color:var(--dcv_accent);
}

.dcv_shop_buy:disabled{
  opacity:.45;
  cursor:not-allowed;
}

/* ── CANVAS ───────────────────────────────────────────── */
.dcv_shop_canvas_wrap{
  position:relative;
  flex:1;
  min-height:420px;
  isolation:isolate;
}

#dcv_canvas{
  width:100%;
  height:100%;
  display:block;
  position:relative;
  z-index:2;
}

.dcv_shop_canvas_wrap::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:
    radial-gradient(900px 500px at 50% 14%, rgba(102,192,244,.10) 0%, rgba(11,19,29,.18) 46%, rgba(0,0,0,.52) 100%),
    linear-gradient(180deg, #0b0f15 0%, #07090e 55%, #050709 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='420' height='420' viewBox='0 0 420 420'%3E%3Cdefs%3E%3CradialGradient id='g' cx='50%25' cy='34%25' r='72%25'%3E%3Cstop offset='0' stop-color='%2366c0f4' stop-opacity='.09'/%3E%3Cstop offset='.55' stop-color='%232a475e' stop-opacity='.06'/%3E%3Cstop offset='1' stop-color='%23000000' stop-opacity='0'/%3E%3C/radialGradient%3E%3Cpattern id='p' width='32' height='32' patternUnits='userSpaceOnUse'%3E%3Cpath d='M32 0H0V32' fill='none' stroke='%23ffffff' stroke-opacity='.025' stroke-width='1'/%3E%3C/pattern%3E%3C/defs%3E%3Crect width='420' height='420' fill='url(%23g)'/%3E%3Crect width='420' height='420' fill='url(%23p)'/%3E%3Cpath d='M-30 300 C90 210, 310 410, 460 290' fill='none' stroke='%2366c0f4' stroke-opacity='.07' stroke-width='1.5'/%3E%3Cpath d='M-60 120 C120 40, 290 220, 500 110' fill='none' stroke='%23ffffff' stroke-opacity='.025' stroke-width='1.5'/%3E%3Ccircle cx='320' cy='110' r='78' fill='%2366c0f4' fill-opacity='.025'/%3E%3C/svg%3E");
  background-size:cover,cover,420px 420px;
  background-position:center,center,center;
}

/* ── OVERLAY ──────────────────────────────────────────── */
.dcv_shop_overlay{
  position:absolute;
  inset:0;
  z-index:3;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  text-align:center;
  background:radial-gradient(circle at 50% 22%,rgba(102,192,244,.10) 0%,rgba(0,0,0,.25) 42%,rgba(0,0,0,.55) 100%);
  color:#c7d5e0;
  pointer-events:none;
}

.dcv_shop_overlay_loader{
  width:56px;
  height:56px;
  border-radius:4px;
  border:1px solid rgba(102,192,244,.16);
  background:rgba(102,192,244,.06);
  display:none;
  align-items:center;
  justify-content:center;
  box-shadow:0 12px 40px rgba(0,0,0,.40);
}

.dcv_shop_overlay.is_loading .dcv_shop_overlay_loader{
  display:flex;
}

.dcv_shop_overlay.is_loading .dcv_shop_overlay_icon{
  display:none;
}

.dcv_shop_overlay_icon{
  width:54px;
  height:54px;
  border-radius:4px;
  border:1px solid rgba(102,192,244,.20);
  background:rgba(102,192,244,.07);
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--dcv_accent);
  box-shadow:0 0 24px rgba(102,192,244,.14);
}

.dcv_shop_overlay_icon i{
  font-size:28px;
}

.dcv_shop_overlay_title{
  font-weight:700;
  font-size:16px;
  letter-spacing:.6px;
  text-transform:uppercase;
  color:#c7d5e0;
}

.dcv_shop_overlay_sub{
  font-size:12px;
  color:rgba(199,213,224,.65);
  letter-spacing:.2px;
}

/* ── DESCRIPTION ──────────────────────────────────────── */
.dcv_shop_desc{
  border-top:1px solid rgba(102,192,244,.10);
  background:rgba(0,0,0,.18);
  padding:12px 14px;
}

.dcv_shop_desc_title{
  font-weight:700;
  letter-spacing:.5px;
  text-transform:uppercase;
  font-size:12px;
  color:#66c0f4;
}

.dcv_shop_desc_text{
  margin-top:8px;
  color:rgba(199,213,224,.80);
  font-size:13px;
  line-height:1.55;
  white-space:pre-wrap;
}

/* ── MODAL ────────────────────────────────────────────── */
.dcv_modal{
  position:fixed;
  inset:0;
  display:none;
  z-index:9999;
}

.dcv_modal.is_open{
  display:block;
}

.dcv_modal_backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.72);
}

.dcv_modal_box{
  position:relative;
  width:min(520px,calc(100% - 22px));
  margin:8vh auto 0;
  border-radius:4px;
  border:1px solid rgba(102,192,244,.18);
  background:linear-gradient(180deg,#1e2d3d 0%,#16202d 60%,#111820 100%);
  box-shadow:
    0 24px 80px rgba(0,0,0,.60),
    0 0 0 1px rgba(0,0,0,.40),
    inset 0 1px 0 rgba(255,255,255,.04);
  overflow:hidden;
}

.dcv_modal_head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 12px;
  border-bottom:1px solid rgba(102,192,244,.10);
  background:rgba(0,0,0,.22);
}

.dcv_modal_title{
  font-weight:700;
  letter-spacing:.6px;
  text-transform:uppercase;
  font-size:13px;
  color:#c7d5e0;
}

.dcv_modal_close{
  height:28px;
  width:32px;
  border-radius:2px;
  border:1px solid rgba(199,213,224,.12);
  background:rgba(0,0,0,.28);
  color:rgba(199,213,224,.80);
  font-weight:700;
  cursor:pointer;
  transition:all .12s ease;
}

.dcv_modal_close:hover{
  border-color:rgba(199,213,224,.22);
  background:rgba(255,255,255,.06);
  color:#c7d5e0;
}

.dcv_modal_body{
  padding:12px 12px 14px;
}

.dcv_modal_row{
  display:grid;
  grid-template-columns:90px 1fr;
  gap:10px;
  align-items:center;
}

.dcv_modal_info{
  border-radius:3px;
  border:1px solid rgba(102,192,244,.12);
  background:rgba(0,0,0,.16);
  padding:10px 12px;
  margin-bottom:10px;
}

.dcv_modal_info_row{
  display:grid;
  grid-template-columns:70px 1fr;
  gap:10px;
  align-items:center;
}

.dcv_modal_info_row + .dcv_modal_info_row{
  margin-top:8px;
  padding-top:8px;
  border-top:1px solid rgba(102,192,244,.08);
}

.dcv_modal_info_k{
  color:rgba(199,213,224,.58);
  font-size:11px;
  font-weight:700;
  letter-spacing:.4px;
  text-transform:uppercase;
}

.dcv_modal_info_v{
  color:#c7d5e0;
  font-size:13px;
  font-weight:700;
  letter-spacing:.1px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* ── TARIF CARDS ──────────────────────────────────────── */
.dcv_modal_tarifs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}

.dcv_tarif_card{
  border-radius:3px;
  border:1px solid rgba(102,192,244,.12);
  background:rgba(0,0,0,.22);
  padding:10px 12px;
  cursor:pointer;
  text-align:left;
  color:#c7d5e0;
  transition:all .12s ease;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  position:relative;
  overflow:hidden;
}

.dcv_tarif_card::after{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:2px;
  background:transparent;
  transition:background .12s ease;
}

.dcv_tarif_card:hover{
  border-color:rgba(102,192,244,.24);
  background:rgba(42,67,94,.28);
}

.dcv_tarif_card:active{
  transform:translateY(1px);
}

.dcv_tarif_card.is_active{
  border-color:rgba(102,192,244,.36);
  background:rgba(42,67,94,.40);
}

.dcv_tarif_card.is_active::after{
  background:var(--dcv_accent);
}

.dcv_tarif_title{
  font-weight:700;
  font-size:13px;
  letter-spacing:.2px;
  line-height:1.2;
  color:#c7d5e0;
}

.dcv_tarif_sub{
  margin-top:5px;
  color:rgba(199,213,224,.65);
  font-size:12px;
  line-height:1.35;
}

/* ── MODAL FIELDS ─────────────────────────────────────── */
.dcv_modal_label{
  color:rgba(199,213,224,.68);
  font-weight:700;
  font-size:11px;
  letter-spacing:.5px;
  text-transform:uppercase;
}

.dcv_modal_select{
  width:100%;
  border-radius:3px;
  border:1px solid rgba(102,192,244,.18);
  background:rgba(0,0,0,.30);
  color:#c7d5e0;
  padding:9px 12px;
  outline:none;
  font-size:13px;
  transition:border-color .12s ease;
}

.dcv_modal_select:focus{
  border-color:rgba(102,192,244,.40);
}

.dcv_modal_note{
  margin-top:10px;
  color:rgba(199,213,224,.68);
  font-size:11px;
  letter-spacing:.2px;
}

.dcv_modal_actions{
  margin-top:12px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}

.dcv_modal_btn{
  width:100%;
  height:40px;
  padding:0 14px;
  border-radius:2px;
  border:1px solid rgba(102,192,244,.28);
  background:linear-gradient(180deg,rgba(102,192,244,.20) 0%,rgba(42,71,94,.42) 100%);
  color:var(--dcv_accent);
  font-weight:700;
  font-size:12px;
  letter-spacing:.5px;
  text-transform:uppercase;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  transition:all .12s ease;
  box-shadow:
    0 1px 0 rgba(0,0,0,.35),
    inset 0 1px 0 rgba(255,255,255,.05);
}

.dcv_modal_btn:hover{
  border-color:rgba(102,192,244,.45);
  box-shadow:
    0 0 10px rgba(102,192,244,.16),
    0 1px 0 rgba(0,0,0,.35),
    inset 0 1px 0 rgba(255,255,255,.07);
}

.dcv_modal_btn.is_secondary{
  border-color:rgba(199,213,224,.12);
  background:rgba(0,0,0,.26);
  color:rgba(199,213,224,.85);
}

.dcv_modal_btn.is_secondary:hover{
  border-color:rgba(199,213,224,.20);
  background:rgba(255,255,255,.05);
  box-shadow:none;
}

.dcv_modal_btn i{
  font-size:18px;
  opacity:.95;
}

.dcv_modal_result{
  margin-top:10px;
  border-radius:3px;
  border:1px solid rgba(102,192,244,.14);
  background:rgba(0,0,0,.18);
  padding:10px 12px;
  color:#c7d5e0;
  font-size:13px;
  display:none;
}

.dcv_modal_result.is_show{
  display:block;
}

/* ── RESPONSIVE ───────────────────────────────────────── */
@media (max-width: 980px){
  .dcv_shop_layout{grid-template-columns:1fr}
  .dcv_shop_layout{min-height:auto}
  .dcv_shop{--dcv_items_rows:2}
  .dcv_shop_view_top{flex-direction:column; align-items:stretch}
  .dcv_shop_buy{width:100%; height:44px; justify-content:center; font-size:13px}
  .dcv_shop_canvas_wrap{min-height:52vh}
  .dcv_shop_list_head{flex-wrap:wrap}
  .dcv_shop_list_tabs{width:100%}
  .dcv_shop_list_tab{flex:1; justify-content:center; height:34px}
  .dcv_hero{grid-template-columns:1fr}
  .dcv_hero_right{display:none}
  .dcv_modal_tarifs{grid-template-columns:1fr}
  .dcv_modal_actions{grid-template-columns:1fr}
}
