:root{--bg: #faf8f5;--ink: #1c1a17;--muted: #8a8378;--line: #e6e1d8;--card: #ffffff;--accent: #1c1a17;--offer: #9a6a3c;--radius: 4px;--maxw: 1200px;--serif: "Cormorant Garamond", Georgia, "Times New Roman", serif;--sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}.masthead{text-align:center;padding:72px 24px 40px;border-bottom:1px solid var(--line)}.masthead .name{font-family:var(--serif);font-size:clamp(48px,9vw,92px);font-weight:500;letter-spacing:.02em;line-height:1;margin:0}.masthead .tagline{margin:16px 0 0;color:var(--muted);font-size:15px;letter-spacing:.14em;text-transform:uppercase}.masthead .count{margin:8px 0 0;color:var(--muted);font-size:13px}.toolbar{display:flex;flex-direction:column;gap:14px;padding-top:28px}.filter-group{display:flex;align-items:baseline;gap:14px}.filter-label{flex:0 0 84px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.controls-right{display:flex;flex-wrap:wrap;gap:20px;padding-top:4px}.filters{display:flex;flex-wrap:wrap;gap:8px}.chip{font-family:var(--sans);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:transparent;border:1px solid var(--line);border-radius:999px;padding:6px 14px;cursor:pointer;transition:all .15s ease}.chip:hover{color:var(--ink);border-color:var(--ink)}.chip.active{color:var(--bg);background:var(--ink);border-color:var(--ink)}.sort{display:flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.sort select{font-family:var(--sans);font-size:12px;color:var(--ink);background:transparent;border:1px solid var(--line);border-radius:999px;padding:6px 12px;cursor:pointer}.shelf-empty{color:var(--muted);font-size:13px;font-style:italic}.storefront-empty{text-align:center;padding:80px 24px 96px;color:var(--muted)}.storefront-empty .big{font-family:var(--serif);font-size:32px;color:var(--ink);margin:0 0 12px}.storefront-empty code{background:#efeae1;padding:2px 7px;border-radius:4px;font-size:.92em;color:var(--ink)}.shelf{padding:56px 0 8px}.shelf-head{display:flex;align-items:baseline;gap:14px;margin-bottom:28px}.shelf-head h2{font-family:var(--serif);font-size:34px;font-weight:500;margin:0;letter-spacing:.01em}.shelf-head .n{color:var(--muted);font-size:13px;letter-spacing:.08em}.shelf-head .rule{flex:1;height:1px;background:var(--line)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:28px 24px}.card{display:flex;flex-direction:column;text-decoration:none;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}.card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #1c1a171a}.card .thumb{position:relative;aspect-ratio:3 / 4;background:#efeae1;overflow:hidden}.size-badge{position:absolute;top:10px;left:10px;background:#1c1a17d1;color:#faf8f5;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:999px;backdrop-filter:blur(2px)}.card .thumb img{width:100%;height:100%;object-fit:cover;display:block}.card .thumb.empty{display:flex;align-items:center;justify-content:center;color:var(--muted);font-family:var(--serif);font-size:28px}.card .body{padding:14px 14px 16px;display:flex;flex-direction:column;gap:8px;flex:1}.card .title{font-size:14px;line-height:1.4;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.price-row{display:flex;align-items:baseline;gap:8px;margin-top:auto}.price-row .list{font-size:15px;font-weight:600}.price-row .list.struck{font-weight:400;color:var(--muted);text-decoration:line-through}.price-row .offer{font-size:15px;font-weight:600;color:var(--offer)}.tags{display:flex;flex-wrap:wrap;gap:6px}.tags .tag{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:2px 8px}.card .source{font-size:11px;color:var(--muted);letter-spacing:.04em}.foot{margin-top:72px;padding:32px 24px 56px;border-top:1px solid var(--line);text-align:center;color:var(--muted);font-size:12px;letter-spacing:.08em}
