:root {
    --tpl-adaptive-primary: #0F2547;
    --tpl-adaptive-primary-dark: #081633;
    --tpl-adaptive-accent: #22D3EE;
    --tpl-adaptive-gold: #F5B82E;
    --tpl-adaptive-bg: #F8FAFC;
    --tpl-adaptive-surface: #FFFFFF;
    --tpl-adaptive-text: #0F172A;
    --tpl-adaptive-muted: #64748B;
    --tpl-adaptive-border: #E2E8F0;
}

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

.tpl-adaptive {
    font-family: 'PingFang SC', 'Microsoft YaHei', system-ui, -apple-system, sans-serif;
    background: var(--tpl-adaptive-bg);
    color: var(--tpl-adaptive-text);
    line-height: 1.65;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.tpl-adaptive-container { max-width: 1200px; margin: 0 auto; padding: 0 24px; }

.tpl-adaptive-header {
    background: linear-gradient(135deg, var(--tpl-adaptive-primary) 0%, var(--tpl-adaptive-primary-dark) 100%);
    color: #fff;
    padding: 18px 0;
    box-shadow: 0 2px 12px rgba(15,37,71,.15);
}
.tpl-adaptive-header .tpl-adaptive-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.tpl-adaptive-logo {
    color: #fff;
    text-decoration: none;
    font-size: 22px;
    font-weight: 700;
    font-family: 'Source Serif Pro', 'Songti SC', serif;
    letter-spacing: .5px;
}
.tpl-adaptive-logo span {
    margin-left: 8px;
    font-size: 13px;
    color: var(--tpl-adaptive-accent);
    font-weight: 400;
    font-family: inherit;
}

.tpl-adaptive-nav { display: flex; gap: 28px; }
.tpl-adaptive-nav a {
    color: rgba(255,255,255,.85);
    text-decoration: none;
    font-size: 15px;
    padding: 4px 0;
    border-bottom: 2px solid transparent;
    transition: color .2s, border-color .2s;
}
.tpl-adaptive-nav a:hover,
.tpl-adaptive-nav a.is-active {
    color: var(--tpl-adaptive-accent);
    border-bottom-color: var(--tpl-adaptive-accent);
}

.tpl-adaptive-main { flex: 1; padding: 48px 0; }

.tpl-adaptive-footer {
    background: var(--tpl-adaptive-primary-dark);
    color: #94A3B8;
    padding: 32px 0;
    font-size: 14px;
}
.tpl-adaptive-footer-links { display: flex; gap: 24px; justify-content: center; margin-bottom: 12px; }
.tpl-adaptive-footer-links a {
    color: #94A3B8;
    text-decoration: none;
    transition: color .2s;
}
.tpl-adaptive-footer-links a:hover { color: var(--tpl-adaptive-accent); }
.tpl-adaptive-footer-copy { text-align: center; color: #64748B; font-size: 13px; }

.tpl-adaptive-btn {
    display: inline-block;
    padding: 10px 24px;
    background: var(--tpl-adaptive-accent);
    color: var(--tpl-adaptive-primary);
    border: none;
    border-radius: 6px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: transform .15s, box-shadow .2s;
}
.tpl-adaptive-btn:hover { transform: translateY(-1px); box-shadow: 0 4px 16px rgba(34,211,238,.3); }
.tpl-adaptive-btn-gold { background: var(--tpl-adaptive-gold); }

@media (max-width: 768px) {
    .tpl-adaptive-header .tpl-adaptive-container { flex-direction: column; gap: 12px; }
    .tpl-adaptive-nav { gap: 16px; }
    .tpl-adaptive-nav a { font-size: 14px; }
    .tpl-adaptive-logo { font-size: 18px; }
    .tpl-adaptive-main { padding: 24px 0; }
}
