.modal-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(15,23,42,.45);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;z-index:2000;opacity:0;transition:opacity var(--transition-normal)}.modal-backdrop.open{display:flex;opacity:1}.modal-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-float);width:100%;max-width:440px;overflow:hidden;transform:translateY(12px) scale(.97);transition:transform var(--transition-spring)}.modal-backdrop.open .modal-card{transform:translateY(0) scale(1)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem .75rem}.modal-title{font-size:1.15rem;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.modal-close-btn{background:0 0;border:none;color:var(--text-muted);width:28px;height:28px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px;transition:all var(--transition-fast)}.modal-close-btn:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.modal-body{padding:1rem 1.5rem 1.5rem}.auth-tabs{display:flex;background:var(--bg-app);border-radius:var(--radius-md);padding:4px;margin-bottom:1.25rem;border:1px solid var(--border-subtle)}.auth-tab{flex:1;text-align:center;padding:.5rem;font-size:.85rem;font-weight:600;color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.auth-tab.active{background:var(--bg-surface);color:var(--primary);box-shadow:var(--shadow-xs)}.form-group{margin-bottom:1rem}.form-label{display:block;font-size:.8rem;font-weight:600;color:var(--text-secondary);margin-bottom:.35rem}.form-input{width:100%;padding:.65rem .85rem;font-family:inherit;font-size:.9rem;border-radius:var(--radius-sm);border:1.5px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);transition:all var(--transition-fast)}.form-input:focus{outline:0;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.btn-submit{width:100%;padding:.75rem;font-family:inherit;font-size:.95rem;font-weight:600;border-radius:var(--radius-sm);background:var(--primary);color:#fff;border:none;cursor:pointer;box-shadow:0 4px 12px rgba(59,130,246,.35);transition:all var(--transition-fast);margin-top:.5rem}.btn-submit:hover{background:var(--primary-hover);box-shadow:0 6px 16px rgba(59,130,246,.45)}.server-status-info{margin-top:1.25rem;padding:.75rem;border-radius:var(--radius-md);background:var(--primary-light);border:1px solid rgba(59,130,246,.2);display:flex;align-items:flex-start;gap:.6rem;font-size:.78rem;color:var(--text-secondary);line-height:1.4}.server-status-info strong{color:var(--primary)}.shortcuts-table{width:100%;border-collapse:collapse;font-size:.85rem}.shortcuts-table tr{border-bottom:1px solid var(--border-subtle)}.shortcuts-table td{padding:.6rem .4rem}.kbd-badge{display:inline-block;padding:.2rem .45rem;font-family:monospace;font-size:.75rem;font-weight:700;color:var(--text-primary);background:var(--bg-app);border:1px solid var(--border-strong);border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.1)}