/* Card Catalog · built on the H4 Filed Under language. Tokens come from pk/packages/H4_filed_under.py unchanged. */
:root{--bg:#E5E6E1;--surface:#F2F2EE;--raised:#FFFFFF;--line:#CDCEC7;--line-strong:#6F716B;--ink:#17181A;--ink-2:#3C3F42;--ink-3:#565A5E;--brand:#7A4A1F;--on-brand:#FFFFFF;--brand-ink:#7A4A1F;--brand-tint:#F3E9DD;--accent:#8A6516;--accent-ink:#7A5812;--on-accent:#FFFFFF;--yes:#2B55B5;--yes-tint:#E5EBF8;--caution:#60666A;--caution-tint:#ECEDEA;--no:#5B3470;--no-tint:#F0E8F2;--focus:#0B63CE;--oak:#8A5A30;--brass:#CFA650;--rule:#C23B32;color-scheme:light}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--bg:#161412;--surface:#1F1C19;--raised:#292521;--line:#3A3530;--line-strong:#857C71;--ink:#EFEBE4;--ink-2:#CBC5BB;--ink-3:#ACA59A;--brand:#D6A870;--on-brand:#161412;--brand-ink:#D6A870;--brand-tint:#3A2B1D;--accent:#D3A84F;--accent-ink:#D8B05D;--on-accent:#161412;--yes:#B1CCF1;--yes-tint:#1F2842;--caution:#B1ADAA;--caution-tint:#26231F;--no:#AF76CB;--no-tint:#251C2B;--focus:#8FC2FF;--oak:#5C3F27;--brass:#C49A45;--rule:#E0766C;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#161412;--surface:#1F1C19;--raised:#292521;--line:#3A3530;--line-strong:#857C71;--ink:#EFEBE4;--ink-2:#CBC5BB;--ink-3:#ACA59A;--brand:#D6A870;--on-brand:#161412;--brand-ink:#D6A870;--brand-tint:#3A2B1D;--accent:#D3A84F;--accent-ink:#D8B05D;--on-accent:#161412;--yes:#B1CCF1;--yes-tint:#1F2842;--caution:#B1ADAA;--caution-tint:#26231F;--no:#AF76CB;--no-tint:#251C2B;--focus:#8FC2FF;--oak:#5C3F27;--brass:#C49A45;--rule:#E0766C;color-scheme:dark}
:root{--f-display:"Libre Franklin", system-ui, sans-serif;--f-text:"Source Sans 3", system-ui, sans-serif;--f-ui:"Source Sans 3", system-ui, sans-serif;--f-mono:"IBM Plex Mono", ui-monospace, monospace;--f-readable:"Atkinson Hyperlegible Next", system-ui, sans-serif;--fvs-display:normal;--fvs-text:normal;--fvs-ui:normal;--fvs-mono:normal;--w-display:800;--w-text:400;--w-ui:600;--lh-text:1.55;--track-display:-0.018em;--measure:66ch;--t-cap:12.5px;--t-sm:15px;--t-base:18px;--t-lg:21px;--t-xl:28px;--t-2xl:38px;--t-3xl:54px;--t-hero:80px}
:root[data-font="readable"]{--f-text:var(--f-readable);--f-ui:var(--f-readable);--fvs-text:normal;--fvs-ui:normal}
:root{--r-1:2px;--r-2:4px;--r-3:8px;--r-pill:999px;--bw:1px;--shadow:none;--s-0:0px;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--dur-hover:120ms;--dur-press:0ms;--dur-disclose:200ms;--ease:cubic-bezier(.2,.7,.2,1)}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-text);font-variation-settings:var(--fvs-text);font-weight:var(--w-text);font-size:var(--t-base);line-height:var(--lh-text)}
a{color:var(--brand-ink);text-underline-offset:.18em}
code,kbd,pre{font-family:var(--f-mono);font-variation-settings:var(--fvs-mono)}
.pk-wrap{max-width:1120px;margin:0 auto;padding-inline:24px}
.pk-bar{border-bottom:var(--bw) solid var(--line);background:var(--surface);font-family:var(--f-ui);font-variation-settings:var(--fvs-ui);font-size:var(--t-sm)}
.pk-bar .pk-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding-block:10px}
.pk-bar .pk-id{font-weight:600;color:var(--ink)}
.pk-bar .pk-id span{color:var(--ink-2);font-weight:400}
.pk-bar nav{display:flex;flex-wrap:wrap;gap:4px 14px;order:5;flex-basis:100%;min-width:0;padding-top:2px}
.pk-bar .pk-id{flex:1;min-width:min(100%,260px)}
.pk-bar nav a{color:var(--ink-2);text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.pk-bar .pk-sib a{display:inline-flex;align-items:center;min-height:44px}
.pk-bar nav a:hover{color:var(--ink);text-decoration:underline}
.pk-tg{display:inline-flex;gap:2px;padding:2px;border:var(--bw) solid var(--line-strong);border-radius:var(--r-pill)}
.pk-tg button{all:unset;cursor:pointer;box-sizing:border-box;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;padding:5px 14px;border-radius:var(--r-pill);font-family:var(--f-ui);font-size:var(--t-sm);color:var(--ink-2)}
.pk-tg button[aria-pressed="true"]{background:var(--ink);color:var(--bg)}
.pk-tg button:focus-visible,.k-btn:focus-visible,a:focus-visible,.pk-play:focus-visible,.k-field input:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.pk-sib{display:flex;gap:10px;font-family:var(--f-ui)}
.pk-sib a{color:var(--ink-2)}
section.pk{padding-block:clamp(40px,6vw,72px);border-top:var(--bw) solid var(--line)}
.pk-h{font-family:var(--f-ui);font-variation-settings:var(--fvs-ui);font-size:var(--t-cap);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);margin:0 0 6px;font-weight:600}
.pk-t{font-family:var(--f-display);font-variation-settings:var(--fvs-display);font-weight:var(--w-display);font-size:var(--t-2xl);line-height:1.1;letter-spacing:var(--track-display);margin:0 0 18px;text-wrap:balance}
.pk-lede{max-width:var(--measure);color:var(--ink-2);margin:0 0 28px}
.pk-grid{display:grid;gap:18px}
@media (min-width:760px){.pk-2{grid-template-columns:1fr 1fr}.pk-3{grid-template-columns:repeat(3,1fr)}}
/* kit */
.k-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:18px}
.k-btn{font-family:var(--f-ui);font-variation-settings:var(--fvs-ui);font-weight:var(--w-ui);font-size:var(--t-base);line-height:1.2;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:var(--r-2);border:var(--bw) solid transparent;cursor:pointer;text-decoration:none;transition:background var(--dur-hover) var(--ease),color var(--dur-hover) var(--ease),border-color var(--dur-hover) var(--ease)}
.k-btn-primary{background:var(--brand);color:var(--on-brand)}
.k-btn-secondary{background:transparent;color:var(--brand-ink);border-color:var(--brand-ink)}
.k-btn-quiet{background:transparent;color:var(--brand-ink);text-decoration:underline;text-underline-offset:.2em;padding-inline:6px}
.k-btn[disabled]{background:var(--raised);color:var(--ink-3);border-color:var(--line-strong);cursor:not-allowed}
.k-btn.is-focus{outline:3px solid var(--focus);outline-offset:2px}
.k-yn{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:420px}
.k-yn .k-btn{width:100%}
.k-yn.k-opts{grid-template-columns:1fr 1fr;max-width:520px}
.k-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.k-chip{display:inline-flex;align-items:center;gap:6px;font-family:var(--f-ui);font-variation-settings:var(--fvs-ui);font-size:var(--t-sm);font-weight:600;padding:5px 11px;border-radius:var(--r-pill);background:var(--raised);color:var(--ink);border:var(--bw) solid var(--line)}
.k-chip svg{width:14px;height:14px;flex:none}
.k-chip-yes{background:var(--yes-tint);color:var(--yes);border-color:transparent}
.k-chip-caution{background:var(--caution-tint);color:var(--caution);border-color:transparent}
.k-chip-no{background:var(--no-tint);color:var(--no);border-color:transparent}
.k-field{display:grid;gap:6px;max-width:460px;margin-bottom:16px;font-family:var(--f-ui)}
.k-field label{font-weight:600;font-size:var(--t-sm);color:var(--ink)}
.k-field input{font:inherit;font-family:var(--f-ui);font-size:var(--t-base);padding:11px 13px;border-radius:var(--r-1);border:var(--bw) solid var(--line-strong);background:var(--surface);color:var(--ink)}
.k-field small{font-size:var(--t-sm);color:var(--ink-2)}
.k-field.is-error input{border-color:var(--no);border-width:2px}
.k-field.is-error small{color:var(--no);font-weight:600}
.k-note{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:var(--r-2);background:var(--raised);border:var(--bw) solid var(--line);font-size:var(--t-sm);max-width:560px;margin-bottom:10px;font-family:var(--f-ui)}
.k-note svg{width:18px;height:18px;flex:none;margin-top:1px}
.k-note-yes{background:var(--yes-tint);border-color:transparent;color:var(--yes)}
.k-note-yes b,.k-note-no b{color:inherit}
.k-note-no{background:var(--no-tint);border-color:transparent;color:var(--no)}
.k-kit-grid{display:grid;gap:28px}
@media (min-width:860px){.k-kit-grid{grid-template-columns:1fr 1fr}}
.k-kit-grid > div{min-width:0}
.k-kit-grid h3{font-family:var(--f-ui);font-size:var(--t-sm);font-weight:600;color:var(--ink-2);margin:0 0 10px}
/* sheet */
.pk-sw{border-radius:var(--r-3);padding:18px;border:1px solid}
.pk-sw h4{margin:0 0 12px;font-family:var(--f-ui);font-size:var(--t-sm);font-weight:600}
.pk-sw .g{margin:0 0 12px}
.pk-sw .g p{margin:0 0 6px;font-family:var(--f-ui);font-size:var(--t-cap);letter-spacing:.1em;text-transform:uppercase}
.pk-sw ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.pk-sw li{display:flex;gap:8px;align-items:center;font-family:var(--f-mono);font-size:12px;line-height:1.3}
.pk-sw li i{width:30px;height:30px;border-radius:6px;flex:none;border:1px solid rgb(128 128 128 / .35)}
.pk-sw li b{display:block;font-family:var(--f-ui);font-size:12.5px;font-weight:600}
.pk-table{width:100%;border-collapse:collapse;font-family:var(--f-ui);font-size:var(--t-sm);font-variant-numeric:tabular-nums}
.pk-table th,.pk-table td{text-align:left;padding:7px 10px;border-bottom:var(--bw) solid var(--line);vertical-align:top}
.pk-table th{color:var(--ink-2);font-weight:600}
.pk-scroll{overflow-x:auto}
.pk-ok{color:var(--ink);font-weight:600}.pk-bad{color:var(--no);font-weight:700}
.pk-type .spec{border-bottom:var(--bw) solid var(--line);padding-block:14px}
.pk-type .spec small{display:block;font-family:var(--f-ui);font-size:var(--t-cap);color:var(--ink-2);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}
.pk-scale{display:grid;gap:6px}
.pk-scale div{display:flex;gap:16px;align-items:baseline;border-bottom:var(--bw) dashed var(--line);padding-block:4px;overflow:hidden}
.pk-scale code{font-size:12px;color:var(--ink-2);min-width:140px;flex:none}
.pk-scale span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pk-radii{display:flex;flex-wrap:wrap;gap:14px}
.pk-radii div{width:92px;height:64px;background:var(--brand-tint);border:var(--bw) solid var(--brand-ink);display:flex;align-items:flex-end;padding:6px;font-family:var(--f-mono);font-size:11px;color:var(--brand-ink)}
.pk-space{display:grid;gap:5px}
.pk-space div{display:flex;align-items:center;gap:12px;font-family:var(--f-mono);font-size:12px;color:var(--ink-2)}
.pk-space i{display:block;height:12px;background:var(--brand);border-radius:2px}
.pk-marks{display:flex;flex-wrap:wrap;gap:22px;align-items:flex-end}
.pk-marks figure{margin:0;display:grid;gap:6px;justify-items:center;font-family:var(--f-mono);font-size:11px;color:var(--ink-2)}
.pk-marks .tile{display:grid;place-items:center;border-radius:var(--r-2)}
.pk-lock{display:flex;flex-wrap:wrap;gap:16px;margin-top:22px}
.pk-lock div{padding:22px 26px;border-radius:var(--r-3)}
.pk-voice ul{margin:0;padding-left:1.1em}
.pk-voice li{margin-bottom:6px}
.pk-hl{font-family:var(--f-display);font-variation-settings:var(--fvs-display);font-weight:var(--w-display);font-size:var(--t-xl);line-height:1.2;margin:0 0 10px;letter-spacing:var(--track-display)}
.pk-code{background:var(--raised);border:var(--bw) solid var(--line);border-radius:var(--r-2);padding:14px 16px;font-size:12.5px;line-height:1.55;overflow-x:auto;white-space:pre;color:var(--ink)}
.pk-call{border:var(--bw) solid var(--line-strong);border-radius:var(--r-3);padding:20px 22px;background:var(--surface)}
.pk-call h3{margin:0 0 8px;font-family:var(--f-ui);font-size:var(--t-base)}
.pk-call ul{margin:0 0 6px;padding-left:1.1em}
.pk-motion-demo{display:flex;flex-wrap:wrap;align-items:center;gap:18px;padding:22px;border:var(--bw) dashed var(--line-strong);border-radius:var(--r-3);margin-top:14px;min-height:120px}
.pk-play{font-family:var(--f-ui);font-size:var(--t-sm);font-weight:600;padding:8px 14px;border-radius:var(--r-pill);border:var(--bw) solid var(--ink-2);background:transparent;color:var(--ink);cursor:pointer}
.pk-foot{padding-block:28px 48px;font-family:var(--f-ui);font-size:var(--t-sm);color:var(--ink-2);border-top:var(--bw) solid var(--line)}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}

