/* Scoped UI shared primitives. Public and admin have separate entry points. */
.ciama-assistant{--ca-accent:#075e70;--ca-soft:#e7f4f3;color:#061d2d;font:400 15px/1.5 Inter,Arial,sans-serif}
.ciama-assistant--admin{--ca-accent:#5454cf;--ca-soft:#eeeefa}
.ciama-assistant[hidden],.ciama-assistant [hidden]{display:none!important}
.ciama-assistant *{box-sizing:border-box}
.ciama-assistant button,.ciama-assistant .ca-form textarea{font:inherit}
.ciama-assistant button{cursor:pointer}
.ciama-assistant button:focus-visible,.ciama-assistant textarea:focus-visible{outline:3px solid var(--ca-accent);outline-offset:3px}
.ciama-assistant svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.ciama-assistant img{display:block;object-fit:contain}
.ciama-assistant .ca-launcher{position:fixed;z-index:80;right:24px;bottom:max(24px,env(safe-area-inset-bottom));display:flex;align-items:center;gap:10px;padding:5px 7px 5px 16px;min-height:52px;border:1px solid #365263;border-radius:40px;background:#061d2d;color:#fff;box-shadow:0 8px 28px #061d2d26;text-align:left;transition:transform .18s ease,box-shadow .18s ease}
.ciama-assistant .ca-launcher:hover{transform:translateY(-3px);box-shadow:0 12px 32px #061d2d38}
.ciama-assistant .ca-launcher-label{font-size:14px;font-weight:600;line-height:1.4}
.ciama-assistant .ca-launcher-label small{display:block;color:#bbced9;font-size:11px;font-weight:400;margin-top:2px}
.ciama-assistant .ca-crab{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#123244;border:1px solid #426072}
.ciama-assistant .ca-panel{position:fixed;z-index:81;inset:auto 24px 88px auto;margin:0;padding:0;width:360px;height:510px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 110px);border:1px solid #d5e2e7;border-radius:22px;background:#fff;color:#061d2d;box-shadow:0 24px 90px #061d2d40;overflow:hidden}
.ciama-assistant .ca-panel[open]{display:flex;flex-direction:column}
.ciama-assistant .ca-panel::backdrop{background:#061d2d18}
.ciama-assistant .ca-heading{display:flex;gap:12px;align-items:center;background:#061d2d;color:#fff;padding:12px;flex-shrink:0}
.ciama-assistant .ca-heading-crab{flex-shrink:0;padding:4px}
.ciama-assistant .ca-heading-text{flex:1;min-width:0}
.ciama-assistant .ca-heading h2{font:600 18px/1.3 Inter,Arial,sans-serif;margin:0;color:inherit;letter-spacing:-.3px}
.ciama-assistant .ca-heading p{font-size:12px;line-height:1.5;color:#c7d8e2;margin:5px 0 0}
.ciama-assistant .ca-icon{display:grid;place-items:center;min-width:44px;min-height:44px;background:transparent;border:1px solid #486170;border-radius:12px;color:inherit;padding:0}
.ciama-assistant .ca-icon:hover{background:#234050}
.ciama-assistant .ca-heading button:focus-visible{outline-color:#fff}
.ciama-assistant .ca-toolbar{display:flex;justify-content:flex-end;gap:8px;align-items:center;flex-wrap:wrap;padding:0 12px;border-bottom:1px solid #e1e9ed;flex-shrink:0}
.ciama-assistant .ca-badge{color:var(--ca-accent);background:var(--ca-soft);padding:4px 9px;border-radius:6px;font-size:11px;font-weight:600}
.ciama-assistant .ca-new{min-height:44px;display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#345263;background:transparent;border:0;padding:6px 0}
.ciama-assistant .ca-new:hover{color:var(--ca-accent);text-decoration:underline}
.ciama-assistant .ca-new svg{width:16px;height:16px}
.ciama-assistant .ca-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:16px;background:linear-gradient(150deg,#f3f7f8,#fff 70%)}
.ciama-assistant .ca-welcome-art{display:grid;place-items:center;width:60px;height:48px;margin:0 0 10px;border:1px solid #dbe7eb;border-radius:20px;background:#fff}
.ciama-assistant .ca-welcome h3{margin:0 0 8px;font:600 21px/1.2 Inter,Arial,sans-serif;letter-spacing:-.8px;color:#061d2d}
.ciama-assistant .ca-welcome p{font-size:14px;line-height:1.65;color:#466070;margin:0 0 12px}
.ciama-assistant .ca-suggestions{display:grid;gap:8px}
.ciama-assistant .ca-suggestions button{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:46px;padding:10px 12px;border:1px solid #ccdce3;border-radius:10px;background:#fff;color:#183e50;font-size:13px;line-height:1.4;text-align:left}
.ciama-assistant .ca-suggestions button:hover{border-color:var(--ca-accent);background:var(--ca-soft)}
.ciama-assistant .ca-suggestions svg{width:16px;height:16px;color:var(--ca-accent)}
.ciama-assistant .ca-composer{padding:10px 14px 12px;background:#fff;border-top:1px solid #e1e9ed;flex-shrink:0}
.ciama-assistant .ca-feedback:empty{display:none}
.ciama-assistant .ca-feedback{font-size:12px;line-height:1.45;color:var(--ca-accent);margin:0 0 10px}
.ciama-assistant .ca-form{margin:0}
.ciama-assistant .ca-form label{display:block;font-size:12px;font-weight:600;margin:0 0 7px;color:#345263}
.ciama-assistant .ca-input-row{display:flex;gap:8px;align-items:flex-end;border:1px solid #bacdd6;border-radius:12px;padding:5px;background:#f9fbfc}
.ciama-assistant .ca-input-row:focus-within{border-color:var(--ca-accent)}
.ciama-assistant .ca-form textarea{flex:1;min-width:0;width:100%;height:30px;max-height:78px;overflow-y:hidden;resize:vertical;border:0;border-radius:4px;background:transparent;color:#061d2d;line-height:1.5;padding:3px;font-size:16px}
.ciama-assistant textarea::placeholder{color:#58717e;opacity:1}
.ciama-assistant .ca-send{width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:9px;background:var(--ca-accent);color:#fff;flex-shrink:0}
.ciama-assistant .ca-send:hover{background:#103e70}
.ciama-assistant .ca-notice{margin:9px 0 0;color:#526875;font-size:11px;line-height:1.55}
.ciama-assistant .ca-message{margin:0 0 18px;max-width:94%;font-size:14px}
.ciama-assistant .ca-message strong{display:block;font-size:11px;font-weight:600;margin:0 0 5px;color:#466070}
.ciama-assistant .ca-message p{margin:0;background:#fff;border:1px solid #d5e2e7;border-radius:12px;padding:12px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}
.ciama-assistant .ca-message--user{margin-left:auto}
.ciama-assistant .ca-message--user strong{text-align:right}
.ciama-assistant .ca-message--user p{background:var(--ca-soft);border-color:transparent}
/* Consent choices take precedence over the launcher, including on narrow screens. */
body:has(.consent-banner:not([hidden])) .ciama-assistant .ca-launcher{visibility:hidden}
body:has(.consent-banner:not([hidden])) .ciama-assistant .ca-panel{visibility:hidden}
@media(max-width:600px){
 .ciama-assistant .ca-launcher{right:16px;bottom:max(18px,env(safe-area-inset-bottom));padding:6px;min-height:60px}
 .ciama-assistant .ca-launcher-label{display:block}
 .ciama-assistant .ca-panel{inset:auto 12px 84px;max-width:none;width:calc(100vw - 24px);height:480px;max-height:calc(100dvh - 100px);border-radius:18px}
 .ciama-assistant .ca-heading{padding:14px 12px;gap:8px}
 .ciama-assistant .ca-heading h2{font-size:16px}
 .ciama-assistant .ca-heading p{font-size:11px}
 .ciama-assistant .ca-scroll{padding:20px 18px}
 .ciama-assistant .ca-toolbar{padding-inline:12px}
}
@media(prefers-reduced-motion:reduce){.ciama-assistant .ca-launcher{transition:none}.ciama-assistant .ca-launcher:hover{transform:none}}

.ciama-assistant .ca-welcome-art img{width:48px;height:38px}

.ciama-assistant .ca-form label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.ciama-assistant .ca-input-row{align-items:center}
.ciama-assistant .ca-form textarea{resize:none}
.ciama-assistant .ca-info{position:relative;color:#fff;flex-shrink:0}
.ciama-assistant .ca-info summary{list-style:none;cursor:pointer;width:28px;height:36px;display:grid;place-items:center;font:600 14px/1 Georgia,serif}
.ciama-assistant .ca-info summary::-webkit-details-marker{display:none}
.ciama-assistant .ca-info p{position:absolute;right:-48px;top:32px;width:280px;padding:14px;background:#fff;color:#345263;border:1px solid #ccdae1;border-radius:10px;box-shadow:0 8px 24px #061d2d22;font-size:12px;line-height:1.6;z-index:3}
.ciama-assistant .ca-info a{color:#075e70;text-decoration:underline}
.ciama-assistant .ca-history{min-width:0;max-width:150px;margin-right:auto;border:0;background:transparent;color:#345263;font:400 12px Inter,Arial,sans-serif;height:40px}
.ciama-assistant .ca-sources{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;font-size:12px}
.ciama-assistant .ca-sources a,.ciama-assistant .ca-sources span{padding:5px 8px;border:1px solid #d2e0e6;border-radius:6px;color:#075e70;background:#fff;overflow-wrap:anywhere}
.ciama-assistant button:disabled{opacity:.55;cursor:wait}
.assistant-audit-text{white-space:pre-wrap;overflow-wrap:anywhere}
.workspace .assistant-audit-card pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;max-height:400px;overflow:auto}

.ciama-assistant .ca-votes{display:flex;gap:8px;margin-top:10px}.ciama-assistant .ca-votes button{font-size:11px;min-height:28px;padding:4px 8px;border:1px solid #c4d5dc;border-radius:6px;background:#fff;color:#365766;cursor:pointer}.ciama-assistant .ca-votes button[aria-pressed="true"]{background:#e1f3ef;border-color:#278080;color:#124e53}
