/* Ejaaba Pro: isolate every selector; legacy Ejaaba header/dock stay intact. */
.ej-pro-page{direction:rtl;min-width:0;max-width:100%;box-sizing:border-box;margin:0 auto 15px;
 background:#fff;border:1px solid #d7e4f3;box-shadow:0 4px 22px rgba(28,65,113,.08);
 color:#253b54;font-family:inherit;overflow:hidden}
.ej-pro-page *,.ej-pro-dialog *{box-sizing:border-box}
.ej-pro-page button,.ej-pro-dialog button{font-family:inherit;cursor:pointer}
.ej-pro-visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.ej-pro-hero{position:relative;display:flex;gap:20px;align-items:center;min-height:172px;
 padding:22px 23px;overflow:hidden;color:#fff;
 background:radial-gradient(circle at 8% 90%,rgba(34,171,234,.32),transparent 38%),
 linear-gradient(116deg,#122947 0%,#0a1630 62%,#172b52 100%)}
.ej-pro-hero:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.42;
 background-image:radial-gradient(#fff 0.6px,transparent 0.6px);
 background-size:23px 23px;mask-image:linear-gradient(90deg,transparent 30%,black)}
.ej-pro-orbit{position:relative;z-index:1;flex:0 0 110px;width:110px;height:110px;
 display:grid;place-items:center;border:1px solid rgba(242,204,115,.5);
 border-radius:100%;background:radial-gradient(circle,#235895 0%,#0e213f 72%);
 box-shadow:0 0 28px rgba(55,169,255,.25),inset 0 0 24px rgba(25,96,177,.35)}
.ej-pro-orbit:after{content:"";position:absolute;inset:-8px;border:1px dashed rgba(242,204,115,.55);
 border-radius:50%;animation:ejpro-orbit 50s linear infinite}
.ej-pro-orbit img{width:69px;height:69px;object-fit:contain;filter:drop-shadow(0 0 7px rgba(130,199,255,.3))}
@keyframes ejpro-orbit{to{transform:rotate(360deg)}}
.ej-pro-hero-copy{position:relative;z-index:1;min-width:0;flex:1}
.ej-pro-eyebrow{font-size:11px;color:#bed6f7;letter-spacing:.1px;font-weight:700}
.ej-pro-spark{color:#f3cf7d;font-size:18px;vertical-align:middle}
.ej-pro-hero h1{font-size:clamp(25px,4vw,36px);margin:5px 0;color:white;line-height:1.35;font-weight:800}
.ej-pro-hero h1 span,.ej-pro-dialog h2 span{color:#f6d07b}
.ej-pro-hero p{color:#e3edfc;font-size:12px;line-height:1.9;margin:7px 0}
.ej-pro-status{display:flex;align-items:center;flex-wrap:wrap;gap:7px;color:#c6d7eb;font-size:10px}
.ej-pro-dot{display:inline-block;width:7px;height:7px;background:#7ad8c5;border-radius:50%;box-shadow:0 0 10px #7ad8c5}
.ej-pro-separator{color:#e2bd67}
.ej-pro-info{position:absolute;z-index:2;left:12px;top:11px;display:inline-flex;align-items:center;
 gap:4px;padding:6px 10px;font-size:11px;border-radius:5px;border:1px solid #527196;
 background:#1e395c;color:#f4d183}
.ej-pro-info:hover,.ej-pro-info:focus-visible{background:#2c527e}
.ej-pro-toolbar{display:flex;align-items:end;flex-wrap:wrap;gap:12px;padding:13px 16px;
 border-bottom:1px solid #e0eaf5;background:linear-gradient(#f9fbff,#f1f6fc)}
.ej-pro-toolbar label{font-size:11px;color:#335b83;font-weight:700;min-width:170px;flex:0 1 230px}
.ej-pro-toolbar select{display:block;max-width:100%;width:100%;margin-top:4px;
 background:#fff;color:#1d4c79;border:1px solid #b8cee5;border-radius:5px;
 padding:9px 10px;font-size:12px;height:38px;direction:rtl}
.ej-pro-toolbar select:focus-visible{outline:2px solid #6da1e2;outline-offset:2px}
.ej-pro-model-note{flex:1;min-width:130px;font-size:10px;color:#667c93;line-height:1.8}
.ej-pro-clear{border:1px solid #c6d6e8;border-radius:5px;background:#fff;
 color:#35698f;padding:8px 11px;font-size:11px;white-space:nowrap}
.ej-pro-chat{display:flex;flex-direction:column;gap:16px;padding:19px 18px;
 min-height:285px;height:min(52vh,525px);overflow:auto;overscroll-behavior:contain;background:
 radial-gradient(circle at left bottom,#f2f8ff 0,transparent 42%),#fff}
.ej-pro-message{display:flex;align-items:flex-start;gap:9px;max-width:95%;min-width:0}
.ej-pro-avatar{display:grid;place-items:center;flex:0 0 33px;width:33px;height:33px;
 color:#f7d180;background:#17395e;border:1px solid #c19c58;border-radius:50%;font-size:17px}
.ej-pro-message-main{min-width:0;max-width:100%;padding:12px 15px;background:#f2f6fc;
 border:1px solid #dae7f5;border-radius:12px 12px 3px 12px;font-size:13px;
 line-height:1.95;color:#334458;word-break:break-word}
.ej-pro-message-main>strong{display:block;color:#205990;font-size:12px;margin-bottom:4px}
.ej-pro-message-main>strong small{color:#7b91a8;font-size:10px;font-weight:500}
.ej-pro-message-main p{white-space:pre-wrap;margin:0;line-height:1.95}
.ej-pro-user{align-self:flex-end;flex-direction:row-reverse;margin-inline-start:auto}
.ej-pro-user .ej-pro-avatar{background:#d2e5fa;color:#245c91;border-color:#9fbddc;font-size:14px}
.ej-pro-user .ej-pro-message-main{background:#e6f2fe;color:#1c4b75;border-color:#bcd7ef;
 border-radius:12px 12px 12px 3px}
.ej-pro-sources{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px;border-top:1px solid #dce7f1;padding-top:9px}
.ej-pro-sources strong{width:100%;font-size:10px;font-weight:700;color:#667b91}
.ej-pro-sources a{font-size:10px;padding:2px 7px;color:#245f99;background:white;border:1px solid #c5daed;
 text-decoration:none;border-radius:13px;overflow-wrap:anywhere}
.ej-pro-sources a:hover{text-decoration:underline}
.ej-pro-feedback{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:10px;padding-top:9px;border-top:1px solid #dce7f1}
.ej-pro-feedback>span{font-size:10px;color:#687d94}
.ej-pro-vote{font-size:14px!important;border:1px solid #c9d9ea;border-radius:5px;padding:4px 9px;
 background:#fff;color:#356d9f;min-width:34px}
.ej-pro-vote[aria-pressed="true"]{background:#d8ebfb;color:#134c80;border-color:#75a3d1}
.ej-pro-feedback-note{width:100%;display:none;margin-top:2px}
.ej-pro-feedback-note.is-open{display:flex;flex-wrap:wrap;gap:6px}
.ej-pro-feedback-note textarea{flex:1 1 200px;min-width:0;resize:vertical;max-height:100px;
 border:1px solid #cbdbeb;border-radius:4px;padding:6px;font:11px/1.7 inherit;color:#314b63}
.ej-pro-feedback-note button{background:#285c90;color:#fff;border:0;border-radius:4px;
 padding:7px 10px;font-size:11px}
.ej-pro-feedback-status{width:100%;font-size:10px;color:#407b64}
.ej-pro-pending .ej-pro-message-main{color:#5c7289}
.ej-pro-loading{display:inline-flex;gap:5px;margin-inline-start:7px;vertical-align:middle}
.ej-pro-loading i{display:block;width:5px;height:5px;border-radius:50%;background:#4e87bd;
 animation:ejpro-blink .95s infinite alternate}
.ej-pro-loading i:nth-child(2){animation-delay:.2s}
.ej-pro-loading i:nth-child(3){animation-delay:.4s}
@keyframes ejpro-blink{to{opacity:.25;transform:translateY(-3px)}}
.ej-pro-prompts{display:flex;flex-wrap:wrap;gap:7px;padding:11px 16px 3px;background:#fff}
.ej-pro-prompts button{font-size:11px;color:#315e89;background:#f6f9fe;
 border:1px solid #d1e1f1;border-radius:16px;padding:6px 10px}
.ej-pro-prompts button:hover{border-color:#7ea7cf;background:#e6f2fc}
.ej-pro-composer{display:flex;align-items:end;gap:8px;padding:12px 15px}
.ej-pro-composer textarea{display:block;flex:1;min-width:0;max-height:145px;min-height:53px;
 border:1px solid #bfd2e8;border-radius:7px;padding:11px 12px;
 font-family:inherit;font-size:13px;line-height:1.75;background:#fff;color:#183a58;resize:vertical;direction:rtl}
.ej-pro-composer textarea:focus{outline:2px solid #a5c9ef;border-color:#5a8ebf}
.ej-pro-composer button{display:flex;align-items:center;justify-content:center;gap:5px;
 min-width:85px;height:48px;border:0;border-radius:6px;background:linear-gradient(130deg,#205997,#163e6f);
 color:#fff;font-size:12px;font-weight:700}
.ej-pro-composer button:disabled{opacity:.55;cursor:wait}
.ej-pro-composer button b{font-size:18px}
.ej-pro-footnote{font-size:10px;line-height:1.9;color:#60778d;margin:0;padding:0 16px 9px}
.ej-pro-footnote a{color:#27659d;font-weight:700;text-decoration:underline}
.ej-pro-privacy{font-size:10px;line-height:1.85;padding:10px 16px;border-top:1px solid #e2ebf5;
 color:#547288;background:#f7fafc}
.ej-pro-privacy span{margin-inline-end:5px}
.ej-pro-dialog{border:1px solid #94b8d7;box-shadow:0 22px 70px rgba(2,17,41,.55);
 border-radius:12px;padding:0;width:min(94vw,700px);max-height:89svh;overflow-y:auto;
 background:#fff;color:#1d3d5e;direction:rtl;font-family:inherit}
.ej-pro-dialog::backdrop{background:rgba(3,13,28,.78);backdrop-filter:blur(5px)}
.ej-pro-dialog-glow{height:88px;background:radial-gradient(circle at center,#2b78bd,#0b1937 70%);
 display:grid;place-items:center;color:#f4cf77;font-size:50px;text-shadow:0 0 24px #f5d285}
.ej-pro-dialog-inner{padding:22px 27px 25px;text-align:center}
.ej-pro-dialog-kicker{color:#7f6b43;font-size:10px;letter-spacing:1.5px;font-weight:700}
.ej-pro-dialog h2{margin:7px 0;color:#133d68;font-size:25px}
.ej-pro-dialog h2 span{color:#b48624}
.ej-pro-dialog-lead{font-size:12px;color:#506b84;line-height:1.8;margin:8px auto 15px;max-width:540px}
.ej-pro-dialog-warning{text-align:right;border-right:3px solid #bf7d3e;border-radius:5px;
 padding:11px 14px;background:#fff8ec;margin:12px 0;color:#7f4d18}
.ej-pro-dialog-warning strong{font-size:12px}
.ej-pro-dialog-warning p{margin:6px 0 0;line-height:1.95;font-size:11px}
.ej-pro-dialog-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:16px 0}
.ej-pro-dialog-features div{text-align:right;background:#f5f8fc;padding:10px;
 border:1px solid #dee8f4;border-radius:6px;min-width:0}
.ej-pro-dialog-features span{color:#2868a9;font-size:21px;float:right;margin-inline-end:8px}
.ej-pro-dialog-features b{display:block;font-size:11px;color:#1d5587}
.ej-pro-dialog-features small{display:block;font-size:10px;color:#647990;line-height:1.8}
.ej-pro-dialog-links{font-size:11px;color:#64768c;margin:14px 0}
.ej-pro-dialog-links a{color:#21659e;text-decoration:underline}
.ej-pro-enter{display:block;width:100%;padding:12px;border:0;border-radius:7px;
 background:linear-gradient(90deg,#175792,#1e74b1);color:#fff;font-weight:800;font-size:13px}
.ej-pro-enter:focus-visible,.ej-pro-vote:focus-visible,.ej-pro-composer button:focus-visible{outline:3px solid #f7bd60;outline-offset:2px}
.ej-pro-credit{display:block;color:#8290a0;font-size:9px;line-height:1.7;margin-top:11px}
@media(max-width:600px){
 .ej-pro-hero{min-height:170px;padding:42px 12px 15px;gap:10px;align-items:center}
 .ej-pro-orbit{width:76px;height:76px;flex-basis:76px}
 .ej-pro-orbit img{width:48px;height:48px}
 .ej-pro-hero h1{font-size:27px}
 .ej-pro-hero p{font-size:10.5px}
 .ej-pro-eyebrow{font-size:9.5px}
 .ej-pro-status{font-size:9px}
 .ej-pro-info{font-size:10px;padding:5px 8px}
 .ej-pro-toolbar{padding:10px;gap:8px}
 .ej-pro-toolbar label{flex:1 1 200px}
 .ej-pro-model-note{order:3;flex-basis:100%}
 .ej-pro-clear{flex:0 0 auto}
 .ej-pro-chat{padding:12px 8px;gap:12px;height:48vh;min-height:270px}
 .ej-pro-message{max-width:99%;gap:5px}
 .ej-pro-message-main{font-size:11px;line-height:1.8;padding:10px 11px}
 .ej-pro-avatar{width:27px;height:27px;flex-basis:27px}
 .ej-pro-prompts{gap:5px;padding:8px 9px 2px}
 .ej-pro-prompts button{font-size:10px}
 .ej-pro-composer{padding:9px}
 .ej-pro-composer button{min-width:66px}
 .ej-pro-composer button b{display:none}
 .ej-pro-footnote,.ej-pro-privacy{padding-inline:10px}
 .ej-pro-dialog-inner{padding:13px 14px 18px}
 .ej-pro-dialog h2{font-size:21px}
 .ej-pro-dialog-features{gap:6px}
 .ej-pro-dialog-features div{padding:8px}
 .ej-pro-dialog-features span{font-size:17px}
}
@media(max-width:360px){.ej-pro-dialog-features{grid-template-columns:1fr}.ej-pro-hero p{line-height:1.6}}
@media(prefers-reduced-motion:reduce){.ej-pro-orbit:after,.ej-pro-loading i{animation:none}}

/* Admin feedback page, stylesheet served from same origin for CSP. */
.ej-pro-admin-totals{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}
.ej-pro-admin-totals div{border:1px solid #d2e3f4;padding:10px;min-width:120px;color:#225b8d}
.ej-pro-admin-totals strong{font-size:20px;display:block}
.ej-pro-admin-list article{padding:9px 12px;border-bottom:1px solid #dde8f2}
.ej-pro-admin-list article p{white-space:pre-wrap;word-break:break-word;margin:4px 0}


/* Real-time locally generated text: caret only, never a prewritten fake answer. */
.ej-pro-type-caret{display:inline-block;vertical-align:baseline;min-width:.55em;
 margin-inline-start:2px;color:#2878bd;font-size:14px;font-weight:800;
 animation:ej-pro-caret-blink .85s steps(1,end) infinite}
.ej-pro-streaming .ej-pro-message-main{border-inline-start:2px solid #7cb2e0}
@keyframes ej-pro-caret-blink{0%,49%{opacity:1}50%,100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.ej-pro-type-caret{animation:none}}

/* Personal account balance prompts are shown only to authenticated members.
   Guest reminder never exposes account facts in the public HTML. */
.ej-pro-prompts .ej-pro-account-note{
 display:inline-flex;align-items:center;align-self:center;
 padding:5px 8px;min-height:28px;font-size:10px;line-height:1.6;
 color:#356f9e!important;text-decoration:underline!important;
 background:#f7faff;border:1px solid #d5e4f3;border-radius:14px;
}
.ej-pro-prompts .ej-pro-account-note:hover{background:#eaf4ff}
