*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --v1:#6d28d9; --v2:#7c3aed; --v3:#8b5cf6; --v4:#a78bfa; --v5:#c4b5fd;
  --c1:#0e7490; --c2:#0891b2; --c3:#06b6d4; --c4:#22d3ee; --c5:#67e8f9;
  --r1:#be123c; --r2:#e11d48; --r3:#f43f5e; --r4:#fb7185;
  --a1:#b45309; --a2:#d97706; --a3:#f59e0b; --a4:#fbbf24; --a5:#fde68a;
  --g2:#059669; --g3:#10b981; --g4:#34d399;
  --p1:#ec4899; --p2:#f472b6; --p3:#fbcfe8;

  --bg:       #03000f;
  --bg2:      #06011a;
  --text:     #f1f5f9;
  --text2:    #e2e8f0;
  --text3:    #cbd5e1;
  --muted:    #94a3b8;
  --muted2:   #64748b;
  --surf1:    rgba(12,4,48,0.88);
  --surf2:    rgba(6,2,30,0.92);
  --bd1:      rgba(139,92,246,0.22);
  --bd2:      rgba(139,92,246,0.40);
  --bd3:      rgba(255,255,255,0.06);
  --bubble-ai:rgba(48,18,110,0.72);
  --bubble-ai2:rgba(22,8,68,0.65);
  --bubble-ai-bd:rgba(139,92,246,0.35);
  --inp-bg:   rgba(255,255,255,0.08);
  --hdr-bg:   rgba(20,6,60,0.60);
  --panel-bg1:linear-gradient(175deg,rgba(30,8,80,0.80),rgba(10,3,40,0.88));
  --panel-bg2:linear-gradient(160deg,rgba(28,6,72,0.55),rgba(8,2,32,0.70),rgba(4,12,40,0.60));
  --cosmos-grad:
    radial-gradient(ellipse 120% 60% at 0%   0%,   rgba(109,40,217,0.70) 0%,transparent 52%),
    radial-gradient(ellipse 90%  55% at 100% 0%,   rgba(6,182,212,0.50)  0%,transparent 50%),
    radial-gradient(ellipse 80%  65% at 100% 100%,  rgba(236,72,153,0.38) 0%,transparent 48%),
    radial-gradient(ellipse 70%  60% at 0%   100%,  rgba(79,70,229,0.48)  0%,transparent 50%),
    radial-gradient(ellipse 55%  55% at 50%  50%,   rgba(139,92,246,0.18) 0%,transparent 60%),
    radial-gradient(ellipse 40%  40% at 75%  30%,   rgba(6,182,212,0.22)  0%,transparent 45%),
    radial-gradient(ellipse 35%  35% at 20%  70%,   rgba(245,158,11,0.15) 0%,transparent 45%),
    linear-gradient(160deg,#0e0430 0%,#04011a 30%,#020110 60%,#08031e 100%);
  --txt-grad:  linear-gradient(90deg,#ddd6fe,#a5f3fc,#fde68a,#fbcfe8,#ddd6fe);
}

/* ══ LIGHT MODE ══ */
body.light{
  --bg:        #f0eeff;
  --bg2:       #e6e0ff;
  --text:      #1e1640;
  --text2:     #2d2560;
  --text3:     #3d3478;
  --muted:     #6b64a0;
  --muted2:    #8880b8;
  --surf1:     rgba(255,255,255,0.72);
  --surf2:     rgba(245,242,255,0.80);
  --bd1:       rgba(109,40,217,0.18);
  --bd2:       rgba(109,40,217,0.35);
  --bd3:       rgba(109,40,217,0.08);
  --bubble-ai: rgba(255,255,255,0.80);
  --bubble-ai2:rgba(240,235,255,0.75);
  --bubble-ai-bd:rgba(109,40,217,0.16);
  --inp-bg:    rgba(255,255,255,0.85);
  --hdr-bg:    rgba(235,228,255,0.80);
  --panel-bg1: linear-gradient(175deg,rgba(245,241,255,0.88),rgba(255,255,255,0.80));
  --panel-bg2: linear-gradient(170deg,rgba(240,235,255,0.90),rgba(250,248,255,0.92));
  --cosmos-grad:
    radial-gradient(ellipse 100% 55% at 0%   0%,   rgba(139,92,246,0.35) 0%,transparent 55%),
    radial-gradient(ellipse 80%  48% at 100% 0%,   rgba(6,182,212,0.25)  0%,transparent 52%),
    radial-gradient(ellipse 65%  58% at 100% 100%,  rgba(236,72,153,0.20) 0%,transparent 50%),
    radial-gradient(ellipse 58%  55% at 0%   100%,  rgba(99,102,241,0.28) 0%,transparent 52%),
    linear-gradient(160deg,#ede9fe 0%,#e0f2fe 40%,#fce7f3 70%,#ede9fe 100%);
  --txt-grad:  linear-gradient(90deg,#6d28d9,#0891b2,#d97706,#ec4899);
}
body.light .cosmos-bg{background:var(--cosmos-grad);}
body.light .au1{background:linear-gradient(120deg,rgba(139,92,246,0.32),rgba(6,182,212,0.20));filter:blur(100px);}
body.light .au2{background:linear-gradient(120deg,rgba(236,72,153,0.24),rgba(109,40,217,0.20));filter:blur(100px);}
body.light .au3{background:radial-gradient(circle,rgba(6,182,212,0.16),rgba(16,185,129,0.10),transparent 65%);filter:blur(80px);}
body.light .au4{background:radial-gradient(circle,rgba(245,158,11,0.14),transparent 60%);filter:blur(90px);}
body.light .au5{background:radial-gradient(circle,rgba(236,72,153,0.14),rgba(139,92,246,0.10),transparent 60%);filter:blur(85px);}
body.light .cosmos-grid{background-image:linear-gradient(rgba(109,40,217,0.07)1px,transparent 1px),linear-gradient(90deg,rgba(109,40,217,0.07)1px,transparent 1px);}
body.light .muted-txt{color:var(--muted);}
body.light .bai{color:var(--text2);}
body.light .buser{background:linear-gradient(135deg,rgba(109,40,217,0.55),rgba(6,182,212,0.32));color:#fff;}
body.light .cinput{color:var(--text);}
body.light .cinput::placeholder{color:rgba(80,60,140,0.4);}
body.light .cap-title{color:var(--text2);}
body.light .cap-sub,.light .pabout,.light .mt{color:var(--muted);}
body.light .trait{color:var(--text3);}
body.light .starter{color:var(--text3);}
body.light .soc{color:var(--muted2);}
body.light .chip{background:rgba(109,40,217,0.10);border-color:rgba(109,40,217,0.28);color:var(--v2);}
body.light .chip:hover{color:var(--c2);}
body.light .pbadge{background:rgba(109,40,217,0.07);}
body.light .ptxt{color:var(--text3);}
body.light .ptxt strong{color:var(--v2);}
body.light .hero-tag{color:var(--c2);}
body.light .hero-status{background:rgba(5,150,105,0.08);border-color:rgba(5,150,105,0.22);}
body.light .ondot,.light .hdot{background:var(--g3);box-shadow:0 0 8px var(--g3);}
body.light .chdr-name{color:var(--text);}
body.light .chdr-sub{color:var(--muted);}
body.light .ibtn{color:var(--muted);}
body.light .ibtn:hover{color:var(--v2);}
body.light .sbtn{box-shadow:0 4px 18px rgba(109,40,217,0.35);}
body.light .inp-hint{color:rgba(100,80,160,0.4);}
body.light .pcore-letter{background:linear-gradient(135deg,#5b21b6,#0891b2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
body.light .chat{
  background:linear-gradient(160deg,rgba(235,228,255,0.82),rgba(220,240,255,0.78),rgba(240,230,255,0.80));
  border-color:rgba(109,40,217,0.20);
  box-shadow:0 0 0 1px rgba(255,255,255,.70)inset,0 24px 64px rgba(109,40,217,0.10),inset 0 0 80px rgba(139,92,246,0.04);
}
body.light .chdr{
  background:linear-gradient(90deg,rgba(245,240,255,0.88),rgba(230,245,255,0.82));
  border-bottom-color:rgba(109,40,217,0.14);
}
body.light .inp-area{
  background:linear-gradient(90deg,rgba(245,240,255,0.88),rgba(230,245,255,0.82));
  border-top-color:rgba(109,40,217,0.14);
}
body.light .inp-wrap{
  background:rgba(255,255,255,0.80);
  border-color:rgba(109,40,217,0.18);
  box-shadow:0 4px 16px rgba(109,40,217,0.08),inset 0 1px 0 rgba(255,255,255,1);
}
body.light .inp-wrap:focus-within{
  border-color:rgba(109,40,217,0.45);
  background:rgba(255,255,255,0.95);
  box-shadow:0 4px 16px rgba(109,40,217,0.10),0 0 0 3px rgba(109,40,217,0.08);
}
body.light .bai{
  background:linear-gradient(160deg,rgba(255,255,255,0.90),rgba(242,236,255,0.85));
  border-color:rgba(109,40,217,0.16);
  color:var(--text2);
  box-shadow:0 4px 20px rgba(109,40,217,0.08),inset 0 1px 0 rgba(255,255,255,1);
}
body.light .bai::before{
  background:linear-gradient(90deg,rgba(109,40,217,0.50),rgba(6,182,212,0.35),rgba(236,72,153,0.25),transparent);
}
body.light .msgs::before{
  background:
    radial-gradient(ellipse 55% 50% at 30% 40%,rgba(139,92,246,0.08)0%,transparent 60%),
    radial-gradient(ellipse 50% 45% at 70% 60%,rgba(6,182,212,0.06)0%,transparent 55%),
    radial-gradient(ellipse 40% 40% at 50% 50%,rgba(236,72,153,0.04)0%,transparent 55%);
}
body.light .mbtn{background:rgba(255,255,255,0.70);border-color:rgba(109,40,217,0.14);color:var(--muted);}
body.light .mbtn:hover{background:rgba(109,40,217,0.08);border-color:rgba(109,40,217,0.28);color:var(--v2);}

html{height:100%;overflow:hidden;}
body{
  height:100%;
  font-family:'Inter',sans-serif;
  color:var(--text);
  overflow:hidden;
  -webkit-font-smoothing:antialiased;
  background:var(--bg);
  transition:background .4s,color .4s;
}

/* ══════════ COSMOS ══════════ */
.cosmos{position:fixed;inset:0;z-index:0;overflow:hidden;transition:background .4s;}
.cosmos-bg{position:absolute;inset:0;background:var(--cosmos-grad);transition:background .4s;}

.nebula{position:absolute;pointer-events:none;border-radius:50%;}
.neb1{width:700px;height:500px;top:5%;left:15%;background:radial-gradient(ellipse,rgba(109,40,217,0.12) 0%,rgba(6,182,212,0.06) 40%,transparent 70%);filter:blur(60px);animation:nebFloat1 25s ease-in-out infinite;}
.neb2{width:600px;height:400px;bottom:10%;right:10%;background:radial-gradient(ellipse,rgba(236,72,153,0.10) 0%,rgba(139,92,246,0.07) 40%,transparent 70%);filter:blur(55px);animation:nebFloat2 30s ease-in-out infinite;}
.neb3{width:500px;height:400px;top:40%;left:40%;background:radial-gradient(ellipse,rgba(6,182,212,0.08) 0%,rgba(16,185,129,0.05) 40%,transparent 70%);filter:blur(50px);animation:nebFloat1 35s ease-in-out infinite reverse;}
@keyframes nebFloat1{0%,100%{transform:translate(0,0)scale(1)}40%{transform:translate(40px,-30px)scale(1.08)}70%{transform:translate(-20px,20px)scale(0.96)}}
@keyframes nebFloat2{0%,100%{transform:translate(0,0)scale(1)}50%{transform:translate(-35px,25px)scale(1.06)}}

.au{position:absolute;border-radius:50%;pointer-events:none;mix-blend-mode:screen;transition:background .4s,filter .4s;}
.au1{width:1200px;height:600px;top:-200px;left:-300px;background:linear-gradient(120deg,rgba(124,58,237,0.75),rgba(6,182,212,0.40),rgba(236,72,153,0.20));filter:blur(90px);animation:au1 20s ease-in-out infinite;}
.au2{width:1000px;height:580px;bottom:-180px;right:-280px;background:linear-gradient(120deg,rgba(225,29,72,0.52),rgba(139,92,246,0.48),rgba(6,182,212,0.30));filter:blur(90px);animation:au2 26s ease-in-out infinite;}
.au3{width:800px;height:700px;top:25%;left:30%;background:radial-gradient(circle,rgba(6,182,212,0.28),rgba(16,185,129,0.16),rgba(245,158,11,0.08),transparent 65%);filter:blur(75px);animation:au3 32s ease-in-out infinite;}
.au4{width:680px;height:560px;top:2%;right:3%;background:radial-gradient(circle,rgba(245,158,11,0.22),rgba(236,72,153,0.12),transparent 60%);filter:blur(85px);animation:au1 40s ease-in-out infinite reverse;}
.au5{width:500px;height:400px;top:50%;left:5%;background:radial-gradient(circle,rgba(236,72,153,0.18),rgba(139,92,246,0.12),transparent 62%);filter:blur(80px);animation:au2 28s ease-in-out infinite 5s;}
@keyframes au1{0%,100%{transform:translate(0,0)scale(1)}50%{transform:translate(55px,-38px)scale(1.07)}}
@keyframes au2{0%,100%{transform:translate(0,0)scale(1)}50%{transform:translate(-42px,28px)scale(1.05)}}
@keyframes au3{0%,100%{transform:translate(0,0)}40%{transform:translate(32px,-26px)}70%{transform:translate(-22px,16px)}}

.cdust{position:absolute;pointer-events:none;background:linear-gradient(135deg,rgba(196,181,253,0.4),rgba(103,232,249,0.3));border-radius:50%;animation:dustDrift var(--dur,40s) ease-in-out infinite var(--del,0s);}
@keyframes dustDrift{0%,100%{transform:translate(0,0)rotate(0deg)}33%{transform:translate(30px,-20px)rotate(120deg)}66%{transform:translate(-20px,15px)rotate(240deg)}}

#sc{position:absolute;inset:0;pointer-events:none;}

.cosmos-grid{
  position:absolute;inset:0;pointer-events:none;
  background-image:
    linear-gradient(rgba(139,92,246,0.055)1px,transparent 1px),
    linear-gradient(90deg,rgba(139,92,246,0.055)1px,transparent 1px),
    linear-gradient(rgba(6,182,212,0.025)1px,transparent 1px),
    linear-gradient(90deg,rgba(6,182,212,0.025)1px,transparent 1px);
  background-size:55px 55px,55px 55px,165px 165px,165px 165px;
  mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,black,transparent);
  transition:background-image .4s;
}

.sstar{position:absolute;height:2px;border-radius:100px;opacity:0;transform-origin:right center;animation:sshoot var(--d,6s) linear infinite var(--dl,0s);}
@keyframes sshoot{0%{opacity:0;transform:rotate(var(--ang,-40deg)) translateX(0);}6%{opacity:1;}82%{opacity:0.7;}100%{opacity:0;transform:rotate(var(--ang,-40deg)) translateX(var(--tx,-1000px));}}

/* ══════════ LAYOUT ══════════ */
.app{
  position:relative;z-index:1;display:flex;
  height:100vh;height:100dvh;
  padding:10px;gap:10px;
}

@keyframes rbw{to{background-position:300% center}}

/* ══════════ SIDEBAR ══════════ */
.sidebar{
  width:290px;flex-shrink:0;display:flex;flex-direction:column;
  border-radius:22px;overflow:hidden;overflow-y:auto;
  background:var(--panel-bg1);
  border:1px solid var(--bd1);
  box-shadow:0 0 0 1px rgba(255,255,255,0.05)inset,0 24px 64px rgba(0,0,0,0.55),0 0 100px rgba(109,40,217,0.10),0 0 50px rgba(6,182,212,0.05);
  backdrop-filter:blur(32px);
  scrollbar-width:none;
  transition:background .4s,border-color .4s;
}
.sidebar::-webkit-scrollbar{display:none}
.sidebar::before{
  content:'';position:absolute;top:0;left:0;right:0;height:3px;z-index:4;
  background:linear-gradient(90deg,var(--v3),var(--c3),var(--p2),var(--a4),var(--r3),var(--g4),var(--v5),var(--c5),var(--v3));
  background-size:300%100%;animation:rbw 4s linear infinite;border-radius:22px 22px 0 0;filter:blur(0.3px);
}

.hero{padding:30px 20px 26px;display:flex;flex-direction:column;align-items:center;position:relative;flex-shrink:0;border-bottom:1px solid var(--bd1);overflow:visible;}
.hero-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-52%);width:260px;height:260px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(124,58,237,0.45),rgba(6,182,212,0.22),rgba(236,72,153,0.12),transparent 68%);filter:blur(28px);animation:hglow 4s ease-in-out infinite;z-index:0;}
@keyframes hglow{0%,100%{opacity:.65;transform:translate(-50%,-52%)scale(1)}50%{opacity:1;transform:translate(-50%,-52%)scale(1.16)}}

.planet-scene{position:relative;z-index:2;width:130px;height:130px;display:flex;align-items:center;justify-content:center;perspective:400px;flex-shrink:0;}

.ppulse{position:absolute;border-radius:50%;pointer-events:none;animation:pulsering var(--pd,3s) ease-out infinite var(--pdl,0s);border:1px solid rgba(139,92,246,0.5);}
.pp1{inset:-22px;--pd:3s;--pdl:0s;}
.pp2{inset:-22px;--pd:3s;--pdl:1s;}
.pp3{inset:-22px;--pd:3s;--pdl:2s;}
@keyframes pulsering{0%{opacity:.8;transform:scale(1);}100%{opacity:0;transform:scale(1.5);}}

.phalo{position:absolute;inset:-18px;border-radius:50%;background:conic-gradient(var(--v3),var(--c3),var(--p2),var(--a4),var(--r4),var(--g4),var(--v5),var(--c5),var(--v3));animation:haloSpin 6s linear infinite;-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 4px),black calc(100% - 4px));mask:radial-gradient(farthest-side,transparent calc(100% - 4px),black calc(100% - 4px));opacity:.75;filter:blur(0.5px);}
@keyframes haloSpin{to{transform:rotate(360deg)}}

