@import url("../fonts/font-awesome/all.min.css");
@font-face{font-family:"IRANSansWeb";src:url("../fonts/sans/IRANSansWeb.woff2") format("woff2"),url("../fonts/sans/IRANSansWeb.woff") format("woff");font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:"IRANSansWeb";src:url("../fonts/sans/IRANSansWeb_Medium.woff2") format("woff2"),url("../fonts/sans/IRANSansWeb_Medium.woff") format("woff");font-weight:700;font-style:normal;font-display:swap;}
@font-face{font-family:"IRANSansWeb";src:url("../fonts/sans/IRANSansWeb_Medium.woff2") format("woff2"),url("../fonts/sans/IRANSansWeb_Medium.woff") format("woff");font-weight:900;font-style:normal;font-display:swap;}
:root{
  --bg:#050a06;
  --card: rgba(18, 28, 22, .68);
  --stroke: rgba(255, 176, 0, .55);
  --stroke2: rgba(32, 224, 112, .35);
  --text:#e9ecff;
  --muted: rgba(233,236,255,.65);
  --accent:#ffb000;
  --accent2:#20e070;
  --danger:#ff4d4f;
  --ok:#22c55e;
  --shadow: 0 18px 60px rgba(0,0,0,.55);
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: system-ui, -apple-system, Segoe UI, Tahoma, Arial, sans-serif;
  background:
    radial-gradient(1200px 600px at 20% 20%, rgba(255,176,0,.20), transparent 60%),
    radial-gradient(900px 500px at 70% 60%, rgba(32,224,112,.14), transparent 60%),
    linear-gradient(180deg, #030604, #050a06);
  color:var(--text);
  direction: rtl;
}

a{color:inherit;text-decoration:none}
.container{
  max-width: 1440px;
  margin: 0 auto;
  padding: 22px;
}

.shell{
  display:grid;
  grid-template-columns: minmax(0,1fr) 285px;
  gap:18px;
  align-items:start;
}

.topbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:10px 0 18px;
}

.brand{
  display:flex;
  gap:10px;
  align-items:center;
  font-weight:700;
  letter-spacing:.2px;
}

.brand-badge{
  width:36px;height:36px;border-radius:12px;
  background: linear-gradient(135deg, rgba(255,176,0,.9), rgba(32,224,112,.75));
  box-shadow: var(--shadow);
}

.card{
  background: var(--card);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 18px;
  box-shadow: var(--shadow);
  backdrop-filter: blur(10px);
}

.card.pad{padding:18px}

.card.header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:16px 18px;
  border:1px solid rgba(255,176,0,.25);
}

.btn{
  border:none;
  border-radius:14px;
  padding:12px 14px;
  font-family:inherit;
  font-weight:700;
  cursor:pointer;
  display:inline-flex;
  gap:10px;
  align-items:center;
  justify-content:center;
  transition:.15s;
  user-select:none;
}

.btn-primary{
  background: linear-gradient(135deg, rgba(255,176,0,1), rgba(255,176,0,.75));
  color:white;
  border:1px solid rgba(255,255,255,.12);
}

.btn-ghost{
  background: rgba(255,255,255,.04);
  color: var(--text);
  border:1px solid rgba(255,255,255,.10);
}

.btn-outline{
  background: transparent;
  border:1px solid rgba(32,224,112,.35);
  color: var(--text);
}

.btn-danger{
  background: rgba(255,77,79,.12);
  border:1px solid rgba(255,77,79,.35);
  color: #ffd6d6;
}

.btn:hover{transform: translateY(-1px)}
.btn[disabled]{opacity:.45;cursor:not-allowed;transform:none}

.grid-2{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:16px
}

.field{
  width:100%;
  background: rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  padding:12px 14px;
  color: var(--text);
  outline:none;
}

.field::placeholder{color:rgba(233,236,255,.45)}

.label{
  font-size:13px;
  color:var(--muted);
  margin:0 0 8px
}

.sidebar{
  position:sticky;
  top:18px;
  padding:14px;
}

.nav{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.nav a{
  padding:12px 12px;
  border-radius:14px;
  color: var(--muted);
  border:1px solid transparent;
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:space-between;
}

.nav a.active{
  background: rgba(255,176,0,.14);
  border-color: rgba(255,176,0,.35);
  color: var(--text);
}

.nav a:hover{
  background: rgba(255,255,255,.04)
}

.badge{
  font-size:12px;
  padding:4px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  color: var(--muted);
}

.notice{
  border:1px solid rgba(32,224,112,.25);
  background: rgba(32,224,112,.06);
  padding:12px 14px;
  border-radius:14px;
  color: rgba(233,236,255,.9);
  line-height:1.9;
}

.notice strong{color: white}

.hr{
  height:1px;
  background:rgba(255,255,255,.08);
  margin:14px 0
}

/* ===========================
   TABLE (Desktop)
=========================== */
.table{
  width:100%;
  border-collapse:separate;
  border-spacing:0 10px;
}

.table th{
  font-size:12px;
  color:var(--muted);
  font-weight:700;
  text-align:right;
  padding:0 10px;
}

.table td{
  background: rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  padding:12px 10px;
}

/* رند برای RTL */
.table tr td:first-child{border-radius:0 14px 14px 0}
.table tr td:last-child{border-radius:14px 0 0 14px}

.table-wrap{width:100%}

/* ===========================
   MOBILE: Table -> Cards
=========================== */
@media (max-width: 720px){
  .table thead{display:none;}

  .table,
  .table tbody,
  .table tr{
    display:block;
    width:100%;
  }

  .table tr{
    margin-bottom:14px;
  }

  .table td{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    width:100%;
    border-radius:14px;
    padding:12px 12px;
    margin-top:8px;
  }

  .table td::before{
    content: attr(data-label);
    font-size:12px;
    color: var(--muted);
    font-weight:700;
    white-space:nowrap;
  }

  .table tr td:first-child,
  .table tr td:last-child{
    border-radius:14px;
  }
}

.kbd{
  font-size:12px;
  padding:4px 8px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  color: var(--muted);
}

.fab-help{
  position: fixed;
  left: 18px;
  bottom: 18px;
  z-index: 999;
}

.modal{
  position:fixed;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  background: rgba(0,0,0,.55);
  z-index:1000;
}

.modal.open{display:flex}

.modal .box{
  width:min(900px, 92vw);
  border-radius:18px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(15,18,28,.92);
  box-shadow: var(--shadow);
  padding:14px;
}

.modal .box .head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:6px 6px 12px;
}

.video-wrap{
  width:100%;
  aspect-ratio: 16 / 9;
  background: rgba(255,255,255,.04);
  border:1px dashed rgba(255,255,255,.12);
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  color: var(--muted);
}

.small{font-size:13px;color:var(--muted)}
.h1{font-size:18px;font-weight:800;margin:0}
.h2{font-size:14px;font-weight:800;margin:0;color:rgba(233,236,255,.85)}

/* ===========================
   RESPONSIVE (General)
=========================== */
@media (max-width: 920px){
  .shell{grid-template-columns: 1fr}
  .grid-2{grid-template-columns:1fr}
  .sidebar{position: static; top:auto;}
  .topbar{
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
  .topbar > div:last-child{
    width:100%;
    justify-content:flex-start;
    flex-wrap:wrap;
  }
}

/* ===== Buy Plans Grid ===== */
.plans-grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:14px;
  margin-top:12px;
}

