.nex-root{--nx-bg:#0E0F12;--nx-surf:#16181D;--nx-line:rgba(243,239,231,.14);--nx-ink:#F3EFE7;--nx-soft:#A8A49A;--nx-red:#B82525;--nx-red-hi:#E24B4B;font-family:Figtree,system-ui,sans-serif}.nex-root *{box-sizing:border-box}.nex-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.nex-fab{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:160;display:inline-flex;align-items:center;gap:10px;background:var(--nx-red);color:#fff;border:0;padding:13px 20px;font:800 .78rem/1 Montserrat,system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;box-shadow:6px 6px #00000059;transition:transform .15s,background .15s}.nex-fab:hover{background:var(--nx-red-hi);transform:translateY(-2px)}.nex-fab:focus-visible{outline:2px solid #fff;outline-offset:3px}.nex-dot{width:8px;height:8px;border-radius:50%;background:#fff;animation:nexPulse 1.6s ease-in-out infinite}@keyframes nexPulse{50%{opacity:.35}}.nex-on .nex-fab{background:#2a2c33}body:has(.sticky-cta.on) .nex-fab{bottom:calc(84px + env(safe-area-inset-bottom))}.nex-nudge{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:calc(max(18px,env(safe-area-inset-bottom)) + 58px);z-index:160;max-width:260px;background:var(--nx-surf);color:var(--nx-ink);border:1px solid var(--nx-line);box-shadow:0 14px 34px #0006;animation:nexIn .35s ease both}.nex-nudge[hidden]{display:none}.nex-nudge-go{display:block;width:100%;background:none;border:0;color:inherit;text-align:left;padding:14px 32px 14px 16px;font:500 .9rem/1.45 Figtree,system-ui,sans-serif;cursor:pointer}.nex-nudge-go b{display:block;color:#fff;font-weight:700;margin-bottom:2px}.nex-nudge:after{content:"";position:absolute;right:26px;bottom:-7px;width:12px;height:12px;background:var(--nx-surf);border-right:1px solid var(--nx-line);border-bottom:1px solid var(--nx-line);transform:rotate(45deg)}.nex-nudge-x{position:absolute;top:4px;right:4px;width:28px;height:28px;background:none;border:0;color:var(--nx-soft);font-size:1.1rem;cursor:pointer}body:has(.sticky-cta.on) .nex-nudge{bottom:calc(142px + env(safe-area-inset-bottom))}.nex-panel{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:calc(max(18px,env(safe-area-inset-bottom)) + 58px);z-index:170;width:min(390px,calc(100vw - 36px));height:min(620px,calc(100dvh - 110px));display:flex;flex-direction:column;background:var(--nx-bg);color:var(--nx-ink);border:1px solid var(--nx-line);box-shadow:0 28px 70px #0000008c;animation:nexIn .25s ease both}.nex-panel[hidden]{display:none}@keyframes nexIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.nex-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--nx-line);background:var(--nx-surf)}.nex-head b{display:block;font:800 1rem/1.1 Montserrat,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.02em}.nex-head span{font:500 .62rem/1.4 IBM Plex Mono,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--nx-soft)}.nex-x{width:36px;height:36px;background:none;border:1px solid var(--nx-line);color:#fff;font-size:1.3rem;cursor:pointer}.nex-chat{flex:1;min-height:0;display:flex;flex-direction:column}.nex-chat[hidden]{display:none}.nex-msgs{list-style:none;margin:0;padding:16px;flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:10px}.nex-m{max-width:88%;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.nex-m p{margin:0;padding:10px 13px;font-size:.93rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.nex-assistant p{background:var(--nx-surf);border:1px solid var(--nx-line)}.nex-user{align-self:flex-end;align-items:flex-end}.nex-user p{background:var(--nx-red);color:#fff}.nex-typing p:after{content:"•••";letter-spacing:2px;color:var(--nx-soft);animation:nexPulse 1s ease-in-out infinite}.nex-cta{display:inline-block;background:none;border:1px solid var(--nx-red-hi);color:#fff;padding:9px 13px;font:700 .74rem/1.2 Montserrat,system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;cursor:pointer}.nex-cta-book{background:var(--nx-red);border-color:var(--nx-red)}.nex-cta:hover{background:var(--nx-red-hi);border-color:var(--nx-red-hi)}.nex-chips{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px 12px}.nex-chips[hidden]{display:none}.nex-chips button{background:none;border:1px solid var(--nx-line);color:var(--nx-ink);padding:7px 11px;font:500 .8rem Figtree,system-ui,sans-serif;cursor:pointer}.nex-chips button:hover{border-color:var(--nx-red-hi)}.nex-chips button[data-book]{border-color:var(--nx-red-hi);color:#fff}.nex-form{display:flex;gap:8px;align-items:flex-end;padding:12px 16px;border-top:1px solid var(--nx-line)}.nex-form textarea{flex:1;resize:none;background:transparent;border:1px solid var(--nx-line);color:#fff;font:400 .95rem/1.4 Figtree,system-ui,sans-serif;padding:10px 12px;max-height:110px}.nex-form textarea:focus{outline:none;border-color:var(--nx-red-hi)}.nex-form button{width:42px;height:42px;flex-shrink:0;background:var(--nx-red);border:0;color:#fff;font-size:1.1rem;cursor:pointer}.nex-form button:disabled{opacity:.5;cursor:default}.nex-fine{margin:0;padding:0 16px 12px;font-size:.68rem;line-height:1.45;color:var(--nx-soft)}.nex-fine a{color:var(--nx-ink)}.nex-book{flex:1;min-height:0;display:flex;flex-direction:column;background:#fff}.nex-book[hidden]{display:none}.nex-book-bar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;background:var(--nx-surf);border-bottom:1px solid var(--nx-line)}.nex-book-bar button,.nex-book-bar a{background:none;border:0;color:var(--nx-ink);font:600 .82rem Figtree,system-ui,sans-serif;cursor:pointer;text-decoration:none;padding:4px 0}.nex-book-bar a{color:var(--nx-soft)}.nex-book iframe{flex:1;width:100%;border:0;background:#fff}@media(max-width:560px){.nex-panel{inset:0;width:auto;height:auto;border:0}.nex-on .nex-fab{display:none}.nex-fab{padding:12px 16px}}@media(prefers-reduced-motion:reduce){.nex-dot,.nex-typing p:after{animation:none}.nex-panel,.nex-nudge{animation:none}}
