/* ============================================================
   Starlight Rentals — public storefront (client side)
   Dark cinematic surface on the Nova brand tokens (style.css :root).
   ============================================================ */
body.store{
  background:var(--sl-ink);
  color:#E8ECF2;
  --st-panel:#101319;
  --st-panel-2:#161A22;
  --st-line:rgba(255,255,255,.09);
  --st-line-2:rgba(255,255,255,.14);
  --st-dim:#9AA6B8;
  --st-faint:#6C7686;
}
body.store a{color:inherit}
.store h1,.store h2,.store h3{color:#fff;font-family:var(--font-accent)}

/* ---------- Header ---------- */
.st-head{position:sticky;top:0;z-index:40;background:rgba(8,10,14,.82);
  backdrop-filter:blur(14px);border-bottom:1px solid var(--st-line)}
.st-head-in{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:22px;
  padding:14px 24px}
.st-brand{display:flex;align-items:center;gap:10px}
.st-logo{flex:none;display:block;border-radius:9px;filter:drop-shadow(0 0 16px rgba(101,203,249,.45))}
.st-word{font-family:var(--font-accent);font-weight:600;font-size:1.12rem;line-height:1;color:#fff}
.st-word span{color:var(--sl-cyan);font-weight:500}
.st-nav{display:flex;gap:6px;margin-left:8px}
.st-nav a{padding:8px 14px;border-radius:var(--radius-pill);font-size:.9rem;font-weight:500;
  color:var(--st-dim);transition:color var(--dur-fast),background var(--dur-fast)}
.st-nav a:hover{color:#fff}
.st-nav a.on{color:#fff;background:rgba(255,255,255,.07)}
.st-actions{margin-left:auto;display:flex;align-items:center;gap:16px}
.st-cart{position:relative;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;
  border:1px solid var(--st-line-2);color:#fff;font-size:1.1rem;transition:border-color var(--dur-fast)}
.st-cart:hover{border-color:var(--sl-cyan)}
.st-cart-badge{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 5px;
  border-radius:10px;background:var(--gradient-aurora);color:var(--sl-nocturno);
  font-size:.68rem;font-weight:700;display:grid;place-items:center;font-family:var(--font-display)}
.st-lang{display:flex;align-items:center;gap:5px;font-size:.78rem;color:var(--st-faint);font-weight:600}
.st-lang a{color:var(--st-faint);padding:2px}
.st-lang a.on{color:var(--sl-cyan)}

/* ---------- Layout ---------- */
.st-main{min-height:60vh}
.st-page{max-width:1200px;margin:0 auto;padding:42px 24px 72px}
.st-sec{max-width:1200px;margin:0 auto;padding:12px 24px 44px}
.st-page-head{margin-bottom:26px}
.st-eyebrow{display:inline-block;font-family:var(--font-display);text-transform:uppercase;
  letter-spacing:var(--tracking-caps);font-size:.68rem;color:var(--sl-cyan);font-weight:600;margin-bottom:12px}
.st-page-head h1{font-size:2.4rem;letter-spacing:-.02em}
.st-page-head p{color:var(--st-dim);margin:10px 0 0;max-width:60ch}
.st-sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.st-sec-head h2{font-size:1.6rem}
.st-sec-head p{color:var(--st-dim);margin:0;flex:1;min-width:200px}
.st-seeall{color:var(--sl-cyan);font-weight:600;font-size:.9rem}

/* ---------- Seals / watermarks ---------- */
.st-hero-seal{position:absolute;top:-90px;right:-90px;width:520px;max-width:70vw;
  opacity:.06;pointer-events:none;user-select:none;z-index:0}
.st-foot-seal{position:absolute;bottom:-40px;right:24px;width:200px;opacity:.045;
  pointer-events:none;user-select:none}
.gv.is-ph img{object-fit:cover}

/* ---------- Hero ---------- */
.st-hero{position:relative;overflow:hidden;
  background:radial-gradient(1200px 560px at 72% -20%,rgba(101,203,249,.20),transparent 62%),
             radial-gradient(900px 500px at 8% 0%,rgba(79,156,245,.14),transparent 60%),
             var(--gradient-cosmos);
  border-bottom:1px solid var(--st-line)}
.st-hero-in{max-width:1200px;margin:0 auto;padding:96px 24px 84px;position:relative;z-index:1}
.st-hero-title{font-size:clamp(2.4rem,6vw,4.2rem);line-height:1.02;letter-spacing:-.03em;max-width:16ch}
.st-hero-sub{color:#C6D0DE;font-size:1.12rem;max-width:52ch;margin:22px 0 0;line-height:1.6}
.st-hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.st-hero-stat{margin-top:26px;color:var(--st-dim);font-size:.9rem}
.st-hero-stat b{color:#fff;font-family:var(--font-accent);font-size:1.05rem}
.btn-ghost-dark{background:transparent;border-color:var(--st-line-2);color:#fff}
.btn-ghost-dark:hover{border-color:var(--sl-cyan);color:#fff;background:rgba(255,255,255,.04)}

/* ---------- Category grid ---------- */
.st-cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.st-cat{display:flex;flex-direction:column;gap:6px;padding:20px;border-radius:var(--radius-lg);
  background:var(--st-panel);border:1px solid var(--st-line);transition:border-color var(--dur-fast),transform var(--dur-fast),background var(--dur-fast)}
.st-cat:hover{border-color:var(--sl-cyan);transform:translateY(-2px);background:var(--st-panel-2)}
.st-cat-emoji{font-size:1.7rem}
.st-cat-label{font-family:var(--font-accent);font-weight:600;color:#fff}
.st-cat-n{font-size:.78rem;color:var(--st-faint)}

/* ---------- Kit cards (home) ---------- */
.st-kit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.st-kit{display:flex;flex-direction:column;gap:10px;padding:24px;border-radius:var(--radius-lg);
  background:linear-gradient(160deg,var(--st-panel-2),var(--st-panel));border:1px solid var(--st-line);
  transition:border-color var(--dur-fast),transform var(--dur-fast)}
.st-kit:hover{border-color:var(--sl-cyan);transform:translateY(-2px)}
.st-kit-tier{font-family:var(--font-accent);font-weight:700;font-size:1.5rem;color:#fff;
  background:var(--gradient-aurora);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.st-kit-desc{color:var(--st-dim);font-size:.92rem;margin:0;flex:1}
.st-kit-n{font-size:.78rem;color:var(--sl-cyan);font-weight:600;font-family:var(--font-display)}

/* ---------- Gear cards ---------- */
.gcard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}
.gcard{display:flex;flex-direction:column;border-radius:var(--radius-lg);overflow:hidden;
  background:var(--st-panel);border:1px solid var(--st-line);
  transition:border-color var(--dur-fast),transform var(--dur-fast),box-shadow var(--dur-fast)}
.gcard:hover{border-color:var(--sl-cyan);transform:translateY(-3px);box-shadow:0 18px 40px rgba(0,0,0,.5)}
.gcard-body{padding:16px 16px 18px;display:flex;flex-direction:column;gap:7px}
.gcard-cat{font-size:.72rem;color:var(--st-faint);font-weight:600;text-transform:uppercase;letter-spacing:.06em}
.gcard-name{font-size:1.02rem;font-weight:600;line-height:1.2;color:#fff;min-height:2.4em}
.gcard-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:2px}
.gcard-avail{display:inline-flex;align-items:center;gap:6px;font-size:.74rem;font-weight:600;font-family:var(--font-display)}
.gcard-avail::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.gcard-avail.ok{color:#39D69B}
.gcard-avail.no{color:var(--st-faint)}
.gcard-go{font-size:.78rem;color:var(--sl-cyan);font-weight:600;opacity:0;transition:opacity var(--dur-fast)}
.gcard:hover .gcard-go{opacity:1}

/* ---------- Gear visual (photo or placeholder) ---------- */
.gv{position:relative;aspect-ratio:4/3;display:grid;place-items:center;overflow:hidden;
  background:linear-gradient(150deg,#1B2130,#0D1017)}
.gv img{width:100%;height:100%;object-fit:cover}
.gv-emoji{font-size:2.8rem;filter:drop-shadow(0 6px 18px rgba(0,0,0,.5))}
.gv-id{position:absolute;bottom:8px;right:10px;font-family:var(--font-display);font-weight:600;
  font-size:.64rem;letter-spacing:.08em;color:rgba(255,255,255,.32)}
.gv-lg{aspect-ratio:1/1;border-radius:var(--radius-xl);border:1px solid var(--st-line)}
.gv-lg .gv-emoji{font-size:5rem}
/* tinte por categoría */
.gv-camara{background:linear-gradient(150deg,#12283f,#0b1220)}
.gv-lente{background:linear-gradient(150deg,#0f2f38,#0b1220)}
.gv-luz{background:linear-gradient(150deg,#3a2f10,#0b1220)}
.gv-audio{background:linear-gradient(150deg,#2c1440,#0b1220)}
.gv-grip{background:linear-gradient(150deg,#1c2430,#0b1220)}
.gv-drone{background:linear-gradient(150deg,#10303a,#0b1220)}
.gv-produccion{background:linear-gradient(150deg,#14304a,#0b1220)}
.gv-media{background:linear-gradient(150deg,#102a2a,#0b1220)}
.gv-bateria{background:linear-gradient(150deg,#123a2a,#0b1220)}

/* ---------- Search + chips ---------- */
.st-search{margin-bottom:18px}
.st-search input{max-width:420px;background:var(--st-panel);border:1px solid var(--st-line-2);color:#fff}
.st-search input::placeholder{color:var(--st-faint)}
.st-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}
.store .chip{background:var(--st-panel);border-color:var(--st-line-2);color:var(--st-dim)}
.store .chip:hover{border-color:var(--sl-cyan);color:#fff}
.store .chip.active{background:#fff;border-color:#fff;color:var(--sl-nocturno)}
.st-empty{padding:56px 20px;text-align:center;color:var(--st-dim);border:1px dashed var(--st-line-2);border-radius:var(--radius-lg)}

/* ---------- Item page ---------- */
.st-back{color:var(--st-dim);font-size:.88rem;font-weight:600}
.st-back:hover{color:#fff}
.st-item-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:22px;align-items:start}
.st-item-info h1{font-size:2.1rem;margin-top:6px}
.st-item-notes{color:var(--st-dim);margin:16px 0 0;line-height:1.6}
.st-item-kv{display:grid;grid-template-columns:auto 1fr;gap:8px 20px;margin:22px 0 26px;font-size:.92rem}
.st-item-kv dt{color:var(--st-faint)}
.st-item-kv dd{margin:0;color:#fff;font-family:var(--font-display);font-weight:600}
.st-added{display:inline-flex;align-items:center;gap:8px;color:#39D69B;font-weight:600;margin-bottom:12px}

/* ---------- Kits (full page) ---------- */
.st-kits-full{display:flex;flex-direction:column;gap:18px}
.st-kitcard{padding:26px;border-radius:var(--radius-xl);background:var(--st-panel);border:1px solid var(--st-line)}
.st-kitcard-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;flex-wrap:wrap}
.st-kit-includes{margin-bottom:20px}
.st-kit-inc-label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--st-faint);font-weight:600;margin-bottom:10px;font-family:var(--font-display)}
.st-kit-items{display:flex;flex-wrap:wrap;gap:8px}
.st-kit-item{padding:7px 12px;border-radius:var(--radius-pill);background:var(--st-panel-2);border:1px solid var(--st-line);font-size:.82rem;color:#D3DBE6;transition:border-color var(--dur-fast)}
.st-kit-item:hover{border-color:var(--sl-cyan);color:#fff}

/* ---------- How it works ---------- */
.st-how{max-width:1200px;margin:0 auto;padding:24px 24px 80px}
.st-how-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.st-step{padding:24px;border-radius:var(--radius-lg);background:var(--st-panel);border:1px solid var(--st-line)}
.st-step-n{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;
  background:var(--gradient-aurora);color:var(--sl-nocturno);font-weight:700;font-family:var(--font-accent);margin-bottom:14px}
.st-step p{margin:0;color:#C6D0DE;line-height:1.55}

/* ---------- Cart / request ---------- */
.st-cart-grid{display:grid;grid-template-columns:1.4fr .9fr;gap:28px;align-items:start;margin-top:24px}
.st-panel{background:var(--st-panel);border:1px solid var(--st-line);border-radius:var(--radius-lg);padding:22px}
.st-cart-item{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--st-line)}
.st-cart-item:last-child{border-bottom:none}
.st-cart-item .gv{width:64px;height:52px;flex:none;border-radius:10px;aspect-ratio:auto}
.st-cart-item .gv-emoji{font-size:1.5rem}
.st-cart-item .ci-meta{flex:1;min-width:0}
.st-cart-item .ci-name{font-weight:600;color:#fff;font-size:.95rem}
.st-cart-item .ci-id{font-size:.76rem;color:var(--st-faint);font-family:var(--font-display)}
.st-rm{color:var(--st-faint);font-size:.82rem;font-weight:600;background:none;border:none;cursor:pointer;padding:6px}
.st-rm:hover{color:var(--sl-danger)}
.store label.fld>span{color:var(--st-dim)}
.store input[type=text],.store input[type=date],.store input[type=email],
.store input[type=password],.store input[type=search],.store textarea,.store select{
  background:var(--st-panel-2);border-color:var(--st-line-2);color:#fff}
.store input::placeholder,.store textarea::placeholder{color:var(--st-faint)}

/* ---------- Waiver ---------- */
.st-waiver{max-width:720px;margin:0 auto}
.st-waiver-box{background:var(--st-panel);border:1px solid var(--st-line-2);border-radius:var(--radius-lg);
  padding:24px;color:#C6D0DE;line-height:1.7;font-size:.96rem;margin:18px 0 22px}
.st-check{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px;color:#E8ECF2;font-size:.94rem;cursor:pointer}
.st-check input{width:20px;height:20px;flex:none;margin-top:1px;accent-color:var(--sl-cyan)}
.st-sign input{font-family:var(--font-accent);font-size:1.3rem;letter-spacing:.01em}

/* ---------- Thanks ---------- */
.st-thanks{max-width:560px;margin:0 auto;text-align:center;padding:64px 24px}
.st-thanks-mark{width:76px;height:76px;border-radius:50%;margin:0 auto 24px;background:var(--gradient-aurora);
  display:grid;place-items:center;font-size:2.2rem;color:var(--sl-nocturno);box-shadow:0 0 44px rgba(101,203,249,.5)}
.st-ref{display:inline-block;margin:18px 0 26px;padding:10px 20px;border-radius:var(--radius-pill);
  background:var(--st-panel);border:1px solid var(--st-line-2);font-family:var(--font-display)}
.st-ref b{color:var(--sl-cyan);font-size:1.1rem}

/* ---------- Auth (client) — two-panel ---------- */
.st-authwrap{max-width:1000px;margin:0 auto;padding:48px 24px 72px;
  display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch}
.st-auth-brand{position:relative;overflow:hidden;border-radius:var(--radius-xl) 0 0 var(--radius-xl);
  padding:44px 40px;display:flex;align-items:center;border:1px solid var(--st-line);border-right:none;
  background:radial-gradient(700px 400px at 20% -10%,rgba(101,203,249,.22),transparent 62%),
             linear-gradient(160deg,#12161f,#0a0d13)}
.st-auth-seal{position:absolute;bottom:-70px;right:-70px;width:320px;opacity:.06;pointer-events:none}
.st-auth-brand-in{position:relative;z-index:1}
.st-auth-pitch{font-family:var(--font-accent);font-size:1.5rem;line-height:1.25;color:#fff;margin:26px 0 24px;max-width:20ch}
.st-auth-benefits{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}
.st-auth-benefits li{position:relative;padding-left:28px;color:#C6D0DE;font-size:.94rem;line-height:1.45}
.st-auth-benefits li::before{content:"✓";position:absolute;left:0;top:0;width:19px;height:19px;
  border-radius:50%;background:var(--gradient-aurora);color:var(--sl-nocturno);font-size:.7rem;
  font-weight:700;display:grid;place-items:center}
.st-auth-form{background:var(--st-panel);border:1px solid var(--st-line);
  border-radius:0 var(--radius-xl) var(--radius-xl) 0;padding:44px 40px}
.st-auth-form h1{font-size:1.9rem}
.st-auth-form p.sub{color:var(--st-dim);margin:8px 0 26px}
.st-auth-alt{margin-top:22px;padding-top:20px;border-top:1px solid var(--st-line);
  display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:.9rem}
.st-auth-alt span{color:var(--st-faint)}
.st-auth-alt a{color:var(--sl-cyan);font-weight:600}
@media(max-width:760px){
  .st-authwrap{grid-template-columns:1fr;padding:24px 16px 56px}
  .st-auth-brand{display:none}
  .st-auth-form{border-radius:var(--radius-xl);padding:32px 24px}
}

/* ---------- Account ---------- */
.st-acc-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.st-req{display:block;padding:18px 20px;border-radius:var(--radius-lg);background:var(--st-panel);
  border:1px solid var(--st-line);margin-bottom:12px;transition:border-color var(--dur-fast)}
.st-req:hover{border-color:var(--st-line-2)}
.st-req-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:6px}
.st-req-title{font-weight:600;color:#fff}
.st-req-meta{color:var(--st-dim);font-size:.85rem}
.st-status{font-family:var(--font-display);font-weight:600;font-size:.72rem;padding:4px 11px;border-radius:var(--radius-pill);white-space:nowrap}
.st-status.pendiente{background:var(--sl-warning-soft);color:#a5771a}
.st-status.aprobada{background:var(--sl-info-soft);color:#1f6fd6}
.st-status.rechazada{background:var(--sl-danger-soft);color:#c0313f}
.st-status.entregada{background:rgba(57,214,155,.18);color:#39D69B}
.st-status.devuelta{background:var(--surface-sunken);color:var(--sl-slate)}

/* ---------- Footer ---------- */
.st-foot{border-top:1px solid var(--st-line);background:#07090C;margin-top:40px;position:relative;overflow:hidden}
.st-foot-in,.st-foot-legal{position:relative;z-index:1}
.st-foot-in{max-width:1200px;margin:0 auto;padding:44px 24px 24px;display:flex;
  justify-content:space-between;gap:24px;flex-wrap:wrap}
.st-tag{color:var(--st-dim);font-family:var(--font-accent);margin:12px 0 0;font-size:.95rem}
.st-foot-links{display:flex;flex-direction:column;gap:8px;align-items:flex-end}
.st-foot-links a{color:var(--st-dim);font-size:.9rem}
.st-foot-links a:hover{color:#fff}
.st-staff{color:var(--st-faint)!important;font-size:.8rem!important}
.st-foot-legal{max-width:1200px;margin:0 auto;padding:16px 24px 32px;color:var(--st-faint);font-size:.78rem;border-top:1px solid var(--st-line)}

/* ---------- Responsive ---------- */
@media(max-width:820px){
  .st-item-grid{grid-template-columns:1fr;gap:24px}
  .st-cart-grid{grid-template-columns:1fr}
  .st-nav{display:none}
  .st-head-in{gap:12px}
}
@media(max-width:520px){
  .st-hero-in{padding:64px 20px 56px}
  .st-page,.st-sec,.st-how{padding-left:16px;padding-right:16px}
  .st-foot-links{align-items:flex-start}
}
