/* Cicero presentation contract: reading chrome is shared; evidence colours belong
   to the native applications. No external fonts or framework dependencies. */
:root{--cws-paper:#f7f8f6;--cws-surface:#ffffff;--cws-ink:#283c48;--cws-muted:#586b75;--cws-rule:#d5dddf;--cws-accent:#244d60;--cws-soft:#eaf0f2;--cws-serif:'Iowan Old Style',Georgia,'Songti SC',serif;--cws-ui:system-ui,'PingFang SC',sans-serif;--cws-radius:6px;--cws-gutter:clamp(18px,3vw,32px)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]):has(body[data-cw-suite="course"]){--cws-paper:#182329;--cws-surface:#202f36;--cws-ink:#e5edf0;--cws-muted:#bacbd2;--cws-rule:#4a606b;--cws-accent:#afd4e7;--cws-soft:#2b414c}}
:root[data-theme="dark"]:has(body[data-cw-suite="course"]){--cws-paper:#182329;--cws-surface:#202f36;--cws-ink:#e5edf0;--cws-muted:#bacbd2;--cws-rule:#4a606b;--cws-accent:#afd4e7;--cws-soft:#2b414c}
/* The older shell defined these on body; inherit the current theme tokens so
   dark controls cannot combine a dark surface with the shell's light-theme ink. */
body[data-cw-suite]{--cws-paper:inherit;--cws-ink:inherit;--cws-rule:inherit;--cws-accent:inherit}
body[data-cw-design="reading"]{background:var(--cws-paper);color:var(--cws-ink)}
body[data-cw-suite="course"][data-cw-design="reading"]{--bg:var(--cws-paper);--fg:var(--cws-ink);--fg-soft:var(--cws-ink);--muted:var(--cws-muted);--rule:var(--cws-rule);--card:var(--cws-surface);--soft:var(--cws-soft);--accent:var(--cws-accent);--navy:var(--cws-accent)}
body[data-cw-design="reading"]>:is(main,.wrap,.container){max-width:74rem;padding-inline:var(--cws-gutter)}
body[data-cw-design="reading"] :is(main,.wrap,.container)>h1{font:500 clamp(1.75rem,2.6vw,2.25rem)/1.2 var(--cws-serif);letter-spacing:-.02em;color:var(--cws-ink);margin:.5rem 0 1rem}
body[data-cw-suite="course"] h2{font:600 1.375rem/1.4 var(--cws-serif);color:var(--cws-ink);margin:2rem 0 1rem}
body[data-cw-suite="course"] :is(.lede,.intro){color:var(--cws-muted);line-height:1.7;max-width:60ch}
body[data-cw-suite="course"] :is(.how,.meeting,.block,.card){border-color:var(--cws-rule);border-radius:var(--cws-radius);background:var(--cws-surface)}
body[data-cw-suite="course"] :is(.toc,.pill,.chip,.tag){border-color:var(--cws-rule)}
body[data-cw-suite="course"] :is(nav.rail a,nav.rail button,.toc a,.pill){border-radius:var(--cws-radius);color:var(--cws-accent)}
/* One predictable home for the original reading options and their handlers. */
#cws-sidebar{background:var(--cws-paper);color:var(--cws-ink);border-color:var(--cws-rule)}
#cws-sidebar :is(.cws-location,small){color:var(--cws-muted)}
#cws-sidebar :is(.cws-brand b,summary,.cws-group,.cws-caesar){color:var(--cws-accent)}
#cws-sidebar :is(details,.cws-primary,.cws-group){border-color:var(--cws-rule)}
#cws-sidebar .cws-current,#cws-sidebar :is(.cws-world-links a,.cws-family-links a,#cws-local button):hover{background:var(--cws-soft)}
#cws-sidebar .cws-current{box-shadow:inset 3px 0 var(--cws-accent)}
#cws-local button[aria-pressed="true"]{background:var(--cws-surface);color:var(--cws-accent);box-shadow:inset 3px 0 var(--cws-accent)}
#cws-sidebar :is(.cws-world-links a,.cws-family-links a,#cws-local button){min-height:44px;display:flex;flex-direction:column;justify-content:center}
#cws-sidebar :is(.cws-world-links a,.cws-family-links a)>small{font-size:.8125rem}
#cws-sidebar .cq-tools{margin-top:16px!important;padding:12px 0 0!important;border:0!important;border-top:1px solid var(--cws-rule)!important;background:transparent!important;color:var(--cws-ink)!important;max-width:100%;width:auto}
#cws-sidebar .cq-tools>summary{min-height:44px;padding:8px 0!important;font:600 .8125rem/1.6 var(--cws-ui)!important;color:var(--cws-accent)!important;white-space:normal!important;list-style:revert}
#cws-sidebar .cq-tools .cq-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:8px 0}
#cws-sidebar .cq-tools label,#cws-sidebar .cq-tools :is([data-all],[data-focus]){grid-column:1/-1;min-width:0}
#cws-sidebar .cq-tools label{display:grid;gap:6px;font:.8125rem/1.5 var(--cws-ui)}
#cws-sidebar .cq-tools :is(input,select,button){box-sizing:border-box;min-width:0;width:100%;min-height:44px;padding:8px;border:1px solid var(--cws-rule);border-radius:var(--cws-radius);background:var(--cws-surface);color:var(--cws-ink);font:.8125rem/1.4 var(--cws-ui);white-space:normal}
#cws-sidebar .cq-tools button{cursor:pointer}
#cws-sidebar .cq-tools button[aria-pressed="true"]{border-color:var(--cws-accent);background:var(--cws-soft)}
#cws-sidebar .cq-tools p{font:.8125rem/1.6 var(--cws-ui)!important;color:var(--cws-muted)}
body[data-cw-suite] :is(.cq-pagebar,.cws-related-menu){background:var(--cws-surface);color:var(--cws-ink);border-color:var(--cws-rule);border-radius:var(--cws-radius)}
body[data-cw-suite] .cws-related-menu>summary{padding:8px 0;min-height:28px;color:var(--cws-accent)}
body[data-cw-suite] :is(#cws-sidebar,#cws-toggle,.cws-related-menu,#cws-loci-toggle) :focus-visible,body[data-cw-suite] :is(#cws-toggle,#cws-loci-toggle):focus-visible{outline:3px solid var(--cws-accent);outline-offset:3px}
#cws-toggle{background:var(--cws-paper);color:var(--cws-ink);border-color:var(--cws-rule)}
.cws-skip{top:0;transform:translateY(-200%)}
.cws-skip:focus{top:8px;transform:none}
/* Vocabulary starts with terms and meanings; the unaltered loci remain one click
   away, with a full-reference view for comparison and complete print output. */
body[data-cw-suite="course"] table.vocab{font-size:1rem;line-height:1.65}
body[data-cw-suite="course"] table.vocab :is(th,td){padding:12px;border-color:var(--cws-rule)}
body[data-cw-suite="course"] table.vocab .hw{width:23%}
body[data-cw-suite="course"] table.vocab .df{width:47%}
body[data-cw-suite="course"] table.vocab .lc{width:30%;color:var(--cws-muted)}
body[data-cw-suite="course"] table.vocab .lc details{margin:0;padding:0;border:0;background:transparent}
body[data-cw-suite="course"] table.vocab .lc summary{cursor:pointer;min-height:44px;padding:8px 0;font:.875rem/1.5 var(--cws-ui);color:var(--cws-accent)}
body[data-cw-suite="course"] table.vocab .lc .cws-loci-content{font:.875rem/1.7 var(--cws-ui);overflow-wrap:anywhere}
#cws-loci-toggle{min-height:44px;padding:10px 16px;margin:12px 0;border:1px solid var(--cws-rule);border-radius:var(--cws-radius);background:var(--cws-surface);color:var(--cws-accent);font:.875rem/1.5 var(--cws-ui);cursor:pointer}
/* Named adapters keep the content hierarchy recognizable without recolouring
   maps, status badges, syntax marks, waveforms or their legends. */
body[data-cw-suite="life"] .opening{padding-block:2rem;gap:1.5rem}
body[data-cw-suite="life"] .opening h1{font:500 clamp(2.25rem,4vw,3rem)/1.15 var(--cws-serif);letter-spacing:-.025em;color:var(--cws-ink)}
body[data-cw-suite="life"] .opening :is(.lede,.deck){color:var(--cws-muted);max-width:65ch}
body[data-cw-suite="life"] .journey-card{border-radius:var(--cws-radius)}
body[data-cw-suite="life"] .journey-card:not(.active){border-color:var(--cws-rule);background:var(--cws-surface);color:var(--cws-ink)}
body[data-cw-suite="life"] :is(.mast,.section-nav){background:var(--cws-paper);color:var(--cws-ink);border-color:var(--cws-rule)}
body[data-cw-suite="life"] :is(.mast a,.eyebrow,.opening-note .primary){color:var(--cws-accent)}
body[data-cw-suite="life"] .opening-note{border-color:var(--cws-accent)}
body[data-cw-suite="life"] .opening-note .primary{background:var(--cws-accent);color:var(--cws-surface)}
body[data-cw-suite="life"] .opening .intro{color:var(--cws-ink)}
body[data-cw-suite="reception"] .mast{background:var(--cws-surface);border-color:var(--cws-rule);color:var(--cws-ink)}
body[data-cw-suite="reception"] .primary-nav button[aria-current="page"]{border-color:var(--cws-accent)}
body[data-cw-suite="reception"] :is(select,.actions button,.actions a){border-color:var(--cws-rule);border-radius:var(--cws-radius);min-height:44px}
body[data-cw-suite="reception"] main h1{font:500 clamp(1.75rem,2.6vw,2.25rem)/1.3 var(--cws-serif);color:var(--cws-ink)}
body[data-cw-suite="reception"] main h1 .en{font-size:.85em;color:var(--cws-muted)}
body[data-cw-suite="law"]>header.masthead{background:var(--cws-surface);color:var(--cws-ink);border-bottom:1px solid var(--cws-rule);padding:24px var(--cws-gutter);box-shadow:none}
body[data-cw-suite="law"]>header.masthead h1{font:500 clamp(1.75rem,2.6vw,2.25rem)/1.2 var(--cws-serif);letter-spacing:-.02em;color:var(--cws-ink)}
body[data-cw-suite="law"]>header.masthead :is(h1 span,p){color:var(--cws-muted)}
body[data-cw-suite="law"]>header.masthead .seal{width:40px;height:40px;font-size:24px;color:var(--cws-accent);border-color:var(--cws-rule);background:transparent}
body[data-cw-suite="law"]>header.masthead .header-actions a{background:var(--cws-paper);color:var(--cws-accent);border:1px solid var(--cws-rule);border-radius:var(--cws-radius);min-height:44px;display:inline-flex;align-items:center}
body[data-cw-suite] #ciceronian-atlas>header.export-hero{padding:24px;background:var(--cws-surface);border:1px solid var(--cws-rule);border-radius:var(--cws-radius);color:var(--cws-ink)}
body[data-cw-suite] #ciceronian-atlas>header.export-hero h1{font:500 clamp(2rem,3.5vw,2.75rem)/1.2 var(--cws-serif);color:var(--cws-ink);margin:12px 0 16px}
body[data-cw-suite] #ciceronian-atlas>header.export-hero :is(h1 em,.export-kicker){color:var(--cws-accent)}
body[data-cw-suite] #ciceronian-atlas>header.export-hero .export-deck{color:var(--cws-muted);max-width:65ch}
body[data-cw-suite] #ciceronian-atlas :focus-visible{outline:3px solid #d8c49b;outline-offset:3px}
/* Cicero World uses its own rail; it shares the same type and control scale. */
body:has(>#sidebar.sidebar) .sidebar .zh,body:has(>#sidebar.sidebar) .sidebar small{font-size:.8125rem;line-height:1.6}
body:has(>#sidebar.sidebar) .side-language{font:.8125rem/1.6 var(--cws-ui)}
body:has(>#sidebar.sidebar) :is(.side-language select,.sidebar .tabs a){min-height:44px}
body:has(>#sidebar.sidebar) #view-title{font:500 clamp(1.75rem,2.6vw,2.25rem)/1.2 var(--cws-serif)}
body:has(>#sidebar.sidebar) :focus-visible{outline:3px solid var(--cws-accent);outline-offset:3px}
@media(max-width:840px){body[data-cw-suite="life"] .opening{padding-top:1.5rem}body[data-cw-suite] #ciceronian-atlas>header.export-hero{padding:18px}}
@media screen and (max-width:700px){
 body[data-cw-suite="course"].cws-ready table.vocab{display:block;width:100%}
 body[data-cw-suite="course"].cws-ready table.vocab thead{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%)}
 body[data-cw-suite="course"].cws-ready table.vocab tbody{display:block}
 body[data-cw-suite="course"].cws-ready table.vocab tbody tr{display:block;padding:12px 0;border-bottom:1px solid var(--cws-rule)}
 body[data-cw-suite="course"].cws-ready table.vocab tbody td{display:block;width:100%;padding:4px 0;border:0;white-space:normal}
 body[data-cw-suite="course"].cws-ready table.vocab .hw{font-size:1.125rem}
 body[data-cw-suite="course"].cws-ready table.vocab .lc summary{padding-block:12px}
}
@media print{body[data-cw-suite]{background:white;color:black}body[data-cw-suite] table.vocab .lc summary,#cws-loci-toggle{display:none!important}body[data-cw-suite] table.vocab .cws-loci-content{display:block!important}body[data-cw-suite] table.vocab .lc{color:black}}
