:root{
  --tfvep-bg:#070812;
  --tfvep-card:#0f1220;
  --tfvep-border:rgba(255,255,255,.12);
  --tfvep-text:rgba(255,255,255,.92);
  --tfvep-muted:rgba(255,255,255,.68);
  --tfvep-primary:#6D28D9;
  --tfvep-secondary:#10B981;
  --tfvep-radius:22px;
  --tfvep-shadow:0 16px 60px rgba(0,0,0,.45);
  --tfvep-font:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";
}
.tfvep{font-family:var(--tfvep-font); color:var(--tfvep-text);}
.tfvep a{color:inherit}
.tfvep-muted{color:var(--tfvep-muted)}
.tfvep-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border-radius:999px;border:1px solid var(--tfvep-border);background:rgba(255,255,255,.06);text-decoration:none;font-weight:800;transition:transform .08s ease, background .12s ease, border-color .12s ease;}
.tfvep-btn:hover{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.18);}
.tfvep-btn:active{transform:translateY(1px);}
.tfvep-btn--primary{background:linear-gradient(135deg,var(--tfvep-primary),rgba(255,255,255,.08));border-color:rgba(255,255,255,.18);box-shadow:0 12px 40px rgba(109,40,217,.18);}
.tfvep-link{opacity:.9;text-decoration:none;font-weight:800}
.tfvep-link:hover{text-decoration:underline}

.tfvep-hero{background:radial-gradient(900px 420px at 18% 10%, color-mix(in oklab, var(--tfvep-primary) 35%, transparent), transparent 60%),radial-gradient(900px 420px at 78% 12%, color-mix(in oklab, var(--tfvep-secondary) 26%, transparent), transparent 60%),linear-gradient(180deg, rgba(255,255,255,.04), transparent 38%),var(--tfvep-bg);border-radius:var(--tfvep-radius);overflow:hidden;position:relative;box-shadow:var(--tfvep-shadow);}
.tfvep-hero__shapes{position:absolute;inset:0;pointer-events:none;opacity:.55;filter:blur(.2px)}
.tfvep-blob{position:absolute;fill:rgba(255,255,255,.08);mix-blend-mode:screen}
.tfvep-blob--a{width:520px;height:520px;left:-160px;top:-150px;fill:color-mix(in oklab, var(--tfvep-primary) 25%, rgba(255,255,255,.06));transform:rotate(18deg)}
.tfvep-blob--b{width:560px;height:560px;right:-180px;top:-190px;fill:color-mix(in oklab, var(--tfvep-secondary) 22%, rgba(255,255,255,.06));transform:rotate(-10deg)}
.tfvep-hero__inner{max-width:1180px;margin:0 auto;padding:18px 18px 22px;position:relative}

.tfvep-nav{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}
.tfvep-brand{display:flex;gap:12px;align-items:center}
.tfvep-brand__mark{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,var(--tfvep-primary),rgba(255,255,255,.12));box-shadow:0 14px 45px rgba(109,40,217,.22);font-weight:900}
.tfvep-brand__name{font-weight:900;letter-spacing:.2px}
.tfvep-brand__tag{font-size:12px;color:var(--tfvep-muted);margin-top:2px}
.tfvep-nav__links{display:flex;gap:14px;align-items:center}
.tfvep-nav__links a{opacity:.9;text-decoration:none;font-weight:800}
.tfvep-nav__links a:hover{opacity:1;text-decoration:underline}

.tfvep-slider{position:relative;border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04)}
.tfvep-slider__track{display:flex;overflow:hidden;will-change:transform;transition:transform .45s ease}
.tfvep-slide{min-width:100%;aspect-ratio:21/9;display:flex;flex-direction:column;justify-content:flex-end;padding:18px 18px 16px;background-size:cover;background-position:center;text-decoration:none;position:relative}
.tfvep-slide:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,.55) 60%, rgba(0,0,0,.78) 100%);}
.tfvep-slide>*{position:relative}
.tfvep-slide__tag{align-self:flex-start;font-weight:900;font-size:12px;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(6px)}
.tfvep-slide__title{font-weight:950;font-size:clamp(18px,2.4vw,34px);margin-top:10px;line-height:1.08}
.tfvep-slide__sub{font-weight:700;color:rgba(255,255,255,.78);margin-top:6px;max-width:760px}