.oring{position:absolute;border-radius:50%;border:1.5px solid transparent;}
.or1{inset:0;border-color:rgba(139,92,246,.6)transparent rgba(139,92,246,.15)transparent;animation:spin 7s linear infinite;}
.or1::after{content:'';position:absolute;top:-5px;left:50%;transform:translateX(-50%);width:10px;height:10px;border-radius:50%;background:var(--v4);box-shadow:0 0 18px var(--v3),0 0 36px rgba(139,92,246,.7);}
.or2{inset:10px;border-color:transparent rgba(6,182,212,.60)transparent rgba(6,182,212,.15);animation:spin 10s linear infinite reverse;}
.or2::after{content:'';position:absolute;bottom:-4px;right:-4px;width:8px;height:8px;border-radius:50%;background:var(--c4);box-shadow:0 0 16px var(--c3),0 0 32px rgba(6,182,212,.60);}
.or3{inset:22px;border-color:rgba(236,72,153,.4)transparent transparent transparent;animation:spin 14s linear infinite 2s;}
.or3::after{content:'';position:absolute;left:-4px;top:50%;transform:translateY(-50%);width:7px;height:7px;border-radius:50%;background:var(--p2);box-shadow:0 0 14px var(--p1),0 0 28px rgba(236,72,153,.50);}
@keyframes spin{to{transform:rotate(360deg)}}

