:root{--bg:#fbf7f0;--fg:#2a2420;--fg-muted:#6b5f55;--fg-faint:#8a7c6c;--accent:#9c3d22;--on-accent:#fff;
--header-bg:#f2e9dc;--card-bg:#fffdf9;--card-border:#e3d8c8;--input-border:#cdbfab;--input-bg:#fffdf9;--dotted:#e2d6c5;--rule:#eadfce;
--tag-bg:#f3ebdf;--mark:#ffe3a3;--treaty:#2f6b3f;--law:#5f7d24;--speech:#2e5c86;--document:#a3472a;--programme:#a2621b;--report:#7a2f22;--profile:#74466f;--summary:#4d433a;--list:#615549;--review:#73665a;--statistics:#6a5e53;
--ui:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;--serif:"Source Serif 4",Georgia,"Times New Roman",serif;--r:4px}
[data-theme="dark"]{--bg:#1d1916;--fg:#ece3d6;--fg-muted:#b8aa98;--fg-faint:#8c7f70;--accent:#e39a74;--on-accent:#1d1916;
--header-bg:#26201b;--card-bg:#26201b;--card-border:#4a4038;--input-border:#5a4e44;--input-bg:#2a241f;--dotted:#43392f;--rule:#3a3129;
--tag-bg:#332b24;--mark:#6e5310}
*{margin:0;padding:0;box-sizing:border-box}
html{font-size:100%;-webkit-text-size-adjust:100%}
body{font-family:var(--serif);font-size:1rem;color:var(--fg);background:var(--bg);line-height:1.5}
a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}
.container{max-width:56.25rem;margin:0 auto;padding:0 1.25rem}
header{background:var(--header-bg);border-bottom:3px solid var(--accent);padding:calc(3rem + env(safe-area-inset-top,0px)) 0 1.2rem;text-align:center;box-shadow:inset 0 -1px 0 color-mix(in srgb,var(--accent) 35%,transparent)}
header h1{font-size:1.9rem;font-weight:600;margin-bottom:.3rem;letter-spacing:.01em}header h1 a{color:var(--fg)}header h1 a:hover{text-decoration:none}
header .subtitle{font-size:.95rem;color:var(--fg-muted);font-style:italic;margin-bottom:.9rem}
nav{display:flex;justify-content:center;gap:.6rem;flex-wrap:wrap}
/* line of plain text links to sister resources, set apart from the page's own buttons */
.sitelinks{display:flex;flex-wrap:wrap;justify-content:center;gap:.25rem .2rem;padding:.55rem 1rem;border-bottom:1px solid var(--rule);font-family:var(--ui);font-size:.78rem;line-height:1.5}
.sitelinks a{color:var(--fg-muted);white-space:nowrap}
.sitelinks a:hover{color:var(--accent);text-decoration:underline}
.sitelinks a:not(:last-child)::after{content:"\00b7";color:var(--fg-faint);margin-left:.45rem;display:inline-block;text-decoration:none}
.sitelinks.bottom{border-bottom:none;border-top:1px solid var(--rule);margin-top:2.5rem;padding-top:.8rem}
.sitelinks.bottom+footer{margin-top:.4rem;border-top:none}
/* one control style for every button, toggle, select and input */
.btn,nav a,.chip,.controls select,.controls input[type=search],.tools a,.tools button,.display-toolbar button{
font-family:var(--ui);font-size:.8125rem;font-weight:600;line-height:1.2;min-height:2rem;padding:.35rem .8rem;
border:1.5px solid var(--accent);border-radius:var(--r);background:var(--input-bg);color:var(--accent);
display:inline-flex;align-items:center;justify-content:center;cursor:pointer;white-space:nowrap;text-decoration:none;
transition:background .15s,color .15s;-webkit-tap-highlight-color:transparent}
nav a{font-size:.9375rem;padding:.4rem 1.1rem;background:transparent}
nav a:hover,nav a.active,.tools a:hover,.tools button:hover,.display-toolbar button:hover,.chip.on{background:var(--accent);color:var(--on-accent);text-decoration:none}
.chip{user-select:none;border-color:var(--input-border);color:var(--fg-muted);font-weight:500}
.chip:hover{border-color:var(--accent);color:var(--accent)}.chip.on:hover{color:var(--on-accent)}
.chip.on{border-color:var(--accent)}
#typeChips .chip.on,#typeChips .chip.on:hover{color:#fff}
.chiphint{font-family:var(--ui);font-size:.72rem;color:var(--fg-faint);flex-basis:100%;margin-top:-.15rem}
.chip.on[data-v=treaty]{background:var(--treaty);border-color:var(--treaty)}.chip.on[data-v=law]{background:var(--law);border-color:var(--law)}
.chip.on[data-v=speech]{background:var(--speech);border-color:var(--speech)}.chip.on[data-v=document]{background:var(--document);border-color:var(--document)}
.chip.on[data-v=list]{background:var(--list);border-color:var(--list)}
.chip.on[data-v=summary]{background:var(--summary);border-color:var(--summary)}
.chip[data-v=external]{border-radius:0}.chip.on[data-v=external]{background:var(--fg-muted);border-color:var(--fg-muted);color:#fff}
.wjlink{display:inline-block;margin-left:.45rem;padding:0 .3rem;font-family:var(--ui);font-size:.66rem;font-weight:700;line-height:1.45;letter-spacing:.03em;color:var(--fg-muted);border:1px solid var(--fg-muted);border-radius:0;white-space:nowrap;vertical-align:.08em}
.wjlink:hover{background:var(--fg-muted);color:var(--bg);text-decoration:none}
.chip.on[data-v=programme]{background:var(--programme);border-color:var(--programme)}.chip.on[data-v=report]{background:var(--report);border-color:var(--report)}.chip.on[data-v=review]{background:var(--review);border-color:var(--review)}.chip.on[data-v=statistics]{background:var(--statistics);border-color:var(--statistics)}.chip.on[data-v=profile]{background:var(--profile);border-color:var(--profile)}
.controls select,.controls input[type=search]{font-weight:400;color:var(--fg);border-color:var(--input-border);justify-content:flex-start;cursor:auto;max-width:100%}
.controls select{cursor:pointer;flex:1 1 11rem;min-width:9rem;max-width:20rem}
.controls input[type=search]{flex:1 1 14rem;min-width:10rem;font-size:.9375rem}
.controls select:focus,.controls input:focus,.chip:focus-visible,.btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.controls{position:sticky;top:0;z-index:50;background:var(--bg);border-bottom:1px solid var(--rule);padding:.6rem 0;margin-top:.75rem;
display:flex;gap:.5rem .9rem;flex-wrap:wrap;align-items:center}
.chips{display:flex;gap:.3rem;flex-wrap:wrap}
.loadmsg{font-family:var(--ui);font-size:.8125rem;color:var(--accent);font-weight:600}
.count{font-family:var(--ui);font-size:.8125rem;color:var(--fg-faint);margin-left:auto;white-space:nowrap}
footer{text-align:center;padding:1.5rem 0;margin-top:2.5rem;border-top:1px solid var(--dotted);font-family:var(--ui);font-size:.8125rem;color:var(--fg-faint)}
header{position:relative}
.display-toolbar{position:absolute;top:calc(.9rem + env(safe-area-inset-top,0px));right:max(.9rem,env(safe-area-inset-right,0px));display:flex;gap:.2rem}
.display-toolbar button{min-width:2rem;min-height:1.75rem;padding:.2rem .45rem;font-size:.75rem;border-color:var(--input-border);background:transparent;color:var(--fg-muted)}
.back-to-top{position:fixed;bottom:1.25rem;right:1.25rem;width:2.5rem;height:2.5rem;min-height:0;padding:0;opacity:0;pointer-events:none;
background:var(--accent);color:var(--on-accent);font-size:1.1rem;transition:opacity .3s;z-index:100}
.back-to-top.visible{opacity:.85;pointer-events:auto}
.intro{margin:1.4rem 0 .4rem;font-size:.97rem;color:var(--fg-muted)}
.volume-heading{font-size:1.25rem;color:var(--accent);border-bottom:2px solid var(--accent);padding-bottom:.35rem;margin:2.1rem 0 .9rem;scroll-margin-top:7rem}
.issue-heading{font-size:1.0625rem;margin:1.4rem 0 .25rem;scroll-margin-top:7rem;display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap}
.issue-heading .issue-num{font-family:var(--ui);font-weight:400;font-size:.8125rem}
.entry-list{list-style:none;margin:0 0 .5rem}
.entry-item{display:grid;grid-template-columns:5.25rem minmax(0,1fr) auto;gap:.1rem .7rem;align-items:baseline;padding:.3rem 0;border-bottom:1px dotted var(--dotted);line-height:1.4}
.entry-item:last-child{border-bottom:none}
.entry-text{min-width:0;overflow-wrap:anywhere}.entry-orig{color:var(--fg-muted);font-size:.8rem;font-style:normal}.entry-attrib{color:var(--fg-muted);font-size:.875rem;font-style:italic}
.entry-page{font-family:var(--ui);font-size:.8125rem;white-space:nowrap;color:var(--fg-faint)}
/* type labels: fixed-width box sized for the longest label, never wrapping or overflowing */
.tag{display:inline-block;box-sizing:border-box;width:5.25rem;padding:.16rem 0;text-align:center;font-family:var(--ui);font-size:.625rem;font-weight:700;line-height:1.3;
letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;overflow:hidden;border-radius:var(--r);border:none;color:#fff;background:var(--list);vertical-align:middle}
.tag.treaty{background:var(--treaty)}.tag.law{background:var(--law)}.tag.speech{background:var(--speech)}.tag.document{background:var(--document)}.tag.summary{background:var(--summary)}.tag.list{background:var(--list)}.tag.programme{background:var(--programme)}.tag.report{background:var(--report)}.tag.review{background:var(--review)}.tag.statistics{background:var(--statistics)}.tag.external{background:transparent;color:var(--fg-muted);border:1.5px solid var(--fg-muted);border-radius:0;padding:.06rem 0}.tag.profile{background:var(--profile)}
.hidden{display:none!important}
/* document page */
.doc-head{margin:1.6rem 0 1.1rem;padding-bottom:.9rem;border-bottom:1px solid var(--rule)}
.doc-head h2{font-size:1.5rem;line-height:1.25;margin:.5rem 0 .6rem;overflow-wrap:anywhere}
.meta{font-family:var(--ui);font-size:.84rem;display:grid;grid-template-columns:max-content minmax(0,1fr);gap:.2rem .9rem}
.meta dt{color:var(--fg-faint)}.meta dd{color:var(--fg);overflow-wrap:anywhere}
.note{max-width:43.75rem;margin:2rem auto 0;font-family:var(--ui);font-size:.84rem;line-height:1.5;color:var(--fg-muted);border:1.5px solid var(--input-border);border-radius:var(--r);background:var(--input-bg)}
.note summary{cursor:pointer;padding:.45rem .9rem;font-weight:600;color:var(--accent);list-style-position:inside}
.note summary:hover{background:var(--tag-bg)}.note[open] summary{border-bottom:1px solid var(--rule)}
.note p{padding:.6rem .9rem;margin:0;overflow-wrap:anywhere}
.note+.disclaimer{margin-top:.75rem}
.disclaimer{max-width:43.75rem;margin:2rem auto 0;padding:.7rem .9rem;border:1.5px solid var(--input-border);border-left:4px solid var(--accent);border-radius:var(--r);font-family:var(--ui);font-size:.84rem;line-height:1.5;color:var(--fg-muted);background:var(--tag-bg)}
.series{margin:0 auto 1.2rem;max-width:43.75rem;font-family:var(--ui);font-size:.84rem;color:var(--fg-muted);display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}
.series strong{color:var(--fg)}.series .btn{min-height:1.75rem;padding:.15rem .55rem}.series .btn.on{background:var(--accent);color:var(--on-accent)}
.parthead{max-width:43.75rem;margin:2.2rem auto .8rem;padding-top:.8rem;border-top:2px solid var(--accent);font-size:1.15rem}
.parthead small{display:block;font-family:var(--ui);font-weight:400;font-size:.78rem;color:var(--fg-faint)}
.versions{margin:0 auto 1rem;max-width:43.75rem;font-family:var(--ui);font-size:.84rem;color:var(--fg-muted);display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}
.versions span{flex-basis:100%;margin-bottom:.1rem}.versions .btn{min-height:1.75rem;padding:.15rem .6rem;font-weight:500}.versions .btn.on{background:var(--accent);color:var(--on-accent)}
.diffbar{max-width:43.75rem;margin:-.6rem auto 1.2rem;font-family:var(--ui);font-size:.84rem;color:var(--fg-muted);display:flex;flex-wrap:wrap;gap:.3rem .8rem;align-items:center}
.diffbar label{cursor:pointer;display:inline-flex;gap:.4rem;align-items:center;color:var(--fg)}.diffbar input{accent-color:var(--accent);width:1rem;height:1rem}
.difflegend{flex-basis:100%;font-size:.78rem}
mark.d-chg{background:color-mix(in srgb,var(--document) 22%,transparent);color:inherit;border-bottom:1.5px solid var(--document);padding:0 1px}
.d-ins,.d-ins-key{font-family:var(--ui);font-size:.8em;color:var(--treaty);background:color-mix(in srgb,var(--treaty) 12%,transparent);border-radius:3px;padding:0 .25em}
details.d-ins-long{display:inline;font-family:var(--ui);font-size:.8em;color:var(--treaty);background:color-mix(in srgb,var(--treaty) 10%,transparent);border-radius:3px;padding:0 .3em}
details.d-ins-long summary{display:inline;cursor:pointer;font-weight:600}details.d-ins-long[open]{display:block;margin:.3em 0;padding:.4em .6em;font-family:var(--serif);font-size:.95em;color:var(--fg)}
details.d-ins-long[open] summary{display:block;font-family:var(--ui);font-size:.8em;color:var(--treaty);margin-bottom:.2em}
.tools{margin-top:.8rem;display:flex;gap:.5rem;flex-wrap:wrap}
.doc{font-size:1.09rem;line-height:1.62;max-width:43.75rem;margin:0 auto;overflow-wrap:break-word}
.doc p{margin:0 0 .85em}
.doc p.sig{text-align:right;font-size:.95em}
.doc .h{text-align:center;font-size:1em;letter-spacing:.05em;margin:1.6em 0 .8em;font-weight:bold}
.doc h3.h{font-size:1.1em}.doc h4.h{font-variant:small-caps;letter-spacing:.06em}.doc h5.h,.doc h6.h{font-style:italic;font-weight:normal;letter-spacing:0}
.doc blockquote{margin:0 0 .85em 1.6em;font-size:.95em}
.doc hr{border:none;border-top:1px solid var(--dotted);width:30%;margin:1.5em auto}
.pgbreak{text-align:right;margin:1.2em 0 .5em;border-top:1px dotted var(--dotted);padding-top:.1rem;line-height:1.2}
.pg{font-family:var(--ui);font-size:.75rem;color:var(--fg-faint)}a.pg{color:var(--accent)}
p .pg{margin:0 .25rem;padding:0 .25rem;border:1px dotted var(--dotted);border-radius:var(--r)}
.illeg{color:#b00020;font-style:italic}.doc p.ednote{font-family:var(--ui);font-size:.78rem;color:var(--fg-faint)}.fnote{font-size:.85em;color:var(--fg-muted)}sup.fn{font-size:.7em}
.tw{overflow-x:auto;margin:0 0 1em}table{border-collapse:collapse;font-family:var(--ui);font-size:.84rem;margin:0 auto}
th,td{border:1px solid var(--card-border);padding:.25rem .55rem;text-align:left;vertical-align:top}th{background:var(--header-bg)}
.pn{display:flex;justify-content:space-between;gap:1.25rem;margin:2.1rem 0 0;padding-top:.9rem;border-top:1px solid var(--rule);font-size:.9rem}
.pn a{flex:1;min-width:0;overflow-wrap:anywhere}.pn a:last-child{text-align:right}
.pn small{display:block;font-family:var(--ui);color:var(--fg-faint);font-size:.75rem}
/* search */
.result{padding:.75rem 0;border-bottom:1px dotted var(--dotted)}
.result h3{font-size:1.0625rem;font-weight:normal;margin-bottom:.15rem;display:grid;grid-template-columns:5.25rem minmax(0,1fr);gap:.7rem;align-items:baseline}
.result .rmeta,.result .snip{margin-left:5.95rem}
.result .rmeta{font-family:var(--ui);font-size:.78rem;color:var(--fg-muted)}
.result .snip{font-size:.94rem;color:var(--fg-muted);margin-top:.25rem;overflow-wrap:anywhere}
mark{background:var(--mark);color:inherit;padding:0 1px}
.hint{font-family:var(--ui);color:var(--fg-faint);font-size:.84rem;margin:.9rem 0}
.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:200;align-items:center;justify-content:center;padding:1rem}
.modal.open{display:flex}.modal-inner{background:var(--card-bg);max-width:40rem;max-height:86vh;overflow:auto;padding:1.6rem 1.75rem;border-radius:calc(var(--r) + 2px);font-size:.97rem}
.modal-inner h2{font-size:1.25rem;margin-bottom:.6rem}.modal-inner p{margin-bottom:.8em}
.modal-inner .btn{float:right;min-width:2rem;padding:.2rem .5rem;margin:0 0 .5rem .75rem}
.hint-touch{display:none}
@media (hover:none){.hint-mouse{display:none}.hint-touch{display:inline}}
@media (max-width:600px){.sitelinks:not(.bottom){display:none}.sitelinks.bottom{margin-top:1.8rem}
.controls{position:static;gap:.4rem .5rem;padding:.5rem 0}
.chip{font-size:.75rem;min-height:1.75rem;padding:.25rem .6rem}
.controls select{flex:1 1 100%;max-width:none}.controls input[type=search]{flex-basis:100%}
.count{flex-basis:100%;text-align:right}
.intro{font-size:.92rem}.doc-head h2{font-size:1.3rem}.meta{grid-template-columns:max-content minmax(0,1fr);font-size:.8rem}
.tools a,.tools button{font-size:.75rem;min-height:1.75rem;padding:.25rem .6rem}
.versions .btn{font-size:.75rem}.pn{flex-direction:column;gap:.8rem}.pn a:last-child{text-align:left}
header h1{font-size:1.25rem}.container{padding:0 .9rem}.doc{font-size:1.03rem}
.entry-item{grid-template-columns:5.25rem minmax(0,1fr)}.entry-page{grid-column:2}
.result .rmeta,.result .snip{margin-left:0}.count{margin-left:0}
.display-toolbar{position:static;justify-content:center;margin-top:.7rem}.sitelinks{padding:.4rem .6rem}.back-to-top{bottom:.9rem;right:.9rem}}
@media print{.sitelinks,header nav,.display-toolbar,.back-to-top,.pn,.tools,.controls{display:none}.doc{font-size:12pt}}
