/* Portable Trust v10: readable reference workbench and contrast refinements. */
:root{--ink2:#302D43;--muted:#4D4963;--violetInk:#5031BF;--controlLine:#827992;--green:#17603F;--header-height:150px}
body{font-size:16px}button,input,select,textarea{color:var(--ink)}
:focus-visible{outline:3px solid var(--violetInk);outline-offset:3px}
.btn:not(.secondary),.navlinks .cta{background:var(--violetInk);border-color:var(--violetInk);color:white}
.btn.secondary{color:var(--violetInk);border-color:var(--violetInk)}
.stage-nav button,.stage-controls button,.chip,.trace-btn,.site-search-launch,input,textarea,select{border-color:var(--controlLine)}
.hintline,.source-note,.launch-hint,.scenario-source-note{color:var(--muted)}
body[data-page="main"] .navbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 20px;padding-top:12px;min-height:0}
.header-tools{display:flex;align-items:center;gap:12px;justify-content:flex-end}
body[data-page="main"] .brand{font-size:18px;line-height:1.25;white-space:normal}
body[data-page="main"] .brand-tagline{font-size:12px;line-height:1.35;margin-top:4px;color:var(--ink2)}
body[data-page="main"] .navlinks{position:static;grid-column:1 / -1;margin:10px 0 0;display:flex;flex-wrap:nowrap;justify-content:flex-end;gap:2px;max-height:none;padding:6px 0;border-top:1px solid var(--line);box-shadow:none;overflow:visible}
body[data-page="main"] .navlinks a{font-family:var(--body);font-size:14px;font-weight:600;letter-spacing:0;text-transform:none;min-height:44px;display:flex;align-items:center;justify-content:center;padding:8px 12px;color:var(--ink2);line-height:1.2}
body[data-page="main"] .navlinks a.active{color:var(--violetInk);background:var(--violetWash);text-decoration:underline;text-underline-offset:5px}
body[data-page="main"] .navlinks .cta{color:white}
body[data-page="main"] .nav-toggle{display:none}
.header-tools .site-search-launch{margin:0;min-height:44px;color:var(--ink2)}
.header-tools .linkedin-link{min-height:44px}
.reference-page{padding:44px 0 64px}.reference-header{max-width:980px}
.reference-header h1{font-family:var(--display);font-size:clamp(34px,4.4vw,54px);line-height:1.1;letter-spacing:-.025em;margin:10px 0 18px;max-width:900px}
.reference-header .lead{font-size:18px;line-height:1.36;color:var(--ink2);max-width:910px;margin-bottom:20px}
.reference-stats{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}
.reference-stats span{font:500 12px/1.275 var(--mono);border-left:3px solid var(--violetInk);padding:6px 12px;background:white;color:var(--ink2)}
.reference-utility{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0 24px}.reference-utility a{padding:10px 14px;border:1px solid var(--controlLine);border-radius:6px;background:white;font-size:14px;font-weight:600;color:var(--violetInk);min-height:44px}
.reference-scope{padding:18px 22px;background:var(--amberWash);border-left:3px solid var(--amber);border-radius:6px;font-size:14px;color:var(--ink2);line-height:1.4025;margin:20px 0}.reference-scope strong{color:var(--ink)}
.taxonomy-primer{background:white;border:1px solid var(--line);border-radius:10px;margin:26px 0;padding:22px}
.taxonomy-primer>summary{font-family:var(--display);font-size:21px;font-weight:600;cursor:pointer;min-height:44px;padding:4px 0;line-height:1.19}
.taxonomy-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0 12px}.taxonomy-grid section{background:var(--paper);border-left:3px solid var(--violet);padding:16px 18px;min-width:0}
.taxonomy-grid h2{font-family:var(--display);font-size:18px;margin:0 0 10px}.taxonomy-grid p{font-size:15px;line-height:1.4025;margin:0;color:var(--ink2)}
.reference-filters{background:white;border:1px solid var(--controlLine);border-radius:10px;padding:20px;margin:24px 0 16px}
.reference-filter-fields{display:grid;grid-template-columns:minmax(250px,2fr) minmax(160px,1fr) auto;gap:16px;align-items:end}
#regulatory-libraryControls .reference-filter-fields{grid-template-columns:2fr 1.4fr 1fr 1.3fr auto}
.reference-filter-fields label{display:grid;gap:7px;font-size:13px;font-weight:600;color:var(--ink2);min-width:0}
.reference-filter-fields input,.reference-filter-fields select{width:100%;min-width:0;min-height:46px;background:var(--paper);border:1px solid var(--controlLine);border-radius:5px;padding:10px;font-size:14px;font-weight:400;line-height:1.19}
.reference-reset,.reference-more,.reference-browse{border:1px solid var(--violetInk);border-radius:5px;background:white;color:var(--violetInk);font-weight:600;padding:10px 16px;min-height:46px;cursor:pointer}
.reference-more{background:var(--violetInk);color:white;margin-top:24px}
.reference-alphabet{display:flex;flex-wrap:wrap;gap:4px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.reference-alphabet button{min-width:44px;min-height:44px;background:white;border:1px solid var(--controlLine);border-radius:4px;color:var(--ink2);cursor:pointer;font:500 13px var(--mono)}
.reference-alphabet button[aria-pressed=true]{background:var(--violetWash);border:2px solid var(--violetInk);color:var(--violetInk)}
.reference-summary{font-size:14px;font-weight:500;color:var(--ink2);min-height:23px;margin:16px 0}
.reference-results{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
.reference-card{border:1px solid var(--controlLine);border-radius:10px;background:white;min-width:0;padding:24px;scroll-margin-top:calc(var(--header-height) + 24px);overflow-wrap:anywhere}
.reference-card h2{font-family:var(--display);font-size:23px;line-height:1.2;margin:12px 0 14px;letter-spacing:-.01em}
.reference-meta{font-family:var(--mono);font-size:11px;line-height:1.275;color:var(--violetInk);font-weight:600;letter-spacing:.025em}
.reference-badge{display:inline-block;background:var(--amberWash);color:var(--ink2);padding:3px 7px;border-radius:3px;margin:5px 0}
.term-aliases{font-size:13px;line-height:1.275;color:var(--muted);margin:8px 0 14px}
.reference-definition{font-size:16px;line-height:1.445;color:var(--ink2);margin:0 0 18px}
.reference-details{border:0;border-top:1px solid var(--line);padding-top:5px}
.reference-details summary{min-height:48px;padding:12px 0 6px;color:var(--violetInk);font-size:14px;font-weight:600;line-height:1.275;cursor:pointer}
.reference-expanded h3{font-family:var(--display);font-size:17px;margin:16px 0 8px;color:var(--ink)}
.reference-expanded p{font-size:15px;line-height:1.445;color:var(--ink2);margin:8px 0 16px}
.reference-expanded p.reference-source-note,.reference-locator{font-size:12px;line-height:1.4025;color:var(--muted)}
.reference-sources{display:grid;gap:8px}.source-link,.reference-permalink{color:var(--violetInk);text-decoration:underline;text-underline-offset:3px;font-size:14px;line-height:1.275;min-height:36px;padding:5px 0;overflow-wrap:anywhere}
.reference-permalink{display:inline-block;min-height:44px;margin-top:10px}.reference-status{font-size:14px;line-height:1.36;padding:12px 14px;background:var(--paper);border-left:3px solid var(--violetInk);color:var(--ink2)}
.reference-badges{display:flex;gap:6px;flex-wrap:wrap}.reference-badges span{font:500 11px/1.275 var(--mono);background:var(--paper);padding:5px 8px;border:1px solid var(--line);border-radius:4px;color:var(--ink2)}
.reference-sector{font-size:13px;color:var(--muted);line-height:1.36}.reference-warning{background:var(--amberWash);border-left:3px solid var(--amber);padding:12px}
.reference-selected{grid-template-columns:1fr;max-width:940px}.reference-empty{background:white;border:1px solid var(--line);padding:24px;color:var(--ink2);border-radius:8px}
.reference-help{font-size:14px;color:var(--muted);margin:18px 0;line-height:1.36}
.reference-entry-note{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 0}.reference-entry-note[hidden],.reference-empty[hidden],button[hidden]{display:none!important}
.site-scroll-cue{border-top:1px solid var(--line);background:var(--paper);padding:0 24px;min-height:44px;display:flex;justify-content:center;align-items:center;color:var(--ink2);font-size:12px;line-height:1.19}
.site-scroll-cue button{padding:5px 10px;border:0;background:transparent;color:var(--violetInk);font-weight:600;cursor:pointer;min-height:44px}.site-scroll-cue[data-more=false] button{visibility:hidden}
.site-scroll-cue[hidden]{display:none}.overflow-cue{font-size:12px;line-height:1.275;color:var(--ink2);padding:8px 12px;border-left:3px solid var(--violet);background:var(--violetWash);margin:8px 0}
.reference-home{border:1px solid var(--line);background:white;border-radius:10px;padding:24px;margin-top:32px}.reference-home h3{font-family:var(--display);font-size:23px;margin:0 0 10px}.reference-home p{max-width:850px;color:var(--ink2);font-size:16px;line-height:1.4025}.reference-home .actions{margin-top:16px}
body[data-page="main"] [id]{scroll-margin-top:calc(var(--header-height) + 20px)}
body[data-page="lab"] .lab-toolbar{top:var(--header-height)}
.search-result mark{background:#E4DAFF;color:#23113F}.search-result{border-color:var(--controlLine)}
@media(min-width:980px){.reference-results:not(.reference-selected) .reference-card{height:100%}}
@media(max-width:1100px){#regulatory-libraryControls .reference-filter-fields{grid-template-columns:2fr 1.5fr 1fr}.reference-query{grid-column:1 / -1}}
@media(max-width:980px){body[data-page="main"] .navlinks a{padding:8px;font-size:13px}.reference-filter-fields{grid-template-columns:1fr 1fr}.reference-query{grid-column:1/-1}}
@media(max-width:780px){body[data-page="main"] .navbar{grid-template-columns:minmax(0,1fr) auto;padding:10px 0;gap:10px}body[data-page="main"] .brand{font-size:15px}body[data-page="main"] .brand-tagline{font-size:10px;max-width:210px}.header-tools{gap:6px;flex-wrap:wrap}.header-tools .linkedin-link{display:none!important}.header-tools .site-search-launch kbd{display:none}.header-tools .site-search-launch{padding:8px;min-height:44px}.header-tools .site-search-launch span{font-size:12px}body[data-page="main"] .header-tools .nav-toggle{display:block;min-height:44px;margin:0}body[data-page="main"] .navlinks{display:none;grid-column:1/-1;position:static;margin:0;padding:10px 0;max-height:58vh;overflow-y:auto;grid-template-columns:1fr 1fr;gap:6px}body[data-page="main"] .navlinks.open{display:grid}body[data-page="main"] .navlinks a{justify-content:flex-start;padding:10px 12px;border:1px solid var(--line);font-size:14px}.reference-results,.taxonomy-grid{grid-template-columns:1fr}.reference-filter-fields,#regulatory-libraryControls .reference-filter-fields{grid-template-columns:1fr 1fr}.reference-page{padding-top:30px}.reference-card{padding:20px}.reference-card h2{font-size:23px}}
@media(max-width:440px){.reference-filter-fields,#regulatory-libraryControls .reference-filter-fields{grid-template-columns:1fr}.header-tools{gap:4px}.header-tools .site-search-launch span{display:none}.header-tools .site-search-launch{width:44px}.reference-utility{gap:8px}.reference-utility a{font-size:13px}.taxonomy-primer{padding:18px}.reference-card{padding:18px}.reference-alphabet button{min-width:35px}.site-scroll-cue{font-size:11px;padding:0 8px}.reference-entry-note{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reference-card{animation:none!important}}
@media print{header,.reference-filters,.reference-utility,.reference-alphabet,.site-scroll-cue,.reference-more,.reference-entry-note{display:none!important}.reference-results{display:block}.reference-card{break-inside:avoid;margin-bottom:18px}.reference-page{padding:0}}

.reference-jump{min-height:44px;background:var(--violetInk);color:white;border:1px solid var(--violetInk);border-radius:6px;padding:10px 16px;font-family:var(--body);font-size:14px;font-weight:600;cursor:pointer}
@media(max-width:440px){body[data-page="main"] .brand{max-width:225px;font-size:14px}body[data-page="main"] .brand b{display:block}body[data-page="main"] .brand-tagline{font-size:10px}body[data-page="main"] .header-tools{flex-wrap:nowrap}body[data-page="main"] .header-tools .nav-toggle{padding:8px;font-size:11px}}

#regulatory-libraryControls .reference-query{grid-column:1/-1}#regulatory-libraryControls .reference-filter-fields{grid-template-columns:1.4fr 1fr 1.4fr 1.3fr auto}@media(max-width:1100px){#regulatory-libraryControls .reference-filter-fields{grid-template-columns:1fr 1fr 1fr}}@media(max-width:780px){#regulatory-libraryControls .reference-filter-fields{grid-template-columns:1fr 1fr}}@media(max-width:440px){#regulatory-libraryControls .reference-filter-fields{grid-template-columns:1fr}}

input::placeholder,textarea::placeholder{color:#625C70;opacity:1}
