/* ============================================================================
   app/admin/caisse /login -> styled to match the /fidelite loyalty login
   (light, centered, minimal single card). All rules scoped under
   html.app-host .gv-login-root (the login page root), so safe to load globally — no other
   page has that wrapper.
   ============================================================================ */
html.app-host .gv-login-root{ background:#f5f5f5 !important; font-family:"Segoe UI",system-ui,-apple-system,sans-serif !important; min-height:100vh; }

/* strip the dark hero / decorations of the old design */
html.app-host .gv-login-root .gv-bg-stage,
html.app-host .gv-login-root .gv-bg-flame,
html.app-host .gv-login-root .gv-bg-yellow,
html.app-host .gv-login-root .gv-line,
html.app-host .gv-login-root .gv-line-inner,
html.app-host .gv-login-root .gv-side,
html.app-host .gv-login-root .gv-card-ring,
html.app-host .gv-login-root .gv-badge,
html.app-host .gv-login-root .gv-badge-dot,
html.app-host .gv-login-root .gv-input-ico,
html.app-host .gv-login-root .gv-card-kicker{ display:none !important; }

/* center a single column */
html.app-host .gv-login-root .gv-login-grid{ display:flex !important; align-items:center !important; justify-content:center !important; min-height:100vh !important; padding:24px !important; grid-template-columns:none !important; }
html.app-host .gv-login-root .gv-main{ width:100% !important; max-width:460px !important; display:flex !important; align-items:center; justify-content:center; }
html.app-host .gv-login-root .gv-back{ position:fixed !important; top:18px; left:18px; background:#fff !important; color:#111 !important; border:1px solid #ececec !important; box-shadow:none !important; font-weight:600; border-radius:8px; }

/* the card */
html.app-host .gv-login-root .gv-card{ width:100% !important; max-width:460px !important; margin:0 auto !important; background:#fff !important; border:1px solid #ececec !important; border-radius:0 !important; box-shadow:0 1px 0 rgba(0,0,0,.02) !important; padding:40px 40px 42px !important; position:relative; }
html.app-host .gv-login-root .gv-card-inner{ padding:0 !important; }
html.app-host .gv-login-root .gv-card-head{ text-align:center !important; margin-bottom:28px !important; }
html.app-host .gv-login-root .gv-card-head::before{ content:"🔥"; display:block; font-size:42px; line-height:1; margin:0 auto 16px; text-align:center; }
html.app-host .gv-login-root .gv-card-title{ font-size:24px !important; font-weight:800 !important; color:#111 !important; text-align:center !important; margin:0 0 7px !important; letter-spacing:-.01em; }
html.app-host .gv-login-root .gv-card-sub{ font-size:11.5px !important; letter-spacing:.14em !important; text-transform:uppercase !important; color:#9a9a9a !important; text-align:center !important; margin:0 !important; line-height:1.5; }

/* fields */
html.app-host .gv-login-root .gv-form{ margin-top:6px !important; }
html.app-host .gv-login-root .gv-field{ margin-bottom:18px !important; }
html.app-host .gv-login-root .gv-label{ font-size:11.5px !important; font-weight:700 !important; letter-spacing:.1em !important; text-transform:uppercase !important; color:#888 !important; margin-bottom:8px !important; display:block; }
html.app-host .gv-login-root .gv-input-wrap{ border:0 !important; box-shadow:none !important; outline:none !important; background:transparent !important; border-radius:0 !important; padding:0 !important; display:block !important; position:relative !important; }
html.app-host .gv-login-root .gv-input-wrap:focus-within{ box-shadow:none !important; border:0 !important; outline:none !important; }
html.app-host .gv-login-root .gv-input{ width:100% !important; background:#fff !important; border:1px solid #ececec !important; border-radius:0 !important; padding:14px 14px !important; font-size:16px !important; color:#111 !important; box-shadow:none !important; outline:none !important; transition:border-color .15s; }
html.app-host .gv-login-root .gv-input:focus{ border-color:#111 !important; outline:none !important; box-shadow:none !important; }
html.app-host .gv-login-root .gv-field:has(.gv-eye) .gv-input{ padding-right:44px !important; }
html.app-host .gv-login-root .gv-eye{ position:absolute !important; right:12px !important; top:50% !important; transform:translateY(-50%) !important; background:none !important; border:0 !important; color:#999 !important; }

/* submit -> solid black */
html.app-host .gv-login-root .gv-submit{ width:100% !important; background:#111 !important; color:#fff !important; border:0 !important; border-radius:0 !important; padding:15px !important; font-size:15px !important; font-weight:700 !important; box-shadow:none !important; margin-top:8px !important; transition:background .15s; cursor:pointer; }
html.app-host .gv-login-root .gv-submit:hover{ background:#000 !important; }

/* footers / hints */
html.app-host .gv-login-root .gv-mini{ text-align:center !important; margin-top:16px !important; font-size:13px !important; color:#9a9a9a !important; }
html.app-host .gv-login-root .gv-mini-link{ color:#111 !important; font-weight:600; }
html.app-host .gv-login-root .gv-foot{ text-align:center !important; margin-top:18px !important; font-size:12px !important; color:#9a9a9a !important; }
html.app-host .gv-login-root .gv-dot{ background:#ff6a1a !important; }
