/* Dee v0.4.0. All styles are scoped so the DCC theme and its other forms are unchanged. */
.dccva-root, .dccva-root * {box-sizing:border-box;}
.dccva-root {
    --dccva-primary:#bc2026; --dccva-accent:#17324d; --dccva-bg:#fff;
    --dccva-soft:#f4f7fa; --dccva-border:#d9e1e8; --dccva-text:#17212b;
    --dccva-muted:#526374; --dccva-shadow:0 16px 50px rgba(17,31,44,.2);
    --dccva-side-offset:18px; --dccva-vertical-percent:50%; --dccva-bottom-offset:24px;
    --dccva-mobile-side-offset:14px; --dccva-mobile-bottom-offset:92px;
    --dccva-custom-x:96%; --dccva-custom-y:50%; --dccva-available-height:calc(100vh - 24px);
    color:var(--dccva-text); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size:14px; line-height:1.5; text-align:left; letter-spacing:normal;
}
.dccva-root [hidden] {display:none!important;}
.dccva-root button, .dccva-root textarea {font-family:inherit!important;letter-spacing:normal!important;text-transform:none!important;}
.dccva-root button {min-width:0; margin:0; line-height:1.35; text-shadow:none;}
.dccva-root button::before, .dccva-root button::after {content:none;}
.dccva-root svg {max-width:100%;}
.dccva-floating {position:fixed;z-index:999999;}
.dccva-floating.dccva-position-right-bottom {bottom:var(--dccva-bottom-offset);right:var(--dccva-side-offset);}
.dccva-floating.dccva-position-left-bottom {bottom:var(--dccva-bottom-offset);left:var(--dccva-side-offset);}
.dccva-floating.dccva-position-right-middle {right:var(--dccva-side-offset);top:var(--dccva-vertical-percent);transform:translateY(-50%);}
.dccva-floating.dccva-position-left-middle {left:var(--dccva-side-offset);top:var(--dccva-vertical-percent);transform:translateY(-50%);}
.dccva-floating.dccva-position-custom {left:var(--dccva-custom-x);top:var(--dccva-custom-y);}
.dccva-floating.dccva-position-custom.dccva-panel-opens-left {transform:translate(-100%,-50%);}
.dccva-floating.dccva-position-custom.dccva-panel-opens-right {transform:translate(0,-50%);}
.dccva-root .dccva-launcher {
    align-items:center; background:var(--dccva-primary);border:0;border-radius:999px;
    box-shadow:0 8px 26px rgba(17,31,44,.22); color:#fff;cursor:pointer;display:inline-flex;
    gap:9px;min-height:54px;padding:7px 18px 7px 7px;position:relative;z-index:2;
    transition:box-shadow 160ms ease;
}
.dccva-root .dccva-launcher:hover {background:var(--dccva-primary);color:#fff;box-shadow:0 10px 30px rgba(17,31,44,.3);}
/* Keep its anchor geometry but completely hide it visually and from interaction. */
.dccva-floating.dccva-open > .dccva-launcher {visibility:hidden!important;pointer-events:none!important;}
.dccva-root button:focus-visible, .dccva-root textarea:focus-visible, .dccva-root a:focus-visible {outline:2px solid #648cad!important;outline-offset:3px;}
.dccva-root .dccva-launcher-mark {align-items:center;background:#fff;border-radius:50%;display:inline-flex;flex:0 0 40px;height:40px;justify-content:center;width:40px;padding:1px;}
.dccva-root .dccva-launcher-label {font-size:15px;font-weight:700;white-space:nowrap;}
.dccva-root .dccva-panel {
    background:var(--dccva-bg);border:1px solid var(--dccva-border);border-radius:18px;
    box-shadow:var(--dccva-shadow);display:flex;flex-direction:column;height:auto;
    max-height:min(560px,var(--dccva-available-height));min-height:0;overflow:hidden;
    width:min(410px,calc(100vw - 20px));padding:0!important;margin:0!important;position:relative;
}
.dccva-floating .dccva-panel {opacity:0;pointer-events:none;position:absolute;visibility:hidden;transition:opacity 120ms ease;}
.dccva-floating.dccva-open .dccva-panel {opacity:1;pointer-events:auto;visibility:visible;}
.dccva-root.dccva-has-conversation .dccva-panel {height:min(540px,var(--dccva-available-height));}
.dccva-inline {margin:0 auto;max-width:760px;width:100%;}
.dccva-inline .dccva-panel {width:100%;box-shadow:0 8px 28px rgba(17,31,44,.12);}
.dccva-root .dccva-header {
    align-items:center;background:var(--dccva-accent);color:#fff;display:flex;gap:10px;
    flex:0 0 auto;min-height:66px;padding:10px 12px!important;margin:0!important;
}
.dccva-root .dccva-avatar {align-items:center;background:#fff;border-radius:50%;display:inline-flex;flex:0 0 44px;height:44px;justify-content:center;width:44px;}
.dccva-root .dccva-header-copy {display:flex;flex:1 1 auto;flex-direction:column;gap:2px;min-width:0;}
.dccva-root .dccva-header-copy strong {color:inherit;font-size:17px;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.dccva-root .dccva-brand {display:flex;align-items:center;gap:5px;font-size:11px;line-height:1.3;color:#e2eaf2;}
.dccva-root .dccva-reset, .dccva-root .dccva-close {align-items:center;background:transparent;border:0;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;flex:0 0 36px;font-size:21px;height:36px;justify-content:center;padding:0;width:36px;}
.dccva-root .dccva-reset:hover, .dccva-root .dccva-close:hover {background:rgba(255,255,255,.14);color:#fff;}
.dccva-root .dccva-reset:disabled {cursor:wait;opacity:.45;}
.dccva-root .dccva-messages {background:var(--dccva-soft);display:flex;flex:1 1 auto;flex-direction:column;gap:12px;min-height:0;overflow-x:hidden;overflow-y:auto;padding:16px 13px;scroll-behavior:auto;overscroll-behavior:contain;}
.dccva-root .dccva-message-row {display:flex;width:100%;flex:0 0 auto;}
.dccva-root .dccva-message-row.dccva-user {justify-content:flex-end;}
.dccva-root .dccva-message-row.dccva-assistant {justify-content:flex-start;}
.dccva-root .dccva-message-bubble {border-radius:14px;box-shadow:0 1px 2px rgba(17,31,44,.06);max-width:92%;overflow-wrap:anywhere;padding:10px 12px;}
.dccva-root .dccva-assistant .dccva-message-bubble {background:#fff;border:1px solid var(--dccva-border);border-bottom-left-radius:5px;}
.dccva-root .dccva-user .dccva-message-bubble {background:var(--dccva-primary);border-bottom-right-radius:5px;color:#fff;}
.dccva-root .dccva-message-text {font-size:14px;line-height:1.5;white-space:pre-wrap;color:inherit;}
.dccva-root .dccva-loading .dccva-message-text {color:var(--dccva-muted);}
.dccva-root .dccva-related-link-wrap {margin-top:9px;}
.dccva-root .dccva-related-link {align-items:center;background:#f2f6fa;border:1px solid var(--dccva-border);border-radius:9px;color:var(--dccva-accent)!important;display:inline-flex;font-size:12px;font-weight:600;gap:6px;justify-content:space-between;line-height:1.4;max-width:100%;padding:7px 9px;text-decoration:none!important;}
.dccva-root .dccva-related-link:hover {background:#e8f0f7;border-color:var(--dccva-accent);}
.dccva-root .dccva-related-link-label {min-width:0;overflow-wrap:anywhere;}
.dccva-root .dccva-related-link-arrow {flex:0 0 auto;font-size:14px;line-height:1;}
.dccva-root .dccva-feedback {display:flex;gap:4px;justify-content:flex-end;margin-top:7px;}
.dccva-root .dccva-feedback-button {background:transparent;border:1px solid transparent;border-radius:6px;color:var(--dccva-accent);cursor:pointer;font-size:14px;line-height:1;padding:5px 6px;}
.dccva-root .dccva-feedback-button:hover, .dccva-root .dccva-feedback-selected {background:var(--dccva-soft);border-color:var(--dccva-border);}
/* In the conversation flow, directly beneath the greeting: no horizontal carousel. */
.dccva-root .dccva-prompts {background:transparent;border:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;overflow:visible;padding:0;margin:0;flex:0 0 auto;width:100%;}
.dccva-root .dccva-prompt {align-items:center;justify-content:center;background:#fff;border:1px solid #cad6e1;border-radius:11px;color:var(--dccva-accent);cursor:pointer;display:flex;font-size:12px;font-weight:600;min-height:44px;padding:8px 7px;white-space:normal!important;overflow:visible;text-overflow:clip;overflow-wrap:break-word;line-height:1.35;text-align:center;width:100%;height:auto;}
.dccva-root .dccva-prompt:hover, .dccva-root .dccva-prompt:focus {background:#eaf1f8;border-color:var(--dccva-accent);color:var(--dccva-accent);}
.dccva-root .dccva-form {align-items:flex-end;background:#fff;border-top:1px solid var(--dccva-border);display:flex;gap:8px;margin:0!important;padding:10px 12px!important;flex:0 0 auto;}
/* Explicit height/min-height defeat theme textarea rules without changing any other form. */
.dccva-root textarea.dccva-input {background:#fff;border:1px solid #b9c9d7;border-radius:12px;color:var(--dccva-text);display:block;flex:1 1 auto;font-size:14px!important;font-weight:400;line-height:20px!important;min-width:0!important;width:100%!important;height:var(--dccva-input-height,44px)!important;min-height:44px!important;max-height:120px!important;outline:0;overflow-y:hidden;padding:11px 12px!important;resize:none!important;box-shadow:none;margin:0!important;}
.dccva-root textarea.dccva-input:focus {border-color:var(--dccva-accent);box-shadow:0 0 0 2px rgba(23,50,77,.09);}
.dccva-root textarea.dccva-input::placeholder {color:#637485;opacity:1;}
.dccva-root textarea.dccva-input:disabled {background:#f1f3f5;}
.dccva-root .dccva-send {align-items:center;background:var(--dccva-primary);border:0;border-radius:12px;color:#fff;cursor:pointer;display:inline-flex;flex:0 0 44px;height:44px;min-height:44px;justify-content:center;padding:0;width:44px;min-width:44px;font-size:19px;}
.dccva-root .dccva-send:hover {background:var(--dccva-primary);color:#fff;filter:brightness(.94);}
.dccva-root .dccva-send:disabled {cursor:wait;opacity:.55;}
/* Privacy + medical limitation + policy link in one small, persistent location. */
.dccva-root .dccva-notice {display:flex;align-items:flex-start;gap:8px;background:#f7f9fb;border-top:1px solid #e8edf2;flex:0 0 auto;color:var(--dccva-muted);font-size:11px;line-height:1.5;padding:9px 12px!important;margin:0!important;text-align:left;}
.dccva-root .dccva-notice-icon {display:inline-flex;align-items:center;justify-content:center;border:1px solid #7c90a4;border-radius:50%;height:14px;width:14px;flex:0 0 14px;font-size:10px;font-weight:700;line-height:1;margin-top:2px;color:var(--dccva-accent);}
.dccva-root .dccva-notice-copy {font-size:inherit;line-height:inherit;font-weight:400;letter-spacing:normal;color:inherit;margin:0!important;padding:0!important;}
.dccva-root .dccva-policy-link {color:var(--dccva-accent)!important;text-decoration:underline!important;font-size:inherit;font-weight:600;white-space:nowrap;}
.dccva-root .dccva-reset-dialog {position:absolute;inset:0;background:rgba(23,50,77,.46);display:flex;align-items:center;justify-content:center;padding:16px;z-index:5;}
.dccva-root .dccva-reset-card {background:#fff;border:1px solid var(--dccva-border);border-radius:15px;padding:20px;box-shadow:var(--dccva-shadow);max-width:350px;max-height:100%;overflow:auto;}
.dccva-root .dccva-reset-card h3 {font-family:inherit;color:var(--dccva-text);font-size:17px;line-height:1.3;margin:0 0 10px;padding:0;}
.dccva-root .dccva-reset-card p {font-family:inherit;color:var(--dccva-muted);font-size:13px;line-height:1.5;margin:0 0 16px;padding:0;}
.dccva-root .dccva-reset-actions {display:flex;gap:8px;flex-wrap:wrap;}
.dccva-root .dccva-reset-cancel, .dccva-root .dccva-reset-confirm {cursor:pointer;flex:1 1 auto;border:1px solid var(--dccva-border);border-radius:9px;background:#f4f7fa;color:var(--dccva-accent);padding:10px 12px;font-size:12px;font-weight:600;min-height:42px;}
.dccva-root .dccva-reset-confirm {background:var(--dccva-accent);border-color:var(--dccva-accent);color:#fff;}
.dccva-root .dccva-setup-link {display:inline-flex;align-items:center;justify-content:center;margin-top:10px;padding:7px 11px;border-radius:7px;background:var(--dccva-accent);color:#fff!important;font-size:12px;font-weight:600;text-decoration:none!important;}
.dccva-root .screen-reader-text {border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important;}
@supports (height:100dvh) {.dccva-root {--dccva-available-height:calc(100dvh - 24px);}}
@media (max-width:782px) {
    .dccva-floating, .dccva-floating.dccva-position-right-bottom, .dccva-floating.dccva-position-left-bottom,
    .dccva-floating.dccva-position-right-middle, .dccva-floating.dccva-position-left-middle,
    .dccva-floating.dccva-position-custom.dccva-panel-opens-left, .dccva-floating.dccva-position-custom.dccva-panel-opens-right {
        bottom:calc(var(--dccva-mobile-bottom-offset) + env(safe-area-inset-bottom,0px));left:auto;right:var(--dccva-mobile-side-offset);top:auto;transform:none;
    }
    .dccva-root .dccva-panel {border-radius:15px;}
    .dccva-root textarea.dccva-input {font-size:16px!important;}
}
@media (max-width:359px) {
    .dccva-root .dccva-prompts {grid-template-columns:repeat(2,minmax(0,1fr));}
    .dccva-root .dccva-header {gap:7px;padding:9px 10px!important;}
    .dccva-root .dccva-brand {font-size:10px;}
    .dccva-root .dccva-reset, .dccva-root .dccva-close {flex-basis:32px;width:32px;}
}
@media (prefers-reduced-motion:reduce) {.dccva-root *, .dccva-root *::before, .dccva-root *::after {animation:none!important;transition:none!important;scroll-behavior:auto!important;}}