/* H4 package CSS */

/* Filed Under (H4). Tokens only. */
body{font-feature-settings:"kern","liga"}
.pk-h{font-family:var(--f-mono);font-size:12.5px;letter-spacing:.12em;font-weight:500}
.pk-t{font-weight:800}
.pk-t em,.pk-type em,.pk-hl em{font-style:italic;font-weight:700;color:var(--brand-ink)}
.h4-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* typed label in a brass holder */
.h4-holder{display:inline-flex;align-items:center;position:relative;padding:3px;background:var(--brass);border-radius:var(--r-1);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 30%,transparent)}
.h4-holder::before,.h4-holder::after{content:"";position:absolute;top:50%;width:4px;height:4px;margin-top:-2px;border-radius:50%;background:color-mix(in srgb,var(--ink) 45%,var(--brass))}
.h4-holder::before{left:-7px}.h4-holder::after{right:-7px}
.h4-holder > span{display:block;background:var(--raised);color:var(--ink);font-family:var(--f-mono);font-size:var(--t-cap);font-weight:500;letter-spacing:.1em;text-transform:uppercase;line-height:1.25;padding:3px 9px;border-radius:1px;white-space:nowrap}
/* a drawer front: oak, a holder, a cup pull */
.h4-drawer{position:relative;display:grid;justify-items:center;align-content:center;gap:9px;padding:14px 12px 12px;background:var(--oak);border-radius:var(--r-2);
 box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 35%,var(--oak)),inset 0 3px 0 color-mix(in srgb,var(--raised) 14%,transparent),inset 0 -4px 0 color-mix(in srgb,var(--ink) 22%,transparent);
 background-image:repeating-linear-gradient(90deg,transparent 0 22px,color-mix(in srgb,var(--ink) 7%,transparent) 22px 23px,transparent 23px 41px,color-mix(in srgb,var(--raised) 6%,transparent) 41px 42px)}
