/* ════════════════════════════════════════════════════════════════════
   ONIMAI · DARK DISCOVERY DASHBOARD
═══════════════════════════════════════════════════════════════════ */
:root {
  --bg:          #04050a;
  --bg-card:     #080a13;
  --bg-glass:    rgba(8,10,19,0.85);
  --bg-surface:  #0b0e1b;

  --accent:      #ff6097;
  --accent-dim:  rgba(255,96,151,0.18);
  --accent-glow: rgba(255,96,151,0.35);
  --accent-b:    #d91b5c;

  --storm:       #ff8ebb;
  --ok:          #3ddc97;
  --warn:        #f0b429;
  --danger:      #ff5b5b;
  --purple:      #c084fc;
  --gold:        #fbbf24;

  --text:        #f3f6fc;
  --text-2:      #a2b0d6;
  --text-3:      #4a5775;
  --border:      rgba(255,96,151,0.12);
  --border-h:    rgba(255,96,151,0.32);

  --font-d: 'Bebas Neue', sans-serif;
  --font-b: 'Outfit', sans-serif;
  --font-m: 'Space Mono', monospace;

  --r-sm: 8px; --r-md: 14px; --r-lg: 22px; --r-xl: 30px;
  --ease: cubic-bezier(0.4,0,0.2,1);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;overflow-x:hidden;}
body{font-family:var(--font-b);background:var(--bg);color:var(--text);overflow-x:hidden;line-height:1.6;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;}
input{font-family:inherit;color:inherit;}
code{font-family:var(--font-m);font-size:0.85em;color:var(--storm);background:rgba(255,96,151,0.08);padding:0.1em 0.4em;border-radius:6px;border:1px solid var(--border);}
::-webkit-scrollbar{width:6px;}::-webkit-scrollbar-track{background:var(--bg);}::-webkit-scrollbar-thumb{background:var(--accent-b);border-radius:3px;}

#bg-canvas{position:fixed;inset:0;z-index:0;pointer-events:none;}
.grid-overlay{position:fixed;inset:0;z-index:1;pointer-events:none;
  background-image:linear-gradient(rgba(255,96,151,0.022) 1px,transparent 1px),linear-gradient(90deg,rgba(255,96,151,0.022) 1px,transparent 1px);
  background-size:50px 50px;
  mask-image:radial-gradient(ellipse 90% 90% at 50% 40%,black 0%,transparent 75%);}

.orb{position:fixed;border-radius:50%;filter:blur(110px);pointer-events:none;z-index:0;}
.orb-1{width:700px;height:700px;top:-250px;left:-200px;background:radial-gradient(circle,rgba(217,27,92,0.1) 0%,transparent 65%);animation:orbMove 28s ease-in-out infinite;}
.orb-2{width:600px;height:600px;bottom:-150px;right:-150px;background:radial-gradient(circle,rgba(192,132,252,0.07) 0%,transparent 65%);animation:orbMove 35s ease-in-out infinite reverse;}
.orb-3{width:400px;height:400px;top:40%;left:38%;background:radial-gradient(circle,rgba(255,96,151,0.04) 0%,transparent 65%);animation:orbMove 22s ease-in-out infinite;}
.orb-4{width:300px;height:300px;top:20%;right:20%;background:radial-gradient(circle,rgba(192,132,252,0.05) 0%,transparent 65%);animation:orbMove 18s ease-in-out infinite 5s;}
@keyframes orbMove{0%,100%{transform:translate(0,0);}33%{transform:translate(40px,-50px);}66%{transform:translate(-30px,30px);}}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:0.3;}}

#scroll-bar{position:fixed;top:0;left:0;height:2px;width:0%;background:linear-gradient(90deg,var(--accent-b),var(--ok));z-index:9999;box-shadow:0 0 12px var(--accent);transition:width 0.1s linear;}

/* LOADER */
#loader{position:fixed;inset:0;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999;transition:opacity 0.7s var(--ease),visibility 0.7s var(--ease);}
#loader.hidden{opacity:0;visibility:hidden;pointer-events:none;}
.loader-logo{font-family:var(--font-d);font-size:3.5rem;letter-spacing:0.2em;color:transparent;-webkit-text-stroke:1px var(--accent);animation:loaderPulse 1.6s ease-in-out infinite;margin-bottom:1.5rem;}
@keyframes loaderPulse{0%,100%{opacity:0.3;}50%{opacity:1;text-shadow:0 0 30px var(--accent);}}
.spin{width:40px;height:40px;border:2px solid rgba(255,96,151,0.2);border-top-color:var(--accent);border-radius:50%;animation:spin 0.9s linear infinite;}
@keyframes spin{to{transform:rotate(360deg);}}
#loadText{margin-top:1rem;font-family:var(--font-m);font-size:0.6rem;color:var(--text-3);letter-spacing:0.22em;text-transform:uppercase;}
.loader-bar-wrap{width:240px;height:2px;background:var(--border);border-radius:2px;overflow:hidden;margin-top:1.5rem;}
.loader-bar{height:100%;width:0%;background:linear-gradient(90deg,var(--accent-b),var(--ok));border-radius:2px;transition:width 0.35s var(--ease);}

