:root{--ink:#1a1714;--paper:#f5f1e8;--panel:#efe9dc;--rule:#d6cdb8;--muted:#6b6255;--indigo:#1a3a5c;--sienna:#c14d2a;--moss:#5a6b3a;--umber:#8a6a3a;color-scheme:light}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.55 Inter,Arial,sans-serif}button,input,select{font:inherit}button,select,input[type=checkbox],summary{cursor:pointer}button,a,input,select,summary{touch-action:manipulation}a{color:var(--indigo);text-underline-offset:3px}button{color:var(--ink);background:transparent;border:1px solid var(--rule);padding:9px 13px;border-radius:2px}button:hover:not(:disabled){background:var(--panel);border-color:var(--umber)}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--sienna);outline-offset:4px}.skip{position:fixed;left:18px;top:-80px;z-index:9;background:var(--paper);padding:10px 16px}.skip:focus{top:12px}.workspace{display:grid;grid-template-columns:338px minmax(0,1fr);gap:28px;padding:26px;max-width:2000px;margin:auto}.sidebar{padding:27px;background:var(--panel);border:1px solid var(--rule);align-self:start}.masthead{padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid var(--ink)}.imprint{font-variant-caps:small-caps;letter-spacing:.08em;color:var(--muted);font-size:12px;margin:0 0 14px}.imprint span{float:right}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Crimson Pro',Georgia,serif;font-weight:500;line-height:1.05}h1{font-size:43px;margin-bottom:13px;letter-spacing:-.025em}.deck{font:italic 21px/1.25 'Crimson Pro',Georgia,serif;margin-bottom:17px}.introduction{font-size:13px;line-height:1.65;margin-bottom:0;color:var(--muted)}label,legend{font-size:12px;font-weight:500}fieldset{padding:0;border:0;margin:21px 0}legend{margin-bottom:9px}input[type=search],select{width:100%;border:1px solid #b7aa94;background:var(--paper);border-radius:2px;min-height:42px;padding:9px 11px;color:var(--ink)}.search-wrap{position:relative;margin-top:7px}.search-wrap input{padding-right:38px}.search-wrap button{position:absolute;right:1px;top:1px;padding:4px 11px;font-size:22px;border:0;height:40px}.type-filter{display:flex;align-items:center;gap:10px;padding:6px 0;cursor:pointer}.type-filter input{accent-color:var(--indigo);width:16px;height:16px;margin:0}.type-filter .type-name{flex:1}.type-count{font:11px 'JetBrains Mono',monospace;color:var(--muted)}.text-button{padding:8px 0;border:0;text-decoration:underline;text-underline-offset:4px;font-size:12px;margin-top:9px}.text-button:hover:not(:disabled){background:transparent;border-color:transparent}.selection-panel{margin-top:24px;background:var(--paper);padding:19px 18px;border:1px solid var(--rule);scroll-margin-top:18px;overflow-wrap:anywhere}.selection-panel h2{font-size:26px;line-height:1.12;margin:7px 0 10px}.selection-panel h3{font-size:21px;margin:21px 0 9px}.selection-panel p{font:17px/1.45 'Crimson Pro',Georgia,serif;margin-bottom:12px}.selection-panel .panel-kind,.selection-panel .citation,.selection-panel .degree-note{font:11px/1.6 'JetBrains Mono',monospace;color:var(--muted)}.selection-panel .version-note{padding-left:12px;border-left:2px solid var(--sienna);font:14px/1.5 Inter,sans-serif}.selection-panel .status-note{font:12px/1.5 Inter,sans-serif;color:var(--indigo)}.selection-panel .pinpoint{font:12px/1.6 'JetBrains Mono',monospace}.source-links{list-style:none;margin:12px 0;padding:0}.source-links li{margin:9px 0;font-size:12px}.source-links a{display:inline-block;padding:2px 0}.connected-links{list-style:none;margin:0;padding:0}.connected-links button{width:100%;text-align:left;font-size:12px;line-height:1.5;padding:9px 0;border:0;border-bottom:1px solid var(--rule)}.panel-actions{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:11px}.panel-actions button{font-size:11px;padding:4px 8px}.library-link{display:flex;justify-content:space-between;margin-top:21px;font-size:12px}.graph-heading{display:flex;justify-content:space-between;align-items:end;gap:22px;margin:7px 0 20px}.graph-heading h2{font-size:40px;letter-spacing:-.02em;margin:0}.graph-heading .imprint{margin-bottom:8px}.review-stamp{font:11px/1.6 'JetBrains Mono',monospace;max-width:180px;color:var(--muted);text-align:right;margin:0}.graph-tools{display:flex;flex-wrap:wrap;align-items:center;gap:9px}.graph-tools button{font-size:12px}.check-control{display:flex;align-items:center;gap:7px;margin-left:8px}.check-control input{accent-color:var(--indigo)}.quiet{color:var(--muted);font-size:12px}.graph-tools .quiet{margin-left:auto}.layout-controls{margin:13px 0;font-size:12px;color:var(--muted)}.layout-controls summary{display:inline-block;text-decoration:underline;text-underline-offset:4px}.layout-controls>div{display:grid;grid-template-columns:auto minmax(100px,1fr) auto minmax(100px,1fr);gap:13px;max-width:700px;align-items:center;margin:14px 0 8px}.layout-controls label output{font:10px 'JetBrains Mono',monospace;margin-left:8px}input[type=range]{accent-color:var(--indigo);width:100%}.status{font-size:12px;min-height:19px;margin:15px 0 10px;color:var(--muted)}.status.error{color:#9a351c}.graph-scroll{overflow:auto;border:1px solid var(--rule);background:var(--paper);overscroll-behavior-x:contain}.graph{min-width:780px;min-height:460px}.graph svg{display:block;width:100%;height:auto}.loading{font:italic 24px 'Crimson Pro',Georgia,serif;padding:100px 40px;margin:0}.graph .node{cursor:grab;touch-action:none}.graph .node:active{cursor:grabbing}.graph .node:focus{outline:none}.graph .node:focus .node-shape{stroke:#c14d2a;stroke-width:4}.graph .node-label{paint-order:stroke;stroke:var(--paper);stroke-width:5;stroke-linejoin:round;pointer-events:none}.graph .edge-hit{stroke:transparent;stroke-width:18;fill:none;cursor:pointer}.graph .edge-group:focus{outline:none}.graph .edge-group:focus .edge-line{stroke:var(--sienna);stroke-width:3}.graph .edge-label{paint-order:stroke;stroke:var(--paper);stroke-width:5;stroke-linejoin:round;pointer-events:none}.map-footer{display:flex;justify-content:space-between;gap:22px;font:11px/1.6 'JetBrains Mono',monospace;color:var(--muted);padding:13px 0;border-bottom:1px solid var(--rule)}.legend{margin:17px 0 21px;font-size:12px;color:var(--muted);max-width:90ch}.legend p{margin:11px 0}.node-legend{display:flex;flex-wrap:wrap;gap:20px;color:var(--ink)}.node-legend>span{display:inline-flex;align-items:center;gap:8px}.symbol{display:inline-block;flex:none;width:11px;height:11px;border-radius:50%;background:#8a6a3a}.symbol.case{background:var(--indigo)}.symbol.statute{background:var(--sienna)}.symbol.reform{background:var(--moss);border-radius:1px}.relationship-legend{display:flex;flex-wrap:wrap;gap:8px 15px}.relationship-legend button{border:0;padding:3px 0;font-size:11px;text-decoration:underline;text-underline-offset:3px}.relationship-legend .line-sample{display:inline-block;width:25px;border-top:1px solid var(--muted);margin:0 7px 3px 0}.relationship-legend button[aria-pressed=true]{color:var(--sienna)}.export-bar{display:flex;align-items:center;gap:9px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:14px 0}.export-bar>span{font:20px 'Crimson Pro',Georgia,serif;margin-right:8px}.export-bar button{font-size:12px}.export-bar p{font-size:11px;color:var(--muted);margin:0 0 0 auto;max-width:40ch}.records{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:35px;margin-top:32px}.list-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--ink);padding-bottom:10px;margin-bottom:9px}.list-heading h2{font-size:29px;margin:0}.list-heading>span{font:11px 'JetBrains Mono',monospace;color:var(--muted)}.authority-list,.relationship-list{list-style:none;padding:0;margin:0}.authority-list li,.relationship-list li{border-bottom:1px solid var(--rule)}.record-button{display:block;width:100%;border:0;border-radius:0;text-align:left;padding:16px 2px;background:transparent;line-height:1.4}.record-button:hover:not(:disabled){background:var(--panel);border:0}.record-button[aria-pressed=true]{background:var(--panel);box-shadow:inset 3px 0 var(--sienna);padding-left:12px}.record-button .record-title{display:block;font:22px/1.2 'Crimson Pro',Georgia,serif;margin-bottom:6px}.record-button .record-meta{display:block;font:10px/1.6 'JetBrains Mono',monospace;color:var(--muted)}.record-button .record-status{display:block;font-size:11px;line-height:1.5;margin-top:6px;color:var(--indigo)}.relationship-list .record-button .record-title{font-size:19px}.relationship-list .relation-type{display:inline-block;font:10px 'JetBrains Mono',monospace;color:var(--sienna);margin-bottom:7px}.empty-list{font:18px/1.5 'Crimson Pro',Georgia,serif;padding:22px 0;color:var(--muted)}.page-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--ink);font-size:11px;color:var(--muted);padding:18px 0;margin-top:35px}.page-footer p{margin:0}.no-script{padding:30px;font-size:18px}
@media(min-width:1350px){.workspace{grid-template-columns:355px minmax(0,1fr);gap:34px;padding:32px}.sidebar{padding:30px}.graph-heading h2{font-size:45px}}
@media(max-width:1050px){.workspace{grid-template-columns:290px minmax(0,1fr);padding:18px;gap:20px}.sidebar{padding:22px}h1{font-size:37px}.graph-heading{align-items:start}.graph-heading h2{font-size:34px}.review-stamp{max-width:130px;font-size:10px}.records{grid-template-columns:1fr}.graph-tools .quiet{width:100%;margin:0}.layout-controls>div{grid-template-columns:auto 1fr}.map-footer{flex-direction:column;gap:4px}}
@media(max-width:760px){.workspace{display:block;padding:16px}.sidebar{padding:24px;margin-bottom:27px}.masthead{margin-bottom:20px}.masthead h1{font-size:44px;max-width:none}.introduction{max-width:65ch}.selection-panel{margin-top:20px}main{min-width:0}.graph-heading h2{font-size:35px}.graph-heading{gap:12px}.review-stamp{font-size:10px;max-width:125px}.graph{min-width:760px}.check-control{margin-left:0}.graph-tools button{padding:9px}.export-bar{flex-wrap:wrap}.export-bar p{width:100%;max-width:none;margin:2px 0}.records{gap:29px}.page-footer{display:block}.page-footer p{margin-bottom:9px}.record-button{padding:17px 2px}.record-button .record-title{font-size:24px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* Put the selected explanation next to the drawing before the filter controls. */
.sidebar.has-selection{display:flex;flex-direction:column}.sidebar.has-selection .masthead{order:0}.sidebar.has-selection .selection-panel{order:1;margin-top:0;margin-bottom:24px}.sidebar.has-selection #filters{order:2}.sidebar.has-selection .library-link{order:3}
