:root{color-scheme:dark;--bg:#0e1016;--side:#11141e;--surface:#191d29;--surface2:#202533;--border:#303647;--text:#f3f4fa;--muted:#a0a7bc;--purple:#9b82ff;--pink:#d2a6ff;--good:#71d5a2;--danger:#ff909f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--bg);color:var(--text)}button,textarea,input{font:inherit}button{cursor:pointer;color:inherit}button:disabled{opacity:.5;cursor:not-allowed}textarea,input{color:var(--text)}[hidden]{display:none!important}.layout{display:flex;height:100dvh;overflow:hidden}.sidebar{background:var(--side);border-right:1px solid #252936;width:272px;flex:none;display:flex;flex-direction:column;justify-content:space-between;transition:transform .2s;z-index:6;min-height:0}.sidebar-top{display:flex;flex-direction:column;min-height:0;flex:1;padding:22px 12px 4px}.sidebar-brand{display:flex;align-items:center;gap:10px;margin:0 9px 24px;font-size:17px;letter-spacing:-.4px}.mark,.header-logo{font-size:25px;color:var(--purple)}.mobile-close{display:none!important;margin-left:auto}.new-chat{background:#242938;border:1px solid #384055;padding:12px 16px;border-radius:12px;font-size:13px;text-align:left;width:100%;font-weight:700}.new-chat:hover,.nav-link:hover,.history-item:hover{background:#2a3040}.history-head{display:flex;justify-content:space-between;color:#9da6bb;font-size:11px;font-weight:700;letter-spacing:1px;margin:29px 10px 12px}.history-search,.search-models{border:1px solid #313748;background:#191d29;padding:11px;border-radius:10px;outline:none;width:100%;font-size:12px;margin-bottom:9px}.history-list{min-height:40px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#383d4d transparent;flex:1}.history-item{display:flex;gap:5px;align-items:center;border-radius:10px;margin:3px 0;background:none}.history-item.active{background:#2b2943}.history-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;padding:12px 11px;flex:1;border:0;background:none;font-size:12px}.history-delete{background:none;border:0;color:#9b9fb4;font-size:17px;padding:8px;border-radius:7px}.history-delete:hover{color:#ff9eae}.history-empty{color:#7c8499;font-size:12px;text-align:center;margin:24px 0}.sidebar-bottom{padding:12px;border-top:1px solid #262b38}.nav-link{display:flex;align-items:center;gap:13px;width:100%;text-align:left;background:transparent;border:0;border-radius:10px;font-size:12px;color:#bac2d3;padding:12px 10px}.nav-link.selected{color:#f1eaff;background:#2b2841}.nav-link span{font-size:18px;width:24px}.sidebar-footer{border-top:1px solid #2a2f3b;padding:16px 9px 3px;font-size:11px;color:var(--muted);display:flex;align-items:center;gap:9px}.dot{width:7px;height:7px;border-radius:50%;background:#d7a077}.dot.good{background:var(--good)}.workspace{min-width:0;display:flex;flex:1;flex-direction:column;position:relative}.topbar{height:69px;flex:none;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #252a37;padding:0 23px;background:#12141c}.top-left,.top-right{display:flex;align-items:center;gap:11px}.icon-button{display:grid;place-items:center;background:transparent;border:0;border-radius:9px;font-size:20px;width:39px;height:39px;color:#d0d5e1}.icon-button:hover{background:#2a2d39}.top-title strong{display:block;font-size:14px}.top-title small{display:block;font-size:10px;color:#929bb1;margin-top:3px}.model-chip{font-size:11px;color:#c5b8ff;border:1px solid #443b62;background:#2a2642;padding:8px 11px;border-radius:20px;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page{flex:1;min-height:0;overflow-y:auto;scrollbar-color:#3e4152 transparent;scrollbar-width:thin}.chat-page{display:flex;flex-direction:column;position:relative}.chat-messages{width:100%;max-width:860px;align-self:center;flex:1;min-height:0;overflow-y:auto;padding:24px 32px 10px;display:flex;flex-direction:column;gap:25px;overscroll-behavior:contain}.welcome{margin:auto;text-align:center;padding:32px 20px;max-width:740px}.welcome-logo{width:62px;height:62px;background:linear-gradient(135deg,#8465e9,#44357d);border:1px solid #a88af2;border-radius:20px;display:grid;place-items:center;color:white;font-size:37px;margin:0 auto 20px;box-shadow:0 14px 45px #8e63e534}.welcome-kicker{font-size:10px;letter-spacing:2.1px;color:#b4a2fb;font-weight:750}.welcome h1{font-weight:780;font-size:clamp(29px,4.5vw,43px);letter-spacing:-1.5px;margin:14px 0}.welcome h1 em{font-style:normal;background:linear-gradient(115deg,#c2a1ff,#8fc5ff);background-clip:text;-webkit-text-fill-color:transparent}.welcome p{max-width:570px;margin:0 auto;color:#aab3c9;font-size:14px;line-height:1.8}.quick-prompts{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin-top:27px}.quick-prompts button{background:#1e2330;color:#c5cadd;border:1px solid #373e4f;border-radius:14px;padding:13px 15px;font-size:12px}.quick-prompts button:hover{border-color:var(--purple)}.composer-wrap{width:min(100%,850px);margin:0 auto;flex:none;padding:0 18px 15px;z-index:2}.composer{border:1px solid #464360;background:#212333;border-radius:21px;padding:14px 15px 10px;box-shadow:0 18px 65px #0005}.composer:focus-within{border-color:#8a76de}.composer textarea{border:0;background:none;outline:none;resize:none;width:100%;line-height:1.65;min-height:52px;max-height:165px;font-size:14px}.composer textarea::placeholder{color:#9199af}.composer-bottom{display:flex;justify-content:space-between;align-items:center}.composer-tools{display:flex;align-items:center;gap:12px;min-width:0}.model-selector{background:#34334b;border:1px solid #5d527f;border-radius:21px;padding:9px 14px;color:#d8c9ff;font-weight:750;font-size:12px;max-width:245px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chevron{opacity:.6}.composer-status{font-size:11px;color:#9da5bc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.send-button{width:43px;height:43px;border-radius:13px;background:linear-gradient(125deg,#9b7cff,#6751cb);border:0;font-size:19px;flex:none}.composer-footnote{font-size:10px;color:#798298;text-align:center;margin-top:9px}.chat-message{display:flex;gap:14px;align-items:flex-start;min-width:0}.chat-message.user{flex-direction:row-reverse}.chat-avatar{width:32px;height:32px;border-radius:12px;background:#392e60;color:#e2d1ff;flex:none;display:grid;place-items:center;font-size:18px}.chat-message.user .chat-avatar{background:#414c62;color:white}.chat-message.error .chat-avatar{background:#6c3544;color:#ffcbd3}.chat-content{flex:1;min-width:0;max-width:100%}.chat-message.user .chat-content{flex:0 1 auto;max-width:84%}.chat-label{font-size:11px;color:#a0a9bd;margin:0 0 9px}.chat-message.user .chat-label{text-align:right}.chat-text{line-height:1.75;font-size:14px;overflow-wrap:anywhere;white-space:pre-wrap}.chat-message.user .chat-text{background:#2b2e3d;border:1px solid #42465a;border-radius:16px 4px 16px 16px;padding:11px 16px}.chat-message.error .chat-text{border:1px solid #814756;background:#382432;color:#ffc1cb;padding:15px;border-radius:13px}.code-panel{background:#11151f;border:1px solid #343d52;border-radius:12px;overflow:hidden;margin:10px 0 18px}.code-header{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;background:#222838;color:#a6b3cb;font-size:11px}.code-header button{background:#35405a;border:0;border-radius:7px;padding:6px 10px;font-size:11px}.code-panel pre{white-space:pre;overflow:auto;font-size:12px;line-height:1.6;padding:14px;margin:0;color:#cfdeff}.model-picker{position:absolute;z-index:5;bottom:130px;left:max(calc((100% - 816px)/2),27px);width:min(410px,calc(100% - 54px));max-height:min(70dvh,555px);overflow:hidden;display:flex;flex-direction:column;background:#252735;border:1px solid #494460;box-shadow:0 16px 75px #0009;border-radius:16px;padding:12px}.picker-head{display:flex;align-items:center;justify-content:space-between;padding:5px 8px 9px;font-size:14px}.model-option{border:0;background:none;text-align:left;padding:11px;display:flex;align-items:center;gap:13px;width:100%;border-radius:10px;font-size:12px}.model-option:hover,.model-option.active{background:#38354b}.model-option>span:first-child{color:#bc9bff;font-size:19px}.model-option>span:nth-child(2){flex:1;min-width:0}.model-option b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-option small{display:block;color:#9ea7bd;margin-top:4px}.picker-divider{height:1px;background:#3e4252;margin:9px 5px}.search-models{margin:5px 0 10px}.models-list{overflow-y:auto;min-height:75px;scrollbar-width:thin}.picker-hint{font-size:10px;color:#9a9eb4;line-height:1.65;padding:8px 8px 1px;margin:0}.notice,.security-warning{padding:12px 20px;background:#22344a;color:#d3eaff;border-bottom:1px solid #49657f;font-size:12px;line-height:1.6}.notice.error{background:#462632;color:#ffccd4;border-color:#8a4353}.security-warning{background:#3c301f;color:#ffdb9e;border-color:#634d2c}.settings-page,.api-page{padding:38px 34px 60px}.settings-page>*,.api-page>*{max-width:790px;margin-left:auto;margin-right:auto}.page-heading{margin-bottom:26px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:2px;color:var(--purple)}.page-heading h1{font-size:34px;letter-spacing:-1px;margin:12px 0}.page-heading p{color:var(--muted);font-size:13px;line-height:1.6}.setting-card{background:#171b26;border:1px solid #34394b;border-radius:17px;padding:24px;margin-bottom:17px}.setting-card h2{margin:0;font-size:16px}.setting-card p{color:#a5afc2;line-height:1.65;font-size:12px}.card-title{display:flex;align-items:center;gap:14px;margin-bottom:25px}.card-title p{margin:6px 0 0}.card-symbol{width:40px;height:40px;background:#373059;border-radius:13px;display:grid;place-items:center;color:#c5aaff;font-size:21px;flex:none}.small-badge{margin-left:auto;color:#d0c4ff;border-radius:20px;background:#37304f;padding:7px 10px;white-space:nowrap;font-size:11px}.setting-card label{display:block;font-size:12px;font-weight:700;color:#cad1df;margin:14px 0 9px}.setting-card textarea,.setting-card input{width:100%;background:#0f141f;border:1px solid #363d50;border-radius:11px;padding:13px;font-size:13px;outline:none}.setting-card textarea:focus,.setting-card input:focus,.login-card input:focus{border-color:var(--purple)}.inline-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:13px}.secondary-button{background:#302d46;border:1px solid #554d79;color:#ddd3ff;padding:10px 14px;border-radius:11px;font-size:12px;font-weight:700}.primary-button{background:linear-gradient(125deg,#9474fb,#7054d9);color:white;border:0;padding:12px 19px;border-radius:10px;font-weight:750;font-size:13px}.setting-result{min-height:21px;white-space:pre-wrap;overflow-wrap:anywhere}.setting-result.ok{color:var(--good)}.setting-result.bad{color:var(--danger)}.setting-card summary{display:flex;flex-direction:column;gap:6px;cursor:pointer;list-style:revert}.setting-card summary small{font-size:11px;color:var(--muted)}.extra-providers{margin-top:20px}.extra-provider{border-top:1px solid #303646;padding:18px 0}.extra-provider h3{font-size:13px;margin:0 0 12px}.extra-provider label{font-size:11px}.save-row{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#9faac0;font-size:11px;margin:20px 0}.save-row>span{line-height:1.5}.endpoint-row{display:flex;gap:10px}.endpoint-row input{flex:1;min-width:0}.api-code{white-space:pre;overflow:auto;padding:18px;border:1px solid #384357;background:#0c121d;border-radius:11px;font-size:12px;line-height:1.7}.login-cover{position:fixed;inset:0;z-index:10;background:#080911ec;display:grid;place-items:center;padding:15px;backdrop-filter:blur(9px)}.login-card{width:min(420px,100%);border:1px solid #46415e;border-radius:22px;padding:29px;background:#1c1f2b;box-shadow:0 30px 90px #0008;display:flex;flex-direction:column;gap:13px}.login-card .welcome-logo{margin:0 auto 4px}.login-card h2{text-align:center;font-size:26px;margin:4px 0}.login-card p{text-align:center;color:#b1bacd;line-height:1.55;font-size:13px;margin:0 0 9px}.login-card label{font-size:12px;font-weight:750}.login-card input{background:#101522;border:1px solid #4b4763;border-radius:11px;padding:14px;outline:none}.login-card button{margin-top:5px}.login-card small{font-size:11px;color:#8f99ac;line-height:1.5;text-align:center}.login-card #loginError{color:var(--danger);font-size:12px;line-height:1.6}.sidebar-overlay{position:fixed;inset:0;background:#0009;z-index:5}
@media(max-width:900px){.sidebar{width:260px}.settings-page,.api-page{padding:25px 19px 50px}.topbar{padding:0 14px}}
@media(max-width:700px){.sidebar{position:fixed;inset:0 auto 0 0;transform:translateX(-101%);box-shadow:0 15px 65px #0009}.sidebar.open{transform:translateX(0)}.mobile-close{display:grid!important}.topbar{height:62px}.top-title strong{font-size:13px}.top-title small{font-size:9px}.top-right{gap:4px}.top-right .model-chip{max-width:113px;padding:7px 8px;font-size:10px}.header-logo{display:none}.chat-messages{padding:18px 16px 9px;gap:19px}.welcome{padding:16px 16px 30px}.welcome-logo{width:53px;height:53px;font-size:31px}.welcome h1{font-size:28px}.welcome p{font-size:12px}.welcome-kicker{font-size:9px}.quick-prompts button{padding:11px;font-size:11px}.composer-wrap{padding:0 10px 10px}.composer{padding:11px}.composer-status{display:none}.chat-content{font-size:12px}.chat-text{font-size:13px}.chat-message.user .chat-content{max-width:88%}.model-picker{left:12px;bottom:118px;width:calc(100% - 24px)}.page-heading h1{font-size:28px}.setting-card{padding:18px}.card-title{gap:9px}.small-badge{font-size:9px;padding:5px 7px}.save-row{flex-direction:column;align-items:stretch}.save-row .primary-button{width:100%}}

.chat-page.is-empty .chat-messages{display:none}.chat-page.is-empty .welcome{flex:1;display:flex;flex-direction:column;justify-content:center;max-width:720px}

/* IA BugouMods v2.2 — controles compactos de anexos e cancelamento */
.attachment-strip{display:flex;align-items:center;gap:8px;overflow-x:auto;padding:0 3px 9px;max-width:100%}
.attachment-chip{display:flex;flex-shrink:0;align-items:center;gap:7px;background:#262b3c;border:1px solid #494a69;color:#dee0f1;border-radius:12px;padding:6px 9px;font-size:11px;max-width:235px}
.attachment-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:165px}
.attachment-chip button{border:0;background:#4b345b;border-radius:7px;color:white;width:23px;height:23px;font-size:16px;cursor:pointer}
.attach-button{border:1px solid #545675;border-radius:12px;background:#303147;width:39px;height:39px;font-size:19px;flex-shrink:0}
.stop-button{border:1px solid #bf6979;border-radius:12px;background:#572c3a;color:#ffe3e8;padding:12px 13px;font-weight:700;font-size:12px;cursor:pointer;flex-shrink:0}
.attach-button:hover,.stop-button:hover{filter:brightness(1.13)}
.composer-tools{gap:7px}.composer-status{min-width:0}
.composer [hidden],.composer-wrap [hidden]{display:none!important}
.chat-message.assistant .chat-content{max-width:100%}
@media(max-width:700px){.composer{padding:10px}.model-selector{padding:9px 10px;max-width:180px}.stop-button{padding:11px 10px;font-size:11px}.attachment-chip{max-width:190px}.chat-messages{overflow-anchor:auto}}

/* IA BugouMods v2.3 — respostas estruturadas, ditado e editor de fotos */
.chat-message.assistant .chat-text{white-space:normal;line-height:1.68}
.chat-message.assistant .chat-text .answer-paragraph{margin:.35em 0 .8em;white-space:pre-wrap}
.chat-message.assistant .chat-text h3,.chat-message.assistant .chat-text h4,.chat-message.assistant .chat-text h5{line-height:1.3;margin:1.15em 0 .55em;letter-spacing:-.025em;color:#f4efff}
.chat-message.assistant .chat-text h3{font-size:1.22em}.chat-message.assistant .chat-text h4{font-size:1.1em}
.chat-message.assistant .chat-text ul,.chat-message.assistant .chat-text ol{padding-left:22px;margin:10px 0 14px}.chat-message.assistant .chat-text li{margin:5px 0}
.chat-message.assistant .chat-text blockquote{border-left:3px solid var(--purple);margin:12px 0;padding:7px 12px;background:#252337;border-radius:4px 9px 9px 4px}
.chat-message.assistant .chat-text a{color:#beb3ff;text-decoration:underline;text-underline-offset:3px}
.chat-message.assistant .chat-text :not(pre)>code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.9em;padding:2px 5px;border-radius:5px;background:#282c3a;color:#d3c9ff}
.answer-table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto;font-size:12px;margin:12px 0}.answer-table th,.answer-table td{border:1px solid #3f4359;padding:9px 11px;text-align:left;min-width:80px}.answer-table th{background:#26283b;color:#ded5ff}
.code-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.code-tools .mini-action{background:#364057;border:1px solid #535a70;color:#e0e8ff;padding:7px 9px;border-radius:8px;font-size:11px;line-height:1.2}
.code-header{gap:8px;flex-wrap:wrap}.code-body{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;tab-size:2;overflow-x:auto;max-height:65vh;white-space:pre;font-size:12px}
.message-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.message-actions .mini-action{border:1px solid #373b4e;background:#212538;color:#aeb6cb;padding:6px 10px;border-radius:8px;font-size:10px}.message-actions .mini-action:hover{color:white;border-color:#736a9c}
.thinking-pulse{display:inline-flex;gap:12px;color:#bdadfb;font-size:12px;align-items:center;min-height:26px}.thinking-pulse::before{content:'';width:8px;height:8px;background:#9d7cf0;border-radius:50%;box-shadow:12px 0 #9d7cf099,-12px 0 #9d7cf044;animation:thinkingBeat 1.3s ease-in-out infinite alternate}
@keyframes thinkingBeat{to{opacity:.4;transform:scale(.72)}}
.technical-diagnostic{overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-size:10px;background:#1a1521;padding:12px;border-radius:9px;line-height:1.6}.chat-message.error summary{margin-top:10px;cursor:pointer;font-size:11px;color:#f7bac7}
.voice-button.listening{border-color:#f88fba;background:#5b294b;animation:voiceGlow 1.2s infinite alternate}.attach-button.active{border-color:#ab92ff;background:#554279;box-shadow:0 0 0 2px #a58aff24}@keyframes voiceGlow{to{box-shadow:0 0 0 5px #a8548533}}
.generated-image{display:flex;flex-direction:column;gap:9px;max-width:500px;margin:15px 0}.generated-image img{width:100%;max-height:480px;object-fit:contain;border:1px solid #393f59;border-radius:15px;background:#1b1c25}.generated-image .mini-action{align-self:flex-start;border:1px solid #5a4d85;background:#30294c;padding:9px 13px;border-radius:9px;font-weight:700;font-size:12px}
.photo-editor-overlay{position:fixed;inset:0;z-index:15;background:#070911e8;display:grid;place-items:center;padding:15px;overflow:auto}.photo-editor-card{width:min(520px,100%);max-height:95dvh;overflow:auto;display:flex;flex-direction:column;gap:12px;padding:20px;border:1px solid #59517a;border-radius:20px;background:#1b1f2d;box-shadow:0 30px 90px #0009}.photo-editor-head{display:flex;align-items:center;justify-content:space-between}.photo-editor-head strong{font-size:15px}.editor-description{color:#aeb9cf;font-size:12px;margin:0}.photo-editor-card canvas{width:100%;height:auto;max-height:43dvh;object-fit:contain;background:#121622;border-radius:10px}.photo-editor-card label{font-size:11px;display:flex;align-items:center;justify-content:space-between;gap:12px}.photo-editor-card input[type=range]{width:65%;accent-color:#a58cf8}.editor-actions{display:flex;gap:9px;flex-wrap:wrap}.editor-actions .primary-button{margin-left:auto}
.attachment-chip .editor-mini{border:1px solid #7266a4;background:#3a3654;border-radius:7px;padding:5px 8px;color:#eee5ff;cursor:pointer;font-size:10px}.attachment-chip .remove-mini{border:0;background:#503146;border-radius:7px;width:23px;height:23px;font-size:16px;cursor:pointer}
@media(max-width:700px){.composer-tools{gap:5px}.voice-button,.attach-button{width:35px;height:35px;font-size:16px}.model-selector{max-width:140px;padding:8px}.chat-message.assistant .chat-text{font-size:13px}.code-tools .mini-action{font-size:10px;padding:6px}.code-panel pre{padding:11px}.photo-editor-card{padding:14px}.editor-actions .primary-button{width:100%;margin-left:0}}
@media(prefers-reduced-motion:reduce){.thinking-pulse::before,.voice-button.listening{animation:none}}

.activity-status{display:flex;gap:10px;align-items:center;background:#211d33;border:1px solid #494064;border-radius:13px;padding:10px 14px;margin-bottom:9px;color:#dccdff;font-size:12px;box-shadow:0 6px 22px #0002}
.activity-orbit{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#43326a;color:#bda8ff;animation:activitySpin 2.2s linear infinite;font-size:13px}
@keyframes activitySpin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.activity-orbit{animation:none}}