.plan-card{
  background: rgba(255,255,255,.03);
  border:1px solid rgba(255,176,0,.22);
}

/* Tablet */
@media (max-width: 1100px){
  .plans-grid{grid-template-columns: repeat(2, 1fr);}
}

/* Mobile */
@media (max-width: 720px){
  .plans-grid{grid-template-columns: 1fr;}
}

/* ===========================
   Toast (Top-Center)
=========================== */
.toast-host{
  position: fixed;
  top: 18px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 99999;
  display:flex;
  flex-direction:column;
  gap:10px;
  pointer-events:none;
}

.toast{
  pointer-events:none;
  min-width: 240px;
  max-width: min(520px, 92vw);
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(15,18,28,.92);
  box-shadow: var(--shadow);
  color: rgba(233,236,255,.95);
  transform: translateY(-8px);
  opacity: 0;
  transition: .2s ease;
  line-height:1.8;
  font-weight:700;
  text-align: center;
}

.toast.show{
  transform: translateY(0);
  opacity: 1;
}

.toast-ok{
  border-color: rgba(34,197,94,.35);
  background: rgba(34,197,94,.10);
}

.toast-err{
  border-color: rgba(255,77,79,.35);
  background: rgba(255,77,79,.10);
}

.toast-info{
  border-color: rgba(32,224,112,.30);
  background: rgba(32,224,112,.08);
}

/* ===============================
   DNS group UI
=============================== */
.dns-group-title{
  display:flex;
  align-items:center;
  gap:10px;
}

.dns-sep{
  height:1px;
  background:rgba(255,255,255,.08);
  margin:14px 0;
}

/* ===============================
   DNS row (stable layout)
=============================== */
.dns-row{
  position: relative;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
}

/* دکمه آیکن */
.btn-icon{
  position: relative;
  padding:10px 12px;
  min-width:44px;
  justify-content:center;
  overflow: visible;
  z-index: 5;
}

/* ===============================
   Tooltip (button feedback)
=============================== */
.btn-feedback{
  position:absolute;
  top: 50%;
  right: 100%;
  margin-right: 10px;
  transform: translateY(-50%) translateX(6px);
  opacity:0;

  font-size:13px;
  padding:7px 10px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(15,18,28,.96);
  color: rgba(233,236,255,.95);

  width: max-content;
  max-width: 260px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;

  transition:.18s ease;
  pointer-events:none;
  z-index: 9999;
}

.btn-feedback.show{
  opacity:1;
  transform: translateY(-50%) translateX(0);
}

.btn-feedback.pos-left{
  right:auto;
  left: 100%;
  margin-right: 0;
  margin-left: 10px;
}

.btn-feedback.pos-right{
  right: 100%;
  left: auto;
}

.btn-feedback-ok{
  border-color: rgba(34,197,94,.35);
  background: rgba(34,197,94,.12);
}
.btn-feedback-err{
  border-color: rgba(255,77,79,.35);
  background: rgba(255,77,79,.12);
}
.btn-feedback-info{
  border-color: rgba(32,224,112,.35);
  background: rgba(32,224,112,.10);
}

@media (max-width: 720px){
  .btn-feedback{
    top: calc(100% + 8px);
    right: 0;
    left: auto;
    margin-right: 0;
    transform: translateY(0);
    max-width: 92vw;
    white-space: normal;
  }
  .btn-feedback.show{
    transform: translateY(0);
  }
}

/* ===== Force LTR for numbers like card/iban/phone ===== */
.ltr-num{
  direction: ltr;
  unicode-bidi: bidi-override;
  text-align: left;
  font-variant-numeric: tabular-nums;
}

