/* SoftPrime Catalog — Phase 3 */
body.storefront-foundation-v1 .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
body.storefront-foundation-v1 .catalog-v3{display:grid;gap:18px}
body.storefront-foundation-v1 .catalog-v3-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:26px 0 8px}
body.storefront-foundation-v1 .catalog-v3-eyebrow{display:block;margin-bottom:8px;color:var(--ui-primary);font-size:12px;line-height:1;font-weight:720;letter-spacing:.08em;text-transform:uppercase}
body.storefront-foundation-v1 .catalog-v3-intro h1{margin:0;color:var(--ui-text);font-size:clamp(30px,4.4vw,48px);line-height:1.08;letter-spacing:-.045em;font-weight:720}
body.storefront-foundation-v1 .catalog-v3-intro p{max-width:680px;margin:11px 0 0;color:var(--ui-muted);font-size:14px;line-height:1.7}
body.storefront-foundation-v1 .catalog-v3-count{min-width:110px;padding:14px 16px;border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-xs);text-align:right}
body.storefront-foundation-v1 .catalog-v3-count strong{display:block;color:var(--ui-text);font-size:23px;line-height:1;font-weight:720;letter-spacing:-.03em}
body.storefront-foundation-v1 .catalog-v3-count span{display:block;margin-top:5px;color:var(--ui-muted);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}
body.storefront-foundation-v1 .catalog-v3-form{display:none}