/* NAVBAR */
#navbar{position:fixed;top:0;left:0;right:0;z-index:1000;padding:1.1rem 5vw;display:flex;align-items:center;gap:1.5rem;transition:background 0.4s,border-bottom 0.4s,padding 0.3s;}
#navbar.scrolled{background:rgba(6,8,15,0.94);border-bottom:1px solid var(--border);backdrop-filter:blur(20px);padding:0.7rem 5vw;}
.brand{font-family:var(--font-d);font-size:1.7rem;letter-spacing:0.12em;color:var(--accent);text-shadow:0 0 20px rgba(255,96,151,0.4);display:flex;align-items:center;gap:0.4rem;flex-shrink:0;}
.brand-mark{display:inline-block;animation:spin 16s linear infinite;font-size:0.85em;color:var(--storm);}
.nav-links{display:flex;align-items:center;gap:0.2rem;flex:1;justify-content:center;}
.nav-links a{font-family:var(--font-m);font-size:0.65rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-2);padding:0.45rem 0.9rem;border-radius:var(--r-sm);transition:all 0.2s;}
.nav-links a:hover{color:var(--text);background:rgba(255,96,151,0.07);}
.nav-links a.active{color:var(--ok);}
.nav-actions{display:flex;align-items:center;gap:0.5rem;flex-shrink:0;}
.nav-btn{font-family:var(--font-m);font-size:0.62rem;letter-spacing:0.14em;text-transform:uppercase;padding:0.55rem 1rem;border-radius:var(--r-sm);transition:all 0.2s;border:1px solid transparent;}
.nav-btn.ghost{color:var(--text-2);border-color:var(--border);}
.nav-btn.ghost:hover{color:var(--text);border-color:var(--border-h);}
.nav-btn.solid{background:var(--accent);color:var(--bg);border-color:var(--accent);box-shadow:0 6px 24px var(--accent-glow);}
.nav-btn.solid:hover{background:var(--storm);}
.nav-btn.outline-pill{padding:0.45rem 0.85rem;border-radius:999px;border-color:var(--border-h);color:var(--text);}
.nav-live-dot{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 10px var(--ok);animation:pulse 2.5s infinite;}

.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;}
.hamburger span{display:block;width:22px;height:2px;background:var(--accent);border-radius:2px;transition:all 0.3s;}
.hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.hamburger.open span:nth-child(2){opacity:0;}
.hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.mobile-menu{display:none;position:fixed;inset:0;background:rgba(6,8,15,0.97);backdrop-filter:blur(20px);z-index:999;flex-direction:column;align-items:center;justify-content:center;gap:2rem;}
.mobile-menu.open{display:flex;}
.mobile-menu a{font-family:var(--font-d);font-size:2.2rem;letter-spacing:0.15em;color:var(--text-2);transition:color 0.2s;}
.mobile-menu a:hover{color:var(--accent);}

