:root {
  --bg: #050506;
  --bg-2: #09090b;
  --raise: #0f0f12;
  --group: #16161a;
  --ctrl: #0a0a0c;
  --border: #26262c;
  --border-hi: #3f3f48;
  --line: rgba(255,255,255,.07);
  --line-2: rgba(255,255,255,.13);
  --text: #f5f5f7;
  --sub: #d4d4da;
  --label: #c2c2ca;
  --dim: #a1a1aa;
  --faint: #83838e;
  --acc: 232 234 240;
  --accent: rgb(var(--acc));
  --accent-hi: color-mix(in srgb, var(--accent) 25%, #fff);
  --accent-lo: color-mix(in srgb, var(--accent) 48%, #000);
  --ink: #0b0b0d;
  --good: #63d59a;
  --bad: #ee6671;
  --warn: #e9c27c;
  --discord: #8792f8;
  --font: 'Geist', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --display: 'Archivo', 'Geist', system-ui, sans-serif;
  --ease: cubic-bezier(.22, 1, .36, 1);
  --gutter: clamp(18px, 4vw, 72px);
  --maxw: 1320px;
  --nav-h: 68px;
  --bar-h: 0px;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: auto; scroll-padding-top: 86px; }
html.lenis, html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
.lenis.lenis-stopped { overflow: hidden; }
body {
  min-width: 320px;
  margin: 0;
  overflow-x: hidden;
  background: var(--bg);
  color: var(--text);
  font: 400 16px/1.6 var(--font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
body.is-loading { overflow: hidden; }
img, svg, canvas { display: block; max-width: 100%; }
[hidden] { display: none !important; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; color: inherit; }
button { cursor: pointer; }
::selection { color: var(--ink); background: var(--accent); }
kbd { padding: .15em .5em; border: 1px solid var(--border-hi); border-radius: 5px; background: var(--group); font: 600 .8em var(--font); }
.ico { width: 1em; height: 1em; flex: none; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

.grain { position: fixed; z-index: 90; inset: 0; pointer-events: none; opacity: .025; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E"); }
.scroll-progress { position: fixed; z-index: 120; inset: 0 0 auto; height: 1px; pointer-events: none; }
.scroll-progress i { display: block; width: 100%; height: 100%; background: var(--accent); transform: scaleX(0); transform-origin: left; }

.boot { position: fixed; z-index: 200; inset: 0; display: grid; place-items: center; background: #050506; transition: opacity .25s ease; }
.boot.is-done { pointer-events: none; }
/* Copie de la page dessinée sous l'écran de chargement : un écran opaque dispenserait le navigateur de la dessiner. */
.boot.is-warming { background: rgba(5,5,6,.992); }
.gpu-warm { position: fixed; z-index: 199; top: 0; left: 0; width: 100%; pointer-events: none; }
.gpu-warm * { opacity: 1 !important; visibility: visible !important; transition: none !important; animation-play-state: paused !important; }
/* Mêmes couches que la vraie page : dessinée à part, une étiquette animée demande d'autres shaders que dans le bloc qui l'entoure. */
.gpu-warm .menu-callout, .gpu-warm .menu-scan, .gpu-warm .menu-connectors, .gpu-warm .trust__item, .gpu-warm .plan, .gpu-warm .qa, .gpu-warm .step { opacity: .6 !important; will-change: transform, opacity; }
.boot__center { width: 220px; display: grid; justify-items: center; }
.boot__logo { width: 52px; height: 52px; object-fit: contain; }
.boot__word { margin-top: 20px; font: 700 17px/1 var(--display); letter-spacing: .24em; }
.boot__status { display: flex; align-items: center; gap: 9px; margin-top: 22px; color: var(--dim); font-size: 12px; }
.boot__status i { width: 3px; height: 3px; border-radius: 50%; background: var(--faint); }
.boot__status b { min-width: 3em; color: var(--sub); font-variant-numeric: tabular-nums; font-weight: 500; }
.boot__progress { width: 100%; height: 1px; margin-top: 14px; background: var(--border); }
.boot__progress i { display: block; width: 100%; height: 100%; background: var(--accent); transform: scaleX(0); transform-origin: left; }

body.no-promo { --bar-h: 0px; }
.promo-bar { position: relative; z-index: 61; min-height: var(--bar-h); color: var(--ink); background: linear-gradient(90deg, var(--accent-lo), var(--accent-hi)); font-size: 12px; }
.promo-bar__inner { min-height: inherit; display: flex; align-items: center; justify-content: center; gap: 9px; padding: 5px var(--gutter); }
.promo-bar .ico { width: 15px; height: 15px; }
.promo-bar__count { font-variant-numeric: tabular-nums; }
.code-chip { padding: 2px 7px; border: 1px dashed currentColor; border-radius: 5px; font-weight: 700; }

.nav { position: fixed; z-index: 70; inset: 0 0 auto; height: var(--nav-h); display: flex; align-items: center; justify-content: space-between; gap: 22px; padding: 0 var(--gutter); border-bottom: 1px solid var(--line); background: rgba(5,5,6,.99); transition: background .25s ease, border-color .25s ease; }
.nav.is-scrolled { border-color: var(--line); background: rgba(5,5,6,.97); }
.nav__brand { display: inline-flex; align-items: center; gap: 10px; flex: none; }
.brand-mark { width: 30px; height: 32px; object-fit: contain; }
.brand-mark--lg { width: 44px; height: 46px; }
.nav__name { font-size: 16px; font-weight: 600; letter-spacing: -.02em; }
.nav__links, .nav__actions { display: flex; align-items: center; gap: 5px; }
.nav__links a { padding: 8px 12px; border-radius: 8px; color: var(--dim); font-size: 13px; transition: color .2s, background .2s; }
.nav__links a:hover, .nav__links a.is-active { color: var(--text); background: rgba(255,255,255,.06); }
[data-status] { --status: 99 213 154; }
[data-status="update"] { --status: 125 170 255; }
[data-status="maintenance"] { --status: 233 194 124; }
[data-status="down"] { --status: 238 102 113; }
[data-status="unknown"] { --status: 131 131 142; }
.nav__status-dot { display: inline-block; width: 6px; height: 6px; margin-left: 7px; border-radius: 50%; vertical-align: 1.5px; background: rgb(var(--status)); box-shadow: 0 0 0 3px rgb(var(--status) / .14); }
.nav__actions { gap: 8px; }
.nav__actions .nav__burger { display: none; }
.icon-btn, .lang-btn { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-width: 40px; height: 40px; padding: 0 10px; border: 1px solid var(--line-2); border-radius: 10px; background: transparent; color: var(--sub); transition: border-color .2s, color .2s, background .2s; }
.icon-btn:hover, .lang-btn:hover { border-color: var(--border-hi); color: var(--text); background: rgba(255,255,255,.04); }
.icon-btn .ico, .lang-btn .ico { width: 16px; height: 16px; }
.lang-btn { font-size: 12px; font-weight: 600; }

.btn { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 46px; padding: 0 18px; overflow: hidden; border: 1px solid transparent; border-radius: 10px; font-size: 14px; font-weight: 600; line-height: 1.1; white-space: nowrap; transition: transform .2s ease, border-color .2s ease, background .2s ease, color .2s ease; }
.btn:hover { transform: translateY(-1px); }
.btn .ico { width: 17px; height: 17px; }
.btn--sm { min-height: 38px; padding: 0 13px; font-size: 12px; }
.btn--lg { min-height: 54px; padding: 0 22px; font-size: 15px; }
.btn--block { width: 100%; }
.btn--primary { border-color: rgba(255,255,255,.75); color: var(--ink); background: linear-gradient(180deg,#fff,#d4d6dd); box-shadow: inset 0 1px 0 rgba(255,255,255,.9); }
.btn--primary:hover { background: linear-gradient(180deg,#fff,#e2e4e9); }
.btn--ghost { border-color: var(--line-2); color: var(--text); background: transparent; }
.btn--ghost:hover { border-color: var(--border-hi); background: rgba(255,255,255,.035); }
.btn--discord { border-color: rgba(135,146,248,.28); color: #d6d9ff; background: rgba(135,146,248,.09); }
.btn:disabled, .btn[disabled] { cursor: not-allowed; opacity: .5; transform: none; }

.eyebrow { display: inline-flex; align-items: center; gap: 11px; margin: 0 0 18px; color: var(--label); font-size: 11px; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; }
.hair { display: inline-block; width: 28px; height: 1px; background: currentColor; opacity: .5; }
.eyebrow--left { justify-content: flex-start; }
.sec-head { width: min(100%, 800px); margin: 0 auto 48px; text-align: center; }
.sec-head .eyebrow { justify-content: center; }
.sec-title { margin: 0; font-family: var(--display); font-size: clamp(34px, 5.2vw, 68px); font-weight: 700; line-height: 1.02; letter-spacing: -.035em; }
.sec-title em, .hero__title em, .final__title em, .urban-page__title em { color: transparent; background: linear-gradient(100deg,#fff 0%,rgb(var(--acc)) 45%,#7d7f8a 100%); -webkit-background-clip: text; background-clip: text; font-style: normal; }
.sec-sub { max-width: 620px; margin: 16px auto 0; color: var(--dim); font-size: 16px; }
.section { position: relative; padding: clamp(78px, 10vw, 136px) var(--gutter); }
.section--page { min-height: 75vh; padding-top: calc(var(--nav-h) + 90px); }
.view { animation: viewIn .3s ease; }
@keyframes viewIn { from { opacity: 0; } to { opacity: 1; } }
.support-sec { padding-top: 0; display: grid; justify-items: center; }

.hero { position: relative; min-height: 100svh; display: grid; align-items: center; overflow: hidden; isolation: isolate; background: var(--bg); }
.hero__canvas, .hero__fallback { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; }
.hero__canvas { opacity: .82; }
.hero__fallback { z-index: -3; background: radial-gradient(ellipse at 73% 47%, #111114 0%, #09090b 34%, #050506 73%); }
.hero__inner { position: relative; z-index: 1; width: min(100%, var(--maxw)); min-height: 100svh; display: grid; grid-template-columns: minmax(0,1.75fr) minmax(360px,1fr); align-items: center; gap: clamp(24px,2.5vw,44px); margin: 0 auto; padding: calc(var(--nav-h) + 32px) var(--gutter) 48px; }
.hero__content { max-width: 760px; min-width: 0; }
.hero__eyebrow { margin-bottom: 24px; }
.hero__title { margin: 0; font: 700 clamp(52px,4.6vw,68px)/.98 var(--display); letter-spacing: -.045em; }
.hero__line { display: block; overflow: hidden; padding: .04em 0 .09em; }
.hero__line-inner { display: block; white-space: nowrap; }
.hero__sub { max-width: 590px; margin: 25px 0 0; color: var(--sub); font-size: clamp(16px,1.4vw,19px); line-height: 1.65; }
.hero__sub u { color: var(--text); text-decoration-color: var(--faint); text-underline-offset: 4px; }
.hero__ctas { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.hero__stats { display: flex; gap: clamp(22px,4vw,54px); margin-top: 42px; }
.stat { display: grid; gap: 2px; }
.stat b { font: 600 24px/1 var(--display); letter-spacing: -.03em; }
.stat span { color: var(--faint); font-size: 11px; }
.hero__status { display: flex; align-items: center; gap: 9px; margin: 23px 0 0; color: var(--dim); font-size: 12px; }
.hero__status > i, .product-card__status i { width: 7px; height: 7px; flex: none; border-radius: 50%; background: var(--good); }
.hero__status-sep { color: var(--faint); }
.hero__object { position: relative; min-width: 0; display: grid; place-items: center; perspective: 900px; }
.hero__mark { position: relative; z-index: 1; width: min(100%, 470px); max-height: 52vh; object-fit: contain; filter: drop-shadow(0 28px 42px rgba(0,0,0,.55)); }
.hero__object::after { position: absolute; z-index: 2; inset: 7% 0 20%; content: ''; background: linear-gradient(112deg, transparent 35%, rgba(255,255,255,.23) 48%, rgba(255,255,255,.04) 51%, transparent 63%); -webkit-mask: url('../img/logo-tp.webp') center / contain no-repeat; mask: url('../img/logo-tp.webp') center / contain no-repeat; transform: translateX(-70%); animation: chromeSweep 8s ease-in-out 1.2s infinite; pointer-events: none; }
.hero__reflection { position: absolute; left: 17%; right: 17%; bottom: -4%; height: 14%; background: linear-gradient(180deg,rgba(220,222,230,.1),transparent); filter: blur(26px); transform: scaleY(-1); opacity: .38; }
.hero__fade { position: absolute; z-index: 3; inset: auto 0 0; height: 18%; background: linear-gradient(180deg,transparent,var(--bg)); pointer-events: none; }
@keyframes chromeSweep { 0%, 20% { transform: translateX(-70%); opacity: 0; } 32% { opacity: .8; } 57%, 100% { transform: translateX(70%); opacity: 0; } }

.trust { padding: 28px var(--gutter); border-block: 1px solid var(--line); background: var(--bg); }
.trust__inner { width: min(100%, var(--maxw)); display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin: 0 auto; }
.trust__item { display: flex; align-items: center; gap: 13px; min-height: 60px; padding: 8px 20px; border-right: 1px solid var(--line); }
.trust__item:first-child { padding-left: 0; }
.trust__item:last-child { border: 0; }
.trust__icon { color: var(--label); font-size: 18px; }
.trust__item div { display: grid; }
.trust__item b { font-size: 12px; font-weight: 600; }
.trust__item span:not(.trust__icon) { color: var(--faint); font-size: 11px; }

.products-sec { padding-top: clamp(82px,10vw,132px); }
.products-grid { width: min(100%, var(--maxw)); display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; margin: 0 auto; }
.product-card, .plan, .fcard, .community, .cta-band__card, .compare, .qa, .urban-plan { border: 1px solid var(--line); border-radius: 16px; background: linear-gradient(180deg,#111114,#0b0b0d); box-shadow: inset 0 1px 0 rgba(255,255,255,.06); }
.product-card { min-width: 0; display: flex; flex-direction: column; overflow: hidden; transition: border-color .25s ease, transform .25s var(--ease); }
.product-card:hover { border-color: var(--line-2); transform: translateY(-3px); }
.product-card__visual { position: relative; height: clamp(190px,22vw,280px); overflow: hidden; background: #09090b; }
.product-card__visual::after { position: absolute; inset: 35% 0 0; content: ''; background: linear-gradient(180deg,transparent,#0d0d10); pointer-events: none; }
.product-card__visual img { width: 100%; height: 100%; object-fit: cover; object-position: center 42%; filter: grayscale(1) contrast(1.05) brightness(.95); transition: transform .6s var(--ease); }
.product-card:hover .product-card__visual img { transform: scale(1.035); }
.product-card__body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: 24px clamp(20px,3vw,36px) 30px; }
.product-card__status { display: flex; align-items: center; gap: 8px; margin: 0 0 12px; color: var(--dim); font-size: 11px; }
.product-card__status i { background: #73737d; }
.product-card__status i.is-available { background: var(--good); box-shadow: 0 0 0 3px rgba(99,213,154,.1); }
.product-card h3 { margin: 0; font: 700 clamp(24px,3vw,32px)/1.1 var(--display); letter-spacing: -.025em; }
.product-card__description { max-width: 570px; margin: 12px 0 0; color: var(--dim); font-size: 14px; }
.product-card__price { display: flex; align-items: baseline; gap: 7px; margin: 18px 0 0; color: var(--dim); font-size: 12px; }
.product-card__price b { color: var(--text); font-size: 17px; font-weight: 600; }
.product-card__note { margin-top: 2px; color: var(--faint); font-size: 10px; }
.product-card__actions { display: flex; flex-wrap: wrap; gap: 8px; width: 100%; margin-top: auto; padding-top: 22px; }
.product-card__actions .btn { min-height: 40px; padding-inline: 14px; font-size: 12px; }

.menu-sec { padding-top: 110px; }
.menu-stage { width: min(100%, var(--maxw)); margin: 0 auto; padding: 16px; overflow: hidden; border: 1px solid var(--line); border-radius: 18px; background: #09090b; }
#menuMount { min-height: 480px; }
.menu-tip { margin: 18px auto 0; color: var(--faint); font-size: 12px; text-align: center; }
.features { padding-top: 110px; }
.bento { width: min(100%, var(--maxw)); display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); grid-auto-rows: minmax(210px,auto); gap: 14px; margin: 0 auto; }
.fcard { position: relative; min-width: 0; display: flex; flex-direction: column; overflow: hidden; transition: border-color .25s ease, transform .25s var(--ease); }
.fcard:hover { border-color: var(--line-2); transform: translateY(-3px); }
.fcard--xl { grid-column: span 8; }
.fcard--tall { grid-column: span 4; grid-row: span 2; }
.fcard--wide { grid-column: span 6; }
.fcard--full { grid-column: span 12; }
.fcard:not(.fcard--xl):not(.fcard--tall):not(.fcard--wide):not(.fcard--full) { grid-column: span 4; }
.fcard__visual { position: relative; min-height: 130px; flex: 1; display: grid; place-items: center; overflow: hidden; margin: 12px 12px 0; border: 1px solid rgba(255,255,255,.035); border-radius: 11px; background: radial-gradient(ellipse at 50% 100%,rgba(255,255,255,.06),transparent 65%),#0b0b0d; color: var(--label); }
.fcard__body { padding: 18px 20px 20px; }
.fcard__icon { display: inline-flex; margin-bottom: 9px; color: var(--label); font-size: 18px; }
.fcard h3 { margin: 0 0 6px; font: 600 17px/1.25 var(--display); letter-spacing: -.02em; }
.fcard p { margin: 0; color: var(--dim); font-size: 12px; line-height: 1.55; }
.tags { display: flex; flex-wrap: wrap; gap: 6px; margin: 13px 0 0; padding: 0; list-style: none; }
.tags li { padding: 3px 7px; border: 1px solid var(--line); border-radius: 5px; color: var(--faint); font-size: 9px; }
.fv-aim { background-image: linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),radial-gradient(circle at 50% 50%,rgba(255,255,255,.07),transparent 42%); background-size: 34px 34px,34px 34px,auto; }
.fv-aim__fov { position: absolute; width: 180px; aspect-ratio: 1; border: 1px solid rgba(255,255,255,.17); border-radius: 50%; }
.fv-aim__fov--2 { width: 112px; border-color: rgba(255,255,255,.09); }
.fv-aim__target { position: absolute; width: 20px; height: 28px; border: 1px solid rgba(245,245,247,.56); }
.fv-aim__target::before, .fv-aim__target::after { position: absolute; content: ''; background: rgba(245,245,247,.44); }
.fv-aim__target::before { width: 4px; height: 4px; left: -2px; top: -2px; }
.fv-aim__target::after { width: 4px; height: 4px; right: -2px; bottom: -2px; }
.fv-aim__target.t1 { left: 27%; top: 32%; }.fv-aim__target.t2 { right: 25%; top: 28%; }.fv-aim__target.t3 { right: 36%; bottom: 22%; }
.fv-aim__cross { position: absolute; color: var(--text); font-size: 24px; }
.fv-aim__tag { position: absolute; right: 14px; bottom: 12px; color: var(--faint); font: 10px var(--font); letter-spacing: .12em; }
.fv-esp svg { height: 190px; width: auto; }
.fv-esp__body { fill: rgba(255,255,255,.025); stroke: rgba(255,255,255,.14); stroke-width: 1; }
.fv-esp__skel, .fv-esp__box { fill: none; stroke: rgba(255,255,255,.7); stroke-width: 1.3; }
.fv-esp__hp-bg { fill: #202024; }.fv-esp__hp { fill: #bfc3ce; clip-path: inset(20% 0 0); }
.fv-esp__name, .fv-esp__dist { fill: #d8d9df; font: 7px var(--font); text-anchor: middle; }
.fv-silent .ring { width: 76px; aspect-ratio: 1; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; box-shadow: 0 0 0 22px rgba(255,255,255,.025),0 0 0 44px rgba(255,255,255,.018); }
.fv-silent .r2 { position: absolute; width: 4px; height: 4px; border-radius: 50%; background: #fff; transform: translate(28px,-17px); }
.fv-silent .dot { position: absolute; width: 5px; height: 5px; border-radius: 50%; background: #cfd1d8; }
.fv-silent .pct { position: absolute; right: 14px; bottom: 12px; color: var(--faint); font-size: 10px; }
.fv-trigger > .ico { width: 28px; height: 28px; }
.fv-trigger i { position: absolute; width: 7px; height: 7px; border-radius: 50%; background: #e6e7eb; animation: triggerPulse 1.8s ease-in-out infinite; }
.fv-trigger i:nth-of-type(2) { transform: translate(34px,-26px); }.fv-trigger i:nth-of-type(3) { transform: translate(-38px,20px); animation-delay: .3s; }
@keyframes triggerPulse { 50% { opacity: .3; transform: scale(.75); } }
.fv-chams__fig { width: 45px; height: 90px; border: 1px solid #afb1ba; border-radius: 24px 24px 8px 8px; background: linear-gradient(180deg,rgba(255,255,255,.12),transparent); }
.fv-chams__wall { position: absolute; width: 54%; height: 70%; right: 16%; border: 1px solid rgba(255,255,255,.09); background: rgba(255,255,255,.025); }
.fv-chams__halo { position: absolute; width: 68px; height: 68px; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; }
.fv-radar { width: 150px; height: 150px; min-height: 150px; border: 1px solid rgba(255,255,255,.16); border-radius: 50%; background: repeating-radial-gradient(circle,transparent 0 24px,rgba(255,255,255,.07) 25px 26px); }
.fv-radar::before, .fv-radar::after { position: absolute; content: ''; background: rgba(255,255,255,.08); }
.fv-radar::before { width: 1px; height: 100%; }.fv-radar::after { width: 100%; height: 1px; }
.fv-radar b { position: absolute; z-index: 1; left: var(--x); top: var(--y); width: 4px; height: 4px; border-radius: 50%; background: #dfe0e5; }
.fv-radar .sweep { position: absolute; inset: 0; border-radius: 50%; background: conic-gradient(from 10deg,transparent 0 300deg,rgba(255,255,255,.14)); }
.fv-farm__hud { width: min(80%,330px); padding: 14px; border: 1px solid var(--line-2); border-radius: 9px; background: #101013; }
.fv-farm__head, .fv-farm__row { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.fv-farm__head { color: var(--sub); font-size: 11px; }.fv-farm__head em { color: var(--dim); font-size: 9px; font-style: normal; }.fv-farm__head em i { display: inline-block; width: 5px; height: 5px; margin-right: 5px; border-radius: 50%; background: var(--good); }
.fv-farm__row { margin-top: 12px; }.fv-farm__row strong { font-size: 20px; }.fv-farm__row small { color: var(--faint); }
.fv-farm__targets { display: flex; gap: 16px; position: absolute; bottom: 17px; right: 24px; }.fv-farm__targets i { width: 5px; height: 5px; border: 1px solid #c7c8d0; border-radius: 50%; }
.fv-exec__win { width: min(85%,450px); border: 1px solid var(--line-2); border-radius: 9px; background: #09090b; color: var(--dim); font: 10px/1.7 ui-monospace,Consolas,monospace; }
.fv-exec__bar { display: flex; justify-content: space-between; gap: 12px; padding: 7px 10px; border-bottom: 1px solid var(--line); }.fv-exec__run { color: var(--sub); }.fv-exec__bar em { font-style: normal; }.fv-exec__bar b { color: var(--faint); }
.fv-exec pre { min-height: 74px; margin: 0; padding: 10px; }.fv-exec .c { color: #7e828d; }.fv-exec .k { color: #c5c8d1; }.fv-exec .f { color: #aeb2bf; }.fv-exec .s { color: #d7d9df; }
.fv-exec__out { padding: 5px 10px; border-top: 1px solid var(--line); }.fv-exec__out b { margin-right: 8px; color: var(--good); }
.fv-world { background: linear-gradient(180deg,#151519 0%,#0c0c0f 68%,#101013); }.fv-world__sky { position: absolute; inset: 0; background: linear-gradient(180deg,rgba(255,255,255,.05),transparent 60%); }.fv-world__orb { position: absolute; top: 22%; right: 23%; width: 34px; aspect-ratio: 1; border-radius: 50%; background: #b9bbc4; box-shadow: 0 0 40px rgba(255,255,255,.13); }.fv-world__hill { position: absolute; left: 0; right: 0; bottom: 0; height: 38%; border-radius: 60% 60% 0 0; background: #09090b; }.fv-world__chest { position: absolute; left: 25%; bottom: 21%; width: 42px; height: 28px; border: 1px solid #686a74; background: #1b1b20; }.fv-world__chest span { position: absolute; top: -14px; white-space: nowrap; color: var(--dim); font-size: 7px; }.fv-world__time { position: absolute; top: 12px; left: 12px; color: #d5d6dd; font: 12px var(--font); }
.fv-move__hud { position: absolute; top: 12px; left: 15px; display: grid; color: var(--dim); font-size: 9px; }.fv-move__hud b { color: var(--text); font: 600 25px var(--display); }.fv-move__lines { display: flex; align-items: end; gap: 6px; height: 64px; }.fv-move__lines i { width: 8px; height: 25%; background: #555861; }.fv-move__lines i:nth-child(2) { height: 40%; }.fv-move__lines i:nth-child(3) { height: 58%; }.fv-move__lines i:nth-child(4) { height: 75%; }.fv-move__lines i:nth-child(5) { height: 100%; }.fv-move__runner { position: absolute; right: 24px; top: 28px; color: var(--sub); font-size: 24px; }
.fv-stream { display: flex; align-items: center; justify-content: center; gap: 10px; }.fv-stream__screen { position: relative; width: 40%; height: 90px; border: 1px solid var(--line-2); border-radius: 6px; background: #151519; }.fv-stream__screen--live { background: #0b0b0d; }.fv-stream__lbl { position: absolute; top: 5px; left: 6px; color: var(--dim); font-size: 8px; }.fv-stream__lbl b { color: #eee; }.fv-stream__menu { position: absolute; right: 4px; top: 23px; display: grid; gap: 4px; width: 25px; padding: 5px; background: #25252b; }.fv-stream__menu i { height: 3px; background: #858792; }
.fv-spotify__cover { width: 45px; height: 45px; display: grid; place-items: center; border: 1px solid var(--line-2); border-radius: 8px; background: #19191e; font-size: 22px; }.fv-spotify__bars { display: flex; align-items: end; gap: 4px; height: 35px; }.fv-spotify__bars i { width: 4px; height: 40%; background: #a4a6af; }.fv-spotify__bars i:nth-child(2n) { height: 80%; }.fv-themes { min-height: 72px; display: flex; flex-direction: row; flex-wrap: wrap; gap: 8px; padding: 16px; }

.urban-band-section { padding-top: 34px; }
.urban-band { position: relative; width: min(100%, var(--maxw)); min-height: 460px; display: flex; align-items: center; margin: 0 auto; overflow: hidden; border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(90deg,#050506 0%,rgba(5,5,6,.97) 28%,rgba(5,5,6,.68) 58%,rgba(5,5,6,.18) 100%),url('../img/urban-script.webp') center / cover no-repeat; }
.urban-band__content { width: min(580px,70%); padding: clamp(28px,6vw,72px); }
.urban-band__content .sec-title { text-align: left; }.urban-band__content > p:not(.eyebrow) { max-width: 450px; margin: 18px 0 22px; color: var(--sub); }

.steps { padding: 100px var(--gutter); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.steps__track { width: min(100%,var(--maxw)); display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 16px; margin: 0 auto; }
.steps__intro { min-width: 0; padding-right: 12px; }.steps__intro .sec-title { font-size: clamp(28px,1.8vw,30px); }.steps__intro .sec-sub { margin-left: 0; font-size: 14px; }
.steps__hint { display: inline-flex; align-items: center; gap: 7px; margin-top: 18px; color: var(--faint); font-size: 11px; }
.step { min-width: 0; padding: 17px; border: 1px solid var(--line); border-radius: 14px; background: #0b0b0d; }
.step__num { color: var(--faint); font: 500 12px var(--font); }
.step__visual { min-height: 120px; display: grid; place-items: center; margin: 11px 0 16px; overflow: hidden; border: 1px solid rgba(255,255,255,.035); border-radius: 8px; background: #101013; }
.step h3 { margin: 0 0 6px; font: 600 15px/1.35 var(--display); }.step p { margin: 0; color: var(--dim); font-size: 11px; }
.sv-key__card { width: 85%; padding: 12px 8px; border: 1px solid var(--line-2); border-radius: 7px; background: #0a0a0c; text-align: center; }
.sv-key__lbl, .sv-key__plan { display: block; color: var(--faint); font-size: 8px; letter-spacing: .14em; }.sv-key__card code { display: block; margin: 10px 0; color: var(--sub); font: 600 10px ui-monospace,Consolas,monospace; }
.sv-login__win { display: grid; gap: 7px; width: 82%; font-size: 9px; }.sv-login__eb { color: var(--faint); }.sv-login__field { padding: 5px; border: 1px solid var(--line); border-radius: 4px; color: var(--dim); font-style: normal; }.sv-login__btn { padding: 5px; border-radius: 4px; color: var(--ink); background: var(--accent); text-align: center; font-style: normal; }
.sv-detect { align-content: center; gap: 8px; padding: 12px; }.sv-detect__line { display: flex; align-items: center; gap: 6px; color: var(--dim); font: 8px ui-monospace,Consolas,monospace; }.sv-detect__line i { width: 5px; height: 5px; border-radius: 50%; background: var(--good); }.sv-detect__line i.busy { background: #bbbcc4; }
.keycap { padding: 9px 13px; border: 1px solid var(--border-hi); border-bottom-width: 3px; border-radius: 7px; color: var(--sub); font: 600 12px var(--font); }
.cta-band { padding: 38px var(--gutter) 96px; }.cta-band__card { width: min(100%,var(--maxw)); display: grid; grid-template-columns: 1fr 1.1fr auto; align-items: center; gap: 24px; margin: 0 auto; padding: 28px; }.cta-band__txt .eyebrow { margin-bottom: 8px; }.cta-band__title { margin: 0; font: 600 clamp(22px,3vw,34px)/1.2 var(--display); letter-spacing: -.03em; }.cta-band__title em { color: var(--sub); font-style: normal; }.cta-band__sub { margin: 7px 0 0; color: var(--dim); font-size: 12px; }.cta-band__plans { display: flex; gap: 8px; }.cta-plan { min-width: 0; display: grid; gap: 3px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 9px; color: var(--dim); font-size: 10px; }.cta-plan b { color: var(--text); font-size: 13px; }.cta-plan--featured { border-color: var(--border-hi); }

.final { position: relative; min-height: 620px; display: grid; align-content: center; justify-items: center; overflow: hidden; padding: 100px var(--gutter) 130px; text-align: center; }
.final__watermark { position: absolute; width: min(460px,70vw); height: auto; inset: 50% auto auto 50%; opacity: .035; transform: translate(-50%,-50%); }
.final__content { position: relative; z-index: 1; }.final__content .eyebrow { justify-content: center; }
.final__title { max-width: 950px; margin: 0; font: 700 clamp(44px,8vw,100px)/.98 var(--display); letter-spacing: -.05em; }
.community { position: relative; z-index: 1; width: min(100%,680px); display: flex; align-items: center; gap: 16px; margin-top: 68px; padding: 17px 20px; text-align: left; }
.community__icon { color: #b5b9fa; font-size: 22px; }.community > div { display: grid; flex: 1; }.community b { font-size: 13px; }.community > div span { color: var(--dim); font-size: 11px; }.community--wide { margin: 0; }

.pricing { padding-bottom: 100px; }
.pricing-switch { width: fit-content; display: flex; gap: 3px; margin: 0 auto 36px; padding: 4px; border: 1px solid var(--line); border-radius: 11px; background: #09090b; }
.pricing-switch button { min-height: 37px; padding: 0 15px; border: 1px solid transparent; border-radius: 8px; color: var(--dim); font-size: 12px; font-weight: 600; transition: background .2s,color .2s,border-color .2s; }
.pricing-switch button.is-active, .pricing-switch button[aria-pressed="true"] { border-color: var(--line-2); color: var(--text); background: #19191d; }
.pricing-panel { width: 100%; }.pricing-panel .sec-head { margin-bottom: 38px; }
.plans { width: min(100%,1060px); display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin: 0 auto; }
.plan { position: relative; min-width: 0; display: flex; flex-direction: column; padding: 26px; transition: border-color .25s,transform .25s var(--ease); }
.plan:hover { border-color: var(--line-2); transform: translateY(-3px); }
.plan--featured { border-color: var(--border-hi); }
.plan header { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }.plan__name { font: 600 19px var(--display); }.plan__dur { color: var(--dim); font-size: 11px; }
.plan__price { display: flex; align-items: baseline; gap: 8px; margin: 19px 0; }.plan__amount { font: 600 clamp(27px,3vw,36px)/1 var(--display); letter-spacing: -.04em; }.plan__old { color: var(--faint); font-size: 12px; text-decoration: line-through; }.plan__save { color: var(--good); text-decoration: none; }
.plan ul { display: grid; gap: 8px; margin: 0 0 22px; padding: 0; color: var(--dim); font-size: 12px; list-style: none; }.plan li::before { content: '✓'; margin-right: 8px; color: var(--label); }
.plan__cta { width: 100%; margin-top: auto; }.plan__badge { position: absolute; top: -12px; right: 18px; padding: 4px 9px; border: 1px solid var(--border-hi); border-radius: 6px; background: #17171a; color: var(--sub); font-size: 10px; font-weight: 600; }
.urban-plans { margin-top: 0; }.urban-plan { min-height: 215px; }.urban-plan .plan__price { margin-top: 26px; }.urban-plan .plan__cta { margin-top: auto; }
.urban-pricing-note { margin: 20px auto 0; color: var(--faint); font-size: 11px; text-align: center; }
.assurances { width: min(100%,1060px); display: flex; flex-wrap: wrap; justify-content: center; gap: 14px 28px; margin: 27px auto 0; padding: 0; list-style: none; }.assurances li { display: flex; align-items: center; gap: 7px; color: var(--dim); font-size: 11px; }.assurances .ico { color: var(--label); }
.pay-strip { max-width: 1060px; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 12px 18px; margin: 30px auto 0; padding: 15px; border: 1px solid var(--line); border-radius: 13px; background: #0b0b0d; }.pay-strip__label { color: var(--faint); font-size: 10px; }.pay-strip__list { display: flex; flex-wrap: wrap; gap: 7px; }.pay-chip { display: inline-flex; align-items: center; gap: 6px; padding: 5px 9px; border: 1px solid var(--line); border-radius: 7px; color: var(--sub); font-size: 11px; }.pay-chip .ico { color: var(--label); }.pay-strip__secure { display: inline-flex; align-items: center; gap: 6px; color: var(--dim); font-size: 10px; }
.compare { width: min(100%,1100px); margin: 54px auto 0; padding: 24px; }.compare__head { margin-bottom: 20px; text-align: center; }.compare__title { margin: 0; font: 600 22px/1.25 var(--display); letter-spacing: -.02em; }.compare__subtitle { margin: 7px 0 0; color: var(--dim); font-size: 12px; }.compare__cost-heading { display: flex; justify-content: space-between; gap: 15px; color: var(--dim); font-size: 11px; }.compare__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }.cmp-plan { padding: 16px; border: 1px solid var(--line); border-radius: 11px; background: #0a0a0c; }.cmp-plan--featured { border-color: var(--border-hi); }.cmp-plan__head { min-height: 26px; display: flex; align-items: center; justify-content: space-between; }.cmp-plan__title { margin: 0; font: 600 15px var(--display); }.cmp-ribbon { padding: 4px 7px; border: 1px solid var(--border-hi); border-radius: 5px; color: var(--sub); font-size: 9px; }.cmp-plan__price, .cmp-plan__day { display: flex; justify-content: space-between; gap: 8px; padding: 11px 0; border-bottom: 1px solid var(--line); color: var(--dim); font-size: 10px; }.cmp-plan__price strong,.cmp-plan__day strong { color: var(--text); font-size: 12px; }.cmp-plan__meter,.cmp-mobile__meter { height: 3px; margin: 12px 0; background: #202024; }.cmp-bar { display: block; height: 100%; }.cmp-bar__fill { display: block; width: var(--w,0%); height: 100%; background: #bfc1ca; }.cmp-plan__diffs,.cmp-mobile__diffs { display: grid; gap: 8px; margin: 13px 0; }.cmp-diff { display: flex; justify-content: space-between; gap: 10px; color: var(--dim); font-size: 10px; }.cmp-diff dt,.cmp-diff dd { margin: 0; }.cmp-diff__value { color: var(--sub); }.cmp-plan__infinity,.cmp-mobile__infinity { display: flex; align-items: center; gap: 8px; color: var(--dim); font-size: 10px; }.cmp-plan__infinity > span,.cmp-mobile__infinity > span { color: var(--sub); font-size: 25px; }.cmp-plan__cta,.cmp-mobile__cta { width: 100%; min-height: 37px; font-size: 11px; }
.compare__mobile { display: none; }.cmp-included { margin-top: 20px; padding: 16px; border-top: 1px solid var(--line); }.cmp-included h4 { margin: 0 0 10px; font-size: 12px; }.cmp-included__list { display: flex; flex-wrap: wrap; gap: 10px 20px; margin: 0; padding: 0; list-style: none; }.cmp-included__list li { display: flex; align-items: center; gap: 6px; color: var(--dim); font-size: 10px; }.cmp-included__list .ico { color: var(--label); }

.faq { padding-bottom: 75px; }.faq__list { width: min(100%,820px); display: grid; gap: 8px; margin: 0 auto; }.qa { overflow: hidden; }.qa summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 17px 20px; cursor: pointer; font-size: 13px; font-weight: 500; list-style: none; }.qa summary::-webkit-details-marker { display: none; }.qa summary i { width: 9px; height: 9px; flex: none; border-right: 1px solid var(--dim); border-bottom: 1px solid var(--dim); transform: rotate(45deg) translateY(-2px); transition: transform .2s; }.qa[open] summary i { transform: rotate(225deg) translate(-2px,-1px); }.qa__a { padding: 0 20px 18px; color: var(--dim); font-size: 12px; }.qa__a p { margin: 0; }.faq__list + .section { padding-top: 54px; }

.footer { position: relative; overflow: hidden; padding: 60px var(--gutter) 20px; border-top: 1px solid var(--line); background: #070708; }.footer__top,.footer__bottom { width: min(100%,var(--maxw)); display: flex; justify-content: space-between; gap: 36px; margin: 0 auto; }.footer__brand { display: flex; align-items: center; align-self: flex-start; gap: 12px; }.footer__brand > div { display: grid; }.footer__brand b { font-size: 15px; }.footer__brand span { color: var(--dim); font-size: 11px; }.footer__cols { display: grid; grid-template-columns: repeat(3,minmax(110px,1fr)); gap: clamp(25px,5vw,76px); }.footer__cols > div { display: grid; align-content: start; gap: 8px; }.footer__cols h6 { margin: 0 0 5px; color: var(--faint); font-size: 10px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; }.footer__cols a { width: fit-content; color: var(--dim); font-size: 11px; }.footer__cols a:hover { color: var(--text); }.footer__word { width: min(100%,var(--maxw)); margin: 55px auto 23px; color: rgba(255,255,255,.025); font: 700 clamp(70px,18vw,220px)/.72 var(--display); letter-spacing: -.07em; text-align: center; pointer-events: none; }.footer__bottom { align-items: flex-start; padding-top: 15px; border-top: 1px solid var(--line); color: var(--faint); font-size: 9px; }.footer__bottom span:last-child { max-width: 650px; text-align: right; }

.modal { position: fixed; z-index: 150; inset: 0; display: none; place-items: center; padding: 20px; }.modal.is-open { display: grid; }.modal__scrim { position: absolute; inset: 0; background: rgba(0,0,0,.8); }.modal__card { position: relative; width: min(100%,620px); max-height: min(88vh,760px); overflow: auto; padding: clamp(24px,5vw,48px); border: 1px solid var(--border); border-radius: 16px; background: #101013; box-shadow: inset 0 1px 0 rgba(255,255,255,.06); }.modal__card hr { border: 0; border-top: 1px solid var(--line); margin: 22px 0; }.modal__card p,.modal__card small { color: var(--dim); font-size: 12px; }.modal__title { margin: 0; font: 700 clamp(28px,5vw,44px)/1.05 var(--display); letter-spacing: -.03em; }.modal__title--left { text-align: left; }.modal__card a { text-decoration: underline; text-underline-offset: 3px; }.modal--promo .modal__card { display: grid; grid-template-columns: .8fr 1fr; gap: 26px; padding: 20px; }.promo-art { min-height: 300px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 12px; background: radial-gradient(ellipse at center,#1c1c20,#09090b 70%); }.promo-art__logo { width: 70%; object-fit: contain; }.promo-body { position: relative; display: flex; flex-direction: column; justify-content: center; }.promo-body__close { position: absolute; top: 0; right: 0; }.promo-body__price { color: var(--sub) !important; }.promo-form { display: grid; gap: 10px; }.promo-form input { width: 100%; min-height: 43px; padding: 0 12px; border: 1px solid var(--line-2); border-radius: 8px; background: #09090b; }.promo-code { display: grid; gap: 9px; }.code-chip--big { width: fit-content; padding: 8px 13px; }.link-btn { align-self: flex-start; margin-top: 12px; color: var(--dim); }.promo-body__fine { margin-top: 10px; }

.theme-fab { position: fixed; z-index: 130; left: 16px; bottom: 16px; }.theme-fab__btn { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid var(--line-2); border-radius: 11px; background: #111114; color: var(--sub); font-size: 18px; }.theme-fab__panel { position: absolute; left: 0; bottom: 52px; width: 230px; padding: 14px; border: 1px solid var(--border); border-radius: 12px; background: #111114; opacity: 0; visibility: hidden; transform: translateY(5px); transition: opacity .18s,transform .18s,visibility .18s; }.theme-fab.is-open .theme-fab__panel { opacity: 1; visibility: visible; transform: none; }.theme-fab__title { display: block; margin-bottom: 10px; color: var(--faint); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }.swatches { display: grid; grid-template-columns: repeat(5,1fr); gap: 7px; }.swatches button,.fv-themes button { min-width: 24px; min-height: 24px; border: 1px solid rgba(255,255,255,.17); border-radius: 7px; background: var(--c); }.swatches button.is-active,.fv-themes button.is-active { outline: 2px solid var(--text); outline-offset: 2px; }.fv-themes button { display: inline-flex; align-items: center; gap: 5px; padding: 5px 8px; font-size: 9px; }.fv-themes button span { color: var(--sub); }
.theme-fab__sound { display: flex; align-items: center; gap: 8px; margin-top: 13px; color: var(--dim); font-size: 11px; }.theme-fab__sound .ico { width: 14px; height: 14px; }
.toasts { position: fixed; z-index: 160; right: 16px; bottom: 16px; display: grid; gap: 8px; pointer-events: none; }.toast { display: flex; align-items: center; gap: 9px; min-width: 210px; padding: 11px 13px; border: 1px solid var(--line-2); border-radius: 9px; background: #111114; color: var(--text); font-size: 12px; box-shadow: 0 10px 32px rgba(0,0,0,.3); animation: toastIn .25s var(--ease); }.toast .ico { color: var(--label); }.toast.is-out { opacity: 0; transform: translateY(5px); transition: .25s; }@keyframes toastIn { from { opacity: 0; transform: translateY(6px); } }

.overlay-menu { position: fixed; z-index: 110; inset: 0; display: flex; flex-direction: column; justify-content: center; gap: 40px; padding: 70px var(--gutter) 35px; background: #050506; opacity: 0; visibility: hidden; transition: opacity .25s,visibility .25s; }.overlay-menu.is-open { opacity: 1; visibility: visible; }.overlay-menu__bg { position: absolute; inset: 0; background: radial-gradient(ellipse at 50% 20%,#111114,transparent 60%); }.overlay-menu__close { position: absolute; z-index: 2; top: 18px; right: var(--gutter); }.overlay-menu__links { position: relative; z-index: 1; display: grid; gap: 7px; }.overlay-menu__link { display: flex; align-items: baseline; gap: 18px; font: 600 clamp(30px,6vw,64px)/1.1 var(--display); letter-spacing: -.04em; }.overlay-menu__link small { color: var(--faint); font: 11px var(--font); }.overlay-menu__link:hover { color: var(--sub); }.overlay-menu__foot { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: 9px; }
.site-page { --bar-h: 0px; min-height: 100vh; background: var(--bg); }.site-page.has-promo { --bar-h: 34px; }.icon-library { position: absolute; width: 0; height: 0; overflow: hidden; }.site-atmosphere { position: fixed; z-index: 0; inset: 0; pointer-events: none; background: var(--bg); }.site-page > main,.site-page > .footer { position: relative; z-index: 1; }.site-page .nav { z-index: 70; }.site-page .theme-fab { z-index: 100; }.site-page .footer { margin-top: 0; }
.site-page .nav__links a[aria-current="page"] { color: var(--text); background: rgba(255,255,255,.06); }.site-page .glow-card { position: relative; }.site-page .glow-card::before { content: none; }.site-page .toast { color: var(--text); background: #111114; border-color: var(--line-2); }.site-page .theme-fab__panel { background: #111114; }.site-page .swatches button:focus-visible,.site-page .theme-fab__btn:focus-visible,.site-page .nav a:focus-visible,.site-page .nav button:focus-visible,.site-page .overlay-menu a:focus-visible,.site-page .overlay-menu button:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }

.urban-page { padding-top: 0; }.urban-page__hero { position: relative; min-height: 80svh; display: grid; align-items: center; overflow: hidden; padding: calc(var(--nav-h) + 70px) var(--gutter) 70px; background: linear-gradient(90deg,rgba(5,5,6,.98),rgba(5,5,6,.8) 45%,rgba(5,5,6,.35)),linear-gradient(0deg,var(--bg),transparent 35%),url('../img/urban-script.webp') center / cover no-repeat; }.urban-page__content { width: min(100%,var(--maxw)); margin: 0 auto; }.urban-page__content > * { max-width: 690px; }.urban-page__title { margin: 0; font: 700 clamp(58px,10vw,126px)/.94 var(--display); letter-spacing: -.055em; }.urban-page__status { display: inline-flex; align-items: center; gap: 8px; margin: 22px 0 0; padding: 6px 10px; border: 1px solid var(--line-2); border-radius: 7px; color: var(--sub); font-size: 11px; }.urban-page__status i { width: 6px; height: 6px; border-radius: 50%; background: #7c7c85; }.urban-page__sub { margin: 16px 0 0; color: var(--sub); font-size: clamp(15px,1.5vw,18px); }.urban-page__actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 24px; }.urban-page__facts { width: min(100%,var(--maxw)); display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin: 0 auto; padding: 72px var(--gutter); }.urban-page__fact { padding: 22px; border: 1px solid var(--line); border-radius: 14px; background: linear-gradient(180deg,#111114,#0b0b0d); }.urban-page__fact h2 { margin: 0 0 7px; font: 600 18px var(--display); }.urban-page__fact p { margin: 0; color: var(--dim); font-size: 12px; }.urban-page__pricing { padding-top: 32px; }.urban-page__back { width: min(100%,var(--maxw)); margin: 0 auto; padding: 24px var(--gutter) 90px; color: var(--dim); font-size: 12px; }.urban-page__back:hover { color: var(--text); }

.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.site-page .nav__links a[aria-current="page"]::after { content: ''; }
.btn:focus-visible,button:focus-visible,a:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }

@media (max-width: 1080px) {
  .hero__inner { grid-template-columns: minmax(0,1fr); align-content: center; gap: 5px; padding-top: calc(var(--nav-h) + 54px); }
  .hero__content { position: relative; z-index: 2; }
  .hero__object { position: absolute; z-index: 0; top: 17%; right: -11%; width: 62%; opacity: .3; }
  .hero__mark { max-height: 48vh; }.hero__reflection { display: none; }
  .hero__title { font-size: clamp(52px,7vw,76px); }
  .trust__inner { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .trust__item:nth-child(2) { border-right: 0; }.trust__item:nth-child(3) { padding-left: 0; }
  .steps__track { grid-template-columns: repeat(2,minmax(0,1fr)); }.steps__intro { grid-column: span 2; }
  .cta-band__card { grid-template-columns: 1fr auto; }.cta-band__plans { grid-row: 2; grid-column: 1/-1; }.cta-band__card > .btn { grid-column: 2; grid-row: 1; }
}
@media (max-width: 860px) {
  :root { --nav-h: 62px; }
  .nav { gap: 8px; }.nav__links { display: none; }.nav__actions .nav__burger { display: inline-flex; }.nav__login { display: none; }
  .hero__inner { grid-template-columns: minmax(0,1fr); }
  .hero__content { position: relative; z-index: 2; }.hero__object { position: absolute; z-index: 0; top: 17%; right: -11%; width: 62%; opacity: .38; }.hero__mark { max-height: 48vh; }.hero__reflection { display: none; }
  .hero__title { font-size: clamp(48px,9vw,76px); }.hero__sub { max-width: 540px; }
  .products-grid { gap: 12px; }.product-card__body { padding: 20px; }.product-card__actions .btn { white-space: normal; }
  .bento { grid-template-columns: repeat(6,minmax(0,1fr)); }.fcard--xl,.fcard--wide { grid-column: span 3; }.fcard--tall { grid-column: span 3; grid-row: span 1; }.fcard:not(.fcard--xl):not(.fcard--tall):not(.fcard--wide):not(.fcard--full) { grid-column: span 3; }.fcard--full { grid-column: span 6; }
  .plans { gap: 9px; }.plan { padding: 21px 17px; }.plan__dur { font-size: 10px; }
  .footer__top { flex-direction: column; }.footer__bottom { gap: 18px; }
  .urban-page__facts { padding-top: 52px; }
}
@media (max-width: 620px) {
  :root { --gutter: 18px; }
  .nav { padding-inline: var(--gutter); }.nav__actions { gap: 5px; }.nav__buy { display: none; }.lang-btn { min-width: 38px; padding: 0 8px; }
  .hero { min-height: max(800px,100svh); }.hero__inner { min-height: inherit; padding: 96px var(--gutter) 74px; }.hero__object { top: 11%; right: -26%; width: 82%; opacity: .23; }.hero__title { font-size: clamp(30px,9.4vw,48px); }.hero__sub { font-size: 15px; }.hero__ctas { gap: 8px; }.hero__ctas .btn { min-height: 47px; padding-inline: 14px; font-size: 12px; }.hero__stats { gap: 20px; margin-top: 30px; }.stat b { font-size: 20px; }.stat span { font-size: 9px; }.hero__status { flex-wrap: wrap; font-size: 10px; }
  .trust { padding-block: 14px; }.trust__inner { grid-template-columns: 1fr 1fr; }.trust__item { min-height: 62px; gap: 8px; padding: 7px 9px; }.trust__item:nth-child(odd) { padding-left: 0; }.trust__item:nth-child(even) { border-right: 0; }.trust__item:nth-child(3) { border-right: 1px solid var(--line); }.trust__item b { font-size: 10px; }.trust__item span:not(.trust__icon) { font-size: 9px; }.trust__icon { font-size: 15px; }
  .section { padding-block: 74px; }.sec-head { margin-bottom: 34px; }.sec-title { font-size: clamp(32px,9vw,48px); }.sec-sub { font-size: 14px; }
  .products-grid { grid-template-columns: 1fr; }.product-card__visual { height: 205px; }.product-card__body { min-height: 275px; }.product-card__actions .btn { flex: 1; }
  .menu-stage { padding: 7px; }.menu-tip { font-size: 10px; }
  .bento { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }.fcard--xl,.fcard--tall,.fcard--wide,.fcard--full,.fcard:not(.fcard--xl):not(.fcard--tall):not(.fcard--wide):not(.fcard--full) { grid-column: span 2; grid-row: auto; }.fcard__visual { min-height: 130px; }.fcard__body { padding: 14px; }.fcard h3 { font-size: 15px; }.fcard p { font-size: 11px; }
  .urban-band { min-height: 390px; background-position: 62% center; }.urban-band__content { width: 100%; padding: 28px; }.urban-band__content .sec-title { font-size: 42px; }.urban-band__content > p:not(.eyebrow) { max-width: 310px; font-size: 13px; }
  .steps { padding-block: 72px; }.steps__track { grid-template-columns: 1fr; gap: 10px; }.steps__intro { grid-column: auto; }.step { display: grid; grid-template-columns: 36px minmax(0,1fr); column-gap: 10px; padding: 12px; }.step__num { grid-row: span 3; }.step__visual { grid-column: 2; min-height: 85px; margin: 0 0 10px; }.step h3,.step p { grid-column: 2; }.step p { margin-top: 4px; }
  .cta-band { padding: 12px var(--gutter) 62px; }.cta-band__card { grid-template-columns: 1fr; gap: 18px; padding: 20px; }.cta-band__card > .btn { grid-column: auto; grid-row: auto; }.cta-band__plans { grid-row: auto; grid-column: auto; flex-wrap: wrap; }.cta-plan { flex: 1; }
  .final { min-height: 560px; padding-block: 80px 100px; }.final__title { font-size: clamp(42px,11vw,68px); }.community { gap: 10px; margin-top: 42px; padding: 13px; }.community__icon { font-size: 18px; }.community > div span { font-size: 9px; }.community .btn { padding-inline: 10px; }
  .section--page { padding-top: calc(var(--nav-h) + 65px); }.pricing-switch { margin-bottom: 30px; }.pricing-switch button { padding-inline: 10px; font-size: 10px; }.plans { grid-template-columns: 1fr; max-width: 440px; gap: 15px; }.plan { min-height: 240px; padding: 22px; }.urban-plan { min-height: 190px; }.assurances { justify-content: flex-start; gap: 10px 15px; }.compare { margin-top: 35px; padding: 14px; }.compare__desktop { display: none; }.compare__mobile { display: block; }.cmp-tabs { display: flex; gap: 4px; margin-bottom: 10px; }.cmp-tabs__tab { flex: 1; padding: 8px 4px; border: 1px solid var(--line); border-radius: 7px; color: var(--dim); font-size: 10px; }.cmp-tabs__tab.is-active { border-color: var(--border-hi); color: var(--text); }.cmp-mobile { position: relative; padding: 14px; border: 1px solid var(--line); border-radius: 10px; background: #0a0a0c; }.cmp-mobile__ribbon { display: block; width: fit-content; margin-bottom: 10px; }.cmp-mobile__head { display: flex; justify-content: space-between; gap: 12px; }.cmp-mobile__head h4 { margin: 0; font: 600 15px var(--display); }.cmp-mobile__head p { margin: 3px 0 0; color: var(--dim); font-size: 10px; }.cmp-mobile__price { display: grid; justify-items: end; color: var(--dim); font-size: 9px; }.cmp-mobile__price strong { color: var(--text); font-size: 17px; }.cmp-mobile__day { display: flex; justify-content: space-between; padding-top: 12px; color: var(--dim); font-size: 10px; }.cmp-mobile__day strong { color: var(--text); }.cmp-included { padding-inline: 0; }.cmp-included__list { display: grid; grid-template-columns: 1fr 1fr; }
  .faq__list { gap: 6px; }.qa summary { padding: 14px; font-size: 12px; }.qa__a { padding: 0 14px 14px; font-size: 11px; }
  .footer { padding-top: 42px; }.footer__cols { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 25px; }.footer__cols > div:last-child { grid-column: span 2; }.footer__word { margin-block: 48px 20px; }.footer__bottom { flex-direction: column; font-size: 8px; }.footer__bottom span:last-child { text-align: left; }
  .modal--promo .modal__card { grid-template-columns: 1fr; }.promo-art { min-height: 130px; }.promo-art__logo { width: 80px; }.modal__card { padding: 23px; }
  .theme-fab { left: 10px; bottom: 10px; }.theme-fab__btn { width: 38px; height: 38px; }.toasts { right: 10px; bottom: 10px; }
  .steps__intro .sec-title { font-size: clamp(32px,9vw,44px); }
  .urban-page__hero { min-height: 76svh; padding-top: calc(var(--nav-h) + 54px); background-position: 60% center; }.urban-page__title { font-size: clamp(56px,14vw,84px); }.urban-page__sub { font-size: 14px; }.urban-page__facts { grid-template-columns: 1fr; gap: 8px; padding: 38px var(--gutter); }.urban-page__fact { padding: 18px; }.urban-page__back { padding-bottom: 60px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

@font-face{font-family:TempetOutfit;src:url('../fonts/Outfit-Medium.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:TempetOutfit;src:url('../fonts/Outfit-SemiBold.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:TempetOutfit;src:url('../fonts/Outfit-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:TempetLucide;src:url('../fonts/Tempet-Lucide.ttf') format('truetype');font-weight:400;font-display:block}

.tm-component{--tm-frame:#101013;--tm-group:#1b1b20;--tm-ctrl:#0b0b0d;--tm-hover:#1b1b20;--tm-border:#36363e;--tm-text:#f2f2f5;--tm-muted:#8c8c96;--tm-accent:#e8eaf0;--tm-accent-rgb:232,234,240;--tm-accent-light:#fff;--tm-accent-dim:#9f9fa3;--tm-on-accent:#0b0b0d;position:relative;z-index:1;width:100%;max-width:1220px;margin:0 auto;color:var(--tm-text);font:500 13px/1.35 TempetOutfit,Outfit,Arial,sans-serif;contain:layout style;isolation:isolate}
.tm-component *{box-sizing:border-box}
.tm-component button,.tm-component input,.tm-component select{font:inherit;color:inherit}
.tm-component button{border:0;cursor:pointer}
.tm-scale-wrap{position:relative;margin:0 auto;overflow:visible;transform-origin:top left}
.tm-scene{position:relative;transform-origin:top left;overflow:visible;user-select:none;-webkit-font-smoothing:antialiased}
.tm-icon{font:400 16px/1 TempetLucide;display:inline-grid;place-items:center;width:18px;height:18px;flex:none;color:currentColor}
.tm-ambient{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.tm-ambient i{position:absolute;width:540px;height:540px;left:calc(50% - 270px);top:30px;border-radius:50%;background:radial-gradient(circle,rgba(var(--tm-accent-rgb),.13),transparent 68%);filter:blur(28px);transform:translateX(var(--tm-drift,0));opacity:.68}
.tm-ambient i:nth-child(2){width:260px;height:260px;left:75%;top:170px;background:radial-gradient(circle,rgba(59,117,174,.12),transparent 70%);filter:blur(22px)}
.tm-ambient i:nth-child(3){width:210px;height:210px;left:5%;top:300px;background:radial-gradient(circle,rgba(148,93,189,.1),transparent 70%);filter:blur(24px)}
.tm-window-group{position:absolute;z-index:2;width:800px;height:560px;transition:opacity .24s ease,filter .24s ease}
.tm-window{position:absolute;left:0;top:0;width:800px;height:560px;display:grid;grid-template-columns:200px 600px;overflow:hidden;border:1px solid color-mix(in srgb,var(--tm-border) 78%,transparent);border-radius:14px;background:var(--tm-frame);color:var(--tm-text);box-shadow:0 32px 85px rgba(0,0,0,.62),0 0 0 1px rgba(0,0,0,.38),0 0 75px -36px rgba(var(--tm-accent-rgb),.48);transition:opacity .28s ease,transform .32s cubic-bezier(.2,.8,.2,1),filter .28s ease;transform-origin:center}
.tm-window::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:var(--tm-bg-image,none);background-size:cover;background-position:center;opacity:var(--tm-bg-opacity,0);mix-blend-mode:screen}
.tm-window::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(520px 260px at 70% 0%,rgba(var(--tm-accent-rgb),.065),transparent 72%)}
.tm-window[data-background="1"]::after{background:radial-gradient(480px 270px at 50% 0%,rgba(var(--tm-accent-rgb),.2),transparent 78%)}
.tm-window[data-background="2"]::after{background:radial-gradient(480px 270px at 50% 100%,rgba(var(--tm-accent-rgb),.2),transparent 78%)}
.tm-window[data-background="3"]::after{background:linear-gradient(135deg,rgba(var(--tm-accent-rgb),.12),transparent 46%,rgba(105,83,180,.12))}
.tm-window[data-background="4"]::after{background:linear-gradient(180deg,rgba(10,10,13,.38),rgba(10,10,13,.67))}
.tm-window.is-closed{opacity:0;transform:scale(.96) translateY(9px);filter:blur(5px);pointer-events:none}
.tm-sidebar,.tm-main{position:relative;z-index:1;min-width:0;min-height:0}
.tm-sidebar{display:flex;flex-direction:column;padding:16px 11px 12px;background:linear-gradient(180deg,color-mix(in srgb,var(--tm-group) 80%,var(--tm-frame)),var(--tm-frame));border-right:1px solid color-mix(in srgb,var(--tm-border) 65%,transparent)}
.tm-brand{height:46px;display:flex;align-items:center;gap:10px;padding:0 7px;margin-bottom:17px}
.tm-brand__mark{width:31px;height:31px;display:grid;place-items:center;flex:none;border-radius:9px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);box-shadow:0 5px 18px rgba(0,0,0,.22)}
.tm-brand__mark img{display:block;width:23px;height:23px;object-fit:contain}
.tm-brand__type{display:flex;align-items:center;gap:7px;min-width:0}
.tm-brand__type b{font-weight:700;font-size:16px;letter-spacing:-.04em;color:var(--tm-text)}
.tm-brand__type>span{font-size:8px;line-height:1;padding:4px 5px;border-radius:4px;border:1px solid rgba(var(--tm-accent-rgb),.22);color:var(--tm-accent);letter-spacing:.09em;font-weight:700}
.tm-categories{position:relative;display:grid;gap:3px;margin-top:10px}
.tm-categories::before{content:"";position:absolute;z-index:0;left:0;top:var(--tm-active-y,0);width:100%;height:36px;border-left:2px solid var(--tm-accent);border-radius:7px;background:linear-gradient(90deg,rgba(var(--tm-accent-rgb),.09),rgba(var(--tm-accent-rgb),.035) 58%,transparent);box-shadow:inset 0 0 18px rgba(var(--tm-accent-rgb),.025);transition:top .3s cubic-bezier(.2,.8,.2,1)}
.tm-category{position:relative;width:100%;height:36px;display:flex;align-items:center;gap:10px;padding:0 10px;border-radius:7px;text-align:left;background:transparent;color:color-mix(in srgb,var(--tm-muted) 91%,var(--tm-text));font-size:12.5px;font-weight:500;transition:color .16s ease,background .18s ease,transform .2s cubic-bezier(.2,.8,.2,1)}
.tm-category{z-index:1}
.tm-category:hover{background:rgba(255,255,255,.035);color:var(--tm-text)}
.tm-category:active{transform:scale(.985)}
.tm-category.is-active{background:transparent;color:var(--tm-text)}
.tm-category-icon{display:grid;place-items:center;width:18px;height:18px;color:var(--tm-muted)}
.tm-category .tm-icon{width:16px;height:16px;font-size:15px}
.tm-category.is-active .tm-category-icon{color:var(--tm-accent)}
.tm-category-name{flex:1;white-space:nowrap}
.tm-category-count{min-width:17px;height:17px;padding:0 4px;display:grid;place-items:center;border-radius:5px;background:rgba(var(--tm-accent-rgb),.13);color:var(--tm-accent);font-size:10px;font-variant-numeric:tabular-nums}
.tm-category-count[hidden],.tm-category-search-dot[hidden]{display:none}
.tm-category-search-dot{width:5px;height:5px;border-radius:50%;background:var(--tm-accent);box-shadow:0 0 9px rgba(var(--tm-accent-rgb),.85)}
.tm-sidebar-status{position:relative;display:flex;align-items:center;gap:9px;margin-top:auto;padding:10px 8px 2px;border-top:1px solid rgba(255,255,255,.055);color:var(--tm-muted)}
.tm-status-avatar{width:27px;height:27px;display:grid;place-items:center;border-radius:8px;background:rgba(var(--tm-accent-rgb),.1);color:var(--tm-accent);font-weight:700}
.tm-status-dot{position:absolute;width:6px;height:6px;left:29px;top:9px;border-radius:50%;background:#777;box-shadow:0 0 0 2px var(--tm-frame)}
.tm-status-dot::after{content:"";position:absolute;inset:-4px;border:1px solid currentColor;border-radius:50%;color:#777;opacity:0;animation:tm-status-pulse 1.8s ease-out infinite}@keyframes tm-status-pulse{0%{transform:scale(.55);opacity:.45}100%{transform:scale(1.8);opacity:0}}
.tm-sidebar-status>div{min-width:0;display:grid;gap:1px}
.tm-sidebar-status b{font-size:11px;color:var(--tm-text);font-weight:600}
.tm-sidebar-status small{font-size:9.5px;color:var(--tm-muted);white-space:nowrap}
.tm-main{display:flex;flex-direction:column;background:color-mix(in srgb,var(--tm-frame) 94%,#070708)}
.tm-main-head{height:72px;flex:none;display:flex;align-items:center;gap:12px;padding:0 18px;border-bottom:1px solid color-mix(in srgb,var(--tm-border) 58%,transparent);background:linear-gradient(180deg,rgba(255,255,255,.018),transparent);touch-action:none}
.tm-page-mark{width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(var(--tm-accent-rgb),.16);border-radius:9px;background:rgba(var(--tm-accent-rgb),.065);color:var(--tm-accent)}
.tm-page-mark .tm-icon{font-size:17px}
.tm-page-title{display:grid;gap:2px;min-width:110px;max-width:230px}
.tm-page-title strong{font-weight:600;font-size:15px;line-height:1.15;letter-spacing:-.02em}
.tm-page-title small{overflow:hidden;color:var(--tm-muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.tm-search{height:31px;width:176px;margin-left:auto;display:flex;align-items:center;gap:7px;padding:0 9px;border:1px solid rgba(255,255,255,.075);border-radius:7px;background:var(--tm-ctrl);color:var(--tm-muted)}
.tm-search:focus-within{border-color:rgba(var(--tm-accent-rgb),.45);box-shadow:0 0 0 2px rgba(var(--tm-accent-rgb),.08)}
.tm-search .tm-icon{width:14px;height:14px;font-size:13px}
.tm-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--tm-text);font-size:11px}
.tm-search input::placeholder{color:var(--tm-muted);opacity:.78}
.tm-icon-button{width:28px;height:28px;display:grid;place-items:center;border:1px solid transparent!important;border-radius:7px;background:transparent;color:var(--tm-muted)!important}
.tm-icon-button:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.08)!important;color:var(--tm-text)!important}
.tm-close .tm-icon{width:14px;height:14px;font-size:14px}
.tm-content-scroll{flex:1;min-height:0;overflow:auto;padding:14px 16px 18px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.13) transparent}
.tm-content-scroll::-webkit-scrollbar,.tm-panel-scroll::-webkit-scrollbar{width:6px}
.tm-content-scroll::-webkit-scrollbar-thumb,.tm-panel-scroll::-webkit-scrollbar-thumb{background:rgba(255,255,255,.14);border-radius:8px}
.tm-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px}
.tm-column{display:grid;align-content:start;gap:14px;min-width:0}
.tm-card{min-width:0;padding:0 16px 13px;border:1px solid color-mix(in srgb,var(--tm-border) 68%,transparent);border-radius:9px;background:linear-gradient(180deg,color-mix(in srgb,var(--tm-group) 92%,transparent),color-mix(in srgb,var(--tm-group) 78%,var(--tm-frame)));box-shadow:0 4px 13px rgba(0,0,0,.12)}
.tm-card-head{height:42px;display:flex;align-items:center;gap:8px;margin:0 0 3px;border-bottom:1px solid rgba(255,255,255,.055);color:var(--tm-text)}
.tm-card-head>span{display:grid;place-items:center;width:17px;height:17px;color:var(--tm-accent)}
.tm-card-head .tm-icon{font-size:15px;width:15px;height:15px}
.tm-card-head b{font-size:12px;font-weight:600}
.tm-card-body{display:grid;align-content:start}
.tm-group-label{height:26px;display:flex;align-items:end;padding:0 0 5px;color:var(--tm-muted);font-size:9px;line-height:1;text-transform:uppercase;letter-spacing:.12em;font-weight:700}
.tm-row{position:relative;min-width:0;color:var(--tm-text)}
.tm-toggle-row{height:30px;display:flex;align-items:center;gap:8px}
.tm-toggle-main{min-width:0;flex:1;display:flex;align-items:center;gap:8px}
.tm-row-label{min-width:0;overflow:hidden;color:color-mix(in srgb,var(--tm-text) 90%,var(--tm-muted));font-size:11px;white-space:nowrap;text-overflow:ellipsis}
.tm-row-tools{display:flex;align-items:center;gap:6px;flex:none}
.tm-switch{position:relative;width:27px;height:15px;flex:none;padding:0;border:1px solid rgba(255,255,255,.105)!important;border-radius:10px;background:#27272d;color:transparent;transition:background .18s,border-color .18s,box-shadow .18s}
.tm-switch::after{content:"";position:absolute;left:2px;top:2px;width:9px;height:9px;border-radius:50%;background:#777780;transition:transform .2s cubic-bezier(.2,.8,.2,1),background .18s}
.tm-switch.is-on{border-color:var(--tm-accent)!important;background:var(--tm-accent);box-shadow:0 0 11px rgba(var(--tm-accent-rgb),.16)}
.tm-switch.is-on::after{transform:translateX(12px);background:var(--tm-on-accent)}
.tm-checkbox{width:14px;height:14px;display:grid;place-items:center;padding:0;border:1px solid rgba(255,255,255,.18)!important;border-radius:4px;background:var(--tm-ctrl);color:var(--tm-on-accent);transition:background .18s,border-color .18s}
.tm-checkbox .tm-icon{width:10px;height:10px;font-size:10px;opacity:0;transform:scale(.55);transition:opacity .16s,transform .16s}
.tm-checkbox.is-on{background:var(--tm-accent);border-color:var(--tm-accent)!important}
.tm-checkbox.is-on .tm-icon{opacity:1;transform:none}
.tm-keychip{height:22px;min-width:42px;padding:0 7px!important;border:1px solid color-mix(in srgb,var(--tm-border) 75%,transparent)!important;border-radius:5px;background:var(--tm-ctrl);color:var(--tm-muted)!important;font-size:9.5px!important;font-weight:600!important;text-align:center;white-space:nowrap;transition:border-color .16s,color .16s,background .16s}
.tm-keychip:hover{border-color:rgba(var(--tm-accent-rgb),.48)!important;color:var(--tm-text)!important}
.tm-keychip.is-listening{color:var(--tm-on-accent)!important;background:var(--tm-accent);border-color:var(--tm-accent)!important;animation:tm-key-pulse .8s ease-in-out infinite}
.tm-keychip.is-listening i{display:inline-block;width:3px;height:8px;margin:0 1px;border-radius:3px;background:currentColor;animation:tm-listen .6s ease-in-out infinite alternate}
.tm-keychip.is-listening i:nth-child(2){animation-delay:.18s}.tm-keychip.is-listening i:nth-child(3){animation-delay:.34s}
@keyframes tm-key-pulse{50%{box-shadow:0 0 0 3px rgba(var(--tm-accent-rgb),.18)}}
@keyframes tm-listen{to{transform:scaleY(.45)}}
.tm-color-chip{width:15px;height:15px;flex:none;padding:0!important;border:1px solid rgba(255,255,255,.38)!important;border-radius:4px;background:var(--swatch,#fff);box-shadow:0 0 9px -3px var(--swatch,#fff);transition:transform .16s}
.tm-color-chip:hover{transform:scale(1.12)}
.tm-color-chip.is-outline{border:2px solid var(--swatch,#000)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.48)}
.tm-options{width:15px;height:15px;padding:0!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:50%;background:transparent;color:var(--tm-muted)!important;font-size:9px!important;font-weight:600!important;line-height:1}
.tm-options:hover{border-color:rgba(255,255,255,.08)!important;background:rgba(255,255,255,.05);color:var(--tm-text)!important}
.tm-slider-row{height:46px;padding-top:1px;display:grid;grid-template-rows:20px 14px;gap:3px}
.tm-slider-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.tm-slider-heading output{flex:none;color:var(--tm-accent);font-size:10px;font-variant-numeric:tabular-nums}
.tm-slider-row input[type=range],.tm-option-slider input[type=range],.tm-panel-slider input[type=range]{width:100%;height:14px;margin:0;appearance:none;-webkit-appearance:none;outline:0;background:transparent;cursor:pointer;touch-action:pan-y}
.tm-slider-row input[type=range]::-webkit-slider-runnable-track,.tm-option-slider input[type=range]::-webkit-slider-runnable-track,.tm-panel-slider input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:4px;background:linear-gradient(90deg,var(--tm-accent) var(--tm-progress,0%),rgba(255,255,255,.11) var(--tm-progress,0%))}
.tm-slider-row input[type=range]::-moz-range-track,.tm-option-slider input[type=range]::-moz-range-track,.tm-panel-slider input[type=range]::-moz-range-track{height:4px;border-radius:4px;background:rgba(255,255,255,.11)}
.tm-slider-row input[type=range]::-moz-range-progress,.tm-option-slider input[type=range]::-moz-range-progress,.tm-panel-slider input[type=range]::-moz-range-progress{height:4px;border-radius:4px;background:var(--tm-accent)}
.tm-slider-row input[type=range]::-webkit-slider-thumb,.tm-option-slider input[type=range]::-webkit-slider-thumb,.tm-panel-slider input[type=range]::-webkit-slider-thumb{width:10px;height:10px;margin-top:-3px;appearance:none;-webkit-appearance:none;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:var(--tm-accent);box-shadow:0 0 0 3px rgba(var(--tm-accent-rgb),.13)}
.tm-slider-row input[type=range]::-moz-range-thumb,.tm-option-slider input[type=range]::-moz-range-thumb,.tm-panel-slider input[type=range]::-moz-range-thumb{width:9px;height:9px;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:var(--tm-accent);box-shadow:0 0 0 3px rgba(var(--tm-accent-rgb),.13)}
.tm-range-row{height:50px}.tm-range-inputs{position:relative;display:flex;align-items:center;height:14px}.tm-range-inputs::before{content:"";position:absolute;left:0;right:0;top:5px;height:4px;border-radius:5px;background:rgba(255,255,255,.1)}.tm-range-inputs input{position:absolute;inset:0;height:14px!important;pointer-events:none}.tm-range-inputs input::-webkit-slider-runnable-track{background:transparent!important}.tm-range-inputs input::-moz-range-track{background:transparent!important}.tm-range-inputs input::-webkit-slider-thumb{pointer-events:auto}.tm-range-inputs input::-moz-range-thumb{pointer-events:auto}
.tm-select-row{height:62px;display:grid;grid-template-rows:20px 30px;gap:2px;align-content:center}
.tm-select-label{font-size:10.5px;color:var(--tm-muted)}
.tm-select{min-width:0;height:30px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 9px!important;border:1px solid color-mix(in srgb,var(--tm-border) 72%,transparent)!important;border-radius:6px;background:var(--tm-ctrl);color:var(--tm-text)!important;text-align:left;font-size:10.5px!important}
.tm-select:hover{border-color:rgba(var(--tm-accent-rgb),.42)!important}
.tm-select>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tm-select .tm-icon{width:12px;height:12px;font-size:11px;color:var(--tm-muted)}
.tm-text-row{height:48px;display:grid;gap:4px}.tm-text-row label{color:var(--tm-muted);font-size:10px}.tm-text-row input,.tm-manual-add input,.tm-panel-field input,.tm-panel-field select,.tm-player-search input{min-width:0;height:28px;padding:0 8px;border:1px solid var(--tm-border);border-radius:6px;outline:0;background:var(--tm-ctrl);font-size:11px}.tm-text-row input:focus,.tm-manual-add input:focus,.tm-panel-field input:focus,.tm-player-search input:focus{border-color:rgba(var(--tm-accent-rgb),.5)}
.tm-reveal{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .22s ease,opacity .18s ease}.tm-reveal.is-open{grid-template-rows:1fr;opacity:1}.tm-reveal-inner{min-height:0;overflow:hidden;padding-left:12px;border-left:1px solid rgba(255,255,255,.08);margin:3px 0 3px 6px}.tm-reveal.is-collapsed .tm-reveal-inner{padding-top:0;padding-bottom:0;border-color:transparent}
.tm-sub-row{color:var(--tm-muted)}
.tm-row.is-search-hit{border-radius:4px;background:rgba(var(--tm-accent-rgb),.075);box-shadow:0 0 0 3px rgba(var(--tm-accent-rgb),.075);animation:tm-search-hit 1.2s ease-in-out infinite alternate}
.tm-category.is-search-match{color:var(--tm-accent)}
@keyframes tm-search-hit{to{background:rgba(var(--tm-accent-rgb),.12)}}
.tm-card-note{margin:5px 0;color:var(--tm-muted);font-size:10px;line-height:1.45}
.tm-action-button,.tm-session-toggle{min-height:28px;padding:0 10px!important;border:1px solid rgba(var(--tm-accent-rgb),.2)!important;border-radius:6px;background:rgba(var(--tm-accent-rgb),.08);color:var(--tm-accent)!important;font-size:10.5px!important;font-weight:600!important}
.tm-action-button:hover,.tm-session-toggle:hover{background:rgba(var(--tm-accent-rgb),.14)}
.tm-session-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;margin:6px 0}
.tm-session-list{display:grid;grid-template-rows:0fr;opacity:0;overflow:hidden;transition:grid-template-rows .2s,opacity .18s}.tm-session-list.is-open{grid-template-rows:1fr;opacity:1}.tm-session-list label{min-height:27px;display:flex;align-items:center;gap:8px;color:var(--tm-muted);font-size:10px}.tm-session-list input{margin-left:auto;accent-color:var(--tm-accent)}
.tm-check{width:13px;height:13px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.16);border-radius:4px}.tm-check.is-on{background:var(--tm-accent);color:var(--tm-on-accent)}.tm-check .tm-icon{width:10px;height:10px;font-size:9px}
.tm-manual-add{display:grid;gap:6px;padding:7px 0;color:var(--tm-muted);font-size:10px}.tm-manual-add>div{display:flex;gap:6px}.tm-manual-add input{flex:1}.tm-manual-add button,.tm-friend-list button{padding:0 10px!important;border:1px solid rgba(var(--tm-accent-rgb),.2)!important;border-radius:6px;background:rgba(var(--tm-accent-rgb),.09);color:var(--tm-accent)!important;font-size:10px!important}
.tm-friend-list{display:grid;gap:6px;padding-top:8px;color:var(--tm-muted);font-size:10px}.tm-friend-list>div{display:flex;align-items:center;justify-content:space-between;color:var(--tm-text)}.tm-friend-list button{height:22px;color:#f07878!important}.tm-empty-friends,.tm-empty{padding:15px 4px;color:var(--tm-muted);font-size:10px;text-align:center}
.tm-dock{position:absolute;z-index:5;top:8px;left:50%;display:flex;align-items:center;gap:3px;height:32px;padding:3px;border:1px solid rgba(255,255,255,.065);border-radius:9px;background:rgba(13,13,17,.72);box-shadow:0 8px 25px rgba(0,0,0,.3);transform:translateX(-50%)}
.tm-dock-item{height:24px;min-width:26px;display:flex;align-items:center;justify-content:center;gap:6px;padding:0 7px!important;border-radius:6px;background:transparent;color:var(--tm-muted)!important;transition:background .16s,color .16s}
.tm-dock-item .tm-icon{width:14px;height:14px;font-size:14px}.tm-dock-item span{display:none;font-size:10px}.tm-dock-item.is-open,.tm-dock-item.is-selected{background:rgba(var(--tm-accent-rgb),.1);color:var(--tm-accent)!important}.tm-dock-item.is-selected span{display:inline}.tm-dock-item:hover{color:var(--tm-text)!important}
.tm-preview{position:absolute;left:810px;top:7px;width:390px;height:510px;overflow:hidden;border:1px solid color-mix(in srgb,var(--tm-border) 78%,transparent);border-radius:12px;background:var(--tm-frame);box-shadow:0 28px 70px rgba(0,0,0,.55),0 0 50px -30px rgba(var(--tm-accent-rgb),.42);transition:opacity .25s ease,transform .3s ease,filter .25s ease}
.tm-preview.is-closed{opacity:0;transform:translateY(8px) scale(.98);filter:blur(4px);pointer-events:none}
.tm-preview-head{height:43px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid rgba(255,255,255,.06);font-size:11.5px}.tm-preview-head>span{display:flex;align-items:center;gap:7px}.tm-preview-head .tm-icon{width:15px;height:15px;color:var(--tm-accent);font-size:15px}.tm-preview-head small{display:flex;align-items:center;gap:5px;color:#e56d6d;font-size:8px;letter-spacing:.11em}.tm-preview-head small i{width:5px;height:5px;border-radius:50%;background:#e56d6d;box-shadow:0 0 8px #e56d6d;animation:tm-live 1.2s steps(2) infinite}@keyframes tm-live{50%{opacity:.25}}
.tm-preview-canvas{position:relative;height:420px;overflow:hidden;background:radial-gradient(ellipse at center,rgba(47,52,68,.18),transparent 68%)}.tm-preview-canvas canvas{display:block;width:100%;height:100%}.tm-preview-hint{position:absolute;bottom:10px;left:50%;padding:4px 9px;border-radius:12px;background:rgba(0,0,0,.42);color:rgba(255,255,255,.5);font-size:9px;white-space:nowrap;transform:translateX(-50%);pointer-events:none}
.tm-preview-controls{height:46px;display:flex;align-items:center;gap:13px;padding:0 12px;border-top:1px solid rgba(255,255,255,.06);color:var(--tm-muted);font-size:9.5px}.tm-preview-controls label{display:flex;align-items:center;gap:5px;white-space:nowrap}.tm-preview-controls label input{position:absolute;opacity:0}.tm-preview-controls label span{width:13px;height:13px;border:1px solid rgba(255,255,255,.18);border-radius:4px}.tm-preview-controls label input:checked+span{background:var(--tm-accent);border-color:var(--tm-accent)}.tm-preview-controls label input:checked+span::after{content:"";display:block;width:6px;height:3px;margin:3px;border-left:1.5px solid var(--tm-on-accent);border-bottom:1.5px solid var(--tm-on-accent);transform:rotate(-45deg)}
.tm-preview-model{display:flex;gap:2px;padding:2px;border-radius:6px;background:rgba(255,255,255,.045)}.tm-preview-model button{height:21px;padding:0 6px!important;border-radius:4px;background:transparent;color:var(--tm-muted)!important;font-size:8.5px!important;white-space:nowrap}.tm-preview-model button.is-selected{background:rgba(var(--tm-accent-rgb),.13);color:var(--tm-text)!important}
.tm-watermark,.tm-keybinds,.tm-spotify-widget{position:absolute;z-index:8;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:rgba(12,13,17,.85);box-shadow:0 10px 30px rgba(0,0,0,.4)}.tm-watermark{top:47px;right:12px;height:30px;display:flex;align-items:center;gap:7px;padding:0 9px;font-size:9px;color:var(--tm-muted)}.tm-watermark[hidden],.tm-keybinds[hidden],.tm-spotify-widget[hidden]{display:none}.tm-watermark img{width:15px;height:15px;object-fit:contain}.tm-watermark b{font-size:10px;color:var(--tm-text)}.tm-watermark>i{width:1px;height:12px;background:rgba(255,255,255,.12)}.tm-watermark>span{color:var(--tm-accent);font-variant-numeric:tabular-nums}.tm-keybinds{right:12px;top:86px;width:190px;padding:9px 10px;color:var(--tm-muted);font-size:10px}.tm-keybinds header{display:flex;align-items:center;gap:6px;padding-bottom:6px;color:var(--tm-text);font-weight:600}.tm-keybinds header .tm-icon{width:13px;height:13px;color:var(--tm-accent)}.tm-keybinds header span{margin-left:auto;color:var(--tm-muted)}.tm-keybinds>div{display:flex;justify-content:space-between;padding:4px 0}.tm-keybinds kbd{color:var(--tm-accent);font:600 9px TempetOutfit}.tm-spotify-widget{right:12px;bottom:12px;width:225px;padding:9px;color:var(--tm-text)}.tm-spotify-widget>header{display:flex;gap:6px;align-items:center;margin-bottom:8px;font-size:10px}.tm-spotify-widget>header .tm-icon{color:var(--tm-accent)}.tm-spotify-track{display:grid;gap:3px;margin-top:8px}.tm-spotify-track b{font-size:10px}.tm-spotify-track small{color:var(--tm-muted);font-size:9px}.tm-spotify-track>div,.tm-spotify-progress{height:3px;margin:4px 0;border-radius:5px;background:rgba(255,255,255,.1);overflow:hidden}.tm-spotify-track>div i,.tm-spotify-progress i{display:block;width:38%;height:100%;background:var(--tm-accent);animation:tm-track 32s linear infinite}@keyframes tm-track{from{width:8%}to{width:96%}}.tm-spotify-cover{width:54px;height:54px;display:grid;place-items:center;border-radius:8px;background:radial-gradient(circle at 25% 25%,#eb9b4e,#71355a 65%,#101013);color:white;font-size:25px}
.tm-float-panel-host{position:absolute;inset:0;z-index:7;pointer-events:none}.tm-panel{position:absolute;width:348px;max-height:505px;display:flex;flex-direction:column;overflow:hidden;border:1px solid color-mix(in srgb,var(--tm-border) 83%,transparent);border-radius:11px;background:color-mix(in srgb,var(--tm-frame) 93%,#050507);box-shadow:0 25px 75px rgba(0,0,0,.7),0 0 40px -25px rgba(var(--tm-accent-rgb),.36);pointer-events:auto;animation:tm-panel-in .18s ease-out}@keyframes tm-panel-in{from{opacity:0;transform:translateY(5px) scale(.99)}to{opacity:1;transform:none}}.tm-panel-head{height:42px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:0 12px;border-bottom:1px solid rgba(255,255,255,.065);background:rgba(255,255,255,.018);cursor:move;touch-action:none}.tm-panel-head>span{display:flex;align-items:center;gap:8px;font-size:12px}.tm-panel-head>span .tm-icon{color:var(--tm-accent)}.tm-panel-head button{width:24px;height:24px;display:grid;place-items:center;border-radius:5px;background:transparent;color:var(--tm-muted)}.tm-panel-head button:hover{background:rgba(255,255,255,.07);color:var(--tm-text)}.tm-panel-head button .tm-icon{width:13px;height:13px}.tm-panel-scroll{min-height:0;overflow:auto;padding:11px 12px 14px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.14) transparent}.tm-section-label{margin:9px 0 6px;color:var(--tm-muted);font-size:8.5px;letter-spacing:.12em}.tm-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.tm-panel-check{min-height:25px;display:flex;align-items:center;gap:7px;color:var(--tm-text);font-size:10px;cursor:pointer}.tm-panel-check input,.tm-option-check input{position:absolute;opacity:0;pointer-events:none}.tm-panel-check>span,.tm-option-check>span{width:13px;height:13px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.16);border-radius:4px;background:var(--tm-ctrl);color:var(--tm-on-accent)}.tm-panel-check input:checked+span,.tm-option-check input:checked+span{background:var(--tm-accent);border-color:var(--tm-accent)}.tm-panel-check .tm-icon,.tm-option-check .tm-icon{width:10px;height:10px;font-size:9px;opacity:0}.tm-panel-check input:checked+span .tm-icon,.tm-option-check input:checked+span .tm-icon{opacity:1}.tm-settings-options{display:grid;grid-template-columns:1fr 1fr;column-gap:7px}.tm-panel-slider,.tm-option-slider{display:grid;gap:6px;margin:9px 0;color:var(--tm-muted);font-size:10px}.tm-panel-slider>span,.tm-option-slider>span{display:flex;justify-content:space-between}.tm-panel-slider output,.tm-option-slider output{color:var(--tm-accent);font-variant-numeric:tabular-nums}.tm-menu-key-row{display:flex;align-items:center;justify-content:space-between;font-size:10px}.tm-panel-hint{display:block;margin:6px 0;color:var(--tm-muted);font-size:8.5px;line-height:1.4}.tm-profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.tm-profile-grid button{min-height:43px;display:grid;align-content:center;gap:2px;padding:5px;border:1px solid rgba(255,255,255,.07)!important;border-radius:6px;background:rgba(255,255,255,.025);text-align:center}.tm-profile-grid button.is-selected{border-color:rgba(var(--tm-accent-rgb),.4)!important;background:rgba(var(--tm-accent-rgb),.07)}.tm-profile-grid b{font-size:10px}.tm-profile-grid small{font-size:8px;color:var(--tm-muted)}.tm-panel-field{display:grid;gap:4px;margin:7px 0;color:var(--tm-muted);font-size:9px}.tm-panel-field input,.tm-panel-field select{width:100%;height:26px}.tm-config-actions{display:grid;grid-template-columns:repeat(5,1fr);gap:4px}.tm-config-actions button{height:24px;border:1px solid rgba(255,255,255,.08)!important;border-radius:5px;background:rgba(255,255,255,.035);font-size:8px}.tm-config-actions button:hover{border-color:rgba(var(--tm-accent-rgb),.35)!important}
.tm-theme-presets{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.tm-theme-preset{display:grid;gap:4px;padding:5px!important;border:1px solid transparent!important;border-radius:6px;background:transparent;text-align:center}.tm-theme-preset:hover,.tm-theme-preset.is-selected{border-color:rgba(var(--tm-accent-rgb),.35)!important;background:rgba(255,255,255,.035)}.tm-theme-preset small{color:var(--tm-muted);font-size:8px}.tm-theme-mini{height:29px;display:grid;grid-template-columns:10px 1fr;grid-template-rows:1fr 1fr;gap:3px;padding:4px;border-radius:4px;background:var(--tm-frame);border:1px solid rgba(255,255,255,.12)}.tm-theme-mini i{grid-row:1/3;border-radius:2px;background:var(--tm-group)}.tm-theme-mini b,.tm-theme-mini em{border-radius:2px;background:var(--tm-accent)}.tm-theme-mini em{opacity:.4}.tm-theme-colors{display:grid;grid-template-columns:1fr 1fr;gap:5px}.tm-theme-colors label{display:flex;align-items:center;gap:6px;color:var(--tm-muted);font-size:9px}.tm-theme-colors input{width:20px;height:19px;padding:0;border:1px solid rgba(255,255,255,.12);border-radius:4px;background:none}.tm-theme-colors code{margin-left:auto;color:var(--tm-text);font:8px TempetOutfit}.tm-background-tiles{display:grid;grid-template-columns:repeat(5,1fr);gap:4px}.tm-background-tiles button{display:grid;gap:4px;padding:4px 2px!important;border:1px solid transparent!important;border-radius:5px;background:transparent;color:var(--tm-muted);font-size:7.5px}.tm-background-tiles button.is-selected{border-color:rgba(var(--tm-accent-rgb),.38)!important;background:rgba(255,255,255,.04)}.tm-background-tiles i{height:25px;border-radius:3px;background:#111}.tm-background-tiles [data-bg="1"]{background:radial-gradient(ellipse at top,rgba(var(--tm-accent-rgb),.55),#111 75%)}.tm-background-tiles [data-bg="2"]{background:radial-gradient(ellipse at bottom,rgba(var(--tm-accent-rgb),.55),#111 75%)}.tm-background-tiles [data-bg="3"]{background:linear-gradient(135deg,var(--tm-accent),#473a7e 55%,#111)}.tm-background-tiles [data-bg="4"]{background:linear-gradient(135deg,#292c35,#15151a 40%,#4a3540)}.tm-upload-image{display:block;padding:7px;color:var(--tm-accent);font-size:9px;cursor:pointer}.tm-upload-image input{display:none}
.tm-player-search{margin-bottom:8px}.tm-player-search input{width:100%}.tm-player-list{display:grid;gap:4px}.tm-player-row{height:43px;display:flex;align-items:center;gap:7px;padding:0 6px;border:1px solid rgba(255,255,255,.055);border-radius:6px;background:rgba(255,255,255,.018)}.tm-player-avatar{width:25px;height:25px;display:grid;place-items:center;border-radius:7px;background:var(--player);color:#111;font-size:10px;font-weight:700}.tm-player-row>div{min-width:0;display:grid;flex:1}.tm-player-row b{font-size:9px}.tm-player-row small{color:var(--tm-muted);font-size:8px}.tm-player-tag{color:var(--tm-muted);font-size:8px}.tm-player-row button,.tm-player-details button{padding:4px 7px!important;border-radius:4px;background:rgba(var(--tm-accent-rgb),.1);color:var(--tm-accent)!important;font-size:8px!important}.tm-player-row button.is-selected{background:var(--tm-accent);color:var(--tm-on-accent)!important}.tm-player-details{display:flex;align-items:center;gap:8px;margin-top:8px;padding:8px;border-radius:6px;background:rgba(255,255,255,.03);font-size:9px}.tm-player-details p{margin:0;color:var(--tm-muted)}.tm-player-details b{font-size:10px}.tm-player-details span{flex:1;color:var(--tm-muted);font-size:8px}
.tm-spotify-large{display:grid;grid-template-columns:70px 1fr;align-items:center;gap:12px;padding:8px}.tm-spotify-large .tm-spotify-cover{width:70px;height:70px}.tm-spotify-large>div:last-child{display:grid;gap:3px}.tm-spotify-large b{font-size:11px}.tm-spotify-large small{color:var(--tm-muted);font-size:8px}.tm-spotify-controls{display:flex;justify-content:center;gap:9px}.tm-spotify-controls button{background:none;color:var(--tm-text);font-size:13px}.tm-tree-list{display:grid;gap:2px}.tm-tree-list>div{height:25px;display:flex;align-items:center;gap:6px;padding-left:calc(5px + var(--tree-depth)*12px);border-radius:4px;color:var(--tm-muted);font-size:9px}.tm-tree-list>div:hover{background:rgba(255,255,255,.04);color:var(--tm-text)}.tm-tree-list .tm-icon{width:12px;height:12px;font-size:11px;color:var(--tm-accent)}.tm-tree-list em{margin-left:auto;color:var(--tm-muted);font-size:8px;font-style:normal}
.tm-popover-host{position:absolute;inset:0;z-index:10;pointer-events:none}.tm-popover{position:absolute;min-width:170px;max-width:270px;max-height:310px;overflow:auto;padding:8px;border:1px solid color-mix(in srgb,var(--tm-border) 88%,transparent);border-radius:8px;background:color-mix(in srgb,var(--tm-frame) 91%,#050507);box-shadow:0 18px 55px rgba(0,0,0,.68);pointer-events:auto;animation:tm-pop .14s ease-out}@keyframes tm-pop{from{opacity:0;transform:translateY(-3px) scale(.985)}to{opacity:1;transform:none}}.tm-popover header{height:24px;display:flex;align-items:center;gap:6px;margin-bottom:5px;color:var(--tm-text);font-size:10px}.tm-popover header .tm-icon{width:13px;height:13px;color:var(--tm-accent)}.tm-options-pop{display:grid;gap:6px}.tm-option-row{min-height:26px;display:flex;align-items:center;gap:7px;justify-content:space-between;color:var(--tm-text);font-size:9px}.tm-option-row select{max-width:130px;height:24px;border:1px solid var(--tm-border);border-radius:5px;background:var(--tm-ctrl);font-size:9px}.tm-option-check{display:flex;align-items:center;gap:6px;flex:1;color:var(--tm-muted);font-size:9px}.tm-option-check>span{width:12px;height:12px}.tm-option-slider{margin:0;gap:2px;font-size:9px}.tm-option-slider input{height:12px!important}.tm-mode-pop{display:grid;gap:3px}.tm-mode-pop button{display:grid;gap:2px;padding:6px!important;border-radius:5px;background:transparent;text-align:left}.tm-mode-pop button:hover,.tm-mode-pop button.is-selected{background:rgba(var(--tm-accent-rgb),.09)}.tm-mode-pop b{font-size:10px}.tm-mode-pop small{color:var(--tm-muted);font-size:8px}.tm-dropdown-pop{display:grid;gap:2px;min-width:145px}.tm-dropdown-choice{min-height:25px;display:flex;align-items:center;gap:7px;padding:3px 6px!important;border-radius:4px;background:transparent;color:var(--tm-muted)!important;text-align:left;font-size:9px!important}.tm-dropdown-choice:hover,.tm-dropdown-choice.is-selected{background:rgba(var(--tm-accent-rgb),.08);color:var(--tm-text)!important}.tm-choice-dot{width:7px;height:7px;border:1px solid var(--tm-muted);border-radius:50%}.tm-dropdown-choice.is-selected .tm-choice-dot{border:2px solid var(--tm-accent);background:var(--tm-accent)}.tm-dropdown-choice .tm-check{width:12px;height:12px}.tm-dropdown-apply{height:24px;margin-top:4px;border-radius:4px;background:rgba(var(--tm-accent-rgb),.11);color:var(--tm-accent);font-size:9px}.tm-color-pop{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;min-width:176px}.tm-color-pop header{grid-column:1/-1;margin:0}.tm-color-pop>input[type=color]{width:34px;height:30px;padding:2px;border:1px solid var(--tm-border);border-radius:5px;background:var(--tm-ctrl)}.tm-color-pop>label{display:grid;gap:2px;color:var(--tm-muted);font-size:8px}.tm-color-pop>label input{width:95px;height:25px;border:1px solid var(--tm-border);border-radius:4px;background:var(--tm-ctrl);font-size:9px}.tm-color-presets{grid-column:1/-1;display:grid;grid-template-columns:repeat(5,18px);gap:6px}.tm-color-presets button{width:18px;height:18px;border:1px solid rgba(255,255,255,.25)!important;border-radius:5px;background:var(--swatch);box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}
.tm-tooltip{position:absolute;z-index:12;width:270px;padding:9px 10px;border:1px solid rgba(255,255,255,.11);border-radius:7px;background:rgba(15,15,19,.96);box-shadow:0 10px 30px rgba(0,0,0,.48);pointer-events:none}.tm-tooltip[hidden]{display:none}.tm-tooltip b{display:block;margin-bottom:4px;font-size:10px}.tm-tooltip span{display:block;color:var(--tm-muted);font-size:9px;line-height:1.45}.tm-tooltip small{display:block;margin-top:5px;color:var(--tm-accent);font-size:8px}
.tm-toast{position:absolute;z-index:13;left:50%;bottom:12px;padding:7px 11px;border:1px solid rgba(255,255,255,.1);border-radius:7px;background:rgba(17,17,21,.95);color:var(--tm-text);font-size:9px;opacity:0;transform:translate(-50%,8px);transition:opacity .2s,transform .2s;pointer-events:none}.tm-toast.is-visible{opacity:1;transform:translate(-50%,0)}
.tm-spotlight{position:absolute;left:50%;top:76px;z-index:4;width:310px;display:grid;gap:5px;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(14,14,18,.92);box-shadow:0 16px 50px rgba(0,0,0,.48);opacity:0;transform:translate(-50%,-8px);pointer-events:none;transition:opacity .2s,transform .2s}.tm-spotlight.is-visible{opacity:1;transform:translate(-50%,0)}.tm-spotlight small{color:var(--tm-accent);font-size:9px}.tm-spotlight strong{font-size:14px}.tm-spotlight span,.tm-spotlight em{color:var(--tm-muted);font-size:9px;font-style:normal}
.tm-component.is-stacked .tm-preview{left:205px;top:616px}.tm-component.is-stacked .tm-watermark{top:49px}.tm-component.is-stacked .tm-keybinds{top:87px}
.tm-component.is-static button,.tm-component.is-static input,.tm-component.is-static select{pointer-events:none}.tm-component.is-static .tm-ambient i{animation:none}
.tm-component.is-paused *{animation-play-state:paused!important}
.tm-component.is-ready .tm-window{animation:tm-window-in .45s cubic-bezier(.16,1,.3,1) both}@keyframes tm-window-in{from{opacity:0;transform:translateY(9px) scale(.985)}to{opacity:1;transform:none}}
.tm-component :focus-visible{outline:2px solid rgba(var(--tm-accent-rgb),.7);outline-offset:2px}
@media(max-width:600px){.tm-search{width:145px}.tm-main-head{gap:8px;padding-right:11px;padding-left:12px}.tm-page-title{max-width:160px;min-width:80px}.tm-sidebar{padding-right:8px;padding-left:8px}.tm-brand{gap:7px;padding-left:4px}.tm-brand__type{gap:4px}.tm-category{gap:7px;padding-right:6px;padding-left:7px}}
@media(prefers-reduced-motion:reduce){.tm-component *,.tm-component *::before,.tm-component *::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}

/* Amber replica dimensions and details, aligned to the captured in-game menu. */
.tm-component{--tm-frame:#14100c;--tm-group:#211b14;--tm-ctrl:#0d0b08;--tm-hover:#2b2114;--tm-border:#4e402e;--tm-text:#faf4ec;--tm-muted:#a59887;--tm-accent:#f5aa50;--tm-accent-rgb:245,170,80;--tm-accent-light:#ffc962;--tm-accent-dim:#ac7738;--tm-on-accent:#17100a}
.tm-scale-wrap{min-height:var(--tm-scale-height,0px)}
.tm-sidebar{background:#0e0c09}
.tm-brand{gap:8px;padding:0 2px}
.tm-brand__mark{width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.025);box-shadow:none}
.tm-brand__mark img{width:36px;height:36px}
.tm-brand__type{gap:7px}
.tm-brand__type>span{padding:3px 6px;border-color:rgba(var(--tm-accent-rgb),.45);border-radius:5px;background:rgba(var(--tm-accent-rgb),.09);font-size:8px}
.tm-category{height:36px;font-size:11px}
.tm-category-count{min-width:19px;height:18px;border-radius:8px;background:rgba(255,255,255,.075);color:var(--tm-muted);font-size:9px}
.tm-category.is-active .tm-category-count{background:rgba(var(--tm-accent-rgb),.22);color:var(--tm-accent);box-shadow:inset 0 0 0 1px rgba(var(--tm-accent-rgb),.42)}
.tm-sidebar-status{min-height:58px;margin-top:auto;margin-bottom:0;padding:7px 8px;border:1px solid color-mix(in srgb,var(--tm-border) 34%,transparent);border-radius:11px;background:#100d09;gap:8px}
.tm-status-avatar{width:31px;height:31px;border-radius:50%;background:rgba(var(--tm-accent-rgb),.16)}
.tm-status-avatar .tm-icon{width:18px;height:18px;font-size:16px}
.tm-status-dot{left:31px;top:34px;width:8px;height:8px;background:#e45b66;box-shadow:0 0 0 2px #100d09}
.tm-status-dot::after{display:none}
.tm-sidebar-status b{font-size:10px}
.tm-sidebar-status small{font-size:8px}
.tm-main{background:var(--tm-frame)}
.tm-main-head{gap:10px;padding:0 24px}
.tm-page-mark{width:34px;height:34px;border-radius:9px;border-color:rgba(var(--tm-accent-rgb),.3);background:rgba(var(--tm-accent-rgb),.11)}
.tm-page-title strong{font-size:15px}
.tm-page-title small{font-size:9px}
.tm-search{height:30px;width:190px;border-color:rgba(var(--tm-accent-rgb),.12);border-radius:8px}
.tm-search input{font-size:10px}
.tm-content-scroll{padding:17px 24px 18px}
.tm-card{padding-bottom:13px;border-color:color-mix(in srgb,var(--tm-border) 42%,transparent);border-radius:11px;background:var(--tm-group);box-shadow:0 3px 10px rgba(0,0,0,.13)}
.tm-card-head{height:42px;margin:0 0 3px;border-bottom-color:rgba(255,255,255,.055)}
.tm-card-head>span{width:23px;height:23px;border:1px solid rgba(var(--tm-accent-rgb),.26);border-radius:7px;background:rgba(var(--tm-accent-rgb),.1);color:var(--tm-accent)}
.tm-card-head .tm-icon{width:15px;height:15px;font-size:14px}
.tm-card-head b{font-size:11px}
.tm-group-label{height:26px;font-size:8px;letter-spacing:.14em}
.tm-row-label{font-size:10px}
.tm-switch{width:34px;height:20px;border-color:rgba(0,0,0,.32)!important;background:#0d0b08}
.tm-switch::after{left:2px;top:3px;width:12px;height:12px;background:#b6aa98}
.tm-switch.is-on{border-color:rgba(var(--tm-accent-rgb),.7)!important;background:var(--tm-accent);box-shadow:none}
.tm-switch.is-on::after{transform:translateX(14px);background:#0d0b08}
.tm-color-chip{width:15px;height:15px;border:1px solid rgba(255,255,255,.55)!important;border-radius:4px;box-shadow:none}
.tm-color-chip.is-outline{border:1px solid #35312b!important;background:#000!important;box-shadow:inset 0 0 0 1px #080807}
.tm-options{width:19px;height:16px;border:0!important;border-radius:3px;background:transparent;color:var(--tm-muted)!important;font-size:15px!important;line-height:1;letter-spacing:.04em;font-weight:800!important;color:color-mix(in srgb,var(--tm-text) 62%,transparent)!important}
.tm-options:hover{background:rgba(255,255,255,.06);color:var(--tm-text)!important}
.tm-keychip{height:22px;min-width:46px;border-color:color-mix(in srgb,var(--tm-border) 43%,transparent)!important;border-radius:6px;font-size:9px!important}
.tm-slider-heading output{color:var(--tm-text);font-size:9px}
.tm-slider-row input[type=range]::-webkit-slider-runnable-track,.tm-option-slider input[type=range]::-webkit-slider-runnable-track,.tm-panel-slider input[type=range]::-webkit-slider-runnable-track{height:3px}
.tm-slider-row input[type=range]::-moz-range-track,.tm-option-slider input[type=range]::-moz-range-track,.tm-panel-slider input[type=range]::-moz-range-track{height:3px}
.tm-slider-row input[type=range]::-webkit-slider-thumb,.tm-option-slider input[type=range]::-webkit-slider-thumb,.tm-panel-slider input[type=range]::-webkit-slider-thumb{width:11px;height:11px;margin-top:-4px;border:2px solid #fff;background:var(--tm-accent);box-shadow:none}
.tm-slider-row input[type=range]::-moz-range-thumb,.tm-option-slider input[type=range]::-moz-range-thumb,.tm-panel-slider input[type=range]::-moz-range-thumb{width:8px;height:8px;border:2px solid #fff;background:var(--tm-accent);box-shadow:none}
.tm-dock{top:8px;height:44px;gap:3px;padding:4px;border:1px solid color-mix(in srgb,var(--tm-border) 56%,transparent);border-radius:13px;background:rgba(20,16,12,.95);box-shadow:0 8px 24px rgba(0,0,0,.32)}
.tm-dock-item{width:34px;min-width:34px;height:34px;padding:0!important;border-radius:9px}
.tm-dock-item .tm-icon{display:inline-grid;place-items:center;width:18px;height:18px;font-size:17px}
.tm-dock-item>img{display:block;width:21px;height:21px;object-fit:contain}
.tm-dock-item.is-open,.tm-dock-item.is-selected{background:rgba(var(--tm-accent-rgb),.18);color:var(--tm-accent)!important;box-shadow:inset 0 0 0 1px rgba(var(--tm-accent-rgb),.18)}
.tm-preview{left:810px;top:0;width:400px;height:560px;border-color:color-mix(in srgb,var(--tm-border) 55%,transparent);border-radius:14px;background:var(--tm-frame);box-shadow:0 26px 65px rgba(0,0,0,.55)}
.tm-preview-head{height:50px;padding:0 14px;justify-content:flex-start;gap:9px;border-bottom-color:rgba(255,255,255,.07);font-size:11px}
.tm-preview-title-icon{width:26px;height:26px;display:grid;place-items:center;border:1px solid rgba(var(--tm-accent-rgb),.28);border-radius:8px;background:rgba(var(--tm-accent-rgb),.1);color:var(--tm-accent)}
.tm-preview-head .tm-icon{width:15px;height:15px;font-size:14px}
.tm-preview-head>b{flex:1;font-weight:600}
.tm-preview-head .tm-icon-button{color:var(--tm-muted)!important}
.tm-preview-canvas{height:420px;background:var(--tm-frame)}
.tm-preview-canvas canvas{width:100%;height:100%}
.tm-preview-controls{height:90px;display:grid;grid-template-rows:32px 24px;gap:7px;padding:8px 12px;border-top:0;font-size:9px}
.tm-preview-model{width:100%;display:flex;gap:2px;padding:2px;border:1px solid color-mix(in srgb,var(--tm-border) 48%,transparent);border-radius:8px;background:#100d09}
.tm-preview-model button{height:26px;flex:1;border:1px solid transparent!important;border-radius:6px;font-size:9px!important}
.tm-preview-model button.is-selected{border-color:rgba(var(--tm-accent-rgb),.6)!important;background:rgba(var(--tm-accent-rgb),.17);color:var(--tm-text)!important}
.tm-preview-options{display:flex;align-items:center;justify-content:space-between;padding:0 5px;color:var(--tm-text)}
.tm-preview-controls label{gap:6px}
.tm-preview-controls label input{position:absolute;opacity:0}
.tm-preview-controls .tm-preview-switch{position:relative;width:34px;height:19px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#0d0b08}
.tm-preview-controls .tm-preview-switch::after{content:"";position:absolute;left:3px;top:3px;width:11px;height:11px;border-radius:50%;background:#b6aa98;transition:transform .18s,background .18s}
.tm-preview-controls label input:checked+.tm-preview-switch{border-color:rgba(var(--tm-accent-rgb),.7);background:var(--tm-accent)}
.tm-preview-controls label input:checked+.tm-preview-switch::after{transform:translateX(14px);background:#0d0b08}
.tm-watermark{top:8px;right:12px;height:30px;gap:7px;padding:0 9px;border-color:color-mix(in srgb,var(--tm-border) 58%,transparent);background:rgba(20,16,12,.94);font-size:8px}
.tm-watermark b{font-size:9px}
.tm-watermark>span{color:var(--tm-text)}
.tm-float-panel-host{z-index:9}
.tm-panel{width:420px;border-color:color-mix(in srgb,var(--tm-border) 62%,transparent);border-radius:12px;background:#100d09}
.tm-panel--settings{width:620px;height:594px;max-height:calc(100% - 24px)}
.tm-panel--themes{width:560px;height:500px;max-height:calc(100% - 32px)}
.tm-panel--players{width:640px;max-height:500px}
.tm-panel--spotify{width:420px;max-height:320px}
.tm-panel--explorer{width:720px;max-height:600px}
.tm-panel-head{height:50px;padding:0 14px;border-bottom-color:color-mix(in srgb,var(--tm-border) 42%,transparent)}
.tm-panel-head>span{gap:9px;font-size:11px}
.tm-panel-head>span .tm-icon{width:25px;height:25px;display:grid;place-items:center;border:1px solid rgba(var(--tm-accent-rgb),.28);border-radius:8px;background:rgba(var(--tm-accent-rgb),.1);color:var(--tm-accent);font-size:14px}
.tm-panel-head button .tm-icon{width:13px;height:13px;border:0;background:none}
.tm-panel-scroll{padding:12px 18px 14px}
.tm-section-label{margin:7px 0 7px;font-size:8px;letter-spacing:.12em}
.tm-settings-grid{gap:20px}
.tm-panel-check{min-height:25px;font-size:10px}
.tm-panel-check>span{position:relative;width:34px;height:19px;flex:none;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#0d0b08}
.tm-panel-check>span::after{content:"";position:absolute;left:3px;top:3px;width:11px;height:11px;border-radius:50%;background:#b6aa98;transition:transform .18s,background .18s}
.tm-panel-check input:checked+span{border-color:rgba(var(--tm-accent-rgb),.7);background:var(--tm-accent)}
.tm-panel-check input:checked+span::after{transform:translateX(14px);background:#0d0b08}
.tm-panel-check .tm-icon{display:none}
.tm-theme-presets{grid-template-columns:repeat(8,minmax(0,1fr));gap:5px}
.tm-theme-preset{padding:4px 3px!important;border:1px solid color-mix(in srgb,var(--tm-border) 38%,transparent)!important;border-radius:8px}
.tm-theme-preset.is-selected{position:relative;border-color:var(--preset)!important;background:rgba(255,255,255,.045)}
.tm-theme-mini{height:29px;background:var(--tm-frame)}
.tm-theme-colors{row-gap:9px;column-gap:15px}
.tm-theme-colors label{gap:6px;color:var(--tm-text);font-size:9px}
.tm-theme-colors code{color:var(--tm-muted);font-size:8px}
.tm-theme-colors input{width:20px;height:20px;flex:none;margin-left:0;border-radius:5px}
.tm-background-tiles{gap:6px}
.tm-background-tiles button{font-size:8px}
.tm-background-tiles i{height:43px;border:1px solid color-mix(in srgb,var(--tm-border) 34%,transparent)}
.tm-component.is-stacked .tm-preview{left:205px;top:616px}
.tm-component.is-stacked .tm-watermark{top:8px}
@media(max-width:600px){.tm-main-head{gap:10px;padding:0 24px}.tm-page-title{min-width:110px;max-width:230px}.tm-sidebar{padding:16px 11px 12px}.tm-brand{gap:8px;padding:0 2px}.tm-brand__type{gap:7px}.tm-category{gap:10px;padding:0 10px}.tm-search{width:190px}}
.tm-sidebar-status{border-color:color-mix(in srgb,var(--tm-border) 34%,transparent)}
.tm-keychip{border-color:color-mix(in srgb,var(--tm-border) 43%,transparent)!important}
.tm-dock{border-color:color-mix(in srgb,var(--tm-border) 56%,transparent)}
.tm-preview{border-color:color-mix(in srgb,var(--tm-border) 55%,transparent)}
.tm-panel{border-color:color-mix(in srgb,var(--tm-border) 62%,transparent)}
.tm-panel-head{border-bottom-color:color-mix(in srgb,var(--tm-border) 42%,transparent)}
.tm-theme-preset{border-color:color-mix(in srgb,var(--tm-border) 38%,transparent)!important}
.tm-theme-preset.is-selected::after{content:"✓";position:absolute;right:-2px;top:-5px;width:15px;height:15px;display:grid;place-items:center;border-radius:50%;background:var(--tm-accent);color:var(--tm-on-accent);font:700 9px/1 TempetOutfit,Arial,sans-serif}
.tm-background-tiles i{border-color:color-mix(in srgb,var(--tm-border) 34%,transparent)}
.tm-config-actions{grid-template-columns:repeat(3,1fr)}
.tm-card{border-color:color-mix(in srgb,var(--tm-border) 42%,transparent)}
.tm-watermark{border-color:color-mix(in srgb,var(--tm-border) 58%,transparent)}
.tm-preview-model{border-color:color-mix(in srgb,var(--tm-border) 48%,transparent)}
.tm-preview-controls label input:checked+.tm-preview-switch::after{content:"";display:block;width:11px;height:11px;margin:0;border:0;border-radius:50%;transform:translateX(14px);background:#0d0b08}
.tm-preview-controls{height:88px}
.tm-theme-mini b,.tm-theme-mini em{background:var(--preset,var(--tm-accent))}
.tm-profile-grid button{min-height:32px;gap:0}
.tm-profile-grid small{display:none}
.tm-window{box-shadow:0 26px 65px rgba(0,0,0,.62),0 0 0 1px rgba(0,0,0,.42)}
.tm-sidebar{background:linear-gradient(180deg,color-mix(in srgb,var(--tm-frame) 70%,var(--tm-ctrl)),var(--tm-ctrl))}
.tm-sidebar-status{background:color-mix(in srgb,var(--tm-frame) 50%,var(--tm-ctrl))}
.tm-switch{background:var(--tm-ctrl)}
.tm-switch::after{background:var(--tm-muted)}
.tm-switch.is-on::after{background:var(--tm-ctrl)}
.tm-dock{background:color-mix(in srgb,var(--tm-frame) 94%,transparent)}
.tm-preview-model{background:var(--tm-ctrl)}
.tm-preview-controls .tm-preview-switch{background:var(--tm-ctrl)}
.tm-preview-controls .tm-preview-switch::after{background:var(--tm-muted)}
.tm-preview-controls label input:checked+.tm-preview-switch::after{background:var(--tm-ctrl)}
.tm-panel{background:var(--tm-frame)}
.tm-panel-check>span{background:var(--tm-ctrl)}
.tm-panel-check>span::after{background:var(--tm-muted)}
.tm-panel-check input:checked+span::after{background:var(--tm-ctrl)}
.tm-watermark{background:color-mix(in srgb,var(--tm-frame) 94%,transparent)}
.tm-theme-preset.is-selected::after{background:var(--preset,var(--tm-accent));color:var(--tm-on-accent)}
/* Auto Farm Urban */
.tm-farm-session{padding:2px 0 8px}
.tm-farm-state{display:flex;align-items:center;gap:8px;height:24px;margin-bottom:6px;color:var(--tm-muted);font-size:9.5px;font-weight:600}
.tm-farm-state>i{position:relative;width:8px;height:8px;border-radius:50%;background:var(--tm-muted)}
.tm-farm-session.is-live .tm-farm-state>i{background:#4ade80}
.tm-farm-session.is-live .tm-farm-state>i::after{content:"";position:absolute;inset:-5px;border-radius:50%;background:rgba(74,222,128,.3);animation:tm-farm-pulse 1.8s ease-in-out infinite}
.tm-farm-session.is-live .tm-farm-state>b{color:#4ade80}
@keyframes tm-farm-pulse{0%,100%{transform:scale(.45);opacity:.9}50%{transform:scale(1);opacity:.15}}
.tm-farm-clock{display:inline-flex;align-items:center;gap:6px;height:24px;margin-left:auto;padding:0 11px 0 9px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.05);color:var(--tm-text);font-size:11px;font-variant-numeric:tabular-nums}
.tm-farm-clock .tm-icon{width:12px;height:12px;color:var(--tm-muted);font-size:11px}
.tm-farm-session>small{display:block;color:var(--tm-muted);font-size:9px;font-weight:600;letter-spacing:.04em;opacity:.85}
.tm-farm-session>strong{display:block;margin-top:3px;color:var(--tm-text);font-size:25px;font-weight:700;line-height:1.25;font-variant-numeric:tabular-nums}
.tm-farm-gain{display:flex;align-items:center;gap:9px;margin-top:8px;color:var(--tm-muted);font-size:10.5px}
.tm-farm-gain em{font-style:normal}
.tm-farm-gain span{height:24px;display:inline-flex;align-items:center;padding:0 11px;border:1px solid rgba(74,222,128,.3);border-radius:12px;background:rgba(74,222,128,.14);color:#4ade80;font-size:11.5px;font-weight:600;font-variant-numeric:tabular-nums}
.tm-farm-total{display:flex;justify-content:space-between;color:var(--tm-muted);font-size:10px}
.tm-farm-total span:first-child{font-size:9px;font-weight:600;letter-spacing:.04em}
.tm-farm-sum{display:block;margin:2px 0 9px;color:#4ade80;font-size:19px;font-weight:700;font-variant-numeric:tabular-nums}
.tm-farm-rows{display:grid;gap:4px;margin-bottom:8px}
.tm-farm-rows>div{height:30px;display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:6px;padding:0 10px;border-radius:7px;background:rgba(255,255,255,.03);font-size:10px;font-variant-numeric:tabular-nums}
.tm-farm-rows b{font-weight:600;white-space:pre}
.tm-farm-rows span{display:inline-flex;align-items:center;gap:5px;color:var(--tm-muted)}
.tm-farm-rows .tm-icon{width:11px;height:11px;font-size:10px}
.tm-farm-rows em{color:#4ade80;font-size:10.5px;font-style:normal;font-weight:600}
.tm-dock-item.is-selected{width:auto;padding:0 12px 0 9px!important}
.tm-farm-hud{position:absolute;z-index:8;top:372px;right:30px;width:240px;height:98px;overflow:hidden;border:1px solid color-mix(in srgb,var(--tm-border) 70%,transparent);border-radius:10px;background:var(--tm-frame);box-shadow:0 14px 34px rgba(0,0,0,.45);cursor:grab;touch-action:none;user-select:none}
.tm-farm-hud[hidden]{display:none}
.tm-farm-hud header{height:34px;display:flex;align-items:center;gap:8px;margin:0 10px;border-bottom:1px solid color-mix(in srgb,var(--tm-border) 60%,transparent);font-size:11px}
.tm-farm-hud header>span{width:20px;height:20px;display:grid;place-items:center;border-radius:6px;background:rgba(var(--tm-accent-rgb),.16);color:var(--tm-accent)}
.tm-farm-hud header .tm-icon{width:13px;height:13px;font-size:13px}
.tm-farm-hud header em{display:inline-flex;align-items:center;gap:5px;height:18px;margin-left:auto;padding:0 8px;border-radius:9px;background:rgba(74,222,128,.14);color:#4ade80;font-size:8.5px;font-style:normal;font-weight:600}
.tm-farm-hud header em i{width:6px;height:6px;border-radius:50%;background:#4ade80}
.tm-farm-hud__body{display:grid;grid-template-columns:1fr auto;align-items:center;gap:0 8px;padding:8px 14px 0}
.tm-farm-hud__body>strong{color:#4ade80;font-size:19px;font-weight:700;font-variant-numeric:tabular-nums}
.tm-farm-hud__body>span{display:inline-flex;align-items:center;gap:5px;color:var(--tm-muted)}
.tm-farm-hud__body>span .tm-icon{width:11px;height:11px;font-size:10px}
.tm-farm-hud__body>span b{color:var(--tm-text);font-size:10px;font-weight:600;font-variant-numeric:tabular-nums}
.tm-farm-hud__body>small{grid-column:1/-1;color:var(--tm-muted);font-size:9.5px;white-space:pre}
/* Executor */
.tm-panel--executor{width:600px;height:520px;max-height:calc(100% - 24px)}
.tm-panel--executor .tm-panel-scroll{flex:1;display:flex;min-height:0;overflow:hidden;padding:10px 16px 12px}
.tm-exec{flex:1;min-width:0;display:flex;flex-direction:column;gap:7px}
.tm-exec-toolbar{display:flex;align-items:center;gap:5px;height:38px;padding:0 6px;border:1px solid color-mix(in srgb,var(--tm-border) 45%,transparent);border-radius:9px;background:rgba(255,255,255,.025)}
.tm-exec-btn{height:26px;display:inline-flex;align-items:center;gap:5px;padding:0 9px!important;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--tm-muted)!important;font-size:10px!important;transition:background .15s,color .15s}
.tm-exec-btn:hover{background:rgba(255,255,255,.06);color:var(--tm-text)!important}
.tm-exec-btn.is-primary{padding:0 13px!important;background:var(--tm-accent);color:#120d07!important;font-weight:700}
.tm-exec-btn.is-primary:hover{background:var(--tm-accent);filter:brightness(1.08);color:#120d07!important}
.tm-exec-btn .tm-icon{width:12px;height:12px;font-size:12px}
.tm-exec-vm{display:inline-flex;align-items:center;gap:6px;margin-left:auto;padding-right:6px;color:var(--tm-muted);font-size:9.5px}
.tm-exec-vm i{width:7px;height:7px;border-radius:50%;background:#4ade80;box-shadow:0 0 8px rgba(74,222,128,.6)}
.tm-exec-file{height:27px;display:flex;align-items:center;gap:7px;padding:0 10px;color:var(--tm-text);font-size:10px}
.tm-exec-file .tm-icon{width:13px;height:13px;color:var(--tm-accent);font-size:13px}
.tm-exec-file b{font-weight:600}
.tm-exec-file em{padding:1px 6px;border-radius:4px;background:var(--tm-accent);color:#120d07;font-size:8px;font-style:normal;font-weight:700}
.tm-exec-editor{flex:1;min-height:105px;display:flex;overflow:auto;border:1px solid color-mix(in srgb,var(--tm-border) 45%,transparent);border-radius:9px;background:var(--tm-ctrl);font:11px/17px Consolas,'Cascadia Mono',Menlo,monospace}
.tm-exec-editor ol{position:sticky;left:0;z-index:1;flex:0 0 36px;min-height:100%;height:max-content;margin:0;padding:8px 8px 8px 0;list-style:none;background:var(--tm-ctrl);border-right:1px solid color-mix(in srgb,var(--tm-border) 35%,transparent);color:var(--tm-muted);text-align:right;opacity:.75}
.tm-exec-code{position:relative;flex:1;min-width:max-content}
.tm-exec-code pre,.tm-exec-code textarea{margin:0;padding:8px 10px;border:0;font:inherit;letter-spacing:0;tab-size:4;white-space:pre}
.tm-exec-code pre{min-height:100%;color:var(--tm-text);pointer-events:none}
.tm-exec-code pre i{font-style:normal}
.tm-exec-code .k{color:var(--tm-accent)}.tm-exec-code .f{color:#7fb4ff}.tm-exec-code .s{color:#8fdc9a}.tm-exec-code .c{color:var(--tm-muted);opacity:.8}.tm-exec-code .n{color:#f0c674}
.tm-exec-code textarea{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;resize:none;outline:0;background:transparent;color:transparent;caret-color:var(--tm-accent)}
.tm-exec-code textarea::selection{background:rgba(var(--tm-accent-rgb),.28)}
.tm-exec-status{height:21px;display:flex;align-items:center;justify-content:space-between;padding:0 11px;border-radius:6px;background:rgba(var(--tm-accent-rgb),.13);color:var(--tm-text);font-size:9px;white-space:pre}
.tm-exec-console-head{height:28px;display:flex;align-items:center;gap:9px;padding:0 4px;font-size:10px}
.tm-exec-console-head>b{font-weight:600}
.tm-exec-console-head>div{display:flex;gap:4px}
.tm-exec-console-head>div button{height:20px;display:inline-flex;align-items:center;gap:5px;padding:0 7px!important;border-radius:10px;background:rgba(255,255,255,.045);color:var(--tm-muted)!important;font-size:9px!important}
.tm-exec-console-head>div button.is-selected{background:rgba(var(--tm-accent-rgb),.16);color:var(--tm-accent)!important}
.tm-exec-console-head>div button span{font-variant-numeric:tabular-nums;opacity:.8}
.tm-exec-console-head>span{display:inline-flex;gap:4px;margin-left:auto}
.tm-exec-console-head>span button{height:22px;display:inline-flex;align-items:center;gap:4px;padding:0 6px!important;border-radius:6px;background:transparent;color:var(--tm-muted)!important;font-size:9px!important}
.tm-exec-console-head>span button:hover{background:rgba(255,255,255,.06);color:var(--tm-text)!important}
.tm-exec-console-head .tm-icon{width:11px;height:11px;font-size:10px}
.tm-exec-console{height:104px;flex:none;overflow:auto;padding:5px 0;border:1px solid color-mix(in srgb,var(--tm-border) 45%,transparent);border-radius:9px;background:var(--tm-ctrl);font:10px/19px Consolas,'Cascadia Mono',Menlo,monospace}
.tm-exec-console>div{display:grid;grid-template-columns:auto 42px 1fr;gap:9px;padding:0 10px}
.tm-exec-console time{color:var(--tm-muted);opacity:.75}
.tm-exec-console b{font-weight:700;color:var(--tm-muted)}
.tm-exec-console span{min-width:0;overflow-wrap:anywhere;color:var(--tm-text)}
.tm-exec-console .is-ok b{color:#4ade80}.tm-exec-console .is-warn b,.tm-exec-console .is-warn span{color:#f0c674}.tm-exec-console .is-error b,.tm-exec-console .is-error span{color:#f87171}
.tm-exec-console p{height:100%;display:grid;align-content:center;justify-items:center;gap:2px;margin:0;color:var(--tm-muted);font-family:inherit}
.tm-exec-console p b{color:var(--tm-text);font-weight:600}

.boot {
  overflow: hidden;
  background: #030304;
  opacity: 1;
}
.boot::before,
.boot::after {
  position: absolute;
  z-index: 2;
  inset: 0 0 50%;
  content: "";
  background: #030304;
  transform: translateY(0);
  transition: transform .55s cubic-bezier(.76, 0, .24, 1);
}
.boot::after { inset: 50% 0 0; }
.boot.is-done::before { transform: translateY(-105%); }
.boot.is-done::after { transform: translateY(105%); }
.boot__center {
  position: relative;
  z-index: 3;
  width: min(340px, 70vw);
  padding: 34px 0;
}
.boot__beam {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, transparent, #fff 20%, rgb(var(--acc)) 78%, transparent);
  box-shadow: 0 0 22px rgba(230, 235, 255, .72);
  animation: boot-beam 1.1s cubic-bezier(.2, .8, .2, 1) forwards;
}
.boot__logo {
  width: 84px;
  height: 84px;
  filter: drop-shadow(0 0 28px rgba(220, 225, 239, .22));
  animation: boot-logo 1.2s cubic-bezier(.16, 1, .3, 1) both;
}
.boot__word { letter-spacing: .32em; }
.boot__progress { height: 2px; background: rgba(255,255,255,.1); }
.boot__progress i { background: linear-gradient(90deg, #737780, #fff 60%, rgb(var(--acc))); }
.boot.is-done .boot__center { opacity: 0; transform: scale(1.08); transition: opacity .25s, transform .55s cubic-bezier(.16, 1, .3, 1); }
@keyframes boot-beam { to { transform: scaleX(1); } }
@keyframes boot-logo { from { opacity: 0; transform: translateY(16px) rotateX(40deg) scale(.7); } to { opacity: 1; transform: translateY(0) rotateX(0) scale(1); } }

.hero {
  position: relative;
  display: block;
  height: 270vh;
  min-height: 0;
  overflow: clip;
  isolation: isolate;
  background: #050506;
}
.hero__stage {
  position: sticky;
  top: 0;
  height: 100svh;
  min-height: 680px;
  overflow: hidden;
  isolation: isolate;
  background: radial-gradient(ellipse at 68% 47%, #151519 0%, #080809 37%, #050506 74%);
}
.hero__stage::before {
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
  content: "";
  opacity: .8;
  background: linear-gradient(90deg, #050506 2%, rgba(5,5,6,.88) 34%, transparent 76%), linear-gradient(0deg, #050506 0%, transparent 25%, transparent 82%, rgba(5,5,6,.55));
}
.hero__canvas { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; opacity: .82; }
.hero__fallback { position: absolute; z-index: 0; inset: 0; background: radial-gradient(ellipse at 74% 44%, rgba(210,215,225,.09), transparent 42%); }
.hero__light {
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  width: 1000px;
  height: 1000px;
  margin: -500px 0 0 -500px;
  pointer-events: none;
  opacity: .42;
  background: radial-gradient(closest-side, rgba(226,230,241,.12), transparent);
  transform: translate3d(72vw, 42vh, 0);
  will-change: transform;
}
.hero__inner {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1.32fr) minmax(240px, .78fr);
  align-items: center;
  width: min(100%, 1540px);
  height: 100svh;
  min-height: 100svh;
  margin: auto;
  padding: calc(var(--nav-h) + 26px) clamp(28px, 8vw, 140px) 50px;
}
.hero__content { position: relative; z-index: 3; align-self: center; max-width: 760px; height: auto; }
.hero__char { display: inline-block; }
.hero__eyebrow { margin-bottom: clamp(16px, 2.5vh, 28px); color: #c4c6ce; }
.hero__title {
  max-width: 930px;
  margin: 0;
  font-family: var(--display);
  font-size: clamp(48px, 4vw, 78px);
  font-weight: 800;
  line-height: .87;
  letter-spacing: -.04em;
  text-wrap: balance;
}
.hero__line { display: block; overflow: visible; }
.hero__line + .hero__line { margin-top: .12em; }
.hero__line-inner { display: inline-block; white-space: nowrap; transform-style: preserve-3d; }
.hero__char--space { width: .28em; }
.hero__line-inner em { display: inline-block; font-style: normal; background: none; -webkit-text-fill-color: currentColor; color: inherit; }
/* Dégradé posé lettre par lettre : background-clip sur des lettres animées en 3D mélange les glyphes. */
.hero__line-inner em .hero__char { color: color-mix(in srgb, rgb(var(--acc)) calc(100% - var(--i, 0) * 62%), #6f717a); }
/* Éclat qui traverse le mot : « filter » tourne sur la carte graphique, le texte n'est jamais repeint. */
@media (prefers-reduced-motion: no-preference) {
  html:not(.fx-lite) .hero__line-inner em .hero__char { animation: hero-char-sheen 4.2s ease-in-out calc(var(--i, 0) * .5s + 1.4s) infinite; }
}
@keyframes hero-char-sheen { 0%, 14%, 100% { filter: brightness(1); } 7% { filter: brightness(2.3); } }
.hero__sub { max-width: 510px; margin: 27px 0 0; color: #c2c2ca; font-size: clamp(14px, 1.2vw, 17px); line-height: 1.7; }
.hero__sub u { color: #fff; text-decoration-color: rgb(var(--acc)); text-underline-offset: 4px; }
.hero__ctas { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.hero__ctas .btn { box-shadow: 0 12px 44px rgba(0,0,0,.28); }
.hero__stats { display: flex; gap: clamp(24px, 4vw, 62px); margin-top: clamp(28px, 5vh, 54px); }
.hero__stats .stat { display: grid; gap: 2px; }
.hero__stats .stat b { color: #f4f4f6; font: 700 clamp(20px,2vw,28px)/1 var(--display); letter-spacing: -.04em; }
.hero__stats .stat span { color: #9698a2; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.hero__status { display: flex; align-items: center; gap: 9px; margin: 20px 0 0; color: #9698a2; font-size: 11px; }
.hero__status i { width: 6px; height: 6px; border-radius: 50%; background: #78dba7; box-shadow: 0 0 12px rgba(120,219,167,.7); }
a.hero__status { width: fit-content; transition: color .2s; }
a.hero__status:hover { color: var(--text); }
.hero__status[data-status] i { background: rgb(var(--status)); box-shadow: 0 0 12px rgb(var(--status) / .7); }
.product-card__status[data-status] i { background: rgb(var(--status)); box-shadow: 0 0 0 3px rgb(var(--status) / .12); }
.hero__object { position: relative; z-index: 2; align-self: center; justify-self: end; width: min(40vw, 620px); aspect-ratio: 1; transform-style: preserve-3d; }
.hero__mark, #logoCanvas { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }
#logoCanvas { opacity: 0; transition: opacity .3s ease; }
.hero__object.is-3d #logoCanvas { opacity: 1; }
.hero__object.is-3d .hero__mark { opacity: 0; }
.hero__reflection { position: absolute; inset: 18% 6% -4%; border-radius: 50%; background: radial-gradient(ellipse, rgba(var(--acc),.17), transparent 66%); transform: translateY(35%); }
.hero__tunnel { position: absolute; z-index: 4; inset: -20%; pointer-events: none; opacity: 0; transform: scale(.2); background: radial-gradient(ellipse at center, transparent 0 12%, rgba(235,239,248,.15) 13%, transparent 14% 22%, rgba(235,239,248,.1) 23%, transparent 24% 34%, rgba(235,239,248,.08) 35%, transparent 36%); }
.hero__outro { position: absolute; z-index: 3; inset: 0; display: flex; flex-direction: column; justify-content: center; padding: 10vw; pointer-events: none; opacity: 0; visibility: hidden; }
.hero__outro-kicker { margin: 0 0 30px; color: #a1a2aa; font-size: 11px; letter-spacing: .3em; }
.hero__outro-words { display: grid; gap: 0; font: 800 clamp(62px, 10vw, 170px)/.78 var(--display); letter-spacing: -.085em; }
.hero__word { display: block; width: fit-content; color: transparent; background: linear-gradient(110deg,#fff,#71737b 25%,#fff 47%,#9b9ea7 56%,#fff 68%,#777983); background-size: 220% 100%; -webkit-background-clip: text; background-clip: text; }
.hero__word--two { align-self: end; text-align: right; }
.hero__outro-line { align-self: center; margin: 36px 0 0; color: #d5d6dc; font-size: clamp(15px, 2vw, 22px); letter-spacing: .03em; }
.hero__outro-line em { color: #fff; font-style: normal; }
.hero__scroll { position: absolute; z-index: 5; right: var(--gutter); bottom: 28px; display: flex; align-items: center; gap: 13px; color: #a9aab2; font-size: 9px; letter-spacing: .22em; }
.hero__scroll i { position: relative; width: 42px; height: 1px; overflow: hidden; background: rgba(255,255,255,.25); }
.hero__scroll i::after { position: absolute; inset: 0; content: ""; background: #fff; animation: scroll-line 1.5s ease-in-out infinite; }
@keyframes scroll-line { from { transform: translateX(-110%); } to { transform: translateX(110%); } }
.boot.is-done ~ .grain { opacity: .025; }
@media (max-width: 760px) {
  .hero { height: 190vh; }
  .hero__stage { min-height: 0; }
  .hero__inner { grid-template-columns: 1fr; align-content: center; padding: 90px 22px 58px; }
  .hero__content { max-width: 680px; }
  .hero__object { position: absolute; z-index: 1; top: 18%; right: -10%; width: 54vw; opacity: .28; }
  .hero__stage::before { background: linear-gradient(90deg,rgba(5,5,6,.83),rgba(5,5,6,.36)),linear-gradient(0deg,#050506 0%,transparent 32%); }
  .hero__title { max-width: 720px; font-size: clamp(36px, 10vw, 48px); }
  .hero__sub { max-width: 440px; font-size: 14px; }
  .hero__stats { gap: 24px; margin-top: 28px; }
  .hero__outro { padding: 26px; }
  .hero__outro-words { font-size: clamp(56px, 14vw, 100px); }
  .hero__scroll { right: 20px; bottom: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero { height: auto; overflow: hidden; }
  .hero__stage { position: relative; min-height: 100svh; }
  .hero__outro, .hero__tunnel, .hero__scroll { display: none; }
  .boot::before, .boot::after { transition: none; }
  .boot__beam, .boot__logo, .hero__scroll i::after { animation: none; }
}

/* Chrome, depth and motion layers for the home page. */
:root { --chrome-hi: #fff; --chrome-mid: #b9bbc1; --chrome-dark: #505158; }
.chrome-ribbons { position: relative; z-index: 3; height: 196px; overflow: hidden; margin-top: -18px; }
.chrome-ribbon { position: absolute; left: -10%; width: 120%; height: 47px; overflow: hidden; border-block: 1px solid rgba(255,255,255,.5); color: #111114; background: linear-gradient(180deg,#fbfbfc 0%,#989ba1 16%,#eceef1 32%,#72747a 49%,#f8f8f9 65%,#a1a3a8 82%,#e0e1e4 100%); box-shadow: 0 8px 28px #0008, inset 0 1px #fff; }
.chrome-ribbon--one { top: 74px; transform: rotate(-3.8deg); }
.chrome-ribbon--two { top: 74px; transform: rotate(3.8deg); }
.chrome-ribbon__set { flex: none; display: flex; align-items: center; gap: 22px; padding-right: 22px; }
.chrome-ribbon__track { width: max-content; height: 100%; display: flex; align-items: center; white-space: nowrap; font: 800 14px/1 var(--display); letter-spacing: .09em; text-transform: uppercase; will-change: transform; }
.chrome-ribbon__track i { color: rgb(var(--acc)); font-style: normal; text-shadow: 0 0 10px color-mix(in srgb,rgb(var(--acc)),transparent 40%); }
.trust__inner { perspective: 700px; }
.trust__item { transform-style: preserve-3d; }
.trust__item:hover { transform: translate3d(0,-5px,18px); }
.products-sec { min-height: 195vh; padding-top: 0; perspective: 1600px; }
.products-pin { position: sticky; top: 0; min-height: 100vh; display: flex; flex-direction: column; justify-content: center; padding: 70px var(--gutter) 54px; }
.products-pin .sec-head { margin-bottom: clamp(20px,3vh,34px); }
.products-pin .sec-title { font-size: clamp(58px,9vw,128px); line-height: .86; }
.products-grid { perspective: 1400px; gap: clamp(12px,2vw,24px); }
.product-card { position: relative; transform-style: preserve-3d; isolation: isolate; }
.product-card::before, .fcard::before, .plan--featured::before, .cta-band__card::before { position: absolute; z-index: 3; inset: -1px; content: ''; border-radius: inherit; padding: 1px; pointer-events: none; background: linear-gradient(90deg,transparent,#fff 58%,rgb(var(--acc)) 72%,transparent); animation: chrome-race 5.2s linear infinite; }
.product-card::before, .fcard::before, .plan--featured::before, .cta-band__card::before { inset: 0 auto auto 0; width: 42%; height: 1px; padding: 0; border-radius: 0; transform: translate3d(-101%,0,0); }
.fcard:nth-child(3n)::before { animation-delay: -1.7s; }
.fcard:nth-child(3n+1)::before { animation-delay: -3.4s; }
/* Reflet sur le bord haut : une simple translation, sans masque, pour rester léger même avec toute la grille à l'écran. */
@keyframes chrome-race { to { transform: translate3d(340%,0,0); } }
.product-card__visual img { transform: translateZ(14px); }
.product-card__visual { transform-style: preserve-3d; }
.product-card__body { position: relative; z-index: 1; }
/* Le reflet est une tache déplacée par translation : rien n'est repeint quand la souris bouge. */
.fx-glare { position: absolute; z-index: 2; inset: 0; overflow: hidden; border-radius: inherit; opacity: 0; pointer-events: none; transition: opacity .25s ease; }
.fx-glare i { position: absolute; top: -380px; left: -380px; width: 760px; height: 760px; background: radial-gradient(closest-side,rgba(255,255,255,.2),transparent); will-change: transform; }
.product-card:hover .fx-glare, .fcard:hover .fx-glare, .plan:hover .fx-glare { opacity: 1; }
.menu-sec { padding-top: 110px; }
.menu-pin { position: relative; min-height: 205vh; display: grid; place-items: start center; perspective: 1500px; }
.menu-stage { position: sticky; top: 13vh; z-index: 2; width: min(100%,var(--maxw)); transform-style: preserve-3d; will-change: transform; }
#menuMount { min-height: 480px; }
.menu-scan { position: absolute; z-index: 5; top: 0; left: 0; width: 100%; height: 2px; opacity: 0; pointer-events: none; background: linear-gradient(90deg,transparent,rgb(var(--acc)),#fff,transparent); box-shadow: 0 0 26px 5px color-mix(in srgb,rgb(var(--acc)),transparent 30%); }
.menu-connectors { position: absolute; inset: 5% 0 auto; z-index: 3; width: 100%; height: 90%; overflow: visible; opacity: 0; pointer-events: none; }
.menu-connectors path { fill: none; stroke: color-mix(in srgb,rgb(var(--acc)),#fff 26%); stroke-width: 1.4; stroke-dasharray: 5 7; }
/* Les étiquettes suivent l'écran : calées sur la section, deux fois plus haute que lui, celles du bas restaient invisibles. */
.menu-pin > .menu-stage, .menu-overlay { grid-area: 1 / 1; }
.menu-overlay { position: sticky; top: 0; z-index: 3; width: 100%; height: 100vh; perspective: 1500px; pointer-events: none; }
.menu-callout { position: absolute; z-index: 4; display: grid; gap: 4px; min-width: 150px; padding: 12px 16px; border: 1px solid #ffffff30; border-radius: 9px; background: linear-gradient(145deg,#202024dd,#08080bdc); box-shadow: inset 0 1px #ffffff20,0 16px 40px #0009; }
.menu-callout b { color: #f3f3f6; font: 700 15px var(--display); }.menu-callout span { color: #a2a3ab; font-size: 10px; }
.menu-callout--aim { top: 20%; left: 1%; }.menu-callout--esp { top: 20%; right: 1%; }.menu-callout--world { bottom: 20%; left: 1%; }.menu-callout--themes { bottom: 20%; right: 1%; }
.menu-tip { position: relative; z-index: 5; }
.kinetic-rail { position: relative; z-index: 1; overflow: hidden; padding: 24px 0; border-block: 1px solid #ffffff18; transform: rotate(-2deg) scale(1.04); background: linear-gradient(90deg,#09090b,#19191c 48%,#09090b); }
.kinetic-word { width: max-content; color: transparent; font: 800 clamp(54px,10vw,150px)/.9 var(--display); letter-spacing: -.07em; white-space: nowrap; -webkit-text-stroke: 1px #85868c; text-shadow: 0 12px 30px #000; }
.kinetic-word span { color: transparent; background: linear-gradient(180deg,#fff 0%,#8a8b91 35%,#f8f8fa 48%,#616268 53%,#e9e9eb 70%,#7b7c82); background-clip: text; -webkit-background-clip: text; -webkit-text-stroke: 0; }
.kinetic-rail--reverse .kinetic-word { transform: translateX(-12%); }
.features { padding-top: 110px; perspective: 1400px; }
.fcard { transform-style: preserve-3d; }
/* GSAP écrit la transformation de ces cartes à chaque image : une transition CSS dessus relancerait 250 ms de retard à chaque fois. */
.product-card, .fcard, .plan { transition: border-color .25s ease; }
.product-card__visual img { transition: none; }
/* La transition d'inclinaison ne vit qu'au survol : pendant une entrée GSAP, elle retarderait chaque image. */
.fx-tilting { transition: border-color .25s ease, box-shadow .25s ease; }
.fv-aim__cross { animation: aim-track 5.2s ease-in-out infinite alternate; }
@keyframes aim-track { 0% { transform: translate3d(-66px,-34px,0); } 50% { transform: translate3d(58px,18px,0); } 100% { transform: translate3d(-18px,42px,0); } }
.fv-aim__target { animation: target-scan 3.4s ease-in-out infinite alternate; }.fv-aim__target.t2 { animation-delay: -.9s; }.fv-aim__target.t3 { animation-delay: -1.8s; }
@keyframes target-scan { to { transform: translate3d(14px,-10px,0) scale(1.14); } }
.fv-esp__box { stroke-dasharray: 110; stroke-dashoffset: 110; animation: esp-draw 2.8s steps(28) infinite alternate; }
@keyframes esp-draw { to { stroke-dashoffset: 0; } }
.fv-radar .sweep { animation: radar-sweep 4s linear infinite; }.fv-radar b { animation: radar-ping 2.6s ease-in-out infinite alternate; }.fv-radar b:nth-of-type(3) { animation-delay: -.8s; }
@keyframes radar-sweep { to { transform: rotate(360deg); } } @keyframes radar-ping { to { opacity: .35; transform: scale(.65); } }
.fv-silent .ring { animation: ring-pulse 2s ease-out infinite; }.fv-silent .r2 { animation-delay: 1s; }
@keyframes ring-pulse { from { transform: scale(.35); opacity: .8; } to { transform: scale(1.5); opacity: 0; } }
.fv-trigger > i { animation: trigger-wave 1.8s ease-out infinite; }.fv-trigger > i:nth-of-type(2) { animation-delay: .6s; }.fv-trigger > i:nth-of-type(3) { animation-delay: 1.2s; }
@keyframes trigger-wave { from { transform: scale(.3); opacity: .8; } to { transform: scale(2.7); opacity: 0; } }
.fv-world__orb { animation: orb-drift 6s ease-in-out infinite alternate; }
@keyframes orb-drift { to { transform: translate3d(24px,-14px,0) scale(1.08); } }
.fv-move__lines i { animation: speed-lines 1.1s linear infinite; }.fv-move__lines i:nth-child(even) { animation-delay: -.55s; }
@keyframes speed-lines { from { transform: translateX(95px); opacity: 0; } 30% { opacity: .6; } to { transform: translateX(-110px); opacity: 0; } }
.fv-spotify__bars i { animation: music-bars .62s ease-in-out infinite alternate; }.fv-spotify__bars i:nth-child(2n) { animation-delay: -.3s; }.fv-spotify__bars i:nth-child(3n) { animation-delay: -.48s; }
@keyframes music-bars { to { transform: scaleY(.22); } }
.urban-band-section { min-height: 195vh; padding-top: 0; perspective: 1200px; }
.urban-pin { position: sticky; top: 0; min-height: 100vh; display: grid; place-items: center; padding: 8vh var(--gutter); }
.urban-band { position: relative; width: min(100%,var(--maxw)); min-height: min(76vh,720px); isolation: isolate; overflow: hidden; border: 1px solid #ffffff30; background: #08080b; box-shadow: 0 50px 130px #000c; }
.urban-band__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .72; transform-origin: center; }
.urban-band::after { position: absolute; z-index: 1; inset: 0; content: ''; pointer-events: none; background: linear-gradient(90deg,#050506ee 0%,#050506b0 42%,transparent 100%),linear-gradient(0deg,#050506a8,transparent 55%); }
.urban-rain { position: absolute; z-index: 2; inset: 0; width: 100%; height: 100%; pointer-events: none; }
$1color: transparent; background: linear-gradient(100deg,#fff,#a6a8b1 45%,#fff 70%,#6f717a); -webkit-background-clip: text; background-clip: text; font: 800 clamp(56px,11vw,160px)/.8 var(--display); letter-spacing: -.075em; text-transform: uppercase; white-space: nowrap; text-shadow: 0 10px 36px #000; }
.urban-word--left { left: 3%; }.urban-word--right { right: 2%; top: auto; bottom: 7%; }
.urban-band__content { position: relative; z-index: 3; width: min(520px,70%); padding: clamp(28px,6vw,72px); }
/* Les grands mots URBAN et RELOAD font le titre à l'écran ; le h2 reste pour les lecteurs d'écran et la traduction. */
.urban-band__content .sec-title { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.urban-band__content { margin-top: 6vh; }.urban-band__content > p:not(.eyebrow) { max-width: 450px; color: #d1d1d5; }
.steps { position: relative; perspective: 1200px; }
.steps__track { position: relative; }
.steps__chrome-line { position: absolute; z-index: 0; left: 0; top: 40px; width: 100%; height: 8px; overflow: visible; pointer-events: none; }
.steps__chrome-line path { fill: none; stroke: #e8e9ec; stroke-width: 2; filter: drop-shadow(0 0 5px rgb(var(--acc))); }
.steps__chrome-line circle { fill: rgb(var(--acc)); filter: drop-shadow(0 0 8px rgb(var(--acc))); }
.step { position: relative; z-index: 1; transition: border-color .35s ease,box-shadow .35s ease,transform .45s ease; }
.step.is-lit { border-color: color-mix(in srgb,rgb(var(--acc)),transparent 62%); box-shadow: 0 0 32px color-mix(in srgb,rgb(var(--acc)),transparent 88%),inset 0 1px #ffffff30; }
.step.is-lit .step__num { color: #fff; text-shadow: 0 0 16px rgb(var(--acc)); }
.cta-band__card { position: relative; overflow: hidden; isolation: isolate; }
.cta-band__card::after { position: absolute; z-index: -1; inset: -50%; content: ''; pointer-events: none; background: linear-gradient(115deg,transparent 40%,#fff1 48%,color-mix(in srgb,rgb(var(--acc)),transparent 86%) 50%,transparent 58%); transform: translateX(-45%) rotate(-8deg); animation: cta-glint 5.5s ease-in-out infinite; }
@keyframes cta-glint { 55%,100% { transform: translateX(45%) rotate(-8deg); } }
.final { isolation: isolate; perspective: 1400px; }
.final__content { position: relative; z-index: 2; }
.final__title { overflow: hidden; }
.final__title em { background: none; -webkit-text-fill-color: currentColor; color: inherit; }
.final__title em .fx-letter { display: inline-block; color: color-mix(in srgb, rgb(var(--acc)) calc(100% - var(--i, 0) * 62%), #6f717a); }
main, .footer { overflow-x: clip; }
.fx-letter { display: inline-block; transform-style: preserve-3d; }
.final__title em { color: transparent; background: linear-gradient(180deg,#fff 0%,#989aa1 35%,#fff 49%,#6f7077 54%,#f3f3f4); background-clip: text; -webkit-background-clip: text; }
.final-logo { position: relative; z-index: 2; width: clamp(170px,24vw,300px); aspect-ratio: 1; display: grid; place-items: center; margin: 16px 0 -8px; padding: 0; border: 0; background: transparent; cursor: pointer; perspective: 900px; }
.final-logo__stack { position: relative; width: 88%; height: 88%; display: block; transform-style: preserve-3d; transition: transform .55s cubic-bezier(.2,.8,.2,1); }
.final-logo::before { position: absolute; z-index: 2; inset: 4%; content: ''; border-radius: 50%; pointer-events: none; background: radial-gradient(150px circle at var(--logo-light-x,50%) var(--logo-light-y,50%),#ffffff50,transparent 68%); mix-blend-mode: screen; }
.final-logo__stack img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; filter: grayscale(1) brightness(1.12) drop-shadow(0 18px 24px #000); }
.final-logo__stack img:nth-child(1) { transform: translateZ(-12px) translateY(9px); opacity: .25; }.final-logo__stack img:nth-child(2) { transform: translateZ(-6px) translateY(5px); opacity: .48; }.final-logo__stack img:nth-child(3) { transform: translateZ(0); }.final-logo__stack img:nth-child(4) { transform: translateZ(7px); opacity: .22; mix-blend-mode: screen; }
.final-logo:hover .final-logo__stack { transform: rotateY(-10deg) rotateX(7deg) scale(1.07); }
.final-logo__hint { position: absolute; top: 12%; left: 50%; padding: 6px 10px; border: 1px solid #ffffff35; border-radius: 20px; color: #e3e4e8; background: #0b0b0dbb; font-size: 9px; letter-spacing: .16em; text-transform: uppercase; white-space: nowrap; transform: translateX(-50%); }
.final-logo__shock { position: absolute; inset: 15%; border: 1px solid rgb(var(--acc)); border-radius: 50%; opacity: 0; transform: scale(.3); pointer-events: none; }
.final-logo.is-shocked .final-logo__shock { animation: shockwave .8s ease-out both; }
@keyframes shockwave { 70% { opacity: .8; } to { opacity: 0; transform: scale(2.1); } }
.final-sparks { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.fx-shake { animation: page-shake .28s ease-out; }
@keyframes page-shake { 20% { transform: translateX(-3px); } 45% { transform: translateX(3px); } 70% { transform: translateX(-1px); } }
.footer__word { display: flex; justify-content: center; gap: .012em; overflow: hidden; color: transparent; background: linear-gradient(110deg,#55565b,#f4f4f5 42%,#85868b 52%,#fff 61%,#515259); background-clip: text; -webkit-background-clip: text; }
.footer__word .fx-letter { color: transparent; background: inherit; background-clip: text; -webkit-background-clip: text; }
.plan--featured { position: relative; overflow: hidden; isolation: isolate; }
.pricing-switch button { transform-style: preserve-3d; }
.compare__grid { perspective: 1100px; }
.qa { overflow: hidden; transform-style: preserve-3d; transition: border-color .25s ease,box-shadow .25s ease; }
.qa summary { position: relative; cursor: pointer; }
.qa summary i { transition: transform .35s cubic-bezier(.2,.8,.2,1); }
.qa[open] summary i, .qa.is-opening summary i { transform: rotate(135deg); }
.qa__a { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .42s cubic-bezier(.2,.8,.2,1),opacity .3s ease; }
.qa[open] .qa__a { grid-template-rows: 1fr; }
.qa__a > * { min-height: 0; overflow: hidden; }
@media (max-width: 760px) {
  .chrome-ribbons { height: 83px; margin-top: -6px; }
  .chrome-ribbon { height: 38px; }.chrome-ribbon--one { top: 8px; transform: rotate(-5deg); }.chrome-ribbon--two { top: 38px; transform: rotate(5deg); }
  .chrome-ribbon__track { gap: 14px; font-size: 11px; }
  .products-sec { min-height: auto; padding-top: 76px; }
  .products-pin { position: relative; min-height: 0; padding: 0; }
  .products-pin .sec-title { font-size: clamp(54px,15vw,78px); }
  .products-grid { grid-template-columns: minmax(0,1fr); }
  .menu-pin { min-height: 130vh; }.menu-stage { top: 12vh; width: 100%; padding: 8px; }
  #menuMount { min-height: 430px; }.menu-callout { min-width: 0; padding: 7px 9px; }.menu-callout b { font-size: 11px; }.menu-callout span { font-size: 8px; }
  .menu-callout--aim,.menu-callout--world { left: 0; }.menu-callout--esp,.menu-callout--themes { right: 0; }
  .menu-connectors { opacity: .5; }
  .kinetic-rail { padding: 18px 0; }.kinetic-word { font-size: 17vw; }
  .urban-band-section { min-height: 125vh; }.urban-pin { min-height: 100vh; padding-inline: 0; }
  .urban-band { min-height: 76vh; border-radius: 14px; }.urban-band__content { width: 100%; padding: 26px; }
  .urban-word { font-size: 15vw; }.urban-word--left { top: 8%; }.urban-word--right { bottom: 8%; }
  .steps { padding-block: 60px; }.steps__chrome-line { display: none; }
  .final { padding-bottom: 90px; }.final-logo { width: 190px; }
  .final-logo__hint { top: 3%; }
  .footer__word { font-size: clamp(62px,17vw,100px); }
  .fx-glare { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { scroll-behavior: auto !important; animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
  .menu-stage { transform: none !important; }
  .product-card,.fcard,.plan,.cta-band__card { transform: none !important; }
}

/* Grille des fonctions sans trou : la colonne ESP couvre les trois premières rangées. */
@media (min-width: 1081px) { .fcard--tall { grid-row: span 3; } }

/* Les animations des cartes s'arrêtent quand elles sont hors de l'écran. */
.fx-offscreen, .fx-offscreen *, .fx-offscreen::before, .fx-offscreen::after, .fx-offscreen *::before, .fx-offscreen *::after { animation-play-state: paused !important; }
/* Section qui recule : couche figée pendant le mouvement, le texte n'est pas redessiné à chaque changement d'échelle. */
.fx-receding { border-radius: 28px; will-change: transform; }
/* Entrée des cartes par le CSS : une fois lancée, elle tourne sur la carte graphique, sans passer par le script. */
.fx-card-wait { transform: translate3d(0,70px,-180px) rotateY(var(--enter-turn,-13deg)); }
.fx-card-in { animation: fx-card-in .8s cubic-bezier(.22,1,.36,1) both; }
.fx-card-in.fx-offscreen { animation-play-state: running !important; }
@keyframes fx-card-in { from { transform: translate3d(0,70px,-180px) rotateY(var(--enter-turn,-13deg)); } to { transform: none; } }
.fx-letters-wait .fx-letter { opacity: 0; }
.fx-letters-in .fx-letter { animation: fx-letter-in .8s cubic-bezier(.34,1.56,.64,1) both; animation-delay: calc(var(--n, 0) * 22ms); }
.footer__word.fx-letters-in .fx-letter { animation-duration: .9s; animation-delay: calc(var(--n, 0) * 70ms); animation-timing-function: cubic-bezier(.16,1,.3,1); }
@keyframes fx-letter-in { from { opacity: 0; transform: translate3d(0,120%,0) rotateX(-90deg); } to { opacity: 1; transform: none; } }
.plan__stock { margin: -8px 0 16px; color: var(--dim); font-size: 12px; }
