
        :root {
            --bg-dark: #0f1115;
            --bg-dark-2: #151821;
            --bg-soft: #f5f5f7;
            --surface: rgba(255,255,255,0.78);
            --surface-border: rgba(15,17,21,0.08);
            --text-primary: #111111;
            --text-secondary: rgba(17,17,17,0.68);
            --text-on-dark: rgba(255,255,255,0.94);
            --text-on-dark-soft: rgba(255,255,255,0.70);
            --brand-accent: #5b7cff;
            --brand-accent-hover: #4a6df5;
            --shadow-soft: 0 10px 30px rgba(15,17,21,0.08);
            --shadow-accent: 0 10px 30px rgba(91,124,255,0.20);
            --apple-black: var(--bg-dark);
            --apple-gray: var(--bg-soft);
            --apple-near-black: var(--text-primary);
            --apple-blue: var(--brand-accent);
            --apple-link-blue: #3d63f6;
            --apple-card-shadow: rgba(15,17,21,0.12);
            --apple-text-secondary: var(--text-secondary);
            --apple-white: #ffffff;
            --success: #34c759;
            --warning: #ff9500;
            --danger: #ff3b30;
        }

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

        body {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', sans-serif;
            background: var(--bg-soft);
            min-height: 100vh;
            color: var(--text-primary);
            -webkit-font-smoothing: antialiased;
        }

        .apple-nav {
            position: sticky;
            top: 0;
            z-index: 1000;
            background: rgba(15, 17, 21, 0.72);
            backdrop-filter: saturate(160%) blur(18px);
            height: 56px;
            border-bottom: 1px solid rgba(255,255,255,0.08);
        }

        .apple-nav-content {
            max-width: 1120px;
            margin: 0 auto;
            padding: 0 24px;
            height: 100%;
            display: flex;
            align-items: center;
            justify-content: space-between;
        }

        .apple-nav-logo {
            font-size: 18px;
            font-weight: 600;
            letter-spacing: -0.02em;
            color: var(--apple-white);
            text-decoration: none;
        }

        .apple-nav-links {
            display: flex;
            gap: 28px;
        }

        .apple-nav-link {
            font-size: 13px;
            color: rgba(255,255,255,0.72);
            text-decoration: none;
            cursor: pointer;
            transition: color 0.2s ease;
        }

        .apple-nav-link:hover { color: var(--apple-white); }
        .apple-nav-link.active { color: var(--apple-white); font-weight: 500; }

        .hero-section {
            position: relative;
            overflow: hidden;
            background:
                radial-gradient(circle at top, rgba(91,124,255,0.18), transparent 32%),
                linear-gradient(180deg, var(--bg-dark) 0%, var(--bg-dark-2) 100%);
            color: var(--apple-white);
            padding: 140px 20px 110px;
            text-align: center;
        }

        .hero-section::before {
            content: "";
            position: absolute;
            inset: 0;
            background: radial-gradient(circle at 50% 30%, rgba(255,255,255,0.07), transparent 28%);
            pointer-events: none;
        }

        .hero-inner {
            position: relative;
            z-index: 1;
            max-width: 920px;
            margin: 0 auto;
        }

        .hero-eyebrow {
            font-size: 12px;
            letter-spacing: 0.18em;
            text-transform: uppercase;
            color: rgba(255,255,255,0.52);
            margin-bottom: 20px;
        }

        .hero-title {
            font-size: clamp(44px, 7vw, 76px);
            font-weight: 600;
            line-height: 1.06;
            letter-spacing: -0.04em;
            margin-bottom: 18px;
        }

        .hero-subtitle {
            font-size: clamp(18px, 2.2vw, 24px);
            font-weight: 400;
            line-height: 1.6;
            color: var(--text-on-dark-soft);
            max-width: 760px;
            margin: 0 auto 38px;
        }

        .hero-actions {
            display: flex;
            justify-content: center;
            gap: 14px;
            flex-wrap: wrap;
        }

        .btn {
            font-size: 15px;
            padding: 12px 22px;
            border-radius: 999px;
            text-decoration: none;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            cursor: pointer;
            border: none;
            transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease;
        }

        .btn-primary {
            background: var(--brand-accent);
            color: var(--apple-white);
            box-shadow: var(--shadow-accent);
        }

        .btn-primary:hover {
            background: var(--brand-accent-hover);
            transform: none;
        }

        .btn-secondary {
            background: rgba(255,255,255,0.05);
            color: var(--text-on-dark);
            border: 1px solid rgba(255,255,255,0.14);
        }

        .btn-secondary:hover {
            background: rgba(255,255,255,0.09);
        }

        .container {
            max-width: 1120px;
            margin: 0 auto;
            padding: 108px 24px;
        }

        .brand-values {
            background: linear-gradient(180deg, #ffffff 0%, #f6f7fb 100%);
            padding: 18px 0 6px;
        }

        .values-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 18px;
        }

        .value-item {
            background: rgba(255,255,255,0.72);
            border: 1px solid rgba(15,17,21,0.06);
            border-radius: 24px;
            padding: 28px;
            box-shadow: 0 10px 30px rgba(15,17,21,0.04);
        }

        .value-item h3 {
            font-size: 20px;
            font-weight: 600;
            margin-bottom: 10px;
            letter-spacing: -0.02em;
        }

        .value-item p {
            font-size: 15px;
            line-height: 1.7;
            color: var(--text-secondary);
        }

        .section-title {
            font-size: clamp(34px, 4vw, 52px);
            font-weight: 600;
            text-align: center;
            letter-spacing: -0.03em;
            margin-bottom: 14px;
        }

        .section-desc {
            font-size: 19px;
            line-height: 1.7;
            text-align: center;
            color: var(--text-secondary);
            max-width: 720px;
            margin: 0 auto 52px;
        }

        .stats-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 16px;
            margin: 36px 0 0;
        }

        .stat-card {
            background: var(--surface);
            border: 1px solid var(--surface-border);
            border-radius: 24px;
            padding: 28px 20px;
            text-align: center;
            box-shadow: var(--shadow-soft);
            backdrop-filter: blur(14px);
        }

        .stat-value {
            font-size: 34px;
            font-weight: 600;
            letter-spacing: -0.03em;
            color: var(--brand-accent);
            margin-bottom: 8px;
        }

        .stat-label {
            font-size: 14px;
            color: var(--text-secondary);
        }

        .stats-actions {
            text-align: center;
            margin-top: 36px;
        }

        .features-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 24px;
        }

        .feature-card {
            background: var(--apple-white);
            border-radius: 18px;
            padding: 32px;
            transition: transform 0.3s;
        }

        .feature-card:hover {
            transform: scale(1.02);
            box-shadow: var(--shadow-soft);
        }

        .feature-icon { font-size: 48px; margin-bottom: 20px; }
        .feature-title { font-size: 24px; font-weight: 600; margin-bottom: 12px; }
        .feature-desc { font-size: 17px; color: var(--text-secondary); }

        html {
            scroll-behavior: smooth;
        }

        .content-section {
            display: block;
            scroll-margin-top: 88px;
            padding: 24px 0;
        }

        .content-section + .content-section {
            border-top: 1px solid rgba(15,17,21,0.06);
        }

        .content-section:nth-of-type(odd) {
            background: linear-gradient(180deg, #ffffff 0%, #f7f8fb 100%);
        }

        .content-section:nth-of-type(even) {
            background: #ffffff;
        }

        /* 游戏状态 */
        .game-status {
            background: var(--apple-white);
            border-radius: 18px;
            padding: 32px;
            margin: 40px 0;
            box-shadow: var(--shadow-soft);
        }

        .game-status-title {
            font-size: 24px;
            font-weight: 600;
            margin-bottom: 16px;
        }

        .game-status-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
            gap: 16px;
        }

        .game-stat {
            background: var(--bg-soft);
            border-radius: 12px;
            padding: 16px;
            text-align: center;
        }

        .game-stat-value {
            font-size: 28px;
            font-weight: 700;
            color: var(--brand-accent);
        }

        .game-stat-label {
            font-size: 12px;
            color: var(--text-secondary);
            margin-top: 4px;
        }

        /* 资源侧边栏 */
        .resources-container {
            display: flex;
            gap: 40px;
            margin-top: 40px;
        }

        .resources-sidebar {
            width: 240px;
            flex-shrink: 0;
            position: sticky;
            top: 88px;
            height: fit-content;
            background: linear-gradient(180deg, rgba(15,17,21,0.96) 0%, rgba(24,27,35,0.94) 100%);
            border: 1px solid rgba(255,255,255,0.08);
            border-radius: 24px;
            padding: 20px;
            box-shadow: 0 18px 40px rgba(15,17,21,0.18);
        }

        .sidebar-section { margin-bottom: 32px; }
        .sidebar-section h3 {
            font-size: 12px;
            font-weight: 600;
            color: rgba(255,255,255,0.56);
            text-transform: uppercase;
            letter-spacing: 0.12em;
            margin-bottom: 12px;
            padding-left: 12px;
        }

        .sidebar-nav-item {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 11px 12px;
            margin-bottom: 4px;
            border-radius: 12px;
            cursor: pointer;
            font-size: 14px;
            color: rgba(255,255,255,0.88);
            transition: background 0.2s ease, color 0.2s ease;
        }

        .sidebar-nav-item:hover { background: rgba(255,255,255,0.08); color: var(--apple-white); }
        .sidebar-nav-item.active {
            background: rgba(91,124,255,0.22);
            color: var(--apple-white);
        }

        .sidebar-count {
            font-size: 12px;
            font-weight: 500;
            background: rgba(255,255,255,0.10);
            color: rgba(255,255,255,0.88);
            padding: 2px 8px;
            border-radius: 10px;
        }

        .sidebar-nav-item.active .sidebar-count {
            background: rgba(255,255,255,0.18);
            color: var(--apple-white);
        }

        .resources-main {
            flex: 1;
            max-height: 980px;
            overflow-y: auto;
            padding-right: 8px;
            scroll-behavior: smooth;
        }

        .resources-main::-webkit-scrollbar {
            width: 10px;
        }

        .resources-main::-webkit-scrollbar-thumb {
            background: rgba(15,17,21,0.16);
            border-radius: 999px;
        }

        .resources-main::-webkit-scrollbar-track {
            background: rgba(15,17,21,0.04);
            border-radius: 999px;
        }

        .section-spotlight {
            display: flex;
            justify-content: space-between;
            align-items: end;
            gap: 24px;
            margin-bottom: 42px;
        }

        .section-kicker {
            font-size: 12px;
            letter-spacing: 0.18em;
            text-transform: uppercase;
            color: rgba(17,17,17,0.46);
            margin-bottom: 14px;
        }

        .section-summary {
            max-width: 420px;
            font-size: 15px;
            line-height: 1.75;
            color: var(--text-secondary);
        }

        .resources-frame {
            position: relative;
            background: rgba(255,255,255,0.76);
            border: 1px solid rgba(15,17,21,0.08);
            border-radius: 28px;
            padding: 18px;
            box-shadow: 0 18px 42px rgba(15,17,21,0.08);
            backdrop-filter: blur(10px);
            overflow: hidden;
        }

        .resources-frame::before,
        .resources-frame::after {
            content: "";
            position: absolute;
            left: 0;
            right: 0;
            height: 38px;
            pointer-events: none;
            z-index: 2;
        }

        .resources-frame::before {
            top: 0;
            background: linear-gradient(180deg, rgba(247,248,251,0.96) 0%, rgba(247,248,251,0) 100%);
        }

        .resources-frame::after {
            bottom: 0;
            background: linear-gradient(0deg, rgba(247,248,251,0.98) 0%, rgba(247,248,251,0) 100%);
        }

        .resources-scroll-tip {
            position: absolute;
            right: 18px;
            bottom: 14px;
            z-index: 3;
            display: inline-flex;
            align-items: center;
            gap: 8px;
            font-size: 11px;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            color: rgba(17,17,17,0.46);
            background: rgba(255,255,255,0.86);
            border: 1px solid rgba(15,17,21,0.06);
            border-radius: 999px;
            padding: 7px 12px;
            box-shadow: 0 8px 20px rgba(15,17,21,0.08);
        }

        .resource-card {
            background: rgba(255,255,255,0.94);
            border: 1px solid rgba(15,17,21,0.08);
            border-radius: 24px;
            padding: 32px;
            margin-bottom: 24px;
            transition: transform 0.25s ease, box-shadow 0.25s ease;
            box-shadow: 0 10px 30px rgba(15,17,21,0.06);
        }

        .resource-card:hover {
            transform: translateY(-2px);
            box-shadow: 0 18px 42px rgba(15,17,21,0.10);
        }

        .resource-card.dark {
            background: linear-gradient(180deg, #12151c 0%, #181c24 100%);
            border: 1px solid rgba(255,255,255,0.08);
        }
        .resource-card.dark .resource-title { color: rgba(255,255,255,0.96); }
        .resource-card.dark .resource-meta { color: rgba(255,255,255,0.66); }
        .resource-card.dark .resource-desc { color: rgba(255,255,255,0.84); }
        .resource-card.dark .resource-tag {
            background: rgba(91,124,255,0.16);
            color: rgba(219,227,255,0.96);
        }
        .resource-card.dark .resource-reason {
            background: rgba(16,185,129,0.12);
            border-color: rgba(16,185,129,0.24);
            color: #7ef0c0;
        }

        .resource-title {
            font-size: 28px;
            font-weight: 600;
            line-height: 1.25;
            margin-bottom: 12px;
            color: #141821;
        }

        .resource-meta {
            font-size: 14px;
            color: rgba(20,24,33,0.62);
            margin-bottom: 16px;
        }

        .resource-desc {
            font-size: 17px;
            line-height: 1.75;
            color: rgba(20,24,33,0.82);
            margin-bottom: 20px;
        }

        .resource-tags {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            margin-bottom: 20px;
        }

        .resource-tag {
            font-size: 12px;
            font-weight: 600;
            padding: 5px 12px;
            border-radius: 999px;
            background: rgba(91,124,255,0.10);
            color: #3d63f6;
        }

        .resource-reason {
            background: rgba(16,185,129,0.08);
            border: 1px solid rgba(16,185,129,0.16);
            border-radius: 14px;
            padding: 16px;
            margin-bottom: 20px;
            font-size: 14px;
            line-height: 1.65;
            color: #047857;
            display: flex;
            gap: 8px;
        }

        .resource-actions {
            display: flex;
            gap: 12px;
            align-items: center;
        }

        .footer {
            background: var(--apple-gray);
            border-top: 1px solid rgba(0,0,0,0.08);
            padding: 56px 20px;
            text-align: center;
        }

        .footer-text {
            font-size: 12px;
            color: var(--apple-text-secondary);
        }

        /* Changelog */
        .changelog-list {
            margin-top: 40px;
            position: relative;
            padding-left: 28px;
        }

        .changelog-list::before {
            content: '';
            position: absolute;
            left: 0;
            top: 8px;
            bottom: 8px;
            width: 2px;
            background: linear-gradient(180deg, var(--brand-accent) 0%, rgba(91,124,255,0.1) 100%);
            border-radius: 2px;
        }

        .changelog-entry {
            position: relative;
            margin-bottom: 36px;
        }

        .changelog-entry::before {
            content: '';
            position: absolute;
            left: -33px;
            top: 14px;
            width: 10px;
            height: 10px;
            border-radius: 50%;
            background: var(--brand-accent);
            border: 2px solid var(--bg-soft);
            box-shadow: 0 0 0 2px var(--brand-accent);
        }

        .changelog-entry.latest::before {
            width: 14px;
            height: 14px;
            left: -35px;
            top: 12px;
            box-shadow: 0 0 0 3px rgba(91,124,255,0.25);
        }

        .changelog-card {
            background: rgba(255,255,255,0.88);
            border: 1px solid rgba(15,17,21,0.07);
            border-radius: 20px;
            padding: 24px 28px;
            box-shadow: 0 6px 24px rgba(15,17,21,0.05);
        }

        .changelog-entry.latest .changelog-card {
            border-color: rgba(91,124,255,0.2);
            background: linear-gradient(135deg, rgba(255,255,255,0.96) 0%, rgba(245,247,255,0.96) 100%);
        }

        .changelog-header {
            display: flex;
            align-items: center;
            gap: 12px;
            margin-bottom: 14px;
            flex-wrap: wrap;
        }

        .version-tag {
            font-size: 13px;
            font-weight: 700;
            padding: 3px 11px;
            border-radius: 999px;
            background: var(--brand-accent);
            color: white;
            letter-spacing: 0.02em;
        }

        .changelog-entry:not(.latest) .version-tag {
            background: rgba(15,17,21,0.12);
            color: var(--text-secondary);
        }

        .changelog-date {
            font-size: 13px;
            color: var(--text-secondary);
        }

        .changelog-title {
            font-size: 18px;
            font-weight: 600;
            color: var(--text-primary);
            margin-bottom: 12px;
            letter-spacing: -0.01em;
        }

        .changelog-items {
            list-style: none;
            display: flex;
            flex-direction: column;
            gap: 6px;
        }

        .changelog-items li {
            font-size: 14px;
            line-height: 1.65;
            color: var(--text-secondary);
            display: flex;
            gap: 8px;
        }

        .changelog-items li::before {
            content: attr(data-icon);
            flex-shrink: 0;
            width: 18px;
        }

        @media (max-width: 768px) {
            .changelog-list { padding-left: 20px; }
            .changelog-entry::before { left: -25px; }
            .changelog-entry.latest::before { left: -27px; }
            .changelog-card { padding: 18px 20px; }
        }

        /* Game cards */
        .game-card {
            background: var(--apple-white);
            border-radius: 18px;
            padding: 24px;
            text-align: center;
            cursor: pointer;
            transition: transform 0.3s, box-shadow 0.3s;
            box-shadow: 0 4px 24px rgba(15,17,21,0.08);
            text-decoration: none;
            display: block;
            color: inherit;
        }

        .game-card:hover { transform: translateY(-2px); box-shadow: 0 8px 32px rgba(15,17,21,0.12); }
        .game-card-icon { font-size: 48px; margin-bottom: 12px; }
        .game-card-name { font-size: 18px; font-weight: 600; margin-bottom: 8px; }
        .game-card-desc { font-size: 12px; color: var(--text-secondary); }

        .literature-showcase {
            display: grid;
            grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr);
            min-height: 420px;
            overflow: hidden;
            border: 1px solid rgba(15,17,21,0.08);
            border-radius: 18px;
            background: #171413;
            box-shadow: var(--shadow-soft);
        }

        .literature-preview {
            position: relative;
            min-height: 420px;
            overflow: hidden;
        }

        .literature-preview img {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: cover;
            object-position: center;
            filter: saturate(0.9) contrast(0.94) brightness(0.82);
            transition: transform 500ms ease;
        }

        .literature-preview picture {
            display: block;
            width: 100%;
            height: 100%;
        }

        .literature-showcase:hover .literature-preview img { transform: scale(1.02); }

        .literature-copy {
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: flex-start;
            padding: 42px;
            color: rgba(255,255,255,0.94);
        }

        .literature-copy h3 {
            font-size: 30px;
            line-height: 1.25;
            margin-bottom: 16px;
        }

        .literature-copy p {
            font-size: 15px;
            line-height: 1.8;
            color: rgba(255,255,255,0.68);
            margin-bottom: 26px;
        }

        .literature-meta {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            margin-bottom: 24px;
        }

        .literature-meta span {
            padding: 6px 10px;
            border: 1px solid rgba(255,255,255,0.16);
            border-radius: 999px;
            color: rgba(255,255,255,0.74);
            font-size: 12px;
        }

        /* Badges */
        .badge {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            font-size: 11px;
            font-weight: 600;
            padding: 4px 10px;
            border-radius: 980px;
            text-transform: uppercase;
            color: white;
            margin-bottom: 12px;
        }
        .badge-blue { background: linear-gradient(135deg, #5b7cff, #4a6df5); }
        .badge-green { background: linear-gradient(135deg, #34c759, #30b955); }

        /* Sidebar status */
        .status-row { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; }
        .status-dot { width: 8px; height: 8px; background: #34c759; border-radius: 50%; flex-shrink: 0; }

        @media (max-width: 768px) {
            .hero-title { font-size: 40px; }
            .hero-subtitle { font-size: 21px; }
            .resources-container { flex-direction: column; display: flex; }
            .resources-sidebar { width: 100%; position: static; }
            .resources-main { max-height: 68vh; overflow-y: auto; padding-right: 0; }
            .apple-nav-links { display: none; }
            .hero-section { padding: 110px 20px 88px; }
            .values-grid, .stats-grid { grid-template-columns: 1fr; }
            .section-spotlight { flex-direction: column; align-items: flex-start; }
            .content-section { padding: 12px 0; }
            .container { padding: 72px 20px; }
            .literature-showcase { grid-template-columns: 1fr; }
            .literature-preview { min-height: 300px; }
            .literature-copy { padding: 30px 24px; }
        }
    
/* Shared directory layout: preserve the existing palette, typography and surfaces. */
.hero-section{padding:64px 20px 54px}.hero-title{font-size:clamp(34px,5vw,56px)}.hero-subtitle{font-size:18px;margin-bottom:24px}.container{padding:48px 24px}.content-section{padding:0}.section-title{font-size:32px;text-align:left}.section-desc{text-align:left;font-size:16px;margin:12px 0 24px}.apple-nav-links{gap:24px}.apple-nav-link{min-height:44px;display:inline-flex;align-items:center;white-space:nowrap}.apple-nav-logo{white-space:nowrap}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.quick-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.quick-link{padding:22px 16px;border-radius:18px;background:var(--surface);border:1px solid var(--surface-border);text-decoration:none;color:var(--text-primary);box-shadow:var(--shadow-soft)}.quick-link strong{display:block;margin:10px 0 8px}.quick-link small{color:var(--text-secondary);line-height:1.6}.directory-card{margin:0;display:flex;flex-direction:column;min-width:0;padding:24px}.directory-card .resource-title{font-size:22px;line-height:1.5}.directory-card .resource-desc{font-size:15px;line-height:1.75;flex:1}.directory-card .resource-actions{margin-top:22px}.cover{height:150px;display:flex;align-items:center;justify-content:center;border-radius:16px;background:radial-gradient(circle at 25% 20%,rgba(91,124,255,.28),transparent 60%),linear-gradient(160deg,#1a1f2e,#2b2233);font-size:56px;margin-bottom:20px;overflow:hidden}.cover img{width:100%;height:100%;object-fit:cover}.search-form{display:flex;gap:10px;max-width:640px;margin:0 auto}.search-form input{min-width:0;flex:1;border:1px solid var(--surface-border);border-radius:999px;padding:14px 20px;font:inherit;background:white;color:var(--text-primary)}.filter-bar{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.filter-bar label{display:flex;gap:8px;align-items:center;font-size:14px}.filter-bar select{max-width:100%;padding:12px;border:1px solid var(--surface-border);border-radius:12px;background:white;color:var(--text-primary);font:inherit}.list-row{display:block;padding:20px 0;border-bottom:1px solid var(--surface-border);text-decoration:none;color:var(--text-primary)}.list-row h3{font-size:18px;line-height:1.5;margin:8px 0}.list-row p{font-size:14px;line-height:1.7;color:var(--text-secondary)}.list-row:hover h3{color:var(--brand-accent)}.list-meta{font-size:12px;color:var(--text-secondary)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.section-heading a,.footer a{color:var(--apple-link-blue)}.pager{display:flex;gap:18px;align-items:center;justify-content:center;margin-top:28px}.pager button{background:var(--brand-accent);color:white}.pager button:disabled{opacity:.45;cursor:default}.notice{padding:32px 0;color:var(--text-secondary)}.footer-links{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;margin-bottom:16px}.resource-card .btn-secondary{color:var(--apple-link-blue);border-color:var(--surface-border)}:focus-visible{outline:3px solid var(--brand-accent);outline-offset:4px}.skip-link{position:fixed;top:-70px;left:20px;z-index:2000;background:white;padding:12px}.skip-link:focus{top:8px}.resource-title,.list-row h3{overflow-wrap:anywhere}.research-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.research-grid .resource-card{margin:0!important;max-width:none!important}.research-grid .resource-title{font-size:24px}.stats-grid{margin-top:24px}
@media(max-width:900px){.apple-nav{height:auto}.apple-nav-content{flex-wrap:wrap;padding:8px 20px;gap:4px}.apple-nav-links{width:100%;overflow-x:auto;gap:22px}.quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.directory-grid,.research-grid{grid-template-columns:1fr}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.container{padding:32px 20px}.hero-section{padding:42px 20px}.hero-title{font-size:34px}.section-title{font-size:28px}.search-form .btn{padding:12px 18px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading{align-items:flex-start}.filter-bar{flex-direction:column}.filter-bar label{justify-content:space-between}.filter-bar select{flex:1;max-width:72%}.apple-nav-links{display:flex}.directory-card .resource-actions{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
.list-row p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.research-grid [id]{scroll-margin-top:128px}

.hero-phrase{display:inline-block}
