/* styles/shop.css - shop panel (also provides .row/.dot/.info used by the options panel) */
#shopTabs { display:flex; gap:10px; margin-top:14px; }
#shop .tab { flex:1; background:#e3dccb; color:#3d362e; box-shadow:0 4px 0 rgba(0,0,0,.12); }
#shop .tab.on { background:#4a4238; color:#fff; }
#shop { position:fixed; inset:0; background:rgba(74,66,56,.45); display:flex; align-items:center; justify-content:center; z-index:5;
  padding:max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));
  touch-action:manipulation; -webkit-tap-highlight-color:transparent; user-select:none; -webkit-user-select:none; }
#shop .panel { background:#fffdf6; border-radius:28px; padding:clamp(18px, 3vw, 28px); width:min(680px, 100%);
  max-height:100%; overflow-y:auto; -webkit-overflow-scrolling:touch; box-shadow:0 12px 0 rgba(90,70,40,.2); }
#shop h2 { margin:0 0 6px; font-size:clamp(26px, 4vw, 36px); }
#shop p { margin:6px 0; font-size:clamp(17px, 2.4vw, 21px); line-height:1.35; color:#6b5f4d; }
#shopSay { font-style:italic; color:#3d362e !important; }
.row { display:flex; align-items:center; gap:clamp(12px, 2vw, 18px); background:#f6efdc; border-radius:18px;
  padding:clamp(10px, 1.6vw, 16px) clamp(12px, 2vw, 20px); margin-top:12px; }
.row .dot { width:clamp(28px, 4vw, 38px); height:clamp(28px, 4vw, 38px); border-radius:50%; flex:none; box-shadow:0 3px 0 rgba(0,0,0,.2); }
.row .info { flex:1; display:flex; flex-direction:column; gap:2px; min-width:0; }
.row b { font-size:clamp(19px, 2.8vw, 24px); }
.row small { font-size:clamp(15px, 2.1vw, 18px); line-height:1.3; color:#6b5f4d; }
#shop button { font:inherit; font-size:clamp(18px, 2.6vw, 22px); font-weight:800; border:0; border-radius:99px;
  min-height:56px; min-width:clamp(110px, 18vw, 140px); padding:12px 22px; background:#2e8049; color:#fff;
  box-shadow:0 4px 0 rgba(0,0,0,.2); cursor:pointer; white-space:nowrap; }
#shop button:active:not(:disabled) { transform:translateY(3px); box-shadow:0 1px 0 rgba(0,0,0,.2); }
#shop button:disabled { background:#e3dccb; color:#6b5f4d; box-shadow:none; cursor:not-allowed; }
#shop .close { margin-top:18px; min-height:64px; background:#8ecbcb; color:#17404c; width:100%; font-size:clamp(20px, 3vw, 24px); }
