/* KORUMA 中国官网 · 统一样式 */
:root{
  --navy:#0d1b2a; --steel:#1b263b; --gold:#b8860b; --gold-l:#d8a72a;
  --line:#dfe4ea; --text:#1c2430; --muted:#5c6b7a; --bg:#f6f7f9; --white:#fff;
  --cjk:"PingFang SC","Microsoft YaHei","Hiragino Sans GB","Source Han Sans SC",-apple-system,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:var(--cjk);color:var(--text);background:var(--bg);line-height:1.85;-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
ul{list-style:none;}
.container{max-width:1120px;margin:0 auto;padding:0 24px;}
.todo{color:var(--gold);font-size:.85em;border-bottom:1px dashed var(--gold);}

/* ---------- Header ---------- */
header{background:var(--navy);color:#fff;position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(255,255,255,.08);}
.hd{display:flex;align-items:center;justify-content:space-between;height:68px;gap:24px;}
.hd > *{min-width:0;}
.logo{display:flex;flex-direction:column;line-height:1.25;}
.logo b{font-size:1.3rem;letter-spacing:.16em;font-weight:700;}
.logo span{font-size:.6rem;letter-spacing:.24em;color:#93a5b8;font-weight:400;}
nav.main{flex:1;min-width:0;display:flex;justify-content:flex-end;}
nav.main ul{display:flex;gap:32px;font-size:.93rem;}
nav.main a{position:relative;padding:22px 0;display:block;color:#cfd8e3;transition:color .2s;}
nav.main a::after{content:"";position:absolute;left:0;bottom:16px;width:0;height:2px;background:var(--gold);transition:width .25s;}
nav.main a:hover,nav.main a.on{color:#fff;}
nav.main a:hover::after,nav.main a.on::after{width:100%;}
/* 区域站点入口 */
.region-link{display:flex;align-items:center;gap:6px;flex:0 0 auto;font-size:.78rem;color:#9fb0c3;
  border:1px solid rgba(255,255,255,.22);padding:5px 10px;letter-spacing:.04em;white-space:nowrap;transition:.2s;}
.region-link:hover{color:#fff;border-color:rgba(184,134,11,.6);}
.globe-ico{width:13px;height:13px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.5;}

/* ---------- 语言菜单 ---------- */
.lang{position:relative;margin-left:12px;flex:0 0 auto;}
.lang-btn{background:transparent;border:1px solid rgba(255,255,255,.22);color:#cfd8e3;font-family:inherit;
  font-size:.78rem;letter-spacing:.04em;padding:5px 10px;cursor:pointer;display:flex;align-items:center;gap:6px;white-space:nowrap;transition:.2s;}
.lang-btn:hover{border-color:rgba(184,134,11,.6);color:#fff;}
.lang-btn .caret{font-size:.6rem;opacity:.7;}
.lang.open .lang-btn{border-color:var(--gold);color:var(--gold);}
.lang-menu{display:none;position:absolute;right:0;top:calc(100% + 6px);min-width:186px;background:#fff;
  border:1px solid var(--line);box-shadow:0 14px 34px rgba(13,27,42,.18);z-index:80;padding:6px 0;max-height:70vh;overflow-y:auto;}
.lang.open .lang-menu{display:block;}
.lang-menu li{list-style:none;}
.lang-menu a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 16px;
  font-size:.84rem;color:var(--text);transition:.16s;}
.lang-menu a:hover{background:var(--bg);color:var(--navy);}
.lang-menu a.on{background:rgba(184,134,11,.1);color:var(--navy);font-weight:600;}
.lang-menu a.on::before{content:"✓";color:var(--gold);font-size:.75rem;margin-right:2px;}
.lang-menu a.pending{color:#9aa7b4;}
.lang-menu .ltag{font-size:.66rem;color:#9aa7b4;border:1px solid var(--line);padding:0 5px;letter-spacing:.02em;}

/* 语言未交付提示条 */
#langNotice{display:none;background:#fff8e6;border-bottom:1px solid #f0dfae;color:#7a5b12;
  font-size:.82rem;text-align:center;padding:9px 16px;letter-spacing:.02em;}
#langNotice.show{display:block;}

/* ---------- RTL（维吾尔语等）---------- */
html[dir="rtl"] body{direction:rtl;}
html[dir="rtl"] .hero .lead,html[dir="rtl"] .sec-lead{margin-left:auto;margin-right:0;}
html[dir="rtl"] h2::after{margin-left:auto;margin-right:0;}
html[dir="rtl"] .feat{border-left:none;border-right:2px solid var(--gold);padding-left:0;padding-right:20px;}
html[dir="rtl"] .lang-menu{right:auto;left:0;}

/* ---------- Hero ---------- */
.hero{background:linear-gradient(135deg,#0d1b2a 0%,#1b263b 62%,#24344d 100%);color:#fff;padding:104px 0 92px;position:relative;overflow:hidden;}
.hero::before{content:"";position:absolute;inset:0;
  background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px 88px);pointer-events:none;}
.hero .container{position:relative;}
.hero .eyebrow{font-size:.72rem;letter-spacing:.32em;color:var(--gold);margin-bottom:22px;}
.hero h1{font-size:2.35rem;font-weight:700;letter-spacing:.04em;line-height:1.55;}
.hero .lead{margin-top:22px;color:#bccadb;max-width:660px;font-size:1rem;}
.hero .btns{margin-top:36px;display:flex;gap:14px;flex-wrap:wrap;}
.btn{display:inline-block;padding:13px 28px;font-size:.9rem;letter-spacing:.08em;border:1px solid var(--gold);transition:.22s;}
.btn.solid{background:var(--gold);color:#111;border-color:var(--gold);}
.btn.solid:hover{background:var(--gold-l);border-color:var(--gold-l);}
.btn.ghost{color:var(--gold);}
.btn.ghost:hover{background:rgba(184,134,11,.12);}

/* ---------- Stats strip ---------- */
.stats{background:#fff;border-bottom:1px solid var(--line);}
.stats ul{display:grid;grid-template-columns:repeat(4,1fr);}
.stats li{padding:26px 20px;text-align:center;border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:flex-start;min-height:112px;}
.stats li:last-child{border-right:none;}
.stats strong{display:block;font-size:1.22rem;line-height:1.45;color:var(--navy);letter-spacing:.02em;}
.stats span{font-size:.8rem;color:var(--muted);letter-spacing:.1em;margin-top:2px;}

/* ---------- Sections ---------- */
section{padding:78px 0;}
section.alt{background:#fff;}
.sec-head{margin-bottom:42px;}
.sec-head .kicker{font-size:.72rem;letter-spacing:.3em;color:var(--gold);display:block;margin-bottom:12px;}
h2{font-size:1.6rem;letter-spacing:.06em;font-weight:700;color:var(--navy);}
h2::after{content:"";display:block;width:46px;height:2px;background:var(--gold);margin-top:14px;}
.sec-lead{color:var(--muted);font-size:.94rem;margin-top:18px;max-width:780px;}

/* ---------- Cards ---------- */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px;}
.card{background:#fff;border:1px solid var(--line);padding:0 0 26px;transition:.24s;position:relative;}
section.alt .card{background:var(--bg);}
.card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(13,27,42,.09);border-color:#c8d2dd;}
.card .bar{height:3px;background:var(--navy);margin-bottom:22px;}
.card h3{font-size:1.05rem;margin:0 26px 10px;color:var(--navy);letter-spacing:.03em;}
.card h3 em{display:block;font-style:normal;font-size:.72rem;letter-spacing:.18em;color:var(--gold);margin-top:4px;font-weight:400;}
.card p{font-size:.88rem;color:var(--muted);margin:0 26px;}
.card .tags{margin:16px 26px 0;display:flex;flex-wrap:wrap;gap:6px;}
.tag{font-size:.72rem;border:1px solid var(--line);padding:2px 9px;color:#44536a;background:#fff;letter-spacing:.04em;}

/* ---------- Spec table ---------- */
table{width:100%;border-collapse:collapse;background:#fff;font-size:.9rem;}
th,td{border:1px solid var(--line);padding:13px 16px;text-align:left;vertical-align:top;}
thead th{background:var(--navy);color:#fff;font-weight:500;letter-spacing:.08em;font-size:.85rem;}
tbody th{background:#eef1f5;width:180px;font-weight:600;white-space:nowrap;}
tbody tr:nth-child(even) td{background:#fafbfc;}

/* ---------- Feature list ---------- */
.feats{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:30px;}
.feat{border-left:2px solid var(--gold);padding-left:20px;}
.feat strong{display:block;color:var(--navy);margin-bottom:8px;font-size:.98rem;}
.feat p{font-size:.88rem;color:var(--muted);}

/* ---------- Contact ---------- */
.contact-wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:44px;align-items:start;}
.info-box{background:#fff;border:1px solid var(--line);padding:34px;}
.info-box dl{display:grid;grid-template-columns:96px 1fr;row-gap:16px;font-size:.92rem;}
.info-box dt{color:var(--muted);font-size:.85rem;letter-spacing:.06em;}
.info-box dd{color:var(--text);}
form{background:#fff;border:1px solid var(--line);padding:34px;}
label{display:block;font-size:.82rem;color:var(--muted);margin-bottom:7px;letter-spacing:.06em;}
input,textarea,select{width:100%;border:1px solid var(--line);padding:11px 13px;font-family:inherit;font-size:.92rem;background:#fbfcfd;margin-bottom:18px;outline:none;transition:.2s;}
input:focus,textarea:focus,select:focus{border-color:var(--gold);background:#fff;}
textarea{min-height:120px;resize:vertical;}
button{background:var(--navy);color:#fff;border:none;padding:14px 34px;font-family:inherit;font-size:.9rem;letter-spacing:.1em;cursor:pointer;transition:.2s;}
button:hover{background:var(--gold);}
.note{font-size:.78rem;color:var(--muted);margin-top:14px;line-height:1.7;}

/* ---------- Page hero (inner pages) ---------- */
.phero{background:linear-gradient(135deg,#0d1b2a,#1b263b);color:#fff;padding:64px 0 56px;}
.phero .kicker{font-size:.72rem;letter-spacing:.3em;color:var(--gold);}
.phero h1{font-size:1.9rem;margin-top:14px;letter-spacing:.05em;}
.phero p{color:#bccadb;font-size:.94rem;margin-top:14px;max-width:720px;}

/* ---------- Footer ---------- */
footer{background:var(--navy);color:#8fa0b3;padding:46px 0 26px;font-size:.82rem;}
.ft{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.1);}
.ft h4{color:#fff;font-size:.86rem;letter-spacing:.14em;margin-bottom:14px;font-weight:500;}
.ft li{margin-bottom:9px;}
.ft a:hover{color:var(--gold);}
.ft .brand b{color:#fff;font-size:1.15rem;letter-spacing:.16em;display:block;margin-bottom:10px;}
.ft .brand p{line-height:1.9;font-size:.8rem;}
.copy{padding-top:22px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.76rem;color:#6d8098;letter-spacing:.04em;}
.copy a{color:#8fa0b3;}
.copy a:hover{color:var(--gold);}

/* ---------- 区域页：地球与国旗按钮 ---------- */
.globe-hero{background:radial-gradient(120% 90% at 50% 0%,#1b3a57 0%,#0d1b2a 55%,#080f19 100%);
  color:#fff;padding:62px 0 54px;text-align:center;overflow:hidden;position:relative;}
.globe-hero::before{content:"";position:absolute;inset:0;
  background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.028) 0 1px,transparent 1px 92px);pointer-events:none;}
.globe-hero .container{position:relative;}
.globe-hero .kicker{font-size:.7rem;letter-spacing:.32em;color:var(--gold);display:block;margin-bottom:16px;}
.globe-hero h1{font-size:1.82rem;letter-spacing:.06em;font-weight:700;}
.globe-lead{color:#b6c5d6;font-size:.92rem;margin:16px auto 0;max-width:600px;}
.map-wrap{max-width:1080px;margin:34px auto 0;border:1px solid rgba(184,134,11,.20);
  box-shadow:0 24px 60px rgba(0,0,0,.38);}
.worldmap{width:100%;height:auto;display:block;}
.glabel{font-family:var(--cjk);font-size:13px;fill:#fff;letter-spacing:.04em;font-weight:600;}
.glabel2{font-family:ui-monospace,Consolas,monospace;font-size:10px;fill:#8fa8c2;letter-spacing:.06em;}
.glabel.end,.glabel2.end{text-anchor:end;}
.gp{transform-box:fill-box;transform-origin:center;animation:gp 2.8s ease-out infinite;}
@keyframes gp{0%{transform:scale(.5);opacity:.55}70%{transform:scale(2.2);opacity:0}100%{opacity:0}}
.sec-head.center{text-align:center;}
.sec-head.center h2::after{margin-left:auto;margin-right:auto;}
.sec-head.center .sec-lead{margin-left:auto;margin-right:auto;}
.rbtns{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:8px;}
.rbtn{display:flex;align-items:center;gap:15px;background:#fff;border:1px solid var(--line);padding:19px 18px;transition:.24s;}
.rbtn:hover{border-color:var(--gold);transform:translateY(-2px);box-shadow:0 14px 30px rgba(13,27,42,.11);}
.rbtn-flag{flex:0 0 auto;line-height:0;}
.rbtn-flag svg{height:34px;width:auto;box-shadow:0 1px 5px rgba(13,27,42,.20);}
.rbtn-body{min-width:0;}
.rbtn-code{display:block;font-size:.72rem;font-weight:700;letter-spacing:.2em;color:var(--gold);line-height:1.4;}
.rbtn-name{display:block;font-size:.96rem;color:var(--navy);letter-spacing:.04em;line-height:1.5;}
.rbtn-host{display:block;font-size:.71rem;color:var(--muted);font-family:ui-monospace,Consolas,monospace;line-height:1.6;}
.rbtn-go{margin-left:auto;color:#b9c5d1;font-size:1rem;transition:.2s;}
.rbtn:hover .rbtn-go{color:var(--gold);}
.globe-note{font-size:.76rem;color:#8b98a6;text-align:center;margin-top:26px;letter-spacing:.02em;}

/* ---------- Responsive ---------- */
@media(max-width:860px){
  html{overflow-x:hidden;}
  body{overflow-x:hidden;}
  .container{padding:0 18px;}
  .hd{display:grid;grid-template-columns:1fr auto auto;align-items:center;height:auto;padding:10px 0 8px;gap:6px 8px;}
  .logo{grid-column:1;grid-row:1;}
  .region-link{grid-column:2;grid-row:1;margin:0;font-size:.72rem;padding:4px 8px;}
  .lang{grid-column:3;grid-row:1;margin:0;}
  .lang-btn{padding:4px 8px;font-size:.74rem;}
  nav.main{grid-column:1/-1;grid-row:2;width:auto;flex:none;justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch;}
  nav.main ul{gap:18px;font-size:.84rem;padding:2px 0 0;flex-wrap:nowrap;}
  nav.main a{padding:6px 0;white-space:nowrap;}
  nav.main a::after{bottom:2px;}
  .hero{padding:48px 0 42px;}
  .hero h1{font-size:1.5rem;line-height:1.6;}
  .hero .lead{font-size:.9rem;}
  .stats ul{grid-template-columns:repeat(2,1fr);}
  .stats li{min-height:auto;padding:20px 12px;}
  .stats li:nth-child(2){border-right:none;}
  .stats li:nth-child(3),.stats li:nth-child(4){border-top:1px solid var(--line);}
  section{padding:46px 0;}
  .contact-wrap{grid-template-columns:1fr;gap:26px;}
  .ft{grid-template-columns:1fr;gap:26px;}
  .info-box dl{grid-template-columns:80px 1fr;}
  h2{font-size:1.26rem;}
  .phero h1{font-size:1.38rem;}
  .globe-hero{padding:42px 0 38px;}
  .globe-hero h1{font-size:1.38rem;}
  .globe-lead{font-size:.86rem;}
  .globe-wrap,.map-wrap{max-width:100%;margin-top:18px;}
  /* 窄屏：地图放大到中心区域，保证城市标注可读 */
  .map-wrap{overflow:hidden;}
  .worldmap{width:188%;margin-left:-44%;}
  .glabel{font-size:17px;}
  .glabel2{font-size:12px;}
  .rbtns{grid-template-columns:1fr;gap:13px;}
  .rbtn{padding:15px 16px;}
  .rbtn-flag svg{height:30px;}
  table{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;font-size:.82rem;white-space:nowrap;}
  tbody th{width:auto;min-width:110px;}
}
@media(max-width:480px){
  .lang-menu{right:0;left:auto;min-width:160px;}
  .hero h1{font-size:1.32rem;}
  .btn{padding:11px 18px;font-size:.82rem;}
  .stats strong{font-size:1.05rem;}
}
