/* ============================================================
   WHITEPAPER SPECIFIC STYLES
   ============================================================ */
.whitepaper-wrap {
  --wp-orange: #ff6600;
  --wp-orange-2: #ff8a33;
  --wp-line: rgba(255,255,255,.09);
  --wp-muted: #9bb0c6;
  --wp-text: #ecf4ff;
  --wp-shadow: 0 30px 90px rgba(0,0,0,.42);
  
  color: var(--wp-text);
  padding-bottom: 80px;
}

.whitepaper-wrap .wp-brand { display: flex; align-items: center; gap: 14px; font-weight: 800; letter-spacing: .02em; }
.whitepaper-wrap .wp-logo {
  width: 40px; height: 40px; border-radius: 14px;
  background: linear-gradient(135deg, var(--wp-orange), var(--wp-orange-2));
  box-shadow: 0 12px 34px rgba(255,102,0,.30); position: relative; overflow: hidden;
}
.whitepaper-wrap .wp-logo:before, .whitepaper-wrap .wp-logo:after {
  content: ""; position: absolute; inset: 8px; border: 2px solid rgba(255,255,255,.34); border-radius: 10px;
}
.whitepaper-wrap .wp-logo:after { inset: 13px; border-width: 1px; opacity: .92; }
.whitepaper-wrap .wp-nav { display: flex; gap: 10px; flex-wrap: wrap; }

.whitepaper-wrap .wp-page { padding: 28px 0 70px; }
.whitepaper-wrap .wp-cover {
  min-height: calc(100vh - 110px); min-height: calc(100dvh - 110px); display: grid; grid-template-columns: 1.15fr .85fr; gap: 28px; align-items: stretch; padding-top: 26px;
}

.whitepaper-wrap .wp-glass, .whitepaper-wrap .wp-panel, .whitepaper-wrap .wp-metric, 
.whitepaper-wrap .wp-chapter, .whitepaper-wrap .wp-proof-card, .whitepaper-wrap .wp-position-card, 
.whitepaper-wrap .wp-flow-card, .whitepaper-wrap .wp-module-card, .whitepaper-wrap .wp-quote {
  background: linear-gradient(180deg, rgba(14,26,40,.92), rgba(8,17,28,.95));
  border: 1px solid var(--wp-line); box-shadow: var(--wp-shadow);
}

