
:root{--ink:#071827;--muted:#52606d;--cream:#f7f3ea;--paper:#fffdf8;--gold:#bd8b2f;--red:#9e2a2b;--blue:#143d59;--line:#d9d1c2;--shadow:0 18px 50px rgba(7,24,39,.10);--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:17px;line-height:1.55}.wrap{width:min(1180px,calc(100% - 36px));margin:0 auto}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:16px;top:16px;background:#fff;padding:10px 14px;z-index:99}.site-header{position:sticky;top:0;z-index:20;background:rgba(247,243,234,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(7,24,39,.1)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:78px;gap:22px}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--ink);color:#fff;font-weight:900;letter-spacing:.02em}.brand strong{display:block;font-size:16px;line-height:1.2}.brand small{display:block;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.12em;margin-top:3px}.site-header nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}.site-header nav a{color:var(--ink);text-decoration:none;font-size:14px;font-weight:700}.site-header nav a:hover{text-decoration:underline}.loading{min-height:50vh;display:grid;place-items:center;color:var(--muted)}.hero{padding:82px 0 60px;background:linear-gradient(135deg,#071827 0%,#143d59 70%,#1d526f 100%);color:#fff}.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.15em;font-size:12px;font-weight:800;color:#f1c66e}.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(42px,7vw,78px);line-height:.98;max-width:980px;margin:18px 0}.hero p{font-size:21px;max-width:820px;color:#dbe7ee}.hero-actions,.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 18px;border-radius:999px;text-decoration:none;font-weight:800;border:1px solid transparent;cursor:pointer}.btn-primary{background:#f1c66e;color:#071827}.btn-secondary{border-color:rgba(255,255,255,.45);color:#fff}.btn-dark{background:var(--ink);color:#fff}.section{padding:62px 0}.section h1,.section h2{font-family:Georgia,"Times New Roman",serif;line-height:1.05}.section h1{font-size:clamp(36px,5vw,60px)}.section h2{font-size:clamp(30px,4vw,48px);margin:0 0 12px}.section-lead{font-size:19px;color:var(--muted);max-width:820px}.section-dark{background:var(--ink);color:#fff}.section-dark .section-lead,.section-dark .muted{color:#d4dde4}.metric-grid,.card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:26px}.metric,.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}.section-dark .metric,.section-dark .card{background:#0d2638;border-color:#234258}.metric .label,.card .label{font-size:12px;text-transform:uppercase;letter-spacing:.10em;font-weight:800;color:var(--muted)}.section-dark .metric .label,.section-dark .card .label{color:#a9bbc8}.metric .value{font-size:34px;font-weight:900;margin-top:8px}.metric .note{font-size:13px;color:var(--muted);margin-top:6px}.section-dark .metric .note{color:#a9bbc8}.systems-panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;margin-top:16px;box-shadow:var(--shadow)}.systems-panel .label{font-size:12px;text-transform:uppercase;letter-spacing:.10em;font-weight:800;color:var(--muted)}.system-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.system-chip{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#eef2f4;border:1px solid #d9e1e5;color:var(--ink);font-size:13px;font-weight:800}.search-panel{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.search-panel input,.search-panel select{min-height:48px;padding:10px 14px;border:1px solid #bdb4a5;border-radius:12px;background:#fff;font:inherit}.search-panel input{flex:1;min-width:260px}.directory{display:grid;gap:10px}.directory-row{display:grid;grid-template-columns:minmax(160px,1.5fr) repeat(3,minmax(90px,.7fr));gap:12px;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:14px 16px;text-decoration:none;color:inherit}.directory-row:hover{border-color:var(--gold);transform:translateY(-1px)}.directory-row strong{font-size:16px}.directory-row span{color:var(--muted);font-size:14px}.rank-list{display:grid;gap:10px;margin-top:24px}.rank-row{display:grid;grid-template-columns:60px minmax(180px,1fr) 140px 160px;gap:12px;align-items:center;padding:13px 16px;border-bottom:1px solid var(--line)}.rank-row .rank{font-weight:900;font-size:22px}.tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.tab{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:9px 14px;font-weight:800;cursor:pointer}.tab.active{background:var(--ink);color:#fff}.profile-head{padding:54px 0 34px}.profile-head h1{margin:6px 0}.profile-meta{color:var(--muted)}.notice{border-left:5px solid var(--gold);background:#fff7e2;padding:16px 18px;border-radius:12px;margin:24px 0}.notice.red{border-left-color:var(--red);background:#fff0f0}.grade-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.grade{padding:18px;background:var(--paper);border:1px solid var(--line);border-radius:14px;text-align:center}.grade strong{display:block;font-size:28px}.chart-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:22px;margin-top:22px;box-shadow:var(--shadow)}.chart-card svg{width:100%;height:auto;overflow:visible}.chart-card .chart-label{font-size:12px;fill:#52606d}.chart-card .chart-line{fill:none;stroke:#143d59;stroke-width:3}.chart-card .chart-dot{fill:#bd8b2f}.timeline{position:relative;margin-top:34px}.timeline:before{content:"";position:absolute;left:18px;top:0;bottom:0;width:2px;background:var(--line)}.timeline-item{position:relative;margin-left:54px;padding:0 0 34px}.timeline-item:before{content:"";position:absolute;left:-44px;top:4px;width:16px;height:16px;border-radius:50%;background:var(--gold);border:4px solid var(--cream)}.timeline-item time{font-weight:900;color:var(--red)}.timeline-item h3{margin:4px 0 6px;font-size:23px}.timeline-item p{margin:0 0 7px;color:var(--muted)}.timeline-item a{font-size:14px}.compare-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.compare-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.compare-card h3{font-size:26px;margin:0 0 12px}.compare-line{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding:9px 0;font-size:14px}.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.site-footer{background:#06131e;color:#d9e2e8;padding:42px 0;margin-top:60px}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.site-footer a{color:#f1c66e}.site-footer p{margin:6px 0}.muted{color:var(--muted)}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#e8edf1;color:#143d59;font-size:12px;font-weight:800}.table-wrap{overflow:auto;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);margin-top:22px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:12px;text-transform:uppercase;letter-spacing:.07em;background:#f4eee3}td{font-size:14px}@media(max-width:950px){.nav-wrap{align-items:flex-start;padding:14px 0}.site-header nav{display:none}.metric-grid,.card-grid{grid-template-columns:repeat(2,1fr)}.compare-grid{grid-template-columns:1fr}.directory-row{grid-template-columns:1fr 1fr}.rank-row{grid-template-columns:48px 1fr 100px}.rank-row span:last-child{display:none}.method-grid,.footer-grid{grid-template-columns:1fr}}@media(max-width:580px){.metric-grid,.card-grid,.grade-grid{grid-template-columns:1fr 1fr}.hero{padding-top:56px}.directory-row{grid-template-columns:1fr}.rank-row{grid-template-columns:44px 1fr}.rank-row .value{display:none}.wrap{width:min(100% - 24px,1180px)}}
