:root{--navy:#082b55;--blue:#0a4c8a;--red:#d71f2b;--ink:#162438;--muted:#687586;--line:#dde5ee;--bg:#f4f7fa;--card:#fff}
*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--ink)}button,input,select{font:inherit}.hidden{display:none!important}
.topbar{height:76px;background:var(--navy);display:flex;align-items:center;justify-content:space-between;padding:0 5vw;color:#fff}.brandmark{font-weight:1000;letter-spacing:.08em}.home-link{color:#fff;text-decoration:none}
main{max-width:1500px;margin:auto;padding:32px 4vw 70px}.gateway{min-height:75vh;display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:center}.welcome-panel h1,.hero h1{font-size:clamp(38px,5vw,72px);line-height:1;margin:12px 0}.welcome-panel p,.hero p{font-size:19px;color:var(--muted);max-width:720px}
.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:1000;color:var(--red)}.entry-card,.modal-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 22px 60px rgba(8,43,85,.12)}
label{display:block;font-weight:800;margin-bottom:15px}input,select{width:100%;border:1px solid #cfd9e4;border-radius:12px;padding:13px;background:#fff;margin-top:7px}label small{display:block;color:var(--red);min-height:14px;margin-top:4px;font-weight:600}.remember{display:flex;align-items:center;gap:9px;font-weight:600}.remember input{width:auto;margin:0}
.primary{border:0;background:var(--red);color:#fff;padding:13px 20px;border-radius:12px;font-weight:1000;cursor:pointer}.status{margin-top:12px;color:var(--muted)}
.hero{background:#fff;border:1px solid var(--line);border-radius:28px;padding:36px;margin-bottom:22px}.link-button{border:0;background:none;color:var(--blue);padding:0;cursor:pointer;font-weight:800}
.toolbar{position:sticky;top:0;z-index:5;background:rgba(244,247,250,.96);backdrop-filter:blur(12px);display:grid;grid-template-columns:2.2fr 1fr 1fr 1fr auto;gap:10px;padding:14px 0}.view-switch{display:flex}.view-switch button{border:1px solid var(--line);background:#fff;padding:11px}.view-switch .active{background:var(--navy);color:#fff}
.content-layout{display:grid;grid-template-columns:240px 1fr;gap:20px}.brand-counts{background:#fff;border:1px solid var(--line);border-radius:18px;padding:10px;height:max-content;position:sticky;top:92px}.brand-row{display:flex;justify-content:space-between;padding:11px;border-radius:10px;cursor:pointer;font-weight:800}.brand-row:hover{background:#edf3f8}
.result-line{margin:10px 0 15px}.resource-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.resource-grid.list{grid-template-columns:1fr}.resource-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column}.resource-grid.list .resource-card{display:grid;grid-template-columns:180px 1fr}.thumb{aspect-ratio:4/3;background:#eef2f6;display:flex;align-items:center;justify-content:center;overflow:hidden}.thumb img{width:100%;height:100%;object-fit:cover}.pdf-icon{font-size:50px;font-weight:1000;color:var(--red)}
.card-body{padding:16px;display:flex;flex-direction:column;gap:8px;flex:1}.card-body h3{margin:0;color:var(--navy)}.meta{color:var(--muted);font-size:13px}.actions{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:auto}.actions button,.actions a{border:1px solid var(--line);background:#fff;color:var(--navy);padding:9px;border-radius:10px;text-decoration:none;text-align:center;font-weight:900;cursor:pointer}.actions .download{background:var(--navy);color:#fff}
.modal{position:fixed;inset:0;background:rgba(7,20,35,.72);z-index:20;display:grid;place-items:center;padding:20px}.modal-card{max-width:900px;width:min(94vw,900px);max-height:92vh;overflow:auto;position:relative}.modal-close{position:absolute;right:14px;top:10px;border:0;background:none;font-size:30px;cursor:pointer}.preview-card img,.preview-card iframe{width:100%;max-height:75vh;object-fit:contain;border:0}.empty{text-align:center;padding:60px;color:var(--muted)}
@media(max-width:1100px){.resource-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:850px){.gateway{grid-template-columns:1fr}.content-layout{grid-template-columns:1fr}.brand-counts{display:none}.toolbar{grid-template-columns:1fr 1fr}.resource-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){main{padding:20px 14px}.toolbar{grid-template-columns:1fr}.resource-grid{grid-template-columns:1fr}.resource-grid.list .resource-card{grid-template-columns:1fr}.hero{padding:22px}.actions button,.actions a{padding:12px}}