.pcore{position:relative;z-index:3;width:68px;height:68px;border-radius:50%;background:radial-gradient(circle at 30% 28%,rgba(232,220,255,0.65) 0%,transparent 38%),radial-gradient(circle at 72% 76%,rgba(6,182,212,0.50) 0%,transparent 40%),radial-gradient(circle at 20% 70%,rgba(236,72,153,0.30) 0%,transparent 35%),radial-gradient(circle at 55% 50%,rgba(245,158,11,0.18) 0%,transparent 48%),linear-gradient(135deg,#2e0b6e,#1a1060,#091858,#1e0a50,#300050);border:1.5px solid rgba(196,181,253,0.48);display:flex;align-items:center;justify-content:center;box-shadow:0 0 60px rgba(139,92,246,0.70),0 0 30px rgba(6,182,212,0.30),0 0 20px rgba(236,72,153,0.20),inset 0 0 30px rgba(139,92,246,0.20);animation:coreGlow 4s ease-in-out infinite;}
@keyframes coreGlow{0%,100%{box-shadow:0 0 60px rgba(139,92,246,0.70),0 0 30px rgba(6,182,212,0.30),0 0 20px rgba(236,72,153,0.20),inset 0 0 30px rgba(139,92,246,0.20)}50%{box-shadow:0 0 85px rgba(139,92,246,0.90),0 0 45px rgba(6,182,212,0.48),0 0 30px rgba(236,72,153,0.32),0 0 20px rgba(245,158,11,0.20),inset 0 0 30px rgba(139,92,246,0.26)}}
.pcore-letter{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:'Space Grotesk',sans-serif;font-size:1.7rem;font-weight:800;background:linear-gradient(135deg,#f0e6ff,#67e8f9,#fbcfe8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;z-index:5;letter-spacing:-0.02em;filter:drop-shadow(0 0 10px rgba(196,181,253,0.7));}

.hero-name{font-family:'Space Grotesk',sans-serif;font-size:1.65rem;font-weight:800;letter-spacing:-0.025em;margin-top:22px;background:var(--txt-grad);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-align:center;animation:txtShift 5s linear infinite;}
@keyframes txtShift{0%{background-position:0%}100%{background-position:200%}}
.hero-tag{font-family:'JetBrains Mono',monospace;font-size:0.57rem;color:var(--c4);letter-spacing:.2em;text-transform:uppercase;margin-top:5px;text-align:center;transition:color .4s;}
.hero-status{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:6px 18px;border-radius:100px;background:rgba(16,185,129,0.08);border:1px solid rgba(16,185,129,0.28);font-family:'JetBrains Mono',monospace;font-size:.6rem;color:var(--g4);transition:all .4s;}
.hdot{width:7px;height:7px;border-radius:50%;background:var(--g4);box-shadow:0 0 12px var(--g4),0 0 24px rgba(52,211,153,0.5);animation:hdot 2s ease-in-out infinite;}
@keyframes hdot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.4)}}

.sec{padding:14px 18px;flex-shrink:0;transition:background .4s;}
.div{height:1px;margin:0 18px;background:linear-gradient(90deg,transparent,rgba(139,92,246,0.28),rgba(6,182,212,0.15),transparent);flex-shrink:0;transition:background .4s;}
.lbl{font-family:'JetBrains Mono',monospace;font-size:.54rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted2);display:flex;align-items:center;gap:8px;margin-bottom:11px;transition:color .4s;}
.lbl::before{content:'';width:16px;height:1.5px;background:linear-gradient(90deg,var(--v3),var(--c4),transparent);border-radius:2px;}

