/* Global LOCODE Hub */
:root{--accent:#0ea5e9;--accent-hover:#0284c7;--pico-primary:#0ea5e9;--pico-primary-hover:#0284c7;--body-bg:#f8fafc;--text-color:#1e293b;--text-muted:#64748b;--heading-color:#0f172a;--card-bg:#fff;--card-border:#e2e8f0;font-family:'Inter',system-ui,sans-serif}
body{margin:0;background:var(--body-bg);color:var(--text-color);line-height:1.6}
.site-header{background:#0f172a;color:#fff;padding:0 1.5rem;box-shadow:0 1px 3px rgba(0,0,0,0.1)}
.header-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0.75rem 0}
.header-inner a{color:#94a3b8;text-decoration:none;margin-left:1.2rem;font-size:0.85rem}.header-inner a:hover{color:#fff}
.logo{color:#fff!important;font-size:1.05rem;margin-left:0!important;margin-right:0.5rem}.logo strong{color:#60a5fa}
nav{display:flex;flex-wrap:wrap;gap:0.2rem}
.site-footer{background:#0f172a;color:#94a3b8;padding:2rem 1.5rem;margin-top:3rem}
.footer-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem}
.footer-inner ul{list-style:none;padding:0;margin:0.5rem 0 0}.footer-inner li{margin-bottom:0.3rem}
.footer-inner a{color:#64748b;text-decoration:none;font-size:0.9rem}
.footer-bottom{max-width:1200px;margin:1.5rem auto 0;padding-top:1rem;border-top:1px solid rgba(255,255,255,0.1);font-size:0.8rem;text-align:center}
.breadcrumb{padding:1rem 0;color:var(--text-muted);font-size:0.85rem;max-width:1200px;margin:0 auto}.breadcrumb a{color:var(--text-muted);text-decoration:none}
.main-content{max-width:1200px;margin:0 auto;padding:0 1.5rem}
h1{color:var(--heading-color);font-size:1.8rem;margin:0 0 1rem}h2{color:var(--heading-color);font-size:1.3rem;margin:1.5rem 0 0.75rem}
table{width:100%;border-collapse:collapse;font-size:0.9rem;margin:1rem 0}
th{text-align:left;padding:0.5rem 0.75rem;background:#f1f5f9;font-weight:600;border-bottom:2px solid #e2e8f0}
td{padding:0.5rem 0.75rem;border-bottom:1px solid #e2e8f0}
code{background:#f1f5f9;padding:0.15em 0.4em;border-radius:3px;font-size:0.9em}
mark{background:#dbeafe;color:#1e40af;padding:0.15em 0.5em;border-radius:3px;font-weight:600;margin-right:0.5rem}
.micro-specs{margin:1rem 0;display:flex;flex-wrap:wrap;gap:0.5rem}
.specs-box{background:var(--card-bg);border:1px solid var(--card-border);border-radius:8px;padding:1.25rem;margin:1.25rem 0}
.tech-note{background:#fef3c7;border-left:3px solid #f59e0b;padding:0.75rem 1rem;margin:1rem 0;border-radius:0 6px 6px 0;font-size:0.9rem}

.country-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:0.75rem;margin:1rem 0}
.country-card{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:var(--card-bg);border:1px solid var(--card-border);border-radius:8px;text-decoration:none;color:inherit;transition:border-color .2s}.country-card:hover{border-color:var(--accent)}
.featured-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:0.75rem;margin:1rem 0}
.featured-card{display:block;padding:1rem 1.25rem;background:var(--card-bg);border:1px solid var(--card-border);border-radius:8px;text-decoration:none;color:inherit;transition:border-color .2s}
.featured-card:hover{border-color:var(--accent)}.featured-card strong{display:block;color:var(--heading-color);margin:0.25rem 0}
.type-badge{font-size:0.8rem;color:var(--accent);font-weight:600}
.faq-section details{padding:0.6rem 0;border-bottom:1px solid var(--card-border)}
.faq-section summary{cursor:pointer;font-weight:600;padding:0.4rem 0}.faq-section p{padding:0.3rem 0 0.6rem;color:var(--text-muted)}
.hero-stats{display:flex;gap:2rem;margin:1.5rem 0}.hero-stat{text-align:center}
.hero-stat strong{display:block;font-size:2rem;color:var(--accent);line-height:1.2}.hero-stat span{font-size:0.85rem;color:var(--text-muted)}
.stat-badge{display:inline-block;background:#dbeafe;color:#1e40af;padding:0.2em 0.6em;border-radius:4px;font-size:0.9rem;font-weight:600;margin-right:0.5rem}
.two-col{display:grid;grid-template-columns:1fr 320px;gap:1.5rem;margin-top:1rem}.col-main{min-width:0}.col-side{position:sticky;top:1rem;align-self:start}
.related-ports{background:var(--card-bg);border:1px solid var(--card-border);border-radius:8px;padding:1rem;margin-bottom:1rem}
.tag-cloud{display:flex;flex-wrap:wrap;gap:0.4rem}.tag{background:#f1f5f9;color:#475569;padding:0.2em 0.6em;border-radius:4px;font-size:0.85rem;font-family:monospace}
.data-source-box{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:1rem;font-size:0.82rem;color:#92400e;margin-bottom:1rem}
.history-box{background:var(--card-bg);border:1px solid var(--card-border);border-radius:8px;padding:1.25rem;margin:1.25rem 0;font-size:0.95rem;line-height:1.8}
.nearby-ports{margin:1.25rem 0}.port-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:0.5rem}
.port-mini-card{display:flex;align-items:center;gap:0.5rem;padding:0.6rem 0.75rem;background:var(--card-bg);border:1px solid var(--card-border);border-radius:6px;text-decoration:none;color:inherit;font-size:0.85rem;transition:border-color .15s}.port-mini-card:hover{border-color:var(--accent)}
.hamburger-btn{display:none;background:none;border:none;cursor:pointer;padding:8px;flex-direction:column;gap:5px;z-index:1001}.hamburger-btn span{display:block;width:24px;height:2px;background:#fff;transition:transform .25s,opacity .25s;border-radius:2px}.hamburger-btn.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger-btn.open span:nth-child(2){opacity:0}.hamburger-btn.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-nav{display:none;position:fixed;top:0;right:0;width:100%;height:100vh;background:rgba(15,23,42,0.98);z-index:1000;padding:5rem 2rem 2rem;flex-direction:column;gap:1rem}.mobile-nav.open{display:flex}.mobile-nav a{color:#94a3b8;font-size:1.15rem;font-weight:600;text-decoration:none;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.08)}.mobile-nav a:hover{color:#fff}.mobile-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:999}.mobile-overlay.open{display:block}.trust-bar{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin:2rem 0;padding:1rem;background:rgba(255,255,255,0.02);border-radius:8px;border:1px solid var(--card-border)}.trust-stat{text-align:center;min-width:100px}.trust-stat .stat-number{display:block;font-size:1.5rem;font-weight:900;color:var(--pico-primary,#0ea5e9)}.trust-stat .stat-label{display:block;font-size:0.75rem;color:var(--text-muted);margin-top:0.25rem}.methodology{margin:3rem 0;padding:2rem;background:rgba(255,255,255,0.02);border-radius:10px;border:1px solid var(--card-border)}.methodology h2{margin-top:0;font-size:1.2rem}.methodology-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:1.5rem}.methodology-step{padding:1rem;background:var(--card-bg);border-radius:8px;border-left:3px solid var(--pico-primary,#0ea5e9)}.methodology-step h3{font-size:0.9rem;margin:0 0 0.5rem 0}.methodology-step p{font-size:0.8rem;color:var(--text-muted);margin:0;line-height:1.5}.data-provenance{margin:2rem 0;padding:1.5rem;background:rgba(255,255,255,0.02);border-radius:10px;border:1px solid var(--card-border)}.data-provenance h2{margin-top:0;font-size:1.1rem}.data-provenance ul{list-style:none;padding:0;margin:1rem 0 0 0}.data-provenance li{padding:0.5rem 0;font-size:0.85rem;color:var(--text-muted);border-bottom:1px solid var(--card-border)}.data-provenance li:last-child{border-bottom:none}.data-provenance li strong{color:var(--pico-primary,#0ea5e9)}@media(max-width:768px){.two-col{grid-template-columns:1fr}.col-side{position:static}.hero-stats{flex-wrap:wrap;gap:1rem}.header-inner nav{display:none}.hamburger-btn{display:flex}.header-inner{flex-direction:row}.main-content{padding:0 .75rem}.footer-inner{grid-template-columns:1fr 1fr}}