/* Page de connexion : même vocabulaire que l'application (carnet de tactique, craie sur gazon). */
.lg-body{background:var(--bg)}
.lg{display:grid;grid-template-columns:minmax(0,5fr) minmax(360px,4fr);min-height:100vh}
.lg-art{background:var(--side);color:var(--side-tx);padding:40px 48px;display:flex;flex-direction:column;justify-content:space-between;gap:28px;position:relative;overflow:hidden}
.lg-art::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,#ffffff06 0 64px,transparent 64px 128px);pointer-events:none}
.lg-brand{display:flex;align-items:center;gap:12px;font:800 28px/1 var(--f-head);letter-spacing:-.6px;color:var(--side-tx);position:relative;z-index:1}
.lg-brand svg{color:var(--side-acc)}
.lg-board{width:min(100%,560px);height:auto;color:var(--side-tx);align-self:center;position:relative;z-index:1}
.lg-board g:nth-of-type(1){color:var(--side-acc)}
.lg-board g:nth-of-type(1) circle{fill:var(--side)}
.lg-board path[stroke-dasharray],.lg-board g:nth-of-type(2){color:var(--side-acc)}
.lg-tag{font:600 clamp(20px,2.3vw,30px)/1.25 var(--f-head);letter-spacing:-.4px;max-width:20ch;margin:0;color:var(--side-tx);position:relative;z-index:1}
.lg-panel{display:flex;align-items:center;justify-content:center;padding:32px 24px;position:relative}
.lg-card{width:100%;max-width:420px}
.lg-tabs{display:flex;gap:4px;background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:4px;margin-bottom:26px}
.lg-tabs button{flex:1;border:0;background:transparent;border-radius:9px;padding:9px 10px;font-weight:650;color:var(--tx2)}
.lg-tabs button[aria-selected=true]{background:var(--card);color:var(--tx);box-shadow:var(--sh)}
.lg h1{font:800 30px/1.1 var(--f-head);letter-spacing:-.8px;margin:0 0 6px}
.lg-sub{margin:0 0 22px;color:var(--tx2)}
.lg form label{display:block;font-size:12.5px;font-weight:650;color:var(--tx2);margin:14px 0 5px}
.lg form input[type=text],.lg form input[type=password]{background:var(--card);border:1px solid var(--line2);color:var(--tx);border-radius:10px;padding:11px 12px;font:inherit;width:100%;outline:none}
.lg form input:focus{border-color:var(--acc);box-shadow:0 0 0 3px var(--acc-soft)}
.lg-pw{position:relative}.lg-pw input{padding-right:84px!important}
.lg-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--acc);font-weight:650;font-size:13px;padding:6px 8px;border-radius:8px}
.lg-hint{font-size:12px;color:var(--tx3);margin-top:6px}
.lg-meter{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:8px}.lg-meter i{height:4px;border-radius:2px;background:var(--track)}
.lg-meter[data-s="1"] i:nth-child(-n+1){background:var(--bad)}.lg-meter[data-s="2"] i:nth-child(-n+2){background:var(--warn)}
.lg-meter[data-s="3"] i:nth-child(-n+3){background:var(--amber)}.lg-meter[data-s="4"] i{background:var(--good)}
.lg-err{min-height:20px;margin:12px 0 4px;color:var(--bad);font-size:13.5px;font-weight:600}
.lg-go{width:100%;justify-content:center;padding:12px 16px;font-size:15px}
.lg-foot{font-size:12.5px;color:var(--tx3);text-align:center;margin:16px 0 0}
.lg-notice{background:var(--acc-soft);border:1px solid var(--line2);border-radius:10px;padding:10px 12px;font-size:13.5px;margin-bottom:18px;color:var(--tx)}
.lg-notice.warn{background:#ffb45422;border-color:var(--warn)}
.lg-theme{position:absolute;top:18px;right:18px;border:1px solid var(--line2);background:var(--card);border-radius:10px;width:38px;height:38px;display:grid;place-items:center;color:var(--tx2)}
@media (max-width:860px){.lg{grid-template-columns:1fr}.lg-art{padding:22px 24px;gap:14px}.lg-board,.lg-tag{display:none}.lg-panel{align-items:flex-start;padding-top:28px}}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
