.lesson-ai-fab{
  position:fixed;left:max(12px,env(safe-area-inset-left));right:auto;bottom:calc(84px + env(safe-area-inset-bottom));
  z-index:1168;width:52px;height:52px;display:grid;place-items:center;padding:0;border:1px solid rgba(23,179,159,.28);
  border-radius:50%;background:linear-gradient(145deg,#ffffff,#eefaf7);color:#0f806b;box-shadow:0 10px 28px rgba(15,90,91,.18);
  cursor:pointer;font-family:var(--zabanisa-font-fa);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
.lesson-ai-fab:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(15,90,91,.23);border-color:rgba(23,179,159,.46)}
.lesson-ai-fab:focus-visible{outline:3px solid rgba(23,179,159,.2);outline-offset:3px}
.lesson-ai-fab-label{font-size:.78rem;font-weight:1000;letter-spacing:.02em;line-height:1}
.lesson-ai-fab-spark{position:absolute;top:5px;right:6px;color:#d4a83f;font-size:.58rem;line-height:1}
body.pwa-install-card-visible .lesson-ai-fab{bottom:calc(var(--pwa-install-card-clearance,190px) + 58px + env(safe-area-inset-bottom))}
.lesson-ai-modal{position:fixed;inset:0;z-index:1400;display:grid;align-items:end;justify-items:center;font-family:var(--zabanisa-font-fa);direction:rtl}
.lesson-ai-modal[hidden]{display:none!important}
.lesson-ai-backdrop{position:absolute;inset:0;border:0;background:rgba(15,23,42,.34);backdrop-filter:blur(2px);cursor:pointer}
.lesson-ai-sheet{position:relative;z-index:1;width:min(100%,560px);max-height:min(84dvh,760px);overflow:auto;padding:12px 12px calc(14px + env(safe-area-inset-bottom));border:1px solid rgba(203,213,225,.78);border-radius:22px 22px 0 0;background:#fff;box-shadow:0 -18px 55px rgba(15,23,42,.2);animation:lessonAiSheetIn .18s ease-out both}
.lesson-ai-head{position:sticky;top:-12px;z-index:3;display:grid;grid-template-columns:34px minmax(0,1fr) auto 30px;align-items:center;gap:8px;margin:-2px -2px 10px;padding:8px 2px 9px;background:rgba(255,255,255,.97);border-bottom:1px solid #edf2f4;backdrop-filter:blur(10px)}
.lesson-ai-brand-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#e9f8f4;color:#0f806b;font-size:.62rem;font-weight:1000;border:1px solid rgba(23,179,159,.16)}
.lesson-ai-head-copy{display:grid;gap:1px;min-width:0}.lesson-ai-head-copy strong{color:#18263c;font-size:.82rem;font-weight:950;line-height:1.45}.lesson-ai-head-copy span{color:#7a8797;font-size:.57rem;font-weight:730}
.lesson-ai-quota{display:inline-flex;align-items:center;gap:3px;min-height:27px;padding:0 8px;border-radius:999px;background:#f3faf8;border:1px solid #dfeeea;color:#61766f;font-size:.54rem;font-weight:820;white-space:nowrap}.lesson-ai-quota b{color:#0f806b;font-size:.62rem}
.lesson-ai-close{width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:10px;background:#f2f5f7;color:#6b7889;font-size:1.1rem;cursor:pointer}
.lesson-ai-step[hidden],.lesson-ai-gate[hidden]{display:none!important}
.lesson-ai-step-head{display:grid;gap:2px;margin:1px 1px 9px}.lesson-ai-step-head strong{font-size:.78rem;color:#1b2b43;font-weight:950}.lesson-ai-step-head span{font-size:.61rem;color:#7a8798;font-weight:700;line-height:1.6}.lesson-ai-step-head--compact{margin-top:10px}
.lesson-ai-sentence-list{display:grid;gap:7px;max-height:47dvh;overflow:auto;padding:1px 1px 4px;scrollbar-width:thin}
.lesson-ai-sentence-option{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-height:60px;padding:8px 9px;border:1px solid #e3e9ee;border-radius:14px;background:#fff;color:#17243a;text-align:right;cursor:pointer;transition:border-color .14s ease,background .14s ease,transform .14s ease}
.lesson-ai-sentence-option:hover{border-color:rgba(23,179,159,.34);background:#f9fcfb}.lesson-ai-sentence-option:active{transform:translateY(1px)}.lesson-ai-sentence-option:disabled{opacity:.5;cursor:not-allowed}
.lesson-ai-sentence-number{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:#f0f6f5;color:#0f806b;font-size:.61rem;font-weight:950}
.lesson-ai-sentence-copy{display:grid;gap:2px;min-width:0}.lesson-ai-sentence-copy strong{font-size:.69rem;line-height:1.55;color:#1f2f47;text-align:left;unicode-bidi:plaintext;overflow:hidden;text-overflow:ellipsis}.lesson-ai-sentence-copy small{font-size:.58rem;line-height:1.55;color:#788597;font-weight:690;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lesson-ai-playing{align-self:start;margin-top:1px;padding:3px 6px;border-radius:999px;background:#eef8f5;color:#0f806b;font-size:.48rem;font-weight:900;white-space:nowrap}.lesson-ai-playing[hidden]{display:none!important}
.lesson-ai-back-link{border:0;background:transparent;color:#0f806b;padding:2px 0 7px;font:850 .59rem/1.5 inherit;cursor:pointer}
.lesson-ai-selected-sentence{display:grid;gap:3px;padding:9px 10px;border:1px solid #e3ece9;border-radius:13px;background:#f8fcfb}.lesson-ai-selected-sentence strong{font-size:.71rem;line-height:1.6;color:#1d2d45;text-align:left;unicode-bidi:plaintext}.lesson-ai-selected-sentence span{font-size:.59rem;line-height:1.6;color:#718092;font-weight:700}.lesson-ai-selected-sentence--mini{margin-bottom:8px;padding-block:7px}.lesson-ai-selected-sentence--mini strong{font-size:.66rem}
.lesson-ai-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.lesson-ai-topic-grid--single{grid-template-columns:1fr}
.lesson-ai-topic-grid button{min-height:56px;display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:8px;padding:7px 9px;border:1px solid #e2e8ed;border-radius:14px;background:#fff;color:#25374f;text-align:right;font:900 .64rem/1.45 inherit;cursor:pointer}.lesson-ai-topic-grid button:hover{border-color:rgba(23,179,159,.34);background:#f8fcfb}.lesson-ai-topic-grid button:disabled{opacity:.48;cursor:not-allowed}
.lesson-ai-topic-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:#edf8f5;color:#0f806b;font-size:.61rem;font-weight:1000}
.lesson-ai-freeform{display:grid;gap:7px}.lesson-ai-freeform textarea{width:100%;min-height:92px;resize:vertical;box-sizing:border-box;padding:10px 11px;border:1px solid #dde5ea;border-radius:13px;background:#fff;color:#23344d;font:740 .68rem/1.8 inherit;outline:0}.lesson-ai-freeform textarea:focus{border-color:rgba(23,179,159,.48);box-shadow:0 0 0 3px rgba(23,179,159,.08)}.lesson-ai-freeform textarea::placeholder{color:#98a3b0}
.lesson-ai-freeform-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}.lesson-ai-freeform-actions>span{color:#909baa;font-size:.52rem;font-weight:800}.lesson-ai-freeform-actions button{min-height:34px;padding:0 15px;border:0;border-radius:10px;background:#0f8f74;color:#fff;font:950 .62rem/1 inherit;cursor:pointer}.lesson-ai-freeform-actions button:disabled{opacity:.45;cursor:not-allowed}
.lesson-ai-status{min-height:120px;display:grid;place-items:center;align-content:center;gap:9px;text-align:center;padding:18px 12px}.lesson-ai-status p{margin:0;color:#647488;font-size:.65rem;line-height:1.7;font-weight:760}.lesson-ai-spinner{width:26px;height:26px;border-radius:50%;border:3px solid #dceee9;border-top-color:#0f8f74;animation:lessonAiSpin .72s linear infinite}.lesson-ai-status-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#fff5f1;color:#a9604d;border:1px solid #f0ded7;font-weight:1000}
.lesson-ai-answer{padding:2px 1px 0}.lesson-ai-answer-badge{display:flex;align-items:center;gap:5px;margin-bottom:7px;color:#0f806b;font-size:.58rem;font-weight:950}.lesson-ai-answer-badge span{display:grid;place-items:center;min-width:23px;height:19px;padding:0 5px;border-radius:6px;background:#0f8f74;color:#fff;font-size:.47rem}.lesson-ai-answer-main{margin:0;padding:10px 11px;border:1px solid #deece8;border-radius:13px;background:#f7fcfa;color:#26374f;font-size:.72rem;line-height:1.9;font-weight:760}.lesson-ai-answer-point{margin:7px 0 0;padding:8px 9px;border:1px solid #e5ebef;border-radius:11px;background:#fff;color:#42556e;font-size:.63rem;line-height:1.75;font-weight:760}.lesson-ai-example{margin-top:7px;display:grid;gap:2px;padding:8px 9px;border:1px solid #e5ebef;border-radius:11px;background:#fff}.lesson-ai-example strong{color:#23344c;font-size:.67rem;line-height:1.6;text-align:left;unicode-bidi:plaintext}.lesson-ai-example span{color:#6c798a;font-size:.59rem;line-height:1.65;font-weight:700}
.lesson-ai-answer-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.lesson-ai-answer-actions button{min-height:32px;padding:0 11px;border:1px solid #dce6e3;border-radius:10px;background:#fff;color:#40556c;font:850 .57rem/1 inherit;cursor:pointer}.lesson-ai-answer-actions button:hover{border-color:rgba(23,179,159,.32);background:#f8fcfb}
.lesson-ai-feedback{margin-top:9px;padding-top:8px;border-top:1px solid #e8eeec;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.lesson-ai-feedback[hidden]{display:none!important}.lesson-ai-feedback>span{color:#6d7a8a;font-size:.56rem;font-weight:800}.lesson-ai-feedback-actions{display:flex;gap:5px}.lesson-ai-feedback-actions button{height:29px;padding:0 8px;border:1px solid #dfe7e5;border-radius:9px;background:#fff;color:#4b5f74;font:800 .54rem/1 inherit;cursor:pointer}.lesson-ai-feedback-actions button.is-selected{background:#edf9f6;border-color:rgba(15,143,116,.34);color:#0f806b}.lesson-ai-feedback small{width:100%;color:#7c8998;font-size:.52rem}
.lesson-ai-error{padding-top:22px}.lesson-ai-error .lesson-ai-answer-actions{justify-content:center}
.lesson-ai-gate{display:grid;justify-items:center;text-align:center;gap:7px;padding:18px 12px 12px}.lesson-ai-gate-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(145deg,#e8f7f3,#f4f7ff);color:#0f806b;border:1px solid rgba(23,179,159,.18);font-size:.72rem;font-weight:1000}.lesson-ai-gate strong{color:#203149;font-size:.78rem;font-weight:950}.lesson-ai-gate p{max-width:330px;margin:0;color:#748194;font-size:.62rem;line-height:1.75;font-weight:700}.lesson-ai-gate-action{margin-top:4px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;padding:0 16px;border-radius:11px;background:#0f8f74;color:#fff;text-decoration:none;font-size:.62rem;font-weight:950}
body.lesson-ai-open{overflow:hidden!important}

/* Existing contextual dictionary AI keeps the same visual language. */
.dictionary-ai-context-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:5px;border-color:rgba(15,143,116,.20)!important;background:#f6fbfa!important;color:#0f806b!important}.dictionary-ai-context-btn[hidden]{display:none!important}.dictionary-ai-context-btn>span{font-size:.60rem;font-weight:950}.dictionary-ai-context-result[hidden]{display:none!important}.dictionary-ai-context-result{margin-top:9px}.dictionary-ai-context-card{display:grid;gap:6px;padding:9px 10px;border:1px solid rgba(15,143,116,.14);border-radius:12px;background:#f7fcfa}.dictionary-ai-context-card.is-error{border-color:#f1dfd7;background:#fff8f5}.dictionary-ai-context-kicker{display:flex;align-items:center;gap:5px;color:#0f806b;font-size:.59rem;font-weight:950}.dictionary-ai-context-kicker span{display:inline-grid;place-items:center;min-width:22px;height:18px;padding:0 5px;border-radius:6px;background:#0f8f74;color:#fff;font-size:.47rem}.dictionary-ai-context-term{display:block;color:#1e2d45;font-size:.80rem;line-height:1.5;text-align:left;unicode-bidi:plaintext}.dictionary-ai-context-meaning{margin:0;color:#263951;font-size:.71rem;line-height:1.85;font-weight:850}.dictionary-ai-context-note,.dictionary-ai-context-status{margin:0;color:#637288;font-size:.63rem;line-height:1.75;font-weight:720}.dictionary-ai-context-example{display:grid;gap:2px;padding:6px 8px;border-radius:9px;background:#fff;border:1px solid #e4eeeb}.dictionary-ai-context-example strong{color:#24354e;font-size:.66rem;line-height:1.6;text-align:left;unicode-bidi:plaintext}.dictionary-ai-context-example span{color:#6c798b;font-size:.59rem;line-height:1.65;font-weight:700}.dictionary-ai-context-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:1px}.dictionary-ai-context-actions button{min-height:29px;border:1px solid #dce9e5;border-radius:9px;background:#fff;color:#385268;padding:0 9px;font:850 .57rem/1 inherit;cursor:pointer}.dictionary-ai-context-actions button:hover{background:#f8fcfb;border-color:rgba(15,143,116,.28)}.dictionary-ai-context-actions button:disabled{opacity:.55;cursor:wait}.dictionary-ai-context-feedback{display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding-top:6px;border-top:1px solid #e1eeea}.dictionary-ai-context-feedback>span{color:#6c7888;font-size:.55rem;font-weight:780}.dictionary-ai-context-feedback button{width:29px;height:25px;border:1px solid #dfe8e5;border-radius:8px;background:#fff;cursor:pointer;padding:0;font-size:.64rem}.dictionary-ai-context-feedback button.is-selected{background:#edf9f6;border-color:rgba(15,143,116,.34)}.dictionary-ai-context-feedback button:disabled{opacity:.5;cursor:wait}.dictionary-ai-context-feedback small{width:100%;color:#7b8797;font-size:.52rem;line-height:1.5;font-weight:700}

@keyframes lessonAiSpin{to{transform:rotate(360deg)}}
@keyframes lessonAiSheetIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:760px){.lesson-ai-modal{align-items:center;padding:18px}.lesson-ai-sheet{border-radius:22px;max-height:min(82vh,720px)}.lesson-ai-fab{bottom:24px}}
@media(max-width:560px){.lesson-ai-fab{left:max(10px,env(safe-area-inset-left));bottom:calc(78px + env(safe-area-inset-bottom));width:50px;height:50px}.lesson-ai-sheet{padding-inline:10px}.lesson-ai-head{grid-template-columns:32px minmax(0,1fr) auto 29px;gap:6px}.lesson-ai-brand-icon{width:32px;height:32px}.lesson-ai-head-copy strong{font-size:.76rem}.lesson-ai-head-copy span{font-size:.53rem}.lesson-ai-quota{padding-inline:6px;font-size:.49rem}.lesson-ai-topic-grid{gap:6px}.lesson-ai-topic-grid button{min-height:54px;padding-inline:8px}.lesson-ai-sentence-list{max-height:50dvh}}
@media(prefers-reduced-motion:reduce){.lesson-ai-fab,.lesson-ai-sheet,.lesson-ai-spinner{transition:none!important;animation:none!important}}
