
/* LockwoodSTEM Resource Library */
.resource-library-page{background:#f5f7fb;}
.resource-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#061a36 0%,#0a2b55 58%,#124b78 100%);color:#fff;padding:4.25rem 0 3.75rem;border-bottom:5px solid #c8a24a;}
.resource-hero::before{content:"";position:absolute;inset:-20% -10%;background:radial-gradient(circle at 82% 25%,rgba(255,255,255,.13),transparent 28%),linear-gradient(115deg,transparent 0 62%,rgba(200,162,74,.12) 62% 63%,transparent 63%);pointer-events:none;}
.resource-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:3rem;align-items:center;}
.resource-hero .eyebrow{color:#e7ca7a;}
.resource-hero h1{color:#fff;font-size:clamp(2.45rem,5vw,4.8rem);line-height:1.02;margin:.45rem 0 1rem;max-width:850px;}
.resource-hero p{font-size:1.15rem;line-height:1.7;color:rgba(255,255,255,.84);max-width:780px;margin:0;}
.resource-hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.65rem;}
.btn.ghost-light{background:transparent;border:1px solid rgba(255,255,255,.55);color:#fff;}
.btn.ghost-light:hover,.btn.ghost-light:focus{background:#fff;color:#0b1f3a;}
.resource-hero-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;}
.resource-hero-stats div{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);border-radius:20px;padding:1.25rem;min-height:116px;display:flex;flex-direction:column;justify-content:center;backdrop-filter:blur(8px);box-shadow:0 18px 40px rgba(0,0,0,.15);}
.resource-hero-stats strong{font-size:2.2rem;line-height:1;color:#fff;}
.resource-hero-stats span{font-size:.82rem;text-transform:uppercase;letter-spacing:.09em;font-weight:850;color:#e7ca7a;margin-top:.55rem;}
.resource-featured-section,.resource-library-shell,.resource-help-section{padding-top:3rem;padding-bottom:3rem;}
.resource-section-header{margin-bottom:1.35rem;}
.resource-featured-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;}
.resource-featured-card{position:relative;background:#fff;border:1px solid rgba(11,31,58,.12);border-radius:22px;padding:1.15rem;box-shadow:0 15px 32px rgba(3,17,38,.08);display:flex;flex-direction:column;min-height:230px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
.resource-featured-card:hover{transform:translateY(-4px);box-shadow:0 22px 42px rgba(3,17,38,.13);border-color:rgba(200,162,74,.72);}
.resource-featured-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;}
.resource-file-badge{display:inline-grid;place-items:center;min-width:56px;height:56px;padding:0 .55rem;border-radius:16px;background:#0b1f3a;color:#fff;font-weight:950;font-size:.76rem;letter-spacing:.04em;box-shadow:0 10px 20px rgba(3,17,38,.18);}
.resource-file-badge[data-format="PDF"]{background:#8b1e2d}.resource-file-badge[data-format="PPTX"]{background:#b64a20}.resource-file-badge[data-format="DOCX"]{background:#2458a6}.resource-file-badge[data-format="XLSX"]{background:#1f7448}.resource-file-badge[data-format="F3D"],.resource-file-badge[data-format="F3Z"],.resource-file-badge[data-format="STL"],.resource-file-badge[data-format="STEP"]{background:#6b3db4}.resource-file-badge[data-format="ZIP"]{background:#5c6675}
.resource-save-button{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(11,31,58,.14);background:#fff;color:#526174;font-size:1.25rem;cursor:pointer;transition:.18s ease;}
.resource-save-button:hover,.resource-save-button:focus{border-color:#c8a24a;color:#9c741c;transform:scale(1.05);}
.resource-save-button.is-saved{background:#fff7df;color:#9c741c;border-color:#d3ae52;}
.resource-featured-card h3{font-size:1.05rem;line-height:1.25;margin:1rem 0 .45rem;color:#0b1f3a;}
.resource-featured-card p{font-size:.9rem;line-height:1.55;color:#607086;margin:0 0 1rem;}
.resource-featured-meta{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:auto;margin-bottom:.9rem;}
.resource-meta-pill{display:inline-flex;align-items:center;min-height:26px;padding:.25rem .55rem;border-radius:999px;background:#edf2f8;color:#384b63;font-size:.7rem;font-weight:850;letter-spacing:.02em;}
.resource-featured-actions{display:flex;gap:.5rem;flex-wrap:wrap;}
.resource-featured-actions .btn{flex:1;justify-content:center;}
.resource-library-shell{scroll-margin-top:96px;}
.resource-toolbar{background:#fff;border:1px solid rgba(11,31,58,.12);border-radius:24px;padding:1.15rem;box-shadow:0 15px 35px rgba(3,17,38,.08);position:sticky;top:82px;z-index:20;margin-bottom:1rem;}
.resource-search-field{position:relative;display:flex;align-items:center;background:#f4f7fb;border:2px solid transparent;border-radius:16px;transition:border-color .18s ease,background .18s ease;}
.resource-search-field:focus-within{border-color:#c8a24a;background:#fff;}
.resource-search-icon{font-size:1.5rem;color:#53647a;margin-left:1rem;}
.resource-search-field input{width:100%;border:0;background:transparent;padding:1rem 3rem 1rem .7rem;font-size:1rem;color:#0b1f3a;outline:none;}
.resource-search-clear{position:absolute;right:.65rem;width:34px;height:34px;border:0;background:#dfe7f1;color:#20354f;border-radius:50%;font-size:1.25rem;cursor:pointer;}
.resource-filter-grid{display:grid;grid-template-columns:1.35fr .8fr .75fr .7fr .85fr;gap:.7rem;margin-top:.85rem;}
.resource-filter-grid label{display:grid;gap:.3rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;font-weight:900;color:#506077;}
.resource-filter-grid select{width:100%;border:1px solid #d8e0eb;border-radius:12px;background:#fff;color:#152b46;padding:.78rem .8rem;font:inherit;font-size:.85rem;text-transform:none;letter-spacing:0;font-weight:750;}
.resource-filter-footer{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-top:.9rem;padding-top:.9rem;border-top:1px solid #e5eaf1;}
.resource-result-summary{color:#53647a;font-size:.92rem;}.resource-result-summary strong{color:#0b1f3a;font-size:1.05rem;}
.resource-toolbar-actions{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;}
.resource-favorites-toggle{display:inline-flex;align-items:center;gap:.4rem;border:1px solid #d7dfeb;background:#fff;color:#30445e;border-radius:999px;padding:.55rem .8rem;font-weight:850;cursor:pointer;}
.resource-favorites-toggle[aria-pressed="true"]{background:#fff7df;border-color:#d3ae52;color:#7c5a10;}
.resource-favorites-toggle span:last-child{display:inline-grid;place-items:center;min-width:22px;height:22px;border-radius:999px;background:#e7edf5;font-size:.72rem;}
.resource-active-filters{display:flex;flex-wrap:wrap;gap:.45rem;min-height:0;margin-bottom:1rem;}
.resource-filter-chip{display:inline-flex;align-items:center;gap:.35rem;border:1px solid #ccd7e5;background:#fff;border-radius:999px;padding:.45rem .65rem;color:#31455e;font-size:.78rem;font-weight:800;cursor:pointer;}
.resource-filter-chip:hover{border-color:#c8a24a;}
.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;}
.resource-card-modern{position:relative;background:#fff;border:1px solid rgba(11,31,58,.12);border-radius:22px;padding:1.15rem;box-shadow:0 13px 28px rgba(3,17,38,.07);display:flex;flex-direction:column;min-height:290px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
.resource-card-modern:hover{transform:translateY(-3px);box-shadow:0 20px 38px rgba(3,17,38,.12);border-color:rgba(200,162,74,.62);}
.resource-card-heading{display:flex;justify-content:space-between;gap:.85rem;align-items:flex-start;}
.resource-card-modern h3{font-size:1.05rem;line-height:1.3;margin:1rem 0 .45rem;color:#0b1f3a;}
.resource-card-modern p{font-size:.9rem;line-height:1.55;color:#617086;margin:0 0 1rem;}
.resource-card-tags{display:flex;flex-wrap:wrap;gap:.38rem;margin-top:auto;padding-top:.35rem;}
.resource-card-details{display:flex;justify-content:space-between;gap:.8rem;align-items:center;color:#6b7889;font-size:.75rem;margin:.85rem 0;padding-top:.8rem;border-top:1px solid #e7ecf2;}
.resource-card-actions{display:flex;gap:.5rem;}.resource-card-actions .btn{flex:1;justify-content:center;}
.resource-copy-link{width:42px;min-width:42px;border-radius:11px;border:1px solid #d9e1eb;background:#f4f7fb;color:#31465f;cursor:pointer;font-weight:900;}
.resource-copy-link:hover,.resource-copy-link:focus{border-color:#c8a24a;background:#fff7df;}
.resource-loading-card{grid-column:1/-1;background:#fff;border:1px dashed #bcc8d8;border-radius:20px;padding:2rem;text-align:center;color:#607086;}
.resource-empty-state{text-align:center;background:#fff;border:1px dashed #bdc8d7;border-radius:24px;padding:3rem 1rem;margin-top:1rem;}
.resource-empty-icon{font-size:3rem;color:#8391a3}.resource-empty-state h3{margin:.6rem 0 .4rem}.resource-empty-state p{color:#647489;margin:0 0 1rem;}
.resource-load-more-wrap{text-align:center;margin-top:1.3rem;}
.resource-help-card{background:linear-gradient(135deg,#fff,#f5f8fc);border:1px solid #d7dfeb;border-radius:26px;padding:1.6rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;box-shadow:0 15px 30px rgba(3,17,38,.07);}
.resource-help-card h2{margin:.25rem 0 .4rem}.resource-help-card p{margin:0;color:#617086;}
.resource-help-actions{display:flex;gap:.65rem;flex-wrap:wrap;}
.resource-toast{position:fixed;left:50%;bottom:1.5rem;transform:translate(-50%,20px);background:#0b1f3a;color:#fff;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:.75rem 1rem;font-weight:800;box-shadow:0 18px 38px rgba(0,0,0,.24);z-index:9999;opacity:0;pointer-events:none;transition:.2s ease;}
.resource-toast.is-visible{opacity:1;transform:translate(-50%,0);}
@media(max-width:1100px){.resource-featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.resource-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.resource-toolbar{position:static;}}
@media(max-width:820px){.resource-hero-grid{grid-template-columns:1fr}.resource-hero-stats{grid-template-columns:repeat(4,minmax(0,1fr));}.resource-hero-stats div{min-height:100px;padding:1rem}.resource-hero-stats strong{font-size:1.7rem}.resource-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.resource-help-card{align-items:flex-start;flex-direction:column;}}
@media(max-width:640px){.resource-hero{padding:3rem 0}.resource-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr));}.resource-featured-grid,.resource-grid{grid-template-columns:1fr}.resource-filter-grid{grid-template-columns:1fr}.resource-filter-footer{align-items:flex-start;flex-direction:column}.resource-toolbar-actions{width:100%}.resource-favorites-toggle{flex:1;justify-content:center}.resource-help-actions{width:100%}.resource-help-actions .btn{width:100%;justify-content:center}.resource-card-modern{min-height:0}.resource-featured-card{min-height:0}.resource-toolbar{border-radius:18px;padding:.9rem}.resource-hero-actions .btn{width:100%;justify-content:center;}}
@media(prefers-reduced-motion:reduce){.resource-card-modern,.resource-featured-card,.resource-save-button,.resource-toast{transition:none!important;}}


/* Resource library light-section contrast fix */
.resource-library-page .resource-featured-section .section-header h2,
.resource-library-page .resource-library-shell .section-header h2,
.resource-library-page .resource-help-section h2{
  color:#0b1f3a !important;
  opacity:1 !important;
  text-shadow:none !important;
}
.resource-library-page .resource-featured-section .section-subtitle,
.resource-library-page .resource-library-shell .section-subtitle,
.resource-library-page .resource-help-section p{
  color:#42566f !important;
  opacity:1 !important;
  text-shadow:none !important;
}
.resource-library-page .resource-featured-section .eyebrow,
.resource-library-page .resource-library-shell .eyebrow,
.resource-library-page .resource-help-section .eyebrow{
  color:#805d12 !important;
  opacity:1 !important;
  text-shadow:none !important;
}