.pbadge{display:flex;align-items:center;gap:11px;padding:11px 14px;border-radius:13px;background:rgba(139,92,246,.08);border:1px solid var(--bd1);margin-bottom:11px;transition:all .4s;}
.porb{width:36px;height:36px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--v1),var(--c2),var(--p1));display:flex;align-items:center;justify-content:center;box-shadow:0 0 22px rgba(139,92,246,.55),0 0 12px rgba(6,182,212,0.20);animation:hdot 3s ease-in-out infinite;}
.ptxt{font-size:.68rem;color:var(--text3);line-height:1.4;transition:color .4s;}
.ptxt strong{color:var(--v4);font-weight:600;}
.ptxt small{font-size:.58rem;color:var(--muted2);}
.pabout{font-size:.72rem;color:var(--muted);line-height:1.75;transition:color .4s;}

.tgrid{display:grid;grid-template-columns:1fr 1fr;gap:5px;}
.trait{display:flex;align-items:center;gap:7px;padding:8px 11px;border-radius:10px;background:rgba(255,255,255,.022);border:1px solid var(--bd3);font-size:.66rem;color:var(--text3);transition:all .2s;}
.trait:hover{background:rgba(139,92,246,.10);border-color:var(--bd1);color:var(--text);}
.tdot{width:5px;height:5px;border-radius:50%;flex-shrink:0;}

.caps{display:flex;flex-direction:column;gap:6px;}
.cap{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:13px;background:rgba(255,255,255,.018);border:1px solid var(--bd3);transition:all .22s;}
.cap:hover{background:rgba(139,92,246,.08);border-color:var(--bd1);}
.cap-icon{width:36px;height:36px;border-radius:11px;flex-shrink:0;display:flex;align-items:center;justify-content:center;}
.cap-icon svg{width:16px;height:16px;}
.cap-title{font-size:.73rem;font-weight:600;color:var(--text2);transition:color .4s;}
.cap-sub{font-size:.61rem;color:var(--muted);margin-top:1px;transition:color .4s;}

.starters{display:flex;flex-direction:column;gap:5px;}
.starter{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:11px;background:rgba(255,255,255,.018);border:1px solid var(--bd3);font-family:'Inter',sans-serif;font-size:.7rem;color:var(--text3);cursor:pointer;text-align:left;width:100%;transition:all .22s;}
.starter:hover{background:rgba(139,92,246,.10);border-color:rgba(139,92,246,.34);color:var(--v5);transform:translateX(5px);}
.sico{width:26px;height:26px;border-radius:8px;flex-shrink:0;display:flex;align-items:center;justify-content:center;}
.sico svg{width:12px;height:12px;}

.srow{display:flex;gap:6px;flex-wrap:wrap;}
.soc{display:flex;align-items:center;gap:6px;padding:7px 14px;border-radius:10px;border:1px solid var(--bd3);background:rgba(255,255,255,.022);color:var(--muted);font-family:'JetBrains Mono',monospace;font-size:.6rem;text-decoration:none;letter-spacing:.04em;transition:all .22s;}
.soc:hover{background:rgba(139,92,246,.12);border-color:rgba(139,92,246,.36);color:var(--v5);transform:translateY(-2px);box-shadow:0 6px 20px rgba(139,92,246,0.18);}
.soc svg{width:12px;height:12px;flex-shrink:0;}

/* ══════════ CHAT PANEL ══════════ */
.chat{
  flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;
  border-radius:22px;overflow:hidden;
  background:linear-gradient(160deg,rgba(35,8,90,0.52),rgba(8,25,70,0.58),rgba(4,15,45,0.65));
  border:1px solid rgba(139,92,246,0.30);
  box-shadow:0 0 0 1px rgba(255,255,255,.06)inset,0 24px 64px rgba(0,0,0,.45),0 0 80px rgba(109,40,217,0.12),0 0 50px rgba(6,182,212,0.07),inset 0 0 120px rgba(109,40,217,0.06),inset 0 0 60px rgba(6,182,212,0.04);
  backdrop-filter:blur(24px);
  position:relative;
  transition:background .4s,border-color .4s;
}
.chat::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;z-index:3;background:linear-gradient(90deg,var(--c3),var(--v3),var(--p2),var(--r3),var(--a4),var(--g4),var(--c3));background-size:300%100%;animation:rbw 3.5s linear infinite;border-radius:22px 22px 0 0;filter:blur(0.3px);}

