
:root{color-scheme:light;--bg:#eef3f9;--surface:#fff;--surface2:#f7faff;--text:#172033;--muted:#64748b;--heading:#173b62;--primary:#1267c4;--primary2:#0d4f93;--soft:#e5f1ff;--border:#d8e2ee;--shadow:0 12px 34px rgba(25,57,91,.10);--warn:#fff7ed;--warn-border:#d97706;--header:#173b62;--header-text:#eef6ff;--header-muted:#b9cae1}
html[data-theme=dark]{color-scheme:dark;--bg:#08111e;--surface:#101c2c;--surface2:#14243a;--text:#e8eef7;--muted:#9eb0c6;--heading:#dbeafe;--primary:#68b5ff;--primary2:#9ed0ff;--soft:#17324e;--border:#2b4059;--shadow:0 16px 42px rgba(0,0,0,.30);--warn:#332317;--warn-border:#f59e0b;--header:#0b1728;--header-text:#f1f7ff;--header-muted:#9eb0c6}
*{box-sizing:border-box}html{min-height:100%;background:var(--bg);scroll-behavior:smooth}body{margin:0;min-height:100%;color:var(--text);background:var(--bg);font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.58}a{color:var(--primary)}button,input,select{font:inherit}
.site-header{position:sticky;top:0;z-index:50;color:var(--header-text);background:var(--header);border-bottom:1px solid rgba(255,255,255,.09);box-shadow:0 8px 28px rgba(0,0,0,.12)}.header-inner{max-width:1320px;min-height:70px;margin:auto;padding:10px 22px;display:flex;align-items:center;gap:24px}.brand{display:inline-flex;align-items:center;gap:11px;color:var(--header-text);text-decoration:none;white-space:nowrap}.brand-mark{width:39px;height:39px;border-radius:11px;display:grid;place-items:center;color:#fff;background:#0878dc;font-weight:800;font-size:1.25rem}.brand-text{font-weight:800;font-size:1.18rem}.main-nav{display:flex;align-items:center;gap:21px;flex:1}.main-nav a{color:var(--header-muted);text-decoration:none;font-weight:600;font-size:.94rem}.main-nav a:hover{color:var(--header-text)}.header-actions{display:flex;align-items:center;gap:8px}.theme-toggle,.menu-toggle{width:39px;height:39px;border:1px solid rgba(255,255,255,.22);border-radius:9px;color:var(--header-text);background:transparent;cursor:pointer}.theme-toggle:hover,.menu-toggle:hover{background:rgba(255,255,255,.09)}.menu-toggle{display:none}.language-select{min-width:145px;height:39px;padding:0 34px 0 12px;border:1px solid rgba(255,255,255,.22);border-radius:9px;color:#172033;background:#fff}html[data-theme=dark] .language-select{color:#e8eef7;background:#14243a;border-color:#3b536e}
.page-shell{max-width:1320px;margin:auto;padding:34px 22px 58px}.article-shell{max-width:1180px}.catalog-hero,.company-hero{padding:28px;border:1px solid var(--border);border-radius:25px;background:radial-gradient(circle at 92% 10%,rgba(34,133,230,.18),transparent 33%),linear-gradient(135deg,var(--surface),var(--surface2));box-shadow:var(--shadow)}.catalog-hero{display:grid;grid-template-columns:1.5fr .8fr;align-items:center;gap:28px}.eyebrow{display:inline-block;margin-bottom:10px;color:var(--primary);font-size:.78rem;font-weight:800;letter-spacing:.11em}.catalog-hero h1,.company-hero h1{margin:0 0 10px;color:var(--heading);font-size:clamp(1.8rem,4vw,3rem);line-height:1.08;letter-spacing:-.035em}.catalog-hero p,.hero-lead{max-width:850px;margin:0;color:var(--muted);font-size:1.03rem}.hero-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat-card{min-height:94px;padding:15px;border:1px solid var(--border);border-radius:15px;background:var(--surface)}.stat-card strong{display:block;color:var(--primary);font-size:1.65rem;line-height:1.1}.stat-card span{color:var(--muted);font-size:.87rem}
.note{padding:13px 15px;border-left:4px solid var(--primary);border-radius:8px;background:var(--surface2)}.info-note{margin:18px 0}.warning{border-left-color:var(--warn-border);background:var(--warn)}
.catalog-controls {
  display: grid;
  grid-template-columns: minmax(280px, 1.5fr) minmax(220px, .75fr) minmax(170px, .45fr) auto auto;gap:10px;margin:24px 0 8px}.search-box{min-height:46px;padding:0 13px;display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.search-box span{color:var(--muted);font-size:1.25rem}.search-box input{width:100%;border:0;outline:0;color:var(--text);background:transparent}.filter-select,.secondary-button{min-height:46px;padding:0 12px;border:1px solid var(--border);border-radius:12px;color:var(--text);background:var(--surface)}.secondary-button{padding:0 17px;cursor:pointer}.result-count{margin:8px 0 14px;color:var(--muted)}
.company-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.company-card{min-width:0;padding:18px;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 7px 22px rgba(28,58,89,.05);transition:.16s}.company-card:hover{transform:translateY(-2px);border-color:#8dbce9;box-shadow:var(--shadow)}.company-card-head,.hero-topline{display:flex;align-items:center;justify-content:space-between;gap:8px}.company-card h2{margin:14px 0 2px;color:var(--heading);font-size:1.13rem;line-height:1.25}.company-zh{margin:0;color:var(--muted);font-size:.9rem}.company-summary{margin:12px 0;color:var(--muted);font-size:.91rem}
.rank-pill,.status-badge,.profile-badge{display:inline-flex;align-items:center;border-radius:999px;font-weight:700;line-height:1.15}.rank-pill{padding:5px 9px;color:var(--primary2);background:var(--soft);font-size:.85rem}.status-badge{margin:2px 0 2px 5px;padding:4px 8px;font-size:.73rem}.status-badge.global{color:#1d4ed8;background:#dbeafe}.status-badge.new{color:#92400e;background:#fef3c7}html[data-theme=dark] .status-badge.global{color:#b9dcff;background:#17385a}html[data-theme=dark] .status-badge.new{color:#ffd995;background:#3a2915}.profile-badges{display:flex;flex-wrap:wrap;gap:5px}.profile-badge{padding:5px 9px;color:var(--primary2);background:var(--soft);border:1px solid rgba(74,145,214,.18);font-size:.76rem}.profile-badge.compact,.status-badge.compact{font-size:.68rem;padding:4px 7px}.card-cta{margin-top:auto;padding-top:15px;display:flex;align-items:center;justify-content:space-between;color:var(--primary);text-decoration:none;font-weight:750}.empty-results{margin:20px 0;padding:28px;border:1px dashed var(--border);border-radius:16px;text-align:center;color:var(--muted)}
.catalog-sources,.content-card,.mapping-card{margin-top:18px;padding:20px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.catalog-sources h2,.content-card h2,.mapping-card h2{margin:0 0 10px;color:var(--heading);font-size:1.23rem;line-height:1.25}.catalog-sources ul,.source-list{padding-left:20px}.catalog-sources li,.source-list li{margin:7px 0}
.breadcrumbs{margin:0 0 14px;display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.88rem}.breadcrumbs a{text-decoration:none}.company-hero{margin-bottom:18px}.company-hero .company-zh{margin-bottom:12px;font-size:1rem}.hero-topline{justify-content:flex-start;margin-bottom:14px}.article-grid.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.content-card{margin-top:0}
.process-flow{margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:9px;list-style:none}.process-flow li{min-height:92px;padding:12px;display:flex;align-items:flex-start;gap:9px;border:1px solid var(--border);border-radius:12px;background:var(--surface2)}.step-num{min-width:27px;height:27px;display:grid;place-items:center;border-radius:8px;color:#fff;background:var(--primary);font-size:.78rem;font-weight:800}
.package-list,.utility-list{display:flex;flex-wrap:wrap;gap:7px}.package-badge,.utility-link{display:inline-flex;align-items:center;border-radius:9px;text-decoration:none;line-height:1.25}.package-badge{padding:7px 10px;color:#fff;background:var(--primary2);font-size:.82rem;font-weight:750}.package-badge:hover{background:var(--primary)}.utility-link{padding:7px 9px;color:var(--primary2);background:var(--soft);border:1px solid rgba(75,143,208,.22);font-size:.82rem;font-weight:650}.utility-link:hover{border-color:var(--primary)}
.mapping-grid{margin-top:18px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.mapping-card{margin-top:0}.empty,.boundary-note{color:var(--muted)}.pilot-list{margin:0;padding-left:22px}.pilot-list li{margin:7px 0}.source-link{font-weight:700}.article-pager{margin-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.pager-link{min-height:72px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--border);border-radius:14px;color:var(--text);background:var(--surface);text-decoration:none}.pager-link.next{text-align:right}.pager-link small{display:block;color:var(--muted)}.pager-link strong{display:block;color:var(--heading)}
.site-footer{max-width:1320px;margin:auto;padding:26px 22px 38px;display:flex;justify-content:space-between;gap:25px;color:var(--muted);border-top:1px solid var(--border)}.site-footer p{margin:4px 0 0}.footer-links{display:flex;gap:15px;flex-wrap:wrap}.footer-links a{text-decoration:none}
@media(max-width:1050px){.company-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.main-nav{position:fixed;top:70px;left:12px;right:12px;padding:15px;display:none;flex-direction:column;align-items:stretch;gap:4px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.main-nav.open{display:flex}.main-nav a{padding:10px;color:var(--text)}.menu-toggle{display:block}.catalog-hero{grid-template-columns:1fr}.process-flow{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.header-inner{padding:9px 12px;gap:10px}.brand-text{display:none}.language-select{min-width:120px}.page-shell{padding:22px 12px 42px}.catalog-hero,.company-hero{padding:20px;border-radius:19px}.catalog-controls{grid-template-columns:1fr}.company-grid,.article-grid.two-columns,.mapping-grid,.process-flow,.article-pager{grid-template-columns:1fr}.hero-stats{grid-template-columns:1fr 1fr}.site-footer{flex-direction:column}}
@media print{.site-header,.site-footer,.breadcrumbs,.article-pager,.theme-toggle,.menu-toggle,.language-select{display:none!important}html,body{background:#fff!important;color:#111827!important}.page-shell{max-width:none;padding:0}.company-hero,.content-card,.mapping-card{color:#111827!important;background:#fff!important;box-shadow:none!important;break-inside:avoid}.mapping-grid,.article-grid.two-columns{display:block}.mapping-card,.content-card{margin:10px 0}a{color:#000!important;text-decoration:underline}}


.records-controls{grid-template-columns:minmax(280px,1fr) 220px 220px}.records-table{width:100%;border-collapse:collapse;font-size:.84rem}.records-table th,.records-table td{padding:9px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.records-table th{position:sticky;top:72px;background:var(--surface-2);z-index:2;color:var(--heading)}.source-position-list>div{padding:7px 0;border-bottom:1px solid var(--border)}.confidence-badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.72rem;font-weight:700}.confidence-badge.curated_top100{color:#166534;background:#dcfce7}.confidence-badge.source_tagged{color:#1d4ed8;background:#dbeafe}.confidence-badge.name_based{color:#92400e;background:#fef3c7}.confidence-badge.baseline{color:#475569;background:#e2e8f0}.status-badge.duplicate{color:#7c3aed;background:#ede9fe}.pagination{margin-top:18px;display:flex;justify-content:center;gap:6px;flex-wrap:wrap}.pagination button{min-width:38px;min-height:38px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text)}.pagination button.active{background:var(--primary);color:white}.catalog-meta{display:flex;justify-content:space-between;align-items:center;color:var(--muted)}.catalog-meta select{min-height:36px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text)}@media(max-width:850px){.records-controls{grid-template-columns:1fr}.records-table{font-size:.75rem}}

[hidden] {
  display: none !important;
}

.primary-button {
  min-height: 46px;
  padding: 0 17px;
  border: 1px solid var(--primary);
  border-radius: 12px;
  color: #fff;
  background: var(--primary);
  cursor: pointer;
  font-weight: 750;
}

.primary-button:hover {
  background: var(--primary-2);
  border-color: var(--primary-2);
}

[hidden]{display:none!important}.catalog-controls{grid-template-columns:minmax(280px,1.4fr) repeat(4,minmax(150px,.65fr)) auto auto}.primary-button{min-height:46px;padding:0 17px;border:1px solid #0b5eae;border-radius:12px;color:#fff;background:#0b5eae;cursor:pointer;font-weight:750}.primary-button:hover,.primary-button:focus-visible{color:#fff;background:#083f79;border-color:#083f79}html[data-theme="light"] .primary-button,html[data-theme="light"] .primary-button:hover,html[data-theme="light"] .primary-button:focus-visible,html[data-theme="light"] .primary-button:active{color:#fff!important;background:#0b5eae!important;border-color:#0b5eae!important;opacity:1!important;visibility:visible!important;text-shadow:none!important}html[data-theme="light"] .primary-button:hover,html[data-theme="light"] .primary-button:focus-visible{background:#083f79!important;border-color:#083f79!important}.tier-badge{padding:4px 8px;border-radius:999px;font-size:.66rem;font-weight:700}.tier-badge.official_top100{color:#7c2d12;background:#ffedd5}.tier-badge.selected_manufacturer{color:#1d4ed8;background:#dbeafe}.company-subname,.romanized-note{margin:3px 0;color:var(--muted);font-size:.82rem}@media(max-width:1240px){.catalog-controls{grid-template-columns:repeat(3,1fr)}.search-box{grid-column:1/-1}}@media(max-width:600px){.catalog-controls{grid-template-columns:1fr}.search-box{grid-column:auto}}
.catalog-controls {
  grid-template-columns:
    minmax(280px, 1.45fr)
    minmax(220px, .80fr)
    minmax(190px, .72fr)
    minmax(180px, .68fr)
    minmax(150px, .52fr)
    auto
    auto !important;
}

html[data-theme="light"] .primary-button {
  color: #ffffff !important;
  background: #0b5eae !important;
  border-color: #0b5eae !important;
  opacity: 1 !important;
  visibility: visible !important;
}

html[data-theme="light"] .primary-button:hover,
html[data-theme="light"] .primary-button:focus-visible,
html[data-theme="light"] .primary-button:active {
  color: #ffffff !important;
  background: #083f79 !important;
  border-color: #083f79 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

@media (max-width: 1240px) {
  .catalog-controls {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .search-box { grid-column: 1 / -1; }
}

@media (max-width: 600px) {
  .catalog-controls { grid-template-columns: 1fr !important; }
  .search-box { grid-column: auto; }
}

.catalog-controls {
  grid-template-columns:
    minmax(270px, 1.35fr)
    minmax(190px, .72fr)
    minmax(170px, .62fr)
    minmax(180px, .68fr)
    minmax(170px, .62fr)
    minmax(145px, .50fr)
    auto
    auto !important;
}

html[data-theme="light"] .primary-button,
html[data-theme="light"] .primary-button:hover,
html[data-theme="light"] .primary-button:focus-visible,
html[data-theme="light"] .primary-button:active {
  color: #ffffff !important;
  opacity: 1 !important;
  visibility: visible !important;
}

html[data-theme="light"] .primary-button {
  background: #0b5eae !important;
  border-color: #0b5eae !important;
}

html[data-theme="light"] .primary-button:hover,
html[data-theme="light"] .primary-button:focus-visible,
html[data-theme="light"] .primary-button:active {
  background: #083f79 !important;
  border-color: #083f79 !important;
}

@media (max-width: 1240px) {
  .catalog-controls {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .search-box { grid-column: 1 / -1; }
}

@media (max-width: 600px) {
  .catalog-controls { grid-template-columns: 1fr !important; }
  .search-box { grid-column: auto; }
}

/* FUZKK-ATLAS-UI-PATCH-V1
   1. Reset filters is placed on a dedicated next row, aligned right.
   2. Footer copyright occupies the final full-width row.
*/
.catalog-controls [data-clear-filters] {
  grid-column: 1 / -1 !important;
  justify-self: end !important;
  align-self: center !important;
  width: auto !important;
  min-width: 170px;
}

.site-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

.site-footer > .footer-main {
  flex: 1 1 100%;
  min-width: 0;
}

.site-footer .site-copyright {
  flex: 0 0 100%;
  width: 100%;
  margin: 16px 0 0;
  padding: 14px 0 0;
  border-top: 1px solid var(--border, rgba(127, 127, 127, .25));
  text-align: center;
  font-size: .82rem;
  opacity: .78;
}

@media (max-width: 600px) {
  .catalog-controls [data-clear-filters] {
    justify-self: stretch !important;
    width: 100% !important;
  }
}
