@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+Arabic:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";
:root{--bg:#f8f9f5;--ink:#163c32;--muted:#667b70;--line:#dce3d9;--card:#fff;--soft:#ecf0e8;--accent:#d5f57c}html[data-theme=dark]{--bg:#10251f;--ink:#edf4e9;--muted:#a5b8ac;--line:#354b40;--card:#192f27;--soft:#223c30}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:IBM Plex Sans Arabic,sans-serif}html[lang=en] body{font-family:Manrope,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #83ae44}button{cursor:pointer;border:1px solid var(--line);color:var(--ink);background:var(--card);border-radius:7px;padding:10px 17px;transition:transform .2s}button:hover:enabled{transform:translateY(-2px)}button:disabled{opacity:.55;cursor:not-allowed}.primary{background:var(--accent);color:#163c32;border-color:#0000;font-weight:600}.portal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:86px;padding:0 5vw;display:flex}.wordmark{align-items:center;gap:10px;font-size:23px;font-weight:700;display:flex}.header-tools{gap:10px;display:flex}.header-tools button{border-radius:50px;min-width:42px}.eyebrow{letter-spacing:1.8px;color:var(--muted);font:500 10px Manrope,sans-serif}.auth-layout{grid-template-columns:1.1fr 1fr;align-items:center;gap:90px;max-width:1120px;margin:75px auto;padding:0 30px;display:grid}.auth-story h1{margin:24px 0;font-size:52px;line-height:1.5}.auth-story p{color:var(--muted);font-size:17px;line-height:2}.auth-promise{border-inline-start:2px solid var(--accent);margin-top:32px;padding-inline-start:22px;font-size:14px;line-height:3}.panel{background:var(--card);border:1px solid var(--line);border-radius:12px;margin-bottom:22px;padding:27px;animation:.35s ease-out appear}.panel h2{margin:10px 0 16px;font-size:23px}.panel h3{font-size:20px}.panel p{font-size:14px;line-height:1.9}.auth-panel{padding:36px}.muted{color:var(--muted);font-size:13px;line-height:1.9}label{flex-direction:column;gap:8px;margin:18px 0;font-size:13px;display:flex}input,select,textarea{border:1px solid var(--line);background:var(--bg);width:100%;color:var(--ink);border-radius:7px;padding:11px 13px}textarea{resize:vertical}.auth-panel .primary{width:100%;margin-top:10px}.auth-links{flex-wrap:wrap;justify-content:space-between;gap:10px;margin:14px 0 24px;display:flex}.text-button{background:0 0;border:0;padding:6px 0;font-size:13px}.status{white-space:pre-line;font-size:13px;line-height:1.9}.status:empty{display:none}.portal-layout{grid-template-columns:235px 1fr;max-width:1560px;min-height:calc(100vh - 86px);margin:auto;display:grid}.sidebar{border-inline-end:1px solid var(--line);flex-direction:column;align-items:stretch;padding:35px 22px;display:flex}.account-email{overflow-wrap:anywhere;color:var(--muted);margin-bottom:32px;font:11px Manrope}.sidebar nav{flex-direction:column;gap:8px;display:flex}.sidebar nav button{text-align:start;background:0 0;border:0;font-size:14px}.sidebar nav button.active{background:var(--soft);font-weight:600}.logout{text-align:start;margin-top:50px}.dashboard{min-width:0;padding:40px}.dashboard-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.dashboard-heading h1{margin:15px 0 22px;font-size:31px}.pill{border:1px solid var(--line);white-space:nowrap;border-radius:50px;padding:6px 16px;font-size:12px}.notice{background:var(--soft);color:var(--muted);border-radius:8px;margin-bottom:30px;padding:14px 18px;font-size:12px;line-height:1.9}.section-heading{justify-content:space-between;align-items:center;gap:20px;margin-top:30px;display:flex}.section-heading h2{font-size:23px}.level-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.level-card{flex-direction:column;align-items:start;gap:12px;margin:0;display:flex}.level-card h3{margin:12px 0 0}.level-card p{flex:1}.locked{background:var(--bg)}.level-card button{font-size:12px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:0 20px;display:grid}.form-grid button{margin-bottom:18px}.form-grid fieldset{border:1px solid var(--line);border-radius:8px;gap:18px;margin:18px 0;display:flex}.checkbox{flex-direction:row;align-items:center;margin:8px 0;display:flex}.checkbox input{width:auto}.record-list{margin:24px 0 0;padding:0;list-style:none}.record-list li{border-top:1px solid var(--line);overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:15px;padding:17px 0;font-size:12px;display:flex}.record-list button{font-size:11px}.record-list time{color:var(--muted);font-size:10px}.truncate{text-overflow:ellipsis;white-space:nowrap;max-width:35%;overflow:hidden}.qr{background:#fff;border-radius:8px;width:190px;max-width:100%;margin:20px 0;padding:10px;display:block}.lesson-content{white-space:pre-wrap;margin-bottom:25px;font-size:15px;line-height:2}.lesson button{font-size:12px}code{overflow-wrap:anywhere}hr{border:0;border-top:1px solid var(--line);margin:26px 0}.setup-message{max-width:650px;margin:100px auto;padding:30px}.setup-message a{text-decoration:underline}@keyframes appear{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (max-width:950px){.auth-layout{gap:40px}.auth-story h1{font-size:39px}.portal-layout{grid-template-columns:190px 1fr}.dashboard{padding:28px}.dashboard-heading h1{font-size:26px}.form-grid{grid-template-columns:1fr}}@media (max-width:650px){.portal-header{height:74px;padding-inline:20px}.wordmark{font-size:19px}.auth-layout{grid-template-columns:1fr;gap:25px;margin:35px auto;padding-inline:20px}.auth-story h1{margin:15px 0;font-size:34px}.auth-story p{font-size:14px}.auth-promise{display:none}.auth-panel{padding:25px}.portal-layout{grid-template-columns:1fr}.sidebar{border:0;border-bottom:1px solid var(--line);padding:20px}.sidebar nav{flex-direction:row;overflow-x:auto}.sidebar nav button{white-space:nowrap;font-size:12px}.sidebar .eyebrow,.sidebar .account-email{display:none}.logout{margin-top:12px}.dashboard{padding:25px 20px}.dashboard-heading h1{font-size:25px}.level-grid{grid-template-columns:1fr}.section-heading{flex-direction:column;align-items:start;gap:0;margin-bottom:20px}.panel{padding:22px}.record-list li{flex-wrap:wrap}.truncate{max-width:60%}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
