/* Shared styles for all documentation pages (doc/) */

.doc-hero {
    background: linear-gradient(180deg, var(--bg-deep) 0%, var(--bg-primary) 100%);
    border-bottom: 1px solid rgba(88,120,152,0.15);
    position: relative;
    overflow: hidden;
    min-height: 220px;
    display: flex;
    align-items: flex-end;
    padding-bottom: 44px;
}
.doc-hero .hero-content { position: relative; z-index: 2; width: 100%; text-align: center; padding: 0 24px; }
.doc-hero h1 { font-size: clamp(1.6rem,4vw,2.4rem); font-weight: 700; color: var(--text-primary); margin: 0; }
.doc-hero .hero-subtitle { display: block; color: var(--accent-light); font-size: 0.75rem; letter-spacing: 0.18em; text-transform: uppercase; margin-bottom: 12px; }

.doc-wrap { max-width: 780px; margin: 0 auto; padding: 56px 24px 96px; }

.doc-meta {
    display: flex; align-items: center; gap: 20px; flex-wrap: wrap;
    padding: 16px 20px; margin-bottom: 48px;
    background: rgba(88,120,152,0.07);
    border-left: 3px solid var(--accent-muted);
    border-radius: 0 8px 8px 0;
    font-size: 0.85rem; color: var(--text-secondary);
}
.doc-meta span { display: flex; align-items: center; gap: 6px; }
.doc-meta strong { color: var(--text-primary); font-weight: 500; }

.doc-section { margin-bottom: 52px; }
.doc-section h2 {
    font-size: 1.15rem; font-weight: 500;
    color: var(--accent-light);
    margin: 0 0 16px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(88,120,152,0.2);
    display: flex; align-items: center; gap: 10px;
}
.doc-section h2 .sec-num {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 26px; height: 26px;
    background: rgba(88,120,152,0.15);
    border-radius: 50%;
    font-size: 0.78rem; font-weight: 700;
    color: var(--accent-light);
    flex-shrink: 0;
}
.doc-section h3 { font-size: 1rem; font-weight: 500; color: var(--text-primary); margin: 24px 0 12px; }
.doc-section p { font-size: 0.97rem; line-height: 1.8; color: var(--text-secondary); margin: 0 0 12px; }
.doc-section ul { padding-left: 0; margin: 12px 0 16px; list-style: none; }
.doc-section ul li {
    font-size: 0.95rem; line-height: 1.75; color: var(--text-secondary);
    padding: 8px 0 8px 20px; border-bottom: 1px solid rgba(255,255,255,0.05);
    position: relative;
}
.doc-section ul li:last-child { border-bottom: none; }
.doc-section ul li::before {
    content: ''; position: absolute; left: 0; top: 17px;
    width: 6px; height: 6px; border-radius: 50%;
    background: var(--accent-muted);
}
.doc-section ul li strong { color: var(--text-primary); font-weight: 500; }
.doc-section a { color: var(--accent-light); }
.doc-section a:hover { color: var(--text-primary); }

.doc-subsection { margin: 20px 0 12px; }
.doc-subsection p { color: var(--text-secondary); font-size: 0.95rem; }

.doc-note {
    background: rgba(88,120,152,0.07);
    border-left: 3px solid var(--accent-muted);
    border-radius: 0 8px 8px 0;
    padding: 16px 20px; margin: 20px 0;
    font-size: 0.9rem; color: var(--text-secondary); line-height: 1.7;
}
.doc-note a { color: var(--accent-light); }

.doc-footer-info {
    margin-top: 56px; padding-top: 28px;
    border-top: 1px solid rgba(255,255,255,0.07);
    font-size: 0.85rem; color: var(--text-muted); line-height: 1.8;
}
.doc-footer-info strong { color: var(--text-secondary); font-weight: 500; }

.doc-back {
    display: inline-flex; align-items: center; gap: 8px;
    margin-top: 32px;
    color: var(--accent-light);
    border: 1px solid var(--accent-muted);
    padding: 10px 22px; border-radius: 6px;
    font-size: 0.82rem; text-transform: uppercase; letter-spacing: 0.1em;
    text-decoration: none; transition: background .2s, color .2s;
}
.doc-back:hover { background: var(--accent-muted); color: var(--text-primary); }
.doc-back svg { width: 14px; height: 14px; stroke: currentColor; fill: none; stroke-width: 2; }

@media (max-width: 600px) { .doc-wrap { padding: 36px 16px 72px; } }
