:root{
  --bg:#050816;
  --bg2:#090d20;
  --card:rgba(12,19,45,.76);
  --card-strong:rgba(14,23,55,.94);
  --border:rgba(124,161,255,.18);
  --text:#f6f8ff;
  --muted:#aab5d6;
  --blue:#00c8ff;
  --purple:#8b5cf6;
  --pink:#e879f9;
  --green:#22c55e;
  --yellow:#f59e0b;
  --danger:#ff4d7d;
  --shadow:0 20px 60px rgba(0,0,0,.35);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-height:100vh;
  font-family:"Tajawal",sans-serif;
  background:
    radial-gradient(circle at 20% 10%,rgba(0,200,255,.12),transparent 28%),
    radial-gradient(circle at 85% 15%,rgba(139,92,246,.18),transparent 32%),
    linear-gradient(180deg,var(--bg),var(--bg2));
  color:var(--text);
}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
a{text-decoration:none;color:inherit}
.hidden{display:none!important}
.stars{
  position:fixed;inset:0;pointer-events:none;opacity:.45;
  background-image:
    radial-gradient(circle,#fff 1px,transparent 1.2px),
    radial-gradient(circle,#7dd3fc 1px,transparent 1.2px);
  background-size:45px 45px,70px 70px;
  background-position:0 0,20px 20px;
  mask-image:linear-gradient(to bottom,#000,transparent 85%);
}
.glass{
  background:var(--card);
  border:1px solid var(--border);
  box-shadow:var(--shadow);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.container{width:min(1180px,calc(100% - 28px));margin:auto}
.site-header{
  width:min(1180px,calc(100% - 28px));
  margin:18px auto 0;
  display:flex;align-items:center;justify-content:space-between;
  position:relative;z-index:5;
}
.brand{display:flex;gap:12px;align-items:center}
.brand strong{display:block;font-size:18px}
.brand small{display:block;color:var(--muted);font-size:12px}
.brand-center{justify-content:center}
.logo{
  width:46px;height:46px;border-radius:15px;
  display:grid;place-items:center;font-weight:800;
  background:linear-gradient(135deg,var(--blue),var(--purple));
  color:white;box-shadow:0 0 30px rgba(0,200,255,.25);
}
.primary-btn,.ghost-btn,.danger-btn,.warning-btn{
  border:0;border-radius:14px;padding:12px 18px;font-weight:700;
  transition:.2s transform,.2s opacity,.2s box-shadow;
}
.primary-btn{
  color:white;background:linear-gradient(135deg,var(--blue),var(--purple));
  box-shadow:0 10px 30px rgba(80,70,255,.24);
}
.ghost-btn{color:var(--text);background:rgba(255,255,255,.07);border:1px solid var(--border)}
.danger-btn{color:white;background:rgba(255,77,125,.18);border:1px solid rgba(255,77,125,.32)}
.warning-btn{color:white;background:rgba(245,158,11,.16);border:1px solid rgba(245,158,11,.3)}
button:hover{transform:translateY(-1px);opacity:.95}
.hero{
  min-height:72vh;display:grid;grid-template-columns:1.1fr .9fr;
  align-items:center;gap:42px;padding:60px 0 40px;position:relative;z-index:2;
}
.eyebrow{color:#b8c9ff;font-weight:700;font-size:14px}
.hero h1{font-size:clamp(40px,6vw,78px);line-height:1.05;margin:18px 0}
.hero h1 span{
  background:linear-gradient(90deg,var(--blue),var(--purple),var(--pink));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero p{color:var(--muted);font-size:18px;line-height:1.8}
.lookup-card{margin-top:28px}
.lookup-card label{display:block;font-weight:700;margin-bottom:10px}
.lookup-row{display:flex;gap:10px}
input,select,textarea{
  width:100%;color:var(--text);background:rgba(255,255,255,.06);
  border:1px solid var(--border);border-radius:14px;padding:14px 15px;
  outline:none;
}
input:focus,select:focus,textarea:focus{border-color:rgba(0,200,255,.7);box-shadow:0 0 0 4px rgba(0,200,255,.08)}
select option{background:#0d1531;color:white}
.hint{font-size:13px!important;margin:8px 2px 0!important}
.hero-panel{padding:36px;border-radius:30px;min-height:390px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}
.panel-orb{
  position:absolute;width:240px;height:240px;border-radius:50%;
  background:linear-gradient(135deg,rgba(0,200,255,.26),rgba(139,92,246,.3));
  filter:blur(10px);left:-80px;top:-80px;
}
.mini-label{color:var(--muted)}
.hero-panel>strong{font-size:58px;margin:12px 0;position:relative}
.countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:22px}
.countdown div{background:rgba(255,255,255,.06);border:1px solid var(--border);border-radius:16px;padding:14px 6px;text-align:center}
.countdown strong{display:block;font-size:23px}
.countdown span{color:var(--muted);font-size:12px}
.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:10px 0 28px}
.stat-card{padding:24px;border-radius:20px}
.stat-card span{color:var(--muted)}
.stat-card strong{display:block;font-size:34px;margin-top:10px}
.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:60px}
.info-card{padding:28px;border-radius:24px}
.info-card h2{margin-top:0}
.info-card li,.info-card p{color:var(--muted);line-height:1.9}
.highlight-card{border-color:rgba(139,92,246,.35)}
.result-wrap{margin:0 0 26px}
.result-card{padding:28px;border-radius:24px}
.result-top,.manage-card-head,.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.result-top h2,.manage-card h3{margin:10px 0 4px}
.result-top p,.manage-card p,.section-head p{color:var(--muted);margin:0}
.result-grid,.mini-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:24px}
.result-grid div,.mini-stats div{padding:16px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid var(--border)}
.result-grid span,.mini-stats span{display:block;color:var(--muted);font-size:13px}
.result-grid strong,.mini-stats strong{display:block;margin-top:6px}
.notice,.warning{padding:14px;border-radius:14px;background:rgba(139,92,246,.12);border:1px solid rgba(139,92,246,.25)}
.type-pill,.status-badge{display:inline-flex;padding:7px 11px;border-radius:999px;font-size:12px;font-weight:800}
.type-pill.normal{background:rgba(0,200,255,.14);color:#77e7ff}
.type-pill.premium{background:rgba(139,92,246,.18);color:#c4b5fd}
.status-badge.active,.status-badge.confirmed{background:rgba(34,197,94,.13);color:#86efac}
.status-badge.winner,.status-badge.pending_review{background:rgba(245,158,11,.16);color:#fcd34d}
.status-badge.disqualified,.status-badge.replaced{background:rgba(255,77,125,.16);color:#fda4af}
.status-badge.draft,.status-badge.paused,.status-badge.completed{background:rgba(255,255,255,.08);color:#d7def5}
footer{text-align:center;color:var(--muted);padding:24px}

.login-view{min-height:100vh;display:grid;place-items:center;padding:20px}
.login-card{width:min(430px,100%);padding:30px;border-radius:26px}
.login-card h1{text-align:center}
.login-card label{display:block;margin:14px 0 7px}
.login-card .primary-btn{width:100%;margin-top:18px}
.form-message{text-align:center;min-height:22px}
.error-text{color:#fda4af}
.success-text{color:#86efac}
.admin-app{min-height:100vh;display:grid;grid-template-columns:270px 1fr}
.sidebar{
  position:fixed;right:0;top:0;bottom:0;width:270px;
  padding:22px;display:flex;flex-direction:column;z-index:20;
  border-radius:0;border-top:0;border-bottom:0;
}
.sidebar nav{display:grid;gap:8px;margin-top:42px}
.nav-item{
  text-align:right;padding:14px;border-radius:14px;border:0;
  background:transparent;color:var(--muted);font-weight:700
}
.nav-item.active,.nav-item:hover{background:rgba(0,200,255,.1);color:white}
.sidebar .danger-btn{margin-top:auto}
.admin-main{grid-column:2;padding:28px;width:100%;min-width:0}
.admin-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}
.admin-topbar h1{margin:8px 0 0}
.admin-section{position:relative;z-index:2}
.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.dash-card{padding:22px;border-radius:20px}
.dash-card span{color:var(--muted)}
.dash-card strong{display:block;font-size:34px;margin-top:8px}
.dash-card.premium{border-color:rgba(139,92,246,.35)}
.admin-panel{margin-top:16px;padding:24px;border-radius:22px}
.filters{padding:14px;border-radius:20px;display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px;margin:18px 0}
.cards-list{display:grid;gap:14px}
.manage-card,.log-card{padding:22px;border-radius:22px}
.card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.warning{color:#fcd34d}
.empty-state{padding:36px;border-radius:20px;text-align:center;color:var(--muted)}
.log-card p{color:var(--muted)}
.log-card small{color:#7f8bad}
.modal{
  position:fixed;inset:0;background:rgba(2,4,12,.75);z-index:100;
  display:grid;place-items:center;padding:18px
}
.modal-card{width:min(760px,100%);max-height:90vh;overflow:auto;padding:28px;border-radius:26px;position:relative}
.close-modal{position:absolute;left:18px;top:14px;border:0;background:transparent;color:white;font-size:32px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.form-grid label{font-weight:700}
.form-grid label input,.form-grid label select,.form-grid label textarea{margin-top:7px}
.full{grid-column:1/-1}
.celebration{position:fixed;inset:0;background:rgba(2,4,12,.82);z-index:200;display:grid;place-items:center;padding:20px}
.winner-box{width:min(480px,100%);padding:42px;border-radius:30px;text-align:center}
.winner-crown{font-size:64px}
.winner-box h2{font-size:36px;margin:8px 0}
.winner-box>strong{display:block;color:#c4b5fd;font-size:22px;margin-bottom:24px}
.mobile-only{display:none}

@media(max-width:900px){
  .hero{grid-template-columns:1fr;padding-top:40px}
  .hero-panel{min-height:320px}
  .info-grid{grid-template-columns:1fr}
  .dashboard-grid{grid-template-columns:repeat(2,1fr)}
  .admin-app{display:block}
  .sidebar{transform:translateX(110%);transition:.25s}
  .sidebar-open .sidebar{transform:translateX(0)}
  .admin-main{padding:18px}
  .mobile-only{display:inline-flex}
  .filters{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .site-header{margin-top:10px}
  .ghost-btn{padding:10px 13px}
  .hero h1{font-size:42px}
  .lookup-row{flex-direction:column}
  .hero-panel{padding:24px}
  .hero-panel>strong{font-size:44px}
  .countdown{grid-template-columns:repeat(2,1fr)}
  .stats-grid{grid-template-columns:1fr}
  .result-grid,.mini-stats{grid-template-columns:1fr 1fr}
  .dashboard-grid{grid-template-columns:1fr 1fr}
  .filters{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
  .full{grid-column:auto}
  .admin-topbar h1{font-size:28px}
  .section-head{align-items:flex-start}
  .section-head .primary-btn{flex-shrink:0}
}
