/* 只改变外观，页面结构、模块顺序与业务交互始终共用。 */
html { font-size: var(--platform-font-size); }
body.platform-site { color: var(--platform-text); background-color: var(--platform-background); }
.platform-site .navbar.bg-light { background-color: var(--platform-nav-background) !important; }
.platform-site .navbar-light .navbar-nav .nav-link { color: var(--platform-nav-text); }
.platform-site .navbar-nav .nav-item:hover .nav-link,
.platform-site .navbar-nav .nav-item.active .nav-link { color: var(--platform-accent); }
.platform-site .slide-title { color: var(--platform-hero-text); }
.platform-site .banner { color: var(--platform-banner-text); }
.platform-site .footer-container { background: var(--platform-footer-background); color: var(--platform-footer-text); }
.platform-site .footer-text a { color: inherit; }
.platform-site .footer-text { height: auto; min-height: 7vh; flex-wrap: wrap; overflow-wrap: anywhere; padding: 8px; }
.platform-site .brand-placeholder { color: var(--platform-heading); text-align: center; overflow-wrap: anywhere; padding: 8px; }
.platform-site .brand-placeholder small { display: block; color: var(--platform-muted); }
.platform-site .brand-logo { max-width: 100%; max-height: 90px; }
.platform-site .brand-link { max-width: 100%; }

/* 尺寸未配置时沿用各按钮原有值，包括原有响应式尺寸。 */
.slide-btn { --default-button-radius: 50px; --default-button-font: 1.2rem; --default-button-x: 2rem; --default-button-y: 1rem; }
.btn-auth { --default-button-radius: 50px; --default-button-font: 18px; --default-button-x: 2.5rem; --default-button-y: 0.5rem; }
.auth-btn { --default-button-radius: 5px; --default-button-font: 16px; --default-button-x: 12px; --default-button-y: 12px; }
.btn-primary { --default-button-radius: 4px; --default-button-font: 1rem; --default-button-x: 25px; --default-button-y: 10px; }
.information-more { --default-button-radius: 5px; --default-button-font: 0.9rem; --default-button-x: 20px; --default-button-y: 8px; }
.btn-back { --default-button-radius: 4px; --default-button-font: 14px; --default-button-x: 12px; --default-button-y: 6px; }
.platform-site :is(.slide-btn, .btn-auth, .auth-btn, .btn-primary, .information-more, .btn-back) {
    border-radius: var(--platform-button-radius, var(--default-button-radius));
    font-size: var(--platform-button-font-size, var(--default-button-font));
    padding: var(--platform-button-padding-y, var(--default-button-y)) var(--platform-button-padding-x, var(--default-button-x));
}
.platform-site :is(.slide-btn, .btn-auth, .auth-btn, .btn-primary, .information-more) {
    background: var(--platform-button-background);
    color: var(--platform-button-color);
    border: var(--platform-button-border-width) solid var(--platform-button-border-color);
}
.platform-site :is(.slide-btn, .btn-auth, .auth-btn, .btn-primary, .information-more):hover {
    background: var(--platform-button-hover-background);
    color: var(--platform-button-hover-color);
    box-shadow: 0 var(--platform-button-shadow-y, 4px) var(--platform-button-shadow-blur, 12px) rgba(0, 0, 0, var(--platform-button-shadow-opacity, 0.15));
}
.platform-site .btn-back:hover { border-color: var(--platform-primary); color: var(--platform-primary); }

/* 公共卡片和输入框保留尺寸、布局；边框为站点可选的外观装饰。 */
.auth-box { --default-card-radius: 10px; --default-shadow-y: 0px; --default-shadow-blur: 20px; }
.information-item, .about-stats { --default-card-radius: 8px; --default-shadow-y: 4px; --default-shadow-blur: 12px; }
.sidebar, .content, .content-container, .info-detail-content { --default-card-radius: 8px; --default-shadow-y: 2px; --default-shadow-blur: 10px; }
.platform-site :is(.auth-box, .information-item, .about-stats, .sidebar, .content, .content-container, .info-detail-content) {
    border-radius: var(--platform-card-radius, var(--default-card-radius));
    outline: var(--platform-card-border-width) solid var(--platform-card-border-color);
    box-shadow: 0 var(--platform-card-shadow-y, var(--default-shadow-y)) var(--platform-card-shadow-blur, var(--default-shadow-blur)) rgba(0, 0, 0, var(--platform-card-shadow-opacity, 0.1));
}
.platform-site .information-item:hover { box-shadow: 0 var(--platform-card-shadow-y, 8px) var(--platform-card-shadow-blur, 16px) rgba(0, 0, 0, var(--platform-card-shadow-opacity, 0.15)); }
.platform-site .form-control {
    border-width: var(--platform-input-border-width);
    border-color: var(--platform-input-border-color, #ddd);
    border-radius: var(--platform-input-radius, 4px);
    background-color: var(--platform-surface);
    color: var(--platform-heading);
}
.platform-site .auth-form .form-control { border-color: var(--platform-input-border-color, #e0e0e0); border-radius: var(--platform-input-radius, 5px); }
.platform-site .form-control:focus {
    border-color: var(--platform-accent);
    box-shadow: 0 0 0 var(--platform-input-shadow-spread, 0.2rem) rgba(0, 0, 0, var(--platform-input-shadow-opacity, 0.1));
}
.platform-site .input-group .form-control { border-top-right-radius: 0; border-bottom-right-radius: 0; }
.platform-site :is(.about-subtitle, .information-subtitle) { font-size: var(--platform-heading-font-size, 2rem); }
.platform-site .content h2 { font-size: var(--platform-heading-font-size, 1.5rem); }
.platform-site .content-container h2 { font-size: var(--platform-heading-font-size, 1.8rem); }
.platform-site .auth-title, .platform-site .info-detail-title { font-size: var(--platform-heading-font-size, 24px); }
.platform-site .slide-title { font-size: var(--platform-heading-font-size, 2.5rem); }
.platform-site .banner h1 { font-size: var(--platform-heading-font-size, 2rem); }
@media (max-width: 992px) {
    .platform-site .info-detail-title { font-size: var(--platform-heading-font-size, 22px); }
}
@media (max-width: 768px) {
    .btn-auth { --default-button-font: 16px; --default-button-x: 1rem; --default-button-y: 0.3rem; }
    .platform-site .content h2 { font-size: var(--platform-heading-font-size, 1.3rem); }
    .platform-site .content-container h2, .platform-site .banner h1 { font-size: var(--platform-heading-font-size, 1.5rem); }
    .platform-site .auth-title, .platform-site .info-detail-title { font-size: var(--platform-heading-font-size, 20px); }
}
@media (max-width: 576px) {
    .btn-back { --default-button-font: 13px; --default-button-x: 10px; --default-button-y: 5px; }
    .platform-site .info-detail-title { font-size: var(--platform-heading-font-size, 18px); }
}