/* PAGE */
.page{position:relative;z-index:10;}
.container{padding:0 5vw;max-width:1380px;margin:0 auto;}
.section{padding:5rem 0;}
.section-divider{height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent);max-width:1380px;margin:0 auto;}
.section-label{font-family:var(--font-m);font-size:0.62rem;letter-spacing:0.24em;text-transform:uppercase;color:var(--accent);display:inline-flex;align-items:center;gap:0.6rem;margin-bottom:1rem;}
.section-label::before{content:'';width:24px;height:1px;background:var(--accent);}
.section-title{font-family:var(--font-d);font-size:clamp(2.5rem,4.5vw,4.5rem);letter-spacing:0.04em;line-height:0.95;margin-bottom:1rem;}
.section-title .grad{background:linear-gradient(135deg,var(--storm),var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.section-sub{font-size:1rem;color:var(--text-2);max-width:650px;line-height:1.8;}

.reveal{opacity:0;transform:translateY(40px);transition:opacity 0.75s var(--ease),transform 0.75s var(--ease);}
.reveal.in{opacity:1;transform:translateY(0);}

/* HERO */
#hero{min-height:60vh;display:flex;align-items:center;padding:0 5vw;overflow:hidden;position:relative;}
.hero-inner{max-width:1380px;margin:0 auto;width:100%;padding-top:6rem;padding-bottom:3rem;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;}
.hero-eyebrow{display:inline-flex;align-items:center;gap:0.55rem;font-family:var(--font-m);font-size:0.65rem;letter-spacing:0.18em;text-transform:uppercase;padding:0.4rem 1rem;border-radius:999px;border:1px solid rgba(61,220,151,0.25);color:var(--ok);background:rgba(61,220,151,0.06);margin-bottom:1.5rem;}
.hero-eyebrow .dot{width:5px;height:5px;border-radius:50%;background:var(--ok);box-shadow:0 0 8px var(--ok);animation:pulse 1.8s infinite;}
.hero-title{font-family:var(--font-d);font-size:clamp(3rem,7vw,6rem);line-height:0.88;letter-spacing:0.04em;margin-bottom:1.4rem;}
.hero-title .grad{background:linear-gradient(135deg,var(--storm) 0%,var(--accent) 60%,#8ab4ff 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.hero-desc{font-size:1rem;color:var(--text-2);line-height:1.8;max-width:520px;margin-bottom:2rem;}
.hero-desc code{color:var(--storm);}
.hero-actions{display:flex;gap:0.8rem;flex-wrap:wrap;margin-bottom:1.5rem;}
.cta-primary{display:inline-flex;align-items:center;gap:0.5rem;font-family:var(--font-m);font-size:0.7rem;letter-spacing:0.16em;text-transform:uppercase;padding:0.85rem 1.6rem;border-radius:999px;background:var(--accent);color:var(--bg);box-shadow:0 8px 28px var(--accent-glow);transition:all 0.25s;}
.cta-primary:hover{background:var(--storm);transform:translateY(-2px);}
.cta-ghost{display:inline-flex;align-items:center;gap:0.5rem;font-family:var(--font-m);font-size:0.7rem;letter-spacing:0.16em;text-transform:uppercase;padding:0.85rem 1.6rem;border-radius:999px;color:var(--text-2);border:1px solid var(--border);transition:all 0.25s;}
.cta-ghost:hover{color:var(--text);border-color:var(--border-h);}
.ticker{display:flex;align-items:center;gap:0.6rem;font-family:var(--font-m);font-size:0.6rem;letter-spacing:0.12em;color:var(--text-3);text-transform:uppercase;margin-top:1rem;}
.ticker-dot{width:5px;height:5px;border-radius:50%;background:var(--ok);animation:pulse 2s infinite;}

.hero-live-card{background:var(--bg-glass);border:1px solid var(--border);border-radius:var(--r-xl);backdrop-filter:blur(20px);overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,0.45),inset 0 1px 0 rgba(255,255,255,0.04);animation:floatCard 9s ease-in-out infinite;}
@keyframes floatCard{0%,100%{transform:translateY(0);}50%{transform:translateY(-10px);}}
.live-card-top{padding:0.85rem 1.5rem;border-bottom:1px solid var(--border);background:rgba(61,220,151,0.04);display:flex;align-items:center;gap:0.7rem;}
.live-chip{display:inline-flex;align-items:center;gap:0.4rem;font-family:var(--font-m);font-size:0.58rem;letter-spacing:0.12em;text-transform:uppercase;padding:0.22rem 0.7rem;border-radius:999px;background:rgba(61,220,151,0.1);border:1px solid rgba(61,220,151,0.25);color:var(--ok);}
.live-chip::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--ok);box-shadow:0 0 5px var(--ok);animation:pulse 1.8s infinite;}
.live-card-time{margin-left:auto;font-family:var(--font-m);font-size:0.58rem;color:var(--text-3);letter-spacing:0.1em;}
.live-card-body{padding:1.5rem;display:grid;gap:0.8rem;}
.live-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;}
.live-row-label{font-family:var(--font-m);font-size:0.6rem;letter-spacing:0.1em;color:var(--text-2);text-transform:uppercase;}
.live-row-val{font-family:var(--font-d);font-size:1.4rem;letter-spacing:0.06em;color:var(--text);}
.live-row-val.ok-color{color:var(--ok);}
.live-row-val.purple-color{color:var(--purple);}
.live-row-val.gold-color{color:var(--gold);}
hr.live-div{border:none;border-top:1px solid var(--border);}

/* METRIC CARDS */
.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:3rem;}
.metric-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-xl);padding:2rem;transition:all 0.3s var(--ease);position:relative;overflow:hidden;}
.metric-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent-dim),transparent);opacity:0;transition:opacity 0.3s;}
.metric-card:hover{border-color:var(--border-h);background:var(--bg-surface);transform:translateY(-4px);box-shadow:0 16px 50px rgba(0,0,0,0.35);}
.metric-card:hover::before{opacity:1;}
.metric-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.2rem;}
.metric-card-label{font-family:var(--font-m);font-size:0.63rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--text-2);}
.metric-icon{font-size:1.4rem;opacity:0.65;color:var(--accent);}
.metric-value{font-family:var(--font-d);font-size:3.2rem;letter-spacing:0.05em;line-height:1;color:var(--text);margin-bottom:1rem;}
.metric-value.gold{color:var(--gold);}
.metric-value.purple{color:var(--purple);}
.metric-value.blue{color:var(--storm);}
.metric-sub{font-family:var(--font-m);font-size:0.62rem;letter-spacing:0.08em;color:var(--text-3);}

/* TRENDING ROW */
.trending-row{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem;margin-top:3rem;}
.trend-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:1.2rem;display:flex;flex-direction:column;align-items:center;text-align:center;transition:all 0.3s var(--ease);position:relative;overflow:hidden;}
.trend-card::after{content:'';position:absolute;inset:0;border-radius:var(--r-lg);background:linear-gradient(135deg,rgba(167,139,250,0.05),transparent 60%);opacity:0;transition:opacity 0.3s;pointer-events:none;}
.trend-card:hover{border-color:var(--border-h);transform:translateY(-5px);box-shadow:0 14px 40px rgba(0,0,0,0.35);}
.trend-card:hover::after{opacity:1;}
.trend-img{width:62px;height:62px;border-radius:50%;background:linear-gradient(135deg,var(--accent-b),var(--purple));display:flex;align-items:center;justify-content:center;font-family:var(--font-d);color:#fff;font-size:1.6rem;margin-bottom:0.8rem;overflow:hidden;box-shadow:0 6px 18px rgba(255,96,151,0.25);}
.trend-img img{width:100%;height:100%;object-fit:cover;}
.trend-name{font-family:var(--font-d);font-size:1.05rem;letter-spacing:0.04em;color:var(--text);line-height:1.1;margin-bottom:0.3rem;}
.trend-meta{font-family:var(--font-m);font-size:0.55rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-3);margin-bottom:0.6rem;}
.trend-likes{font-family:var(--font-m);font-size:0.68rem;color:var(--gold);}
.trending-empty{grid-column:1/-1;text-align:center;padding:2rem;font-family:var(--font-m);font-size:0.65rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-3);}