.chdr{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid rgba(139,92,246,0.28);background:linear-gradient(90deg,rgba(30,8,80,0.55),rgba(8,20,60,0.50));backdrop-filter:blur(20px);flex-shrink:0;position:relative;z-index:2;transition:background .4s,border-color .4s;}
.chdr-left{display:flex;align-items:center;gap:12px;}
.chdr-av{width:42px;height:42px;border-radius:14px;flex-shrink:0;background:linear-gradient(135deg,var(--v1),var(--c3),var(--p1));display:flex;align-items:center;justify-content:center;font-family:'Space Grotesk',sans-serif;font-size:.9rem;font-weight:700;color:#fff;box-shadow:0 0 26px rgba(139,92,246,.60),0 0 12px rgba(6,182,212,0.20);position:relative;}
.chdr-av::after{content:'';position:absolute;inset:-3px;border-radius:17px;border:1.5px solid rgba(139,92,246,.45);animation:ringP 3s ease-in-out infinite;}
@keyframes ringP{0%,100%{opacity:.35;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}
.chdr-name{font-family:'Space Grotesk',sans-serif;font-size:1rem;font-weight:600;color:var(--text);transition:color .4s;}
.chdr-tag{display:inline-block;padding:2px 9px;border-radius:100px;margin-left:6px;font-family:'JetBrains Mono',monospace;font-size:.52rem;background:rgba(139,92,246,.14);border:1px solid var(--bd1);color:var(--v4);}
.chdr-sub{display:flex;align-items:center;gap:6px;margin-top:2px;font-family:'JetBrains Mono',monospace;font-size:.58rem;color:var(--muted);transition:color .4s;}
.ondot{width:5px;height:5px;border-radius:50%;background:var(--g4);box-shadow:0 0 10px var(--g4),0 0 20px rgba(52,211,153,0.4);animation:hdot 2s infinite;}
.chdr-acts{display:flex;align-items:center;gap:6px;}
.ibtn{width:34px;height:34px;border-radius:10px;border:1px solid var(--bd3);background:rgba(255,255,255,.03);color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;text-decoration:none;}
.ibtn:hover{background:rgba(139,92,246,.12);border-color:rgba(139,92,246,.34);color:var(--v4);}
.ibtn svg{width:13px;height:13px;}
.mpill{display:flex;align-items:center;gap:5px;padding:5px 13px;height:30px;border-radius:100px;font-family:'JetBrains Mono',monospace;font-size:.58rem;cursor:pointer;transition:all .25s;user-select:none;border:1px solid var(--bd3);background:rgba(255,255,255,.03);color:var(--muted);}
.mpill svg{width:11px;height:11px;}
.mpill.von{border-color:rgba(139,92,246,.45);background:rgba(139,92,246,.12);color:var(--v4);}
.mpill.voff{border-color:rgba(6,182,212,.35);background:rgba(6,182,212,.07);color:var(--c4);}
.mpill.vspk{border-color:rgba(251,191,36,.45);background:rgba(251,191,36,.09);color:var(--a4);animation:blink 1.2s ease-in-out infinite;}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.5}}

.msgs-wrap{flex:1;min-height:0;overflow:hidden;position:relative;}
.chat-stars{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0;}
.cstar{position:absolute;height:2px;border-radius:100px;opacity:0;transform-origin:right center;animation:cshoot var(--d,8s) linear infinite var(--dl,0s);}
@keyframes cshoot{0%{opacity:0;transform:rotate(var(--ang,-40deg)) translateX(0);}7%{opacity:0.8;}80%{opacity:0.5;}100%{opacity:0;transform:rotate(var(--ang,-40deg)) translateX(var(--tx,-700px));}}

.msgs{position:absolute;inset:0;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px;scroll-behavior:smooth;z-index:1;}
.msgs::-webkit-scrollbar{width:3px;}
.msgs::-webkit-scrollbar-thumb{background:rgba(139,92,246,.32);border-radius:4px;}
.msgs::before{content:'';position:fixed;top:50%;left:62%;transform:translate(-50%,-50%);width:700px;height:500px;pointer-events:none;background:radial-gradient(ellipse 55% 50% at 30% 40%,rgba(109,40,217,0.14)0%,transparent 60%),radial-gradient(ellipse 50% 45% at 70% 60%,rgba(6,182,212,0.10)0%,transparent 55%),radial-gradient(ellipse 40% 40% at 50% 50%,rgba(236,72,153,0.06)0%,transparent 55%);filter:blur(50px);z-index:0;animation:glwP 12s ease-in-out infinite;}
@keyframes glwP{0%,100%{opacity:.5}50%{opacity:1}}

