@charset "UTF-8";

@font-face {
	font-family: IRANSansX;
	font-style: normal;
	font-weight: bold;
	src: url('../fonts/IranSansX/fonts/woff/IRANSansX-Bold.woff') format('woff'),   
	url('../fonts/IranSansX/fonts/woff2/IRANSansX-Bold.woff2') format('woff2');	 
}

@font-face {
	font-family: IRANSansX;
	font-style: normal;
	font-weight: normal;
	src: url('../fonts/IranSansX/fonts/woff/IRANSansX-Regular.woff') format('woff'),   
	url('../fonts/IranSansX/fonts/woff2/IRANSansX-Regular.woff2') format('woff2');	
}

body,
h1, h2, h3, h4, h5, h6, 
.tooltip, 
.header-title span, 
.footer-title span, 
.header .header-title, 
#footer-bar a span, 
.menu-list a, 
.menu-list-large a, 
.list-menu, 
.btn, 
.list-custom-large a, 
.tab-controls a, 
.footer .footer-title, 
.interest-check label {
  font-family: IRANSansX !important;
}

* {
  text-transform: none !important;
  letter-spacing: normal !important;
}

.text-left {
	text-align: left !important;
}
.text-rtl {
	direction: rtl !important;
}
.text-ltr {
	direction: ltr !important;
}

div.pdocrud-checkbox-group label.checkbox-inline {
	margin-right: 4px !important;
}

.header-logo-center .header-title {
  width: 250px;
  margin-left: -125px;
}

.footer-bar-6 span {
  font-size: 12px !important;
  font-weight: bolder !important;
}

.mobile-index{
    text-align:center;
    font-weight:bold;
}
/* چند استایل کوچک کمکی */

  .passenger-table th, .passenger-table td { vertical-align: middle; }
  .small-muted { font-size:13px; color:#666; }

  /* center table headers */
  .passenger-table thead th { text-align: center; }

  /* mobile card cell hidden by default (so no extra column on desktop) */
  .mobile-card-cell { display: none; }

  /* ===== responsive card style for mobile: mobile-card-cell approach ===== */
  @media (max-width: 768px) {

    /* show mobile cell, hide the normal table cells */
    .passenger-table thead { display: none; }
    .passenger-table td:not(.mobile-card-cell) { display: none !important; }
    .mobile-card-cell { display: block; }

    /* make tbody rows block so each card stacks */
    .passenger-table,
    .passenger-table tbody,
    .passenger-table tr {
      display: block;
      width: 100%;
    }

    /* the mobile cell that contains the card layout */
    .passenger-table td.mobile-card-cell {
      display: block;
      padding: 12px;
      background: #fff;
      border-radius: 10px;
      border: 1px solid #f0f0f0;
      box-shadow: 0 1px 4px rgba(0,0,0,0.06);
      box-sizing: border-box;
      margin-bottom: 12px;
    }

    /* alternating backgrounds (one-by-one) to avoid confusion */
    .passenger-table tbody tr:nth-child(odd) .mobile-card-cell { background: #ffffff; }
    .passenger-table tbody tr:nth-child(even) .mobile-card-cell { background: #f5f6f8; }

    /* container inside mobile cell */
    .mobile-card {
      direction: rtl; /* ensure RTL inside card */
    }

    /* Top row: name + family and small delete icon */
    .mobile-top {
      display: flex;
      flex-direction: row;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      margin-bottom: 8px;
    }
    .mobile-top .mobile-name {
      font-weight: 600;
      font-size: 16px;
      color: #111;
      text-align: right;
      word-break: break-word;
      flex: 1 1 auto;
    }
    .mobile-top .inline-remove {
      border: none;
      background: transparent;
      color: #c0392b;
      font-size: 16px;
      padding: 6px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      flex: 0 0 auto;
    }
    .mobile-top .inline-remove:focus { outline: 2px solid rgba(0,0,0,0.06); border-radius: 6px; }

    /* Second row: code, tariff, vilcher icon in one line (right aligned) */
    .mobile-second {
      display: flex;
      flex-direction: row;
      gap: 12px;
      align-items: center;
      justify-content: flex-start;
      margin-bottom: 8px;
      flex-wrap: wrap;
    }
    .mobile-second .item {
      font-size: 14px;
      color: #333;
      text-align: right;
      white-space: nowrap;
    } 

    .mobile-second .item .muted {
      color: #777;
      display: block;
      font-size: 12px;
    }

    /* action: only inline remove (big bottom button removed) */
    .mobile-actions { display: none; }

    .passenger-table tr:focus-within,
    .passenger-table tr:hover {
      box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    }
  }
  
/* ====== ROUTE TABLE ====== */

.route-table th, .route-table td {
  vertical-align: middle;
  text-align: center;
}

.mobile-route-card-cell { display: none; }

/* موبایل */
@media (max-width: 768px) {

  .route-table thead { display: none; }
  .route-table td:not(.mobile-route-card-cell) { display: none !important; }
  .mobile-route-card-cell { display: block; }

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

  .route-table td.mobile-route-card-cell {
    padding: 12px;
    background: #fff;
    border-radius: 10px;
    border: 1px solid #f0f0f0;
    margin-bottom: 12px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.06);
  }

  .mobile-route-card {
    direction: rtl;
  }

  .mobile-route-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
  }

  .mobile-route-title {
    font-weight: 600;
    font-size: 16px;
  }

  .inline-remove-route {
    border: none;
    background: transparent;
    color: #c0392b;
    font-size: 16px;
    padding: 6px;
  }

  .mobile-route-second {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    font-size: 14px;
  }
}

/* تنظیمات ساده برای بخش کپی */
.special-code {
	cursor: pointer;
	background: #f0f0f0;
	padding: 4px 8px;
	border-radius: 4px;
}
.copy-icon {
	cursor: pointer;
	color: #007bff;
}
.copy-icon:hover {
	color: #0056b3;
}
/* کلاس مخصوص انیمیشن چشمک */
.copy-flash {
	background-color: #d4edda !important; /* رنگ سبز کمرنگ */
	opacity: 0.7;
} 