/* 各页面内联 <style> 中逐字重复的公共规则，抽取到此处统一维护。
   收录标准：同一条规则在 2 个及以上页面中写法完全一致，且与 assets/ 下
   其它样式表不同名；同名不同值的规则留在各页面内联样式里，未合并。

   加载顺序：本文件必须排在页面内联 <style> 之前 —— 页面里保留的同名规则
   靠"后来居上"覆盖这里的公共值。
 */

p{color:var(--muted)}
.hero-grid{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}
.globe::before{content:"";position:absolute;inset:-8%;border-radius:50%;background:repeating-linear-gradient(90deg,transparent 0 28px,rgba(109,197,255,.18) 30px 32px),repeating-linear-gradient(0deg,transparent 0 38px,rgba(109,197,255,.12) 40px 42px);transform:skewX(-12deg);animation:spinGrid 10s linear infinite}
.globe::after{content:"";position:absolute;inset:12%;border-radius:50%;border:1px solid rgba(188,235,255,.42);box-shadow:0 0 28px rgba(72,180,255,.24),inset 0 0 18px rgba(72,180,255,.18)}
.glow-ring{position:absolute;inset:50%;width:116%;height:42%;border:1px solid rgba(88,183,255,.42);border-radius:50%;transform:translate(-50%,-50%) rotate(-16deg);box-shadow:0 0 32px rgba(72,180,255,.28)}
.pin i{width:7px;height:7px;border-radius:50%;background:#58b7ff;box-shadow:0 0 12px #58b7ff}
.pin.hk{left:7%;top:23%}
.pin.au{right:6%;top:33%}
.pin.eu{left:0;bottom:22%}
.pin.me{right:2%;bottom:20%}
.statbar .cell:hover{background:rgba(30,135,245,.08);border-left-color:rgba(72,180,255,.22)}
.story-mark{display:none}
.story-copy .head-block{margin-bottom:16px}
.region-band{overflow:hidden;background:linear-gradient(180deg,rgba(7,22,44,.25),rgba(8,22,42,.52))}
.region-copy{display:grid;gap:20px;align-content:center}
.region-copy .lead{margin-top:0;font-size:17px;line-height:1.9}
.region-metric:hover{border-color:rgba(72,180,255,.34);background:linear-gradient(180deg,rgba(10,35,66,.62),rgba(5,19,39,.34));transform:translateY(-4px)}
.region-metric .metric-value,.region-metric .metric-value .cnt{display:inline-block;color:#fff!important;font:inherit!important;line-height:inherit!important}
.region-metric .metric-unit{display:inline-block;margin:0;color:#fff!important;font-family:inherit;font-size:.48em;font-weight:700;line-height:1}
.region-map:hover{filter:drop-shadow(0 34px 86px rgba(20,110,210,.34));transform:translateY(-4px)}
.value-card::before,.vision-panel::before,.time-body::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--mx,50%) var(--my,0%),rgba(72,180,255,.18),transparent 46%);opacity:0;transition:opacity .25s;pointer-events:none}
.value-card:hover,.vision-panel:hover,.time-body:hover{border-color:rgba(72,180,255,.38);box-shadow:0 18px 52px rgba(0,18,44,.42),inset 0 1px 0 rgba(255,255,255,.055);transform:translateY(-4px)}
.value-card:hover{border-color:var(--line-strong)}
.value-card:hover::before,.vision-panel:hover::before,.time-body:hover::before{opacity:1}
.value-card>*{position:relative;z-index:1}
.vision-panel>*{position:relative;z-index:1}
.timeline{position:relative;display:grid;gap:16px;--line-scale:0}
.time-body>*{position:relative;z-index:1}
.time-body p{line-height:1.8;font-size:15.5px}
.awards-intro .head-block{margin-bottom:0;text-align:center}
.awards-intro h2{max-width:760px;margin:0 auto}
.award-summary::before,.award-summary::after{content:"";position:absolute;left:50%;transform:translateX(-50%);width:72%;height:1px;background:linear-gradient(90deg,transparent,rgba(88,183,255,.6),transparent)}
.award-summary::before{top:-1px}
.award-summary::after{bottom:-1px}
.award-summary .mini-stat+.mini-stat{border-left:1px solid rgba(72,180,255,.18)}
.award-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--mx,50%) var(--my,0%),rgba(98,190,255,.12),transparent 42%),repeating-linear-gradient(90deg,transparent 0 23px,rgba(98,190,255,.012) 24px 25px),repeating-linear-gradient(0deg,transparent 0 31px,rgba(98,190,255,.008) 32px 33px);opacity:.5;transition:opacity .25s;pointer-events:none}
.award-card::after{content:"";position:absolute;left:50%;bottom:56px;width:52%;height:17px;border-radius:50%;border:1px solid rgba(75,164,255,.28);background:radial-gradient(ellipse at center,rgba(80,172,255,.18),rgba(80,172,255,.04) 54%,transparent 72%);box-shadow:0 0 24px rgba(61,155,255,.18);transform:translateX(-50%);opacity:.58}
.award-card:hover{border-color:rgba(72,180,255,.42);box-shadow:0 28px 72px rgba(0,25,62,.46),0 0 0 1px rgba(78,164,255,.08),inset 0 1px 0 rgba(255,255,255,.075),inset 0 -24px 62px rgba(30,135,245,.1);transform:translateY(-5px)}
.award-card:hover::before{opacity:1}
.award-card>*{position:relative;z-index:1}
.award-card .corner-star{position:absolute;left:13px;top:13px;z-index:2;color:#ffe5a3;font-size:16px;line-height:1;text-shadow:0 0 12px rgba(255,213,126,.58)}
.award-meta{position:relative;order:1;display:flex;justify-content:center;margin:0 0 20px}
.award-meta::before{content:"";position:absolute;left:-110px;top:-38px;width:78px;height:78px;background:linear-gradient(135deg,rgba(216,171,87,.92) 0 50%,transparent 50.5%);opacity:.96;pointer-events:none}
.award-meta::after{content:"★";position:absolute;left:-99px;top:-28px;color:#fff0bd;font-size:16px;line-height:1;text-shadow:0 0 13px rgba(255,222,148,.65);pointer-events:none}
.regulation-hero{max-width:960px}
.regulation-hero h1{letter-spacing:0}
.regulation-hero .lead{font-family:"Microsoft YaHei","PingFang SC","Source Han Sans SC",var(--body),sans-serif;font-weight:500;letter-spacing:.08em}
.reg-copy{padding-top:4px}
.reg-feature::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--mx,50%) var(--my,0%),rgba(72,180,255,.18),transparent 46%);opacity:0;transition:opacity .25s;pointer-events:none}
.reg-feature:hover::after{opacity:1}
.reg-feature>*{position:relative;z-index:1}
.reg-feature h3{font-size:24px;color:#f4f8ff;margin-bottom:10px}
.reg-feature p{font-size:15.5px;line-height:1.75;color:rgba(187,199,218,.7)}
.license-intro{text-align:center;margin-bottom:38px}
.license-intro h2{font-size:clamp(34px,4.5vw,50px)}
.license-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 18%,rgba(98,190,255,.12),transparent 44%),repeating-linear-gradient(90deg,transparent 0 23px,rgba(98,190,255,.012) 24px 25px);pointer-events:none}
.license-card:hover{border-color:rgba(72,180,255,.42);box-shadow:0 28px 72px rgba(0,25,62,.46),inset 0 1px 0 rgba(255,255,255,.075);transform:translateY(-5px)}
.license-card>*{position:relative;z-index:1}
.license-logo img{max-width:100%;max-height:96px;object-fit:contain;filter:brightness(1.38) contrast(1.18) drop-shadow(0 0 16px rgba(88,183,255,.3)) drop-shadow(0 8px 18px rgba(0,8,24,.45));opacity:.98}
.legal-docs-intro h2{font-size:clamp(34px,4.5vw,50px)}
.legal-doc-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--mx,80%) var(--my,0%),rgba(72,180,255,.2),transparent 48%);opacity:0;transition:opacity .25s;pointer-events:none}
.legal-doc-card:hover::before{opacity:1}
.legal-doc-card:focus-visible{outline:2px solid #58b7ff;outline-offset:4px}
.legal-doc-card>*{position:relative;z-index:1}
.legal-doc-card:hover .legal-doc-arrow{color:#fff;transform:translate(3px,-3px)}
.news-intro h2{font-size:clamp(34px,4.5vw,50px)}
.news-card{position:relative;min-width:0;display:flex;flex-direction:column;border:1px solid rgba(72,180,255,.22);border-radius:8px;background:linear-gradient(180deg,rgba(9,31,63,.94),rgba(3,22,46,.92));box-shadow:0 22px 62px rgba(0,13,34,.28),inset 0 1px 0 rgba(255,255,255,.04);overflow:hidden;transition:transform .25s,border-color .25s,box-shadow .25s}
.news-card:hover{transform:translateY(-5px);border-color:rgba(72,180,255,.52);box-shadow:0 28px 72px rgba(0,25,62,.44),inset 0 1px 0 rgba(255,255,255,.07)}
.news-card:focus-visible{outline:2px solid #58b7ff;outline-offset:4px}
.news-media--empty{aspect-ratio:auto;height:84px}
.news-media::after{content:"";position:absolute;inset:auto 0 0;height:42%;background:linear-gradient(180deg,transparent,rgba(3,18,39,.86));pointer-events:none}
.news-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease,filter .4s ease}
.news-card:hover .news-media img{transform:scale(1.045);filter:saturate(1.08)}
.news-date{position:absolute;left:20px;bottom:16px;z-index:1;display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;border:1px solid rgba(232,196,122,.5);background:rgba(4,16,34,.76);color:#e8c47a;font-family:var(--head);font-size:12px;font-weight:600;backdrop-filter:blur(10px)}
.news-body p{margin-top:15px;font-size:14.5px;line-height:1.8;color:rgba(187,205,228,.72);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:break-word}
.news-more{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:22px;color:#58b7ff;font-family:var(--head);font-size:14px;font-weight:700}
.news-more i{font-size:20px;transition:transform .25s,color .25s}
.news-card:hover .news-more i{color:#fff;transform:translate(3px,-3px)}
.news-status{grid-column:1/-1;min-height:180px;display:grid;place-items:center;border:1px solid rgba(72,180,255,.16);border-radius:8px;color:#9cc0e8;background:rgba(5,19,40,.48)}
.news-page-button:hover:not(:disabled):not([aria-current="page"]){color:#fff;border-color:rgba(72,180,255,.6);background:rgba(12,48,91,.9);transform:translateY(-2px)}
.news-page-button[aria-current="page"]{color:#03172e;border-color:#58b7ff;background:linear-gradient(135deg,#67c4ff,#2f9dea);box-shadow:0 8px 24px rgba(47,157,234,.32);cursor:default}
.news-page-button:disabled{opacity:.34;cursor:not-allowed}
.news-page-button:focus-visible{outline:2px solid #e8c47a;outline-offset:3px}
.news-page-button i{font-size:19px}
.btn-outline{border:1px solid rgba(72,180,255,.55);background:rgba(22,136,248,.08);color:#eaf6ff}
.analysis-card .news-media{aspect-ratio:1.18}
.btn-outline:hover{background:rgba(22,136,248,.17);transform:translateY(-2px)}
.analysis-card .news-media img{filter:hue-rotate(25deg) saturate(.86) contrast(1.06)}
.btn svg{width:18px;height:18px}
.analysis-card:hover .news-media img{filter:hue-rotate(25deg) saturate(1.02) contrast(1.08)}
.lang{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.16);border-radius:50%;background:rgba(255,255,255,.06);color:#c7d8ef}
.analysis-card .news-body p{-webkit-line-clamp:3}
.lang svg{width:20px}
.menu span,.menu span:before,.menu span:after{display:block;width:19px;height:2px;border-radius:2px;background:currentColor}
.menu span{position:relative;margin:auto}
.menu span:before,.menu span:after{content:"";position:absolute;left:0}
.menu span:before{top:-6px}
.menu span:after{top:6px}
.blank-hero:after{content:"";position:absolute;left:50%;bottom:0;width:min(900px,86vw);height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,rgba(88,183,255,.58),transparent)}
.intro{padding:90px 0 88px;text-align:center}
.intro p{max-width:850px;margin:25px auto 0;font-size:18px;line-height:1.95;color:rgba(191,211,235,.84)}
.feature-band{background:linear-gradient(180deg,rgba(7,22,44,.22),rgba(8,22,42,.56))}
.feature:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 0,rgba(72,180,255,.18),transparent 46%);opacity:0;transition:.25s}
.feature:hover{transform:translateY(-5px);border-color:#2b86e6;box-shadow:0 22px 56px rgba(0,18,44,.44)}
.feature:hover:before{opacity:1}
.feature>*{position:relative}
.feature h3{font-size:23px;color:#f4f8ff}
.feature p{margin-top:12px;font-size:15.5px;line-height:1.8;color:rgba(190,207,230,.72)}
.platform:nth-of-type(even){background:linear-gradient(180deg,rgba(7,22,44,.2),rgba(8,22,42,.5))}
.platform-copy h2{font-size:clamp(34px,4.5vw,50px)}
.platform-copy>p{margin-top:22px;font-size:17px;line-height:1.9}
.checks li:before{content:"✓";display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:rgba(30,135,245,.13);color:#5db9ff;font-size:12px}
.downloads{display:flex;gap:12px;flex-wrap:wrap}
.downloads a[hidden]{display:none!important}
.downloads.is-single{justify-content:center}
.downloads.is-single .btn{flex:0 1 auto!important;min-width:220px!important}
#desktop .downloads,#mobile .downloads{width:100%;min-width:0;flex-wrap:nowrap}
#desktop .downloads .btn,#mobile .downloads .btn{flex:1;min-width:0;padding-left:12px;padding-right:12px}
.screen:after{content:"";position:absolute;left:-8%;right:-8%;bottom:-24px;height:23px;border-radius:4px 4px 20px 20px;background:linear-gradient(180deg,#173558,#071329);clip-path:polygon(8% 0,92% 0,100% 100%,0 100%)}
.chart{height:56%;background:linear-gradient(90deg,rgba(83,155,225,.08) 1px,transparent 1px),linear-gradient(rgba(83,155,225,.08) 1px,transparent 1px);background-size:28px 28px}
.chart svg{width:100%;height:100%}
.trade-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}
.trade-row i{height:45px;border:1px solid rgba(88,183,255,.14);border-radius:5px;background:rgba(30,135,245,.06)}
.phone:first-child{left:9%;transform:rotate(-7deg)}
.phone:last-child{right:8%;top:35px;transform:rotate(7deg)}
.phone-in:before{content:"";display:block;width:38%;height:5px;margin:-14px auto 25px;border-radius:5px;background:#263b57}
.ticker{height:10px;margin:13px 0;border-radius:8px;background:linear-gradient(90deg,#4eb6ff 40%,rgba(78,182,255,.1) 40%)}
.mini-chart svg{width:100%;height:100%}
.cta .wrap{width:100%;max-width:1100px}
.cta-box:hover{border-color:rgba(72,180,255,.38);box-shadow:0 18px 52px rgba(0,18,44,.42),inset 0 1px 0 rgba(255,255,255,.055);transform:translateY(-4px)}
.footer-call{font-size:42px;max-width:760px;margin-bottom:44px}
.cta .kicker{margin-bottom:12px;color:#68bdff;font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.fcol h4{margin-bottom:18px;font-family:var(--head);font-size:15px}
.fcol li,.fcol a{color:#7f9fc6;font-size:14px}
.fcol a:hover{color:#fff}
.fcol .email:hover{color:#fff}
.fbrand p{color:var(--muted);font-size:14px;margin-top:14px;max-width:250px;line-height:1.7}
.socials a:hover{color:#fff;border-color:var(--line-strong);background:#0a2038}
.legal b{color:#9fb8dc;font-weight:600}
.device>.screen,.device>.phones{display:none}
.time-body:hover{border-color:rgba(120,180,240,.36)!important;background:linear-gradient(180deg,rgba(17,52,88,.62),rgba(7,27,48,.48))!important;box-shadow:0 20px 48px rgba(0,12,28,.38),inset 0 1px 0 rgba(255,255,255,.1)!important}
.platform.mobile .device::before{width:min(112%,560px);background-image:url("platform-trading-mobile-pro-audusd.webp");filter:drop-shadow(0 34px 52px rgba(0,10,32,.48))}