.tfvep-arrow{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(0,0,0,.35);color:rgba(255,255,255,.95);font-size:28px;line-height:0;cursor:pointer;display:grid;place-items:center}
.tfvep-arrow:hover{background:rgba(0,0,0,.50)}
.tfvep-arrow--prev{left:12px}
.tfvep-arrow--next{right:12px}
.tfvep-dots{position:absolute;left:0;right:0;bottom:10px;display:flex;gap:7px;justify-content:center}
.tfvep-dot{width:8px;height:8px;border-radius:999px;background:rgba(255,255,255,.35);border:1px solid rgba(255,255,255,.25);cursor:pointer}
.tfvep-dot.is-active{background:rgba(255,255,255,.86)}

.tfvep-search{margin-top:14px;display:grid;grid-template-columns:1.4fr 1fr 1fr auto auto;gap:10px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:12px;backdrop-filter:blur(8px)}
.tfvep-search input,.tfvep-search select{width:100%;background:rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:12px 12px;color:var(--tfvep-text);outline:none}
.tfvep-search input::placeholder{color:rgba(255,255,255,.55)}
.tfvep-toggle{display:flex;align-items:center;gap:10px;font-weight:800;color:rgba(255,255,255,.80)}
.tfvep-toggle input{width:18px;height:18px;accent-color:var(--tfvep-primary)}

.tfvep-section{max-width:1180px;margin:18px auto 0;padding:0 4px}
.tfvep-section__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:16px 14px}
.tfvep-section__head h2{margin:0;font-size:18px;letter-spacing:.2px}

.tfvep-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:0 14px 14px}
@media (max-width:1100px){.tfvep-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (max-width:880px){.tfvep-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.tfvep-search{grid-template-columns:1fr;}}
@media (max-width:560px){.tfvep-grid{grid-template-columns:1fr;}.tfvep-nav__links{display:none}.tfvep-slide{aspect-ratio:16/11}}

.tfvep-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.10);border-radius:18px;overflow:hidden;box-shadow:0 10px 35px rgba(0,0,0,.28)}
.tfvep-card__media{display:block;position:relative;aspect-ratio:16/10;overflow:hidden;text-decoration:none}
.tfvep-card__media img{width:100%;height:100%;object-fit:cover;transform:scale(1.02);transition:transform .25s ease}
.tfvep-card:hover .tfvep-card__media img{transform:scale(1.06)}
.tfvep-card__shade{position:absolute;inset:0;background:linear-gradient(180deg, rgba(0,0,0,.05) 0%, rgba(0,0,0,.55) 100%)}
.tfvep-card__tag{position:absolute;left:10px;top:10px;padding:7px 10px;border-radius:999px;font-size:12px;font-weight:900;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(6px)}
.tfvep-card__body{padding:12px 12px 14px}
.tfvep-card__title{margin:0 0 6px;font-size:14px;line-height:1.25}
.tfvep-card__title a{text-decoration:none}
.tfvep-card__title a:hover{text-decoration:underline}
.tfvep-card__meta{font-size:12px;color:rgba(255,255,255,.72);margin-bottom:10px;min-height:16px}
.tfvep-card__bottom{display:flex;align-items:center;justify-content:space-between;gap:10px}
.tfvep-price{font-size:12px}
.tfvep-price strong{font-size:15px}

.tfvep-empty{padding:16px;margin:14px;background:rgba(255,255,255,.05);border:1px dashed rgba(255,255,255,.18);border-radius:16px;color:var(--tfvep-muted);}

.tfvep-app{max-width:1180px;margin:10px auto 0;padding:0 14px}
.tfvep-app__inner{display:grid;grid-template-columns:1.3fr 1fr;gap:18px;background:linear-gradient(135deg, rgba(109,40,217,.22), rgba(16,185,129,.12));border:1px solid rgba(255,255,255,.12);border-radius:22px;overflow:hidden;padding:18px}
.tfvep-app__text h3{margin:0 0 6px;font-size:18px}
.tfvep-app__buttons{margin-top:12px;display:flex;gap:10px;flex-wrap:wrap}
.tfvep-app__mock{display:flex;justify-content:flex-end;align-items:flex-end}
.tfvep-app__mock img{width:min(420px,100%);border-radius:18px;border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 60px rgba(0,0,0,.35)}
@media (max-width:880px){.tfvep-app__inner{grid-template-columns:1fr}.tfvep-app__mock{justify-content:flex-start}}

.tfvep-producer{max-width:1180px;margin:14px auto 0;padding:0 14px 18px}
.tfvep-producer__inner{display:flex;align-items:center;justify-content:space-between;gap:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:18px}
.tfvep-producer__inner h3{margin:0 0 6px;font-size:18px}
