/* ═════════════  Landing v2: depth + bento  ═════════════ */
.stage{position:relative}
.float{position:absolute;z-index:3;display:flex;align-items:center;gap:10px;padding:10px 14px 10px 10px;border-radius:12px;
  background:#141518f2;border:1px solid var(--border3);box-shadow:0 24px 50px -16px #000,0 0 0 1px #00000080;backdrop-filter:blur(8px);
  font-size:13px;white-space:nowrap;animation:bob 6s ease-in-out infinite;will-change:transform;transition:translate .25s ease-out}
.float .fi{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;flex-shrink:0}
.float b{display:block;font-weight:600;font-size:13px}.float small{color:var(--text3);font-size:12px}
.float.f1{top:-26px;left:-84px}.float.f1 .fi{background:#f8717120;color:#f87171}
.float.f2{top:34%;right:-58px;animation-delay:-2s}.float.f2 .fi{background:var(--accent-soft);color:var(--accent)}
.float.f3{bottom:118px;left:-104px;animation-delay:-4s}.float.f3 .fi{background:#facc1520;color:#facc15}
.float.f4{bottom:-34px;right:-26px;animation-delay:-1s}.float.f4 .fi{background:#4ade8020;color:#4ade80}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.meet{display:inline-flex;align-items:center;gap:10px;font:500 13px Geist,sans-serif;color:var(--text2)}
.meet .nv{display:grid;place-items:center;width:22px;height:22px;border-radius:6px;background:var(--accent);color:var(--accent-ink);font-weight:800;font-size:12px}
.meet span.t4{font-family:"Geist Mono",monospace;font-size:11.5px}

/* bento */
.bento{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:minmax(250px,auto);gap:14px;margin-bottom:56px}
.bt-tile{position:relative;overflow:hidden;border-radius:18px;background:var(--panel);border:1px solid var(--border);padding:24px;display:flex;flex-direction:column;transition:border-color .25s}
.bt-tile:hover{border-color:var(--border3)}
.bt-tile h3{font-size:18px;letter-spacing:-.02em}.bt-tile p{color:var(--text3);margin-top:6px;max-width:420px}
.bt-tile .eb{font:500 11px "Geist Mono",monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:10px;display:flex;align-items:center;gap:6px}
.bt-tile .vis{margin-top:auto;padding-top:22px}
.span3{grid-column:span 3}.span2{grid-column:span 2}.span4{grid-column:span 4}
/* mini UIs */
.mini-row{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:10px;background:var(--raised);border:1px solid var(--border);font-size:13px;margin-top:6px}
.mini-row .pr{width:7px;height:7px;border-radius:50%}.mini-row .tm{margin-left:auto;font:500 11.5px "Geist Mono",monospace;padding:1px 7px;border-radius:5px}
.mini-row .tm.ok{color:#86efac;background:#4ade8014}.mini-row .tm.bad{color:#fca5a5;background:#f8717114}
.mini-case{border-left:4px solid #faa61a;background:#2b2d31;border-radius:6px;padding:12px 14px;font:14px 'gg sans',Geist,sans-serif;color:#dbdee1}
.mini-case b{color:#f2f3f5}.mini-case .ld{margin-top:8px;font-size:12.5px;color:#b5bac1;display:flex;align-items:center;gap:6px}
.slots{display:flex;gap:8px;justify-content:center}
.slots span{width:62px;height:72px;border-radius:12px;background:var(--raised);border:1px solid var(--border2);display:grid;place-items:center;font-size:30px;overflow:hidden}
.slots span i{display:block;font-style:normal;animation:spinreel 2.4s cubic-bezier(.2,.8,.2,1) infinite}
.slots span:nth-child(2) i{animation-delay:.15s}.slots span:nth-child(3) i{animation-delay:.3s}
@keyframes spinreel{0%{transform:translateY(-140%);filter:blur(2px)}35%{transform:translateY(0);filter:none}85%{transform:translateY(0)}100%{transform:translateY(140%);filter:blur(2px)}}
.lvl{display:flex;align-items:center;gap:12px}.lvl img{width:44px;height:44px;border-radius:50%}
.lvl .bar{flex:1;height:10px;border-radius:5px;background:var(--raised);overflow:hidden;border:1px solid var(--border)}
.lvl .bar i{display:block;height:100%;width:72%;background:var(--accent);border-radius:5px;animation:fill 2.5s ease-out infinite alternate}
.lvl .num{font:600 26px Geist;letter-spacing:-.03em}
.mini-pick{display:flex;gap:8px;flex-wrap:wrap}.mini-pick span{height:30px;padding:0 12px;border-radius:8px;display:inline-flex;align-items:center;gap:6px;font-size:13px;background:var(--raised);border:1px solid var(--border2);color:var(--text2)}
.mini-pick span.on{border-color:var(--accent-line);background:var(--accent-soft);color:var(--text)}
.mini-pick span.on::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--accent)}
.idswap{display:flex;align-items:center;gap:14px}
.idswap .chip{display:flex;align-items:center;gap:10px;padding:8px 14px 8px 8px;border-radius:12px;background:#232428;border:1px solid #ffffff12;font:600 14px 'gg sans',Geist,sans-serif;color:#f2f3f5}
.idswap .chip img{width:34px;height:34px;border-radius:50%}
.idswap svg{color:var(--text4)}

@media (max-width:980px){.float{display:none}.bento{grid-template-columns:1fr 1fr}.span3,.span2,.span4{grid-column:span 2}}
@media (max-width:620px){.bento{grid-template-columns:1fr}.span3,.span2,.span4{grid-column:span 1}}
@media (prefers-reduced-motion:reduce){.float,.slots span i,.lvl .bar i{animation:none}}
