.store-shell { max-width:1400px; margin:0 auto; padding:0 40px; }
.store-page .site-nav,.store-page .site-footer { max-width:1400px; }
.store-intro { display:flex; justify-content:space-between; align-items:flex-end; gap:32px; padding:54px 0 43px; border-bottom:1px solid #ffffff0d; }
.store-intro h1 { margin-top:16px; font-size:49px; font-weight:520; line-height:1.1; letter-spacing:-2.2px; }
.store-intro>div>p:last-child { font-size:13px; line-height:1.8; color:#8d93a6; margin-top:20px; }
.store-promise { text-align:right; padding-bottom:3px; }
.store-promise .free-badge { font-size:8px; padding:7px 10px; margin-bottom:12px; }
.store-promise>p { color:#858da2; font-size:12px; line-height:1.8; }
.store-total { display:block; margin-top:17px; font:9px var(--font-mono); color:#b0bddc; letter-spacing:.4px; }
.mobile-break { display:none; }
.store-layout { display:grid; grid-template-columns:200px minmax(0,1fr); gap:36px; align-items:start; padding-top:35px; }
.store-sidebar { position:sticky; top:24px; max-height:calc(100vh - 48px); overflow:auto; scrollbar-width:thin; scrollbar-color:#30384b transparent; }
.store-sidebar>summary { display:none; }
.sidebar-inner { padding-right:8px; }
.filter-heading { font:8px var(--font-mono); color:#6e7892; letter-spacing:1.5px; margin:7px 10px 17px; }
.collections-label { margin-top:30px; font-size:7px; letter-spacing:1px; }
.filter-button { width:100%; display:flex; align-items:center; gap:10px; padding:12px 10px; margin:3px 0; color:#919bb1; font-size:11px; text-align:left; border:1px solid transparent; border-radius:7px; background:transparent; transition:background .2s,color .2s,border-color .2s; }
.filter-button:hover { background:#151a25; color:#e8edfa; }
.filter-button.is-active { color:#d7e4ff; border-color:#5a70a448; background:linear-gradient(100deg,#1b253d,#131925); }
.filter-count { margin-left:auto; font:9px var(--font-mono); color:#68748d; padding-left:4px; }
.is-active>.filter-count { color:#a5baf0; }
.filter-icon { display:flex; align-items:center; justify-content:center; width:17px; height:18px; flex-shrink:0; color:#6d809f; }
.filter-icon svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.3; stroke-linecap:round; stroke-linejoin:round; }
.is-active>.filter-icon { color:#a8c3fb; }
.collection-filter img { width:26px; height:26px; object-fit:cover; border-radius:50%; border:1px solid #3b4358; }
.sidebar-note { border-top:1px solid #ffffff0b; margin:28px 10px 0; padding-top:24px; }
.sidebar-orbit { display:block; color:#899de0; font-size:29px; margin-bottom:14px; }
.sidebar-note h2 { font-size:12px; font-weight:500; color:#bfc8dc; }
.sidebar-note p { margin-top:9px; color:#707c94; font-size:11px; line-height:1.7; }
.sidebar-note a { display:inline-flex; gap:17px; margin-top:18px; font-size:10px; text-decoration:none; color:#b4c8f5; }
.sidebar-note a:hover { color:white; }
.store-results { min-width:0; }
.store-toolbar { display:flex; justify-content:space-between; align-items:center; gap:18px; min-height:48px; }
.results-heading { display:flex; flex-wrap:wrap; align-items:baseline; gap:9px; }
.results-heading h2 { font-size:20px; font-weight:500; letter-spacing:-.5px; }
#result-count { color:#707e99; font:9px var(--font-mono); white-space:nowrap; }
.store-tools { display:flex; gap:9px; flex-shrink:0; }
.store-search { display:flex; align-items:center; position:relative; height:40px; width:220px; border:1px solid #2a3140; border-radius:7px; background:#10131b; }
.store-search:focus-within { border-color:#7b91ca; box-shadow:0 0 0 2px #7b91ca15; }
.store-search>svg { width:15px; height:15px; fill:none; stroke:#7284a4; stroke-width:1.5; margin-left:12px; flex-shrink:0; }
.store-search input { width:100%; min-width:0; border:0; background:none; color:#dce4f5; font:11px var(--font-sans); padding:11px 29px 11px 10px; outline:none; }
.store-search input::placeholder { color:#687891; }
.store-search input::-webkit-search-cancel-button { display:none; }
.store-search button { position:absolute; right:8px; border:0; background:none; color:#9aa9c2; font-size:18px; padding:0 4px; }
.store-sort { position:relative; display:flex; align-items:center; }
.store-sort select { appearance:none; border:1px solid #2a3140; border-radius:7px; color:#a5b1c7; background:#10131b; height:40px; padding:0 29px 0 12px; font:10px var(--font-sans); cursor:pointer; }
.store-sort>span:last-child { position:absolute; right:11px; top:10px; color:#7f8eab; pointer-events:none; }
.store-sort select:focus-visible { outline:2px solid var(--accent-cyan); outline-offset:3px; }
.store-context { display:flex; align-items:center; justify-content:space-between; gap:15px; min-height:41px; margin-bottom:12px; }
.store-context p { color:#6b7890; font-size:10px; line-height:1.6; }
#clear-filters { color:#a8b8db; background:none; border:0; font-size:10px; white-space:nowrap; padding:5px 0 5px 8px; }
#clear-filters span { padding-left:7px; font-size:14px; }
.store-grid { gap:20px; }
.store-page .asset-card { display:flex; flex-direction:column; }
.store-page .asset-card-media { aspect-ratio:1.07; }
.store-page .asset-card-media>img { padding:18px; }
.store-page .asset-card-info { padding:18px 16px 12px; display:flex; flex-direction:column; flex:1; }
.store-page .asset-category { font-size:7px; letter-spacing:.9px; color:#8494b0; }
.store-page .asset-card h3 { font-size:14px; line-height:1.4; min-height:39px; margin-top:9px; font-weight:500; }
.store-page .asset-card-footer { margin-top:auto; padding-top:15px; gap:5px; }
.store-page .asset-card-footer .asset-viewer-link { font-size:12px; min-height:43px; padding:11px 12px; }
.store-page .asset-card-footer .asset-download-link { font-size:10px; color:#8a99b5; }
.store-page .asset-badge { background:#111b19e8; border-color:#91bc9f30; color:#b9dfc6; }
.store-pagination { padding:32px 0 7px; text-align:center; }
.store-pagination>p { font:9px var(--font-mono); color:#6d7d98; margin-bottom:16px; }
.store-pagination .site-button { min-width:190px; }
.store-empty,.store-error { min-height:340px; padding:65px 25px; text-align:center; border:1px dashed #2b3345; border-radius:12px; background:radial-gradient(ellipse at top,#34417115,transparent); }
.store-empty>span { font-size:38px; color:#869dd1; }
.store-empty h3,.store-error h3 { font-size:22px; font-weight:500; letter-spacing:-.5px; margin-top:12px; }
.store-empty p,.store-error p { color:#7f8ca5; font-size:12px; line-height:1.8; max-width:310px; margin:13px auto 25px; }
.store-skeleton { aspect-ratio:.7; border:1px solid #242b3a; border-radius:10px; background:linear-gradient(#11151e 66%,#151923 66%,#10131b); }
.store-bottom-note { display:flex; justify-content:center; align-items:center; gap:10px; padding:58px 0 48px; color:#65748e; font-size:10px; }
.store-bottom-note a { text-decoration:none; color:#a0b3d8; margin-left:10px; }
.store-bottom-note a:hover { color:#fff; }
.store-noscript { font-size:13px; color:#94a3b8; line-height:1.7; }
.store-page [hidden] { display:none!important; }
@media(min-width:1500px) { .store-intro { padding-top:66px; }.store-intro h1 { font-size:56px; }.store-layout { grid-template-columns:210px minmax(0,1fr); gap:44px; } }
@media(max-width:1150px) { .store-toolbar { align-items:flex-start; flex-direction:column; gap:16px; }.store-tools { width:100%; }.store-search { flex:1; width:auto; }.store-layout { grid-template-columns:180px minmax(0,1fr); gap:25px; }.filter-button { gap:8px; padding:11px 8px; font-size:10px; }.store-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) { .store-shell { padding:0 24px; }.store-intro { padding-top:38px; gap:22px; }.store-intro h1 { font-size:40px; }.store-promise { max-width:150px; }.store-promise>p { font-size:10px; }.store-promise .free-badge { font-size:7px; }.store-layout { display:block; padding-top:22px; }.store-sidebar { position:static; max-height:none; overflow:visible; margin-bottom:24px; border:1px solid #293246; border-radius:8px; background:#10131b; }.store-sidebar>summary { display:flex; align-items:center; justify-content:space-between; cursor:pointer; padding:14px 17px; list-style:none; color:#c6d3ed; font-size:12px; }.store-sidebar>summary::-webkit-details-marker { display:none; }.store-sidebar[open]>summary { border-bottom:1px solid #293246; }.sidebar-inner { padding:16px; }.filter-button { font-size:12px; padding:12px 10px; }.filter-heading { margin-top:5px; }.collections-label { margin-top:25px; }.sidebar-note { display:none; }.store-toolbar { flex-direction:row; align-items:center; flex-wrap:wrap; }.store-tools { width:100%; }.store-grid { gap:16px; }.store-bottom-note { flex-wrap:wrap; text-align:center; line-height:1.8; } }
@media(max-width:460px) { .store-shell { padding:0 20px; }.store-intro { display:block; padding:34px 0 26px; }.store-intro h1 { font-size:39px; letter-spacing:-1.7px; }.store-intro>div>p:last-child { font-size:12px; margin-top:16px; }.store-promise { text-align:left; max-width:none; padding:0; margin-top:23px; display:flex; align-items:center; justify-content:space-between; gap:12px; }.store-promise .free-badge { margin:0; font-size:7px; }.store-promise>p { display:none; }.store-total { margin:0; font-size:8px; }.store-tools { gap:7px; }.store-sort select { font-size:9px; padding-left:9px; padding-right:26px; max-width:118px; }.store-search input { font-size:10px; padding-left:8px; }.store-search>svg { margin-left:10px; width:13px; }.store-context { align-items:flex-start; margin-top:13px; min-height:34px; }.store-context p { font-size:9px; max-width:200px; }.store-grid { gap:12px; }.store-page .asset-card-media { aspect-ratio:.85; }.store-page .asset-card-media>img { padding:10px; }.store-page .asset-card-info { padding:13px 10px 9px; }.store-page .asset-card h3 { font-size:12px; min-height:51px; }.store-page .asset-category { font-size:6px; letter-spacing:.5px; }.store-page .asset-card-footer .asset-viewer-link { font-size:10px; padding:10px 7px; min-height:38px; gap:5px; }.store-page .asset-card-footer .asset-download-link { font-size:9px; }.store-bottom-note { padding-top:42px; font-size:9px; }.store-bottom-note a { display:block; flex-basis:100%; margin:0; }.mobile-break { display:block; } }
@media(max-width:350px) { .store-shell { padding:0 16px; }.store-intro h1 { font-size:34px; }.store-grid { gap:9px; }.store-search input { padding-right:21px; }.store-page .asset-card-footer .asset-viewer-link { font-size:9px; }.store-page .asset-card h3 { font-size:11px; } }
