:root{--accent:#158b68;--ink:#22362f;--muted:#75827c;--line:#e6ece8;--paper:#fff;--soft:#f5f7f6;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--soft);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;font-size:14px;line-height:1.6}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}img{display:block;max-width:100%;object-fit:contain}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid #78cbb0;outline-offset:4px}h1,h2,p,ol,dl,dd{margin:0}h1{font-size:25px;line-height:1.4}h2{font-size:18px;font-weight:650;line-height:1.5}.container{width:calc(100% - 64px);max-width:1320px;margin-inline:auto}.site-header{background:#fff;border-bottom:1px solid var(--line)}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:13px;min-width:0}.brand-name{font-size:23px;font-weight:700;letter-spacing:-.6px;overflow-wrap:anywhere}.brand-logo{height:42px;width:auto;max-width:180px;flex-shrink:0}.header-links{display:flex;gap:28px;flex-shrink:0;color:#66766e}.header-links [aria-current]{color:var(--accent)}.site-main{padding-block:32px 48px;min-height:65vh}.skip-link{position:absolute;top:4px;left:12px;transform:translateY(-150%);padding:8px;background:white;z-index:9}.skip-link:focus{transform:none}.panel{border:1px solid var(--line);border-radius:16px;background:var(--paper);min-width:0}.home-layout{display:grid;grid-template-columns:152px minmax(0,1fr) 250px;gap:24px;align-items:start}.category-rail{position:sticky;top:24px;padding:8px 0}.rail-heading{font-size:12px;color:var(--muted);padding:0 14px 12px;letter-spacing:1px}.category-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.category-nav a{padding:9px 15px;border-radius:10px;font-size:14px;color:#5c6c64}.category-nav a:hover,.category-nav a[aria-current]{color:var(--accent);background:#e9f5ef}.category-rail .category-nav{display:grid;gap:5px;margin:0}.category-rail .category-nav a{padding:12px 14px}.directory-main,.category-sections{display:grid;gap:24px;min-width:0}.section-heading{padding:22px 22px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.section-heading h1,.section-heading h2{min-width:0;overflow-wrap:anywhere}.muted{color:var(--muted);font-size:12px}.more{font-size:12px;color:var(--accent);white-space:nowrap}.app-list{padding:0 22px 6px}.app-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;min-height:86px;padding:16px 0;border-top:1px solid #edf1ee}.row-logo img{border-radius:12px}.row-copy{min-width:0}.app-name{font-weight:600;font-size:15px;overflow-wrap:anywhere;line-height:1.5}.row-meta{display:flex;flex-wrap:wrap;gap:0 12px;color:var(--muted);font-size:12px;margin-top:5px;overflow-wrap:anywhere}.download-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 26px;border-radius:14px;background:linear-gradient(135deg,#3ebc96,#219a73);color:#fff;font-weight:600;box-shadow:0 3px 9px #20956d18}.download-button:hover{color:#fff;background:linear-gradient(135deg,#31ae89,#188864)}.download-button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.list-download{font-size:13px;min-height:40px;padding:8px 15px;border-radius:12px;gap:5px}.list-download svg{width:16px;height:16px}.ranking-rail{min-width:0}.ranking .section-heading{padding:22px 18px 12px;flex-wrap:wrap}.ranking h2{font-size:16px}.ranking-list{list-style:none;padding:0 18px 14px}.ranking-list li{display:flex;gap:10px;align-items:center;padding:12px 0;border-top:1px solid #eff2f0;min-width:0}.rank-number{width:15px;flex-shrink:0;color:#9aa69f;font-size:12px;font-variant-numeric:tabular-nums}.ranking-list li:nth-child(-n+3) .rank-number{color:var(--accent);font-weight:700}.rank-app{display:flex;align-items:center;gap:10px;min-width:0;font-size:13px}.rank-app img{flex:0 0 32px;border-radius:8px}.rank-app span{overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.empty-state{padding:30px 12px;text-align:center;color:var(--muted);font-size:13px}.catalog-layout,.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start}.breadcrumbs{margin-bottom:20px;color:var(--muted);font-size:12px}.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;padding:0;gap:6px 0}.breadcrumbs li{overflow-wrap:anywhere;min-width:0}.breadcrumbs li+li:before{content:"/";margin:0 10px;color:#afbab3}.subcategory-nav{display:flex;gap:8px;flex-wrap:wrap;padding:0 22px 18px}.subcategory-nav a{font-size:13px;padding:6px 13px;border-radius:8px;background:var(--soft);overflow-wrap:anywhere}.subcategory-nav a[aria-current]{background:#e6f5ed;color:var(--accent)}.stream-mobile{display:none}.pagination{display:flex;justify-content:center;gap:16px;padding:22px}.pagination a,.pagination>span{border:1px solid var(--line);padding:8px 20px;border-radius:10px;font-size:13px}.pagination a:hover{border-color:#92cfb8}.pagination [aria-disabled]{color:#aeb8b2;background:#fafbfa}.app-summary{padding:28px}.app-identity{display:flex;gap:22px;align-items:center;margin-bottom:26px}.detail-logo{width:88px;height:88px;flex-shrink:0;border-radius:20px}.identity-copy{min-width:0}.identity-copy h1{overflow-wrap:anywhere}.description{margin-top:8px;color:#728077;overflow-wrap:anywhere}.rating{margin-top:8px;font-size:12px;color:var(--muted)}.rating strong{color:var(--accent);font-size:15px}.app-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:20px}.app-facts>div{display:flex;gap:16px;min-width:0;padding:14px 16px;background:#fafcfb}.app-facts>div:nth-child(n+4){border-top:1px solid var(--line)}.app-facts dt{color:var(--muted);flex-shrink:0;font-size:12px}.app-facts dd{min-width:0;overflow-wrap:anywhere;font-size:13px}.download-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:660px}.download-actions .download-button{font-size:17px}.download-backup{background:linear-gradient(135deg,#52b49b,#329b81)}.detail-nav{display:flex;gap:6px;margin:24px 0;padding:6px;border:1px solid var(--line);border-radius:12px;background:white;width:fit-content;max-width:100%}.detail-nav a{padding:10px 24px;border-radius:8px;color:#4b695b;white-space:nowrap}.detail-nav a:hover{background:#edf7f1}.detail-main{display:grid;gap:20px;min-width:0}.body-panel,.notice-panel{padding:26px}.body-panel h2,.notice-panel h2{margin-bottom:16px}.app-body{font-size:15px;line-height:1.95;overflow-wrap:anywhere;color:#41564a}.app-body p{margin:0 0 1em}.app-body ul,.app-body ol{padding-left:1.7em;margin:1em 0}.app-body li{margin:5px 0}.detail-copy,.detail-related-info{font-size:13px;line-height:1.9;color:#728178;overflow-wrap:anywhere}.detail-copy-intro{margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid var(--line)}.detail-related-info{margin-top:24px}.detail-related-info h2,.related-tags h2{font-size:15px}.detail-copy-outro p{margin:0}.related-tags{margin-top:24px}.tag-list{display:flex;flex-wrap:wrap;gap:8px}.tag{background:#edf5f0;color:#62816f;border-radius:7px;padding:4px 10px;font-size:12px}#categories,#software-intro,#download-notice,#similar-popular{scroll-margin-top:24px}.site-footer{border-top:1px solid var(--line);background:#fff;text-align:center;padding:28px 0;color:#7c8881;font-size:12px}.site-footer nav{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-bottom:10px}.site-footer nav>span{color:#c5cec8}.static-layout{display:grid;grid-template-columns:180px minmax(0,1fr);gap:28px}.static-index{display:grid;align-content:start;gap:8px}.static-index a{padding:11px 14px;border-radius:9px}.static-index a[aria-current]{color:var(--accent);background:#e5f3eb}.static-index a>span{float:right}.static-page{background:#fff;border:1px solid var(--line);border-radius:16px;padding:32px;min-width:0}.static-page h1{margin-bottom:28px}.static-page h2{margin:25px 0 12px}.static-page p{margin:12px 0;line-height:1.95;overflow-wrap:anywhere}.eyebrow{display:none}
@media(min-width:1024px) and (max-width:1190px){.container{width:calc(100% - 40px)}.home-layout{grid-template-columns:128px minmax(0,1fr) 220px;gap:16px}.app-list{padding-inline:16px}.section-heading{padding-inline:16px}.app-row{gap:10px}.catalog-layout,.detail-layout{grid-template-columns:minmax(0,1fr) 240px;gap:18px}.app-facts>div{gap:10px;padding:12px}}
@media(max-width:1023px){.container{width:calc(100% - 32px);max-width:760px}.header-inner{min-height:76px;gap:14px}.brand-name{font-size:20px}.brand-logo{height:34px;max-width:120px}.header-links{gap:16px;font-size:12px}.site-main{padding-block:20px 32px}.home-layout,.catalog-layout,.detail-layout{grid-template-columns:minmax(0,1fr);gap:20px}.category-rail{position:static;padding:0}.rail-heading{display:none}.category-rail .category-nav,.category-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.category-nav a,.category-rail .category-nav a{padding:10px 3px;background:#fff;border:1px solid var(--line);text-align:center;font-size:13px}.directory-main,.category-sections{gap:20px}.section-heading{padding:19px 18px 14px}.app-list{padding-inline:18px}.app-row{min-height:84px}.ranking-list{display:block}.stream-desktop{display:none}.stream-mobile{display:block}.app-summary{padding:20px}.app-identity{gap:16px;align-items:flex-start;margin-bottom:20px}.detail-logo{width:68px;height:68px;border-radius:16px}.identity-copy h1{font-size:23px}.description{font-size:13px}.app-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.app-facts>div{flex-direction:column;gap:4px;padding:12px}.app-facts>div:nth-child(n+3){border-top:1px solid var(--line)}.download-actions{grid-template-columns:1fr;max-width:none;gap:12px}.download-actions .download-button{min-height:52px}.detail-nav{width:100%;margin:20px 0;justify-content:space-around;gap:0}.detail-nav a{padding:10px 12px;font-size:14px}.body-panel,.notice-panel{padding:22px}.static-layout{grid-template-columns:1fr;gap:18px}.static-index{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;font-size:12px}.static-index a{padding:9px 3px;text-align:center;background:#fff}.static-index a>span{display:none}.static-page{padding:24px}.pagination{padding:20px 14px}.subcategory-nav{padding-inline:18px}}
@media(max-width:420px){.container{width:calc(100% - 24px)}.brand-name{font-size:18px;letter-spacing:0}.brand{gap:8px}.brand-logo{max-width:90px;height:30px}.header-links{gap:10px;font-size:11px}.section-heading{padding-inline:14px}.section-heading h2{font-size:17px}.app-list{padding-inline:14px}.app-row{grid-template-columns:42px minmax(0,1fr) auto;gap:10px}.row-logo img{width:42px;height:42px;border-radius:10px}.app-name{font-size:14px}.row-meta{gap:0 7px;font-size:11px}.list-download{padding:9px 11px;min-height:44px}.list-download svg{width:14px;height:14px}.app-summary{padding:16px}.detail-logo{width:58px;height:58px}.app-identity{gap:12px}.identity-copy h1{font-size:21px}.app-facts>div{padding:10px}.detail-nav a{padding:9px 10px;font-size:13px}.body-panel,.notice-panel{padding:19px}.app-body{font-size:14px}.breadcrumbs li+li:before{margin-inline:6px}}

/* Lite V2 detail only. Other Lite pages retain their accepted directory layout. */
.page-detail {
  --accent: #00c96b;
  --ink: #152039;
  --muted: #748096;
  --line: #edf1f5;
  --soft: #f5f8fa;
  color: var(--ink);
  background: var(--soft);
}
.page-detail .container { max-width: 1240px; }
.page-detail .header-inner { min-height: 74px; }
.page-detail .header-links { color: #53617a; }
.page-detail .site-main { padding-block: 18px 40px; }
.page-detail .category-nav { gap: 6px; margin-bottom: 16px; }
.page-detail .category-nav a { color: #526079; padding: 8px 16px; }
.page-detail .category-nav a:hover,
.page-detail .category-nav a[aria-current] { color: #009e55; background: #e9fbf2; }
.page-detail .breadcrumbs { margin-bottom: 18px; color: #78859a; }
.page-detail .panel { border-radius: 18px; border-color: #edf1f5; box-shadow: 0 3px 18px #243c5b03; }
.page-detail .detail-layout { grid-template-columns: minmax(0, 1fr) 306px; gap: 20px; }
.page-detail .detail-layout:not(:has(> .ranking-rail)) { grid-template-columns: minmax(0, 1fr); }
.page-detail .detail-main { gap: 18px; }
.page-detail .app-summary { padding: 26px; }
.page-detail .app-identity { gap: 22px; align-items: center; margin-bottom: 24px; }
.page-detail .detail-logo { width: 96px; height: 96px; border-radius: 23px; }
.page-detail .identity-copy h1 { color: #101a32; font-size: 28px; font-weight: 700; line-height: 1.35; letter-spacing: -.5px; }
.page-detail .description { margin-top: 8px; font-size: 15px; line-height: 1.75; color: #55637c; }
.page-detail .rating { display: inline-block; margin-top: 9px; padding: 3px 10px; border-radius: 8px; background: #ebfbf3; color: #168450; }
.page-detail .rating strong { color: #009e55; }
.page-detail .app-facts { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 6px; border: 0; border-radius: 0; overflow: visible; margin-bottom: 14px; }
.page-detail .app-facts > div { display: flex; flex-direction: column; justify-content: flex-start; align-items: center; gap: 5px; padding: 13px 7px; border: 0; border-radius: 10px; background: #f5f8fa; text-align: center; }
.page-detail .app-facts dt { color: #65718a; font-size: 12px; }
.page-detail .app-facts dd { width: 100%; color: #26354f; font-size: 13px; line-height: 1.55; }
.page-detail .app-facts dd a:hover { color: #009e55; }
.page-detail .app-download-safety { align-items: center; justify-content: center; gap: 7px; margin: 0 0 15px; padding: 9px 12px; border-radius: 10px; background: #edfbf4; color: #009f54; font-size: 12px; line-height: 1.65; }
.page-detail .app-download-safety > svg { flex-basis: 18px; width: 18px; height: 18px; margin-top: 0; stroke-width: 2; }
.page-detail .download-actions { max-width: none; gap: 14px; }
.page-detail .download-actions .download-button { min-height: 70px; padding: 16px 22px; gap: 12px; border-radius: 19px; font-size: 21px; font-weight: 700; line-height: 1.4; border: 1px solid transparent; }
.page-detail .download-actions .download-button svg { width: 27px; height: 27px; stroke-width: 2.8; }
.page-detail .download-actions .download-primary { color: #fff; background: linear-gradient(165deg, #06db91 0%, #00c96b 48%, #00bf66 100%); box-shadow: 0 7px 18px #00c96b26; }
.page-detail .download-actions .download-primary:hover { background: linear-gradient(165deg, #04d58b, #00bf65 55%, #00b75f); box-shadow: 0 7px 18px #00c96b36; }
.page-detail .download-actions .download-backup { background: #fff; border-color: #c6d3df; color: #263650; box-shadow: none; }
.page-detail .download-actions .download-backup:hover { border-color: #96bca8; background: #f7fcf9; color: #1d3e2e; }
.page-detail a:focus-visible { outline-color: #00a75b; }
.page-detail .detail-nav { width: 100%; margin: 0 0 -18px; padding: 0 24px; gap: 36px; justify-content: flex-start; border: 1px solid var(--line); border-bottom: 0; border-radius: 18px 18px 0 0; background: #fff; }
.page-detail .detail-nav a { position: relative; padding: 17px 0 15px; border-radius: 0; color: #526079; font-size: 15px; font-weight: 500; }
.page-detail .detail-nav a:hover { color: #00ae5d; background: transparent; }
.page-detail .detail-nav a::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; border-radius: 3px; background: transparent; }
/* Native anchor selection remains available with JavaScript disabled. */
.page-detail:not(:has(#software-intro:target, #download-notice:target, #similar-popular:target)) .detail-nav a:first-child,
.page-detail:has(#software-intro:target) .detail-nav a[href="#software-intro"],
.page-detail:has(#download-notice:target) .detail-nav a[href="#download-notice"],
.page-detail:has(#similar-popular:target) .detail-nav a[href="#similar-popular"] { color: #00a959; font-weight: 650; }
.page-detail:not(:has(#software-intro:target, #download-notice:target, #similar-popular:target)) .detail-nav a:first-child::after,
.page-detail:has(#software-intro:target) .detail-nav a[href="#software-intro"]::after,
.page-detail:has(#download-notice:target) .detail-nav a[href="#download-notice"]::after,
.page-detail:has(#similar-popular:target) .detail-nav a[href="#similar-popular"]::after { background: #00c96b; }
.page-detail:has(.detail-nav) .body-panel { border-top-left-radius: 0; border-top-right-radius: 0; }
.page-detail .body-panel, .page-detail .notice-panel { padding: 24px 26px; }
.page-detail .body-panel h2, .page-detail .notice-panel h2 { color: #17223a; font-size: 19px; margin-bottom: 14px; }
.page-detail .app-body { font-size: 16px; line-height: 1.95; color: #45536b; }
.page-detail .app-body h2, .page-detail .app-body h3, .page-detail .app-body h4 { margin: 24px 0 12px; color: #17223a; line-height: 1.55; }
.page-detail .app-body h3 { font-size: 18px; }
.page-detail .app-body h4 { font-size: 16px; }
.page-detail .app-body a { color: #00894c; text-decoration: underline; text-underline-offset: 3px; }
.page-detail .app-body li::marker { color: #00b960; }
.page-detail .app-body pre { max-width: 100%; white-space: pre-wrap; overflow-wrap: anywhere; }
.page-detail .app-body table { width: 100%; max-width: 100%; table-layout: fixed; border-collapse: collapse; }
.page-detail .app-body th, .page-detail .app-body td { padding: 8px; border: 1px solid var(--line); overflow-wrap: anywhere; }
.page-detail .detail-copy, .page-detail .detail-related-info { color: #728096; font-size: 13px; line-height: 1.9; }
.page-detail .detail-copy-intro { margin-bottom: 20px; padding-bottom: 18px; }
.page-detail .detail-related-info, .page-detail .related-tags { margin-top: 24px; }
.page-detail .detail-related-info h2, .page-detail .related-tags h2 { font-size: 16px; }
.page-detail .detail-copy-outro { color: #526079; font-size: 14px; }
.page-detail .tag { background: #edfaf3; color: #288454; }
.page-detail .ranking .section-heading { padding: 20px 20px 12px; }
.page-detail .ranking h2 { font-size: 17px; color: #17223a; }
.page-detail .ranking-list { padding: 0 20px 12px; }
.page-detail .ranking-list li { gap: 10px; padding: 15px 0; border-color: #f0f3f6; }
.page-detail .rank-number { display: flex; align-items: center; justify-content: center; width: 20px; height: 22px; border-radius: 6px; background: #f0f3f7; color: #7b8798; font-size: 12px; }
.page-detail .ranking-list li:nth-child(-n+3) .rank-number { color: #00a65b; background: #e6faf0; }
.page-detail .rank-app { gap: 12px; color: #24314a; font-size: 14px; line-height: 1.5; }
.page-detail .rank-app img { flex-basis: 40px; width: 40px; height: 40px; border-radius: 10px; }
.page-detail .site-footer { color: #778398; }
@media (min-width: 1024px) and (max-width: 1190px) {
  .page-detail .detail-layout { grid-template-columns: minmax(0, 1fr) 268px; gap: 18px; }
  .page-detail .app-summary { padding: 22px; }
  .page-detail .app-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 1023px) {
  .page-detail .container { max-width: 760px; }
  .page-detail .header-inner { min-height: 66px; }
  .page-detail .site-main { padding-top: 12px; }
  .page-detail .category-nav { gap: 6px; margin-bottom: 14px; }
  .page-detail .category-nav a { padding: 7px 2px; font-size: 12px; }
  .page-detail .breadcrumbs { margin-bottom: 14px; }
  .page-detail .detail-layout { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .page-detail .detail-main { gap: 16px; }
  .page-detail .panel { border-radius: 16px; }
  .page-detail .app-summary { padding: 20px; }
  .page-detail .app-identity { align-items: flex-start; gap: 16px; margin-bottom: 18px; }
  .page-detail .detail-logo { width: 84px; height: 84px; border-radius: 20px; }
  .page-detail .identity-copy h1 { font-size: 23px; line-height: 1.35; letter-spacing: -.35px; }
  .page-detail .description { font-size: 13px; line-height: 1.65; margin-top: 6px; }
  .page-detail .rating { margin-top: 7px; padding: 2px 8px; font-size: 11px; }
  .page-detail .rating strong { font-size: 13px; }
  .page-detail .app-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; margin-bottom: 12px; }
  .page-detail .app-facts > div { gap: 5px; padding: 11px 5px; border-radius: 9px; }
  .page-detail .app-facts dt { font-size: 11px; }
  .page-detail .app-facts dd { font-size: 12px; }
  .page-detail .app-download-safety { margin-bottom: 13px; padding: 8px; font-size: 11px; gap: 5px; }
  .page-detail .app-download-safety > svg { width: 16px; height: 16px; flex-basis: 16px; }
  .page-detail .download-actions { grid-template-columns: minmax(0, 1fr); gap: 11px; }
  .page-detail .download-actions .download-button { min-height: 64px; padding: 15px 18px; font-size: 20px; border-radius: 18px; gap: 12px; }
  .page-detail .download-actions .download-button svg { width: 25px; height: 25px; }
  .page-detail .detail-nav { margin-bottom: -16px; padding: 0 18px; gap: 0; justify-content: space-between; border-radius: 16px 16px 0 0; }
  .page-detail .detail-nav a { font-size: 14px; padding: 15px 0 13px; }
  .page-detail .body-panel, .page-detail .notice-panel { padding: 20px; }
  .page-detail .app-body { font-size: 15px; line-height: 1.9; }
  .page-detail .body-panel h2, .page-detail .notice-panel h2 { font-size: 18px; }
  .page-detail .app-body h3 { font-size: 17px; }
}
@media (max-width: 420px) {
  .page-detail .app-summary { padding: 17px; }
  .page-detail .app-identity { gap: 14px; }
  .page-detail .detail-logo { width: 78px; height: 78px; border-radius: 19px; }
  .page-detail .identity-copy h1 { font-size: 21px; }
  .page-detail .body-panel, .page-detail .notice-panel { padding: 18px; }
  .page-detail .detail-copy-intro { font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .page-detail { scroll-behavior: auto; }
}

/* Directory V2: scoped to home/category; the accepted detail V2 is frozen. */
:is(.page-home, .page-category) {
  --accent: #00c96b;
  --ink: #152039;
  --muted: #748096;
  --line: #edf1f5;
  --soft: #f5f8fa;
  color: var(--ink);
  background: var(--soft);
}
:is(.page-home, .page-category) .container { max-width: 1240px; }
:is(.page-home, .page-category) .header-inner { min-height: 74px; }
:is(.page-home, .page-category) .header-links { color: #53617a; }
:is(.page-home, .page-category) .header-links [aria-current] { color: #009e55; }
:is(.page-home, .page-category) .site-main { padding-block: 24px 40px; }
:is(.page-home, .page-category) .panel { border-radius: 18px; border-color: #edf1f5; box-shadow: 0 3px 18px #243c5b03; }
:is(.page-home, .page-category) .section-heading { padding: 22px 22px 16px; }
:is(.page-home, .page-category) .section-heading h2 { font-size: 19px; color: #17223a; }
:is(.page-home, .page-category) .more { color: #009e55; font-size: 13px; }
:is(.page-home, .page-category) .app-list { padding: 0 22px 6px; }
:is(.page-home, .page-category) .app-row { min-height: 86px; padding: 16px 0; gap: 14px; border-color: #f0f3f6; }
:is(.page-home, .page-category) .row-logo img { border-radius: 13px; }
:is(.page-home, .page-category) .app-name { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; font-size: 15px; font-weight: 600; line-height: 1.55; color: #24314a; }
:is(.page-home, .page-category) .app-name:hover { color: #009e55; }
:is(.page-home, .page-category) .row-meta { font-size: 12px; line-height: 1.65; color: #748096; margin-top: 5px; gap: 0 12px; }
:is(.page-home, .page-category) .list-download { min-height: 44px; padding: 10px 17px; gap: 7px; border: 1px solid transparent; border-radius: 14px; color: #fff; font-size: 14px; font-weight: 650; line-height: 1.4; background: linear-gradient(165deg, #06db91 0%, #00c96b 48%, #00bf66 100%); box-shadow: 0 4px 12px #00c96b26; }
:is(.page-home, .page-category) .list-download:hover { color: #fff; background: linear-gradient(165deg, #04d58b, #00bf65 55%, #00b75f); box-shadow: 0 5px 14px #00c96b36; }
:is(.page-home, .page-category) .list-download svg { width: 17px; height: 17px; stroke-width: 2.5; }
:is(.page-home, .page-category) a:focus-visible { outline-color: #00a75b; }
:is(.page-home, .page-category) .category-nav a { color: #526079; }
:is(.page-home, .page-category) .category-nav a:hover,
:is(.page-home, .page-category) .category-nav a[aria-current] { color: #009e55; background: #e9fbf2; }
.page-home .home-layout { grid-template-columns: 156px minmax(0, 1fr) 266px; gap: 20px; }
.page-home .directory-main, .page-home .category-sections { gap: 20px; }
.page-home .category-rail { padding: 20px 10px 12px; border: 1px solid var(--line); border-radius: 18px; background: #fff; }
.page-home .rail-heading { padding: 0 12px 13px; color: #748096; font-size: 12px; letter-spacing: 1px; }
.page-home .category-rail .category-nav { gap: 5px; }
.page-home .category-rail .category-nav a { padding: 11px 12px; border-radius: 10px; font-size: 14px; }
.page-category .site-main { padding-top: 18px; }
.page-category .category-nav { gap: 6px; margin-bottom: 16px; }
.page-category .category-nav a { padding: 8px 16px; }
.page-category .breadcrumbs { margin-bottom: 18px; color: #78859a; }
.page-category .catalog-layout { grid-template-columns: minmax(0, 1fr) 306px; gap: 20px; }
.page-category .section-heading h1 { color: #17223a; font-size: 25px; line-height: 1.4; }
.page-category .subcategory-nav { gap: 8px; padding: 0 22px 18px; }
.page-category .subcategory-nav a { padding: 7px 14px; border: 1px solid transparent; border-radius: 9px; color: #65718a; background: #f5f8fa; }
.page-category .subcategory-nav a:hover,
.page-category .subcategory-nav a[aria-current] { color: #009e55; background: #e9fbf2; border-color: #d5f3e3; }
.page-category .pagination { gap: 12px; padding: 22px; }
.page-category .pagination a,
.page-category .pagination > span { min-height: 44px; padding: 10px 21px; border-radius: 12px; color: #526079; }
.page-category .pagination a:hover { color: #009e55; border-color: #a1e4bf; background: #f2fcf6; }
.page-category .pagination [aria-disabled] { color: #a6afbd; background: #f8fafb; }
:is(.page-home, .page-category) .ranking .section-heading { padding: 20px 18px 12px; }
:is(.page-home, .page-category) .ranking h2 { font-size: 17px; }
:is(.page-home, .page-category) .ranking-list { padding: 0 18px 12px; }
:is(.page-home, .page-category) .ranking-list li { gap: 10px; padding: 14px 0; border-color: #f0f3f6; }
:is(.page-home, .page-category) .rank-number { display: flex; align-items: center; justify-content: center; width: 20px; height: 22px; border-radius: 6px; background: #f0f3f7; color: #7b8798; font-size: 12px; }
:is(.page-home, .page-category) .ranking-list li:nth-child(-n+3) .rank-number { color: #00a65b; background: #e6faf0; }
:is(.page-home, .page-category) .rank-app { gap: 10px; color: #24314a; font-size: 14px; line-height: 1.5; }
:is(.page-home, .page-category) .rank-app img { flex-basis: 36px; width: 36px; height: 36px; border-radius: 9px; }
:is(.page-home, .page-category) .site-footer { color: #778398; }
@media (min-width: 1024px) and (max-width: 1190px) {
  .page-home .home-layout { grid-template-columns: 132px minmax(0, 1fr) 238px; gap: 16px; }
  .page-home .category-rail { padding-inline: 8px; }
  .page-home .category-rail .category-nav a { padding-inline: 10px; }
  .page-category .catalog-layout { grid-template-columns: minmax(0, 1fr) 268px; gap: 18px; }
  :is(.page-home, .page-category) .section-heading { padding-inline: 18px; }
  :is(.page-home, .page-category) .app-list { padding-inline: 18px; }
}
@media (max-width: 1023px) {
  :is(.page-home, .page-category) .container { max-width: 760px; }
  :is(.page-home, .page-category) .header-inner { min-height: 66px; }
  :is(.page-home, .page-category) .site-main { padding-block: 14px 32px; }
  :is(.page-home, .page-category) .panel { border-radius: 16px; }
  .page-home .home-layout, .page-category .catalog-layout { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .page-home .directory-main, .page-home .category-sections { gap: 16px; }
  .page-home .category-rail { padding: 0; border: 0; border-radius: 0; background: transparent; }
  .page-home .category-rail .category-nav { gap: 6px; }
  :is(.page-home, .page-category) .category-nav a,
  .page-home .category-rail .category-nav a { padding: 9px 2px; border-radius: 10px; font-size: 12px; }
  .page-category .category-nav { gap: 6px; margin-bottom: 14px; }
  .page-category .breadcrumbs { margin-bottom: 14px; }
  :is(.page-home, .page-category) .section-heading { padding: 19px 18px 14px; }
  :is(.page-home, .page-category) .section-heading h2 { font-size: 18px; }
  .page-category .section-heading h1 { font-size: 22px; }
  :is(.page-home, .page-category) .app-list { padding-inline: 18px; }
  :is(.page-home, .page-category) .app-row { min-height: 80px; padding: 14px 0; gap: 12px; }
  :is(.page-home, .page-category) .list-download { padding: 10px 13px; gap: 6px; border-radius: 13px; }
  .page-category .subcategory-nav { padding: 0 18px 15px; gap: 7px; }
  .page-category .subcategory-nav a { padding: 6px 12px; font-size: 12px; }
  .page-category .pagination { padding: 20px 16px; }
  :is(.page-home, .page-category) .ranking h2 { font-size: 17px; }
}
@media (max-width: 420px) {
  :is(.page-home, .page-category) .section-heading { padding-inline: 15px; }
  :is(.page-home, .page-category) .section-heading h2 { font-size: 17px; }
  :is(.page-home, .page-category) .app-list { padding-inline: 15px; }
  :is(.page-home, .page-category) .app-row { grid-template-columns: 42px minmax(0, 1fr) auto; gap: 10px; }
  :is(.page-home, .page-category) .row-logo img { border-radius: 11px; }
  :is(.page-home, .page-category) .app-name { font-size: 14px; }
  :is(.page-home, .page-category) .row-meta { gap: 0 8px; font-size: 11px; }
  :is(.page-home, .page-category) .list-download { padding: 10px 11px; font-size: 13px; gap: 5px; }
  :is(.page-home, .page-category) .list-download svg { width: 16px; height: 16px; }
  .page-category .subcategory-nav { padding-inline: 15px; }
}

/* Lite V3: PC home only; 1023px and below retain the V2 pixels. */
.page-home .home-intro { display: none; }
@media (min-width: 1024px) {
  .page-home .site-main { padding-top: 16px; }
  .page-home .home-intro { display: flex; align-items: center; gap: 16px; min-height: 46px; margin-bottom: 18px; padding: 0 4px; }
  .page-home .home-intro::before { content: ''; width: 4px; height: 28px; border-radius: 4px; background: #00c96b; }
  .page-home .home-intro-title { color: #17223a; font-size: 20px; line-height: 1.4; font-weight: 700; letter-spacing: .3px; }
  .page-home .home-intro-description { color: #748096; font-size: 13px; }
  .page-home .panel, .page-home .category-rail { box-shadow: 0 4px 18px #243c5b05; }
  .page-home .category-rail { padding: 18px 10px 12px; }
  .page-home .rail-heading { margin: 0 10px 8px; padding: 0 0 12px; border-bottom: 1px solid #edf1f5; font-weight: 600; font-size: 12px; letter-spacing: .5px; }
  .page-home .category-rail .category-nav { gap: 4px; }
  .page-home .category-rail .category-nav a { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 11px 10px; border-radius: 11px; color: #41516a; font-size: 14px; line-height: 1.5; }
  .page-home .category-rail .category-nav a::before { content: ''; width: 5px; height: 5px; flex-shrink: 0; border-radius: 50%; background: #ccd7d2; }
  .page-home .category-rail .category-nav a:hover,
  .page-home .category-rail .category-nav a:focus-visible { color: #009e55; background: #e9fbf2; }
  .page-home .category-rail .category-nav a:hover::before,
  .page-home .category-rail .category-nav a:focus-visible::before { background: #00c96b; }
  .page-home .list-section .section-heading { padding-top: 17px; padding-bottom: 13px; }
  .page-home .list-section .section-heading h2 { display: flex; align-items: center; gap: 10px; font-size: 18px; line-height: 1.4; }
  .page-home .list-section .section-heading h2::before { content: ''; width: 4px; height: 17px; flex-shrink: 0; border-radius: 3px; background: #00c96b; }
  .page-home .directory-main > .list-section .app-row { grid-template-columns: 40px minmax(0, 1fr) auto; min-height: 58px; padding: 6px 0; gap: 12px; }
  .page-home .directory-main > .list-section .row-logo img { width: 40px; height: 40px; border-radius: 11px; }
  .page-home .directory-main > .list-section .app-name { font-size: 14px; line-height: 1.45; }
  .page-home .directory-main > .list-section .row-meta { margin-top: 2px; line-height: 1.5; font-size: 12px; }
  .page-home .ranking .section-heading { padding-top: 18px; padding-bottom: 12px; }
  .page-home .ranking-list { padding-bottom: 10px; }
  .page-home .ranking-list li { min-height: 57px; padding: 10px 0; gap: 9px; border-color: #f0f3f6; }
  .page-home .rank-number { width: 22px; height: 24px; border-radius: 7px; color: #7b8798; background: #f0f3f7; font-weight: 600; }
  .page-home .ranking-list li:first-child .rank-number { color: #fff; background: #00c96b; box-shadow: 0 2px 6px #00c96b24; }
  .page-home .ranking-list li:nth-child(2) .rank-number { color: #008e4d; background: #c6f4dd; }
  .page-home .ranking-list li:nth-child(3) .rank-number { color: #11965a; background: #dff8ec; }
  .page-home .rank-app { gap: 9px; font-size: 13px; }
  .page-home .rank-app img { width: 32px; height: 32px; flex-basis: 32px; border-radius: 9px; }
}

/* Lite V4: PC home directories. Auto-fit follows the available center-column width. */
@media (min-width: 1024px) {
  .page-home .directory-main > .list-section > .app-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
    column-gap: 24px;
  }
  .page-home .category-sections {
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
    align-items: start;
  }
  .page-home .category-sections .section-heading { padding-inline: 16px; }
  .page-home .category-sections .section-heading h2 { font-size: 17px; gap: 8px; }
  .page-home .category-sections .app-list { padding-inline: 16px; }
  .page-home .category-sections .app-row {
    grid-template-columns: 36px minmax(0, 1fr) auto;
    gap: 10px;
    min-height: 64px;
    padding: 9px 0;
  }
  .page-home .category-sections .row-logo img { width: 36px; height: 36px; border-radius: 10px; }
  .page-home .category-sections .app-name { font-size: 14px; line-height: 1.45; }
  .page-home .category-sections .row-meta { margin-top: 3px; gap: 0 8px; font-size: 11px; line-height: 1.6; }
  .page-home .home-category-columns {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr));
    align-items: start;
  }
  .page-home .home-category-columns > .app-list { min-width: 0; }
}

/* PC home: reuse the single latest list below ranking; mobile DOM and styles stay intact. */
@media (min-width: 1024px) {
  .page-home .home-layout { grid-template-rows: min-content 1fr; }
  .page-home .category-rail { grid-column: 1; grid-row: 1 / span 2; }
  .page-home .directory-main { display: contents; }
  .page-home .category-sections { grid-column: 2; grid-row: 1 / span 2; }
  .page-home .home-layout > .ranking-rail { grid-column: 3; grid-row: 1; }
  .page-home .directory-main > .list-section { grid-column: 3; grid-row: 2; }
  .page-home .directory-main > .list-section .section-heading { padding: 18px 14px 12px; gap: 8px; }
  .page-home .directory-main > .list-section .section-heading h2 { font-size: 17px; gap: 8px; }
  .page-home .directory-main > .list-section > .app-list { display: block; padding: 0 14px 8px; }
  .page-home .directory-main > .list-section .app-row {
    grid-template-columns: 32px minmax(0, 1fr) auto;
    gap: 8px;
    min-height: 76px;
    padding: 12px 0;
  }
  .page-home .directory-main > .list-section .row-logo img { width: 32px; height: 32px; border-radius: 9px; }
  .page-home .directory-main > .list-section .app-name { font-size: 13px; line-height: 1.5; }
  .page-home .directory-main > .list-section .row-meta { margin-top: 3px; gap: 0 6px; font-size: 11px; line-height: 1.6; }
  .page-home .directory-main > .list-section .list-download { min-height: 40px; padding: 8px; gap: 4px; border-radius: 12px; font-size: 12px; }
  .page-home .directory-main > .list-section .list-download svg { width: 14px; height: 14px; }
}
