:root {
  --color-primary: #7cfa00;
  --color-accent: #00faff;
  --color-bg: #1a1a1a;
  --color-bg-elevated: #232323;
  --color-accent-pressed: #00d4d3;
  --color-gradient-light: #ffffff;
  --color-gradient-mid: #0a0a0a;
  --color-text: #ffffff;
  --color-text-muted: #c1bfbf;
  --color-border: rgba(255,255,255,.08);
  --color-rg-banner: #dc2626;
  --font-display: 'Bebas Neue', 'Archivo Black', sans-serif;
  --font-body: 'Poppins', system-ui, sans-serif;
  --container-site: 1380px;
  --container-readable: 720px;
  --container-padding-desktop: 32px;
  --container-padding-mobile: 16px;
  --space-xs: 8px;
  --space-sm: 12px;
  --space-md: 20px;
  --space-lg: 32px;
  --space-xl: 56px;
  --space-2xl: 88px;
  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 24px;
  --shadow-md: 0 8px 32px rgba(0,0,0,.45);
  --header-height-desktop: 96px;
  --header-height-mobile: 72px;
  --motion: 200ms ease;
}

@media (max-width: 720px) {
  :root {
    --space-xl: 36px;
    --space-2xl: 56px;
  }
}

* { box-sizing: border-box; }
html, body { overflow-x: clip; margin: 0; padding: 0; }
body { background: var(--color-bg); color: var(--color-text); font-family: var(--font-body); line-height: 1.6; font-size: 16px; }
img { max-width: 100%; height: auto; display: block; }
a { color: var(--color-accent); text-decoration: none; transition: color var(--motion); }
a:hover { color: var(--color-accent-pressed); }
h1, h2, h3, h4 { font-family: var(--font-display); font-weight: 400; letter-spacing: 0.5px; line-height: 1.15; margin: 0 0 var(--space-md); }
h1 { font-size: clamp(36px, 5vw, 64px); }
h2 { font-size: clamp(28px, 3.5vw, 44px); }
h3 { font-size: clamp(20px, 2vw, 26px); }
p { margin: 0 0 var(--space-md); }
button { font-family: inherit; cursor: pointer; }
.skip-link { position: absolute; top: -200px; left: 8px; padding: 8px 12px; background: var(--color-primary); color: #000; z-index: 9999; border-radius: var(--radius-sm); }
.skip-link:not(:focus) { top: -200px !important; }
.skip-link:focus { top: 8px; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
@media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; } }

