:root { --slot-color: var(--build); --slot-tint: var(--build-tint); }

            /* ── GUIDE HERO ── */
            .guide-hero { border-bottom: 1px solid var(--border); background: var(--paper-warm); padding: var(--s8) 0 var(--s7); position: relative; overflow: hidden; }
            .guide-hero::before { content: "5"; position: absolute; right: -0.05em; top: -0.15em; font-family: var(--font-display); font-size: clamp(14rem, 22vw, 20rem); font-weight: 900; color: var(--slot-color); opacity: 0.04; line-height: 1; pointer-events: none; user-select: none; }
            .guide-hero-inner { max-width: var(--content-width); margin: 0 auto; padding: 0 var(--s5); position: relative; }
            .guide-label { font-family: var(--font-mono); font-size: 0.6875rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--slot-color); margin-bottom: var(--s3); display: flex; align-items: center; gap: var(--s3); }
            .guide-label::before { content: ""; display: inline-block; width: 20px; height: 2px; background: var(--slot-color); border-radius: 1px; }
            .guide-hero h1 { font-family: var(--font-display); font-size: clamp(2.25rem, 5.5vw, 3.5rem); font-weight: 900; line-height: 1.08; letter-spacing: -0.04em; margin-bottom: var(--s3); }
            .guide-hero h1 em { font-style: italic; color: var(--slot-color); display: block; }
            .guide-thesis { font-size: 1.0625rem; color: var(--ink-light); max-width: 540px; line-height: 1.65; margin-bottom: var(--s6); }
            .guide-meta { display: flex; align-items: center; gap: var(--s3); font-size: 0.8125rem; color: var(--ink-muted); padding-top: var(--s3); border-top: 1px solid var(--border); }
            .guide-author-block { display: flex; align-items: center; gap: var(--s2); }
            .guide-author-block img { width: 36px; height: 36px; border-radius: 50%; object-fit: cover; }
            .guide-author-name { font-weight: 500; color: var(--ink-light); }
            .guide-author-name a { color: inherit; text-decoration: none; }

            /* ── FRAME SLOT CARDS ── */
            .slot-cards { display: grid; gap: var(--s4); margin: var(--s5) 0 var(--s6); }
            .slot-card { background: white; border: 1px solid var(--border); border-radius: var(--radius-lg); padding: var(--s5); position: relative; overflow: hidden; }
            .slot-card::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; }
            .slot-card.park::before  { background: var(--park); }
            .slot-card.earn::before  { background: var(--earn); }
            .slot-card.build::before { background: var(--build); }
            .slot-card.roam::before  { background: var(--roam); }
            .slot-card.dare::before  { background: var(--dare); }
            .slot-card-header { display: flex; align-items: baseline; gap: var(--s3); margin-bottom: var(--s2); }
            .slot-number-badge { font-family: var(--font-mono); font-size: 0.6875rem; letter-spacing: 0.1em; text-transform: uppercase; padding: 2px 8px; border-radius: 2px; color: white; flex-shrink: 0; }
            .slot-card.park .slot-number-badge  { background: var(--park); }
            .slot-card.earn .slot-number-badge  { background: var(--earn); }
            .slot-card.build .slot-number-badge { background: var(--build); }
            .slot-card.roam .slot-number-badge  { background: var(--roam); }
            .slot-card.dare .slot-number-badge  { background: var(--dare); }
            .slot-card-title { font-family: var(--font-display); font-size: 1.25rem; font-weight: 900; color: var(--ink); line-height: 1.3; }
            .slot-card-pick { font-family: var(--font-mono); font-size: 0.875rem; color: var(--slot-color); font-weight: 600; margin-bottom: var(--s2); }
            .slot-card-desc { font-size: 0.9375rem; color: var(--ink-light); line-height: 1.6; margin: 0; }

            /* ── CONFIGURATION CARDS ── */
            .config-cards { display: grid; gap: var(--s4); margin: var(--s5) 0; }
            .config-card { background: white; border: 1px solid var(--border); border-radius: var(--radius-lg); padding: var(--s5) var(--s6); }
            .config-title { font-family: var(--font-display); font-size: 1.125rem; font-weight: 900; color: var(--ink); margin-bottom: var(--s2); line-height: 1.3; }
            .config-desc { font-size: 0.9375rem; color: var(--ink-light); line-height: 1.6; margin: 0; }

            /* ── ALLOCATION TABLE ── */
            .alloc-table-wrap { overflow-x: auto; margin: var(--s4) 0 var(--s5); -webkit-overflow-scrolling: touch; }
            .alloc-table { width: 100%; border-collapse: collapse; font-size: 0.875rem; min-width: 620px; }
            .alloc-table th { text-align: center; font-family: var(--font-mono); font-size: 0.6875rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-muted); padding: var(--s3) var(--s4); border-bottom: 2px solid var(--border); background: var(--paper-warm); }
            .alloc-table th:first-child { text-align: left; }
            .alloc-table td { padding: var(--s3) var(--s4); border-bottom: 1px solid var(--border); text-align: center; font-family: var(--font-mono); }
            .alloc-table td:first-child { text-align: left; font-weight: 600; color: var(--ink-light); font-family: var(--font-body); }
            .alloc-table tr:last-child td { border-bottom: none; }

            /* ── WHO / WHO NOT GRID ── */
            .who-grid { display: grid; gap: var(--s4); margin: var(--s5) 0; }
            .who-col { background: white; border: 1px solid var(--border); border-radius: var(--radius-lg); padding: var(--s5) var(--s6); }
            .who-col-title { font-family: var(--font-display); font-size: 1.0625rem; font-weight: 900; margin-bottom: var(--s3); line-height: 1.3; }
            .who-col.good .who-col-title { color: var(--park); }
            .who-col.not .who-col-title { color: var(--dare); }
            .who-list { list-style: none; padding: 0; margin: 0; }
            .who-list li { font-size: 0.9375rem; color: var(--ink-light); line-height: 1.6; padding: var(--s2) 0; border-bottom: 1px solid var(--border-mid); }
            .who-list li:last-child { border-bottom: none; }

            /* ── FAQ ── */
            .faq-item { border-bottom: 1px solid var(--border); padding: var(--s4) 0; }
            .faq-item:last-child { border-bottom: none; }
            .faq-question { font-weight: 700; color: var(--ink); margin-bottom: var(--s2); font-size: 1.0625rem; line-height: 1.35; }
            .faq-answer { font-size: 0.9375rem; color: var(--ink-light); line-height: 1.65; margin: 0; }

            /* ── TOOL CTA BANNER ── */
            .tool-banner { background: var(--slot-tint); border: 2px solid var(--slot-color); border-radius: var(--radius-lg); padding: var(--s6) var(--s7); margin: var(--s7) 0; text-align: center; }
            .tool-banner-title { font-family: var(--font-display); font-size: 1.375rem; font-weight: 900; color: var(--slot-color); margin-bottom: var(--s2); line-height: 1.25; }
            .tool-banner-desc { font-size: 1rem; color: var(--ink-light); max-width: 540px; margin: 0 auto var(--s4); line-height: 1.65; }

            /* ── RESPONSIVE ── */
            @media (max-width: 640px) {
                .guide-hero h1 { font-size: 2rem; }
                .slot-cards { grid-template-columns: 1fr; }
            }
