@import '../../styles/variables.scss'; @import '../../styles/mixins.scss'; .login-scroll { height: 100vh; } .login-page { min-height: 100vh; background: $bg; display: flex; flex-direction: column; align-items: center; padding: 160px 56px 80px; } /* ─── 品牌区 ─── */ .login-brand { display: flex; flex-direction: column; align-items: center; margin-bottom: 80px; } .login-logo { width: 128px; height: 128px; border-radius: $r-lg; background: $pri; @include flex-center; margin-bottom: 36px; box-shadow: 0 8px 24px rgba($pri, 0.3); } .login-logo-mark { font-family: 'Georgia', 'Times New Roman', serif; font-size: 64px; color: #fff; font-weight: bold; line-height: 1; } .login-title { font-family: 'Georgia', 'Times New Roman', serif; font-size: 48px; color: $tx; font-weight: bold; margin-bottom: 12px; } .login-subtitle { font-size: 26px; color: $tx2; letter-spacing: 0.05em; } /* ─── 装饰线 ─── */ .login-divider { width: 48px; margin-bottom: 64px; } .login-divider-line { height: 3px; background: $pri; border-radius: 2px; opacity: 0.4; } /* ─── 登录按钮 ─── */ .login-body { width: 100%; } .login-btn { width: 100%; height: 96px; background: $pri; color: #fff; font-size: 32px; font-weight: 600; border-radius: $r; border: none; @include flex-center; letter-spacing: 0.04em; box-shadow: 0 4px 16px rgba($pri, 0.25); &::after { border: none; } &:active { opacity: 0.85; } } /* ─── 协议 ─── */ .agreement-row { display: flex; align-items: flex-start; margin-top: 40px; gap: 12px; width: 100%; } .agreement-check { width: 32px; height: 32px; border: 2px solid $bd; border-radius: $r-sm; @include flex-center; flex-shrink: 0; margin-top: 2px; transition: all 0.2s; &.checked { background: $pri; border-color: $pri; } } .agreement-check-mark { font-size: 20px; color: #fff; font-weight: bold; line-height: 1; } .agreement-text { font-size: 22px; color: $tx2; line-height: 1.7; } .agreement-link { color: $pri; font-weight: 500; }