/* RNS MERT V5: calm purple/black shop, 3D product response, promo and account surfaces */
nav a{white-space:nowrap}
.account-button{border:1px solid #4a4267;border-radius:10px;padding:10px 12px;background:linear-gradient(145deg,#171625,#0b0c13);color:#e9e6ff;font:inherit;font-size:.82rem;box-shadow:0 4px 0 #07080d,0 9px 20px #0004;cursor:pointer;white-space:nowrap;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.account-button:hover{transform:translateY(-2px);border-color:#9687ed;box-shadow:0 6px 0 #07080d,0 14px 26px #0006,0 0 18px #8d7bff20}
.account-button:active{transform:translateY(3px);box-shadow:0 1px 0 #07080d}
.coupon-section{padding-top:40px;padding-bottom:32px}
.coupon-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:22px}
.coupon-card{position:relative;overflow:hidden;border:1px solid #352f4e;border-radius:18px;padding:22px;background:linear-gradient(145deg,#171522,#0d0e16 72%);box-shadow:0 12px 28px #0004;transform-style:preserve-3d;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.coupon-card:before{content:"";position:absolute;inset:-2px;background:radial-gradient(circle at 10% 0%,#9b8cff18,transparent 42%);pointer-events:none}
.coupon-card:hover{transform:perspective(800px) translateY(-4px) rotateX(1deg);border-color:#8876d4;box-shadow:0 18px 38px #0006,0 0 25px #8b7aff12}
.coupon-label{display:inline-flex;align-items:center;padding:5px 9px;border-radius:6px;border:1px solid #4b416b;background:#191629;color:#c5baff;font-size:.68rem;font-weight:700;letter-spacing:.1em}
.coupon-code{display:inline-block;margin:16px 0 8px;padding:10px 15px;border:1px dashed #9b8cff;border-radius:10px;background:#100f1c;color:#e8e4ff;font-weight:800;font-size:1.3rem;letter-spacing:.12em}
.coupon-card h3{font-size:1.08rem;margin:5px 0 8px;color:#f4f3fb}.coupon-card p{color:#adaec0;font-size:.9rem;line-height:1.55;min-height:44px}.coupon-status{display:inline-block;margin:6px 0;color:#8de1ad;font-size:.8rem}.coupon-status.muted{color:#9b9caf}
.coupon-copy{display:inline-flex;align-items:center;justify-content:center;margin-top:10px;border:1px solid #65568f;background:linear-gradient(145deg,#2b2444,#171729);color:#e4deff;border-radius:10px;padding:10px 14px;font:inherit;font-size:.84rem;cursor:pointer;box-shadow:0 4px 0 #090911;transition:transform .16s ease,box-shadow .16s ease}
.coupon-copy:hover{transform:translateY(-2px);box-shadow:0 6px 0 #090911,0 10px 18px #0006}.coupon-copy:active{transform:translateY(2px);box-shadow:0 1px 0 #090911}
.coupon-footnote{margin-top:15px;font-size:.8rem;color:#8d8ea0}
.coupon-input-row{display:flex;gap:8px}.coupon-input-row input{flex:1;min-width:0}.coupon-input-row button{padding:10px 14px;border:1px solid #65568f;border-radius:10px;background:#201b33;color:#ebe7ff;cursor:pointer;white-space:nowrap}.coupon-apply-status{font-size:.85rem;color:#b9b0f3;min-height:1.3em;margin:0}
/* Fix the previous mismatch: JS sets --rns-rx / --rns-ry, so CSS consumes the same variables. */
.product{transform:perspective(1100px) translateY(var(--rns-lift,0px)) rotateX(var(--rns-rx,0deg)) rotateY(var(--rns-ry,0deg));transform-origin:center;will-change:transform;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;}
.product:hover{transform:perspective(1100px) translateY(-5px) rotateX(var(--rns-rx,0deg)) rotateY(var(--rns-ry,0deg)) scale(1.008)}
.product .art{overflow:hidden;isolation:isolate}.art:has(.product-cover){aspect-ratio:16/8!important;background:#080910}.product-cover{object-fit:cover!important;transition:transform .38s cubic-bezier(.2,.8,.2,1),filter .38s ease;transform:translateZ(8px) scale(1.001);filter:saturate(.95) contrast(1.02)}
.product:hover .product-cover{transform:translateZ(22px) scale(1.055);filter:saturate(1.09) contrast(1.05)}
.product.touch-active{transform:perspective(950px) translateY(-3px) rotateX(var(--rns-rx,2deg)) rotateY(var(--rns-ry,-1deg)) scale(1.012);border-color:#9c8cff;box-shadow:0 17px 34px #0007,0 0 24px #8b7aff20}
.product.touch-active .product-cover{transform:translateZ(22px) scale(1.045);filter:saturate(1.08)}
.auth-modal[hidden]{display:none!important}.auth-panel [hidden]{display:none!important}.auth-modal{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:18px}
.auth-backdrop{position:absolute;inset:0;background:#05050cdd;backdrop-filter:blur(9px);animation:authFade .18s ease both}
.auth-panel{position:relative;width:min(560px,100%);max-height:92vh;overflow:auto;padding:28px;border:1px solid #514679;border-radius:22px;background:radial-gradient(ellipse at top right,#25203b,#101018 50%,#0b0c12);color:#f5f3ff;box-shadow:0 26px 90px #000c,0 0 44px #8d7bff16;animation:authRise .35s cubic-bezier(.2,.8,.2,1) both}
.auth-panel h2{font-size:1.65rem;margin:9px 45px 8px 0}.auth-subtitle{color:#aeafc4;margin:0 0 18px;font-size:.92rem;line-height:1.5}.auth-close{position:absolute;right:17px;top:16px;width:38px;height:38px;border:1px solid #3b3650;border-radius:10px;background:#171621;color:#fff;font-size:24px;cursor:pointer}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;background:#080911;border:1px solid #2c2940;border-radius:12px;margin:16px 0}.auth-tabs button{padding:10px;border:0;border-radius:8px;background:transparent;color:#b8b8ca;cursor:pointer;font:inherit}.auth-tabs button.active{background:linear-gradient(135deg,#342b50,#1b1a2a);color:#f0eaff;box-shadow:0 2px 11px #0005}
.auth-status{padding:10px 12px;border:1px solid #3d3557;border-radius:10px;background:#151421;color:#d0c8ff;font-size:.85rem;line-height:1.45;margin:12px 0}.auth-status.is-error{border-color:#693d50;background:#21131b;color:#ffbec8}
.auth-panel form{display:grid;gap:12px}.auth-panel label{display:grid;gap:6px;font-size:.85rem;color:#d0cee0}.auth-panel input{width:100%;min-width:0;padding:12px 13px;border:1px solid #353249;border-radius:10px;background:#08090f;color:#f5f3ff;font:inherit;box-sizing:border-box}.auth-panel input:focus{outline:2px solid #8f7be8;outline-offset:1px}.auth-submit{width:100%;justify-content:center;cursor:pointer}.auth-submit:disabled{opacity:.6;cursor:wait}.auth-text-button{justify-self:center;border:0;background:transparent;color:#bbb0ff;text-decoration:underline;cursor:pointer;padding:6px}
.auth-separator{display:flex;align-items:center;gap:12px;margin:16px 0;color:#87879b;font-size:.8rem}.auth-separator:before,.auth-separator:after{content:"";height:1px;background:#302b43;flex:1}
.auth-social-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.auth-provider{display:flex;align-items:center;justify-content:center;gap:9px;min-height:42px;padding:10px 12px;border:1px solid #36324b;border-radius:10px;background:linear-gradient(145deg,#171622,#0c0d14);color:#e6e4f5;font:inherit;font-size:.85rem;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease}.auth-provider:hover{transform:translateY(-2px);border-color:#8d7ce0;background:#1b1830}.auth-provider b{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:7px;background:#28223d;color:#d9d0ff;font-size:1rem}
.auth-phone{margin-top:18px;padding-top:17px;border-top:1px solid #302b43}.auth-phone h3{font-size:1rem;margin:0 0 12px}.auth-phone>label{margin-bottom:10px}#authRecaptchaContainer{margin:9px 0;max-width:100%;overflow:hidden}#authPhoneCodeWrap{display:grid;gap:10px;margin-top:12px}.auth-config-note{font-size:.77rem;line-height:1.5;color:#85869a;margin:16px 0 0}.auth-account-card{display:flex;gap:12px;align-items:center;border:1px solid #39334f;border-radius:14px;background:#11111c;padding:15px;margin:14px 0}.auth-account-mark{display:grid;place-items:center;flex:none;width:48px;height:48px;border:1px solid #62538e;border-radius:13px;background:#19152b;color:#e6ddff;font-weight:900}.auth-account-card p{font-size:.85rem;color:#a8a8ba;margin:4px 0 0;overflow-wrap:anywhere}.auth-account-card #authUserStatus{color:#8de1ad}.auth-account-area .auth-provider{width:100%}
@keyframes authFade{from{opacity:0}to{opacity:1}}@keyframes authRise{from{opacity:0;transform:perspective(1000px) translateY(18px) rotateX(-4deg) scale(.98)}to{opacity:1;transform:perspective(1000px) translateY(0) rotateX(0) scale(1)}}
@media(max-width:900px){.coupon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}header{gap:10px}nav{gap:10px}}
@media(max-width:720px){.coupon-grid{grid-template-columns:1fr}.coupon-card p{min-height:0}.account-button{padding:8px 9px;font-size:.72rem}.auth-panel{padding:22px 17px;max-height:94vh}.auth-social-grid{grid-template-columns:1fr}.coupon-input-row{flex-direction:column}.coupon-input-row button{min-height:42px}header .actions{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.product,.product:hover,.product.touch-active,.coupon-card,.coupon-card:hover,.account-button,.auth-provider,.coupon-copy,.auth-panel,.auth-backdrop{transform:none;transition:none;animation:none;will-change:auto}.product-cover,.product:hover .product-cover,.product.touch-active .product-cover{transform:none;filter:none}}
