 * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            background-color: #f5f7fa;
            font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
            min-height: 100vh;
            display: flex;
            justify-content: center;
            align-items: center;
            color: #1e293b;
        }

        .auth-container {
            max-width: 480px;
            width: 90%;
            margin: 20px;
        }

        .auth-card {
            background: #ffffff;
            border-radius: 24px;
            border: 1px solid #e6edf4;
            padding: 40px 32px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.03);
        }

        .auth-header {
            text-align: center;
            margin-bottom: 32px;
        }

        .auth-header h1 {
            font-size: 28px;
            font-weight: 500;
            color: #0a1929;
            letter-spacing: -0.3px;
            margin-bottom: 8px;
        }

        .auth-header .badge {
            font-size: 14px;
            color: #5e6f8d;
            background: #eef2f6;
            padding: 6px 20px;
            border-radius: 40px;
            display: inline-block;
        }

        .tab-bar {
            display: flex;
            gap: 8px;
            margin-bottom: 32px;
            background: #f0f4fa;
            padding: 6px;
            border-radius: 60px;
        }

        .tab {
            flex: 1;
            text-align: center;
            padding: 12px 16px;
            border-radius: 40px;
            font-size: 16px;
            font-weight: 500;
            color: #5e6f8d;
            cursor: pointer;
            transition: 0.15s;
            border: none;
            background: transparent;
        }

        .tab.active {
            background: #ffffff;
            color: #1e3a5f;
            box-shadow: 0 2px 8px rgba(0,0,0,0.04);
        }

        .form-panel {
            display: none;
        }

        .form-panel.active {
            display: block;
        }

        .field {
            margin-bottom: 24px;
        }

        .field label {
            display: block;
            font-size: 13px;
            font-weight: 500;
            color: #4b5b73;
            margin-bottom: 8px;
            text-transform: uppercase;
            letter-spacing: 0.3px;
        }

        .field input, .field select {
            width: 100%;
            background: #f9fcff;
            border: 1px solid #dde5ed;
            border-radius: 16px;
            padding: 14px 18px;
            font-size: 15px;
            color: #1e293b;
            outline: none;
            transition: 0.1s;
        }

        .field input:focus, .field select:focus {
            border-color: #1e3a5f;
            background: #ffffff;
        }

        .double-row {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 16px;
        }

        .btn-submit {
            width: 100%;
            background: #1e3a5f;
            border: none;
            color: white;
            padding: 16px;
            border-radius: 40px;
            font-size: 17px;
            font-weight: 500;
            cursor: pointer;
            transition: 0.15s;
            margin-top: 16px;
        }

        .btn-submit:hover {
            background: #142b44;
        }

        .message {
            padding: 14px 18px;
            border-radius: 16px;
            margin-bottom: 24px;
            font-size: 14px;
            text-align: center;
            display: none;
        }

        .message.error {
            background: #fff2f0;
            border: 1px solid #ffccc7;
            color: #b34033;
            display: block;
        }

        .message.success {
            background: #f0f9f0;
            border: 1px solid #b7e0b7;
            color: #2d6a2d;
            display: block;
        }

        .message.info {
            background: #e6f4ff;
            border: 1px solid #91caff;
            color: #0958d9;
            display: block;
        }

        .auth-footer {
            text-align: center;
            margin-top: 24px;
            font-size: 14px;
            color: #7f8fa4;
        }

        .auth-footer button {
            background: none;
            border: none;
            color: #1e3a5f;
            font-weight: 500;
            cursor: pointer;
            font-size: 14px;
            text-decoration: underline;
        }

        .hint-box {
            margin-top: 28px;
            padding-top: 20px;
            border-top: 1px dashed #dee7f0;
            text-align: center;
            font-size: 13px;
            color: #8a9bb0;
        }

        .hint-box span {
            background: #eef2f6;
            padding: 4px 12px;
            border-radius: 30px;
            margin: 0 4px;
        }

        .loading {
            display: inline-block;
            width: 16px;
            height: 16px;
            border: 2px solid rgba(255,255,255,0.3);
            border-radius: 50%;
            border-top-color: #fff;
            animation: spin 1s ease-in-out infinite;
            margin-right: 8px;
            vertical-align: middle;
        }

        @keyframes spin {
            to { transform: rotate(360deg); }
        }
		
		 /* 内部系统提示卡片 */
		        .notice-card {
		            background: #f5f9ff;
		            border: 1px solid #b8d1f0;
		            border-radius: 20px;
		            padding: 24px;
		            margin-bottom: 24px;
		            text-align: center;
		        }
		
		        .notice-card p {
		            color: #1e3a5f;
		            font-size: 15px;
		            line-height: 1.6;
		        }
		
		        .notice-icon {
		            font-size: 40px;
		            margin-bottom: 12px;
		            opacity: 0.8;
		        }
		
		        .footer-note {
		            text-align: center;
		            margin-top: 24px;
		            color: #8a9bb0;
		            font-size: 13px;
		        }