:root{--primary:#7C3AED;--secondary:#A855F7;--bg:#090512;--surface:#130b21;--surface-2:#1b1030;--text:#f8f7fc;--muted:#b9b2c8;--line:rgba(255,255,255,.1);--green:#31d79b;--header-h:78px}*{box-sizing:border-box}html,body{height:100%;overscroll-behavior:none}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--bg);overflow:hidden}button,input{font:inherit}.app-shell{position:relative;width:min(920px,100%);height:100dvh;margin:0 auto;display:flex;flex-direction:column;background:linear-gradient(180deg,rgba(18,10,31,.97),rgba(8,4,15,.99));border-inline:1px solid rgba(255,255,255,.06);box-shadow:0 0 90px rgba(0,0,0,.55);overflow:hidden}.app-shell:before,.app-shell:after{content:"";position:absolute;pointer-events:none;border-radius:999px;filter:blur(25px);opacity:.32}.app-shell:before{width:360px;height:360px;top:-180px;left:-120px;background:#7c3aed}.app-shell:after{width:420px;height:420px;right:-240px;bottom:-210px;background:#a855f7}.chat-header{position:relative;z-index:20;flex:0 0 var(--header-h);display:flex;align-items:center;gap:13px;padding:14px clamp(16px,4vw,28px);background:rgba(15,8,27,.72);border-bottom:1px solid var(--line);backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%);box-shadow:0 12px 35px rgba(0,0,0,.25)}.avatar,.message-avatar,.mini-avatar{flex:0 0 auto;display:grid;place-items:center;overflow:hidden;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--secondary));box-shadow:0 0 0 2px rgba(255,255,255,.08),0 8px 24px rgba(124,58,237,.35)}.avatar{width:50px;height:50px;font-size:23px}.avatar img,.message-avatar img,.mini-avatar img{width:100%;height:100%;object-fit:cover}.bot-identity strong{display:block;font-size:16px;line-height:1.2;letter-spacing:.01em}.status{display:flex;align-items:center;gap:6px;margin-top:5px;color:#c8f7e7;font-size:12px}.status i{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 12px var(--green);animation:pulse 2s infinite}.chat-viewport{position:relative;z-index:2;flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(168,85,247,.5) transparent;padding:clamp(18px,4vw,34px)}.chat-viewport::-webkit-scrollbar{width:6px}.chat-viewport::-webkit-scrollbar-thumb{background:rgba(168,85,247,.45);border-radius:99px}.welcome{position:relative;width:min(610px,100%);min-height:min(590px,calc(100dvh - var(--header-h) - 38px));margin:auto;padding:clamp(28px,6vw,50px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px solid rgba(255,255,255,.12);border-radius:30px;background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.035));box-shadow:0 30px 80px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.08);backdrop-filter:blur(22px);overflow:hidden;animation:welcomeIn .55s ease both}.welcome-glow{position:absolute;width:260px;height:260px;top:-150px;border-radius:50%;background:var(--secondary);filter:blur(65px);opacity:.24}.welcome-icon{position:relative;width:64px;height:64px;display:grid;place-items:center;margin-bottom:18px;border-radius:20px;background:linear-gradient(135deg,rgba(124,58,237,.9),rgba(168,85,247,.8));font-size:28px;box-shadow:0 18px 45px rgba(124,58,237,.35)}.welcome h1{position:relative;margin:0;font-size:clamp(28px,6vw,42px);line-height:1.1;letter-spacing:-.03em}.welcome-copy{margin:14px 0 28px;color:#e9e4f2;font-size:clamp(16px,3vw,19px);line-height:1.55}.welcome-question{margin:0 0 12px;color:var(--muted);font-size:14px}.name-field{width:min(410px,100%);display:grid;gap:10px;text-align:left}.name-field span{font-size:15px;font-weight:750;color:#f4f0fa}.name-field input{width:100%;height:56px;padding:0 17px;border:1px solid rgba(255,255,255,.13);border-radius:16px;outline:0;color:white;background:rgba(7,3,13,.65);transition:.2s ease}.name-field input::placeholder{color:#817a8e}.name-field input:focus{border-color:var(--secondary);box-shadow:0 0 0 4px rgba(168,85,247,.15),0 10px 35px rgba(0,0,0,.22)}.name-field input.input-error{border-color:#fb7185;animation:shake .3s ease}.primary-btn{width:min(410px,100%);height:56px;margin-top:15px;border:0;border-radius:16px;color:white;font-weight:800;cursor:pointer;background:linear-gradient(135deg,var(--primary),var(--secondary));box-shadow:0 15px 35px rgba(124,58,237,.35);transition:transform .2s ease,filter .2s ease}.primary-btn:hover{transform:translateY(-2px);filter:brightness(1.08)}.primary-btn span{margin-left:8px;font-size:20px}.welcome-exit{animation:welcomeOut .25s ease forwards}.messages{display:none;width:min(780px,100%);margin:0 auto;padding:0 0 12px}.messages.active{display:flex;flex-direction:column;gap:18px}.message-row{display:flex;gap:10px;align-items:flex-end;animation:messageIn .34s cubic-bezier(.2,.8,.2,1) both}.user-row{justify-content:flex-end}.bot-row{align-items:flex-start}.message-avatar,.mini-avatar{width:34px;height:34px;font-size:15px;margin-top:4px}.user-bubble{max-width:min(76%,520px);padding:12px 16px;border-radius:19px 19px 5px 19px;background:linear-gradient(135deg,var(--primary),#9333ea);box-shadow:0 10px 28px rgba(124,58,237,.25);line-height:1.45}.bot-bubble{width:min(680px,calc(100% - 44px));padding:clamp(18px,4vw,27px);border:1px solid rgba(255,255,255,.1);border-radius:7px 24px 24px 24px;background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.035));box-shadow:0 18px 50px rgba(0,0,0,.27);backdrop-filter:blur(17px)}.bubble-heading .eyebrow{display:block;margin-bottom:7px;color:#c99cff;font-size:10px;font-weight:900;letter-spacing:.16em}.bubble-heading h2{margin:0;font-size:clamp(21px,4vw,30px);line-height:1.18;letter-spacing:-.025em}.bubble-copy{margin:14px 0 0;color:#ddd7e7;font-size:15px;line-height:1.75}.product-media{margin:18px 0 4px;overflow:hidden;border-radius:19px;border:1px solid rgba(255,255,255,.1);background:#0b0612}.product-media img{display:block;width:100%;max-height:350px;object-fit:cover}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:22px}.choice-card{min-height:112px;padding:16px;display:flex;align-items:center;gap:13px;text-align:left;border:1px solid rgba(255,255,255,.1);border-radius:20px;color:white;cursor:pointer;background:linear-gradient(145deg,rgba(124,58,237,.17),rgba(255,255,255,.045));box-shadow:inset 0 1px 0 rgba(255,255,255,.05);transition:.22s ease}.choice-card:hover{transform:translateY(-3px);border-color:rgba(168,85,247,.55);background:linear-gradient(145deg,rgba(124,58,237,.28),rgba(255,255,255,.07));box-shadow:0 16px 35px rgba(0,0,0,.25)}.choice-icon{flex:0 0 48px;width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,rgba(124,58,237,.9),rgba(168,85,247,.75));font-size:23px;box-shadow:0 10px 25px rgba(124,58,237,.25)}.choice-content{min-width:0;display:flex;flex-direction:column;gap:5px}.choice-content strong{font-size:15px;line-height:1.25}.choice-content small{color:var(--muted);font-size:11px;line-height:1.35}.choice-arrow{margin-left:auto;color:#d8b4fe;font-size:27px}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.action-btn{min-height:49px;flex:1 1 155px;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 15px;border:1px solid rgba(255,255,255,.1);border-radius:15px;color:white;font-weight:800;cursor:pointer;background:linear-gradient(135deg,var(--primary),var(--secondary));box-shadow:0 10px 26px rgba(124,58,237,.23);transition:.2s ease}.action-btn:hover{transform:translateY(-2px);filter:brightness(1.08)}.typing{width:min(780px,100%);margin:8px auto 0;display:flex;align-items:center;gap:10px}.typing.hidden{display:none}.typing-bubble{display:flex;gap:5px;padding:13px 16px;border:1px solid rgba(255,255,255,.08);border-radius:6px 18px 18px 18px;background:rgba(255,255,255,.07)}.typing-bubble span{width:7px;height:7px;border-radius:50%;background:#c4b5d4;animation:typingDot 1.2s infinite}.typing-bubble span:nth-child(2){animation-delay:.16s}.typing-bubble span:nth-child(3){animation-delay:.32s}.install-body{display:grid;place-items:center;padding:20px}.install-card{width:min(520px,100%);padding:28px;border:1px solid var(--line);border-radius:26px;background:#120a20dd;box-shadow:0 25px 70px #0008}.success{padding:16px;border-radius:14px;background:#10b98122;border:1px solid #10b98155;margin:15px 0}.error{padding:12px;border-radius:12px;background:#ef444422;border:1px solid #ef444455;margin:12px 0}.admin-body{background:#090512;overflow:auto}.admin-top{position:sticky;top:0;z-index:3;display:flex;justify-content:space-between;align-items:center;padding:14px 22px;background:#120a20ee;border-bottom:1px solid #ffffff1b;backdrop-filter:blur(12px)}.admin-top nav{display:flex;gap:15px}.admin-top a{color:white}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px;padding:20px}.panel{background:#ffffff0b;border:1px solid #ffffff18;border-radius:20px;padding:18px}.inline{display:grid;grid-template-columns:2fr 1fr 2fr 80px auto;gap:8px;align-items:end;margin-top:14px}.row{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid #ffffff12}.danger{background:#b91c1c!important;padding:8px!important}input,textarea,select{width:100%;padding:12px 13px;border-radius:12px;border:1px solid #ffffff22;background:#090512;color:white;outline:none}@keyframes pulse{50%{opacity:.55;transform:scale(.88)}}@keyframes welcomeIn{from{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:none}}@keyframes welcomeOut{to{opacity:0;transform:translateY(-10px) scale(.98)}}@keyframes messageIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}@keyframes typingDot{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-5px);opacity:1}}@keyframes shake{25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}@media(max-width:700px){:root{--header-h:70px}.app-shell{border:0}.chat-header{padding:10px 15px}.avatar{width:46px;height:46px}.chat-viewport{padding:14px}.welcome{min-height:calc(100dvh - var(--header-h) - 28px);border-radius:24px;padding:25px 20px}.choice-grid{grid-template-columns:1fr}.choice-card{min-height:93px}.bot-bubble{width:calc(100% - 42px);padding:18px}.user-bubble{max-width:84%}.actions{display:grid;grid-template-columns:1fr 1fr}.action-btn{min-width:0}.inline{grid-template-columns:1fr}.admin-grid{padding:12px}}@media(max-width:420px){.actions{grid-template-columns:1fr}.welcome-copy{margin-bottom:22px}.bubble-heading h2{font-size:22px}.choice-card{padding:14px}.chat-viewport{padding-inline:10px}.message-row{gap:7px}.message-avatar,.mini-avatar{width:30px;height:30px}.bot-bubble{width:calc(100% - 37px)}}@media(min-width:921px){body{background:radial-gradient(circle at 15% 5%,#2d1550 0,transparent 35%),radial-gradient(circle at 85% 90%,#21103b 0,transparent 34%),#050209}.app-shell{height:calc(100dvh - 32px);margin-top:16px;border-radius:28px;border:1px solid rgba(255,255,255,.08)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}
.admin-body form button{border:0;border-radius:12px;padding:11px 14px;font-weight:750;color:white;background:linear-gradient(135deg,var(--primary),var(--secondary));cursor:pointer}.admin-body label{display:grid;gap:7px;margin:10px 0;color:var(--muted);font-size:14px}


/* Ajuste final i0X: centralização e mobile */
.app-shell{margin-left:auto!important;margin-right:auto!important;max-width:920px!important}
.chat-viewport{display:flex;flex-direction:column;align-items:center}
.messages{width:100%;max-width:760px;margin:0 auto}
.welcome{width:min(100%,680px);margin:auto}
.bot-bubble,.user-bubble{max-width:100%}
.choice-grid,.actions{width:100%;max-width:760px;margin-left:auto;margin-right:auto}
@media(max-width:600px){
 body{overflow:hidden}
 .app-shell{width:100%;height:100dvh;border-radius:0}
 .chat-header{padding:12px}
 .chat-viewport{padding:10px}
 .welcome{width:100%;padding:22px 16px}
 .messages{width:100%}
 .choice-grid,.actions{grid-template-columns:1fr!important;gap:12px}
 .action-btn,.choice-card{min-height:54px;font-size:15px}
 .bot-bubble{width:100%;padding:16px}
 .bubble-copy{font-size:15px;line-height:1.55}
}
