/* Shared design tokens based on index.html: Tailwind blues and indigo. */
:root {
  --ink:#1f2937; --sub:#4b5563; --muted:#4b5563;
  --primary:#2563eb; --primary-dark:#1e40af; --navy:#1e3a8a;
  --accent:#dbeafe; --line:#e5e7eb; --bg:#f9fafb; --surface:#fff;
  --shadow:0 6px 22px rgba(30,64,175,.055);
}
body {background:var(--bg); color:var(--ink); font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;}
a {color:var(--primary);}
a:hover {text-decoration-color:#1e40af;}
.hero {background:linear-gradient(112deg,#1e40af 0%,#1e3a8a 58%,#312e81 100%);color:#fff;padding:49px 0 43px;}
.eyebrow {color:#bfdbfe; opacity:1;}
.hero p {color:#dbeafe;}
.meta-chip {color:#e0e7ff;background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.25);}
.nav,.site-nav {position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 2px 8px rgba(30,58,138,.045);}
.nav .wrap,.site-nav .wrap {display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px;}
.nav-items {display:flex;align-items:center;flex-wrap:wrap;gap:2px;}
.nav .home-brand,.site-nav .home-brand {font-size:1.16rem;line-height:1.25;font-weight:790;letter-spacing:-.035em;text-decoration:none;padding:7px 4px 7px 0;white-space:nowrap; background:linear-gradient(90deg,#4e73df,#224abe);background-clip:text;-webkit-background-clip:text;color:#1d4ed8;-webkit-text-fill-color:transparent;}
.nav-items a {text-decoration:none;white-space:nowrap;font-size:.83rem;font-weight:650;padding:8px 9px;border-radius:8px;color:#374151;}
.nav-items a:hover {background:#eff6ff;color:#1d4ed8;}
.nav-items a[aria-current='page'] {background:#dbeafe;color:#1e40af;}
.summary-card,.stat-card,.tools,.toolbar,.table-wrap,.distinction,.smallprint,.ip-link,.paper-table {border-color:var(--line);box-shadow:var(--shadow);}
.summary-card {border-top-color:#2563eb;}
.summary-card.ip {border-top-color:#6366f1;}
.summary-value,.summary-name,.count {color:#1d4ed8;}
.summary-desc,.stat-title,.stat-description,.section-header p,.record-note,.result-count,.footer {color:#4b5563;}
.category-strip a,.quick-links a {border-color:#dbeafe;background:white;color:#1e40af;}
.category-strip a:hover,.quick-links a:hover {background:#eff6ff;border-color:#93c5fd;}
.ip-link strong {color:#1e40af;}
.tools input,.tools select,.search {border-color:#cbd5e1;background:#fff;}
.tools input:focus,.tools select:focus,.search:focus {border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.16);}
.paper-table th,thead th {background:#eff6ff;color:#1e40af;border-bottom-color:#dbeafe;}
.paper-table tbody tr:hover,tbody tr:hover {background:#f8fbff;}
.paper-table .papertitle,.patent-title {color:#1f2937;}
.paper-table .authors,.record-note {color:#4b5563;}
.paper-table .self {color:#1d4ed8;}
.paper-table .year small,.year small,.year-label {color:#64748b;}
.paper-table td,tbody td {border-color:var(--line);}
.pill {background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe;}
.outlink {background:#2563eb;color:white;}
.outlink:hover {background:#1d4ed8;color:white;}
.portfolio-table .tag {color:#4338ca;background:#eef2ff;}
.portfolio-table .tag.pub {color:#1e40af;background:#dbeafe;}
.btn {border-color:#bfdbfe;color:#1d4ed8;background:white;}
.btn:hover {background:#eff6ff;}
.filter {color:#475569;}
.filter:hover {background:#eff6ff;}
.filter[aria-pressed='true'] {color:#1e40af;background:#dbeafe;border-color:#93c5fd;}
.num {color:#64748b;}
.source {color:#2563eb;}
.smallprint h3,.smallprint strong,.section-header h2 {color:#1f2937;}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible {outline:3px solid #93c5fd;outline-offset:2px;}
@media(max-width:740px) {
  .nav .wrap,.site-nav .wrap {padding-top:10px;padding-bottom:10px;}
  .nav-items {gap:1px;flex-wrap:nowrap;width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-bottom:5px;}
  .nav-items a {font-size:.79rem;padding:7px 8px;}
  .hero {padding:34px 0 32px;}
}
@media print {
  .nav,.site-nav {display:none!important;}
  .hero {background:white;color:#111;padding:15px 0;}
  .hero p,.eyebrow {color:#444;}
  .meta-chip {color:#444;}
  .summary-value {color:#111;}
}
