/* v2.1.4 authentication + physical charging UX */
.auth-shell-v214{min-height:calc(100vh - 74px)}
.auth-page-v214{gap:28px}.auth-visual-v214{min-height:650px}.auth-visual-v214:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 16%,rgba(158,230,198,.22),transparent 28%);z-index:1;pointer-events:none}.auth-visual-badges{position:absolute;z-index:2;top:24px;left:24px;display:flex;gap:8px;flex-wrap:wrap}.auth-visual-badges span{padding:8px 11px;border-radius:999px;background:rgba(5,30,46,.72);border:1px solid rgba(255,255,255,.16);color:#fff;font-size:10px;font-weight:900;letter-spacing:.04em;backdrop-filter:blur(10px)}
.auth-proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:22px}.auth-proof-grid>div{padding:12px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(255,255,255,.08);backdrop-filter:blur(8px)}.auth-proof-grid strong{display:block;font-size:18px;color:#fff}.auth-proof-grid span{display:block;margin-top:3px;font-size:10px;color:#dbe9ec}
.auth-card-v214{padding:26px 28px;box-shadow:0 24px 60px rgba(8,42,62,.13)}.auth-card-v214 h2{font-size:30px;letter-spacing:-.035em;margin:7px 0}.auth-mode-tabs{display:grid;grid-template-columns:1fr 1fr;background:var(--panel-soft,#f4f7f8);padding:5px;border-radius:14px;margin:14px 0 22px;border:1px solid var(--line)}.auth-mode-tabs button{border:0;background:transparent;color:var(--muted);padding:10px;border-radius:10px;font-weight:900;cursor:pointer}.auth-mode-tabs button.active{background:var(--panel);color:var(--green2);box-shadow:var(--shadow-sm)}
.password-field{display:grid;grid-template-columns:1fr auto;align-items:center;border:1px solid var(--line);border-radius:12px;background:var(--panel);overflow:hidden}.password-field:focus-within{border-color:var(--green);box-shadow:0 0 0 3px rgba(20,168,115,.09)}.password-field input{border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important}.password-field button{height:100%;min-width:62px;border:0;border-left:1px solid var(--line);background:transparent;color:var(--green2);font-weight:900;cursor:pointer}
.auth-row-v214{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 14px}.remember-check{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted);font-weight:750}.remember-check input{accent-color:var(--green)}.link-button{appearance:none;border:0;background:transparent;color:var(--green2);font-weight:900;cursor:pointer;padding:3px 0;font-size:12px}.link-button:hover{text-decoration:underline}.auth-back-link{display:block;margin:14px auto 0}.auth-primary-v214{width:100%;margin-top:5px}.auth-security-note{display:flex;gap:10px;align-items:flex-start;padding:12px 13px;border-radius:14px;background:var(--panel-soft,#f6f9fa);border:1px solid var(--line);margin-top:15px}.auth-security-note span{font-size:18px}.auth-security-note strong{display:block;font-size:11px}.auth-security-note small{display:block;margin-top:3px;color:var(--muted);line-height:1.45}.auth-message-v214{min-height:20px;margin:13px 0 0;font-size:12px;font-weight:800;color:var(--red)}
.command-auth-form-v214{position:relative}.command-auth-form-v214 h2{font-size:30px;letter-spacing:-.03em}.command-auth-form-v214 .notice{margin:12px 0}.command-auth-form-v214 .auth-back-link{text-align:center;width:100%}
.physical-live-v214{border-color:rgba(20,168,115,.34);box-shadow:0 16px 38px rgba(20,168,115,.11)}.physical-live-v214 .charge-gauge{background:conic-gradient(var(--green) 0 82%,rgba(20,168,115,.16) 82% 100%)}.physical-live-v214 #liveState{color:var(--green2);font-weight:900}.stop-requested-v214{opacity:.7;pointer-events:none}
html[data-theme="dark"] .auth-mode-tabs{background:rgba(255,255,255,.04)}html[data-theme="dark"] .auth-security-note{background:rgba(255,255,255,.04)}html[data-theme="dark"] .password-field{background:var(--panel)}html[data-theme="dark"] .auth-mode-tabs button.active{background:rgba(255,255,255,.08)}
@media(max-width:1050px){.auth-page-v214{grid-template-columns:1fr}.auth-visual-v214{display:none}.auth-card-v214{width:min(100%,600px)}}
@media(max-width:620px){.auth-card-v214{padding:22px 18px}.auth-proof-grid{grid-template-columns:1fr}.auth-row-v214{align-items:flex-start;flex-direction:column}.auth-mode-tabs{margin-bottom:18px}.auth-card-v214 h2{font-size:26px}}