/* ===========================
   Ticket UI
=========================== */
.ticket-select,
.ticket-select option{color:var(--text)}
.ticket-shell{overflow:hidden}
.ticket-page-shell{border:1px solid rgba(32,224,112,.18)}
.ticket-page-hero{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  flex-wrap:wrap;
  padding:4px 2px 8px;
}
.ticket-page-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(32,224,112,.09);
  border:1px solid rgba(32,224,112,.18);
  color:#baf8ff;
  font-size:12px;
  margin-bottom:12px;
}
.ticket-hero-stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(120px,1fr));
  gap:10px;
  min-width:min(100%,380px);
}
.ticket-hero-stat,
.ticket-admin-stat{
  padding:14px;
  border-radius:18px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  display:flex;
  flex-direction:column;
  gap:8px;
}
.ticket-hero-stat strong,
.ticket-admin-stat strong{font-size:24px;color:#fff}
.ticket-layout{
  display:grid;
  grid-template-columns:minmax(290px,380px) minmax(0,1fr);
  gap:16px;
  align-items:start;
}
.ticket-sidebar-col,
.ticket-main-col{display:flex;flex-direction:column;gap:16px}
.ticket-panel{
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.08);
  border-radius:22px;
  padding:16px;
}
.ticket-panel-head{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:flex-start;
  flex-wrap:wrap;
}
.ticket-compose-hint{
  margin-top:10px;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(255,176,0,.08);
  border:1px solid rgba(255,176,0,.18);
  color:rgba(233,236,255,.88);
  font-size:12px;
  line-height:1.9;
}
.ticket-channel-card .notice{line-height:2}
.ticket-contact-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:12px;
}
.ticket-page-manual-note{
  border-color:rgba(255,176,0,.25);
  background:rgba(255,176,0,.08);
  line-height:2;
}
.ticket-channel-id{
  margin-top:14px;
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  padding:14px;
  border-radius:16px;
  border:1px dashed rgba(32,224,112,.28);
  background:rgba(32,224,112,.05);
}
.ticket-thread-topbar{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
  flex-wrap:wrap;
}
.ticket-filter-tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.ticket-filter-tab{
  display:inline-flex;
  gap:8px;
  align-items:center;
  border-radius:999px;
  padding:9px 12px;
  border:1px solid rgba(255,255,255,.10);
  color:var(--muted);
  background:rgba(255,255,255,.03);
}
.ticket-filter-tab.is-active{
  color:#fff;
  border-color:rgba(255,176,0,.35);
  background:rgba(255,176,0,.14);
}
.ticket-conversation-shell{
  display:grid;
  grid-template-columns:minmax(250px,300px) minmax(0,1fr);
  gap:16px;
  margin-top:16px;
  align-items:start;
}
.ticket-list-pane,
.ticket-chat-pane{min-width:0}
.ticket-list{
  display:flex;
  flex-direction:column;
  gap:10px;
  max-height:740px;
  overflow:auto;
  padding-left:2px;
}
.ticket-list-item{
  display:block;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(9,14,25,.92);
  border-radius:18px;
  padding:14px;
  transition:.18s ease;
}
.ticket-list-item:hover{transform:translateY(-1px);border-color:rgba(32,224,112,.28)}
.ticket-list-item.is-active{border-color:rgba(32,224,112,.35);background:rgba(32,224,112,.08)}
.ticket-row-top,
.ticket-row-meta,
.ticket-bubble-head,
.ticket-chat-head,
.ticket-reply-actions,
.ticket-admin-actions{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}
.ticket-row-meta{margin-top:10px}
.ticket-row-snippet{
  margin-top:10px;
  color:rgba(233,236,255,.76);
  line-height:1.9;
  font-size:13px;
}
.ticket-row-time{
  margin-top:10px;
  color:var(--muted);
  font-size:12px;
}
.ticket-status-dot{
  width:10px;
  height:10px;
  border-radius:50%;
  display:inline-block;
  flex:0 0 auto;
}
.ticket-status-dot.is-open{background:#38bdf8;box-shadow:0 0 0 4px rgba(56,189,248,.14)}
.ticket-status-dot.is-waiting{background:#f59e0b;box-shadow:0 0 0 4px rgba(245,158,11,.14)}
.ticket-status-dot.is-answered{background:#8b5cf6;box-shadow:0 0 0 4px rgba(139,92,246,.16)}
.ticket-status-dot.is-closed{background:#94a3b8;box-shadow:0 0 0 4px rgba(148,163,184,.14)}
.ticket-chat-head{
  align-items:flex-start;
  padding-bottom:14px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.ticket-chat-head-side{
  display:flex;
  flex-direction:column;
  gap:8px;
  align-items:flex-end;
  text-align:left;
}
.ticket-chat-status{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  font-size:12px;
  border:1px solid rgba(255,255,255,.10);
}
.ticket-chat-status.is-open{background:rgba(56,189,248,.12);border-color:rgba(56,189,248,.20)}
.ticket-chat-status.is-waiting{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.20)}
.ticket-chat-status.is-answered{background:rgba(139,92,246,.12);border-color:rgba(139,92,246,.20)}
.ticket-chat-status.is-closed{background:rgba(148,163,184,.10);border-color:rgba(148,163,184,.18)}
.ticket-chat{
  display:flex;
  flex-direction:column;
  gap:12px;
  min-height:240px;
  max-height:620px;
  overflow:auto;
  padding-left:4px;
}
.ticket-chat-item{
  max-width:min(84%,720px);
  border-radius:22px;
  padding:14px 16px;
  border:1px solid rgba(255,255,255,.08);
  line-height:2;
}
.ticket-chat-item.is-admin{
  align-self:flex-start;
  border-color:rgba(255,176,0,.28);
  background:linear-gradient(180deg,rgba(255,176,0,.12),rgba(255,176,0,.07));
}
.ticket-chat-item.is-user{
  align-self:flex-end;
  border-color:rgba(32,224,112,.20);
  background:linear-gradient(180deg,rgba(32,224,112,.12),rgba(32,224,112,.05));
}
.ticket-bubble-body{margin-top:10px;white-space:pre-wrap}
.ticket-reply-box,
.ticket-closed-box{
  margin-top:16px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:20px;
  background:rgba(255,255,255,.03);
  padding:16px;
}
.ticket-closed-box{line-height:2;color:rgba(233,236,255,.82)}
.ticket-empty-state{
  min-height:220px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:rgba(233,236,255,.72);
  border:1px dashed rgba(255,255,255,.10);
  border-radius:18px;
  padding:20px;
  line-height:2;
  background:rgba(255,255,255,.02);
}
.ticket-guide{
  margin-top:16px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  background:rgba(255,255,255,.03)
}
.ticket-guide summary{
  list-style:none;
  cursor:pointer;
  padding:14px 16px;
  font-weight:800
}
.ticket-guide summary::-webkit-details-marker{display:none}
.ticket-guide-body{padding:0 16px 16px}
.ticket-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.ticket-mini-card{border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px;background:rgba(10,16,28,.9);line-height:1.9}
.ticket-admin-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-top:14px;
}
.ticket-admin-stat.is-active{
  border-color:rgba(255,176,0,.35);
  background:rgba(255,176,0,.12);
}
.ticket-admin-actions{margin-top:14px}
.admin-conversation-shell{grid-template-columns:minmax(320px,390px) minmax(0,1fr)}
@media (max-width: 1080px){
  .ticket-layout,
  .ticket-conversation-shell,
  .admin-conversation-shell{grid-template-columns:1fr}
  .ticket-chat-item{max-width:100%}
}
@media (max-width: 820px){
  .ticket-hero-stats,
  .ticket-admin-stats,
  .ticket-mini-grid{grid-template-columns:1fr}
  .ticket-channel-id,
  .ticket-chat-head-side{align-items:flex-start;text-align:right}
}
@media (max-width: 720px){
  .table thead{display:none;}

  .table,
  .table tbody,
  .table tr{
    display:block;
    width:100%;
  }

  .table tr{
    margin-bottom:14px;
  }

  .table td{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    width:100%;
    border-radius:14px;
    padding:12px 12px;
    margin-top:8px;
  }

  .table td::before{
    content: attr(data-label);
    font-size:12px;
    color: var(--muted);
    font-weight:700;
    white-space:nowrap;
  }

  .table tr td:first-child,
  .table tr td:last-child{
    border-radius:14px;
  }
}

.kbd{
  font-size:12px;
  padding:4px 8px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  color: var(--muted);
}

.fab-help{
  position: fixed;
  left: 18px;
  bottom: 18px;
  z-index: 999;
}

.modal{
  position:fixed;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  background: rgba(0,0,0,.55);
  z-index:1000;
}

.modal.open{display:flex}

.modal .box{
  width:min(900px, 92vw);
  border-radius:18px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(15,18,28,.92);
  box-shadow: var(--shadow);
  padding:14px;
}

.modal .box .head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:6px 6px 12px;
}

.video-wrap{
  width:100%;
  aspect-ratio: 16 / 9;
  background: rgba(255,255,255,.04);
  border:1px dashed rgba(255,255,255,.12);
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  color: var(--muted);
}

.small{font-size:13px;color:var(--muted)}
.h1{font-size:18px;font-weight:800;margin:0}
.h2{font-size:14px;font-weight:800;margin:0;color:rgba(233,236,255,.85)}

/* ===========================
   RESPONSIVE (General)
=========================== */
@media (max-width: 920px){
  .shell{grid-template-columns: 1fr}
  .grid-2{grid-template-columns:1fr}
  .sidebar{position: static; top:auto;}
  .topbar{
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
  .topbar > div:last-child{
    width:100%;
    justify-content:flex-start;
    flex-wrap:wrap;
  }
}

/* ===== Buy Plans Grid ===== */
.plans-grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:14px;
  margin-top:12px;
}

.plan-card{
  background: rgba(255,255,255,.03);
  border:1px solid rgba(255,176,0,.22);
}

/* Tablet */
@media (max-width: 1100px){
  .plans-grid{grid-template-columns: repeat(2, 1fr);}
}

/* Mobile */
@media (max-width: 720px){
  .plans-grid{grid-template-columns: 1fr;}
}

/* ===========================
   Toast (Top-Center)
=========================== */
.toast-host{
  position: fixed;
  top: 18px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 99999;
  display:flex;
  flex-direction:column;
  gap:10px;
  pointer-events:none;
}

.toast{
  pointer-events:none;
  min-width: 240px;
  max-width: min(520px, 92vw);
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(15,18,28,.92);
  box-shadow: var(--shadow);
  color: rgba(233,236,255,.95);
  transform: translateY(-8px);
  opacity: 0;
  transition: .2s ease;
  line-height:1.8;
  font-weight:700;
  text-align: center;
}

.toast.show{
  transform: translateY(0);
  opacity: 1;
}

.toast-ok{
  border-color: rgba(34,197,94,.35);
  background: rgba(34,197,94,.10);
}

.toast-err{
  border-color: rgba(255,77,79,.35);
  background: rgba(255,77,79,.10);
}

.toast-info{
  border-color: rgba(32,224,112,.30);
  background: rgba(32,224,112,.08);
}

/* ===============================
   DNS group UI
=============================== */
.dns-group-title{
  display:flex;
  align-items:center;
  gap:10px;
}

.dns-sep{
  height:1px;
  background:rgba(255,255,255,.08);
  margin:14px 0;
}

/* ===============================
   DNS row (stable layout)
=============================== */
.dns-row{
  position: relative;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
}

/* دکمه آیکن */
.btn-icon{
  position: relative;
  padding:10px 12px;
  min-width:44px;
  justify-content:center;
  overflow: visible;
  z-index: 5;
}

/* ===============================
   Tooltip (button feedback)
=============================== */
.btn-feedback{
  position:absolute;
  top: 50%;
  right: 100%;
  margin-right: 10px;
  transform: translateY(-50%) translateX(6px);
  opacity:0;

  font-size:13px;
  padding:7px 10px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(15,18,28,.96);
  color: rgba(233,236,255,.95);

  width: max-content;
  max-width: 260px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;

  transition:.18s ease;
  pointer-events:none;
  z-index: 9999;
}

.btn-feedback.show{
  opacity:1;
  transform: translateY(-50%) translateX(0);
}

.btn-feedback.pos-left{
  right:auto;
  left: 100%;
  margin-right: 0;
  margin-left: 10px;
}

.btn-feedback.pos-right{
  right: 100%;
  left: auto;
}

.btn-feedback-ok{
  border-color: rgba(34,197,94,.35);
  background: rgba(34,197,94,.12);
}
.btn-feedback-err{
  border-color: rgba(255,77,79,.35);
  background: rgba(255,77,79,.12);
}
.btn-feedback-info{
  border-color: rgba(32,224,112,.35);
  background: rgba(32,224,112,.10);
}

@media (max-width: 720px){
  .btn-feedback{
    top: calc(100% + 8px);
    right: 0;
    left: auto;
    margin-right: 0;
    transform: translateY(0);
    max-width: 92vw;
    white-space: normal;
  }
  .btn-feedback.show{
    transform: translateY(0);
  }
}

/* ===== Force LTR for numbers like card/iban/phone ===== */
.ltr-num{
  direction: ltr;
  unicode-bidi: bidi-override;
  text-align: left;
  font-variant-numeric: tabular-nums;
}

/* ===========================
   Ticket UI
=========================== */
.ticket-select,
select.field{
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  color:var(--text);
  background-color:rgba(255,255,255,.05);
}
select.field option,
.ticket-select option{
  color:#e9ecff;
  background:#101521;
}
.ticket-shell{overflow:hidden}
.ticket-layout{
  display:grid;
  grid-template-columns: minmax(0,1.15fr) minmax(320px,.85fr);
  gap:16px;
  align-items:start;
}
.ticket-panel{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  padding:16px;
}
.ticket-panel-head{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}
.ticket-list{display:flex;flex-direction:column;gap:10px;max-height:520px;overflow:auto;padding-left:2px}
.ticket-list-item{
  display:block;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.09);
  border-radius:16px;
  background:rgba(16,21,33,.95);
  color:var(--text);
  padding:14px;
  transition:.16s ease;
}
.ticket-list-item:hover{transform:translateY(-1px);border-color:rgba(32,224,112,.28)}
.ticket-list-item.is-active{border-color:rgba(32,224,112,.35);background:rgba(32,224,112,.08)}
.ticket-chat{display:flex;flex-direction:column;gap:12px}
.ticket-chat-item{
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  padding:14px;
  background:rgba(255,255,255,.03);
}
.ticket-chat-item.is-admin{border-color:rgba(255,176,0,.28);background:rgba(255,176,0,.08)}
.ticket-chat-item.is-user{border-color:rgba(32,224,112,.20);background:rgba(10,16,28,.95)}
.ticket-guide{
  margin-top:14px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  background:rgba(255,255,255,.03);
  overflow:hidden;
}
.ticket-guide summary{
  list-style:none;
  cursor:pointer;
  padding:14px 16px;
  font-weight:800;
}
.ticket-guide summary::-webkit-details-marker{display:none}
.ticket-guide-body{padding:0 16px 16px}
.ticket-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.ticket-mini-card{border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px;background:rgba(10,16,28,.9);line-height:1.9}
@media (max-width: 980px){
  .ticket-layout{grid-template-columns:1fr}
}
@media (max-width: 720px){
  .ticket-mini-grid{grid-template-columns:1fr}
}


/* Ticket user panel stability fixes */
.ticket-sidebar-col,
.ticket-main-col,
.ticket-compose-card,
.ticket-thread-panel,
.ticket-panel,
.messenger-layout,
.ticket-conversation-shell,
.ticket-list-pane,
.ticket-chat-pane{
  min-width:0;
}
.ticket-compose-form .grid-2{grid-template-columns:1fr;}
@media (max-width: 1360px){
  .messenger-layout{grid-template-columns:1fr;}
  .ticket-sidebar-col{order:2;}
  .ticket-main-col{order:1;}
}
@media (max-width: 520px){
  .ticket-page-shell{padding:0;}
  .ticket-panel{padding:14px;}
  .ticket-filter-tabs{width:100%;}
  .ticket-filter-tab{flex:1 1 calc(50% - 8px);justify-content:center;}
  .ticket-row-top strong{display:block;width:100%;line-height:1.9;}
}


/* ===== Contact page layout fixes ===== */
.container-wide.ticket-page-container{
  max-width: 1500px;
}
.ticket-page-layout{
  grid-template-columns: minmax(0,1fr) 246px;
  gap: 20px;
  align-items: start;
}
.ticket-page-layout > :first-child,
.ticket-page-layout > :last-child,
.ticket-page-layout .ticket-thread-panel,
.ticket-page-layout .ticket-list-item,
.ticket-page-layout .ticket-chat-item,
.ticket-page-layout .ticket-panel,
.ticket-page-layout .ticket-conversation-shell,
.ticket-page-layout .ticket-layout,
.ticket-page-layout .ticket-main-col,
.ticket-page-layout .ticket-sidebar-col,
.ticket-page-layout .ticket-list-pane,
.ticket-page-layout .ticket-chat-pane{
  min-width:0;
}
.ticket-page-layout .sidebar{
  width:100%;
}
.ticket-page-layout .ticket-layout{
  grid-template-columns: minmax(280px,320px) minmax(0,1fr);
}
.ticket-page-layout .ticket-conversation-shell{
  grid-template-columns: minmax(230px,280px) minmax(0,1fr);
}
.ticket-page-layout .ticket-list{
  max-height: 680px;
}
.ticket-page-layout .ticket-chat{
  overflow-wrap:anywhere;
}
.ticket-page-layout .ticket-bubble-body,
.ticket-page-layout .ticket-row-snippet,
.ticket-page-layout .notice{
  overflow-wrap:anywhere;
}
.badge-success{
  background:rgba(34,197,94,.12);
  border-color:rgba(34,197,94,.30);
  color:#d8ffe7;
}
.badge-muted{
  background:rgba(148,163,184,.10);
  border-color:rgba(148,163,184,.22);
  color:#dbe6f5;
}
@media (max-width: 1440px){
  .container-wide.ticket-page-container{max-width:1320px;}
  .ticket-page-layout{grid-template-columns:minmax(0,1fr) 230px;}
}
@media (max-width: 1280px){
  .container-wide.ticket-page-container{max-width:1200px;}
  .ticket-page-layout{grid-template-columns:1fr;}
  .ticket-page-layout > :last-child{order:2;}
  .ticket-page-layout > :first-child{order:1;}
  .ticket-page-layout .sidebar{position:static;}
}
@media (max-width: 1180px){
  .ticket-page-layout .ticket-layout,
  .ticket-page-layout .ticket-conversation-shell{grid-template-columns:1fr;}
}


.ticket-page-hero-simple{grid-template-columns:minmax(0,1fr);}
.ticket-page-response-note{line-height:2;}
.ticket-channel-stack{display:flex;flex-direction:column;gap:12px;margin-top:12px}

.ticket-page-alert-card .notice{line-height:2;}
.ticket-conversation-shell.single-ticket-mode{grid-template-columns:minmax(0,1fr) !important;}
.ticket-conversation-shell.single-ticket-mode .ticket-chat-pane{min-width:0;}
.ticket-chat-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;flex-wrap:wrap;}
@media (min-width: 1181px){
  .ticket-page-layout .ticket-layout{grid-template-columns:minmax(260px,300px) minmax(0,1fr);}
  .ticket-page-layout .ticket-conversation-shell{grid-template-columns:minmax(210px,245px) minmax(0,1fr);}
  .ticket-conversation-shell.single-ticket-mode{grid-template-columns:minmax(0,1fr) !important;}
}


