/* Rotter'Dev — Espace client séparé de la vitrine : barre d'application, portail, pied minimal. 2026-11-08 */
body.ea-app, body.ea-portail-page { --nh-ruban: 0px; --nh-h: 72px; }
body.ea-app { padding-bottom: 0; }

/* Marque commune */
.ea-marque { display: inline-flex; align-items: center; gap: 12px; color: #fff; }
.ea-logo { position: relative; width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center;
  background: radial-gradient(70% 70% at 30% 20%, rgba(201,168,106,.35), transparent 70%), linear-gradient(160deg, #161618, #0D0D0F);
  border: 1px solid rgba(233,211,166,.25); box-shadow: 0 10px 30px -12px rgba(201,168,106,.7); }
.ea-logo img { width: 24px; height: 24px; object-fit: contain; }
.ea-logo::after { content: ""; position: absolute; inset: -1px; border-radius: inherit; padding: 1px;
  background: conic-gradient(from var(--ea-a, 0deg), transparent 0 70%, #E9D3A6 85%, transparent 92%);
  -webkit-mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0); mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
  animation: ea-tour 6s linear infinite; }
@property --ea-a { syntax: "<angle>"; inherits: false; initial-value: 0deg; }
@keyframes ea-tour { to { --ea-a: 360deg; } }
.ea-marque-txt { display: grid; line-height: 1.1; }
.ea-marque-txt b { font: 600 1rem var(--f-titre); letter-spacing: -.01em; }
.ea-marque-txt small { font: 500 .6875rem var(--f-titre); letter-spacing: .28em; text-transform: uppercase; color: var(--a-blush); opacity: .8; }

/* Barre d'application */
.ea-barre { position: fixed; top: 0; left: 0; right: 0; z-index: 60; height: var(--nh-h);
  background: linear-gradient(180deg, rgba(18,5,15,.85), rgba(11,11,13,.7)); backdrop-filter: blur(22px) saturate(160%); -webkit-backdrop-filter: blur(22px) saturate(160%); }
.ea-barre::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201,168,106,.6) 30%, rgba(233,211,166,.6) 70%, transparent); opacity: .7; }
.ea-barre-in { height: 100%; max-width: 1280px; margin: 0 auto; padding: 0 24px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 24px; }
.ea-onglets { position: relative; justify-self: center; display: flex; gap: 4px; padding: 5px; border-radius: 999px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); }
.ea-onglets a { position: relative; z-index: 1; display: inline-flex; align-items: center; gap: 8px; height: 40px; padding: 0 18px; border-radius: 999px; white-space: nowrap;
  font: 600 .875rem var(--f-titre); color: rgba(245,245,247,.6); transition: color .3s; }
