.shop{padding:calc(var(--sp-8) + 64px) 0 var(--sp-16)}.shop__head{text-align:center;max-width:720px;margin:0 auto var(--sp-10)}.shop__title{font-size:48px;letter-spacing:-.025em;margin:var(--sp-3) 0 var(--sp-4);color:var(--fg-1)}.shop__lead{color:var(--fg-2);font-size:var(--fs-lead)}.shop__gate{max-width:440px;margin:0 auto;background:var(--bg-1);border:1px solid var(--border-1);border-radius:var(--r-md);padding:var(--sp-8);box-shadow:var(--sh-card)}.shop__gate-form{display:flex;flex-direction:column;gap:var(--sp-4)}.shop__gate-label{font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-2)}.shop__gate-input{background:var(--bg-0);border:1px solid var(--border-2);border-radius:var(--r-sm);padding:var(--sp-3) var(--sp-4);color:var(--fg-1);font-size:18px;font-family:var(--font-mono)}.shop__gate-input:focus{outline:0;border-color:var(--mc-aqua);box-shadow:0 0 0 3px rgba(85,255,255,.2)}.shop__gate-fine{color:var(--fg-2);font-size:12px;text-align:center;margin:0}.shop__bar{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-4);padding:var(--sp-3) var(--sp-4);background:var(--bg-1);border:1px solid var(--border-1);border-radius:var(--r-md);margin-bottom:var(--sp-5);flex-wrap:wrap}.shop__who{color:var(--fg-2);font-size:14px}.shop__who b{color:var(--fg-1)}.shop__who-switch{background:transparent;border:0;color:var(--mc-aqua);margin-left:var(--sp-3);cursor:pointer;font-size:13px;text-decoration:underline}.shop__cart{display:flex;align-items:center;gap:var(--sp-3);color:var(--fg-2);font-size:14px}.shop__cart-total{font-family:var(--font-mono);color:var(--fg-1)}.shop__tabs{display:flex;gap:var(--sp-1);border-bottom:1px solid var(--border-1);margin-bottom:var(--sp-5);flex-wrap:wrap}.shop__tab{background:transparent;border:0;padding:var(--sp-3) var(--sp-4);color:var(--fg-2);font-size:14px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}.shop__tab:hover{color:var(--fg-1)}.shop__tab--active{color:var(--fg-1);border-bottom-color:var(--mc-aqua)}.shop__grid{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-4)}.pkg{flex:0 1 300px;display:flex;flex-direction:column;background:var(--bg-1);border:1px solid var(--border-1);border-radius:var(--r-md);overflow:hidden;transition:border-color .15s,transform .15s}.pkg:hover{border-color:var(--mc-aqua);transform:translateY(-2px)}.pkg__img{width:100%;height:140px;-o-object-fit:cover;object-fit:cover;background:var(--bg-2)}.pkg__body{padding:var(--sp-5) var(--sp-4);flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--sp-3)}.pkg__name{margin:0;font-size:20px;color:var(--fg-1);letter-spacing:-.01em}.pkg__desc{color:var(--fg-2);font-size:13px;line-height:1.55;width:100%}.pkg__desc p{margin:0 0 var(--sp-2)}.pkg__desc p:last-child{margin:0}.pkg__desc ol,.pkg__desc ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px;text-align:left;max-width:240px;margin-inline:auto}.pkg__desc li{position:relative;padding-left:18px;color:var(--fg-2)}.pkg__desc li:before{content:"";position:absolute;left:0;top:8px;width:8px;height:8px;background:var(--mc-aqua);box-shadow:0 0 6px rgba(85,255,255,.6)}.pkg__desc b,.pkg__desc strong{color:var(--fg-1);font-weight:600}.pkg__desc em,.pkg__desc i{color:var(--mc-aqua);font-style:normal}.pkg__desc a{color:var(--mc-aqua);text-decoration:underline;text-underline-offset:3px}.pkg__desc h1,.pkg__desc h2,.pkg__desc h3,.pkg__desc h4{margin:var(--sp-2) 0;color:var(--fg-1);font-size:14px;letter-spacing:.06em;text-transform:uppercase}.pkg__desc img{max-width:100%;height:auto;display:block;margin:0 auto}.pkg__desc hr{border:0;margin:var(--sp-3) 0}.pkg__desc hr,.pkg__foot{border-top:1px solid var(--border-1)}.pkg__foot{display:flex;justify-content:space-between;align-items:center;padding:var(--sp-3) var(--sp-4);background:var(--bg-0)}.pkg__price{font-family:var(--font-mono);color:var(--fg-1);font-size:16px}.shop__error{background:rgba(255,80,80,.1);border:1px solid rgba(255,80,80,.4);color:#ffb0b0;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-sm);margin-bottom:var(--sp-4);font-size:14px}.shop__empty{text-align:center;color:var(--fg-2);padding:var(--sp-12) 0}.shop__empty a{color:var(--mc-aqua)}@media (max-width:600px){.shop__title{font-size:36px}.shop__bar{flex-direction:column;align-items:stretch}.shop__cart{justify-content:space-between}}