:root { --case-muted:#a2b0c3; --case-rule:#2a394d; --case-red:#f16a7c; --case-cyan:#7fcce7; }
.case-kicker,.case-edition { font: 600 11px/1.7 'JetBrains Mono',monospace; letter-spacing:.1em; text-transform:uppercase; }
.case-kicker { color:var(--case-red); }
.case-edition { color:#8193ae; }
.accountability-section p,.enforcement-focus p { font:13.0px/1.9 'Inter',sans-serif; color:var(--case-muted); }
.accountability-section h3,.enforcement-focus h3 { color:#eef3fb; font-weight:750; letter-spacing:-.025em; line-height:1.35; }
.accountability-section a,.enforcement-focus a { text-underline-offset:4px; }
.case-section-heading { max-width:910px; }
.case-section-heading h2 { margin:13px 0 17px; text-transform:uppercase; color:#f0f4fc; font-weight:900; }
.case-section-heading>p { max-width:840px; }
.case-section-heading>.case-kicker::before { content:''; display:inline-block; width:24px; height:1px; background:currentColor; vertical-align:middle; margin-right:12px; }
.case-spread { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:38px; }
.case-prose h3 { font-size:29.0px; margin:15px 0 20px; }
.case-prose>p { margin:14px 0; }
.case-prose blockquote { border-left:2px solid var(--case-red); margin:25px 0; padding:2px 0 2px 21px; color:#e7edf7; font:italic 21px/1.7 Georgia,serif; }
.case-source { font:11.0px/1.9 'JetBrains Mono',monospace!important; color:#8fa3bf!important; margin-top:19px; overflow-wrap:anywhere; }
.case-source a,.case-text-link,.case-legal-note a,.case-method-note a { color:var(--case-cyan); }
.case-source a:hover,.case-text-link:hover,.case-legal-note a:hover,.case-method-note a:hover { text-decoration:underline; }
.case-legal-note { border-left:2px solid #527e96; background:#16233485; padding:19px 22px; margin-top:22px; }
.case-legal-note p { margin-top:9px; font-size:12.0px; }
.case-legal-note>.case-kicker { color:var(--case-cyan); }
.case-text-link { display:inline-block; margin-top:15px; font:600 11px/1.8 'Inter',sans-serif; }
.case-disclosure { border-top:1px solid var(--case-rule); border-bottom:1px solid var(--case-rule); margin:25px 0; }
.case-disclosure summary { cursor:pointer; padding:17px 0; list-style:none; display:flex; justify-content:space-between; gap:18px; color:#d5dfef; font:600 12px/1.7 'Inter',sans-serif; }
.case-disclosure summary::-webkit-details-marker { display:none; }
.case-disclosure summary>span { font-size:19.0px; font-weight:400; color:var(--case-red); transition:transform .2s; }
.case-disclosure[open] summary>span { transform:rotate(45deg); }
.case-disclosure>div { padding-bottom:18px; }
.case-disclosure p+p { margin-top:12px; }
.case-disclosure strong { color:#f1d4dc; }
.surveillance-panel { padding:29px; border:1px solid #583043; border-top:2px solid #d4546e; border-radius:10px; background:radial-gradient(ellipse at 100% 0,#6a263122,transparent 65%),#0c1420; }
.surveillance-heading { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:13px; padding-bottom:20px; border-bottom:1px solid #513043; }
.case-status { color:#f9b1be; border:1px solid #754152; padding:4px 9px; background:#6d29382b; font: 600 11px/1.5 'JetBrains Mono',monospace; text-transform:uppercase; white-space:nowrap; }
.surveillance-panel h3 { font-size:30.0px; margin:24px 0 13px; }
.surveillance-capabilities { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:25px; margin-top:24px; }
.surveillance-capabilities>div { padding:17px 0; border-top:1px solid #2b3447; }
.surveillance-capabilities dt { font:600 12px/1.8 'Inter',sans-serif; color:#e4e9f3; margin-bottom:8px; }
.surveillance-capabilities dt>span { font:11.0px 'JetBrains Mono',monospace; margin-right:8px; color:#c96d82; }
.surveillance-capabilities dd { color:#94a4bc; font:11.0px/1.9 'Inter',sans-serif; }
.case-bottom-line,.case-law-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:38px; }
.case-bottom-line { border-top:1px solid var(--case-rule); padding-top:27px; align-items:start; }
.case-bottom-line h3,.case-law-columns h3 { font-size:21.0px; margin:13px 0; }
.case-bottom-line .case-legal-note { margin:0; }
.case-law-columns>div { padding:6px 0 0 22px; border-left:1px solid #35475e; }
.case-method-note { border:1px solid var(--case-rule); border-radius:6px; padding:17px 21px; font-size:11.0px!important; }
.case-method-note strong { color:#d3deed; }
.case-actions { display:flex; flex-wrap:wrap; gap:13px 26px; margin-top:19px; }
.case-actions>a { font:600 11px/1.7 'Inter',sans-serif; color:var(--case-cyan); }
.case-actions>a:hover { text-decoration:underline; }
.revenue-inline-link { display:inline-block; margin-top:8px; color:#e7bb75; text-underline-offset:4px; }
.revenue-inline-link:hover { text-decoration:underline; }
.revenue-explorer { border:1px solid #3b475a; border-radius:11px; background:linear-gradient(120deg,#152335,#0c1522 70%); overflow:hidden; scroll-margin-top:170px; }
.revenue-explorer-head { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px; padding:29px 32px; }
.revenue-explorer-head h3 { margin-top:9px; font-size:27.0px; }
.revenue-explorer-head .case-kicker { color:#e6b66c; }
.revenue-tabs { display:flex; gap:5px; padding:0 27px; border-bottom:1px solid #32445b; }
.revenue-tabs button { color:#a6b3c7; padding:15px 18px; border-bottom:2px solid transparent; background:transparent; font:500 11px/1.7 'JetBrains Mono',monospace; }
.revenue-tabs button[aria-selected=true] { color:#f2c484; border-bottom-color:#edb262; background:#e8b26b09; }
.revenue-tabs button:hover { box-shadow:none!important; color:#f5d4a3; transform:none!important; }
.revenue-panel { padding:32px; }
.revenue-panel[hidden] { display:none; }
.money-flow { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:35px; list-style:none; padding:0; margin:0; }
.money-flow>li { position:relative; padding:20px; background:#0a121fb3; border:1px solid #36465c; border-radius:6px; }
.money-flow>li+li::before { content:'→'; position:absolute; left:-27px; top:40%; color:#ddae75; font-size:20.0px; }
.money-flow>li>span { display:block; color:#90a5c2; font:11.0px/1.7 'JetBrains Mono',monospace; text-transform:uppercase; }
.money-flow strong { display:block; color:#e6eef9; font:650 18px/1.5 'Inter',sans-serif; margin:11px 0 7px; }
.money-flow p { font-size:11.0px; }
.flow-result { display:grid; grid-template-columns:minmax(0,.72fr) minmax(0,1.3fr); align-items:center; gap:32px; border-top:1px solid #2e4056; padding-top:25px; margin-top:26px; }
.flow-result>strong { color:#f1c689; font:700 clamp(28px,3vw,42px)/1.2 'Inter',sans-serif; letter-spacing:-.04em; }
.flow-result small { display:block; color:#9fb0c9; font:11.0px/1.7 'JetBrains Mono',monospace; letter-spacing:0; max-width:230px; margin-top:11px; }
.flow-result>p { font-size:12.0px; }
.dsa-spread { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,.65fr); gap:40px; align-items:start; }
.dsa-timeline { padding-left:40px; }
.dsa-timeline>div { position:relative; padding:0 0 31px 25px; border-left:1px solid #48536b; }
.dsa-timeline>div:last-child { padding-bottom:0; }
.timeline-node { position:absolute; top:-2px; left:-16px; width:31px; height:31px; background:#111b29; border:1px solid #53637b; display:grid; place-items:center; color:#adbad0; font:11.0px 'JetBrains Mono',monospace; border-radius:50%; }
.dsa-timeline h3 { font-size:22.0px; margin:9px 0; }
.dsa-timeline p { max-width:680px; font-size:12.0px; }
.dsa-fine { border-top:2px solid #ed667b; background:linear-gradient(145deg,#301c2b,#152235); padding:27px; border-radius:0 0 8px 8px; }
.dsa-fine>strong { display:block; color:#f7a9b8; font:800 126px/1.2 'Inter',sans-serif; letter-spacing:-.08em; margin:17px 0 4px; }
.dsa-fine>strong>span { font-size:61.0px; }
.dsa-fine h3 { font-size:19.0px; max-width:210px; margin-bottom:15px; }
.dsa-fine p { font-size:11.0px; }
.age-bridge { display:grid; grid-template-columns:minmax(0,1fr) 75px minmax(0,1fr); align-items:center; padding:27px 32px; border:1px solid #38475c; border-radius:9px; background:linear-gradient(110deg,#162a3a,#151c2a); }
.age-bridge strong { display:block; font:700 26.0px/1.4 'Inter',sans-serif; color:#e9eff9; margin:12px 0; letter-spacing:-.025em; }
.age-bridge-symbol { text-align:center; font:300 47px 'Inter',sans-serif; color:#e991a0; }
.age-bridge .case-kicker { color:#7cbfdb; }
.age-bridge>div:last-child .case-kicker { color:#eaa2b0; }
.dsar-layout { display:grid; grid-template-columns:minmax(0,.77fr) minmax(0,1.23fr); gap:36px; align-items:start; }
.dsar-steps { list-style:none; padding:0; margin:0; }
.dsar-steps>li { display:flex; gap:18px; padding:20px 0; border-top:1px solid var(--case-rule); }
.dsar-steps>li>span { font:500 11px/1.6 'JetBrains Mono',monospace; color:var(--case-cyan); padding-top:4px; }
.dsar-steps h3 { font-size:19.0px; margin-bottom:9px; }
.dsar-steps p { font-size:12.0px; }
.dsar-steps a { color:var(--case-cyan); font:11.0px/1.8 'JetBrains Mono',monospace; display:inline-block; margin-top:9px; }
.dsar-paper { padding:30px 32px 19px; background:#eeeae1; color:#26323f; border-top:4px solid #b64157; border-radius:4px; box-shadow:0 20px 45px #0003; min-width:0; }
.dsar-paper-head { display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px; border-bottom:1px solid #b4b5b1; padding-bottom:16px; color:#57575a; font:11.0px/1.7 'JetBrains Mono',monospace; text-transform:uppercase; letter-spacing:.08em; }
.dsar-paper h3 { color:#293544; font:700 25.0px/1.35 Georgia,serif; letter-spacing:-.01em; margin:20px 0 8px; }
.dsar-paper .dsar-paper-caption { color:#726d68; font-size:11.0px; }
.dsar-paper #dsar-template { margin:22px 0; white-space:pre-wrap; overflow-wrap:anywhere; font:13.0px/1.85 Georgia,serif!important; color:#303c48; background:transparent; border:0; padding:0; }
.dsar-paper-actions { display:flex; flex-wrap:wrap; gap:10px; padding-top:20px; border-top:1px solid #c4c3ba; }
.dsar-paper-actions button,.dsar-paper-actions a { display:flex; justify-content:space-between; align-items:center; gap:23px; padding:11px 16px; border-radius:4px; background:#24374b; color:#f2f2eb; font:600 11px/1.7 'Inter',sans-serif; }
.dsar-paper-actions a { background:transparent; border:1px solid #939997; color:#35434b; }
.dsar-paper-actions button:disabled { opacity:.45; cursor:default; }
.dsar-copy-status { min-height:22px; margin-top:10px; color:#42634d!important; font-size:11.0px!important; }
.evidence-conclusion { padding:26px 30px; border:1px solid #3b5268; background:linear-gradient(115deg,#16324577,#15233444); border-radius:7px; }
.evidence-conclusion h3 { font-size:24.0px; margin:11px 0 13px; }
.evidence-conclusion .case-kicker { color:var(--case-cyan); }
.enforcement-focus { padding:31px 0 0; margin-top:31px; border-top:1px solid #3f4359; }
.focus-heading { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; }
.enforcement-focus>h3 { font-size:clamp(24px,2.6vw,35px); margin:13px 0; }
.enforcement-focus .focus-intro { max-width:910px; font-size:13.0px; }
.enforcement-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:25px 0; border-block:1px solid #3b3c50; }
.enforcement-stats>div { padding:23px 19px; border-right:1px solid #3b3c50; }
.enforcement-stats>div:first-child { padding-left:0; }
.enforcement-stats>div:last-child { border-right:0; }
.enforcement-stats strong { display:block; font:700 clamp(24px,2.8vw,37px)/1.35 'Inter',sans-serif; color:#f0d8d9; letter-spacing:-.04em; }
.enforcement-stats span { display:block; color:#9bacc3; font:11.0px/1.7 'JetBrains Mono',monospace; margin-top:9px; }
.rule-line { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.4fr) minmax(0,.7fr); gap:27px; align-items:center; padding:23px 0; border-bottom:1px solid #303c4e; }
.rule-line h4 { color:#eff1f8; font:650 17px/1.5 'Inter',sans-serif; margin-top:7px; }
.rule-line p { font-size:12.0px; }
.rule-line>a { font: 500 11px/1.8 'JetBrains Mono',monospace; color:var(--case-cyan); }
.trust-question { margin-top:28px; padding:25px 28px; border-left:2px solid #e7a69f; background:#111a26; }
.trust-question h4 { font:700 22.0px/1.45 'Inter',sans-serif; color:#e6ecf7; margin:11px 0; letter-spacing:-.025em; }
.trust-question p { font-size:12.0px; }
.network-proof { display:flex; flex-wrap:wrap; align-items:center; gap:23px; padding:24px 27px; background:#122332; border:1px solid #355570; border-radius:7px; margin-top:25px; }
.network-proof>div { flex:1; min-width:220px; }
.network-proof h4 { font:700 20.0px/1.4 'Inter',sans-serif; color:#e6edf6; margin:8px 0; }
.network-proof p { font-size:11.0px; }
.network-proof>a { color:#9dd2e8; font:600 11px/1.8 'Inter',sans-serif; }
@keyframes flow-enter { from {opacity:.25;transform:translateY(9px)} to {opacity:1;transform:translateY(0)} }
@media(prefers-reduced-motion:no-preference) { .revenue-explorer.is-interactive .revenue-panel:not([hidden]) { animation:flow-enter .3s ease both; } }
@media(max-width:1050px) { .case-spread { gap:25px;grid-template-columns:repeat(2,minmax(0,1fr)); }.surveillance-capabilities{grid-template-columns:1fr}.surveillance-panel{padding:23px}.money-flow{gap:25px}.money-flow>li{padding:17px}.money-flow>li+li::before{left:-21px}.dsar-layout{gap:25px;grid-template-columns:repeat(2,minmax(0,1fr))}.dsar-paper{padding:24px}.rule-line{gap:20px;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}.rule-line>a{grid-column:2}.dsa-spread{gap:25px} }
@media(max-width:767px) {
 .case-spread,.case-bottom-line,.case-law-columns,.dsar-layout,.dsa-spread { grid-template-columns:1fr;gap:26px; }
 .case-prose h3 { font-size:25.0px; }.surveillance-capabilities{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.surveillance-panel h3{font-size:26.0px}
 .revenue-explorer-head{padding:23px}.revenue-explorer-head h3{font-size:23.0px}.revenue-tabs{padding:0 12px;gap:0;justify-content:space-between}.revenue-tabs button{font-size:11.0px;padding:12px 8px;line-height:1.9}
 .revenue-panel{padding:23px}.money-flow{grid-template-columns:1fr;gap:26px}.money-flow>li+li::before{content:'↓';left:calc(50% - 6px);top:-27px;font-size:18.0px}.money-flow strong{font-size:19.0px;margin:6px 0}.flow-result{grid-template-columns:1fr;gap:18px;margin-top:23px}.flow-result small{max-width:none}.flow-result>strong{font-size:35.0px}
 .dsa-timeline{padding-left:16px}.dsa-fine{padding:23px;display:grid;grid-template-columns:105px minmax(0,1fr);gap:8px 23px;align-items:center}.dsa-fine>.case-kicker{grid-column:1/-1}.dsa-fine>strong{font-size:84.0px;grid-row:2/4;margin:0}.dsa-fine>strong>span{font-size:42.0px}.dsa-fine h3{font-size:18.0px;margin:8px 0 0}.dsa-fine p{grid-column:2;font-size:11.0px}
 .age-bridge{grid-template-columns:1fr;gap:10px;padding:23px}.age-bridge strong{font-size:23.0px}.age-bridge-symbol{text-align:left;font-size:35.0px}.dsar-paper #dsar-template{font-size:13.0px!important}.dsar-paper{padding:24px 23px 14px}.evidence-conclusion{padding:22px}.evidence-conclusion h3{font-size:22.0px}
 .focus-heading>.case-edition{font-size:11.0px}.enforcement-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.enforcement-stats>div{padding:18px}.enforcement-stats>div:nth-child(2){border-right:0}.enforcement-stats>div:nth-child(3){padding-left:0;border-top:1px solid #3b3c50}.enforcement-stats>div:nth-child(4){border-top:1px solid #3b3c50}.enforcement-stats strong{font-size:29.0px}.rule-line{grid-template-columns:1fr;gap:11px}.rule-line>a{grid-column:auto}.trust-question{padding:21px}.trust-question h4{font-size:20.0px}.network-proof{padding:22px}.network-proof>div{min-width:0}
}
@media(max-width:440px){.surveillance-capabilities{grid-template-columns:1fr}.revenue-tabs button{font-size:11.0px;padding:12px 6px}.case-kicker,.case-edition{font-size:11.0px}.dsa-fine{grid-template-columns:90px minmax(0,1fr);gap:10px 18px}.dsa-fine>strong{font-size:75.0px}.dsa-fine>strong>span{font-size:37.0px}.dsar-paper-actions a,.dsar-paper-actions button{padding:10px 12px;gap:15px}.enforcement-focus p{font-size:12.0px}}
@media print{
 .revenue-panel[hidden]{display:block!important}.revenue-panel{break-inside:avoid;border-bottom:1px solid #aaa}.case-spread,.case-bottom-line,.case-law-columns,.dsar-layout,.dsa-spread{display:block}.accountability-section,.enforcement-focus{break-inside:auto!important}.accountability-section p,.accountability-section h3,.accountability-section strong,.accountability-section a,.accountability-section dd,.accountability-section dt,.accountability-section .case-kicker,.enforcement-focus *{color:#222!important}.surveillance-panel,.dsar-paper,.dsa-fine,.evidence-conclusion,.revenue-explorer,.case-legal-note,.trust-question,.network-proof,.age-bridge,.money-flow>li{background:#fff!important;box-shadow:none!important}.case-disclosure>div{display:block!important}.case-disclosure summary>span{display:none}.money-flow>li{border-color:#aaa}.dsar-paper{margin-top:25px}.dsa-fine>strong{font-size:65.0px}.surveillance-capabilities{grid-template-columns:repeat(2,1fr)}
}
.rule-record {
  grid-column: 1 / -1;
  margin-top: 4px;
  padding: 14px 16px;
  border: 1px solid #2f3f52;
  border-left: 3px solid var(--case-cyan);
  border-radius: 4px;
  background: #0e1722;
  transition: border-color .2s ease, background-color .2s ease;
}
.rule-record-head {
  display: flex; flex-wrap: wrap; gap: 6px 14px;
  align-items: baseline; justify-content: space-between;
}
.rule-record-head span {
  color: var(--case-cyan);
  font:700 11.0px/1.5 'JetBrains Mono', monospace;
  letter-spacing: .13em; text-transform: uppercase;
}
.rule-record-head b { color: #eff4f9; font:700 13.0px/1.4 'JetBrains Mono', monospace; }
.rule-record-classes {
  display: flex; flex-wrap: wrap; gap: 6px;
  margin: 11px 0 0; padding: 0; list-style: none;
}
.rule-record-classes li {
  display: inline-flex; align-items: baseline; gap: 6px;
  padding: 3px 9px; border: 1px solid #33455a; border-radius: 99px;
  color: #b3c4d3; font: 500 11px/1.6 'Inter', sans-serif;
}
.rule-record-classes b { color: #e7eff6; font-weight: 700; }
.rule-record-examples { margin: 11px 0 0; padding: 0; list-style: none; }
.rule-record-examples li {
  display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px;
  padding: 5px 0; border-top: 1px solid #1d2938;
  font: 500 11px/1.6 'JetBrains Mono', monospace;
}
.rule-record-examples code { color: #e6b3ba; background: none; padding: 0; }
.rule-record-examples code.is-auth { color: #8fd3e0; }
.rule-record-examples i { color: #63788c; font-style: normal; }
.rule-record-examples .is-direct { color: #7b8ea1; }
.rule-record-examples em {
  margin-left: auto; color: #8ea2b4; font: 500 11px/1.6 'Inter', sans-serif; font-style: normal;
}
.rule-record-note {
  margin: 10px 0 0 !important;
  color: #8195a8 !important;
  font: 400 11px/1.65 'Inter', sans-serif !important;
}
@media (hover: hover) and (pointer: fine) {
  .rule-line:hover .rule-record { border-color: #46627a; border-left-color: #a9e2f1; background: #101c29; }
}
.rule-line:focus-within .rule-record { border-color: #46627a; border-left-color: #a9e2f1; }
@media screen {
  .casework .rule-record.motion-in-view .rule-record-examples li {
    animation: route-step-in .42s cubic-bezier(.2,.75,.3,1) both;
  }
  .casework .rule-record.motion-in-view .rule-record-examples li:nth-child(1) { animation-delay: .06s; }
  .casework .rule-record.motion-in-view .rule-record-examples li:nth-child(2) { animation-delay: .15s; }
  .casework .rule-record.motion-in-view .rule-record-examples li:nth-child(3) { animation-delay: .24s; }
  .casework .rule-record.motion-in-view .rule-record-classes li {
    animation: route-step-in .38s cubic-bezier(.2,.75,.3,1) both;
  }
  .casework .rule-record.motion-in-view .rule-record-classes li:nth-child(2) { animation-delay: .05s; }
  .casework .rule-record.motion-in-view .rule-record-classes li:nth-child(3) { animation-delay: .1s; }
  .casework .rule-record.motion-in-view .rule-record-classes li:nth-child(4) { animation-delay: .15s; }
}
@media print {
  .rule-record { background: #fff !important; border-color: #bbb !important; }
  .rule-record-examples code, .rule-record-head b { color: #111 !important; }
}
@media (max-width: 720px) {
  .rule-record-examples em { margin-left: 0; width: 100%; }
}
.rule-record-overlap {
  margin: 10px 0 0 !important;
  padding-top: 9px; border-top: 1px solid #1d2938;
  color: #b0c2d2 !important; font: 400 11px/1.65 'Inter', sans-serif !important;
}
.rule-record-overlap b { color: #e9f1f7; font-weight: 700; }
.rule-record-overlap:empty { display: none; }