/* CONTROL PANEL */
.control-panel{margin-top:2.5rem;background:var(--bg-glass);border:1px solid var(--border);border-radius:var(--r-xl);padding:1.6rem;backdrop-filter:blur(20px);display:flex;flex-direction:column;gap:1.2rem;}
.search-bar{display:flex;align-items:center;gap:0.6rem;background:rgba(255,96,151,0.04);border:1px solid var(--border);border-radius:999px;padding:0.4rem 0.4rem 0.4rem 1rem;transition:border 0.2s;}
.search-bar:focus-within{border-color:var(--border-h);box-shadow:0 0 0 4px rgba(255,96,151,0.06);}
.search-icon{color:var(--accent);font-size:1rem;}
.search-bar input{flex:1;background:transparent;border:none;outline:none;font-family:var(--font-b);font-size:0.95rem;color:var(--text);padding:0.6rem 0;}
.search-bar input::placeholder{color:var(--text-3);}
.search-btn{background:var(--accent);color:var(--bg);font-family:var(--font-m);font-size:0.65rem;letter-spacing:0.14em;text-transform:uppercase;padding:0.65rem 1.3rem;border-radius:999px;transition:background 0.2s,transform 0.2s;}
.search-btn:hover{background:var(--storm);transform:translateY(-1px);}

.filter-block{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;}
.filter-row-label{font-family:var(--font-m);font-size:0.58rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--text-3);min-width:80px;}
.filter-row{display:flex;flex-wrap:wrap;gap:0.45rem;flex:1;}
.filter-btn{font-family:var(--font-m);font-size:0.6rem;letter-spacing:0.12em;text-transform:uppercase;padding:0.5rem 1rem;border-radius:999px;background:rgba(255,96,151,0.04);border:1px solid var(--border);color:var(--text-2);transition:all 0.2s;}
.filter-btn:hover{border-color:var(--border-h);color:var(--text);}
.filter-btn.active{background:var(--accent);border-color:var(--accent);color:var(--bg);box-shadow:0 6px 18px var(--accent-glow);}

/* BOTS GRID */
.bots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.4rem;margin-top:2rem;}
.grid-empty{grid-column:1/-1;text-align:center;padding:3rem;font-family:var(--font-m);font-size:0.7rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-3);}

.bot-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-xl);padding:1.6rem;transition:all 0.3s var(--ease);position:relative;overflow:hidden;display:flex;flex-direction:column;gap:1rem;}
.bot-card::after{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:0;transition:opacity 0.3s;}
.bot-card:hover{border-color:var(--border-h);transform:translateY(-4px);box-shadow:0 16px 50px rgba(0,0,0,0.4);}
.bot-card:hover::after{opacity:1;}
.bot-head{display:flex;align-items:flex-start;gap:1rem;}
.bot-img{width:56px;height:56px;border-radius:14px;background:linear-gradient(135deg,var(--accent-b),var(--purple));display:flex;align-items:center;justify-content:center;font-family:var(--font-d);color:#fff;font-size:1.4rem;overflow:hidden;flex-shrink:0;box-shadow:0 6px 18px rgba(255,96,151,0.2);}
.bot-img img{width:100%;height:100%;object-fit:cover;}
.bot-titles{flex:1;min-width:0;}
.bot-title{font-family:var(--font-d);font-size:1.4rem;letter-spacing:0.05em;color:var(--text);line-height:1.05;margin-bottom:0.2rem;}
.bot-platform{font-family:var(--font-m);font-size:0.55rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--storm);}
.bot-verified{font-size:0.95rem;color:var(--ok);flex-shrink:0;}
.bot-desc{font-size:0.85rem;color:var(--text-2);line-height:1.55;flex:1;}
.bot-tags{display:flex;flex-wrap:wrap;gap:0.35rem;}
.bot-tag{font-family:var(--font-m);font-size:0.5rem;letter-spacing:0.1em;text-transform:uppercase;padding:0.22rem 0.55rem;border-radius:6px;background:rgba(255,96,151,0.06);border:1px solid var(--border);color:var(--text-2);}
.bot-meta{display:flex;align-items:center;justify-content:space-between;padding-top:0.7rem;border-top:1px solid var(--border);}
.bot-cat{font-family:var(--font-m);font-size:0.55rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-3);}
.bot-actions{display:flex;gap:0.4rem;align-items:center;}
.like-btn,.share-btn{font-family:var(--font-m);font-size:0.62rem;letter-spacing:0.08em;padding:0.35rem 0.7rem;border-radius:999px;background:rgba(255,96,151,0.05);border:1px solid var(--border);color:var(--text-2);display:inline-flex;align-items:center;gap:0.35rem;transition:all 0.2s;}
.like-btn:hover,.share-btn:hover{border-color:var(--border-h);color:var(--text);}
.like-btn.liked{background:rgba(255,91,91,0.08);border-color:rgba(255,91,91,0.25);color:var(--danger);}
.likes-count{font-family:var(--font-d);font-size:0.85rem;letter-spacing:0.04em;}
.bot-invite{margin-top:0.4rem;display:block;font-family:var(--font-m);font-size:0.62rem;letter-spacing:0.14em;text-transform:uppercase;text-align:center;padding:0.7rem;border-radius:var(--r-md);background:var(--accent);color:var(--bg);transition:background 0.2s;}
.bot-invite:hover{background:var(--storm);}