/* ============ HEADER (HEAD-09 + NAV-01 + AUTH-BOTH) ============ */
.q49 { background: linear-gradient(180deg, var(--color-gradient-mid), var(--color-bg)); border-bottom: 1px solid var(--color-border); position: relative; z-index: 50; }
.q49-inner { max-width: calc(var(--container-site) + 2 * var(--container-padding-desktop)); margin: 0 auto; padding: 18px var(--container-padding-desktop); display: flex; align-items: center; gap: var(--space-lg); }
.q49-logo, .q49-logo img { flex-shrink: 0; }
.q49-logo-img { height: 88px; width: auto; }
.q49-nav { flex: 1; }
.q49-list { display: flex; flex-wrap: nowrap; gap: var(--space-lg); list-style: none; margin: 0; padding: 0; align-items: center; }
.q49-item { white-space: nowrap; }
.q49-link { color: var(--color-text); font-weight: 500; font-size: 14px; letter-spacing: 0.5px; text-transform: uppercase; padding: 8px 0; position: relative; }
.q49-link:hover { color: var(--color-primary); }
.q49-link.is-active { color: var(--color-primary); }
.q49-link.is-active::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: var(--color-primary); }
.q49-auth { display: flex; gap: var(--space-sm); flex-shrink: 0; }
.q49-auth-btn { white-space: nowrap; flex-shrink: 0; padding: 10px var(--space-lg); border-radius: var(--radius-md); font-weight: 600; font-size: 14px; text-transform: uppercase; letter-spacing: 0.5px; }
.q49-auth-btn--login { color: var(--color-text); border: 1px solid var(--color-border); background: transparent; }
.q49-auth-btn--login:hover { color: var(--color-bg); background: var(--color-text); }
.q49-auth-btn--register { background: var(--color-primary); color: #000; }
.q49-auth-btn--register:hover { background: var(--color-accent); color: #000; }
.q49-toggle { display: none; background: transparent; border: 0; padding: 8px; margin-left: auto !important; }
.q49-toggle span { display: block; width: 26px; height: 2px; background: var(--color-text); margin: 5px 0; transition: var(--motion); }
.q49-drawer { display: none; }
.q49-drawer-list { list-style: none; margin: 0; padding: var(--space-lg) var(--container-padding-mobile); }
.q49-drawer-list li { padding: 12px 0; border-bottom: 1px solid var(--color-border); }
.q49-drawer-list a { color: var(--color-text); font-size: 18px; text-transform: uppercase; letter-spacing: 0.5px; }
.q49-drawer-auth a { color: var(--color-primary) !important; font-weight: 600; }

@media (max-width: 1024px) {
  .q49-nav, .q49-auth { display: none; }
  .q49-toggle { display: block; margin-left: auto !important; }
  .q49-logo-img { height: 64px; }
  .q49-drawer { display: none; background: var(--color-bg-elevated); border-top: 1px solid var(--color-border); }
  .q49-drawer.is-open { display: block; }
  .q49.is-open .q49-drawer { display: block; }
}
@media (max-width: 720px) {
  .q49-inner { padding: 14px var(--container-padding-mobile); }
  .q49-logo-img { height: 60px; }
}

/* ============ HERO (HERO-07) ============ */
.c41 { background: radial-gradient(ellipse at top right, rgba(124,250,0,.12), transparent 60%), var(--color-bg); padding: var(--space-2xl) 0; overflow: hidden; }
.c41-inner { max-width: calc(var(--container-site) + 2 * var(--container-padding-desktop)); margin: 0 auto; padding: 0 var(--container-padding-desktop); display: grid; grid-template-columns: 1.1fr 1fr; gap: var(--space-2xl); align-items: center; }
.c41-text { display: flex; flex-direction: column; gap: var(--space-md); }
.c41-eyebrow { color: var(--color-accent); font-size: 13px; letter-spacing: 2px; text-transform: uppercase; font-weight: 600; }
.c41-h1 { margin: 0; background: linear-gradient(135deg, var(--color-text), var(--color-primary)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.c41-sub { color: var(--color-text-muted); font-size: 18px; line-height: 1.6; max-width: 580px; }
.c41-actions { display: flex; gap: var(--space-md); flex-wrap: wrap; margin-top: var(--space-md); }
.c41-btn { padding: 14px 28px; border-radius: var(--radius-md); font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; font-size: 14px; }
.c41-btn--primary { background: var(--color-primary); color: #000; }
.c41-btn--primary:hover { background: var(--color-accent); color: #000; }
.c41-btn--ghost { background: transparent; color: var(--color-text); border: 1px solid var(--color-text); }
.c41-btn--ghost:hover { background: var(--color-text); color: var(--color-bg); }
.c41-media { position: relative; }
.c41-img { width: 100%; height: auto; border-radius: var(--radius-lg); box-shadow: var(--shadow-md); }
@media (max-width: 1024px) { .c41-inner { grid-template-columns: 1fr; gap: var(--space-xl); } }

/* ============ PAGE-HEADER (PHEAD-08) ============ */
.r36 { padding: var(--space-2xl) 0 var(--space-xl); background: linear-gradient(180deg, var(--color-gradient-mid), var(--color-bg)); border-bottom: 1px solid var(--color-border); }
.r36-inner { max-width: calc(var(--container-site) + 2 * var(--container-padding-desktop)); margin: 0 auto; padding: 0 var(--container-padding-desktop); }
.r36-eyebrow { display: inline-block; color: var(--color-accent); font-size: 13px; letter-spacing: 2px; text-transform: uppercase; font-weight: 600; margin-bottom: var(--space-sm); }
.r36-h1 { margin: 0; }

/* ============ PROSE (PROSE-03) ============ */
.l36 { padding: var(--space-xl) 0; }
.l36-inner { max-width: calc(var(--container-site) + 2 * var(--container-padding-desktop)); margin: 0 auto; padding: 0 var(--container-padding-desktop); }
.l36-h2 { color: var(--color-text); border-left: 4px solid var(--color-primary); padding-left: var(--space-md); }
.l36-p { color: var(--color-text-muted); font-size: 17px; line-height: 1.75; }
.l36-p strong { color: var(--color-text); }
.l36-p a { color: var(--color-accent); border-bottom: 1px dashed var(--color-accent); }
.l36-p a:hover { color: var(--color-accent-pressed); border-bottom-color: var(--color-accent-pressed); }
.l36-list { color: var(--color-text-muted); font-size: 17px; line-height: 1.75; padding-left: var(--space-lg); }
.l36-list li { margin-bottom: var(--space-sm); }
.l36-list li strong { color: var(--color-text); }
.l36-figure { margin: var(--space-lg) 0; }
.l36-figure img { border-radius: var(--radius-md); width: 100%; }
.l36-figrow { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-md); margin: var(--space-lg) 0; }
@media (max-width: 720px) { .l36-figrow { grid-template-columns: 1fr; } }

/* ============ ITEMS-GRID (GRID-01) ============ */
.e32 { padding: var(--space-xl) 0; }
.e32-inner { max-width: calc(var(--container-site) + 2 * var(--container-padding-desktop)); margin: 0 auto; padding: 0 var(--container-padding-desktop); }
.e32-heading { margin-bottom: var(--space-xl); text-align: center; }
.e32-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: var(--space-lg); }
.e32-card { background: var(--color-bg-elevated); padding: var(--space-lg); border-radius: var(--radius-md); border: 1px solid var(--color-border); transition: transform var(--motion), border-color var(--motion); }
.e32-card:hover { transform: translateY(-4px); border-color: var(--color-primary); }
.e32-card-title { color: var(--color-text); margin-bottom: var(--space-sm); }
.e32-card-text { color: var(--color-text-muted); font-size: 15px; line-height: 1.65; margin: 0; }

/* ============ FAQ (FAQ-03) ============ */
.a14 { padding: var(--space-xl) 0; }
.a14-inner { max-width: calc(var(--container-site) + 2 * var(--container-padding-desktop)); margin: 0 auto; padding: 0 var(--container-padding-desktop); }
.a14-heading { text-align: center; margin-bottom: var(--space-xl); }
.a14-list { display: flex; flex-direction: column; gap: var(--space-sm); }
.a14-item { background: var(--color-bg-elevated); border: 1px solid var(--color-border); border-radius: var(--radius-md); padding: var(--space-md) var(--space-lg); }
.a14-item[open] { border-color: var(--color-primary); }
.a14-q { cursor: pointer; font-weight: 600; font-size: 17px; color: var(--color-text); list-style: none; position: relative; padding-right: var(--space-lg); }
.a14-q::-webkit-details-marker { display: none; }
.a14-q::after { content: '+'; position: absolute; right: 0; top: 50%; transform: translateY(-50%); font-size: 24px; color: var(--color-primary); }
.a14-item[open] .a14-q::after { content: '−'; }
.a14-a { color: var(--color-text-muted); padding-top: var(--space-sm); line-height: 1.7; }

/* ============ REVIEWS (REV-07) ============ */
.s64 { padding: var(--space-xl) 0; background: linear-gradient(180deg, var(--color-bg), var(--color-gradient-mid)); }
.s64-inner { max-width: calc(var(--container-site) + 2 * var(--container-padding-desktop)); margin: 0 auto; padding: 0 var(--container-padding-desktop); }
.s64-heading { text-align: center; margin-bottom: var(--space-xl); }
.s64-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: var(--space-lg); }
.s64-card { background: var(--color-bg-elevated); border: 1px solid var(--color-border); padding: var(--space-lg); border-radius: var(--radius-md); display: flex; flex-direction: column; gap: var(--space-sm); }
.s64-stars { color: var(--color-accent); font-size: 18px; }
.s64-text { color: var(--color-text-muted); font-size: 15px; line-height: 1.7; margin: 0; }
.s64-meta { display: flex; justify-content: space-between; align-items: center; border-top: 1px solid var(--color-border); padding-top: var(--space-sm); }
.s64-author { color: var(--color-text); font-weight: 600; font-size: 14px; }
.s64-date { color: var(--color-text-muted); font-size: 13px; }

/* ============ CTA (CTA-05) ============ */
.w24 { padding: var(--space-2xl) 0; }
.w24-inner { max-width: calc(var(--container-site) + 2 * var(--container-padding-desktop)); margin: 0 auto; padding: var(--space-2xl) var(--space-xl); background-color: #7cfa00; background-image: linear-gradient(120deg, var(--color-primary), var(--color-accent)); border-radius: var(--radius-lg); text-align: center; }
.w24-title { color: #0a0a0a; background-color: #7cfa00; }
.w24-text { color: #0a0a0a; background-color: #7cfa00; max-width: 720px; margin: 0 auto var(--space-lg); font-size: 17px; }
.w24-btn { display: inline-block; background: #000; color: var(--color-primary); padding: 16px 40px; border-radius: var(--radius-md); font-weight: 700; text-transform: uppercase; letter-spacing: 1px; }
.w24-btn:hover { background: var(--color-text); color: var(--color-bg); }

/* ============ INLINE-CTA (INLINE-CTA-07) ============ */
.k73 { padding: var(--space-lg) 0; }
.k73-inner { max-width: calc(var(--container-site) + 2 * var(--container-padding-desktop)); margin: 0 auto; padding: var(--space-lg) var(--container-padding-desktop); background: var(--color-bg-elevated); border: 1px solid var(--color-primary); border-radius: var(--radius-md); display: flex; align-items: center; justify-content: space-between; gap: var(--space-lg); flex-wrap: wrap; }
.k73-text { flex: 1; min-width: 220px; }
.k73-eyebrow { color: var(--color-accent); font-size: 12px; text-transform: uppercase; letter-spacing: 1.5px; font-weight: 600; margin: 0; }
.k73-title { color: var(--color-text); margin: var(--space-xs) 0 0; font-size: 24px; }
.k73-btn { background: var(--color-primary); color: #000; padding: 12px 28px; border-radius: var(--radius-md); font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; font-size: 14px; white-space: nowrap; }
.k73-btn:hover { background: var(--color-accent); color: #000; }

/* ============ TABLE (TABLE-05) ============ */
.f56 { padding: var(--space-xl) 0; }
.f56-inner { max-width: calc(var(--container-site) + 2 * var(--container-padding-desktop)); margin: 0 auto; padding: 0 var(--container-padding-desktop); }
.f56-heading { margin-bottom: var(--space-lg); }
.f56-wrap { overflow-x: auto; border-radius: var(--radius-md); border: 1px solid var(--color-border); }
.f56-table { width: 100%; border-collapse: collapse; }
.f56-table th, .f56-table td { padding: var(--space-md); text-align: left; border-bottom: 1px solid var(--color-border); }
.f56-table th { background: var(--color-bg-elevated); color: var(--color-primary); font-family: var(--font-display); font-size: 14px; letter-spacing: 1px; text-transform: uppercase; font-weight: 400; }
.f56-table tr:last-child td { border-bottom: 0; }
.f56-table td { color: var(--color-text-muted); font-size: 15px; }

/* ============ BYLINE (BYLINE-04) ============ */
.t92 { padding: var(--space-xl) 0; }
.t92-inner { max-width: calc(var(--container-site) + 2 * var(--container-padding-desktop)); margin: 0 auto; padding: var(--space-lg) var(--container-padding-desktop); display: flex; align-items: center; gap: var(--space-md); background: var(--color-bg-elevated); border-radius: var(--radius-md); border-left: 4px solid var(--color-primary); }
.t92-portrait { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; flex-shrink: 0; }
.t92-text { display: flex; flex-direction: column; gap: 2px; }
.t92-eyebrow { font-size: 11px; text-transform: uppercase; letter-spacing: 1.5px; color: var(--color-text-muted); }
.t92-name { color: var(--color-text); font-weight: 700; font-size: 17px; }
.t92-name:hover { color: var(--color-primary); }
.t92-role { color: var(--color-text-muted); font-size: 14px; }
.t92-dates { color: var(--color-text-muted); font-size: 13px; margin-top: 4px; }

/* ============ AUTHOR-CARD (AUTH-06) ============ */
.j25 { padding: var(--space-xl) 0; }
.j25-inner { max-width: calc(var(--container-site) + 2 * var(--container-padding-desktop)); margin: 0 auto; padding: 0 var(--container-padding-desktop); display: grid; grid-template-columns: 240px 1fr; gap: var(--space-xl); align-items: start; }
.j25-body { display: flex; flex-direction: column; }
.j25-portrait { width: 240px; height: 240px; border-radius: var(--radius-lg); object-fit: cover; }
.j25-name { margin: 0 0 var(--space-xs); }
.j25-role { color: var(--color-accent); font-weight: 600; margin-bottom: var(--space-md); }
.j25-bio { color: var(--color-text-muted); margin-bottom: var(--space-lg); line-height: 1.7; }
.j25-exp-heading { color: var(--color-text); margin-bottom: var(--space-sm); font-size: 16px; text-transform: uppercase; letter-spacing: 1px; }
.j25-exp { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: var(--space-sm); }
.j25-exp li { background: var(--color-bg-elevated); border: 1px solid var(--color-border); color: var(--color-text); padding: 8px 16px; border-radius: 999px; font-size: 14px; }
.j25-articles { padding: var(--space-xl) 0; }
.j25-articles-inner { max-width: calc(var(--container-site) + 2 * var(--container-padding-desktop)); margin: 0 auto; padding: 0 var(--container-padding-desktop); }
.j25-articles-heading { margin-bottom: var(--space-md); }
.j25-articles-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: var(--space-sm); }
.j25-articles-list li a { display: block; padding: var(--space-md); background: var(--color-bg-elevated); border: 1px solid var(--color-border); border-radius: var(--radius-md); color: var(--color-text); font-weight: 500; }
.j25-articles-list li a:hover { border-color: var(--color-primary); color: var(--color-primary); }
@media (max-width: 720px) { .j25-inner { grid-template-columns: 1fr; } .j25-portrait { width: 160px; height: 160px; } }

/* ============ LEGAL (LEGAL-04) ============ */
.n10 { padding: var(--space-xl) 0; }
.n10-inner { max-width: calc(var(--container-site) + 2 * var(--container-padding-desktop)); margin: 0 auto; padding: 0 var(--container-padding-desktop); }
.n10-intro { font-size: 18px; color: var(--color-text); border-left: 4px solid var(--color-primary); padding-left: var(--space-md); margin-bottom: var(--space-lg); }
.n10-updated { color: var(--color-text-muted); font-size: 14px; margin-bottom: var(--space-xl); }
.n10-h2 { margin-top: var(--space-xl); }
.n10-p { color: var(--color-text-muted); line-height: 1.75; font-size: 16px; }
.n10-list { color: var(--color-text-muted); padding-left: var(--space-lg); }
.n10-list li { margin-bottom: var(--space-sm); }
.n10-disclaimer { margin-top: var(--space-xl); padding: var(--space-md); background: var(--color-bg-elevated); border-left: 4px solid var(--color-accent); color: var(--color-text-muted); font-size: 14px; }

/* ============ CONTACT-FORM (FORM-07) ============ */
.w50 { padding: var(--space-xl) 0; }
.w50-inner { max-width: calc(var(--container-site) + 2 * var(--container-padding-desktop)); margin: 0 auto; padding: 0 var(--container-padding-desktop); }
.w50-intro { color: var(--color-text-muted); margin-bottom: var(--space-lg); font-size: 17px; }
.w50-form { display: flex; flex-direction: column; gap: var(--space-md); max-width: 720px; }
.w50-field { display: flex; flex-direction: column; gap: var(--space-xs); }
.w50-label { color: var(--color-text); font-weight: 500; font-size: 14px; }
.w50-input, .w50-textarea { background: var(--color-bg-elevated); border: 1px solid var(--color-border); border-radius: var(--radius-sm); padding: 12px 16px; color: var(--color-text); font-family: inherit; font-size: 15px; }
.w50-input:focus, .w50-textarea:focus { outline: 2px solid var(--color-primary); border-color: var(--color-primary); }
.w50-submit { background: var(--color-primary); color: #000; padding: 14px 32px; border: 0; border-radius: var(--radius-md); font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; align-self: flex-start; }
.w50-submit:hover { background: var(--color-accent); color: #000; }
.w50-success { color: var(--color-primary); background: rgba(124,250,0,.08); padding: var(--space-md); border-radius: var(--radius-md); border: 1px solid var(--color-primary); }

/* ============ ERROR (ERR-06) ============ */
.j40 { padding: var(--space-2xl) 0; text-align: center; min-height: 60vh; display: flex; align-items: center; }
.j40-inner { max-width: calc(var(--container-site) + 2 * var(--container-padding-desktop)); margin: 0 auto; padding: 0 var(--container-padding-desktop); }
.j40-code { font-family: var(--font-display); font-size: clamp(80px, 18vw, 200px); color: var(--color-primary); line-height: 1; margin: 0; opacity: .9; }
.j40-title { margin: var(--space-md) 0; }
.j40-text { color: var(--color-text-muted); max-width: 600px; margin: 0 auto var(--space-lg); font-size: 17px; }
.j40-btn { display: inline-block; background: var(--color-primary); color: #000; padding: 14px 32px; border-radius: var(--radius-md); font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; }
.j40-btn:hover { background: var(--color-accent); color: #000; }

/* ============ FOOTER (FOOT-03) ============ */
.page, .main { display: block; }
.f89-col { display: flex; flex-direction: column; }
.f89 { background: var(--color-gradient-mid); border-top: 1px solid var(--color-border); padding: var(--space-xl) 0 0; }
.f89-inner { max-width: calc(var(--container-site) + 2 * var(--container-padding-desktop)); margin: 0 auto; padding: 0 var(--container-padding-desktop); display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: var(--space-xl); }
.f89-brand { display: flex; flex-direction: column; gap: var(--space-md); }
.f89-logo { height: 64px; width: auto; }
.f89-tagline { color: var(--color-text-muted); font-size: 15px; line-height: 1.6; margin: 0; }
.f89-rg { color: var(--color-text); font-size: 13px; padding: 8px 12px; background: rgba(220,38,38,.15); border-left: 3px solid var(--color-rg-banner); border-radius: var(--radius-sm); margin: 0; }
.f89-heading { font-family: var(--font-display); color: var(--color-primary); font-size: 18px; letter-spacing: 1px; text-transform: uppercase; margin: 0 0 var(--space-md); }
.f89-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-sm); }
.f89-list a { color: var(--color-text-muted); font-size: 14px; }
.f89-list a:hover { color: var(--color-primary); }
.f89-bar { max-width: calc(var(--container-site) + 2 * var(--container-padding-desktop)); margin: var(--space-xl) auto 0; padding: var(--space-md) var(--container-padding-desktop); border-top: 1px solid var(--color-border); display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: var(--space-md); }
.f89-copy { color: var(--color-text-muted); font-size: 13px; margin: 0; }
.f89-top { color: var(--color-text); font-size: 13px; text-transform: uppercase; letter-spacing: 1px; }
.f89-top:hover { color: var(--color-primary); }
@media (max-width: 1024px) { .f89-inner { grid-template-columns: 1fr 1fr; } }
@media (max-width: 720px) { .f89-inner { grid-template-columns: 1fr; } }

/* ============ COOKIE BANNER (COOK-07) ============ */
.f14 { position: fixed; bottom: var(--space-md); left: var(--space-md); right: var(--space-md); max-width: 720px; margin-left: auto; margin-right: auto; background: var(--color-bg-elevated); border: 1px solid var(--color-primary); border-radius: var(--radius-md); box-shadow: var(--shadow-md); z-index: 100; }
.f14-inner { display: flex; align-items: center; gap: var(--space-md); padding: var(--space-md) var(--space-lg); flex-wrap: wrap; }
.f14-text { color: var(--color-text); font-size: 14px; line-height: 1.5; margin: 0; flex: 1; min-width: 220px; }
.f14-actions { display: flex; gap: var(--space-sm); flex-shrink: 0; }
.f14-button { padding: 10px 18px; border: 0; border-radius: var(--radius-sm); font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; cursor: pointer; }
.f14-button--accept { background: var(--color-primary); color: #000; }
.f14-button--accept:hover { background: var(--color-accent); color: #000; }
.f14-button--decline { background: transparent; color: var(--color-text); border: 1px solid var(--color-border); }
.f14-button--decline:hover { background: var(--color-text); color: var(--color-bg); }
@media (max-width: 720px) {
  .f14, .f14-inner { padding: 12px 14px !important; gap: 8px !important; font-size: 13px !important; line-height: 1.35 !important; }
  .f14-title, .f14-heading { display: none !important; }
  .f14-button, .f14 button { padding: 8px 14px !important; font-size: 12px !important; min-height: 36px !important; }
}
