/* Companion MINKA — shared styles */
:root{--sa-bottom:env(safe-area-inset-bottom,0px)}
#m-btn{position:fixed;bottom:calc(80px + var(--sa-bottom));right:12px;z-index:2000;width:56px;height:56px;border-radius:50%;border:2px solid rgba(255,215,0,.3);background:linear-gradient(135deg,#1a1a2e,#16213e);backdrop-filter:blur(8px);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:26px;transition:all .3s;box-shadow:0 4px 20px rgba(255,215,0,.15)}
#m-btn.pulse{animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(255,215,0,.4)}70%{box-shadow:0 0 0 12px rgba(255,215,0,0)}100%{box-shadow:0 0 0 0 rgba(255,215,0,0)}}
#m-panel{position:fixed;bottom:0;right:0;z-index:2500;width:100%;height:70vh;background:rgba(10,10,30,.97);backdrop-filter:blur(20px);border-radius:16px 16px 0 0;border:1px solid rgba(255,255,255,.06);display:none;flex-direction:column;overflow:hidden;animation:ms .3s ease}
@keyframes ms{from{transform:translateY(100%)}to{transform:translateY(0)}}
#m-panel.show{display:flex}
#m-head{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.04);flex-shrink:0}
#m-head .av{font-size:24px;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#FFD700,#FF8C00);display:flex;align-items:center;justify-content:center}
#m-head .nm{flex:1;font-size:13px;font-weight:600}
#m-head .nm small{display:block;font-size:9px;color:rgba(255,255,255,.25);font-weight:400}
#m-head .m-cl{background:none;border:none;color:rgba(255,255,255,.2);font-size:16px;cursor:pointer;padding:4px;font-family:inherit}
#m-msgs{flex:1;overflow-y:auto;padding:10px 12px;display:flex;flex-direction:column;gap:6px}
#m-msgs .b{padding:8px 12px;border-radius:12px;font-size:12px;max-width:88%;line-height:1.4;animation:mi .2s ease}
@keyframes mi{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
#m-msgs .b.me{background:rgba(255,215,0,.12);align-self:flex-end;border-bottom-right-radius:4px}
#m-msgs .b.you{background:rgba(255,255,255,.06);align-self:flex-start;border-bottom-left-radius:4px}
#m-msgs .b.typing{background:rgba(255,255,255,.04);align-self:flex-start;color:rgba(255,255,255,.3);font-size:18px;padding:4px 12px}
#m-foot{padding:8px 10px;border-top:1px solid rgba(255,255,255,.04);display:flex;gap:6px;flex-shrink:0}
#m-foot input{flex:1;padding:7px 10px;border-radius:9px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:#fff;font-size:12px;outline:none;font-family:inherit}
#m-foot input:focus{border-color:#FFD700}
#m-foot button{padding:7px 12px;border-radius:9px;border:none;background:linear-gradient(135deg,#FFD700,#FF8C00);color:#1a1a2e;font-weight:700;cursor:pointer;font-family:inherit;font-size:12px}
#m-sug{display:flex;gap:4px;padding:4px 10px 8px;flex-wrap:wrap;flex-shrink:0}
#m-sug span{padding:3px 8px;border-radius:7px;border:1px solid rgba(255,255,255,.06);font-size:9px;color:rgba(255,255,255,.4);cursor:pointer;transition:all .15s}
@media(min-width:768px){
  #m-btn{bottom:calc(90px + var(--sa-bottom));right:16px;width:48px;height:48px;font-size:22px}
  #m-btn:hover{transform:scale(1.1);border-color:#FFD700}
  #m-panel{max-width:360px;height:440px}
  #m-msgs .b{font-size:12px;padding:8px 12px}
  #m-sug span{font-size:9px;padding:3px 8px}
  #m-head .nm{font-size:13px}
  #m-head .m-cl{font-size:16px;padding:4px}
  #m-foot input{font-size:12px;padding:7px 10px}
  #m-foot button{padding:7px 12px;min-height:auto;font-size:12px}
  #m-sug span:hover{background:rgba(255,215,0,.07);border-color:rgba(255,215,0,.12);color:#FFD700}
}
@media(max-width:400px){
  #m-btn{bottom:calc(70px + var(--sa-bottom));right:8px;width:50px;height:50px;font-size:22px}
  #m-panel{height:75vh}
  #m-msgs .b{font-size:13px;padding:8px 12px}
  #m-sug{gap:3px}
  #m-sug span{font-size:10px;padding:5px 8px}
  #m-head .m-cl{font-size:20px;padding:8px}
}
@media(hover:none){
  #m-btn:hover{transform:none;border-color:rgba(255,215,0,.3)}
  #m-sug span:hover{background:transparent;border-color:rgba(255,255,255,.06);color:rgba(255,255,255,.4)}
}