/* 🆕 (Update 80) بیدارباشِ صبحگاهی — آسمانِ سحر (نیلیِ شب ← نارنجیِ طلوع) فقط در پنجره؛ بخشِ لیگ و ادمین آرام و خوانا.
   RTL، واکنش‌گرا، فوکوسِ قابلِ‌دید، کاهشِ حرکت. */
.wu-backdrop { position: fixed; inset: 0; z-index: 10060; background: rgba(15, 23, 42, .55); display: flex; align-items: center; justify-content: center; padding: 16px; height: 100dvh; overscroll-behavior: contain; }
.wu-modal { width: min(420px, 100%); max-height: calc(100dvh - 32px); overflow: auto; background: #fff; color: #1e293b; border-radius: 24px; text-align: center;
  box-shadow: 0 30px 70px -20px rgba(2, 6, 23, .55); font-family: 'Vazirmatn', system-ui, sans-serif; line-height: 1.8; animation: wu-pop .3s ease-out; }
.wu-sky { position: relative; height: 150px; overflow: hidden; background: linear-gradient(180deg, #1e1b4b 0%, #6d28d9 38%, #f97316 78%, #fdba74 100%); }
.wu-sun { position: absolute; left: 50%; bottom: -34px; width: 104px; height: 104px; margin-left: -52px; border-radius: 50%;
  background: radial-gradient(circle, #fff7ed 0 30%, #fde68a 55%, #f59e0b 100%); box-shadow: 0 0 60px 18px rgba(253, 186, 116, .7); animation: wu-rise 1.6s ease-out both; }
.wu-hill { position: absolute; inset: auto -10% -40px -10%; height: 70px; border-radius: 50% 50% 0 0; background: #fff; }
.wu-modal h2 { font-size: 19px; font-weight: 800; margin: 4px 18px 4px; }
.wu-modal p { margin: 0 22px 10px; color: #475569; font-size: 13.5px; }
.wu-clock { font-size: 36px; font-weight: 800; color: #c2410c; font-variant-numeric: tabular-nums; direction: ltr; margin-bottom: 6px; }
.wu-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 6px 22px 12px; }
.wu-stats div { background: #fff7ed; border-radius: 14px; padding: 10px; }
.wu-stats b { display: block; font-size: 24px; color: #c2410c; }
.wu-stats span { font-size: 12px; color: #9a3412; }
.wu-actions { display: flex; gap: 8px; padding: 6px 22px 8px; }
.wu-actions .wu-btn { flex: 1; }
.wu-note { display: block; color: #94a3b8; font-size: 11.5px; padding-bottom: 16px; }
.wu-btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 44px; padding: 8px 16px; border-radius: 14px; border: 1px solid #e2e8f0;
  background: #fff; color: #334155; font: inherit; font-weight: 700; font-size: 13.5px; cursor: pointer; }
.wu-btn.primary { background: linear-gradient(90deg, #f97316, #ea580c); border-color: transparent; color: #fff; }
.wu-btn:disabled { opacity: .6; cursor: progress; }
.wu-btn:focus-visible, .wu-modal :focus-visible { outline: 2px solid #ea580c; outline-offset: 2px; }
.wu-err { color: #b42318 !important; font-size: 12.5px; }
.wu-ok { color: #047857; font-size: 13px; display: inline-flex; gap: 4px; align-items: center; }
@keyframes wu-pop { from { transform: translateY(14px) scale(.97); opacity: 0; } }
@keyframes wu-rise { from { transform: translateY(60px); } }

/* بخشِ لیگ */
.wu-league { direction: rtl; background: #fff; border: 1px solid #fde4c8; border-radius: 18px; padding: 16px 18px; margin: 0 0 16px;
  background-image: linear-gradient(180deg, #fff7ed, #fff 90px); font-family: 'Vazirmatn', system-ui, sans-serif; }
.wu-l-head { display: flex; justify-content: space-between; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 10px; }
.wu-l-head h2 { font-size: 16px; font-weight: 800; margin: 0; display: flex; gap: 6px; align-items: center; color: #9a3412; }
.wu-l-range { font-size: 12px; color: #9a3412; background: #ffedd5; padding: 2px 10px; border-radius: 999px; }
.wu-l-grid { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 16px; }
.wu-l-kpis { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-bottom: 10px; }
.wu-l-kpis div { background: #fff; border: 1px solid #fde4c8; border-radius: 12px; padding: 8px; text-align: center; }
.wu-l-kpis b { display: block; font-size: 18px; color: #c2410c; font-variant-numeric: tabular-nums; }
.wu-l-kpis span { font-size: 11.5px; color: #64748b; }
.wu-chart { display: flex; align-items: flex-end; gap: 4px; height: 120px; padding: 4px 0 18px; border-bottom: 1px solid #fde4c8; margin-bottom: 10px; direction: ltr; }
.wu-bar { flex: 1; height: 100%; position: relative; display: flex; align-items: flex-end; justify-content: center; min-width: 6px; }
.wu-bar span { width: 100%; max-width: 22px; border-radius: 6px 6px 2px 2px; background: linear-gradient(180deg, #fbbf24, #f97316); }
.wu-bar i { width: 100%; max-width: 22px; height: 3px; border-radius: 2px; background: #e2e8f0; }
.wu-bar small { position: absolute; top: 100%; margin-top: 4px; display: flex; flex-direction: column; align-items: center; line-height: 1.15; font-size: 10px; color: #94a3b8; white-space: nowrap; font-variant-numeric: tabular-nums; }
.wu-bar small b { font-weight: 700; color: #64748b; font-size: 10.5px; }
/* 🔁 (Update 81) امروز برجسته؛ برچسب‌ها دوخطی و فشرده تا در عرضِ گوشی رویِ هم نیفتند */
.wu-bar.today small { color: #c2410c; }
.wu-bar.today small b { color: #c2410c; }
.wu-bar.today i { background: #fdba74; }
.wu-chart:not(.admin) { padding-bottom: 34px; }
.wu-l-board h3 { font-size: 13.5px; margin: 0 0 8px; }
.wu-l-board ol { margin: 0; padding: 0; list-style: none; counter-reset: wu; display: flex; flex-direction: column; gap: 4px; }
.wu-l-board li { counter-increment: wu; display: grid; grid-template-columns: 22px 1fr auto auto; gap: 8px; align-items: center; font-size: 12.5px; padding: 5px 8px; border-radius: 10px; }
.wu-l-board li::before { content: counter(wu); font-weight: 800; color: #c2410c; text-align: center; }
.wu-l-board li.me { background: #ffedd5; font-weight: 700; }
.wu-n { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.wu-t { direction: ltr; font-variant-numeric: tabular-nums; color: #64748b; }
.wu-empty { color: #94a3b8; font-size: 13px; }
.wu-skel { height: 140px; border-radius: 14px; background: linear-gradient(90deg, #fff7ed, #fffbf5, #fff7ed); background-size: 200% 100%; animation: wu-sh 1.3s infinite; }
@keyframes wu-sh { to { background-position: -200% 0; } }

/* ادمین */
.wu-admin { direction: rtl; max-width: 860px; margin: 0 auto; padding: 16px; font-family: 'Vazirmatn', system-ui, sans-serif; }
.wu-admin h1 { font-size: 20px; display: flex; gap: 8px; align-items: center; margin: 0; }
.wu-sub { color: #64748b; font-size: 13px; max-width: 70ch; }
.wu-card { background: #fff; border: 1px solid #e2e8f0; border-radius: 14px; padding: 16px; margin-bottom: 14px; }
.wu-card h2 { font-size: 15px; margin: 0 0 10px; }
.wu-row { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; margin: 10px 0; }
.wu-row label, .wu-full { display: flex; flex-direction: column; gap: 4px; font-size: 12.5px; color: #475569; }
.wu-full textarea, .wu-row input[type=time] { font: inherit; border: 1px solid #e2e8f0; border-radius: 8px; padding: 6px 8px; }
.wu-check { flex-direction: row !important; align-items: center; gap: 6px !important; }
.wu-chart.admin .wu-bar small { font-size: 10.5px; }
.wu-admin-board { margin: 0; padding-inline-start: 20px; font-size: 13px; }
.wu-admin-board li span + span { margin-inline-start: 12px; color: #64748b; }

@media (max-width: 760px) { .wu-l-grid { grid-template-columns: 1fr; } }
@media (max-width: 380px) { .wu-chart { gap: 2px; } .wu-bar small { font-size: 9px; } .wu-bar small b { font-size: 9.5px; } }
@media (prefers-reduced-motion: reduce) { .wu-modal, .wu-sun, .wu-skel { animation: none; } }
[data-theme="dark"] .wu-modal { background: #1c1d22; color: #f1f5f9; }
[data-theme="dark"] .wu-modal p { color: #cbd5e1; }
[data-theme="dark"] .wu-hill { background: #1c1d22; }
