/* lxvelabs.css — LxveLabs.com page components on top of biscuit-base.css */

/* hero */
.eyebrow{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:600;margin:0 0 14px;}
.hero .accent{color:var(--accent);}
.hero-stats{display:flex;gap:38px;justify-content:center;margin-top:34px;flex-wrap:wrap;}
.hero-stat{display:flex;flex-direction:column;align-items:center;}
.hero-stat b{font-size:1.9rem;font-weight:400;color:#fff;line-height:1;}
.hero-stat span{color:var(--dim);font-size:.82rem;margin-top:6px;}

/* capability strip */
.caps{max-width:1000px;margin:8px auto 0;padding:0 28px 10px;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.cap{display:flex;gap:11px;align-items:flex-start;border:1px solid var(--line);border-radius:8px;padding:15px 16px;background:var(--card);}
.cap svg{color:var(--accent);flex:none;margin-top:2px;}
.cap b{display:block;color:#fff;font-size:.92rem;font-weight:600;}
.cap small{color:var(--dim);font-size:.8rem;}

/* generic section head */
.section-head{max-width:760px;margin:0 auto 30px;text-align:center;}
.section-head h2{font-weight:400;font-size:1.9rem;color:#fff;margin:0 0 10px;letter-spacing:-.01em;}
.section-lead{color:var(--dim);margin:0;font-size:1.02rem;}
.alt{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}

/* flagship feature */
.feature{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center;}
.feature-badge{display:inline-block;font-size:.74rem;letter-spacing:.05em;color:var(--accent);border:1px solid rgba(163,113,247,.35);background:rgba(163,113,247,.08);border-radius:999px;padding:4px 12px;margin-bottom:16px;}
.feature h2{font-weight:400;font-size:2.2rem;color:#fff;margin:0 0 6px;}
.feature .cc-ver{color:var(--faint);font-size:.88rem;margin:0 0 16px;}
.feature p{color:var(--dim);margin:0 0 20px;}
.spec-strip{display:flex;gap:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;margin:0 0 22px;max-width:460px;}
.spec-strip>div{flex:1;padding:16px 12px;text-align:center;border-right:1px solid var(--line);}
.spec-strip>div:last-child{border-right:none;}
.spec-v{display:block;font-size:1.7rem;color:#fff;line-height:1;} .spec-k{display:block;color:var(--dim);font-size:.78rem;margin-top:6px;}
.cc-actions,.contact-links{display:flex;gap:12px;flex-wrap:wrap;}
.feature-photo img{width:100%;height:auto;border-radius:10px;border:1px solid var(--line);box-shadow:var(--shadow);}
.feature-photo figcaption{color:var(--faint);font-size:.82rem;text-align:center;margin-top:10px;}

/* what's new + tease */
.cc-extra{display:grid;grid-template-columns:1.5fr 1fr;gap:28px;margin-top:48px;align-items:start;}
.cc-whatsnew{border:1px solid var(--line);border-radius:10px;padding:26px 26px 22px;background:var(--card);}
.cc-whatsnew h3{font-weight:600;font-size:1.15rem;color:#fff;margin:12px 0 14px;}
.cc-whatsnew ul{margin:0;padding-left:20px;color:var(--dim);}
.cc-whatsnew li{margin-bottom:12px;font-size:.94rem;} .cc-whatsnew li strong{color:var(--text);font-weight:600;}
.cc-whatsnew code{background:var(--bg2);border:1px solid var(--line);border-radius:4px;padding:1px 5px;font-size:.85em;}
.tease-stack{display:flex;flex-direction:column;gap:18px;}
.tease-card{border:1px solid var(--line);border-radius:10px;padding:20px;background:var(--card);}
.tease-card h3{font-weight:600;font-size:1.02rem;color:#fff;margin:12px 0 6px;} .tease-card p{color:var(--dim);font-size:.9rem;margin:0;}
.status-badge{display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:3px 10px;border:1px solid;}
.status-badge.live{color:var(--live);border-color:rgba(57,255,20,.35);background:rgba(57,255,20,.08);}
.status-badge.soon{color:#d29922;border-color:rgba(210,153,34,.35);background:rgba(210,153,34,.08);}
.status-badge:not(.live):not(.soon){color:var(--accent);border-color:rgba(163,113,247,.35);background:rgba(163,113,247,.08);}
.p-link{display:inline-flex;align-items:center;gap:6px;color:var(--accent);font-size:.9rem;font-weight:600;margin-top:14px;}
.p-link svg{width:14px;height:14px;} .p-link:hover{text-decoration:underline;}

/* product grid (the 4 tools) */
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.p-card{border:1px solid var(--line);border-radius:10px;padding:22px 20px;background:var(--card);display:flex;flex-direction:column;transition:border-color .16s;}
.p-card:hover{border-color:var(--line2);}
.p-ico{width:40px;height:40px;border-radius:8px;background:rgba(163,113,247,.1);display:grid;place-items:center;margin-bottom:14px;}
.p-ico svg{width:22px;height:22px;color:var(--accent);}
.p-card-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:6px;}
.p-card-top h3{font-weight:600;font-size:1.02rem;color:#fff;margin:0;} .p-ver{color:var(--faint);font-size:.78rem;}
.p-card p{color:var(--dim);font-size:.88rem;margin:0;flex:1;}

/* hardware in-dev cards */
.hw-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:52px;}
.hardware-card{border:1px solid var(--line);border-radius:10px;padding:22px;background:var(--card);}
.hw-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.hw-ref{font-family:ui-monospace,monospace;font-size:.8rem;color:var(--faint);}
.card-cat{display:block;font-size:.74rem;letter-spacing:.05em;text-transform:uppercase;color:var(--accent);margin-bottom:6px;}
.hardware-card h3{font-weight:600;font-size:1.08rem;color:#fff;margin:0 0 8px;} .hardware-card p{color:var(--dim);font-size:.92rem;margin:0;}

/* board catalog (real photos) */
.board-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.board-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--card);display:flex;flex-direction:column;transition:border-color .16s;}
.board-card:hover{border-color:var(--line2);}
.board-photo{width:100%;aspect-ratio:4/3;object-fit:cover;background:#0a0a0f;border-bottom:1px solid var(--line);}
.board-card .in{padding:16px 18px;display:flex;flex-direction:column;flex:1;}
.board-card-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:6px;}
.board-name{font-weight:600;color:#fff;font-size:.98rem;} .board-tag{font-size:.74rem;color:var(--faint);}
.board-desc{color:var(--dim);font-size:.86rem;margin:0 0 12px;flex:1;}
.board-spec{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0 0 12px;}
.board-spec li{font-size:.72rem;color:var(--faint);border:1px solid var(--line);border-radius:4px;padding:2px 7px;}
.board-more{color:var(--accent);font-size:.86rem;font-weight:600;} .board-more:hover{text-decoration:underline;}
.diy-note,.pcbway-line{text-align:center;color:var(--dim);font-size:.92rem;margin:26px auto 0;max-width:64ch;}
.pcbway-line a,.diy-note a{color:var(--accent);}

/* about + explore */
.about-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:44px;align-items:start;}
.about-lead{font-size:1.5rem;font-weight:400;color:#fff;margin:0 0 16px;letter-spacing:-.01em;}
.about-body p{color:var(--dim);margin:0 0 14px;}
.about-card{border:1px solid var(--line);border-radius:10px;padding:24px;background:var(--card);display:grid;gap:6px;}
.seal{width:44px;height:44px;border-radius:8px;background:rgba(163,113,247,.12);color:var(--accent);display:grid;place-items:center;font-weight:700;margin-bottom:10px;}
.card-k{color:var(--faint);font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;margin-top:8px;} .card-v a{color:var(--text);} .card-v a:hover{color:var(--accent);}
.about-links{display:flex;flex-direction:column;gap:6px;margin-top:14px;} .about-links a{color:var(--accent);font-size:.9rem;}
.explore-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.explore-card{border:1px solid var(--line);border-radius:10px;padding:24px;background:var(--card);display:block;transition:border-color .16s;}
.explore-card:hover{border-color:var(--accent);}
.explore-card h3{font-weight:600;font-size:1.1rem;color:#fff;margin:12px 0 6px;} .explore-card p{color:var(--dim);font-size:.92rem;margin:0 0 12px;}
.explore-link{display:inline-flex;align-items:center;gap:6px;color:var(--accent);font-size:.9rem;font-weight:600;}

/* footer columns */
.footer-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;max-width:900px;margin:0 auto;text-align:left;}
.footer-col h2{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--faint);margin:0 0 10px;font-weight:600;}
.footer-col ul{list-style:none;padding:0;margin:0;} .footer-col li{margin-bottom:7px;} .footer-col a{color:var(--dim);font-size:.9rem;} .footer-col a:hover{color:var(--text);}
.foot-soon{font-size:.64rem;color:#d29922;border:1px solid rgba(210,153,34,.3);border-radius:3px;padding:0 4px;margin-left:5px;}
.footer-legal{margin:22px 0 6px;} .footer-legal a{color:var(--dim);} .footer-legal a:hover{color:var(--text);}
.footer-use,.footer-copy{color:var(--faint);font-size:.8rem;margin:4px 0;} .footer-copy a{color:var(--dim);}

@media(max-width:900px){
  .feature,.cc-extra,.about-grid{grid-template-columns:1fr;gap:28px;}
  .product-grid,.caps{grid-template-columns:1fr 1fr;} .hw-grid,.board-grid,.explore-grid,.footer-cols{grid-template-columns:1fr 1fr;}
}
@media(max-width:560px){.product-grid,.caps,.board-grid,.footer-cols{grid-template-columns:1fr;}}

/* ── showcase (poster grid · lightbox · how-grid · submit form) ─────────────── */
.showcase-wrap{max-width:1160px;margin:0 auto;padding:0 28px;}
.poster-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0 0 44px;}
.poster-tile{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--card);cursor:pointer;display:flex;flex-direction:column;transition:border-color .16s;margin:0;}
.poster-tile:hover{border-color:var(--line2);}
.poster-tile:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
.poster-media{position:relative;aspect-ratio:4/3;background:#0a0a0f;}
.poster-media img{width:100%;height:100%;object-fit:cover;}
.poster-play{position:absolute;inset:0;margin:auto;width:54px;height:54px;border-radius:50%;background:rgba(10,10,15,.6);border:1px solid rgba(255,255,255,.45);}
.poster-play::after{content:"";position:absolute;top:50%;left:54%;transform:translate(-50%,-50%);border-style:solid;border-width:9px 0 9px 15px;border-color:transparent transparent transparent #fff;}
.poster-tile figcaption{padding:12px 14px;display:flex;flex-direction:column;gap:4px;}
.poster-by{font-size:.7rem;letter-spacing:.03em;text-transform:uppercase;font-weight:700;}
.poster-by.community{color:var(--accent);} .poster-by.personal{color:#39ff14;}
.poster-cap{color:var(--dim);font-size:.9rem;}

.lightbox{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:24px;}
.lightbox[hidden]{display:none;}
.lightbox-backdrop{position:absolute;inset:0;background:rgba(5,5,8,.86);}
.lightbox-panel{position:relative;max-width:900px;width:100%;max-height:90vh;overflow:auto;background:var(--card);border:1px solid var(--line2);border-radius:12px;}
.lightbox-close{position:absolute;top:8px;right:14px;z-index:2;background:none;border:none;color:#fff;font-size:1.9rem;line-height:1;cursor:pointer;}
.lightbox-media img,.lightbox-media video{width:100%;height:auto;display:block;background:#000;border-radius:12px 12px 0 0;}
.lightbox-info{padding:16px 22px 22px;}
.lightbox-title{color:#fff;font-weight:600;font-size:1.15rem;margin:6px 0 8px;}
.lightbox-body{color:var(--dim);font-size:.94rem;margin:0;}
body.noscroll{overflow:hidden;}

.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0 0 26px;}
.how-item{border:1px solid var(--line);border-radius:10px;padding:20px;background:var(--card);}
.how-num{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.09em;color:var(--accent);margin-bottom:8px;}
.how-item p{color:var(--dim);font-size:.92rem;margin:0;} .how-item a{color:var(--accent);}
.store-note{color:var(--dim);font-size:.95rem;max-width:74ch;margin:12px auto 0;text-align:center;} .store-note strong{color:var(--text);}

.submit-form{max-width:760px;margin:0 auto;}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.field{display:flex;flex-direction:column;gap:6px;font-size:.86rem;color:var(--dim);}
.field span em{color:var(--accent);font-style:normal;}
.field-wide{grid-column:1/-1;}
.field input,.field textarea{background:var(--bg2);border:1px solid var(--line2);border-radius:5px;padding:.6rem .7rem;color:var(--text);font:inherit;}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--accent);}
.field.check{flex-direction:row;align-items:flex-start;gap:10px;}
.field.check input{margin-top:3px;}
.form-foot{display:flex;flex-direction:column;gap:10px;margin-top:18px;}
.form-note{color:var(--faint);font-size:.82rem;} .form-note a{color:var(--accent);}
.btn[disabled]{opacity:.5;cursor:not-allowed;}
.btn[disabled]:hover{border-color:var(--line2);background:var(--accent);}
@media(max-width:820px){.poster-grid,.how-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:560px){.poster-grid,.how-grid,.form-grid{grid-template-columns:1fr;}}
