
/* system fonts — بدون درخواست خارجی */
* { margin:0; padding:0; box-sizing:border-box; font-family:system-ui,-apple-system,'Segoe UI',Tahoma,Arial,sans-serif; }
html { -webkit-text-size-adjust:100%; text-size-adjust:100%; scroll-behavior:smooth; }
body { min-height:100vh; min-height:100dvh; background:#1a1635; background:radial-gradient(circle at 10% 30%, #0f0c29, #302b63, #24243e); display:flex; align-items:flex-start; justify-content:center; padding:16px; overflow-x:hidden; }
img, video, canvas { max-width:100%; height:auto; }
button, a, input, select, textarea { -webkit-tap-highlight-color: transparent; touch-action: manipulation; }
/* سرعت: انیمیشن سبک‌تر روی دستگاه‌های ضعیف */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
}
.btn, button, .menu-item, a.menu-item { transition: background 0.15s ease, opacity 0.15s ease, transform 0.15s ease !important; }
.btn:active, button:active { transform: scale(0.97); opacity: 0.9; }
.btn:disabled, button:disabled { opacity: 0.6; cursor: wait; }
table { content-visibility: auto; contain-intrinsic-size: 1px 600px; }

.login-container { width:100%; max-width:440px; background:rgba(30,28,55,0.92); border-radius:32px; padding:40px 30px; border:1px solid rgba(255,255,255,0.08); color:#fff; box-shadow:0 25px 50px -12px rgba(0,0,0,0.8); }
.login-container h1 { font-size:28px; font-weight:700; margin-bottom:4px; color:#fff; background:none; -webkit-text-fill-color:unset; }
.login-container .subtitle { color:rgba(255,255,255,0.5); font-size:14px; margin-bottom:24px; }
.login-container .form-group { margin-bottom:16px; }
.login-container .form-group label { display:block; font-size:12px; font-weight:600; color:rgba(255,255,255,0.6); margin-bottom:4px; }
.login-container .form-group input, .login-container .form-group select { width:100%; padding:12px 16px; border-radius:12px; background:rgba(255,255,255,0.07); border:1px solid rgba(255,255,255,0.1); color:#fff; font-size:14px; outline:none; transition:0.2s; }
.login-container .form-group input:focus, .login-container .form-group select:focus { border-color:#f5576c; background:rgba(255,255,255,0.12); }
.login-container .form-group select option { background:#1e1e2f; color:#fff; }
.login-container .btn { width:100%; padding:12px; border:none; border-radius:14px; background:linear-gradient(135deg,#f093fb,#f5576c); color:#fff; font-weight:700; font-size:15px; cursor:pointer; transition:0.3s; margin-top:8px; }
.login-container .btn:hover { transform:scale(1.02); box-shadow:0 10px 30px -5px rgba(245,87,108,0.4); }
.login-container .btn-outline { background:transparent; border:2px solid rgba(255,255,255,0.15); }
.login-container .btn-outline:hover { background:rgba(255,255,255,0.05); }
.login-container .toggle-link { color:#f5576c; cursor:pointer; font-weight:600; text-decoration:none; }
.login-container .login-links {
  margin-top: 20px; display: flex; flex-direction: column; align-items: center; gap: 12px;
}
.login-container .login-links a {
  display: inline-block; color: #f5576c; font-weight: 600; font-size: 13px;
  text-decoration: none; padding: 6px 12px; border-radius: 10px;
  transition: background .2s, color .2s;
}
.login-container .login-links a:hover { background: rgba(245,87,108,0.12); }
.login-container .login-links .muted { color: rgba(255,255,255,0.45); font-weight: 500; font-size: 13px; }
.login-container .login-links .muted a { color: #f5576c; font-weight: 700; padding: 0 4px; }
.pass-wrap{position:relative;width:100%;}
.pass-wrap input{
  width:100% !important; box-sizing:border-box !important;
  padding-left:48px !important;
}
.pass-eye{
  position:absolute; left:10px; top:50%; transform:translateY(-50%);
  z-index:6; width:36px; height:36px; padding:0; margin:0;
  border:none; border-radius:10px; background:transparent !important;
  color:rgba(255,255,255,0.55); cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  box-shadow:none !important;
}
.pass-eye:hover{color:#fff; background:rgba(255,255,255,0.08) !important;}
.pass-eye svg{width:20px; height:20px; display:block; pointer-events:none;}
html[dir="ltr"] .pass-wrap input{padding-left:14px !important; padding-right:48px !important;}
html[dir="ltr"] .pass-eye{left:auto; right:10px;}
.login-container .alert.success {
  background: rgba(0,184,148,0.15); border: 1px solid rgba(0,184,148,0.4);
  color: #55efc4; border-radius: 14px; padding: 12px 14px; margin-bottom: 14px;
  text-align: center; font-size: 13px; line-height: 1.6;
}
.alert { padding:10px 14px; border-radius:10px; margin-bottom:12px; font-size:13px; background:rgba(245,87,108,0.2); border-left:3px solid #f5576c; color:#ffb3b3; }
.alert.success { background:rgba(0,255,100,0.1); border-left-color:#00ff64; color:#a0ffb0; }
.app-container { display:flex; gap:20px; max-width:1600px; margin:0 auto; align-items:stretch; width:100%; position:relative; }
.menu-toggle { display:none; position:fixed; top:14px; z-index:10002; width:44px; height:44px; border-radius:12px; border:1px solid rgba(255,255,255,0.15); background:rgba(20,20,40,0.95); color:#fff; font-size:20px; cursor:pointer; align-items:center; justify-content:center; box-shadow:0 8px 24px rgba(0,0,0,0.35); }
[dir="rtl"] .menu-toggle { right:14px; left:auto; }
[dir="ltr"] .menu-toggle { left:14px; right:auto; }
.sidebar-backdrop { display:none; position:fixed; inset:0; background:rgba(0,0,0,0.55); z-index:10000; }

.sidebar {
  width:230px; max-height:calc(100vh - 40px); position:sticky; top:20px;
  background:rgba(255,255,255,0.06); backdrop-filter:blur(12px); border-radius:28px;
  padding:18px 12px; border:1px solid rgba(255,255,255,0.08); flex-shrink:0;
  display:flex; flex-direction:column; overflow:hidden;
}
.sidebar .logo { font-size:18px; font-weight:700; margin-bottom:12px; padding:0 6px; background:linear-gradient(135deg,#f093fb,#f5576c); -webkit-background-clip:text; -webkit-text-fill-color:transparent; flex-shrink:0; }
.sidebar-nav { overflow-y:auto; overflow-x:hidden; flex:1; padding-bottom:8px; scrollbar-width:thin; scrollbar-color:rgba(255,255,255,0.25) transparent; }
.sidebar-nav::-webkit-scrollbar { width:5px; }
.sidebar-nav::-webkit-scrollbar-thumb { background:rgba(255,255,255,0.25); border-radius:8px; }
.sidebar .menu-item { display:flex; align-items:center; gap:8px; padding:9px 12px; margin-bottom:2px; border-radius:12px; color:rgba(255,255,255,0.72); text-decoration:none; transition:0.2s; font-size:12.5px; line-height:1.3; }
.sidebar .menu-item:hover, .sidebar .menu-item.active { background:rgba(255,255,255,0.1); color:#fff; }
.sidebar .menu-item .icon { margin:0; flex-shrink:0; width:18px; text-align:center; }
.sidebar .badge-admin { background:#6c5ce7; color:#fff; padding:2px 8px; border-radius:50px; font-size:9px; margin-right:6px; }
.main-content { flex:1; background:rgba(30,28,55,0.88); border-radius:32px; padding:28px; border:1px solid rgba(255,255,255,0.08); color:#fff; min-height:80vh; }
h1 { font-size:24px; font-weight:700; margin-bottom:4px; color:#fff; background:none; -webkit-text-fill-color:unset; }
h1, h2, h3, .menu-item, .stat-card .label, .subtitle { -webkit-text-fill-color: unset; }
/* emoji طبیعی بماند */
.menu-item, h1, h2, h3 { text-shadow: none; filter: none; }
.subtitle { color:rgba(255,255,255,0.4); font-size:13px; margin-bottom:20px; }

.help-tip {
  background: rgba(116,185,255,0.12);
  border: 1px solid rgba(116,185,255,0.25);
  color: #dfe6e9;
  padding: 12px 14px;
  border-radius: 12px;
  font-size: 13px;
  line-height: 1.7;
  margin-bottom: 14px;
  position: relative;
}
body.hide-help-tips .help-tip { display: none !important; }
.help-toggle-btn {
  position: fixed; bottom: 18px; left: 18px; z-index: 9000;
  background: rgba(30,30,50,0.95); border: 1px solid rgba(255,255,255,0.15);
  color: #fff; border-radius: 999px; padding: 10px 14px; font-size: 12px;
  cursor: pointer; box-shadow: 0 8px 24px rgba(0,0,0,0.35);
}
[dir="rtl"] .help-toggle-btn { left: auto; right: 18px; }
.btn-lg { padding: 12px 22px !important; font-size: 15px !important; min-height: 44px; }
.table-wrap table td, .table-wrap table th { font-size: 13px; }
@media (max-width: 640px) {
  .btn { min-height: 42px; }
  .stats-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 900px) {
  body { padding: 10px; align-items: stretch; }
  .app-container { flex-direction: column; gap: 12px; max-width: 100%; }
  .menu-toggle { display: flex; }
  .sidebar-backdrop.open { display: block; }
  .sidebar {
    position: fixed; top: 0; bottom: 0; width: min(82vw, 280px); max-height: 100vh; max-height: 100dvh;
    z-index: 10001; border-radius: 0; padding-top: 56px;
    transform: translateX(110%); transition: transform 0.25s ease;
    box-shadow: -12px 0 40px rgba(0,0,0,0.45);
  }
  [dir="rtl"] .sidebar { right: 0; left: auto; transform: translateX(110%); }
  [dir="ltr"] .sidebar { left: 0; right: auto; transform: translateX(-110%); }
  .sidebar.open { transform: translateX(0) !important; }
  .main-content { width: 100%; padding: 18px 14px; border-radius: 20px; min-height: calc(100vh - 24px); min-height: calc(100dvh - 24px); }
  .main-content { padding-top: 56px; }
  h1 { font-size: 20px; }
  .form-grid { grid-template-columns: 1fr; }
  .table-wrap { -webkit-overflow-scrolling: touch; margin-left: -6px; margin-right: -6px; }
  table { font-size: 12px; min-width: 520px; }
  .modal-content { width: 96vw !important; max-width: 96vw !important; max-height: 90dvh; overflow: auto; padding: 16px !important; }
  .help-toggle-btn { bottom: 70px; font-size: 11px; padding: 8px 12px; }
  .lang-switcher { bottom: 14px; }
  .btn-sm { min-height: 36px; padding: 6px 10px; }
}
@media (min-width: 901px) and (max-width: 1200px) {
  .sidebar { width: 200px; }
  .main-content { padding: 22px; }
}
@media (min-width: 1600px) {
  .app-container { max-width: 1800px; }
  .main-content { padding: 32px 36px; }
  h1 { font-size: 28px; }
  .stat-card .value { font-size: 24px; }
  .sidebar .menu-item { font-size: 14px; padding: 11px 14px; }
}
@media (min-width: 1920px) {
  body { padding: 24px 40px; }
  .app-container { max-width: 2000px; }
}
@media (hover: none) and (pointer: coarse) {
  .btn, .menu-item, .admin-tab-btn { min-height: 44px; }
  input, select, textarea { font-size: 16px !important; } /* جلوگیری از زوم iOS */
}
@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; }
}

.form-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:14px; margin-bottom:16px; }
.form-group { display:flex; flex-direction:column; gap:4px; }
.form-group label { font-size:11px; font-weight:600; color:rgba(255,255,255,0.5); }
.form-group input, .form-group select, .form-group textarea { padding:8px 12px; border-radius:10px; background:rgba(255,255,255,0.07); border:1px solid rgba(255,255,255,0.08); color:#fff; font-size:13px; outline:none; transition:0.2s; }
.form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color:#f5576c; background:rgba(255,255,255,0.12); }
.form-group select option { background:#1e1e2f; color:#fff; }
select option { background:#1a1a2e; color:#fff; padding:8px; }
select, table select {
  appearance: none; -webkit-appearance: none; -moz-appearance: none;
  padding: 8px 12px 8px 28px; border-radius: 10px;
  background: rgba(255,255,255,0.08) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23f5576c' d='M6 8L1 3h10z'/%3E%3C/svg%3E") no-repeat left 8px center;
  background-size: 10px; border: 1px solid rgba(255,255,255,0.12); color: #fff; font-size: 13px; outline: none; cursor: pointer; transition: 0.2s; min-width: 100px; max-width: 180px;
}
table input[type=text], table input[type=number], table input[type=date], table input:not([type]) {
  width: 100%; min-width: 80px; padding: 8px 10px; border-radius: 10px;
  background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.1); color: #fff; font-size: 13px; outline: none;
}
table input:focus, table select:focus { border-color: #f5576c; }
select:hover, table select:hover { border-color: rgba(245,87,108,0.5); background-color: rgba(255,255,255,0.12); }
select:focus, table select:focus { border-color: #f5576c; background-color: rgba(255,255,255,0.14); box-shadow: 0 0 0 3px rgba(245,87,108,0.15); }
.btn { padding:8px 20px; border:none; border-radius:12px; background:linear-gradient(135deg,#f093fb,#f5576c); color:#fff; font-weight:600; font-size:13px; cursor:pointer; transition:0.3s; }
.btn:hover { transform:scale(1.02); box-shadow:0 8px 20px -5px rgba(245,87,108,0.4); }
.btn-outline { background:transparent; border:2px solid rgba(255,255,255,0.12); }
.btn-outline:hover { background:rgba(255,255,255,0.04); }
.btn-sm { padding:4px 12px; font-size:11px; }
.btn-success { background:linear-gradient(135deg,#00b894,#00cec9); }
.btn-danger { background:linear-gradient(135deg,#f5576c,#ff6b6b); }
.btn-warning { background:linear-gradient(135deg,#fdcb6e,#e17055); }
.btn-admin { background:linear-gradient(135deg,#6c5ce7,#a29bfe); }
.btn-gold { background:linear-gradient(135deg,#f9ca24,#f0932b); }
.btn-excel { background:linear-gradient(135deg,#27ae60,#2ecc71); }
.btn-print { background:linear-gradient(135deg,#0984e3,#74b9ff); }
.table-wrap { overflow-x:auto; margin-top:12px; }
table { width:100%; border-collapse:collapse; font-size:13px; }
th { text-align:right; padding:10px 8px; border-bottom:2px solid rgba(255,255,255,0.06); color:rgba(255,255,255,0.4); font-weight:600; }
td { padding:8px 8px; border-bottom:1px solid rgba(255,255,255,0.03); }
tr:hover { background:rgba(255,255,255,0.02); }
.stats-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:12px; margin-bottom:20px; }
.admin-tabs { display:flex; gap:6px; flex-wrap:wrap; margin-bottom:20px; border-bottom:1px solid rgba(255,255,255,0.08); padding-bottom:12px; }
.admin-tab-btn { padding:8px 16px; border:none; border-radius:12px; background:rgba(255,255,255,0.05); color:rgba(255,255,255,0.5); font-size:13px; font-weight:600; cursor:pointer; transition:0.2s; }
.admin-tab-btn:hover { background:rgba(255,255,255,0.09); color:#fff; }
.admin-tab-btn.active { background:linear-gradient(135deg,#f093fb,#f5576c); color:#fff; }
.admin-tab-panel { display:none; }

.admin-tab-panel.active { display:block; }
@media print {
  body, .app-container, .main-content {
    background: #fff !important;
    color: #000 !important;
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
    min-height: auto !important;
  }
  .sidebar, .no-print, #toast-container, #confirm-overlay, .toolbar {
    display: none !important;
  }
  .main-content {
    width: 100% !important;
    background: #fff !important;
    box-shadow: none !important;
    border: none !important;
  }
  h1, h2, h3, p, td, th, span, div, .subtitle, .label, .value {
    color: #000 !important;
    -webkit-text-fill-color: #000 !important;
    background: transparent !important;
  }
  table { width: 100% !important; border-collapse: collapse !important; }
  th, td { border: 1px solid #333 !important; color: #000 !important; padding: 6px !important; background: #fff !important; }
  th { background: #eee !important; }
  .stat-card {
    border: 1px solid #ccc !important;
    background: #f7f7f7 !important;
    color: #000 !important;
    box-shadow: none !important;
  }
  .stat-card .value, .stat-card .label { color: #000 !important; }
  a { color: #000 !important; text-decoration: none !important; }
}

.bar-chart { display:flex; align-items:flex-end; gap:6px; height:140px; margin:16px 0; padding:0 4px; }
.bar-chart .bar-col { flex:1; display:flex; flex-direction:column; align-items:center; justify-content:flex-end; height:100%; }
.bar-chart .bar { width:100%; max-width:26px; border-radius:6px 6px 0 0; background:linear-gradient(135deg,#f093fb,#f5576c); min-height:2px; }
.bar-chart .bar-label { font-size:9px; color:rgba(255,255,255,0.35); margin-top:6px; white-space:nowrap; }
.bar-chart .bar-value { font-size:9px; color:rgba(255,255,255,0.55); margin-bottom:4px; }
.module-matrix { width:100%; border-collapse:collapse; font-size:12px; }
.module-matrix th, .module-matrix td { padding:8px 10px; text-align:center; border:1px solid rgba(255,255,255,0.06); }
.module-matrix th { color:rgba(255,255,255,0.5); font-weight:600; }
.module-matrix td:first-child, .module-matrix th:first-child { text-align:right; color:rgba(255,255,255,0.7); font-weight:600; }
.module-matrix input[type=checkbox] { width:16px; height:16px; cursor:pointer; accent-color:#f5576c; }
.log-row { padding:8px 12px; border-radius:10px; background:rgba(255,255,255,0.03); margin-bottom:6px; font-size:12px; display:flex; justify-content:space-between; gap:10px; flex-wrap:wrap; }
.log-row .log-action { color:#a29bfe; font-weight:600; }
.log-row .log-time { color:rgba(255,255,255,0.3); }
.stat-card { background:rgba(255,255,255,0.04); padding:14px; border-radius:14px; border:1px solid rgba(255,255,255,0.04); }
.stat-card .label { font-size:11px; color:rgba(255,255,255,0.4); }
.stat-card .value { font-size:20px; font-weight:700; margin-top:2px; }
.status-badge { padding:2px 10px; border-radius:50px; font-size:10px; font-weight:700; }
.status-paid { background:#00b894; color:#fff; }
.status-unpaid { background:#f5576c; color:#fff; }
.status-open { background:#fdcb6e; color:#2d3436; }
.status-closed { background:#636e72; color:#fff; }
.status-pending { background:#0984e3; color:#fff; }
.badge-admin-role { background:#6c5ce7; color:#fff; padding:2px 10px; border-radius:50px; font-size:10px; }
.plan-box { background:rgba(255,255,255,0.04); border-radius:16px; padding:16px; margin-bottom:12px; border:1px solid rgba(255,255,255,0.06); display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; }
.modal { display:none; position:fixed; top:0; left:0; right:0; bottom:0; background:rgba(0,0,0,0.75); z-index:1000; align-items:center; justify-content:center; padding:20px; }
.modal[style*="flex"] { display:flex !important; }
.modal-content { background:#252245; border-radius:32px; padding:30px; max-width:700px; width:100%; border:1px solid rgba(255,255,255,0.1); color:#fff; max-height:90vh; overflow-y:auto; }
/* Toast notifications */
#toast-container { position:fixed; top:50%; left:50%; transform:translate(-50%,-50%); z-index:99999; pointer-events:none; display:flex; flex-direction:column; align-items:center; gap:12px; }
.toast {
  pointer-events:auto; min-width:280px; max-width:420px; padding:16px 22px; border-radius:18px;
  background:rgba(30,30,50,0.98); border:1px solid rgba(255,255,255,0.12);
  color:#fff; font-size:14px; font-weight:600; text-align:center; box-shadow:0 20px 50px rgba(0,0,0,0.5);
  opacity:0; transform:scale(0.92) translateY(8px); transition:opacity 0.2s ease, transform 0.2s ease;
}
.toast.show { opacity:1; transform:scale(1) translateY(0); }
.toast.success { border-color:rgba(0,184,148,0.5); background:linear-gradient(135deg,rgba(0,184,148,0.25),rgba(30,30,50,0.95)); }
.toast.error { border-color:rgba(245,87,108,0.5); background:linear-gradient(135deg,rgba(245,87,108,0.25),rgba(30,30,50,0.95)); }
.toast.info { border-color:rgba(162,155,254,0.5); background:linear-gradient(135deg,rgba(108,92,231,0.25),rgba(30,30,50,0.95)); }
/* Custom confirm modal */
#confirm-overlay {
  display:none; position:fixed; inset:0; background:rgba(0,0,0,0.72);
  z-index:99998; align-items:center; justify-content:center; padding:20px;
}
#confirm-overlay.show { display:flex; }
#confirm-box {
  background:rgba(30,30,50,0.98); border:1px solid rgba(255,255,255,0.12); border-radius:24px;
  padding:28px 32px; max-width:380px; width:100%; text-align:center; color:#fff;
  box-shadow:0 25px 60px rgba(0,0,0,0.55); animation:confirmIn 0.3s ease;
}
@keyframes confirmIn { from { opacity:0; transform:scale(0.9); } to { opacity:1; transform:scale(1); } }
#confirm-box .confirm-msg { font-size:15px; font-weight:600; margin-bottom:22px; line-height:1.6; }
#confirm-box .confirm-actions { display:flex; gap:10px; justify-content:center; }
#confirm-box .confirm-actions button { min-width:100px; }
#prompt-overlay {
  display:none; position:fixed; inset:0; background:rgba(0,0,0,0.65); backdrop-filter:blur(8px);
  z-index:99999; align-items:center; justify-content:center; padding:20px;
}
#prompt-overlay.show { display:flex; }
#prompt-box {
  background:rgba(30,30,50,0.98); border:1px solid rgba(255,255,255,0.12); border-radius:24px;
  padding:28px 32px; max-width:420px; width:100%; text-align:center; color:#fff;
  box-shadow:0 25px 60px rgba(0,0,0,0.55); animation:confirmIn 0.3s ease;
}
#prompt-box .confirm-msg { font-size:15px; font-weight:600; margin-bottom:14px; line-height:1.6; }
#prompt-input {
  width:100%; padding:12px 14px; border-radius:12px; border:1px solid rgba(255,255,255,0.15);
  background:rgba(255,255,255,0.08); color:#fff; font-size:14px; outline:none; margin-bottom:18px;
  font-family:Tahoma,sans-serif;
}
#prompt-input:focus { border-color:#f5576c; }
#prompt-box .confirm-actions { display:flex; gap:10px; justify-content:center; }
#prompt-box .confirm-actions button { min-width:100px; }
@media print { body { background:#fff !important; padding:0 !important; } .app-container,.sidebar,.no-print { display:none !important; } .main-content { background:#fff !important; color:#000 !important; border:none !important; padding:20px !important; box-shadow:none !important; backdrop-filter:none !important; } }
@media (max-width:768px) { .login-container { padding:24px 18px; margin: 8px auto; } }

/* دکمه نمایش/مخفی رمز داخل فیلد */
.pass-wrap{position:relative;width:100%;}
.pass-wrap input{width:100% !important;padding-left:48px !important;box-sizing:border-box;}
.pass-toggle{
  position:absolute;left:8px;top:50%;transform:translateY(-50%);
  z-index:5;height:34px;min-width:40px;padding:0 10px;
  border-radius:10px;border:1px solid rgba(255,255,255,0.15);
  background:rgba(108,92,231,0.35) !important;color:#fff !important;
  font-size:12px;font-weight:600;cursor:pointer;line-height:1;
  display:inline-flex;align-items:center;justify-content:center;
  box-shadow:none !important;margin:0 !important;
}
.pass-toggle:hover{background:rgba(108,92,231,0.55) !important;}
html[dir="ltr"] .pass-wrap input{padding-left:12px !important;padding-right:48px !important;}
html[dir="ltr"] .pass-toggle{left:auto;right:8px;}

.lang-switcher{position:fixed;bottom:18px;z-index:99990;display:flex;gap:6px;align-items:center;background:rgba(20,20,40,0.92);border:1px solid rgba(255,255,255,0.12);border-radius:999px;padding:6px 8px;box-shadow:0 10px 30px rgba(0,0,0,0.35)}
.lang-switcher button{border:none;cursor:pointer;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:700;font-family:Tahoma,sans-serif;background:transparent;color:rgba(255,255,255,0.65)}
.lang-switcher button.active{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}