.ticket-layout.ticket-create-focus{
  grid-template-columns:minmax(360px,440px) minmax(0,1fr);
}
.ticket-layout.ticket-create-focus .ticket-compose-card{
  min-height:100%;
}
.ticket-layout.ticket-create-focus .ticket-compose-form textarea.field{
  min-height:180px !important;
}
@media (min-width: 1181px){
  .ticket-page-layout .ticket-layout.ticket-create-focus{
    grid-template-columns:minmax(360px,430px) minmax(0,1fr);
  }
}


.small{font-size:13px;color:var(--muted)}
.h2{font-size:20px;font-weight:900}
.kbd{font-size:11px;padding:4px 8px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}
.ltr-num{direction:ltr;unicode-bidi:embed}
.plans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.plan-grid-enhanced{align-items:stretch}
.plan-card.pro{position:relative;overflow:hidden}
.plan-card.pro::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg, rgba(255,176,0,.9), rgba(32,224,112,.85))}
.plan-card.pro.gold::before{background:linear-gradient(90deg, rgba(255,215,0,.95), rgba(255,170,0,.75))}
.plan-disabled{opacity:.5;filter:grayscale(.15)}
.plan-topline,.plan-chip-row,.quick-actions,.subscription-strip{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.plan-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);font-size:13px;color:var(--muted)}
.plan-title{font-size:22px;font-weight:900;margin-top:14px}
.plan-price{margin-top:12px;font-size:28px;font-weight:900}
.plan-price span{font-size:14px;color:var(--muted);font-weight:700}
.plan-meta-list{display:grid;gap:8px;margin-top:12px;color:rgba(233,236,255,.92)}
.plan-meta-list div{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07)}
.plan-section-head{padding:4px 2px}
.plan-section-head.gold .h2{color:#ffe082}
.badge-gold{border-color:rgba(255,215,0,.28);color:#ffe082;background:rgba(255,215,0,.08)}
.dashboard-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:16px;border:1px solid rgba(255,176,0,.28);background:linear-gradient(180deg, rgba(255,176,0,.12), rgba(32,224,112,.05))}
.hero-title{font-size:28px;font-weight:900;margin-top:6px}
.hero-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.hero-stat{padding:14px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.hero-stat span{display:block;font-size:12px;color:var(--muted);margin-bottom:8px}
.hero-stat strong{font-size:20px}
.subscription-strip{padding:14px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
@media (max-width: 980px){.plans-grid{grid-template-columns:1fr 1fr}.dashboard-hero{grid-template-columns:1fr}.shell{grid-template-columns:1fr}}
@media (max-width: 720px){.plans-grid,.hero-stats,.grid-2{grid-template-columns:1fr}.container{padding:14px}.hero-title{font-size:22px}}

.benefit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.benefit-pill{display:flex;align-items:center;gap:9px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);font-size:13px;color:rgba(233,236,255,.94)}
.benefit-pill i,.plan-meta-list i,.plan-chip i{color:rgba(32,224,112,.88)}
.plan-card.pro.silver::before{background:linear-gradient(90deg, rgba(192,210,235,.95), rgba(32,224,112,.65))}
@media (max-width: 720px){.benefit-grid{grid-template-columns:1fr}}


/* ===== Visual polish: invite, profile, payouts, plan platform icons ===== */
.page-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:16px;align-items:center;border:1px solid rgba(255,176,0,.26);background:linear-gradient(135deg, rgba(255,176,0,.14), rgba(32,224,112,.06));overflow:hidden;position:relative}
.page-hero::after{content:"";position:absolute;inset:auto -80px -110px auto;width:220px;height:220px;border-radius:50%;background:rgba(32,224,112,.09);filter:blur(2px);pointer-events:none}
.mini-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;position:relative;z-index:1}
.mini-stat{padding:14px;border-radius:16px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.085)}
.mini-stat span{display:block;font-size:12px;color:var(--muted);margin-bottom:8px}
.mini-stat strong{display:block;font-size:18px;font-weight:900;line-height:1.6}
.section-headline{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.copy-box{display:flex;align-items:center;gap:10px;padding:10px;border-radius:18px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08)}
.copy-box span{direction:ltr;text-align:left;flex:1;overflow:auto;white-space:nowrap;padding:0 6px;color:rgba(233,236,255,.96)}
.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.steps-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}
.step-card{padding:14px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:7px;min-height:118px}
.step-card i{font-size:20px;color:rgba(32,224,112,.88)}
.step-card strong{font-size:14px;font-weight:900}
.step-card span{font-size:12px;color:var(--muted);line-height:1.8}
.profile-grid,.payout-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
@media (max-width: 980px){.page-hero,.profile-grid,.payout-grid{grid-template-columns:1fr}.mini-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 720px){.mini-stat-grid,.steps-grid,.steps-grid.compact{grid-template-columns:1fr}.copy-box{align-items:stretch;flex-direction:column}.copy-box .btn{width:100%}}

