:root{
  --bg:#f4f7fb;
  --bg-soft:#eef4ff;
  --card:#ffffff;
  --text:#0f172a;
  --muted:#64748b;
  --line:#dbe4f0;
  --primary:#2145d8;
  --primary-2:#285fca;
  --accent:#0f7f88;
  --success:#047857;
  --danger:#b91c1c;
  --warning:#b45309;
  --shadow:0 10px 28px rgba(15,23,42,.08);
}
:root[data-theme="dark"]{
  --bg:#0a1322;
  --bg-soft:#101b31;
  --card:#121d31;
  --text:#e7eef8;
  --muted:#94a3b8;
  --line:#26344d;
  --primary:#5ea1ff;
  --primary-2:#3f7ff1;
  --accent:#2dd4bf;
  --success:#34d399;
  --danger:#f87171;
  --warning:#fbbf24;
  --shadow:0 10px 30px rgba(0,0,0,.34);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:Arial,sans-serif;background:
radial-gradient(circle at top right, rgba(37,69,216,.09), transparent 28%),
radial-gradient(circle at top left, rgba(15,127,136,.08), transparent 24%),
var(--bg);color:var(--text)}
body{direction:rtl}
a{text-decoration:none;color:inherit}
.container{max-width:1240px;margin:0 auto;padding:24px}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:20px}
.brand-wrap{display:flex;align-items:center;gap:14px}
.logo{
  width:60px;height:60px;border-radius:18px;
  background:linear-gradient(135deg,var(--primary),var(--accent));
  display:grid;place-items:center;color:#fff;font-size:26px;font-weight:800;
  box-shadow:var(--shadow)
}
.brand{font-size:28px;font-weight:800}
.subtitle{color:var(--muted);font-size:14px;margin-top:4px}
.grid{display:grid;gap:18px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:24px;
  padding:22px;
  box-shadow:var(--shadow)
}
.card h2,.card h3,.card h4,.card p{margin-top:0}
.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.row-between{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.stack{display:flex;flex-direction:column;gap:12px}
.inline-actions{display:flex;gap:8px;flex-wrap:wrap}
.stat .num{font-size:30px;font-weight:800;margin-top:8px}
.muted{color:var(--muted)}
.small{font-size:12px}
input,select,textarea,button{
  width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:16px;
  background:var(--card);color:var(--text);font-size:14px
}
textarea{min-height:120px;resize:vertical}
input::placeholder,textarea::placeholder{color:var(--muted)}
button{cursor:pointer;transition:.2s}
button:hover{transform:translateY(-1px)}
.btn-dark{background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;border:none}
.btn-light{background:transparent;color:var(--text);border:1px solid var(--line)}
.btn-danger{background:transparent;color:var(--danger);border:1px solid rgba(239,68,68,.35)}
.btn-success{background:linear-gradient(135deg,var(--success),var(--accent));color:#fff;border:none}
.btn-accent{background:linear-gradient(135deg,var(--accent),var(--primary));color:#fff;border:none}
.badge{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;font-size:12px;font-weight:700}
.badge.level{background:rgba(37,69,216,.12);color:var(--primary)}
.badge.pending{background:rgba(234,179,8,.15);color:var(--warning)}
.badge.done{background:rgba(16,185,129,.14);color:var(--success)}
.badge.manual{background:rgba(139,92,246,.15);color:#7c3aed}
.badge.blocked{background:rgba(239,68,68,.14);color:var(--danger)}
.list{display:flex;flex-direction:column;gap:16px}
.notice{padding:14px;background:rgba(37,69,216,.08);border:1px solid rgba(37,69,216,.18);border-radius:16px;color:var(--primary)}
.error{padding:14px;background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.22);border-radius:16px;color:var(--danger)}
.success{padding:14px;background:rgba(16,185,129,.12);border:1px solid rgba(16,185,129,.22);border-radius:16px;color:var(--success)}
.hidden{display:none!important}
.center{display:grid;place-items:center;min-height:100vh;padding:18px}
.auth-card{max-width:680px;width:100%}
.tabs{display:flex;gap:10px;flex-wrap:wrap}
.tab-btn{width:auto;padding:10px 16px}
.question-card{padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--bg-soft)}
.question-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.option-item,.pair-row,.option-builder-row{
  display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);
  border-radius:16px;background:var(--card);margin:10px 0
}
.option-pill{
  min-width:28px;height:28px;border-radius:50%;
  display:grid;place-items:center;
  background:rgba(37,69,216,.12);color:var(--primary);
  font-size:12px;font-weight:700
}
.option-builder-list{display:flex;flex-direction:column;gap:10px}
.question-preview{background:var(--bg-soft);border:1px solid var(--line);border-radius:18px;padding:16px}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse;min-width:860px}
th,td{padding:12px;border-bottom:1px solid var(--line);text-align:right;vertical-align:top}
thead{background:var(--bg-soft)}
hr.sep{border:none;border-top:1px solid var(--line);margin:14px 0}
.timer{font-size:20px;font-weight:800;text-align:center}
.center-empty{display:grid;place-items:center;min-height:110px;color:var(--muted)}
.attempt-ok{border-inline-start:5px solid var(--success)}
.attempt-warn{border-inline-start:5px solid var(--warning)}
.attempt-stop{border-inline-start:5px solid var(--danger)}
@media (max-width:960px){
  .grid-2,.grid-4{grid-template-columns:1fr}
}