.h4-pull{display:block;width:40px;height:11px;border:3px solid var(--brass);border-top-width:4px;border-radius:0 0 18px 18px;box-shadow:0 1px 0 color-mix(in srgb,var(--ink) 40%,transparent)}
/* an index card: white stock, a red rule, a rod hole */
.h4-card{--hole:var(--bg);position:relative;background:var(--raised);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-1);padding:14px 16px 22px}
.h4-card::after{content:"";position:absolute;left:50%;bottom:7px;width:11px;height:11px;margin-left:-5.5px;border-radius:50%;background:var(--hole);box-shadow:inset 0 1px 1px color-mix(in srgb,var(--ink) 25%,transparent)}
.h4-call{margin:0 0 6px;font-family:var(--f-mono);font-size:var(--t-cap);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}
.h4-name{margin:0;font-family:var(--f-display);font-weight:780;font-size:var(--t-lg);line-height:1.15;letter-spacing:-.012em;padding-bottom:6px;border-bottom:1.5px solid var(--rule)}
.h4-meta{margin:6px 0 0;font-family:var(--f-ui);font-size:var(--t-sm);color:var(--ink-2)}
.h4-tracings{margin:8px 0 0;font-family:var(--f-mono);font-size:12.5px;line-height:1.5;color:var(--ink-2)}
.h4-tracings b{font-weight:500;color:var(--ink);letter-spacing:.08em}
/* the signal clip on a card's top edge */
.h4-clip{position:absolute;top:-9px;right:22px;width:22px;height:20px;border-radius:2px 2px 1px 1px;background:var(--yes);box-shadow:0 0 0 2px var(--raised)}
.h4-clip::after{content:"";position:absolute;left:4px;right:4px;bottom:5px;height:2px;background:var(--yes-tint);opacity:.85}
.h4-clip-theirs{right:52px;background:var(--raised);border:2.5px solid var(--yes);box-shadow:none}
.h4-clip-theirs::after{background:var(--yes)}
.h4-clip-wait{background:var(--caution-tint);border:2px dashed var(--caution);box-shadow:none}
.h4-clip-wait::after{display:none}
.h4-clip.is-playing,.sig.is-playing .h4-clip{animation:h4clip 280ms var(--ease) both}
@keyframes h4clip{from{transform:translateY(-16px);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion: reduce){.h4-clip{animation:none!important}}
.h4-demo{display:flex;flex-wrap:wrap;align-items:center;gap:22px}
.h4-card-mini{width:250px;padding-top:18px}
.h4-sigcap{font-family:var(--f-ui);font-size:var(--t-base);color:var(--ink-2)}
.h4-sigcap b{color:var(--ink)}
/* a guide card: a divider with a tab standing up from it */
.h4-guide{position:relative;margin-top:46px;border-top:2px solid var(--line-strong);padding-top:14px}
.h4-guide > .h4-gtab{position:absolute;left:0;top:-30px;height:30px;display:inline-flex;align-items:center;gap:8px;padding:0 14px;background:var(--surface);border:2px solid var(--line-strong);border-bottom:0;border-radius:var(--r-3) var(--r-3) 0 0;
 font-family:var(--f-mono);font-size:var(--t-cap);letter-spacing:.12em;text-transform:uppercase;color:var(--ink)}
.h4-guide > .h4-gtab b{font-weight:500;color:var(--ink-2)}
/* states by mark and word */
.h4-state{display:inline-flex;align-items:center;gap:7px;font-family:var(--f-ui);font-size:var(--t-sm);font-weight:600;line-height:1.3;color:var(--ink);padding:3px 10px 3px 8px;border:1px solid var(--line-strong);border-radius:var(--r-1);background:var(--surface)}
.h4-state svg{width:15px;height:15px;flex:none}
.h4-state-yes{color:var(--yes);background:var(--yes-tint);border-color:var(--yes)}
.h4-state-wait{color:var(--caution);background:transparent;border:1.5px dashed var(--caution)}
.h4-state-no{color:var(--no);background:var(--no-tint);border-color:transparent}
.h4-blank{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1.5px dashed var(--line-strong);border-radius:var(--r-2);background:var(--surface);font-family:var(--f-ui);font-size:var(--t-sm);color:var(--ink)}
.h4-blank svg{width:16px;height:16px;flex:none;margin-top:3px;color:var(--ink-2)}
/* kit, restyled */
.k-btn{border-radius:var(--r-1);font-size:17px;padding:12px 20px;font-weight:650;letter-spacing:.005em}
.k-btn-primary{background:var(--brand);color:var(--on-brand);border:2px solid var(--brand)}
.k-btn-primary:hover{background:color-mix(in srgb,var(--brand) 86%,var(--ink));border-color:color-mix(in srgb,var(--brand) 86%,var(--ink))}
.k-btn-secondary{border:2px solid var(--brand-ink);color:var(--brand-ink);background:transparent}
.k-btn-secondary:hover{background:var(--brand-tint)}
.k-btn-quiet{color:var(--brand-ink)}
.k-yn{max-width:440px}
.k-chip{border-radius:var(--r-1);font-weight:600}
.k-chip-yes{border:1px solid var(--yes)}
.k-chip-caution{background:transparent;border:1.5px dashed var(--caution)}
.k-chip-no{border:0}
.k-ver{display:inline-flex;align-items:center;gap:6px;font-family:var(--f-ui);font-size:var(--t-sm);font-weight:600;line-height:1.3;color:var(--ink-2);padding:2px 8px 2px 6px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-1);white-space:nowrap}
.k-ver svg{width:15px;height:15px;flex:none;color:var(--brand-ink)}
.k-ver-unverified{color:var(--caution);border:1.5px dashed var(--caution);background:transparent}
.k-ver-unverified svg{color:var(--caution)}
.k-note{border-radius:var(--r-2);background:var(--surface);border-color:var(--line)}
.k-note-yes{background:var(--yes-tint);border:1px solid var(--yes)}
.k-field input{border-radius:var(--r-1);background:var(--raised);border-width:1.5px}
.k-field.is-error small::before{content:"\00D7";display:inline-block;font-weight:700;margin-right:6px}
.pk-radii div{background:var(--brand-tint)}
.pk-ok{color:var(--ink-2)}
/* hero: the cabinet */
.h4-hero{background:var(--bg);border-bottom:1px solid var(--line)}
.h4-hero-in{display:grid;gap:34px 56px;padding-block:clamp(34px,5vw,64px);align-items:center}
@media (min-width:940px){.h4-hero-in{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}}
.h4-kick{margin:0 0 18px}
.h4-hero h1{font-family:var(--f-display);font-weight:800;font-size:clamp(44px,7.2vw,var(--t-hero));line-height:.98;letter-spacing:-.03em;margin:0 0 22px;color:var(--ink);text-wrap:balance}
.h4-hero h1 em{font-style:italic;font-weight:700;color:var(--brand-ink)}
.h4-lede{font-size:var(--t-lg);line-height:1.5;color:var(--ink-2);margin:0 0 24px;max-width:34em}
.h4-ctas{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}
.h4-free{margin:0;font-family:var(--f-ui);font-size:var(--t-sm);color:var(--ink-2)}
.h4-cabinet{margin:0;padding:12px;background:color-mix(in srgb,var(--oak) 70%,var(--ink));border-radius:var(--r-2);display:grid;gap:8px}
.h4-drawers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.h4-drawers .h4-drawer{min-height:84px}
.h4-open{grid-column:1 / -1;display:grid;gap:0;background:color-mix(in srgb,var(--oak) 80%,var(--ink));border-radius:var(--r-2);padding:10px 12px 0;overflow:hidden}
.h4-tops{display:grid;gap:3px;padding:0 6px}
.h4-tops i{display:block;height:7px;background:var(--raised);border-radius:1px 1px 0 0;opacity:.9}
.h4-open .h4-card{margin:-2px 0 0;border-radius:var(--r-1) var(--r-1) 0 0;border-bottom:0;padding-bottom:12px}
.h4-open .h4-card::after{display:none}
.h4-front{display:flex;justify-content:center;padding:10px 0 12px;background:var(--oak);margin:0 -12px;box-shadow:inset 0 3px 0 color-mix(in srgb,var(--raised) 14%,transparent)}
.h4-cardrow{display:grid;grid-template-columns:70px minmax(0,1fr);gap:14px;align-items:start}
.h4-ph{display:block;width:70px;aspect-ratio:4/5;border-radius:var(--r-1);overflow:hidden;border:1px solid var(--line)}
.h4-ph svg{display:block;width:100%;height:100%}
/* feature: the search screen */
.h4-feat{display:grid;gap:22px;align-items:start}
@media (min-width:1000px){.h4-feat{grid-template-columns:minmax(0,.95fr) minmax(0,1.1fr) minmax(0,1.05fr)}}
.h4-form{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-2);padding:26px 18px 18px}
.h4-form .h4-guide:first-child{margin-top:26px}
.h4-f{display:grid;gap:4px;margin:0 0 12px;font-family:var(--f-ui)}
.h4-f > span{font-weight:650;font-size:var(--t-sm)}
.h4-f .h4-in{display:flex;align-items:center;min-height:44px;padding:8px 12px;background:var(--raised);border:1.5px solid var(--line-strong);border-radius:var(--r-1);font-size:var(--t-base);color:var(--ink)}
.h4-checks{display:flex;flex-wrap:wrap;gap:6px 14px;font-family:var(--f-ui);font-size:var(--t-base)}
.h4-checks span{display:inline-flex;align-items:center;gap:8px;min-height:36px}
.h4-checks i{display:inline-block;width:18px;height:18px;border:2px solid var(--line-strong);border-radius:2px;background:var(--raised)}
.h4-checks i.on{background:var(--brand);border-color:var(--brand);box-shadow:inset 0 0 0 3px var(--raised)}
.h4-results{display:grid;gap:14px}
.h4-rhead{margin:0;font-family:var(--f-ui);font-size:var(--t-sm);color:var(--ink-2)}
.h4-rhead b{color:var(--ink);font-size:var(--t-base)}
.h4-results .h4-card{padding-top:16px}
.h4-open-card{padding:20px 20px 30px}
.h4-open-card .h4-name{font-size:var(--t-xl)}
.h4-fields{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0;margin:12px 0 0;font-family:var(--f-ui);font-size:var(--t-sm)}
.h4-fields dt,.h4-fields dd{padding:7px 0;border-top:1px solid var(--line)}
.h4-fields dt{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);padding-right:14px;padding-top:9px}
.h4-fields dd{margin:0;color:var(--ink)}
.h4-fields dd.b{color:var(--ink-2);font-style:italic}
.h4-can{display:flex;gap:10px;align-items:flex-start;margin:14px 0;padding:10px 12px;border-radius:var(--r-2);font-family:var(--f-ui);font-size:var(--t-sm);font-weight:600}
.h4-can svg{width:16px;height:16px;flex:none;margin-top:2px}
.h4-can-ok{background:var(--brand-tint);color:var(--ink)}
.h4-can-wait{border:1.5px dashed var(--caution);color:var(--caution)}
@media (max-width:560px){
 .h4-drawers{grid-template-columns:repeat(2,minmax(0,1fr))}
 .h4-drawers .h4-drawer:nth-child(n+5){display:none}
 .h4-hero h1{font-size:clamp(40px,11vw,52px)}
 .h4-lede{font-size:19px}
 .h4-holder > span{font-size:11.5px;padding:3px 7px}
}