/* ===== Safe UI polish: contact/ticket mobile + current requested tweaks ===== */
.ticket-support-hero{
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(32,224,112,.16);
  background:
    radial-gradient(circle at top right, rgba(32,224,112,.12), transparent 34%),
    linear-gradient(180deg, rgba(255,176,0,.10), rgba(255,255,255,.025));
}
.ticket-support-stats{align-self:stretch;min-width:min(100%,360px)}
.ticket-support-stats .ticket-hero-stat span{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px}
.ticket-support-stats .ticket-hero-stat strong{font-variant-numeric:tabular-nums}
.ticket-page-layout .ticket-panel{box-shadow:0 14px 38px rgba(0,0,0,.16)}
.ticket-page-layout .ticket-compose-card,
.ticket-page-layout .ticket-thread-panel{border-color:rgba(32,224,112,.12)}
.ticket-page-layout .ticket-channel-card{border-color:rgba(255,176,0,.16)}
.ticket-page-layout .ticket-list-item{position:relative;overflow:hidden}
.ticket-page-layout .ticket-list-item::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,rgba(32,224,112,.55),rgba(255,176,0,.45));opacity:.55}
.ticket-page-layout .ticket-list-item.is-active::before{opacity:1}
.ticket-page-layout .ticket-chat-pane{min-width:0}
.ticket-page-layout textarea.field,
.ticket-page-layout input.field,
.ticket-page-layout select.field{max-width:100%}

