/* Phase-3 library: existing data and interactions, shared paper/engraving vocabulary. */
@font-face{font-family:'Bricolage Grotesque';src:url('/assets/bricolage-600.ttf') format('truetype');font-weight:600;font-display:swap}
.whole-library{--paper:#f3f0e8;--ink:#1b1e19;--blue:#263eaf;--muted:#60675b;--line:#c9ccc2;background:var(--paper);color:var(--ink)}
.whole-library .shell{max-width:1360px;--shell-pad:clamp(18px,4.5vw,60px)}
.whole-library .contact-rail{background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line)}
.whole-library .contact-rail .contact-rail-inner{padding-inline:0;min-height:38px;font-size:12px}
.whole-library .contact-rail a{min-height:38px;color:var(--ink);font-size:12px;background:transparent}
.whole-library .contact-rail .hotline-context{color:var(--muted)}
.whole-library .contact-rail .rail-phone{color:var(--blue)}
.whole-library .contact-rail a:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.whole-library .header{min-height:98px;padding-block:20px;border-bottom:1px solid var(--line)}
.whole-library .header .brand img:not(.symbol){width:245px;height:auto}
.whole-library h1,.whole-library h2,.whole-library .reading-entry h3{font-family:'Bricolage Grotesque','DM Sans',Arial,sans-serif;font-weight:600;letter-spacing:-.045em}
.whole-library [hidden]{display:none!important}
.whole-library :focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.whole-library .whole-library-intro{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(220px,.75fr);gap:7%;align-items:center;padding:25px 0 30px;margin:0 0 24px;border-bottom:0}
.whole-library-intro>div{min-width:0}
.whole-library .whole-library-intro h1{font-size:clamp(43px,4.5vw,68px);line-height:1.02;max-width:760px}
.whole-library .whole-library-kicker{font-size:12px;color:var(--blue);margin:0 0 18px}
.whole-library .whole-library-intro p:not(.whole-library-kicker){font-size:18px;line-height:1.55;max-width:600px;margin:20px 0 0}
.whole-library-intro>img{width:100%;height:245px;object-fit:cover;object-position:65% 55%;mix-blend-mode:multiply}
.whole-library .catalog-layout{grid-template-columns:160px minmax(0,1fr);gap:45px}
.whole-library .catalog-controls{grid-template-columns:minmax(0,1fr) minmax(290px,.9fr);gap:10px 25px;border-block:1px solid var(--line);padding:20px 0 12px;margin-bottom:25px}
.whole-library .catalog-filter-fields{padding-top:8px}
.whole-library .catalog-filters>summary{padding:0;min-height:26px;font-size:13px}
.whole-library .catalog-controls input,.whole-library .catalog-controls select{border-radius:0;background:#fffdf7;border-color:#979e8b;height:49px}
.whole-library .catalog-search label{margin-bottom:10px}
.whole-library .catalog-status{font-size:12px}
.whole-library .catalog-list,.whole-library [data-catalog-group="tool"] .catalog-list{display:block;margin-top:16px}
.whole-library .catalog-row,.whole-library [data-kind="tool"],.whole-library [data-kind="reading"]{display:grid;grid-template-columns:120px minmax(0,1fr);gap:24px;padding:24px 0;align-items:start}
.whole-library .catalog-row>div{grid-column:2;grid-row:1;min-width:0}
.whole-library .catalog-row .catalog-topic{display:block;grid-column:1;grid-row:1;text-align:left;font-size:12px;color:var(--muted);line-height:1.55;padding-top:4px;overflow-wrap:anywhere}
.whole-library .catalog-row h3,.whole-library [data-kind="tool"] h3 a,.whole-library [data-kind="reading"] h3{font-family:'Bricolage Grotesque','DM Sans',sans-serif;font-size:25px;line-height:1.2;letter-spacing:-.035em;font-weight:600;max-width:850px}
.whole-library .catalog-row h3 a,.whole-library [data-kind="reading"] h3 a{color:var(--blue)}
.whole-library [data-kind="tool"] h3 a{min-height:0}
.whole-library .catalog-description,.whole-library [data-kind="tool"] .catalog-description,.whole-library [data-kind="reading"] .catalog-description{font-size:14px;color:var(--ink);line-height:1.65;margin-top:10px;max-width:78ch}
.whole-library .catalog-meta,.whole-library [data-kind="reading"] .catalog-meta{font-size:12px;margin-top:8px;color:var(--muted)}
.whole-library .catalog-source{font-size:12px;margin-top:3px}
.whole-library .catalog-section-title h2{font:600 16px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:0}
.whole-library .whole-library-compact{padding:17px 0 22px;margin-bottom:24px;border-bottom:1px solid var(--line)}
.whole-library .whole-library-compact h1{font-size:clamp(32px,3.7vw,49px);line-height:1.06;max-width:950px}
.whole-library .whole-library-compact>p{font-size:16px;max-width:780px;margin-top:13px}
.whole-library .whole-library-compact>.section-label{display:none}
.whole-library .workbench-layout,.whole-library .worksheet-layout{grid-template-columns:160px minmax(0,1fr);gap:40px;padding-top:0}
.whole-library .workbench-main{max-width:none}
.whole-library .worksheet,.whole-library .calculator,.whole-library .worksheet-panel{border:1px solid #c9c9b8;border-radius:0;background:#f9f7ef;padding:28px 30px}
.whole-library .worksheet h2,.whole-library .calculator h2{font-size:28px}
.whole-library .field textarea,.whole-library .worksheet-field textarea,.whole-library .export-output{border-radius:0;background:#fffdf7;border-color:#a7ab98;font-size:16px;line-height:1.55}
.whole-library .worksheet>.intro{font-size:14px;margin-bottom:22px}
.whole-library .field .label,.whole-library .worksheet-field label{font-size:15px}
.whole-library .field .hint,.whole-library .worksheet-field>p{font-size:13px;line-height:1.6}
.whole-library .calc-grid{grid-template-columns:1fr 1fr;gap:0}
.whole-library .calc-col{border:0;border-radius:0;background:transparent;padding:0 25px 8px 0;min-width:0}
.whole-library .calc-col+.calc-col{border-left:1px solid var(--line);padding:0 0 8px 25px}
.whole-library .calc-col h3{font:600 27px/1.25 'Bricolage Grotesque',sans-serif;color:var(--blue);margin-bottom:24px}
.whole-library .calc-col input[type=number]{font-size:27px;min-height:60px;border-radius:0;background:#fffdf7;padding:10px 14px}
.whole-library .calculator select{border-radius:0;background:#fffdf7;min-height:44px}
.whole-library .check{font-size:13px;line-height:1.55;min-height:44px;align-items:flex-start}
.whole-library .check input{accent-color:var(--blue)}
.whole-library .result{border:0;border-left:3px solid var(--blue);background:#e8ecf4;border-radius:0;padding:24px}
.whole-library .result output{font:600 24px/1.25 'Bricolage Grotesque',sans-serif}
.whole-library .calc-totals dd{font-size:23px}
.whole-library .actions button,.whole-library .worksheet-actions .button{border-radius:0;min-height:48px;font-size:14px}
.whole-library .export-panel{border-radius:0;background:#e8ecf4}
.whole-library-draft{border-bottom:1px solid var(--line);padding:0 0 18px;margin:0 0 24px;font-size:13px;line-height:1.55;color:#535b4e}
.whole-library-draft p{max-width:850px}
.whole-library-draft button{display:inline-block;background:transparent;color:#263eaf;border:0;border-bottom:1px solid currentColor;padding:9px 0;margin-top:7px;min-height:44px;font:inherit;cursor:pointer}
.whole-library .worksheet-panel .whole-library-draft{margin-bottom:15px}
.whole-library .worksheet-heading h2{font-size:31px;margin:0 0 14px}
.whole-library .worksheet-fields{margin-top:24px}
.whole-library .worksheet-panel .worksheet-heading>.eyebrow{display:none}
.whole-library .reading-entry h3{font-size:31px;line-height:1.18}
.whole-library .reading-entry:target{outline:2px solid var(--blue);outline-offset:10px}
.whole-library .reading-limits{border-color:#99a6c9}
.whole-library .whole-library-contact{display:flex;flex-wrap:wrap;gap:8px 24px;width:100%;font-size:12px}
.whole-library .whole-library-contact a{padding:8px 0;min-height:36px}
.whole-library .whole-library-provenance{flex-basis:100%;margin-top:12px;font-size:12px;color:var(--muted)}
.whole-library .whole-library-provenance summary{font-size:12px;min-height:44px;padding:12px 0}
.whole-library .whole-library-provenance p{max-width:85ch;margin:6px 0 12px;line-height:1.6}
@media(max-width:760px){.whole-library .header{min-height:0;padding-block:18px 12px}.whole-library .header .brand img:not(.symbol){width:225px}.whole-library .shell>.contact-rail .contact-rail-inner{padding-inline:var(--shell-pad);font-size:11px}.whole-library .contact-rail a{font-size:11px}.whole-library .shell>.contact-rail .rail-phone strong{font-size:12px}}
@media(max-width:1000px){.whole-library .catalog-layout,.whole-library .workbench-layout,.whole-library .worksheet-layout{display:block}.whole-library .catalog-layout>.workbench-sidebar{display:none}.whole-library .workbench-sidebar,.whole-library .worksheet-sidebar{position:static;margin-bottom:22px}.whole-library .workbench-sidebar nav,.whole-library .worksheet-sidebar nav{display:flex;flex-direction:row;flex-wrap:wrap;gap:4px 20px}.whole-library .workbench-sidebar h2{width:100%}.whole-library .mobile-library-menu{display:block}.whole-library .whole-library-intro{gap:3%}}
@media(max-width:700px){.whole-library .whole-library-intro{grid-template-columns:minmax(0,1fr) 110px;gap:18px;padding:18px 0 22px;margin-bottom:0}.whole-library .whole-library-intro h1{font-size:39px}.whole-library .whole-library-intro p:not(.whole-library-kicker){font-size:15px;margin-top:15px}.whole-library-intro>img{height:170px;object-position:62% center}.whole-library .whole-library-kicker{font-size:11px;margin-bottom:12px}.whole-library .catalog-controls{grid-template-columns:minmax(0,1fr);gap:12px;padding-top:16px}.whole-library .catalog-filter-fields{grid-template-columns:1fr 1fr}.whole-library .catalog-row,.whole-library [data-kind="tool"],.whole-library [data-kind="reading"]{display:flex;flex-direction:column;gap:8px;padding:22px 0}.whole-library .catalog-row .catalog-topic{order:-1;padding:0;font-size:11px}.whole-library .catalog-row h3,.whole-library [data-kind="tool"] h3 a,.whole-library [data-kind="reading"] h3{font-size:24px}.whole-library .whole-library-compact h1{font-size:35px}.whole-library .whole-library-compact>p{font-size:15px}.whole-library .worksheet,.whole-library .calculator,.whole-library .worksheet-panel{padding:23px 20px}.whole-library .reading-entry h3{font-size:27px}.whole-library .workbench-sidebar nav a{min-height:44px}.whole-library .calc-col{padding-right:16px}.whole-library .calc-col+.calc-col{padding-left:16px}.whole-library .calc-col h3{font-size:24px}.whole-library .field .hint{font-size:13px}.whole-library .calc-totals{grid-template-columns:1fr}.whole-library .calc-totals>div{display:flex;justify-content:space-between;gap:15px;align-items:baseline}.whole-library .calc-totals dd{margin:0}}
@media(max-width:450px){.whole-library .whole-library-intro{grid-template-columns:minmax(0,1fr);position:relative;padding-right:0}.whole-library .whole-library-intro h1{font-size:40px}.whole-library-intro>img{display:none}.whole-library .whole-library-compact h1{font-size:32px}.whole-library .catalog-filter-fields{grid-template-columns:1fr}.whole-library .calc-grid{grid-template-columns:1fr}.whole-library .calc-col{padding:0 0 25px}.whole-library .calc-col+.calc-col{padding:25px 0 0;border-left:0;border-top:1px solid var(--line)}.whole-library .worksheet,.whole-library .calculator,.whole-library .worksheet-panel{padding:20px 16px}.whole-library .result{padding:20px 15px}.whole-library .field .label{font-size:15px}.whole-library .whole-library-contact{display:block}.whole-library .whole-library-contact a{display:block}.whole-library .catalog-row h3 a{overflow-wrap:anywhere}.whole-library .actions>*{max-width:100%}}
@media(prefers-reduced-motion:reduce){.whole-library *{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:700px){.whole-library .header .nav{flex-wrap:wrap;justify-content:flex-start;gap:2px 18px}.whole-library .header .nav .language-choice{position:static;margin:0;padding-left:0;border-left:0}}
@media print{.whole-library-draft,.whole-library-contact,.whole-library-intro>img{display:none!important}.whole-library .whole-library-intro,.whole-library .workbench-layout,.whole-library .catalog-layout{display:block}.whole-library .worksheet,.whole-library .calculator{border:0}.whole-library .catalog-row{break-inside:avoid}}