body.storefront-foundation-v1 .catalog-v3-searchbar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:9px;padding:11px;border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-xs)}
body.storefront-foundation-v1 .catalog-v3-search{min-height:46px;display:flex;align-items:center;gap:10px;padding:0 12px;border:1px solid var(--ui-border);border-radius:10px;background:var(--ui-surface-subtle);color:var(--ui-muted);transition:border-color var(--ui-transition),box-shadow var(--ui-transition),background var(--ui-transition)}
body.storefront-foundation-v1 .catalog-v3-search:focus-within{border-color:#7b93c9;background:var(--ui-surface);box-shadow:0 0 0 3px rgba(36,87,197,.10)}
body.storefront-foundation-v1 .catalog-v3-search input{width:100%;min-width:0;height:42px;padding:0;border:0;outline:0;background:transparent;color:var(--ui-text);font-size:14px}
body.storefront-foundation-v1 .catalog-v3-search input::placeholder{color:var(--ui-muted)}
body.storefront-foundation-v1 .catalog-v3-search-clear{width:28px;height:28px;display:grid;place-items:center;flex:0 0 28px;border-radius:7px;color:var(--ui-muted);text-decoration:none}
body.storefront-foundation-v1 .catalog-v3-search-clear:hover{background:var(--ui-surface-muted);color:var(--ui-text)}
body.storefront-foundation-v1 .catalog-v3-search-submit,
body.storefront-foundation-v1 .catalog-v3-filter-trigger,
body.storefront-foundation-v1 .catalog-v3-primary{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 17px;border:1px solid var(--ui-primary);border-radius:10px;background:var(--ui-primary);color:#fff;text-decoration:none;cursor:pointer;font-size:13px;font-weight:680;transition:opacity var(--ui-transition),transform var(--ui-transition)}
body.storefront-foundation-v1 .catalog-v3-search-submit:hover,
body.storefront-foundation-v1 .catalog-v3-primary:hover{opacity:.92}
body.storefront-foundation-v1 .catalog-v3-filter-trigger{display:none;position:relative;border-color:var(--ui-border);background:var(--ui-surface);color:var(--ui-text-soft)}
body.storefront-foundation-v1 .catalog-v3-filter-trigger i{position:absolute;right:8px;top:8px;width:6px;height:6px;border-radius:50%;background:var(--ui-primary)}

body.storefront-foundation-v1 .catalog-v3-categories{display:flex;gap:7px;overflow:auto;padding:2px 0 4px;scrollbar-width:none;overscroll-behavior-inline:contain}
body.storefront-foundation-v1 .catalog-v3-categories::-webkit-scrollbar{display:none}
body.storefront-foundation-v1 .catalog-v3-categories a{min-height:38px;display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;padding:7px 12px;border:1px solid var(--ui-border);border-radius:9px;background:var(--ui-surface);color:var(--ui-text-soft);text-decoration:none;font-size:12px;font-weight:620;transition:border-color var(--ui-transition),background var(--ui-transition),color var(--ui-transition)}
body.storefront-foundation-v1 .catalog-v3-categories a:hover{border-color:var(--ui-border-strong);color:var(--ui-text)}
body.storefront-foundation-v1 .catalog-v3-categories a.is-active{border-color:var(--ui-primary-border);background:var(--ui-primary-soft);color:var(--ui-primary)}
body.storefront-foundation-v1 .catalog-v3-categories small{min-width:20px;height:20px;display:grid;place-items:center;padding:0 5px;border-radius:6px;background:var(--ui-surface-muted);color:var(--ui-muted);font-size:10px;font-weight:700}
body.storefront-foundation-v1 .catalog-v3-categories .is-active small{background:var(--ui-surface);color:var(--ui-primary)}

body.storefront-foundation-v1 .catalog-v3-layout{display:grid;grid-template-columns:230px minmax(0,1fr);align-items:start;gap:20px}
body.storefront-foundation-v1 .catalog-v3-filter-panel{position:sticky;top:91px;display:grid;gap:0;overflow:hidden;border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-xs)}
body.storefront-foundation-v1 .catalog-v3-filter-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 16px;border-bottom:1px solid var(--ui-border)}
body.storefront-foundation-v1 .catalog-v3-filter-head>div{display:grid;gap:2px}
body.storefront-foundation-v1 .catalog-v3-filter-head strong{font-size:14px;font-weight:700}
body.storefront-foundation-v1 .catalog-v3-filter-head span{color:var(--ui-muted);font-size:11px}
body.storefront-foundation-v1 .catalog-v3-filter-head button{display:none;width:36px;height:36px;padding:0;border:1px solid var(--ui-border);border-radius:8px;background:var(--ui-surface);color:var(--ui-text);cursor:pointer}
body.storefront-foundation-v1 .catalog-v3-filter-group{display:grid;gap:8px;padding:15px 16px;border-bottom:1px solid var(--ui-border)}
body.storefront-foundation-v1 .catalog-v3-filter-label{margin-bottom:2px;color:var(--ui-text);font-size:11px;font-weight:720;text-transform:uppercase;letter-spacing:.06em}
body.storefront-foundation-v1 .catalog-v3-radio{min-height:34px;display:flex;align-items:center;gap:9px;color:var(--ui-text-soft);font-size:13px;cursor:pointer}
body.storefront-foundation-v1 .catalog-v3-radio input{width:16px;height:16px;margin:0;accent-color:var(--ui-primary)}
body.storefront-foundation-v1 .catalog-v3-price-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}
body.storefront-foundation-v1 .catalog-v3-price-fields label{min-width:0;display:grid;gap:5px;color:var(--ui-muted);font-size:10px;font-weight:600}
body.storefront-foundation-v1 .catalog-v3-price-fields label>div{height:39px;display:flex;align-items:center;gap:3px;padding:0 8px;border:1px solid var(--ui-border);border-radius:8px;background:var(--ui-surface-subtle)}
body.storefront-foundation-v1 .catalog-v3-price-fields b{color:var(--ui-muted);font-size:12px;font-weight:600}
body.storefront-foundation-v1 .catalog-v3-price-fields input{width:100%;min-width:0;height:35px;padding:0;border:0;outline:0;background:transparent;color:var(--ui-text);font-size:12px}
body.storefront-foundation-v1 .catalog-v3-filter-actions{display:grid;gap:9px;padding:15px 16px}
body.storefront-foundation-v1 .catalog-v3-filter-actions .catalog-v3-primary{width:100%;min-height:42px}
body.storefront-foundation-v1 .catalog-v3-reset{display:block;padding:3px;color:var(--ui-muted);text-align:center;text-decoration:none;font-size:12px;font-weight:600}
body.storefront-foundation-v1 .catalog-v3-reset:hover{color:var(--ui-primary)}
body.storefront-foundation-v1 .catalog-v3-filter-backdrop{display:none}

