/* A quiet documentation reader. Shared portfolio type and colors; native
   navigation and fragment links keep the entire manual usable without JS. */
.docs-shell{display:grid;grid-template-columns:230px minmax(0,1fr);gap:72px;align-items:start;padding-top:36px;padding-bottom:70px}
.docs-sidebar{position:sticky;top:calc(var(--header-height,84px) + 24px);max-height:calc(100dvh - var(--header-height,84px) - 48px);overflow-y:auto;padding:0 12px 16px 0}
.docs-project{display:inline-flex;align-items:center;min-height:44px;font-size:13px;color:var(--muted)}
.docs-sidebar>.eyebrow{font-size:10px;color:var(--blue);letter-spacing:.8px;margin:24px 0 14px}
.docs-sidebar nav{display:grid;border-left:1px solid var(--line)}
.docs-sidebar nav a{display:flex;align-items:center;padding:10px 15px;min-height:44px;font-size:14px;line-height:1.5;border-left:2px solid transparent;margin-left:-1px}
.docs-sidebar a[aria-current]{color:var(--blue);border-color:var(--blue);background:var(--blue-light)}
.docs-version{font:10px/1.8 var(--mono);color:var(--muted);margin-top:25px}
.docs-mobile{display:none}
.docs-mobile-outline{display:none}
.docs-article{max-width:840px;min-width:0;padding-top:8px;font-size:16px;line-height:1.85}
.docs-heading>.eyebrow{color:var(--blue);font-size:10px;letter-spacing:.6px}
.docs-heading h1{font-size:clamp(36px,4.2vw,54px);letter-spacing:-2px;line-height:1.12;margin:17px 0 22px;overflow-wrap:break-word}
.docs-heading>p:last-child{font-size:19px;line-height:1.7;color:var(--muted);max-width:700px}
.docs-context{font-size:13px;line-height:1.8;color:var(--muted);margin-top:20px}
.docs-context code{font:.9em var(--mono);overflow-wrap:anywhere}
.docs-outline{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:22px 0;margin-top:26px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.docs-outline a{font-size:13px;padding:5px 0;line-height:1.6}
.docs-article a{color:var(--blue);text-decoration:underline;text-underline-offset:4px}
.docs-article a:hover{color:var(--ink)}
.docs-section{padding-top:36px;scroll-margin-top:16px}
.docs-section h2{font-size:27px;letter-spacing:-.8px;line-height:1.3;margin-bottom:18px}
.docs-section h2>a{display:flex;align-items:baseline;gap:9px;color:var(--ink);text-decoration:none}
.docs-permalink{flex:none;color:var(--muted);font:14px var(--mono)}
.docs-section h2>a:hover .docs-permalink{color:var(--blue)}
.docs-section p{margin-top:16px}
.docs-section code{font:.82em/1.7 var(--mono);overflow-wrap:anywhere}
.docs-code{margin:22px 0;min-width:0}
.docs-code figcaption{font:10px/1.7 var(--mono);letter-spacing:.3px;color:var(--muted);padding:9px 15px;border:1px solid var(--line);border-bottom:0;background:var(--white)}
.docs-code pre{margin:0;max-width:100%;padding:18px 16px;border:1px solid var(--line);background:var(--white);overflow:auto;font:12px/1.9 var(--mono);tab-size:4}
.docs-code pre code{font:inherit;overflow-wrap:normal}
.docs-code pre:focus-visible,.docs-table:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.docs-expected{font-size:14px;color:var(--muted);padding-left:16px;border-left:2px solid #91acef}
.docs-expected strong{color:var(--ink);font-weight:400}
.docs-note{padding:18px 20px;border-left:3px solid var(--blue);background:var(--blue-light);margin:22px 0;font-size:14px}
.docs-note>strong{font:500 16px/1.5 var(--display)}
.docs-note>p{margin-top:8px}
.docs-tasks{list-style:none;padding:0;margin:0}
.docs-tasks li{padding:18px 0;border-bottom:1px solid var(--line)}
.docs-tasks li>a{font:500 21px/1.4 var(--display)}
.docs-tasks li>p{font-size:14px;color:var(--muted);margin-top:8px}
.docs-start{min-width:0;border:0;padding:0;margin:22px 0 0}
.docs-start legend{font:11px/1.8 var(--mono);color:var(--muted);padding:0 0 10px}
.docs-start-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;border:1px solid var(--line);background:var(--line)}
.docs-start-options label{display:flex;align-items:center;gap:10px;min-height:48px;padding:12px 15px;background:var(--paper);font-size:14px;line-height:1.5;cursor:pointer}
.docs-start-options input{accent-color:var(--blue);flex:none;width:16px;height:16px;margin:0}
.docs-start-options label:has(input:checked){background:var(--blue-light);color:var(--blue)}
.docs-start-options input:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.docs-start-panel{padding:24px 0 26px;border-bottom:1px solid var(--line)}
.docs-start-panel h3{font-size:25px;line-height:1.3;letter-spacing:-.7px}
.docs-start-panel>p{font-size:15px}
.docs-start-result{color:var(--muted);max-width:700px}
.docs-start-result strong{display:block;font:10px/1.8 var(--mono);color:var(--ink);margin-bottom:5px;text-transform:uppercase;letter-spacing:.5px}
.docs-article a.docs-start-action{display:inline-flex;align-items:center;gap:22px;min-height:48px;margin-top:20px;padding:11px 17px;background:var(--blue);color:white;text-decoration:none;font:500 14px/1.6 var(--display)}
.docs-article a.docs-start-action:hover{background:var(--ink);color:white}
.docs-reference-links{padding-left:20px;margin-top:14px}
.docs-reference-links a{display:inline-flex;align-items:center;min-height:44px;font-size:14px}
@supports selector(:has(*)){
 .docs-start-panel{display:none}
 .docs-start:has(input[value="public"]:checked) [data-start-plan="public"],
 .docs-start:has(input[value="source"]:checked) [data-start-plan="source"],
 .docs-start:has(input[value="csv"]:checked) [data-start-plan="csv"],
 .docs-start:has(input[value="database"]:checked) [data-start-plan="database"]{display:block}
}
.docs-flow{padding-left:24px}
.docs-flow li{padding-left:8px;margin:22px 0}
.docs-flow strong{font:500 19px/1.5 var(--display)}
.docs-flow p{font-size:15px;margin-top:8px}
.docs-table{max-width:100%;overflow:auto;margin:24px 0}
.docs-table table{width:100%;min-width:550px;border-collapse:collapse;text-align:left;font-size:13px;line-height:1.7}
.docs-table caption{text-align:left;font:11px/1.7 var(--mono);padding-bottom:12px;color:var(--muted)}
.docs-table th,.docs-table td{padding:13px 14px 13px 0;vertical-align:top;border-bottom:1px solid var(--line);font-weight:400}
.docs-table thead th{font:10px/1.8 var(--mono);color:var(--muted)}
.docs-table tbody th{min-width:130px}
.docs-sources{margin-top:25px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.docs-sources dl{margin:20px 0}
.docs-sources dl>div{padding:12px 0;border-bottom:1px solid var(--line)}
.docs-sources dt{color:var(--ink)}
.docs-sources dt code{font-size:12px}
.docs-sources dd{margin:5px 0 0}
.docs-pagination{display:flex;justify-content:space-between;gap:30px;margin-top:34px;padding-top:20px;border-top:1px solid var(--line)}
.docs-pagination a{max-width:48%;font-size:15px;line-height:1.5;padding:10px 0}
.docs-pagination a:last-child{text-align:right;margin-left:auto}
.docs-pagination small{display:block;font:10px/1.8 var(--mono);color:var(--muted);margin-bottom:6px}
@media(max-width:1050px){.docs-shell{grid-template-columns:210px minmax(0,1fr);gap:36px}.docs-heading h1{font-size:42px}}
@media(max-width:800px){
 .docs-shell{display:block;padding-top:15px;padding-bottom:38px}
 .docs-sidebar{display:none}
 .docs-mobile{display:block;margin-bottom:30px}
 .docs-mobile>details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:8px}
 .docs-mobile summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;padding:14px 0;min-height:48px;cursor:pointer;font:500 15px/1.5 var(--display)}
 .docs-mobile summary::-webkit-details-marker{display:none}
 .docs-mobile summary>span{font:24px/1 var(--body);color:var(--blue)}
 .docs-mobile details[open] summary>span{transform:rotate(45deg)}
 .docs-mobile summary:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
 .docs-mobile nav{display:grid;padding-bottom:14px}
 .docs-mobile nav a{padding:10px 12px;min-height:44px;font-size:14px}
 .docs-mobile a[aria-current]{color:var(--blue);background:var(--blue-light)}
 .docs-article{font-size:15px}
 .docs-heading h1{font-size:clamp(34px,7vw,44px);letter-spacing:-1.4px}
 .docs-heading>p:last-child{font-size:17px}
 .docs-outline a{min-height:40px;display:flex;align-items:center}
 .docs-outline{display:none}
 .docs-mobile-outline{display:block;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:24px}
 .docs-mobile-outline>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:48px;padding:12px 0;cursor:pointer;list-style:none;font:500 14px/1.5 var(--display)}
 .docs-mobile-outline>summary::-webkit-details-marker{display:none}
 .docs-mobile-outline>summary>span{color:var(--blue);font:22px/1 var(--body)}
 .docs-mobile-outline[open]>summary>span{transform:rotate(45deg)}
 .docs-mobile-outline>summary:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
 .docs-mobile-outline nav{display:grid;padding-bottom:12px}
 .docs-mobile-outline nav a{display:flex;align-items:center;min-height:44px;padding:8px 0;font-size:13px}
 .docs-start-options label{font-size:12px;padding:12px 10px;gap:8px}
 .docs-start-panel h3{font-size:23px}
 .docs-start-panel>p{font-size:14px}
 .docs-section{padding-top:30px}
 .docs-section h2{font-size:25px}
 .docs-note{padding:16px 15px}
 .docs-code pre{font-size:11px;padding:14px 12px}
 .docs-section h2>a{padding:4px 0}
}
@media print{.docs-sidebar,.docs-mobile,.docs-mobile-outline,.docs-outline,.docs-pagination{display:none}.docs-shell{display:block;padding:0}.docs-article{max-width:none;font-size:10pt}.docs-heading h1{font-size:25pt}.docs-section h2{font-size:16pt}.docs-code pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:8pt}.docs-note,.docs-code{break-inside:avoid}.docs-table{overflow:visible}.docs-table table{min-width:0;font-size:8pt}.docs-table th,.docs-table td{padding:6px}.docs-permalink{display:none}.docs-start-options{display:none}.docs-start .docs-start-panel{display:block}}