@media (max-width: 760px){
  .container-wide.ticket-page-container{max-width:100%;padding-left:10px;padding-right:10px}
  .ticket-page-layout{gap:12px}
  .ticket-page-shell{padding:12px !important;border-radius:22px}
  .ticket-support-hero{padding:14px}
  .ticket-page-kicker{width:100%;justify-content:center;text-align:center}
  .ticket-support-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;min-width:0}
  .ticket-support-stats .ticket-hero-stat{padding:10px 8px;border-radius:14px;text-align:center;align-items:center}
  .ticket-support-stats .ticket-hero-stat span{justify-content:center;font-size:11px}
  .ticket-support-stats .ticket-hero-stat strong{font-size:18px}
  .ticket-page-layout .ticket-layout,
  .ticket-page-layout .ticket-conversation-shell{display:block;width:100%}
  .ticket-page-layout .ticket-sidebar-col,
  .ticket-page-layout .ticket-main-col{width:100%;gap:12px}
  .ticket-page-layout .ticket-panel{padding:14px;border-radius:20px;margin-top:12px}
  .ticket-page-layout .ticket-main-col .ticket-panel:first-child{margin-top:0}
  .ticket-thread-topbar{flex-direction:column;align-items:stretch}
  .ticket-filter-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%}
  .ticket-filter-tab{padding:10px 8px;justify-content:center;white-space:nowrap;font-size:12px}
  .ticket-list{max-height:none;overflow:visible;padding-left:0;margin-bottom:12px}
  .ticket-list-item{padding:13px;border-radius:16px}
  .ticket-row-top{align-items:flex-start}
  .ticket-row-top strong{font-size:13px;line-height:1.9;overflow-wrap:anywhere}
  .ticket-row-meta{justify-content:flex-start}
  .ticket-conversation-shell.single-ticket-mode .ticket-chat-pane,
  .ticket-chat-pane{width:100%;margin-top:12px}
  .ticket-chat-head{display:block}
  .ticket-chat-head-side{width:100%;align-items:stretch;text-align:right;margin-top:12px}
  .ticket-chat-head-side form .btn{width:100%}
  .ticket-chat{max-height:none;min-height:170px;overflow:visible;padding-left:0}
  .ticket-chat-item{max-width:100%;border-radius:18px;padding:13px;line-height:1.9}
  .ticket-bubble-head{align-items:flex-start}
  .ticket-reply-box{padding:14px;border-radius:18px}
  .ticket-reply-actions{align-items:stretch;flex-direction:column}
  .ticket-reply-actions .btn{width:100%}
  .ticket-channel-id{align-items:stretch;flex-direction:column}
  .ticket-channel-id .btn{width:100%}
  .ticket-contact-actions .btn{width:100%;justify-content:center}
}

@media (max-width: 420px){
  .ticket-support-stats{grid-template-columns:1fr}
  .ticket-filter-tabs{grid-template-columns:1fr}
}

