:root{color-scheme:light;--ink:#17283e;--muted:#5d6b7c;--line:#dbe1e5;--paper:#fff;--cream:#f6f6f2;--navy:#172e4a;--blue:#365c83;--accent:#edf2f6;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--cream);font-size:15px;line-height:1.55}a{color:var(--blue);text-underline-offset:3px}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #6289ae;outline-offset:4px}button{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:7px;padding:10px 16px}.skip{position:fixed;left:12px;top:-90px;z-index:10;background:white;padding:10px 15px;border:2px solid var(--navy)}.skip:focus{top:12px}main{max-width:1280px;margin:0 auto;padding:48px 28px 36px}.intro{max-width:830px;margin-bottom:30px}.eyebrow{font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0 0 9px}h1{font-size:clamp(32px,4vw,48px);line-height:1.16;letter-spacing:-.035em;font-weight:720;margin:0 0 15px}p{margin:0}.lead{font-size:18px;color:#47586b;max-width:740px;margin-bottom:17px}.context-note{font-size:12px;color:var(--muted);max-width:810px;border-left:2px solid #b5c4cf;padding-left:12px}.search-section{background:var(--paper);border:1px solid var(--line);border-radius:11px;padding:23px 25px;margin-bottom:34px}label{display:block;font-size:12px;font-weight:700;color:#415168;margin-bottom:7px}.search-row{display:flex;gap:10px}.search-row input{border:1px solid #bcc9d4;border-radius:7px;background:white;padding:13px 15px;min-width:0;flex:1}.search-submit{background:var(--navy);color:white;border-color:var(--navy);min-width:98px;font-weight:650}.filters{display:grid;grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:16px;margin-top:19px}.filters select{height:43px;width:100%;border:1px solid var(--line);border-radius:7px;padding:0 32px 0 11px;color:#415168;background:white}.filters button{height:43px;font-size:12px}.quick-filters{display:flex;flex-wrap:wrap;gap:9px;margin-top:21px}.quick-filters a{font-size:12px;text-decoration:none;border-radius:20px;border:1px solid var(--line);background:#f8fafb;color:#46596f;padding:6px 13px}.quick-filters a.active{background:var(--navy);color:white;border-color:var(--navy)}.quick-filters span{font-size:10px;opacity:.75;padding-left:4px}.results-header{display:flex;justify-content:space-between;gap:20px;align-items:end;margin:0 0 20px}.results-header h2{font-size:21px;letter-spacing:-.02em;margin:0 0 3px}.results-header p{font-size:12px;color:var(--muted)}.preview-note{align-self:center}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px}.card{border:1px solid var(--line);background:var(--paper);border-radius:9px;overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:border-color .15s,box-shadow .15s}.card:hover{border-color:#aabccd;box-shadow:0 5px 20px #23344b0a}.card-preview{padding:0;border:0;border-radius:0;position:relative;display:flex;justify-content:center;align-items:center;width:100%;height:auto;aspect-ratio:1.6;background:#eef2f4;text-decoration:none;overflow:hidden}.card-preview img{height:100%;width:100%;object-fit:contain;display:block;background:white}.card-preview:hover img{opacity:.94}.preview-label{position:absolute;bottom:9px;right:10px;color:white;background:#172e4adc;border-radius:4px;font-size:10px;font-weight:650;padding:3px 7px;pointer-events:none}.card-placeholder{padding:22px;align-items:flex-start;flex-direction:column;background:linear-gradient(130deg,#e8edf2,#f6f7f5);color:#304860}.card-placeholder .placeholder-icon{font-size:29px;line-height:1;display:block;color:#6a829a;margin-bottom:17px;font-weight:300;letter-spacing:-.1em}.card-placeholder .placeholder-type{font-size:12px;font-weight:750}.card-placeholder .placeholder-topic{font-size:11px;color:#6b7c8c;margin-top:4px}.card-content{padding:16px 17px 15px;flex:1;display:flex;flex-direction:column}.card-meta{font-size:10px;color:var(--muted);display:flex;justify-content:space-between;gap:8px;margin-bottom:9px}.card-meta .material{font-weight:700;letter-spacing:.025em}.card h3{font-size:15px;line-height:1.4;font-weight:700;letter-spacing:-.01em;margin:0 0 9px}.card h3 a{color:var(--ink);text-decoration:none}.card h3 a:hover{text-decoration:underline}.card-summary{font-size:11px;color:var(--muted);line-height:1.6;margin-bottom:14px}.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;font-size:10px;padding-top:10px;border-top:1px solid #edf0f2;color:var(--muted)}.card-bottom a{text-decoration:none;font-size:11px;font-weight:650;white-space:nowrap}.load-row{text-align:center;margin-top:30px}.load-row button{background:white;min-width:180px;border-color:#bdcbd7;color:var(--navy);font-weight:650}.load-row p{font-size:11px;color:var(--muted);margin:10px 0 0}.empty-state{padding:48px 20px;text-align:center;background:white;border:1px solid var(--line);border-radius:9px}.empty-state h3{margin:0 0 8px;font-size:20px}.empty-state p{color:var(--muted);margin-bottom:18px}.fallback{font-size:13px;padding:20px;background:white;border:1px solid var(--line);border-radius:9px}.fallback summary{cursor:pointer;font-weight:700;font-size:16px}.fallback p{color:var(--muted);margin:12px 0 20px}.fallback h2{font-size:17px;margin:24px 0 10px}.fallback ul{padding-left:20px;margin-top:0}.fallback li{margin:6px 0}.fallback li span{font-size:11px;color:var(--muted)}.js .fallback{display:none}.no-js .interactive{display:none}dialog{width:min(1180px,calc(100vw - 32px));max-height:calc(100vh - 32px);border:1px solid var(--line);border-radius:11px;padding:0;color:var(--ink);background:white}dialog::backdrop{background:#0a192ccc}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;border-bottom:1px solid var(--line)}.dialog-heading h2{font-size:20px;line-height:1.3;letter-spacing:-.02em;margin:0}.dialog-heading .eyebrow{font-size:10px;margin-bottom:5px}.dialog-heading button{font-size:12px;white-space:nowrap}.dialog-heading button span{font-size:19px;margin-left:9px}.preview-media{padding:14px;background:#f2f4f5;min-height:150px}.preview-media img{display:block;max-width:100%;max-height:65vh;height:auto;width:auto;margin:0 auto;background:white}.image-loading{text-align:center;padding:50px 10px;color:var(--muted);font-size:13px}.dialog-footer{padding:17px 24px 22px;border-top:1px solid var(--line)}.dialog-footer p{font-size:12px;color:var(--muted);margin-bottom:10px}.dialog-footer>div{display:flex;flex-wrap:wrap;gap:24px}.dialog-footer a{font-size:12px;font-weight:650}.site-footer{border-top:1px solid var(--line);max-width:1224px;margin:0 auto;padding:22px 0 30px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted)}.site-footer>div{display:flex;gap:20px}.site-footer a{color:var(--muted);text-decoration:none}[hidden]{display:none!important}
@media(min-width:1350px){.cards{gap:23px}}@media(max-width:1080px){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}.site-footer{margin:0 28px}}@media(max-width:760px){main{padding:32px 19px 25px}.intro{margin-bottom:23px}.lead{font-size:16px}.context-note{font-size:11px}.search-section{padding:18px}.filters{grid-template-columns:1fr 1fr;gap:12px}.filters button{align-self:end}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.card-content{padding:13px}.card h3{font-size:14px}.card-meta{font-size:9px}.card-summary{font-size:10px}.preview-note{display:none}.site-footer{margin:0 19px;flex-direction:column;gap:9px}.dialog-heading{padding:15px;align-items:flex-start}.dialog-heading h2{font-size:16px}.dialog-footer{padding:15px}.preview-media{padding:8px}.card-bottom{flex-wrap:wrap;gap:5px}}@media(max-width:460px){.cards{grid-template-columns:1fr}.card-preview{aspect-ratio:1.85}.card-content{padding:16px 18px}.card h3{font-size:16px}.card-summary{font-size:12px}.card-meta{font-size:11px}.card-bottom{font-size:11px}.card-bottom a{font-size:12px}.search-row{gap:7px}.search-row input{font-size:12px;padding:12px}.search-submit{min-width:70px;padding:10px 12px;font-size:12px}.quick-filters{gap:7px}.quick-filters a{font-size:11px;padding:5px 10px}.filters{gap:10px}.filters select{font-size:12px}.dialog-heading button{padding:6px 9px}.dialog-heading button span{margin-left:3px}.dialog-footer>div{gap:10px 20px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
