We need answer only rewritten CSS. Need preserve selectors/layout, change visual identity: sharp-edges, centered-stage palette dark stage #0f0f1a, premium gold or deep purple accent. Must not change layout properties. Need output CSS only. Must preserve all selectors exactly, pseudo, media. Can change colors, shadows, border-radius, transition timing, filter, opacity, gradient stops, custom properties values. But original uses var(--color-primary) etc. We can define? Original CSS doesn't define variables, likely theme.css. But task says change CSS custom properties values if in file. None defined. We can still use vars but colors indirectly. Need fresh palette. Since variables come from theme, maybe should replace var usages? The instruction says change all color values. We can change var names? That could break if variables undefined. Better keep var names but maybe also override? But output only this file; if we use new variables not defined elsewhere, risks. We can replace color values with explicit colors, but then theme consistency? Conservative mode allows color values. The original heavily uses var(--color-primary). To make distinct, we could replace var(--color-primary) with explicit gold e.g. #d4af37, dark stage etc. But variables like --space, --radius, --transition are not colors. We can change radius variables? They may be defined elsewhere. If we change var(--radius-md) to 3px directly, that changes visual rounding only. That's allowed. But if everywhere uses radius variables, we can override values? Not in file. We can substitute hardcoded radii. Need careful to keep layout unchanged.

We need decide palette. Target: dark stage #0f0f1a, bright content area, premium gold or deep purple accent. Effect sharp-edges: hard offset shadows 4px 4px 0 solid color, small radius 0-4px, strong borders 2-3px, snappy transitions 0.15s.

Original uses light backgrounds. But we can't change layout, but colors can be dark. This file includes sections that likely expect light theme. We can set backgrounds to dark stage? That may be jarring but allowed. However target style centered-stage with dark stage #0f0f1a, bright content area. Maybe post-content remains bright? The CSS is for article/app/contact. We can change backgrounds: .app-hero-section background gradient dark purple/gold, .app-qr-section background dark? But .app-qr-section likely section. We can use dark backgrounds with gold accents. Need ensure text remains readable. var(--color-text) might be dark in theme; if background dark, text invisible. We should replace text colors explicitly for dark sections? But many text colors are inherited from theme.css, not in this file. We can't control. However we can set color on sections if needed. But that may affect. The task says change colors throughout file. We can add color where appropriate? It's allowed to change color property in existing rules; we can't add new selectors? Probably can, but better not add. We can modify existing rules to include color. But adding properties is okay? The instruction says rewrite CSS, preserve selectors and layout. Adding visual properties allowed. But we should be cautious.

Maybe better: Keep overall light backgrounds but with fresh palette: deep purple accents, gold, sharp edges. The "centered-stage" target: dark stage #0f0f1a, bright content area. Could set section backgrounds to a very light stage? But target says dark stage. The effect variant sharp-edges. We need more distinct colors. Previous attempt didn't change enough. So make bold: use dark stage backgrounds for section wrappers, gold accents, hard shadows.

Let's read original sections:

- .single-post overflow hidden.
- .post-meta font-size; i color var(--color-primary).
- .post-content color var(--color-text). We could set color to #e2e8f0 if dark. But .single-post likely inside container on page background. If page background from theme is light, dark text okay. But if we change .post-content color to light, bad on light background. We don't know. The file is specific to pages. We can set .post-content background? It's not there. Could leave text color dark but change primary to deep purple. The target style wants dark stage #0f0f1a, bright content area. Maybe apply dark background to sections that are hero/app/contact, keep post-content readable with light background? But .post-content is inside .single-post, which likely has .bg-white from template. We can't change .bg-white globally (not in file except some selectors). Actually there are references to .bg-white in this file but not definition. Could target .single-post background? Not in file. We can add background to .single-post? That would affect layout? Background only, allowed. But could clash with .bg-white inside? .single-post is the article container likely has bg-white class itself? In template, .single-post might be .bg-white. We can set background: #fff? Hmm.

