/*!
 * Atlas — gestionnaire immobilier. Version 1.85.0.
 * Copyright (c) 2026 Systegon. Tous droits reserves.
 *
 * Ce fichier et son contenu sont protégés par le droit d'auteur
 * (code de la propriété intellectuelle, art. L112-2 et L122-6).
 * Leur reproduction, adaptation ou réutilisation, même partielle,
 * est interdite sans autorisation écrite de Systegon.
 *
 * https://atlas.systegon.com — contact-atlas@systegon.com
 */
/* ══════════════════════════════════════════════════════════════════════════
   LA SIGNATURE D'ATLAS — v2
   ══════════════════════════════════════════════════════════════════════════

   La première version coupait un coin de chaque carte. Le geste était
   reconnaissable, mais il RETRANCHAIT : la carte perdait un morceau d'elle-
   même, sa bordure s'interrompait, et ce qui vivait dans ce coin devait
   déménager. Adrian l'a écarté, avec raison — une signature ne doit rien
   coûter à ce qu'elle signe.

   Celle-ci n'enlève rien. Tout ce qu'elle pose s'AJOUTE, et vient du même
   endroit : l'organigramme, ses astres, ses liens, son ciel.

   QUATRE GESTES :

   1. L'ÉQUERRE — deux traits lumineux dans l'angle supérieur gauche de
      chaque carte, comme les repères d'une carte céleste ou le viseur d'un
      instrument. C'est le geste le plus visible, et il se pose PAR-DESSUS
      l'encadré, sans y toucher.

   2. LE RAIL — un trait vertical net à gauche des éléments qui comptent,
      teinté par leur état. Il rappelle les liens qui descendent d'un module
      à l'autre.

   3. LA LIGNE D'ORBITE — un trait qui naît, passe et s'éteint, jamais un
      filet plein. Repris de la v1, allongé et rendu plus franc.

   4. LE CIEL — un semis d'étoiles, plus présent qu'en v1 : il descend
      maintenant sur toute la page, pas seulement dans la barre haute.

   Un seul fichier, retirable d'un bloc. Rien ailleurs n'en dépend.
   ══════════════════════════════════════════════════════════════════════════ */

:root{
  /* 22 px : au-dessous, le coude reste pris dans l'arrondi de la carte et
     l'équerre se lit comme un simple crochet. Il lui faut dépasser le rayon
     pour former un angle franc. */
  --equerre: 22px;
  --equerre-trait: 2px;     /* son épaisseur — franc, pas timide */
  --rail: 3px;
}

/* ─────────────────────────────────────────────────────────────────────────
   1. L'ÉQUERRE
   ─────────────────────────────────────────────────────────────────────────
   Deux traits qui ne se touchent qu'en un point, dans l'angle. Posés en
   `::before` par-dessus la carte : la bordure reste entière dessous, et rien
   de ce que contient la carte n'a à bouger. */
.reg-carte,
.pb-carte,
.auj-repere,
.cn-item,
.lo-fiche,
.esp-carte,
.vt-scene,
.m3-apercu-quatre,
.env-scene,
.stat-carte,
.pil-carte{
  position:relative;
}

.reg-carte::before,
.pb-carte::after,
.auj-repere::after,
.cn-item::before,
.lo-fiche::before,
.vt-scene::before,
.m3-apercu-quatre::before{
  content:"";position:absolute;top:-1px;left:-1px;
  width:var(--equerre);height:var(--equerre);
  border-top:var(--equerre-trait) solid var(--accent);
  border-left:var(--equerre-trait) solid var(--accent);
  border-top-left-radius:inherit;
  pointer-events:none;
  opacity:.85;
}

/* L'équerre d'une carte en alerte prend la couleur de l'alerte : le repère
   dit aussi l'état, il ne fait pas que décorer. */
.pb-carte-alerte::after,
.cn-item.attend::before{
  border-color:var(--danger);opacity:1;
}

/* UN SEUL GESTE PAR ÉLÉMENT.
   Une notification non lue porte déjà un rail vertical à gauche ; l'équerre
   par-dessus faisait un crochet épais et redondant — deux marques pour dire
   une seule chose. Le rail suffit, et il monte alors jusqu'en haut. */
.cn-item.non-lue::before{display:none;}
.cn-item.non-lue{border-left-width:var(--rail);}

/* ─────────────────────────────────────────────────────────────────────────
   2. LE RAIL
   ─────────────────────────────────────────────────────────────────────────
   Un trait vertical franc à gauche de ce qui demande une action. Le rail
   descend, comme un lien d'organigramme qui aboutit à cette ligne. */
/* Le rouge est celui des ALERTES : quelque chose ne va pas. Une notification
   qui attend une réponse n'est pas une alerte — elle porte donc l'ambre de
   --attente. La règle les groupait, et un document signé par toutes les
   parties se présentait comme un incident. */
