:root{--bg:#f4f7fb;--surface:#fff;--surface-2:#f8fafc;--text:#172033;--muted:#6b7280;--line:#e6eaf0;--primary:#1d4ed8;--primary-2:#2563eb;--success:#059669;--warning:#d97706;--danger:#dc2626;--nav:#101828;--radius:18px;--shadow:0 12px 34px rgba(15,23,42,.08)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Tahoma,Arial,sans-serif;line-height:1.7}a{color:inherit}.app-header{background:var(--nav);color:#fff;position:sticky;top:0;z-index:30;box-shadow:0 4px 20px rgba(0,0,0,.15)}.app-header__inner{max-width:1440px;margin:auto;padding:0 28px;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:800;font-size:20px}.brand__mark{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#2563eb,#7c3aed)}.main-nav{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.main-nav a{text-decoration:none;color:#cbd5e1;padding:9px 13px;border-radius:10px;font-size:14px}.main-nav a:hover{background:rgba(255,255,255,.1);color:#fff}.page-shell{max-width:1440px;margin:0 auto;padding:32px 28px 56px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.page-title{margin:0;font-size:30px;line-height:1.3}.page-subtitle{margin:8px 0 0;color:var(--muted)}.actions{display:flex;gap:10px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:11px;padding:10px 17px;font-weight:700;text-decoration:none;cursor:pointer;font-family:inherit;font-size:14px}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-2)}.btn-success{background:var(--success);color:#fff}.btn-warning{background:var(--warning);color:#fff}.btn-light{background:#fff;color:var(--text);border:1px solid var(--line)}.btn-block{width:100%}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card__header{padding:20px 22px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:15px}.card__title{margin:0;font-size:17px}.card__body{padding:22px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}.stat-card__label{color:var(--muted);font-size:13px}.stat-card__value{font-size:23px;font-weight:800;margin-top:4px}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700;background:#eef2ff;color:#3730a3}.badge-success{background:#ecfdf5;color:#047857}.badge-warning{background:#fff7ed;color:#c2410c}.badge-muted{background:#f1f5f9;color:#475569}.layout-grid{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:22px;align-items:start}.stack{display:grid;gap:18px}.form-group{margin-bottom:15px}.form-group label{display:block;font-size:13px;font-weight:700;margin-bottom:6px;color:#344054}input,select,textarea{width:100%;border:1px solid #d0d5dd;border-radius:10px;padding:10px 12px;background:#fff;font:inherit;color:var(--text);outline:none}input:focus,select:focus,textarea:focus{border-color:#84adff;box-shadow:0 0 0 4px rgba(37,99,235,.1)}.field-error,.errorlist{color:var(--danger);font-size:12px;margin:6px 0 0}.participant-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.participant{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--surface-2);border:1px solid var(--line);padding:10px 12px;border-radius:11px}.participant__name{font-weight:700}.empty-state{text-align:center;padding:34px 20px;color:var(--muted);border:1px dashed #cbd5e1;border-radius:14px;background:#fafcff}.tournament-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.tournament-card{padding:20px;text-decoration:none;transition:.18s ease}.tournament-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(15,23,42,.12)}.tournament-card__top{display:flex;justify-content:space-between;gap:12px}.tournament-card h3{margin:0;font-size:18px}.meta-list{display:grid;gap:9px;margin-top:18px;color:var(--muted);font-size:13px}.rounds-scroll{overflow-x:auto;padding-bottom:8px}.bracket{display:flex;gap:18px;min-width:max-content;align-items:stretch}.round-column{width:290px;display:flex;flex-direction:column;gap:14px}.round-title{font-size:14px;font-weight:800;color:#344054;padding:0 4px}.match-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 6px 18px rgba(15,23,42,.05)}.match-card__head{padding:9px 12px;background:#f8fafc;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.player-row{display:grid;grid-template-columns:1fr 38px;align-items:center;padding:10px 12px;border-bottom:1px solid #f1f5f9}.player-row:last-of-type{border-bottom:0}.player-row.is-winner{font-weight:800;background:#f0fdf4;color:#166534}.score{font-weight:800;text-align:center}.result-form{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;padding:10px;background:#f8fafc;border-top:1px solid var(--line)}.result-form input{padding:7px}.result-form .btn{padding:7px 10px}.message{padding:13px 16px;margin-bottom:18px;border-radius:12px;background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.message.error{background:#fef2f2;color:#991b1b;border-color:#fecaca}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{text-align:right;padding:14px;border-bottom:1px solid var(--line)}.data-table th{font-size:12px;color:var(--muted);background:#f8fafc}.form-card{max-width:850px;margin:auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .span-2{grid-column:span 2}.live-search-select{position:relative}.live-search-select__results,.player-search-results{position:absolute;z-index:60;top:100%;right:0;left:0;max-height:280px;overflow:auto;background:#fff;border:1px solid #cbd5e1;border-radius:10px;box-shadow:0 12px 30px rgba(15,23,42,.15);display:none}.live-search-select__results.is-open,.player-search-results.is-open{display:block}.player-search-item{display:block;width:100%;padding:10px 12px;border:0;border-bottom:1px solid #eef2f7;background:#fff;text-align:right;cursor:pointer;font:inherit}.player-search-item:hover,.player-search-item.is-active{background:#eff6ff;color:#1d4ed8}.player-select-source{display:none!important}.jackpot-final-actions{margin-bottom:24px;border-color:#fde68a;background:#fffdf5}.jackpot-finalists{display:flex;align-items:center;justify-content:center;gap:18px;padding:16px;border-radius:14px;background:#fffbeb;margin-bottom:16px;font-size:17px}.jackpot-final-actions__buttons{justify-content:center}.jackpot-final-action-form{margin:0}@media(max-width:1000px){.stats-grid{grid-template-columns:repeat(2,1fr)}.layout-grid{grid-template-columns:1fr}.tournament-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.app-header__inner{padding:12px 16px;align-items:flex-start;flex-direction:column}.page-shell{padding:22px 14px 40px}.page-header{flex-direction:column}.page-title{font-size:24px}.stats-grid,.tournament-grid,.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.result-form{grid-template-columns:1fr 1fr}.result-form .btn{grid-column:span 2}.main-nav{width:100%;overflow-x:auto;flex-wrap:nowrap}.main-nav a{white-space:nowrap}.jackpot-finalists{flex-direction:column}.jackpot-final-actions__buttons{display:grid}.jackpot-final-action-form .btn{width:100%}}

.main-nav__form {
  margin: 0;
}

.main-nav__button {
  width: auto;
  border: 0;
  border-radius: 10px;
  padding: 9px 13px;
  background: transparent;
  color: #cbd5e1;
  font-family: inherit;
  font-size: 14px;
  cursor: pointer;
}

.main-nav__button:hover {
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}

@media (max-width: 680px) {
  .main-nav__form {
    flex: 0 0 auto;
  }

  .main-nav__button {
    white-space: nowrap;
  }
}

.btn-danger {
  background: var(--danger);
  color: #fff;
}

.btn-danger:hover {
  background: #b91c1c;
}

.btn-sm {
  border-radius: 9px;
  padding: 6px 10px;
  font-size: 12px;
}

.participant__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
  flex-wrap: wrap;
}

