@property --a{syntax:'<angle>';initial-value:0deg;inherits:false}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%;font-family:system-ui,-apple-system,sans-serif;color:#f0f4ff;overflow-x:hidden}
body{background:#07090c}

/* ── VIDEO BG ── */
.video-bg{position:fixed;inset:0;z-index:0;overflow:hidden}
.video-bg video{width:100%;height:100%;object-fit:cover;mix-blend-mode:screen}
.video-overlay{position:absolute;inset:0;background:rgba(4,6,10,0.55)}

/* ── NAV ── */
.nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:13px 28px;background:rgba(4,6,10,.7);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.06)}
.nav-brand{display:flex;align-items:center;gap:10px;cursor:pointer}
.nav-brand img{width:34px;height:34px;border-radius:9px;object-fit:cover}
.brand-text{font-weight:900;font-size:16px;letter-spacing:.5px;color:#f0f4ff}
.brand-ward{color:#63f2d0}
.nav-links{display:flex;gap:4px}
.nav-btn{background:none;border:1px solid transparent;color:#6a8aa8;padding:7px 14px;border-radius:8px;cursor:pointer;font-size:13px;font-family:inherit;font-weight:500;transition:all .2s}
.nav-btn:hover{color:#f0f4ff;border-color:rgba(255,255,255,.1);background:rgba(255,255,255,.05)}
.lang-picker{position:relative}
.lang-btn{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#6a8aa8;padding:7px 12px;border-radius:8px;cursor:pointer;font-size:12px;font-family:inherit;display:flex;align-items:center;gap:5px;transition:all .2s}
.lang-btn:hover{color:#f0f4ff}
.lang-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:rgba(10,16,24,.96);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:5px;width:175px;display:none;flex-direction:column;gap:1px;box-shadow:0 10px 40px rgba(0,0,0,.8);z-index:300;max-height:320px;overflow-y:auto;backdrop-filter:blur(20px)}
.lang-dropdown::-webkit-scrollbar{width:3px}
.lang-dropdown::-webkit-scrollbar-thumb{background:#1a2d40;border-radius:3px}
.lang-dropdown.open{display:flex}
.lang-dropdown button{background:none;border:none;color:#6a8aa8;padding:8px 11px;border-radius:7px;cursor:pointer;font-size:13px;font-family:inherit;text-align:left;transition:all .15s}
.lang-dropdown button:hover{background:rgba(255,255,255,.07);color:#f0f4ff}

/* ── PAGES ── */
.page{display:none;position:relative;z-index:1;min-height:100vh;padding-top:66px}
.page.active{display:block}
#page-chat{padding-top:66px;min-height:unset}
#page-chat .chat-layout{height:calc(100vh - 66px)}

/* ── HERO LAYOUT ── */
.hero-layout{display:grid;grid-template-columns:1fr;align-items:center;min-height:calc(100vh - 66px);max-width:900px;margin:0 auto;padding:40px 40px 60px;gap:20px}

/* ── HERO RIGHT ── */
.hero-right{display:flex;flex-direction:column;gap:22px;width:100%;max-width:760px;margin:0 auto}
.hero-tag{font-size:11px;color:#2a6a90;font-weight:700;letter-spacing:1px}
.hero-title{font-size:clamp(34px,5vw,58px);font-weight:900;line-height:1.06}
.rgb-text{background:linear-gradient(90deg,#63f2d0,#36c8ff,#a855f7,#ff4d5e,#ff9a2b,#63f2d0);background-size:300% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:rgbM 4s linear infinite}
@keyframes rgbM{to{background-position:300% center}}
.hero-sub{color:#5a7a98;font-size:14px;line-height:1.7;max-width:420px}
.chat-trigger{display:flex;flex-direction:column;gap:8px}

/* ── RGB INPUT ── */
.rgb-ring{padding:2px;border-radius:17px;background:linear-gradient(var(--a),#63f2d0,#36c8ff,#a855f7,#ff4d5e,#ff9a2b,#63f2d0);animation:spin 3s linear infinite}
@keyframes spin{to{--a:360deg}}
.input-box,.chat-input-box{background:rgba(8,14,22,.9);border-radius:15px;padding:12px 13px 9px;backdrop-filter:blur(10px)}
.input-box textarea,.chat-input-box textarea{width:100%;background:transparent;border:none;outline:none;color:#d0e0f0;font-size:14px;font-family:inherit;resize:none;line-height:1.6;min-height:50px;max-height:140px}
.input-box textarea::placeholder,.chat-input-box textarea::placeholder{color:#1e3a54}
.input-footer,.chat-input-footer{display:flex;justify-content:space-between;align-items:center;margin-top:7px;position:relative}
.chips{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:7px}
.chip{display:flex;align-items:center;gap:5px;background:#0d1e2e;border:1px solid #1a2d40;border-radius:7px;padding:3px 8px;font-size:12px;color:#6a8aa8}
.chip button{background:none;border:none;color:#6a8aa8;cursor:pointer;padding:0;font-size:13px;line-height:1}
.plus-wrap{position:relative}
.plus-btn{width:32px;height:32px;border-radius:50%;background:rgba(13,30,46,.8);border:1px solid rgba(255,255,255,.1);color:#4a6a88;font-size:19px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}
.plus-btn:hover{border-color:rgba(99,242,208,.4);color:#63f2d0}
.attach-menu{position:absolute;bottom:40px;left:0;background:rgba(10,18,28,.95);border:1px solid rgba(255,255,255,.08);border-radius:11px;padding:5px;min-width:168px;display:none;flex-direction:column;gap:2px;box-shadow:0 8px 30px rgba(0,0,0,.8);z-index:20;backdrop-filter:blur(20px)}
.attach-menu.open{display:flex}
.attach-menu button{background:none;border:none;color:#6a8aa8;padding:7px 11px;border-radius:7px;cursor:pointer;font-size:12px;font-family:inherit;text-align:left;transition:all .15s;display:flex;align-items:center;gap:8px;width:100%}
.attach-menu button:hover{background:rgba(255,255,255,.07);color:#f0f4ff}
.send-btn{height:32px;padding:0 18px;border-radius:9px;background:linear-gradient(135deg,#63f2d0,#36c8ff);color:#04100e;border:none;font-weight:800;cursor:pointer;font-size:12px;font-family:inherit;transition:opacity .2s}
.send-btn:hover{opacity:.85}
.send-btn:disabled{opacity:.4;cursor:not-allowed}
.usage-bar{font-size:11px;color:#1a3050;text-align:center}
.usage-bar a{color:#2a5a80;cursor:pointer;text-decoration:none}
#usageText,#chatUsageText{color:#2a6a90}

/* ── CHAT PAGE ── */
.chat-page{display:flex;flex-direction:column;height:calc(100vh - 66px);max-width:860px;margin:0 auto;padding:0 20px 16px}
.chat-header{display:flex;align-items:center;justify-content:center;padding:16px 0 14px;border-bottom:1px solid rgba(255,255,255,.06);position:relative}
.back-btn{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:#6a8aa8;padding:7px 14px;border-radius:8px;cursor:pointer;font-size:13px;font-family:inherit;transition:all .2s}
.back-btn:hover{color:#f0f4ff;background:rgba(255,255,255,.08)}
.chat-header-brand{display:flex;align-items:center;gap:12px}
.chat-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;object-position:50% 15%;filter:drop-shadow(0 0 8px rgba(99,242,208,.35))}
.chat-name{font-weight:700;font-size:15px;color:#f0f4ff}
.chat-status{font-size:11px;color:#50fa7b;display:flex;align-items:center;gap:4px}

.chat-messages{flex:1;overflow-y:auto;padding:20px 0;display:flex;flex-direction:column;gap:14px}
.chat-messages::-webkit-scrollbar{width:4px}
.chat-messages::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:4px}

.chat-msg{display:flex;align-items:flex-end;gap:10px;animation:fadeUp .25s ease}
@keyframes fadeUp{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.chat-msg.user{flex-direction:row-reverse}
.msg-avatar{width:34px;height:34px;border-radius:50%;object-fit:cover;object-position:50% 15%;flex-shrink:0;filter:drop-shadow(0 0 6px rgba(99,242,208,.3))}
.user-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#63f2d0,#36c8ff);display:flex;align-items:center;justify-content:center;font-weight:900;font-size:13px;color:#04100e;flex-shrink:0}
.msg-bubble{max-width:72%;padding:11px 15px;border-radius:16px;font-size:14px;line-height:1.65}
.ai-bubble{background:rgba(10,18,28,.85);border:1px solid rgba(255,255,255,.07);border-bottom-left-radius:4px;backdrop-filter:blur(10px)}
.user-bubble{background:rgba(99,242,208,.12);border:1px solid rgba(99,242,208,.2);border-bottom-right-radius:4px;color:#c8e8d8}

/* RTL support for chat */
[dir="rtl"] .chat-msg.ai{flex-direction:row-reverse}
[dir="rtl"] .chat-msg.user{flex-direction:row}
[dir="rtl"] .ai-bubble{border-bottom-left-radius:16px;border-bottom-right-radius:4px}
[dir="rtl"] .user-bubble{border-bottom-right-radius:16px;border-bottom-left-radius:4px}
[dir="rtl"] .chat-input-box textarea{text-align:right;direction:rtl}
[dir="rtl"] .usage-bar{direction:rtl}
[dir="rtl"] .msg-name{text-align:right}
[dir="rtl"] ol,[dir="rtl"] ul{padding-right:18px;padding-left:0}
[dir="rtl"] .rlist{padding-right:13px;padding-left:0}
.msg-name{font-size:10px;color:#2a5070;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px}
.score-row{display:flex;align-items:center;gap:9px;margin:8px 0 4px}
.score-num{font-size:28px;font-weight:900}
.rpill{padding:3px 9px;border-radius:999px;font-size:11px;font-weight:700}
.p-safe{background:rgba(80,250,123,.12);color:#50fa7b}
.p-warn{background:rgba(255,200,87,.12);color:#ffc857}
.p-danger{background:rgba(255,77,94,.12);color:#ff4d5e}
.smeter{height:4px;background:rgba(255,255,255,.1);border-radius:999px;overflow:hidden;margin:5px 0}
.sfill{height:100%;border-radius:999px;transition:width .7s}
.rlist{padding-left:13px;margin-top:7px}
.rlist li{font-size:12px;color:#6a8aa8;margin-bottom:3px}
.typing-dots{display:flex;gap:5px;align-items:center;padding:3px 0}
.dot{width:5px;height:5px;border-radius:50%;background:#63f2d0;animation:bounce .9s infinite}
.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}
@keyframes bounce{0%,80%,100%{transform:translateY(0)}40%{transform:translateY(-5px)}}

.chat-input-area{padding-top:14px;border-top:1px solid rgba(255,255,255,.06)}

/* ── PRICING ── */
.pricing-section{max-width:1060px;margin:0 auto;padding:70px 24px;text-align:center}
.section-tag{font-size:11px;color:#2a5a80;font-weight:700;letter-spacing:1px;margin-bottom:12px}
.pricing-section h2{font-size:32px;font-weight:900;margin-bottom:32px}
.billing-toggle{display:inline-flex;background:rgba(10,18,28,.8);border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:4px;gap:3px;margin-bottom:40px;backdrop-filter:blur(10px)}
.bill-btn{background:none;border:none;color:#6a8aa8;padding:7px 20px;border-radius:999px;cursor:pointer;font-size:13px;font-family:inherit;font-weight:600;transition:all .2s}
.bill-btn.active{background:linear-gradient(135deg,#6c47ff,#8b5cf6);color:#fff}
.save-tag{background:rgba(99,242,208,.15);color:#63f2d0;font-size:10px;padding:2px 6px;border-radius:999px;margin-left:5px}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;text-align:left}
.price-card{background:rgba(10,18,28,.8);border:1px solid rgba(255,255,255,.07);border-radius:18px;padding:26px;backdrop-filter:blur(10px);transition:border-color .2s}
.price-card:hover{border-color:rgba(255,255,255,.15)}
.price-card.feat{border-color:rgba(108,71,255,.5);box-shadow:0 0 40px rgba(108,71,255,.09)}
.pop-badge{display:inline-flex;align-items:center;gap:4px;background:rgba(108,71,255,.15);border:1px solid rgba(108,71,255,.35);color:#a78bfa;font-size:10px;padding:3px 10px;border-radius:999px;margin-bottom:10px;font-weight:700}
.price-for{font-size:11px;color:#6a8aa8;font-weight:600;margin-bottom:4px}
.price-card h3{font-size:26px;font-weight:900;margin-bottom:7px}
.price-num{font-size:44px;font-weight:900;line-height:1}
.price-per{font-size:12px;color:#6a8aa8;margin-bottom:18px}
.price-card ul{list-style:none;display:flex;flex-direction:column;gap:7px;margin-bottom:20px}
.price-card ul li{font-size:12px;color:#6a8aa8;display:flex;gap:7px;align-items:flex-start}
.price-card ul li::before{content:'●';color:#63f2d0;font-size:7px;margin-top:4px;flex-shrink:0}
.price-card ul li.no{color:#1e3050}
.price-card ul li.no::before{color:#1e3050}
.price-btn{width:100%;padding:11px;border-radius:10px;font-weight:800;cursor:pointer;font-size:13px;font-family:inherit;transition:all .2s}
.price-btn.out{background:none;color:#f0f4ff;border:1px solid rgba(255,255,255,.1)}
.price-btn.out:hover{border-color:#63f2d0;color:#63f2d0}
.price-btn.fill{background:linear-gradient(135deg,#6c47ff,#8b5cf6);color:#fff;border:none}

/* ── CONTACT ── */
.contact-section{display:grid;grid-template-columns:1fr 1.3fr;gap:56px;align-items:start;max-width:1060px;margin:0 auto;padding:70px 36px}
.contact-left h2{font-size:clamp(24px,3.5vw,36px);font-weight:900;line-height:1.15;margin:12px 0 32px}
.contact-methods{display:flex;flex-direction:column}
.c-method{display:flex;align-items:flex-start;gap:14px;padding:20px 0}
.c-divider{height:1px;background:rgba(255,255,255,.06)}
.c-icon{width:42px;height:42px;border-radius:50%;background:rgba(10,18,28,.8);border:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}
.c-method strong{font-size:13px;font-weight:700;display:block;margin-bottom:5px}
.c-method p{font-size:12px;color:#4a6a88;line-height:1.7}
.contact-form{background:rgba(10,18,28,.8);border:1px solid rgba(255,255,255,.07);border-radius:18px;padding:28px;backdrop-filter:blur(10px)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.form-group label{font-size:12px;font-weight:600;color:#f0f4ff}
.form-group input,.form-group textarea{background:rgba(8,14,22,.9);border:1px solid rgba(255,255,255,.08);border-radius:9px;color:#d0e0f0;padding:11px 13px;font-size:13px;font-family:inherit;outline:none;transition:border-color .2s;resize:vertical}
.form-group input::placeholder,.form-group textarea::placeholder{color:#1e3a54}
.form-group input:focus,.form-group textarea:focus{border-color:rgba(99,242,208,.35)}
.contact-send{width:100%;padding:13px;border-radius:10px;background:linear-gradient(135deg,#6c47ff,#8b5cf6);color:#fff;border:none;font-weight:800;font-size:14px;font-family:inherit;cursor:pointer;transition:opacity .2s}
.contact-send:hover{opacity:.88}
.form-feedback{font-size:12px;text-align:center;margin-top:10px;min-height:18px}

@media(max-width:880px){
  .hero-layout{grid-template-columns:1fr;padding:30px 20px;text-align:center}
  .hero-left{display:none}
  .pricing-grid{grid-template-columns:1fr}
  .contact-section{grid-template-columns:1fr;gap:32px;padding:50px 20px}
  .form-row{grid-template-columns:1fr}
  .nav-links{display:none}
}

/* ── AUTH NAV BUTTON ── */
.auth-nav-btn{background:linear-gradient(135deg,#63f2d0,#36c8ff) !important;border:none !important;color:#04100e !important;font-weight:700 !important;padding:6px 14px !important;font-size:12px !important;}
.auth-nav-btn:hover{opacity:.85;color:#04100e !important}

/* ── USER PROFILE MENU ── */
.user-menu{position:relative;display:flex;align-items:center}

.user-profile-btn{
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
  border-radius:10px;padding:7px;
  cursor:pointer;transition:all .2s;
  width:38px;height:38px;
}
.user-profile-btn:hover{background:rgba(99,242,208,.08);border-color:rgba(99,242,208,.25)}

.user-avatar-icon{
  width:22px;height:22px;
  display:flex;align-items:center;justify-content:center;
  color:#63f2d0;flex-shrink:0;
}
.user-profile-info{display:none}
.user-email{display:none}
.user-plan{display:none}
.user-chevron{display:none}

/* ── USER DROPDOWN ── */
.user-dropdown{
  position:absolute;top:calc(100% + 8px);right:0;
  background:#0a0f17;
  border:1px solid rgba(99,242,208,.15);
  border-radius:14px;padding:6px;
  min-width:220px;z-index:400;
  box-shadow:0 12px 40px rgba(0,0,0,.8),0 0 0 1px rgba(99,242,208,.05);
  display:none;flex-direction:column;gap:2px;
  animation:dropIn .15s ease;
}
.user-menu.open .user-dropdown{display:flex}

.user-dropdown-header{
  display:flex;align-items:center;gap:10px;
  padding:10px 10px 12px;
}
.user-dropdown-avatar{
  width:36px;height:36px;border-radius:10px;
  background:linear-gradient(135deg,#1a3a50,#0d1e2e);
  border:1px solid rgba(99,242,208,.2);
  display:flex;align-items:center;justify-content:center;
  color:#63f2d0;flex-shrink:0;
}
.user-dropdown-email{font-size:12px;color:#c0d8e8;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px}
.user-dropdown-plan{font-size:10px;color:#4a6a88;font-weight:700;margin-top:2px}

.user-dropdown-divider{height:1px;background:rgba(255,255,255,.06);margin:2px 4px 4px}

.user-dropdown-item{
  display:flex;align-items:center;gap:10px;
  background:none;border:none;color:#7a9ab8;
  padding:9px 10px;border-radius:9px;
  cursor:pointer;font-size:13px;font-family:inherit;
  text-align:left;width:100%;transition:all .15s;font-weight:500;
}
.user-dropdown-item:hover{background:rgba(99,242,208,.08);color:#e0f4ff}
.user-dropdown-item.danger:hover{background:rgba(255,77,94,.1);color:#ff6b78}
.user-dropdown-item svg{flex-shrink:0;opacity:.7}

/* ── AUTH MODAL ── */
.auth-modal{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.7);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:20px}
.auth-modal.open{display:flex}
.auth-modal-box{background:rgba(8,14,22,.97);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:32px;width:100%;max-width:400px;position:relative}
.auth-modal-close{position:absolute;top:16px;right:16px;background:none;border:none;color:#6a8aa8;font-size:18px;cursor:pointer;padding:4px 8px;border-radius:6px;transition:color .2s}
.auth-modal-close:hover{color:#f0f4ff}
.auth-logo{display:flex;align-items:center;gap:10px;margin-bottom:24px}
.auth-logo img{width:36px;height:36px;border-radius:9px}
.auth-logo span{font-size:18px;font-weight:900;color:#f0f4ff}
.auth-tabs{display:flex;background:rgba(255,255,255,.05);border-radius:10px;padding:3px;gap:3px;margin-bottom:24px}
.auth-tab{flex:1;background:none;border:none;color:#6a8aa8;padding:8px;border-radius:8px;cursor:pointer;font-size:13px;font-family:inherit;font-weight:600;transition:all .2s}
.auth-tab.active{background:rgba(99,242,208,.15);color:#63f2d0}
.auth-form{display:none;flex-direction:column;gap:16px}
.auth-form.active{display:flex}
.auth-field{display:flex;flex-direction:column;gap:6px}
.auth-field label{font-size:12px;font-weight:600;color:#f0f4ff}
.auth-field input{background:rgba(8,14,22,.9);border:1px solid rgba(255,255,255,.08);border-radius:9px;color:#d0e0f0;padding:11px 13px;font-size:13px;font-family:inherit;outline:none;transition:border-color .2s}
.auth-field input:focus{border-color:rgba(99,242,208,.35)}
.auth-field input::placeholder{color:#1e3a54}
.auth-feedback{font-size:12px;min-height:18px;text-align:center}
.auth-submit{background:linear-gradient(135deg,#63f2d0,#36c8ff);border:none;color:#04100e;padding:13px;border-radius:10px;font-weight:800;font-size:14px;font-family:inherit;cursor:pointer;transition:opacity .2s}
.auth-submit:hover{opacity:.85}

/* ── PASSWORD TOGGLE ── */
.pass-wrap{position:relative;display:flex;align-items:center}
.pass-wrap input{width:100%;padding-right:40px}
.eye-btn{position:absolute;right:10px;background:none;border:none;cursor:pointer;font-size:16px;color:#6a8aa8;padding:0;line-height:1;transition:color .2s}
.eye-btn:hover{color:#63f2d0}

/* ── CHAT LAYOUT ── */
.chat-layout{display:flex;height:calc(100vh - 66px);position:relative}
.chat-main{display:flex;flex-direction:column;flex:1;min-width:0;padding:0 20px 16px}


/* ── NAV HAMBURGER ── */
.nav-hamburger {
  background: none;
  border: none;
  color: #6a8aa8;
  font-size: 20px;
  cursor: pointer;
  padding: 6px 10px;
  border-radius: 8px;
  transition: all .2s;
  line-height: 1;
  flex-shrink: 0;
}
.nav-hamburger:hover { color: #f0f4ff; background: rgba(255,255,255,.07); }

/* ── GLOBAL SIDEBAR DRAWER ── */
.gsd-overlay {
  position: fixed; inset: 0; z-index: 500;
  background: rgba(0,0,0,.55);
  backdrop-filter: blur(3px);
  opacity: 0; pointer-events: none;
  transition: opacity .25s;
  display: none;
}
.gsd-overlay.open { opacity: 1; pointer-events: all; display: block; }

.gsd {
  position: fixed; left: 0; top: 0; bottom: 0;
  width: 280px; z-index: 501;
  background: #0a0f17;
  border-right: 1px solid rgba(255,255,255,.07);
  flex-direction: column;
  box-shadow: 4px 0 30px rgba(0,0,0,.7);
  display: none;
}
.gsd.open {
  display: flex;
  animation: slideInLeft .25s ease;
}
@keyframes slideInLeft {
  from { transform: translateX(-100%); }
  to { transform: translateX(0); }
}

.gsd-header {
  display: flex; align-items: center; gap: 10px;
  padding: 14px 14px 12px;
  border-bottom: 1px solid rgba(255,255,255,.06);
  flex-shrink: 0;
}
.gsd-hamburger {
  background: none; border: none; color: #6a8aa8;
  font-size: 20px; cursor: pointer; padding: 6px 8px;
  border-radius: 8px; transition: all .2s; line-height: 1; flex-shrink: 0;
}
.gsd-hamburger:hover { color: #f0f4ff; background: rgba(255,255,255,.07); }

.gsd-new-chat {
  flex: 1; background: rgba(99,242,208,.08);
  border: 1px solid rgba(99,242,208,.2);
  color: #63f2d0; padding: 8px 12px;
  border-radius: 9px; cursor: pointer;
  font-size: 13px; font-family: inherit; font-weight: 700;
  transition: all .2s; text-align: left;
}
.gsd-new-chat:hover { background: rgba(99,242,208,.15); border-color: rgba(99,242,208,.4); }

.gsd-history {
  flex: 1; overflow-y: auto; padding: 10px 8px;
  display: flex; flex-direction: column; gap: 2px;
}
.gsd-history::-webkit-scrollbar { width: 3px; }
.gsd-history::-webkit-scrollbar-thumb { background: #1a2d40; border-radius: 3px; }

.gsd-section-label {
  font-size: 10px; color: #2a4a60; font-weight: 700;
  letter-spacing: .5px; padding: 10px 8px 4px;
  text-transform: uppercase;
}
.gsd-empty {
  display: flex; flex-direction: column; align-items: center;
  justify-content: center; flex: 1; padding: 32px 16px; text-align: center;
}
.gsd-empty p { font-size: 12px; color: #2a4a60; line-height: 1.7; }

/* ── HISTORY ITEM WITH 3-DOT MENU ── */
.gsd-item {
  position: relative; display: flex; align-items: center;
  border-radius: 9px; transition: background .15s;
  gap: 0;
}
.gsd-item:hover { background: rgba(255,255,255,.05); }
.gsd-item:hover .gsd-item-menu-btn { opacity: 1; }

.gsd-item-btn {
  flex: 1; background: none; border: none;
  color: #8aa0b8; padding: 9px 8px 9px 10px;
  font-size: 12px; font-family: inherit;
  text-align: left; cursor: pointer;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  display: flex; align-items: center; gap: 8px; min-width: 0;
  border-radius: 9px;
}
.gsd-item-btn:hover { color: #f0f4ff; }
.gsd-risk-dot {
  width: 7px; height: 7px; border-radius: 50%; flex-shrink: 0;
}
.gsd-item-text { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.gsd-item-menu-btn {
  background: none; border: none; color: #4a6a88;
  font-size: 16px; cursor: pointer; padding: 6px 8px;
  border-radius: 7px; opacity: 0; transition: all .15s;
  flex-shrink: 0; line-height: 1;
}
.gsd-item-menu-btn:hover { color: #f0f4ff; background: rgba(255,255,255,.08); opacity: 1; }

/* ── 3-DOT DROPDOWN MENU ── */
.gsd-item-dropdown {
  position: absolute; right: 6px; top: calc(100% + 4px);
  background: #0d1824;
  border: 1px solid rgba(99,242,208,.15);
  border-radius: 12px; padding: 6px;
  min-width: 170px; z-index: 600;
  box-shadow: 0 12px 32px rgba(0,0,0,.9), 0 0 0 1px rgba(99,242,208,.05);
  display: none; flex-direction: column; gap: 1px;
  animation: dropIn .15s ease;
}
@keyframes dropIn { from { opacity:0; transform:translateY(-6px) scale(.97); } to { opacity:1; transform:none; } }
.gsd-item-dropdown.open { display: flex; }

.gsd-item-dropdown button {
  background: none; border: none; color: #7a9ab8;
  padding: 9px 12px; border-radius: 8px;
  cursor: pointer; font-size: 13px; font-family: inherit;
  text-align: left; width: 100%; transition: all .12s;
  display: flex; align-items: center; gap: 10px;
  font-weight: 500;
}
.gsd-item-dropdown button .dd-icon {
  width: 18px; height: 18px; display: flex; align-items: center; justify-content: center;
  font-size: 14px; flex-shrink: 0;
}
.gsd-item-dropdown button:hover { background: rgba(99,242,208,.08); color: #e0f4ff; }
.gsd-item-dropdown .dd-divider {
  height: 1px; background: rgba(255,255,255,.06); margin: 4px 2px;
}
.gsd-item-dropdown button.danger { color: #7a9ab8; }
.gsd-item-dropdown button.danger:hover { background: rgba(255,77,94,.12); color: #ff6b78; }

/* ── GSD FOOTER ── */
.gsd-footer {
  padding: 12px 10px;
  border-top: 1px solid rgba(255,255,255,.06);
  flex-shrink: 0;
}
.gsd-user {
  display: flex; align-items: center; gap: 10px;
  padding: 10px; border-radius: 10px;
  background: rgba(255,255,255,.04);
}
.gsd-user-info { flex: 1; min-width: 0; }
.gsd-user-email {
  font-size: 11px; color: #6a8aa8;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.gsd-user-plan { font-size: 10px; font-weight: 700; margin-top: 2px; }
.gsd-logout {
  background: none; border: none; color: #4a6a88;
  cursor: pointer; font-size: 18px; padding: 4px;
  transition: color .2s; border-radius: 6px;
}
.gsd-logout:hover { color: #ff4d5e; }

@media(max-width:600px) { .gsd { width: 85vw; } }
