/* Shared fixed navigation: thumb-friendly, compact, and safe-area aware. */
body{padding-bottom:calc(78px + env(safe-area-inset-bottom,0px))}
.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:45;background:#fff;border-top:1px solid #eceaf1;display:flex;justify-content:center;gap:0;padding:7px 8px calc(7px + env(safe-area-inset-bottom,0px));box-shadow:0 -2px 15px #26153606}
.bottom-nav>a,.bottom-nav>button{flex:1 1 0;max-width:145px;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:0 2px;border:0;background:transparent;color:#777480;font-size:14px;line-height:1.4;text-decoration:none;min-height:58px}
.nav-icon{width:58px;height:34px;position:relative;border-radius:24px;display:flex;align-items:center;justify-content:center}
.nav-icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bottom-nav .active{color:var(--purple);font-weight:600}.bottom-nav .active .nav-icon{background:#f1e8fc}
.nav-cart-count{position:absolute;right:7px;top:-3px;background:#d51037;border-radius:20px;color:#fff;font-size:12px;line-height:18px;min-width:18px;padding:0 4px;font-weight:600}
.nav-cart-count[hidden],[hidden]{display:none!important}
.cart-fab{display:none!important}.cart-notice{bottom:calc(86px + env(safe-area-inset-bottom,0px));z-index:46}
footer{padding-bottom:24px}.catalog-popover{overscroll-behavior:contain}
.card{position:relative}.favorite-toggle{position:absolute;right:8px;top:8px;width:36px;height:36px;border:1px solid #eceaf1;background:#fffffff0;border-radius:50%;color:#292431;font:28px/1 Arial;display:flex;align-items:center;justify-content:center}
.favorite-toggle[aria-pressed=true],.detail-favorite[aria-pressed=true]{color:var(--purple);background:#f2eaff}
.detail-favorite{width:100%;margin-top:12px;border:0;border-radius:12px;background:#f5f1fb;color:#655774;padding:9px;font-size:16px}
.buyer-account{background:white;border-radius:16px;padding:30px;max-width:580px;margin:0 auto}
.buyer-account h1{margin-bottom:16px}.buyer-account h2{font-size:21px}.buyer-account p{overflow-wrap:anywhere}
.account-tabs{display:flex;gap:8px;margin:24px 0}.account-tabs button{flex:1;padding:11px 8px;border-radius:10px;border:1px solid var(--purple);color:var(--purple);background:#fff;font-size:15px}
.account-tabs .active{background:var(--purple);color:#fff}
.buyer-account label{display:block;margin:16px 0;font-size:15px}.buyer-account input:not([type=checkbox]){display:block;width:100%;min-width:0;padding:12px;border:1px solid #cec9d7;border-radius:9px;margin-top:6px;background:#fff;font-size:16px}
.buyer-account small{display:block;color:#777080;margin-top:6px;font-size:13px}
.buyer-account .buyer-consent{display:flex;align-items:flex-start;gap:10px;font-size:14px}.buyer-consent input{width:19px;height:19px;flex-shrink:0;accent-color:var(--purple);margin-top:2px}
.buyer-account .buy{min-height:44px;border-radius:11px}.text-button{display:block;margin:14px auto 0;padding:8px;border:0;background:none;color:var(--purple);font-size:14px;text-align:center}
#buyer-message{white-space:pre-wrap;font-size:15px;margin:18px 0;color:#58416e}#buyer-message.error{color:#b4223e}
.account-help{border-top:1px solid var(--border);padding-top:16px}.buyer-avatar{background:#f0e8ff;color:var(--purple);width:60px;height:60px;border-radius:50%;display:grid;place-items:center;font-size:27px;margin-top:22px}
.account-link{display:block;color:var(--purple);padding:20px 0}.secondary{border:1px solid var(--purple);border-radius:10px;background:white;color:var(--purple);padding:10px 22px}
#favorites-page{min-height:45vh}#favorites-status a{color:var(--purple);text-decoration:underline}
@media(max-width:600px){.bottom-nav>a,.bottom-nav>button{font-size:12px;min-height:55px}.bottom-nav{padding-left:2px;padding-right:2px}.nav-icon{width:52px}.buyer-account{padding:22px 16px}.account-tabs button{font-size:14px}.cart-dialog{bottom:calc(73px + env(safe-area-inset-bottom,0px));height:calc(100dvh - 73px - env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 73px - env(safe-area-inset-bottom,0px));margin:0;top:0}.cart-bottom{padding-bottom:18px}}
