/* Theme ALIEN : terminal MU-TH-UR 6000 du Nostromo (Alien, 1979). Vert
   phosphore sur noir verdatre, monospace partout, cadres en fil de fer,
   moniteur a verre bombe (vignettage, lignes de balayage, leger scintillement).
   Purement visuel : chaque regle est bornee a :root[data-theme="alien"], le
   balisage et le comportement des pages sont identiques aux autres themes.
   Une seule teinte (le vert phosphore, decline en alpha) ; seule l'alerte
   danger sort en rouge-orange #ff5a36. Les statuts (.s-*) se distinguent donc
   par la forme (plein, contour, trait pointille, hachure, double trait), un
   symbole et le clignotement, jamais par la couleur seule.
   Aucun logo ni image externe : tout est dessine en CSS / Unicode. */

:root[data-theme="alien"]{
  color-scheme:dark;
  --al:#33ff66; --al-dim:#1fa044; --al-dark:#0e5a26; --al-glow:51,255,102;
  --al-red:#ff5a36; --al-red-glow:255,90,54;
  --al-vt:"VT323","Share Tech Mono",Consolas,"Courier New",monospace;
  --al-mono:"IBM Plex Mono","Share Tech Mono",Consolas,"Courier New",monospace;
  /* Filtre « image de moniteur » : toute affiche devient monochrome verte. */
  --al-crt:grayscale(1) sepia(1) hue-rotate(50deg) saturate(2.2) contrast(1.1);
  --al-hatch:repeating-linear-gradient(-45deg,rgba(51,255,102,.24) 0 3px,transparent 3px 7px);
  --al-hatch-red:repeating-linear-gradient(-45deg,rgba(255,90,54,.26) 0 3px,transparent 3px 7px);

  --bg:#020a04; --bg-soft:#03100a;
  --surface:#04120a; --surface-2:#071d0f; --surface-hover:#0b2a15;
  --border:rgba(51,255,102,.62); --border-soft:rgba(51,255,102,.3);
  /* --text-faint (#1fa044 sur #020a04) : environ 6:1, AA respecte. */
  --text:#33ff66; --text-dim:#2ad95c; --text-faint:#1fa044;
  --accent:#33ff66; --accent-hover:#7dffa0; --accent-dim:#1fa044;
  --accent-soft:rgba(51,255,102,.12);
  --danger:#ff5a36; --danger-hover:#ff8062; --danger-soft:rgba(255,90,54,.14);
  --success:#33ff66; --success-soft:rgba(51,255,102,.12);
  --warning:#9dffb8; --warning-soft:rgba(51,255,102,.1);
  --purple:#66ff8f; --purple-soft:rgba(51,255,102,.1);
  --radius-sm:0; --radius:0; --radius-lg:0;
  --shadow:0 0 14px rgba(51,255,102,.28);
  --shadow-sm:0 0 5px rgba(51,255,102,.16);
  --nav-bg:rgba(2,10,4,.94);
}

