:root { --ink:#15243a; --muted:#637083; --line:#d9e0e8; --canvas:#f5f7fa; --panel:#ffffff; --green:#168456; --amber:#a8600d; --navy:#0f1f36; }
* { box-sizing:border-box; }
body { margin:0; background:var(--canvas); color:var(--ink); font:16px/1.55 "Segoe UI", "Microsoft YaHei", sans-serif; }
a { color:inherit; text-decoration:none; }
.site-header, main, footer { width:min(1120px, calc(100% - 40px)); margin-inline:auto; }
.site-header { height:72px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.brand { display:flex; align-items:center; gap:10px; font-weight:700; font-size:19px; }
.brand-mark { display:grid; place-items:center; width:31px; height:31px; background:var(--navy); color:#fff; font-size:16px; }
nav { display:flex; gap:24px; font-size:14px; color:var(--muted); }
nav a { padding:24px 0 20px; border-bottom:3px solid transparent; }
nav a.active, nav a:hover { color:var(--ink); border-bottom-color:var(--green); }
.intro { padding:72px 0 52px; max-width:750px; }
.eyebrow { margin:0 0 8px; color:var(--green); font-size:12px; font-weight:700; letter-spacing:1px; }
h1, h2 { margin:0; line-height:1.15; letter-spacing:0; }
h1 { font-size:42px; } h2 { font-size:25px; }
.intro > p:last-child, .source-title p, .about > p:last-child, .subscription-panel p { color:var(--muted); margin:16px 0 0; max-width:700px; }
.directory, .standards, .about, .subscription-panel, .metadata-grid, .rule-note { border-top:1px solid var(--line); }
.directory { padding:28px 0 62px; }
.section-heading { display:flex; justify-content:space-between; align-items:end; margin-bottom:22px; }
.directory-count { margin:0; color:var(--muted); font-size:14px; }
.source-table-wrap { overflow-x:auto; background:var(--panel); border:1px solid var(--line); }
.source-table { width:100%; min-width:760px; border-collapse:collapse; text-align:left; }
.source-table th { padding:13px 16px; color:var(--muted); font-size:12px; font-weight:600; background:#f9fafb; }
.source-table td { padding:17px 16px; border-top:1px solid var(--line); font-size:14px; }
.source-name { display:block; font-weight:700; color:var(--ink); }.source-name:hover { color:var(--green); }
small { display:block; margin-top:3px; color:var(--muted); font:12px/1.3 ui-monospace, Consolas, monospace; }
.status { display:inline-block; padding:3px 8px; font-size:12px; font-weight:700; white-space:nowrap; }.reviewing { background:#fff4e6; color:var(--amber); }
.standards { display:grid; grid-template-columns: .75fr 1.25fr; gap:60px; padding:58px 0; }.standard-list { list-style:none; margin:0; padding:0; }.standard-list li { display:flex; gap:18px; padding:0 0 20px; margin-bottom:20px; border-bottom:1px solid var(--line); }.standard-list li:last-child { border:0; margin:0; }.standard-list span { color:var(--green); font:700 14px ui-monospace, Consolas, monospace; }.standard-list strong { font-size:17px; }.standard-list p { margin:4px 0 0; color:var(--muted); font-size:14px; }
.about { padding:58px 0 72px; max-width:820px; }
footer { display:flex; gap:18px; padding:24px 0 36px; border-top:1px solid var(--line); color:var(--muted); font-size:13px; }
.source-detail { padding:36px 0 72px; }.back-link { display:inline-block; margin-bottom:42px; color:var(--muted); font-size:14px; }.back-link:hover { color:var(--green); }
.source-title { display:flex; justify-content:space-between; gap:36px; align-items:start; padding-bottom:50px; }.source-title h1 { font-size:38px; }
.subscription-panel { display:grid; grid-template-columns:1fr 1fr; gap:44px; padding:40px 0; }.pending-url { align-self:center; background:var(--panel); border:1px solid var(--line); padding:16px; }.pending-url code { display:block; overflow-wrap:anywhere; font:13px/1.45 ui-monospace, Consolas, monospace; }.pending-url span { display:inline-block; margin-top:10px; color:var(--amber); font-size:12px; font-weight:700; }
.metadata-grid { display:grid; grid-template-columns:repeat(3, 1fr); }.metadata-grid dl { margin:0; padding:22px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }.metadata-grid dl:nth-child(3n) { border-right:0; }.metadata-grid dt { color:var(--muted); font-size:12px; }.metadata-grid dd { margin:6px 0 0; font-weight:600; font-size:14px; }.rule-note { padding:46px 0 0; max-width:820px; }.rule-note p:last-child { color:var(--muted); }
@media (max-width:700px) { .site-header, main, footer { width:min(100% - 28px, 1120px); }.site-header { height:64px; }.site-header nav { gap:14px; font-size:12px; }.site-header nav a { padding:21px 0 17px; }.intro { padding:48px 0 38px; } h1 { font-size:32px; } h2 { font-size:22px; }.section-heading, .source-title { display:block; }.directory-count, .source-title .status { margin-top:14px; }.standards, .subscription-panel { grid-template-columns:1fr; gap:28px; }.metadata-grid { grid-template-columns:1fr; }.metadata-grid dl, .metadata-grid dl:nth-child(3n) { border-right:0; }.source-detail { padding-top:28px; } footer { flex-wrap:wrap; gap:8px 16px; } }
@media (max-width:700px) { .source-table-wrap { overflow:visible; }.source-table, .source-table tbody, .source-table tr, .source-table td { display:block; min-width:0; width:100%; }.source-table thead { display:none; }.source-table td { border:0; padding:7px 16px; }.source-table td:first-child { padding-top:16px; }.source-table td:last-child { padding-bottom:16px; }.source-table td::before { content:attr(data-label); display:block; color:var(--muted); font-size:11px; font-weight:600; margin-bottom:1px; } }
