/* Account and authentication icon system. */
.account-avatar.guest{background:linear-gradient(145deg,var(--navy-2),var(--navy));color:#fff;box-shadow:0 7px 15px rgba(8,71,166,.2)}
.account-avatar svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.auth-dialog-close{display:grid;place-items:center;font-size:0}
.auth-dialog-close svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round}
.auth-tabs button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:40px}
.auth-tabs button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.auth-input-shell{position:relative;display:block}
.auth-input-shell>svg{position:absolute;z-index:1;left:13px;top:50%;width:18px;height:18px;transform:translateY(-50%);fill:none;stroke:var(--navy);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.auth-form .auth-input-shell input{height:46px;padding-left:42px;border-radius:12px;transition:border-color .18s ease,box-shadow .18s ease}
.auth-form .auth-input-shell input:focus{border-color:rgba(8,71,166,.48);box-shadow:0 0 0 4px rgba(8,71,166,.08)}
.auth-form .input-password input{padding-right:92px}
.input-password button{top:50%;height:36px;display:flex;align-items:center;gap:5px;padding:0 9px;transform:translateY(-50%);border-radius:9px}
.input-password button svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.auth-submit{min-height:46px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;background:linear-gradient(120deg,var(--navy),var(--navy-2));box-shadow:0 10px 20px rgba(8,71,166,.2);transition:transform .18s ease,box-shadow .18s ease}
.auth-submit:hover{transform:translateY(-1px);box-shadow:0 13px 24px rgba(8,71,166,.25)}
.auth-submit:disabled{cursor:wait;opacity:.68;transform:none}
.auth-submit svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.submit-register-icon{display:none}
.auth-submit.register-mode .submit-login-icon{display:none}
.auth-submit.register-mode .submit-register-icon{display:block}
.google-button,.demo-access{display:flex;align-items:center;justify-content:center;gap:9px;min-height:44px;border-radius:12px}
.google-button:disabled{cursor:not-allowed;opacity:.58}
#google-auth-message:not(:empty){margin:10px 0;padding:10px 12px;border:1px solid var(--line);border-radius:10px;font-size:11px;line-height:1.5}
.auth-social-icon{width:24px;height:24px;display:grid;place-items:center;flex:0 0 24px;border-radius:8px}
.auth-social-icon svg{width:18px;height:18px}
.google-icon{background:#fff;box-shadow:inset 0 0 0 1px #e5e9ec}
.demo-icon{background:#fff;color:var(--orange)}
.demo-icon svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.auth-security{display:flex;align-items:center;justify-content:center;gap:6px}
.auth-security svg{width:14px;height:14px;flex:0 0 14px;fill:none;stroke:var(--green);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:600px){.auth-tabs button{min-height:44px}.auth-form .auth-input-shell input{height:48px}.google-button,.demo-access,.auth-submit{min-height:48px}}