/* API CARDS */
.api-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0.8rem;max-width:1100px;margin:2rem auto 0;}
.api-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);padding:1rem;text-align:center;transition:all 0.25s;display:flex;flex-direction:column;gap:0.4rem;align-items:center;}
.api-card:hover{border-color:var(--border-h);transform:translateY(-3px);}
.api-card code{font-size:0.7rem;color:var(--storm);background:transparent;border:none;padding:0;}
.api-card span{font-family:var(--font-m);font-size:0.55rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-3);}

/* FOOTER */
footer{position:relative;z-index:10;border-top:1px solid var(--border);padding:2.5rem 5vw;margin-top:2rem;}
.footer-inner{max-width:1380px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;}
.footer-brand{font-family:var(--font-d);font-size:1.3rem;letter-spacing:0.12em;color:var(--accent);}
.footer-text{font-family:var(--font-m);font-size:0.6rem;letter-spacing:0.12em;color:var(--text-3);text-align:center;}
.footer-live{display:flex;align-items:center;gap:0.5rem;font-family:var(--font-m);font-size:0.6rem;letter-spacing:0.1em;color:var(--ok);}

/* TOAST */
#toast-container{position:fixed;top:90px;right:24px;z-index:9000;display:flex;flex-direction:column;gap:0.6rem;}
.toast{padding:0.85rem 1.2rem;background:var(--bg-card);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--r-md);font-family:var(--font-m);font-size:0.7rem;letter-spacing:0.04em;color:var(--text);box-shadow:0 10px 30px rgba(0,0,0,0.4);display:flex;align-items:center;gap:0.6rem;min-width:240px;animation:toastIn 0.25s var(--ease);}
.toast.success{border-left-color:var(--ok);}
.toast.error{border-left-color:var(--danger);}
.toast.warn{border-left-color:var(--warn);}
@keyframes toastIn{from{transform:translateX(20px);opacity:0;}to{transform:translateX(0);opacity:1;}}

/* AUTH (login/register/submit pages) — reuse same dark theme */
.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:6rem 5vw 4rem;}
.auth-card{background:var(--bg-glass);border:1px solid var(--border);border-radius:var(--r-xl);backdrop-filter:blur(20px);padding:2.5rem;width:100%;max-width:440px;box-shadow:0 20px 60px rgba(0,0,0,0.4);}
.auth-title{font-family:var(--font-d);font-size:2.4rem;letter-spacing:0.05em;color:var(--text);margin-bottom:0.4rem;}
.auth-sub{font-family:var(--font-m);font-size:0.65rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-3);margin-bottom:2rem;}
.auth-form{display:flex;flex-direction:column;gap:1rem;}
.auth-form label{font-family:var(--font-m);font-size:0.6rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-2);}
.auth-form input,.auth-form textarea,.auth-form select{background:rgba(255,96,151,0.04);border:1px solid var(--border);border-radius:var(--r-md);padding:0.85rem 1rem;color:var(--text);font-family:var(--font-b);font-size:0.95rem;transition:border 0.2s;width:100%;}
.auth-form input:focus,.auth-form textarea:focus,.auth-form select:focus{outline:none;border-color:var(--border-h);box-shadow:0 0 0 4px rgba(255,96,151,0.06);}
.auth-form button{margin-top:0.5rem;background:var(--accent);color:var(--bg);font-family:var(--font-m);font-size:0.7rem;letter-spacing:0.18em;text-transform:uppercase;padding:0.9rem;border-radius:var(--r-md);transition:all 0.2s;}
.auth-form button:hover{background:var(--storm);}
.auth-foot{margin-top:1.4rem;font-family:var(--font-m);font-size:0.65rem;color:var(--text-2);text-align:center;}
.auth-foot a{color:var(--accent);}

/* RESPONSIVE */
@media(max-width:1200px){
  .metrics-grid{grid-template-columns:repeat(2,1fr);}
  .trending-row{grid-template-columns:repeat(3,1fr);}
}
@media(max-width:1050px){
  .hero-inner{grid-template-columns:1fr;gap:3rem;padding-top:7rem;}
  .hero-live-card{animation:none;}
  .nav-links{display:none;}
  .nav-actions{display:none;}
  .hamburger{display:flex;}
}
@media(max-width:700px){
  .metrics-grid{grid-template-columns:1fr 1fr;}
  .trending-row{grid-template-columns:1fr 1fr;}
  .control-panel{padding:1.2rem;}
  .filter-block{flex-direction:column;align-items:flex-start;}
  .filter-row-label{min-width:0;}
}

/* BACKWARD-COMPAT (auth.js renders these classes) */
.btn{font-family:var(--font-m);font-size:0.62rem;letter-spacing:0.14em;text-transform:uppercase;padding:0.55rem 1rem;border-radius:var(--r-sm);border:1px solid transparent;display:inline-flex;align-items:center;gap:0.4rem;transition:all 0.2s;}
.btn-ghost{color:var(--text-2);border-color:var(--border);background:transparent;}
.btn-ghost:hover{color:var(--text);border-color:var(--border-h);}
.btn-primary{background:var(--accent);color:var(--bg);border-color:var(--accent);box-shadow:0 6px 24px var(--accent-glow);}
.btn-primary:hover{background:var(--storm);}
.btn-outline{color:var(--text-2);border-color:var(--border);background:transparent;}
.btn-outline:hover{color:var(--text);border-color:var(--border-h);}
.btn-sm{padding:0.4rem 0.8rem;font-size:0.58rem;}

