*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --void:#040C1A;--base:#06101F;--raised:#0B1627;--elevated:#0F1E38;
  --g1:rgba(255,255,255,0.03);--g2:rgba(12,24,56,0.82);--g3:rgba(16,32,72,0.88);
  --b1:rgba(255,255,255,0.09);--b2:rgba(255,255,255,0.15);--b3:rgba(255,255,255,0.22);
  --cyan:#60A5FA;--cs:rgba(96,165,250,0.08);--cg:rgba(96,165,250,0.18);
  --violet:#6366F1;--vs:rgba(99,102,241,0.1);
  --emerald:#10B981;--amber:#F59E0B;--rose:#F43F5E;
  --t1:#F0F8FF;--t2:#8BAFC8;--t3:#2D3F58;
  --fd:"Space Grotesk",sans-serif;--fb:"Inter",sans-serif;--fm:"JetBrains Mono",monospace;
  --nav:68px;--r:14px;--rl:20px;--rx:26px
}
html{scroll-behavior:smooth}
body{background:var(--void);color:var(--t1);font-family:var(--fb);overflow-x:hidden;min-height:100vh}
::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--b2);border-radius:4px}
::selection{background:rgba(6,182,212,0.25);color:var(--t1)}
#bgCanvas{position:fixed;inset:0;z-index:0;pointer-events:none}
.aurora{position:fixed;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.a1{position:absolute;width:900px;height:900px;border-radius:50%;background:radial-gradient(circle,rgba(30,64,175,0.07) 0%,transparent 70%);top:-350px;right:-100px;animation:aura 20s ease-in-out infinite;will-change:transform}
.a2{position:absolute;width:800px;height:800px;border-radius:50%;background:radial-gradient(circle,rgba(55,48,163,0.08) 0%,transparent 70%);bottom:-300px;left:-200px;animation:aura 16s ease-in-out infinite reverse}
.a3{position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(37,99,235,0.06) 0%,transparent 70%);top:40%;left:30%;animation:aura 24s ease-in-out infinite;animation-delay:-8s}
@keyframes aura{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(50px,-50px) scale(1.08)}66%{transform:translate(-35px,35px) scale(0.94)}}
.bg-grid{position:fixed;inset:0;z-index:1;pointer-events:none;background-image:linear-gradient(rgba(59,130,246,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(59,130,246,0.05) 1px,transparent 1px);background-size:60px 60px}
nav{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--nav);display:flex;align-items:center;padding:0 40px;gap:28px;background:rgba(4,12,26,0.88);backdrop-filter:blur(28px) saturate(180%);border-bottom:1px solid var(--b1);transition:background .3s}
nav.scrolled{background:rgba(4,12,26,0.97)}
.logo{display:flex;align-items:center;gap:9px;cursor:pointer;text-decoration:none;flex-shrink:0}
.logo-g{width:30px;height:30px;border-radius:8px;background-color:#FFFFFF;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpolygon points='50,18 77.7,34 77.7,66 50,82 22.3,66 22.3,34' fill='none' stroke='%2306101F' stroke-width='9' stroke-linejoin='round'/%3E%3Ccircle cx='50' cy='18' r='6.5' fill='%2306101F'/%3E%3Ccircle cx='77.7' cy='34' r='6.5' fill='%2306101F'/%3E%3Ccircle cx='77.7' cy='66' r='6.5' fill='%233B82F6'/%3E%3Ccircle cx='50' cy='82' r='6.5' fill='%2306101F'/%3E%3Ccircle cx='22.3' cy='66' r='6.5' fill='%233B82F6'/%3E%3Ccircle cx='22.3' cy='34' r='6.5' fill='%2306101F'/%3E%3C/svg%3E");background-size:78%;background-position:center;background-repeat:no-repeat;display:flex;align-items:center;justify-content:center;font-size:0;color:transparent;flex-shrink:0}
.logo-t{font-family:var(--fd);font-size:17px;font-weight:700;color:var(--t1);letter-spacing:-.4px}
.nav-links{display:flex;gap:1px;flex:1}
.nl{padding:7px 13px;border-radius:9px;font-size:13px;font-weight:500;color:var(--t2);background:none;border:none;cursor:pointer;font-family:var(--fb);transition:all .15s;white-space:nowrap}
.nl:hover{color:var(--t1);background:var(--g2)}.nl.on{color:var(--t1);background:var(--g2)}
.nav-r{display:flex;align-items:center;gap:8px;flex-shrink:0}
.btn-ghost{padding:8px 16px;border-radius:50px;background:transparent;color:var(--t1);font-size:13px;font-weight:500;border:1px solid var(--b2);cursor:pointer;font-family:var(--fb);transition:all .15s}
.btn-ghost:hover{background:var(--g2)}
.btn-pro{padding:8px 18px;border-radius:50px;background:#FFFFFF;color:#06101F;font-size:13px;font-weight:700;border:none;cursor:pointer;font-family:var(--fb);transition:all .2s}
.btn-pro:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(255,255,255,0.16)}
.btn-signup{display:flex;align-items:center;gap:7px;padding:8px 16px;border-radius:50px;background:#FFFFFF;color:#06101F;font-size:13px;font-weight:600;border:none;cursor:pointer;font-family:var(--fb);transition:all .2s}
.btn-signup:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(255,255,255,0.16);background:#F0F6FF}
.btn-signup svg{flex-shrink:0}
main{position:relative;z-index:10;padding-top:var(--nav)}
.page{display:none}.page.on{display:block}
.hero-wrap{min-height:calc(100vh - var(--nav));display:flex;align-items:center;padding:80px 64px;max-width:1400px;margin:0 auto;gap:64px}
.hero-pill{display:inline-flex;align-items:center;gap:7px;padding:5px 14px;border-radius:50px;background:rgba(255,255,255,0.07);border:1px solid rgba(255,255,255,0.18);color:rgba(255,255,255,0.85);font-size:11px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;margin-bottom:22px}
.hero-pill::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--cyan);animation:gp 2s ease-in-out infinite}
@keyframes gp{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(255,255,255,0.4)}60%{opacity:.7;box-shadow:0 0 0 6px rgba(255,255,255,0)}}
.hero-h1{font-family:var(--fd);font-size:clamp(38px,5.5vw,68px);font-weight:700;line-height:1.04;letter-spacing:-2px;color:var(--t1);margin-bottom:20px}
.hg{background:linear-gradient(135deg,#FFFFFF 0%,#BAE6FD 40%,#C7D2FE 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero-sub{font-size:17px;color:var(--t2);line-height:1.7;font-weight:300;max-width:520px;margin-bottom:34px}
.hero-ctas{display:flex;gap:12px;margin-bottom:52px;flex-wrap:wrap}
.btn-hero{padding:13px 28px;border-radius:50px;font-size:15px;font-weight:600;cursor:pointer;font-family:var(--fb);transition:all .2s;display:inline-flex;align-items:center;gap:8px;border:none}
.bh1{background:#FFFFFF;color:#06101F;letter-spacing:-.1px}
.bh1:hover{transform:translateY(-2px);box-shadow:0 14px 40px rgba(255,255,255,0.22);background:#F0F6FF}
.bh2{background:transparent;color:var(--t1);border:1px solid var(--b3) !important}
.bh2:hover{background:var(--g2)}
.hero-stats{display:flex;gap:40px;padding-top:36px;border-top:1px solid var(--b1)}
.hs-v{font-family:var(--fd);font-size:32px;font-weight:700;color:var(--t1);letter-spacing:-1px}
.hs-l{font-size:12px;color:var(--t3);margin-top:3px}
.hero-right{width:440px;flex-shrink:0;position:relative;height:500px}
.hcard{position:absolute;background:var(--g2);backdrop-filter:blur(24px) saturate(180%);border:1px solid var(--b2);border-radius:var(--rx);padding:22px;animation:hfl 6s ease-in-out infinite}
.hc1{top:0;right:0;width:270px;animation-delay:0s}.hc2{top:175px;left:0;width:260px;animation-delay:-2.5s}.hc3{bottom:0;right:10px;width:290px;animation-delay:-4.5s}
@keyframes hfl{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
.hct{font-size:10px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;padding:3px 9px;border-radius:50px;display:inline-block;margin-bottom:10px}
.hcn{font-family:var(--fd);font-size:16px;font-weight:700;color:var(--t1);margin-bottom:8px}
.hcs{font-size:12px;color:var(--t2);margin-bottom:3px;display:flex;align-items:center;gap:5px}
.hcs::before{content:"";width:3px;height:3px;border-radius:50%;background:var(--cyan);flex-shrink:0}
.feat-sec{padding:100px 64px;max-width:1400px;margin:0 auto}
.sl{font-size:11px;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:rgba(255,255,255,0.45);margin-bottom:12px}
.sh{font-family:var(--fd);font-size:clamp(28px,4vw,44px);font-weight:700;letter-spacing:-1px;color:var(--t1);margin-bottom:12px}
.ss{font-size:16px;color:var(--t2);line-height:1.7;max-width:560px;font-weight:300;margin-bottom:52px}
.fg{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.fc{background:var(--g1);border:1px solid var(--b1);border-radius:var(--rx);padding:28px;transition:all .25s;position:relative;overflow:hidden}
.fc::before{content:"";position:absolute;inset:0;border-radius:var(--rx);background:linear-gradient(135deg,rgba(6,182,212,0.04),transparent);opacity:0;transition:opacity .25s}
.fc:hover{border-color:var(--b2);transform:translateY(-3px);box-shadow:0 16px 48px rgba(0,0,0,0.5)}.fc:hover::before{opacity:1}
.fi{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:18px}
.ft{font-family:var(--fd);font-size:17px;font-weight:700;color:var(--t1);letter-spacing:-.3px;margin-bottom:8px}
.fd2{font-size:13px;color:var(--t2);line-height:1.65}
.db-page{padding:48px 64px 80px;max-width:1400px;margin:0 auto}
.db-top{display:flex;align-items:center;gap:14px;margin-bottom:18px;flex-wrap:wrap}
.srch-w{flex:1;min-width:260px;position:relative}
.si{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--t3);font-size:16px;pointer-events:none}
.si-inp{width:100%;padding:13px 18px 13px 44px;border-radius:var(--r);background:var(--g2);border:1px solid var(--b1);color:var(--t1);font-size:14px;font-family:var(--fb);outline:none;transition:border-color .2s}
.si-inp:focus{border-color:rgba(255,255,255,0.28)}.si-inp::placeholder{color:var(--t3)}
.sort-s{padding:12px 16px;border-radius:var(--r);background:var(--g2);border:1px solid var(--b1);color:var(--t2);font-size:13px;font-family:var(--fb);outline:none;cursor:pointer}
.filters{display:flex;gap:6px;margin-bottom:24px;flex-wrap:wrap}
.fch{padding:6px 14px;border-radius:50px;font-size:12px;font-weight:500;color:var(--t2);background:var(--g1);border:1px solid var(--b1);cursor:pointer;font-family:var(--fb);transition:all .15s;white-space:nowrap}
.fch:hover{color:var(--t1);border-color:var(--b2)}.fch.on{background:rgba(255,255,255,0.09);border-color:rgba(255,255,255,0.22);color:#F0F8FF}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:14px}
.pc{background:var(--g1);border:1px solid var(--b1);border-radius:var(--rx);padding:22px;cursor:pointer;transition:all .25s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden}
.pc::after{content:"";position:absolute;inset:0;border-radius:var(--rx);background:linear-gradient(135deg,rgba(6,182,212,0.04),transparent);opacity:0;transition:opacity .2s;pointer-events:none}
.pc:hover{border-color:var(--b2);transform:translateY(-5px);box-shadow:0 24px 56px rgba(0,0,0,0.7)}.pc:hover::after{opacity:1}
.pc-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}
.badge{font-size:10px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;padding:3px 9px;border-radius:50px;display:inline-block}
.bm{width:26px;height:26px;border-radius:7px;background:var(--g2);border:1px solid var(--b1);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--t3);font-size:13px;transition:all .15s;flex-shrink:0}
.bm:hover{color:var(--amber);border-color:rgba(245,158,11,.3)}.bm.on{color:var(--amber);background:rgba(245,158,11,.08);border-color:rgba(245,158,11,.3)}
.pc-name{font-family:var(--fd);font-size:20px;font-weight:700;color:var(--t1);letter-spacing:-.3px;margin-bottom:3px}
.pc-fn{font-size:11px;color:var(--t3);margin-bottom:12px}
.pc-desc{font-size:13px;color:var(--t2);line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:18px}
.pc-meta{display:flex;gap:7px}
.pcm{flex:1;background:rgba(255,255,255,0.025);border:1px solid var(--b1);border-radius:9px;padding:7px 9px}
.pcm-l{font-size:9px;color:var(--t3);text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}
.pcm-v{font-size:11px;font-weight:600;color:var(--t1)}
.db-empty{grid-column:1/-1;text-align:center;padding:80px 40px;color:var(--t2)}
.m-ov{position:fixed;inset:0;z-index:200;background:rgba(5,7,10,0.88);backdrop-filter:blur(14px);display:none;justify-content:flex-end;padding:12px}
.m-ov.open{display:flex;animation:mfi .2s ease}
@keyframes mfi{from{opacity:0}to{opacity:1}}
.modal{background:var(--base);border:1px solid var(--b2);border-radius:var(--rx);width:700px;height:100%;overflow-y:auto;position:relative;animation:msl .3s cubic-bezier(.4,0,.2,1)}
.modal::-webkit-scrollbar{display:none}
@keyframes msl{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:none}}
.m-x{position:absolute;top:16px;right:16px;width:32px;height:32px;border-radius:8px;background:var(--g2);border:1px solid var(--b1);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--t2);font-size:15px;z-index:10;transition:all .15s}
.m-x:hover{color:var(--t1)}
.m-head{padding:40px 40px 0;position:sticky;top:0;background:var(--base);z-index:5}
.m-name{font-family:var(--fd);font-size:36px;font-weight:700;letter-spacing:-1px;color:var(--t1);margin:12px 0 5px}
.m-sub{font-size:13px;color:var(--t2);font-weight:300;margin-bottom:20px}
.m-tabs{display:flex;border-bottom:1px solid var(--b1);padding:0 40px;background:var(--base)}
.mt{padding:12px 16px;font-size:13px;font-weight:500;color:var(--t2);cursor:pointer;border:none;background:none;font-family:var(--fb);border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s;white-space:nowrap}
.mt:hover{color:var(--t1)}.mt.on{color:var(--cyan);border-bottom-color:var(--cyan)}
.m-body{padding:28px 40px 48px}
.mtc{display:none}.mtc.on{display:block}
.ig{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-bottom:22px}
.ic{background:var(--g2);border:1px solid var(--b1);border-radius:var(--r);padding:15px 18px}
.icl{font-size:9px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,0.38);margin-bottom:7px;font-family:var(--fd)}
.icv{font-size:13px;color:var(--t1);line-height:1.6}
.icv.big{font-size:20px;font-weight:700;font-family:var(--fd);letter-spacing:-.5px;color:var(--cyan)}
.sh2{font-size:10px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--t3);margin:20px 0 10px}
.tags{display:flex;flex-wrap:wrap;gap:7px}
.tag{padding:6px 12px;border-radius:50px;font-size:12px;font-weight:500}
.tg{background:rgba(16,185,129,.08);border:1px solid rgba(16,185,129,.22);color:#34D399}
.tr{background:rgba(244,63,94,.08);border:1px solid rgba(244,63,94,.22);color:#FB7185}
.hl-bar{height:8px;background:var(--g2);border:1px solid var(--b1);border-radius:4px;overflow:hidden;margin:10px 0 6px}
.hl-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,rgba(255,255,255,0.6),rgba(200,214,255,0.9));transition:width .7s cubic-bezier(.34,1.56,.64,1)}
.hl-marks{display:flex;justify-content:space-between;font-size:10px;color:var(--t3)}
.rel-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.rel-c{background:var(--g2);border:1px solid var(--b1);border-radius:12px;padding:14px;cursor:pointer;transition:all .15s}
.rel-c:hover{border-color:var(--b2);transform:translateX(2px)}
.ai-page{display:flex;height:calc(100vh - var(--nav))}
.ai-sb{width:256px;border-right:1px solid var(--b1);background:var(--base);display:flex;flex-direction:column;flex-shrink:0}
.ai-sb-h{padding:20px 16px 14px;border-bottom:1px solid var(--b1)}
.new-btn{width:100%;padding:10px 16px;border-radius:10px;background:#FFFFFF;color:#06101F;font-size:13px;font-weight:700;border:none;cursor:pointer;font-family:var(--fb);transition:all .15s;display:flex;align-items:center;justify-content:center;gap:7px}
.new-btn:hover{background:#F0F6FF;transform:translateY(-1px);box-shadow:0 6px 20px rgba(255,255,255,0.15)}
.ai-list{flex:1;overflow-y:auto;padding:8px}.ai-list::-webkit-scrollbar{display:none}
.ai-li{padding:10px 12px;border-radius:10px;cursor:pointer;transition:all .15s;border:1px solid transparent}
.ai-li:hover{background:var(--g2)}.ai-li.on{background:var(--g2);border-color:var(--b1)}
.ai-li-t{font-size:13px;font-weight:500;color:var(--t1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ai-sb-ft{padding:12px 16px;border-top:1px solid var(--b1);font-size:12px;color:var(--t3)}
.ai-main{flex:1;display:flex;flex-direction:column;min-width:0}
.ai-main-h{padding:16px 24px;border-bottom:1px solid var(--b1);display:flex;align-items:center;gap:10px}
.ai-msgs{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:20px}
.ai-msgs::-webkit-scrollbar{display:none}
.ai-msg{display:flex;gap:12px;align-items:flex-start;max-width:820px}
.ai-msg.user{flex-direction:row-reverse;align-self:flex-end}
.av{width:32px;height:32px;border-radius:8px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;font-family:var(--fd)}
.av.ai{background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);color:#F0F8FF}.av.user{background:var(--g3);color:var(--t1)}
.ai-bi{padding:14px 18px;border-radius:16px;font-size:14px;line-height:1.7;font-family:var(--fb)}
.ai-msg.ai .ai-bi{background:var(--g2);border:1px solid var(--b1);color:var(--t1);border-radius:4px 16px 16px 16px}
.ai-msg.user .ai-bi{background:#FFFFFF;color:#06101F;border-radius:16px 16px 4px 16px;font-weight:500}
.ai-acts{display:flex;gap:6px;margin-top:8px;opacity:0;transition:opacity .15s}
.ai-msg:hover .ai-acts{opacity:1}
.ai-act{padding:4px 10px;border-radius:6px;font-size:11px;font-weight:500;color:var(--t3);background:var(--g2);border:1px solid var(--b1);cursor:pointer;font-family:var(--fb);transition:all .15s}
.ai-act:hover{color:var(--t1);border-color:var(--b2)}
.ai-sugg-row{padding:0 24px 14px;display:flex;gap:7px;flex-wrap:wrap}
.ai-sp{padding:7px 14px;border-radius:50px;font-size:12px;font-weight:500;color:var(--t2);background:var(--g2);border:1px solid var(--b1);cursor:pointer;font-family:var(--fb);transition:all .15s;white-space:nowrap}
.ai-sp:hover{color:var(--t1);border-color:rgba(59,130,246,.36);background:var(--cs)}
.ai-inp-area{padding:14px 24px 20px;border-top:1px solid var(--b1);flex-shrink:0}
.ai-inp-wrap{background:var(--g2);border:1px solid var(--b2);border-radius:var(--rl);padding:14px 16px;display:flex;gap:10px;align-items:flex-end;transition:border-color .2s}
.ai-inp-wrap:focus-within{border-color:rgba(255,255,255,0.25)}
.ai-inp{flex:1;background:none;border:none;color:var(--t1);font-size:14px;font-family:var(--fb);outline:none;resize:none;max-height:150px;min-height:24px;line-height:1.6}
.ai-inp::placeholder{color:var(--t3)}
.ai-send{width:36px;height:36px;border-radius:9px;background:#FFFFFF;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#06101F;font-size:17px;flex-shrink:0;transition:all .2s;font-weight:700}
.ai-send:hover{transform:scale(1.05);box-shadow:0 6px 18px rgba(255,255,255,0.15);background:#F0F6FF}.ai-send:disabled{background:rgba(255,255,255,0.06);color:var(--t3);cursor:not-allowed;transform:none;box-shadow:none}
.ty-w{background:var(--g2);border:1px solid var(--b1);border-radius:4px 16px 16px 16px;align-self:flex-start;display:none}.ty-w.show{display:block}
.ty{display:flex;gap:4px;padding:12px 16px;align-items:center}
.ty span{width:5px;height:5px;border-radius:50%;background:var(--cyan);animation:td 1.1s infinite}
.ty span:nth-child(2){animation-delay:.18s}.ty span:nth-child(3){animation-delay:.36s}
@keyframes td{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-6px);opacity:1}}
.cur{display:inline-block;width:2px;height:15px;background:var(--cyan);margin-left:2px;animation:cb .7s step-end infinite;vertical-align:text-bottom}
@keyframes cb{0%,100%{opacity:1}50%{opacity:0}}
.ai-bi h1,.ai-bi h2,.ai-bi h3{font-family:var(--fd);font-weight:700;color:var(--t1);margin:16px 0 8px;letter-spacing:-.3px}
.ai-bi h1{font-size:20px}.ai-bi h2{font-size:17px}.ai-bi h3{font-size:15px}
.ai-bi p{margin-bottom:10px}.ai-bi ul,.ai-bi ol{padding-left:20px;margin-bottom:10px}
.ai-bi li{margin-bottom:5px;line-height:1.6}
.ai-bi code{background:var(--elevated);border:1px solid var(--b2);border-radius:5px;padding:1px 6px;font-family:var(--fm);font-size:12px;color:var(--cyan)}
.ai-bi pre{background:var(--elevated);border:1px solid var(--b2);border-radius:12px;padding:16px;margin:12px 0;overflow-x:auto}
.ai-bi pre code{background:none;border:none;padding:0;font-size:13px;color:#e2e8f0}
.ai-bi strong{color:var(--t1);font-weight:600}.ai-bi em{color:var(--t2);font-style:italic}
.ai-bi table{width:100%;border-collapse:collapse;margin:12px 0;font-size:13px}
.ai-bi th{background:var(--elevated);border:1px solid var(--b2);padding:8px 12px;text-align:left;font-family:var(--fd);font-weight:600;font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:var(--t2)}
.ai-bi td{border:1px solid var(--b1);padding:8px 12px;color:var(--t1)}.ai-bi tr:hover td{background:var(--g2)}
.ai-bi blockquote{border-left:3px solid var(--cyan);padding-left:14px;color:var(--t2);font-style:italic;margin:12px 0}
.ai-bi hr{border:none;border-top:1px solid var(--b2);margin:16px 0}
.ai-bi a{color:var(--cyan);text-decoration:none}.ai-bi a:hover{text-decoration:underline}
.proto-page{padding:52px 64px 80px;max-width:1200px;margin:0 auto}.gc2.sel{border-color:rgba(255,255,255,0.3);background:rgba(255,255,255,0.06)}
.pc2{width:100%;padding:12px 16px;border-radius:var(--r);background:var(--base);border:1px solid var(--b1);color:var(--t1);font-size:14px;font-family:var(--fb);outline:none;transition:border-color .2s;margin-top:8px}
.pc2:focus{border-color:rgba(255,255,255,0.28)}.pc2::placeholder{color:var(--t3)}
.stk-page{padding:52px 64px 80px;max-width:1200px;margin:0 auto}
.stk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;margin-top:32px}
.sk{background:var(--g1);border:1px solid var(--b1);border-radius:var(--rx);padding:26px;transition:all .2s}
.sk:hover{border-color:var(--b2);transform:translateY(-3px);box-shadow:0 16px 40px rgba(0,0,0,.4)}
.sk-goal{font-size:10px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:rgba(255,255,255,0.55);margin-bottom:12px}
.sk-name{font-family:var(--fd);font-size:20px;font-weight:700;color:var(--t1);letter-spacing:-.3px;margin-bottom:8px}
.sk-peps{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}
.sk-p{padding:4px 11px;border-radius:50px;font-size:11px;font-weight:600;background:var(--g2);border:1px solid var(--b1);color:var(--t2)}
.sk-rat{font-size:13px;color:var(--t2);line-height:1.65;margin-bottom:16px}
.sk-proto{background:var(--raised);border:1px solid var(--b1);border-radius:var(--r);padding:14px 16px;font-size:12px;color:var(--t2);line-height:1.7}
.sk-pt{font-size:10px;font-weight:600;letter-spacing:.7px;text-transform:uppercase;color:var(--t3);margin-bottom:7px}
.res-page{padding:52px 64px 80px;max-width:1400px;margin:0 auto}
.res-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;margin-top:28px}
.rc{background:var(--g1);border:1px solid var(--b1);border-radius:var(--rx);padding:22px;transition:all .2s}
.rc:hover{border-color:var(--b2);transform:translateY(-2px);box-shadow:0 12px 36px rgba(0,0,0,.5)}
.rc-m{display:flex;align-items:center;gap:8px;margin-bottom:14px}
.rc-c{font-size:10px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;padding:3px 9px;border-radius:50px}
.rc-d{font-size:11px;color:var(--t3)}
.rc-t{font-family:var(--fd);font-size:16px;font-weight:700;color:var(--t1);letter-spacing:-.2px;margin-bottom:8px;line-height:1.4}
.rc-a{font-size:13px;color:var(--t2);line-height:1.65;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.rc-f{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding-top:14px;border-top:1px solid var(--b1)}
.rc-j{font-size:11px;color:var(--t3)}.rc-link{font-size:11px;font-weight:600;color:var(--cyan);cursor:pointer}
.price-page{padding:80px 64px;max-width:1100px;margin:0 auto;text-align:center}
.price-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:48px;text-align:left}
.price-c{background:var(--g1);border:1px solid var(--b1);border-radius:var(--rx);padding:36px}
.price-c.feat{background:linear-gradient(135deg,rgba(6,182,212,0.08),rgba(139,92,246,0.08));border:1px solid rgba(6,182,212,0.25)}
.price-badge{display:inline-block;padding:4px 12px;border-radius:50px;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);color:#F0F8FF;margin-bottom:18px}
.price-n{font-family:var(--fd);font-size:22px;font-weight:700;color:var(--t1);margin-bottom:8px}
.price-a{font-family:var(--fd);font-size:48px;font-weight:700;color:var(--t1);letter-spacing:-2px;line-height:1}
.price-p{font-size:14px;color:var(--t2);margin-bottom:28px}
.price-btn{width:100%;padding:14px;border-radius:50px;font-size:15px;font-weight:600;border:none;cursor:pointer;font-family:var(--fb);transition:all .2s;margin-bottom:28px}
.pb-free{background:transparent;color:var(--t1);border:1px solid var(--b3) !important}
.pb-free:hover{background:var(--g2)}
.pb-pro{background:#FFFFFF;color:#06101F;font-weight:700}
.pb-pro:hover{transform:translateY(-1px);box-shadow:0 10px 30px rgba(255,255,255,0.2);background:#F0F6FF}
.pfs{display:flex;flex-direction:column;gap:11px}
.pf{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--t2)}
.pfy{color:var(--emerald)}.pfn{color:var(--t3)}
footer{border-top:1px solid var(--b1);padding:48px 64px 36px;max-width:1400px;margin:0 auto}
.fg2{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px}
.fl-t{font-family:var(--fd);font-size:17px;font-weight:700;color:var(--t1);margin:10px 0 8px}
.fl-d{font-size:13px;color:var(--t3);line-height:1.65;max-width:240px}
.fc-t{font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--t3);margin-bottom:14px}
.fl{font-size:13px;color:var(--t2);cursor:pointer;display:block;margin-bottom:9px;transition:color .15s;text-decoration:none}
.fl:hover{color:var(--t1)}
.fb{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--t3);padding-top:24px;border-top:1px solid var(--b1)}
.fdis{font-size:11px;color:var(--t3);line-height:1.6;max-width:800px;margin-top:16px}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}
.reveal.visible{opacity:1;transform:none}
.toast{position:fixed;bottom:24px;right:24px;z-index:500;background:var(--raised);border:1px solid var(--b3);border-radius:var(--r);padding:12px 18px;font-size:13px;color:var(--t1);display:none;box-shadow:0 10px 40px rgba(0,0,0,.6)}
.toast.show{display:block}
@media(max-width:1100px){.hero-wrap,.feat-sec,.db-page,.proto-page,.stk-page,.res-page,.price-page{padding-left:32px;padding-right:32px}footer{padding-left:32px;padding-right:32px}.fg{grid-template-columns:1fr 1fr}.hero-right{display:none}.price-cards{grid-template-columns:1fr}}
@media(max-width:768px){nav{padding:0 20px}.nav-links{display:none}.ai-sb{display:none}.proto-goals{grid-template-columns:1fr 1fr}.fg2{grid-template-columns:1fr 1fr}}

/* ═══════════ AUTH: modal, user chip, user menu ═══════════ */
.user-chip{display:flex;align-items:center;gap:9px;padding:6px 14px 6px 6px;border-radius:50px;background:var(--g2);border:1px solid var(--b1);cursor:pointer;position:relative;transition:border-color .15s}
.user-chip:hover{border-color:var(--b2)}
.user-chip-avatar{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,rgba(255,255,255,0.95),rgba(224,231,255,0.9));color:#06101F;display:flex;align-items:center;justify-content:center;font-family:var(--fd);font-size:12px;font-weight:700;flex-shrink:0;background-size:cover;background-position:center;background-repeat:no-repeat;overflow:hidden}
.user-chip-avatar.has-photo{background-color:transparent;box-shadow:0 0 0 1px rgba(255,255,255,.18) inset}
#userChipName{font-size:13px;font-weight:500;color:var(--t1)}
.user-menu{position:absolute;top:calc(100% + 10px);right:0;background:var(--base);border:1px solid var(--b2);border-radius:var(--r);padding:8px;min-width:200px;box-shadow:0 16px 48px rgba(0,0,0,.6);opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .15s,transform .15s;z-index:50}
.user-menu.open{opacity:1;transform:none;pointer-events:all}
.user-menu-email{font-size:12px;color:var(--t3);padding:8px 10px;border-bottom:1px solid var(--b1);margin-bottom:6px;word-break:break-all}
.user-menu-item{width:100%;text-align:left;padding:9px 10px;border-radius:8px;background:none;border:none;color:var(--t1);font-size:13px;font-weight:500;cursor:pointer;font-family:var(--fb);transition:background .15s}
.user-menu-item:hover{background:var(--g2)}

.auth-ov{position:fixed;inset:0;z-index:300;background:rgba(4,12,26,0.85);backdrop-filter:blur(14px);display:none;align-items:center;justify-content:center;padding:20px}
.auth-ov.open{display:flex;animation:mfi .2s ease}
.auth-modal{background:var(--base);border:1px solid var(--b2);border-radius:var(--rx);width:420px;max-width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:authpop .25s cubic-bezier(.34,1.56,.64,1)}
@keyframes authpop{from{opacity:0;transform:scale(.94) translateY(10px)}to{opacity:1;transform:none}}
.auth-head{padding:40px 36px 8px;text-align:center}
.auth-title{font-family:var(--fd);font-size:22px;font-weight:700;color:var(--t1);letter-spacing:-.4px;margin-bottom:6px}
.auth-sub{font-size:13px;color:var(--t2)}
.auth-body{padding:24px 36px 36px}
.auth-error{background:rgba(244,63,94,.08);border:1px solid rgba(244,63,94,.25);color:#FB7185;font-size:13px;padding:10px 14px;border-radius:10px;margin-bottom:16px;line-height:1.5}
.auth-oauth-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px;border-radius:12px;background:var(--g2);border:1px solid var(--b1);color:var(--t1);font-size:14px;font-weight:500;cursor:pointer;font-family:var(--fb);transition:all .15s;margin-bottom:10px}
.auth-oauth-btn:hover{border-color:var(--b2);background:var(--g3)}
.auth-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--t3);font-size:12px}
.auth-divider::before,.auth-divider::after{content:'';flex:1;height:1px;background:var(--b1)}
.auth-switch{text-align:center;font-size:13px;color:var(--t2);margin-top:20px}
.auth-switch a{color:var(--t1);font-weight:600;cursor:pointer;text-decoration:underline}
.auth-name-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}
.auth-hint{font-size:11.5px;color:var(--t3);margin-top:6px;line-height:1.5}
.auth-optional{color:var(--t3);font-weight:400;text-transform:none;letter-spacing:0}
.onboard-goals{display:flex;flex-wrap:wrap;gap:8px}
.onboard-goal-chip{padding:9px 15px;border-radius:50px;font-size:13px;font-weight:500;color:var(--t2);background:var(--g2);border:1px solid var(--b1);cursor:pointer;transition:all .15s}
.onboard-goal-chip:hover{border-color:var(--b2);color:var(--t1)}
.onboard-goal-chip.sel{background:#FFFFFF;color:#06101F;border-color:#FFFFFF;font-weight:600}

/* ═══════════ AGE VERIFICATION GATE ═══════════ */
.agegate-ov{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}
.agegate-ov.hidden{display:none}
.agegate-bg{position:absolute;inset:0;background:var(--void);background-image:radial-gradient(circle at 20% 20%,rgba(30,64,175,0.1),transparent 50%),radial-gradient(circle at 80% 80%,rgba(55,48,163,0.12),transparent 50%)}
.agegate-modal{position:relative;z-index:2;background:var(--base);border:1px solid var(--b2);border-radius:28px;width:480px;max-width:100%;max-height:92vh;overflow-y:auto;padding:44px 40px 36px;text-align:center;box-shadow:0 40px 100px rgba(0,0,0,.7);animation:authpop .35s cubic-bezier(.34,1.56,.64,1)}
.agegate-eyebrow{font-size:11px;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:rgba(255,255,255,0.5);margin-bottom:14px}
.agegate-title{font-family:var(--fd);font-size:26px;font-weight:700;letter-spacing:-.6px;color:var(--t1);margin-bottom:14px;line-height:1.15}
.agegate-sub{font-size:13.5px;color:var(--t2);line-height:1.7;margin-bottom:28px}
.agegate-checks{display:flex;flex-direction:column;gap:14px;margin-bottom:24px;text-align:left}
.agegate-check{display:flex;align-items:flex-start;gap:12px;cursor:pointer;padding:14px;border-radius:14px;background:var(--g2);border:1px solid var(--b1);transition:border-color .15s}
.agegate-check:hover{border-color:var(--b2)}
.agegate-check input{position:absolute;opacity:0;width:0;height:0}
.agegate-box{width:19px;height:19px;border-radius:6px;border:1.5px solid var(--b3);background:var(--g1);flex-shrink:0;margin-top:1px;position:relative;transition:all .15s}
.agegate-check input:checked ~ .agegate-box{background:#FFFFFF;border-color:#FFFFFF}
.agegate-check input:checked ~ .agegate-box::after{content:'';position:absolute;left:5px;top:1px;width:5px;height:9px;border:solid #06101F;border-width:0 2px 2px 0;transform:rotate(45deg)}
.agegate-txt{font-size:13px;color:var(--t2);line-height:1.55}
.agegate-txt strong{color:var(--t1);font-weight:600}
.agegate-exit{width:100%;background:none;border:none;color:var(--t3);font-size:12.5px;cursor:pointer;font-family:var(--fb);margin-top:12px;padding:8px;transition:color .15s}
.agegate-exit:hover{color:var(--t2)}
.agegate-fine{font-size:11px;color:var(--t3);line-height:1.6;margin-top:18px}
.agegate-fine a{color:rgba(255,255,255,0.6);cursor:pointer;text-decoration:underline}
.agegate-fine a:hover{color:var(--t1)}
#legalContent h3{font-family:var(--fd);font-size:14px;font-weight:700;color:var(--t1);margin:18px 0 8px}
#legalContent h3:first-child{margin-top:0}
#legalContent p{margin-bottom:10px}
#legalContent ul{padding-left:20px;margin-bottom:10px}
#legalContent li{margin-bottom:6px}

/* ═══════════ BILLING TOGGLE ═══════════ */
.bt-opt.on .bt-save{background:rgba(16,185,129,.15);color:#059669}

/* ═══════════ PAYWALL MODAL ═══════════ */
.paywall-ov{position:fixed;inset:0;z-index:400;background:rgba(4,12,26,0.88);backdrop-filter:blur(14px);display:none;align-items:center;justify-content:center;padding:20px}
.paywall-ov.open{display:flex;animation:mfi .2s ease}
.paywall-modal{background:var(--base);border:1px solid var(--b2);border-radius:var(--rx);width:460px;max-width:100%;padding:40px 36px;text-align:center;box-shadow:0 40px 100px rgba(0,0,0,.7);animation:authpop .3s cubic-bezier(.34,1.56,.64,1);position:relative}
.paywall-close{position:absolute;top:16px;right:16px;width:32px;height:32px;border-radius:8px;background:var(--g2);border:1px solid var(--b1);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--t2);font-size:15px;transition:all .15s}
.paywall-close:hover{color:var(--t1)}
.paywall-icon{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,rgba(255,255,255,0.95),rgba(224,231,255,0.9));display:flex;align-items:center;justify-content:center;font-size:24px;margin:0 auto 20px}
.paywall-title{font-family:var(--fd);font-size:22px;font-weight:700;color:var(--t1);letter-spacing:-.4px;margin-bottom:10px}
.paywall-sub{font-size:14px;color:var(--t2);line-height:1.6;margin-bottom:24px}
.paywall-features{text-align:left;display:flex;flex-direction:column;gap:10px;margin-bottom:26px;background:var(--g2);border:1px solid var(--b1);border-radius:var(--r);padding:16px 18px}
.paywall-cta{width:100%;padding:14px;border-radius:50px;background:#FFFFFF;color:#06101F;font-size:15px;font-weight:700;border:none;cursor:pointer;font-family:var(--fb);transition:all .2s;margin-bottom:10px}
.paywall-cta:hover{background:#F0F6FF;transform:translateY(-1px);box-shadow:0 10px 28px rgba(255,255,255,0.18)}
.paywall-dismiss{background:none;border:none;color:var(--t3);font-size:12.5px;cursor:pointer;font-family:var(--fb);padding:6px}
.paywall-dismiss:hover{color:var(--t2)}

/* ═══════════ TRACKER PAGE ═══════════ */
.trk-page{padding:52px 64px 80px;max-width:900px;margin:0 auto}
.trk-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:28px}
.tst{background:var(--g1);border:1px solid var(--b1);border-radius:var(--rx);padding:20px;text-align:center}
.tst-v{font-family:var(--fd);font-size:32px;font-weight:700;color:var(--t1);letter-spacing:-1px;margin-bottom:4px}
.tst-l{font-size:12px;color:var(--t3)}
.trk-tabs{display:flex;gap:8px;margin-bottom:24px}
.ttab{padding:9px 18px;border-radius:50px;font-size:13px;font-weight:600;color:var(--t2);background:var(--g1);border:1px solid var(--b1);cursor:pointer;font-family:var(--fb);transition:all .15s}
.ttab.on{background:#FFFFFF;color:#06101F;border-color:#FFFFFF}
.trk-panel{display:none}
.trk-panel.on{display:block}
.week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}
.wd{background:var(--g1);border:1px solid var(--b1);border-radius:12px;padding:12px 6px;text-align:center}
.wd-lbl{font-size:10px;color:var(--t3);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}
.wd-dot{width:22px;height:22px;border-radius:50%;margin:0 auto;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}
.wd-dot.full{background:#FFFFFF;color:#06101F}
.wd-dot.partial{background:rgba(245,158,11,.2);color:#FCD34D;border:1.5px solid rgba(245,158,11,.4)}
.wd-dot.none{background:var(--g2);border:1.5px solid var(--b1);color:var(--t3)}
.wd-dot.future{background:none;border:1.5px dashed var(--b1);color:var(--t3)}
.wd.today .wd-lbl{color:var(--t1);font-weight:700}
.dose-item{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--g1);border:1px solid var(--b1);border-radius:var(--r);margin-bottom:8px}
.dose-check{width:26px;height:26px;border-radius:8px;border:1.5px solid var(--b3);background:var(--g2);cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;color:transparent;transition:all .15s}
.dose-check.taken{background:#FFFFFF;border-color:#FFFFFF;color:#06101F}
.dose-name{font-size:14px;font-weight:600;color:var(--t1)}
.dose-meta{font-size:12px;color:var(--t3);margin-top:2px}
.dose-rm{margin-left:auto;width:26px;height:26px;border-radius:7px;background:rgba(244,63,94,.08);border:1px solid rgba(244,63,94,.2);color:#FB7185;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.trk-empty{text-align:center;padding:48px 20px;color:var(--t3)}
.trk-empty-icon{font-size:36px;margin-bottom:12px;display:block}
.regimen-card,.vial-card{background:var(--g1);border:1px solid var(--b1);border-radius:var(--r);padding:16px 18px;margin-bottom:10px;display:flex;align-items:center;gap:14px}
.regimen-card-name,.vial-card-name{font-size:15px;font-weight:700;color:var(--t1);font-family:var(--fd)}
.regimen-card-meta,.vial-card-meta{font-size:12px;color:var(--t2);margin-top:3px}
.vial-card-remaining{margin-left:auto;text-align:right}
.vial-remaining-val{font-family:var(--fd);font-size:18px;font-weight:700;color:var(--t1)}
.vial-remaining-lbl{font-size:10px;color:var(--t3);text-transform:uppercase;letter-spacing:.5px}
.vial-expired{color:#FB7185 !important}
.vial-calc-out{background:var(--cs);border:1px solid rgba(59,130,246,.2);border-radius:var(--r);padding:14px 16px;margin-top:16px;display:flex;flex-direction:column;gap:8px}
.vial-calc-row{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--t2)}
.vial-calc-row strong{color:var(--t1);font-family:var(--fd);font-size:15px}

/* ═══════════ PERSONALIZED RECOMMENDATIONS ═══════════ */
.rec-sec{padding:0 64px 40px;max-width:1400px;margin:0 auto}
.rec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;flex-wrap:wrap}
.rec-head .btn-hero{padding:10px 20px;font-size:14px;flex-shrink:0}
@media(max-width:1100px){.rec-sec{padding-left:32px;padding-right:32px}}

/* ═══════════ PRO GATING / LOCKED STATES ═══════════ */
.pc-locked,.rc-locked{position:relative;cursor:pointer}
.pc-locked:hover,.rc-locked:hover{border-color:rgba(255,255,255,.22)}
.pc-lock-badge{position:absolute;top:14px;right:14px;font-size:10px;font-weight:700;letter-spacing:.4px;padding:4px 9px;border-radius:50px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#F0F8FF;z-index:2}
.pc-blur{filter:blur(4.5px);opacity:.55;user-select:none;pointer-events:none}
.rc-locked .rc-link{color:var(--t2)}

/* Pro badge on user chip */
.pro-badge{display:inline-flex;align-items:center;font-size:9px;line-height:1;font-weight:800;letter-spacing:.7px;padding:4px 8px;border-radius:50px;background:linear-gradient(135deg,#FFFFFF,#DCE6FF);color:#06101F;margin-left:4px;flex-shrink:0}

/* AI quota line */
.ai-quota{font-size:11.5px;color:var(--t3);margin-top:8px;text-align:center}
.ai-quota a{color:var(--t1);font-weight:600;cursor:pointer;text-decoration:underline}

/* Locked stack cards */
.sk-locked{position:relative;cursor:pointer}
.sk-locked:hover{border-color:rgba(255,255,255,.22)}

/* Plan usage counters (tracker, bookmarks) */
.plan-count{font-size:11.5px;color:var(--t3);font-weight:500}
.plan-count a{color:var(--t1);text-decoration:underline;cursor:pointer}

/* ═══════════ CONVERSATION EXPORT ═══════════ */
.export-wrap{position:relative;margin-left:auto}
.export-btn{display:flex;align-items:center;gap:6px;padding:7px 13px;border-radius:9px;background:var(--g2);border:1px solid var(--b1);color:var(--t2);font-size:12.5px;font-weight:500;cursor:pointer;font-family:var(--fb);transition:all .15s}
.export-btn:hover{color:var(--t1);border-color:var(--b2)}
.export-btn svg{flex-shrink:0}
.export-menu{position:absolute;top:calc(100% + 8px);right:0;background:var(--base);border:1px solid var(--b2);border-radius:var(--r);padding:6px;min-width:210px;box-shadow:0 16px 48px rgba(0,0,0,.6);opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .15s,transform .15s;z-index:60}
.export-menu.open{opacity:1;transform:none;pointer-events:all}
.export-item{width:100%;text-align:left;padding:9px 11px;border-radius:8px;background:none;border:none;color:var(--t1);font-size:13px;font-weight:500;cursor:pointer;font-family:var(--fb);transition:background .15s}
.export-item:hover{background:var(--g2)}

/* ═══════════ MOBILE NAV ═══════════ */
.nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:38px;height:38px;padding:0 8px;border-radius:10px;background:var(--g2);border:1px solid var(--b1);cursor:pointer;flex-shrink:0;transition:border-color .15s}
.nav-burger:hover{border-color:var(--b2)}
.nav-burger span{display:block;height:2px;width:100%;background:var(--t1);border-radius:2px;transition:transform .25s,opacity .2s}
.nav-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-burger.open span:nth-child(2){opacity:0}
.nav-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.mnav-backdrop{position:fixed;inset:0;z-index:140;background:rgba(4,12,26,.7);backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .25s}
.mnav-backdrop.open{opacity:1;pointer-events:all}

.mnav{position:fixed;top:0;right:0;bottom:0;width:min(300px,84vw);z-index:150;background:var(--base);border-left:1px solid var(--b2);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);box-shadow:-20px 0 60px rgba(0,0,0,.5)}
.mnav.open{transform:none}
.mnav-head{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 16px;border-bottom:1px solid var(--b1)}
.mnav-close{width:32px;height:32px;border-radius:8px;background:var(--g2);border:1px solid var(--b1);color:var(--t2);font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .15s}
.mnav-close:hover{color:var(--t1)}
.mnav-links{flex:1;overflow-y:auto;padding:12px 12px}
.mnav-link{display:block;width:100%;text-align:left;padding:13px 14px;border-radius:12px;background:none;border:none;color:var(--t1);font-size:15px;font-weight:500;font-family:var(--fb);cursor:pointer;transition:background .15s}
.mnav-link:hover{background:var(--g2)}
.mnav-link.on{background:var(--g2);color:var(--t1)}
.mnav-footer{padding:16px 16px 24px;border-top:1px solid var(--b1);display:flex;flex-direction:column;gap:10px}
.mnav-footer button{width:100%;justify-content:center}
.mnav-user{display:flex;align-items:center;gap:10px;padding:4px 2px 10px}
.mnav-user-name{font-size:14px;font-weight:600;color:var(--t1)}
.mnav-user-email{font-size:11.5px;color:var(--t3)}

@media(max-width:900px){
  .nav-burger{display:flex}
  .btn-pro,.btn-signup,#navSignInBtn{display:none !important}
}

/* ═══════════ SAVED FILTER CHIP ═══════════ */
.fch-saved{border-color:rgba(245,158,11,.3) !important;color:#FCD34D !important}
.fch-saved:hover{border-color:rgba(245,158,11,.5) !important}
.fch-saved.on{background:rgba(245,158,11,.12) !important;border-color:rgba(245,158,11,.45) !important;color:#FCD34D !important}

/* ═══════════ RECONSTITUTION CALCULATOR ═══════════ */
.calc-wrap{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.calc-card{background:var(--g1);border:1px solid var(--b1);border-radius:var(--rx);padding:26px}
.calc-title{font-family:var(--fd);font-size:19px;font-weight:700;color:var(--t1);letter-spacing:-.3px;margin-bottom:6px}
.calc-sub{font-size:13px;color:var(--t2);line-height:1.6;margin-bottom:20px}
.calc-lbl{text-transform:none !important;letter-spacing:0 !important;color:var(--t2) !important;margin-top:14px;display:block}
.calc-lbl:first-of-type{margin-top:0}
.calc-result{display:flex;flex-direction:column;background:linear-gradient(160deg,rgba(59,130,246,.07),rgba(99,102,241,.04))}
.calc-out-label{font-size:11px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--t3);margin-bottom:10px}
.calc-out-big{font-family:var(--fd);font-size:64px;font-weight:700;line-height:1;letter-spacing:-2.5px;color:var(--t1)}
.calc-out-unit{font-size:13px;color:var(--t2);margin-top:6px;margin-bottom:22px}
.calc-rows{display:flex;flex-direction:column;gap:9px;padding-top:18px;border-top:1px solid var(--b1)}
.calc-row{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--t2)}
.calc-row strong{color:var(--t1);font-family:var(--fd);font-weight:600}
.calc-note{margin-top:18px;padding:12px 14px;border-radius:12px;background:var(--g2);border:1px solid var(--b1);font-size:12.5px;color:var(--t2);line-height:1.6}
.calc-note.calc-warn{background:rgba(245,158,11,.08);border-color:rgba(245,158,11,.28);color:#FCD34D}
.calc-tips{margin-top:16px;background:var(--g1);border:1px solid var(--b1);border-radius:var(--r);padding:18px 20px;font-size:12.5px;color:var(--t2);line-height:1.75}
.calc-tips-title{font-size:10px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--t3);margin-bottom:8px}
@media(max-width:820px){.calc-wrap{grid-template-columns:1fr}}

/* ═══════════ RECENTLY VIEWED ═══════════ */
.recent-sec{margin-bottom:18px}
.recent-label{font-size:10px;font-weight:600;letter-spacing:1.1px;text-transform:uppercase;color:var(--t3);margin-bottom:10px}
.recent-row{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}
.recent-row::-webkit-scrollbar{height:0}
.recent-chip{flex-shrink:0;background:var(--g1);border:1px solid var(--b1);border-radius:12px;padding:9px 14px;cursor:pointer;transition:all .15s;min-width:110px}
.recent-chip:hover{border-color:var(--b2);transform:translateY(-1px)}
.recent-name{font-family:var(--fd);font-size:13px;font-weight:600;color:var(--t1);white-space:nowrap}
.recent-cat{font-size:10.5px;margin-top:2px;white-space:nowrap}

/* ═══════════ COMPOUND COMPARISON ═══════════ */
.cmp-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-bottom:16px}
.cmp-name{font-family:var(--fd);font-size:17px;font-weight:700;color:var(--t1);text-align:center}
.cmp-vs{font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--t3)}
.cmp-table{border:1px solid var(--b1);border-radius:var(--r);overflow:hidden}
.cmp-row{display:grid;grid-template-columns:110px 1fr 1fr;border-bottom:1px solid var(--b1)}
.cmp-row:last-child{border-bottom:none}
.cmp-row:nth-child(odd){background:var(--g1)}
.cmp-lbl{padding:11px 13px;font-size:11px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;color:var(--t3);border-right:1px solid var(--b1);display:flex;align-items:center}
.cmp-val{padding:11px 13px;font-size:12.5px;color:var(--t1);line-height:1.5;border-right:1px solid var(--b1)}
.cmp-val:last-child{border-right:none}
.cmp-mechs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.cmp-mech{background:var(--g1);border:1px solid var(--b1);border-radius:var(--r);padding:14px 16px}
.cmp-mech-title{font-size:10px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--t3);margin-bottom:7px}
.cmp-mech p{font-size:12.5px;color:var(--t2);line-height:1.6}
.cmp-locked{text-align:center;padding:28px 20px;background:var(--g1);border:1px solid var(--b1);border-radius:var(--rx)}
@media(max-width:640px){.cmp-mechs{grid-template-columns:1fr}.cmp-row{grid-template-columns:88px 1fr 1fr}}

/* Chat list delete button */
.ai-li{position:relative;display:flex;align-items:center;gap:8px}
.ai-li-t{flex:1;min-width:0}
.ai-li-del{opacity:0;width:22px;height:22px;border-radius:6px;background:var(--g2);border:1px solid var(--b1);color:var(--t3);font-size:11px;cursor:pointer;flex-shrink:0;transition:all .15s;display:flex;align-items:center;justify-content:center}
.ai-li:hover .ai-li-del{opacity:1}
.ai-li-del:hover{color:#FB7185;border-color:rgba(244,63,94,.35)}

/* ═══════════ RESEARCH LINKS & CITATIONS ═══════════ */
.res-links{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.res-link{display:flex;align-items:center;gap:11px;padding:13px 14px;background:var(--g1);border:1px solid var(--b1);border-radius:var(--r);text-decoration:none;transition:all .16s}
.res-link:hover{border-color:var(--b2);transform:translateY(-1px);background:var(--g2)}
.res-link-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.res-link-body{flex:1;min-width:0}
.res-link-name{font-family:var(--fd);font-size:13px;font-weight:600;color:var(--t1)}
.res-link-desc{font-size:11px;color:var(--t3);margin-top:2px;line-height:1.4}
.res-link-arrow{color:var(--t3);font-size:13px;flex-shrink:0}
.res-link:hover .res-link-arrow{color:var(--t1)}
.cite-list{display:flex;flex-direction:column;gap:9px}
.cite{display:block;padding:14px 16px;background:var(--g1);border:1px solid var(--b1);border-radius:var(--r);text-decoration:none;transition:all .16s}
.cite:hover{border-color:var(--b2);background:var(--g2)}
.cite-title{font-size:13px;font-weight:600;color:var(--t1);line-height:1.45}
.cite-meta{font-size:11px;color:var(--t3);margin-top:5px;font-family:var(--fm)}
.cite-note{font-size:12px;color:var(--t2);margin-top:7px;line-height:1.55;padding-top:7px;border-top:1px solid var(--b1)}
@media(max-width:640px){.res-links{grid-template-columns:1fr}}

/* ═══════════ POPULAR FILTER ═══════════ */
.fch-popular{border-color:rgba(96,165,250,.35) !important;color:#93C5FD !important;font-weight:600}
.fch-popular:hover{border-color:rgba(96,165,250,.55) !important}
.fch-popular.on{background:rgba(96,165,250,.14) !important;border-color:rgba(96,165,250,.5) !important;color:#BFDBFE !important}
.pop-star{margin-left:auto;margin-right:6px;font-size:12px;color:#93C5FD;opacity:.75;flex-shrink:0}
.pc-top{align-items:center}

/* ═══════════ KNOWN-AS / BRAND NAMES ═══════════ */
.pc-known{color:#93C5FD;font-weight:500}
.m-known{color:#93C5FD;font-weight:500;font-size:12.5px}

/* ═══════════ LOCKED STACK STYLING ═══════════ */
.sk-p-blur{filter:blur(5px);opacity:.6;user-select:none;pointer-events:none}
.sk-count{font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:#93C5FD;margin-bottom:10px}
.sk-unlock{margin-top:16px;padding-top:14px;border-top:1px solid var(--b1);font-size:13px;font-weight:600;color:#93C5FD}
.sk-locked:hover .sk-unlock{color:#BFDBFE}

/* ═══════════ AI COMPLEXITY TOGGLE ═══════════ */
.cx-wrap{display:flex;align-items:center;gap:6px;margin-left:14px;flex-wrap:wrap}
.cx-label{font-size:11px;color:var(--t3);margin-right:2px;white-space:nowrap}
.cx-btn{padding:5px 12px;border-radius:50px;font-size:11.5px;font-weight:600;color:var(--t2);background:var(--g1);border:1px solid var(--b1);cursor:pointer;font-family:var(--fb);transition:all .15s;white-space:nowrap}
.cx-btn:hover{color:var(--t1);border-color:var(--b2)}
.cx-btn.on{background:#FFFFFF;color:#06101F;border-color:#FFFFFF}
@media(max-width:820px){
  .ai-main-h{flex-wrap:wrap;gap:8px}
  .cx-wrap{margin-left:0;width:100%;order:3}
  .cx-label{display:none}
  .cx-btn{flex:1;text-align:center}
}

/* ═══════════ ARTICLE READING VIEW ═══════════ */
.art-modal{width:min(760px,100%);max-width:760px}
.art-head{padding:48px 52px 28px;border-bottom:1px solid var(--b1)}
.art-meta-row{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.art-cat{font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase}
.art-meta{font-size:12px;color:var(--t3)}
.art-title{font-family:var(--fd);font-size:34px;font-weight:700;line-height:1.15;letter-spacing:-1px;color:var(--t1);margin-bottom:14px}
.art-sub{font-size:16px;color:var(--t2);line-height:1.6;font-weight:300}
.art-body{padding:34px 52px 20px;font-size:15.5px;line-height:1.78;color:var(--t2)}
.art-body h3{font-family:var(--fd);font-size:21px;font-weight:700;color:var(--t1);letter-spacing:-.4px;margin:38px 0 14px;padding-top:4px}
.art-body h3:first-child{margin-top:0}
.art-body h4{font-family:var(--fd);font-size:16px;font-weight:700;color:var(--t1);margin:26px 0 10px}
.art-body p{margin-bottom:17px}
.art-body strong{color:var(--t1);font-weight:600}
.art-body em{color:var(--t1);font-style:italic}
.art-body ul{padding-left:22px;margin-bottom:18px}
.art-body li{margin-bottom:9px;line-height:1.72}
.art-body li::marker{color:var(--t3)}
.art-step{padding-left:4px;margin-bottom:12px !important}
.art-foot{margin:24px 52px 48px;padding:18px 20px;background:var(--g1);border:1px solid var(--b1);border-radius:var(--r);font-size:12.5px;color:var(--t3);line-height:1.65;font-style:italic}
.rc{cursor:pointer}
@media(max-width:700px){
  .art-head{padding:40px 26px 24px}
  .art-body{padding:28px 26px 16px;font-size:15px}
  .art-title{font-size:27px}
  .art-foot{margin:20px 26px 36px}
}

/* ═══════════ RESEARCH HUB TABS + FEED ═══════════ */
.res-tabs{display:flex;gap:8px;margin:24px 0 20px}
.res-tab{padding:9px 20px;border-radius:50px;font-size:13.5px;font-weight:600;color:var(--t2);background:var(--g1);border:1px solid var(--b1);cursor:pointer;font-family:var(--fb);transition:all .15s}
.res-tab:hover{color:var(--t1);border-color:var(--b2)}
.res-tab.on{background:#FFFFFF;color:#06101F;border-color:#FFFFFF}
.res-panel{display:none}
.res-panel.on{display:block}
.feed-head{margin-bottom:18px;padding:14px 16px;background:var(--g1);border:1px solid var(--b1);border-radius:var(--r)}
.feed-loading,.feed-empty{padding:48px 24px;text-align:center;color:var(--t3);font-size:14px;line-height:1.7}
.feed-empty code{background:var(--g2);border:1px solid var(--b1);border-radius:5px;padding:2px 6px;font-family:var(--fm);font-size:12px;color:var(--t2)}
.feed-item{position:relative;background:var(--g1);border:1px solid var(--b1);border-radius:var(--rx);padding:22px 24px;margin-bottom:12px;transition:border-color .18s}
.feed-item:hover{border-color:var(--b2)}
.feed-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.feed-journal{font-size:11.5px;font-weight:600;color:#93C5FD;letter-spacing:.2px}
.feed-date{font-size:11.5px;color:var(--t3)}
.feed-added{font-size:11px;color:var(--t3);padding:2px 8px;border-radius:50px;background:var(--g2);border:1px solid var(--b1)}
.feed-title{font-family:var(--fd);font-size:16.5px;font-weight:700;color:var(--t1);line-height:1.4;letter-spacing:-.2px;margin-bottom:8px}
.feed-authors{font-size:12px;color:var(--t3);margin-bottom:10px;font-style:italic}
.feed-sum{font-size:13.5px;color:var(--t2);line-height:1.7;margin-bottom:14px}
.feed-ai-tag{display:inline-block;margin-left:8px;font-size:10px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;color:var(--t3);padding:2px 7px;border-radius:50px;background:var(--g2);border:1px solid var(--b1);vertical-align:middle}
.feed-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;border-top:1px solid var(--b1);flex-wrap:wrap}
.feed-link{font-size:12.5px;font-weight:600;color:#93C5FD;text-decoration:none}
.feed-link:hover{color:#BFDBFE;text-decoration:underline}
.feed-pmid{font-size:11px;color:var(--t3);font-family:var(--fm)}

/* ═══════════ LAUNCH PRICING ═══════════ */
.launch-banner{display:inline-flex;align-items:center;gap:9px;margin:0 auto 8px;padding:8px 18px;border-radius:50px;background:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.3);color:#6EE7B7;font-size:13px;font-weight:600;position:relative;left:50%;transform:translateX(-50%)}
.launch-dot{width:7px;height:7px;border-radius:50%;background:#34D399;animation:gp 2s ease-in-out infinite}
.price-cards-launch{margin-top:36px}
.price-c-soon{opacity:.72}
.soon-tag{display:inline-block;margin-left:8px;font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;padding:3px 9px;border-radius:50px;background:var(--g2);border:1px solid var(--b1);color:var(--t3);vertical-align:middle}
.price-a-soon{font-size:34px !important;color:var(--t3) !important}
.soon-note{margin-top:18px;padding-top:16px;border-top:1px solid var(--b1);font-size:12.5px;color:var(--t3);line-height:1.6;font-style:italic}
.launch-why{max-width:620px;margin:44px auto 0;text-align:center;font-size:14px;color:var(--t2);line-height:1.75}
.launch-why strong{color:var(--t1)}

/* ═══════════ PERSONALISED FEED ═══════════ */
.feed-filters{display:flex;gap:8px;margin-bottom:16px}
.feed-filter-btn{padding:8px 16px;border-radius:50px;font-size:12.5px;font-weight:600;color:var(--t2);background:var(--g1);border:1px solid var(--b1);cursor:pointer;font-family:var(--fb);transition:all .15s}
.feed-filter-btn:hover{color:var(--t1);border-color:var(--b2)}
.feed-filter-btn.on{background:rgba(96,165,250,.14);border-color:rgba(96,165,250,.45);color:#BFDBFE}
.feed-relevant{border-color:rgba(96,165,250,.32)}
.feed-tag-mine{display:inline-block;margin-bottom:10px;font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;padding:4px 10px;border-radius:50px;background:rgba(96,165,250,.14);border:1px solid rgba(96,165,250,.32);color:#BFDBFE}

/* ═══════════ FEED: COMPOUND CHIPS + AI ACTIONS ═══════════ */
.feed-compounds{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.feed-chip{padding:4px 11px;border-radius:50px;font-size:11.5px;font-weight:600;background:var(--g2);border:1px solid var(--b1);cursor:pointer;font-family:var(--fb);transition:all .15s}
.feed-chip:hover{border-color:var(--b2);background:var(--g3);transform:translateY(-1px)}
.feed-chip-mine{border-color:rgba(96,165,250,.4);background:rgba(96,165,250,.1)}
.feed-actions{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:14px}
.feed-ai-btn{padding:7px 13px;border-radius:9px;font-size:12px;font-weight:600;color:var(--t2);background:var(--g1);border:1px solid var(--b1);cursor:pointer;font-family:var(--fb);transition:all .15s}
.feed-ai-btn:hover{color:var(--t1);border-color:rgba(96,165,250,.4);background:rgba(96,165,250,.08)}
@media(max-width:640px){.feed-ai-btn{flex:1;min-width:calc(50% - 4px);text-align:center}}

/* ═══════════ FEED: SOURCES + EVIDENCE WARNINGS ═══════════ */
.feed-src-filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}
.feed-src-btn{padding:6px 13px;border-radius:8px;font-size:11.5px;font-weight:600;color:var(--t3);background:transparent;border:1px solid var(--b1);cursor:pointer;font-family:var(--fb);transition:all .15s}
.feed-src-btn:hover{color:var(--t2);border-color:var(--b2)}
.feed-src-btn.on{color:var(--t1);background:var(--g2);border-color:var(--b2)}
.feed-src{font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;padding:3px 9px;border-radius:50px;border:1px solid;background:rgba(255,255,255,.03)}
.feed-trial-meta{font-size:11.5px;color:var(--t3);margin-bottom:8px;font-family:var(--fm)}
.feed-warn{font-size:11.5px;line-height:1.5;padding:8px 12px;border-radius:8px;margin-bottom:12px;background:rgba(245,158,11,.09);border:1px solid rgba(245,158,11,.25);color:#FCD34D}
.feed-warn-trial{background:rgba(52,211,153,.08);border-color:rgba(52,211,153,.22);color:#6EE7B7}

/* ═══════════ FEED SEARCH + COMPOUND FILTER ═══════════ */
.feed-search-row{display:flex;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.feed-search-wrap{position:relative;flex:1;min-width:220px}
.feed-search-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--t3);font-size:15px;pointer-events:none}
.feed-search{width:100%;padding:11px 36px 11px 34px;border-radius:11px;background:var(--g1);border:1px solid var(--b1);color:var(--t1);font-size:13.5px;font-family:var(--fb);transition:border-color .15s}
.feed-search:focus{outline:none;border-color:rgba(96,165,250,.45);background:var(--g2)}
.feed-search::placeholder{color:var(--t3)}
.feed-search-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:6px;background:var(--g2);border:1px solid var(--b1);color:var(--t3);font-size:11px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.feed-search-clear:hover{color:var(--t1)}
.feed-compound-select{padding:11px 14px;border-radius:11px;background:var(--g1);border:1px solid var(--b1);color:var(--t1);font-size:13.5px;font-family:var(--fb);cursor:pointer;min-width:190px;transition:border-color .15s}
.feed-compound-select:focus{outline:none;border-color:rgba(96,165,250,.45)}
.feed-active-filters{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:12px}
.faf-label{font-size:11px;color:var(--t3);text-transform:uppercase;letter-spacing:.6px;font-weight:600}
.faf-chip{padding:5px 11px;border-radius:50px;font-size:11.5px;font-weight:600;color:#BFDBFE;background:rgba(96,165,250,.13);border:1px solid rgba(96,165,250,.35);cursor:pointer;font-family:var(--fb);transition:all .15s}
.faf-chip:hover{background:rgba(96,165,250,.2)}
.faf-clear{padding:5px 10px;border-radius:50px;font-size:11.5px;font-weight:600;color:var(--t3);background:none;border:1px solid var(--b1);cursor:pointer;font-family:var(--fb)}
.faf-clear:hover{color:var(--t1);border-color:var(--b2)}
.feed-count-row{font-size:11.5px;color:var(--t3);margin-bottom:12px}
.feed-chip-group{display:inline-flex;align-items:stretch}
.feed-chip-group .feed-chip{border-radius:50px 0 0 50px;border-right:none}
.feed-chip-open{padding:4px 9px;border-radius:0 50px 50px 0;font-size:10px;color:var(--t3);background:var(--g2);border:1px solid var(--b1);cursor:pointer;font-family:var(--fb);transition:all .15s}
.feed-chip-open:hover{color:var(--t1);background:var(--g3)}
@media(max-width:640px){.feed-compound-select{width:100%}}

/* ═══════════ STACK FINDER QUIZ ═══════════ */
.quiz-intro-note{background:var(--g1);border:1px solid var(--b1);border-radius:var(--r);padding:16px 18px;font-size:13px;color:var(--t2);line-height:1.65;margin-bottom:24px;max-width:620px}
.quiz-intro-note strong{color:var(--t1)}
.quiz-progress-wrap{margin-bottom:28px;max-width:640px}
.quiz-progress-bar{height:4px;border-radius:4px;background:var(--g2);overflow:hidden;margin-bottom:10px}
.quiz-progress-fill{height:100%;background:linear-gradient(90deg,#3B82F6,#6366F1);border-radius:4px;transition:width .35s cubic-bezier(.4,0,.2,1)}
.quiz-step-label{font-size:11px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--t3)}
.quiz-card{max-width:640px;margin-bottom:20px}
.quiz-q{font-family:var(--fd);font-size:26px;font-weight:700;color:var(--t1);letter-spacing:-.6px;line-height:1.25;margin-bottom:8px}
.quiz-sub{font-size:13.5px;color:var(--t2);line-height:1.6;margin-bottom:22px}
.quiz-options{display:flex;flex-direction:column;gap:9px}
.quiz-opt{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;text-align:left;padding:15px 18px;border-radius:var(--r);background:var(--g1);border:1px solid var(--b1);cursor:pointer;font-family:var(--fb);transition:all .15s}
.quiz-opt:hover{border-color:var(--b2);background:var(--g2);transform:translateY(-1px)}
.quiz-opt.on{border-color:rgba(96,165,250,.5);background:rgba(96,165,250,.09)}
.quiz-opt-label{font-size:15px;font-weight:600;color:var(--t1)}
.quiz-opt-desc{font-size:12.5px;color:var(--t3);line-height:1.5}
.quiz-nav{display:flex;align-items:center;gap:16px;max-width:640px}
.quiz-skip{background:none;border:none;color:var(--t3);font-size:12.5px;cursor:pointer;font-family:var(--fb);text-decoration:underline}
.quiz-skip:hover{color:var(--t2)}
.quiz-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;text-align:center}
.quiz-spinner{width:36px;height:36px;border:3px solid var(--b1);border-top-color:#3B82F6;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:20px}
@keyframes spin{to{transform:rotate(360deg)}}
.quiz-loading-title{font-family:var(--fd);font-size:18px;font-weight:600;color:var(--t1);margin-bottom:6px}
.quiz-loading-sub{font-size:13px;color:var(--t3)}
.quiz-answers-recap{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:24px}
.quiz-recap-label{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--t3);font-weight:600}
.quiz-recap-chip{padding:4px 11px;border-radius:50px;font-size:11.5px;font-weight:500;color:var(--t2);background:var(--g1);border:1px solid var(--b1)}
.quiz-picks{display:flex;flex-direction:column;gap:10px;margin-bottom:26px}
.quiz-pick{display:flex;align-items:center;gap:16px;padding:18px 20px;background:var(--g1);border:1px solid var(--b1);border-radius:var(--rx);cursor:pointer;transition:all .16s}
.quiz-pick:hover{border-color:var(--b2);transform:translateY(-1px)}
.quiz-pick-rank{width:28px;height:28px;border-radius:50%;background:var(--g2);border:1px solid var(--b1);display:flex;align-items:center;justify-content:center;font-family:var(--fd);font-size:13px;font-weight:700;color:var(--t2);flex-shrink:0}
.quiz-pick:first-child .quiz-pick-rank{background:#FFFFFF;color:#06101F;border-color:#FFFFFF}
.quiz-pick-body{flex:1;min-width:0}
.quiz-pick-name{font-family:var(--fd);font-size:16px;font-weight:700;color:var(--t1);margin-bottom:4px}
.quiz-pick-known{margin-left:8px;font-size:12px;font-weight:500;color:#93C5FD;font-family:var(--fb)}
.quiz-pick-meta{font-size:11.5px;color:var(--t3);margin-bottom:6px}
.quiz-pick-ov{font-size:12.5px;color:var(--t2);line-height:1.55}
.quiz-pick-arrow{color:var(--t3);font-size:16px;flex-shrink:0}
.quiz-pick:hover .quiz-pick-arrow{color:var(--t1)}
.quiz-ai-block{background:linear-gradient(160deg,rgba(59,130,246,.07),rgba(99,102,241,.04));border:1px solid rgba(99,102,241,.2);border-radius:var(--rx);padding:24px 26px;margin-bottom:24px}
.quiz-ai-head{font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:#93C5FD;margin-bottom:14px}
.quiz-ai-text{font-size:14px;color:var(--t2);line-height:1.75}
.quiz-ai-text h3{font-family:var(--fd);font-size:16px;color:var(--t1);margin:18px 0 8px}
.quiz-ai-text strong{color:var(--t1)}
.quiz-ai-text ul{padding-left:20px;margin-bottom:12px}
.quiz-ai-text li{margin-bottom:6px}
.quiz-result-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}
.quiz-disclaimer{background:var(--g1);border:1px solid var(--b1);border-radius:var(--r);padding:16px 18px;font-size:12.5px;color:var(--t3);line-height:1.65;font-style:italic}
@media(max-width:640px){.quiz-q{font-size:22px}.quiz-pick{padding:15px 16px;gap:12px}}

/* ═══════════ NOTIFICATIONS ═══════════ */
.notif-wrap{position:relative}
.notif-btn{position:relative;width:36px;height:36px;border-radius:10px;background:var(--g1);border:1px solid var(--b1);color:var(--t2);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}
.notif-btn:hover{color:var(--t1);border-color:var(--b2)}
.notif-btn.has-new{color:#93C5FD;border-color:rgba(96,165,250,.4)}
.notif-badge{position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;padding:0 5px;border-radius:50px;background:#3B82F6;color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid var(--base)}
.notif-panel{position:absolute;top:calc(100% + 10px);right:0;width:min(370px,88vw);max-height:460px;overflow-y:auto;background:var(--base);border:1px solid var(--b2);border-radius:var(--rx);box-shadow:0 20px 60px rgba(0,0,0,.6);opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .16s,transform .16s;z-index:200}
.notif-panel.open{opacity:1;transform:none;pointer-events:all}
.notif-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--b1);position:sticky;top:0;background:var(--base);z-index:2}
.notif-title{font-size:13px;font-weight:600;color:var(--t1)}
.notif-close{width:24px;height:24px;border-radius:6px;background:var(--g2);border:1px solid var(--b1);color:var(--t3);font-size:11px;cursor:pointer}
.notif-close:hover{color:var(--t1)}
.notif-body{padding:8px}
.notif-item{padding:12px 14px;border-radius:10px;cursor:pointer;transition:background .15s;margin-bottom:2px}
.notif-item:hover{background:var(--g1)}
.notif-item-top{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.notif-src{font-size:9.5px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}
.notif-time{font-size:10.5px;color:var(--t3)}
.notif-item-title{font-size:13px;font-weight:500;color:var(--t1);line-height:1.45;margin-bottom:5px}
.notif-item-compounds{font-size:11px;color:#93C5FD}
.notif-empty{padding:28px 20px;text-align:center;color:var(--t3);font-size:13px;line-height:1.65}
.notif-empty strong{color:var(--t1);display:block;margin-bottom:6px}
.notif-empty p{margin-bottom:14px}
.notif-mark-all{width:100%;padding:10px;margin-top:6px;border-radius:9px;background:var(--g1);border:1px solid var(--b1);color:var(--t2);font-size:12px;font-weight:600;cursor:pointer;font-family:var(--fb)}
.notif-mark-all:hover{color:var(--t1);border-color:var(--b2)}

/* ═══════════ QUIZ UPSELL + STACK ═══════════ */
.quiz-upsell{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:22px 24px;margin-bottom:24px;border-radius:var(--rx);background:linear-gradient(135deg,rgba(59,130,246,.11),rgba(99,102,241,.07));border:1px solid rgba(99,102,241,.28)}
.quiz-upsell-body{flex:1;min-width:240px}
.quiz-upsell-title{font-family:var(--fd);font-size:17px;font-weight:700;color:var(--t1);margin-bottom:5px}
.quiz-upsell-sub{font-size:13px;color:var(--t2);line-height:1.6}
.quiz-stack-loading{display:flex;align-items:center;font-size:13.5px;color:var(--t2)}
.quiz-stack-block{border-color:rgba(96,165,250,.3)}
.quiz-stack-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px;padding-top:18px;border-top:1px solid var(--b1)}

/* ═══════════ COMMUNITY PAGE ═══════════ */
.comm-page{padding:52px 64px 80px;max-width:1100px;margin:0 auto}
.comm-tabs{display:flex;gap:8px;margin-bottom:26px;flex-wrap:wrap}
.comm-tab{padding:9px 18px;border-radius:50px;font-size:13.5px;font-weight:600;color:var(--t2);background:var(--g1);border:1px solid var(--b1);cursor:pointer;font-family:var(--fb);transition:all .15s}
.comm-tab:hover{color:var(--t1);border-color:var(--b2)}
.comm-tab.on{background:#FFFFFF;color:#06101F;border-color:#FFFFFF}
.comm-panel{display:none}
.comm-panel.on{display:block}
.comm-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;align-items:start}
.comm-form-card{background:var(--g1);border:1px solid var(--b1);border-radius:var(--rx);padding:26px 28px}
.comm-type-row{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:22px}
.comm-type{padding:8px 14px;border-radius:50px;font-size:12.5px;font-weight:600;color:var(--t2);background:var(--g2);border:1px solid var(--b1);cursor:pointer;font-family:var(--fb);transition:all .15s}
.comm-type:hover{color:var(--t1);border-color:var(--b2)}
.comm-type.on{background:rgba(96,165,250,.13);border-color:rgba(96,165,250,.45);color:#BFDBFE}
.comm-lbl{text-transform:none !important;letter-spacing:0 !important;color:var(--t2) !important;margin-top:14px;display:block}
.comm-textarea{width:100%;margin-top:6px;padding:13px 15px;border-radius:11px;background:var(--g2);border:1px solid var(--b1);color:var(--t1);font-size:14px;font-family:var(--fb);line-height:1.6;resize:vertical;transition:border-color .15s}
.comm-textarea:focus{outline:none;border-color:rgba(96,165,250,.45)}
.comm-textarea::placeholder{color:var(--t3)}
.comm-count{text-align:right;font-size:11px;color:var(--t3);margin-top:5px}
.comm-note{margin-top:14px;font-size:12px;color:var(--t3);line-height:1.6;font-style:italic}
.comm-side{display:flex;flex-direction:column;gap:14px}
.comm-side-card{background:var(--g1);border:1px solid var(--b1);border-radius:var(--rx);padding:20px 22px}
.comm-side-title{font-size:11px;font-weight:600;letter-spacing:.9px;text-transform:uppercase;color:var(--t3);margin-bottom:12px}
.comm-list{padding-left:18px;margin:0}
.comm-list li{font-size:13px;color:var(--t2);line-height:1.65;margin-bottom:9px}
.comm-list strong{color:var(--t1)}
.comm-side-text{font-size:13px;color:var(--t2);line-height:1.65}

/* FAQ accordion */
.comm-faq-list{max-width:760px}
.comm-faq-item{border-bottom:1px solid var(--b1)}
.comm-faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;padding:18px 4px;background:none;border:none;color:var(--t1);font-size:15px;font-weight:600;font-family:var(--fd);cursor:pointer;transition:color .15s}
.comm-faq-q:hover{color:#93C5FD}
.comm-faq-chev{font-size:18px;color:var(--t3);flex-shrink:0;transition:transform .2s}
.comm-faq-item.open .comm-faq-chev{transform:rotate(45deg)}
.comm-faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.comm-faq-item.open .comm-faq-a{max-height:420px}
.comm-faq-a p{font-size:14px;color:var(--t2);line-height:1.75;padding:0 4px 20px}

/* Roadmap */
.roadmap-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.roadmap-col{background:var(--g1);border:1px solid var(--b1);border-radius:var(--rx);padding:22px}
.roadmap-head{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;margin-bottom:16px}
.roadmap-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}
.roadmap-items{display:flex;flex-direction:column;gap:9px}
.roadmap-item{font-size:13px;color:var(--t2);line-height:1.55;padding-left:14px;position:relative}
.roadmap-item:before{content:'';position:absolute;left:0;top:8px;width:4px;height:4px;border-radius:50%;background:var(--b3)}

@media(max-width:900px){
  .comm-page{padding:44px 24px 60px}
  .comm-grid{grid-template-columns:1fr}
  .roadmap-cols{grid-template-columns:1fr}
}

/* ═══════════ QUIZ READING-LEVEL CONTROLS ═══════════ */
.quiz-ai-head-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.quiz-ai-head-row .quiz-ai-head{margin-bottom:0}
.quiz-cx{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.quiz-cx-label{font-size:10.5px;color:var(--t3);margin-right:2px;white-space:nowrap}
.quiz-cx-btn{padding:4px 11px;border-radius:50px;font-size:11px;font-weight:600;color:var(--t2);background:var(--g1);border:1px solid var(--b1);cursor:pointer;font-family:var(--fb);transition:all .15s;white-space:nowrap}
.quiz-cx-btn:hover{color:var(--t1);border-color:var(--b2)}
.quiz-cx-btn.on{background:#FFFFFF;color:#06101F;border-color:#FFFFFF}
@media(max-width:640px){
  .quiz-ai-head-row{flex-direction:column;align-items:flex-start;gap:10px}
  .quiz-cx-label{display:none}
  .quiz-cx{width:100%}
  .quiz-cx-btn{flex:1;text-align:center}
}

/* ═══════════ HOMEPAGE RESEARCH PREVIEW ═══════════ */
.home-feed-sec{padding:0 64px 60px;max-width:1400px;margin:0 auto}
.home-feed-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:22px;flex-wrap:wrap}
.home-feed-head .btn-hero{padding:10px 20px;font-size:14px;flex-shrink:0}
.home-feed-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.home-feed-card{background:var(--g1);border:1px solid var(--b1);border-radius:var(--rx);padding:20px 22px;cursor:pointer;transition:all .18s;display:flex;flex-direction:column}
.home-feed-card:hover{border-color:var(--b2);transform:translateY(-2px)}
.home-feed-meta{display:flex;align-items:center;gap:9px;margin-bottom:11px;flex-wrap:wrap}
.home-feed-title{font-family:var(--fd);font-size:15px;font-weight:700;color:var(--t1);line-height:1.4;letter-spacing:-.2px;margin-bottom:9px}
.home-feed-sum{font-size:12.5px;color:var(--t2);line-height:1.6;margin-bottom:12px;flex:1}
.home-feed-tags{display:flex;flex-wrap:wrap;gap:6px;padding-top:12px;border-top:1px solid var(--b1)}
.home-feed-tag{font-size:11px;font-weight:600;padding:3px 9px;border-radius:50px;background:var(--g2);border:1px solid var(--b1)}
@media(max-width:1100px){.home-feed-sec{padding-left:32px;padding-right:32px}.home-feed-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.home-feed-grid{grid-template-columns:1fr}.home-feed-sec{padding-left:24px;padding-right:24px}}

/* ═══════════ UNSUBSCRIBE BANNER ═══════════ */
.unsub-banner{position:relative;z-index:300;background:rgba(16,185,129,.12);border-bottom:1px solid rgba(16,185,129,.3);color:#6EE7B7;font-size:13.5px;line-height:1.6;padding:14px 56px 14px 24px;text-align:center}
.unsub-banner strong{color:#A7F3D0}
.unsub-x{position:absolute;right:16px;top:50%;transform:translateY(-50%);width:26px;height:26px;border-radius:7px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);color:inherit;font-size:12px;cursor:pointer}
.unsub-x:hover{background:rgba(255,255,255,.15)}

/* ═══════════ EMAIL PREFERENCES ═══════════ */
.ep-head{padding:36px 36px 22px;border-bottom:1px solid var(--b1)}
.ep-title{font-family:var(--fd);font-size:22px;font-weight:700;color:var(--t1);letter-spacing:-.4px;margin-bottom:6px}
.ep-sub{font-size:13.5px;color:var(--t2);line-height:1.6}
.ep-body{padding:24px 36px 36px}
.ep-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--b1)}
.ep-row-text{flex:1}
.ep-row-title{font-size:14.5px;font-weight:600;color:var(--t1);margin-bottom:4px}
.ep-row-desc{font-size:12.5px;color:var(--t2);line-height:1.6}
.ep-toggle{width:44px;height:25px;border-radius:50px;background:var(--g2);border:1px solid var(--b1);cursor:pointer;flex-shrink:0;position:relative;transition:all .2s;padding:0}
.ep-toggle.on{background:#34D399;border-color:#34D399}
.ep-knob{position:absolute;top:2px;left:2px;width:19px;height:19px;border-radius:50%;background:var(--t2);transition:all .2s}
.ep-toggle.on .ep-knob{left:21px;background:#06101F}
.ep-tracked{padding:20px 0}
.ep-tracked-label{font-size:10.5px;font-weight:600;letter-spacing:.9px;text-transform:uppercase;color:var(--t3);margin-bottom:12px}
.ep-chips{display:flex;flex-wrap:wrap;gap:6px}
.ep-chip{padding:4px 11px;border-radius:50px;font-size:12px;color:#BFDBFE;background:rgba(96,165,250,.12);border:1px solid rgba(96,165,250,.3)}
.ep-empty{font-size:13px;color:var(--t2);line-height:1.65}
.ep-note{font-size:12px;color:var(--t3);line-height:1.6;font-style:italic;padding-top:16px;border-top:1px solid var(--b1)}
.ep-signin{text-align:center;padding:30px 20px}
.ep-signin p{font-size:14px;color:var(--t2);margin-bottom:18px}
@media(max-width:600px){.ep-head{padding:30px 22px 20px}.ep-body{padding:20px 22px 30px}}

/* Deep-link loading state */
.deeplink-loading{display:flex;align-items:center;justify-content:center;padding:40px 20px;font-size:14px;color:var(--t2)}

/* Share link button in the compound modal */
.m-head-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}
.m-share{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;background:var(--g1);border:1px solid var(--b1);color:var(--t2);font-size:12px;font-weight:600;cursor:pointer;font-family:var(--fb);transition:all .15s;flex-shrink:0;margin-right:34px}
.m-share:hover{color:var(--t1);border-color:var(--b2)}
.m-share svg{flex-shrink:0}

/* ═══════════ SELECT DROPDOWN OPTIONS ═══════════ */
/* Native <option> elements render against the OS background, not the page,
   so light text on a dark control becomes invisible once the list opens.
   Setting both explicitly on the option is the only reliable fix. */
select option{
  background-color:#0B1627;
  color:#E8EFFA;
  padding:8px 12px;
}
select option:checked,
select option:hover{
  background-color:#1B2C4A;
  color:#FFFFFF;
}
/* Firefox honours these on the select itself for the open list */
select{color-scheme:dark}
