@import "https://fonts.googleapis.com/css2?family=Cairo:wght@400;500;600;700;800&display=swap";:root{color:#15233a;font-synthesis:none;background:#f4f7fb;font-family:Cairo,system-ui,sans-serif}*{box-sizing:border-box}body{background:#f4f7fb;min-width:320px;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}.center-page{background:radial-gradient(circle at 100% 0,#dceeff,#f7f9fc 45%);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card,.setup-card{text-align:center;background:#fff;border:1px solid #e5ebf3;border-radius:24px;width:min(440px,100%);padding:34px;box-shadow:0 18px 60px #1e426e1f}.brand-mark{color:#fff;background:linear-gradient(135deg,#0f4c81,#2188d9);border-radius:18px;place-items:center;width:64px;height:64px;margin:0 auto 14px;font-size:22px;font-weight:800;display:grid}.login-card h1,.setup-card h1{margin:6px 0}.login-card p,.setup-card p{color:#6d7c91}.mini-note{color:#68758a;background:#f4f7fb;border-radius:12px;margin-top:18px;padding:12px;font-size:13px}.loader{border:4px solid #d8e7f5;border-top-color:#0f4c81;border-radius:50%;width:42px;height:42px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{min-height:100vh}.topbar{color:#fff;z-index:5;background:#0e3155;justify-content:space-between;align-items:center;gap:20px;min-height:82px;padding:16px clamp(18px,4vw,52px);display:flex;position:sticky;top:0;box-shadow:0 4px 18px #0e31552e}.topbar h1{margin:0;font-size:22px}.topbar p{opacity:.72;margin:2px 0 0;font-size:13px}.top-actions{align-items:center;gap:12px;font-size:13px;display:flex}.card{background:#fff;border:1px solid #e4eaf2;border-radius:18px;box-shadow:0 8px 24px #1d3b5b0d}.layout{grid-template-columns:290px minmax(0,1fr);gap:22px;max-width:1600px;margin:0 auto;padding:24px clamp(16px,3vw,40px) 50px;display:grid}.sidebar{align-self:start;padding:18px;position:sticky;top:104px}.section-title,.day-head,.review-head,.student-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.section-title h2{margin:0;font-size:17px}.section-title span{color:#0f4c81;background:#eef6ff;border-radius:9px;place-items:center;min-width:28px;height:28px;font-size:12px;font-weight:700;display:grid}.student-list{gap:8px;margin:14px 0 22px;display:grid}.student-item{text-align:right;color:#26364b;background:#f7f9fc;border:1px solid #0000;border-radius:12px;padding:11px 12px}.student-item.active{background:#edf7ff;border-color:#9bc8ef}.student-item strong,.student-item small{display:block}.student-item small{color:#7a8798;margin-top:4px}.add-student{border-top:1px solid #edf0f4;gap:8px;padding-top:16px;display:grid}.add-student h3{margin:0 0 4px;font-size:14px}input,textarea,select{color:#25354a;background:#fff;border:1px solid #dce3ed;border-radius:11px;outline:none;width:100%;padding:10px 12px}input:focus,textarea:focus,select:focus{border-color:#5ca9e9;box-shadow:0 0 0 3px #e7f3fe}.primary,.secondary,.ghost{border:0;border-radius:11px;padding:10px 15px;font-weight:700}.primary{color:#fff;background:#1264a3}.secondary{color:#0f4c81;background:#eaf5ff}.ghost{color:inherit;background:#ffffff1f;border:1px solid #ffffff38}.sidebar .ghost,.subjects .ghost,.review .ghost{color:#34516c;background:#f5f8fb;border-color:#dce5ee}button:disabled{opacity:.55;cursor:wait}.content{gap:18px;min-width:0;display:grid}.student-header{padding:20px 22px}.student-header h2{margin:3px 0;font-size:26px}.student-header p{color:#748195;margin:0}.eyebrow{text-transform:uppercase;color:#6d86a0;letter-spacing:.04em;font-size:11px;font-weight:800}.week-picker{min-width:160px}.week-picker label{color:#718298;margin-bottom:5px;font-size:11px;font-weight:700;display:block}.subjects{gap:12px;padding:16px;display:grid}.subject-tabs{flex-wrap:wrap;gap:8px;display:flex}.subject-tabs button{color:#485c74;background:#f8fafc;border:1px solid #dfe7f0;border-radius:999px;padding:8px 13px}.subject-tabs button.active{color:#fff;background:#0f4c81;border-color:#0f4c81}.add-subject-row{gap:8px;display:flex}.add-subject-row input{max-width:280px}.days-grid{grid-template-columns:repeat(5,minmax(210px,1fr));align-items:start;gap:12px;display:grid}.day-card{min-height:310px;padding:14px}.day-head h3{margin:0;font-size:16px}.day-head span{color:#8794a5;font-size:11px}.upload-box{text-align:center;color:#285b82;cursor:pointer;background:#f5fbff;border:1.5px dashed #a9c7df;border-radius:13px;place-items:center;gap:2px;min-height:94px;margin:12px 0;display:grid}.upload-box input{display:none}.upload-box small{color:#7893a8;font-size:10px}.note-row{grid-template-columns:1fr auto;gap:6px;display:grid}.note-row textarea{resize:vertical;min-height:56px;font-size:12px}.note-row button{color:#355a78;background:#edf4fa;border:0;border-radius:9px;padding:0 10px}.file-list{gap:6px;margin-top:10px;display:grid}.file-item{background:#f8fafc;border:1px solid #edf1f5;border-radius:10px;grid-template-columns:1fr auto;align-items:center;gap:6px;padding:8px;display:grid}.file-item strong{word-break:break-word;font-size:11px;display:block}.file-item small{-webkit-line-clamp:2;color:#8390a0;-webkit-box-orient:vertical;font-size:10px;display:-webkit-box;overflow:hidden}.file-item button{color:#c94b4b;background:#fff0f0;border:0;border-radius:7px;width:26px;height:26px}.review{padding:22px}.review-head h2{margin:3px 0}.review-head p{color:#718094;margin:0;font-size:13px}.review-actions{flex-wrap:wrap;gap:8px;display:flex}.review-placeholder{text-align:center;color:#8b98a8;background:#f8fafc;border-radius:14px;margin-top:18px;padding:34px}.review-output{gap:12px;margin-top:18px;display:grid}.review-output section,.review-output details{background:#f8fbfe;border:1px solid #e2eaf2;border-radius:14px;padding:14px 17px}.review-output h3{color:#164e78;margin:0 0 8px;font-size:15px}.review-output p,.review-output li{font-size:14px;line-height:1.9}.review-output summary{cursor:pointer;color:#164e78;font-weight:800}.notice{z-index:20;color:#fff;cursor:pointer;background:#142f49;border-radius:999px;padding:11px 18px;font-size:13px;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #0003}.empty{text-align:center;padding:50px}.empty h2{margin-top:0}.empty p{color:#758396}@media (width<=1200px){.days-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.layout{grid-template-columns:1fr}.sidebar{position:static}.days-grid{grid-template-columns:repeat(2,1fr)}.top-actions span{display:none}}@media (width<=620px){.topbar{padding:13px 15px}.topbar h1{font-size:18px}.layout{gap:12px;padding:14px 10px 40px}.student-header,.review-head{flex-direction:column;align-items:stretch}.week-picker{width:100%}.days-grid{grid-template-columns:1fr}.add-subject-row{flex-direction:column}.add-subject-row input{max-width:none}.review{padding:16px}.review-actions{flex-direction:column}.review-actions button{width:100%}}.review-ready{background:linear-gradient(135deg,#f4faff,#fff);border:1px solid #dce8f2;border-radius:16px;grid-template-columns:180px 1fr;align-items:center;gap:18px;margin-top:18px;padding:16px;display:grid}.review-ready img{object-fit:cover;border:1px solid #dce7ef;border-radius:13px;width:180px;height:120px}.review-ready-visual{color:#fff;background:linear-gradient(135deg,#0f4c81,#4a96d8);border-radius:13px;place-items:center;width:180px;height:120px;font-size:36px;font-weight:800;display:grid}.review-ready h3{color:#153f62;margin:0 0 6px}.review-ready p{color:#738196;margin:0;line-height:1.8}.pdf-stage{pointer-events:none;z-index:-1000;width:794px;position:fixed;top:0;left:-12000px}.pdf-document{color:#17243a;background:#fff;width:794px;padding:0;font-family:Cairo,Arial,sans-serif;line-height:1.85}.pdf-cover{background:radial-gradient(circle at 88% 8%,#3b82f62e,#0000 32%),linear-gradient(#eef7ff 0%,#fff 62%);flex-direction:column;min-height:1040px;padding:52px 54px;display:flex}.pdf-brand-row{align-items:center;gap:14px;display:flex}.pdf-brand-row strong,.pdf-brand-row span{display:block}.pdf-brand-row strong{color:#123c63;font-size:22px}.pdf-brand-row span{color:#71849a;font-size:13px}.pdf-logo{color:#fff;background:linear-gradient(135deg,#0e497c,#3e8bd0);border-radius:18px;place-items:center;width:62px;height:62px;font-size:23px;font-weight:800;display:grid}.pdf-cover-title{text-align:right;margin-top:58px}.pdf-cover-title>span{color:#275c89;background:#e7f2fc;border-radius:999px;padding:8px 14px;font-size:14px;font-weight:700;display:inline-block}.pdf-cover-title h1{color:#102b49;margin:20px 0 3px;font-size:48px;line-height:1.25}.pdf-cover-title p{color:#708198;margin:0;font-size:18px}.pdf-hero-image{object-fit:cover;border:1px solid #dbe7f0;border-radius:28px;width:100%;height:420px;margin-top:44px;box-shadow:0 18px 40px #19466d1f}.pdf-hero-fallback{background:linear-gradient(135deg,#dff0ff,#f9fcff);border:1px solid #dbe7f0;border-radius:28px;grid-template-columns:repeat(3,1fr);place-items:center;width:100%;height:420px;margin-top:44px;font-size:76px;display:grid}.pdf-cover-note{text-align:center;color:#7d8ca0;margin-top:auto;padding-top:36px;font-size:13px}.pdf-section{break-inside:avoid;page-break-inside:avoid;background:#fff;margin:0;padding:44px 54px}.pdf-section+.pdf-section{border-top:1px solid #edf1f5}.pdf-page-break{break-before:page;page-break-before:always}.pdf-section-title{align-items:center;gap:12px;margin-bottom:20px;display:flex}.pdf-section-title span{color:#fff;background:#1e669f;border-radius:13px;place-items:center;width:42px;height:42px;font-size:13px;font-weight:800;display:grid}.pdf-section-title h2{color:#164d77;margin:0;font-size:26px}.pdf-section p,.pdf-section li{font-size:16px;line-height:2}.pdf-lead{background:#f3f9fe;border-right:5px solid #2f80c1;border-radius:18px;padding:24px;font-size:19px!important}.pdf-key-grid{grid-template-columns:repeat(2,1fr);gap:13px;display:grid}.pdf-key-card{background:#f8fbfe;border:1px solid #dfe9f2;border-radius:16px;align-items:flex-start;gap:12px;min-height:105px;padding:16px;display:flex}.pdf-key-card b{color:#1b639a;background:#e5f2fc;border-radius:10px;place-items:center;min-width:31px;height:31px;display:grid}.pdf-key-card span{font-size:14px;line-height:1.8}.pdf-example-list{gap:12px;display:grid}.pdf-example-list>div{background:#fbfcfe;border:1px solid #e4eaf1;border-radius:15px;padding:16px 18px}.pdf-example-list b{color:#17608f}.pdf-example-list p{margin:5px 0 0;font-size:14px}.pdf-quiz{padding-right:24px}.pdf-quiz>li{background:#fafcff;border:1px solid #e4ebf2;border-radius:15px;margin-bottom:18px;padding:14px 18px}.pdf-options{grid-template-columns:repeat(2,1fr);gap:8px;margin-top:10px;display:grid}.pdf-options span{background:#eef6fc;border-radius:10px;padding:8px 10px;font-size:13px}.pdf-answers{background:#f7fbff}.pdf-answers ol{padding-right:24px}.pdf-answers li{margin-bottom:10px}@media (width<=620px){.review-ready{grid-template-columns:1fr}.review-ready img,.review-ready-visual{width:100%;height:180px}}.pdf-main-button{min-width:190px;font-size:15px;box-shadow:0 8px 18px #1264a32e}.review-ready-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:210px;display:grid}.review-ready-gallery img{object-fit:cover;border:1px solid #dce7ef;border-radius:12px;width:100%;height:100px}.review-ready-gallery img:only-child{grid-column:1/-1;height:125px}.review-ready-gallery .review-ready-visual{grid-column:1/-1;width:100%;height:125px}.pdf-concept-image{object-fit:cover;border:1px solid #dce7ef;border-radius:20px;width:100%;height:330px;margin:4px 0 24px;display:block}@media (width<=620px){.review-ready-gallery{width:100%}.review-ready-gallery img{height:145px}}.lang-toggle{color:inherit;background:#ffffff1a;border:1px solid #ffffff47;border-radius:10px;padding:8px 12px;font-weight:700}.login-card .lang-toggle{color:#24445f;background:#f5f8fb;border-color:#d9e4ee}.login-lang{margin-inline-start:auto;margin-bottom:10px;display:block}[dir=ltr] .student-item,[dir=ltr] .pdf-cover-title{text-align:left}[dir=ltr] .pdf-lead{border-left:5px solid #2f80c1;border-right:0}[dir=ltr] .pdf-quiz,[dir=ltr] .pdf-answers ol{padding-left:24px;padding-right:0}.pdf-visual-grid{gap:18px;display:grid}.pdf-visual-card{break-inside:avoid;page-break-inside:avoid;background:#f9fcff;border:1px solid #dfe8f1;border-radius:18px;grid-template-columns:1.15fr .85fr;align-items:center;gap:18px;padding:16px;display:grid}.pdf-visual-card img{object-fit:cover;border:1px solid #dbe6ef;border-radius:14px;width:100%;height:250px}.pdf-visual-card h3{color:#175a88;margin:0 0 8px;font-size:19px}.pdf-visual-card p{margin:0;font-size:14px;line-height:1.9}.pdf-source-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.pdf-source-grid figure{break-inside:avoid;page-break-inside:avoid;background:#fbfdff;border:1px solid #e0e8ef;border-radius:16px;margin:0;padding:10px}.pdf-source-grid img{object-fit:contain;background:#fff;border-radius:12px;width:100%;height:220px;display:block}.pdf-source-grid figcaption{color:#7a8797;text-align:center;word-break:break-word;margin-top:7px;font-size:10px}[dir=ltr] .pdf-visual-card{grid-template-columns:1.15fr .85fr}
