/* Unified empty states: a quiet material study with one clear next step. */
.empty-state{--empty-ink:#142018;--empty-muted:#617066;--empty-green:#07551b;--empty-lime:#74d83c;display:grid;justify-items:center;gap:20px;width:min(100%,720px);margin-inline:auto;padding:clamp(28px,5vw,58px);border:1px solid #dce6da;border-radius:24px;background:linear-gradient(145deg,#fff 0%,#f3f7f1 100%);box-shadow:0 22px 65px rgba(18,48,27,.11);text-align:center;color:var(--empty-ink)}
.empty-state__art{display:grid;place-items:center;width:clamp(170px,32vw,236px);aspect-ratio:1.55;border-radius:18px;background:#e7eee4;box-shadow:inset 0 0 0 1px #d4e0d2,0 12px 25px rgba(18,48,27,.08)}
.empty-state__art svg{width:88%;height:auto;overflow:visible}.empty-state__art .panel-shadow{fill:#9aac9a;opacity:.38;filter:blur(3px)}.empty-state__art .panel-piece{fill:#fff;stroke:#07551b;stroke-width:2}.empty-state__art .panel-piece--lime{fill:#74d83c;stroke:#4d9e2a}.empty-state__art .panel-piece--soft{fill:#e4eee0;stroke:#80a47e}.empty-state__art .seam{stroke:#315c39;stroke-width:2;stroke-linecap:round;opacity:.7}.empty-state__art .bolt{fill:#07551b;opacity:.8}
.empty-state__kicker{display:block;color:var(--empty-green);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.empty-state h1,.empty-state h2{max-width:560px;margin:5px 0 0;color:var(--empty-ink);font-size:clamp(28px,4.5vw,46px);line-height:1.05;letter-spacing:-.035em}.empty-state p{max-width:560px;margin:0;color:var(--empty-muted);font-size:15px;line-height:1.65}.empty-state__actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:4px}.empty-state__actions .btn{min-height:48px}.empty-state__actions .btn.light{background:#fff;color:var(--empty-green);border:1px solid #cbdac9}
.empty-state--404{min-height:calc(100svh - 130px);width:100%;max-width:none;margin:0;border:0;border-radius:0;box-shadow:none;background:radial-gradient(circle at 50% 20%,#fafff7,#e9f0e7 72%);padding:clamp(44px,9vw,110px) 20px}.empty-state--404 .empty-state__art{width:clamp(190px,38vw,270px)}.empty-state--404 .empty-state__code{display:block;color:var(--empty-green);font-size:clamp(68px,12vw,124px);font-weight:900;line-height:.8;letter-spacing:-.08em}
.cart-empty,.favorites-empty,.empty-result{display:grid;justify-items:center;gap:18px;text-align:center}.cart-empty{grid-column:1/-1}.favorites-empty{padding:0;border:0;background:none}.empty-result{padding:clamp(28px,6vw,72px);border:1px solid #dce6da;background:linear-gradient(145deg,#fff,#f3f7f1)}.empty-result[hidden]{display:none}
.empty-state--compact{width:100%;padding:clamp(28px,4vw,44px);box-shadow:none}.empty-state--compact .empty-state__art{width:180px}.empty-state--compact h2{font-size:clamp(25px,3vw,36px)}.empty-state--compact p{font-size:14px}.empty-state--compact .empty-state__actions{margin-top:2px}
@media(max-width:560px){.empty-state{border-radius:20px;padding:30px 20px}.empty-state__art{width:190px}.empty-state p{font-size:14px}.empty-state__actions{display:grid;width:100%}.empty-state__actions .btn{width:100%}.empty-state--404{padding-inline:16px}.empty-state--compact{padding:28px 16px}}
@media(prefers-reduced-motion:no-preference){.empty-state__art svg{animation:empty-panel-in .55s cubic-bezier(.2,.8,.2,1) both}.empty-state__art .panel-piece:nth-of-type(2){animation:empty-piece-float 3.8s ease-in-out .55s infinite alternate}}
@keyframes empty-panel-in{from{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:none}}@keyframes empty-piece-float{from{transform:translateY(0)}to{transform:translateY(-3px)}}