/* ===========================
   Status / Announcements
=========================== */
.status-hero{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,176,0,.28);
  background:
    radial-gradient(600px 220px at 12% 20%, rgba(32,224,112,.16), transparent 65%),
    linear-gradient(135deg, rgba(255,176,0,.13), rgba(255,255,255,.04));
}
.status-hero h1{margin:12px 0 8px;font-size:28px;line-height:1.5}
.status-hero p{margin:0;color:var(--muted);line-height:1.9}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.service-card{
  position:relative;
  overflow:hidden;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.10);
  border-radius:20px;
  padding:16px;
  box-shadow:var(--shadow);
}
.service-card:before{
  content:"";
  position:absolute;
  inset:auto -35px -45px auto;
  width:130px;height:130px;border-radius:999px;
  background:rgba(255,176,0,.16);
  filter:blur(4px);
}
.service-card-head{position:relative;display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.service-tier{font-weight:900;font-size:18px;margin-bottom:6px}
.service-pill{
  display:inline-flex;align-items:center;gap:7px;
  border-radius:999px;
  padding:7px 10px;
  font-size:12px;font-weight:800;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.06);
  white-space:nowrap;
}
.service-status-text{position:relative;margin-top:18px;font-size:20px;font-weight:900;line-height:1.7}
.service-card.status-ok{border-color:rgba(34,197,94,.32)}
.service-card.status-ok .service-pill{color:#caffdf;background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.28)}
.service-card.status-warn{border-color:rgba(245,158,11,.35)}
.service-card.status-warn .service-pill{color:#ffe4b4;background:rgba(245,158,11,.13);border-color:rgba(245,158,11,.30)}
.service-card.status-info{border-color:rgba(32,224,112,.32)}
.service-card.status-info .service-pill{color:#c8fbff;background:rgba(32,224,112,.10);border-color:rgba(32,224,112,.28)}
.service-card.status-danger{border-color:rgba(255,77,79,.36)}
.service-card.status-danger .service-pill{color:#ffd6d6;background:rgba(255,77,79,.12);border-color:rgba(255,77,79,.32)}
.announcement-list{display:flex;flex-direction:column;gap:12px}
.announcement-item{
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.09);
  border-radius:18px;
  padding:16px;
}
.announcement-date{color:var(--muted);font-size:12px;margin-bottom:8px;display:flex;gap:7px;align-items:center}
.announcement-item h3{margin:0 0 10px;font-size:18px;line-height:1.7}
.announcement-item p{margin:0;color:rgba(233,236,255,.82);line-height:2}
.admin-announcement-item{
  border:1px solid rgba(255,255,255,.09);
  background:rgba(255,255,255,.04);
  border-radius:16px;
  padding:12px;
  margin-top:10px;
}
.admin-announcement-item summary{cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:center;font-weight:800}
.admin-announcement-item summary small{color:var(--muted);font-weight:500}
.admin-service-grid .service-card{box-shadow:none}
@media (max-width:980px){.service-grid{grid-template-columns:1fr}.status-hero h1{font-size:23px}.admin-announcement-item summary{display:block}.admin-announcement-item summary small{display:block;margin-top:6px}}


/* ===== Independent subscriptions update ===== */
.container-expanded{max-width:1440px}
.shell-expanded{grid-template-columns:minmax(0,1fr) 285px}
.my-subscriptions-list{display:grid;gap:14px}
.subscription-accordion{border:1px solid rgba(255,255,255,.10);border-radius:20px;background:rgba(255,255,255,.035);overflow:hidden}
.subscription-accordion summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;font-weight:900}
.subscription-accordion summary::-webkit-details-marker{display:none}
.subscription-card-body{padding:0 16px 16px}
.mobile-nav-details summary{display:none;cursor:pointer;font-weight:900;padding:12px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);margin-bottom:10px}
@media (max-width: 980px){
  .container-expanded{max-width:100%;padding-inline:12px}
  .shell-expanded{grid-template-columns:1fr}
  .sidebar{position:static;order:2}
  .subscription-accordion summary{align-items:flex-start;flex-direction:column}
}

/* Unified responsive width and overflow safety */
.card,.field,.notice,.subscription-accordion,.mini-card,.repeater-item{min-width:0}
.field,textarea,input,select{max-width:100%;box-sizing:border-box}
@media (max-width:720px){.container{padding-inline:12px}.topbar{align-items:flex-start;gap:12px}.btn{white-space:normal}}


/* ===== Invite page mobile fixes ===== */
.referral-page{overflow-x:hidden}
.referral-page .copy-box span,
.referral-page .mini-stat strong,
.referral-page .table td{overflow-wrap:anywhere;word-break:break-word}
@media (max-width:720px){
  .referral-page .page-hero{gap:14px}
  .referral-page .copy-box span{width:100%;white-space:normal;overflow:visible;line-height:1.8}
  .referral-page .table td{align-items:flex-start;flex-direction:column;text-align:right}
  .referral-page .table td::before{margin-bottom:4px}
  .referral-page .btn{width:100%}
  .referral-page .section-headline .badge{width:100%;text-align:center}
}


/* =========================================================
   PUBG Gozar visual-only polish - local fonts / gaming UI
   ========================================================= */
:root{
  --bg:#050915;
  --card:rgba(9,15,31,.74);
  --stroke:rgba(255,176,0,.28);
  --stroke2:rgba(35,190,255,.26);
  --text:#edf5ff;
  --muted:rgba(218,230,246,.72);
  --accent:#ffb000;
  --accent2:#16d6ff;
  --ok:#22c55e;
  --danger:#ff4d4f;
  --shadow:0 22px 70px rgba(0,0,0,.52);
  --radius:22px;
}

html{scroll-behavior:smooth}
body{
  font-family:IRANSansWeb,IRANSans,system-ui,-apple-system,"Segoe UI",Tahoma,Arial,sans-serif;
  background:
    radial-gradient(950px 480px at 14% 12%, rgba(0,132,255,.20), transparent 62%),
    radial-gradient(900px 540px at 85% 16%, rgba(255,176,0,.15), transparent 60%),
    radial-gradient(800px 520px at 55% 105%, rgba(34,197,94,.09), transparent 58%),
    linear-gradient(180deg,#040713 0%,#071225 58%,#050915 100%);
  color:var(--text);
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.70),transparent 80%);
}

.container{max-width:1440px;padding:20px}
.container-expanded{max-width:1480px}
.shell,.shell-expanded{gap:20px}

.topbar{
  margin-bottom:18px;
  padding:14px 16px;
  border-radius:24px;
  background:linear-gradient(135deg,rgba(9,15,31,.86),rgba(14,25,48,.68));
  border:1px solid rgba(91,151,255,.22);
  box-shadow:0 18px 60px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(14px);
}
.brand{gap:12px;min-width:0}
.brand-badge{
  width:46px;
  height:46px;
  border-radius:16px;
  overflow:hidden;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  background:#071126 url("../img/pubggozar-logo-96.png") center/cover no-repeat;
  border:1px solid rgba(255,176,0,.34);
  box-shadow:0 0 0 5px rgba(255,176,0,.055),0 18px 36px rgba(0,0,0,.35);
}
.brand-badge img{width:100%;height:100%;object-fit:cover;display:block}
.brand-badge.mini{width:42px;height:42px;border-radius:15px}

.sidebar-brand{
  display:flex;
  align-items:center;
  gap:12px;
  padding:8px 6px 16px;
  margin-bottom:4px;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.sidebar{
  top:18px;
  border-color:rgba(91,151,255,.18);
  background:
    radial-gradient(260px 150px at 20% 0%,rgba(255,176,0,.10),transparent 70%),
    rgba(8,15,31,.76);
}
.nav{gap:9px}
.nav a{
  position:relative;
  overflow:hidden;
  padding:13px 13px;
  border-radius:16px;
  background:rgba(255,255,255,.025);
}
.nav a span{display:flex;align-items:center;gap:10px;min-width:0}
.nav a i{width:22px;text-align:center;color:rgba(22,214,255,.88)}
.nav a.active{
  background:linear-gradient(135deg,rgba(255,176,0,.18),rgba(22,214,255,.10));
  border-color:rgba(255,176,0,.35);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035),0 12px 30px rgba(0,0,0,.20);
}
.nav a.active::before{
  content:"";
  position:absolute;
  inset:10px auto 10px 0;
  width:4px;
  border-radius:999px;
  background:linear-gradient(180deg,var(--accent),var(--accent2));
}

