/* EXCARRA V8.3 — EXI assistant */
.exi-assistant{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:175;font-family:var(--font-body);color:#0c1933}
.exi-launcher{display:flex;align-items:center;gap:11px;min-height:64px;padding:8px 16px 8px 8px;border:1px solid rgba(229,188,88,.54);border-radius:999px;background:linear-gradient(135deg,#07142f 0%,#10264d 100%);color:#fff;box-shadow:0 20px 48px rgba(2,10,28,.28),0 0 0 1px rgba(255,255,255,.05) inset;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;isolation:isolate}
.exi-launcher::before{content:"";position:absolute;inset:-1px;border-radius:inherit;background:linear-gradient(100deg,transparent 10%,rgba(255,226,143,.18) 45%,transparent 75%);transform:translateX(-115%);animation:exiShine 6.5s ease-in-out infinite;z-index:-1;pointer-events:none}
.exi-launcher:hover{transform:translateY(-3px);border-color:#f0ca69;box-shadow:0 25px 54px rgba(2,10,28,.36),0 0 24px rgba(236,193,81,.16)}
.exi-launcher:focus-visible,.exi-close:focus-visible,.exi-option:focus-visible,.exi-action:focus-visible,.exi-search input:focus-visible,.exi-search button:focus-visible{outline:3px solid rgba(52,111,255,.34);outline-offset:3px}
.exi-launcher-avatar,.exi-panel-avatar{position:relative;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;overflow:hidden;background:#0a1835;border:1px solid rgba(246,211,118,.62);box-shadow:0 0 0 4px rgba(240,196,84,.08),0 10px 22px rgba(0,0,0,.26)}
.exi-launcher-avatar{width:48px;height:48px;animation:exiFloat 4s ease-in-out infinite}
.exi-launcher-avatar img,.exi-panel-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.exi-online{position:absolute;right:1px;bottom:2px;width:12px;height:12px;border:2px solid #07142f;border-radius:50%;background:#45dfa4;box-shadow:0 0 11px rgba(69,223,164,.75)}
.exi-launcher-copy{display:flex;flex-direction:column;text-align:left;line-height:1.15;white-space:nowrap}
.exi-launcher-copy b{font:800 14px/1.2 var(--font-display);letter-spacing:-.01em}
.exi-launcher-copy small{margin-top:4px;color:#b9c5dd;font-size:11px}
.exi-nudge{position:absolute;right:0;bottom:76px;max-width:250px;padding:13px 38px 13px 15px;border:1px solid #dbe4f4;border-radius:16px;background:#fff;box-shadow:0 18px 42px rgba(12,28,58,.18);font-size:13px;line-height:1.45;color:#263653;transform-origin:bottom right;animation:exiNudgeIn .35s ease both}
.exi-nudge strong{display:block;margin-bottom:2px;color:#0b1a35;font-family:var(--font-display)}
.exi-nudge-close{position:absolute;right:8px;top:8px;width:25px;height:25px;border:0;border-radius:50%;background:#edf2fa;color:#5f6d86;cursor:pointer}
.exi-panel{position:absolute;right:0;bottom:78px;width:min(390px,calc(100vw - 28px));max-height:min(710px,calc(100vh - 130px));display:grid;grid-template-rows:auto minmax(0,1fr) auto;border:1px solid rgba(17,44,86,.15);border-radius:26px;background:#fff;box-shadow:0 30px 80px rgba(4,15,38,.35);overflow:hidden;transform-origin:bottom right;animation:exiPanelIn .24s cubic-bezier(.2,.8,.2,1) both}
.exi-panel[hidden]{display:none}
.exi-panel-header{display:flex;align-items:center;gap:12px;padding:16px 16px 15px;background:linear-gradient(135deg,#07142f 0%,#132b55 100%);color:#fff;border-bottom:1px solid rgba(235,195,91,.32)}
.exi-panel-avatar{width:48px;height:48px}
.exi-panel-title{min-width:0;flex:1}
.exi-panel-title b{display:flex;align-items:center;gap:8px;font:800 17px/1.2 var(--font-display)}
.exi-panel-title small{display:block;margin-top:3px;color:#aebbd2;font-size:11px}
.exi-status-dot{width:7px;height:7px;border-radius:50%;background:#45dfa4;box-shadow:0 0 10px rgba(69,223,164,.8)}
.exi-language-badge{padding:6px 9px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.08);font-size:10px;font-weight:800;letter-spacing:.08em;color:#f4d67c}
.exi-close{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.12);border-radius:50%;background:rgba(255,255,255,.06);color:#fff;cursor:pointer;font-size:20px}
.exi-panel-body{overflow:auto;padding:18px;background:linear-gradient(180deg,#f8fbff 0%,#fff 42%);scrollbar-width:thin;scrollbar-color:#b9c8e2 transparent}
.exi-greeting{padding:15px 16px;border:1px solid #dfe7f4;border-radius:18px;background:#fff;box-shadow:0 12px 28px rgba(19,45,84,.07)}
.exi-greeting span{display:block;color:#2b61d6;font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.exi-greeting h3{margin:6px 0 5px;font:800 20px/1.2 var(--font-display);letter-spacing:-.025em;color:#0b1933}
.exi-greeting p{margin:0;color:#62708a;font-size:13px;line-height:1.55}
.exi-context-note{display:flex;align-items:flex-start;gap:9px;margin-top:12px;padding:11px 12px;border-radius:13px;background:#edf4ff;color:#244a8e;font-size:12px;line-height:1.45}
.exi-context-note svg{width:17px;height:17px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.exi-section-title{display:flex;align-items:center;justify-content:space-between;margin:18px 2px 9px;color:#7a879c;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.exi-options{display:grid;gap:8px}
.exi-option{display:flex;align-items:center;gap:12px;width:100%;padding:12px 13px;border:1px solid #dfe7f4;border-radius:14px;background:#fff;color:#152441;text-align:left;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.exi-option:hover{transform:translateY(-1px);border-color:#9bbcff;box-shadow:0 10px 22px rgba(39,91,190,.09)}
.exi-option-icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border-radius:11px;background:linear-gradient(135deg,#edf4ff,#f8faff);color:#2863dc}
.exi-option-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.exi-option-copy{min-width:0;flex:1}
.exi-option-copy b{display:block;font:700 13px/1.3 var(--font-display)}
.exi-option-copy small{display:block;margin-top:3px;color:#8792a6;font-size:10px}
.exi-option-arrow{color:#9ba8bc;font-size:18px}
.exi-answer{margin-top:12px;padding:16px;border:1px solid #d9e4f5;border-radius:17px;background:#fff;box-shadow:0 14px 30px rgba(21,51,93,.08)}
.exi-answer[hidden]{display:none}
.exi-answer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.exi-answer h4{margin:0;font:800 15px/1.35 var(--font-display);color:#0c1c38}
.exi-answer p{margin:9px 0 0;color:#5c6b85;font-size:13px;line-height:1.62}
.exi-answer-back{border:0;background:transparent;color:#2b61d6;font-weight:700;font-size:11px;cursor:pointer}
.exi-answer-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.exi-action{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 12px;border:1px solid #cfdaec;border-radius:11px;background:#fff;color:#203455;font-size:11px;font-weight:800;text-decoration:none;cursor:pointer}
.exi-action.primary{border-color:#2467ec;background:linear-gradient(135deg,#357cff,#1557de);color:#fff;box-shadow:0 8px 18px rgba(30,93,226,.2)}
.exi-search-wrap{padding:13px 15px 15px;border-top:1px solid #e5ebf4;background:#fff}
.exi-search{display:flex;gap:8px}
.exi-search input{min-width:0;flex:1;height:46px;padding:0 14px;border:1px solid #d8e2f0;border-radius:13px;background:#f8faff;color:#14213d;font-size:13px}
.exi-search input::placeholder{color:#9aa6b9}
.exi-search button{display:grid;place-items:center;width:46px;height:46px;border:0;border-radius:13px;background:linear-gradient(135deg,#3478ff,#1557dc);color:#fff;cursor:pointer;box-shadow:0 10px 20px rgba(26,90,222,.22)}
.exi-search button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.exi-human-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;color:#8190a6;font-size:10px}
.exi-human-row a{color:#245fd5;font-weight:800;text-decoration:none}
.exi-no-result{padding:14px;border:1px dashed #cfd9e8;border-radius:14px;background:#f8faff;color:#596983;font-size:12px;line-height:1.55}
.exi-no-result b{display:block;margin-bottom:4px;color:#14233f;font-family:var(--font-display)}

/* Landing showcase */
.exi-landing-section{position:relative;overflow:hidden;background:linear-gradient(180deg,#050913 0%,#081126 100%);border-top:1px solid rgba(229,190,88,.12);border-bottom:1px solid rgba(229,190,88,.12)}
.exi-landing-section::before{content:"";position:absolute;left:-10%;top:18%;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(39,112,255,.17),transparent 68%);filter:blur(8px)}
.exi-showcase-grid{position:relative;display:grid;grid-template-columns:minmax(0,.95fr) minmax(360px,1.05fr);gap:clamp(36px,6vw,92px);align-items:center}
.exi-showcase-media{position:relative;min-height:500px;display:grid;place-items:center}
.exi-showcase-orbit{position:absolute;width:min(480px,90%);aspect-ratio:1;border:1px solid rgba(235,196,91,.22);border-radius:50%;animation:exiRotate 22s linear infinite}
.exi-showcase-orbit::before,.exi-showcase-orbit::after{content:"";position:absolute;border-radius:50%;border:1px dashed rgba(69,121,255,.26)}
.exi-showcase-orbit::before{inset:9%}.exi-showcase-orbit::after{inset:22%;border-color:rgba(235,196,91,.18)}
.exi-showcase-image{position:relative;width:min(590px,100%);border-radius:34px;overflow:hidden;border:1px solid rgba(255,255,255,.1);box-shadow:0 40px 90px rgba(0,0,0,.48),0 0 50px rgba(41,105,244,.1);animation:exiFloat 5s ease-in-out infinite}
.exi-showcase-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(4,9,20,.42));pointer-events:none}
.exi-showcase-image img{display:block;width:100%;height:auto}
.exi-showcase-bubble{position:absolute;right:-14px;bottom:48px;z-index:2;max-width:210px;padding:13px 16px;border:1px solid rgba(240,201,101,.45);border-radius:16px 16px 4px 16px;background:rgba(7,20,46,.92);backdrop-filter:blur(14px);box-shadow:0 18px 40px rgba(0,0,0,.35);color:#fff;font-size:12px;line-height:1.45;animation:exiNudge 3.6s ease-in-out infinite}
.exi-showcase-bubble b{display:block;color:#f1d27c;font:800 13px/1.2 var(--font-display);margin-bottom:3px}
.exi-showcase-copy{position:relative;z-index:2}
.exi-showcase-copy .eyebrow{color:#eccb72}
.exi-showcase-copy h2{margin:13px 0 18px;color:#fff;font:800 clamp(36px,4.2vw,62px)/1.03 var(--font-display);letter-spacing:-.045em}
.exi-showcase-copy h2 span{color:#f0cf78}
.exi-showcase-copy>p{max-width:640px;color:#aeb9cd;font-size:16px;line-height:1.72}
.exi-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:25px 0 28px}
.exi-feature-card{padding:15px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(255,255,255,.035)}
.exi-feature-card b{display:block;color:#fff;font:700 13px/1.35 var(--font-display)}
.exi-feature-card small{display:block;margin-top:5px;color:#8492aa;font-size:11px;line-height:1.5}
.hero-exi-companion{position:absolute;right:-22px;top:42%;z-index:4;display:flex;align-items:center;gap:10px;padding:8px 12px 8px 8px;border:1px solid rgba(238,199,94,.4);border-radius:999px;background:rgba(6,17,39,.86);backdrop-filter:blur(12px);color:#fff;box-shadow:0 16px 36px rgba(0,0,0,.32);cursor:pointer;animation:exiFloat 4.4s ease-in-out infinite}
.hero-exi-companion img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:1px solid rgba(243,208,114,.55)}
.hero-exi-companion span{display:flex;flex-direction:column;text-align:left}.hero-exi-companion b{font:800 12px var(--font-display)}.hero-exi-companion small{margin-top:2px;color:#b9c5db;font-size:9px}

@keyframes exiFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes exiNudge{0%,100%{transform:translateY(0) rotate(-.5deg)}50%{transform:translateY(-5px) rotate(.5deg)}}
@keyframes exiRotate{to{transform:rotate(360deg)}}
@keyframes exiShine{0%,65%,100%{transform:translateX(-115%)}82%{transform:translateX(115%)}}
@keyframes exiPanelIn{from{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}
@keyframes exiNudgeIn{from{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:none}}

@media (max-width:1180px){
  .hero-exi-companion{display:none}
  .exi-showcase-grid{grid-template-columns:1fr;gap:34px}
  .exi-showcase-media{order:2;min-height:420px}.exi-showcase-copy{order:1;text-align:center}.exi-showcase-copy>p{margin-inline:auto}.exi-feature-grid{text-align:left}
}
@media (max-width:760px){
  .exi-assistant{right:12px}.exi-launcher{min-height:56px;padding:6px}.exi-launcher-avatar{width:44px;height:44px}.exi-launcher-copy{display:none}
  .exi-panel{position:fixed;left:8px;right:8px;bottom:calc(78px + env(safe-area-inset-bottom));width:auto;max-height:min(76vh,680px);border-radius:22px;transform-origin:bottom center}
  .exi-panel-body{padding:14px}.exi-panel-header{padding:13px}.exi-greeting h3{font-size:18px}
  .exi-nudge{right:0;bottom:66px;max-width:220px}
  .exi-showcase-media{min-height:330px}.exi-showcase-image{width:min(500px,100%);border-radius:24px}.exi-showcase-bubble{right:4px;bottom:22px;max-width:178px;padding:10px 12px}
  .exi-feature-grid{grid-template-columns:1fr}.exi-showcase-copy h2{font-size:38px}
}
@media (max-width:420px){
  .exi-panel{left:5px;right:5px}.exi-language-badge{display:none}.exi-panel-title small{font-size:10px}.exi-option{padding:10px}.exi-showcase-bubble{display:none}
}
@media (prefers-reduced-motion:reduce){
  .exi-launcher::before,.exi-launcher-avatar,.exi-showcase-orbit,.exi-showcase-image,.exi-showcase-bubble,.hero-exi-companion{animation:none!important}
}

/* V8.4 official brand lockup on EXI's shirt */
.exi-showcase-image .exi-shirt-brand{
  position:absolute;
  z-index:3;
  left:39.2%;
  top:50.2%;
  width:22%;
  height:auto;
  transform:rotate(-1deg);
  filter:drop-shadow(0 5px 9px rgba(0,0,0,.45));
  pointer-events:none;
}
@media(max-width:760px){
  .exi-showcase-image .exi-shirt-brand{left:39%;top:50%;width:22.5%}
}