.lo-alerte,
.auj-ligne-urgent{
  border-left:var(--rail) solid var(--danger);
  padding-left:calc(15px - var(--rail));
}
.cn-item.attend{
  border-left:var(--rail) solid var(--attente);
  padding-left:calc(15px - var(--rail));
}

/* ─────────────────────────────────────────────────────────────────────────
   3. LA LIGNE D'ORBITE
   ───────────────────────────────────────────────────────────────────────── */
.reg-groupe,
.vt-sous-titre,
.cn-jour-titre,
.m3-bloc-titre{
  display:flex;align-items:center;
}
.reg-groupe::after,
.vt-sous-titre::after,
.cn-jour-titre::after,
.m3-bloc-titre::after{
  content:"";flex:1;height:1px;margin-left:13px;
  background:linear-gradient(90deg,
    var(--accent),
    color-mix(in srgb, var(--accent) 30%, transparent) 55%,
    transparent);
  opacity:.7;
}
/* Un point à l'origine du trait : l'orbite part de quelque part. */
.reg-groupe::before,
.cn-jour-titre::before{
  content:"";width:5px;height:5px;border-radius:50%;margin-right:9px;
  background:var(--accent);box-shadow:0 0 8px var(--accent);flex-shrink:0;
}

/* ─────────────────────────────────────────────────────────────────────────
   4. LE CIEL
   ─────────────────────────────────────────────────────────────────────────
   Plus présent qu'en v1 : il occupe toute la page, pas seulement l'en-tête.
   Posé sur `#app` en `::before`, sous le contenu, au-dessus du fond. */
#app::before{
  /* `z-index:-1` plutôt que 0, et SURTOUT pas de règle sur `#app > *`.
   *
   * La première version posait `position:relative; z-index:1` sur tous les
   * enfants de `#app` pour les faire passer devant le ciel. Elle attrapait
   * aussi la barre d'onglets, qui est `position:fixed` : remise dans le flux,
   * elle remontait de 135 px, et « Déconnexion » sortait de l'écran. Un banc
   * l'a vu, pas l'œil.
   *
   * Envoyer le ciel DERRIÈRE ne demande rien à personne. */
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background-image:
    radial-gradient(1.5px 1.5px at 12% 14%, color-mix(in srgb, var(--ink) 30%, transparent), transparent),
    radial-gradient(1px 1px at 84% 9%, color-mix(in srgb, var(--accent) 42%, transparent), transparent),
    radial-gradient(1.5px 1.5px at 68% 27%, color-mix(in srgb, var(--ink) 22%, transparent), transparent),
    radial-gradient(1px 1px at 26% 41%, color-mix(in srgb, var(--ink) 18%, transparent), transparent),
    radial-gradient(2px 2px at 91% 52%, color-mix(in srgb, var(--accent) 30%, transparent), transparent),
    radial-gradient(1px 1px at 45% 63%, color-mix(in srgb, var(--ink) 20%, transparent), transparent),
    radial-gradient(1.5px 1.5px at 8% 77%, color-mix(in srgb, var(--ink) 24%, transparent), transparent),
    radial-gradient(1px 1px at 73% 88%, color-mix(in srgb, var(--accent) 28%, transparent), transparent),
    radial-gradient(1px 1px at 38% 94%, color-mix(in srgb, var(--ink) 16%, transparent), transparent);
  opacity:.9;
}
/* ─────────────────────────────────────────────────────────────────────────
   PLUS MARQUÉ : LA TYPOGRAPHIE ET LA LUMIÈRE
   ─────────────────────────────────────────────────────────────────────────
   Une signature ne tient pas qu'aux formes. Les titres se resserrent et
   s'agrandissent, les boutons principaux rayonnent franchement. */
/* LA TAILLE DE LA BARRE HAUTE NE SE TOUCHE PAS.
 *
 * `.brand-name` était passé de 16 à 19 px : la barre grandissait de 56 à
 * 70 px, et le panneau de l'avatar — dont la position et la hauteur maximale
 * sont calculées à partir de la constante 56 — débordait alors de 116 px.
 * « Déconnexion » sortait de l'écran. Deux pages tombaient aussi au banc
 * mobile pour la même raison.
 *
 * La signature typographique passe donc par l'ESPACEMENT et la COULEUR, qui
 * ne déplacent rien, jamais par le corps. */
.brand-name{ letter-spacing:-.02em; }
.brand-sub{
  letter-spacing:.14em;
  color:color-mix(in srgb, var(--accent) 62%, var(--mist));
}
.reg-groupe, .vt-sous-titre, .cn-jour-titre{
  letter-spacing:.14em;
}

/* Le relief des boutons en dégradé est réglé UNE SEULE FOIS, dans base.css.
   Il l'était ici aussi, avec des valeurs différentes : selon l'ordre de
   chargement des feuilles, l'une écrasait l'autre — et corriger la mauvaise ne
   changeait rien à l'écran. */