.mrow{display:flex;gap:10px;align-items:flex-end;animation:mIn .3s cubic-bezier(.34,1.56,.64,1)both;position:relative;z-index:1;}
.mrow--u{flex-direction:row-reverse;}
@keyframes mIn{from{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}
.mav{width:30px;height:30px;border-radius:9px;flex-shrink:0;background:linear-gradient(135deg,var(--v1),var(--c3),var(--p1));display:flex;align-items:center;justify-content:center;font-family:'Space Grotesk',sans-serif;font-size:.6rem;font-weight:700;color:#fff;box-shadow:0 0 14px rgba(139,92,246,.48);}

.bai{max-width:76%;padding:14px 18px;border-radius:20px 20px 20px 4px;font-size:.875rem;line-height:1.72;color:#e2e8f0;background:linear-gradient(160deg,rgba(55,20,130,0.68),rgba(18,6,60,0.60),rgba(6,20,55,0.65));border:1px solid rgba(139,92,246,0.38);box-shadow:0 4px 32px rgba(0,0,0,.20),0 0 40px rgba(109,40,217,0.08),inset 0 1px 0 rgba(255,255,255,.10);backdrop-filter:blur(20px);position:relative;overflow:hidden;transition:background .4s,border-color .4s,color .4s;}
.bai::before{content:'';position:absolute;top:0;left:0;right:0;height:1.5px;background:linear-gradient(90deg,rgba(139,92,246,.80),rgba(6,182,212,.60),rgba(236,72,153,.45),rgba(251,191,36,.30),transparent);}
.bai strong{color:var(--v4);}
.bai code{font-family:'JetBrains Mono',monospace;font-size:.78rem;background:rgba(139,92,246,.14);border:1px solid rgba(139,92,246,.24);padding:2px 7px;border-radius:5px;color:var(--v4);}
.bai a{color:var(--c4);text-underline-offset:3px;}

.buser{max-width:76%;padding:14px 18px;border-radius:20px 20px 4px 20px;font-size:.875rem;line-height:1.72;color:#fff;background:linear-gradient(135deg,rgba(109,40,217,.60),rgba(6,182,212,.32),rgba(236,72,153,.15));border:1px solid rgba(139,92,246,.45);box-shadow:0 4px 28px rgba(139,92,246,.28),inset 0 1px 0 rgba(255,255,255,.1);backdrop-filter:blur(14px);}
.berr{max-width:85%;padding:12px 16px;border-radius:13px;font-size:.8rem;color:#fda4af;background:rgba(244,63,94,.07);border:1px solid rgba(244,63,94,.24);}
.mt{font-family:'JetBrains Mono',monospace;font-size:.53rem;color:var(--muted2);margin-top:5px;transition:color .4s;}
.mt-r{text-align:right;}

.typing{display:flex;align-items:center;gap:6px;padding:5px 2px;}
.typing span{width:6px;height:6px;border-radius:50%;animation:tb 1.3s ease-in-out infinite;}
.typing span:nth-child(1){background:var(--v4);}
.typing span:nth-child(2){background:var(--c4);animation-delay:.18s;}
.typing span:nth-child(3){background:var(--p2);animation-delay:.36s;}
@keyframes tb{0%,80%,100%{transform:scale(.55);opacity:.3}40%{transform:scale(1.1);opacity:1}}

.chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px;}
.chip{padding:7px 16px;border-radius:100px;font-family:'Space Grotesk',sans-serif;font-size:.68rem;font-weight:600;background:rgba(139,92,246,.10);border:1px solid rgba(139,92,246,.32);color:var(--v4);cursor:pointer;transition:all .22s;white-space:nowrap;}
.chip:hover{background:rgba(139,92,246,.24);border-color:rgba(139,92,246,.68);color:var(--c4);transform:translateY(-2px);box-shadow:0 6px 22px rgba(139,92,246,.32);}
.sgrow{display:flex;flex-wrap:wrap;gap:6px;animation:mIn .25s ease both;position:relative;z-index:1;}

.portbtn{display:inline-flex;align-items:center;gap:9px;margin-top:14px;padding:10px 18px;border-radius:13px;background:linear-gradient(135deg,rgba(109,40,217,.26),rgba(6,182,212,.16),rgba(236,72,153,.08));border:1px solid rgba(139,92,246,.45);color:var(--v4);font-family:'Space Grotesk',sans-serif;font-size:.78rem;font-weight:600;text-decoration:none;transition:all .25s;box-shadow:0 4px 22px rgba(139,92,246,.24);position:relative;overflow:hidden;}
.portbtn::after{content:'';position:absolute;top:0;left:-120%;width:60%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.22),transparent);transform:skewX(-20deg);animation:shine 3.5s ease-in-out infinite;}
@keyframes shine{0%,100%{left:-120%}65%,78%{left:130%}}
.portbtn:hover{border-color:rgba(139,92,246,.75);color:var(--c4);transform:translateY(-2px);box-shadow:0 8px 30px rgba(139,92,246,.40);}
.portbtn svg{width:13px;height:13px;flex-shrink:0;}

.inp-area{padding:14px 18px 18px;border-top:1px solid rgba(139,92,246,0.28);background:linear-gradient(90deg,rgba(30,8,80,0.55),rgba(8,20,60,0.50));backdrop-filter:blur(20px);flex-shrink:0;transition:background .4s,border-color .4s;}
.inp-wrap{display:flex;align-items:flex-end;gap:10px;padding:8px;border-radius:18px;background:rgba(139,92,246,0.10);border:1px solid rgba(139,92,246,0.25);box-shadow:0 8px 32px rgba(0,0,0,.18),0 0 20px rgba(6,182,212,0.06),inset 0 1px 0 rgba(255,255,255,.07);transition:border-color .25s,box-shadow .25s,background .4s;}
.inp-wrap:focus-within{border-color:rgba(139,92,246,.60);background:rgba(139,92,246,0.14);box-shadow:0 8px 32px rgba(0,0,0,.18),0 0 0 3px rgba(139,92,246,.12),0 0 24px rgba(6,182,212,0.10),inset 0 1px 0 rgba(255,255,255,.08);}
.mbtn{width:42px;height:42px;border-radius:12px;flex-shrink:0;border:1px solid var(--bd3);background:rgba(255,255,255,.04);color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .22s;}
.mbtn:hover{background:rgba(139,92,246,.14);border-color:rgba(139,92,246,.35);color:var(--v4);}
.mbtn.listening{background:rgba(244,63,94,.14);border-color:rgba(244,63,94,.58);color:var(--r4);animation:micP 1s ease-in-out infinite;}
@keyframes micP{0%{box-shadow:0 0 0 0 rgba(244,63,94,.6)}70%{box-shadow:0 0 0 12px rgba(244,63,94,0)}100%{box-shadow:0 0 0 0 rgba(244,63,94,0)}}
.mbtn svg{width:15px;height:15px;}
.cinput{flex:1;min-width:0;background:transparent;border:none;outline:none;padding:10px 6px;color:var(--text);font-family:'Inter',sans-serif;font-size:.9rem;resize:none;min-height:44px;max-height:120px;line-height:1.55;transition:color .4s;}
.cinput::placeholder{color:rgba(148,163,184,.38);}
.sbtn{width:44px;height:44px;border-radius:13px;border:none;flex-shrink:0;background:linear-gradient(135deg,var(--v1),#4c1d95,var(--c2));color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .22s;box-shadow:0 4px 20px rgba(139,92,246,.50),0 0 12px rgba(6,182,212,0.15);}
.sbtn:hover{transform:scale(1.08)rotate(8deg);box-shadow:0 6px 28px rgba(139,92,246,.68),0 0 18px rgba(6,182,212,0.20);}
.sbtn:active{transform:scale(.94);}
.sbtn svg{width:16px;height:16px;}
.inp-hint{text-align:center;margin-top:8px;font-family:'JetBrains Mono',monospace;font-size:.55rem;color:var(--muted2);letter-spacing:.04em;opacity:.5;transition:color .4s;}

.toast{position:fixed;bottom:80px;left:50%;transform:translateX(-50%)translateY(10px);background:rgba(6,2,24,.96);border:1px solid var(--bd1);color:var(--text);font-family:'JetBrains Mono',monospace;font-size:.7rem;padding:9px 22px;border-radius:100px;opacity:0;transition:all .28s;z-index:9999;white-space:nowrap;pointer-events:none;box-shadow:0 4px 22px rgba(139,92,246,.28),0 0 12px rgba(6,182,212,0.10);}
.toast.show{opacity:1;transform:translateX(-50%)translateY(0);}

/* ══════════ CURRENT FOCUS WIDGET ══════════ */
.hero-meta{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:12px;}
.vmeta-item{display:inline-flex;align-items:center;gap:6px;padding:5px 13px;border-radius:100px;background:rgba(139,92,246,0.08);border:1px solid rgba(139,92,246,0.20);font-family:'JetBrains Mono',monospace;font-size:.58rem;color:var(--muted);transition:all .3s;}
.focus-item{border-color:rgba(139,92,246,0.28)!important;max-width:240px;}
.focus-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;background:var(--v4);box-shadow:0 0 8px var(--v4),0 0 16px rgba(139,92,246,0.5);animation:hdot 2s ease-in-out infinite;}
#focusText{color:var(--v4);font-weight:500;font-size:.57rem;transition:opacity .4s;}
#focusText.fade{opacity:0;}

/* ══════════ INTERACTIVE CLOCK ══════════ */
.clock-widget{display:flex;align-items:center;gap:12px;padding:10px 16px;border-radius:16px;background:rgba(139,92,246,0.08);border:1px solid rgba(139,92,246,0.22);margin-top:12px;transition:all .3s;cursor:default;}
.clock-widget:hover{background:rgba(139,92,246,0.14);border-color:rgba(139,92,246,0.40);transform:scale(1.02);}
#clockCanvas{border-radius:50%;flex-shrink:0;}
.clock-info{display:flex;flex-direction:column;gap:3px;}
.clock-digital{font-family:'JetBrains Mono',monospace;font-size:.85rem;font-weight:600;color:var(--v4);letter-spacing:.08em;}
.clock-label{font-family:'JetBrains Mono',monospace;font-size:.52rem;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;}
body.light .clock-widget{background:rgba(109,40,217,0.06);border-color:rgba(109,40,217,0.18);}
body.light .clock-digital{color:var(--v2);}

/* ══════════ VCF BUTTON ══════════ */
.vcf-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:10px;padding:10px 16px;border-radius:12px;background:rgba(6,182,212,0.08);border:1px solid rgba(6,182,212,0.28);color:var(--c4);font-family:'Space Grotesk',sans-serif;font-size:.72rem;font-weight:600;cursor:pointer;transition:all .22s;letter-spacing:.02em;}
.vcf-btn:hover{background:rgba(6,182,212,0.18);border-color:rgba(6,182,212,0.55);transform:translateY(-2px);box-shadow:0 6px 22px rgba(6,182,212,0.20);}
.vcf-btn svg{width:13px;height:13px;}
body.light .vcf-btn{color:var(--c2);background:rgba(6,182,212,0.06);}

/* ══════════ REACTION BAR ══════════ */
.react-bar{display:flex;align-items:center;gap:8px;margin-top:8px;animation:mIn .3s ease both;position:relative;z-index:1;}
.react-label{font-family:'JetBrains Mono',monospace;font-size:.54rem;color:var(--muted2);white-space:nowrap;}
.react-emojis{display:flex;gap:4px;}
.react-btn{background:rgba(255,255,255,0.04);border:1px solid var(--bd3);border-radius:100px;padding:4px 10px;font-size:.85rem;cursor:pointer;transition:all .2s;line-height:1;}
.react-btn:hover{background:rgba(139,92,246,0.14);border-color:rgba(139,92,246,0.35);transform:scale(1.18);}
.react-btn.reacted{background:rgba(139,92,246,0.22);border-color:rgba(139,92,246,0.55);transform:scale(1.1);}
body.light .react-btn{background:rgba(109,40,217,0.05);border-color:rgba(109,40,217,0.15);}

/* ══════════ TYPING INDICATOR PULSE ══════════ */
.chdr-av.typing-aware{
  animation:avatarPulse 1s ease-in-out infinite;
  box-shadow:0 0 0 0 rgba(139,92,246,0.7),0 0 26px rgba(139,92,246,.60),0 0 12px rgba(6,182,212,0.20);
}
@keyframes avatarPulse{
  0%{box-shadow:0 0 0 0 rgba(139,92,246,0.7),0 0 26px rgba(139,92,246,.60);}
  50%{box-shadow:0 0 0 10px rgba(139,92,246,0),0 0 40px rgba(6,182,212,0.60);}
  100%{box-shadow:0 0 0 0 rgba(139,92,246,0),0 0 26px rgba(139,92,246,.60);}
}

/* ══════════ CANDY'S MOOD RING ══════════ */
.pcore.mood-casual{
  box-shadow:0 0 60px rgba(6,182,212,0.85),0 0 30px rgba(6,182,212,0.50),inset 0 0 30px rgba(6,182,212,0.25)!important;
  border-color:rgba(103,232,249,0.60)!important;
  transition:box-shadow 1.2s ease,border-color 1.2s ease;
}
.pcore.mood-technical{
  box-shadow:0 0 60px rgba(16,185,129,0.85),0 0 30px rgba(16,185,129,0.50),inset 0 0 30px rgba(16,185,129,0.25)!important;
  border-color:rgba(52,211,153,0.60)!important;
  transition:box-shadow 1.2s ease,border-color 1.2s ease;
}
.pcore.mood-recruiter{
  box-shadow:0 0 60px rgba(245,158,11,0.85),0 0 30px rgba(245,158,11,0.50),inset 0 0 30px rgba(245,158,11,0.25)!important;
  border-color:rgba(251,191,36,0.60)!important;
  transition:box-shadow 1.2s ease,border-color 1.2s ease;
}
.pcore.mood-personal{
  box-shadow:0 0 60px rgba(236,72,153,0.85),0 0 30px rgba(236,72,153,0.50),inset 0 0 30px rgba(236,72,153,0.25)!important;
  border-color:rgba(251,207,232,0.60)!important;
  transition:box-shadow 1.2s ease,border-color 1.2s ease;
}
.pcore.mood-wow{
  animation:moodWow 1.8s ease-in-out 3!important;
}
@keyframes moodWow{
  0%  {box-shadow:0 0 60px rgba(139,92,246,0.70),inset 0 0 30px rgba(139,92,246,0.20);}
  25% {box-shadow:0 0 80px rgba(6,182,212,0.90),0 0 40px rgba(236,72,153,0.60),inset 0 0 40px rgba(6,182,212,0.30);}
  50% {box-shadow:0 0 90px rgba(245,158,11,0.90),0 0 45px rgba(52,211,153,0.60),inset 0 0 40px rgba(245,158,11,0.30);}
  75% {box-shadow:0 0 80px rgba(236,72,153,0.90),0 0 40px rgba(139,92,246,0.60),inset 0 0 40px rgba(236,72,153,0.30);}
  100%{box-shadow:0 0 60px rgba(139,92,246,0.70),inset 0 0 30px rgba(139,92,246,0.20);}
}

/* ══════════ SKILL GALAXY ══════════ */
.galaxy-wrap{display:flex;flex-direction:column;align-items:center;gap:10px;}
#galaxyCanvas{cursor:pointer;border-radius:50%;}
.galaxy-info{width:100%;padding:10px 14px;border-radius:12px;background:rgba(139,92,246,0.08);border:1px solid rgba(139,92,246,0.22);transition:all .3s;min-height:58px;}
.gi-skill{font-family:'Space Grotesk',monospace;font-size:.78rem;font-weight:600;color:var(--v4);margin-bottom:4px;}
.gi-projects{font-family:'Inter',sans-serif;font-size:.68rem;color:var(--muted);line-height:1.6;}
body.light .galaxy-info{background:rgba(109,40,217,0.06);border-color:rgba(109,40,217,0.18);}
body.light .gi-projects{color:var(--muted2);}

/* ══════════ AI ACTIVITY MONITOR ══════════ */
.aim-wrap{display:flex;flex-direction:column;gap:6px;}
.aim-row{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:12px;background:rgba(255,255,255,0.018);border:1px solid rgba(139,92,246,0.10);transition:all .22s;}
.aim-row:hover{background:rgba(139,92,246,0.08);border-color:rgba(139,92,246,0.25);}
.aim-icon{width:32px;height:32px;border-radius:9px;flex-shrink:0;display:flex;align-items:center;justify-content:center;}
.aim-icon svg{width:14px;height:14px;}
.aim-info{flex:1;min-width:0;}
.aim-label{font-family:'JetBrains Mono',monospace;font-size:.52rem;color:var(--muted2);letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px;}
.aim-value{font-family:'Space Grotesk',sans-serif;font-size:.75rem;font-weight:600;color:var(--text2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.aim-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;}
.aim-pulse{animation:hdot 2s ease-in-out infinite;}
.aim-terminal{margin-top:6px;padding:10px 14px;border-radius:10px;background:rgba(0,0,0,0.35);border:1px solid rgba(139,92,246,0.20);font-family:'JetBrains Mono',monospace;font-size:.62rem;color:#34d399;min-height:36px;line-height:1.6;}
.aim-cursor{display:inline-block;animation:blink 1s step-end infinite;color:#a78bfa;}
@keyframes blink{0%,100%{opacity:1}50%{opacity:0}}
body.light .aim-row{background:rgba(109,40,217,0.03);border-color:rgba(109,40,217,0.10);}
body.light .aim-row:hover{background:rgba(109,40,217,0.07);}
body.light .aim-terminal{background:rgba(240,235,255,0.80);color:#059669;}
body.light .aim-value{color:var(--text2);}

/* ══════════════════════════════
   PORTFOLIO TOUR
══════════════════════════════ */
.tour-start-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: 12px;
  padding: 9px 16px;
  border-radius: 100px;
  background: linear-gradient(135deg, rgba(109,40,217,.22), rgba(6,182,212,.14));
  border: 1px solid rgba(139,92,246,.40);
  color: #a78bfa;
  font-family: 'Space Grotesk', sans-serif;
  font-size: 0.74rem;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.25s;
  letter-spacing: 0.02em;
}
.tour-start-btn:hover {
  border-color: rgba(139,92,246,.65);
  color: #22d3ee;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(139,92,246,.28);
}

/* Tour Card */
.tour-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
  background: linear-gradient(160deg, rgba(55,20,130,0.65), rgba(18,6,60,0.58));
  border: 1px solid rgba(139,92,246,0.35);
  border-radius: 18px;
  padding: 16px;
  position: relative;
  overflow: hidden;
}
.tour-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, #8b5cf6, #06b6d4, #f472b6, #fbbf24);
  background-size: 200% 100%;
  animation: rbw 3s linear infinite;
}

.tour-card-top {
  display: flex;
  align-items: center;
  gap: 12px;
}
.tour-card-icon {
  width: 40px; height: 40px;
  border-radius: 11px;
  border: 1px solid;
  display: flex; align-items: center; justify-content: center;
  font-size: 1rem;
  flex-shrink: 0;
}
.tour-card-title {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 0.88rem;
  font-weight: 700;
  color: #e2e8f0;
}
.tour-card-progress {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.58rem;
  color: #475569;
  letter-spacing: 0.06em;
  margin-top: 2px;
}

/* Progress bar */
.tour-progress-bar {
  height: 3px;
  background: rgba(139,92,246,0.12);
  border-radius: 100px;
  overflow: hidden;
}
.tour-progress-fill {
  height: 100%;
  border-radius: 100px;
  transition: width 0.6s cubic-bezier(0.4,0,0.2,1);
  box-shadow: 0 0 6px currentColor;
}

.tour-card-desc {
  font-size: 0.82rem;
  color: #cbd5e1;
  line-height: 1.68;
}

/* Tags */
.tour-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.tour-tag {
  padding: 4px 10px;
  background: rgba(139,92,246,0.08);
  border: 1px solid rgba(139,92,246,0.22);
  border-radius: 100px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.62rem;
  color: #a78bfa;
  letter-spacing: 0.04em;
}

/* Actions */
.tour-card-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: wrap;
  padding-top: 8px;
  border-top: 1px solid rgba(139,92,246,0.15);
}
.tour-visit-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 14px;
  border-radius: 100px;
  border: 1px solid;
  font-family: 'Space Grotesk', sans-serif;
  font-size: 0.72rem;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.22s;
  background: transparent;
}
.tour-visit-btn:hover {
  transform: translateY(-1px);
  filter: brightness(1.15);
}
.tour-nav-btns {
  display: flex;
  gap: 6px;
}
.tour-end-btn {
  padding: 7px 14px;
  border-radius: 100px;
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.08);
  color: #475569;
  font-family: 'Space Grotesk', sans-serif;
  font-size: 0.72rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.22s;
}
.tour-end-btn:hover {
  border-color: rgba(244,63,94,.3);
  color: #f43f5e;
  background: rgba(244,63,94,.08);
}
.tour-next-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 16px;
  border-radius: 100px;
  border: none;
  color: #fff;
  font-family: 'Space Grotesk', sans-serif;
  font-size: 0.72rem;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.22s;
  box-shadow: 0 4px 14px rgba(0,0,0,0.3);
}
.tour-next-btn:hover {
  transform: translateY(-1px);
  filter: brightness(1.1);
  box-shadow: 0 6px 20px rgba(0,0,0,0.4);
}