/* Card Catalog, built on the H4 Filed Under language. Tokens only; new colors are tints or alphas of tokens. */
html{scroll-padding-top:12px}
[hidden]{display:none!important}
body{overflow-x:hidden;font-size:var(--t-base)}
img,svg{max-width:100%}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.cc-skip{position:absolute;left:-9999px;top:0;z-index:50;background:var(--raised);color:var(--ink);padding:12px 16px;font-family:var(--f-ui);min-height:44px}
.cc-skip:focus{left:12px;top:12px}
.cc-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.cc-wrap{max-width:1180px;margin:0 auto;padding-inline:24px}
/* the thin bar */
.cc-exbar{background:var(--ink);color:var(--bg);font-family:var(--f-ui);font-size:14px;line-height:1.45}
.cc-exbar p{margin:0;padding:7px 20px}
.cc-exbar a{color:var(--bg);text-underline-offset:.2em}
/* header */
.cc-top{background:var(--surface);border-bottom:1px solid var(--line)}
.cc-top-in{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;padding:8px 20px}
.cc-brand{margin:0 auto 0 0;font-family:var(--f-display);font-weight:800;font-size:26px;line-height:1;letter-spacing:-.022em}
.cc-brand a{display:inline-flex;align-items:center;gap:10px;min-height:48px;color:var(--ink);text-decoration:none}
.cc-brand svg{width:38px;height:38px;flex:none;color:var(--brand-ink);--accent:var(--brass)}
.cc-brand small{display:block;font-family:var(--f-mono);font-weight:400;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);margin-top:4px}
.cc-signed{display:flex;align-items:center;gap:8px;font-family:var(--f-ui);font-size:15px;font-weight:650;color:var(--ink-2)}
.cc-signed select{min-height:44px;max-width:260px;padding:6px 10px;font:inherit;font-weight:600;color:var(--ink);background:var(--raised);border:1.5px solid var(--line-strong);border-radius:var(--r-1)}
.cc-nav{display:flex;flex-wrap:wrap;gap:0 4px;font-family:var(--f-ui);font-size:15.5px}
.cc-nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 8px;color:var(--ink-2);text-decoration:none;border-bottom:3px solid transparent}
.cc-nav a:hover{color:var(--ink);text-decoration:underline}
.cc-nav a[aria-current="page"]{color:var(--ink);border-bottom-color:var(--brand);font-weight:650}
.cc-tools{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.cc-tg{display:inline-flex;gap:2px;padding:2px;border:1px solid var(--line-strong);border-radius:var(--r-pill)}
.cc-tg button{all:unset;cursor:pointer;box-sizing:border-box;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;padding:4px 13px;border-radius:var(--r-pill);font-family:var(--f-ui);font-size:14.5px;color:var(--ink-2)}
.cc-tg button[aria-pressed="true"]{background:var(--ink);color:var(--bg)}
.cc-tg button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.cc-reset{min-height:44px;font-family:var(--f-ui);font-size:14.5px;font-weight:650;padding:6px 12px;border:1.5px dashed var(--line-strong);border-radius:var(--r-1);background:transparent;color:var(--ink);cursor:pointer}
/* the shell */
.cc-main{min-width:0}
.cc-view{min-width:0}
.cc-vhead{margin:0 0 16px}
.cc-vh{font-family:var(--f-display);font-weight:800;font-size:clamp(28px,3.2vw,36px);line-height:1.04;letter-spacing:-.022em;margin:0 0 6px;text-wrap:balance}
.cc-lede{margin:0;font-size:var(--t-base);line-height:1.5;color:var(--ink-2);max-width:40em}
.cc-help{margin:8px 0 0;font-family:var(--f-ui);font-size:15px;line-height:1.45;color:var(--ink-2)}
.cc-none{margin:12px 0 20px;padding:16px;font-family:var(--f-ui);font-size:16px;border:1.5px dashed var(--line-strong);border-radius:var(--r-2);color:var(--ink)}
.cc-h2{font-family:var(--f-display);font-weight:780;font-size:var(--t-lg);letter-spacing:-.012em;margin:26px 0 12px}
.cc-h{margin:0 0 8px;padding-bottom:6px;border-bottom:1px solid var(--line);font-family:var(--f-mono);font-weight:500;font-size:var(--t-cap);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2)}
.cc-row{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;margin:8px 0 0}
.cc-url{font-family:var(--f-mono);font-size:13px;overflow-wrap:anywhere;color:var(--ink)}
/* rail: your desk (the drawers are the cabinet above the search) */
.cc-rail{display:grid;gap:6px;align-content:start}
.cc-desk{display:flex;align-items:center;gap:8px;min-height:48px;padding:6px 10px;border:1px solid var(--line);border-left:4px solid transparent;border-radius:var(--r-1);background:var(--surface);color:var(--ink);text-decoration:none;font-family:var(--f-ui);font-size:15.5px;font-weight:650}
.cc-desk svg{width:16px;height:16px;flex:none;color:var(--brand-ink)}
.cc-desk span{flex:1;min-width:0}
.cc-desk b{font-family:var(--f-mono);font-weight:500;font-size:12.5px;background:var(--brand-tint);color:var(--ink);padding:0 6px;border-radius:2px}
.cc-desk:hover{border-color:var(--line-strong)}
.cc-desk[aria-current="page"]{border-left-color:var(--brand);background:var(--raised);box-shadow:inset 0 0 0 1px var(--line-strong)}
.cc-desk-leave{margin-top:10px;border-style:dashed}
.cc-railfoot{margin-top:14px;font-family:var(--f-ui);font-size:14px;color:var(--ink-2)}
.cc-railfoot summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:650;color:var(--ink)}
.cc-keys{margin:0;padding:0;list-style:none;display:grid;gap:6px}
.cc-keys kbd{display:inline-block;min-width:22px;text-align:center;font-family:var(--f-mono);font-size:12.5px;padding:1px 5px;border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:3px;background:var(--raised);color:var(--ink);margin-right:6px}
/* bottom tabs on the phone */
.cc-tabs{display:none}
/* search head */
.cc-phonesum{display:none}
.cc-sum{margin:0;font-family:var(--f-ui);font-size:15.5px;line-height:1.45;color:var(--ink)}
/* the form, a drawer of guide cards */
.cc-form{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-2);padding:6px 14px 16px}
.cc-guide{border:0;border-top:2px solid var(--line-strong);margin:46px 0 0;padding:14px 0 0;min-width:0}
.cc-guide:first-child{margin-top:34px}
.cc-guide > legend.h4-gtab{padding:0 14px;float:none}
.cc-grid{display:grid;gap:14px}
.cc-f{display:grid;gap:4px;margin:0;font-family:var(--f-ui);min-width:0}
.cc-f > span,.cc-f > legend,.cc-pair > span{font-weight:650;font-size:15px;color:var(--ink);padding:0}
.cc-set{border:0;padding:0;margin:0;min-width:0}
.cc-set > legend{margin-bottom:2px}
.cc-f input[type="text"],.cc-f input[type="url"],.cc-f input[type="search"],.cc-f input[type="number"],.cc-f select,.cc-f textarea,.cc-two select,.cc-two input{box-sizing:border-box;width:100%;min-height:44px;padding:8px 10px;font:inherit;font-family:var(--f-ui);font-size:16px;color:var(--ink);background:var(--raised);border:1.5px solid var(--line-strong);border-radius:var(--r-1)}
.cc-f textarea{min-height:120px;resize:vertical;line-height:1.5}
.cc-f input::placeholder,.cc-f textarea::placeholder{color:var(--ink-3);opacity:1}
.cc-f select:disabled{color:var(--ink-3);border-style:dashed}
.cc-f small{font-size:14px;line-height:1.4;color:var(--ink-2)}
.cc-two{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center}
.cc-two > span{font-family:var(--f-ui);font-size:15px;color:var(--ink-2)}
.cc-cbs{display:flex;flex-wrap:wrap;gap:0 16px}
.cc-cbs.cc-col{flex-direction:column;gap:0}
.cc-cb{display:inline-flex;align-items:center;gap:9px;min-height:44px;cursor:pointer;font-family:var(--f-ui);font-size:16px;line-height:1.25;color:var(--ink)}
.cc-cb input{width:20px;height:20px;margin:0;flex:none;accent-color:var(--brand)}
.cc-cb small{font-family:var(--f-mono);font-size:12px;color:var(--ink-2)}
.cc-cb .kd-level{font-size:14.5px}
.cc-langs{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:0 10px;max-height:228px;overflow:auto;padding:0 10px;background:var(--raised);border:1px solid var(--line-strong);border-radius:var(--r-1)}
.cc-langs .cc-cb{font-size:15px}
.cc-qrow{display:grid;gap:8px;padding:0 0 12px;margin:0 0 12px;border-bottom:1px dashed var(--line-strong)}
.cc-rm{justify-self:start;min-height:44px}
.cc-addq{justify-self:start;margin-top:4px}
.k-btn svg{width:16px;height:16px;flex:none}
.cc-addq svg,.cc-formfoot svg,.cc-write svg,.cc-leavebtn svg,.cc-back svg,.cc-thread .k-btn svg,.cc-mini .k-btn svg,.cc-compose .k-btn svg{width:16px;height:16px;flex:none}
.cc-formfoot{display:grid;gap:10px;margin-top:22px}
.cc-formfoot .k-btn{width:100%}
/* sort */
.cc-sort{display:flex;flex-wrap:wrap;gap:6px}
.cc-sortb{min-height:44px;padding:6px 12px;font-family:var(--f-ui);font-weight:650;font-size:15px;line-height:1.2;color:var(--ink);background:var(--raised);border:1.5px solid var(--line-strong);border-radius:var(--r-1);cursor:pointer}
.cc-sortb:hover{border-color:var(--ink)}
.cc-sortb[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.cc-sortlabel{margin:0 0 6px;font-family:var(--f-mono);font-size:var(--t-cap);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2)}
/* results */
.cc-count{margin:16px 0 2px;font-family:var(--f-ui);font-size:17px;line-height:1.4;color:var(--ink)}
.cc-sortsay{margin:0 0 12px;font-family:var(--f-ui);font-size:15px;line-height:1.45;color:var(--ink-2)}
.cc-blanks{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}
.cc-blanks .h4-blank{flex-wrap:wrap;align-items:center}
.cc-blanks .h4-blank > span{flex:1 1 220px}
.cc-blanks .k-btn{padding:8px 6px;font-size:15px;min-height:44px}
.cc-aside{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin:0 0 12px;font-family:var(--f-ui);font-size:15px;color:var(--ink-2)}
.cc-aside svg{width:16px;height:16px;color:var(--caution)}
.cc-aside .k-btn{min-height:44px;font-size:15px}
.cc-pools{margin:0 0 16px;padding:10px 14px;border:1px solid var(--line);border-radius:var(--r-2);background:var(--surface)}
.cc-pools .cc-sortlabel{margin-bottom:4px}
.cc-pools ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:2px 0;font-family:var(--f-ui);font-size:14.5px;line-height:1.5;color:var(--ink)}
.cc-pools li{white-space:nowrap}
.cc-pools li:not(:last-child)::after{content:"·";margin:0 8px;color:var(--ink-2)}
.cc-pools li b{font-family:var(--f-mono);font-weight:500;font-size:13px}
.cc-pools .cc-help{margin:4px 0 0;font-size:14px}
.cc-list{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.cc-li{min-width:0}
.cc-item,.cc-mini{display:grid;grid-template-columns:76px minmax(0,1fr);gap:14px;padding:16px 16px 26px;cursor:pointer;transition:border-color var(--dur-hover) var(--ease)}
.cc-mini{cursor:default}
.cc-item:hover{border-color:var(--line-strong)}
.cc-item.is-current{border-color:var(--brand);box-shadow:inset 4px 0 0 var(--brand)}
.cc-ph{display:block;width:76px;aspect-ratio:4/5;border:1px solid var(--line);border-radius:var(--r-1);overflow:hidden;background:var(--surface)}
.cc-ph svg{display:block;width:100%;height:100%}
.cc-it{min-width:0}
.cc-it .h4-call{margin-bottom:2px}
.cc-nm{margin:0}
.cc-open{all:unset;box-sizing:border-box;display:block;width:100%;min-height:44px;padding:6px 0 6px;cursor:pointer;font-family:var(--f-display);font-weight:780;font-size:var(--t-lg);line-height:1.15;letter-spacing:-.012em;color:var(--ink);border-bottom:1.5px solid var(--rule)}
.cc-open:hover{text-decoration:underline;text-underline-offset:.16em}
.cc-open:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.cc-lf{font-family:var(--f-ui);font-size:15px;font-weight:650;color:var(--ink)}
.cc-reach{display:flex;gap:8px;align-items:flex-start;margin:10px 0 0;font-family:var(--f-ui);font-size:15px;font-weight:600;line-height:1.38;color:var(--ink)}
.cc-reach svg{width:16px;height:16px;flex:none;margin-top:2px}
.cc-reach-ok svg{color:var(--brand-ink)}
.cc-reach-wait{color:var(--caution)}
.cc-reach-held{color:var(--ink-2)}
.cc-reach-held svg{color:var(--ink-2)}
.cc-end{margin:18px 0 0;padding:16px 0 4px;border-top:2px dashed var(--line-strong);text-align:center;font-family:var(--f-mono);font-size:13px;letter-spacing:.06em;color:var(--ink-2)}
/* verification, restyled */
.kd-level{display:inline-flex;align-items:center;gap:6px;font-family:var(--f-ui);font-size:14.5px;font-weight:600;line-height:1.3;color:var(--ink-2);padding:2px 8px 2px 6px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-1);white-space:nowrap;vertical-align:middle}
.kd-level svg{width:14px;height:14px;flex:none;color:var(--brand-ink)}
.kd-level[data-level="unverified"]{color:var(--caution);border:1.5px dashed var(--caution);background:transparent}
.kd-level[data-level="unverified"] svg{color:var(--caution)}
.h4-state{white-space:normal}
/* the full card */
.cc-detail{min-width:0}
.cc-full{padding:18px 18px 36px}
.cc-full .h4-call{padding-right:70px}
.cc-fullname{font-size:var(--t-xl);margin:0}
.cc-fullname:focus{outline:none}
.cc-fullname:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.cc-back{display:none;margin:0 0 14px;min-height:44px}
.cc-photos{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(0,1fr);gap:8px;margin:14px 0 4px;align-items:start}
.cc-photo{margin:0;border:1px solid var(--line);border-radius:var(--r-1);overflow:hidden;aspect-ratio:4/5;background:var(--surface)}
.cc-photo svg{display:block;width:100%;height:100%}
.cc-illus{margin:4px 0 0;font-family:var(--f-ui);font-size:13.5px;color:var(--ink-2)}
.cc-note{display:flex;gap:8px;align-items:flex-start;margin:12px 0 0;padding:9px 12px;border-radius:var(--r-2);background:var(--yes-tint);color:var(--ink);font-family:var(--f-ui);font-size:15px;line-height:1.4}
.cc-note svg{width:16px;height:16px;flex:none;margin-top:2px;color:var(--yes)}
.cc-sec{margin-top:22px}
.cc-can{margin-top:16px;padding:14px;border:1px solid var(--line-strong);border-radius:var(--r-2);background:var(--surface)}
.cc-can .cc-reach{margin:0;padding:10px 12px;border-radius:var(--r-2);font-size:15.5px}
.cc-can .cc-reach-ok{background:var(--brand-tint)}
.cc-can .cc-reach-wait{border:1.5px dashed var(--caution);background:var(--caution-tint)}
.cc-can .cc-reach-held{border:1px solid var(--line);background:var(--raised);color:var(--ink)}
.cc-rules{margin:8px 0 12px;font-family:var(--f-ui);font-size:14.5px;color:var(--ink-2)}
.cc-yn{max-width:none}
.cc-yn .k-btn{padding-inline:10px}
.cc-yn .k-btn svg{width:16px;height:16px}
.cc-write{margin-top:10px;width:100%}
.cc-compose{display:grid;gap:10px;margin-top:14px;padding-top:12px;border-top:1px dashed var(--line-strong)}
.cc-sent{display:flex;gap:8px;align-items:flex-start;margin:10px 0 0;padding:9px 12px;border-radius:var(--r-2);background:var(--yes-tint);color:var(--ink);font-family:var(--f-ui);font-size:15px}
.cc-sent svg{width:16px;height:16px;flex:none;margin-top:2px;color:var(--yes)}
.cc-about{margin:0 0 12px;font-size:17.5px;line-height:1.55}
.cc-prompts{margin:0;display:grid;gap:10px}
.cc-prompt{padding:10px 12px;border-left:3px solid var(--rule);background:var(--surface)}
.cc-prompt dt{font-family:var(--f-ui);font-weight:650;font-size:15px;color:var(--ink-2);margin:0 0 2px}
.cc-prompt dd{margin:0;font-size:17px;line-height:1.5}
.cc-fields{margin:0}
.cc-fields dd{overflow-wrap:anywhere}
.cc-blankline{display:flex;gap:8px;align-items:flex-start;margin:10px 0 0;font-family:var(--f-ui);font-size:15px;color:var(--ink-2)}
.cc-blankline svg{width:16px;height:16px;flex:none;margin-top:2px}
.cc-common{margin:0 0 8px;font-family:var(--f-ui);font-size:15.5px}
.cc-answers{list-style:none;margin:0;padding:0}
.cc-ans{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px 12px;padding:8px 0;border-top:1px solid var(--line);font-family:var(--f-ui);font-size:15px;line-height:1.4}
.cc-ans .q{color:var(--ink-2)}
.cc-ans .a{color:var(--ink);font-weight:600}
.cc-ans em{display:inline-flex;align-items:center;gap:4px;font-style:normal;font-weight:650;color:var(--yes);white-space:nowrap}
.cc-ans em svg{width:14px;height:14px}
.cc-ans i{display:block;font-style:normal;font-weight:400;color:var(--ink-2);font-size:14px}
.cc-ans.cc-skip .a{color:var(--ink-2);font-weight:400;font-style:italic}
.cc-filed{list-style:none;margin:0;padding:0;display:grid;gap:0}
.cc-filed li{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center;padding:8px 0;border-top:1px solid var(--line);font-family:var(--f-ui);font-size:15px}
.cc-pn{font-weight:650}
.cc-pd{color:var(--ink-2);font-size:14px}
/* other drawers */
.cc-minis{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:14px}
.cc-mini .k-btn{min-height:44px}
.cc-gap{display:flex;gap:12px;align-items:flex-start;margin:26px 0 0;padding:14px 16px;border:1.5px dashed var(--line-strong);border-radius:var(--r-2);background:var(--surface);font-family:var(--f-ui);font-size:15.5px;line-height:1.5}
.cc-gap > svg{width:18px;height:18px;flex:none;margin-top:3px;color:var(--ink-2)}
.cc-threads{list-style:none;margin:0;padding:0;display:grid;gap:18px}
.cc-thread{padding:16px 16px 18px;background:var(--raised);border:1px solid var(--line);border-radius:var(--r-2)}
.cc-thread > h3{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-family:var(--f-display);font-weight:780;font-size:var(--t-lg);letter-spacing:-.01em;text-transform:none;color:var(--ink);border-bottom:1.5px solid var(--rule)}
.cc-thread ol{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.cc-lhead{margin:0 0 4px;font-family:var(--f-ui);font-size:14.5px;color:var(--ink-2)}
.cc-lhead b{color:var(--ink)}
.cc-lbody{margin:0 0 8px;white-space:pre-wrap;font-size:17px;line-height:1.55}
.cc-json{margin-top:10px;border:1px solid var(--line);border-radius:var(--r-2);background:var(--raised)}
.cc-json summary{min-height:44px;display:flex;align-items:center;padding:0 12px;cursor:pointer;font-family:var(--f-ui);font-weight:650;font-size:15px}
.cc-json pre{margin:0;padding:12px;border-top:1px solid var(--line);font-family:var(--f-mono);font-size:12.5px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;max-height:380px;overflow:auto;background:var(--surface);color:var(--ink)}
.cc-saveform{display:grid;gap:10px;padding:16px;margin:0 0 22px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-2)}
.cc-saveform .k-btn{justify-self:start}
.cc-msg{margin:0;font-family:var(--f-ui);font-size:15px;color:var(--ink)}
.cc-savedlist{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.cc-saved{padding:16px 16px 28px}
.cc-saved .cc-sum{margin-top:8px}
.cc-req{padding:18px 18px 30px}
.cc-req .h4-name em{font-style:italic;color:var(--brand-ink)}
.cc-terms{grid-template-columns:minmax(110px,auto) minmax(0,1fr)}
.cc-terms dd{font-size:16px;line-height:1.5}
.cc-who{display:inline-flex;flex-wrap:wrap;gap:6px;align-items:center;font-weight:650}
.cc-said{margin:8px 0 12px;font-family:var(--f-ui);font-size:15.5px;color:var(--ink)}
.cc-last{margin:0 0 12px;padding:8px 12px;border-left:4px solid var(--brand);background:var(--surface);font-family:var(--f-ui);font-size:15px}
.cc-req .k-yn{margin-bottom:8px}
.cc-log{list-style:none;margin:0;padding:6px 12px 12px}
.cc-log li{padding:10px 0;border-top:1px dashed var(--line)}
.cc-log .t{margin:0;font-family:var(--f-mono);font-size:12px;color:var(--ink-2)}
.cc-log p{margin:4px 0 6px;font-family:var(--f-ui);font-size:15px}
.cc-log pre{margin:0;padding:10px;font-family:var(--f-mono);font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface);border:1px solid var(--line)}
.cc-leave{display:grid;gap:18px;padding:20px;background:var(--raised);border:1px solid var(--line-strong);border-radius:var(--r-2)}
.cc-leavebtn{justify-self:start;font-size:18px;padding:14px 24px}
.cc-holds,.cc-outcome{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.cc-holds li,.cc-outcome li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;align-items:start;font-family:var(--f-ui);font-size:16px;line-height:1.45}
.cc-holds svg,.cc-outcome svg{width:18px;height:18px;margin-top:3px;color:var(--ink-2)}
.cc-outcome li{padding:10px 12px;border-radius:var(--r-2);background:var(--surface);border:1px solid var(--line)}
.cc-outcome li.kept{background:var(--yes-tint);border-color:transparent}
.cc-outcome li.kept svg{color:var(--yes)}
.cc-outcome + .cc-row{margin-top:18px}
/* footer */
.cc-foot{margin-top:40px;background:var(--surface);border-top:1px solid var(--line);font-family:var(--f-ui);font-size:15px;color:var(--ink-2)}
.cc-foot .cc-in{padding:22px 20px 32px;display:grid;gap:6px;max-width:1180px;margin:0 auto}
.cc-foot p{margin:0}
.cc-foot .addr{color:var(--ink)}
.cc-foot a:not(.uf-credit a){color:var(--brand-ink)}
/* the live announcer */
#cc-announce{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ---------------------------------------------------------------- desktop: rail, form, results, card */
@media (min-width:1024px){
 .cc-shell{display:grid;grid-template-columns:minmax(0,148px) minmax(0,1fr) minmax(340px,380px);gap:0 18px;padding:18px 18px 0;align-items:start;max-width:1560px;margin:0 auto}
 .cc-railcol{position:sticky;top:12px;min-width:0}
 .cc-detail{position:sticky;top:2px;max-height:calc(100vh - 4px);overflow:auto;overscroll-behavior:contain;padding:10px 0 10px}
 body.cc-left .cc-shell{grid-template-columns:minmax(0,1fr);max-width:900px}
 body.cc-left .cc-railcol{display:none}
 .cc-search{display:grid;grid-template-columns:minmax(260px,290px) minmax(0,1fr);grid-template-areas:"head head" "form res";gap:0 18px;align-items:start}
 .cc-search > .cc-shead{grid-area:head}
 .cc-search > .cc-formwrap{grid-area:form;position:sticky;top:12px;max-height:calc(100vh - 24px);overflow:auto;overscroll-behavior:contain;border-radius:var(--r-2)}
 .cc-search > .cc-resultswrap{grid-area:res;min-width:0}
}
@media (min-width:1500px){
 .cc-shell{grid-template-columns:minmax(0,160px) minmax(0,1fr) minmax(400px,460px)}
 .cc-search{grid-template-columns:minmax(300px,340px) minmax(0,1fr)}
}
/* ---------------------------------------------------------------- phone and tablet: a full-screen app with a tab bar */
@media (max-width:1023px){
 body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}
 .cc-railcol{display:none}
 .cc-shell{padding:14px 16px 0}
 .cc-tabs{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:var(--surface);border-top:1px solid var(--line-strong);padding:0 max(4px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(4px,env(safe-area-inset-left))}
 .cc-tabs{height:calc(64px + env(safe-area-inset-bottom));box-sizing:border-box}
 .cc-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:0;height:63px;padding:4px 2px;font-family:var(--f-ui);font-size:12.5px;font-weight:650;line-height:1.1;text-align:center;color:var(--ink-2);text-decoration:none;border-top:3px solid transparent}
 .cc-tab svg{width:22px;height:22px}
 .cc-tab b{font-family:var(--f-mono);font-weight:500;font-size:11.5px;background:var(--brand-tint);color:var(--ink);padding:0 4px;border-radius:2px}
 .cc-tab[aria-current="page"]{color:var(--ink);border-top-color:var(--brand);background:var(--raised)}
 .cc-tab[aria-current="page"] svg{color:var(--brand-ink)}
 .cc-phonesum{display:grid;gap:10px;margin-top:14px;padding:12px 14px;background:var(--surface);border:1.5px dashed var(--line-strong);border-radius:var(--r-2)}
 .cc-phonesum .k-btn{justify-self:start}
 html.cc-live .cc-formwrap{display:none}
 body.cc-formopen .cc-formwrap{display:block;margin-bottom:10px}
 .cc-detail{display:none}
 body.cc-cardopen .cc-detail{display:block;position:fixed;left:0;right:0;top:0;bottom:calc(64px + env(safe-area-inset-bottom));z-index:35;overflow:auto;overscroll-behavior:contain;background:var(--bg);padding:12px max(12px,env(safe-area-inset-right)) 24px max(12px,env(safe-area-inset-left))}
 body.cc-cardopen .cc-back{display:inline-flex}
 .cc-full .h4-call{padding-right:0}
 .cc-full{padding-top:22px}
 .cc-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
 .cc-grid > .cc-wide{grid-column:1 / -1}
}
@media (max-width:600px){
 .cc-top-in{padding:6px 16px;gap:4px 10px}
 .cc-brand{font-size:23px}
 .cc-brand svg{width:32px;height:32px}
 .cc-brand small{font-size:10.5px;letter-spacing:.06em;margin-top:3px}
 .cc-signed{width:100%;font-size:14px}
 .cc-signed select{flex:1 1 0;min-width:0;max-width:none}
 .cc-nav{width:100%}
 .cc-exbar{font-size:13px}
 .cc-exbar p{padding:6px 16px}
 .cc-shell{padding:12px 16px 0}
 .cc-item,.cc-mini{grid-template-columns:64px minmax(0,1fr);gap:12px;padding:14px 14px 24px}
 .cc-ph{width:64px}
 .cc-ans{grid-template-columns:1fr}
 .cc-terms{grid-template-columns:1fr}
 .cc-terms dt{padding-bottom:0;border-top:1px solid var(--line)}
 .cc-terms dd{border-top:0;padding-top:2px}
 .cc-grid{grid-template-columns:1fr}
 .cc-yn{grid-template-columns:1fr 1fr}
 .cc-photos{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr)}
 .cc-foot .cc-in{padding:18px 16px 24px}
 body.cc-app .cc-top .cc-nav{display:none}
 .cc-shead .cc-lede{display:none}
 .cc-sort{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;margin-inline:-2px;padding-inline:2px}
 .cc-sortb{flex:none}
}
body.cc-left .cc-detail,body.cc-left .cc-tabs{display:none!important}
@media (prefers-reduced-motion: reduce){.cc-dr{transition:none}}

