:root{--font:"IRNazaninWeb", "BNazaninWeb", "IRNazanin", "IR Nazanin", "B Nazanin", "Noto Naskh Arabic", Tahoma, serif;--bg:#f5f7f6;--surface:#fff;--surface-soft:#f1f6f3;--text:#20352f;--muted:#62766b;--line:#dfe8e3;--green:#087967;--green-hover:#066453;--green-soft:#eaf6f0;--button-text:#fff;--danger:#a74738;--danger-bg:#fff0ee;--danger-line:#eccbc3;--warning:#856124;--warning-bg:#fff3d9;--private:#536371;--private-bg:#ecedf2;--story-bg:#0e594b;--story-text:#d0e8dc;--backdrop:#10231c80;--shadow:#1c413914;--sidebar-width:270px;font-family:var(--font);color:var(--text);background:var(--bg);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-font-smoothing:antialiased;font-size:21px;line-height:1.8}:root[data-theme=dark]{--bg:#101b21;--surface:#17262e;--surface-soft:#1e333b;--text:#e1eee8;--muted:#afc2b9;--line:#344c52;--green:#73d1b4;--green-hover:#93e0c9;--green-soft:#22473f;--button-text:#102d25;--danger:#ffb4a9;--danger-bg:#41292c;--danger-line:#78454a;--warning:#f1d397;--warning-bg:#483d28;--private:#c7d3df;--private-bg:#2f3d4b;--story-bg:#112f34;--story-text:#cee4da;--backdrop:#041015bb;--shadow:#00000035;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);margin:0;overflow-x:hidden}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid var(--green);outline-offset:3px}input{background:var(--surface);border:1px solid var(--line);width:100%;color:var(--text);border-radius:10px;outline:none;padding:12px 15px}input::placeholder{color:var(--muted);opacity:1}input:focus{border-color:var(--green);box-shadow:0 0 0 3px var(--green-soft)}h1,h2,h3,p{margin-top:0}h1{font-size:34px;line-height:1.65}h2{font-size:27px;line-height:1.7}h3{font-size:24px;line-height:1.7}p{line-height:1.95}.muted{color:var(--muted);font-size:19px}.eyebrow{color:var(--green);margin-bottom:8px;font-size:18px;font-weight:700;display:block}.button{white-space:nowrap;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:8px 16px;font-size:19px;font-weight:700;transition:background .15s;display:inline-flex}.button svg{flex-shrink:0}.primary{background:var(--green);color:var(--button-text)}.primary:hover{background:var(--green-hover)}.secondary{border-color:var(--line);background:var(--surface);color:var(--text)}.secondary:hover{background:var(--surface-soft)}.icon-button{min-width:42px;min-height:42px;color:var(--text);background:0 0;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;padding:9px;display:inline-flex}.icon-button:hover{background:var(--surface-soft)}.brand{flex-direction:column;flex-shrink:0;align-self:center;align-items:center;gap:8px;max-width:100%;display:flex}.brand-logo-frame{background:#fff;border-radius:14px;width:190px;max-width:100%;display:block;overflow:hidden}.brand-logo{object-fit:contain;width:100%;height:auto;display:block}.brand small{color:var(--muted);margin-top:3px;font-size:17px;display:block}.sidebar{width:var(--sidebar-width);background:var(--surface);border-left:1px solid var(--line);z-index:40;flex-direction:column;padding:12px 22px 20px;transition:transform .2s,visibility .2s;display:flex;position:fixed;inset:0 0 0 auto;overflow-y:auto}.sidebar-controls{justify-content:flex-start;margin-bottom:4px;display:flex}.sidebar-hidden .sidebar{visibility:hidden;transform:translate(100%)}.nav-caption{color:var(--muted);margin:22px 12px 12px;font-size:16px}.nav-item{color:var(--text);border-radius:9px;align-items:center;gap:13px;margin-bottom:7px;padding:11px 13px;font-size:22px;display:flex}.nav-item:hover{background:var(--surface-soft)}.nav-item.active{color:var(--green);background:var(--green-soft);font-weight:700}.sidebar-bottom{border-top:1px solid var(--line);margin-top:auto;padding-top:18px}.user-summary{align-items:center;gap:10px;display:flex}.user-summary strong{overflow-wrap:anywhere;font-size:19px;display:block}.user-summary small{color:var(--muted);margin-top:5px;font-size:16px;display:block}.avatar{background:var(--green-soft);width:42px;height:42px;color:var(--green);border-radius:12px;flex-shrink:0;place-items:center;font-size:25px;display:grid}.avatar.small{border-radius:9px;width:34px;height:34px;font-size:21px}.avatar.large{border-radius:19px;width:70px;height:70px;font-size:37px}.logout-button{color:var(--muted);background:0 0;border:0;align-items:center;gap:10px;margin-top:10px;padding:10px 0;font-size:19px;display:flex}.logout-button:hover{color:var(--danger)}.version{color:var(--muted);margin-top:10px;font-size:15px;display:block}.main-shell{margin-right:var(--sidebar-width);flex-direction:column;min-height:100dvh;transition:margin-right .2s;display:flex}.sidebar-hidden .main-shell{margin-right:0}.topbar{background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;min-height:82px;padding:16px 34px;display:flex}.topbar-start,.header-user,.topbar-actions{align-items:center;gap:12px;min-width:0;font-size:20px;display:flex}.topbar-start{font-weight:700}.header-user strong{text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:18px;display:block;overflow:hidden}.main-content{flex:1;width:100%;max-width:1500px;margin:0 auto;padding:36px 38px 50px}.app-footer{background:var(--surface);border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:18px 34px;font-size:17px;display:flex}.app-footer strong{color:var(--green);font-family:Arial,sans-serif;font-size:15px}.footer-version{white-space:nowrap;font-size:16px}.page-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}.page-heading h1{margin-bottom:5px}.page-heading p{color:var(--muted);margin:0;font-size:20px}.count-chip{border:1px solid var(--line);color:var(--muted);background:var(--surface);white-space:nowrap;border-radius:24px;padding:6px 16px;font-size:19px}.list-toolbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:28px;display:flex}.list-toolbar input{max-width:340px;font-size:20px}.course-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;display:grid}.course-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;transition:box-shadow .2s,transform .2s;overflow:hidden}.course-card:hover{box-shadow:0 8px 25px var(--shadow);transform:translateY(-2px)}.course-thumbnail{background:var(--surface-soft);height:190px;display:block;position:relative}.course-thumbnail img{object-fit:cover;width:100%;height:100%}.thumbnail-placeholder{background:var(--green-soft);justify-content:center;align-items:center;height:100%;display:flex}.thumbnail-placeholder img{object-fit:contain;background:#fff;border-radius:12px;width:165px;height:165px}.badge{background:var(--surface);box-shadow:0 2px 8px var(--shadow);border-radius:6px;padding:4px 10px;font-size:16px;position:absolute;top:13px;right:13px}.badge.fully_public{color:var(--green);background:var(--green-soft)}.badge.demo{color:var(--warning);background:var(--warning-bg)}.badge.private{color:var(--private);background:var(--private-bg)}.badge.inline{margin-bottom:12px;display:inline-block;position:static}.course-card-body{padding:20px}.course-card h2{margin:0 0 10px;font-size:25px}.course-description{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:65px;font-size:19px;display:-webkit-box;overflow:hidden}.card-meta{color:var(--muted);align-items:center;gap:6px;font-size:18px;display:flex}.card-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px;margin-top:18px;padding-top:18px;display:flex}.card-actions .secondary{flex:1}.owned{color:var(--green);align-items:center;gap:6px;margin-top:13px;font-size:18px;display:flex}.panel,.empty{border:1px solid var(--line);background:var(--surface);border-radius:15px}.empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:330px;padding:45px 25px;display:flex}.empty-icon{color:var(--green);background:var(--green-soft);border-radius:20px;place-items:center;width:80px;height:80px;margin-bottom:22px;display:grid}.empty h2{margin-bottom:10px;font-size:27px}.empty p{color:var(--muted);max-width:480px;margin-bottom:0;font-size:20px}.profile-panel{align-items:center;gap:24px;max-width:660px;padding:30px;display:flex}.profile-panel label{color:var(--muted);font-size:18px}.profile-panel p{margin:8px 0 0;font-size:25px}.sessions-panel{max-width:920px;margin-top:24px;padding:26px}.sessions-heading h2{margin-bottom:8px}.sessions-heading p{margin-bottom:14px}.session-limit{color:var(--green);margin-bottom:18px;font-size:19px}.sessions-list{gap:16px;display:grid}.session-card{border:1px solid var(--line);border-radius:12px;padding:20px}.session-device{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.session-device-icon{background:var(--green-soft);width:46px;height:46px;color:var(--green);border-radius:12px;place-items:center;display:grid}.session-device h3{margin-bottom:3px;font-size:22px}.session-device p{color:var(--muted);overflow-wrap:anywhere;margin-bottom:0;font-size:18px}.current-session{color:var(--green);background:var(--green-soft);border-radius:6px;margin-inline-start:auto;padding:4px 9px;font-size:16px}.session-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0;display:grid}.session-details dt{color:var(--muted);margin-bottom:5px;font-size:17px}.session-details dd{overflow-wrap:anywhere;width:fit-content;max-width:100%;margin:0;font-size:19px}.session-remove{color:var(--danger);background:var(--danger-bg);border-color:var(--danger-line);white-space:normal;max-width:100%}.session-remove:hover{border-color:var(--danger)}.notice{background:var(--green-soft);color:var(--text);border:1px solid var(--line);border-radius:10px;align-items:flex-start;gap:8px;margin-bottom:22px;padding:14px 17px;font-size:19px;line-height:1.95;display:flex}.notice svg{flex-shrink:0;margin-top:7px}.notice.error{background:var(--danger-bg);border-color:var(--danger-line);color:var(--danger)}.loading{color:var(--muted);justify-content:center;align-items:center;gap:10px;padding:60px 20px;font-size:20px;display:flex}.spinner{border:2px solid var(--line);border-top-color:var(--green);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.back-link{color:var(--muted);align-items:center;gap:7px;margin-bottom:25px;font-size:19px;display:inline-flex}.course-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:30px;display:flex}.course-header h1{margin-bottom:10px}.course-header p{color:var(--muted);max-width:800px;font-size:20px}.learning-layout{grid-template-columns:285px minmax(0,1fr);align-items:start;gap:25px;display:grid}.curriculum{background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:20px 15px}.curriculum-heading{border-bottom:1px solid var(--line);align-items:center;gap:8px;margin-bottom:15px;padding-bottom:18px;font-size:21px;font-weight:700;display:flex}.curriculum-heading>span{color:var(--muted);white-space:nowrap;margin-right:auto;font-size:16px;font-weight:400}.curriculum-section{margin-bottom:20px}.curriculum-section h2{align-items:flex-start;gap:8px;margin-bottom:8px;padding:6px 4px;font-size:21px;display:flex}.curriculum-section h2>span{background:var(--surface-soft);min-width:24px;min-height:26px;color:var(--muted);border-radius:5px;place-items:center;font-size:16px;display:grid}.curriculum-section p{color:var(--muted);padding:0 5px;font-size:17px}.lesson-link{color:var(--text);border-radius:7px;align-items:center;gap:9px;padding:10px 9px;font-size:20px;line-height:1.8;display:flex}.lesson-link svg{flex-shrink:0}.lesson-link:hover{background:var(--surface-soft)}.lesson-link.selected{color:var(--green);background:var(--green-soft);font-weight:700}.lesson-link.locked{color:var(--muted)}.course-welcome{text-align:center;padding:55px 30px}.course-welcome>svg{color:var(--green);margin-bottom:20px}.course-welcome p{max-width:530px;color:var(--muted);margin:0 auto 22px;font-size:20px}.course-welcome .button{margin-bottom:10px}.lesson-heading{padding:10px 3px 8px}.lesson-heading h2{margin-bottom:9px;font-size:31px}.lesson-heading p{color:var(--muted);font-size:20px}.resource-panel{border:1px solid var(--line);background:var(--surface);overflow-wrap:anywhere;border-radius:13px;margin-bottom:22px;padding:22px}.resource-heading{align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.resource-heading h3{margin-bottom:3px}.resource-heading p{color:var(--muted);margin-bottom:0;font-size:19px}.resource-icon{background:var(--green-soft);color:var(--green);border-radius:9px;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.locked-resource{color:var(--muted);background:var(--surface-soft);align-items:center;gap:14px;display:flex}.locked-resource p{margin-bottom:0;font-size:19px}.locked-resource h3{margin-bottom:4px;font-size:22px}.video-frame{aspect-ratio:16/9;background:#0d171b;border-radius:9px;width:100%;position:relative;overflow:hidden}.video-frame iframe{border:0;width:100%;height:100%}.video-frame.is-fullscreen{z-index:1000;border-radius:0;width:100vw;height:100vh;position:fixed;inset:0}.pdf-frame{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;height:72vh;min-height:480px;display:block}.pdf-toolbar{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-bottom:14px;font-size:20px;display:flex}.pdf-help{color:var(--muted);margin:14px 0 0;font-size:17px}.rich-text{font-size:22px;line-height:2.1}.rich-text a{color:var(--green);text-decoration:underline}.rich-text pre{white-space:pre-wrap;background:var(--surface-soft);text-align:left;direction:ltr;padding:15px;font-size:17px}.rich-text blockquote{border-right:3px solid var(--green);color:var(--muted);margin-right:0;padding:10px 20px}.rich-text table{border-collapse:collapse;width:100%}.rich-text td,.rich-text th{border:1px solid var(--line);padding:8px}.login-page{background:var(--surface);grid-template-rows:1fr auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100dvh;display:grid}.login-story{background:var(--story-bg);color:#fff;text-align:center;flex-direction:column;align-items:center;padding:40px 48px;display:flex;position:relative;overflow:hidden}.brand-light .brand-logo-frame{width:160px}.brand-light small{color:var(--story-text)}.story-content{flex-direction:column;flex:1;justify-content:center;align-items:center;width:100%;margin:auto 0;padding:42px 0;display:flex}.story-content .eyebrow{color:var(--story-text)}.story-content h1{text-align:center;margin:20px 0;font-size:42px;line-height:1.8}.story-content p{color:var(--story-text);max-width:450px;margin-inline:auto;font-size:21px}.story-art{justify-content:center;align-items:center;width:220px;height:170px;margin:30px auto 0;display:flex;position:relative}.story-art>div{border:1px solid #ffffff35;border-radius:30px;width:125px;height:125px;position:absolute;transform:rotate(25deg)}.story-art>div:nth-child(2){width:150px;height:150px;transform:rotate(42deg)}.story-art>div:nth-child(3){width:175px;height:175px;transform:rotate(60deg)}.story-brand-icon{object-fit:contain;background:#fff;border-radius:14px;width:90px;height:90px;padding:7px;position:relative}.story-footer{color:var(--story-text);font-size:17px}.login-form-panel{justify-content:center;align-items:center;padding:90px 50px 50px;display:flex;position:relative}.login-tools{position:absolute;top:24px;left:28px}.login-form{width:100%;max-width:390px}.login-form h2{margin:10px 0;font-size:33px}.login-form>.muted{margin-bottom:30px}.login-form label{margin:20px 0 9px;font-size:21px;display:block}.login-submit{width:100%;min-height:50px;margin-top:26px}.login-help{color:var(--muted);text-align:center;margin-top:24px;font-size:18px}.login-footer{grid-column:1/-1}@media (width<=1100px){:root{--sidebar-width:250px}.main-content{padding:28px 24px}.topbar,.app-footer{padding-inline:24px}.sidebar{padding-inline:16px}.learning-layout{grid-template-columns:245px minmax(0,1fr);gap:18px}.login-story{padding:35px}.story-content h1{font-size:37px}}@media (width<=850px){:root{--sidebar-width:270px}.sidebar-backdrop{background:var(--backdrop);z-index:35;border:0;position:fixed;inset:0}.main-shell{margin-right:0}.topbar{min-height:72px}.learning-layout{grid-template-columns:245px minmax(0,1fr)}}@media (width<=650px){.main-content{padding:25px 17px 36px}.topbar{gap:10px;padding:12px 17px}.topbar-start,.topbar-actions{gap:6px}.topbar-start{font-size:20px}.topbar-actions .theme-toggle{min-width:42px;padding:8px}.topbar-actions .theme-toggle span{display:none}.header-user{gap:6px}.header-user strong{max-width:110px;font-size:16px}.app-footer{padding:17px;font-size:16px}h1{font-size:30px}.page-heading{align-items:flex-start}.page-heading p{font-size:19px}.list-toolbar{flex-direction:column;align-items:stretch}.list-toolbar input{max-width:none}.list-toolbar>span{display:none}.course-grid{grid-template-columns:1fr;gap:20px}.course-thumbnail{height:195px}.learning-layout{grid-template-columns:1fr}.course-header{flex-direction:column}.resource-panel{padding:16px}.curriculum{max-height:380px;overflow-y:auto}.pdf-frame{height:65vh;min-height:400px}.login-page{grid-template-columns:1fr}.login-story{padding:26px}.story-content{padding:24px 0 4px}.story-content h1{margin:12px 0;font-size:33px}.story-art,.story-footer{display:none}.login-form-panel{padding:90px 25px 36px}.login-form h2{font-size:31px}.login-form>.muted{margin-bottom:22px}.profile-panel{padding:24px}.sessions-panel{padding:20px}.session-details{grid-template-columns:1fr;gap:14px}.session-card{padding:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation-duration:.01ms!important}}
