/* ThiqahTechOmanAI widget */

/* isolation from theme styles */
.ttai{position:fixed;bottom:22px;right:22px;z-index:2147483000;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Tahoma,Arial,sans-serif;font-size:15px;line-height:1.5;color:#0f172a;-webkit-font-smoothing:antialiased;}
.ttai *,.ttai *::before,.ttai *::after{box-sizing:border-box;}
:where(.ttai) button,:where(.ttai) textarea,:where(.ttai) input{all:unset;box-sizing:border-box;font:inherit;color:inherit;}
:where(.ttai) p,:where(.ttai) ul,:where(.ttai) ol,:where(.ttai) h3,:where(.ttai) h4{margin:0;padding:0;}
:where(.ttai) svg{display:block;max-width:none;}
.ttai [hidden]{display:none !important;}
.ttai-pos-left{right:auto;left:22px;}

/* launcher (3D orb) */
.ttai-launcher{position:relative;display:grid;place-items:center;width:62px;height:62px;border-radius:50%;cursor:pointer;background:radial-gradient(120% 120% at 30% 20%,#d7f0f2 0%,#0e7c86 38%,#09545b 100%);color:#ffffff;box-shadow:0 18px 40px -10px rgba(14,124,134,.45),0 6px 14px -4px rgba(15,23,42,.35),inset 0 2px 3px rgba(255,255,255,.45),inset 0 -6px 12px rgba(0,0,0,.22);transition:transform .35s cubic-bezier(.2,.9,.3,1.3),box-shadow .3s;animation:ttai-float 4.5s ease-in-out infinite;}
.ttai-launcher:hover{transform:translateY(-3px) scale(1.06) rotate(-4deg);}
.ttai-launcher:active{transform:scale(.94);}
.ttai-launcher:focus-visible{outline:3px solid #ffffff;outline-offset:3px;}
.ttai-launcher::before{content:"";position:absolute;top:7%;left:18%;width:46%;height:30%;border-radius:50%;background:linear-gradient(180deg,rgba(255,255,255,.75),rgba(255,255,255,0));filter:blur(1px);pointer-events:none;}
.ttai-launcher svg{width:46%;height:46%;filter:drop-shadow(0 2px 3px rgba(0,0,0,.25));transition:transform .4s;}
.ttai-launcher-ring{position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(14,124,134,.45);animation:ttai-pulse 2.6s ease-out infinite;pointer-events:none;}
.ttai-launcher-badge{position:absolute;top:2px;right:2px;width:14px;height:14px;border-radius:50%;background:#f59e0b;border:2px solid #ffffff;box-shadow:0 2px 6px rgba(0,0,0,.25);}
.ttai-open .ttai-launcher{animation:none;}
.ttai-open .ttai-launcher svg{transform:rotate(90deg) scale(.9);}
.ttai-open .ttai-launcher-ring,.ttai-open .ttai-launcher-badge{display:none;}

/* 3D robot launcher */
.ttai .ttai-launcher-robot{background:radial-gradient(120% 120% at 30% 20%,#ffffff 0%,#f1f4f8 45%,#cfd6e0 100%);}
.ttai .ttai-launcher-robot svg.ttai-robot{width:92%;height:92%;margin-top:-2px;filter:drop-shadow(0 3px 4px rgba(11,29,69,.35));}
.ttai .ttai-launcher-robot::before{opacity:.6;}
.ttai .ttai-launcher-robot .ttai-launcher-badge{background:#22c55e;}
.ttai-open .ttai-launcher-robot svg.ttai-robot{transform:scale(.9) rotate(-8deg);}
.ttai-eyes{transform-box:fill-box;transform-origin:center;animation:ttai-blink 4.5s infinite;}
.ttai-antenna{animation:ttai-glow 2.4s ease-in-out infinite;}
@keyframes ttai-blink{0%,92%,100%{transform:scaleY(1);}95%{transform:scaleY(.12);}}
@keyframes ttai-glow{0%,100%{opacity:1;}50%{opacity:.55;}}

/* panel (glass card) */
.ttai-panel{position:absolute;bottom:80px;right:0;width:400px;height:min(640px,calc(100vh - 120px));display:flex;flex-direction:column;border-radius:24px;overflow:hidden;background:rgba(255,255,255,.82);-webkit-backdrop-filter:blur(22px) saturate(170%);backdrop-filter:blur(22px) saturate(170%);border:1px solid rgba(255,255,255,.65);box-shadow:0 40px 80px -24px rgba(15,23,42,.45),0 12px 28px -12px rgba(15,23,42,.25),inset 0 1px 0 rgba(255,255,255,.8);transform-origin:bottom right;transform:perspective(1200px) translateY(24px) rotateX(10deg) scale(.92);opacity:0;visibility:hidden;transition:transform .45s cubic-bezier(.2,.9,.25,1.1),opacity .3s,visibility 0s .45s;}
.ttai-pos-left .ttai-panel{right:auto;left:0;transform-origin:bottom left;}
.ttai-open .ttai-panel{transform:perspective(1200px) translateY(0) rotateX(0) scale(1);opacity:1;visibility:visible;transition:transform .45s cubic-bezier(.2,.9,.25,1.1),opacity .3s,visibility 0s;}
.ttai-expanded .ttai-panel{width:min(760px,calc(100vw - 44px));height:min(820px,calc(100vh - 120px));}

/* header */
.ttai-head{position:relative;padding:16px 16px 0;background:linear-gradient(135deg,#0e7c86 0%,#09545b 100%);color:#ffffff;overflow:hidden;}
.ttai-head::after{content:"";position:absolute;top:-60%;right:-20%;width:70%;height:180%;background:radial-gradient(closest-side,rgba(255,255,255,.22),rgba(255,255,255,0));pointer-events:none;}
.ttai-head-row{position:relative;z-index:1;display:flex;align-items:center;gap:12px;}
.ttai-avatar{flex:none;width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:radial-gradient(120% 120% at 30% 20%,#ffffff 0%,#d7f0f2 40%,#f59e0b 100%);box-shadow:0 8px 16px -6px rgba(0,0,0,.35),inset 0 1px 2px rgba(255,255,255,.9);transform:rotate(-6deg);overflow:hidden;}
.ttai-avatar img{width:100%;height:100%;object-fit:contain;padding:5px;background:#ffffff;}
.ttai-avatar svg{width:22px;height:22px;color:#0f172a;}
.ttai-title{flex:1;min-width:0;}
.ttai-title strong{display:block;font-size:16px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ttai-status{display:flex;align-items:center;gap:6px;font-size:12px;opacity:.9;}
.ttai-status i{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.3);}
.ttai-iconbtn{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;cursor:pointer;color:#ffffff;background:rgba(255,255,255,.14);transition:background .2s,transform .2s;}
.ttai-iconbtn:hover{background:rgba(255,255,255,.26);transform:translateY(-1px);}
.ttai-iconbtn:focus-visible{outline:2px solid #ffffff;outline-offset:2px;}
.ttai-iconbtn svg{width:17px;height:17px;}

/* tabs */
.ttai-tabs{position:relative;z-index:1;display:flex;gap:6px;margin-top:14px;padding:5px;border-radius:14px 14px 0 0;background:rgba(255,255,255,.14);}
.ttai-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 10px;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;color:rgba(255,255,255,.9);transition:background .25s,color .25s;}
.ttai-tab svg{width:15px;height:15px;}
.ttai-tab[aria-selected=true]{background:#ffffff;color:#0e7c86;box-shadow:0 6px 14px -6px rgba(0,0,0,.35);}

/* body + views */
.ttai-body{position:relative;flex:1;min-height:0;}
.ttai-view{position:absolute;inset:0;overflow-y:auto;overscroll-behavior:contain;padding:18px 16px 10px;scrollbar-width:thin;scrollbar-color:rgba(15,23,42,.2) transparent;}
.ttai-view::-webkit-scrollbar{width:6px;}
.ttai-view::-webkit-scrollbar-thumb{background:rgba(15,23,42,.2);border-radius:6px;}

/* messages */
.ttai-msg{display:flex;gap:8px;margin-bottom:14px;animation:ttai-in .4s cubic-bezier(.2,.9,.3,1.2) both;}
.ttai-msg-user{justify-content:flex-end;}
.ttai-bubble{position:relative;max-width:86%;padding:11px 14px;border-radius:18px;font-size:14.5px;line-height:1.55;word-wrap:break-word;overflow-wrap:anywhere;}
.ttai-msg-bot .ttai-bubble{color:#0f172a;background:#ffffff;border:1px solid rgba(15,23,42,.06);border-end-start-radius:6px;box-shadow:0 10px 24px -14px rgba(15,23,42,.35),0 1px 2px rgba(15,23,42,.06);}
.ttai-msg-user .ttai-bubble{background:linear-gradient(135deg,#0e7c86,#09545b);color:#ffffff;border-end-end-radius:6px;}
/* bubble text ignores theme p/li colours */
.ttai .ttai-bubble p,.ttai .ttai-bubble li,.ttai .ttai-bubble strong,.ttai .ttai-bubble em{margin:0;font-family:inherit;font-size:inherit;line-height:inherit;color:inherit !important;}
.ttai .ttai-bubble p+p,.ttai .ttai-bubble p+ul,.ttai .ttai-bubble ul+p,.ttai .ttai-bubble p+ol,.ttai .ttai-bubble ol+p{margin-top:8px;}
.ttai-bubble ul,.ttai-bubble ol{padding-inline-start:20px;}
.ttai .ttai-bubble li{margin:3px 0;}
.ttai-bubble a{color:#0e7c86;font-weight:600;text-decoration:underline;text-underline-offset:2px;}
.ttai-msg-user .ttai-bubble a{color:#ffffff;}
.ttai-bubble code{padding:1px 5px;border-radius:5px;background:rgba(15,23,42,.07);font-family:ui-monospace,Menlo,Consolas,monospace;font-size:13px;}
.ttai-bubble strong{font-weight:700;}
.ttai-msg-err .ttai-bubble{background:#fef2f2;border-color:#fecaca;color:#991b1b;}
.ttai-tools{display:flex;gap:6px;margin-top:6px;}
.ttai-copy{font-size:11.5px;color:#64748b;cursor:pointer;padding:2px 6px;border-radius:6px;}
.ttai-copy:hover{background:rgba(15,23,42,.06);}

/* sources + suggestion chips */
.ttai-srcs{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;padding-top:10px;border-top:1px dashed rgba(15,23,42,.12);}
.ttai-srcs-label{width:100%;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b;}
.ttai-src{display:inline-flex;align-items:center;gap:5px;max-width:100%;padding:5px 10px;border-radius:999px;font-size:12px;color:#334155;text-decoration:none !important;background:#f8fafc;border:1px solid #e2e8f0;transition:all .2s;}
.ttai-src span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px;}
.ttai-src svg{width:12px;height:12px;flex:none;}
.ttai-suggest{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 8px;}
.ttai-chip{padding:8px 13px;border-radius:999px;font-size:13px;cursor:pointer;color:#334155;background:rgba(255,255,255,.9);border:1px solid #e2e8f0;box-shadow:0 4px 10px -6px rgba(15,23,42,.25);transition:all .2s;}
.ttai-chip:hover{transform:translateY(-2px);}

/* typing indicator */
.ttai-typing{display:inline-flex;gap:5px;padding:4px 2px;}
.ttai-dot{width:8px;height:8px;border-radius:50%;background:#0e7c86;animation:ttai-bounce 1.2s infinite ease-in-out;}
.ttai-dot:nth-child(2){animation-delay:.15s;}
.ttai-dot:nth-child(3){animation-delay:.3s;}

/* consent bar */
.ttai-consent{margin:0 12px 10px;padding:12px 14px;border-radius:16px;font-size:12.5px;line-height:1.5;color:#334155;background:#fffbeb;border:1px solid #fde68a;box-shadow:0 8px 20px -14px rgba(15,23,42,.35);}
.ttai-consent-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;}
.ttai-btn{padding:8px 14px;border-radius:10px;font-weight:600;font-size:13px;cursor:pointer;background:linear-gradient(135deg,#0e7c86,#09545b);color:#ffffff;box-shadow:0 6px 14px -8px rgba(15,23,42,.5);}
.ttai-btn:hover{filter:brightness(1.08);}
.ttai-link{font-size:12.5px;color:#475569;cursor:pointer;text-decoration:underline;}
.ttai-nosave{margin:0 12px 6px;font-size:11.5px;text-align:center;color:#64748b;}

/* composer */
.ttai-form{padding:0 12px 12px;}
.ttai-input{display:flex;align-items:flex-end;gap:8px;padding:7px 7px 7px 14px;border-radius:18px;background:#ffffff;border:1px solid #e2e8f0;box-shadow:0 10px 24px -16px rgba(15,23,42,.35),inset 0 1px 2px rgba(15,23,42,.04);transition:border-color .2s,box-shadow .2s;}
[dir=rtl] .ttai-input{padding:7px 14px 7px 7px;}
.ttai .ttai-input textarea{flex:1;width:auto;min-width:0;min-height:24px;max-height:120px;margin:0;padding:7px 0;font-size:14.5px;line-height:1.45;color:inherit;background:transparent !important;border:0 !important;border-radius:0;box-shadow:none !important;outline:0 !important;resize:none;overflow-y:auto;white-space:pre-wrap;cursor:text;}
.ttai .ttai-input textarea::placeholder{color:#94a3b8;opacity:1;}
.ttai .ttai-input textarea:disabled{cursor:not-allowed;opacity:.55;}
.ttai-send{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:13px;cursor:pointer;background:linear-gradient(135deg,#0e7c86,#09545b);color:#ffffff;transition:transform .2s,opacity .2s;}
.ttai-send:hover{transform:translateY(-1px) scale(1.04);}
.ttai-send:disabled{opacity:.45;cursor:not-allowed;transform:none;}
.ttai-send svg{width:18px;height:18px;}
[dir=rtl] .ttai-send svg{transform:scaleX(-1);}
.ttai-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden;}
.ttai-foot{padding:0 12px 10px;font-size:10.5px;text-align:center;color:#94a3b8;letter-spacing:.02em;}

/* insights */
.ttai-kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:12px;}
.ttai-kpi{padding:12px;border-radius:16px;background:#ffffff;border:1px solid rgba(15,23,42,.06);box-shadow:0 12px 24px -18px rgba(15,23,42,.45);transform:translateZ(0);transition:transform .25s;}
.ttai-kpi:hover{transform:translateY(-2px);}
.ttai-kpi-value{display:block;font-size:24px;font-weight:800;line-height:1.1;color:#0e7c86;}
.ttai-kpi-label{font-size:12px;color:#64748b;}
.ttai-card{margin-bottom:12px;padding:14px;border-radius:18px;background:#ffffff;border:1px solid rgba(15,23,42,.06);box-shadow:0 12px 26px -18px rgba(15,23,42,.45);animation:ttai-in .45s both;}
.ttai-card h4{margin:0 0 10px;font-family:inherit;font-size:13px;font-weight:700;line-height:1.3;letter-spacing:normal;text-transform:none;color:#0f172a;}
.ttai-chart{width:100%;height:auto;overflow:visible;}
.ttai-chart text{font-size:10px;fill:#64748b;}
.ttai-legend{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:8px;font-size:12px;color:#475569;}
.ttai-legend i{display:inline-block;width:10px;height:10px;margin-inline-end:5px;border-radius:3px;vertical-align:-1px;}
.ttai-donut-wrap{display:flex;align-items:center;gap:14px;}
.ttai-donut-wrap svg{width:120px;height:120px;flex:none;}
.ttai-latest{list-style:none;}
.ttai-latest li{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #f1f5f9;font-size:13px;}
.ttai-latest li:last-child{border-bottom:0;}
.ttai-latest a{font-weight:600;text-decoration:none;}
.ttai-latest small{flex:none;color:#94a3b8;font-size:11.5px;}
.ttai-bubble .ttai-card{margin:10px 0 2px;padding:10px;box-shadow:none;border-color:#eef2f6;}
.ttai-empty{padding:30px 10px;text-align:center;color:#64748b;font-size:13px;}

/* dark scheme (auto = follows the website background) */
.ttai-scheme-dark .ttai-panel{background:rgba(15,23,42,.86);border-color:rgba(255,255,255,.08);color:#e2e8f0;}
.ttai-scheme-dark .ttai-msg-bot .ttai-bubble,.ttai-scheme-dark .ttai-kpi,.ttai-scheme-dark .ttai-card,.ttai-scheme-dark .ttai-input{background:#1e293b;border-color:#334155;color:#e2e8f0;}
.ttai-scheme-dark .ttai-chip,.ttai-scheme-dark .ttai-src{background:#1e293b;border-color:#334155;color:#cbd5e1;}
.ttai-scheme-dark .ttai-card h4{color:#f1f5f9;}
.ttai-scheme-dark .ttai-latest li{border-color:#334155;}
.ttai-scheme-dark .ttai-consent{background:#292524;border-color:#78350f;color:#e7e5e4;}

/* tablet */
@media (max-width:900px){.ttai-expanded .ttai-panel{width:calc(100vw - 44px);}}

/* phone: full-screen sheet */
@media (max-width:600px){
.ttai{bottom:16px;right:16px;}
.ttai-pos-left{left:16px;right:auto;}
.ttai-panel,.ttai-expanded .ttai-panel{position:fixed;inset:0;width:100%;height:100%;height:100dvh;border-radius:0;border:0;background:rgba(255,255,255,.97);transform-origin:bottom center;transform:translateY(40px) scale(.98);}
.ttai-head{padding-top:calc(14px + env(safe-area-inset-top));}
.ttai-form{padding-bottom:calc(12px + env(safe-area-inset-bottom));}
.ttai-open .ttai-launcher{opacity:0;pointer-events:none;}
.ttai-expand{display:none !important;}
.ttai-bubble{max-width:90%;}
.ttai .ttai-input textarea{font-size:16px;}
}

/* animations */
@keyframes ttai-float{0%,100%{transform:translateY(0);}50%{transform:translateY(-5px);}}
@keyframes ttai-pulse{0%{transform:scale(.95);opacity:.9;}100%{transform:scale(1.35);opacity:0;}}
@keyframes ttai-in{from{opacity:0;transform:translateY(10px) scale(.98);}to{opacity:1;transform:none;}}
@keyframes ttai-bounce{0%,80%,100%{transform:translateY(0);opacity:.5;}40%{transform:translateY(-6px);opacity:1;}}
@keyframes ttai-grow{from{transform:scaleY(0);}to{transform:scaleY(1);}}
.ttai-bar{transform-origin:bottom;transform-box:fill-box;animation:ttai-grow .7s cubic-bezier(.2,.9,.3,1.1) both;}
@media (prefers-reduced-motion:reduce){.ttai *,.ttai{animation:none !important;transition:none !important;}}

/* print */
@media print{.ttai{display:none !important;}}