.participant__actions form {
  margin: 0;
}

.jalali-date-input {
  direction: ltr;
  text-align: left;
  font-variant-numeric: tabular-nums;
}

/* Package 7 management dashboards */
.management-dashboard-header{align-items:center}.dashboard-period-badge{display:grid;gap:2px;min-width:230px;padding:12px 16px;border:1px solid #c7d2fe;border-radius:14px;background:#eef2ff;color:#3730a3}.dashboard-period-badge span{font-size:11px;font-weight:700}.dashboard-period-badge strong{font-size:14px;font-variant-numeric:tabular-nums}.dashboard-filter-card{margin-bottom:20px}.dashboard-card-subtitle{margin:4px 0 0;color:var(--muted);font-size:12px}.dashboard-filter-grid{display:grid;grid-template-columns:minmax(200px,1.3fr) repeat(2,minmax(170px,1fr)) auto;gap:14px;align-items:end}.dashboard-filter-grid .form-group{margin:0}.dashboard-filter-actions{display:flex;gap:8px;padding-bottom:1px}.dashboard-filter-error{grid-column:1/-1;padding:10px 13px;border:1px solid #fecaca;border-radius:10px;background:#fef2f2;color:#991b1b;font-size:13px}.management-stats-grid{margin-top:0}.stat-card{position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;right:0;left:0;height:3px;background:#cbd5e1}.stat-card--primary:before{background:#2563eb}.stat-card--violet:before{background:#7c3aed}.stat-card--success:before{background:#059669}.stat-card--warning:before{background:#d97706}.stat-card--danger:before{background:#dc2626}.stat-card__hint{margin-top:5px;color:var(--muted);font-size:11px}.stat-card__value--money{font-size:20px;font-variant-numeric:tabular-nums;white-space:nowrap}.dashboard-status-text{font-size:17px}.dashboard-status-text.is-active{color:#047857}.dashboard-status-text.is-inactive{color:#b91c1c}.dashboard-main-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:20px;margin-bottom:20px}.dashboard-main-grid--balanced{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-section-header{align-items:flex-start}.trend-legend{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:11px}.trend-legend span{display:inline-flex;align-items:center;gap:5px}.trend-legend__mark{width:8px;height:8px;border-radius:50%;background:#94a3b8}.trend-legend__mark.is-tournament,.trend-bar.is-tournament{background:#2563eb}.trend-legend__mark.is-registration,.trend-bar.is-registration{background:#7c3aed}.trend-legend__mark.is-income,.trend-bar.is-income{background:#059669}.trend-bar.is-income.is-negative{background:#dc2626}.trend-chart{height:250px;display:flex;align-items:stretch;gap:8px;direction:ltr;overflow-x:auto;padding:8px 4px 0;border-bottom:1px solid var(--line)}.trend-column{flex:1 0 42px;min-width:42px;display:grid;grid-template-rows:1fr 30px;gap:7px;direction:rtl}.trend-column__bars{height:100%;display:flex;align-items:flex-end;justify-content:center;gap:3px;border-bottom:1px dashed #e2e8f0}.trend-bar{display:block;width:8px;min-height:0;border-radius:5px 5px 2px 2px;transition:height .2s ease}.trend-column__label{color:var(--muted);font-size:9px;white-space:nowrap;text-align:center;direction:ltr}.status-breakdown-list{display:grid;gap:14px}.status-breakdown-row__meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px}.status-progress{height:7px;margin-top:6px;overflow:hidden;border-radius:999px;background:#eef2f7}.status-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2563eb,#7c3aed)}.finance-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.finance-summary-grid>div{padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.finance-summary-grid span{display:block;color:var(--muted);font-size:11px}.finance-summary-grid strong{display:block;margin-top:5px;font-size:17px;font-variant-numeric:tabular-nums}.finance-summary-grid strong.is-danger,.dashboard-money.is-danger{color:#b91c1c}.jackpot-summary-grid>div{background:#fffbeb;border-color:#fde68a}.dashboard-table-card{margin-bottom:20px}.dashboard-data-table td{font-variant-numeric:tabular-nums}.dashboard-data-table td:first-child{font-variant-numeric:normal}.table-cell-subtitle{display:block;margin-top:2px;color:var(--muted);font-size:10px}.dashboard-money{font-weight:800;white-space:nowrap}.activity-timeline{display:grid}.activity-event{position:relative;display:grid;grid-template-columns:14px 1fr;gap:12px;padding-bottom:18px}.activity-event:not(:last-child):before{content:"";position:absolute;top:13px;bottom:0;right:6px;width:1px;background:#e2e8f0}.activity-event__marker{position:relative;z-index:1;width:13px;height:13px;margin-top:6px;border:3px solid #dbeafe;border-radius:50%;background:#2563eb}.activity-event__marker.is-registration{border-color:#ede9fe;background:#7c3aed}.activity-event__marker.is-income{border-color:#d1fae5;background:#059669}.activity-event__marker.is-refund{border-color:#fee2e2;background:#dc2626}.activity-event__marker.is-jackpot{border-color:#fef3c7;background:#d97706}.activity-event__content{min-width:0}.activity-event__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.activity-event__top strong{font-size:13px}.activity-event__top time{flex:0 0 auto;color:var(--muted);font-size:10px;direction:ltr}.activity-event__content p{margin:3px 0 7px;color:#475569;font-size:12px;overflow-wrap:anywhere}.dashboard-jackpot-list{display:grid;gap:12px}.dashboard-jackpot-list article{padding:14px;border:1px solid #fde68a;border-radius:13px;background:#fffdf5}.dashboard-jackpot-list article>div{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.dashboard-jackpot-list article>div span{color:var(--muted);font-size:10px}.dashboard-jackpot-list dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0 0}.dashboard-jackpot-list dl div{padding:8px;border-radius:9px;background:#fff}.dashboard-jackpot-list dt{color:var(--muted);font-size:9px}.dashboard-jackpot-list dd{margin:2px 0 0;font-size:12px;font-weight:800;font-variant-numeric:tabular-nums}.dashboard-data-note{padding:13px 16px;border:1px solid #dbeafe;border-radius:12px;background:#eff6ff;color:#1e3a8a;font-size:11px}

@media(max-width:1100px){.dashboard-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-filter-actions{align-self:end}.dashboard-main-grid{grid-template-columns:1fr}.dashboard-main-grid--balanced{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.management-dashboard-header{align-items:stretch}.dashboard-period-badge{width:100%}.dashboard-filter-grid,.dashboard-main-grid--balanced{grid-template-columns:1fr}.dashboard-filter-actions{display:grid;grid-template-columns:1fr 1fr}.dashboard-filter-actions .btn{width:100%}.dashboard-section-header{align-items:flex-start;flex-direction:column}.trend-chart{height:230px}.finance-summary-grid{grid-template-columns:1fr}.activity-event__top{display:grid;gap:2px}.dashboard-jackpot-list article>div{display:grid}.dashboard-jackpot-list dl{grid-template-columns:1fr}.dashboard-data-note{font-size:10px}}

/* BGMS shared accessible switch control */
.bgms-switch {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  max-width: 100%;
  cursor: pointer;
  user-select: none;
}
.bgms-switch__input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.bgms-switch__track {
  position: relative;
  display: inline-flex;
  flex: 0 0 auto;
  width: 48px;
  height: 27px;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  background: #e2e8f0;
  transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.bgms-switch__thumb {
  position: absolute;
  top: 3px;
  right: 3px;
  width: 19px;
  height: 19px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 5px rgba(15, 23, 42, .24);
  transition: transform .18s ease;
}
.bgms-switch__input:checked + .bgms-switch__track {
  border-color: var(--success);
  background: var(--success);
}
.bgms-switch__input:checked + .bgms-switch__track .bgms-switch__thumb {
  transform: translateX(-21px);
}
.bgms-switch__input:focus-visible + .bgms-switch__track {
  box-shadow: 0 0 0 4px rgba(37, 99, 235, .18);
}
.bgms-switch__input:disabled + .bgms-switch__track {
  opacity: .55;
  cursor: not-allowed;
}
.bgms-switch__content {
  display: grid;
  gap: 2px;
  min-width: 0;
}
.bgms-switch__content strong {
  color: #344054;
  font-size: 13px;
}
.bgms-switch__content .club-form-help {
  display: block;
  margin-top: 0;
}
@media (max-width: 680px) {
  .bgms-switch {
    align-items: flex-start;
  }
  .bgms-switch__content {
    flex: 1;
  }
}