@keyframes rbw { to { background-position: 300% center; } }

/* ══ MOBILE ══ */
@media(max-width:700px){
  .app{padding:0;gap:0;flex-direction:column;}
  .sidebar{width:100%;flex-direction:row;align-items:center;flex-wrap:nowrap;gap:12px;padding:10px 14px;border-radius:0;border:none;border-bottom:1px solid var(--bd1);overflow-x:auto;overflow-y:hidden;flex-shrink:0;min-height:68px;}
  .sidebar::before{border-radius:0;}
  .hero{flex-direction:row;padding:0;gap:12px;flex-shrink:0;border-bottom:none;overflow:visible;}
  .hero-glow{display:none;}
  .planet-scene{width:50px;height:50px;}
  .phalo{display:none;}
  .or2,.or3{display:none;}
  .pp1,.pp2,.pp3{display:none;}
  .pcore{width:32px;height:32px;}
  .pcore-letter{font-size:.9rem;}
  .hero-name{font-size:.95rem;margin-top:0;text-align:left;}
  .hero-tag{font-size:.5rem;text-align:left;}
  .hero-status{margin-top:4px;font-size:.55rem;padding:4px 11px;}
  .sec,.div{display:none;}
  .chat{flex:1;border-radius:0;min-height:0;}
  .chat::before{border-radius:0;}
  .bai,.buser{max-width:90%;font-size:.84rem;}
  .msgs-wrap{flex:1;}
  .inp-area{padding:10px 12px;padding-bottom:max(14px, env(safe-area-inset-bottom));}
  .inp-wrap{padding:5px 5px 5px 8px;border-radius:16px;gap:6px;align-items:center;}
  .cinput{font-size:16px;min-height:40px;max-height:100px;padding:8px 4px;}
  .mbtn{width:38px;height:38px;flex-shrink:0;border-radius:10px;}
  .sbtn{width:40px;height:40px;flex-shrink:0;border-radius:11px;}
  .inp-hint{display:none;}
}
