/* 登录与注册页面 */
.auth-page {
    padding: 2rem 0;
}

.auth-card {
    overflow: hidden;
}

.auth-register-card {
    max-width: 680px;
    margin: 0 auto;
}

.auth-card .card-body {
    padding-top: clamp(2rem, 5vw, 3.25rem) !important;
}

.auth-header {
    margin-bottom: 1.75rem;
    text-align: center;
}

.auth-kicker {
    color: var(--brand);
}

.auth-header h1 {
    margin: 0;
    font-size: clamp(1.7rem, 4vw, 2.2rem);
    font-weight: 800;
}

.auth-header p {
    margin: 0.55rem auto 0 !important;
    font-size: 0.9rem;
}

.auth-form .form-control {
    min-height: 3rem;
}

.auth-form .btn {
    min-height: 3rem;
}

.auth-switch {
    margin: 1.25rem 0 0 !important;
    text-align: center;
    font-size: 0.9rem;
}

.auth-switch a {
    margin-left: 0.25rem;
    color: var(--brand-strong);
    font-weight: 750;
}

.auth-register-form p {
    margin-bottom: 1rem;
}

.auth-register-form label {
    display: block;
    margin-bottom: 0.45rem;
    color: var(--ink);
    font-size: 0.9rem;
    font-weight: 700;
}

.auth-register-form input {
    display: block;
    width: 100%;
    min-height: 3rem;
    padding: 0.375rem 0.75rem;
    color: var(--ink);
    background: var(--surface-raised);
    border: 1px solid var(--line);
    border-radius: var(--radius-sm);
}

.auth-register-form input:focus {
    outline: 0;
    border-color: var(--brand);
    box-shadow: 0 0 0 0.24rem var(--focus-ring);
}

.auth-register-form .helptext,
.auth-register-form ul {
    display: block;
    margin-top: 0.45rem;
    color: var(--ink-muted);
    font-size: 0.78rem;
}

.auth-register-form ul {
    padding-left: 1.15rem;
}

/* 用户中心与留言板 */
.space-page { max-width: 1280px; margin: 0 auto; }
.space-sidebar .position-sticky { top: 5.5rem; }
.space-profile-card { overflow: hidden; }
.space-profile-card .card-body { padding: 1.75rem 1.25rem; }
.space-avatar { width: 96px; height: 96px; object-fit: cover; border: 3px solid var(--brand-soft); }
.space-avatar-large { width: 120px; height: 120px; }
.space-nav { gap: 0.35rem; }
.space-nav .list-group-item { border-radius: var(--radius-sm) !important; font-weight: 650; }
.space-nav .list-group-item:hover { color: var(--brand-strong); background: var(--brand-soft) !important; }
.space-content { min-width: 0; }
.space-section-heading { border-bottom: 1px solid var(--line); }
.space-section-heading h1 { font-weight: 800; }
.space-panel { overflow: hidden; }
.space-post-list .list-group-item { margin-bottom: 0.45rem; border: 1px solid var(--line) !important; border-radius: var(--radius-sm) !important; }
.space-empty-state { display: grid; min-height: 9rem; place-items: center; color: var(--ink-muted); background: var(--surface-muted); border: 1px dashed var(--line); border-radius: var(--radius-md); }
.board-page { max-width: 850px; margin: 0 auto; }
.board-header { margin-bottom: 1.5rem; }
.board-kicker { color: var(--brand); font-size: .72rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.board-header h1 { margin: .25rem 0 .4rem; font-size: clamp(1.9rem, 4vw, 2.65rem); font-weight: 800; }
.board-header p { margin: 0 !important; }
.board-compose-card { border-color: rgba(46,143,123,.32) !important; }
.board-compose-card textarea { min-height: 8rem; }
.board-compose-actions { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:.85rem; color:var(--ink-muted); font-size:.8rem; }
.board-post { overflow: hidden; scroll-margin-top: 6rem; }
.board-post .card-header { padding: 1rem 1.25rem; }
.board-post .card-body { padding: 1.25rem; }
.board-post .card-text { color: var(--ink) !important; line-height: 1.8; }
.board-login-notice { margin-top: 1rem; }
@media(max-width:767.98px) { .space-sidebar .position-sticky { position:static !important; } .space-content > div:first-child { margin-top:1.5rem !important; } .board-compose-actions { align-items:stretch; flex-direction:column; } .board-compose-actions .btn { width:100%; } }
