
/* ReeVolt Assistant — premium, lightweight */
.aibtn{position:fixed; right:18px; bottom:18px; z-index:120; width:54px; height:54px; border-radius:18px;
display:grid; place-items:center; background:linear-gradient(135deg, rgba(179,76,255,.95), rgba(120,220,255,.55));
box-shadow:0 12px 38px rgba(170,80,255,.22), 0 0 0 1px rgba(255,255,255,.12) inset; cursor:pointer; user-select:none;
transition:transform .18s ease, filter .18s ease;}
.aibtn:hover{transform:translateY(-2px); filter:brightness(1.05)} .aibtn:active{transform:translateY(0)}
.aibtn svg{width:26px; height:26px; filter:drop-shadow(0 8px 18px rgba(0,0,0,.28))}

.aibox{position:fixed; right:18px; bottom:84px; z-index:121; width:min(420px, calc(100vw - 36px));
height:min(560px, calc(100vh - 140px)); border-radius:22px; overflow:hidden;
background:linear-gradient(180deg, rgba(24,26,34,.88), rgba(6,6,10,.92));
border:1px solid rgba(255,255,255,.12); box-shadow:0 18px 80px rgba(0,0,0,.45), 0 0 0 1px rgba(255,255,255,.06) inset;
display:none;}
.aibox.on{display:flex; flex-direction:column}
.aihead{padding:14px 14px 12px; display:flex; align-items:center; justify-content:space-between; gap:10px;
border-bottom:1px solid rgba(255,255,255,.10); background:linear-gradient(180deg, rgba(20,21,27,.62), rgba(20,21,27,.20));}
.aihead .ttl{display:flex; align-items:center; gap:10px; font-weight:950; letter-spacing:-.02em}
.aihead .ttl .dot{width:10px; height:10px; border-radius:999px; background:rgba(120,220,255,.9); box-shadow:0 0 18px rgba(120,220,255,.45)}
.aihead .sub{font-size:12px; color:rgba(255,255,255,.62); font-weight:700}
.aihead .x{width:38px; height:38px; border-radius:14px; display:grid; place-items:center;
background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.10); cursor:pointer;}
.aihead .x:hover{filter:brightness(1.08)}
.aimsgs{padding:14px; overflow:auto; display:flex; flex-direction:column; gap:10px}
.msg{max-width:88%; padding:10px 12px; border-radius:16px; border:1px solid rgba(255,255,255,.10);
background:rgba(0,0,0,.22); color:rgba(255,255,255,.84); font-weight:650; line-height:1.35}
.msg.me{align-self:flex-end; background:rgba(255,255,255,.06)}
.msg.ai{align-self:flex-start; background:linear-gradient(180deg, rgba(179,76,255,.12), rgba(0,0,0,.20))}
.aifoot{padding:12px; border-top:1px solid rgba(255,255,255,.10); display:flex; gap:10px; align-items:center;
background:linear-gradient(180deg, rgba(20,21,27,.20), rgba(20,21,27,.55));}
.aifoot input{flex:1; height:44px; border-radius:14px; border:1px solid rgba(255,255,255,.10);
background:rgba(0,0,0,.25); color:rgba(255,255,255,.88); outline:none; padding:0 12px; font-weight:700;}
.aifoot button{height:44px; padding:0 14px; border-radius:14px; border:none; cursor:pointer;
background:linear-gradient(90deg, var(--a), var(--b)); color:rgba(255,255,255,.95); font-weight:900;}
.aichips{display:flex; flex-wrap:wrap; gap:8px; padding:0 14px 12px}
.aichip{padding:6px 10px; border-radius:999px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.10);
color:rgba(255,255,255,.74); font-weight:760; cursor:pointer;}
.aichip:hover{filter:brightness(1.08)}
@media (prefers-reduced-motion: reduce){ .aibtn{transition:none} }
