.dashboard-main.dashboard-main-ai{padding:0;overflow:hidden}.electoral-ai{color:#e6edf8;height:100%;min-height:0;font-size:13px;display:flex;position:relative}.electoral-ai button,.electoral-ai textarea{font:inherit}.electoral-ai button{cursor:pointer}.electoral-ai button:disabled{opacity:.45;cursor:default}.electoral-ai button:focus-visible,.electoral-ai a:focus-visible{outline-offset:3px;outline:2px solid #64caff}.ai-history-modal{color:#e1eaf6;background:#0d2036;border:1px solid #34516d;border-radius:16px;width:min(560px,100vw - 32px);max-height:min(620px,100dvh - 48px);padding:24px;font-family:Poppins,sans-serif}.ai-history-modal[open]{flex-direction:column;display:flex}.ai-history-modal[hidden]{display:none}.ai-history-modal::backdrop{backdrop-filter:blur(4px);background:#020812b3}.ai-history-top{justify-content:space-between;align-items:center;margin-bottom:19px;padding:0 7px;display:flex}.ai-history-top h2{font-size:20px;font-weight:600}.electoral-ai .ai-icon{color:#9cb3ce;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;padding:7px;display:inline-flex}.ai-icon:hover{color:#fff;background:#1a3049}.ai-new{color:#e4edfa;background:#12263e;border:1px solid #284561;border-radius:10px;justify-content:center;align-items:center;gap:9px;padding:11px;display:flex;font-weight:500!important}.ai-new:hover{background:#1c3652}.electoral-ai .ai-history-caption{letter-spacing:1.5px;color:#7f98b6;justify-content:space-between;margin:28px 7px 12px;font-size:9px;display:flex}.ai-history-caption span{letter-spacing:0}.ai-conversations{scrollbar-width:thin;flex:1;margin:0;padding:0;list-style:none;overflow:auto}.ai-conversations li{border-radius:9px;align-items:center;margin-bottom:5px;display:flex}.ai-conversations li:hover{background:#11263e}.ai-conversations li.selected{background:#173350}.ai-conversation-open{text-align:left;color:#b7cbe3;background:0 0;border:0;flex:1;align-items:center;gap:9px;min-width:0;padding:12px 9px;display:flex;font-size:12px!important}.ai-conversation-open span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ai-delete{margin-right:3px}.electoral-ai .ai-history-foot{color:#718ba9;border-top:1px solid #1b2d44;margin:20px 6px 0;padding-top:16px;font-size:10px;line-height:1.8}.ai-chat{background:radial-gradient(at 50% 25%,#0d203733,#0000 70%),#071222;flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.ai-chat-header{border-bottom:1px solid #172c43;align-items:center;gap:12px;padding:19px 28px;display:flex}.ai-chat-heading{min-width:0}.ai-header-actions{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:flex}.ai-header-action{color:#c2d4e9;background:#12263e;border:1px solid #284561;border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:9px 12px;display:inline-flex;font-size:11px!important}.ai-header-action:hover{background:#1c3652}.ai-chat-header h1{align-items:center;gap:10px;margin:0;font-size:17px;font-weight:600;display:flex}.ai-chat-header p{color:#7b94b0;white-space:nowrap;text-overflow:ellipsis;max-width:min(38vw,420px);margin:4px 0 0;font-size:10px;overflow:hidden}.ai-messages{scrollbar-width:thin;scrollbar-color:#284561 transparent;flex:1;min-height:0;padding:28px 30px;overflow-y:auto}.ai-welcome{text-align:center;flex-direction:column;justify-content:center;align-items:center;max-width:780px;min-height:100%;margin:auto;padding-bottom:20px;display:flex}.ai-welcome h2{letter-spacing:-.8px;margin:0 0 13px;font-size:clamp(24px,2.5vw,34px);font-weight:600;line-height:1.3}.ai-welcome>p{color:#8ba4c1;max-width:430px;margin:0;font-size:12px;line-height:1.8}.ai-suggestions{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;width:100%;margin-top:32px;display:grid}.ai-suggestions button{color:#c2d4e9;text-align:left;background:#0d2034;border:1px solid #213d58;border-radius:12px;flex-direction:column;align-items:flex-start;gap:14px;padding:18px;font-size:11px;display:flex}.ai-suggestions button:hover{background:#142c44;border-color:#467aa5}.ai-suggestions button>:last-child{align-self:flex-end;margin-top:-6px}.ai-message-list{max-width:800px;margin:0 auto}.ai-message{align-items:flex-start;gap:13px;margin-bottom:30px;display:flex}.ai-message.user{justify-content:flex-end}.ai-message-content{overflow-wrap:anywhere;min-width:0;font-size:13px;line-height:1.85}.ai-message.user .ai-message-content{white-space:pre-wrap;background:#172f48;border:1px solid #294560;border-radius:18px 18px 4px;max-width:85%;padding:12px 19px}.ai-message-content p{margin:0 0 14px}.ai-message-content p:last-child{margin-bottom:0}.ai-message-content h1,.ai-message-content h2,.ai-message-content h3{margin:18px 0 10px;font-size:17px}.ai-message-content ul,.ai-message-content ol{margin:10px 0 18px;padding-left:23px}.ai-message-content li{margin-bottom:7px}.ai-message-content a{color:#70cfff}.ai-message-content pre{white-space:pre;background:#06101e;border:1px solid #28415b;border-radius:10px;max-width:100%;padding:15px;overflow-x:auto}.ai-message-content code{background:#142d44;border-radius:3px;padding:2px 4px;font-family:Consolas,monospace}.ai-message-content pre code{background:0 0;padding:0}.ai-message-content blockquote{color:#a7bfda;border-left:3px solid #60c6ff;margin:16px 0;padding:5px 15px}.ai-message-content table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto}.ai-message-content th,.ai-message-content td{text-align:left;border:1px solid #2a435e;padding:8px 12px}.ai-message-content hr{border:0;border-top:1px solid #29405c;margin:20px 0}.ai-thinking{color:#94aecb;align-items:center;gap:14px;font-size:12px;display:flex}.ai-dots{animation:1.2s ease-in-out infinite ai-pulse}@keyframes ai-pulse{50%{opacity:.3}}@media (prefers-reduced-motion:reduce){.ai-dots{animation:none}}.ai-compose-area{width:100%;max-width:860px;margin:0 auto;padding:12px 30px 15px}.ai-composer{background:#11243a;border:1px solid #35516e;border-radius:18px;padding:15px 14px 10px 18px;box-shadow:0 8px 30px #0002}.ai-composer:focus-within{border-color:#5793bf}.ai-composer textarea{resize:none;color:#e2edfa;background:0 0;border:0;outline:0;width:100%;min-height:26px;max-height:160px;padding:0;font-size:13px;line-height:1.7;display:block}.ai-composer textarea::placeholder{color:#7c97b6}.ai-composer-bottom{justify-content:space-between;align-items:center;gap:12px;margin-top:9px;display:flex}.ai-composer-bottom span{color:#7691af;font-size:9px}.electoral-ai .ai-composer-bottom button{color:#081b2e;background:#73cdff;border:0;border-radius:50%;flex:0 0 34px;place-items:center;width:34px;height:34px;display:grid}.electoral-ai .ai-disclaimer{text-align:center;color:#728ca8;margin:11px 0 0;font-size:9px}.ai-error{color:#ffd0cb;background:#512a2a44;border:1px solid #834342;border-radius:9px;margin-bottom:12px;padding:10px 12px;font-size:11px}.ai-error p{margin:0}.ai-error button{color:#dcecff;background:#20374f;border:1px solid #415c77;border-radius:6px;margin-top:10px;padding:7px 11px}.ai-history-failure{max-width:500px;margin:30px auto}.ai-muted{color:#8ba4c1;margin:8px;font-size:11px;line-height:1.8}.ai-loading{text-align:center;color:#91accb;padding:40px 0}.ai-access{text-align:center;color:#a5bdd8;flex-direction:column;justify-content:center;align-items:center;gap:15px;height:100%;padding:25px;display:flex}.ai-access h1{color:#e4edfa;margin:0}.ai-access a{color:#fff;background:#05f;border-radius:8px;padding:10px 28px;text-decoration:none}.ai-sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ai-delete-modal{color:#e1eaf6;background:#0d2036;border:1px solid #34516d;border-radius:16px;width:min(440px,100vw - 40px);padding:26px;font-family:Poppins,sans-serif}.ai-delete-modal::backdrop{backdrop-filter:blur(4px);background:#020812b3}.ai-delete-modal h2{margin:0 0 12px;font-size:20px}.ai-delete-modal p{color:#a7bed8;overflow-wrap:anywhere;font-size:12px;line-height:1.8}.ai-delete-modal>div{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.ai-delete-modal button{color:#e3edf9;background:#142c45;border:1px solid #385877;border-radius:8px;padding:10px 15px}.ai-delete-modal button.ai-delete-confirm{background:#a43440;border-color:#b34951}@media (width<=1100px){.ai-suggestions{grid-template-columns:1fr;gap:8px}.ai-suggestions button{flex-direction:row;align-items:center;gap:10px;padding:13px}.ai-suggestions button>:last-child{align-self:auto;margin:0 0 0 auto}.ai-welcome h2{font-size:27px}.ai-messages{padding:22px}}@media (width<=900px){.ai-chat-header{padding:17px 18px}}@media (width<=760px){.ai-chat-header{gap:7px;padding:13px 10px}.ai-chat-header h1{font-size:15px}.ai-chat-header p{max-width:30vw}.ai-header-actions{gap:5px}.ai-header-action{padding:8px}.ai-header-action span{display:none}.ai-history-modal{padding:20px 14px}.ai-messages{padding:19px 14px}.ai-welcome{justify-content:flex-start;padding:15px 0}.ai-welcome h2{font-size:23px}.ai-suggestions{margin-top:23px}.ai-compose-area{padding:8px 10px 12px}.ai-message{gap:8px}.ai-message-content{font-size:12px}.ai-message.user .ai-message-content{max-width:95%;padding:10px 13px}.ai-composer{border-radius:14px;padding:12px}.ai-composer-bottom span{font-size:8px}.ai-disclaimer{font-size:8px;line-height:1.5}}.ai-quota{background:#0b1d32;border:1px solid #29476b;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px 20px;max-width:840px;margin:0 auto 12px;padding:12px 16px;display:flex}.ai-quota>div{flex-direction:column;gap:3px;display:flex}.ai-quota>div>span{color:#9eb8d4;font-size:11px}.ai-quota strong{color:#83d6ff;font-size:17px}.ai-quota p{color:#a9bfd8;flex:1;min-width:180px;margin:0;font-size:11px;line-height:1.7}.ai-quota button{font:inherit;color:#dbeafa;cursor:pointer;background:#142e47;border:1px solid #365575;border-radius:7px;padding:8px 11px;font-size:11px}.ai-quota button:disabled{opacity:.5;cursor:default}.ai-quota.depleted{border-color:#9b485b}.ai-quota.depleted strong{color:#ffbfbf}