/* Shared Biounity identity: Montserrat, blue actions, quiet white surfaces. */
:root{--ink:#3c4043;--muted:#5f6368;--action:#0b57d0;--line:#dfe5ee;--surface:#f8faff}
html{scroll-padding-top:110px}
body{color:var(--ink);border-top:0;background:#fff}
body:before{content:"";position:fixed;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#e7b150 0 20%,#e4864f 20% 40%,#66843f 40% 60%,#4b286d 60% 80%,#0b57d0 80%);z-index:30}
body>header,.is-library>header{max-width:none;padding:14px max(28px,calc((100vw - 1240px)/2));min-height:78px;gap:24px;border-bottom:1px solid var(--line);box-shadow:none;background:#fff}
.site-name{font-size:1.125rem;font-weight:650;text-decoration:none;letter-spacing:-.025em}
.header-tools{margin-left:auto;align-items:center;gap:8px}
.brand{display:flex;align-items:center;flex:none}
header .brand img,.is-library header .brand img{width:124px;height:auto}
.header-tools button,.header-news{border:1px solid transparent;background:transparent;border-radius:10px;min-height:44px;padding:9px 12px;font-size:.875rem;color:var(--muted);font-weight:600}
#language,#logout,.header-news{border-inline-start:1px solid transparent}
.header-tools button:hover,.header-news:hover{background:#edf3ff;color:var(--action)}
main{max-width:1296px;padding:44px 28px 64px}
.welcome-access{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.9fr);align-items:center;gap:70px}
.welcome-heading{text-align:left;max-width:620px;margin:0 0 24px}
.eyebrow{color:var(--action);font-size:.75rem;font-weight:650;letter-spacing:.14em}
h1{font-size:2rem;line-height:1.14;letter-spacing:-.04em;font-weight:650;margin:14px 0 20px;color:var(--ink)}
h1 span{color:var(--ink)}
.opening{display:block;background:none;border:0;border-radius:0;padding:0;color:var(--muted);font-size:1rem;line-height:1.7;margin:0}
.founders img{border-radius:20px;aspect-ratio:1672/941;object-fit:cover}
.login{width:100%;max-width:460px;justify-self:end;align-self:center;background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:34px;box-shadow:none}
.login h2{font-size:1.5rem;line-height:1.2;font-weight:650;margin:14px 0}
.login p{font-size:1rem;line-height:1.6;color:var(--muted)}
.login label{font-size:.875rem;font-weight:600;margin:20px 0;gap:8px}
input,select,textarea{color:var(--ink);border-color:#bdcbe0;border-radius:10px;min-height:46px;font-weight:400}
input:focus,select:focus,textarea:focus{outline:2px solid var(--action);outline-offset:2px}
button.primary,a.primary{background:var(--action);border-color:var(--action);color:white;border-radius:10px;font-size:1rem;font-weight:600}
button.primary:hover{background:#0849b1;border-color:#0849b1}
.login .primary{min-height:50px;margin-top:4px}
#login-message:empty{display:none}
#login-message{color:#a33526;font-size:.875rem;margin-bottom:0}
.welcome-bottom{display:block;margin-top:52px;padding-top:36px;border-top:1px solid var(--line)}
.letter{max-width:850px;margin:0 auto}
.letter h2{font-size:1.5rem;font-weight:650;margin:0 0 20px}
.letter p{line-height:1.85;color:var(--muted)}
.signature strong{color:var(--ink);font-size:1.0625rem}
.signature small{font-size:.875rem}
footer{max-width:1240px;border-color:var(--line);color:var(--muted);font-size:.875rem;padding:24px 0;margin:0 auto}
.is-library main{padding-top:30px;padding-bottom:50px}
.is-library .library-heading{margin-bottom:24px}
.is-library .library-heading h1{font-size:1.65rem;line-height:1.3;letter-spacing:-.025em;margin:7px 0}
.is-library .library-heading .eyebrow{font-size:.75rem}
#account{background:#edf3ff;color:var(--action);border-color:#dbe7fc;font-size:.875rem}
.library-search{margin-bottom:24px}
.library-search>label{font-size:.875rem;color:var(--muted)}
.search-box{background:#fff;border:1px solid #bdcbe0;border-radius:12px;min-height:50px}
.search-box>span{color:var(--action)}
.search-box:focus-within{outline-color:var(--action)}
.library-layout{grid-template-columns:224px minmax(0,1fr);gap:30px}
#categories{gap:6px;padding-right:16px;border-right:1px solid var(--line)}
#categories button{min-height:48px;border:1px solid transparent;border-radius:10px;padding:9px 10px;color:var(--muted);font-size:.875rem;font-weight:550}
#categories button:hover{background:var(--surface);color:var(--action)}
#categories button.active{background:#edf3ff;border-color:#dbe7fc;color:var(--action);font-weight:650}
#categories button>small{font-size:.75rem}
.collection-heading{margin-bottom:16px;gap:16px}
.collection-heading h2{font-size:1.2rem;font-weight:650}
#result-count{font-size:.8125rem;color:var(--muted)}
#filters{margin-bottom:20px}
#filters label>span{font-size:.8125rem}
#filters select,#filters button{min-height:44px;font-size:.875rem;border-radius:10px}
.collection-grid,.document-grid{gap:14px}
.folder{background:#fff;border-color:var(--line);border-inline-start-color:var(--collection-color);box-shadow:none}
.folder:hover{background:var(--surface);box-shadow:0 3px 12px #17365d09}
.collection-grid .folder{padding:18px 14px;min-height:110px;border-radius:14px;gap:14px}
.collection-grid .folder strong{font-size:1rem;line-height:1.4}
.collection-grid .folder small{font-size:.8125rem;color:var(--muted)}
.collection-grid .folder>b{display:none}
.resource-result{border-radius:14px;padding:16px;gap:12px;border-color:var(--line);border-top-color:var(--collection-color)}
.resource-result h3{font-size:1rem;line-height:1.45}
.resource-result .visual{background:var(--surface);border-radius:9px}
.resource-result .resource-download{min-height:44px;font-size:.875rem;border:1px solid #dbe7fc;border-radius:9px;background:#edf3ff;color:var(--action)}
.resource-result .resource-download:hover{background:#e0ecff}
.resource-badge,.resource-result .resource-badge,.resource-audience{font-size:.75rem;line-height:1.5}
.tools{background:var(--surface);border-radius:16px}.tools fieldset{border-color:var(--line);border-radius:16px;padding:24px}
.tools legend{font-weight:650}.tools label{font-size:.875rem}
.patient-back{border-color:var(--line);border-radius:10px;font-size:.875rem}
@media(max-width:1100px){.welcome-access{gap:36px;grid-template-columns:minmax(0,1.15fr) minmax(310px,1fr)}.login{padding:28px}.login h2{font-size:1.6rem}footer{margin:0 28px}}
@media(max-width:850px){
 body>header,.is-library>header{padding:12px 24px;gap:16px;min-height:70px;flex-wrap:wrap}
 main{padding:30px 24px 44px}.welcome-access{gap:28px;grid-template-columns:minmax(0,1fr) minmax(290px,1fr)}
 .welcome-heading{margin-bottom:20px}h1{font-size:1.75rem}.login{padding:24px}
 .library-layout{display:block}.is-library .library-heading .eyebrow{display:block}
 .mobile-collections{margin-top:0}.mobile-collections select{background:#f8faff;border:1px solid var(--line);font-size:.875rem;color:var(--ink)}
 .collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
 body>header,.is-library>header{padding:10px 16px;gap:10px;min-height:68px}
 .site-name{font-size:.9375rem}header .brand img,.is-library header .brand img{width:104px}
 .header-tools{gap:0}.header-tools button,.header-news{padding:7px 8px;font-size:.875rem}
 main{padding:24px 20px 40px}.welcome-access{display:grid;grid-template-columns:minmax(0,1fr);gap:26px}
 .welcome-heading{margin-bottom:0}h1{font-size:1.75rem;max-width:480px;margin:12px 0 16px}
 .welcome-intro{display:contents}.welcome-heading{grid-row:1}.login{grid-row:2;justify-self:stretch;max-width:none;padding:26px;border-radius:20px}.founders{grid-row:3}
 .login h2{font-size:1.5rem}.login label{margin:18px 0}.login .eyebrow{display:none}
 .login h2{margin-top:0}.founders img{border-radius:16px}
 .welcome-bottom{margin-top:30px;padding-top:28px}.letter h2{font-size:1.3rem}
 .letter p{line-height:1.8}.is-library main{padding:22px 16px 36px}
 .is-library .library-heading{align-items:flex-start;gap:12px;margin-bottom:20px}.is-library .library-heading h1{font-size:1.3rem}
 #account{max-width:110px;font-size:.75rem;margin-top:6px}
 .collection-grid .folder{padding:14px 12px;min-height:100px;gap:10px}.collection-grid .folder strong{font-size:.875rem}
 .collection-grid .folder small{font-size:.75rem}.document-grid{grid-template-columns:minmax(0,1fr)}
 .resource-result .copy{display:flex}.resource-result .resource-download{width:100%;max-width:none}.resource-result .resource-badge{font-size:.75rem}
 .collection-heading h2{font-size:1.0625rem}#result-count{font-size:.75rem;max-width:115px}
 footer{margin:0 20px;flex-direction:column;gap:6px;font-size:.8125rem}
}
@media(max-width:390px){body>header,.is-library>header{gap:8px}header .brand img,.is-library header .brand img{width:90px}.site-name{font-size:.875rem}.header-tools button,.header-news{padding:7px 6px;font-size:.8125rem}.is-library .header-tools{order:3;width:100%;justify-content:flex-end}.is-library .brand{margin-left:auto}.is-library .mobile-collections{order:4}.login{padding:22px}.collection-grid{grid-template-columns:minmax(0,1fr)}}

/* Collection identity remains in the original thumbnails; controls use one blue. */
.folder{border:1px solid var(--line);background:#fff}
.tile.resource-result{border:1px solid var(--line)}
.resource-badge,.resource-result .resource-badge,.resource-audience{color:var(--muted)}
.is-library .library-heading h1{font-size:1.5rem}
@media(max-width:680px){.is-library .library-heading h1{font-size:1.25rem}.login h2{font-size:1.5rem}}
