.gr-app{--gr-bg:#f3f6fb;--gr-card:#fff;--gr-text:#172949;--gr-muted:#52647c;--gr-border:#dce4ef;--gr-primary:#334ecc;--gr-tint:#eef1ff;--gr-teal:#0d766e;background:var(--gr-bg);min-height:100vh;color:var(--gr-text);font-family:Arial,sans-serif;line-height:1.6}.gr-app.gr-dark{--gr-bg:#101a2c;--gr-card:#19273e;--gr-text:#edf3ff;--gr-muted:#b3c2d8;--gr-border:#34455f;--gr-primary:#a4b4ff;--gr-tint:#263658;--gr-teal:#7de0ca}.gr-app *{min-width:0}.gr-app button,.gr-app a{touch-action:manipulation}.gr-app button,.gr-back{border:1px solid var(--gr-border);color:var(--gr-text);background:var(--gr-card);border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 15px;font-weight:600;transition:background .15s,border-color .15s,transform .15s;display:inline-flex}.gr-app button:hover:not(:disabled){border-color:var(--gr-primary);background:var(--gr-tint)}.gr-app button:disabled{opacity:.6;cursor:default}.gr-app :is(button,a,input,textarea):focus-visible{outline:3px solid var(--gr-primary);outline-offset:3px}.gr-app .bilingual-copy{white-space:normal;flex-direction:column;gap:3px;display:flex}.gr-app .copy-en{font-size:inherit;line-height:1.5}.gr-app .copy-ar{color:var(--gr-muted);opacity:1;font-size:.9em;line-height:1.7}.gr-app .gr-primary{color:#fff;background:#334ecc;border-color:#334ecc;text-decoration:none}.gr-app .gr-primary:hover:not(:disabled){color:#fff;background:#263da9}.gr-primary .copy-ar{color:#e2e8ff}.gr-topbar{border-bottom:1px solid var(--gr-border);align-items:center;gap:16px;max-width:1440px;margin:auto;padding:20px 36px;display:flex}.gr-brand{color:var(--gr-text);direction:ltr;align-items:center;gap:10px;margin-inline-end:auto;text-decoration:none;display:flex}.gr-brand>span{color:#fff;background:#334ecc;border-radius:12px;place-items:center;width:43px;height:43px;display:grid}.gr-back{font-size:.8rem;text-decoration:none}.gr-app .gr-icon{flex:none;min-width:44px;min-height:44px;padding:10px}.gr-main{max-width:1320px;margin:auto;padding:30px 36px 56px}.gr-preview{color:#5c4611;background:#fff8e3;border:1px solid #d7bd72;border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;padding:12px 18px;font-size:.8rem;display:flex}.gr-preview .copy-ar{color:#6c5316}.gr-hero{justify-content:space-between;align-items:center;gap:28px;padding:10px 0 28px;display:flex}.gr-eyebrow{color:var(--gr-primary);align-items:center;gap:9px;font-size:.8rem;font-weight:700;display:flex}.gr-eyebrow>span:last-child{background:var(--gr-tint);direction:ltr;border-radius:8px;padding:3px 9px}.gr-hero h1{letter-spacing:-.035em;margin:15px 0 12px;font-size:clamp(1.8rem,3.3vw,2.6rem);line-height:1.15}.gr-hero h1 .copy-ar{letter-spacing:0;color:var(--gr-text);margin-top:7px;font-size:.65em;font-weight:600}.gr-hero p{color:var(--gr-muted);font-size:.92rem}.gr-unit{border:1px solid var(--gr-border);background:var(--gr-card);max-width:280px;color:var(--gr-primary);border-radius:18px;gap:9px;padding:20px 22px;font-weight:700;display:grid}.gr-unit>span:last-child{color:var(--gr-muted);font-size:.74rem;font-weight:400}.gr-topics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:24px;display:grid}.gr-topics button{text-align:start;border-radius:16px;justify-content:flex-start;padding:16px 14px}.gr-topic-number{background:var(--gr-tint);color:var(--gr-primary);direction:ltr;border-radius:10px;flex:none;place-items:center;width:31px;height:31px;font-size:.77rem;display:grid}.gr-topics button.is-active{border-color:var(--gr-primary);background:var(--gr-tint);box-shadow:0 3px 14px #334ecc12}.gr-topics .bilingual-copy{flex:1;font-size:.9rem}.gr-content{grid-template-columns:minmax(0,1.7fr) minmax(290px,1fr);align-items:start;gap:24px;display:grid}.gr-lessons,.gr-aside{gap:22px;display:grid}.gr-panel{background:var(--gr-card);border:1px solid var(--gr-border);border-radius:20px;padding:25px;box-shadow:0 4px 16px #1c325007}.gr-section-label{color:var(--gr-primary);align-items:center;gap:9px;margin-bottom:16px;font-size:.83rem;font-weight:700;display:flex}.gr-rule h2{letter-spacing:-.02em;margin:0 0 14px;font-size:1.65rem}.gr-rule h2 .copy-ar{font-size:.65em}.gr-rule>p{font-size:.97rem}.gr-rule>p .copy-ar{color:var(--gr-text);margin-top:7px;font-size:1.05rem;line-height:1.9}.gr-example{border-inline-start:3px solid var(--gr-teal);background:var(--gr-bg);border-radius:8px;gap:5px;margin-top:19px;padding:12px 16px;display:grid}.gr-example bdi{text-align:left;font-size:1.16rem;font-weight:700}.gr-example>span{color:var(--gr-muted)}.gr-visual{background:var(--gr-tint);border:1px solid var(--gr-border);border-radius:20px;padding:24px}.gr-visual-label{color:var(--gr-primary);align-items:center;gap:8px;font-size:.8rem;display:flex}.gr-scene{direction:ltr;justify-content:center;align-items:center;gap:20px;padding:28px 10px;display:flex}.gr-person,.gr-object{justify-items:center;gap:8px;display:grid}.gr-person>span{font-size:3.5rem;line-height:1.2}.gr-person>b,.gr-object>span{font-size:.9rem}.gr-object{color:var(--gr-primary)}.gr-connector{background:var(--gr-card);color:var(--gr-primary);border-radius:12px;padding:9px 19px;font-size:1.5rem;font-weight:800;box-shadow:0 3px 12px #334ecc15}.gr-live-sentence{text-align:center;margin-bottom:22px;font-size:1.32rem;font-weight:700}.gr-live-sentence .copy-ar{font-size:.8em;font-weight:400}.gr-visual fieldset{border:0;margin:0;padding:0}.gr-visual legend{color:var(--gr-muted);margin-bottom:10px;font-size:.75rem}.gr-chips{flex-wrap:wrap;gap:8px;display:flex}.gr-chips button{flex:1;min-width:55px;padding:8px 12px;font-size:.85rem}.gr-chips button[aria-pressed=true]{color:#fff;background:#334ecc;border-color:#334ecc}.gr-chips button[aria-pressed=true] .copy-ar{color:#e2e8ff}.gr-practice{scroll-margin-top:22px}.gr-modes{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.gr-modes button{padding:10px 6px;font-size:.82rem}.gr-modes button[aria-pressed=true]{background:var(--gr-tint);border-color:var(--gr-primary);color:var(--gr-primary)}.gr-practice-start{text-align:center;color:var(--gr-muted);justify-items:center;gap:22px;padding:32px 5px 12px;display:grid}.gr-question{padding-top:22px}.gr-question-meta{color:var(--gr-muted);justify-content:space-between;align-items:center;gap:12px;font-size:.75rem;display:flex}.gr-question-meta bdi{flex:none}.gr-meter{background:var(--gr-border);direction:ltr;border-radius:9px;height:5px;margin:12px 0 20px;overflow:hidden}.gr-meter>span{background:var(--gr-teal);height:100%;transition:width .2s;display:block}.gr-instruction{color:var(--gr-muted);margin-bottom:18px;font-size:.78rem}.gr-question-text{letter-spacing:0;text-align:left;overflow-wrap:anywhere;font-size:1.55rem;line-height:1.55}.gr-translation{color:var(--gr-muted);margin:12px 0 22px;font-size:.96rem}.gr-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.gr-options button{overflow-wrap:anywhere;min-height:70px;font-size:1.05rem}.gr-options button[aria-pressed=true]{background:var(--gr-tint);border-color:var(--gr-primary)}.gr-options .copy-ar{font-size:.72em}.gr-question-actions{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.gr-feedback{border-radius:12px;margin-top:18px;padding:14px;font-size:.9rem}.gr-feedback.correct{color:#17563e;background:#dff5ec}.gr-feedback.retry{color:#604517;background:#fff3d6}.gr-feedback .copy-ar{color:inherit}.gr-feedback p{margin-top:10px}.gr-flashcard{gap:15px;display:grid}.gr-flashcard>button:first-child{background:var(--gr-tint);flex-direction:column;min-height:135px;font-size:1.25rem;display:flex}.gr-complete{text-align:center;justify-items:center;gap:12px;padding:32px 4px;display:grid}.gr-complete>span:first-child{color:var(--gr-teal)}.gr-complete strong{color:var(--gr-primary);font-size:2.5rem}.gr-complete p{color:var(--gr-muted);font-size:.85rem}.gr-chat{background:linear-gradient(160deg,var(--gr-card) 60%,var(--gr-tint));border-top:3px solid var(--gr-primary)}.gr-ai-dot{background:var(--gr-teal);border-radius:50%;width:7px;height:7px;margin-inline-start:auto}.gr-chat-intro{margin-bottom:20px;font-size:1.05rem;font-weight:700}.gr-chat-messages{overscroll-behavior:contain;flex-direction:column;gap:12px;max-height:480px;display:flex;overflow:auto}.gr-bubble{overflow-wrap:anywhere;border-radius:15px;padding:14px;font-size:.88rem}.gr-bubble.user{background:var(--gr-primary);color:var(--gr-card);margin-inline-start:20px}.gr-bubble.user .copy-ar{color:inherit}.gr-bubble.assistant{background:var(--gr-bg);border:1px solid var(--gr-border);margin-inline-end:10px}.gr-bubble.assistant .copy-ar{color:var(--gr-text);font-size:1rem}.gr-ai-example{border-top:1px solid var(--gr-border);margin-top:10px;padding-top:10px}.gr-suggestions{flex-wrap:wrap;gap:7px;margin:18px 0;display:flex}.gr-suggestions button{text-align:start;border-radius:10px;justify-content:flex-start;padding:7px 9px;font-size:.74rem}.gr-chat form{gap:9px;display:grid}.gr-chat textarea{border:1px solid var(--gr-border);background:var(--gr-card);color:var(--gr-text);resize:vertical;border-radius:12px;width:100%;min-height:95px;padding:12px}.gr-chat-note{color:var(--gr-muted);margin-top:15px;font-size:.72rem}.gr-thinking{color:var(--gr-primary);align-items:center;gap:8px;padding:10px;font-size:.8rem;display:flex}.gr-progress p{color:var(--gr-muted);font-size:.85rem}.gr-progress-row{border-bottom:1px solid var(--gr-border);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;font-size:.8rem;display:flex}.gr-progress-row:last-child{border-bottom:0}.gr-progress-row bdi{color:var(--gr-primary);flex:none;font-weight:700}.gr-alert{color:#7f202b;background:#fff0f0;border:1px solid #e4abab;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px;padding:12px 18px;display:flex}.gr-alert .copy-ar{color:inherit}.gr-toast{color:#fff;z-index:50;background:#165b48;border-radius:14px;align-items:center;gap:12px;max-width:90vw;padding:12px 20px;display:flex;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #0002}.gr-toast .copy-ar{color:#e4fff4}.gr-footer{color:var(--gr-muted);border-top:1px solid var(--gr-border);justify-content:center;align-items:center;gap:18px;padding:20px;font-size:.74rem;display:flex}.gr-loading{justify-content:center;align-items:center;gap:15px;min-height:50vh;display:flex}.gr-entry{text-align:center;justify-items:center;gap:20px;max-width:580px;margin:60px auto;display:grid}.gr-entry h1{font-size:2rem}.grammar-entry-link{color:#283da4;background:#eef1ff;border:1px solid #c8d2f2;border-radius:10px;align-items:center;gap:8px;padding:9px 14px;font-size:.85rem;text-decoration:none;display:inline-flex}.grammar-entry-link .bilingual-copy{display:grid}.grammar-entry-link .copy-ar{font-size:.8em}.tw-topbar .grammar-entry-link{flex:none;font-size:.8rem}.tw-topbar .grammar-entry-link .copy-ar{font-size:inherit}@media (max-width:1000px){.gr-main{padding:24px}.gr-topbar{padding:16px 24px}.gr-content{grid-template-columns:minmax(0,1.4fr) minmax(275px,1fr);gap:18px}.gr-panel{padding:20px}.gr-topics{gap:8px}.gr-topics button{gap:7px;padding:12px 9px}.gr-topic-number{width:25px;height:25px}.gr-topics .bilingual-copy{font-size:.8rem}}@media (max-width:760px){.gr-topbar{flex-wrap:wrap;gap:8px;padding:12px 15px}.gr-brand{font-size:.86rem}.gr-back{padding:7px 10px;font-size:.67rem}.gr-main{padding:20px 15px 35px}.gr-hero{flex-direction:column;align-items:flex-start;gap:20px;padding-bottom:22px}.gr-hero h1{font-size:2rem}.gr-unit{grid-template-columns:auto 1fr;gap:6px 13px;width:100%;max-width:none;padding:14px 17px}.gr-unit>span:last-child{grid-column:2}.gr-topics{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:18px}.gr-topics button{padding:14px 11px}.gr-topics .bilingual-copy{font-size:.85rem}.gr-content{grid-template-columns:1fr;gap:20px}.gr-aside{grid-template-columns:1fr}.gr-panel{padding:20px}.gr-scene{gap:18px;padding:25px 3px}.gr-chat-messages{max-height:400px}.gr-preview{font-size:.75rem}.gr-preview>span:last-child{width:100%}.gr-question-text{font-size:1.35rem}.gr-options{gap:7px}.gr-options button{padding:10px 6px;font-size:.9rem}.gr-modes button{flex-direction:column;font-size:.78rem}.gr-topbar .gr-icon{min-width:38px;min-height:38px;padding:8px}.gr-back .copy-en{display:none}.gr-back .copy-ar{font-size:1rem}.gr-example bdi{font-size:1.05rem}.gr-back svg{display:none}}@media (prefers-reduced-motion:reduce){.gr-app *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (max-width:760px){.gr-topbar{flex-wrap:nowrap}.gr-brand>span{width:35px;height:35px}.gr-brand b{font-size:.76rem}.gr-brand{gap:7px}.gr-back{padding:7px 9px}.gr-back .copy-ar{font-size:.85rem}}
