:root{color-scheme:light;--ink:#2d3746;--muted:#657080;--line:#e2ded6;--paper:#f7f4ee;--accent:#233d5c;--gold:#997548}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:1rem}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 system-ui,"Microsoft YaHei",sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:3px}header,main,footer{max-width:1160px;margin:auto;padding:24px 32px}header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-family:Georgia,serif;font-size:27px;font-weight:bold}.brand span{display:inline-block;font:14px system-ui;margin-left:20px;color:var(--muted)}.edition,.tags span{font-size:12px;letter-spacing:.06em;border:1px solid var(--line);padding:4px 10px;border-radius:4px}.preview{padding:10px 24px;text-align:center;background:#fff3d9;color:#785921;font-size:13px}.intro{padding:24px 0 18px}.eyebrow{font-size:12px;letter-spacing:.2em;color:var(--muted)}h1{font-size:38px;line-height:1.35;letter-spacing:-.02em;margin:12px 0}h2{font-size:20px}h3{font-size:18px;font-weight:600;line-height:1.7}p{margin:.6em 0}.intro>p:last-child{color:var(--muted)}form{background:#fff;border:1px solid var(--line);padding:24px;border-radius:8px}label{display:block;font-size:14px;margin-bottom:10px}.search-row{display:flex;gap:12px}input,select,button{font:inherit;border:1px solid #d2cec6;border-radius:5px;padding:10px 14px;min-height:46px}input{flex:1;min-width:0;background:#fffcf7;color:var(--ink)}select{max-width:160px;background:white}button{background:var(--accent);color:#fff;cursor:pointer;padding-inline:24px}.results-heading{display:flex;justify-content:space-between;align-items:center;padding:20px 0 8px}.results-heading span,.card-note{font-size:13px;color:var(--muted)}.results{display:grid;grid-template-columns:1fr;gap:16px}.card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:24px;display:flex;flex-direction:column}.card h3{margin:14px 0}.card-note{margin-top:auto;padding-top:12px}.tags{display:flex;gap:8px;flex-wrap:wrap}.tags .pending{background:#f8f2e5;color:#80602b}.snippets{padding-left:18px;font-size:14px}.snippets li{margin:8px 0;color:var(--muted)}.empty{padding:60px 20px;text-align:center;background:white;border:1px solid var(--line)}.back{display:inline-block;margin:10px 0 24px}.document-title{font-size:30px;margin:20px 0}.notice{padding:12px 0;color:#79612e;font-size:14px;border-block:1px solid var(--line)}.metadata{display:flex;gap:24px;flex-wrap:wrap}.metadata dt{color:var(--muted);font-size:13px}.metadata dd{margin:0}.reading-layout{display:grid;grid-template-columns:160px minmax(0,1fr);gap:32px;margin-top:30px}.toc{position:sticky;top:20px;align-self:start;max-height:80vh;overflow:auto;border-right:1px solid var(--line);padding-right:12px}.toc a{display:block;font-size:13px;padding:4px 0}.toc h2{font-size:15px}.document-body{background:#fff;border:1px solid var(--line);padding:12px 32px;border-radius:6px}.provision{padding:20px 0;border-bottom:1px solid var(--line)}.provision:last-child{border-bottom:0}.provision:target{background:#faf5e9}.provision-actions{display:flex;align-items:center;justify-content:space-between;gap:16px}.provision-actions h2{font-size:16px}.copy{font-size:12px;min-height:36px;padding:6px 12px;background:#fff;color:var(--accent);flex-shrink:0}.provision-text{line-height:1.95;overflow-wrap:anywhere}.provision-text p{margin:.8em 0}footer{font-size:12px;color:var(--muted);margin-top:40px;border-top:1px solid var(--line)}#status{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:6px;font-size:14px;padding:0 18px;max-width:90vw}#status:not(:empty){padding-block:10px}
@media(max-width:700px){header,main,footer{padding:20px}.brand span{display:block;margin:0;font-size:12px}.brand{font-size:24px}h1{font-size:29px}.results{grid-template-columns:1fr}.search-row{flex-wrap:wrap}.search-row input{flex-basis:100%}select{flex:1;max-width:none}.search-row button{flex:1}.reading-layout{grid-template-columns:1fr;gap:12px}.toc{position:static;max-height:145px;border:1px solid var(--line);padding:10px;display:flex;flex-wrap:wrap;gap:6px 14px}.toc h2{width:100%;margin:0}.document-body{padding:4px 18px}.document-title{font-size:23px}.provision-actions{align-items:flex-start}.card{padding:20px}.intro{padding-top:10px}.metadata{gap:12px}}
/* Navy accents and warm paper keep long-form reading calm and legible. */
.brand,h1,h2{color:var(--accent)}
button{border-color:var(--accent)}
button:hover{background:#182d46}
/* Keep the search controls together in a blue-gray palette. */
form[action="/search"]{background:#fff;border-color:#d5dfeb}
form[action="/search"] label{color:#405773}
.search-row input,.search-row select{background:#fff;color:var(--accent);border-color:#b9c8db}
.search-row input::placeholder{color:#65758a}
.search-row select:hover{border-color:#7088a4}
.search-row button{background:#0070a3;border-color:#0070a3}
.search-row button:hover{background:#007eae;border-color:#007eae}
.search-row :is(input,select,button):focus-visible{outline-color:#42678f}
.copy{border-color:#cbd3de}
.copy:hover{background:#edf1f6;color:var(--accent)}
input::placeholder{color:var(--muted)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