.whitepaper-wrap h1 { font-size: clamp(34px, 5vw, 68px); line-height: .98; letter-spacing: -.05em; margin: 0 0 12px; }
.whitepaper-wrap h2 { font-size: clamp(28px, 3vw, 44px); line-height: 1.04; letter-spacing: -.035em; margin: 0 0 12px; }
.whitepaper-wrap h3 { font-size: 22px; line-height: 1.16; letter-spacing: -.02em; margin: 0 0 12px; }
.whitepaper-wrap h4 { font-size: 16px; line-height: 1.2; letter-spacing: .01em; margin: 0 0 12px; }
.whitepaper-wrap .wp-lead { font-size: 18px; color: #c9d7e7; max-width: 860px; }
.whitepaper-wrap .wp-metrics { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; margin-top: 28px; }
.whitepaper-wrap .wp-metric { border-radius: 20px; padding: 18px 18px 16px; }
.whitepaper-wrap .wp-metric .k { font-size: 32px; line-height: 1; font-weight: 900; letter-spacing: -.04em; margin-bottom: 6px; }
.whitepaper-wrap .wp-metric .l { color: var(--wp-muted); font-size: 12px; text-transform: uppercase; letter-spacing: .1em; font-weight: 700; }

.whitepaper-wrap .wp-radar { border-radius: 28px; padding: 22px; position: relative; overflow: hidden; min-height: 360px; height: 100%;}
.whitepaper-wrap .wp-radar-grid {
  position: absolute; inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size: 28px 28px; mask-image: linear-gradient(180deg, rgba(0,0,0,.9), rgba(0,0,0,.3)); opacity: .55;
}
.whitepaper-wrap .wp-radar-orbit {
  position: absolute; inset: 50% auto auto 50%; transform: translate(-50%,-50%); width: 78%; aspect-ratio: 1; 
  border-radius: 50%; border: 1px solid rgba(255,255,255,.08); box-shadow: inset 0 0 0 60px rgba(255,255,255,.01), inset 0 0 0 120px rgba(255,255,255,.01);
}
.whitepaper-wrap .wp-node {
  position: absolute; min-width: 120px; padding: 10px 12px; border-radius: 14px; font-size: 12px; font-weight: 800;
  text-transform: uppercase; letter-spacing: .08em; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.1);
  color: #dbe7f4; backdrop-filter: blur(8px);
}
.whitepaper-wrap .wp-node.core {
  left: 50%; top: 50%; transform: translate(-50%,-50%); background: linear-gradient(135deg, rgba(255,102,0,.22), rgba(255,138,51,.10));
  border-color: rgba(255,102,0,.28); color: #ffd9bf; box-shadow: 0 18px 40px rgba(255,102,0,.18);
}
.whitepaper-wrap .wp-node.n1 { left: 8%; top: 18%; }
.whitepaper-wrap .wp-node.n2 { right: 8%; top: 20%; }
.whitepaper-wrap .wp-node.n3 { left: 8%; bottom: 20%; }
.whitepaper-wrap .wp-node.n4 { right: 8%; bottom: 18%; }
.whitepaper-wrap .wp-node.n5 { left: 50%; top: 8%; transform: translateX(-50%); }
.whitepaper-wrap .wp-node.n6 { left: 50%; bottom: 8%; transform: translateX(-50%); }
.whitepaper-wrap .wp-radar svg { position: absolute; inset: 0; width: 100%; height: 100%; }

.whitepaper-wrap .wp-section { padding: 40px 0 8px; scroll-margin-top: 160px; }
.whitepaper-wrap .wp-section-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 18px; }
.whitepaper-wrap .wp-toc { display: flex; gap: 10px; flex-wrap: wrap; }
.whitepaper-wrap .wp-toc a {
  padding: 11px 14px; border-radius: 999px; background: rgba(255,255,255,.03); border: 1px solid var(--wp-line);
  color: #d7e3ef; font-size: 14px; text-decoration: none;
}
.whitepaper-wrap .wp-toc a:hover { border-color: rgba(255,102,0,.34); color: white; }

.whitepaper-wrap .wp-chapter { border-radius: 32px; overflow: hidden; margin-top: 20px; }
.whitepaper-wrap .wp-chapter-head {
  padding: 28px 28px 18px; border-bottom: 1px solid var(--wp-line); display: grid; grid-template-columns: 1fr auto; gap: 20px;
  background: linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0)), radial-gradient(circle at 92% 10%, rgba(255,102,0,.12), transparent 22%);
}
.whitepaper-wrap .wp-chapter-code {
  align-self: start; padding: 11px 14px; border-radius: 16px; background: rgba(255,255,255,.04);
  border: 1px solid var(--wp-line); color: #cfd9e4; font-size: 13px; font-weight: 700; letter-spacing: .04em;
}
.whitepaper-wrap .wp-chapter-body { padding: 24px 28px 30px; display: grid; gap: 18px; }

.whitepaper-wrap .wp-grid-3 { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.whitepaper-wrap .wp-panel { border-radius: 24px; padding: 20px; }
.whitepaper-wrap .wp-quote { border-radius: 28px; padding: 26px; position: relative; overflow: hidden; }
.whitepaper-wrap .wp-quote:before {
  content: "“"; position: absolute; right: 20px; top: -10px; font-size: 140px; line-height: 1; color: rgba(255,255,255,.04); font-weight: 900;
}
.whitepaper-wrap .wp-quote p { font-size: 22px; line-height: 1.38; letter-spacing: -.02em; margin: 0; }

.whitepaper-wrap .wp-proof-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 16px; }
.whitepaper-wrap .wp-proof-card { border-radius: 24px; padding: 20px; }
.whitepaper-wrap .wp-table { width: 100%; border-collapse: collapse; font-size: 14px; margin-top: 8px; }
.whitepaper-wrap .wp-table td { padding: 11px 0; border-bottom: 1px solid var(--wp-line); vertical-align: top; }
.whitepaper-wrap .wp-table td:first-child { width: 34%; color: var(--wp-muted); }

