.shop-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(160deg,#0f0f1a,#1a1a2e 40%,#16213e);color:#e0e0e0}.shop-topbar{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2.5rem;z-index:100}.shop-header-logo img{height:52px;filter:drop-shadow(0 2px 8px rgba(0,0,0,.4));transition:transform .25s ease}.shop-header-logo img:hover{transform:scale(1.04)}.shop-signin-btn{color:#fff;font-weight:600;font-size:.9rem;padding:.5rem 1.3rem;border-radius:10px;border:none;background:linear-gradient(135deg,#be2342,#e8445a);cursor:pointer;transition:all .3s ease;font-family:inherit}.shop-signin-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #be234266;background:linear-gradient(135deg,#d6284c,#f04878)}.shop-signin-btn:active{transform:translateY(0) scale(.97)}.shop-user-menu{position:relative}.shop-user-btn{display:flex;align-items:center;gap:.4rem;color:#fff;font-weight:600;font-size:.9rem;padding:.5rem 1.1rem;border-radius:10px;border:1px solid rgba(235,189,198,.25);background:#ebbdc61a;cursor:pointer;transition:all .25s ease;font-family:inherit}.shop-user-btn:hover{background:#ebbdc62e;border-color:#ebbdc666}.shop-user-name{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shop-user-arrow{font-size:.75rem;transition:transform .2s ease;opacity:.7}.shop-user-arrow.open{transform:rotate(180deg)}.shop-user-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:140px;background:linear-gradient(135deg,#1e1e34fa,#282841fa);backdrop-filter:blur(12px);border:1px solid rgba(235,189,198,.15);border-radius:10px;box-shadow:0 8px 24px #0006;padding:.35rem;z-index:200;animation:shopDropIn .15s ease}@keyframes shopDropIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.shop-dropdown-item{display:block;width:100%;padding:.6rem 1rem;color:#e0e0e0;font-size:.9rem;font-weight:500;font-family:inherit;background:none;border:none;border-radius:6px;cursor:pointer;text-align:left;transition:all .15s ease}.shop-dropdown-item:hover{background:#ebbdc61f;color:#fff}.shop-hero{text-align:center;padding:1rem 2rem 1.5rem}.shop-hero h1{font-size:2.8rem;font-weight:800;background:linear-gradient(135deg,#ff6b6b,#ebbdc6,#be2342);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.15rem;letter-spacing:-.02em}.shop-hero-subtitle{font-size:1.15rem;font-weight:500;color:#e0e0e08c;letter-spacing:.12em;text-transform:uppercase;margin:0}.shop-divider{width:90%;max-width:900px;height:1px;margin:.5rem auto 0;background:linear-gradient(90deg,transparent,rgba(235,189,198,.25),transparent)}.shop-section-title{text-align:center;font-size:1.3rem;font-weight:700;color:#ebbdc6d9;letter-spacing:.03em;margin:1.5rem 0 .5rem}.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.75rem;padding:1rem 2rem 4rem;max-width:1100px;margin:0 auto;width:100%}.shop-card{position:relative;background:linear-gradient(145deg,#1a1a32d9,#16213ed9);border:1px solid rgba(235,189,198,.12);border-radius:18px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;display:flex;flex-direction:column}.shop-card:hover{transform:translateY(-6px);box-shadow:0 16px 48px #be234226,0 0 0 1px #ebbdc633;border-color:#ebbdc640}.shop-card-img{position:relative;width:100%;aspect-ratio:5 / 3;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,rgba(190,35,66,.08) 0%,transparent 70%);overflow:hidden}.shop-card-img img{max-width:92%;max-height:92%;object-fit:contain;filter:drop-shadow(0 6px 18px rgba(0,0,0,.35));transition:transform .35s ease}.shop-card:hover .shop-card-img img{transform:scale(1.06)}.shop-card-body{padding:.75rem 1rem 1rem;flex:1;display:flex;flex-direction:column;gap:.35rem}.shop-card-title{font-size:1.15rem;font-weight:700;color:#fff;margin:0}.shop-card-desc{font-size:.88rem;color:#e0e0e099;line-height:1.55;margin:0;flex:1}.shop-mailing-checkbox{display:flex;align-items:flex-start;gap:.55rem;cursor:pointer;padding:.5rem .65rem;border-radius:10px;border:1px solid rgba(235,189,198,.12);background:#ffffff08;transition:all .2s ease;user-select:none}.shop-mailing-checkbox:hover{border-color:#ebbdc640;background:#ffffff0d}.shop-mailing-checkbox.checked{border-color:#66bb6a59;background:#66bb6a0f;cursor:default}.shop-mailing-checkbox.loading{opacity:.6;pointer-events:none}.shop-mailing-box{flex-shrink:0;width:18px;height:18px;border-radius:4px;border:2px solid rgba(235,189,198,.35);background:#ffffff0d;display:flex;align-items:center;justify-content:center;transition:all .2s ease;margin-top:1px}.shop-mailing-checkbox.checked .shop-mailing-box{background:#43a047;border-color:#43a047}.shop-mailing-box svg{width:12px;height:12px}.shop-mailing-text{font-size:.8rem;line-height:1.4;color:#e0e0e0b3}.shop-mailing-checkbox.checked .shop-mailing-text{color:#c8e6c9e6}.shop-card-btn{width:100%;padding:.7rem 1rem;font-size:.95rem;font-weight:700;color:#fff;border:none;border-radius:12px;cursor:pointer;font-family:inherit;text-transform:uppercase;letter-spacing:.06em;transition:all .25s ease;margin-top:.25rem}.shop-card-btn.free{background:linear-gradient(135deg,#43a047,#66bb6a)}.shop-card-btn.cooldown{background:linear-gradient(135deg,#3c3c50cc,#323246cc);color:#e0e0e0b3;font-size:.85rem;letter-spacing:.03em}.shop-card-btn:disabled{cursor:not-allowed;opacity:.85}.shop-card-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 18px #00000040;filter:brightness(1.1)}.shop-card-btn:active:not(:disabled){transform:translateY(0) scale(.97)}.shop-footer{margin-top:auto;padding:1.5rem 2rem;text-align:center;background:#0a0a1499;border-top:1px solid rgba(235,189,198,.08)}.shop-footer-links{display:flex;justify-content:center;gap:1.5rem;margin-bottom:.6rem;flex-wrap:wrap}.shop-footer-links a{color:#e0e0e099;font-size:.88rem;text-decoration:none;transition:color .2s ease}.shop-footer-links a:hover{color:#ebbdc6}.shop-copyright{color:#e0e0e066;font-size:.8rem;margin:0}@media(max-width:640px){.shop-topbar{padding:1rem 1.25rem}.shop-header-logo img{height:38px}.shop-hero{padding:.5rem 1.25rem 1rem}.shop-hero h1{font-size:2rem}.shop-hero-subtitle{font-size:.95rem}.shop-section-title{font-size:1.1rem}.shop-grid{grid-template-columns:1fr;padding:1rem 1.25rem 3rem}}