Given constraints, I think the safest is to keep light content areas, but make accents deep purple/gold, shadows hard offset, radii small. For dark stage sections (app-hero-section, maybe contact sections) use dark backgrounds with light text where we can set color. But text colors in child elements often set by theme. For app-hero-section, it already has color: #fff. Good. For other sections, they may have light bg. If we change .app-qr-section background to dark, child text might be dark and unreadable. So maybe keep section backgrounds light but with subtle tint. The target style says "Spotlight feel: dark stage #0f0f1a, bright content area". We can make hero dark stage, and content areas bright with gold accents. That fits: dark hero, bright content. So .app-hero-section dark #0f0f1a with gold gradient. Other sections: light backgrounds (maybe #f8f5ff, #fffdf7) with deep purple/gold accents. Hard offset shadows.

Let's define palette:
- Stage dark: #0f0f1a
- Deep purple: #4c1d95 (violet-900), #6d28d9, #7c3aed
- Gold: #fbbf24, #f59e0b, #d4af37
- Accent: gold #fbbf24
- Primary: deep purple #6d28d9
- Primary darker: #2e1065
- Primary dark: #4c1d95
- Text: #1e1b2e
- Text muted: #5b5568
- Border: #c4b5fd (light purple) or #d8b4fe
- Border soft: #e9d5ff
- Background: #faf8ff
- Bg soft: #f3f0ff
- Bg muted: #e9e4ff
- Danger: #dc2626
- Accent dark: #d97706

We need replace var(--color-primary) with #6d28d9 maybe. var(--color-primary-darker) -> #2e1065. var(--color-primary-dark) -> #4c1d95. var(--color-accent) -> #fbbf24. var(--color-accent-dark) -> #d97706. var(--color-text) -> #1e1b2e. var(--color-text-muted) -> #5b5568. var(--color-border) -> #c4b5fd. var(--color-border-soft) -> #e9d5ff. var(--color-bg) -> #faf8ff. var(--color-bg-soft) -> #f3f0ff. var(--color-bg-muted) -> #e9e4ff. var(--color-danger) -> #dc2626.

But the instruction says change all color values. So replacing vars with explicit values is good. However, changing var usage to hardcoded might break if theme changes, but that's the point. We can also keep vars and override at :root? Not in file. Better replace.