.user-pill{display:flex;align-items:center;gap:0.6rem;padding:0.35rem 0.85rem 0.35rem 0.4rem;border-radius:999px;background:rgba(255,96,151,0.06);border:1px solid var(--border);}
.user-pill .ava{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--accent-b),var(--purple));display:flex;align-items:center;justify-content:center;font-family:var(--font-d);color:#fff;font-size:0.95rem;}
.user-pill .name{font-family:var(--font-d);font-size:0.95rem;letter-spacing:0.04em;color:var(--text);}
.role-badge{font-family:var(--font-m);font-size:0.5rem;letter-spacing:0.1em;text-transform:uppercase;padding:0.12rem 0.4rem;border-radius:6px;display:inline-block;}
.role-badge.admin{background:rgba(251,191,36,0.1);border:1px solid rgba(251,191,36,0.3);color:var(--gold);}
.role-badge.verified{background:rgba(61,220,151,0.1);border:1px solid rgba(61,220,151,0.3);color:var(--ok);}
.role-badge.user{background:rgba(167,139,250,0.1);border:1px solid rgba(167,139,250,0.3);color:var(--purple);}

.toast{opacity:0;transform:translateX(20px);transition:opacity 0.3s,transform 0.3s;}
.toast.show{opacity:1;transform:translateX(0);}
.toast-icon{font-size:1rem;color:var(--accent);flex-shrink:0;}
.toast.success .toast-icon{color:var(--ok);}
.toast.error .toast-icon{color:var(--danger);}
.toast-icon i{font-style:normal;}
.toast-icon i::before{content:'◉';}
.toast.success .toast-icon i::before{content:'✓';}
.toast.error .toast-icon i::before{content:'✕';}
.toast-content{display:flex;flex-direction:column;gap:0.15rem;}
.toast-title{font-family:var(--font-d);font-size:0.95rem;letter-spacing:0.04em;color:var(--text);margin:0;}
.toast-message{font-family:var(--font-b);font-size:0.78rem;color:var(--text-2);margin:0;line-height:1.4;}

/* LEGACY INNER-PAGE STYLES (login/register/submit/admin/api) — reskinned dark */
.bg-aurora{position:fixed;inset:0;z-index:0;pointer-events:none;}
.aurora{display:none;}
.nav-container{max-width:1380px;margin:0 auto;padding:1.1rem 5vw;display:flex;align-items:center;gap:1.5rem;}
header{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(6,8,15,0.94);border-bottom:1px solid var(--border);backdrop-filter:blur(20px);}
header .brand{font-family:var(--font-d);font-size:1.5rem;letter-spacing:0.12em;color:var(--accent);display:flex;align-items:center;gap:0.4rem;}
.brand-icon{font-size:1.4rem;}
.brand-text{display:flex;flex-direction:column;line-height:1;}
.brand-text > span{display:block;}
.brand-text > span > span{display:block;font-family:var(--font-m);font-size:0.55rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--text-3);margin-top:0.2rem;}
.nav-menu{display:flex;align-items:center;gap:0.3rem;flex:1;justify-content:center;}
.nav-link{font-family:var(--font-m);font-size:0.65rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-2);padding:0.45rem 0.9rem;border-radius:var(--r-sm);transition:all 0.2s;}
.nav-link:hover{color:var(--text);background:rgba(255,96,151,0.07);}
.nav-link.active{color:var(--ok);}

.auth-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:7rem 5vw 4rem;}
.glass-panel{background:var(--bg-glass);border:1px solid var(--border);border-radius:var(--r-xl);backdrop-filter:blur(20px);padding:2.5rem;width:100%;max-width:520px;box-shadow:0 20px 60px rgba(0,0,0,0.4);}
.panel-header{margin-bottom:2rem;text-align:center;}
.panel-header h1{font-family:var(--font-d);font-size:2.2rem;letter-spacing:0.05em;color:var(--text);margin-bottom:0.4rem;}
.panel-header p{font-family:var(--font-m);font-size:0.65rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-3);}
.form-group{display:flex;flex-direction:column;gap:0.45rem;margin-bottom:1.1rem;}
.form-group label{font-family:var(--font-m);font-size:0.6rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-2);}
.form-input,.form-select,textarea.form-input{background:rgba(255,96,151,0.04);border:1px solid var(--border);border-radius:var(--r-md);padding:0.85rem 1rem;color:var(--text);font-family:var(--font-b);font-size:0.95rem;transition:border 0.2s;width:100%;}
.form-input:focus,.form-select:focus,textarea.form-input:focus{outline:none;border-color:var(--border-h);box-shadow:0 0 0 4px rgba(255,96,151,0.06);}
.form-input::placeholder{color:var(--text-3);}
.input-icon-wrapper{position:relative;}
.input-icon-wrapper .form-input{padding-left:2.6rem;}
.input-icon{position:absolute;left:0.9rem;top:50%;transform:translateY(-50%);color:var(--accent);font-size:0.95rem;pointer-events:none;}
.form-input-noicon{padding-left:1rem;}
.form-footer{margin-top:1.5rem;font-family:var(--font-m);font-size:0.65rem;color:var(--text-2);text-align:center;}
.form-footer a{color:var(--accent);}
.form-footer a:hover{color:var(--storm);}
.toast-container{position:fixed;top:90px;right:24px;z-index:9000;display:flex;flex-direction:column;gap:0.6rem;}

