@font-face{font-family:Vazirmatn;src:url('/static/fonts/Vazirmatn-Regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Vazirmatn;src:url('/static/fonts/Vazirmatn-Medium.ttf') format('truetype');font-weight:500;font-display:swap}@font-face{font-family:Vazirmatn;src:url('/static/fonts/Vazirmatn-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--bg:#090e17;--surface:#101827;--surface2:#151f30;--surface3:#1b273a;--ink:#edf3f4;--muted:#91a1ad;--brand:#2ed3b7;--brand2:#1eb39c;--soft:rgba(46,211,183,.12);--line:#243247;--danger:#f06a77;--danger-soft:rgba(240,106,119,.12);--warn:#312b18;--shadow:0 18px 55px rgba(0,0,0,.25);color-scheme:dark}
[data-theme=light]{--bg:#f3f6f8;--surface:#fff;--surface2:#f8fafb;--surface3:#edf2f4;--ink:#12242a;--muted:#607279;--brand:#087f72;--brand2:#075e56;--soft:#dff5ef;--line:#dce6e8;--danger:#b8323c;--danger-soft:#fde7e9;--warn:#fff7d6;--shadow:0 15px 40px rgba(24,55,65,.08);color-scheme:light}
*{box-sizing:border-box}html{background:var(--bg);transition:background .2s}body{margin:0;background:radial-gradient(circle at 15% -10%,rgba(46,211,183,.08),transparent 30%),var(--bg);color:var(--ink);font-family:Vazirmatn,Tahoma,sans-serif;line-height:1.8;min-height:100vh;transition:background .2s,color .2s}.site-header{height:78px;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none}.brand-mark{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--brand),#168fa5);color:#071311;display:grid;place-items:center;font:bold 22px Arial;box-shadow:0 8px 25px rgba(46,211,183,.18)}.brand-copy{display:flex;flex-direction:column;line-height:1.3}.brand-copy strong{font-size:16px}.brand-copy small{color:var(--muted);font-size:11px}nav{display:flex;gap:8px;align-items:center}nav a,.nav-button{color:var(--muted);text-decoration:none;background:none;border:0;font:inherit;padding:8px 11px;cursor:pointer}nav a:hover,.nav-button:hover{color:var(--ink)}.theme-toggle{display:flex;align-items:center;gap:7px;background:var(--surface3);border:1px solid var(--line);color:var(--ink);border-radius:10px;padding:7px 12px;font:inherit;cursor:pointer}.theme-icon{font-size:17px}.theme-label{font-size:12px}main{max-width:1180px;margin:auto;padding:52px 24px;min-height:calc(100vh - 150px)}footer{text-align:center;color:var(--muted);font-size:12px;padding:24px}
h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.035em}h2{font-size:20px}.eyebrow{color:var(--brand);font-weight:700;font-size:12px;letter-spacing:.05em}.page-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}.page-head h1,.narrow h1{font-size:clamp(30px,4vw,42px);margin:3px 0}.page-head p{color:var(--muted);margin:0}.head-actions{display:flex;gap:9px}.primary,.secondary,.danger,button{display:inline-block;border:0;border-radius:10px;padding:10px 18px;font:inherit;font-weight:600;cursor:pointer;text-decoration:none}.primary{background:var(--brand);color:#061a17}.primary:hover{background:var(--brand2)}.secondary{background:var(--surface3);border:1px solid var(--line);color:var(--ink)}.danger{background:var(--danger);color:#fff}.warning{display:block;background:var(--warn);border:1px solid color-mix(in srgb,#e5bd40 35%,var(--line));padding:13px 16px;border-radius:10px;color:var(--ink)}.notice{background:var(--soft);border:1px solid color-mix(in srgb,var(--brand) 35%,var(--line));padding:14px 18px;border-radius:10px;margin:20px 0}
.hero{display:grid;grid-template-columns:1.4fr .8fr;gap:70px;align-items:center;min-height:62vh}.hero h1{font-size:clamp(44px,7vw,78px);line-height:1.18;margin:10px 0}.hero p{font-size:18px;color:var(--muted);max-width:580px}.hero-card,.card,.answer,.queue-panel{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:var(--shadow)}.pulse{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:var(--soft);color:var(--brand);font-size:28px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.card-top,.answer>div,.section-title,.section-title>div{display:flex;justify-content:space-between;align-items:center}.badge{background:var(--soft);color:var(--brand);border-radius:30px;padding:4px 11px;font-size:12px}.badge.fail{background:var(--danger-soft);color:var(--danger)}.badge.ok{background:var(--soft);color:var(--brand)}.empty{border:1px dashed var(--line);border-radius:14px;padding:34px;color:var(--muted);text-align:center;display:flex;flex-direction:column}.empty>span{color:var(--brand);font-size:24px}.empty b{color:var(--ink)}
.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 25px}.admin-stats article{background:linear-gradient(145deg,var(--surface),var(--surface2));border:1px solid var(--line);padding:19px 22px;border-radius:15px;display:grid}.admin-stats span,.admin-stats small{color:var(--muted);font-size:12px}.admin-stats strong{font-size:32px;line-height:1.4}.admin-stats em{font-size:13px;color:var(--muted);font-style:normal;margin-right:5px}.danger-stat strong{color:var(--danger)}.split{display:grid;grid-template-columns:1fr 1fr;gap:22px}.queue-panel{padding:20px;box-shadow:none}.section-title{margin-bottom:15px}.section-title h2{margin:0 9px}.status-dot{width:9px;height:9px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 5px var(--soft)}.status-dot.fail{background:var(--danger);box-shadow:0 0 0 5px var(--danger-soft)}.queue-item{display:grid;grid-template-columns:1fr auto 16px;align-items:center;gap:15px;background:var(--surface2);border:1px solid var(--line);padding:14px 16px;margin:8px 0;border-radius:12px;color:var(--ink);text-decoration:none;transition:.18s}.queue-item:hover{border-color:var(--brand);transform:translateY(-1px)}.queue-item>div{display:flex;flex-direction:column}.queue-item small,.queue-score small{color:var(--muted);font-size:11px}.queue-score strong{color:var(--brand);font-size:22px}.queue-score.fail strong{color:var(--danger)}.chevron{font-size:24px;color:var(--muted)}
.table-wrap{overflow:auto;background:var(--surface);border-radius:14px;border:1px solid var(--line)}table{border-collapse:collapse;width:100%}th,td{text-align:right;padding:14px 18px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-size:12px}.narrow{max-width:760px;margin:auto}.topic{background:var(--soft);border:1px solid var(--line);padding:14px 18px;border-radius:10px;margin:20px 0}.steps{list-style:none;padding:0;counter-reset:s}.steps li{counter-increment:s;background:var(--surface);border:1px solid var(--line);padding:18px 76px 18px 20px;margin:12px 0;border-radius:14px;position:relative}.steps li:before{content:counter(s);position:absolute;right:20px;width:38px;height:38px;background:var(--brand);color:#061a17;border-radius:50%;display:grid;place-items:center}.steps span{display:block;color:var(--muted)}.check-list,.question-box{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:24px}.check-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px}.check-row select,.filters input,.filters select{flex:1;padding:10px;background:var(--surface2);color:var(--ink);border:1px solid var(--line);border-radius:8px}.meter{height:9px;background:var(--surface3);border-radius:20px;overflow:hidden}.meter i{display:block;width:0;height:100%;background:var(--brand)}.exam-shell{max-width:850px;margin:auto}.exam-meta{display:flex;justify-content:space-between;color:var(--muted)}.question-box{text-align:center;min-height:480px;display:flex;flex-direction:column;align-items:center;justify-content:center}.question-box h1{font-size:30px;max-width:680px}.timer{font-size:56px;color:var(--brand);margin:15px}.recording{color:var(--danger);font-weight:700}.recording i{display:inline-block;width:10px;height:10px;background:var(--danger);border-radius:50%;animation:blink 1s infinite}.hidden{display:none!important}@keyframes blink{50%{opacity:.25}}.soundwave{height:50px;display:flex;gap:5px;align-items:center}.soundwave i{width:5px;height:12px;background:var(--brand);border-radius:4px;animation:wave 1s infinite}.soundwave i:nth-child(2){animation-delay:.15s}.soundwave i:nth-child(3){animation-delay:.3s}.soundwave i:nth-child(4){animation-delay:.45s}@keyframes wave{50%{height:44px}}
.answer{margin:12px 0}.answer summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;list-style:none}.answer summary::-webkit-details-marker{display:none}.answer summary:after{content:'+';color:var(--brand);font-size:22px;margin-right:12px}.answer[open] summary:after{content:'−'}.answer blockquote{background:var(--surface2);margin:10px 0;padding:12px 18px;border-right:4px solid var(--brand)}.answer audio{width:100%}.reference-answer,.reference-box{background:var(--soft);border:1px solid color-mix(in srgb,var(--brand) 40%,var(--line));border-radius:12px;padding:16px;line-height:1.9}.exam-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.admin-test .exam-layout{grid-template-columns:minmax(0,2fr) minmax(280px,1fr);align-items:stretch}.admin-test .question-box{min-width:0}.reference-box{text-align:right}.reference-box span,.admin-test-badge{color:var(--brand);font-weight:700}.reference-box p{margin:12px 0 0}.admin-test-badge{margin:10px 0;padding:10px 14px;background:var(--soft);border-radius:10px}.event-log>div{display:grid;grid-template-columns:220px 1fr 1fr;background:var(--surface);border-bottom:1px solid var(--line);padding:10px}.filters{display:flex;gap:10px;margin:20px 0}pre{white-space:pre-wrap;direction:ltr;text-align:left;max-height:400px;overflow:auto;color:var(--ink)}
@media(max-width:760px){.site-header{height:auto;padding:12px 16px;align-items:flex-start}.brand-copy small,.theme-label{display:none}nav{gap:2px;flex-wrap:wrap;justify-content:flex-end}nav a,.nav-button{font-size:12px;padding:8px}.hero{grid-template-columns:1fr;gap:20px}.hero-card{display:none}.page-head{align-items:start;gap:20px;flex-direction:column}.head-actions{width:100%}.head-actions a{flex:1;text-align:center}.admin-stats{grid-template-columns:1fr 1fr}.admin-stats article:first-child{grid-column:1/-1}.split,.admin-test .exam-layout{grid-template-columns:1fr}.question-box{padding:30px 18px}.question-box h1{font-size:23px}.check-row{align-items:stretch;flex-direction:column}.event-log>div{grid-template-columns:1fr}.filters{flex-direction:column}}