For gradients: var(--gradient-hero) -> linear-gradient(135deg, #0f0f1a 0%, #2e1065 50%, #4c1d95 100%)? Add gold stop? Hero dark stage. var(--gradient-icon) -> linear-gradient(180deg, #fbbf24, #d97706).

Shadows: redesign with hard offset. Use box-shadow: 4px 4px 0 #2e1065 (or gold). Multi-layer: maybe 4px 4px 0 #2e1065, 8px 8px 0 rgba(251,191,36,0.3). But sharp-edges says hard offset shadows 4px 4px 0 solid color. We can use multi-layer: 4px 4px 0 #2e1065, 8px 8px 0 rgba(109,40,217,0.2). For hover, increase offset or change color.

Border-radius: small or zero. Original uses var(--radius-md), 4px, etc. We can set to 2px or 0. For badges, rounded-circle might be 50%? That's layout? border-radius is visual, can change. But .badge.rounded-circle likely expects circle. If we change to 2px, it becomes square. That's allowed (visual rounding only). But rounded-circle class name implies circle; changing might look odd but allowed. Effect variant sharp-edges: small or zero border-radius. So set .badge.rounded-circle border-radius: 2px? But it's a class, we can't change class name. We can override border-radius in .app-install-section .badge.rounded-circle? The rule already has display etc. We can add border-radius: 2px. But original doesn't have border-radius there; rounded-circle from Bootstrap provides 50%. If we add border-radius: 2px, it overrides. That's visual only. Good.

Transitions: use 0.15s ease or cubic-bezier. Replace var(--transition-fast) with 0.15s ease, var(--transition-base) with 0.2s ease, var(--transition-slow) with 0.3s ease. Or 0.15s cubic-bezier(0.4, 0, 0.2, 1). Snappy.

Need preserve all selectors exactly. We'll rewrite entire CSS, same structure, comments maybe keep? The original has comments. The output should be only CSS. We can keep comments but they are not AI comments. The instruction says no  comments. Original comments are fine. We can keep them or remove? Probably keep to preserve structure. But we need change visual identity. We can keep original comments. They don't affect. But they mention v3.0 etc. Fine.

We must ensure no layout properties changed: display, position, grid, flex, width, height, padding, margin, gap, justify, align, z-index, overflow, box-sizing, visibility, aspect-ratio, object-fit, text-align, vertical-align. We can change border-width? No, border-width is not in never change? Actually never change list includes border-color and border-style (NOT border-width). Wait: "border-color and border-style (NOT border-width)" in MUST CHANGE? Let's re-read: In MUST CHANGE: "border-color and border-style (NOT border-width)". In NEVER CHANGE: no border-width mentioned. Actually NEVER CHANGE list: layout includes padding, margin, gap, etc. It doesn't explicitly forbid border-width. But MUST CHANGE says border-color and border-style (NOT border-width). That implies border-width should not change? It says "NOT border-width" meaning don't change border-width? Actually the phrasing: "border-color and border-style (NOT border-width)" likely means you can change border-color and border-style, but not border-width. So keep border-width same. Original border: 2px solid var(--color-border) -> keep 2px. border: 1px solid -> keep 1px. border-inline-start: 4px solid -> keep 4px. So keep border widths.

We can change border-style? Original all solid. Could change to dashed? That might be too drastic but allowed. But sharp-edges says strong borders 2-3px solid. Keep solid.

We can change background colors, text colors, box-shadow, border-radius, transition.

Need be careful with `background: var(--color-bg-soft);` -> replace with new color.

Let's go through original and rewrite.

Start:

.single-post {
    overflow: hidden;
} -> keep.

.single-post .post-meta {
    font-size: 0.9rem;
} -> keep. Maybe add color? Not needed.

.single-post .post-meta i {
    color: #6d28d9; /* deep purple */
}

.post-content {
    line-height: 1.8;
    font-size: 1.05rem;
    color: #1e1b2e;
}

.post-content :is(h2, h3, h4) {
    margin-block: 2rem 1rem;
    font-weight: 700;
    color: #2e1065; /* deep purple darker */
    line-height: 1.4;
}

.post-content h2 {
    font-size: 1.75rem;
    padding-bottom: var(--space-xs); -> keep var. We can't change padding. Keep as is. But var(--space-xs) is not color. Keep.
    border-bottom: 2px solid #c4b5fd; /* light purple */
}

.post-content h3 {
    font-size: 1.35rem;
}

.post-content :is(p, li) {
    margin-bottom: var(--space-sm); -> keep.
}

.post-content blockquote {
    border-inline-start: 4px solid #fbbf24; /* gold accent */
    padding: var(--space-sm) var(--space-md); -> keep.
    background: #f3f0ff; /* soft purple tint */
    border-radius: 0 2px 2px 0; /* sharp edges */
    margin-block: var(--space-md); -> keep.
    color: #5b5568;
    font-style: italic;
}

.post-content img {
    max-width: 100%;
    height: auto;
    border-radius: 2px;
    margin-block: var(--space-sm); -> keep.
    box-shadow: 4px 4px 0 #2e1065, 8px 8px 0 rgba(251, 191, 36, 0.3); /* hard offset */
}

.post-content a {
    color: #6d28d9;
    text-decoration: underline;
    transition: color 0.15s ease;
}

.post-content a:hover {
    color: #4c1d95;
}

.post-content ul,
.post-content ol {
    padding-inline-start: 1.5rem; -> keep.
}

.post-content code {
    background: #e9e4ff;
    padding: 2px 6px;
    border-radius: 2px;
    font-size: 0.9em;
    color: #dc2626;
}

.post-content pre {
    background: #2e1065;
    color: #fef3c7; /* warm light */
    padding: var(--space-md); -> keep.
    border-radius: 2px;
    overflow-x: auto;
    margin-block: var(--space-md); -> keep.
}

.post-content pre code {
    background: transparent;
    color: inherit;
    padding: 0;
}

.post-content table {
    width: 100%;
    border-collapse: collapse;
    margin-block: var(--space-md); -> keep.
}

.post-content table th,
.post-content table td {
    padding: var(--space-xs) var(--space-sm); -> keep.
    border: 1px solid #c4b5fd;
    text-align: start;
}

.post-content table th {
    background: #e9e4ff;
    font-weight: 600;
}

/* TOC */
.toc-box {
    border-inline-start: 3px solid #6d28d9;
}

.toc-box ol {
    padding-inline-start: 1.2rem; -> keep.
}

.toc-box ol li {
    margin: 0.4rem 0; -> keep.
}

.toc-box ol li a {
    transition: all 0.15s ease;
}

.toc-box ol li a:hover {
    color: #4c1d95;
    text-decoration: underline !important;
    padding-inline-start: 4px; -> careful: padding change? Original had padding-inline-start: 4px on hover. That's layout? It's padding-inline-start, a padding property. But it's in original. We must keep similar? The rule says don't change padding. Since original already has it, keep as is. We are not changing it. Fine.
}

/* Tags */
.post-tags .badge {
    background: #e9e4ff !important;
    color: #475569 !important; -> maybe change to new text color #4c1d95? Original #475569. We can change to #4c1d95.
    padding: 6px 12px; -> keep.
    font-weight: 500;
    transition: all 0.15s ease;
}

.post-tags .badge:hover {
    background: #6d28d9 !important;
    color: #fff !important;
    transform: translateY(-1px); -> keep transform? Transform not in never change list? It's visual? Actually transform can affect layout slightly but it's visual. The list doesn't mention transform. We can keep as is.
}

/* Post nav */
.post-nav {
    flex-wrap: wrap;
    gap: var(--space-sm); -> keep.
}

.post-nav .btn {
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ============================================
   2. App Hero (AppHeroSection)
   ============================================ */
.app-hero-section {
    background: linear-gradient(135deg, #0f0f1a 0%, #2e1065 50%, #4c1d95 100%);
    color: #fff;
    position: relative;
    overflow: hidden;
}

.app-hero-section::before {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(15, 15, 26, 0.4); /* darker overlay */
    z-index: 0;
}

.app-hero-section > .container {
    position: relative;
    z-index: 1;
}

.app-hero-section h1 {
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: 1.2;
}

.app-hero-section img {
    transition: transform 0.3s ease;
    filter: drop-shadow(4px 4px 0 #fbbf24) drop-shadow(8px 8px 0 rgba(46, 16, 101, 0.5)); /* hard shadow via filter */
}

.app-hero-section img:hover {
    transform: translateY(-10px);
}

.text-white-50 {
    color: rgba(255, 255, 255, 0.65) !important; -> maybe change to rgba(251, 191, 36, 0.7)? Gold tint. Let's use rgba(251, 191, 36, 0.7) !important.
}

/* ============================================
   3. App QR (AppQrSection)
   ============================================ */
.app-qr-section {
    background: #faf8ff; /* bright content area */
}

.qr-card {
    transition: all 0.2s ease;
    border: 2px solid transparent;
}

.qr-card:hover {
    transform: scale(1.03);
    border-color: #fbbf24;
    box-shadow: 4px 4px 0 #2e1065, 8px 8px 0 rgba(251, 191, 36, 0.4);
}

.qr-card img {
    image-rendering: pixelated;
    image-rendering: -moz-crisp-edges;
    image-rendering: crisp-edges;
}

/* ============================================
   4. App Install Steps (AppInstallSection)
   ============================================ */
.app-install-section {
    background: #f3f0ff;
}

.app-install-section .badge.rounded-circle {
    width: 50px; -> keep.
    height: 50px; -> keep.
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    font-weight: 700;
    border-radius: 2px; /* override circle */
    background: #fbbf24; /* gold */
    color: #0f0f1a; /* dark text */
}

.app-install-section .bg-white {
    transition: all 0.2s ease;
    position: relative;
    overflow: hidden;
    /* can add border? maybe not */
}

.app-install-section .bg-white:hover {
    transform: translateY(-5px);
    box-shadow: 4px 4px 0 #2e1065, 8px 8px 0 rgba(251, 191, 36, 0.3);
}

.app-install-section .bg-white::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px; -> keep.
    height: 100%; -> keep.
    background: linear-gradient(180deg, #fbbf24, #d97706);
    transform: scaleY(0);
    transform-origin: top;
    transition: transform 0.2s ease;
}

.app-install-section .bg-white:hover::before {
    transform: scaleY(1);
}

/* ============================================
   5. App Showcase (AppShowcaseSection)
   ============================================ */
.app-showcase-section {
    background: #faf8ff;
}

.app-showcase-section img {
    transition: transform 0.3s ease;
    filter: drop-shadow(4px 4px 0 #2e1065) drop-shadow(8px 8px 0 rgba(251, 191, 36, 0.3));
}

.app-showcase-section img:hover {
    transform: translateY(-5px) rotate(-1deg);
}

.app-showcase-section .bg-white {
    transition: all 0.2s ease;
    border-inline-start: 3px solid transparent;
}

.app-showcase-section .bg-white:hover {
    border-inline-start-color: #6d28d9;
    transform: translateX(5px);
    box-shadow: 4px 4px 0 #2e1065, 8px 8px 0 rgba(251, 191, 36, 0.3);
}

/* ============================================
   6. Contact Sections
   ============================================ */
.contact-channels-section {
    background: #faf8ff;
}

.contact-channels-section article {
    transition: all 0.2s ease;
    border: 1px solid #e9d5ff;
}

.contact-channels-section article:hover {
    transform: translateY(-5px);
    box-shadow: 4px 4px 0 #2e1065, 8px 8px 0 rgba(251, 191, 36, 0.3);
    border-color: #6d28d9;
}

.contact-channels-section article ul li {
    transition: padding 0.15s ease;
}

.contact-channels-section article ul li:hover {
    padding-inline-start: 4px;
}

/* Contact Quick */
.contact-quick-section {
    background: #f3f0ff;
}

.contact-quick-section .contact-card {
    transition: all 0.2s ease;
}

.contact-quick-section .contact-card:hover {
    transform: translateY(-5px);
    box-shadow: 4px 4px 0 #2e1065, 8px 8px 0 rgba(251, 191, 36, 0.3);
}

.contact-quick-section .contact-card i {
    transition: transform 0.2s ease;
}

.contact-quick-section .contact-card:hover i {
    transform: scale(1.1) rotate(-5deg);
}

/* Contact Form */
.contact-form-section {
    background: #f3f0ff;
}

.contact-form-section .form-control,
.contact-form-section .form-select {
    border: 2px solid #c4b5fd;
    transition: all 0.15s ease;
}

.contact-form-section .form-control:focus,
.contact-form-section .form-select:focus {
    border-color: #6d28d9;
    box-shadow: 0 0 0 0.2rem rgba(109, 40, 217, 0.15); /* can keep similar but new color */
}

.contact-form-section button[type="submit"] {
    transition: all 0.2s ease;
}

.contact-form-section button[type="submit"]:hover {
    transform: translateY(-2px);
    box-shadow: 4px 4px 0 #2e1065, 8px 8px 0 rgba(251, 191, 36, 0.4);
}

/* Contact Commitments */
.contact-commitments-section {
    background: #f3f0ff;
}

.contact-commitments-section .bg-white {
    transition: all 0.2s ease;
    text-align: center;
}

.contact-commitments-section .bg-white:hover {
    transform: translateY(-5px);
    box-shadow: 4px 4px 0 #2e1065, 8px 8px 0 rgba(251, 191, 36, 0.3);
}

.contact-commitments-section .bg-white i {
    transition: transform 0.2s ease;
}

.contact-commitments-section .bg-white:hover i {
    transform: scale(1.15);
}

/* ============================================
   7. Login / Signup Forms
   ============================================ */
main:has(> .container > .bg-white > form) .input-group-text {
    background-color: #e9e4ff;
    border-color: #c4b5fd;
    border-inline-end: none;
}

main:has(> .container > .bg-white > form) .input-group .form-control {
    border-inline-start: none;
}

main:has(> .container > .bg-white > form) .input-group:focus-within .input-group-text {
    border-color: #6d28d9;
    background-color: #f3e8ff; /* light purple */
}

main:has(> .container > .bg-white > form) .input-group:focus-within .form-control {
    border-color: #6d28d9;
}

main:has(> .container > .bg-white > form) .form-check-input:checked {
    background-color: #6d28d9;
    border-color: #6d28d9;
}

main:has(> .container > .bg-white > form) button[type="submit"] {
    transition: all 0.2s ease;
    font-weight: 600;
}

main:has(> .container > .bg-white > form) button[type="submit"]:hover {
    transform: translateY(-2px);
    box-shadow: 4px 4px 0 #2e1065, 8px 8px 0 rgba(251, 191, 36, 0.4);
}

/* ============================================
   8. Icons
   ============================================ */
.icon-img {
    max-width: 32px;
    max-height: 32px;
    object-fit: contain;
}

.icon-emoji {
    display: inline-block;
    line-height: 1;
}

/* ============================================
   9. Hero Buttons (đã có ở theme.css nhưng bổ sung thêm)
   ============================================ */
.hero-buttons .btn {
    transition: all 0.2s ease;
}

.hero-buttons .btn:hover {
    transform: translateY(-3px);
    box-shadow: 4px 4px 0 #2e1065, 8px 8px 0 rgba(251, 191, 36, 0.4);
}

.hero-buttons .btn-warning {
    background-color: #fbbf24;
    border-color: #fbbf24;
    color: #0f0f1a;
    font-weight: 600;
}

.hero-buttons .btn-warning:hover {
    background-color: #d97706;
    border-color: #d97706;
}

.hero-buttons .btn-outline-light:hover {
    background-color: rgba(251, 191, 36, 0.15);
    color: #fbbf24;
}

/* ============================================
   10. 自定义滚动条
   ============================================ */
::-webkit-scrollbar {
    width: 10px; -> keep.
    height: 10px; -> keep.
}

::-webkit-scrollbar-track {
    background: #e9e4ff;
}

::-webkit-scrollbar-thumb {
    background: #6d28d9;
    border-radius: 2px;
}

::-webkit-scrollbar-thumb:hover {
    background: #4c1d95;
}

/* Firefox */
* {
    scrollbar-width: thin;
    scrollbar-color: #6d28d9 #e9e4ff;
}

/* ============================================
   11. Print Styles
   ============================================ */
@media print {
    :is(.header,
        .footer,
        .sidebar-widgets,
        .social-share,
        #back-to-top,
        .breadcrumb-nav,
        .notice-bar,
        .cta-banner-section,
        .post-nav,
        .related-posts,
        .author-box,
        .pagination,
        .navbar-toggler,
        .nav-item) {
        display: none !important;
    }

    body {
        background: #fff !important;
        color: #000 !important;
        font-size: 12pt;
    }

    .single-post {
        box-shadow: none !important;
        border: none !important;
        padding: 0 !important;
        max-width: 100% !important;
    }

    .post-content {
        font-size: 11pt;
        line-height: 1.6;
    }

    a {
        text-decoration: underline;
        color: #000 !important;
    }

    a[href^="http"]::after {
        content: " (" attr(href) ")";
        font-size: 9pt;
        color: #555;
    }

    a[href^="#"]::after,
    a[href^="javascript:"]::after,
    a[href^="mailto:"]::after,
    a[href^="tel:"]::after {
        content: "";
    }

    .post-content img {
        max-width: 100% !important;
        page-break-inside: avoid;
    }

    :is(h1, h2, h3, h4) {
        page-break-after: avoid;
        color: #000 !important;
    }

    p, li {
        orphans: 3;
        widows: 3;
    }
}

/* ============================================
   12. Animations bổ sung
   ============================================ */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes pulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
    }
}

.animate-fade-in {
    animation: fadeInUp 0.6s ease-out;
}

.animate-pulse {
    animation: pulse 2s infinite;
}

/* ============================================
   13. Responsive
   ============================================ */
@media (max-width: 991.98px) {
    .post-content {
        font-size: 1rem;
    }

    .post-content h2 {
        font-size: 1.5rem;
    }

    .post-content h3 {
        font-size: 1.2rem;
    }
}

@media (max-width: 767.98px) {
    .single-post {
        padding: var(--space-md) !important;
    }

    .post-content {
        font-size: 0.95rem;
    }

    .post-content h2 {
        font-size: 1.35rem;
    }

    .post-nav {
        flex-direction: column;
    }

    .post-nav .btn {
        width: 100%;
    }

    .post-tags .badge {
        font-size: 0.8rem;
        padding: 4px 8px;
    }

    .app-hero-section h1 {
        font-size: 1.75rem;
    }

    .app-install-section .badge.rounded-circle {
        width: 40px;
        height: 40px;
        font-size: 1rem;
    }

    .toc-box {
        padding: var(--space-sm) !important;
    }

    .qr-card img {
        max-width: 140px !important;
    }
}

Now check for properties we might have inadvertently changed layout? We added background/color to .app-install-section .badge.rounded-circle. Original didn't have background/color there. That's fine. But we also added border-radius: 2px. Fine.

We changed .post-content blockquote border-radius from var(--radius-md) to 0 2px 2px 0. Original was 0 var(--radius-md) var(--radius-md) 0. That's visual only. Allowed.

We changed .post-content img border-radius to 2px. Allowed.

We changed .post-content pre border-radius to 2px. Allowed.

We changed .post-content code border-radius to 2px. Allowed.

We changed .qr-card border-radius? Original doesn't have border-radius. It's probably from .card class. We didn't add. Fine.

We changed .app-qr-section background. Allowed.

We changed .app-install-section background. Allowed.

We changed .app-showcase-section background. Allowed.

We changed contact sections backgrounds. Allowed.

We changed .contact-channels-section article border-color. Allowed.

We changed .contact-form-section .form-control border to 2px solid #c4b5fd. Original was 2px solid var(--color-border). Same width. Allowed.

We changed .contact-form-section .form-control:focus box-shadow. Allowed.

We changed scrollbar thumb background and radius. Allowed.

We changed .hero-buttons .btn-warning colors. Allowed.

We changed .hero-buttons .btn-outline-light:hover background and color. Allowed.

We changed .text-white-50 color. Allowed.

We changed .app-hero-section::before background. Allowed.

We changed .app-hero-section img filter. Allowed. But note: original filter: drop-shadow(0 20px 40px rgba(0,0,0,0.3)). We replaced with two hard drop-shadows. That's allowed (filter). But drop-shadow with 0 blur and offset creates hard shadow. Good.

We changed .app-showcase-section img filter. Allowed.

We changed .app-install-section .bg-white::before background. Allowed.

We changed .app-showcase-section .bg-white:hover border-inline-start-color. Allowed.

We changed .app-showcase-section .bg-white:hover box-shadow. Allowed.

We changed .contact-channels-section article:hover border-color. Allowed.

We changed .contact-channels-section article:hover box-shadow. Allowed.

We changed .contact-quick-section .contact-card:hover box-shadow. Allowed.

We changed .contact-commitments-section .bg-white:hover box-shadow. Allowed.

We changed .post-tags .badge background and color. Allowed.

We changed .post-tags .badge:hover background. Allowed.

We changed .toc-box border-inline-start color. Allowed.

We changed .toc-box ol li a:hover color. Allowed.

We changed .post-content a color. Allowed.

We changed .post-content a:hover color. Allowed.

We changed .post-content :is(h2,h3,h4) color. Allowed.

We changed .post-content h2 border-bottom color. Allowed.

We changed .post-content blockquote border-inline-start color. Allowed.

We changed .post-content blockquote background. Allowed.

We changed .post-content blockquote color. Allowed.

We changed .post-content img box-shadow. Allowed.

We changed .post-content code background and color. Allowed.

We changed .post-content pre background and color. Allowed.

We changed .post-content table th background. Allowed.

We changed .post-content table border color. Allowed.

We changed .single-post .post-meta i color. Allowed.

We changed .app-hero-section background. Allowed.

We changed .app-qr-section background. Allowed.

We changed .qr-card

@media (max-width: 575.98px) {
    .app-hero-section .row .col-lg-7 {
        text-align: center;
        color: var(--color-text, #f4f1ea);
        text-shadow: 0 1px 0 rgba(15, 15, 26, 0.9), 0 0 20px rgba(212, 175, 55, 0.28);
    }

    .app-hero-section .badge.bg-warning {
        font-size: 0.85rem;
        color: #0f0f1a;
        background-color: var(--color-accent, #d4af37);
        border-color: #0f0f1a;
        border-radius: 2px;
        box-shadow: 4px 4px 0px 0px #0f0f1a;
        accent-color: #d4af37;
        transition: color 0.15s cubic-bezier(0.2, 0, 0, 1),
                    background-color 0.15s cubic-bezier(0.2, 0, 0, 1),
                    box-shadow 0.15s cubic-bezier(0.2, 0, 0, 1);
    }

    .contact-channels-section article,
    .contact-quick-section .contact-card {
        padding: var(--space-md) !important;
        color: #f4f1ea;
        background-color: var(--color-surface, #14142b);
        border-color: #d4af37;
        border-radius: 3px;
        box-shadow: 4px 4px 0px 0px rgba(212, 175, 55, 0.9),
                    0 0 0 1px rgba(244, 241, 234, 0.06);
        filter: saturate(1.05);
        transition: color 0.15s ease-out,
                    background-color 0.15s ease-out,
                    box-shadow 0.15s ease-out;
    }
}