





:root {
  --bg:        #F6F4EE;
  --bg-2:      #FBFAF5;
  --bg-3:      #FFFFFF;
  --surface:   #F0EDE5;
  --surface-2: #EAE6DC;
  --border:    #D8D3C2;
  --border-2:  #C4BFAE;
  --text:      #15151A;
  --text-2:    #3D3D45;
  --text-3:    #6E6E78;
  --text-4:    #98969B;
  --orange:      #E8893D;
  --orange-deep: #C26A22;
  --orange-soft: #FBE9D7;
  --orange-line: rgba(232,137,61,.28);
  --up:   #0F8A56;
  --down: #C53B4A;
  --warn: #C77F0A;
  --neutral: #8C8475;
  --f-ar:      'ThmanyahSans', sans-serif;
  --f-serif:   'ThmanyahSerifDisplay', serif;
  --f-ui:      'Inter', -apple-system, BlinkMacSystemFont, "Helvetica Neue", system-ui, sans-serif;
  --f-mono:    ui-monospace, "JetBrains Mono", "SF Mono", Menlo, monospace;
  --shadow:      0 8px 24px rgba(20,20,30,.06);
  --shadow-soft: 0 2px 8px rgba(20,20,30,.04);
  --shadow-deep: 0 12px 40px rgba(20,20,30,.08);
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { -webkit-text-size-adjust: 100%; }
body {
  font-family: var(--f-ar);
  background: var(--bg);
  color: var(--text);
  line-height: 1.7;
  font-size: 16px;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  font-feature-settings: "ss01", "kern", "tnum" 1;
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button { font: inherit; cursor: pointer; border: none; background: none; color: inherit; }
h1, h2, h3, h4, h5 { font-family: var(--f-serif); font-weight: 700; line-height: 1.25; }
.serif { font-family: var(--f-serif); }
.mono { font-family: var(--f-mono); font-feature-settings: "tnum"; letter-spacing: -0.02em; }
.ui { font-family: var(--f-ui); }
.en { direction: ltr; unicode-bidi: embed; font-family: var(--f-ui); display: inline-block; }
.num { direction: ltr; unicode-bidi: embed; font-family: var(--f-mono); display: inline-block; }
.wrap { max-width: 1320px; margin: 0 auto; padding: 0 32px; }
@media (max-width: 768px) { .wrap { padding: 0 20px; }}

/* MASTHEAD */
.masthead {
  position: sticky; top: 0; z-index: 100;
  background: rgba(246,244,238,0.92);
  backdrop-filter: blur(20px) saturate(180%);
  -webkit-backdrop-filter: blur(20px) saturate(180%);
  border-bottom: 1px solid var(--border);
  padding: 14px 0;
}
.masthead-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.brand { display: flex; align-items: center; gap: 14px; }
.brand-logo { width: 44px; height: 44px; border-radius: 12px; }
.brand-text { display: flex; flex-direction: column; gap: 1px; }
.brand-text .mark { font-family: var(--f-serif); font-weight: 700; font-size: 16px; letter-spacing: -0.01em; color: var(--text); }
.brand-text .sub { font-family: var(--f-ar); font-size: 11.5px; color: var(--text-2); margin-top: 2px; }
.masthead-right { display: flex; align-items: center; gap: 12px; }
.okx-pill { display: flex; align-items: center; gap: 8px; padding: 6px 12px; border: 1px solid var(--border); border-radius: 999px; background: var(--bg-3); }
.okx-pill img { width: 16px; height: 16px; }
.okx-pill .code { font-family: var(--f-mono); font-size: 10.5px; color: var(--text); font-weight: 700; letter-spacing: -0.01em; }
.natahr-pill { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border: 1px solid var(--orange); border-radius: 999px; background: var(--orange); color: #fff; text-decoration: none; font-family: var(--f-ar); transition: background .25s var(--ease-soft), transform .25s var(--ease-soft); }
.natahr-pill .code { font-family: var(--f-mono); font-size: 10.5px; font-weight: 700; letter-spacing: .02em; color: #fff; }
.natahr-pill:hover { background: var(--orange-deep); border-color: var(--orange-deep); transform: translateY(-1px); }
.natahr-pill svg path { stroke: #fff; }
.natahr-pill-icon { display: inline-flex; align-items: center; transition: transform .25s var(--ease-soft); }
.natahr-pill:hover .natahr-pill-icon { transform: translateX(-1.5px); }
.natahr-pill-text { font-weight: 700; letter-spacing: -.005em; }
.natahr-pill-arrow { opacity: .65; transition: all .25s var(--ease-soft); }
.natahr-pill:hover .natahr-pill-arrow { opacity: 1; transform: translateX(2px); }
.natahr-pill:hover { background: #0088cc; border-color: #0088cc; color: #fff; box-shadow: 0 4px 12px rgba(0,136,204,.25); }

/* NAV */
.natahr-site-pill { display: inline-flex; align-items: center; gap: 6px; padding: 6px 11px; border: 1px solid var(--orange-line); border-radius: 999px; background: var(--orange-soft); color: var(--orange-deep); text-decoration: none; font-family: var(--f-mono); transition: background .25s var(--ease-soft), transform .25s var(--ease-soft), border-color .25s var(--ease-soft); }
.natahr-site-pill .code { font-size: 10.5px; font-weight: 700; letter-spacing: .02em; }
.natahr-site-pill:hover { background: var(--orange); border-color: var(--orange); color: #fff; transform: translateY(-1px); }
.natahr-site-pill:hover svg path, .natahr-site-pill:hover svg polyline { stroke: #fff; }
.secnav {
  background: var(--bg-2);
  border-bottom: 1px solid var(--border);
  padding: 12px 0;
  position: sticky; top: 73px; z-index: 99;
  backdrop-filter: blur(14px) saturate(180%);
}
.secnav-inner { display: flex; align-items: center; gap: 6px; overflow-x: auto; scrollbar-width: thin; -webkit-overflow-scrolling: touch; }
.secnav a {
  font-family: var(--f-ar);
  font-size: 12.5px;
  font-weight: 600;
  padding: 7px 13px;
  border-radius: 999px;
  color: var(--text-2);
  white-space: nowrap;
  border: 1px solid transparent;
  transition: all 0.2s ease;
}
.secnav a:hover { color: var(--orange-deep); border-color: var(--orange-line); background: var(--orange-soft); }

/* TITLE STRIP */
.title-strip { background: var(--bg-2); border-bottom: 1px solid var(--border); padding: 22px 0; margin-top: 0; }
.title-strip-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.title-strip .file-title { font-family: var(--f-serif); font-weight: 700; font-size: 22px; color: var(--text); letter-spacing: -0.01em; line-height: 1.3; }
.title-strip .file-subtitle { font-family: var(--f-ar); font-size: 14px; color: var(--text-2); margin-top: 4px; line-height: 1.5; }
.title-strip .meta { font-family: var(--f-mono); font-size: 11px; color: var(--text-3); }

/* HERO */
.hero { padding: 56px 0 48px; }
.hero-grid { display: grid; grid-template-columns: 1.3fr 1fr; gap: 64px; align-items: start; }
.hero-eyebrow { display: inline-flex; align-items: center; gap: 12px; font-family: var(--f-ar); font-size: 13px; color: var(--orange-deep); font-weight: 700; margin-bottom: 18px; padding: 6px 14px; border: 1px solid var(--orange-line); border-radius: 99px; background: var(--orange-soft); }
.hero-eyebrow .num { font-family: var(--f-mono); color: var(--orange-deep); font-size: 11.5px; letter-spacing: 0.05em; }
.hero-title { font-family: var(--f-serif); font-weight: 700; font-size: clamp(48px, 7vw, 96px); line-height: 1; letter-spacing: -0.025em; color: var(--text); margin-bottom: 22px; }
.hero-title .accent { color: var(--orange-deep); }
.hero-intro { font-family: var(--f-ar); font-size: 18px; font-weight: 700; color: var(--text); line-height: 1.6; margin-bottom: 18px; padding-bottom: 18px; border-bottom: 1px solid var(--border); }
.hero-intro-en { font-family: var(--f-ui); font-size: 14px; color: var(--text-3); line-height: 1.65; margin-bottom: 24px; }
.hero-lede { font-family: var(--f-ar); font-size: 16px; color: var(--text-2); line-height: 1.85; margin-bottom: 24px; }
.hero-lede b { color: var(--text); font-weight: 700; }
.hero-meta { display: grid; grid-template-columns: repeat(2,1fr); gap: 12px; margin-top: 8px; }
.hero-meta .item { background: var(--bg-3); border: 1px solid var(--border); border-radius: 12px; padding: 14px 18px; }
.hero-meta .label { font-family: var(--f-ar); font-size: 12.5px; color: var(--text-3); margin-bottom: 4px; font-weight: 600; }
.hero-meta .value { font-family: var(--f-mono); font-size: 17px; font-weight: 700; color: var(--text); line-height: 1.2; }
.hero-side { background: var(--bg-3); border: 1px solid var(--border); border-radius: 18px; padding: 26px; box-shadow: var(--shadow); }
.hero-side-title { font-family: var(--f-serif); font-weight: 700; font-size: 18px; color: var(--text); margin-bottom: 18px; letter-spacing: -0.01em; padding-bottom: 14px; border-bottom: 1px solid var(--border); }
.hero-side .lede { font-family: var(--f-ar); font-size: 13.5px; color: var(--text-2); line-height: 1.7; margin-bottom: 20px; }
.hero-stat { padding: 16px 0; border-bottom: 1px solid var(--border); }
.hero-stat:first-of-type { padding-top: 0; }
.hero-stat:last-of-type { padding-bottom: 0; border-bottom: none; }
.hero-stat .label { font-family: var(--f-ar); font-size: 12.5px; color: var(--text-3); margin-bottom: 6px; font-weight: 600; }
.hero-stat .value { font-family: var(--f-mono); font-size: 22px; font-weight: 700; letter-spacing: -0.02em; color: var(--text); }
.hero-stat .ch { display: inline-block; font-size: 12px; margin-right: 10px; vertical-align: middle; font-weight: 700; }
.hero-stat .ctx { font-family: var(--f-ar); font-size: 11.5px; color: var(--text-3); margin-top: 4px; }
.text-up { color: var(--up); }
.text-down { color: var(--down); }
@media (max-width: 960px) { .hero-grid { grid-template-columns: 1fr; gap: 32px; } }
@media (max-width: 600px) { .hero-meta { grid-template-columns: 1fr; } }

/* SECTION GENERIC */
.section { padding: 64px 0; position: relative; }
.section + .section { border-top: 1px solid var(--border); }
.section-head { margin-bottom: 36px; }
.section-eyebrow { font-family: var(--f-ar); font-size: 12.5px; color: var(--orange-deep); font-weight: 700; margin-bottom: 14px; padding: 5px 12px; background: var(--orange-soft); border-radius: 99px; display: inline-block; letter-spacing: 0.02em; }
.section-eyebrow .en { font-family: var(--f-ui); font-size: 11px; color: var(--orange-deep); margin-right: 8px; letter-spacing: 0.18em; opacity: 0.7; }
.section-title { font-family: var(--f-serif); font-weight: 700; font-size: clamp(28px, 3.8vw, 42px); line-height: 1.2; letter-spacing: -0.015em; color: var(--text); margin-bottom: 16px; }
.section-title .accent { color: var(--orange-deep); }
.section-title .en-sub { display: block; font-family: var(--f-ui); font-size: 0.55em; color: var(--text-3); margin-top: 8px; letter-spacing: 0.04em; font-weight: 500; }
.section-explain { font-family: var(--f-ar); font-size: 16.5px; color: var(--text); line-height: 1.85; margin-bottom: 14px; max-width: 820px; font-weight: 600; }
.section-explain b { color: var(--orange-deep); font-weight: 700; }
.section-lede { font-family: var(--f-ar); font-size: 14px; color: var(--text-2); line-height: 1.8; max-width: 820px; margin-bottom: 32px; }

/* MARKETS GRID */
.markets { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; background: var(--bg-3); border: 1px solid var(--border); border-radius: 18px; overflow: hidden; box-shadow: var(--shadow-soft); }
.market-cell { padding: 22px; border-left: 1px solid var(--border); border-bottom: 1px solid var(--border); position: relative; }
.market-cell:nth-child(4n+1) { border-left: none; }
.market-cell:nth-last-child(-n+4) { border-bottom: none; }
.market-cell .name { font-family: var(--f-ar); font-size: 13px; color: var(--text); font-weight: 700; margin-bottom: 4px; }
.market-cell .name-en { font-family: var(--f-ui); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--text-3); margin-bottom: 12px; font-weight: 600; display: flex; justify-content: space-between; align-items: center; }
.market-cell .price { font-family: var(--f-mono); font-size: 22px; font-weight: 700; letter-spacing: -0.02em; color: var(--text); margin-bottom: 4px; line-height: 1.1; }
.market-cell .chg { font-family: var(--f-mono); font-size: 12.5px; font-weight: 700; padding: 3px 8px; border-radius: 6px; display: inline-block; }
.market-cell .chg.up { background: rgba(15,138,86,.10); color: var(--up); }
.market-cell .chg.down { background: rgba(197,59,74,.10); color: var(--down); }
.market-cell .chg.flat { background: var(--surface); color: var(--text-3); }
.market-cell .note { font-family: var(--f-ar); font-size: 11.5px; color: var(--text-3); margin-top: 8px; line-height: 1.55; }
@media (max-width: 880px) { .markets { grid-template-columns: repeat(2, 1fr); } .market-cell:nth-child(4n+1) { border-left: 1px solid var(--border); } .market-cell:nth-child(2n+1) { border-left: none; } .market-cell:nth-last-child(-n+4) { border-bottom: 1px solid var(--border); } .market-cell:nth-last-child(-n+2) { border-bottom: none; } }

/* TWO COL */
.two-col { display: grid; grid-template-columns: 1.3fr 1fr; gap: 40px; align-items: start; }
@media (max-width: 960px) { .two-col { grid-template-columns: 1fr; } }

/* MESSAGE CARDS */
.msg-card { background: var(--bg-3); border: 1px solid var(--border); border-radius: 16px; padding: 24px; margin-bottom: 14px; box-shadow: var(--shadow-soft); }
.msg-card .msg-head { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; padding-bottom: 14px; border-bottom: 1px solid var(--border); }
.msg-card .msg-num { font-family: var(--f-mono); font-size: 11px; color: var(--orange-deep); font-weight: 700; padding: 4px 10px; background: var(--orange-soft); border-radius: 99px; }
.msg-card .msg-title { font-family: var(--f-serif); font-weight: 700; font-size: 17px; color: var(--text); letter-spacing: -0.01em; }
.msg-card .msg-title-en { font-family: var(--f-ui); font-size: 11px; color: var(--text-3); letter-spacing: 0.16em; margin-right: 8px; font-weight: 600; }
.msg-card .msg-body { font-family: var(--f-ar); font-size: 13.5px; color: var(--text-2); line-height: 1.85; }
.msg-card .msg-body b { color: var(--text); font-weight: 700; }

/* TIMELINE */
.timeline { border-right: 2px solid var(--border); padding-right: 24px; }
.tl-item { position: relative; padding-bottom: 22px; margin-bottom: 22px; border-bottom: 1px dashed var(--border); }
.tl-item:last-child { border-bottom: none; padding-bottom: 0; margin-bottom: 0; }
.tl-item::before { content: ''; position: absolute; right: -30px; top: 8px; width: 12px; height: 12px; border-radius: 50%; background: var(--bg); border: 3px solid var(--orange); }
.tl-time { font-family: var(--f-mono); font-size: 11.5px; color: var(--orange-deep); font-weight: 700; margin-bottom: 6px; }
.tl-title { font-family: var(--f-serif); font-weight: 700; font-size: 16px; color: var(--text); margin-bottom: 6px; line-height: 1.3; }
.tl-body { font-family: var(--f-ar); font-size: 13px; color: var(--text-2); line-height: 1.75; }

/* SIDE PANEL */
.side-panel { background: var(--surface); border: 1px solid var(--border); border-radius: 16px; padding: 22px; position: sticky; top: 140px; }
.side-head { font-family: var(--f-serif); font-weight: 700; font-size: 17px; color: var(--text); margin-bottom: 16px; padding-bottom: 12px; border-bottom: 1px solid var(--border); }
.side-head .en { font-family: var(--f-ui); font-size: 11px; color: var(--text-3); letter-spacing: 0.16em; margin-right: 8px; font-weight: 600; }
.side-stat { padding: 12px 0; border-bottom: 1px dashed var(--border); }
.side-stat:last-child { border-bottom: none; }
.side-stat .label { font-family: var(--f-ar); font-size: 12px; color: var(--text-3); margin-bottom: 4px; font-weight: 600; }
.side-stat .value { font-family: var(--f-mono); font-size: 16px; font-weight: 700; color: var(--text); letter-spacing: -0.01em; }
.side-stat .value.big { font-size: 22px; }
.side-stat .ctx { font-family: var(--f-ar); font-size: 11px; color: var(--text-3); margin-top: 4px; line-height: 1.55; }

/* YIELD CURVE TABLE */
.curve { background: var(--bg-3); border: 1px solid var(--border); border-radius: 16px; overflow: hidden; box-shadow: var(--shadow-soft); }
.curve table { width: 100%; border-collapse: collapse; font-family: var(--f-ar); }
.curve th, .curve td { padding: 16px 18px; text-align: right; border-bottom: 1px solid var(--border); font-size: 13px; }
.curve th { background: var(--surface); font-size: 11.5px; color: var(--text); font-weight: 700; }
.curve th .en { font-family: var(--f-ui); font-size: 10px; letter-spacing: 0.16em; color: var(--text-3); display: block; margin-top: 2px; font-weight: 600; }
.curve td.tenor { font-family: var(--f-serif); font-weight: 700; font-size: 16px; color: var(--text); }
.curve td .en { font-family: var(--f-ui); font-size: 10px; color: var(--text-3); letter-spacing: 0.12em; display: block; margin-top: 3px; font-weight: 500; }
.curve td .value { font-family: var(--f-mono); font-size: 16px; font-weight: 700; }
.curve td .delta { font-family: var(--f-mono); font-size: 11.5px; padding: 2px 6px; border-radius: 4px; margin-right: 6px; font-weight: 700; }
.curve tr:last-child td { border-bottom: none; }
@media (max-width: 600px) { .curve { font-size: 12px; } .curve th, .curve td { padding: 12px; } }

/* GAP (before/after) */
.gap { display: grid; grid-template-columns: 1fr 1fr; gap: 0; border: 1px solid var(--border); border-radius: 18px; overflow: hidden; box-shadow: var(--shadow-soft); font-family: var(--f-ar); margin-bottom: 22px; }
.gap .side { padding: 28px; background: var(--bg-3); }
.gap .side + .side { background: var(--surface); border-right: 1px solid var(--border); }
.gap .side .head { font-family: var(--f-serif); font-weight: 700; font-size: 20px; color: var(--text); margin-bottom: 6px; letter-spacing: -0.01em; }
.gap .side .head-en { font-family: var(--f-ui); font-size: 11px; color: var(--text-3); letter-spacing: 0.16em; margin-bottom: 14px; font-weight: 600; }
.gap .side .sub { font-family: var(--f-ar); font-size: 12.5px; color: var(--text-3); margin-bottom: 18px; line-height: 1.6; }
.gap .side ul { list-style: none; font-size: 13px; color: var(--text-2); }
.gap .side ul li { padding: 12px 0; border-bottom: 1px dashed var(--border); line-height: 1.7; display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.gap .side ul li:last-child { border-bottom: none; }
.gap .side ul li b { font-family: var(--f-mono); font-weight: 700; color: var(--text); font-size: 14px; }
.gap .side ul li .lbl { font-family: var(--f-ar); flex: 1; }
@media (max-width: 880px) { .gap { grid-template-columns: 1fr; } .gap .side + .side { border-right: none; border-top: 1px solid var(--border); } }

/* TRANSMISSION FLOW */
.flow { background: var(--bg-3); border: 1px solid var(--border); border-radius: 18px; padding: 30px; box-shadow: var(--shadow-soft); }
.flow-track { display: flex; align-items: stretch; gap: 0; flex-wrap: wrap; }
.flow-node { flex: 1; min-width: 110px; padding: 16px 12px; background: var(--bg); border: 1px solid var(--border); border-radius: 12px; text-align: center; position: relative; }
.flow-node + .flow-node { margin-right: 18px; }
.flow-node .n-label { font-family: var(--f-ar); font-size: 12px; color: var(--text-2); font-weight: 700; margin-bottom: 4px; }
.flow-node .n-en { font-family: var(--f-ui); font-size: 9.5px; color: var(--text-3); letter-spacing: 0.14em; text-transform: uppercase; margin-bottom: 8px; font-weight: 600; }
.flow-node .n-val { font-family: var(--f-mono); font-size: 13px; font-weight: 700; color: var(--text); }
.flow-arrow { align-self: center; padding: 0 6px; color: var(--orange); font-size: 16px; font-weight: 700; }
.flow-note { margin-top: 24px; padding-top: 24px; border-top: 1px dashed var(--border); font-family: var(--f-ar); font-size: 13px; color: var(--text-2); line-height: 1.85; }
.flow-note b { color: var(--orange-deep); font-weight: 700; }
@media (max-width: 880px) { .flow-track { flex-direction: column; } .flow-node + .flow-node { margin-right: 0; margin-top: 12px; } .flow-arrow { display: none; } }

/* WHAT CHANGED DIFF TABLE */
.diff-row { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 0; border: 1px solid var(--border); border-radius: 14px; overflow: hidden; margin-bottom: 12px; font-family: var(--f-ar); background: var(--bg-3); box-shadow: var(--shadow-soft); }
.diff-row.head { background: var(--surface); font-weight: 700; font-size: 12.5px; }
.diff-row > div { padding: 14px 16px; border-left: 1px solid var(--border); }
.diff-row > div:first-child { border-left: none; }
.diff-row .cell-name { font-family: var(--f-serif); font-weight: 700; font-size: 14px; color: var(--text); }
.diff-row .cell-name .en { font-family: var(--f-ui); font-size: 10px; color: var(--text-3); letter-spacing: 0.14em; display: block; margin-top: 3px; font-weight: 500; }
.diff-row .cell-before, .diff-row .cell-after { font-family: var(--f-mono); font-size: 13px; font-weight: 700; }
.diff-row .cell-arrow { font-family: var(--f-mono); font-size: 13px; font-weight: 700; text-align: center; }
.diff-row .cell-arrow.up { color: var(--up); }
.diff-row .cell-arrow.down { color: var(--down); }
@media (max-width: 880px) { .diff-row { grid-template-columns: 1fr 1fr; } .diff-row > div:nth-child(3), .diff-row > div:nth-child(4) { display: none; } .diff-row.head { display: none; } }

/* MARKET MAP (Strength/Transition/Pressure) */
.map-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.map-col { background: var(--bg-3); border: 1px solid var(--border); border-radius: 16px; padding: 22px; box-shadow: var(--shadow-soft); font-family: var(--f-ar); }
.map-col.strength { border-top: 4px solid var(--up); }
.map-col.transition { border-top: 4px solid var(--orange); }
.map-col.pressure { border-top: 4px solid var(--down); }
.map-head { display: flex; align-items: center; gap: 10px; margin-bottom: 18px; padding-bottom: 14px; border-bottom: 1px solid var(--border); }
.map-dot { width: 10px; height: 10px; border-radius: 50%; }
.map-col.strength .map-dot { background: var(--up); }
.map-col.transition .map-dot { background: var(--orange); }
.map-col.pressure .map-dot { background: var(--down); }
.map-col .head { font-family: var(--f-serif); font-weight: 700; font-size: 18px; color: var(--text); letter-spacing: -0.01em; }
.map-col .head-en { font-family: var(--f-ui); font-size: 11px; color: var(--text-3); letter-spacing: 0.16em; font-weight: 600; }
.map-list { list-style: none; font-size: 13px; color: var(--text-2); }
.map-list li { padding: 10px 0; border-bottom: 1px dashed var(--border); line-height: 1.7; display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
.map-list li:last-child { border-bottom: none; }
.map-list li b { color: var(--text); font-weight: 700; font-family: var(--f-serif); font-size: 14px; display: block; margin-bottom: 2px; }
.map-list li .en { font-family: var(--f-ui); font-size: 10px; color: var(--text-3); letter-spacing: 0.14em; text-transform: uppercase; display: block; margin-bottom: 4px; font-weight: 600; }
.map-list li .v { font-family: var(--f-mono); font-size: 11.5px; color: var(--text-3); white-space: nowrap; }
@media (max-width: 880px) { .map-grid { grid-template-columns: 1fr; } }

/* NEWS CARDS */
.news-grid { display: grid; grid-template-columns: 1fr; gap: 14px; }
.news-card { background: var(--bg-3); border: 1px solid var(--border); border-radius: 14px; padding: 22px 24px; box-shadow: var(--shadow-soft); font-family: var(--f-ar); display: grid; grid-template-columns: auto 1fr auto; gap: 18px; align-items: center; }
.news-num { font-family: var(--f-mono); font-size: 28px; font-weight: 700; color: var(--orange-deep); line-height: 1; font-feature-settings: "tnum"; min-width: 50px; }
.news-body .head-row { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; flex-wrap: wrap; }
.news-body .head { font-family: var(--f-serif); font-weight: 700; font-size: 16px; color: var(--text); margin-bottom: 4px; line-height: 1.3; }
.news-body .head-en { font-family: var(--f-ui); font-size: 11.5px; color: var(--text-3); letter-spacing: 0.04em; margin-bottom: 8px; }
.news-body .body { font-size: 13px; color: var(--text-2); line-height: 1.75; }
.news-body .body b { color: var(--text); font-weight: 700; }
.news-meta { text-align: left; min-width: 130px; }
.news-meta .src { font-family: var(--f-ui); font-size: 11px; color: var(--orange-deep); font-weight: 700; margin-bottom: 4px; }
.news-meta .time { font-family: var(--f-mono); font-size: 10.5px; color: var(--text-3); margin-bottom: 6px; }
.news-meta .impact { font-family: var(--f-ar); font-size: 10.5px; padding: 3px 8px; border-radius: 99px; font-weight: 700; display: inline-block; }
.news-meta .impact.high { background: rgba(197,59,74,.10); color: var(--down); }
.news-meta .impact.med { background: rgba(232,137,61,.12); color: var(--orange-deep); }
.news-meta .impact.low { background: var(--surface); color: var(--text-3); }
@media (max-width: 700px) { .news-card { grid-template-columns: auto 1fr; } .news-meta { grid-column: 1 / -1; text-align: right; } }

/* NEXT EVENTS TIMELINE */
.next-events { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.next-card { background: var(--bg-3); border: 1px solid var(--border); border-radius: 14px; padding: 18px 22px; box-shadow: var(--shadow-soft); font-family: var(--f-ar); position: relative; }
.next-card .date { font-family: var(--f-mono); font-size: 11px; color: var(--orange-deep); font-weight: 700; margin-bottom: 6px; letter-spacing: 0.02em; }
.next-card .date-en { font-family: var(--f-ui); font-size: 10px; color: var(--text-3); letter-spacing: 0.14em; margin-bottom: 10px; font-weight: 600; }
.next-card .event { font-family: var(--f-serif); font-weight: 700; font-size: 16px; color: var(--text); margin-bottom: 4px; line-height: 1.3; }
.next-card .event-en { font-family: var(--f-ui); font-size: 11px; color: var(--text-3); letter-spacing: 0.04em; margin-bottom: 10px; }
.next-card .impact-row { font-size: 12px; color: var(--text-2); line-height: 1.7; }
.next-card .impact-row .pill { display: inline-block; font-family: var(--f-ar); font-size: 10px; padding: 2px 7px; border-radius: 99px; background: var(--orange-soft); color: var(--orange-deep); margin-left: 4px; font-weight: 700; }
@media (max-width: 880px) { .next-events { grid-template-columns: 1fr; } }

/* SCENARIOS */
.scenarios { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.scenario { background: var(--bg-3); border: 1px solid var(--border); border-radius: 16px; padding: 24px; box-shadow: var(--shadow-soft); font-family: var(--f-ar); position: relative; }
.scenario .num { font-family: var(--f-mono); font-size: 12px; color: var(--orange-deep); font-weight: 700; margin-bottom: 8px; letter-spacing: 0.05em; }
.scenario .t { font-family: var(--f-serif); font-weight: 700; font-size: 19px; color: var(--text); margin-bottom: 4px; line-height: 1.3; }
.scenario .t-en { font-family: var(--f-ui); font-size: 11px; color: var(--text-3); letter-spacing: 0.16em; margin-bottom: 14px; font-weight: 600; }
.scenario .d { font-size: 13px; color: var(--text-2); line-height: 1.75; margin-bottom: 16px; }
.scenario .grid { display: grid; gap: 8px; }
.scenario .row { display: flex; justify-content: space-between; padding: 8px 0; border-bottom: 1px dashed var(--border); font-size: 12px; align-items: center; }
.scenario .row:last-child { border-bottom: none; }
.scenario .row .k { font-family: var(--f-ar); color: var(--text-2); font-weight: 600; }
.scenario .row .v { font-family: var(--f-mono); font-weight: 700; font-size: 11.5px; }
.scenario .row .v.up { color: var(--up); }
.scenario .row .v.down { color: var(--down); }
.scenario .row .v.flat { color: var(--text-3); }
.scenario .prob { display: inline-block; font-family: var(--f-ar); font-size: 11px; padding: 4px 10px; border-radius: 99px; background: var(--orange-soft); color: var(--orange-deep); margin-top: 14px; font-weight: 700; }
.scenario .prob.bear { background: rgba(197,59,74,.10); color: var(--down); }
.scenario .prob.bull { background: rgba(15,138,86,.10); color: var(--up); }
@media (max-width: 880px) { .scenarios { grid-template-columns: 1fr; } }

/* KEYWORD WATCHLIST */
.kw-grid { display: flex; flex-wrap: wrap; gap: 8px; }
.kw { font-family: var(--f-ar); font-size: 13.5px; padding: 10px 16px; border: 1px solid var(--border); border-radius: 99px; background: var(--bg-3); color: var(--text); transition: all 0.25s ease; font-weight: 600; }
.kw.signal { background: var(--orange-soft); border-color: var(--orange-line); color: var(--orange-deep); font-weight: 700; }
.kw .en { font-family: var(--f-ui); font-size: 11px; color: var(--text-3); margin-right: 6px; font-weight: 500; letter-spacing: 0.04em; }

/* CRYPTO TABLE */
.crypto-table { background: var(--bg-3); border: 1px solid var(--border); border-radius: 14px; overflow: hidden; box-shadow: var(--shadow-soft); }
.crypto-table table { width: 100%; border-collapse: collapse; font-family: var(--f-ar); }
.crypto-table th, .crypto-table td { padding: 14px 16px; text-align: right; border-bottom: 1px solid var(--border); font-size: 13px; }
.crypto-table th { background: var(--surface); font-size: 11.5px; color: var(--text); font-weight: 700; }
.crypto-table th .en { font-family: var(--f-ui); font-size: 10px; letter-spacing: 0.16em; color: var(--text-3); display: block; margin-top: 2px; font-weight: 600; }
.crypto-table td .name { font-family: var(--f-serif); font-weight: 700; font-size: 14px; color: var(--text); }
.crypto-table td .sym { font-family: var(--f-ui); font-size: 10px; color: var(--text-3); letter-spacing: 0.14em; margin-top: 2px; display: block; }
.crypto-table td .price { font-family: var(--f-mono); font-size: 14px; font-weight: 700; }
.crypto-table td .chg { font-family: var(--f-mono); font-size: 11.5px; font-weight: 700; padding: 2px 6px; border-radius: 4px; margin-top: 4px; display: inline-block; }
.crypto-table td .chg.up { background: rgba(15,138,86,.10); color: var(--up); }
.crypto-table td .chg.down { background: rgba(197,59,74,.10); color: var(--down); }
.crypto-table td .ctx { font-family: var(--f-ar); font-size: 11px; color: var(--text-3); margin-top: 4px; line-height: 1.55; }
.crypto-table tr:last-child td { border-bottom: none; }

/* ON-CHAIN METRICS */
.onchain { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; background: var(--bg-3); border: 1px solid var(--border); border-radius: 14px; overflow: hidden; box-shadow: var(--shadow-soft); font-family: var(--f-ar); }
.onchain .c { padding: 18px 16px; border-left: 1px solid var(--border); }
.onchain .c:nth-child(4n+1) { border-left: none; }
.onchain .c .lbl { font-family: var(--f-ar); font-size: 11.5px; color: var(--text-3); font-weight: 700; margin-bottom: 6px; }
.onchain .c .lbl-en { font-family: var(--f-ui); font-size: 9.5px; color: var(--text-3); letter-spacing: 0.14em; text-transform: uppercase; margin-bottom: 8px; font-weight: 600; }
.onchain .c .v { font-family: var(--f-mono); font-size: 17px; font-weight: 700; color: var(--text); letter-spacing: -0.02em; }
.onchain .c .ctx { font-family: var(--f-ar); font-size: 11px; color: var(--text-3); margin-top: 4px; line-height: 1.5; }
@media (max-width: 880px) { .onchain { grid-template-columns: repeat(2, 1fr); } .onchain .c { border-left: 1px solid var(--border); } .onchain .c:nth-child(2n+1) { border-left: none; } .onchain .c:nth-child(-n+2) { border-bottom: 1px solid var(--border); } }

/* TECHNICAL */
.tech-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.tech-card { background: var(--bg-3); border: 1px solid var(--border); border-radius: 16px; padding: 22px; box-shadow: var(--shadow-soft); font-family: var(--f-ar); }
.tech-head { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; padding-bottom: 12px; border-bottom: 1px solid var(--border); }
.tech-head .name { font-family: var(--f-serif); font-weight: 700; font-size: 17px; color: var(--text); }
.tech-head .name-en { font-family: var(--f-ui); font-size: 11px; color: var(--text-3); letter-spacing: 0.16em; font-weight: 600; margin-right: 6px; }
.tech-head .price { font-family: var(--f-mono); font-size: 14px; font-weight: 700; color: var(--text); margin-right: auto; }
.tech-row { display: flex; justify-content: space-between; padding: 7px 0; border-bottom: 1px dashed var(--border); font-size: 12.5px; }
.tech-row:last-child { border-bottom: none; }
.tech-row .k { font-family: var(--f-ar); color: var(--text-3); font-weight: 600; }
.tech-row .v { font-family: var(--f-mono); color: var(--text); font-weight: 700; }
.tech-row .v.up { color: var(--up); }
.tech-row .v.down { color: var(--down); }
.tech-row .v.signal { background: var(--orange-soft); padding: 2px 8px; border-radius: 4px; color: var(--orange-deep); }
.tech-summary { margin-top: 14px; padding: 14px; background: var(--surface); border-radius: 10px; font-size: 12.5px; line-height: 1.75; color: var(--text-2); }
.tech-summary b { color: var(--orange-deep); font-weight: 700; }
@media (max-width: 880px) { .tech-grid { grid-template-columns: 1fr; } }

/* CLOSING */
.ticker-section { background: var(--bg); padding: 60px 0 56px; border-top: 1px solid var(--border); }
.fng-section { background: var(--bg-2); padding: 56px 0 60px; border-top: 1px solid var(--border); }
.chart-section { background: var(--bg); padding: 60px 0 64px; border-top: 1px solid var(--border); }
.chart-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 24px; flex-wrap: wrap; }
.chart-title { font-family: var(--f-serif); font-size: clamp(22px, 3vw, 28px); font-weight: 700; color: var(--text); letter-spacing: -.01em; margin: 0; }
.chart-meta-text { font-size: 11px; color: var(--text-4); letter-spacing: .12em; text-transform: uppercase; font-family: var(--f-mono); }
.chart-card { background: var(--bg-2); border: 1px solid var(--border); border-radius: 16px; padding: 28px 32px; display: grid; grid-template-columns: 280px 1fr; gap: 32px; align-items: center; }
@media (max-width: 760px) { .chart-card { grid-template-columns: 1fr; gap: 24px; padding: 22px; } }
.chart-info { display: flex; flex-direction: column; gap: 14px; }
.chart-price { font-family: var(--f-mono); font-size: 36px; font-weight: 700; color: var(--text); letter-spacing: -.02em; line-height: 1; transition: color .35s var(--ease-soft); }
.chart-change { font-family: var(--f-mono); font-size: 14px; font-weight: 600; padding: 4px 10px; border-radius: 6px; display: inline-block; align-self: flex-start; }
.chart-change.up { color: #059669; background: rgba(16,185,129,.12); }
.chart-change.down { color: #DC2626; background: rgba(239,68,68,.12); }
.chart-stats { display: flex; flex-direction: column; gap: 8px; margin-top: 8px; padding-top: 14px; border-top: 1px solid var(--border); }
.chart-stat { display: flex; justify-content: space-between; align-items: center; font-size: 12px; }
.chart-stat-label { color: var(--text-3); font-family: var(--f-ar); }
.chart-stat-value { font-family: var(--f-mono); color: var(--text-2); font-weight: 600; }
.chart-svg-wrap { width: 100%; height: 200px; position: relative; }
.chart-svg { width: 100%; height: 100%; display: block; }
.chart-line, .chart-area, .chart-dot { transition: d 1.2s cubic-bezier(.4,0,.2,1); }
.chart-dot { filter: drop-shadow(0 0 6px rgba(249,115,22,.6)); }
.fng-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 32px; flex-wrap: wrap; }
.fng-title { font-family: var(--f-serif); font-size: clamp(22px, 3vw, 28px); font-weight: 700; color: var(--text); letter-spacing: -.01em; margin: 0; }
.fng-meta-text { font-size: 11px; color: var(--text-4); letter-spacing: .12em; text-transform: uppercase; font-family: var(--f-mono); }
.fng-content { display: grid; grid-template-columns: auto 1fr; gap: 48px; align-items: center; }
@media (max-width: 760px) { .fng-content { grid-template-columns: 1fr; gap: 24px; } }
.fng-gauge { position: relative; display: inline-flex; flex-direction: column; align-items: center; }
.fng-needle { transform-origin: 100px 100px; transform: rotate(-90deg); transition: transform 1.4s cubic-bezier(.4,0,.2,1); }
.fng-value { font-family: var(--f-mono); font-size: 56px; font-weight: 700; color: var(--text); margin-top: -20px; letter-spacing: -.03em; line-height: 1; }
.fng-info { display: flex; flex-direction: column; gap: 16px; }
.fng-label { font-family: var(--f-serif); font-size: 28px; font-weight: 700; color: var(--orange-deep); letter-spacing: -.01em; }
.fng-desc { font-size: 14px; color: var(--text-3); line-height: 1.7; max-width: 560px; }
.fng-scale { display: flex; flex-direction: column; gap: 6px; margin-top: 8px; }
.fng-scale-row { display: grid; grid-template-columns: 14px 60px 1fr; align-items: center; gap: 12px; font-size: 12px; padding: 4px 0; border-bottom: 1px solid var(--border); }
.fng-scale-row:last-child { border-bottom: none; }
.fng-scale-row span:first-child { color: var(--text-3); }
.fng-scale-row span:nth-child(2) { font-family: var(--f-mono); color: var(--text-4); }
.fng-scale-row strong { color: var(--text); font-weight: 600; font-family: var(--f-ar); }
.fng-dot { width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
.ticker-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 24px; flex-wrap: wrap; }
.ticker-title { font-family: var(--f-serif); font-size: clamp(22px, 3vw, 28px); font-weight: 700; color: var(--text); letter-spacing: -.01em; margin: 0; }
.ticker-meta-text { font-size: 11px; color: var(--text-4); letter-spacing: .12em; text-transform: uppercase; font-family: var(--f-mono); }
.ticker-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; }
.ticker-card { background: var(--bg-2); border: 1px solid var(--border); border-radius: 16px; padding: 20px 22px; transition: border-color .25s var(--ease-soft), transform .25s var(--ease-soft); }
.ticker-card { position: relative; }
.ticker-card.pulse-up { border-color: rgba(16,185,129,.6); box-shadow: 0 0 0 1px rgba(16,185,129,.3), 0 0 6px -2px rgba(16,185,129,.18), inset 0 0 8px -4px rgba(16,185,129,.08); animation: glow-up 5s cubic-bezier(.4,0,.6,1) infinite; transition: border-color 1.2s ease, box-shadow 1.2s ease; }
.ticker-card.pulse-down { border-color: rgba(239,68,68,.6); box-shadow: 0 0 0 1px rgba(239,68,68,.3), 0 0 6px -2px rgba(239,68,68,.18), inset 0 0 8px -4px rgba(239,68,68,.08); animation: glow-down 5s cubic-bezier(.4,0,.6,1) infinite; transition: border-color 1.2s ease, box-shadow 1.2s ease; }
.ticker-card.pulse-init { border-color: var(--border); }
@keyframes glow-up { 0%, 100% { box-shadow: 0 0 0 1px rgba(16,185,129,.25), 0 0 4px -2px rgba(16,185,129,.15), inset 0 0 6px -4px rgba(16,185,129,.06); border-color: rgba(16,185,129,.5); } 50% { box-shadow: 0 0 0 1px rgba(16,185,129,.35), 0 0 7px -1px rgba(16,185,129,.25), inset 0 0 10px -3px rgba(16,185,129,.12); border-color: rgba(16,185,129,.7); } }
@keyframes glow-down { 0%, 100% { box-shadow: 0 0 0 1px rgba(239,68,68,.25), 0 0 4px -2px rgba(239,68,68,.15), inset 0 0 6px -4px rgba(239,68,68,.06); border-color: rgba(239,68,68,.5); } 50% { box-shadow: 0 0 0 1px rgba(239,68,68,.35), 0 0 7px -1px rgba(239,68,68,.25), inset 0 0 10px -3px rgba(239,68,68,.12); border-color: rgba(239,68,68,.7); } }
.ticker-card:hover { border-color: var(--orange-line); transform: translateY(-2px); }
.ticker-card-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px; }
.ticker-asset { display: flex; align-items: center; gap: 8px; }
.ticker-glyph { font-family: var(--f-serif); font-size: 18px; color: var(--orange-deep); width: 24px; height: 24px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: var(--orange-soft); flex-shrink: 0; }
.ticker-glyph svg { transition: transform .8s cubic-bezier(.4,0,.2,1); display: block; }
.ticker-card:hover .ticker-glyph svg { transform: rotate(360deg) scale(1.1); }
.ticker-symbol { font-family: var(--f-serif); font-size: 22px; font-weight: 700; color: var(--text); letter-spacing: -.01em; }
.ticker-name { font-size: 12px; color: var(--text-3); font-family: var(--f-ar); }
.ticker-dot { width: 8px; height: 8px; border-radius: 50%; background: #10B981; box-shadow: 0 0 0 0 rgba(16,185,129,.5); animation: ticker-pulse 2s ease-in-out infinite; flex-shrink: 0; }
@keyframes ticker-pulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(16,185,129,.5); } 50% { box-shadow: 0 0 0 6px rgba(16,185,129,0); } }
.ticker-price { font-family: var(--f-mono); font-size: 32px; font-weight: 700; color: var(--text); margin-bottom: 6px; letter-spacing: -.02em; transition: color .35s var(--ease-soft); }
.ticker-price.flash-up { color: #10B981; }
.ticker-price.flash-down { color: #EF4444; }
.ticker-change { font-family: var(--f-mono); font-size: 13px; font-weight: 600; margin-bottom: 16px; padding: 4px 10px; border-radius: 6px; display: inline-block; }
.ticker-change.up { color: #059669; background: rgba(16,185,129,.1); }
.ticker-change.down { color: #DC2626; background: rgba(239,68,68,.1); }
.ticker-spark { height: 36px; margin: 6px 0 8px; padding: 6px 0; }
.ticker-spark-svg { width: 100%; height: 100%; display: block; }
.ticker-spark-svg path { transition: d .8s cubic-bezier(.4,0,.2,1); }
.ticker-meta-row { display: flex; justify-content: space-between; align-items: center; padding: 6px 0; border-top: 1px solid var(--border); font-size: 12px; }
.ticker-meta-label { color: var(--text-3); font-family: var(--f-ar); }
.ticker-last-tick { display: block; text-align: left; margin-top: 6px; font-family: var(--f-mono); font-size: 10px; color: var(--text-4); letter-spacing: .04em; opacity: .6; }
.ticker-meta-value { font-family: var(--f-mono); color: var(--text-2); font-weight: 600; }
.closing { background: var(--surface); padding: 80px 0; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.closing-grid { display: grid; grid-template-columns: 1fr; gap: 28px; }
.closing-head { font-family: var(--f-serif); font-weight: 700; font-size: clamp(28px, 3.6vw, 40px); letter-spacing: -0.015em; line-height: 1.25; color: var(--text); margin-bottom: 14px; }
.closing-head .accent { color: var(--orange-deep); }
.closing-lede { font-family: var(--f-ar); font-size: 16px; color: var(--text-2); line-height: 1.85; max-width: 880px; margin-bottom: 28px; }
.closing-points { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.closing-point { background: var(--bg-3); border: 1px solid var(--border); border-radius: 14px; padding: 20px 22px; }
.closing-point .k { font-family: var(--f-mono); font-size: 11px; color: var(--orange-deep); font-weight: 700; margin-bottom: 8px; }
.closing-point .t { font-family: var(--f-serif); font-weight: 700; font-size: 16px; color: var(--text); margin-bottom: 8px; line-height: 1.3; }
.closing-point .d { font-size: 13px; color: var(--text-2); line-height: 1.8; }
.closing-point .d b { color: var(--text); font-weight: 700; }
@media (max-width: 880px) { .closing-points { grid-template-columns: 1fr; } }

/* SOURCES */
.sources-head { font-family: var(--f-ar); font-size: 13px; color: var(--orange-deep); font-weight: 700; margin-bottom: 22px; padding: 6px 14px; background: var(--orange-soft); border-radius: 99px; display: inline-block; }
.sources-head .en { font-family: var(--f-ui); font-size: 11px; color: var(--orange-deep); margin-right: 8px; letter-spacing: 0.16em; opacity: 0.7; font-weight: 600; }
.sources { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.src-card {
  background: var(--bg-3);
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 20px 22px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  transition: all 0.3s ease;
  text-decoration: none;
  box-shadow: var(--shadow-soft);
}
.src-card:hover { transform: translateY(-2px); border-color: var(--orange); box-shadow: var(--shadow); }
.src-card .tier { font-family: var(--f-ar); font-size: 11px; padding: 4px 10px; border-radius: 99px; align-self: flex-start; font-weight: 700; }
.src-card.tier-1 .tier { color: var(--orange-deep); border: 1px solid var(--orange-line); background: var(--orange-soft); }
.src-card.tier-2 .tier { color: var(--text-3); border: 1px solid var(--border-2); background: var(--bg); }
.src-card.tier-3 .tier { color: var(--text-4); border: 1px solid var(--border); background: var(--bg-2); }
.src-card .name { font-family: var(--f-serif); font-weight: 700; font-size: 15px; color: var(--text); letter-spacing: -0.01em; line-height: 1.2; }
.src-card .name-ar { font-family: var(--f-ar); font-weight: 700; font-size: 12.5px; color: var(--text-2); margin-top: 2px; }
.src-card .desc { font-family: var(--f-ar); font-size: 12px; color: var(--text-2); line-height: 1.7; }
.src-card .url { font-family: var(--f-mono); font-size: 10px; color: var(--text-4); word-break: break-all; line-height: 1.4; direction: ltr; text-align: left; }
.src-card .url::before { content: "→ "; color: var(--orange); font-weight: 700; }
@media (max-width: 960px) { .sources { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .sources { grid-template-columns: 1fr; } }

/* DISCLOSURES */
.disc { background: var(--bg-2); padding: 32px 0; border-top: 1px solid var(--border); font-family: var(--f-ar); font-size: 12.5px; color: var(--text-2); line-height: 1.85; }
.disc-head { font-family: var(--f-serif); font-weight: 700; font-size: 14px; color: var(--text); margin-bottom: 14px; padding-bottom: 12px; border-bottom: 1px solid var(--border); letter-spacing: -0.01em; }
.disc ul { list-style: none; }
.disc ul li { padding: 8px 0; padding-right: 22px; position: relative; font-size: 12px; color: var(--text-3); line-height: 1.75; }
.disc ul li::before { content: '·'; position: absolute; right: 6px; top: 4px; color: var(--orange); font-weight: 700; font-size: 18px; line-height: 1.7; }
.disc ul li b { color: var(--text); font-weight: 700; }

/* FOOTER */
.foot { background: var(--bg-2); border-top: 1px solid var(--border); padding: 36px 0 28px; font-family: var(--f-ar); font-size: 13px; color: var(--text-2); position: relative; overflow: hidden; }
.foot::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 1px; background: linear-gradient(90deg, transparent, var(--orange), transparent); }
.foot-inner { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 24px; padding: 0 0 18px; border-bottom: 1px solid var(--border); }
.foot-brand { display: flex; align-items: center; gap: 14px; color: var(--text); }
.foot-brand img { width: 40px; height: 40px; border-radius: 8px; box-shadow: 0 1px 3px rgba(20,20,30,.08); }
.foot-brand-text { display: flex; flex-direction: column; gap: 4px; }
.foot-brand-name { font-family: var(--f-serif); font-weight: 700; font-size: 15px; color: var(--text); letter-spacing: -.01em; }
.foot-brand-sub { font-size: 11.5px; color: var(--text-3); letter-spacing: .02em; }
.foot-status { display: inline-flex; align-items: center; gap: 6px; margin-top: 2px; }
.status-dot { width: 7px; height: 7px; border-radius: 50%; background: #10B981; box-shadow: 0 0 0 0 rgba(16,185,129,.5); animation: status-pulse 2s ease-in-out infinite; }
@keyframes status-pulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(16,185,129,.5); } 50% { box-shadow: 0 0 0 5px rgba(16,185,129,0); } }
.status-text { font-size: 11px; font-weight: 600; color: #059669; }
.foot-links { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.foot-link { display: inline-flex; align-items: center; gap: 6px; padding: 7px 12px; border: 1px solid var(--border); border-radius: 999px; background: var(--bg-3); color: var(--text); font-size: 12px; font-weight: 600; text-decoration: none; transition: all .25s var(--ease-soft); }
.foot-link:hover { border-color: var(--orange); color: var(--orange); transform: translateY(-1px); }
.foot-link svg { flex-shrink: 0; }
.foot-tg:hover { background: #0088cc; border-color: #0088cc; color: #fff; }
.foot-home:hover { background: var(--orange); border-color: var(--orange); color: #fff; }
.foot-bottom { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; padding-top: 16px; }
.foot .copyright { letter-spacing: .04em; text-transform: none; font-size: 12px; color: var(--text-3); font-family: var(--f-ar); }
.foot-meta { font-size: 11px; color: var(--text-4); font-family: var(--f-mono); }
.foot a { color: inherit; border-bottom: none; }


/* ============================================================
   SCROLL BEHAVIOR + LANDING PAGE ANIMATIONS
   ============================================================ */
html {
  scroll-behavior: smooth;
  scroll-padding-top: 110px;
}

/* HEADER SHRINK ON SCROLL */
.masthead {
  transition: padding 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;
}
.masthead.scrolled {
  padding: 8px 0;
  box-shadow: 0 2px 16px rgba(20,20,30,.08);
  background: rgba(246,244,238,0.97);
}

/* Hide secnav on scroll (all sizes) + shrink masthead proportionally */
.secnav.nav-hidden { transform: translateY(-100%); opacity: 0; pointer-events: none; }
.secnav { transition: transform .35s cubic-bezier(.4,0,.2,1), opacity .25s ease; }
.masthead { transition: padding .3s ease, background .3s ease, box-shadow .3s ease; }

/* Mobile (<= 768px): aggressive shrink */
@media (max-width: 768px) {
  .masthead.scrolled { padding: 8px 0 !important; }
  .masthead.scrolled .brand-logo { width: 32px !important; height: 32px !important; }
  .masthead.scrolled .brand-text .mark { font-size: 14px !important; }
  .masthead.scrolled .brand-text .sub { display: none; }
  .masthead.scrolled .natahr-site-pill { padding: 4px 8px !important; font-size: 10px !important; }
  .masthead.scrolled .okx-pill { padding: 4px 8px !important; font-size: 10px !important; }
}

/* Tablet (769px - 1100px): moderate shrink */
@media (min-width: 769px) and (max-width: 1100px) {
  .masthead.scrolled { padding: 10px 0 !important; }
  .masthead.scrolled .brand-logo { width: 38px !important; height: 38px !important; }
  .masthead.scrolled .brand-text .mark { font-size: 16px !important; }
  .masthead.scrolled .brand-text .sub { display: none; }
  .masthead.scrolled .natahr-site-pill { padding: 5px 10px !important; font-size: 11px !important; }
  .masthead.scrolled .okx-pill { padding: 5px 10px !important; font-size: 11px !important; }
}

/* Desktop (>1100px): subtle shrink + light box-shadow on scroll */
@media (min-width: 1101px) {
  .masthead.scrolled { padding: 8px 0 !important; box-shadow: 0 2px 12px rgba(0,0,0,.04); }
  .masthead.scrolled .brand-logo { width: 40px !important; height: 40px !important; }
  .masthead.scrolled .brand-text .mark { font-size: 17px !important; }
  .masthead.scrolled .brand-text .sub { font-size: 11px !important; opacity: .7; }
  .masthead.scrolled .natahr-site-pill { padding: 5px 11px !important; font-size: 11px !important; }
  .masthead.scrolled .okx-pill { padding: 5px 11px !important; font-size: 11px !important; }
}
.masthead.scrolled .brand-logo {
  width: 32px;
  height: 32px;
  transition: width 0.3s ease, height 0.3s ease;
}
.masthead.scrolled .brand-text .mark {
  font-size: 14px;
  transition: font-size 0.3s ease;
}
.masthead.scrolled .brand-text .sub {
  font-size: 10.5px;
  transition: font-size 0.3s ease;
}
.masthead.scrolled .okx-pill {
  padding: 4px 10px;
  transition: padding 0.3s ease;
}
.masthead.scrolled .okx-pill img {
  width: 14px;
  height: 14px;
  transition: width 0.3s ease, height 0.3s ease;
}

/* SCROLL REVEAL ANIMATIONS */
.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.7s cubic-bezier(.2,.8,.2,1), transform 0.7s cubic-bezier(.2,.8,.2,1);
  will-change: opacity, transform;
}
.reveal.in-view {
  opacity: 1;
  transform: translateY(0);
}
.reveal-stagger > * {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}
.reveal-stagger.in-view > *:nth-child(1) { transition-delay: 0.05s; opacity: 1; transform: translateY(0); }
.reveal-stagger.in-view > *:nth-child(2) { transition-delay: 0.1s;  opacity: 1; transform: translateY(0); }
.reveal-stagger.in-view > *:nth-child(3) { transition-delay: 0.15s; opacity: 1; transform: translateY(0); }
.reveal-stagger.in-view > *:nth-child(4) { transition-delay: 0.2s;  opacity: 1; transform: translateY(0); }
.reveal-stagger.in-view > *:nth-child(5) { transition-delay: 0.25s; opacity: 1; transform: translateY(0); }
.reveal-stagger.in-view > *:nth-child(6) { transition-delay: 0.3s;  opacity: 1; transform: translateY(0); }
.reveal-stagger.in-view > *:nth-child(7) { transition-delay: 0.35s; opacity: 1; transform: translateY(0); }
.reveal-stagger.in-view > *:nth-child(8) { transition-delay: 0.4s;  opacity: 1; transform: translateY(0); }
.reveal-stagger.in-view > *:nth-child(9) { transition-delay: 0.45s; opacity: 1; transform: translateY(0); }

/* SECTION HEADINGS - subtle reveal */
.section .section-head {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}
.section .section-head.in-view {
  opacity: 1;
  transform: translateY(0);
}

/* HERO ANIMATIONS */
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(24px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
.hero-eyebrow, .hero-title, .hero-intro, .hero-intro-en, .hero-lede, .hero-meta {
  animation: fadeUp 0.8s cubic-bezier(.2,.8,.2,1) backwards;
}
.hero-eyebrow { animation-delay: 0.05s; }
.hero-title { animation-delay: 0.15s; }
.hero-intro { animation-delay: 0.3s; }
.hero-intro-en { animation-delay: 0.45s; }
.hero-lede { animation-delay: 0.6s; }
.hero-meta { animation-delay: 0.75s; }
.hero-side { animation: fadeIn 1s ease 0.4s backwards; }

/* BACK TO TOP BUTTON */
.back-to-top {
  position: fixed;
  bottom: 24px;
  left: 24px;
  width: 44px;
  height: 44px;
  background: var(--orange);
  color: var(--bg-3);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--f-ar);
  font-weight: 700;
  font-size: 18px;
  cursor: pointer;
  box-shadow: 0 6px 20px rgba(232,137,61,.4);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: all 0.3s ease;
  z-index: 50;
  border: none;
}
.back-to-top.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.back-to-top:hover {
  background: var(--orange-deep);
  transform: translateY(-3px);
  box-shadow: 0 10px 26px rgba(232,137,61,.5);
}

/* PROGRESS BAR */
.read-progress {
  position: fixed;
  top: 0;
  left: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--orange), var(--orange-deep));
  z-index: 200;
  width: 0%;
  transition: width 0.1s ease;
}

/* PRE-FADE for everything below the fold */
.section, .closing {
  opacity: 1;
}

/* Section divider subtle */
.section + .section { position: relative; }


@media (prefers-reduced-motion: reduce) { * { animation: none !important; transition: none !important; } }