/* admin tables, badges */
table{width:100%;border-collapse:collapse;font-family:var(--font-b);}
th{font-family:var(--font-m);font-size:0.6rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-2);text-align:left;padding:0.7rem 0.6rem;border-bottom:1px solid var(--border);}
td{padding:0.7rem 0.6rem;border-bottom:1px solid var(--border);color:var(--text);font-size:0.85rem;}
tr:hover td{background:rgba(255,96,151,0.04);}

/* badges used in cards */
.badge-platform,.badge-category{font-family:var(--font-m);font-size:0.5rem;letter-spacing:0.1em;text-transform:uppercase;padding:0.2rem 0.5rem;border-radius:6px;background:rgba(255,96,151,0.08);border:1px solid var(--border);color:var(--text-2);}
.badge-category{background:rgba(192,132,252,0.06);border-color:rgba(192,132,252,0.18);color:var(--purple);}
.badge-status{font-family:var(--font-m);font-size:0.55rem;letter-spacing:0.12em;text-transform:uppercase;padding:0.22rem 0.6rem;border-radius:999px;background:rgba(240,180,41,0.1);border:1px solid rgba(240,180,41,0.3);color:var(--warn);}
.badge-status.approved,.badge-status.verified{background:rgba(61,220,151,0.1);border-color:rgba(61,220,151,0.3);color:var(--ok);}
.badge-status.rejected{background:rgba(255,91,91,0.1);border-color:rgba(255,91,91,0.3);color:var(--danger);}

/* ADMIN PANEL */
main.main-content,.main-content{max-width:1400px;margin:0 auto;padding:6rem 5vw 4rem;position:relative;z-index:10;}
.admin-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;}
.admin-header h2{font-family:var(--font-d);font-size:2.4rem;letter-spacing:0.04em;color:var(--text);line-height:1;}
.admin-header h2 span{background:linear-gradient(135deg,var(--accent),var(--storm));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.tabs{display:flex;flex-wrap:wrap;gap:0.7rem;margin:2rem 0;}
.tab-btn{font-family:var(--font-m);font-size:0.66rem;letter-spacing:0.16em;text-transform:uppercase;padding:0.85rem 1.4rem;border-radius:var(--r-md);background:var(--bg-card);border:1px solid var(--border);color:var(--text-2);transition:all 0.2s;cursor:pointer;}
.tab-btn:hover{color:var(--text);border-color:var(--border-h);transform:translateY(-1px);}
.tab-btn.active{background:var(--accent);color:var(--bg);border-color:var(--accent);box-shadow:0 8px 28px var(--accent-glow);}
.admin-tab-pane{display:block;}
.admin-card{background:var(--bg-glass);border:1px solid var(--border);border-radius:var(--r-xl);backdrop-filter:blur(20px);overflow:hidden;box-shadow:0 22px 60px rgba(0,0,0,0.45);position:relative;}
.admin-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:0.6;z-index:1;}
.table-wrapper{overflow-x:auto;padding:1.4rem;}
.table-wrapper table{min-width:720px;}
.admin-thumbnail{width:44px;height:44px;border-radius:10px;object-fit:cover;border:1px solid var(--border);}
.card-logo-fallback{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,var(--accent-b),var(--purple));display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:1.1rem;}
.action-row{display:inline-flex;gap:0.4rem;align-items:center;justify-content:flex-end;flex-wrap:wrap;}
.btn-icon{width:34px;height:34px;border-radius:8px;background:rgba(255,96,151,0.08);border:1px solid var(--border);color:var(--text-2);display:inline-flex;align-items:center;justify-content:center;transition:all 0.15s;cursor:pointer;}
.btn-icon:hover{border-color:var(--border-h);color:var(--text);background:rgba(255,96,151,0.14);}
.btn-verify{background:rgba(61,220,151,0.1);border-color:rgba(61,220,151,0.3);color:var(--ok);}
.btn-verify:hover{background:rgba(61,220,151,0.2);}
.btn-delete{background:rgba(255,91,91,0.08);border-color:rgba(255,91,91,0.3);color:var(--danger);}
.btn-delete:hover{background:rgba(255,91,91,0.15);}

/* MODALS (admin) */
#age-modal,#delete-modal{position:fixed;inset:0;z-index:9000;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,0.7);backdrop-filter:blur(10px);padding:1rem;}
#age-modal.open,#delete-modal.open{display:flex;}
#age-modal > div,#delete-modal > div{background:var(--bg-elevated,#0b0e1b);border:1px solid var(--border);border-radius:var(--r-xl);max-width:640px;width:100%;padding:2rem;backdrop-filter:blur(20px);box-shadow:0 30px 80px rgba(0,0,0,0.6);position:relative;}
#age-img-front,#age-img-selfie{max-width:100%;max-height:340px;border-radius:var(--r-md);border:1px solid var(--border);display:block;margin:0.5rem auto;}

