/* N-ought — shared stylesheet */
/* All pages link to this file. Page-specific rules remain inline. */

  *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
  :root {
    --bg:#070810;--accent:#4a9eff;--accent-mid:#1a2a7a;--accent-deep:#0d1033;
    --text:#c8d4e8;--text-dim:#3a4a6a;--text-faint:#1a2240;
    --mono:'Courier New',Courier,monospace;--serif:Georgia,'Times New Roman',serif;
  }
  html { scroll-behavior:smooth; }
  body { background:var(--bg);color:var(--text);font-family:var(--mono);font-size:15px;line-height:1.6;letter-spacing:.04em;overflow-x:hidden; }

  /* PARTICLES */
  #particles { position:fixed;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none; }
  #surface-light { position:fixed;top:-20%;left:30%;width:50%;height:70%;background:radial-gradient(ellipse at 50% 0%,rgba(74,158,255,.03) 0%,transparent 70%);pointer-events:none;z-index:2; }

  /* NAV — identical to index */
  nav { position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:24px 48px;border-bottom:.5px solid var(--text-faint);background:rgba(7,8,16,.88);backdrop-filter:blur(4px); }
  .nav-mark { display:inline-block;width:28px;height:28px;cursor:pointer;text-decoration:none;flex-shrink:0; }
  .nav-mark svg { display:block;width:28px;height:28px; }
  .nav-links { display:flex;gap:48px;list-style:none; }
  .nav-links a { color:var(--text-dim);text-decoration:none;font-size:11px;letter-spacing:.18em;text-transform:uppercase;transition:color .3s; }
  .nav-links a:hover { color:var(--accent); }
  .nav-links .nav-divider { width:.5px;height:14px;background:var(--text-faint);align-self:center;flex-shrink:0; }

  /* CONTENT WRAPPER */
  .doc-wrap {
    position:relative;
    z-index:10;
    max-width:860px;
    margin:0 auto;
    padding:140px 48px 120px;
  }

  /* PAPER HEADER */
  .paper-meta {
    font-size:9px;
    letter-spacing:.25em;
    color:#2a3860;
    text-transform:uppercase;
    margin-bottom:40px;
  }

  .paper-title {
    font-family:var(--mono);
    font-size:18px;
    font-weight:normal;
    color:var(--accent);
    opacity:.9;
    letter-spacing:.12em;
    line-height:1.5;
    margin-bottom:16px;
  }

  .paper-subtitle {
    font-size:12px;
    color:#7a8faa;
    letter-spacing:.06em;
    font-style:italic;
    margin-bottom:48px;
  }

  .paper-rule {
    width:100%;
    height:.5px;
    background:var(--text-faint);
    margin-bottom:56px;
  }

  /* TOC */
  .toc {
    position:fixed;
    top:80px;
    right:24px;
    width:250px;
    max-height:calc(100vh - 120px);
    overflow-y:auto;
    padding:20px 20px;
    border:.5px solid var(--text-faint);
    background:rgba(7,8,16,.92);
    z-index:50;
    font-size:10px;
  }

  .toc-label {
    font-size:9px;
    letter-spacing:.25em;
    color:#2a3860;
    text-transform:uppercase;
    margin-bottom:20px;
  }

  .toc ol {
    list-style:none;
    counter-reset:toc;
  }

  .toc li {
    counter-increment:toc;
    font-size:11px;
    color:#7a8faa;
    letter-spacing:.05em;
    padding:5px 0;
    border-bottom:.5px solid var(--text-faint);
    display:flex;
    gap:12px;
  }

  .toc li:last-child { border-bottom:none; }

  .toc li::before {
    content:counter(toc,decimal-leading-zero);
    color:var(--text-faint);
    font-size:9px;
    letter-spacing:.1em;
    flex-shrink:0;
    padding-top:1px;
  }

  .toc a {
    color:#7a8faa;
    text-decoration:none;
    transition:color .2s;
  }

  .toc a:hover { color:var(--accent); }

  .toc::-webkit-scrollbar {
  width: 3px;
}
.toc::-webkit-scrollbar-track {
  background: transparent;
}
.toc::-webkit-scrollbar-thumb {
  background: var(--text-faint);
  border-radius: 2px;
}
.toc::-webkit-scrollbar-thumb:hover {
  background: var(--text-dim);
}
.toc {
  scrollbar-width: thin;
  scrollbar-color: var(--text-faint) transparent;
}

  /* ABSTRACT */
  .abstract {
    margin-bottom:56px;
    padding:28px 32px;
    border-left:1px solid var(--accent-mid);
    background:rgba(13,16,51,.1);
  }

  .abstract-label {
    font-size:9px;
    letter-spacing:.25em;
    color:#2a3860;
    text-transform:uppercase;
    margin-bottom:16px;
  }

  .abstract p {
    font-size:12px;
    color:#7a8faa;
    line-height:1.9;
    letter-spacing:.04em;
    margin-bottom:16px;
  }

  .abstract p:last-child { margin-bottom:0; }

  /* SECTION */
  .section {
    margin-bottom:72px;
  }

  .section-anchor {
    display:block;
    height:80px;
    margin-top:-80px;
    visibility:hidden;
  }

  .section-label {
    font-size:9px;
    letter-spacing:.25em;
    color:var(--accent);
    opacity:.7;
    text-transform:uppercase;
    margin-bottom:16px;
  }

  .section h2 {
    font-family:var(--mono);
    font-size:13px;
    font-weight:normal;
    letter-spacing:.25em;
    color:var(--accent);
    opacity:.88;
    text-transform:uppercase;
    margin-bottom:32px;
    padding-bottom:16px;
    border-bottom:.5px solid var(--text-faint);
  }

  .section h3 {
    font-family:var(--mono);
    font-size:11px;
    font-weight:normal;
    letter-spacing:.2em;
    color:var(--accent);
    opacity:.75;
    text-transform:uppercase;
    margin:40px 0 20px;
  }

  .section p {
    font-size:12px;
    color:#7a8faa;
    line-height:1.9;
    letter-spacing:.04em;
    margin-bottom:20px;
    max-width:860px;
    white-space:normal;
  }

  .section ul, .section ol {
    margin:0 0 20px 0;
    padding-left:0;
    list-style:none;
  }

  .section ul li, .section ol li {
    font-size:12px;
    color:#7a8faa;
    line-height:1.9;
    letter-spacing:.04em;
    padding:4px 0 4px 20px;
    position:relative;
    max-width:860px;
    white-space:normal;
  }

  .section ul li::before {
    content:'—';
    position:absolute;
    left:0;
    color:var(--text-faint);
  }

  .section ol { counter-reset:ol; }
  .section ol li { counter-increment:ol; }
  .section ol li::before {
    content:counter(ol)'.';
    position:absolute;
    left:0;
    color:var(--text-faint);
    font-size:10px;
  }

  /* BLOCKQUOTE — law statement & callouts */
  .section blockquote {
    margin:32px 0;
    padding:24px 28px;
    border-left:1px solid var(--accent-mid);
    background:rgba(13,16,51,.15);
  }

  .section blockquote p {
    font-size:12px;
    color:var(--text);
    opacity:.8;
    letter-spacing:.05em;
    line-height:1.9;
    margin-bottom:0;
    font-style:italic;
  }

  /* CALLOUT — Nordic, method note, etc */
  .callout {
    margin:32px 0;
    padding:24px 28px;
    border:.5px solid var(--text-faint);
    background:rgba(7,8,16,.4);
  }

  .callout p {
    font-size:11px;
    color:#7a8faa;
    line-height:1.9;
    letter-spacing:.04em;
    margin-bottom:12px;
    max-width:none;
  }

  .callout p:last-child { margin-bottom:0; }

  /* STRONG / EM */
  strong { color:var(--accent);font-weight:normal;letter-spacing:.02em;opacity:.9; }
  em { color:#7a8faa;font-style:italic; }

  /* FORMULA BLOCK */
  .formula {
    margin:24px 0;
    padding:20px 24px;
    background:rgba(13,16,51,.25);
    border:.5px solid var(--text-faint);
    font-size:12px;
    color:var(--text);
    letter-spacing:.06em;
    line-height:2;
  }

  .formula-var {
    margin-top:16px;
    font-size:11px;
    color:#7a8faa;
    line-height:2;
    letter-spacing:.04em;
  }

  /* DIVIDER */
  .doc-rule {
    width:100%;
    height:.5px;
    background:var(--text-faint);
    margin:64px 0;
  }

  /* APPENDIX label */
  .appendix-tag {
    font-size:9px;
    letter-spacing:.3em;
    color:var(--text-faint);
    text-transform:uppercase;
    margin-bottom:12px;
  }

  /* BACK LINK */
  .back-link {
    display:inline-block;
    font-size:10px;
    letter-spacing:.2em;
    color:#7a8faa;
    text-decoration:none;
    text-transform:uppercase;
    margin-bottom:64px;
    transition:color .2s;
  }
  .back-link:hover { color:var(--accent); }

  /* FOOTER */
  footer { position:relative;z-index:10;padding:20px 48px;display:flex;justify-content:space-between;align-items:center;font-size:9px;color:var(--text-faint);letter-spacing:.1em;border-top:.5px solid var(--text-faint); }

  @media(max-width:860px){
    nav { padding:20px 24px; }
    .nav-links { gap:20px; }
    .doc-wrap { padding:110px 24px 80px; }
    footer { padding:20px 24px;flex-direction:column;gap:8px; }
    .toc { display:none; }
  }

  /* PRINT / SSRN EXPORT */
  @media print {
    nav,
    .toc,
    .back-link,
    #particles,
    #surface-light,
    footer {
      display: none !important;
    }

    html,
    body {
      background: #ffffff !important;
      color: #000000 !important;
      font-family: Georgia, "Times New Roman", serif !important;
      font-size: 11pt !important;
      line-height: 1.45 !important;
      letter-spacing: normal !important;
      overflow: visible !important;
    }

    .doc-wrap {
      max-width: none !important;
      margin: 0 !important;
      padding: 0.65in 0.75in !important;
      position: static !important;
      z-index: auto !important;
    }

    .paper-meta,
    .paper-title,
    .paper-subtitle,
    .abstract-label,
    .section-label,
    .appendix-tag,
    .section h2,
    .section h3 {
      font-family: Georgia, "Times New Roman", serif !important;
      letter-spacing: normal !important;
      text-transform: none !important;
    }

    .paper-meta {
      color: #666 !important;
      font-size: 9pt !important;
      margin-bottom: 18pt !important;
    }

    .paper-title {
      color: #000 !important;
      font-size: 20pt !important;
      font-weight: bold !important;
      margin-bottom: 8pt !important;
      opacity: 1 !important;
    }

    .paper-subtitle {
      color: #333 !important;
      font-size: 12pt !important;
      margin-bottom: 12pt !important;
    }

    .print-source {
      display: block !important;
      color: #666 !important;
      font-size: 9pt !important;
      margin-bottom: 24pt !important;
    }

    .paper-rule,
    .doc-rule {
      background: #cccccc !important;
      height: 1px !important;
      margin: 24pt 0 !important;
    }

    .abstract,
    .callout,
    .formula,
    .section blockquote {
      background: #f7f7f7 !important;
      border-color: #cccccc !important;
      color: #000 !important;
      break-inside: avoid;
      page-break-inside: avoid;
    }

    .abstract p,
    .section p,
    .section ul li,
    .section ol li,
    .callout p,
    .formula,
    .formula-var,
    .section blockquote p {
      color: #000 !important;
      font-size: 10.5pt !important;
      line-height: 1.5 !important;
      letter-spacing: normal !important;
      max-width: none !important;
    }

    .section {
      margin-bottom: 32pt !important;
      break-inside: auto;
      page-break-inside: auto;
    }

    .section h2 {
      color: #000 !important;
      font-size: 14pt !important;
      font-weight: bold !important;
      border-bottom: 1px solid #cccccc !important;
      margin-bottom: 16pt !important;
      padding-bottom: 6pt !important;
      page-break-after: avoid;
      break-after: avoid;
    }

    .section h3 {
      color: #000 !important;
      font-size: 12pt !important;
      font-weight: bold !important;
      margin: 20pt 0 10pt !important;
      page-break-after: avoid;
      break-after: avoid;
    }

    strong {
      color: #000 !important;
      font-weight: bold !important;
      opacity: 1 !important;
    }

    em {
      color: #333 !important;
    }

    a {
      color: #000 !important;
      text-decoration: none !important;
    }

    img {
      max-width: 100% !important;
      page-break-inside: avoid;
      break-inside: avoid;
    }
  }

  @media screen {
    .print-source {
      display: none;
    }
  }
