/* TTB PA-API Grid styles */
.ttb-pg-card {
  border: 1px solid #e5e7eb; border-radius: 12px; overflow: hidden;
  display: flex; flex-direction: column; background: #fff;
}
.ttb-pg-imgwrap { display:block; aspect-ratio: 1/1; background:#fafafa; position:relative; }
.ttb-pg-imgwrap img { width:100%; height:100%; object-fit:contain; }
.ttb-pg-imgph { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; color:#9ca3af; font-size:12px; }
.ttb-pg-body { padding:12px; display:flex; flex-direction:column; gap:8px; flex:1; }
.ttb-pg-title { font-size:14px; line-height:1.35; font-weight:600; min-height:2.6em; overflow:hidden; }
.ttb-pg-title a { color:inherit; text-decoration:none; }
.ttb-pg-price { font-size:16px; font-weight:700; }
.ttb-pg-meta { margin:4px 0 8px; padding:0; list-style:none; }
.ttb-pg-meta li { font-size:13px; color:#374151; display:flex; gap:6px; }
.ttb-pg-meta li span { color:#6b7280; min-width:90px; }
.ttb-pg-cta { margin-top:auto; }
.ttb-pg-btn { display:inline-block; width:100%; padding:10px 12px; border-radius:8px; background:#111827; color:#fff; text-decoration:none; text-align:center; }
.ttb-pg-note { margin-top:8px; padding:8px; border-radius:8px; }
.ttb-pg-warn { color:#b45309; background:#fffbeb; border:1px solid #f59e0b; }
.ttb-pg-err { color:#9b1c1c; background:#fef2f2; border:1px solid #fecaca; }
