#gopu-launcher{
  position:fixed; bottom:24px; right:24px; z-index:9999;
  width:60px; height:60px; border-radius:50%;
  background:linear-gradient(135deg, #16305C, #0E2140);
  border:2px solid #C9962E;
  display:flex; align-items:center; justify-content:center;
  cursor:pointer; box-shadow:0 8px 24px rgba(14,33,64,0.35);
  transition:transform 0.2s ease;
  font-size:26px;
}
#gopu-launcher:hover{transform:scale(1.06);}
#gopu-launcher .badge{
  position:absolute; top:-4px; right:-4px; width:16px; height:16px; border-radius:50%;
  background:#C9962E; border:2px solid #FAF8F3;
}

#gopu-panel{
  position:fixed; bottom:96px; right:24px; z-index:9999;
  width:340px; max-width:calc(100vw - 32px);
  height:460px; max-height:calc(100vh - 140px);
  background:#FFFFFF; border:1px solid rgba(22,48,92,0.16);
  border-radius:10px; box-shadow:0 20px 60px rgba(14,33,64,0.25);
  display:none; flex-direction:column; overflow:hidden;
  font-family:'Inter', sans-serif;
}
#gopu-panel.open{display:flex;}

#gopu-head{
  background:linear-gradient(135deg, #16305C, #0E2140);
  color:#FAF8F3; padding:16px 18px; display:flex; align-items:center; gap:10px;
}
#gopu-head .avatar{
  width:34px; height:34px; border-radius:50%; background:#C9962E; color:#0E2140;
  display:flex; align-items:center; justify-content:center; font-size:18px; flex-shrink:0;
}
#gopu-head .titles{flex:1;}
#gopu-head .titles .name{font-family:'Fraunces', serif; font-weight:700; font-size:15px;}
#gopu-head .titles .status{font-family:'IBM Plex Mono', monospace; font-size:10px; color:#E0B24A; letter-spacing:0.06em;}
#gopu-close{background:none; border:none; color:#FAF8F3; opacity:0.7; cursor:pointer; font-size:18px; line-height:1;}
#gopu-close:hover{opacity:1;}

#gopu-body{ flex:1; overflow-y:auto; padding:16px; display:flex; flex-direction:column; gap:10px; background:#FAF8F3;}
.gopu-msg{ max-width:85%; padding:10px 13px; border-radius:8px; font-size:13.5px; line-height:1.55; }
.gopu-msg.bot{ background:#FFFFFF; border:1px solid rgba(22,48,92,0.12); color:#1C2430; align-self:flex-start; }
.gopu-msg.user{ background:#16305C; color:#FAF8F3; align-self:flex-end; }
.gopu-quick{ display:flex; flex-direction:column; gap:6px; align-self:flex-start; max-width:92%; }
.gopu-quick button{
  text-align:left; background:#FFFFFF; border:1px solid rgba(201,150,46,0.4); color:#16305C;
  padding:8px 12px; font-size:12.5px; border-radius:6px; cursor:pointer; transition:all 0.15s ease;
}
.gopu-quick button:hover{background:#C9962E; color:#FFFFFF; border-color:#C9962E;}

#gopu-form-wrap{ padding:14px 16px; border-top:1px solid rgba(22,48,92,0.12); background:#FFFFFF; display:none;}
#gopu-form-wrap.open{display:block;}
#gopu-form-wrap input, #gopu-form-wrap textarea{
  width:100%; border:1px solid rgba(22,48,92,0.16); padding:9px 11px; font-size:12.5px;
  margin-bottom:8px; font-family:'Inter', sans-serif; background:#FAF8F3; color:#1C2430;
}
#gopu-form-wrap textarea{min-height:60px; resize:vertical;}
#gopu-form-wrap button{
  width:100%; background:#C9962E; color:#FFFFFF; border:none; padding:10px; font-size:12.5px;
  font-weight:600; cursor:pointer; letter-spacing:0.03em;
}
#gopu-form-wrap button:hover{background:#E0B24A;}
#gopu-form-note{font-size:10.5px; color:#5B6472; margin-top:6px;}

@media (max-width: 420px){
  #gopu-panel{ right:16px; left:16px; width:auto; bottom:88px; }
  #gopu-launcher{right:16px; bottom:16px;}
}
