
:root{
  --kh-bg:#f4f7f5;
  --kh-surface:#ffffff;
  --kh-surface-2:#f8fbf9;
  --kh-border:#dbe7e1;
  --kh-shadow:0 12px 40px rgba(8,43,34,.06);
  --kh-shadow-soft:0 6px 20px rgba(8,43,34,.05);
  --kh-green:#0cae53;
  --kh-green-deep:#0b5c42;
  --kh-green-dark:#003f38;
  --kh-green-dark-2:#002f2b;
  --kh-text:#183129;
  --kh-muted:#6d837a;
}

html,body,button,input,select,textarea,table,th,td,label,summary,a{font-family:"IRANSans","IranSans","IRANSansX",Tahoma,sans-serif!important}
body{background:linear-gradient(180deg,#f5f8f6 0%,#eef5f1 100%)!important;color:var(--kh-text)!important}

.sidebar{background:linear-gradient(180deg,var(--kh-green-dark-2) 0%, var(--kh-green-dark) 100%)!important;box-shadow:-8px 0 30px rgba(0,0,0,.08)}
.brand{padding:8px 4px 16px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:18px!important}
.brand span{background:linear-gradient(135deg,#1bcf6a,#0cae53)!important;box-shadow:0 10px 18px rgba(12,174,83,.24)}
.brand strong{font-size:18px}
.brand small{opacity:.86}

.main header{height:72px!important;background:rgba(255,255,255,.78)!important;backdrop-filter:blur(12px);border-bottom:1px solid var(--kh-border)!important;box-shadow:0 4px 16px rgba(8,43,34,.03)}
.content{padding:30px 30px 36px!important}
.page-head{margin-bottom:22px!important;align-items:flex-start!important}
.page-head h1{font-size:28px!important;line-height:1.35;color:var(--kh-green-dark)!important}
.page-head p{font-size:13px!important;line-height:2;color:var(--kh-muted)!important}

.card{background:var(--kh-surface)!important;border:1px solid var(--kh-border)!important;border-radius:18px!important;box-shadow:var(--kh-shadow)!important;padding:22px!important}
.card h2{font-size:18px!important;color:var(--kh-green-dark)!important;margin-bottom:12px!important}
.card h3{color:var(--kh-green-dark)!important}
.note{background:linear-gradient(180deg,#f8fcf9,#f3faf6)!important;border:1px solid #dcece4;color:var(--kh-muted)!important;border-radius:14px!important;padding:14px 16px!important}

.stats{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:16px!important}
.stats article{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff,#f7fbf8)!important;border:1px solid var(--kh-border)!important;border-radius:18px!important;padding:20px 18px 16px!important;box-shadow:var(--kh-shadow-soft)!important}
.stats article::before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:4px;background:linear-gradient(90deg,#0cae53,#87d9a8)}
.stats span{font-size:30px!important;font-weight:900!important;color:var(--kh-green-deep)!important;line-height:1.2!important;margin-bottom:10px!important}
.stats b{display:block;color:#2c4c42!important;font-size:14px!important;margin-bottom:6px!important}
.stats small{display:block;color:var(--kh-muted)!important;line-height:1.9}

.dashboard-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}
.dashboard-grid .full{grid-column:1/-1}
.dashboard-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:10px}
.dashboard-status-item{background:linear-gradient(180deg,#fbfdfb,#f4faf7);border:1px solid #deebe4;border-radius:16px;padding:16px}
.dashboard-status-item b{display:block;font-size:13px;color:var(--kh-muted);margin-bottom:8px}
.dashboard-status-item strong{display:block;font-size:17px;line-height:1.8;color:var(--kh-green-dark)}
.dashboard-status-item small{display:block;color:var(--kh-muted);line-height:1.9}
.dashboard-report-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.dashboard-report-links a,.quick a,.mini-link-card{display:flex;align-items:center;justify-content:center;min-height:52px;padding:12px 14px;border-radius:14px;text-decoration:none;border:1px solid #dbe8e1;background:#f8fbf9;color:var(--kh-green-dark)!important;font-weight:800;transition:.18s ease;box-shadow:0 2px 0 rgba(255,255,255,.55) inset}
.dashboard-report-links a:hover,.quick a:hover,.mini-link-card:hover{transform:translateY(-1px);background:#f0f8f3;border-color:#cbe1d6}
.quick{grid-template-columns:1fr 1fr!important;gap:12px!important}
.quick a{justify-content:flex-start;padding-inline:16px!important}
.dashboard-hint{display:flex;justify-content:space-between;gap:14px;align-items:center}
.dashboard-hint p{margin:0;color:var(--kh-muted);line-height:2}

.button,.quick a{border-radius:12px!important}
.button.primary{background:linear-gradient(180deg,#13c261,#0cae53)!important;color:#fff!important;box-shadow:0 10px 22px rgba(12,174,83,.18)}
.button.secondary{background:#edf5f0!important;color:var(--kh-green-dark)!important;border:1px solid #d9e8de!important}
.button.danger{background:linear-gradient(180deg,#db4d4d,#c43d3d)!important;color:#fff!important}
.button[disabled]{opacity:.55;cursor:not-allowed}
.actions{gap:10px!important;flex-wrap:wrap}

input,textarea,select{border:1px solid #d4e1da!important;background:#fff!important;border-radius:12px!important;min-height:46px;padding:12px 13px!important;color:var(--kh-text)!important;transition:border-color .15s,box-shadow .15s,background .15s}
textarea{min-height:110px}
input:focus,textarea:focus,select:focus{outline:none!important;border-color:#9cd5b5!important;box-shadow:0 0 0 4px rgba(12,174,83,.09)!important;background:#fcfffd!important}
label{color:#33544a!important;font-weight:700!important;font-size:13px!important}
.form-grid{gap:18px!important}
.check{gap:10px!important}
.check input{accent-color:#0cae53}

.table-card{padding:0!important;border-radius:18px!important;overflow:hidden}
.table-card h2{padding:22px 22px 0!important}
.table-wrap{overflow:auto}
table{white-space:normal!important}
th{background:#f5faf7!important;color:#507166!important;font-weight:800!important;position:sticky;top:0;z-index:1}
td,th{padding:14px 12px!important;border-bottom:1px solid #e5efea!important;line-height:1.9}
tr:hover td{background:#fbfdfc}
code{background:#f0f6f3!important;color:var(--kh-green-dark)!important;border:1px solid #dce7e1!important}
.badge{background:#eef6f1!important;color:var(--kh-green-dark)!important;border:1px solid #dce9e2!important;padding:6px 10px!important}
.badge.active{background:#e1f7ea!important;color:#0b7b45!important;border-color:#b9e8cb!important}

.ui-accordion{padding:0!important;overflow:hidden!important}
.ui-accordion>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;background:linear-gradient(180deg,#ffffff,#f7fbf8);user-select:none}
.ui-accordion>summary::-webkit-details-marker{display:none}
.ui-accordion>summary::before{content:"⌄";order:-1;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:#edf6f0;color:var(--kh-green-dark);font-size:16px;flex:0 0 28px;transition:transform .18s ease, background .18s ease}
.ui-accordion[open]>summary::before{transform:rotate(180deg);background:#dff4e8}
.ui-accordion>summary:hover{background:linear-gradient(180deg,#ffffff,#f4faf6)}
.ui-accordion .accordion-heading{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}
.ui-accordion .accordion-title{font-weight:900;color:var(--kh-green-dark);font-size:17px;line-height:1.6}
.ui-accordion .accordion-subtitle{color:var(--kh-muted);font-size:12px;line-height:1.8}
.ui-accordion .accordion-meta{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;color:var(--kh-muted);font-size:12px}
.ui-accordion .accordion-body{padding:0 22px 22px;border-top:1px solid #edf3ef}
.ui-accordion .accordion-body>.form-grid,
.ui-accordion .accordion-body>div,
.ui-accordion .accordion-body>p,
.ui-accordion .accordion-body>.note{margin-top:18px}

.filters-meta,.message-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 6px}
.info-chip{background:#f7fbf8;border:1px solid #dfebe4;border-radius:14px;padding:14px 16px}
.info-chip b{display:block;font-size:12px;color:var(--kh-muted);margin-bottom:6px}
.info-chip strong{font-size:20px;color:var(--kh-green-deep)}
.help-text{font-size:12px;color:var(--kh-muted);line-height:2}

.manager-card-head,.contest-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.inline-badges{display:flex;gap:8px;flex-wrap:wrap}
.soft-surface{background:#f8fbf9;border:1px solid #dfeae4;border-radius:14px;padding:14px 16px}
.compact-action{padding:14px 18px!important;background:#fbfdfb!important}
.compact-action .button{width:100%}

.admin-nav{gap:9px!important}
.admin-nav .nav-main,
.admin-nav details{border:1px solid rgba(255,255,255,.06)!important;border-radius:14px!important;overflow:hidden!important;background:rgba(255,255,255,.03)!important}
.admin-nav .nav-main{padding:12px 14px!important}
.admin-nav summary{padding:12px 14px!important}
.admin-nav details a{margin:0 8px 8px!important;border-radius:10px!important;background:rgba(255,255,255,.05)!important;padding:10px 12px!important}
.admin-nav details a:hover,.admin-nav .nav-main:hover{background:rgba(255,255,255,.11)!important}
.admin-nav a.active,.admin-nav .nav-main.active,.admin-nav details[open]>summary{background:rgba(12,174,83,.16)!important;color:#fff!important}
.sidebar .logout .button.secondary{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.08)!important;color:#fff!important}
.panel-credit{background:rgba(255,255,255,.94)!important;border-radius:999px!important;padding:7px 12px!important}

@media(max-width:1180px){
  .stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .dashboard-grid{grid-template-columns:1fr!important}
}
@media(max-width:900px){
  .filters-meta,.message-stats,.dashboard-status-grid,.dashboard-report-links{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .content{padding:18px 16px 28px!important}
  .stats{grid-template-columns:1fr 1fr!important}
  .quick,.filters-meta,.message-stats,.dashboard-status-grid,.dashboard-report-links{grid-template-columns:1fr!important}
  .ui-accordion>summary{padding:16px 18px}
  .ui-accordion .accordion-body{padding:0 18px 18px}
}

/* v7.2.9 footer credit */
.panel-credit{color:#4b5563!important}
.panel-credit:hover{color:#374151!important}
