:root{--navy:#0d2441;--navy-2:#173653;--brand:#096e78;--brand-hover:#075b63;--pale:#e9f5f4;--ink:#17314d;--muted:#738497;--border:#e0e8ef;--canvas:#f6f9fc;--white:#fff;--danger:#b84242;--shadow:0 12px 42px #19344f09}*{box-sizing:border-box}html,body{scroll-behavior:smooth;min-height:100%;margin:0;padding:0}body{background:var(--canvas);color:var(--ink);direction:rtl;font-family:Tahoma,Segoe UI,Arial,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{opacity:.48;cursor:not-allowed}h1,h2,h3,h4,p{margin-top:0}::selection{background:#a6ddda}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline-offset:2px;outline:3px solid #1b8d9240}.login-wrap{background:#fff;grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.login-art{color:#fff;background:radial-gradient(circle at 85% 12%,#235879 0%,#0000 32%),linear-gradient(145deg,#0e2847 10%,#0c344b 70%,#075b64 100%);flex-direction:column;padding:55px 9%;display:flex;position:relative;overflow:hidden}.login-art:after{content:"";pointer-events:none;border:1px solid #ffffff21;border-radius:100%;width:470px;height:470px;position:absolute;bottom:-160px;left:-130px;box-shadow:0 0 0 65px #ffffff06,0 0 0 135px #ffffff05}.login-brand,.brand{align-items:center;gap:12px;display:flex}.login-brand strong,.brand strong{letter-spacing:-.4px;font-size:22px;display:block}.login-brand span,.brand span{color:#abc8d3;margin-top:5px;font-size:11px;display:block}.brand-symbol{background:#ffffff21;border:1px solid #ffffff2b;border-radius:13px;place-items:center;width:45px;height:45px;display:grid}.art-content{z-index:1;max-width:520px;margin:auto 0;position:relative}.art-badge{color:#bedddc;background:#ffffff0a;border:1px solid #5c8c96;border-radius:100px;align-items:center;gap:10px;padding:10px 15px;font-size:12px;display:inline-flex}.pulse{background:#51c6ba;border-radius:100%;width:9px;height:9px;box-shadow:0 0 0 5px #51c6ba1f}.art-content h1{letter-spacing:-2px;margin:30px 0 15px;font-size:clamp(38px,3.55vw,61px);font-weight:800;line-height:1.55}.art-content h1 em{color:#74d2c5;font-style:normal}.art-content p{color:#c9d6e0;max-width:440px;font-size:15px;line-height:2}.art-features{color:#dbebed;gap:19px;margin-top:44px;display:grid}.art-features>div{align-items:center;gap:13px;display:flex}.art-features svg{color:#8bdacb}.art-footer{letter-spacing:2px;color:#83a8b7;font-size:10px}.login-panel{flex-direction:column;min-width:0;padding:50px 9%;display:flex}.login-form-wrap{width:100%;max-width:410px;margin:auto}.login-title{margin-bottom:37px}.login-title h2{letter-spacing:-.8px;margin:23px 0 10px;font-size:27px}.login-title p{color:var(--muted);font-size:13px;line-height:2}.login-icon{width:61px;height:61px;color:var(--brand);background:var(--pale);border-radius:18px;place-items:center;display:grid}.mobile-brand{display:none}.form-stack{gap:19px;display:grid}.field{color:#2b455f;gap:9px;font-size:12px;font-weight:700;display:grid}.field input,.field select,.field textarea,.enroll-line select{width:100%;min-width:0;color:var(--ink);background:#fff;border:1px solid #dbe4ec;border-radius:11px;outline:none;padding:13px 14px;font-size:13px;transition:box-shadow .2s,border-color .2s}.field input:focus,.field select:focus,.field textarea:focus,.enroll-line select:focus{border-color:#54a6aa;box-shadow:0 0 0 4px #1c8e8f17}.field input[dir=ltr]{text-align:left}.field input::placeholder,.field textarea::placeholder{color:#9daab5}.field textarea{resize:vertical}.btn{white-space:nowrap;border:0;border-radius:11px;justify-content:center;align-items:center;gap:9px;padding:12px 17px;font-size:13px;font-weight:700;transition:transform .17s,background .17s,color .17s;display:inline-flex}.btn:not(:disabled):hover{transform:translateY(-1px)}.btn.primary{background:var(--brand);color:#fff}.btn.primary:hover:not(:disabled){background:var(--brand-hover)}.btn.large{padding:16px}.btn.secondary{color:#31516a;background:#edf3f6}.btn.secondary:hover:not(:disabled){background:#dcebee}.btn.danger-outline{color:#b34141;background:#fff1f0;border:1px solid #f5d8d3}.btn.full{width:100%}.login-help{text-align:center;color:var(--muted);border-top:1px solid #edf1f5;margin-top:28px;padding-top:22px;font-size:11px;line-height:1.9}.login-bottom{text-align:center;color:#a1acb8;font-size:11px}.notice{border-radius:10px;margin:12px 0;padding:13px 16px;font-size:12px;line-height:1.9}.notice.error{color:#a93e3e;background:#fff0f0;border:1px solid #f7dada}.notice.info{color:#2e5975;background:#edf5fb}.notice.success{color:#216e50;background:#e7f6ed}.center-screen{min-height:100vh;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:15px;display:flex}.loader{border:3px solid #d5e6e8;border-top-color:var(--brand);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{min-height:100vh;display:flex}.sidebar{background:var(--navy);color:#fff;z-index:20;flex-direction:column;flex:0 0 268px;width:268px;height:100vh;min-height:100vh;padding:29px 18px;display:flex;position:sticky;top:0}.sidebar .brand{padding:6px 9px 38px}.sidebar .brand strong{font-size:19px}.sidebar-section{color:#85a1b6;margin:12px 17px 13px;font-size:11px}.sidebar-link{color:#d2e0ed;text-align:right;background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;width:100%;padding:13px 17px;font-size:13px;font-weight:600;display:flex}.sidebar-link.selected{color:#fff;background:#203d59;border:1px solid #ffffff17}.sidebar-bottom{margin-top:auto}.sidebar-user{border-top:1px solid #2b4561;align-items:center;gap:12px;padding:18px 7px;display:flex}.sidebar-user strong,.sidebar-user small{display:block}.sidebar-user strong{margin-bottom:7px;font-size:12px}.sidebar-user small{color:#93a9ba;text-align:right;direction:ltr;font-size:10px}.sidebar-link.logout:hover{background:#203d59}.page-wrap{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{background:#fff;border-bottom:1px solid #e7eef4;justify-content:space-between;align-items:center;height:74px;padding:0 37px;display:flex}.breadcrumb{color:#3f5a6c;font-size:12px;font-weight:700}.breadcrumb span{color:#b5c2ce;padding:0 8px}.topbar-user{color:#537083;align-items:center;gap:9px;font-size:12px;display:flex}.topbar-user svg{color:var(--brand)}.content{width:100%;max-width:1440px;margin:0 auto;padding:36px 37px 80px}.page-heading{justify-content:space-between;align-items:center;gap:15px;margin-bottom:27px;display:flex}.page-heading h1{letter-spacing:-.8px;margin:7px 0 10px;font-size:29px}.page-heading p{color:var(--muted);margin:0;font-size:13px;line-height:1.8}.eyebrow{color:var(--brand);font-size:11px;font-weight:700}.role-label{color:var(--brand);white-space:nowrap;background:#e8f3f4;border:1px solid #d5e8e9;border-radius:10px;padding:11px 16px;font-size:12px;font-weight:700}.mini-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:850px;margin-bottom:34px;display:grid}.mini-stats.three{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}.stat-card{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:17px;align-items:center;gap:16px;padding:23px;display:flex}.stat-card>svg{width:45px;height:45px;color:var(--brand);background:#ecf6f5;border-radius:12px;padding:11px}.stat-card strong{margin-bottom:6px;font-size:27px;font-weight:800;line-height:1;display:block}.stat-card span{color:var(--muted);font-size:12px}.section-header{justify-content:space-between;align-items:end;gap:14px;margin:0 0 20px;display:flex}.section-header h2{margin:0 0 7px;font-size:19px}.section-header p{color:var(--muted);margin:0;font-size:12px;line-height:1.9}.class-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:19px;display:grid}.class-card{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:18px;flex-direction:column;min-height:285px;padding:22px;display:flex}.card-top{justify-content:space-between;align-items:center;display:flex}.class-icon{width:52px;height:52px;color:var(--brand);background:#e9f5f4;border-radius:14px;place-items:center;display:grid}.status-pill{white-space:nowrap;color:#697d8a;background:#eef2f5;border-radius:999px;align-items:center;gap:7px;padding:8px 11px;font-size:10px;font-weight:700;display:inline-flex}.status-pill.live{color:#198256;background:#e2f6ed}.status-pill.starting{color:#a97515;background:#fff3dc}.status-dot{background:currentColor;border-radius:50%;width:7px;height:7px}.class-card h3{margin:23px 0 9px;font-size:19px}.class-card p{color:var(--muted);min-height:22px;font-size:12px;line-height:1.8}.card-divider{background:#ebeff2;height:1px;margin:13px 0}.card-meta{color:#6b7f91;align-items:center;gap:8px;margin-bottom:21px;font-size:12px;display:flex}.class-actions{gap:9px;margin-top:auto;display:grid}.class-card>.btn{margin-top:auto}.empty-state{text-align:center;color:#718497;background:#fff;border:1px dashed #cad8e2;border-radius:17px;flex-direction:column;justify-content:center;align-items:center;gap:13px;min-height:260px;padding:25px;display:flex}.empty-state strong{color:#37556d;font-size:14px}.empty-state p{margin:0;font-size:12px}.empty-state.compact{min-height:130px;font-size:12px}.tabs{border-bottom:1px solid var(--border);gap:11px;margin-bottom:22px;display:flex}.tab{color:#8193a2;background:0 0;border:0;border-bottom:3px solid #0000;align-items:center;gap:9px;padding:13px 19px;font-size:13px;font-weight:700;display:flex}.tab.active{color:var(--brand);border-bottom-color:var(--brand)}.admin-columns{grid-template-columns:minmax(295px,.8fr) minmax(0,1.5fr);align-items:start;gap:22px;display:grid}.panel{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:17px;min-width:0;padding:24px}.panel-heading{align-items:center;gap:13px;margin-bottom:25px;display:flex}.panel-heading h3{margin:0 0 7px;font-size:16px}.panel-heading p{color:var(--muted);margin:0;font-size:11px;line-height:1.8}.panel-icon{background:var(--pale);width:42px;height:42px;color:var(--brand);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.panel .form-stack{gap:15px}.muted{color:var(--muted);margin:6px 0;font-size:11px;line-height:2}.table-wrap{overflow-x:auto}table{border-collapse:collapse;white-space:nowrap;text-align:right;width:100%;font-size:12px}th,td{border-bottom:1px solid #eef1f4;padding:15px 12px}th{color:#71879a;background:#f8fafc;font-size:11px}td{color:#5f7486}td.table-strong{color:#2c465b;font-weight:700}.table-empty{text-align:center;color:var(--muted);padding:30px}.soft-pill{color:#4b6b80;background:#f0f4f7;border-radius:8px;padding:6px 10px}.admin-class-list{gap:15px;display:grid}.admin-class{border:1px solid var(--border);border-radius:14px;padding:18px}.admin-class-heading{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.admin-class h4{margin:0 0 6px;font-size:14px}.admin-class-heading p{color:var(--muted);margin:0;font-size:11px}.enroll-line{gap:8px;margin-top:18px;display:flex}.enroll-line select{flex:1}.enrolled-list{flex-wrap:wrap;gap:7px;margin-top:13px;display:flex}.enrolled-user{color:#47667d;background:#f3f7f9;border-radius:8px;align-items:center;gap:7px;padding:5px 8px 5px 4px;font-size:11px;display:inline-flex}.icon-button{color:inherit;background:0 0;border:0;border-radius:8px;place-items:center;padding:5px;display:grid}.icon-button.delete{color:var(--danger)}.icon-button.delete:hover{background:#fce9e7}.admin-tip{color:#49737b;background:#ecf6f7;border-radius:12px;align-items:start;gap:11px;margin-top:25px;padding:16px;font-size:12px;line-height:1.9;display:flex}.admin-tip svg{flex-shrink:0}.mobile-only,.scrim{display:none}@media (max-width:1050px){.admin-columns{grid-template-columns:1fr}.login-art{padding:45px 6%}.login-panel{padding:35px 8%}}@media (max-width:780px){.sidebar{transition:transform .25s;position:fixed;top:0;right:0;transform:translate(102%);box-shadow:0 10px 50px #001b3455}.sidebar.sidebar-open{transform:translate(0)}.scrim{z-index:15;background:#001a2c99;display:block;position:fixed;inset:0}.mobile-only{display:grid}.topbar{justify-content:flex-start;gap:15px;height:66px;padding:0 18px}.topbar-user{margin-right:auto;font-size:11px}.content{padding:25px 18px 60px}.login-wrap{display:block}.login-art{display:none}.login-panel{min-height:100vh;padding:36px 24px 23px}.login-form-wrap{margin:auto}.mobile-brand{color:var(--brand);align-items:center;gap:9px;margin-bottom:55px;font-size:16px;font-weight:800;display:flex}.login-title h2,.page-heading h1{font-size:24px}.page-heading p{font-size:12px}.role-label{display:none}.mini-stats.three{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card{padding:17px}.stat-card strong{font-size:23px}}@media (max-width:460px){.topbar-user{white-space:nowrap;text-overflow:ellipsis;max-width:125px;overflow:hidden}.section-header{flex-direction:column;align-items:start}.mini-stats{gap:10px}.stat-card{gap:10px;padding:13px}.stat-card>svg{width:37px;height:37px;padding:9px}.stat-card span{font-size:10px}.tabs{gap:0}.tab{padding:13px 10px;font-size:11px}.panel{padding:17px}.class-grid{grid-template-columns:1fr}.enroll-line{flex-direction:column}}@media (max-width:780px){.sidebar{flex-basis:auto;width:min(88vw,310px);max-width:100vw}.page-wrap,.content{min-width:0}.content{overflow-wrap:anywhere}.sidebar-user{min-width:0}.sidebar-user>div{text-overflow:ellipsis;min-width:0;overflow:hidden}.sidebar-user strong,.sidebar-user small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.page-heading{min-width:0}}@media (max-width:400px){.content{padding:20px 12px 50px}.topbar{gap:9px;padding:0 12px}.breadcrumb{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.topbar-user{min-width:0;max-width:110px}.sd-topbar-profile span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.btn{white-space:normal;max-width:100%;line-height:1.6}}@media (min-width:781px){.login-wrap{direction:ltr;grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.login-art{background-image:url(/images/shahab-login-banner.webp);background-position:50%;background-repeat:no-repeat;background-size:cover;min-width:0;padding:0;display:block}.login-art:after{content:none}.login-panel{direction:rtl}}@media (max-width:780px){.login-wrap{display:block}.login-art{display:none}.login-panel{direction:rtl;min-height:100vh}}@media (min-width:781px){.login-art{background-color:#073b61!important;background-position:50%!important;background-repeat:no-repeat!important;background-size:contain!important}.login-wrap{direction:ltr;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.login-art{direction:rtl;background-color:#083a5d;min-height:100vh;padding:0;background-image:url(/images/shahab-login-banner.webp)!important;background-position:50%!important;background-repeat:no-repeat!important;background-size:contain!important}.login-art:after{content:none!important}.login-panel{direction:rtl}}@media (max-width:780px){.login-wrap{display:block}.login-art{display:none}.login-panel{direction:rtl;min-height:100vh}}.login-wrap{width:100%;direction:rtl!important;background:linear-gradient(140deg,#f3f7fb 0%,#fff 54%,#eef5f8 100%)!important;flex-direction:column!important;grid-template-columns:none!important;justify-content:center!important;align-items:center!important;min-height:100svh!important;padding:clamp(18px,4vh,40px) 16px!important;display:flex!important}.login-wrap .login-art{display:none!important}.login-wrap .login-panel{direction:rtl!important;flex-direction:column!important;flex:0 auto!important;width:min(100%,500px)!important;min-height:auto!important;margin:0 auto!important;padding:0!important;display:flex!important}.login-wrap .login-form-wrap{background:#fff!important;border:1px solid #e2eaf1!important;border-radius:22px!important;width:100%!important;max-width:none!important;margin:0!important;padding:clamp(22px,4vw,38px)!important;box-shadow:0 18px 58px #122e4914!important}.login-wrap .sd-login-logo{object-fit:contain;width:min(100%,270px);height:auto;margin:0 auto 8px;display:block}.login-wrap .login-title{text-align:center!important;margin-bottom:25px!important}.login-wrap .login-title h2{margin:10px 0 9px!important;font-size:clamp(22px,4vw,27px)!important}.login-wrap .login-title p{max-width:340px;margin:0 auto!important}.login-wrap .mobile-brand,.login-wrap .login-icon{display:none!important}.login-wrap .login-bottom{text-align:center!important;margin-top:18px!important}@media (max-width:480px){.login-wrap{padding:16px 12px!important}.login-wrap .login-form-wrap{border-radius:18px!important;padding:22px 20px!important}.login-wrap .sd-login-logo{width:min(100%,225px)}.login-wrap .login-title{margin-bottom:21px!important}}
@font-face{font-family:IRANSans;src:url(/fonts/IRANSans_UltraLight.ttf)format("truetype");font-style:normal;font-weight:200;font-display:swap}@font-face{font-family:IRANSans;src:url(/fonts/IRANSans_Light.ttf)format("truetype");font-style:normal;font-weight:300;font-display:swap}@font-face{font-family:IRANSans;src:url(/fonts/IRANSans.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:IRANSans;src:url(/fonts/IRANSans_Medium.ttf)format("truetype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:IRANSans;src:url(/fonts/IRANSans_Bold.ttf)format("truetype");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:IRANSans;src:url(/fonts/IRANSans_Black.ttf)format("truetype");font-style:normal;font-weight:900;font-display:swap}:root{--shahab-font:"IRANSans", Tahoma, "Segoe UI", Arial, sans-serif}html,body,button,input,select,textarea,optgroup,option,table,th,td{font-family:var(--shahab-font)}