/* ---------- Moniteur : fond noir verdatre, verre bombe, balayage ---------- */
:root[data-theme="alien"] body{
  font-family:var(--al-mono);font-size:.94rem;letter-spacing:.01em;
  text-shadow:0 0 5px rgba(var(--al-glow),.32);   /* halo phosphore, herite */
  background:
    radial-gradient(ellipse at 50% 30%,rgba(var(--al-glow),.055),transparent 70%),
    #020a04;
  background-attachment:fixed;
}
/* Courbure du verre : bords assombris + reflet tres pale. Ne capte aucun clic. */
:root[data-theme="alien"] body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:100;
  background:
    radial-gradient(ellipse at 50% 50%,transparent 62%,rgba(0,0,0,.42) 100%),
    radial-gradient(ellipse at 30% 0%,rgba(var(--al-glow),.035),transparent 55%);
  box-shadow:inset 0 0 90px rgba(0,0,0,.55);
}
/* Lignes de balayage + scintillement (opacite seule : couche composee, legere). */
:root[data-theme="alien"] body::after{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:101;
  background:repeating-linear-gradient(0deg,rgba(0,0,0,.26) 0 1px,transparent 1px 3px);
  animation:al-flicker 5s steps(1) infinite;
}
:root[data-theme="alien"] ::selection{background:var(--al);color:#020a04;text-shadow:none}
:root[data-theme="alien"] *{scrollbar-color:var(--al-dim) #020a04}

/* ---------- Titres : VT323 en capitales, invite « > », curseur bloc ---------- */
:root[data-theme="alien"] h1{
  font-family:var(--al-vt);font-weight:400;font-size:2.3rem;line-height:1.05;
  text-transform:uppercase;letter-spacing:.06em;color:var(--al);
  text-shadow:0 0 8px rgba(var(--al-glow),.6);
  padding-bottom:.6rem;border-bottom:1px solid var(--border);overflow-wrap:anywhere;
}
:root[data-theme="alien"] h1::before{content:"> ";color:var(--al-dim)}
:root[data-theme="alien"] h1::after{
  content:"█";margin-left:.25em;animation:al-cursor 1.1s steps(1) infinite;
}
:root[data-theme="alien"] h2,
:root[data-theme="alien"] h3{
  font-family:var(--al-vt);font-weight:400;font-size:1.55rem;text-transform:uppercase;
  letter-spacing:.07em;color:var(--al);
}
:root[data-theme="alien"] h3{font-size:1.3rem}
:root[data-theme="alien"] h2::before{content:"// ";color:var(--al-dim)}
:root[data-theme="alien"] h3::before{content:"> ";color:var(--al-dim)}
:root[data-theme="alien"] a{color:var(--al);text-decoration:underline dotted;text-underline-offset:3px}
:root[data-theme="alien"] a:hover{color:var(--al-dim)}
:root[data-theme="alien"] nav a,
:root[data-theme="alien"] a.btn,
:root[data-theme="alien"] a.card,
:root[data-theme="alien"] .chips a{text-decoration:none}
:root[data-theme="alien"] .meta-line{color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em;font-size:.82rem}

/* ---------- Barre de navigation : ligne de commande ---------- */
:root[data-theme="alien"] nav{
  backdrop-filter:none;border-bottom:1px solid var(--border);
  box-shadow:0 1px 0 rgba(var(--al-glow),.15),0 6px 18px rgba(var(--al-glow),.1);
}
/* Le clap du balisage est masque (font-size 0) au profit d'une marque en
   capitales, suivie d'une petite etiquette decorative de societe. */
:root[data-theme="alien"] nav .brand{font-size:0;gap:.5rem;text-shadow:none}
:root[data-theme="alien"] nav .brand::before{
  content:"▮ NICOFLIX";font-family:var(--al-vt);font-size:1.9rem;line-height:1;
  letter-spacing:.14em;color:var(--al);text-shadow:0 0 8px rgba(var(--al-glow),.7);
}
:root[data-theme="alien"] nav .brand::after{
  content:"W-Y CORP / 6000";font-family:var(--al-mono);font-size:.56rem;letter-spacing:.14em;
  color:var(--al-dim);border:1px solid var(--al-dark);padding:.1rem .35rem;white-space:nowrap;
  text-shadow:none;
}
:root[data-theme="alien"] nav a.nav-link{
  font-family:var(--al-vt);font-size:1.5rem;line-height:1.1;font-weight:400;
  text-transform:uppercase;letter-spacing:.1em;border:1px solid transparent;border-radius:0;
  color:var(--text-dim);
}
:root[data-theme="alien"] nav a.nav-link::before{content:"[ ";color:var(--al-dark)}
:root[data-theme="alien"] nav a.nav-link::after{content:" ]";color:var(--al-dark)}
:root[data-theme="alien"] nav a.nav-link:hover{color:var(--al);background:transparent;border-color:var(--border)}
:root[data-theme="alien"] nav a.nav-link.active{
  color:#020a04;background:var(--al);border-color:var(--al);text-shadow:none;
  box-shadow:0 0 10px rgba(var(--al-glow),.55);
}
:root[data-theme="alien"] nav a.nav-link.active::before,
:root[data-theme="alien"] nav a.nav-link.active::after{color:#020a04}
:root[data-theme="alien"] nav #theme-toggle{font-size:1.1rem;line-height:1;color:var(--al)}

/* ---------- Panneaux : cadres fil de fer ---------- */
:root[data-theme="alien"] .card,
:root[data-theme="alien"] details.section,
:root[data-theme="alien"] .table-wrap,
:root[data-theme="alien"] table{
  border:1px solid var(--border);background:var(--surface);
  box-shadow:inset 0 0 22px rgba(var(--al-glow),.045),0 0 0 1px rgba(var(--al-glow),.08);
}
:root[data-theme="alien"] .table-wrap table{box-shadow:none;border:none}
:root[data-theme="alien"] details.section > summary{
  font-family:var(--al-vt);font-size:1.6rem;font-weight:400;text-transform:uppercase;
  letter-spacing:.08em;color:var(--al);border-radius:0;
}
:root[data-theme="alien"] details.section > summary::before{content:"▸";color:var(--al-dim);font-size:.9em}
:root[data-theme="alien"] details.section[open] > summary::before{content:"▾"}
:root[data-theme="alien"] details.section > summary:hover{background:var(--accent-soft)}
:root[data-theme="alien"] details.section[open] > summary{border-radius:0;border-bottom:1px solid var(--border)}
:root[data-theme="alien"] details.section > summary .chevron{color:var(--al-dim)}
:root[data-theme="alien"] details.section > summary .count{
  font-family:var(--al-mono);font-size:.74rem;border-radius:0;color:var(--al);
  background:transparent;border:1px solid var(--al);letter-spacing:.04em;
}
:root[data-theme="alien"] details.section > summary:focus-visible,
:root[data-theme="alien"] a:focus-visible,
:root[data-theme="alien"] button:focus-visible{outline:1px dashed var(--al);outline-offset:3px}

/* ---------- Affiches : image de moniteur monochrome, couleur au survol ---------- */
:root[data-theme="alien"] .grid a.card .poster-wrap,
:root[data-theme="alien"] .poster-card .poster-wrap{position:relative;background:#010603}
:root[data-theme="alien"] .grid a.card img,
:root[data-theme="alien"] .poster-card .poster-wrap img{
  filter:var(--al-crt);transition:filter .25s;
}
/* Lignes de balayage propres a l'affiche, retirees avec la couleur. */
:root[data-theme="alien"] .grid a.card .poster-wrap::after,
:root[data-theme="alien"] .poster-card .poster-wrap::after{
  content:"";position:absolute;inset:0;pointer-events:none;transition:opacity .25s;
  background:repeating-linear-gradient(0deg,rgba(0,8,2,.3) 0 1px,transparent 1px 3px),
             radial-gradient(ellipse at center,transparent 55%,rgba(0,10,2,.5) 100%);
}
:root[data-theme="alien"] .grid a.card:hover img,
:root[data-theme="alien"] .grid a.card:focus-visible img,
:root[data-theme="alien"] .poster-card:hover .poster-wrap img,
:root[data-theme="alien"] .poster-card:focus-within .poster-wrap img{filter:none}
:root[data-theme="alien"] .grid a.card:hover .poster-wrap::after,
:root[data-theme="alien"] .grid a.card:focus-visible .poster-wrap::after,
:root[data-theme="alien"] .poster-card:hover .poster-wrap::after,
:root[data-theme="alien"] .poster-card:focus-within .poster-wrap::after{opacity:0}
:root[data-theme="alien"] .grid a.card:hover,
:root[data-theme="alien"] .poster-card:hover{
  transform:none;border-color:var(--al);box-shadow:0 0 0 1px var(--al),0 0 16px rgba(var(--al-glow),.4);
}
:root[data-theme="alien"] .poster-card .card-title,
:root[data-theme="alien"] .grid a.card .title{color:var(--al);text-transform:uppercase;letter-spacing:.03em;font-weight:500;font-size:.8rem}
:root[data-theme="alien"] .poster-card .card-meta,
:root[data-theme="alien"] .grid a.card .title .year{color:var(--text-faint)}
:root[data-theme="alien"] .grid a.card .poster-fallback{color:var(--al-dim);filter:var(--al-crt)}
:root[data-theme="alien"] .poster-card .overlay .badge{background:rgba(0,0,0,.88);color:var(--al);border-color:var(--al)}
:root[data-theme="alien"] .poster-card .overlay .badge.s-warn{color:var(--al);border:1px dashed var(--al)}

/* ---------- Champs ---------- */
:root[data-theme="alien"] label{
  font-family:var(--al-vt);font-size:1.3rem;font-weight:400;text-transform:uppercase;
  letter-spacing:.1em;color:var(--text-dim);
}
:root[data-theme="alien"] label::before{content:"> ";color:var(--al-dim)}
:root[data-theme="alien"] input,
:root[data-theme="alien"] select,
:root[data-theme="alien"] textarea{
  background:#010603;border:1px solid var(--border);border-radius:0;color:var(--al);
  font-family:var(--al-mono);caret-color:var(--al);caret-shape:block;
}
:root[data-theme="alien"] input::placeholder{color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em}
:root[data-theme="alien"] input:focus,
:root[data-theme="alien"] select:focus,
:root[data-theme="alien"] textarea:focus{
  border-color:var(--al);box-shadow:0 0 0 1px var(--al),0 0 12px rgba(var(--al-glow),.4);
}
:root[data-theme="alien"] select option{background:#020a04;color:var(--al)}

/* ---------- Boutons : contour vert, plein (inverse) au survol ---------- */
:root[data-theme="alien"] button,
:root[data-theme="alien"] a.btn{
  font-family:var(--al-vt);font-size:1.35rem;font-weight:400;line-height:1.1;
  text-transform:uppercase;letter-spacing:.1em;
  background:transparent;color:var(--al);border:1px solid var(--al);border-radius:0;
  box-shadow:inset 0 0 8px rgba(var(--al-glow),.12);
}
:root[data-theme="alien"] button:hover,
:root[data-theme="alien"] a.btn:hover{
  background:var(--al);color:#020a04;text-shadow:none;box-shadow:0 0 14px rgba(var(--al-glow),.6);
}
:root[data-theme="alien"] button.btn-ghost{color:var(--text-dim);border-color:var(--border-soft);box-shadow:none}
:root[data-theme="alien"] button.btn-ghost:hover{background:var(--accent-soft);color:var(--al);border-color:var(--al);box-shadow:none;text-shadow:inherit}
:root[data-theme="alien"] button.btn-danger,
:root[data-theme="alien"] button.btn-remove{
  background:transparent;color:var(--al-red);border-color:var(--al-red);
  box-shadow:inset 0 0 8px rgba(var(--al-red-glow),.14);text-shadow:0 0 5px rgba(var(--al-red-glow),.4);
}
:root[data-theme="alien"] button.btn-danger:hover,
:root[data-theme="alien"] button.btn-remove:hover{
  background:var(--al-red);color:#020a04;text-shadow:none;box-shadow:0 0 14px rgba(var(--al-red-glow),.6);
}
:root[data-theme="alien"] .poster-card button.btn-remove{background:rgba(0,0,0,.88);border-radius:0;font-family:var(--al-mono)}
:root[data-theme="alien"] .poster-card button.btn-remove:hover{background:var(--al-red);color:#020a04}
:root[data-theme="alien"] button.btn-mini{background:transparent;border:none;box-shadow:none;color:var(--text-faint);font-family:var(--al-mono)}
:root[data-theme="alien"] button.btn-mini:hover{background:transparent;color:var(--al-red);box-shadow:none}
/* Desactive : hachure fine et texte attenue (mais lisible). */
:root[data-theme="alien"] button:disabled,
:root[data-theme="alien"] button:disabled:hover{
  background:var(--al-hatch);color:var(--text-faint);border:1px dashed var(--al-dim);
  box-shadow:none;text-shadow:none;
}
/* Interrupteur : glissiere carree, curseur carre, etat lu aussi a sa position. */
:root[data-theme="alien"] button.switch-toggle,
:root[data-theme="alien"] button.switch-toggle:hover{
  background:transparent;border:none;box-shadow:none;color:var(--text-dim);text-shadow:inherit;
  font-family:var(--al-mono);font-size:.88rem;text-transform:uppercase;letter-spacing:.06em;
}
:root[data-theme="alien"] .switch-track{border-radius:0;background:#010603;border:1px solid var(--border)}
:root[data-theme="alien"] .switch-thumb{border-radius:0;background:var(--text-faint)}
:root[data-theme="alien"] button.switch-toggle[aria-checked="true"] .switch-track{background:rgba(var(--al-glow),.22);border-color:var(--al)}
:root[data-theme="alien"] button.switch-toggle[aria-checked="true"] .switch-thumb{background:var(--al);box-shadow:0 0 8px var(--al)}

/* ---------- Badges : plein / contour / pointille / hachure / double trait ---------- */
:root[data-theme="alien"] .badge{
  border-radius:0;font-family:var(--al-vt);font-size:1.2rem;font-weight:400;line-height:1.1;
  letter-spacing:.08em;padding:.02rem .55rem;gap:.3rem;
  background:transparent;color:var(--text-dim);border:1px solid var(--border);
}
/* La pastille ronde devient un symbole : la forme porte le sens, pas la couleur. */
:root[data-theme="alien"] .badge::before{
  content:"·";width:auto;height:auto;border-radius:0;background:none;font-size:.9em;
}
:root[data-theme="alien"] .badge.s-searching{color:var(--al);border:1px dashed var(--al);background:transparent}
:root[data-theme="alien"] .s-searching::before{content:"◌"}
:root[data-theme="alien"] .badge.s-downloading,
:root[data-theme="alien"] .badge.s-waiting_release{color:var(--al);border:1px solid var(--al);background:var(--al-hatch)}
:root[data-theme="alien"] .s-downloading::before{content:"▼"}
:root[data-theme="alien"] .badge.s-validating{color:var(--al);border:3px double var(--al);background:transparent;padding-top:0;padding-bottom:0}
:root[data-theme="alien"] .s-validating::before{content:"◇"}
:root[data-theme="alien"] .badge.s-completed{color:#020a04;background:var(--al);border:1px solid var(--al);text-shadow:none}
:root[data-theme="alien"] .s-completed::before{content:"✓"}
:root[data-theme="alien"] .badge.s-failed{color:#020a04;background:var(--al-red);border:1px solid var(--al-red);text-shadow:none}
:root[data-theme="alien"] .s-failed::before{content:"✕"}
:root[data-theme="alien"] .badge.s-needs_review,
:root[data-theme="alien"] .badge.s-waiting_space,
:root[data-theme="alien"] .badge.s-waiting_approval{color:var(--al-red);border:1px solid var(--al-red);background:var(--al-hatch-red)}
:root[data-theme="alien"] .s-needs_review::before,
:root[data-theme="alien"] .s-waiting_space::before,
:root[data-theme="alien"] .s-waiting_approval::before{content:"!"}
:root[data-theme="alien"] .badge.s-duplicate_rejected{color:var(--text-faint);border:1px dotted var(--al-dim);background:transparent}
:root[data-theme="alien"] .s-duplicate_rejected::before{content:"≡"}
:root[data-theme="alien"] .badge.s-info{color:var(--al);border:1px solid var(--al-dim);background:transparent}
:root[data-theme="alien"] .s-info::before{content:"i"}
:root[data-theme="alien"] .badge.s-warn{color:var(--al);border:1px dashed var(--al-dim);background:var(--accent-soft)}
:root[data-theme="alien"] .s-warn::before{content:"!"}
:root[data-theme="alien"] .badge.s-error{color:var(--al-red);border:1px solid var(--al-red);background:transparent;text-shadow:0 0 5px rgba(var(--al-red-glow),.4)}
:root[data-theme="alien"] .s-error::before{content:"✕"}
/* Etats « en cours » : le symbole clignote. */
:root[data-theme="alien"] .s-searching::before,
:root[data-theme="alien"] .s-downloading::before,
:root[data-theme="alien"] .s-validating::before,
:root[data-theme="alien"] .s-needs_review::before,
:root[data-theme="alien"] .s-waiting_space::before,
:root[data-theme="alien"] .s-waiting_approval::before{animation:al-cursor 1s steps(1) infinite}
:root[data-theme="alien"] .chips .badge{border-radius:0}
:root[data-theme="alien"] .chips a:hover .badge{border-color:var(--al);background:var(--accent-soft)}

/* ---------- Tableaux ---------- */
:root[data-theme="alien"] th{
  font-family:var(--al-vt);font-size:1.3rem;font-weight:400;letter-spacing:.1em;color:var(--al);
  background:rgba(var(--al-glow),.09);border-bottom:1px solid var(--border);
}
:root[data-theme="alien"] td{border-bottom:1px dashed rgba(var(--al-glow),.2);color:var(--text)}
:root[data-theme="alien"] tbody tr:hover{background:rgba(var(--al-glow),.06)}
:root[data-theme="alien"] tr.row-link:hover{background:rgba(var(--al-glow),.12);box-shadow:inset 3px 0 0 var(--al)}
:root[data-theme="alien"] td small,
:root[data-theme="alien"] .id-num{color:var(--text-faint)}
:root[data-theme="alien"] table code,
:root[data-theme="alien"] time{font-family:var(--al-mono);color:var(--text-dim)}

/* ---------- Alertes, journal, etats vides ---------- */
:root[data-theme="alien"] .warn{
  border:1px solid var(--al-red);border-left:6px double var(--al-red);
  background:var(--al-hatch-red),rgba(255,90,54,.07);color:var(--text);
  box-shadow:0 0 12px rgba(var(--al-red-glow),.22);
}
:root[data-theme="alien"] .warn::before{
  content:"▲ ALERTE";display:block;font-family:var(--al-vt);font-size:1.4rem;letter-spacing:.14em;
  color:var(--al-red);margin-bottom:.15rem;
}
:root[data-theme="alien"] .warn strong{color:var(--al-red);text-transform:uppercase;letter-spacing:.06em}
:root[data-theme="alien"] .journal li{
  border-radius:0;font-size:.84rem;background:var(--surface);border-left-width:4px;
}
:root[data-theme="alien"] .journal li.lvl-info{border-left-color:var(--al)}
:root[data-theme="alien"] .journal li.lvl-warn{border-left-color:var(--al);border-left-style:dashed}
:root[data-theme="alien"] .journal li.lvl-error{border-left-color:var(--al-red)}
:root[data-theme="alien"] .journal .msg{color:var(--text)}
:root[data-theme="alien"] .empty-state{
  font-family:var(--al-vt);font-size:1.4rem;text-transform:uppercase;letter-spacing:.14em;
  border:1px dashed var(--border-soft);
}
:root[data-theme="alien"] .empty-state::before{content:"▒▒ AUCUN SIGNAL ▒▒";display:block;color:var(--al-dim);margin-bottom:.4rem}
:root[data-theme="alien"] .skeleton{
  background:linear-gradient(100deg,var(--surface-2) 30%,rgba(var(--al-glow),.16) 50%,var(--surface-2) 70%);
  background-size:250% 100%;
}

/* ---------- Menu de choix du theme ---------- */
:root[data-theme="alien"] #theme-menu{
  background:#010603;border:1px solid var(--al);border-radius:0;
  box-shadow:0 0 0 1px rgba(var(--al-glow),.2),0 0 22px rgba(var(--al-glow),.35);
}
:root[data-theme="alien"] #theme-menu button{
  font-family:var(--al-vt);font-size:1.4rem;letter-spacing:.08em;text-transform:uppercase;
  color:var(--text-dim);border:1px solid transparent;border-radius:0;box-shadow:none;background:transparent;
}
:root[data-theme="alien"] #theme-menu button:hover{background:var(--accent-soft);color:var(--al);border-color:var(--border-soft);text-shadow:inherit}
:root[data-theme="alien"] #theme-menu button[aria-checked="true"]{
  background:var(--al);color:#020a04;border-color:var(--al);text-shadow:none;
}

/* ---------- Animations ---------- */
@keyframes al-cursor{0%,55%{opacity:1}56%,100%{opacity:0}}
@keyframes al-flicker{0%,100%{opacity:1}92%{opacity:.86}93%{opacity:1}96%{opacity:.92}97%{opacity:1}}

/* ---------- Ecrans moyens : on abandonne les crochets et l'etiquette ---------- */
:root[data-theme="alien"] nav .brand,
:root[data-theme="alien"] nav a.nav-link{white-space:nowrap}
@media (max-width:1100px){
  :root[data-theme="alien"] nav .brand::after{display:none}
  :root[data-theme="alien"] nav a.nav-link::before,
  :root[data-theme="alien"] nav a.nav-link::after{content:""}
}

/* ---------- Mobile : nav compacte, titres plus petits ---------- */
@media (max-width:640px){
  :root[data-theme="alien"] h1{font-size:1.9rem}
  :root[data-theme="alien"] h2{font-size:1.35rem}
  :root[data-theme="alien"] nav .brand::before{font-size:1.65rem}
  :root[data-theme="alien"] nav .brand::after{display:none}
  :root[data-theme="alien"] nav a.nav-link{font-size:1.35rem;padding:.5rem .45rem}
  :root[data-theme="alien"] nav a.nav-link::before,
  :root[data-theme="alien"] nav a.nav-link::after{content:""}
  :root[data-theme="alien"] .poster-card .card-title{font-size:.74rem}
}

@media (prefers-reduced-motion:reduce){
  :root[data-theme="alien"] body::after,
  :root[data-theme="alien"] h1::after,
  :root[data-theme="alien"] .badge::before{animation:none!important}
  :root[data-theme="alien"] .grid a.card img,
  :root[data-theme="alien"] .poster-card .poster-wrap img{transition:none}
}
