/* Régie : login central + sélecteur de marque. Sombre & élégant, indépendant du thème marque. */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600&family=Inter:wght@400;500;600&display=swap');

.regie-shell{
  --r-bg:#0c0d12; --r-card:#16181f; --r-line:#262a36; --r-ink:#f3f4f8;
  --r-muted:#8b90a3; --r-accent:#8e8bff;
  position:fixed; inset:0; display:flex; align-items:center; justify-content:center;
  font-family:'Inter',sans-serif; color:var(--r-ink);
  background:
    radial-gradient(900px 500px at 50% -10%, rgba(142,139,255,.18), transparent 60%),
    radial-gradient(700px 500px at 90% 110%, rgba(90,209,196,.10), transparent 55%),
    var(--r-bg);
}
.regie-shell::before{
  content:""; position:fixed; inset:0; pointer-events:none; opacity:.5;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size:46px 46px; mask-image:radial-gradient(circle at 50% 40%, black, transparent 75%);
}
.regie-card{
  position:relative; width:380px; padding:42px 40px 34px;
  background:linear-gradient(180deg, rgba(34,38,52,.7), rgba(18,20,28,.7));
  border:1px solid var(--r-line); border-radius:20px;
  box-shadow:0 30px 80px -30px rgba(0,0,0,.8), inset 0 1px 0 rgba(255,255,255,.04);
  backdrop-filter:blur(8px);
}
.regie-brand{display:flex; flex-direction:column; align-items:center; gap:14px; margin-bottom:24px}
.regie-mark{
  width:60px; height:60px; border-radius:16px;
  background:linear-gradient(160deg,#1c1f2b,#0e1018); border:1px solid var(--r-line);
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 8px 26px -10px rgba(142,139,255,.6), inset 0 1px 0 rgba(255,255,255,.05);
}
.regie-card h1{font-family:'Fraunces',serif; font-weight:500; font-size:30px; letter-spacing:.5px; margin:0; line-height:1; color:var(--r-ink)}
.regie-sub{color:var(--r-muted); font-size:13.5px; margin:0; text-align:center}
.regie-card form{display:flex; flex-direction:column; gap:14px; margin-top:6px}
.regie-card label{font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:var(--r-muted); margin-bottom:7px; display:block}
.regie-card input{
  width:100%; padding:13px 14px; font-size:15px; color:var(--r-ink);
  background:#0f111a; border:1px solid var(--r-line); border-radius:11px; outline:none;
  transition:border-color .15s, box-shadow .15s;
}
.regie-card input::placeholder{color:#4a4f61}
.regie-card input:focus{border-color:var(--r-accent); box-shadow:0 0 0 3px rgba(142,139,255,.18)}
.regie-btn{
  margin-top:6px; padding:13px; border:none; border-radius:11px; cursor:pointer;
  font-family:'Inter'; font-weight:600; font-size:15px; color:#0c0d12;
  background:linear-gradient(135deg,var(--r-accent),#a99bff);
  box-shadow:0 10px 24px -10px rgba(142,139,255,.7); transition:filter .15s;
}
.regie-btn:hover{filter:brightness(1.06)}
.regie-btn[disabled]{opacity:.6; cursor:default}
.regie-err{color:#ff7a8a; font-size:13px; font-weight:600; margin:0}

/* Sélecteur de marque (après login) : cartes des marques accessibles */
.regie-pick{width:420px; padding:8px}
.regie-pick-h{text-align:center; margin-bottom:22px}
.regie-pick-h .hi{font-family:'Fraunces',serif; font-size:24px; font-weight:500}
.regie-pick-h .q{color:var(--r-muted); font-size:14px; margin-top:4px}
.regie-brands{display:flex; flex-direction:column; gap:12px}
.regie-bcard{
  display:flex; align-items:center; gap:14px; text-align:left; cursor:pointer;
  padding:16px 18px; border-radius:14px; color:var(--r-ink);
  background:linear-gradient(180deg, rgba(34,38,52,.6), rgba(18,20,28,.6));
  border:1px solid var(--r-line); transition:border-color .15s, transform .08s;
}
.regie-bcard:hover{border-color:var(--r-accent); transform:translateY(-1px)}
.regie-bdot{width:34px; height:34px; border-radius:10px; flex:0 0 auto; overflow:hidden; box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}
.regie-bdot img{width:100%; height:100%; object-fit:cover; display:block; border-radius:inherit}
.regie-bname{font-weight:600; font-size:16px}
.regie-brole{font-size:12px; color:var(--r-muted); text-transform:uppercase; letter-spacing:.08em; margin-top:2px}
.regie-bgo{margin-left:auto; color:var(--r-muted)}
.regie-add{
  width:100%; margin-top:12px; padding:12px; cursor:pointer;
  background:transparent; border:1px dashed var(--r-line); border-radius:12px;
  color:var(--r-muted); font-family:'Inter'; font-weight:600; font-size:14px;
  transition:border-color .15s, color .15s;
}
.regie-add:hover{border-color:var(--r-accent); color:var(--r-ink)}
.regie-row2{display:flex; gap:12px; align-items:flex-end}
.regie-color{width:52px; height:48px; padding:4px; cursor:pointer}
.regie-foot{text-align:center; margin-top:20px}
.regie-foot button{background:none; border:none; color:var(--r-muted); font-size:13px; cursor:pointer; text-decoration:underline}

/* Sélecteur dans la topbar (changer de marque une fois dans le calendrier) */
.brand-switch{position:relative}
.brand-switch-btn{
  display:flex; align-items:center; gap:8px; cursor:pointer;
  background:var(--card); border:1px solid var(--line); border-radius:10px; padding:6px 10px;
  font-weight:600; color:var(--ink); font-family:inherit; font-size:13px;
}
.brand-switch-dot{width:18px; height:18px; border-radius:50%; flex:0 0 auto; overflow:hidden}
.brand-switch-dot img{width:100%; height:100%; object-fit:cover; display:block; border-radius:50%}
.brand-switch-menu{
  position:absolute; top:calc(100% + 6px); left:0; z-index:50; min-width:200px;
  background:var(--card); border:1px solid var(--line); border-radius:12px; padding:6px;
  box-shadow:0 16px 40px -16px rgba(0,0,0,.35);
}
.brand-switch-item{
  display:flex; align-items:center; gap:10px; width:100%; text-align:left; cursor:pointer;
  background:none; border:none; border-radius:8px; padding:8px 10px; font-size:13px; color:var(--ink); font-family:inherit;
}
.brand-switch-item:hover{background:var(--accent-soft)}
.brand-switch-item .role{margin-left:auto; font-size:11px; color:var(--muted); text-transform:uppercase}