.whitepaper-wrap .wp-flow { border-radius: 24px; padding: 22px; background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01)); border: 1px solid var(--wp-line); }
.whitepaper-wrap .wp-flow-grid { display: grid; grid-template-columns: repeat(5,1fr); gap: 12px; margin-top: 14px; align-items: stretch; }
.whitepaper-wrap .wp-flow-card { border-radius: 20px; padding: 16px; background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02)); box-shadow: none; min-height: 150px; position: relative; }
.whitepaper-wrap .wp-step { width: 28px; height: 28px; border-radius: 10px; display: grid; place-items: center; background: rgba(255,102,0,.14); color: #ffd5bb; font-weight: 900; font-size: 12px; margin-bottom: 10px; }

.whitepaper-wrap .wp-diagram-shell { border-radius: 26px; padding: 24px; background: linear-gradient(180deg, rgba(6,16,26,.9), rgba(8,18,30,.96)); border: 1px solid var(--wp-line); position: relative; overflow: hidden; }
.whitepaper-wrap .wp-diagram-shell:before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px); background-size: 28px 28px; mask-image: linear-gradient(180deg, rgba(0,0,0,.75), transparent); pointer-events: none; }
.whitepaper-wrap .wp-layer { border-radius: 20px; border: 1px solid var(--wp-line); background: rgba(255,255,255,.03); padding: 18px; margin-bottom: 14px; position: relative; z-index: 1;}
.whitepaper-wrap .wp-layer-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 12px; }
.whitepaper-wrap .wp-chip { padding: 8px 10px; border-radius: 999px; font-size: 12px; font-weight: 800; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.09); color: #d9e5ef; }
.whitepaper-wrap .wp-chip.orange { background: rgba(255,102,0,.10); border-color: rgba(255,102,0,.24); color: #ffd7bc; }
.whitepaper-wrap .wp-chip.blue { background: rgba(86,181,255,.10); border-color: rgba(86,181,255,.24); color: #d4efff; }
.whitepaper-wrap .wp-chip.green { background: rgba(99,214,165,.10); border-color: rgba(99,214,165,.24); color: #d8ffee; }
.whitepaper-wrap .wp-chip.yellow { background: rgba(255,211,107,.10); border-color: rgba(255,211,107,.24); color: #ffefc0; }

.whitepaper-wrap .wp-position-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.whitepaper-wrap .wp-position-card { border-radius: 24px; padding: 20px; }

.whitepaper-wrap .wp-module-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
.whitepaper-wrap .wp-module-card { border-radius: 22px; padding: 18px; background: linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.02)); box-shadow: none; }
.whitepaper-wrap .wp-module-card .icon { width: 42px; height: 42px; border-radius: 14px; display: grid; place-items: center; margin-bottom: 12px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.09); font-weight: 900; color: #ffd6bb; }

@media (max-width: 1160px) {
  .whitepaper-wrap .wp-cover, .whitepaper-wrap .wp-proof-grid, .whitepaper-wrap .wp-position-grid, .whitepaper-wrap .wp-module-grid, .whitepaper-wrap .wp-metrics, .whitepaper-wrap .wp-flow-grid { grid-template-columns: 1fr 1fr; }
  .whitepaper-wrap .wp-cover { grid-template-columns: 1fr; }
  .whitepaper-wrap .wp-nav { display: none; }
}
@media (max-width: 760px) {
  .whitepaper-wrap .wp-cover, .whitepaper-wrap .wp-proof-grid, .whitepaper-wrap .wp-position-grid, .whitepaper-wrap .wp-module-grid, .whitepaper-wrap .wp-metrics, .whitepaper-wrap .wp-flow-grid { grid-template-columns: 1fr; }
}