/* Shared reading ergonomics; source texts and archived witnesses are never rewritten. */
body[data-cq]{--cq-accent:#256b68;--cq-paper:#f7f5ed;--cq-ink:#233b3c;padding-bottom:4.5rem!important}
.cq-tools,.cq-pagebar{font:14px/1.6 system-ui,'PingFang SC',sans-serif;color:var(--cq-ink);background:var(--cq-paper);border:1px solid #bccdc5;border-radius:8px;padding:12px 16px;margin:12px auto;max-width:76rem;clear:both;box-sizing:border-box}
.cq-tools summary{cursor:pointer;font-weight:650}.cq-tools .cq-controls,.cq-pagebar{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.cq-controls{padding-top:12px}.cq-tools label{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.cq-tools button,.cq-tools select,.cq-tools input,.cq-pagebar button,.cq-pagebar a{font:inherit;color:#204e4b;background:#fffef8;border:1px solid #a9bfb2;border-radius:5px;min-height:38px;padding:6px 10px;max-width:100%;box-sizing:border-box}.cq-tools input{min-width:0;width:min(23rem,100%)}.cq-tools [aria-pressed=true]{background:#dcece3}.cq-tools p{font:14px/1.6 system-ui!important;margin:10px 0}.cq-controls a{color:#205f58!important}.cq-table-wrap{display:block;max-width:100%;min-width:0;overflow:auto;overscroll-behavior-inline:contain;margin:10px 0}.cq-table-wrap:focus-visible{outline:3px solid #348984;outline-offset:2px}.cq-table-wrap table{margin:0!important}.cq-method{padding:.5rem .8rem;border-left:3px solid #acbfb1;margin:.7rem 0;font-size:14px;line-height:1.7}.cq-method summary{cursor:pointer;color:inherit;font-weight:600}.cq-method>p{margin:.6rem 0!important}.cq-evidence-note{font:14px/1.65 system-ui,sans-serif;background:#f5edda;color:#4f401f;padding:13px 17px;border:1px solid #d4bd88;border-radius:6px;margin:12px 0}.cq-method-link{font:inherit;background:transparent;border:0;padding:0;color:inherit;text-decoration:underline;cursor:pointer}.cq-hidden{display:none!important}.cq-dock #greenidge-companion{position:static!important;inset:auto!important;width:auto!important;max-width:none!important;max-height:none!important;box-shadow:none!important;z-index:auto!important;margin:1rem 0!important;padding:.8rem!important;font:14px/1.65 system-ui!important}.cq-dock #greenidge-companion:not([open])>:not(summary){display:none}.cq-dock #greenidge-companion summary{white-space:normal}.cq-dock .cw-bridge:not(.cw-open){display:none!important}.cq-dock .cw-launch{bottom:calc(1rem + env(safe-area-inset-bottom))!important;max-width:calc(100vw - 2rem);font-size:14px}.cq-dock:has(.rail) .cw-launch{bottom:calc(4.5rem + env(safe-area-inset-bottom))!important}.cq-dock:has(#mlg-fab) .cw-launch{bottom:5rem!important}.cq-dock .cw-open{inset:auto 1rem 4.8rem auto!important;max-height:calc(100dvh - 8rem)!important}.cq-dock:has(.rail) .cw-open{bottom:8rem!important;max-height:calc(100dvh - 10rem)!important}
.cq-dialog{font:16px/1.75 system-ui,'PingFang SC',sans-serif;background:#fcfaf1;color:#233d3c;border:1px solid #90aaa0;border-radius:12px;padding:0;width:min(760px,94vw);max-height:90dvh;max-width:96vw;overflow:auto;box-shadow:0 18px 70px #0005;resize:both}.cq-dialog::backdrop{background:#122b31b5}.cq-dialog header{position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;background:#fcfaf1;color:#233d3c;padding:12px 20px;border-bottom:1px solid #ced8ce;z-index:1}.cq-dialog header button{font:inherit;border:1px solid #91ada0;background:#ecf2e7;border-radius:4px;min-width:44px;min-height:44px;color:inherit}.cq-dialog .cq-dialog-body{padding:22px;overflow-wrap:anywhere}.cq-dialog h2{font:26px/1.3 Georgia,serif;color:inherit}.cq-dialog a{color:#24695d}.cq-dialog pre{white-space:pre-wrap;font-size:14px}.cq-dialog blockquote{margin:12px 0;padding-left:15px;border-left:3px solid #b7cbbb}.cq-context-return{font:14px/1.6 system-ui;padding:8px 15px;background:#e9f0e5;color:#254b45;display:block;overflow-wrap:anywhere}.cq-context-return a{color:inherit}.cq-pagebar [disabled]{opacity:.45;cursor:default}body[data-cq] :where(main,.app,.panel,.panel-body,.grid,.brand){min-width:0}body[data-cq] .cq-reader-content :where(p,blockquote,li){line-height:1.8}body[data-cq] .cq-reading-large :where(p,blockquote,li,.tx){font-size:1.15em!important}body[data-cq] .cq-reading-larger :where(p,blockquote,li,.tx){font-size:1.3em!important}.cq-compact-note>summary{font-size:14px;line-height:1.6;padding:.35rem;cursor:pointer}.cq-compact-note{margin:.5rem auto;max-width:76rem;padding:.45rem .7rem;border:1px solid #aebdb3;border-radius:6px}.cq-compact-note:not([open])>:not(summary){display:none}.cq-alias-note{font:14px/1.6 system-ui;padding:12px;background:#eef3e9;border-left:3px solid #3f7b69}
@media(max-width:760px){body[data-cq] :where(main,.app,.wrap,.container,.panel,.panel-body,.brand,header.top,.chartbox,.barbox){min-width:0!important;max-width:100%!important;box-sizing:border-box}body[data-cq] :where(.topbar,.toolbar,.top,.brand){flex-wrap:wrap!important}body[data-cq] :where(.toolbar,.filters,.controls){min-width:0;max-width:100%;box-sizing:border-box}body[data-cq] :where(.tag,.grp,.key,.mw-page){white-space:normal!important;max-width:100%;overflow-wrap:anywhere}body[data-cq] .grp{display:inline-flex;flex-wrap:wrap;gap:6px}body[data-cq] :where(input,select,textarea){max-width:100%;min-width:0!important;box-sizing:border-box}body[data-cq] .brand{width:auto!important}body[data-cq] .brand small{white-space:normal!important}body[data-cq] :where(p,h1,h2,h3,h4,.claim,.sub,.pre,.idline){overflow-wrap:anywhere}body[data-cq] .cq-table-wrap{width:100%}.cq-tools{margin:10px 12px}.cq-controls{align-items:stretch!important}.cq-controls label{width:100%}.cq-controls select,.cq-controls input{flex:1;min-width:0}.cq-dialog .cq-dialog-body{padding:16px}body[data-cq] nav.kin{font-size:14px!important}body[data-cq="legal_proceedings"] #pane.cq-empty-sheet{display:none!important}body[data-cq="divinatio-wave-lab"] .toolbar{width:100%!important}body[data-cq="divinatio-wave-lab"] .brand{flex:1 1 100%!important}body[data-cq="divinatio-wave-lab"] .hero,body[data-cq="divinatio-wave-lab"] .top{grid-template-columns:minmax(0,1fr)!important}.cq-pagebar{margin:10px 0}.cq-tools .cq-controls>button{flex:1}}
@media print{body[data-cq]{padding-bottom:0!important}.cq-tools,.cq-pagebar,.cq-dialog,.cq-context-return{display:none!important}.cq-hidden{display:revert!important}.cq-table-wrap{overflow:visible!important}.cq-compact-note>*{display:revert!important}}

body[data-cq] nav.kin details{max-width:100%}body[data-cq] nav.kin summary{cursor:pointer;padding:.35rem .6rem;border:1px solid currentColor;border-radius:5px;font-size:14px}body[data-cq] nav.kin .course-links{display:flex;flex-wrap:wrap;gap:.6rem 1rem;padding:.8rem}body[data-cq] nav.kin .course-links a{font-size:14px}
@media(max-width:760px){body[data-cq="divinatio-wave-lab"] .top{display:flex!important;flex-direction:column!important;align-items:stretch!important}body[data-cq="divinatio-wave-lab"] .toolbar{margin-left:0!important;position:static!important;transform:none!important}body[data-cq="cicero_reader"] .cq-table-wrap{width:calc(100vw - 52px)!important}body[data-cq] .philology-grid{grid-template-columns:minmax(0,1fr)!important}}

@media(max-width:760px){body[data-cq="divinatio-wave-lab"] header.top{display:block!important}body[data-cq="divinatio-wave-lab"] header.top>.toolbar{margin-top:12px!important}}
body[data-cq] :where(.meta,.tiny,.smallnote,.idline){font-size:.875rem!important;line-height:1.65!important}
@media(max-width:760px){body[data-cq] .mw-header{flex-wrap:wrap!important}body[data-cq] .mw-header .mw-lang{flex-shrink:0;max-width:100%}body[data-cq] .mw-header .mw-crumb{flex-basis:35%!important}body[data-cq] .mw-header button{min-width:0}}

@media(max-width:760px){body[data-cq] .mw-header{width:100%;box-sizing:border-box;gap:.4rem!important}body[data-cq] .mw-header .mw-lang button{padding:.3rem .4rem!important}body[data-cq] .mw-header .mw-crumb{flex:1 1 45%!important}}
body[data-cq] code{overflow-wrap:anywhere;word-break:break-word}body[data-cq] pre{max-width:100%;overflow:auto}

body[data-cq] nav.corpus-law-nav{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center;padding:.8rem 0;font:14px/1.65 system-ui,sans-serif}body[data-cq] nav.corpus-law-nav a{display:inline-block;padding:.2rem 0}
@media(max-width:820px){body[data-cq] .grp{display:inline-flex;flex-wrap:wrap;max-width:100%;min-width:0}body[data-cq] .mag-bar{flex-wrap:wrap;height:auto}body[data-cq] .mw-crumb{white-space:normal!important;overflow-wrap:anywhere}body[data-cq] .mw-page{white-space:normal!important}body[data-cq]:has(.mtg) .grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))!important}body[data-cq="divinatio-wave-lab"] .section-map{grid-template-columns:repeat(auto-fit,minmax(20px,1fr))!important}body[data-cq="index"] div[style*="repeat(4,1fr)"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
body[data-cq] :is(#ribbonTracks,#lanes){max-width:100%;overflow:auto}body[data-cq] .track-label{overflow-wrap:anywhere}body[data-cq] .lane>*{min-width:0}body[data-cq] :is(#ribbonTracks,#lanes):focus-visible{outline:3px solid #58a6a0;outline-offset:3px}
@media(max-width:360px){body[data-cq] .mw-header .mw-crumb{flex:1 1 100%!important;order:3}body[data-cq] .mw-header .mw-crumb,body[data-cq] .mw-header .mw-crumb *{overflow-wrap:anywhere!important;white-space:normal!important}}
body[data-cq] :is(dt,dd){min-width:0;overflow-wrap:anywhere}@media(max-width:360px){body[data-cq] dl.led{grid-template-columns:minmax(0,1fr)!important}body[data-cq] dl.led dt{margin-top:.8rem}body[data-cq] dl.led dd{margin-left:0}}

/* Adaptive contract: layout follows available space; interaction follows capabilities. */
body[data-cq]{--cq-vh:100dvh;--cq-vw:100vw;--cq-vtop:0px;--cq-vleft:0px;--cq-vbottom:0px}
body[data-cq] :where(img,video){max-width:100%;height:auto}
body[data-cq] :where(button,input,select,textarea){box-sizing:border-box}
body[data-cq] :where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #398c86;outline-offset:3px;scroll-margin-block:5rem}
body[data-cq] :where(.toolbar,.filters,.controls,.view-controls,.actions,.tabs){flex-wrap:wrap;min-width:0;gap:max(.4rem,var(--control-gap,0px))}
body[data-cq] :where(.cq-table-wrap,#ribbonTracks,#lanes){overscroll-behavior-inline:contain;scrollbar-gutter:stable}
body[data-cq] .cq-dialog{box-sizing:border-box;max-width:calc(var(--cq-vw) - 16px);max-height:calc(var(--cq-vh) - 16px);overscroll-behavior:contain}
.cq-dialog header{gap:12px;flex-wrap:nowrap}.cq-dialog header>span{min-width:0;overflow-wrap:anywhere}.cq-dialog header button{flex:0 0 44px}.cq-dialog h2{margin:.2rem 0 1rem}
body[data-cq] #ca-floating{max-width:calc(var(--cq-vw) - 16px)!important;max-height:calc(var(--cq-vh) - 16px)!important}
body[data-cq] #ca-floating .float-language{flex-wrap:wrap}body[data-cq] #ca-floating .float-drag{min-width:0}body[data-cq] #ca-floating .float-drag>div{flex-shrink:0}
body[data-cq] #ca-floating .float-body{scrollbar-gutter:stable;overflow-wrap:anywhere}
body[data-cq] .cw-bridge.cw-open{max-height:calc(var(--cq-vh) - 7rem)!important;bottom:calc(var(--cq-vbottom) + 4.8rem + env(safe-area-inset-bottom))!important;max-width:calc(var(--cq-vw) - 2rem)!important;overscroll-behavior:contain}
body[data-cq] .cw-open .cw-close{position:sticky;top:0;z-index:3;min-height:44px;min-width:44px}
body[data-cq] .cw-launch{bottom:calc(var(--cq-vbottom) + 1rem + env(safe-area-inset-bottom))!important}
body[data-cq]:has(.rail) .cw-launch,body[data-cq]:has(#mlg-fab) .cw-launch{bottom:calc(var(--cq-vbottom) + 4.5rem + env(safe-area-inset-bottom))!important}
body[data-cq]:has(.rail) .cw-bridge.cw-open,body[data-cq]:has(#mlg-fab) .cw-bridge.cw-open{bottom:calc(var(--cq-vbottom) + 8rem + env(safe-area-inset-bottom))!important;max-height:calc(var(--cq-vh) - 10rem)!important}
.cq-touch-hint{display:none}
@media(any-pointer:coarse){
 body[data-cq] :where(button,select,input:not([type=checkbox],[type=radio],[type=hidden]),summary){min-height:44px}
 body[data-cq] :where(button,select){min-width:44px}
 body[data-cq] :where(input,select,textarea){font-size:max(16px,1em)}
 body[data-cq] :where(nav,.tabs,.toolbar,.actions,.course-links) a{display:inline-flex;align-items:center;min-height:44px;box-sizing:border-box}
 body[data-cq] :where(summary){align-content:center}
 body[data-cq] :where(.controls,.toolbar,.filters,.tabs,.actions){gap:8px}
 body[data-cq] .secbtn{min-width:44px!important;min-height:44px!important}
 body[data-cq] .section-map{grid-template-columns:repeat(auto-fit,minmax(44px,1fr))!important}
 body[data-cq] #ca-floating .float-drag button{min-width:44px;height:44px}
 body[data-cq] #ca-floating .float-resize-n,body[data-cq] #ca-floating .float-resize-s{height:12px}
 body[data-cq] #ca-floating .float-resize-e,body[data-cq] #ca-floating .float-resize-w{width:12px}
 body[data-cq] #ca-floating :is(.float-resize-ne,.float-resize-nw,.float-resize-se,.float-resize-sw){width:24px;height:24px}
 body[data-cq] .cq-touch-hint{display:block;flex-basis:100%;margin:0;font-size:14px}
}
@media(hover:none){body[data-cq] :where(button,a,summary){-webkit-tap-highlight-color:#398c8640}body[data-cq] .cq-pagebar~.cq-table-wrap tbody tr{cursor:pointer}}
@media(max-width:1024px){body[data-cq] :where(.cq-tools,.cq-pagebar){width:auto}body[data-cq] .cq-controls label{min-width:0;max-width:100%}body[data-cq] .cq-controls select{width:min(100%,30rem)}}
@media(max-width:600px){
 body[data-cq] #ca-floating .float-language>span{display:none}
 body[data-cq] #ca-floating .float-drag{padding:12px}
 body[data-cq] #ca-floating .float-drag>span{letter-spacing:0}
 body[data-cq] #ca-floating .float-drag span span{display:none}
 body[data-cq] :where(.cq-dialog header,.cq-dialog .cq-dialog-body){padding:12px}
 body[data-cq] .cq-controls label{display:grid;grid-template-columns:minmax(0,1fr)}
 body[data-cq] .cq-controls :where(select,input){width:100%}
}
/* Landscape phones and short windows must leave room for the reading itself. */
@media(max-height:500px){
 body[data-cq] :where(header.top,.topbar,.mw-header,.mag-bar,nav.kin){position:relative!important;top:auto!important}
 body[data-cq] :where(.cq-dialog,#ca-floating){max-height:calc(var(--cq-vh) - 16px)!important}
 body[data-cq] #ca-floating{top:8px}
 body[data-cq] #ca-floating .float-body{padding:12px 20px}
 body[data-cq] #ca-floating .float-language{padding:4px 16px}
 body[data-cq] .cw-bridge.cw-open{inset:8px 8px auto auto!important;width:min(44rem,calc(var(--cq-vw) - 16px))!important;max-width:calc(var(--cq-vw) - 16px)!important;max-height:calc(var(--cq-vh) - 16px)!important}
 body[data-cq] :where(#ca-detail,aside.toc){position:static!important;max-height:none!important}
 body[data-cq] .cq-dialog header{padding:6px 12px}
}
@media(prefers-reduced-motion:reduce){body[data-cq],body[data-cq] *,body[data-cq] *::before,body[data-cq] *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media(forced-colors:active){body[data-cq] :where(button,select,input,.cq-dialog,.cw-bridge){border:1px solid ButtonText}body[data-cq] :where(button,a,summary,[tabindex]):focus-visible{outline:3px solid Highlight}}
@media print{body[data-cq] .cw-bridge.cw-open,body[data-cq] #ca-floating{display:none!important}}
/* The coloured speech map must remain identifiable without mouse hover. */
@media(any-pointer:coarse){body[data-cq] .secbtn[data-sec]::after{content:attr(data-sec);display:inline-grid;place-items:center;min-width:1.6em;min-height:1.6em;border-radius:4px;background:#101821d9;color:#fff;font:600 12px/1 system-ui;pointer-events:none}}
body[data-cq] .secbtn[data-sec]:focus-visible::after{content:attr(data-sec);position:absolute;left:50%;top:100%;transform:translateX(-50%);padding:5px;background:#101821;color:#fff;font:600 12px/1 system-ui;z-index:3}
