:root { --bg: #f5f5f7; --text: #111111; --sub: #6e6e73; --primary: #6c5ce7; --shadow: 0 4px 18px rgba(0,0,0,.06); }
        * { box-sizing: border-box; -webkit-font-smoothing: antialiased; }
        body { font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", sans-serif; background-color: var(--bg); margin: 0; padding: 0; color: var(--text); }
        .top-nav { position: sticky; top: 0; z-index: 1000; background: rgba(245,245,247,.88); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border-bottom: 1px solid rgba(0,0,0,0.04); width: 100%; }
        .top-nav-inner { max-width: 1300px; margin: 0 auto; padding: 14px 5%; display: flex; justify-content: flex-start; align-items: center; }
        .logo { font-weight: 900; color: #000; text-decoration: none; font-size: 28px; letter-spacing: -2px; line-height: 1; }
        .container { padding: 10px 5%; width: 100%; max-width: 1300px; margin: 0 auto; }
        .page-header { margin: 36px 0 24px; }
        .page-title { font-size: 46px; font-weight: 900; letter-spacing: -3px; margin: 0; color: #000; line-height: .95; }
        .grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 16px; padding-bottom: 40px; }
        .card { text-decoration: none; display: block; color: #000; content-visibility: auto; contain-intrinsic-size: 0 230px; }
        .thumb-box { position: relative; width: 100%; aspect-ratio: 1 / 1; overflow: hidden; border-radius: 28px; background: #e5e5e5; }
        .thumb-box img { width: 100%; height: 100%; object-fit: cover; display: block; }
        .info { padding: 10px 4px 0; }
        .name { font-size: 14px; font-weight: 700; line-height: 1.35; display:-webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
        .meta { margin-top: 4px; color: var(--sub); font-size: 12px; }
        .seo-footer { max-width: 1000px; margin: 60px auto 20px; padding: 40px; background: #fff; border-radius: 30px; box-shadow: 0 10px 40px rgba(0,0,0,0.06); color: #333; line-height: 1.8; }
        .seo-footer h2 { font-size: 28px; font-weight: 900; letter-spacing: -2px; margin: 0 0 20px; color: #111; }
        .seo-footer p { font-size: 15px; max-width: 100%; margin: 0 0 20px; }
        .seo-footer a { color: #ff375f; font-weight: 600; text-decoration: none; }
        .footer { padding: 50px 20px; text-align: center; color: #aaa; font-size: 11px; letter-spacing: 4px; text-transform: uppercase; }
        .footer-sub { margin-top: 12px; font-size: 10px; color: #5e5e63; font-weight: 500; letter-spacing: 1px; text-transform: none; }
        @media (max-width: 768px) {
          .top-nav-inner { padding: 14px 5%; }
          .logo { font-size: 24px; }
          .page-header { margin: 24px 0 16px; }
          .page-title { font-size: 36px; letter-spacing: -2px; }
          .grid { grid-template-columns: repeat(3, 1fr) !important; gap: 12px; }
          .thumb-box { border-radius: 22px; }
          .name { font-size: 12px; }
          .meta { font-size: 11px; }
          .seo-footer h2 { font-size: 24px; }
          .seo-footer p { font-size: 14px; }
          .seo-footer { margin-top: 40px; padding: 26px; border-radius: 24px; }
        }
        .category-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 14px; padding-bottom: 40px; }
        .cat-item { text-decoration: none; padding: 20px 24px; border-radius: 18px; background: #e9e9ed; transition: background .2s ease, transform .2s ease, box-shadow .2s ease; display: flex; justify-content: space-between; align-items: center; }
        .cat-item:hover { background: #fff; transform: translateY(-2px); box-shadow: var(--shadow); }
        .cat-name { font-size: 16px; font-weight: 700; color: #111; letter-spacing: -.5px; }
        .cat-count { font-size: 11px; font-weight: 800; color: var(--primary); background: rgba(108,92,231,.1); padding: 4px 9px; border-radius: 8px; }
        @media (max-width: 768px) {
          .category-list { grid-template-columns: 1fr; gap: 10px; }
          .cat-item { padding: 18px 20px; border-radius: 14px; }
        }
