.julcsi-chat { --jc-bg:#fff; --jc-text:#17283f; --jc-muted:#526479; --jc-line:#d9e4ee; --jc-soft:#f0f6fb; --jc-blue:#075fae; position:fixed; right:24px; bottom:calc(22px + env(safe-area-inset-bottom,0px)); z-index:1800; font:14px/1.5 'Segoe UI',Tahoma,sans-serif; color:var(--jc-text); text-align:left; color-scheme:light; }
.julcsi-chat * { box-sizing:border-box; }
.julcsi-chat [hidden] { display:none !important; }
.julcsi-chat button,.julcsi-chat textarea { font:inherit; }
.julcsi-chat button { cursor:pointer; }
.julcsi-chat button:focus-visible,.julcsi-chat a:focus-visible,.julcsi-chat textarea:focus-visible { outline:3px solid #f59129; outline-offset:3px; }
.julcsi-chat .julcsi-launcher { display:flex; align-items:center; gap:12px; border:1px solid #c8ddec; border-radius:40px; padding:5px 20px 5px 5px; background:var(--jc-bg); color:var(--jc-text); box-shadow:0 8px 32px #062e6029; transition:transform .15s; }
.julcsi-chat .julcsi-launcher:hover { transform:translateY(-2px); }
.julcsi-launcher img,.julcsi-header img { border-radius:50%; object-fit:cover; background:#fff; flex-shrink:0; }
.julcsi-launcher span { display:flex; flex-direction:column; text-align:left; }
.julcsi-launcher strong { font-size:15px; }
.julcsi-launcher small { color:var(--jc-muted); font-size:12px; }
.julcsi-chat .julcsi-dismiss { position:absolute; right:-7px; top:-8px; width:24px; height:24px; border:1px solid var(--jc-line); border-radius:50%; background:var(--jc-bg); color:var(--jc-text); padding:0; line-height:20px; font-size:18px; }
.julcsi-minimized .julcsi-launcher { padding:4px; }
.julcsi-minimized .julcsi-launcher img { width:38px; height:38px; }
.julcsi-minimized .julcsi-launcher span,.julcsi-minimized .julcsi-dismiss,.julcsi-chat-open .julcsi-dismiss { display:none; }
.julcsi-minimized .julcsi-panel { bottom:62px; }
.julcsi-chat .julcsi-panel { position:absolute; right:0; bottom:80px; width:390px; height:min(620px,calc(100dvh - 120px)); display:flex; flex-direction:column; border:1px solid var(--jc-line); border-radius:24px; overflow:hidden; background:var(--jc-bg); color:var(--jc-text); box-shadow:0 18px 70px #06274c38; }
.julcsi-chat .julcsi-header { display:flex; gap:12px; align-items:center; flex-shrink:0; padding:18px 18px 15px; border-top:4px solid #f58a24; background:linear-gradient(120deg,#eef7ff,var(--jc-bg)); }
.julcsi-chat .julcsi-header h2 { font:700 20px/1.2 'Segoe UI',Tahoma,sans-serif; margin:0 0 3px; color:var(--jc-text); }
.julcsi-chat .julcsi-header p { margin:0; font-size:12px; color:var(--jc-muted); }
.julcsi-chat .julcsi-close { margin-left:auto; border:0; border-radius:50%; background:var(--jc-soft); color:var(--jc-text); width:34px; height:34px; padding:0; font-size:25px; line-height:1; }
.julcsi-chat .julcsi-intro { padding:10px 18px; font-size:12px; color:var(--jc-muted); background:var(--jc-soft); border-block:1px solid var(--jc-line); }
.julcsi-chat .julcsi-messages { flex:1; min-height:70px; overflow:auto; overscroll-behavior:contain; padding:18px; display:flex; flex-direction:column; gap:12px; }
.julcsi-chat .julcsi-message { white-space:pre-wrap; overflow-wrap:anywhere; border-radius:16px 16px 16px 4px; padding:12px 14px; max-width:93%; margin:0; background:var(--jc-soft); color:var(--jc-text); flex-shrink:0; }
.julcsi-chat .julcsi-message-user { align-self:flex-end; border-radius:16px 16px 4px 16px; background:var(--jc-blue); color:#fff; }
.julcsi-chat .julcsi-message-status { font-size:12px; color:var(--jc-muted); background:transparent; padding:0; }
.julcsi-message p { margin:0 0 10px; }
.julcsi-message p:last-child { margin-bottom:0; }
.julcsi-message h3 { font-size:15px; margin:4px 0 8px; }
.julcsi-message ul,.julcsi-message ol { padding-left:20px; margin:8px 0; white-space:normal; }
.julcsi-message li { margin:5px 0; }
.julcsi-message a { color:var(--jc-blue); text-decoration:underline; }
.julcsi-message code { font-size:12px; background:var(--jc-bg); padding:2px 4px; border-radius:4px; }
.julcsi-message pre { overflow:auto; white-space:pre; margin:8px 0; }
.julcsi-chat .julcsi-table-wrap { overflow:auto; max-width:100%; }
.julcsi-chat .julcsi-message table { min-width:0; table-layout:auto; width:100%; border-collapse:collapse; font-size:12px; white-space:normal; }
.julcsi-chat .julcsi-message th,.julcsi-chat .julcsi-message td { padding:6px; border:1px solid var(--jc-line); background:var(--jc-bg); color:var(--jc-text); }
.julcsi-chat .julcsi-confirmation { flex-shrink:0; margin:0 14px 8px; padding:12px; border:1px solid #d18c34; background:var(--jc-soft); border-radius:12px; max-height:200px; overflow:auto; }
.julcsi-confirmation p { white-space:pre-wrap; font-size:12px; margin:6px 0 10px; }
.julcsi-confirmation div { display:flex; flex-wrap:wrap; gap:8px; }
.julcsi-chat .julcsi-confirmation button { background:var(--jc-blue); color:#fff; border:0; border-radius:8px; padding:9px; font-size:12px; }
.julcsi-chat #julcsi-reject { background:var(--jc-bg); color:var(--jc-text); border:1px solid var(--jc-line); }
.julcsi-chat .julcsi-login { padding:4px 18px 16px; }
.julcsi-chat .julcsi-login a { display:block; padding:10px 14px; background:var(--jc-blue); color:#fff; border-radius:12px; text-decoration:none; text-align:center; font-weight:600; }
.julcsi-chat .julcsi-form { display:flex; align-items:flex-end; gap:8px; margin:0; padding:12px 14px 8px; border-top:1px solid var(--jc-line); }
.julcsi-chat .julcsi-form textarea { width:100%; min-width:0; min-height:58px; max-height:120px; border:1px solid var(--jc-line); background:var(--jc-bg); color:var(--jc-text); border-radius:12px; padding:9px 11px; resize:vertical; font-size:16px; }
.julcsi-chat textarea::placeholder { color:var(--jc-muted); opacity:1; }
.julcsi-chat .julcsi-send { border:0; padding:11px 13px; border-radius:12px; background:var(--jc-blue); color:#fff; font-weight:600; height:44px; white-space:nowrap; }
.julcsi-chat button:disabled { cursor:default; opacity:.55; }
.julcsi-chat textarea:disabled { background:var(--jc-soft); cursor:default; }
.julcsi-chat .julcsi-notice { margin:0; padding:4px 16px 14px; color:var(--jc-muted); font-size:10px; line-height:1.5; }
.julcsi-chat .julcsi-notice a { color:var(--jc-blue); text-decoration:underline; }
.julcsi-chat .julcsi-sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
@media (max-width:480px) {
  .julcsi-chat { right:12px; bottom:calc(12px + env(safe-area-inset-bottom,0px)); }
  .julcsi-chat .julcsi-panel { width:calc(100vw - 24px); bottom:76px; height:min(620px,calc(100dvh - 105px - env(safe-area-inset-bottom,0px))); border-radius:20px; }
  .julcsi-chat .julcsi-header { padding:12px 14px; }
  .julcsi-chat .julcsi-messages { padding:12px; }
}
@media (prefers-color-scheme:dark) {
  .julcsi-chat { --jc-bg:#152237; --jc-text:#eff5ff; --jc-muted:#bacbdf; --jc-line:#3c516c; --jc-soft:#22344e; --jc-blue:#0869ba; color-scheme:dark; }
  .julcsi-chat .julcsi-header { background:linear-gradient(120deg,#163654,var(--jc-bg)); }
  .julcsi-chat .julcsi-notice a { color:#88caff; }
}
@media (prefers-reduced-motion:reduce) { .julcsi-chat .julcsi-launcher { transition:none; } }
.julcsi-chat.julcsi-minimized .julcsi-panel { bottom:62px; }
@media (prefers-color-scheme:dark) { .julcsi-message a { color:#88caff; } }
