/* PackIA store-only styles (shared PVT stylesheet untouched).
   Uses the main site's theme variables, so light and dark themes match
   PVT, and adds the responsive rules the store was missing. */
.store-nav{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);padding:.6rem 0}
.store-nav .container{display:flex;flex-wrap:wrap;gap:.4rem 1rem}
.store-nav a{color:var(--text-primary);text-decoration:none;font-weight:600;white-space:nowrap}
.store-nav a:hover{text-decoration:underline}
.store-main{padding:1.5rem 0 3rem}
.store-main .hero{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-md);margin-bottom:1.5rem}
.store-main .hero h1{margin-top:0}
.store-main .pack-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}
.store-main .pack-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1rem;background:var(--bg-card);box-shadow:var(--shadow-md);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.store-main .pack-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-glow);border-color:var(--brand-primary)}
.store-main .pack-card h3{margin-top:0}
.store-main .pack-price{font-size:1.4rem;font-weight:700;color:var(--brand-primary)}
.store-main .btn{display:inline-block;padding:.65rem 1.2rem;border-radius:10px;background:var(--brand-gradient);color:#fff;text-decoration:none;font-weight:700;box-shadow:var(--shadow-md);transition:filter .15s ease,transform .15s ease}
.store-main .btn:hover{filter:brightness(1.1);transform:translateY(-1px)}
.store-main .btn-ghost{background:transparent;border:1px solid var(--border-color);color:var(--text-primary);box-shadow:none}
.store-main .lead{font-size:1.15rem;color:var(--text-secondary)}
.store-main .store-note{border-left:4px solid #f59e0b;padding:.5rem 1rem;background:var(--bg-tertiary)}
.store-main label{display:block;margin:.5rem 0}
.store-main input,.store-main select,.store-main textarea{width:100%;max-width:520px;padding:.5rem;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-input);color:var(--text-primary);box-sizing:border-box}
.store-main table{border-collapse:collapse;width:100%;display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
.store-main th,.store-main td{border:1px solid var(--border-color);padding:.4rem .6rem;text-align:left;white-space:nowrap}
.store-main th{background:var(--bg-tertiary)}
.store-main .plan-list{list-style:none;padding:0;max-height:480px;overflow:auto}
.store-main .plan-list li{padding:.25rem 0}
.store-main .plan-list label{display:flex;gap:.5rem;align-items:baseline}
.store-main .plan-list input{width:auto}
.store-main blockquote{border-left:4px solid var(--brand-primary);padding:.5rem 1rem;white-space:pre-wrap;background:var(--bg-tertiary)}
@media (max-width:768px){
  .store-main{padding:1rem 0 2rem}
  .store-main .hero{padding:1rem}
  .store-main .pack-grid{grid-template-columns:1fr}
  .store-main .pack-price{font-size:1.2rem}
  .store-nav .container{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:.25rem}
  .store-main table{font-size:.9rem}
}
@media (max-width:480px){
  .store-main .hero .btn{display:block;text-align:center;margin:.3rem 0}
  .store-main .pack-card{padding:.85rem}
}