/* API DOCS */
.api-section{margin-top:3rem;}
.api-h2{font-family:var(--font-d);font-size:2rem;letter-spacing:0.04em;color:var(--text);margin-bottom:1rem;}
.api-endpoint{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);padding:1.3rem;margin-bottom:1rem;transition:all 0.2s;}
.api-endpoint:hover{border-color:var(--border-h);transform:translateY(-1px);}
.api-endpoint-top{display:flex;align-items:center;gap:0.6rem;margin-bottom:0.7rem;flex-wrap:wrap;}
.api-method{font-family:var(--font-m);font-size:0.62rem;letter-spacing:0.14em;text-transform:uppercase;padding:0.3rem 0.7rem;border-radius:6px;font-weight:700;color:#fff;}
.api-method.get{background:#1a5fe0;}
.api-method.post{background:#11804f;}
.api-method.delete{background:#b91c1c;}
.api-path{font-family:var(--font-m);font-size:1rem;color:var(--text);font-weight:700;}
.api-desc{font-size:0.92rem;color:var(--text-2);line-height:1.55;margin-bottom:0.7rem;}
.api-auth{font-family:var(--font-m);font-size:0.6rem;letter-spacing:0.1em;color:var(--accent);background:rgba(255,96,151,0.06);padding:0.18rem 0.55rem;border-radius:6px;border:1px solid var(--border);display:inline-block;margin-bottom:0.7rem;}
.api-code{background:#04060c;border:1px solid var(--border);border-radius:var(--r-md);padding:1rem;font-family:var(--font-m);font-size:0.82rem;color:var(--text);overflow-x:auto;line-height:1.55;}
.api-code .k{color:var(--accent);}
.api-code .cmt{color:var(--text-3);font-style:italic;}
.api-code .aqua{color:var(--storm);}
.api-code .coral{color:var(--gold);}
.api-code .mint{color:var(--ok);}

/* HERO + LOGO + nav for api/admin */
.hero{padding:5rem 0 3rem;position:relative;max-width:1380px;margin:0 auto;padding-left:5vw;padding-right:5vw;}
.hero h1{font-family:var(--font-d);font-size:clamp(2.4rem,5vw,4rem);letter-spacing:0.04em;line-height:1;color:var(--text);margin-bottom:1rem;}
.hero h1 .grad{background:linear-gradient(135deg,var(--accent),var(--storm));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.hero .lead,.lead{font-size:1.05rem;color:var(--text-2);line-height:1.7;max-width:680px;}
.hero-pill,.badge-glow{display:inline-flex;align-items:center;gap:0.55rem;font-family:var(--font-m);font-size:0.62rem;letter-spacing:0.18em;text-transform:uppercase;padding:0.4rem 1rem;border-radius:999px;border:1px solid var(--border);color:var(--accent);background:rgba(255,96,151,0.06);margin-bottom:1.3rem;}
.hero-pill .dot,.badge-dot{width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent);}
.hero-side{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:2rem;}
.hero-side-row{display:flex;flex-direction:column;gap:0.4rem;padding:0.85rem 1rem;background:rgba(255,96,151,0.04);border:1px solid var(--border);border-radius:var(--r-md);}
@media(max-width:780px){.hero-side{grid-template-columns:1fr;}}

#main-header{position:sticky;top:0;left:0;right:0;z-index:1000;background:rgba(4,5,10,0.92);border-bottom:1px solid var(--border);backdrop-filter:blur(20px);}
.navbar{max-width:1380px;margin:0 auto;padding:1rem 5vw;display:flex;align-items:center;gap:1.5rem;}
.logo{display:flex;align-items:center;gap:0.55rem;flex-shrink:0;}
.logo .icon{display:inline-block;width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--accent),var(--purple));box-shadow:0 6px 18px rgba(255,96,151,0.3);}
.logo .brand-text{display:flex;flex-direction:column;line-height:1.1;}
.text-grad{background:linear-gradient(135deg,var(--accent),var(--storm));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-family:var(--font-d);font-size:1.3rem;letter-spacing:0.06em;}
.sub-badge{display:block;font-family:var(--font-m);font-size:0.5rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--text-3);margin-top:0.1rem;}
.btn-glow{background:linear-gradient(135deg,var(--accent),var(--accent-b));color:#fff !important;font-family:var(--font-m);font-size:0.65rem;letter-spacing:0.14em;text-transform:uppercase;padding:0.55rem 1.1rem;border-radius:var(--r-sm);border:1px solid var(--accent);box-shadow:0 8px 28px rgba(255,96,151,0.3);transition:transform 0.2s;}
.btn-glow:hover{transform:translateY(-2px);}

#sbar{position:fixed;top:0;left:0;height:2px;width:0;background:linear-gradient(90deg,var(--accent-b),var(--accent),var(--storm));z-index:9999;box-shadow:0 0 10px var(--accent);transition:width 0.1s linear;}

/* FOOTER */
.global-foot{margin-top:5rem;padding:2rem 5vw;border-top:1px solid var(--border);}
.foot-content{max-width:1380px;margin:0 auto;display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;color:var(--text-3);font-family:var(--font-m);font-size:0.65rem;letter-spacing:0.1em;}

/* MOBILE menu btn */
.mobile-menu-btn{display:none;font-size:1.5rem;color:var(--accent);background:rgba(255,96,151,0.1);border:1px solid var(--border);border-radius:50%;width:42px;height:42px;cursor:pointer;}
@media(max-width:760px){.mobile-menu-btn{display:flex;align-items:center;justify-content:center;}.navbar .nav-links{display:none;}}
