@font-face{font-family:Vazirmatn;src:url(../fonts/Vazirmatn-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Vazirmatn;src:url(../fonts/Vazirmatn-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Vazirmatn;src:url(../fonts/Vazirmatn-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}:root,:root[data-theme=dark]{--bg:#0f172a;--bg-soft:#111c34;--panel:#1b2742;--panel-2:#22304f;--text:#e6edf6;--muted:#9aa7be;--accent:#38bdf8;--accent-2:#818cf8;--border:#2a3a5c;--success:#22c55e;--on-accent:#0b1220;--shadow:0 10px 30px #00000059;--bg-glow-1:#1a2a55;--bg-glow-2:#14305a;--header-grad:linear-gradient(180deg,#ffffff08,#ffffff03);--code-bg:#0b1428;--radius:14px;--good-bg:#22c55e2e;--good-fg:#4ade80;--good-border:#22c55e73;--warn-bg:#eab3082e;--warn-fg:#facc15;--warn-border:#eab30873;--bad-bg:#ef44442e;--bad-fg:#f87171;--bad-border:#ef444473;--neutral-bg:#38bdf829;--neutral-fg:#7dd3fc;--neutral-border:#38bdf866}:root[data-theme=light]{--bg:#f4f7fb;--bg-soft:#fff;--panel:#fff;--panel-2:#f1f5fb;--text:#0f172a;--muted:#5a6679;--accent:#0284c7;--accent-2:#4f46e5;--border:#d8e0ec;--success:#16a34a;--on-accent:#fff;--shadow:0 10px 30px #0f172a14;--bg-glow-1:#d6e4ff;--bg-glow-2:#e4ecff;--header-grad:linear-gradient(180deg,#0f172a05,#0f172a00);--code-bg:#f1f5fb;--good-bg:#16a34a1f;--good-fg:#15803d;--good-border:#16a34a66;--warn-bg:#ca8a0424;--warn-fg:#a16207;--warn-border:#ca8a0473;--bad-bg:#dc26261f;--bad-fg:#b91c1c;--bad-border:#dc262666;--neutral-bg:#0284c71f;--neutral-fg:#0369a1;--neutral-border:#0284c766}@media (prefers-color-scheme:light){:root:not([data-theme]){--bg:#f4f7fb;--bg-soft:#fff;--panel:#fff;--panel-2:#f1f5fb;--text:#0f172a;--muted:#5a6679;--accent:#0284c7;--accent-2:#4f46e5;--border:#d8e0ec;--success:#16a34a;--on-accent:#fff;--shadow:0 10px 30px #0f172a14;--bg-glow-1:#d6e4ff;--bg-glow-2:#e4ecff;--header-grad:linear-gradient(180deg,#0f172a05,#0f172a00);--code-bg:#f1f5fb;--good-bg:#16a34a1f;--good-fg:#15803d;--good-border:#16a34a66;--warn-bg:#ca8a0424;--warn-fg:#a16207;--warn-border:#ca8a0473;--bad-bg:#dc26261f;--bad-fg:#b91c1c;--bad-border:#dc262666;--neutral-bg:#0284c71f;--neutral-fg:#0369a1;--neutral-border:#0284c766}}*{box-sizing:border-box}html,body{background:radial-gradient(1200px 700px at 10% -10%,var(--bg-glow-1)0%,transparent 60%),radial-gradient(900px 600px at 110% 10%,var(--bg-glow-2)0%,transparent 55%),var(--bg);color:var(--text);direction:rtl;min-height:100vh;margin:0;padding:0;font-family:Vazirmatn,Tahoma,Arial,sans-serif;line-height:1.7}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-2)}.container{max-width:1100px;margin:0 auto;padding:24px 18px 80px}.site-header{background:var(--panel);background-image:var(--header-grad);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);backdrop-filter:blur(6px);justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;display:flex}.brand{align-items:center;gap:16px;min-width:0;display:flex}.brand-logo{background:var(--bg-soft);border:1px dashed var(--border);border-radius:16px;flex:none;place-items:center;width:84px;height:84px;display:grid;overflow:hidden;box-shadow:0 6px 18px #00000026}.brand-logo img{object-fit:contain;width:100%;height:100%;padding:4px}.brand-text{min-width:0}.brand-text .title{font-size:22px;font-weight:700}.brand-text .subtitle{color:var(--muted);margin-top:2px;font-size:13px}.header-actions{align-items:center;gap:10px;display:flex}.theme-toggle{border:1px solid var(--border);background:var(--bg-soft);width:40px;height:40px;color:var(--text);cursor:pointer;border-radius:12px;place-items:center;padding:0;transition:border-color .15s,color .15s,background-color .15s;display:grid}.theme-toggle:hover{border-color:var(--accent);color:var(--accent)}.theme-toggle svg{width:20px;height:20px;display:block}.theme-toggle .icon-sun{display:none}:root[data-theme=dark] .theme-toggle .icon-sun{display:block}:root[data-theme=dark] .theme-toggle .icon-moon{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme]) .theme-toggle .icon-sun{display:block}:root:not([data-theme]) .theme-toggle .icon-moon{display:none}}.header-meta{color:var(--muted);flex-direction:column;align-items:flex-start;font-size:12px;line-height:1.5;display:flex}.header-meta strong{color:var(--text);font-weight:700}.search-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-top:20px;padding:18px 18px 14px}.search-row{grid-template-columns:1fr 200px auto auto;align-items:center;gap:10px;display:grid}.search-input,.filter-select{background:var(--bg-soft);border:1px solid var(--border);color:var(--text);border-radius:12px;outline:none;width:100%;padding:12px 14px;font-family:inherit;font-size:15px;transition:border-color .15s,box-shadow .15s}.search-input::placeholder{color:var(--muted)}.search-input:focus,.filter-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent)25%,transparent)}.filter-select:disabled{opacity:.55;cursor:not-allowed}.btn{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:var(--on-accent);cursor:pointer;white-space:nowrap;border:0;border-radius:12px;padding:12px 18px;font-family:inherit;font-size:14.5px;font-weight:700;transition:filter .15s,transform 50ms}.btn:hover{filter:brightness(1.08)}.btn:active{transform:translateY(1px)}.btn.secondary{background:var(--bg-soft);color:var(--text);border:1px solid var(--border)}.search-meta{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:10px;font-size:12.5px;display:flex}.chip{border:1px solid var(--border);background:var(--bg-soft);border-radius:999px;padding:4px 10px;display:inline-block}.results{grid-template-columns:1fr;gap:18px;margin-top:16px;display:grid}@media (width>=980px){.results{grid-template-columns:repeat(2,minmax(0,1fr))}.card .field-row{grid-template-columns:1fr;gap:4px;padding:8px 0}.card .field-row .v{padding-inline-start:22px}}.card,.card .review,.card .note,.card .field-row,.card .field-row .v,.card .field-row .k,.card .courses,.card .review-courses,.card .review-head,.card .card-head h3{overflow-wrap:anywhere;word-break:break-word;min-width:0}.course-chip{white-space:normal;overflow-wrap:anywhere;word-break:break-word;text-align:center;max-width:100%}.empty,.error{background:var(--panel);border:1px dashed var(--border);border-radius:var(--radius);text-align:center;color:var(--muted);grid-column:1/-1;padding:28px}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:10px;min-width:0;padding:18px;display:flex}.card-head{align-items:center;gap:12px;display:flex}.avatar{background:linear-gradient(135deg,var(--accent),var(--accent-2));width:48px;height:48px;color:var(--on-accent);border-radius:50%;flex:none;place-items:center;font-size:18px;font-weight:800;display:grid;box-shadow:0 6px 14px #0000002e}.card-head h3{margin:0;font-size:17px;font-weight:700;line-height:1.3}.card-head .dept{color:var(--muted);margin-top:2px;font-size:12px;display:inline-block}.courses{flex-wrap:wrap;gap:6px;margin-top:2px;display:flex}.course-chip{background:var(--neutral-bg);color:var(--neutral-fg);border:1px solid var(--neutral-border);border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;line-height:1.4;display:inline-flex}.divider{background:var(--border);height:1px;margin:4px 0}.fields{grid-template-columns:1fr;gap:6px;display:grid}.field-row{border-bottom:1px dashed color-mix(in srgb,var(--border)70%,transparent);grid-template-columns:minmax(120px,38%) 1fr;align-items:start;gap:10px;padding:6px 0;display:grid}.field-row:last-child{border-bottom:0}.field-row .k{color:var(--muted);align-items:center;gap:6px;font-size:13px;font-weight:500;display:inline-flex}.field-row .k .icon{opacity:.85;font-size:14px}.field-row .v{color:var(--text);word-break:break-word;font-size:14px;font-weight:500}.pill{white-space:normal;overflow-wrap:anywhere;word-break:break-word;text-align:center;border:1px solid #0000;border-radius:18px;align-items:center;max-width:100%;padding:4px 12px;font-size:12.5px;font-weight:700;line-height:1.5;display:inline-flex}.pill.good{background:var(--good-bg);color:var(--good-fg);border-color:var(--good-border)}.pill.warn{background:var(--warn-bg);color:var(--warn-fg);border-color:var(--warn-border)}.pill.bad{background:var(--bad-bg);color:var(--bad-fg);border-color:var(--bad-border)}.pill.neutral{background:var(--neutral-bg);color:var(--neutral-fg);border-color:var(--neutral-border)}.note{background:var(--panel-2);border:1px solid var(--border);color:var(--text);white-space:pre-wrap;word-break:break-word;border-radius:10px;margin-top:4px;padding:10px 12px;font-size:13.5px;line-height:1.8}.note-title{color:var(--muted);margin-bottom:4px;font-size:12px;display:block}.review{border:1px solid var(--border);background:color-mix(in srgb,var(--panel-2)60%,transparent);border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex}.review+.review{margin-top:18px;position:relative}.review+.review:before{content:"";background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent)55%,transparent),transparent);border-radius:2px;height:2px;position:absolute;top:-10px;left:8%;right:8%}.review-head{background:color-mix(in srgb,var(--accent)10%,transparent);border:1px solid color-mix(in srgb,var(--accent)30%,transparent);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:-4px -4px 4px;padding:8px 12px;display:flex}.review-num{background:var(--accent);color:var(--on-accent);letter-spacing:.2px;border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:13px;font-weight:800;display:inline-flex}.review-courses{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.review-courses .course-chip{background:color-mix(in srgb,var(--panel)80%,transparent)}mark{background:color-mix(in srgb,var(--accent)35%,transparent);color:var(--text);border-radius:4px;padding:0 2px}.site-footer{text-align:center;color:var(--muted);border-top:1px dashed var(--border);margin-top:28px;padding-top:18px;font-size:13px}.requested-panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-top:18px;padding:16px 18px}.requested-panel header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.requested-panel h2{margin:0;font-size:16px;font-weight:700}.requested-panel .lead{color:var(--muted);margin:0;font-size:13px}.requested-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;display:grid}.requested-item{background:var(--bg-soft);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:4px;padding:10px 12px;font-size:13px;display:flex}.requested-item .name{color:var(--text);font-size:14px;font-weight:700}.requested-item .meta{color:var(--muted);font-size:12px}.requested-empty{text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:10px;padding:14px}.request-form{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-top:18px;padding:18px}.request-form h2{margin:0 0 4px;font-size:17px;font-weight:700}.request-form .lead{color:var(--muted);margin:0 0 12px;font-size:13.5px}.request-grid{grid-template-columns:1fr 1fr 1.4fr auto;align-items:end;gap:10px;display:grid}.request-grid .field{flex-direction:column;gap:4px;display:flex}.request-grid label{color:var(--muted);font-size:12.5px}.request-grid .input{background:var(--bg-soft);border:1px solid var(--border);color:var(--text);border-radius:12px;outline:none;width:100%;padding:10px 12px;font-family:inherit;font-size:14.5px;transition:border-color .15s,box-shadow .15s}.request-grid .input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent)25%,transparent)}.request-status{border-radius:10px;margin-top:10px;padding:10px 12px;font-size:13.5px;font-weight:600;display:none}.request-status.show{display:block}.request-status.success{background:var(--good-bg);color:var(--good-fg);border:1px solid var(--good-border)}.request-status.error{background:var(--bad-bg);color:var(--bad-fg);border:1px solid var(--bad-border)}.request-status.info{background:var(--neutral-bg);color:var(--neutral-fg);border:1px solid var(--neutral-border)}.contact-panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-top:18px;padding:16px 18px}.contact-panel h2{margin:0 0 6px;font-size:16px;font-weight:700}.contact-panel p{color:var(--text);margin:0 0 10px;font-size:14px}.contact-ids{flex-wrap:wrap;gap:8px;display:flex}.contact-ids .id-chip{background:var(--bg-soft);border:1px solid var(--border);color:var(--accent);border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:700;text-decoration:none;transition:border-color .15s,color .15s,transform 50ms;display:inline-flex}.contact-ids .id-chip:hover{border-color:var(--accent);color:var(--accent-2)}.contact-ids .id-chip:active{transform:translateY(1px)}.contact-ids .id-chip svg{width:16px;height:16px}@media (width<=760px){.request-grid{grid-template-columns:1fr 1fr}.request-grid .field-course,.request-grid .request-submit{grid-column:1/-1}.search-row{grid-template-columns:1fr 1fr}.search-row .search-input{grid-column:1/-1}.search-row .btn{grid-column:span 1}.header-meta{display:none}.field-row{grid-template-columns:1fr;gap:2px}.field-row .k{font-size:12.5px}}@media (width<=480px){.brand-logo{border-radius:14px;width:64px;height:64px}.brand-text .title{font-size:18px}.brand-text .subtitle{font-size:12px}.card{padding:14px}}