.single-post {
    --ink: #12305c;
    --muted: #5a6472;
    --hero-bg: #e3ebe6;
    --radius: 14px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    max-width: 1500px;
    margin: 0 auto;
    padding: 0 20px 60px;
}

.single-post *, .single-post *::before, .single-post *::after {
    box-sizing: border-box;
}

.single-hero {
    background: var(--hero-bg);
    border-radius: var(--radius);
    padding: 30px 36px 26px;
    margin: 24px 0 32px;
}

.single-hero h1 {
    margin: 0 0 10px;
    font-size: clamp(24px, 4vw, 32px);
    font-weight: 800;
    color: var(--ink);
}

.single-meta {
    margin: 0 0 14px;
    font-size: 14px;
    color: var(--muted);
    display: flex;
    align-items: center;
    gap: 8px;
}

.single-dot { opacity: .6; }
.single-excerpt {
    margin: 0;
    color: var(--muted);
    font-size: 15px;
    line-height: 1.6;
    max-width: 65ch;
}

.single-content-inner {
    background: #fff;
    border: 1px solid #e6e9ee;
    border-radius: var(--radius);
    padding: 30px 36px;
    max-width: 1100px;
    margin: 0 auto;
    font-size: 15px;
    line-height: 1.75;
    color: var(--ink);
}

.single-content-inner p { margin: 0 0 18px; }
.single-content-inner p:last-of-type { margin-bottom: 0; }
.single-content-inner h2,
.single-content-inner h3 {
    color: var(--ink);
    font-weight: 800;
}

.single-content-inner img {
    max-width: 100%;
    height: auto;
    border-radius: 10px;
}

.single-back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 24px;
    background: #f3f5f7;
    color: var(--ink);
    text-decoration: none;
    font-size: 13px;
    font-weight: 700;
    padding: 10px 18px;
    border-radius: 999px;
    transition: background .15s ease;
}

.single-back:hover { background: #e9edf1; }

@media (max-width: 700px) {
    .single-hero { padding: 24px 22px 22px; }
    .single-content-inner { padding: 24px; }
}