/* ═══════════════════════════════════════════════════════
   EXPERIENCE LAB — Full-Screen Demo Player
   Premium immersive demo experience
═══════════════════════════════════════════════════════ */

/* ═══ PLAYER OVERLAY ═══ */
#eld-player{position:fixed;inset:0;z-index:9000;background:rgba(0,0,5,.95);backdrop-filter:blur(20px);display:flex;flex-direction:column;opacity:0;visibility:hidden;transition:opacity .4s,visibility .4s}
#eld-player.open{opacity:1;visibility:visible}
.eld-player-header{display:flex;align-items:center;justify-content:space-between;padding:.8rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.06);background:rgba(0,0,10,.8);flex-shrink:0;z-index:2}
.eld-player-info{display:flex;align-items:center;gap:1rem}
.eld-player-cat{font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(0,212,255,.6);background:rgba(0,212,255,.08);padding:.2rem .6rem;border-radius:4px;font-weight:600}
.eld-player-name{font-family:'Space Grotesk',sans-serif;font-size:1rem;font-weight:700;color:#fff}
.eld-player-controls{display:flex;align-items:center;gap:.6rem}
.eld-ctrl-replay{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:#fff;width:32px;height:32px;border-radius:6px;font-size:1rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}
.eld-ctrl-replay:hover{background:rgba(0,212,255,.1);border-color:rgba(0,212,255,.3)}
.eld-ctrl-add{background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.25);color:#22C55E;padding:.4rem 1rem;border-radius:6px;font-size:.72rem;font-weight:600;cursor:pointer;transition:all .2s}
.eld-ctrl-add:hover{background:rgba(34,197,94,.2);border-color:#22C55E}
.eld-ctrl-close{background:rgba(255,60,60,.08);border:1px solid rgba(255,60,60,.2);color:#ff6b6b;width:32px;height:32px;border-radius:6px;font-size:1rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}
.eld-ctrl-close:hover{background:rgba(255,60,60,.2)}
.eld-player-viewport{flex:1;overflow:hidden;position:relative}

/* ═══ DEMO INTERNAL STYLES ═══ */
.eld-hero{min-height:100%;display:flex;align-items:center;justify-content:center;padding:60px 40px;gap:3rem;flex-wrap:wrap}
.eld-hero-content{max-width:500px}
.eld-hero-content h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(2rem,5vw,3.5rem);font-weight:800;line-height:1.1;margin-bottom:1rem;letter-spacing:-.03em}
.eld-hero-content p{color:rgba(255,255,255,.5);line-height:1.9;margin-bottom:1.5rem;font-size:.95rem}
.eld-hero-image{flex:1;min-width:300px;max-width:500px}
.eld-section{min-height:100%}
.eld-grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.2rem}
.eld-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:14px;overflow:hidden;transition:all .3s}
.eld-card:hover{border-color:rgba(0,212,255,.25);transform:translateY(-4px)}
.eld-card h3{font-family:'Space Grotesk',sans-serif;font-size:1rem;font-weight:700}
.eld-card p{color:rgba(255,255,255,.4);font-size:.82rem;margin-top:.3rem;line-height:1.6}
.eld-btn{display:inline-flex;align-items:center;gap:.4rem;background:#00D4FF;color:#000;border:none;padding:.7rem 1.6rem;border-radius:6px;font-weight:700;font-size:.85rem;cursor:pointer;font-family:'Space Grotesk',sans-serif;transition:box-shadow .3s,transform .2s}
.eld-btn:hover{box-shadow:0 0 30px rgba(0,212,255,.4);transform:translateY(-2px)}
.eld-btn-ghost{display:inline-flex;align-items:center;background:transparent;border:1px solid rgba(255,255,255,.2);color:#fff;padding:.7rem 1.6rem;border-radius:6px;font-weight:500;font-size:.85rem;cursor:pointer;font-family:'Space Grotesk',sans-serif;transition:all .2s}
.eld-btn-ghost:hover{border-color:rgba(0,212,255,.3);background:rgba(0,212,255,.05)}

/* Typewriter */
.eld-cursor{color:#00D4FF;font-weight:100}
@keyframes eldBlink{0%,100%{opacity:1}50%{opacity:0}}

/* Marquee */
.eld-marquee-wrap{overflow:hidden;position:relative}
.eld-marquee-track{display:flex;gap:1.5rem;animation:eldMarquee 15s linear infinite;width:max-content;font-family:'Space Grotesk',sans-serif;font-size:1.8rem;font-weight:800;color:rgba(255,255,255,.08);letter-spacing:.05em}
.eld-marquee-track span{white-space:nowrap}
.eld-marquee-reverse .eld-marquee-track{animation-direction:reverse;color:rgba(0,212,255,.08)}
@keyframes eldMarquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* Custom Cursor */
.eld-custom-cursor{position:absolute;width:8px;height:8px;border-radius:50%;background:#00D4FF;pointer-events:none;z-index:99;transform:translate(-50%,-50%);mix-blend-mode:screen}
.eld-custom-ring{position:absolute;width:36px;height:36px;border-radius:50%;border:1.5px solid rgba(0,212,255,.4);pointer-events:none;z-index:98;transform:translate(-50%,-50%);transition:width .2s,height .2s}

/* Magnetic Buttons */
.eld-magnetic-btn{background:#00D4FF;color:#000;border:none;padding:.9rem 2rem;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;font-family:'Space Grotesk',sans-serif;transition:transform .1s,box-shadow .3s}
.eld-magnetic-btn:hover{box-shadow:0 0 40px rgba(0,212,255,.4)}
.eld-mag-outline{background:transparent;border:2px solid rgba(255,255,255,.2);color:#fff}
.eld-mag-outline:hover{border-color:#00D4FF;box-shadow:0 0 30px rgba(0,212,255,.2)}
.eld-mag-circle{width:60px;height:60px;border-radius:50%;padding:0;font-size:1.5rem;display:flex;align-items:center;justify-content:center}

/* 3D Tilt Cards */
.eld-tilt-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:1.2rem;transition:transform .15s ease,box-shadow .3s;cursor:pointer;will-change:transform}
.eld-tilt-card:hover{box-shadow:0 20px 60px rgba(0,0,0,.4)}
.eld-tilt-card h3{font-family:'Space Grotesk',sans-serif;font-weight:700}

/* Sticky Nav */
.eld-sticky-nav{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1.2rem 2rem;transition:all .3s;background:transparent}
.eld-sticky-nav.stuck{background:rgba(5,5,16,.9);backdrop-filter:blur(16px);padding:.8rem 2rem;border-bottom:1px solid rgba(255,255,255,.06)}
.eld-nav-logo{font-family:'Space Grotesk',sans-serif;font-weight:800;font-size:1.1rem}
.eld-nav-links{display:flex;gap:1.5rem}
.eld-nav-links a{color:rgba(255,255,255,.5);font-size:.8rem;cursor:pointer;transition:color .2s}
.eld-nav-links a:hover{color:#fff}

/* Glow Cards */
.eld-glow-card{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:2rem;position:relative;overflow:hidden;transition:border-color .3s,transform .3s;cursor:pointer}
.eld-glow-card:hover{border-color:rgba(0,212,255,.3);transform:translateY(-4px)}
.eld-glow-card-glow{position:absolute;inset:0;opacity:0;transition:opacity .3s;background:radial-gradient(circle 150px at var(--glow-x,50%) var(--glow-y,50%),rgba(0,212,255,.12),transparent)}
.eld-glow-card:hover .eld-glow-card-glow{opacity:1}
.eld-glow-card h3{font-family:'Space Grotesk',sans-serif;font-size:1rem;font-weight:700;margin:.8rem 0 .4rem;position:relative}
.eld-glow-card p{color:rgba(255,255,255,.4);font-size:.82rem;line-height:1.7;position:relative}

/* Glass Cards */
.eld-glass-card{background:rgba(255,255,255,.06);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:2rem;transition:all .3s;text-align:center}
.eld-glass-card:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2);transform:translateY(-4px)}
.eld-glass-card h3{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:1rem;margin-bottom:.3rem}
.eld-glass-card ul li{padding:.3rem 0;color:rgba(255,255,255,.6);font-size:.85rem}

/* Loader */
.eld-loader-bar{height:100%;width:0;background:linear-gradient(90deg,#00D4FF,#7B2FFF);border-radius:2px;transition:width .1s}

/* Masonry */
.eld-masonry{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;grid-auto-rows:180px}
.eld-masonry-item{border-radius:12px;overflow:hidden;position:relative;cursor:pointer}
.eld-masonry-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.eld-masonry-item:hover img{transform:scale(1.05)}
.eld-masonry-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.7),transparent);display:flex;align-items:flex-end;padding:1rem;opacity:0;transition:opacity .3s}
.eld-masonry-item:hover .eld-masonry-overlay{opacity:1}
.eld-masonry-overlay h3{font-family:'Space Grotesk',sans-serif;font-size:.9rem}
.eld-m-tall{grid-row:span 2}
.eld-m-wide{grid-column:span 2}

/* Floating Labels */
.eld-float-group{position:relative;margin-bottom:1.2rem}
.eld-float-input{width:100%;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:.9rem 1rem;color:#fff;font-size:.9rem;outline:none;transition:border-color .2s,box-shadow .2s;font-family:'Inter',sans-serif}
.eld-float-input:focus{border-color:#00D4FF;box-shadow:0 0 0 3px rgba(0,212,255,.08)}
.eld-float-textarea{min-height:100px;resize:vertical}
.eld-float-label{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:rgba(255,255,255,.3);font-size:.85rem;pointer-events:none;transition:all .2s}
.eld-float-textarea~.eld-float-label{top:1rem;transform:none}
.eld-float-input:focus~.eld-float-label,.eld-float-input:not(:placeholder-shown)~.eld-float-label{top:-.5rem;transform:none;font-size:.65rem;color:#00D4FF;background:rgba(5,5,16,1);padding:0 .4rem}

/* Scroll container */
.eld-scroll-container{-webkit-overflow-scrolling:touch}
.eld-scroll-container::-webkit-scrollbar{width:3px}
.eld-scroll-container::-webkit-scrollbar-thumb{background:rgba(0,212,255,.3);border-radius:2px}

/* ═══ RESPONSIVE ═══ */
@media(max-width:768px){
  .eld-hero{flex-direction:column;padding:40px 20px}
  .eld-grid-3{grid-template-columns:1fr}
  .eld-masonry{grid-template-columns:1fr 1fr}
  .eld-m-tall{grid-row:span 1}
  .eld-m-wide{grid-column:span 1}
  .eld-player-header{flex-direction:column;gap:.5rem;align-items:flex-start}
  .eld-player-controls{width:100%;justify-content:flex-end}
  .eld-nav-links{display:none}
}
