@font-face{font-family:"Grammar Arabic";src:url('/fonts/arabic.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+0600-06FF,U+0750-077F,U+0870-089F,U+08A0-08FF,U+FB50-FDFF,U+FE70-FEFF,U+10E60-10E7F,U+1EE00-1EEFF}
:root{--blue:#1861bf;--ink:#262626;--muted:#657570;--border:#c8d2dc;--review-ink:#17243b;--review-muted:#5c6e87;--canvas:#f5f7fc;--bluewash:#ebf2ff;--review-border:#e0e8f0;--mint:#e8f7ef;--rose:#fff0f0;font-family:"Grammar Arabic",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);font-synthesis:none;color-scheme:light}
*{box-sizing:border-box}body{margin:0;background:#edf0f5}button,input{font:inherit}button{cursor:pointer;color:inherit;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}button:active{opacity:.78}button:focus-visible,a:focus-visible{outline:3px solid #3085d7;outline-offset:3px}button{border:0;background:none}h1,h2,h3,p{margin:0}svg{flex:none;vertical-align:middle}.icon{display:inline-block}.device{max-width:440px;margin:20px auto;background:white;min-height:min(956px,calc(100dvh - 40px));height:calc(100dvh - 40px);max-height:1050px;display:flex;flex-direction:column;border-radius:40px;overflow:hidden;box-shadow:0 16px 80px #15223e16}#app{flex:1;min-height:0;display:flex;flex-direction:column;position:relative;overflow:hidden}.statusbar{height:62px;flex:none;direction:ltr;display:flex;align-items:center;justify-content:space-between;padding:0 30px;font-size:15px;color:#000;position:relative}.island{position:absolute;left:50%;transform:translateX(-50%);width:125px;height:35px;background:#000;border-radius:30px;top:12px}.home-indicator{height:25px;flex:none;position:relative;background:#fff}.home-indicator:after{content:"";position:absolute;left:34%;right:34%;height:5px;background:#111;bottom:8px;border-radius:5px}.scroll-page{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;flex:1;padding:0 16px 36px}.scroll-page::-webkit-scrollbar{display:none}.page-header{display:flex;gap:12px;align-items:center;padding:8px 0 14px;min-height:84px}.back-button{width:44px;height:44px;flex:none;border-radius:50%;background:#eff9fe;color:var(--blue);display:grid;place-items:center}.header-copy{flex:1;min-width:0}.page-header h1{font-size:20px;line-height:1.35;font-weight:700}.eyebrow{font-size:11px;color:var(--muted);margin-bottom:4px;line-height:1.4}.subtitle{font-size:12px;color:var(--muted);margin-top:4px;line-height:1.5}.overview{display:flex;flex-direction:column;gap:16px}.overview .page-header{padding-bottom:0;flex:none}.overview-hero{position:relative;border-radius:18px;overflow:hidden;background:linear-gradient(90deg,#e0f2f5,#d6faed);min-height:205px;flex:none;text-align:center;color:#062e22}.hero-copy{position:relative;padding:23px 18px;display:flex;flex-direction:column;align-items:center;gap:8px}.hero-copy>span{font-size:13px;color:#058063;font-weight:600}.hero-copy h2{font-size:27px;line-height:1.25;font-weight:700}.hero-copy h3{font-size:16px;font-weight:500}.hero-copy p{font-size:13px;line-height:1.5;color:#345e53}.badge{border-radius:30px;background:#fff;color:#595959;font-size:12px;padding:7px 14px;font-weight:500}.checker{position:absolute;inset:0;display:grid;grid-template-columns:repeat(5,1fr);direction:ltr;transform:translateY(-12%);align-content:start}.checker i{aspect-ratio:1}.checker .filled{background:#6bdbc438;border-radius:28px}.checker i:nth-child(7),.checker i:nth-child(9),.checker i:nth-child(13){border-radius:0}.overview-progress{display:flex;direction:ltr;gap:16px;align-items:center;justify-content:space-between;min-height:84px;background:#f6f7f8;border-radius:10px;padding:14px;text-align:right;flex:none}.count-badge{background:var(--blue);color:#fff;font-size:17px;font-weight:600;padding:4px 11px;border-radius:30px;white-space:nowrap}.overview-progress h3{font-size:16px;font-weight:600}.overview-progress p{font-size:12px;color:var(--muted);margin-top:7px;direction:rtl}.start-heading{font-size:17px;font-weight:600}.section-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.section-tile{text-align:right;background:var(--tile);border-radius:12px;min-height:146px;padding:14px;display:flex;flex-direction:column;gap:14px}.tile-top{display:flex;align-items:center;justify-content:space-between}.tile-top>.icon{width:15px;height:15px}.tile-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:9px;background:#ffffff7a}.tile-icon svg{width:24px;height:24px}.tile-copy h2{font-size:17px;line-height:1.35}.tile-copy p{font-size:12px;color:var(--muted);line-height:1.5;margin-top:5px}.section-tile.wide{grid-column:1/-1;min-height:86px;flex-direction:row;align-items:center;position:relative;padding-left:45px;gap:14px}.wide .tile-top>.icon{position:absolute;left:14px;top:calc(50% - 7px)}.button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:55px;border-radius:13px;padding:10px 12px;font-size:15px;font-weight:600;width:100%;text-align:center;line-height:1.4}.primary{background:var(--blue);color:#fff}.secondary{background:#f0f7ff;color:var(--blue)}.outline{background:#fff;color:var(--blue);border:1px solid var(--review-border)}.pill{border-radius:30px;min-height:48px}.button small{display:block;font-size:10px;font-weight:400}.muted{color:var(--muted)}.english{direction:ltr;text-align:left;unicode-bidi:plaintext;overflow-wrap:break-word}.arabic{direction:rtl;text-align:right;unicode-bidi:plaintext}.space{height:10px}.grow{flex:1}.footer{flex:none;background:white;padding:10px 16px 6px;box-shadow:0 -3px 10px #00000008}.actions{display:flex;gap:10px}.actions>*{flex:1;min-width:0}.small-note{font-size:10px;text-align:center;color:var(--muted);margin-top:7px;line-height:1.5}.empty{padding:55px 20px;text-align:center;display:grid;gap:18px}.empty>svg{margin:auto}.empty h2{font-size:22px}.empty p{font-size:16px;color:var(--muted);line-height:1.6}.search{width:100%;border:0;border-radius:12px;background:#f4f6f8;min-height:44px;padding:10px 15px;font-size:15px}.list-row{width:100%;display:flex;align-items:center;gap:12px;padding:18px 14px;border-radius:14px;background:#f7f9fb;text-align:right;margin-top:12px}.list-row>div{flex:1}.list-row h2{font-size:17px}.list-row p{font-size:12px;color:var(--muted);margin-top:5px}
.practice-page{display:flex;flex-direction:column;gap:18px;padding-top:8px;padding-bottom:20px}.practice-header{display:flex;direction:ltr;gap:8px;align-items:center;flex:none}.practice-header .grow{text-align:right;direction:rtl;min-width:0}.practice-header h1{font-size:20px;font-weight:600;line-height:1.3}.practice-header .eyebrow{font-size:11px;line-height:1.4}.progress-shortcut{color:var(--blue);background:#f0faff;border-radius:13px;min-width:48px;min-height:46px;padding:5px;display:grid;justify-items:center;gap:3px}.progress-shortcut span{font-size:10px}.menu-circle{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;flex:none;color:var(--blue);background:#f2f2f7}.simple-back{width:36px;height:44px;display:grid;place-items:center;color:var(--blue);flex:none}.practice-progress{background:#f0f7ff;border-radius:12px;padding:12px;display:flex;align-items:center;gap:10px;justify-content:space-between;flex:none}.practice-progress h2{font-size:15px;font-weight:600}.practice-progress p{font-size:12px;color:var(--muted);margin-top:4px}.practice-progress>span{padding:8px;background:white;border-radius:30px;font-size:12px;color:var(--blue);font-weight:600;white-space:nowrap}.lab-question{display:flex;flex-direction:column;gap:14px;flex:none}.question-label{display:flex;justify-content:space-between;align-items:center;gap:10px}.question-label strong{font-size:15px;color:var(--blue)}.question-label span{font-size:12px;color:var(--muted)}.lab-prompt{display:flex;flex-direction:column;gap:9px;padding:4px 0}.lab-prompt p{line-height:1.3;white-space:pre-wrap}.lab-options{display:flex;flex-direction:column;gap:14px}.lab-option{direction:ltr;display:flex;gap:12px;align-items:center;background:#f7f7fa;border:1px solid #59595921;border-radius:11px;padding:15px 14px;font-size:19px;color:#595959;text-align:left;min-height:55px}.lab-option>span:first-child{flex:1;min-width:0}.option-mark{display:grid;place-items:center;width:23px;height:23px;flex:none;border:1.5px solid currentColor;border-radius:50%}.option-mark svg{width:17px;height:17px;stroke-width:2.5}.option-mark.yes,.option-mark.no{background:currentColor}.option-mark.yes svg,.option-mark.no svg{color:white}.lab-option.correct{background:#eaf7f0;border-color:#087d5766;color:#087d57}.lab-option.wrong{background:#fff0f0;border-color:#a3393966;color:#a33939}.lab-option:disabled{opacity:1}.hint-button{font-size:15px;min-height:44px;color:var(--blue);display:flex;gap:7px;align-items:center;align-self:flex-start}.hint-button svg{width:16px;height:16px}.hint-panel{display:flex;gap:8px;align-items:flex-start;font-size:15px;line-height:1.5;padding:12px;background:#fff7db;border-radius:10px}.hint-panel svg{width:18px}.assistance-note{font-size:11px;color:var(--muted);line-height:1.5}.repeat-notice{display:flex;align-items:flex-start;gap:8px;border-radius:12px;padding:12px;background:#f0f7ff;color:var(--blue);font-size:15px;line-height:1.5}.repeat-notice svg{width:18px;flex:none}.lab-feedback{border-radius:13px;padding:15px;display:flex;flex-direction:column;gap:9px;flex:none}.lab-feedback.correct{background:#eaf7f0}.lab-feedback.incorrect{background:#fff5e6}.lab-feedback h2{font-size:17px;line-height:1.4;display:flex;gap:7px;align-items:center}.lab-feedback.correct h2{color:#087d57}.lab-feedback h2 svg{width:18px}.lab-feedback h3{font-size:12px;font-weight:600;color:var(--muted)}.correct-sentence{font-size:18px;font-weight:600;line-height:1.45}.answer-reason{font-size:15px;line-height:1.5}.feedback-concept{padding:18px;background:#f2f0ff;border-radius:13px;display:flex;flex-direction:column;gap:14px;flex:none}.feedback-concept h2{font-size:20px;font-weight:600}.feedback-concept>p{font-size:17px;line-height:1.6;white-space:pre-wrap}.feedback-concept .concept-rule{font-size:17px;line-height:1.45;font-weight:500}.awaiting-answer{min-height:35px;display:grid;place-items:center;font-size:12px;color:var(--muted)}.small-note svg{width:10px;height:10px;margin-left:4px}.practice-footer .button>span{font-size:17px}.practice-footer .button small{font-size:10px;margin-top:3px}.progress-page .page-header{min-height:100px}.progress-cards{display:grid;gap:14px}.progress-card{padding:15px;background:#f6f6f9;border-radius:14px;display:grid;gap:12px}.row{display:flex;align-items:center;justify-content:space-between;gap:10px}.progress-card h2{font-size:17px}.progress-card b{font-size:12px;color:var(--blue)}.progress-card p{font-size:12px;color:var(--muted)}.progress-track{height:4px;border-radius:4px;background:#dedee3;overflow:hidden}.progress-track i{height:100%;background:var(--blue);display:block;border-radius:4px}.reset-point{min-height:44px;font-size:12px;color:#a33939}.reset-all{min-height:48px;color:#a33939;font-size:17px;width:100%}.progress-help{font-size:13px;line-height:1.6;color:var(--muted);margin:14px 0}.review-shell{background:var(--canvas);color:var(--review-ink)}.review-header{display:flex;align-items:center;gap:12px;padding:8px 18px 14px;background:white;border-bottom:1px solid var(--review-border);flex:none;min-height:76px}.review-header .back-button{border-radius:15px;background:var(--canvas)}.review-header h1{font-size:21px;font-weight:700;line-height:1.3}.review-header p{font-size:12px;color:var(--review-muted);margin-top:3px}.stack-icon{color:#739dd6;width:22px;height:22px}.review-page{padding:16px 18px 24px;display:flex;flex-direction:column;gap:16px}.review-page>section{flex:none}.review-surface{background:white;border:1px solid var(--review-border);border-radius:22px;box-shadow:0 4px 10px #17243b06}.review-intro{padding:20px;display:flex;flex-direction:column;gap:17px}.review-meta{display:flex;align-items:center;gap:4px;justify-content:space-between}.review-meta b{padding:7px 11px;background:var(--bluewash);border-radius:30px;color:var(--blue);font-size:12px;font-weight:600}.review-meta>span{font-size:9px;letter-spacing:1px;font-weight:600;color:var(--review-muted)}.review-title{display:flex;gap:13px;align-items:center}.concept-symbol{width:52px;height:52px;display:grid;place-items:center;border-radius:17px;color:var(--blue);background:var(--bluewash);flex:none}.concept-symbol svg{width:26px;height:26px}.review-title h2{font-size:28px;font-weight:700;line-height:1.25}.review-title p{font-size:13px;font-weight:500;margin-top:3px;color:var(--review-muted)}.review-intro hr{border:0;height:1px;background:var(--review-border);margin:0;width:100%}.review-summary{font-size:18px;line-height:1.65;white-space:pre-wrap}.review-rules{padding:20px;background:var(--bluewash);border:1px solid #1861bf1a;border-radius:22px}.review-section-heading{font-size:18px;line-height:1.4;display:flex;gap:9px;align-items:center;margin:0}.review-section-heading svg{width:18px;height:18px;color:var(--blue)}.review-section-heading.green svg{color:#0d7054}.rules-list{display:grid;gap:15px;margin-top:15px}.rule-item h4{font-size:12px;font-weight:500;color:var(--review-muted);margin:0 0 7px}.rule-item p{font-size:17px;font-weight:500;line-height:1.5;white-space:pre-wrap}.main-rule{padding:15px;border-radius:14px;background:#fff}.main-rule h4{font-weight:600;margin-bottom:9px}.main-rule p{font-size:19px;font-weight:600}.review-example{padding:20px;display:grid;gap:12px}.review-example p{font-size:18px;font-weight:600;line-height:1.4}.review-comparison{padding:18px;display:grid;gap:14px}.sentence-box{padding:15px;border-radius:15px;display:grid;gap:11px}.sentence-box.bad{background:var(--rose)}.sentence-box.good{background:var(--mint)}.sentence-box h4{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;margin:0;color:#b03d45}.sentence-box.good h4{color:#0d7054}.sentence-box svg{width:16px;height:16px}.sentence-box p{font-size:18px;font-weight:600;line-height:1.4}.correction-note{font-size:15px;line-height:1.6;color:var(--review-muted);display:flex;align-items:flex-start;gap:8px}.correction-note svg{width:16px;height:20px;margin-top:2px}.review-footer{padding:14px 18px 10px;background:white;border-top:1px solid var(--review-border);flex:none}.review-footer .button{border-radius:16px;min-height:57px;font-size:15px;padding:9px}.review-footer .icon{width:22px;height:22px}.explanation-page{padding:0 18px 38px;display:flex;flex-direction:column;gap:22px}.explanation-page>*{flex:none}.explanation-page .page-header{margin-bottom:-10px}.explanation-page>h2{font-size:20px}.simpler-intro{font-size:21px;font-weight:500;line-height:1.75;padding:18px;background:#eaf7f0;border-radius:16px}.simpler-steps{list-style:none;margin:0;padding:0;display:grid;gap:22px}.simpler-steps li{display:flex;gap:12px;align-items:flex-start;font-size:17px;line-height:1.65}.simpler-steps b{width:30px;height:30px;border-radius:50%;background:#e6f5ff;color:var(--blue);display:grid;place-items:center;flex:none;font-size:17px}.alternate-example{padding:18px;background:#f2f0ff;border-radius:16px}.alternate-example h3{font-size:17px;margin-bottom:10px}.memory-tip{display:flex;gap:8px;align-items:flex-start;padding:16px;background:#fff7de;border-radius:14px;font-size:17px;line-height:1.6}.memory-tip svg{width:18px}.original-page{padding:0 0 28px}.player-header{padding:8px 16px 0;display:flex;direction:ltr;gap:12px;align-items:center}.player-header>div{flex:1;text-align:right;min-width:0}.player-header p{font-size:11px;color:var(--muted);margin-bottom:3px}.player-header h1{font-size:21px;font-weight:600;line-height:1.3}.player-header .menu-circle{background:#f0faff}.player-header .spacer{background:transparent}.stage-header{height:46px;display:flex;align-items:center;direction:ltr;position:relative;background:#f0f7ff;margin-top:12px;font-size:11px;font-weight:500;color:var(--muted)}.stage-header>span{width:33.333%;text-align:center}.stage-progress{color:var(--blue)}.stage-progress small{display:block;font-size:10px;font-weight:600;margin-top:3px}.stage-header>i{height:2px;background:var(--blue);position:absolute;bottom:0;left:0;border-radius:2px}.exam-stage{height:50px;margin-top:8px;display:flex;direction:ltr;align-items:center;justify-content:space-between;padding:0 16px;font-size:13px;color:#595959;border-top:1px solid #ddd;border-bottom:1px solid #ddd}.paged-banner{height:40px;display:grid;place-items:center;background:repeating-linear-gradient(90deg,#e8f5ff 0 25%,#f0faff 25% 50%);color:var(--blue);font-size:14px;font-weight:600}.paged-question{padding:14px 16px 0}.paged-question>h2{font-size:13px;font-weight:600;color:var(--blue);margin-bottom:14px}.original-prompt{font-size:18px;font-weight:600;line-height:1.35;margin-bottom:10px}.original-option{width:100%;direction:ltr;display:flex;align-items:center;gap:10px;min-height:48px;padding:10px 6px;text-align:left;border-bottom:1px solid #eeeeef;font-size:16px}.original-option>span{flex:1;min-width:0}.original-option:last-child{border-bottom:0}.original-option.correct{color:#0d8057;background:#e8faf0}.original-option.wrong{color:#a33939;background:#ffebed}.original-option.selected{background:#f5f5f5}.radio{width:20px;height:20px;flex:none;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center}.radio.on{border-width:2px}.radio.on:after{content:"";width:10px;height:10px;background:currentColor;border-radius:50%}.original-correct{font-size:13px;font-weight:600;color:#0d8057;padding:12px;background:#ebfaf0;margin-top:12px}.original-feedback{padding:12px;background:#fff7e6;margin-top:12px;display:grid;gap:9px;font-size:13px;color:#595959}.original-feedback h3{font-size:13px;color:#8c6621}.original-feedback .english{font-weight:500;color:#262626}.slide-blocks{display:flex;flex-direction:column;gap:10px;padding:18px 16px 0}.slide-title{font-size:18px;font-weight:600}.preserve{white-space:pre-wrap;line-height:1.5;overflow-wrap:break-word}.block-title{position:relative;overflow:hidden;border-radius:18px;background:linear-gradient(90deg,#e0f2f5,#d6faed);color:#062e22;text-align:center}.block-title>div:last-child{position:relative;padding:28px 18px;display:grid;gap:8px}.block-title h3{font-size:13px;color:#058063;font-weight:600}.block-title h2{font-size:27px;font-weight:700;line-height:1.25}.block-title p{font-size:14px;font-weight:500;color:#345e53}.block-text{padding:10px;display:grid;gap:7px;font-size:17px;color:#595f78}.block-text h3{font-size:17px;font-weight:600;color:#062e22}.text-option{padding:8px;background:#fff;border-radius:8px}.block-rule{padding:14px;border-radius:12px;background:#f5edff;border:1px solid #cfb5f5;display:grid;gap:8px;color:#126e66;font-size:17px}.block-rule h3{font-size:16px;color:#089485}.formula{text-align:center;font-size:17px;font-weight:700;unicode-bidi:plaintext}.block-example{padding:14px;border-radius:12px;background:#fff7e6;color:#a83617;display:grid;gap:8px;font-size:17px}.block-example h3{font-size:16px}.example-text{font-size:16px;font-weight:600;unicode-bidi:plaintext}.block-note{padding:14px;border-radius:12px;background:#fff5d1;display:grid;gap:7px;font-size:17px}.block-note h3{font-size:16px;display:flex;gap:6px;align-items:center}.block-note h3 svg{width:18px}.block-steps{padding:10px;display:grid;gap:9px}.block-steps h3{font-size:17px;color:#062e22}.block-steps>div{display:flex;align-items:flex-start;gap:8px;direction:ltr}.block-steps p{flex:1;text-align:right;direction:rtl;font-size:17px}.block-steps b{color:white;background:var(--blue);border-radius:50%;width:23px;height:23px;display:grid;place-items:center;font-size:11px;flex:none}.block-image{margin:0;padding:10px;border-radius:10px;background:#f7fafc;text-align:center}.block-image img{display:block;width:100%;height:auto;border-radius:9px}.block-image figcaption{font-size:12px;color:var(--muted);margin-top:8px}.block-reveal{padding:14px;background:#e8faf5;border-radius:10px;display:grid;gap:12px}.block-reveal h3{font-size:17px}.block-card{background:#f2edff;border-radius:10px;padding:14px;display:grid;gap:7px;font-size:17px}.block-card h3{font-size:12px;color:#6b3bbb}.block-divider{width:100%;border:0;border-top:1px solid #ddd;margin:4px 0}.question-group{display:grid;gap:14px}.original-footer .button{min-height:46px;font-size:15px}.original-footer .outline{border-color:var(--blue)}.button:disabled{background:#f2f2f7;color:#b5b5ba;border-color:#e5e5ea}.original-footer .outline:disabled{background:white}.monochrome{--blue:#262626;--muted:#737373}.monochrome .original-question{border-bottom:1px solid #ddd;padding-bottom:14px}.completion{padding:44px 40px 0;display:flex;flex-direction:column;gap:20px;align-items:center;text-align:center}.completion p{font-size:14px;color:var(--muted)}.completion h2{font-size:32px}.completion h3{font-size:22px;font-weight:600;display:flex;align-items:center;gap:10px}.completion hr{width:84px;border:0;border-top:1px solid var(--border);margin:0}.completion>svg{width:48px;height:48px;color:#19c879}.exam-result{padding:44px 16px 0;display:grid;gap:22px;text-align:center}.exam-result>div{display:flex;direction:ltr;justify-content:space-between;font-size:12px;color:var(--muted)}.exam-result hr{width:100%;border:0;border-top:1px solid #ddd;margin:0}.exam-result h2{font-size:28px}.exam-result p{font-size:14px;color:var(--muted)}.exam-result strong{font-size:38px}.sheet{position:fixed;inset:auto 0 0;margin:0 auto;width:min(440px,100%);max-width:100%;max-height:85dvh;padding:14px 16px 24px;border:0;border-radius:8px 8px 0 0;background:#fff;color:var(--ink)}dialog::backdrop{background:#0005}.sheet-handle{width:38px;height:4px;background:#c7c7cc;border-radius:3px;margin:0 auto 12px}.sheet header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.sheet header h2{font-size:20px}.sheet header button{width:32px;height:32px;background:#f5f7fa;border-radius:50%;display:grid;place-items:center}.sheet header svg{width:16px;height:16px}.sheet-options{display:grid;gap:8px}.sheet-option{border-radius:10px;min-height:58px;width:100%;display:flex;gap:12px;align-items:center;padding:8px 12px;text-align:right}.sheet-option strong{font-size:15px;font-weight:600}.sheet-option small{display:block;font-size:11px;color:var(--muted);margin-top:3px}.sheet-option>.icon{width:14px}.confirm-dialog{border:0;border-radius:14px;width:280px;padding:20px 0 0;text-align:center;color:var(--ink);background:#f9f9fb}.confirm-dialog h2{font-size:17px;padding:0 16px}.confirm-dialog p{font-size:13px;line-height:1.5;margin-top:7px;padding:0 16px 18px}.confirm-dialog>div{display:flex;border-top:1px solid #ddd}.confirm-dialog .button{min-height:44px;border-radius:0;padding:8px;font-size:17px;background:transparent;color:var(--blue)}.confirm-dialog .danger{color:#d73838;border-right:1px solid #ddd}.row-icon{width:42px;height:42px;flex:none;background:#f3f3f0;border-radius:9px;display:grid;place-items:center}.unit-row{border-radius:8px;background:#e8f5ff;min-height:64px;padding:10px 12px}.unit-row .row-icon{color:var(--blue);background:white}.lesson-row{min-height:72px;background:white;border:1px solid #e5e5ea;border-radius:9px;padding:10px 12px}.list-row h2{font-size:16px;font-weight:600}.list-row>svg{width:15px;height:15px}.search-wrap{display:flex;align-items:center;border:1px solid var(--border);border-radius:8px;padding-left:12px;margin:4px 0 0;color:var(--muted)}.search{border-radius:8px;background:white;font-size:17px;outline-offset:-3px}.profile-page{display:grid;align-content:start;gap:20px}.profile-avatar{background:#e8f3ff;color:var(--blue);width:72px;height:72px;border-radius:50%;margin:auto;display:grid;place-items:center}.profile-avatar svg{width:36px;height:36px}.profile-page label{display:grid;gap:10px;font-size:17px}.profile-page input{border:1px solid var(--border);border-radius:10px;min-height:48px;padding:12px;width:100%}.profile-page>p{font-size:13px;text-align:center}
:root{line-height:1.25}.review-summary{line-height:1.45}.rule-item p{line-height:1.4}.rule-item h4{line-height:1.3}.review-intro .review-meta b{line-height:1.25}.section-tile{gap:8px}.page-header h1{font-size:22px;font-weight:600}.overview .page-header{min-height:70px}.math-symbol{font-size:14px;font-weight:700;color:var(--blue);direction:rtl}.status-icons{display:flex;align-items:center;gap:5px}.status-icons svg{width:17px;height:14px}.status-icons .battery{width:24px}
@supports(-webkit-touch-callout:none){:root{font-family:-apple-system,"Grammar Arabic",BlinkMacSystemFont,Arial,sans-serif}}
/* Compact desktop handset; only the outer viewport changes, not lesson content. */
@media (min-width:601px) {
  body {
    --phone-width: min(390px, calc(100vw - 48px));
    --phone-height: min(844px, calc(100dvh - 48px));
  }
  .device {
    width: var(--phone-width);
    max-width: none;
    height: var(--phone-height);
    min-height: 0;
    max-height: none;
    margin: 24px auto;
    border: 6px solid #1c202b;
    border-radius: 44px;
    box-shadow: 0 0 0 1px #666d7a, 0 18px 50px #17243b26;
  }
  .statusbar { height:54px; padding:0 24px; }
  .island { width:112px; height:32px; top:9px; }
  .home-indicator { height:22px; }
  .sheet {
    width: calc(var(--phone-width) - 12px);
    max-width: none;
    bottom: calc(100dvh - var(--phone-height) - 18px);
    max-height: calc(var(--phone-height) - 90px);
    border-radius: 22px 22px 36px 36px;
    overflow-y: auto;
  }
}
/* On a real phone, including landscape, use its screen instead of a second frame. */
@media (max-width:600px), (max-height:500px) and (pointer:coarse) {
  body { background:#fff; }
  .device {
    width:100%; max-width:100%; height:100dvh; min-height:0; max-height:none;
    margin:0; border:0; border-radius:0; box-shadow:none;
    padding-top:env(safe-area-inset-top);
    padding-left:env(safe-area-inset-left);
    padding-right:env(safe-area-inset-right);
  }
  .statusbar { display:none; }
  .home-indicator { height:env(safe-area-inset-bottom); }
  .home-indicator:after { display:none; }
  .sheet {
    width:100%; max-width:100%; bottom:0; max-height:85dvh;
    border-radius:20px 20px 0 0;
    padding-bottom:calc(24px + env(safe-area-inset-bottom));
    padding-left:max(16px, env(safe-area-inset-left));
    padding-right:max(16px, env(safe-area-inset-right));
  }
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
