/* basic layout - rtl friendly */
/* تعریف فونت */
@font-face {
  font-family: 'IranianSans';
  src: url('../fonts/IranianSans.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

body, 
.geo-form-container, 
.geo-form-container * {
   font-family: 'IranianSans', system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial !important;
}
input, label, select, button {
   font-family: 'IranianSans', system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial !important;
}
::placeholder {
  font-family: 'IranianSans', sans-serif;
  color: #888; /* رنگ دلخواه، اختیاری */
  opacity: 1; /* در بعضی مرورگرها پیش‌فرض نصفه دیده میشه */
}
body .geo-form-card { direction: rtl;  }
.geo-form-card { background:#fff;padding:18px;border-radius:10px;box-shadow:0 6px 18px rgba(0,0,0,0.06); max-width: 1180px; margin: 10px auto; }
.geo-form-card .row { display:flex; gap:12px; flex-wrap:wrap; margin-bottom:10px; }
.geo-form-card .group { flex:1; min-width:200px; }
.geo-form-card label { display:block; margin-bottom:6px; font-size:13px; color:#333; }
.geo-form-card .inputs { display:flex; gap:8px; align-items:center; }
.geo-form-card input[type="number"], .geo-form-card input[type="text"], .geo-form-card select { padding:8px;border:1px solid #e2e8f0;border-radius:6px; font-size:14px; width:100%; box-sizing:border-box; }
.geo-form-card input[type="number"]{ max-width:140px; }
.geo-form-card .small{ width:72px; }
.geo-form-card .actions { display:flex; gap:8px; margin-top:12px; }
.geo-form-card button { padding:10px 14px;border-radius:8px;border:0;background:#0ea5a4;color:white;cursor:pointer; }
.geo-form-card button.secondary { background:#64748b; }

.geo-list-wrap { max-width:1580px; margin:20px auto; }
.geo-list-table { width:100%; border-collapse:collapse; background:white; box-shadow:0 6px 18px rgba(0,0,0,0.04); }
.geo-list-table th, .geo-list-table td { padding:8px 10px; border-bottom:1px solid #eee; text-align:left; direction:rtl; }
.geo-list-table thead th { background:#f1f5f9; font-weight:600; }
.geo-list-table tbody tr:hover { background:#fbfbfb; }
.geo-list-table .geo-delete-btn { background:#ef4444;color:white;border:0;padding:6px 10px;border-radius:6px; cursor:pointer; }
.notice { padding:10px;background:#fff3cd;border-radius:6px; color:#856404; max-width:800px;margin:10px auto; }
.hint { font-size:12px;color:#6b7280;margin-top:6px; }
.leaflet-control-attribution.leaflet-control {
    display: none !important;
}
.toast.toast-error {
    padding: 0 !important;
}
.toast.toast-error  .toast-message {
    background: rgba(255, 0, 0, 0.84) !important;
    padding: 8px 16px;
}

.toast.toast-success {
    padding: 0 !important;
}
.toast.toast-success  .toast-message {
    background: rgba(8, 94, 34, 0.84) !important;
    padding: 8px 16px;
}
header .logo {
    width: 65px;
    height: 55px;
    border-radius: 6px;
}
.mx-300 {
    max-width: 300px;
}
.btn-close {
    margin-right: auto !important;
    margin-left: unset !important;
}
.alert.alert-success {
    margin: 16px auto !important;
    text-align: center;
    max-width: 550px;
}
@media (min-width: 1400px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1600px !important;
    }
}
.geo-form-card label.dinlineBlock {
    display: inline-block !important;
}
.metal-options, .madar-dom-options {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.metal-box {
    border: 2px solid #ccc;
    border-radius: 6px;
    padding: 10px 15px;
    cursor: pointer;
    user-select: none;
    transition: .2s;
    text-align: center;
    min-width: 70px;
}

.metal-box.selected {
    background: #007bff;
    color: #fff;
    border-color: #0056b3;
}

.madar-dom-options label {
    margin-right: 15px;
    cursor: pointer;
}

.madar-dom-options input {
    margin-right: 6px;
}
.metal-span {
    display: inline-block;
    padding: 1px 2px;
    border-radius: 2px;
    background: #efefef;
    margin: 2px;
}
.custom-toggle {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    user-select: none;
    font-size: 16px;
}

/* مخفی کردن چک‌باکس پیش‌فرض */
.custom-toggle input[type="checkbox"] {
    opacity: 0;
    position: absolute;
    width: 0;
    height: 0;
}

/* ساخت مربع سفارشی */
.custom-toggle .toggle-text::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 8px;
    border: 2px solid #ccc;
    border-radius: 4px;
    vertical-align: middle;
    transition: all 0.2s;
}

/* وقتی تیک زده شد */
.custom-toggle input[type="checkbox"]:checked + .toggle-text::before {
    background-color: #28a745; /* سبز */
    border-color: #28a745;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.173 11.414L3.05 8.293 1.636 9.707 6.173 14.243 14.364 6.05 12.95 4.636 6.173 11.414z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 12px 12px;
}