body.storefront-foundation-v1 .catalog-v3-results{min-width:0}
body.storefront-foundation-v1 .catalog-v3-toolbar{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
body.storefront-foundation-v1 .catalog-v3-toolbar p{margin:0;color:var(--ui-muted);font-size:12px}
body.storefront-foundation-v1 .catalog-v3-toolbar p strong{color:var(--ui-text);font-weight:650}
body.storefront-foundation-v1 .catalog-v3-sort{display:flex;align-items:center;gap:7px;color:var(--ui-muted);font-size:12px}
body.storefront-foundation-v1 .catalog-v3-sort select{height:38px;padding:0 32px 0 10px;border:1px solid var(--ui-border);border-radius:8px;background:var(--ui-surface);color:var(--ui-text);outline:0;font-size:12px;cursor:pointer}

body.storefront-foundation-v1 .catalog-v3-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
body.storefront-foundation-v1 .catalog-v3-card{min-width:0;overflow:hidden;border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-xs);transition:transform 180ms cubic-bezier(.2,.7,.2,1),border-color var(--ui-transition),box-shadow var(--ui-transition)}
body.storefront-foundation-v1 .catalog-v3-card:hover{transform:translateY(-3px);border-color:var(--ui-border-strong);box-shadow:var(--ui-shadow-md)}
body.storefront-foundation-v1 .catalog-v3-media{position:relative;display:block;aspect-ratio:1/1;overflow:hidden;background:var(--ui-surface-muted)}
body.storefront-foundation-v1 .catalog-v3-media img{width:100%;height:100%;display:block;object-fit:cover;transition:transform 280ms cubic-bezier(.2,.7,.2,1)}
body.storefront-foundation-v1 .catalog-v3-card:hover .catalog-v3-media img{transform:scale(1.025)}
body.storefront-foundation-v1 .catalog-v3-type,
body.storefront-foundation-v1 .catalog-v3-discount{position:absolute;top:9px;z-index:2;min-height:24px;display:inline-flex;align-items:center;padding:4px 7px;border:1px solid rgba(255,255,255,.55);border-radius:7px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);color:#20242c;font-size:9px;font-weight:720;text-transform:uppercase;letter-spacing:.05em}
body.storefront-foundation-v1 .catalog-v3-type{left:9px}
body.storefront-foundation-v1 .catalog-v3-discount{right:9px;background:rgba(229,9,20,.92);border-color:transparent;color:#fff}
html[data-theme="dark"] body.storefront-foundation-v1 .catalog-v3-type{background:rgba(21,24,30,.92);border-color:var(--ui-border);color:var(--ui-text)}
body.storefront-foundation-v1 .catalog-v3-card-body{padding:12px 13px 13px}
body.storefront-foundation-v1 .catalog-v3-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;color:var(--ui-muted);font-size:9px;font-weight:650;text-transform:uppercase;letter-spacing:.04em}
body.storefront-foundation-v1 .catalog-v3-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.storefront-foundation-v1 .catalog-v3-meta span:last-child{flex:0 0 auto;color:var(--ui-warning);letter-spacing:0}
body.storefront-foundation-v1 .catalog-v3-card h2{min-height:43px;margin:0;font-size:14px;line-height:1.52;font-weight:650;letter-spacing:-.012em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
body.storefront-foundation-v1 .catalog-v3-card h2 a{color:var(--ui-text);text-decoration:none}
body.storefront-foundation-v1 .catalog-v3-card-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:12px}
body.storefront-foundation-v1 .catalog-v3-price{min-width:0;display:flex;align-items:baseline;flex-wrap:wrap;gap:6px}
body.storefront-foundation-v1 .catalog-v3-price strong{color:var(--ui-text);font-size:16px;font-weight:740;letter-spacing:-.025em}
body.storefront-foundation-v1 .catalog-v3-price del{color:var(--ui-muted);font-size:10px}
body.storefront-foundation-v1 .catalog-v3-card-open{width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;border:1px solid var(--ui-border);border-radius:9px;background:var(--ui-surface-subtle);color:var(--ui-text-soft);text-decoration:none;transition:background var(--ui-transition),color var(--ui-transition),border-color var(--ui-transition)}
body.storefront-foundation-v1 .catalog-v3-card:hover .catalog-v3-card-open{border-color:var(--ui-primary);background:var(--ui-primary);color:#fff}

body.storefront-foundation-v1 .catalog-v3-pagination{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:24px}
body.storefront-foundation-v1 .catalog-v3-pagination a,
body.storefront-foundation-v1 .catalog-v3-pagination span{min-width:36px;height:36px;display:grid;place-items:center;padding:0 8px;border:1px solid var(--ui-border);border-radius:8px;background:var(--ui-surface);color:var(--ui-text-soft);text-decoration:none;font-size:12px;font-weight:630}
body.storefront-foundation-v1 .catalog-v3-pagination span{border-color:transparent;background:transparent;color:var(--ui-muted)}
body.storefront-foundation-v1 .catalog-v3-pagination a:hover{border-color:var(--ui-border-strong);color:var(--ui-text)}
body.storefront-foundation-v1 .catalog-v3-pagination a.is-active{border-color:var(--ui-primary);background:var(--ui-primary);color:#fff}
body.storefront-foundation-v1 .catalog-v3-page-arrow{font-size:20px!important;line-height:1}

body.storefront-foundation-v1 .catalog-v3-empty{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:38px;border:1px dashed var(--ui-border-strong);border-radius:var(--ui-radius-lg);background:var(--ui-surface);text-align:center}
body.storefront-foundation-v1 .catalog-v3-empty-page{margin:10px 0 30px}
body.storefront-foundation-v1 .catalog-v3-empty-icon{width:50px;height:50px;display:grid;place-items:center;margin-bottom:14px;border-radius:14px;background:var(--ui-surface-muted);color:var(--ui-muted)}
body.storefront-foundation-v1 .catalog-v3-empty h2{margin:0;color:var(--ui-text);font-size:20px;letter-spacing:-.02em}
body.storefront-foundation-v1 .catalog-v3-empty p{max-width:480px;margin:8px 0 18px;color:var(--ui-muted);font-size:13px;line-height:1.65}

@media(max-width:1060px){
  body.storefront-foundation-v1 .catalog-v3-layout{grid-template-columns:210px minmax(0,1fr);gap:14px}
  body.storefront-foundation-v1 .catalog-v3-grid{gap:11px}
}
@media(max-width:860px){
  body.storefront-foundation-v1.catalog-filter-open{overflow:hidden}
  body.storefront-foundation-v1 .catalog-v3-filter-trigger{display:inline-flex}
  body.storefront-foundation-v1 .catalog-v3-layout{display:block}
  body.storefront-foundation-v1 .catalog-v3-filter-panel{position:fixed;left:0;right:0;bottom:0;top:auto;z-index:92;max-height:min(76vh,620px);overflow:auto;border-radius:18px 18px 0 0;box-shadow:0 -20px 50px rgba(15,18,24,.16);transform:translateY(105%);visibility:hidden;transition:transform 220ms cubic-bezier(.2,.7,.2,1),visibility 220ms}
  body.storefront-foundation-v1.catalog-filter-open .catalog-v3-filter-panel{transform:translateY(0);visibility:visible}
  body.storefront-foundation-v1 .catalog-v3-filter-head{position:sticky;top:0;z-index:3;background:var(--ui-surface)}
  body.storefront-foundation-v1 .catalog-v3-filter-head button{display:grid;place-items:center}
  body.storefront-foundation-v1 .catalog-v3-filter-backdrop{position:fixed;inset:0;z-index:91;background:rgba(15,18,24,.48);backdrop-filter:blur(2px)}
  body.storefront-foundation-v1.catalog-filter-open .catalog-v3-filter-backdrop{display:block}
  body.storefront-foundation-v1 .catalog-v3-filter-group{padding:17px 18px}
  body.storefront-foundation-v1 .catalog-v3-filter-actions{position:sticky;bottom:0;padding:14px 18px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--ui-border);background:var(--ui-surface)}
  body.storefront-foundation-v1 .catalog-v3-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  body.storefront-foundation-v1 .catalog-v3-intro{align-items:flex-start;padding-top:18px}
  body.storefront-foundation-v1 .catalog-v3-count{display:none}
  body.storefront-foundation-v1 .catalog-v3-searchbar{grid-template-columns:minmax(0,1fr) auto;padding:8px}
  body.storefront-foundation-v1 .catalog-v3-search-submit{display:none}
  body.storefront-foundation-v1 .catalog-v3-filter-trigger{min-width:44px;padding:0 12px}
  body.storefront-foundation-v1 .catalog-v3-filter-trigger span{display:none}
  body.storefront-foundation-v1 .catalog-v3-toolbar{min-height:40px;margin-bottom:9px}
  body.storefront-foundation-v1 .catalog-v3-sort span{display:none}
  body.storefront-foundation-v1 .catalog-v3-sort select{max-width:145px}
  body.storefront-foundation-v1 .catalog-v3-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  body.storefront-foundation-v1 .catalog-v3-card-body{padding:10px}
  body.storefront-foundation-v1 .catalog-v3-card h2{min-height:40px;font-size:12.5px;line-height:1.55}
  body.storefront-foundation-v1 .catalog-v3-price strong{font-size:14px}
  body.storefront-foundation-v1 .catalog-v3-card-open{width:31px;height:31px;flex-basis:31px;border-radius:8px}
  body.storefront-foundation-v1 .catalog-v3-type,body.storefront-foundation-v1 .catalog-v3-discount{top:7px;min-height:21px;padding:3px 6px;font-size:8px}
  body.storefront-foundation-v1 .catalog-v3-type{left:7px} body.storefront-foundation-v1 .catalog-v3-discount{right:7px}
  body.storefront-foundation-v1 .catalog-v3-meta{font-size:8px}
}
@media(max-width:430px){
  body.storefront-foundation-v1 .catalog-v3{gap:14px}
  body.storefront-foundation-v1 .catalog-v3-intro h1{font-size:30px}
  body.storefront-foundation-v1 .catalog-v3-intro p{font-size:12.5px}
  body.storefront-foundation-v1 .catalog-v3-search{padding:0 10px}
  body.storefront-foundation-v1 .catalog-v3-categories a{min-height:36px;padding:6px 10px;font-size:11px}
  body.storefront-foundation-v1 .catalog-v3-toolbar p{font-size:10px}
  body.storefront-foundation-v1 .catalog-v3-pagination{gap:3px}
  body.storefront-foundation-v1 .catalog-v3-pagination a,body.storefront-foundation-v1 .catalog-v3-pagination span{min-width:33px;height:33px;padding:0 6px}
}