.ea-onglets a:hover, .ea-onglets a[aria-current="page"] { color: #fff; }
.ea-onglets svg, .ea-dock svg { stroke: currentColor; fill: none; stroke-width: 1.7; }
.ea-onglets b, .ea-dock b { min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; display: grid; place-items: center; font-size: .625rem; background: var(--a-rose); color: #fff; }
.ea-pilule { position: absolute; z-index: 0; top: 5px; height: 40px; left: 0; width: 0; border-radius: 999px; opacity: 0;
  background: linear-gradient(180deg, rgba(201,168,106,.38), rgba(48,48,54,.55)); box-shadow: 0 0 0 1px rgba(233,211,166,.35) inset, 0 8px 24px -8px rgba(201,168,106,.6);
  transition: left .45s cubic-bezier(.7,0,.2,1), width .45s cubic-bezier(.7,0,.2,1), opacity .3s; }
.ea-droite { display: flex; align-items: center; gap: 10px; }
.ea-btn-nouveau { display: inline-flex; align-items: center; gap: 8px; height: 42px; padding: 0 18px; border-radius: 999px; font: 600 .875rem var(--f-titre); color: #fff;
  background: linear-gradient(135deg, #C9A86A, #8A6F3E); box-shadow: 0 10px 26px -10px rgba(201,168,106,.9); transition: transform .3s, box-shadow .3s; }
.ea-btn-nouveau:hover { transform: translateY(-1px); box-shadow: 0 14px 30px -10px rgba(201,168,106,1); }
.ea-btn-nouveau svg { stroke: currentColor; fill: none; stroke-width: 2.2; }
.ea-moi { display: inline-flex; align-items: center; gap: 10px; height: 42px; padding: 0 14px 0 4px; border-radius: 999px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.08); font: 500 .875rem var(--f-titre); color: rgba(245,245,247,.85); }
.ea-avatar { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; font: 600 .875rem var(--f-titre); color: #fff; background: linear-gradient(140deg, #C9A86A, #4A3C22); box-shadow: 0 0 0 2px var(--a-nuit), 0 0 0 3px rgba(233,211,166,.45); }
.ea-avatar-mini { width: 24px; height: 24px; font-size: .6875rem; box-shadow: 0 0 0 1px rgba(233,211,166,.45); }
.ea-icone { width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; color: rgba(245,245,247,.7); background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); transition: color .3s, background .3s, border-color .3s; }
.ea-icone:hover { color: #fff; background: rgba(201,168,106,.16); border-color: rgba(233,211,166,.35); }
.ea-icone svg { stroke: currentColor; fill: none; stroke-width: 1.8; }

/* L'en-tête de page n'a plus besoin des onglets internes */
body.ea-app .ec-onglets { display: none; }

/* Dock mobile */
.ea-dock { display: none; }
@media (max-width: 980px) {
  .ea-onglets, .ea-moi-txt, .ea-btn-nouveau span { display: none; }
  .ea-barre-in { grid-template-columns: 1fr auto; padding: 0 16px; }
  .ea-btn-nouveau { width: 42px; padding: 0; justify-content: center; }
  .ea-moi { padding: 0 4px; }
}
@media (max-width: 720px) {
  body.ea-app { --nh-h: 64px; }
  .ea-btn-nouveau, .ea-moi { display: none; }
  .ea-dock { position: fixed; z-index: 60; left: 12px; right: 12px; bottom: calc(12px + env(safe-area-inset-bottom)); height: 66px; display: grid; grid-template-columns: repeat(5, 1fr); align-items: center;
    border-radius: 24px; background: rgba(18,5,15,.82); backdrop-filter: blur(22px) saturate(160%); -webkit-backdrop-filter: blur(22px) saturate(160%);
    border: 1px solid rgba(233,211,166,.16); box-shadow: 0 20px 50px -20px rgba(0,0,0,.9), 0 0 0 1px rgba(201,168,106,.08); }
  .ea-dock a { position: relative; display: grid; justify-items: center; gap: 4px; font: 600 .625rem var(--f-titre); letter-spacing: .02em; color: rgba(245,245,247,.55); }
  .ea-dock a[aria-current="page"] { color: #fff; }
  .ea-dock a[aria-current="page"]::before { content: ""; position: absolute; top: -9px; width: 18px; height: 3px; border-radius: 3px; background: var(--a-rose); box-shadow: 0 0 12px var(--a-rose); }
  .ea-dock b { position: absolute; top: -4px; right: calc(50% - 20px); }
  .ea-dock-plus { width: 52px; height: 52px; margin: 0 auto; border-radius: 18px; place-items: center !important; color: #fff !important;
    background: linear-gradient(135deg, #C9A86A, #8A6F3E); box-shadow: 0 12px 26px -10px rgba(201,168,106,1); }
  .ea-dock-plus svg { stroke-width: 2.3; }
  body.ea-app .ec { padding-bottom: 120px; }
  body.ea-app .ea-pied { padding-bottom: 100px; }
}

/* Portail (connexion, mot de passe oublié) */
.ea-portail { position: fixed; top: 0; left: 0; right: 0; z-index: 60; height: var(--nh-h); padding: 0 28px; display: flex; align-items: center; justify-content: space-between; }
.ea-retour { display: inline-flex; align-items: center; gap: 8px; height: 40px; padding: 0 16px; border-radius: 999px; font: 600 .8125rem var(--f-titre); color: rgba(245,245,247,.8);
  background: rgba(11,11,13,.35); border: 1px solid rgba(255,255,255,.12); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); transition: color .3s, border-color .3s; }
.ea-retour:hover { color: #fff; border-color: rgba(233,211,166,.4); }
.ea-retour svg { stroke: currentColor; fill: none; stroke-width: 2; transition: transform .3s; }
.ea-retour:hover svg { transform: translateX(-3px); }
@media (max-width: 520px) { .ea-portail { padding: 0 16px; } .ea-retour span { display: none; } .ea-retour { width: 40px; padding: 0; justify-content: center; } }

/* Pied minimal */
.ea-pied { border-top: 1px solid rgba(233,211,166,.08); background: linear-gradient(180deg, transparent, rgba(20,20,22,.5)); }
.ea-pied-in { max-width: 1280px; margin: 0 auto; padding: 22px 24px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; font-size: .8125rem; color: rgba(245,245,247,.45); }
.ea-pied nav { display: flex; flex-wrap: wrap; gap: 6px 18px; }
.ea-pied a:hover { color: #fff; }
.ea-pied-sur { display: inline-flex; align-items: center; gap: 8px; color: var(--a-blush); }
.ea-pied-sur svg { stroke: currentColor; fill: none; stroke-width: 1.8; }

@media (prefers-reduced-motion: reduce) { .ea-logo::after { animation: none; } }
/* « Nouvelle demande » revient dans la page (la barre affiche le profil) */
