@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;500;600;700&display=swap";@tailwind base;@tailwind components;@tailwind utilities;:root{color-scheme:dark;--eldritch: #00ff9d;--bio: #00d4ff;--void: #8b5cf6;--abyss-deep: #020810;--abyss-mid: #081a2e}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--abyss-deep)}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--bio),var(--void));border-radius:4px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--eldritch),var(--bio))}html,body{height:100%;max-height:100dvh;overflow:hidden;overscroll-behavior:none}body{font-family:Inter,system-ui,sans-serif;background:linear-gradient(180deg,#020810,#081a2e,#0d2847)}@layer components{.glass-panel{background:#081a2e99;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid rgba(0,212,255,.15);box-shadow:0 8px 32px #0006,inset 0 1px #ffffff0d}.glass-panel-light{background:#ffffff0d;backdrop-filter:blur(12px) saturate(150%);-webkit-backdrop-filter:blur(12px) saturate(150%);border:1px solid rgba(255,255,255,.1)}.btn-bubble{position:relative;background:linear-gradient(145deg,#00d4ff4d,#00ff9d26);border:1px solid rgba(0,212,255,.4);box-shadow:0 4px 15px #00d4ff33,inset 0 2px 4px #ffffff1a,inset 0 -2px 4px #0003;transition:all .3s ease}.btn-bubble:hover{background:linear-gradient(145deg,#00d4ff66,#00ff9d40);box-shadow:0 6px 25px #00d4ff59,inset 0 2px 4px #ffffff26,inset 0 -2px 4px #0003;transform:translateY(-2px)}.btn-bubble:active{transform:translateY(0);box-shadow:0 2px 10px #00d4ff33,inset 0 2px 6px #0000004d}.btn-eldritch{background:linear-gradient(145deg,#00ff9d66,#00cc7d4d);border:1px solid rgba(0,255,157,.5);box-shadow:0 4px 20px #00ff9d40,inset 0 2px 4px #ffffff1a;transition:all .3s ease}.btn-eldritch:hover{background:linear-gradient(145deg,#00ff9d8c,#00cc7d66);box-shadow:0 6px 30px #00ff9d66,inset 0 2px 4px #ffffff26;transform:translateY(-2px)}.text-glow{text-shadow:0 0 10px currentColor,0 0 20px currentColor}.text-glow-subtle{text-shadow:0 0 8px rgba(0,255,157,.4)}}@layer utilities{.ocean-bg{position:relative;overflow:hidden}.ocean-bg:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 80% 50% at 20% 40%,rgba(0,212,255,.08) 0%,transparent 50%),radial-gradient(ellipse 60% 40% at 80% 60%,rgba(139,92,246,.06) 0%,transparent 50%),radial-gradient(ellipse 100% 80% at 50% 100%,rgba(0,255,157,.04) 0%,transparent 60%);animation:ocean-shift 20s ease-in-out infinite;pointer-events:none;z-index:0}@keyframes ocean-shift{0%,to{opacity:1;transform:translate(0)}33%{opacity:.85;transform:translate(-2%,1%)}66%{opacity:.95;transform:translate(1%,-1%)}}}.typing-indicator{display:flex;gap:4px;align-items:center;padding:.5rem}.typing-indicator span{width:6px;height:6px;border-radius:50%;background:var(--eldritch);animation:typing-bounce 1.4s infinite ease-in-out;box-shadow:0 0 8px var(--eldritch)}.typing-indicator span:nth-child(1){animation-delay:0s}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.input-abyss:focus{box-shadow:0 0 0 2px #00d4ff4d,0 0 20px #00d4ff26}.input-eldritch{background:#020810cc;border:2px solid rgba(0,255,157,.25);box-shadow:inset 0 2px 4px #00000080,0 0 0 1px #00ff9d1a;transition:all .2s ease}.input-eldritch:focus{animation:eldritch-shake .3s ease-out,eldritch-pulse 2s ease-in-out infinite;border-color:#00ff9d99;box-shadow:inset 0 2px 4px #00000080,0 0 20px #00ff9d4d,0 0 40px #00ff9d1a}@keyframes eldritch-shake{0%,to{transform:translate(0)}10%{transform:translate(-3px)}20%{transform:translate(3px)}30%{transform:translate(-2px)}40%{transform:translate(2px)}50%{transform:translate(-1px)}60%{transform:translate(1px)}}@keyframes eldritch-pulse{0%,to{box-shadow:inset 0 2px 4px #00000080,0 0 15px #00ff9d40,0 0 30px #00ff9d1a}50%{box-shadow:inset 0 2px 4px #00000080,0 0 25px #00ff9d66,0 0 50px #00ff9d33}}
