:root{
  --bg:#07111f;--bg2:#0b1628;--panel:#0f1c30;--panel2:#13233b;
  --line:rgba(255,255,255,.08);--text:#f5f8ff;--muted:#91a2bd;
  --accent:#7c8cff;--accent2:#42d6b4;--danger:#ff668a;
  --shadow:0 24px 70px rgba(0,0,0,.35);--radius:22px
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body{background:radial-gradient(circle at 85% 0%,rgba(80,93,218,.18),transparent 32%),linear-gradient(180deg,#07111f,#081321 55%,#06101c)}
button,input,textarea,select{font:inherit}.hidden{display:none!important}.muted{color:var(--muted)}.error{color:#ff8aa4;min-height:1.2em;font-size:.9rem}.eyebrow{font-size:.71rem;letter-spacing:.17em;font-weight:800;color:#8394b2;margin:0 0 8px;text-transform:uppercase}
.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(440px,100%);background:linear-gradient(145deg,rgba(19,35,59,.95),rgba(11,23,40,.95));border:1px solid var(--line);border-radius:28px;padding:42px;box-shadow:var(--shadow);backdrop-filter:blur(20px)}
.login-card h1{font-size:2.3rem;margin:10px 0 8px}.login-card form{margin-top:30px}.brand-mark{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;font-weight:900;font-size:1.5rem;background:linear-gradient(145deg,#8997ff,#4e5fd2);box-shadow:0 12px 30px rgba(89,104,226,.35)}.brand-mark.small{width:38px;height:38px;border-radius:12px;font-size:1rem}
label{display:grid;gap:8px;color:#aebbd1;font-size:.83rem;font-weight:700}input,textarea,select{width:100%;background:#091525;border:1px solid rgba(255,255,255,.1);color:var(--text);border-radius:13px;padding:13px 14px;outline:none;transition:.2s}input:focus,textarea:focus,select:focus{border-color:#6f80ef;box-shadow:0 0 0 3px rgba(111,128,239,.12)}textarea{resize:vertical;line-height:1.55}
button{border:0;cursor:pointer}.primary{background:linear-gradient(135deg,#8190ff,#5969df);color:white;border-radius:13px;padding:12px 18px;font-weight:800;box-shadow:0 10px 28px rgba(80,95,220,.22)}.primary:hover{filter:brightness(1.06)}.secondary{background:#172842;border:1px solid var(--line);color:#e7ecf7;border-radius:13px;padding:12px 16px;font-weight:800}.ghost{background:transparent;color:#a7b5ca}.wide{width:100%;margin-top:14px}.small-btn{padding:6px 0}
.app-shell{min-height:100vh;display:grid;grid-template-columns:230px 1fr}.sidebar{position:sticky;top:0;height:100vh;border-right:1px solid var(--line);padding:24px 18px;display:flex;flex-direction:column;background:rgba(6,15,27,.72);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:12px;padding:3px 8px 26px}.brand strong,.brand span{display:block}.brand strong{font-size:1rem}.brand span{color:#7e91ae;font-size:.8rem}.sidebar nav{display:grid;gap:6px}.nav-item{background:transparent;color:#8fa1bc;text-align:left;border-radius:12px;padding:11px 12px;font-weight:700}.nav-item.active,.nav-item:hover{background:#13243c;color:white}.sidebar-bottom{margin-top:auto;padding:10px}.status-line{font-size:.82rem;color:#98a9c2;margin-bottom:12px;display:flex;gap:8px;align-items:center}.dot{width:8px;height:8px;border-radius:50%;background:#4ed7ad;box-shadow:0 0 0 4px rgba(78,215,173,.1)}
.main{padding:28px 36px 70px;min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.topbar h2{margin:0;font-size:1.65rem}.top-actions{display:flex;gap:10px;align-items:center}.pill,.cost-pill{border:1px solid var(--line);background:#12223a;border-radius:999px;padding:7px 10px;color:#aebbd0;font-size:.75rem;font-weight:800}.cost-pill{color:#59ddb8;background:rgba(44,172,140,.12)}
.page{max-width:1400px;margin:0 auto}.hero-card{min-height:260px;padding:34px 40px;border:1px solid var(--line);border-radius:28px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;position:relative;background:linear-gradient(135deg,#132441 0%,#0d1b31 65%,#142544 100%);box-shadow:var(--shadow)}.hero-card:before{content:"";position:absolute;inset:auto -100px -180px auto;width:450px;height:450px;border-radius:50%;background:radial-gradient(circle,rgba(116,129,255,.22),transparent 60%)}.hero-badge{display:inline-block;background:rgba(116,129,255,.13);border:1px solid rgba(126,140,255,.25);color:#a9b4ff;padding:7px 10px;border-radius:999px;font-size:.68rem;font-weight:900;letter-spacing:.1em}.hero-card h3{font-size:clamp(2rem,4vw,3.5rem);line-height:1.03;margin:20px 0 14px;letter-spacing:-.04em}.hero-card h3 em{font-style:normal;color:#8b9aff}.hero-card p{max-width:640px;color:#9dafc8;line-height:1.6}.orb{width:190px;height:190px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 30% 25%,rgba(150,160,255,.55),rgba(61,73,180,.12) 40%,rgba(9,20,36,.3) 70%);border:1px solid rgba(145,156,255,.2);box-shadow:inset 0 0 60px rgba(115,127,255,.12),0 0 80px rgba(86,98,228,.15);margin-right:30px;z-index:1}.orb-inner{width:95px;height:95px;border-radius:50%;display:grid;place-items:center;background:#0a1628;border:1px solid rgba(255,255,255,.13);font-weight:900;font-size:1.7rem;color:#b5beff}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0 34px}.metric{background:rgba(15,28,48,.86);border:1px solid var(--line);border-radius:18px;padding:20px}.metric span,.metric small{display:block;color:#8294b0}.metric span{font-size:.79rem;font-weight:700}.metric strong{display:block;font-size:1.65rem;margin:9px 0 4px}.metric small{font-size:.72rem}.section-heading{display:flex;justify-content:space-between;align-items:end;margin:12px 2px 14px}.section-heading h3{margin:0}.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.project-card{background:linear-gradient(145deg,#101f35,#0c192b);border:1px solid var(--line);border-radius:20px;padding:20px;transition:.2s}.project-card:hover{transform:translateY(-2px);border-color:rgba(130,145,255,.3)}.project-icon{width:42px;height:42px;border-radius:12px;background:#1a2c49;display:grid;place-items:center;margin-bottom:24px;color:#9ba8ff;font-weight:900}.project-card h4{font-size:1.05rem;margin:0 0 6px}.project-card p{color:#8294b0;font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-card footer{display:flex;justify-content:space-between;align-items:center;margin-top:18px}.mini-status{font-size:.7rem;color:#54d8b1}.text-btn{background:transparent;color:#9ba8ff;font-weight:800;font-size:.8rem}
.workspace-grid{display:grid;grid-template-columns:280px 1fr;gap:16px}.project-panel,.agent-card,.result-card,.cost-hero,.info-card{background:rgba(15,28,48,.9);border:1px solid var(--line);border-radius:22px}.project-panel{padding:20px;height:max-content}.project-meta{color:#8698b3;font-size:.75rem;line-height:1.6;padding:14px 2px}.safe-note{margin-top:18px;padding:13px;border-radius:13px;background:rgba(61,211,170,.07);border:1px solid rgba(61,211,170,.12)}.safe-note strong,.safe-note span{display:block}.safe-note strong{color:#6ee0bd;font-size:.76rem}.safe-note span{color:#8ca0ba;font-size:.7rem;margin-top:5px;line-height:1.4}.agent-card{padding:24px}.agent-head,.result-head{display:flex;justify-content:space-between;align-items:start;gap:16px;margin-bottom:18px}.agent-head h3,.result-head h3{margin:0}.live-dot{font-size:.66rem;color:#5adeb6;font-weight:900}.controls{display:grid;grid-template-columns:180px 200px 1fr;gap:12px;align-items:end;margin-top:14px}.run-btn{height:45px}.run-progress{display:flex;gap:12px;align-items:center;margin-top:18px;padding:14px;background:#0b1829;border-radius:14px}.run-progress strong,.run-progress small{display:block}.run-progress small{color:#8497b3;margin-top:4px}.spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.16);border-top-color:#8594ff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.result-card{margin-top:16px;padding:24px}.result-stats{display:flex;gap:8px}.result-text,.diff-box pre{white-space:pre-wrap;word-break:break-word;color:#d9e1ef;background:#091524;border-radius:14px;padding:18px;line-height:1.58;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;max-height:700px;overflow:auto;border:1px solid rgba(255,255,255,.05)}.actions-list{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.action-chip{font-size:.68rem;padding:6px 8px;border-radius:999px;background:#132743;color:#97a9c4}.action-chip.bad{color:#ff8aa4}.diff-box{margin-top:14px}.diff-box summary{cursor:pointer;color:#a8b4ff;font-weight:800}.diff-box pre{margin-top:12px}
.cost-hero{padding:30px}.budget-line{display:flex;align-items:baseline;gap:8px}.budget-line strong{font-size:3rem;letter-spacing:-.04em}.budget-line span{color:#8193af}.progress{height:10px;border-radius:999px;background:#091524;overflow:hidden;margin:20px 0 9px}.progress div{height:100%;width:0;background:linear-gradient(90deg,#6071e8,#4ed7ad);border-radius:inherit}.model-costs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:16px 0}.model-cost{background:#0f1c30;border:1px solid var(--line);border-radius:18px;padding:18px}.model-cost span{display:block;color:#8698b3;font-size:.74rem}.model-cost strong{display:block;font-size:1.4rem;margin-top:8px}.info-card{padding:20px;color:#9daec6}.info-card strong{color:white}.info-card p{margin-bottom:0;line-height:1.6}
dialog{width:min(620px,calc(100% - 28px));background:#0d1b2f;color:white;border:1px solid rgba(255,255,255,.1);border-radius:22px;padding:0;box-shadow:var(--shadow)}dialog::backdrop{background:rgba(2,8,16,.75);backdrop-filter:blur(5px)}dialog form{padding:24px;display:grid;gap:15px}.dialog-head{display:flex;justify-content:space-between}.dialog-head h3{margin:0}.icon-btn{width:35px;height:35px;border-radius:10px;background:#172842;color:white;font-size:1.4rem}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tiny{font-size:.72rem;margin:0}
@media(max-width:1050px){.app-shell{grid-template-columns:78px 1fr}.sidebar{padding:22px 12px}.brand>div:last-child,.nav-item{font-size:0}.nav-item:before{font-size:1rem}.nav-item[data-page="home"]:before{content:"⌂"}.nav-item[data-page="workspace"]:before{content:"AI"}.nav-item[data-page="costs"]:before{content:"$"}.nav-item{text-align:center}.sidebar-bottom{padding:4px}.status-line span:last-child{display:none}.projects-grid{grid-template-columns:repeat(2,1fr)}.orb{display:none}.metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;z-index:30;top:auto;bottom:0;left:0;right:0;width:100%;height:66px;flex-direction:row;align-items:center;border-right:0;border-top:1px solid var(--line);padding:8px 14px}.brand,.sidebar-bottom{display:none}.sidebar nav{width:100%;grid-template-columns:repeat(3,1fr);gap:6px}.nav-item{padding:10px}.main{padding:20px 16px 90px}.topbar{align-items:flex-start}.top-actions .pill{display:none}.hero-card{padding:28px 24px;min-height:230px}.hero-card h3{font-size:2.35rem}.metrics{grid-template-columns:1fr 1fr}.projects-grid{grid-template-columns:1fr}.workspace-grid{grid-template-columns:1fr}.controls{grid-template-columns:1fr 1fr}.run-btn{grid-column:1/-1}.model-costs{grid-template-columns:1fr}.budget-line strong{font-size:2.3rem}.result-head{display:block}.result-stats{margin-top:12px}}

/* v0.2 — memória local + múltiplos motores */
.provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:-12px 0 30px}.provider-card{display:flex;align-items:center;gap:14px;background:linear-gradient(145deg,#0f1f35,#0b1829);border:1px solid var(--line);border-radius:18px;padding:17px 18px}.provider-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,#20365a,#162741);color:#9fb2ff;font-weight:900;font-size:.78rem;letter-spacing:.04em}.provider-icon.openai{background:linear-gradient(145deg,#183a35,#102722);color:#75e2bd}.provider-card div:last-child{min-width:0}.provider-card span,.provider-card strong,.provider-card small{display:block}.provider-card span{font-size:.62rem;letter-spacing:.12em;color:#7186a6;font-weight:900}.provider-card strong{margin:4px 0 5px;font-size:.95rem}.provider-card small{font-size:.72rem}.provider-ok{color:#60d8b3}.provider-warn{color:#e9c36f}.project-memory-mini{margin-top:13px;color:#7f92b0;font-size:.7rem;padding:7px 9px;border-radius:10px;background:#0a1728;border:1px solid rgba(255,255,255,.04)}.memory-line{color:#75d8bb}.safe-note.blue{background:rgba(101,118,232,.07);border-color:rgba(101,118,232,.16)}.safe-note.blue strong{color:#99a7ff}.engine-hint{margin:10px 2px 0;color:#7f93b0;font-size:.72rem;line-height:1.45}.memory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0}.info-card>span{display:block;margin-bottom:9px}.info-card>strong{display:block;font-size:1.06rem}.model-cost small{display:block;color:#71839f;margin-top:5px;font-size:.68rem}
@media(max-width:760px){.provider-grid,.memory-grid{grid-template-columns:1fr}.result-stats{flex-wrap:wrap}.project-panel{order:2}.agent-card{order:1}}

/* v0.4 — AutoRouter multi-IA, chat persistente, checkpoints e terminal */
.provider-limit{color:#ff9a76}.provider-card.limited{border-color:rgba(255,132,96,.28);background:linear-gradient(145deg,rgba(76,35,30,.55),#0b1829)}
.warning-dot{background:#ff9a76!important;box-shadow:0 0 0 4px rgba(255,154,118,.1)!important}
.safe-note.purple{background:rgba(135,113,255,.07);border-color:rgba(135,113,255,.18)}.safe-note.purple strong{color:#a99cff}.safe-note code{color:#cad2ff;background:#0a1525;padding:2px 5px;border-radius:5px}
.chat-workspace-grid{grid-template-columns:270px minmax(0,1fr);align-items:start}.chat-shell{height:calc(100vh - 150px);min-height:640px;background:rgba(10,20,35,.92);border:1px solid var(--line);border-radius:24px;display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow)}
.chat-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;border-bottom:1px solid var(--line);background:rgba(13,26,45,.88);backdrop-filter:blur(14px)}.chat-head h3{margin:0;font-size:1.08rem}.chat-head .eyebrow{margin-bottom:5px}.chat-engine-state{display:flex;align-items:center;gap:8px;color:#8ea1bd;font-size:.72rem;font-weight:700}
.chat-messages{flex:1;overflow:auto;padding:28px 24px 18px;scroll-behavior:smooth}.chat-empty{height:100%;min-height:260px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#8da0bc}.chat-empty-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,#253c65,#172944);border:1px solid rgba(145,160,255,.23);color:#b9c2ff;font-weight:900;margin-bottom:16px}.chat-empty h3{margin:0 0 8px;color:#eaf0fa;font-size:1.35rem}.chat-empty p{max-width:520px;margin:0;line-height:1.55;font-size:.83rem}
.message-row{display:flex;gap:11px;align-items:flex-start;margin:0 auto 22px;max-width:980px}.message-row.user{justify-content:flex-end}.message-row.assistant{justify-content:flex-start}.avatar{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;flex:0 0 auto;font-size:.64rem;font-weight:900}.assistant-avatar{background:linear-gradient(145deg,#20375d,#142640);color:#b4c0ff;border:1px solid rgba(146,158,255,.16)}.user-avatar{background:#273a5d;color:#fff;font-size:.58rem}
.message-bubble{max-width:min(82%,820px);border-radius:19px;padding:15px 17px;position:relative}.user-bubble{background:linear-gradient(145deg,#6475ef,#5263d4);color:#fff;border-bottom-right-radius:6px}.assistant-bubble{background:#0f1f35;border:1px solid rgba(255,255,255,.075);color:#dfe7f4;border-bottom-left-radius:6px}.message-copy{white-space:pre-wrap;word-break:break-word;line-height:1.6;font-size:.86rem}.assistant-copy{font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}.message-time{margin-top:8px;font-size:.61rem;opacity:.48;text-align:right}.assistant-meta{display:flex;justify-content:space-between;gap:12px;color:#8da1bd;font-size:.64rem;font-weight:800;margin-bottom:10px}.assistant-meta span:first-child{color:#aab6ff}.fallback-note{margin:0 0 12px;padding:10px 12px;border-radius:12px;background:rgba(232,171,75,.09);border:1px solid rgba(232,171,75,.17);color:#d9c395;font-size:.72rem;line-height:1.45}.fallback-note strong{display:block;color:#ffd483;margin-bottom:3px}.inline-diff{margin-top:12px;border-top:1px solid rgba(255,255,255,.07);padding-top:10px}.inline-diff summary{cursor:pointer;color:#aab5ff;font-weight:800;font-size:.72rem}.inline-diff pre{max-height:430px;overflow:auto;white-space:pre-wrap;background:#081321;padding:12px;border-radius:10px;color:#ced8e7;font-size:.72rem;line-height:1.45}
.chat-composer-wrap{padding:0 18px 18px;background:linear-gradient(180deg,rgba(7,17,31,0),#07111f 20%)}.chat-composer{background:#0d1c31;border:1px solid rgba(153,165,255,.17);border-radius:20px;padding:12px 13px;box-shadow:0 16px 40px rgba(0,0,0,.25)}.chat-composer textarea{min-height:58px;max-height:180px;resize:vertical;border:0;background:transparent;padding:6px 7px;box-shadow:none}.chat-composer textarea:focus{box-shadow:none}.composer-bottom{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-top:7px}.composer-controls{display:flex;gap:8px;min-width:0}.composer-controls label{font-size:.62rem;color:#8194b0}.composer-controls select{height:36px;min-width:150px;padding:0 31px 0 10px;border-radius:10px;font-size:.72rem}.send-btn{height:39px;padding:0 20px;border-radius:12px}.chat-composer .engine-hint{margin:8px 5px 0}
.typing-bubble{display:flex;align-items:center;gap:5px;min-height:46px}.typing-bubble>span{width:7px;height:7px;border-radius:50%;background:#8798ff;animation:typingPulse 1.15s infinite ease-in-out}.typing-bubble>span:nth-child(2){animation-delay:.15s}.typing-bubble>span:nth-child(3){animation-delay:.3s}.typing-bubble small{margin-left:6px;color:#8397b4}@keyframes typingPulse{0%,80%,100%{opacity:.28;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
.toast-stack{position:fixed;top:18px;right:18px;z-index:1000;display:grid;gap:10px;width:min(420px,calc(100vw - 36px));pointer-events:none}.toast{display:flex;gap:10px;align-items:flex-start;padding:13px 15px;border:1px solid rgba(255,255,255,.1);background:rgba(12,26,45,.97);box-shadow:0 18px 50px rgba(0,0,0,.4);border-radius:14px;color:#dfe7f3;font-size:.78rem;line-height:1.4;opacity:0;transform:translateY(-8px);transition:.22s}.toast.show{opacity:1;transform:translateY(0)}.toast-icon{width:22px;height:22px;border-radius:7px;display:grid;place-items:center;background:#1d3151;color:#9dabff;font-weight:900;flex:0 0 auto}.toast.ok .toast-icon{background:rgba(73,201,158,.13);color:#62ddb5}.toast.error .toast-icon{background:rgba(255,104,132,.12);color:#ff879e}
.actions-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.action-chip{font-size:.64rem;padding:5px 7px;border-radius:999px;background:#172a45;color:#9fb0ca}.action-chip.bad{color:#ff8da3}
@media(max-width:1050px){.chat-workspace-grid{grid-template-columns:240px minmax(0,1fr)}.chat-shell{height:calc(100vh - 130px)}}
@media(max-width:760px){.chat-workspace-grid{grid-template-columns:1fr}.chat-shell{height:calc(100vh - 180px);min-height:620px;order:1}.project-panel{order:2}.chat-head{padding:14px 15px}.chat-messages{padding:20px 12px 12px}.message-bubble{max-width:88%}.avatar{width:30px;height:30px}.chat-composer-wrap{padding:0 10px 10px}.composer-bottom{align-items:stretch;flex-direction:column}.composer-controls{display:grid;grid-template-columns:1fr 1fr;width:100%}.composer-controls select{min-width:0;width:100%}.send-btn{width:100%}.assistant-meta{flex-direction:column;gap:3px}.safe-note.purple{display:none}}

.finalization-note{margin:0 0 12px;padding:10px 12px;border-radius:12px;background:rgba(74,211,168,.08);border:1px solid rgba(74,211,168,.18);color:#b7d8cd;font-size:.72rem;line-height:1.45}.finalization-note strong{display:block;color:#72e0bd;margin-bottom:3px}.action-chip.repeat{opacity:.72;border:1px dashed rgba(255,255,255,.12)}

/* v0.4 — AutoRouter, configuração de provedores e tarefas assíncronas */
.router-hero{overflow:hidden}.hero-actions{display:flex;gap:10px;margin-top:22px}.router-orb{position:relative;width:230px;height:230px;display:grid;place-items:center;flex:0 0 auto}.router-core{width:104px;height:104px;border-radius:32px;display:grid;place-items:center;background:radial-gradient(circle at 35% 25%,#7e8cff,#253d67 58%,#102038);border:1px solid rgba(170,178,255,.3);box-shadow:0 0 70px rgba(102,116,255,.28);font-weight:950;font-size:1.3rem;color:#fff}.sat{position:absolute;width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:#12243d;border:1px solid rgba(161,174,255,.22);color:#aebaff;font-weight:900;font-size:.68rem;box-shadow:0 12px 30px rgba(0,0,0,.25)}.sat.s1{top:16px;left:93px}.sat.s2{right:13px;top:93px}.sat.s3{bottom:13px;left:93px}.sat.s4{left:13px;top:93px}.router-orb:before,.router-orb:after{content:"";position:absolute;border:1px dashed rgba(143,157,255,.2);border-radius:50%;inset:42px;animation:spin 28s linear infinite}.router-orb:after{inset:12px;animation-direction:reverse;animation-duration:42s}@keyframes spin{to{transform:rotate(360deg)}}
.route-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:0 0 32px}.route-node{position:relative;display:flex;align-items:center;gap:10px;min-height:72px;padding:13px 13px 13px 42px;border-radius:16px;background:#0d1d31;border:1px solid var(--line)}.route-node.free{border-color:rgba(73,201,158,.16)}.route-node.paid{border-color:rgba(232,171,75,.18)}.route-order{position:absolute;left:12px;width:21px;height:21px;border-radius:8px;display:grid;place-items:center;background:#1c3151;color:#aab8ff;font-size:.64rem;font-weight:900}.route-node div{min-width:0}.route-node strong,.route-node small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-node strong{font-size:.77rem}.route-node small{margin-top:4px;color:#7d91af;font-size:.62rem}.route-node em{position:absolute;right:9px;top:8px;font-size:.52rem;color:#69d6b0;font-style:normal;text-transform:uppercase;letter-spacing:.07em}.route-node.paid em{color:#e6bd72}.route-empty{grid-column:1/-1;padding:18px;border-radius:16px;background:#0d1d31;border:1px dashed rgba(255,255,255,.12)}.route-empty strong,.route-empty span{display:block}.route-empty span{margin-top:6px;color:#8295b1;font-size:.75rem}
.provider-page-head{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:26px 28px;border:1px solid var(--line);background:linear-gradient(145deg,#101f35,#0b1728);border-radius:22px;margin-bottom:14px}.provider-page-head h3{margin:4px 0 9px;font-size:1.45rem}.provider-page-head p{margin:0;max-width:720px;color:#8fa1bb;font-size:.8rem;line-height:1.55}.provider-summary{display:grid;grid-template-columns:auto auto;gap:3px 9px;align-items:baseline;flex:0 0 auto}.provider-summary strong{font-size:1.8rem;color:#b6c0ff;text-align:right}.provider-summary span{font-size:.67rem;color:#8194b0}.policy-bar{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:15px 18px;background:rgba(92,108,226,.07);border:1px solid rgba(111,126,239,.16);border-radius:16px;margin-bottom:18px}.policy-bar strong,.policy-bar span{display:block}.policy-bar>div:first-child span{font-size:.7rem;color:#8ea0bb;margin-top:3px}.policy-pills{display:flex;gap:6px;flex-wrap:wrap}.policy-pills span{padding:5px 8px;border-radius:999px;background:#152943;color:#9badc6;font-size:.59rem;font-weight:800}.providers-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.provider-config-card{padding:18px;border-radius:19px;background:linear-gradient(145deg,#0f1f35,#0a1728);border:1px solid var(--line);display:flex;flex-direction:column;min-height:230px}.provider-config-card.limited{border-color:rgba(255,145,102,.24)}.provider-config-head{display:flex;align-items:center;gap:12px}.provider-config-head>div{min-width:0;flex:1}.provider-config-head strong,.provider-config-head small{display:block}.provider-config-head small{margin-top:3px;color:#7c90ad;font-size:.64rem}.health-badge{padding:5px 7px;border-radius:999px;font-size:.55rem;font-weight:900;letter-spacing:.06em}.health-badge.ok{background:rgba(73,201,158,.1);color:#65dcb5}.health-badge.warn{background:rgba(232,171,75,.1);color:#e5bd76}.health-badge.off{background:rgba(137,151,174,.09);color:#8496b0}.provider-config-card>p{color:#8fa1bb;font-size:.74rem;line-height:1.55;margin:15px 0}.provider-stats{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}.provider-stats span{padding:5px 7px;border-radius:8px;background:#091626;color:#8799b5;font-size:.6rem}.provider-stats .provider-error-mini{color:#e6a0ab;background:rgba(255,104,132,.07);width:100%;line-height:1.35}.provider-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.danger-text{color:#f08ba0!important}.danger-soft{border-color:rgba(255,104,132,.15)!important;color:#e590a1!important}
.task-progress{padding:13px 14px;margin-bottom:10px;border-radius:16px;background:#0d1c31;border:1px solid rgba(118,135,244,.22);box-shadow:0 12px 35px rgba(0,0,0,.2)}.progress-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.progress-top strong,.progress-top span{display:block}.progress-top strong{font-size:.76rem}.progress-top span{margin-top:3px;color:#8497b3;font-size:.63rem}.task-progress .progress{height:7px;margin:10px 0 7px}.task-progress .progress>div{width:0;transition:width .35s ease}.progress-meta{display:flex;justify-content:space-between;color:#8396b2;font-size:.61rem}.progress-events{display:grid;gap:3px;margin-top:8px;max-height:80px;overflow:hidden}.progress-events span{font-size:.58rem;color:#7287a7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progress-events b{color:#9ba9ff;margin-right:4px;text-transform:uppercase}.verification-box{display:flex;gap:6px;flex-wrap:wrap;margin-top:13px;padding-top:11px;border-top:1px solid rgba(255,255,255,.07)}.verification-box>strong{width:100%;font-size:.68rem;color:#91a4c0}.verification-box span{padding:5px 7px;border-radius:8px;background:#132740;font-size:.62rem;color:#9fb1ca}.verification-box span.ok{color:#67dcb5}.verification-box span.bad{color:#ff8da3}
#providerDialog form{width:min(560px,calc(100vw - 34px))}.optional{font-size:.6rem;color:#7287a6;font-weight:500}.dialog-note{font-size:.69rem!important;line-height:1.5!important;color:#7f92ae!important}
@media(max-width:1180px){.route-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.providers-config-grid{grid-template-columns:1fr}.router-orb{display:none}}
@media(max-width:760px){.sidebar nav{grid-template-columns:repeat(4,1fr)}.nav-item{font-size:.65rem;padding:10px 4px}.route-preview{grid-template-columns:1fr}.provider-page-head{display:block;padding:21px}.provider-summary{margin-top:18px;justify-content:start}.policy-bar{display:block}.policy-pills{margin-top:11px}.hero-actions{flex-direction:column}.provider-actions button{flex:1}.task-progress{margin-bottom:8px}}

/* v0.4.0 — interface consolidada do AutoRouter */
.provider-grid-auto,.providers-settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:14px}
.provider-overview-card{background:linear-gradient(145deg,#101f35,#0b182a);border:1px solid var(--line);border-radius:18px;padding:17px;min-height:165px;display:flex;flex-direction:column}
.provider-overview-card.ready{border-color:rgba(67,214,174,.18)}
.provider-overview-card.idle{border-color:rgba(255,255,255,.075)}
.provider-overview-head{display:flex;align-items:center;gap:11px}.provider-overview-head>div{min-width:0}.provider-overview-head strong,.provider-overview-head small{display:block}.provider-overview-head small{color:#8194b0;font-size:.65rem;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.provider-overview-card p{color:#8da0bb;font-size:.73rem;line-height:1.5;margin:14px 0}.provider-overview-card .text-btn{margin-top:auto;text-align:left}
.settings-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;border-radius:23px;border:1px solid var(--line);background:linear-gradient(145deg,#11213a,#0b1729);margin-bottom:15px}.settings-hero h3{margin:4px 0 10px;font-size:1.55rem}.settings-hero p{margin:0;color:#8ea1bd;line-height:1.55;max-width:760px;font-size:.8rem}
.router-settings{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-bottom:15px}.router-settings h3{margin:3px 0}.router-setting-grid{display:flex;align-items:end;gap:12px;flex-wrap:wrap;justify-content:flex-end}.router-setting-grid>label:first-child{min-width:190px}.toggle-label{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px!important;cursor:pointer}.toggle-label input{width:18px;height:18px;accent-color:#7d8dff}.toggle-label span{color:#aebbd1;font-size:.73rem;font-weight:700}
.providers-settings-grid{margin-bottom:30px}.provider-config-card{min-height:255px}.provider-actions .small-btn{padding:8px 10px}.provider-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#192d4a;color:#aeb9ff;font-weight:900;font-size:.67rem;flex:0 0 auto}.provider-icon.openai{background:linear-gradient(145deg,#263d66,#172a46)}
.model-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:18px;background:#0d1b2e;margin-bottom:15px}.model-table{width:100%;border-collapse:collapse;min-width:760px}.model-table th,.model-table td{text-align:left;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.055);font-size:.72rem}.model-table th{color:#7f92af;text-transform:uppercase;letter-spacing:.08em;font-size:.6rem;background:#0a1728}.model-table td{color:#a9b7cb}.model-table tbody tr:hover{background:rgba(124,140,255,.045)}.model-table strong{color:#e7edf8}.empty-table{text-align:center!important;color:#8395b0!important;padding:28px!important}.billing-badge{display:inline-block;padding:5px 7px;border-radius:999px;font-size:.57rem;font-weight:900}.billing-badge.free{background:rgba(65,212,171,.09);color:#64dcb5}.billing-badge.paid{background:rgba(232,171,75,.09);color:#e3ba72}.warning-card{border-color:rgba(232,171,75,.16);margin-top:14px}.warning-card p{color:#9d947f}
.progress-bubble{display:block;min-width:min(620px,78vw)}.typing-line{display:flex;align-items:center;gap:5px}.typing-line>span{width:7px;height:7px;border-radius:50%;background:#8798ff;animation:typingPulse 1.15s infinite ease-in-out}.typing-line>span:nth-child(2){animation-delay:.15s}.typing-line>span:nth-child(3){animation-delay:.3s}.typing-line small{margin-left:6px;color:#93a5c0}.progress-bubble .task-progress{height:7px;padding:0;margin:12px 0 8px;background:#081523;overflow:hidden;border:0;box-shadow:none}.progress-bubble .task-progress>div{height:100%;width:0;background:linear-gradient(90deg,#6678eb,#4ed7ad);transition:width .35s ease}.progress-bubble .progress-meta{display:flex;justify-content:space-between;align-items:center;color:#8396b2;font-size:.63rem}
.message-role{font-size:.62rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#93a5ff;margin-bottom:8px}.user-bubble .message-role{color:rgba(255,255,255,.72)}.message-stats{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 11px}.message-stats span{padding:5px 7px;border-radius:999px;background:#172a45;color:#9eb0ca;font-size:.59rem;font-weight:750}.route-details,.verification-details{margin:10px 0;border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:9px 11px;background:rgba(7,17,31,.32)}.route-details summary,.verification-details summary{cursor:pointer;color:#aab5ff;font-size:.68rem;font-weight:850}.route-list{display:grid;gap:5px;margin-top:9px}.route-hop{font-size:.61rem;color:#8fa2bd;padding:5px 7px;border-radius:8px;background:#0a1829}.route-hop.ok{color:#69dcb7}.route-hop.bad{color:#e9a0ad}.billing-warning{margin:10px 0;padding:9px 11px;border-radius:11px;background:rgba(232,171,75,.08);border:1px solid rgba(232,171,75,.15);color:#d4bc8e;font-size:.68rem;line-height:1.45}.verification-item{margin-top:8px;padding:8px;border-radius:9px;background:#081523}.verification-item strong{display:block;font-size:.65rem}.verification-item.ok strong{color:#65dcb5}.verification-item.bad strong{color:#ff8da3}.verification-item pre{white-space:pre-wrap;max-height:220px;overflow:auto;color:#92a4bd;font-size:.63rem}.resume-task-btn{margin-top:12px;padding:9px 12px;font-size:.68rem}.finalization-note{font-weight:650}
.dialog-actions{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:16px}dialog{border:1px solid rgba(255,255,255,.12);background:#0d1b2f;color:var(--text);border-radius:22px;padding:0;box-shadow:0 32px 100px rgba(0,0,0,.55)}dialog::backdrop{background:rgba(2,8,16,.74);backdrop-filter:blur(5px)}dialog form{padding:23px;display:grid;gap:14px;width:min(560px,calc(100vw - 34px))}.icon-btn{width:34px;height:34px;border-radius:10px;background:#152841;color:#a9b7ca;font-size:1.25rem}.compact{padding:9px 12px}.provider-error-mini{word-break:break-word}
.warning-dot{background:#e5b86e!important;box-shadow:0 0 0 4px rgba(229,184,110,.1)!important}
@media(max-width:1050px){.router-settings{display:block}.router-setting-grid{justify-content:flex-start;margin-top:18px}.settings-hero{align-items:flex-start}.provider-grid-auto{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.sidebar nav{grid-template-columns:repeat(4,1fr)!important}.settings-hero{display:block;padding:21px}.settings-hero button{width:100%;margin-top:16px}.provider-grid-auto,.providers-settings-grid{grid-template-columns:1fr}.router-setting-grid{display:grid;grid-template-columns:1fr;align-items:stretch}.router-setting-grid>label:first-child{min-width:0}.progress-bubble{min-width:0;width:100%}.message-row{gap:7px}.message-bubble{max-width:90%}.dialog-actions{flex-direction:column-reverse}.dialog-actions button{width:100%}}

.consensus-note{margin:10px 0;padding:10px 12px;border-radius:12px;border:1px solid rgba(129,140,248,.28);background:rgba(99,102,241,.08);font-size:13px;line-height:1.45}
.consensus-note strong{display:block;margin-bottom:3px}
.consensus-note.approved{border-color:rgba(52,211,153,.32);background:rgba(16,185,129,.08)}
.consensus-note.pending{border-color:rgba(251,191,36,.30);background:rgba(245,158,11,.07)}