.card{
  border-radius:var(--radius);
  background:
    linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.022)),
    var(--card);
  border:1px solid rgba(255,255,255,.095);
  box-shadow:var(--shadow);
}
.card.pad{padding:20px}
.card:hover{border-color:rgba(91,151,255,.17)}
.notice{
  background:linear-gradient(135deg,rgba(34,197,94,.08),rgba(22,214,255,.045));
  border-color:rgba(34,197,94,.22);
}
.h1{font-size:22px;font-weight:950;line-height:1.65}
.h2{font-size:20px;font-weight:950;line-height:1.65;color:#f5f8ff}
.small{line-height:1.9;color:var(--muted)}
.badge{
  background:rgba(255,255,255,.045);
  border-color:rgba(255,255,255,.12);
  color:rgba(235,244,255,.78);
}

.btn{
  border-radius:16px;
  font-weight:850;
  min-height:44px;
  box-shadow:0 12px 24px rgba(0,0,0,.18);
}
.btn-primary{
  color:#0a1020;
  background:linear-gradient(135deg,#ffc233,#ff9d00 52%,#ffbe41);
  border:1px solid rgba(255,227,151,.44);
  box-shadow:0 16px 35px rgba(255,157,0,.22);
}
.btn-outline{
  background:linear-gradient(135deg,rgba(22,214,255,.07),rgba(255,176,0,.035));
  border-color:rgba(22,214,255,.28);
  color:#eaf8ff;
}
.btn-ghost{
  background:rgba(255,255,255,.045);
  border-color:rgba(255,255,255,.105);
}
.btn-danger{box-shadow:none}
.field,
.input,
textarea,
select{
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.11);
  border-radius:16px;
  color:var(--text);
  min-height:44px;
}
.input{width:100%;padding:12px 14px;font-family:inherit;outline:none}
.field:focus,.input:focus,textarea:focus,select:focus{
  border-color:rgba(22,214,255,.42);
  box-shadow:0 0 0 4px rgba(22,214,255,.08);
}

/* Buy page cards */
.plan-grid-enhanced{align-items:stretch}
.plan-card.pro{
  isolation:isolate;
  background:
    radial-gradient(170px 120px at 10% 0%,rgba(255,176,0,.16),transparent 70%),
    radial-gradient(220px 140px at 100% 100%,rgba(22,214,255,.10),transparent 72%),
    rgba(8,15,31,.78);
  border-color:rgba(255,176,0,.22);
}
.plan-card.pro::after{
  content:"\f11b";
  font-family:"Font Awesome 6 Free";
  font-weight:900;
  position:absolute;
  left:16px;
  bottom:8px;
  font-size:64px;
  color:rgba(255,255,255,.035);
  z-index:-1;
}
.plan-topline .badge{
  color:#ffe3a1;
  border-color:rgba(255,176,0,.34);
  background:rgba(255,176,0,.09);
}
.plan-title{font-size:23px;line-height:1.7}
.plan-price{
  font-size:31px;
  color:#fff;
  letter-spacing:-.3px;
}
.plan-price span{font-size:13px;color:rgba(235,244,255,.66)}
.plan-meta-list div{
  border-color:rgba(255,255,255,.09);
  background:rgba(255,255,255,.045);
}
.plan-meta-list i{color:var(--accent2)}

/* User app downloads cards */
.grid-2 .card[style*="position:relative"]{
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.grid-2 .card[style*="position:relative"]:hover{
  transform:translateY(-2px);
  border-color:rgba(255,176,0,.30)!important;
}

/* Android in-app purchase page */
.mobile-buy-page{
  min-height:100vh;
  background:
    radial-gradient(680px 360px at 50% -10%,rgba(255,176,0,.18),transparent 65%),
    radial-gradient(560px 340px at 10% 95%,rgba(22,214,255,.14),transparent 62%),
    linear-gradient(180deg,#050915,#081326 58%,#050915);
}
.mobile-buy{
  width:min(760px,100%);
  margin:0 auto;
  padding:18px 12px 30px;
}
.mobile-buy .hero{
  position:relative;
  overflow:hidden;
  padding:18px;
  border-radius:28px;
  border:1px solid rgba(255,176,0,.24);
  background:
    radial-gradient(180px 130px at 12% 0%,rgba(255,176,0,.18),transparent 72%),
    linear-gradient(145deg,rgba(9,15,31,.86),rgba(15,30,58,.70));
  box-shadow:0 22px 60px rgba(0,0,0,.38);
}
.mobile-buy .hero::after{
  content:"";
  position:absolute;
  inset:auto -54px -62px auto;
  width:190px;
  height:190px;
  background:url("../img/pubggozar-logo-256.png") center/contain no-repeat;
  opacity:.13;
  filter:drop-shadow(0 0 22px rgba(22,214,255,.45));
}
.app-buy-brand{
  display:flex;
  align-items:center;
  gap:12px;
  position:relative;
  z-index:1;
}
.app-buy-logo{
  width:58px;
  height:58px;
  border-radius:20px;
  object-fit:cover;
  border:1px solid rgba(255,176,0,.36);
  box-shadow:0 0 0 6px rgba(255,176,0,.055),0 16px 35px rgba(0,0,0,.32);
}
.mobile-buy .hero-title{font-size:24px;font-weight:950;line-height:1.55}
.mobile-buy .hero-meta{font-size:13px;line-height:2;color:rgba(235,244,255,.78);margin-top:4px}
.app-buy-points{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-top:16px;
}
.app-buy-point{
  padding:10px;
  border-radius:16px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  font-size:12px;
  color:rgba(235,244,255,.80);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  text-align:center;
}
.app-buy-point i{color:var(--accent)}
.mobile-buy .plans-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}
.mobile-buy .plan{
  position:relative;
  overflow:hidden;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.12);
  background:
    radial-gradient(180px 100px at 0% 0%,rgba(22,214,255,.10),transparent 70%),
    rgba(255,255,255,.052);
  padding:16px;
  margin-top:0;
}
.mobile-buy .plan::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:3px;
  background:linear-gradient(90deg,var(--accent2),var(--accent));
  opacity:.75;
}
.mobile-buy .plan-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}
.mobile-buy .plan-title{font-size:19px;font-weight:950;line-height:1.6;margin:0}
.mobile-buy .plan-days{font-size:12px;color:var(--muted);margin-top:4px}
.mobile-buy .plan-price{font-size:27px;font-weight:950;direction:ltr;text-align:left;white-space:nowrap;margin:0;color:#fff}
.mobile-buy .plan-price span{display:block;font-size:12px;color:var(--muted);margin-top:2px;font-weight:700}
.mobile-buy .paybtn{width:100%;justify-content:center;font-size:14px;padding:12px 13px;border-radius:17px;margin-top:14px}
.trial-card{border-color:rgba(34,197,94,.35)!important;background:linear-gradient(145deg,rgba(34,197,94,.13),rgba(255,255,255,.05))!important}
.trial-card .badge{color:#dcffe9;border-color:rgba(34,197,94,.36);background:rgba(34,197,94,.11)}
.app-buy-secure-note{
  margin-top:14px;
  border-color:rgba(22,214,255,.22);
  background:rgba(22,214,255,.055);
  font-size:12px;
}
.done-card .brand-badge{margin:0 auto 12px}

@media (max-width:980px){
  .topbar{position:relative;top:auto}
  .topbar > div:last-child{gap:8px}
  .sidebar{order:2}
}
@media (max-width:720px){
  .container{padding:12px}
  .card.pad{padding:16px}
  .topbar{border-radius:20px;padding:12px;margin-bottom:14px}
  .topbar .brand{width:100%}
  .topbar > div:last-child{width:100%;display:grid!important;grid-template-columns:1fr 1fr}
  .topbar > div:last-child .btn{width:100%}
  .brand-badge{width:42px;height:42px;border-radius:15px}
  .h1{font-size:20px}.h2{font-size:18px}
  .plans-grid{grid-template-columns:1fr!important;gap:12px}
  .plan-title{font-size:20px}.plan-price{font-size:27px}
  .mobile-buy{padding:12px 9px 24px}
  .mobile-buy .hero{padding:14px;border-radius:23px}
  .mobile-buy .hero-title{font-size:21px}
  .app-buy-points{grid-template-columns:1fr;gap:7px}
  .mobile-buy .plans-grid{grid-template-columns:1fr;gap:10px}
  .mobile-buy .plan{padding:14px;border-radius:21px}
  .mobile-buy .plan-title{font-size:18px}
  .mobile-buy .plan-price{font-size:24px}
}
@media (max-width:390px){
  .topbar > div:last-child{grid-template-columns:1fr}
  .mobile-buy .plan-main{grid-template-columns:1fr}
  .mobile-buy .plan-price{text-align:right}
  .mobile-buy .plan-price span{display:inline;margin-right:4px}
}