/* ---------------------------------------------------------------- about and under the hood */
.cc-page{padding-bottom:10px}
.cc-pagehead{padding-block:clamp(30px,5vw,56px) 8px}
.cc-pagehead h1{font-family:var(--f-display);font-weight:800;font-size:clamp(40px,6vw,var(--t-3xl));line-height:1;letter-spacing:-.028em;margin:12px 0 16px;text-wrap:balance}
.cc-pagehead h1 em{font-style:italic;font-weight:700;color:var(--brand-ink)}
section.cc-s{padding-block:clamp(36px,5vw,64px);border-top:1px solid var(--line)}
.cc-kick{margin:0 0 12px;font-family:var(--f-mono);font-size:var(--t-cap);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
.cc-h2big{font-family:var(--f-display);font-weight:800;font-size:clamp(30px,4vw,var(--t-2xl));line-height:1.04;letter-spacing:-.022em;margin:0 0 14px;text-wrap:balance}
.cc-prose{max-width:var(--measure)}
.cc-prose p{margin:0 0 14px}
.cc-2{display:grid;gap:24px;align-items:start}
@media (min-width:900px){.cc-2{grid-template-columns:repeat(2,minmax(0,1fr))}}
.cc-3{display:grid;gap:18px}
@media (min-width:900px){.cc-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.cc-panel{background:var(--raised);border:1px solid var(--line-strong);border-radius:var(--r-2);padding:clamp(16px,2.4vw,24px);min-width:0}
.cc-panel h3{margin:0 0 8px;font-family:var(--f-display);font-weight:780;font-size:var(--t-lg);letter-spacing:-.012em;line-height:1.15}
.cc-panel p{margin:0 0 10px}
.cc-panel p:last-child{margin-bottom:0}
.cc-sec-link{font-family:var(--f-mono);font-size:.8em;white-space:nowrap}
.cc-table{width:100%;border-collapse:collapse;font-family:var(--f-ui);font-size:15px;line-height:1.45}
.cc-table th,.cc-table td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--line)}
.cc-table thead th{font-family:var(--f-mono);font-weight:500;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);border-bottom:2px solid var(--line-strong)}
.cc-table tbody th{font-weight:650;color:var(--ink)}
.cc-table .n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.cc-table code{font-size:13px}
.cc-scroll{overflow-x:auto}
@media (max-width:760px){
 table.cc-stack,table.cc-stack tbody,table.cc-stack tr,table.cc-stack td,table.cc-stack th,table.cc-stack tfoot{display:block;width:100%}
 table.cc-stack thead{display:none}
 table.cc-stack tr{border:1px solid var(--line);border-radius:var(--r-2);background:var(--raised);margin:0 0 12px;padding:6px 12px}
 table.cc-stack td,table.cc-stack th{border:0;padding:6px 0}
 table.cc-stack td[data-label]::before{content:attr(data-label);display:block;font-family:var(--f-mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2)}
 table.cc-stack .n{text-align:left}
}
.cc-never{list-style:none;margin:0;padding:0;display:grid;gap:12px}
@media (min-width:900px){.cc-never{grid-template-columns:repeat(2,minmax(0,1fr))}}
.cc-never li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:4px 12px;padding:14px 16px;background:var(--raised);border:1px solid var(--line);border-radius:var(--r-2)}
.cc-never li > svg{width:18px;height:18px;margin-top:4px;color:var(--no)}
.cc-never b{display:block;font-family:var(--f-ui);font-weight:700;font-size:17px;margin-bottom:2px}
.cc-never span{font-size:16.5px;line-height:1.5;color:var(--ink-2)}
.cc-never .instead{grid-column:2;display:flex;gap:8px;align-items:flex-start;margin-top:6px;font-family:var(--f-ui);font-size:15px;color:var(--ink)}
.cc-never .instead svg{width:15px;height:15px;flex:none;margin-top:3px;color:var(--brand-ink)}
.cc-ledger{list-style:none;margin:0;padding:0}
.cc-ledger li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px 0;border-bottom:1px dashed var(--line-strong);font-family:var(--f-ui);font-size:16px}
.cc-ledger li b{font-weight:700;white-space:nowrap}
.cc-code{margin:0;padding:14px;background:var(--raised);border:1px solid var(--line-strong);border-radius:var(--r-2);font-family:var(--f-mono);font-size:12.5px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink);max-height:520px;overflow:auto}
.cc-gaps{margin:0;padding-left:1.3em;max-width:64em}
.cc-gaps li{margin:0 0 14px;padding-left:4px}
.cc-gaps b{font-family:var(--f-ui);font-weight:700}
.cc-staff{display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;align-items:start}
.cc-staff .cc-ph{width:96px}
.cc-apps{list-style:none;margin:0;padding:0;display:grid;gap:10px}
@media (min-width:900px){.cc-apps{grid-template-columns:repeat(3,minmax(0,1fr))}}
.cc-apps li{padding:14px 16px;background:var(--raised);border:1px solid var(--line);border-radius:var(--r-2)}
.cc-apps a{font-family:var(--f-ui);font-weight:700;font-size:17px;display:inline-flex;align-items:center;min-height:44px}
.cc-apps span{display:block;font-size:16px;color:var(--ink-2)}
.cc-hero .h4-hero-in{padding-block:clamp(28px,4vw,54px)}
.cc-hero .h4-open .h4-card{padding-bottom:14px}
.cc-charter{margin:8px 0 0;font-size:16px;line-height:1.5;font-style:italic;color:var(--ink-2)}

