.auth-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;box-sizing:border-box;font-family:var(--theme-font-sans);line-height:var(--theme-lh-ui);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px 16px;overflow-y:auto;opacity:0;visibility:hidden;transition:all 0.3s ease;}.auth-modal-overlay, .auth-modal-overlay *{box-sizing:border-box;}.auth-modal-overlay h2, .auth-modal-overlay p{margin:0;}.auth-modal-overlay--open{opacity:1;visibility:visible;}.auth-modal-overlay--hidden{display:none;}.auth-modal-card{position:relative;z-index:1;width:420px;max-width:90%;margin-top:calc(-46 * var(--u));background:var(--theme-bg-card);border:1px solid var(--theme-border);border-radius:var(--theme-shape-xl);backdrop-filter:blur(var(--theme-blur-amount, 12px));box-shadow:0 25px 50px -12px var(--theme-shadow, rgba(0,0,0,0.3));transition:all 0.3s ease;animation:auth-modal-fade-in 0.2s ease-out;}.auth-modal-header{text-align:center;padding:32px 32px 16px;}.auth-logo{width:40px;height:40px;margin:0 auto 20px;background:var(--theme-gradient-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 0 20px var(--theme-accent-cyan-alpha), 0 0 40px var(--theme-accent-purple-alpha), inset 0 0 10px rgba(255, 255, 255, 0.2);animation:auth-logo-pulse 3s ease-in-out infinite;}.auth-logo i{color:var(--theme-text-main);font-size:2rem;}.auth-logo-img{width:100%;height:100%;object-fit:cover;border-radius:50%;filter:drop-shadow(0 0 6px var(--theme-accent-cyan));}.auth-logo::after{content:'';position:absolute;top:-4px;left:-4px;right:-4px;bottom:-4px;border-radius:50%;background:var(--theme-gradient-primary);z-index:-1;opacity:0.5;filter:blur(8px);animation:auth-logo-rotate 4s linear infinite;}@keyframes auth-logo-pulse{0%, 100%{box-shadow:0 0 20px var(--theme-accent-cyan-alpha), 0 0 40px var(--theme-accent-purple-alpha);}50%{box-shadow:0 0 30px var(--theme-accent-cyan-alpha-hover), 0 0 60px var(--theme-accent-purple-alpha);}}@keyframes auth-logo-rotate{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}.auth-title{font-size:var(--theme-type-headline-md);font-weight:700;background:var(--theme-gradient-primary);background-size:200% 200%;-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:8px;}.auth-subtitle{color:var(--theme-text-dim);font-size:var(--theme-type-body);}.auth-modal-body{padding:16px 32px 24px;}.auth-error{background:var(--theme-error-alpha, rgba(239,68,68,0.1));border:1px solid var(--theme-error);border-radius:var(--theme-shape-md);padding:12px 16px;margin-bottom:20px;display:flex;align-items:center;gap:10px;color:var(--theme-error);font-size:var(--theme-type-body);}.auth-error--hidden{display:none;}.auth-error i{flex-shrink:0;}.auth-form-group{margin-bottom:20px;}.auth-form-label{display:block;margin-bottom:8px;font-size:var(--theme-type-body);font-weight:500;color:var(--theme-accent-cyan);}.auth-form-label .auth-form-required{color:var(--theme-accent-orange);}.auth-input-wrapper{position:relative;}.auth-input-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--theme-text-dim);font-size:var(--theme-type-body-lg);pointer-events:none;}.auth-form-input{box-sizing:border-box;width:100%;padding:12px 12px 12px 42px;background:var(--theme-bg-overlay-alpha);border:1px solid var(--theme-border-control);border-radius:var(--theme-shape-md);color:var(--theme-text-main);font-size:var(--theme-type-body-lg);transition:all 0.2s ease;}.auth-form-input:focus{outline:none;border-color:var(--theme-accent-cyan);box-shadow:0 0 0 2px var(--theme-accent-cyan-alpha);}.auth-form-input::placeholder{color:var(--theme-text-muted);}.auth-form-input--with-toggle{padding-right:44px;}.auth-input-toggle{position:absolute;top:0;bottom:0;right:8px;margin:auto 0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;padding:0;background:transparent;border:none;border-radius:var(--theme-shape-sm);color:var(--theme-text-dim);font-size:var(--theme-type-body-lg);cursor:pointer;transition:color 0.2s ease, background 0.2s ease;}.auth-input-toggle:hover{color:var(--theme-accent-cyan);background:var(--theme-accent-cyan-alpha);}.auth-input-toggle:focus-visible{outline:2px solid var(--theme-accent-cyan);outline-offset:1px;}.auth-submit-btn{width:100%;padding:0.625rem 1.25rem;background:transparent;border:1px solid var(--theme-border);border-radius:var(--theme-shape-md);color:var(--theme-accent-cyan);font-size:var(--theme-type-body);font-weight:500;cursor:pointer;transition:border-color 0.3s cubic-bezier(0.4, 0, 0.2, 1), color 0.3s cubic-bezier(0.4, 0, 0.2, 1);display:inline-flex;align-items:center;justify-content:center;gap:0.4rem;}.auth-submit-btn:not(:disabled):hover{border-color:var(--theme-accent-cyan);}.auth-submit-btn:disabled{opacity:0.5;cursor:not-allowed;}.auth-modal-footer{padding:16px 32px 32px;text-align:center;border-top:1px solid var(--theme-border);margin-top:8px;}.auth-modal-footer p{color:var(--theme-text-dim);font-size:var(--theme-type-label-md);}@keyframes auth-modal-fade-in{from{opacity:0;transform:scale(0.95);}to{opacity:1;transform:scale(1);}}.auth-modal-stage{--u:1.5px;position:relative;z-index:1;width:100%;display:flex;flex-direction:column;align-items:center;}.auth-login-character-frame{position:relative;z-index:0;width:calc(160 * var(--u));height:calc(160 * var(--u));overflow:hidden;flex:none;animation:auth-character-appear 0.2s ease-out 0.2s backwards;}@keyframes auth-character-appear{from{opacity:0;}to{opacity:1;}}.auth-login-character{position:absolute;inset:0;}.auth-char-part{position:absolute;font-size:0;}.auth-char-part .auth-char-art, .auth-char-ear-mask .auth-char-art{display:block;width:100%;height:100%;}.auth-char-mirror{display:block;width:100%;height:100%;transform:scaleX(-1);}.auth-char-body{left:calc(33.9 * var(--u));top:calc(109.2 * var(--u));width:calc(92.1 * var(--u));height:calc(73.4 * var(--u));z-index:1;}.auth-char-head{left:calc(27.3 * var(--u));top:calc(52.1 * var(--u));width:calc(105.5 * var(--u));height:calc(90.9 * var(--u));z-index:2;}.auth-char-ear-l{left:calc(-9.1 * var(--u));top:calc(-3.3 * var(--u));width:calc(36.6 * var(--u));height:calc(36.6 * var(--u));z-index:3;}.auth-char-ear-r{left:calc(77.9 * var(--u));top:calc(-3.3 * var(--u));width:calc(36.6 * var(--u));height:calc(36.6 * var(--u));z-index:3;}.auth-char-ear-mask{position:absolute;left:0;top:0;width:calc(105.5 * var(--u));height:calc(90.9 * var(--u));z-index:4;}.auth-char-ear-mask-l{clip-path:inset(0 calc(50% - 1px) 0 0);transform-origin:100% 0;}.auth-char-ear-mask-r{clip-path:inset(0 0 0 calc(50% - 1px));transform-origin:0 0;}.auth-char-eye-l{left:calc(21.8 * var(--u));top:calc(28.8 * var(--u));width:calc(11.7 * var(--u));height:calc(11.7 * var(--u));z-index:5;}.auth-char-eye-r{left:calc(72.4 * var(--u));top:calc(28.8 * var(--u));width:calc(11.7 * var(--u));height:calc(11.7 * var(--u));z-index:5;}.auth-char-muzzle{left:calc(24 * var(--u));top:calc(43 * var(--u));width:calc(57.5 * var(--u));height:calc(46.3 * var(--u));z-index:5;}.auth-char-nose{left:calc(22.2 * var(--u));top:calc(2.2 * var(--u));width:calc(13 * var(--u));height:calc(9.6 * var(--u));z-index:6;}.auth-char-mouth{left:calc(13.7 * var(--u));top:calc(24.9 * var(--u));width:calc(30 * var(--u));height:calc(6.5 * var(--u));z-index:6;}.auth-char-arm-l{left:calc(25.1 * var(--u));top:calc(160 * var(--u));width:calc(42.3 * var(--u));height:calc(93.2 * var(--u));z-index:7;}.auth-char-arm-r{left:calc(92.6 * var(--u));top:calc(160 * var(--u));width:calc(42.3 * var(--u));height:calc(93.2 * var(--u));z-index:7;}.auth-user-status-block{display:flex;align-items:center;gap:16px;padding:12px 20px;background:linear-gradient(170deg, var(--theme-bg-card-hover) 0%, var(--theme-bg-card) 55%, var(--theme-bg-overlay-alpha) 100%);border:none;border-radius:var(--theme-shape-lg);backdrop-filter:blur(var(--theme-blur-amount, 12px));transition:all 0.3s ease;cursor:default;position:relative;overflow:hidden;}.auth-user-status-block::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg, transparent, var(--theme-accent-cyan-alpha), transparent);transition:left 0.5s ease;pointer-events:none;}.auth-user-status-block:hover::before{left:100%;}.auth-user-status-block:hover{box-shadow:0 0 20px var(--theme-accent-cyan-alpha);transform:translateY(-2px);}.auth-user-status-avatar-wrapper{position:relative;flex-shrink:0;}.auth-user-status-avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid var(--theme-accent-cyan);box-shadow:0 0 10px var(--theme-accent-cyan-alpha);transition:all 0.3s ease;}.auth-user-status-block:hover .auth-user-status-avatar{border-color:var(--theme-accent-purple);box-shadow:0 0 15px var(--theme-accent-purple-alpha);transform:scale(1.02);}.auth-user-status-avatar-glow{position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;border-radius:50%;background:var(--theme-gradient-primary);opacity:0.3;filter:blur(4px);z-index:-1;transition:opacity 0.3s ease;}.auth-user-status-block:hover .auth-user-status-avatar-glow{opacity:0.6;}.auth-user-status-status-dot{position:absolute;bottom:2px;right:2px;width:12px;height:12px;background:var(--theme-success);border-radius:50%;border:2px solid var(--theme-bg-card);box-shadow:0 0 4px var(--theme-success);animation:auth-status-pulse 2s ease-in-out infinite;}@keyframes auth-status-pulse{0%, 100%{opacity:1;transform:scale(1);}50%{opacity:0.6;transform:scale(0.9);}}.auth-user-status-info{flex:1;min-width:0;}.auth-user-status-name{display:flex;align-items:center;gap:6px;font-size:var(--theme-type-body-lg);font-weight:600;color:var(--theme-text-main);margin-bottom:4px;}.auth-user-status-name i{color:var(--theme-accent-cyan);font-size:var(--theme-type-body);}.auth-user-status-name span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.auth-user-status-meta{display:flex;flex-wrap:wrap;gap:8px;}.auth-user-status-role, .auth-user-status-business-role, .auth-user-status-id{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:var(--theme-accent-cyan-alpha);border-radius:var(--theme-shape-lg);font-size:var(--theme-type-label-sm);color:var(--theme-accent-cyan);}.auth-user-status-business-role{background:var(--theme-accent-purple-alpha);color:var(--theme-accent-purple);}.auth-user-status-id{background:var(--theme-bg-overlay-light);color:var(--theme-text-dim);font-family:var(--theme-font-mono);}.auth-user-status-role i, .auth-user-status-business-role i, .auth-user-status-id i{font-size:var(--theme-type-label-sm);}.auth-user-status-logout-btn{display:inline-flex;align-items:center;gap:0.4rem;padding:0.625rem 1.25rem;background:transparent;border:1px solid var(--theme-border);border-radius:var(--theme-shape-md);color:var(--theme-error);font-size:var(--theme-type-body);font-weight:500;cursor:pointer;transition:border-color 0.3s cubic-bezier(0.4, 0, 0.2, 1), color 0.3s cubic-bezier(0.4, 0, 0.2, 1);white-space:nowrap;}.auth-user-status-logout-btn:not(:disabled):hover{border-color:var(--theme-error);}.auth-user-status-logout-btn:disabled{opacity:0.5;cursor:not-allowed;}.auth-user-status-logout-btn i{font-size:var(--theme-type-body);}@media (max-width:768px){.auth-user-status-block{padding:10px 16px;gap:12px;}.auth-user-status-avatar{width:44px;height:44px;}.auth-user-status-name{font-size:var(--theme-type-body);}.auth-user-status-meta{gap:4px;}.auth-user-status-role, .auth-user-status-business-role, .auth-user-status-id{padding:2px 6px;font-size:var(--theme-type-label-sm);}.auth-user-status-logout-btn span{display:none;}.auth-user-status-logout-btn{padding:8px 12px;}.auth-user-status-logout-btn i{font-size:var(--theme-type-body-lg);margin:0;}}@media (max-width:480px){.auth-login-character-frame{display:none;}.auth-user-status-id{display:none;}}