/* Lume — widget de diagnóstico. Usa os tokens da marca (tema escuro). */
.lume{--l-bg:#061A20;--l-surf:#0D2A33;--l-text:#E8F4F5;--l-muted:#8FB0B8;--l-line:#1B3D47;--l-feixe:#00D4E2;--l-ft:#3FE0EC;--l-ponto:#B6F36B;--l-ink:#061A20;--l-err:#FF8A80;--l-ease:cubic-bezier(.2,.7,.2,1);font-family:'Space Grotesk',system-ui,sans-serif;font-size:15px;line-height:1.5;color:var(--l-text)}
.lume *{box-sizing:border-box}
.lume-launch{position:fixed;right:20px;bottom:20px;z-index:90;display:flex;align-items:center;gap:10px;background:var(--l-feixe);color:var(--l-ink);border:0;border-radius:999px;padding:8px 18px 8px 8px;font:700 15px 'Space Grotesk',system-ui,sans-serif;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.35);transition:transform .2s var(--l-ease)}
.lume-launch:hover{transform:translateY(-2px)}
.lume-launch img{width:40px;height:40px;border-radius:50%;background:var(--l-bg);padding:5px;object-fit:contain}
.lume-launch.hide{display:none}
.lume-launch:focus-visible,.lume button:focus-visible,.lume input:focus-visible,.lume textarea:focus-visible,.lume a:focus-visible{outline:2px solid var(--l-ft);outline-offset:2px}
@media(max-width:560px){.lume-launch span{display:none}.lume-launch{padding:8px}}

.lume-panel{position:fixed;right:20px;bottom:20px;z-index:95;width:392px;max-width:calc(100vw - 24px);height:640px;max-height:calc(100svh - 40px);display:none;flex-direction:column;background:var(--l-bg);border:1px solid var(--l-line);border-radius:16px;overflow:hidden;box-shadow:0 24px 64px rgba(0,0,0,.5)}
.lume-panel.open{display:flex;animation:lumein .3s var(--l-ease)}
@keyframes lumein{from{opacity:0;transform:translateY(16px)}}
@media(max-width:560px){.lume-panel{inset:0;width:100%;max-width:none;height:100svh;max-height:none;border-radius:0;border:0}}

.lume-head{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--l-line);background:var(--l-surf)}
.lume-head img{width:40px;height:40px;flex:none}
.lume-head b{display:block;font-size:16px;line-height:1.2}.lume-head small{color:var(--l-muted);font:400 11px 'JetBrains Mono',monospace;letter-spacing:.04em}
.lume-x{margin-left:auto;background:none;border:1px solid var(--l-line);color:var(--l-text);border-radius:8px;width:36px;height:36px;font-size:20px;line-height:1;cursor:pointer}
.lume-prog{display:flex;gap:4px;padding:0 16px;height:3px;background:var(--l-surf)}
.lume-prog i{flex:1;background:var(--l-line);transition:background .4s}.lume-prog i.on{background:var(--l-ponto)}

.lume-body{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth}
.lume-msg{max-width:88%;padding:11px 14px;border-radius:14px;white-space:normal;word-wrap:break-word;overflow-wrap:anywhere;animation:lumein .25s var(--l-ease)}
.lume-msg p{margin:0 0 8px}.lume-msg p:last-child{margin:0}
.lume-msg ul{margin:6px 0 8px;padding-left:18px}.lume-msg li{margin:4px 0}
.lume-msg.a{align-self:flex-start;background:var(--l-surf);border:1px solid var(--l-line);border-bottom-left-radius:4px}
.lume-msg.u{align-self:flex-end;background:var(--l-feixe);color:var(--l-ink);border-bottom-right-radius:4px;font-weight:500}
.lume-msg.sys{align-self:center;max-width:100%;background:none;color:var(--l-muted);font:400 12px 'JetBrains Mono',monospace;text-align:center;padding:4px}
.lume-typing{align-self:flex-start;display:flex;align-items:center;gap:10px;color:var(--l-muted);font-size:13px}
.lume-typing i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--l-ponto);animation:lumedot 1.2s infinite var(--l-ease)}
.lume-typing i:nth-child(2){animation-delay:.15s}.lume-typing i:nth-child(3){animation-delay:.3s}
@keyframes lumedot{0%,60%,100%{opacity:.25;transform:none}30%{opacity:1;transform:translateY(-4px)}}

.lume-card{background:var(--l-surf);border:1px solid var(--l-line);border-radius:12px;padding:16px;display:grid;gap:12px}
.lume-card h3{margin:0;font-size:18px;letter-spacing:-.02em}.lume-card p{margin:0;color:var(--l-muted);font-size:14px}
.lume label.l{display:block;font:600 11px 'JetBrains Mono',monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--l-ft);margin-bottom:6px}
.lume input[type=text],.lume input[type=email],.lume input[type=tel],.lume textarea{width:100%;background:var(--l-bg);color:var(--l-text);border:1px solid var(--l-line);border-radius:8px;padding:11px 12px;font:500 16px 'Space Grotesk',system-ui,sans-serif}
.lume input::placeholder,.lume textarea::placeholder{color:#5f808a}
.lume .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.lume-check{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--l-muted)}
.lume-check input{margin-top:3px;width:18px;height:18px;accent-color:#00D4E2;flex:none}.lume-check a{color:var(--l-ft)}
.lume-err{color:var(--l-err);font:400 12px 'JetBrains Mono',monospace;min-height:1em;margin-top:4px}
.lume-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--l-feixe);color:var(--l-ink);border:0;border-radius:8px;padding:12px 16px;font:700 15px 'Space Grotesk',system-ui,sans-serif;cursor:pointer;text-decoration:none}
.lume-btn:disabled{opacity:.55;cursor:wait}
.lume-btn.ghost{background:transparent;color:var(--l-ft);border:1px solid var(--l-line)}

.lume-actions{display:grid;gap:10px}
.lume-slots{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.lume-slot{background:var(--l-bg);color:var(--l-text);border:1px solid var(--l-line);border-radius:8px;padding:10px 8px;font:600 13px 'JetBrains Mono',monospace;cursor:pointer;transition:all .15s}
.lume-slot:hover:not(:disabled){background:var(--l-feixe);color:var(--l-ink);border-color:var(--l-feixe)}
.lume-slot:disabled{opacity:.5;cursor:wait}

.lume-foot{border-top:1px solid var(--l-line);padding:12px;background:var(--l-surf)}
.lume-form{display:flex;gap:8px;align-items:flex-end}
.lume-form textarea{resize:none;min-height:44px;max-height:120px;padding:10px 12px}
.lume-send{flex:none;width:44px;height:44px;padding:0}
.lume-send svg{width:20px;height:20px}
.lume-note{margin:8px 2px 0;color:var(--l-muted);font:400 11px 'JetBrains Mono',monospace}
@media(prefers-reduced-motion:reduce){.lume *,.lume-launch,.lume-panel{animation:none!important;transition:none!important}}