/* ---------------------------------------------------------------- the cabinet: drawers by purpose */
/* the cabinet's carcass: oak toward the ink by day, oak toward the ground by night, so it stays a dark cabinet in both */
:root{--cab:color-mix(in srgb,var(--oak) 70%,var(--ink));--cab-on:var(--raised);--cab-halo:var(--raised)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--cab:color-mix(in srgb,var(--oak) 55%,var(--bg));--cab-on:var(--ink);--cab-halo:var(--bg)}}
:root[data-theme="dark"]{--cab:color-mix(in srgb,var(--oak) 55%,var(--bg));--cab-on:var(--ink);--cab-halo:var(--bg)}
.cc-cabinet{display:grid;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:8px;margin:16px 0 4px;padding:10px;background:var(--cab);border-radius:var(--r-2)}
.cc-dr{appearance:none;-webkit-appearance:none;box-sizing:border-box;margin:0;border:0;font:inherit;color:var(--ink);text-align:center;cursor:pointer;min-height:66px;padding:10px 6px 8px;gap:5px;transition:transform var(--dur-hover) var(--ease)}
.cc-dr.h4-drawer{display:grid;justify-items:center;align-content:center}
.cc-dr .h4-holder{max-width:100%}
.cc-dr .h4-holder{min-width:0}
.cc-dr .h4-holder > span{font-size:10.5px;letter-spacing:.03em;padding:3px 5px;min-width:0;white-space:normal;text-align:center;line-height:1.2}
.cc-drn{display:block;margin-top:1px;font-size:10.5px;letter-spacing:.06em;color:var(--ink-2);text-align:center}
.cc-dr .h4-pull{width:30px;height:9px;border-width:2.5px;border-top-width:3px}
.cc-dr:hover .h4-pull{border-color:var(--raised)}
.cc-dr[aria-pressed="true"]{transform:translateY(-4px);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 35%,var(--oak)),0 0 0 3px var(--cab-on)}
.cc-dr[aria-pressed="true"] .h4-holder{outline:2px solid var(--cab-on);outline-offset:1px}
/* focus on the cabinet: the focus ring sits on a halo of card stock (day) or ground (night), so it reads against the dark oak */
.cc-dr:focus-visible{outline:3px solid var(--focus);outline-offset:2px;box-shadow:0 0 0 8px var(--cab-halo)}
/* the drawer note, above the results */
.cc-dnote{margin:14px 0 14px;padding:12px 14px 12px;border:1px solid var(--line-strong);border-radius:var(--r-2);background:var(--raised)}
.cc-dhead{margin:0;font-family:var(--f-ui);font-size:16px;color:var(--ink)}
.cc-dhead b{font-family:var(--f-display);font-weight:780;font-size:var(--t-lg);letter-spacing:-.01em}
.cc-dblurb{margin:4px 0 8px;font-size:16px;line-height:1.5;color:var(--ink-2)}
.cc-index{display:flex;gap:8px;align-items:flex-start;margin:8px 0 0;font-family:var(--f-ui);font-size:14.5px;line-height:1.45;color:var(--ink-2)}
.cc-index > svg{width:16px;height:16px;flex:none;margin-top:3px}
.cc-index b{color:var(--ink)}
.cc-dpools,.cc-addr{margin-top:8px;border-top:1px dashed var(--line-strong)}
.cc-dpools summary,.cc-addr summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-family:var(--f-ui);font-weight:650;font-size:15px;color:var(--ink)}
.cc-dpools ul,.cc-tries{list-style:none;margin:0 0 8px;padding:0;display:grid;gap:0}
.cc-dpools li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 10px;padding:8px 0;border-top:1px solid var(--line);font-family:var(--f-ui);font-size:15px;align-items:baseline}
.cc-dpools li > .cc-pmeta,.cc-dpools li > .cc-drop{grid-column:2}
.cc-dpools li.cc-unread .cc-pname{color:var(--ink-2)}
.cc-pcall{font-family:var(--f-mono);font-size:12.5px;letter-spacing:.06em;color:var(--ink-2);white-space:nowrap}
.cc-pname{font-weight:650;color:var(--ink)}
.cc-pmeta{display:block;font-size:14px;line-height:1.45;color:var(--ink-2)}
.cc-drop{justify-self:start;min-height:44px;font-size:15px;padding:6px 4px}
.cc-addrform{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}
.cc-addrform .k-btn{min-height:44px}
.cc-addr .cc-msg{margin:8px 0 0;font-family:var(--f-ui);font-size:15px;color:var(--ink)}
.cc-addr .cc-msg:empty{display:none}
.cc-tries li{padding:6px 0;border-top:1px solid var(--line)}
.cc-tries .cc-url{display:block}
/* where each field comes from */
.cc-srcm{display:inline-block;margin-left:4px;padding:0 5px;font-family:var(--f-mono);font-size:11px;font-weight:500;letter-spacing:.06em;line-height:1.55;color:var(--ink-2);border:1px solid var(--line-strong);border-radius:2px;background:var(--raised);vertical-align:1px;text-transform:none}
.cc-srcm-page{border-style:dashed;color:var(--brand-ink);border-color:var(--brand-ink)}
.cc-legend{margin:10px 0 0;font-family:var(--f-ui);font-size:14px;line-height:1.5;color:var(--ink-2)}
.cc-legend .cc-srcm{margin:0 2px 0 0}
.cc-pagehelp{margin:0 0 10px}
.cc-from{margin:14px 0 0;padding:10px 12px;border:1.5px dashed var(--line-strong);border-radius:var(--r-2);background:var(--surface)}
.cc-fromh{margin:0 0 6px;font-family:var(--f-mono);font-size:var(--t-cap);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2)}
.cc-from ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.cc-from li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px;align-items:start;font-family:var(--f-ui);font-size:14.5px;line-height:1.45;color:var(--ink)}
.cc-from li .cc-srcm{margin:2px 0 0;justify-self:start}
.cc-fields dt .cc-srcm{margin-left:6px}
/* pictures only from the page; initials when the page has none */
.cc-ini{display:grid!important;place-content:center;justify-items:center;gap:2px;background:var(--surface);border:1.5px dashed var(--line-strong)!important}
.cc-ini b{font-family:var(--f-display);font-weight:800;font-size:22px;letter-spacing:.02em;color:var(--ink-2)}
.cc-ini small{font-family:var(--f-mono);font-size:9.5px;letter-spacing:.04em;color:var(--ink-2);text-align:center;line-height:1.1}
.cc-nopic{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;align-items:center;margin:14px 0 4px}
.cc-ini-big{display:grid;place-content:center;width:96px;aspect-ratio:4/5;border-radius:var(--r-1)}
.cc-ini-big b{font-size:30px}
.cc-nopic .cc-illus{margin:0}
/* the Pool on every card: call number, charter line, tags, and the other two layers */
.cc-poolline{margin:8px 0 0;padding:8px 0 0;border-top:1px dashed var(--line)}
.cc-charter1{margin:0;font-size:15.5px;line-height:1.45;font-style:italic;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cc-poolline .h4-tracings{margin:4px 0 0}
.cc-layers{margin:4px 0 0;font-family:var(--f-ui);font-size:14.5px;line-height:1.5;color:var(--ink-2)}
.cc-layers a{color:var(--brand-ink);text-underline-offset:.18em}
.cc-this{font-weight:650;color:var(--ink)}
.cc-drawerline{margin:0 0 4px;font-family:var(--f-mono);font-size:var(--t-cap);letter-spacing:.12em;text-transform:uppercase;color:var(--brand-ink);padding-right:70px}
/* writing, Pool by Pool */
.cc-reach-cur{color:var(--ink)}
.cc-reach-cur svg{color:var(--brand-ink)}
.cc-can .cc-reach-cur{border:1.5px solid var(--brand-ink);background:var(--brand-tint)}
.cc-routes{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:6px}
.cc-rt{display:grid;grid-template-columns:16px minmax(0,1fr);gap:8px;align-items:start;font-family:var(--f-ui);font-size:14.5px;line-height:1.45;color:var(--ink)}
.cc-rt svg{width:16px;height:16px;margin-top:2px}
.cc-rt-ok svg{color:var(--brand-ink)}
.cc-rt-cur svg{color:var(--brand-ink)}
.cc-rt-no{color:var(--ink-2)}
.cc-rt-no svg{color:var(--ink-2)}
.cc-yesnote{margin:8px 0 0;font-size:14px}
.cc-askb{margin-top:10px}
.cc-ask,.cc-compose{display:grid;gap:10px;margin-top:14px;padding-top:12px;border-top:1px dashed var(--line-strong)}
.cc-cb.cc-via small{display:block;font-family:var(--f-ui);font-size:14px;letter-spacing:0;color:var(--ink-2)}
.cc-via.is-off{color:var(--ink-2);cursor:not-allowed}
.cc-via.is-off b{text-decoration:line-through;text-decoration-color:var(--line-strong)}
/* where this card is filed */
.cc-pbs{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.cc-pb{padding:10px 12px;border:1px solid var(--line);border-left:4px solid var(--rule);border-radius:var(--r-1);background:var(--surface)}
.cc-pb .h4-call{margin:0 0 2px}
.cc-pbname{margin:0;font-family:var(--f-display);font-weight:780;font-size:18px;letter-spacing:-.01em}
.cc-pb .cc-charter{margin:4px 0 0;font-size:15px}
.cc-pb .cc-help{margin:6px 0 0;font-size:14.5px}
.cc-pb .cc-who{margin-right:6px}
/* yeses, grouped by drawer */
.cc-ygroup{margin:0 0 18px}
.cc-ygroup h3 small{font-family:var(--f-ui);font-weight:600;font-size:15px;letter-spacing:0;color:var(--ink-2);margin-left:6px}
.cc-pick{padding:18px}
/* about: the drawers */
.cc-drawerlist{list-style:none;margin:0;padding:0;display:grid;gap:12px}
@media (min-width:760px){.cc-drawerlist{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.cc-drawerlist{grid-template-columns:repeat(3,minmax(0,1fr))}}
.cc-drawerlist li{padding:14px 16px;background:var(--raised);border:1px solid var(--line);border-radius:var(--r-1);border-top:4px solid var(--oak)}
.cc-drawerlist p{margin:0 0 6px}
.cc-dn{font-family:var(--f-display);font-weight:780;font-size:var(--t-lg);letter-spacing:-.012em}
.cc-pooltable td:last-child{min-width:18em}
/* under the hood: one Pool, three layers */
.cc-layers3{list-style:none;margin:0;padding:0;display:grid;gap:16px}
@media (min-width:1100px){.cc-layers3{grid-template-columns:minmax(0,.8fr) minmax(0,1.15fr) minmax(0,1.05fr)}}
.cc-layers3 .cc-code{max-height:420px;margin-top:10px}
.cc-sample{margin-top:10px}
.cc-sample .cc-item{cursor:default}
@media (max-width:1023px){
 .cc-cabinet{grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:6px;padding:8px}
 .cc-dr{min-height:58px;padding:8px 4px 6px}
}
@media (max-width:600px){
 .cc-addrform{grid-template-columns:1fr}
 .cc-addrform .k-btn{justify-self:start}
 .cc-nopic{grid-template-columns:72px minmax(0,1fr)}
 .cc-ini-big{width:72px}
 .cc-dpools li{grid-template-columns:1fr}
 .cc-dpools li > .cc-pmeta,.cc-dpools li > .cc-drop{grid-column:1}
}

.cc-panel code,.cc-gaps code,.cc-table code{font-size:.84em}

/* ---------- products (round 4): the loaded product, Load a product, and the other apps. Tokens only. */
.cc-framed .cc-exbar{display:none}   /* inside a frame, the page around it already says what this is */
.cc-prod{background:var(--surface);border-bottom:1px solid var(--line);font-family:var(--f-ui)}
.cc-prod-in{max-width:1560px;margin:0 auto;padding:8px 18px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px}
.cc-pidle{margin:0;font-size:15px;color:var(--ink-2);flex:1 1 280px;min-width:0}
.cc-ptools{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center}
.cc-pbtn{min-height:44px;padding:8px 14px;font-size:15px;gap:7px}
.cc-pbtn svg{width:16px;height:16px;flex:none}
.cc-pbtn small{font-size:12.5px;font-weight:500;color:var(--ink-2)}
.cc-ps{display:none}
.cc-px{text-decoration:none;border:2px solid transparent}
.cc-px:hover{border-color:var(--line-strong)}
.cc-prod.is-on .cc-prod-in,.cc-prod.is-note .cc-prod-in{align-items:flex-start;padding-block:12px}
.cc-pcard{flex:1 1 420px;min-width:0;border-left:5px solid var(--brand);padding:2px 0 2px 14px}
.cc-prod.is-note .cc-pcard{border-left-color:var(--line-strong)}
.cc-pcard .h4-call{margin:0 0 2px}
.cc-pname{margin:0;font-family:var(--f-display);font-weight:800;font-size:clamp(22px,2.4vw,28px);line-height:1.1;letter-spacing:-.015em;color:var(--ink)}
.cc-pname:focus{outline:none}
.cc-pname:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.cc-pline{margin:4px 0 0;font-size:15px;line-height:1.45;color:var(--ink-2);max-width:76ch}
.cc-pline b{color:var(--ink)}
.cc-plinks{display:flex;flex-wrap:wrap;align-items:flex-start;gap:0 18px;margin:2px 0 0;font-size:15px}
.cc-plinks > a{display:inline-flex;align-items:center;min-height:44px;color:var(--brand-ink);font-weight:650;text-underline-offset:.2em}
.cc-pjson summary{display:inline-flex;align-items:center;min-height:44px;cursor:pointer;font-weight:650;color:var(--brand-ink);text-decoration:underline;text-underline-offset:.2em}
.cc-pjson ul{list-style:none;margin:0 0 8px;padding:0;display:grid;gap:4px;font-size:14.5px}
.cc-pjson a{color:var(--brand-ink);font-weight:650}
.cc-popen{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:8px}
.cc-popen .cc-sortlabel{margin:0}
.cc-popen ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
/* the two lists: a card drawn out of the cabinet */
.cc-scrim{position:fixed;inset:0;z-index:60;background:color-mix(in srgb,var(--ink) 45%,transparent)}
.cc-dlg{position:fixed;z-index:61;left:50%;top:50%;transform:translate(-50%,-50%);width:min(640px,calc(100% - 24px));max-height:calc(100% - 32px);overflow:auto;overscroll-behavior:contain;
  background:var(--raised);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--r-1);box-shadow:0 18px 50px -20px color-mix(in srgb,var(--ink) 60%,transparent);padding:16px 18px 20px;display:grid;gap:10px;font-family:var(--f-ui)}
.cc-dlg[hidden]{display:none}
.cc-dlghead{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1.5px solid var(--rule);padding-bottom:8px}
.cc-dlghead .cc-vh{margin:0;font-size:clamp(24px,3vw,30px)}
.cc-dlghead .cc-vh:focus{outline:none}
.cc-dlg .cc-help{margin:0}
.cc-lcats{display:grid;gap:14px}
.cc-lcat .cc-sortlabel{margin:0 0 4px}
.cc-lcat ul,.cc-alist{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.cc-lopt{display:flex;align-items:center;gap:10px;min-height:48px;margin:0;padding:8px 12px;border:1px solid var(--line-strong);border-radius:var(--r-1);background:var(--surface);color:var(--ink);text-decoration:none;font-size:15.5px;line-height:1.3}
.cc-lopt svg{width:17px;height:17px;flex:none;color:var(--brand-ink)}
.cc-lopt span{display:grid;gap:1px;min-width:0}
.cc-lopt small{font-size:13.5px;color:var(--ink-2)}
.cc-lopt em{font-style:normal;font-weight:500;font-size:13.5px;color:var(--ink-2)}
a.cc-lopt:hover{border-color:var(--ink);background:var(--brand-tint)}
.cc-lopt[aria-current="true"]{border:2px solid var(--brand-ink);background:var(--brand-tint)}
.cc-lopt.is-off{background:transparent;color:var(--ink-2);border-style:dashed}
.cc-lopt.is-off svg{color:var(--ink-2)}
body.cc-dlgopen{overflow:hidden}
@media (max-width:600px){
  .cc-prod-in{padding:8px 16px}
  .cc-pidle{display:none}
  .cc-prod-idle .cc-ptools{width:100%}
  .cc-pbtn{padding:8px 11px;font-size:14.5px}
  .cc-pl{display:none}
  .cc-ps{display:inline}
  .cc-prod.is-on .cc-ptools,.cc-prod.is-note .cc-ptools{width:100%}
  .cc-prod .cc-px{margin-left:auto;padding-inline:8px}
  .cc-pcard{flex-basis:100%}
  .cc-prod.is-on .cc-pline{font-size:14px}
  .cc-dlg{top:auto;bottom:0;transform:translateX(-50%);width:100%;max-height:calc(100% - 24px);border-radius:var(--r-1) var(--r-1) 0 0;padding-bottom:calc(20px + env(safe-area-inset-bottom))}
}
@media (max-width:420px){.cc-pxt{display:none}.cc-prod .cc-px{padding-inline:10px}}
@media print{.cc-prodwrap{display:none}}

/* ---- the browser model (29 September): Open a Pool, Other Pools and their guide cards, a Pool's own terms on a card */
.cc-cabfoot{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:10px 0 0}
.cc-cabfoot .cc-help{margin:0;font-size:14.5px}
.cc-dr-other .h4-holder > span{font-style:italic}
.cc-guides{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 2px}
.cc-gt{appearance:none;-webkit-appearance:none;box-sizing:border-box;min-height:44px;max-width:100%;display:inline-flex;flex-wrap:wrap;align-items:center;gap:2px 7px;padding:6px 12px;margin:0;
 font-family:var(--f-ui);font-weight:650;font-size:15px;line-height:1.2;text-align:left;color:var(--ink);background:var(--surface);border:1.5px solid var(--line-strong);border-bottom-width:3px;
 border-radius:var(--r-3) var(--r-3) var(--r-1) var(--r-1);cursor:pointer}
.cc-gt:hover{border-color:var(--ink)}
.cc-gt small{font-family:var(--f-mono);font-size:12.5px;font-weight:500;color:var(--ink-2)}
.cc-gt .cc-pcall{font-size:12px}
.cc-gt[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.cc-gt[aria-pressed="true"] small,.cc-gt[aria-pressed="true"] .cc-pcall{color:var(--bg)}
.cc-gcard{display:flex;margin:14px 0 -8px;border-bottom:2px solid var(--line-strong);min-width:0}
.cc-gcard:first-child{margin-top:2px}
.cc-gcard .h4-gtab{position:static;height:auto;min-height:30px;max-width:100%;display:inline-flex;flex-wrap:wrap;align-items:center;gap:2px 8px;margin:0;padding:5px 14px;background:var(--surface);
 border:2px solid var(--line-strong);border-bottom:0;border-radius:var(--r-3) var(--r-3) 0 0;font-family:var(--f-mono);font-size:var(--t-cap);letter-spacing:.1em;text-transform:uppercase;color:var(--ink)}
.cc-gcard .h4-gtab b{font-weight:600;color:var(--ink);letter-spacing:.06em}
.cc-gcard .h4-gtab small{font-size:12px;color:var(--ink-2);letter-spacing:.06em}
.cc-ctx{display:flex;gap:8px;align-items:flex-start;margin:12px 0 0;padding:10px 12px;border:1.5px solid var(--line-strong);border-radius:var(--r-2);background:var(--surface);font-family:var(--f-ui);font-size:15px;line-height:1.45;color:var(--ink)}
.cc-ctx svg{width:16px;height:16px;flex:none;margin-top:2px;color:var(--brand-ink)}
.cc-prule{display:flex;gap:6px;align-items:flex-start;margin:4px 0 0;font-family:var(--f-ui);font-size:14.5px;line-height:1.45;color:var(--ink)}
.cc-prule svg{width:15px;height:15px;flex:none;margin-top:2px;color:var(--brand-ink)}
.cc-rest{display:flex;gap:6px;align-items:flex-start}
.cc-rest svg{width:15px;height:15px;flex:none;margin-top:3px;color:var(--ink-2)}
button.cc-lopt{width:100%;font:inherit;font-size:15.5px;text-align:left;cursor:pointer}
button.cc-lopt:hover{border-color:var(--ink);background:var(--brand-tint)}
div.cc-lopt{align-items:flex-start}
div.cc-lopt .cc-pbtn{justify-self:start;margin-top:4px}
.cc-lcat .cc-sortlabel small{font-family:var(--f-ui);font-size:13px;letter-spacing:0;text-transform:none;color:var(--ink-2);font-weight:500}
.cc-tworules{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:10px;max-width:880px}
.cc-tworules li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 12px;align-items:baseline;padding:14px 16px;background:var(--raised);border:1px solid var(--line);border-left:4px solid var(--rule);border-radius:var(--r-1)}
.cc-tworules .h4-call{margin:0}
.cc-tworules q{font-family:var(--f-display);font-weight:760;font-size:var(--t-lg);line-height:1.25;quotes:none;color:var(--ink)}

