.page-state{display:flex;min-height:360px;align-items:center;justify-content:center;flex-direction:column;padding:40px 20px;text-align:center;background:#fffaf6;color:#2d211b}.page-state-illustration{width:220px;height:124px;margin-bottom:-10px;object-fit:contain}.page-state-icon{display:grid;place-items:center;width:42px;height:42px;margin-bottom:12px;border-radius:50%;color:var(--color-primary);background:#fff0e5;font-size:19px}.page-state-icon.loading i{animation:page-state-spin .9s linear infinite}.page-state-icon.error{color:#c94b3f;background:#fff0ed}.page-state h1{margin:0 0 8px;font:800 24px var(--font-heading)}.page-state p{max-width:420px;margin:0 0 18px;color:var(--color-text-secondary);font-size:14px;line-height:1.6}.page-state-actions{display:flex;justify-content:center;gap:8px}.page-state-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 14px;border:1px solid var(--color-primary);border-radius:5px;color:#fff;background:var(--color-primary);font:700 13px var(--font-body);text-decoration:none}.page-state-button.secondary{color:var(--color-primary);background:#fff}.page-state-small{min-height:250px;padding:24px 16px}.page-state-small .page-state-illustration{width:160px;height:90px}.page-state-left{align-items:flex-start;text-align:left}.page-state-left .page-state-actions{justify-content:flex-start}@keyframes page-state-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.page-state-icon.loading i{animation:none}}@media(max-width:480px){.page-state{min-height:300px;padding:28px 16px}.page-state-illustration{width:190px;height:107px}.page-state-actions{flex-wrap:wrap}.page-state-button{min-width:145px}}
.page-state-error{background:linear-gradient(180deg,#fffaf6,#fff);}.page-state-error-actions{display:flex;align-items:center;justify-content:center;gap:10px;padding:5px;border:1px solid #f0e3dc;border-radius:12px;background:#fff;box-shadow:0 8px 22px rgba(76,45,28,.08)}.page-state-error-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:0 15px;border:0;border-radius:8px;color:#fff;background:var(--color-primary);font:700 14px var(--font-body);cursor:pointer}.page-state-error-actions button.secondary{color:var(--color-primary);background:#fff7f1}.page-state-error-actions button:hover{filter:brightness(.96);transform:translateY(-1px)}
.page-state-error-actions button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media(max-width:480px){.page-state-error-actions{width:min(100%,320px);flex-direction:column}.page-state-error-actions button{width:100%}}
.page-state-error .page-state-icon.error{color:#d87922;background:#fff3df}.page-state-error h1{color:#34271f}.page-state-error-actions{border-color:#f4d8c5;background:#fffdfb;box-shadow:0 8px 22px rgba(76,45,28,.06)}
.page-state-error{width:100%;min-height:clamp(360px,calc(100vh - 220px),560px);box-sizing:border-box;margin-inline:auto}
.empty-cart,.search-empty,.listing-empty,.discovery-empty,.intent-empty,.public-seller-empty,.guides-empty,.explore-empty{display:flex;min-height:260px;align-items:center;justify-content:center;flex-direction:column;padding:28px 20px;border:1px solid #eadbd2;border-radius:8px;background:#fffaf6;text-align:center}.empty-cart::before,.search-empty::before,.listing-empty::before,.discovery-empty::before,.intent-empty::before,.public-seller-empty::before,.guides-empty::before,.explore-empty::before{width:180px;height:101px;margin-bottom:4px;background:url('/empty-state-illustration.svg') center/contain no-repeat;content:''}.empty-cart h2,.search-empty h2,.listing-empty h2,.discovery-empty h2,.intent-empty h2,.public-seller-empty h2,.guides-empty h2,.explore-empty h2{font:800 20px var(--font-heading)}.empty-cart p,.search-empty p,.listing-empty p,.discovery-empty p,.intent-empty p,.public-seller-empty p,.guides-empty p,.explore-empty p{max-width:360px;color:var(--color-text-secondary);font-size:14px;line-height:1.6}.empty-cart button,.search-empty button,.listing-empty button,.discovery-empty button,.intent-empty button,.public-seller-empty a,.guides-empty button,.explore-empty button{padding:9px 14px;border:1px solid var(--color-primary);border-radius:5px;color:#fff;background:var(--color-primary);font-size:13px;font-weight:700;text-decoration:none}
