:root{--bg:#09070d;--panel:#120d18;--panel2:#181020;--text:#f8f3fb;--muted:#a99caf;--pink:#ff5ca8;--pink2:#ff9dcc;--purple:#8b5cf6;--line:#2a1d34;--good:#71e5ae}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}.brand{font-weight:800;letter-spacing:.22em;font-size:15px}.nav,.chatnav{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 max(22px,5vw);border-bottom:1px solid rgba(255,255,255,.06);z-index:10}.nav{position:absolute;width:100%}.nav nav{display:flex;gap:28px;color:var(--muted);font-size:14px}.btn{border:0;border-radius:12px;padding:14px 20px;font:inherit;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.small{padding:9px 14px;background:#21162a;border:1px solid #392448}.primary{background:linear-gradient(135deg,var(--pink),#c64aff);color:#fff;box-shadow:0 12px 35px rgba(255,92,168,.18)}.ghost{border:1px solid var(--line);background:#17101f}.hero{min-height:760px;padding:150px max(24px,8vw) 80px;display:grid;grid-template-columns:1.1fr .9fr;gap:7vw;align-items:center;background:radial-gradient(circle at 72% 25%,rgba(255,92,168,.16),transparent 25%),radial-gradient(circle at 30% 10%,rgba(139,92,246,.12),transparent 26%)}.eyebrow{font-size:11px;letter-spacing:.17em;font-weight:800;color:var(--pink2)}.hero h1,.section h2,.cta h2{font-family:Georgia,serif;letter-spacing:-.035em}.hero h1{font-size:clamp(54px,7vw,96px);line-height:.94;margin:14px 0}.hero h1 span{color:var(--pink2)}.herocopy>p{max-width:620px;color:#c7bacb;font-size:19px;line-height:1.7}.heroactions{display:flex;gap:15px;align-items:center;margin-top:28px}.heroactions small{color:#827486}.phone{max-width:420px;width:100%;justify-self:center;background:#100b16;border:1px solid #34233e;border-radius:34px;padding:16px;box-shadow:0 30px 90px rgba(0,0,0,.45),0 0 60px rgba(255,92,168,.08)}.phonehead{display:flex;align-items:center;gap:10px;padding:6px 6px 15px}.phonehead>div:last-child{display:flex;flex-direction:column}.phonehead span{color:var(--good);font-size:10px}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-weight:800;background:linear-gradient(135deg,#ff8abf,#8b5cf6)}.preview{background:#0d0912;border-radius:24px;padding:20px;min-height:410px}.bubble{max-width:84%;padding:12px 14px;border-radius:17px;margin:13px 0;line-height:1.5;font-size:14px;background:#1c1324}.bubble.mine{margin-left:auto;background:#773055}.unlock{margin:26px auto;padding:11px;text-align:center;font-size:12px;color:#d9c5d4;border:1px dashed #6b3a5c;border-radius:12px;background:#1a0f19}.composer{display:flex;justify-content:space-between;color:#7e727f;background:#1b1322;border-radius:18px;padding:14px 16px;margin-top:10px}.section{padding:100px max(24px,7vw)}.section>h2,.center h2{font-size:clamp(38px,5vw,64px);line-height:1.04;margin:14px 0 45px}.center{text-align:center}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#110c17;border:1px solid #281b31;border-radius:24px;overflow:hidden}.portrait{height:310px;position:relative;display:grid;place-items:center}.p1{background:linear-gradient(160deg,#3a1530,#1c1026)}.p2{background:linear-gradient(160deg,#4b321f,#281727)}.p3{background:linear-gradient(160deg,#16333d,#18111f)}.portrait b{font-family:Georgia,serif;font-size:110px;color:rgba(255,255,255,.15)}.portrait span{position:absolute;bottom:15px;left:15px;background:rgba(10,7,16,.72);padding:7px 10px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.12em}.info{padding:22px}.info h3{font-size:22px;margin:0}.info p{color:var(--muted);line-height:1.6;font-size:14px;min-height:68px}.chips{display:flex;gap:7px}.chips i{font-style:normal;padding:6px 9px;border-radius:999px;background:#1d1425;color:#b7a8bd;font-size:11px}.cardbtn{width:100%;background:#211629;border:1px solid #352240;margin-top:16px}.dark{background:#0d0912}.features{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.features>div{padding:28px;border:1px solid var(--line);border-radius:18px;background:#110c17}.features b{font-size:11px;color:var(--pink)}.features p{color:var(--muted);line-height:1.7;font-size:14px}.prices{display:grid;grid-template-columns:repeat(2,minmax(280px,390px));justify-content:center;gap:18px}.pricecard{position:relative;background:#110c17;border:1px solid var(--line);border-radius:24px;padding:30px}.pricecard.featured{border-color:#823f6c;box-shadow:0 20px 70px rgba(255,92,168,.08)}.pricecard em{position:absolute;right:18px;top:18px;font-size:9px;font-style:normal;color:#ffadd3}.pricecard label{display:block;font-size:11px;letter-spacing:.15em;color:var(--muted);font-weight:800}.pricecard>strong{display:block;font-size:42px;margin:12px 0}.pricecard>strong small{font-size:13px;color:var(--muted)}.pricecard ul{padding:0;list-style:none;color:#c9becd;line-height:2}.pricecard li:before{content:'✓';color:var(--pink2);margin-right:8px}.pricecard .btn{width:100%}.cta{text-align:center;padding:110px 20px;background:radial-gradient(circle at 50% 50%,rgba(255,92,168,.16),transparent 35%)}.cta h2{font-size:54px;margin:0}.cta p{color:var(--muted);margin-bottom:25px}footer{padding:40px max(24px,7vw);border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:12px;color:var(--muted);font-size:12px}footer>b{letter-spacing:.2em;color:white}footer p{grid-column:1/-1}.legal{max-width:820px;margin:auto;padding:80px 24px}.legal h1{font-size:50px}.legal p{color:#b8aabb;line-height:1.9}
.chatpage{height:100vh;overflow:hidden}.chatnav{background:#0b0810}.chem{display:flex;align-items:center;gap:9px}.chem span{font-size:9px;color:var(--muted);font-weight:800;letter-spacing:.12em}.chem>div{width:110px;height:6px;background:#241929;border-radius:9px;overflow:hidden}.chem i{display:block;height:100%;width:12%;background:linear-gradient(90deg,var(--pink),var(--purple));transition:.35s}.chem b{font-size:11px;color:#ff9fc9}.chatshell{height:calc(100vh - 72px);display:grid;grid-template-columns:300px 1fr;max-width:1280px;margin:auto;border-left:1px solid var(--line);border-right:1px solid var(--line)}aside{padding:32px;border-right:1px solid var(--line);background:#0e0a13}.bigavatar{width:120px;height:120px;border-radius:34px;background:linear-gradient(135deg,#ff7bb8,#6e4ce6);display:grid;place-items:center;font-family:Georgia,serif;font-size:54px;margin:auto}aside h1{text-align:center;margin:18px 0 3px}.status{text-align:center;color:var(--good);font-size:11px}aside>p{color:var(--muted);font-size:13px;line-height:1.6;margin:25px 0}.rel,.locked{display:flex;flex-direction:column;gap:7px;background:#16101d;border:1px solid #2b1e34;border-radius:16px;padding:16px;margin-top:16px}.rel small,.rel span,.locked span{font-size:10px;color:var(--muted)}.locked{text-align:center}.conversation{display:flex;flex-direction:column;min-width:0}.convhead{height:68px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 22px}.person{display:flex;align-items:center;gap:9px}.person>div:last-child{display:flex;flex-direction:column}.person span{color:var(--good);font-size:10px}.remaining{font-size:11px;color:var(--muted)}.remaining b{color:#ff9fc9}.messages{flex:1;overflow:auto;padding:28px max(22px,8vw)}.message{display:flex;margin:18px 0}.message.user{justify-content:flex-end}.message .bubble{max-width:min(590px,82%);margin:0}.message.assistant .bubble{background:#17101e}.message.user .bubble{background:linear-gradient(135deg,#6e3154,#61357f)}.typing{display:none;gap:5px;padding:0 max(22px,8vw) 10px}.typing.show{display:flex}.typing i{width:6px;height:6px;border-radius:50%;background:#8d7d91;animation:dot 1s infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}@keyframes dot{50%{transform:translateY(-4px);opacity:.5}}.error{display:none;margin:0 max(22px,8vw) 8px;background:#32131e;border:1px solid #6e263b;color:#ffc7d4;padding:10px;border-radius:10px;font-size:12px}.chatcomposer{margin:10px max(18px,7vw) 8px;padding:8px 8px 8px 15px;border:1px solid #33233d;background:#15101b;border-radius:18px;display:flex;align-items:flex-end;gap:10px}.chatcomposer textarea{background:transparent;border:0;outline:0;color:white;resize:none;width:100%;font:inherit;line-height:1.5;max-height:120px;padding:9px}.chatcomposer button{width:40px;height:40px;border:0;border-radius:12px;background:var(--pink);color:#fff;font-size:17px;cursor:pointer}.footnote{text-align:center;color:#625767;font-size:9px;padding-bottom:10px}.modal{position:fixed;inset:0;background:rgba(0,0,0,.72);display:none;place-items:center;z-index:30;padding:20px}.modal.show{display:grid}.modalcard{position:relative;max-width:430px;text-align:center;background:#15101b;border:1px solid #4a2a44;border-radius:24px;padding:34px}.modalcard h2{font-size:34px}.modalcard p{color:var(--muted);line-height:1.6}.modalcard>strong{display:block;font-size:38px;margin:20px}.modalcard>strong small{font-size:13px;color:var(--muted)}.modalcard .btn{width:100%}.modalcard>small{display:block;color:#6d6070;margin-top:12px}.x{position:absolute;right:14px;top:12px;background:transparent;border:0;color:#aaa;font-size:25px;cursor:pointer}
@media(max-width:900px){.nav nav{display:none}.hero{grid-template-columns:1fr;padding-top:120px}.phone{margin-top:20px}.cards{grid-template-columns:1fr}.features{grid-template-columns:1fr 1fr}.chatshell{grid-template-columns:1fr}aside{display:none}}@media(max-width:600px){.hero h1{font-size:54px}.heroactions{flex-direction:column;align-items:flex-start}.features,.prices{grid-template-columns:1fr}.section{padding:72px 20px}.cta h2{font-size:40px}.chatnav .chem{display:none}.messages{padding-left:14px;padding-right:14px}.chatcomposer{margin-left:12px;margin-right:12px}}


/* V4 chat viewport + scrolling fix */
html, body.chatpage {
  height: 100%;
}
body.chatpage {
  height: 100vh;
  height: 100dvh;
  overflow: hidden;
}
.chatpage .chatnav {
  height: 72px;
  flex: 0 0 72px;
}
.chatpage .chatshell {
  height: calc(100vh - 72px);
  height: calc(100dvh - 72px);
  min-height: 0;
  overflow: hidden;
}
.chatpage .conversation {
  height: 100%;
  min-height: 0;
  overflow: hidden;
}
.chatpage .convhead {
  flex: 0 0 68px;
}
.chatpage .messages {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto !important;
  overflow-x: hidden;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
}
.chatpage .typing,
.chatpage .error,
.chatpage .chatcomposer,
.chatpage .footnote {
  flex-shrink: 0;
}
.chatpage .chatcomposer {
  position: relative;
  z-index: 5;
  background: #15101b;
}
@media (max-height: 680px) {
  .chatpage .chatnav {
    height: 58px;
    flex-basis: 58px;
  }
  .chatpage .chatshell {
    height: calc(100vh - 58px);
    height: calc(100dvh - 58px);
  }
  .chatpage .convhead {
    height: 54px;
    flex-basis: 54px;
  }
  .chatpage .messages {
    padding-top: 14px;
    padding-bottom: 14px;
  }
  .chatpage .footnote {
    display: none;
  }
}
