/* Base styles + CTA buttons + futuristic scrollbars */
#fastrig-pcbuilder-root { font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, 'Helvetica Neue', Arial, sans-serif; color:#e5e7eb; }
a { color:#22c55e; }
.fr-wrap { display:flex; gap:1rem; align-items:flex-start; }
.fr-grid { display:grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap:1rem; flex:1; }
@media (max-width: 1200px){ .fr-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 800px){ .fr-grid{ grid-template-columns: repeat(1, minmax(0,1fr)); } .fr-summary{ width:100%; position:static; } }
.fr-summary { width:360px; background:#0b0f0e; border:1px solid #1f2937; border-radius:16px; padding:16px; position:sticky; top:16px; }
.fr-section { background:#0b0f0e; border:1px solid #1f2937; border-radius:16px; padding:12px; }
.fr-section-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:8px; }
.fr-cards { display:grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap:10px; max-height:420px; overflow:auto; padding-right:4px; }
.fr-card { background:#0f1413; border:1px solid #1f2937; border-radius:12px; display:flex; flex-direction:column; cursor:pointer; }
.fr-card:hover { border-color:#22c55e; }
.fr-selected { box-shadow: 0 0 0 2px #22c55e inset, 0 0 10px rgba(34,197,94,.3); }
.fr-card img { width:100%; height:120px; object-fit:contain; background:#0b0f0e; border-top-left-radius:12px; border-top-right-radius:12px; }
.fr-img-placeholder { height:120px; display:flex; align-items:center; justify-content:center; color:#6b7280; }
.fr-card-body { padding:10px; display:flex; flex-direction:column; gap:6px; }
.fr-card-title { font-size:12px; height:2.4em; overflow:hidden; }
.fr-card-price { font-size:13px; color:#a7f3d0; min-height:1.2em; }
.fr-row { display:flex; justify-content:space-between; padding:4px 0; border-bottom:1px dashed #1f2937; }
.fr-row:last-child { border-bottom:none; }
.fr-actions { display:flex; flex-wrap:wrap; gap:8px; margin:10px 0 12px; }
.fr-btn { background:#111827; border:1px solid #374151; color:#e5e7eb; border-radius:10px; padding:8px 12px; cursor:pointer; }
.fr-btn:hover { border-color:#22c55e; }
.fr-primary { background:#16a34a; border-color:#16a34a; color:#02160c; font-weight:600; }
.fr-primary:hover { filter:brightness(1.05); }
.fr-status { padding:6px 10px; border-radius:999px; display:inline-block; font-weight:600; }
.fr-status.ok { background:#052e1b; color:#bbf7d0; border:1px solid #14532d; }
.fr-status.bad { background:#3a0e0e; color:#fecaca; border:1px solid #7f1d1d; }
/* Futuristic scrollbars */
.fr-cards, .fr-summary, .fr-section .fr-search { scrollbar-width: thin; scrollbar-color: #22c55e #0a0f0e; }
.fr-cards::-webkit-scrollbar, .fr-summary::-webkit-scrollbar, .fr-section .fr-search::-webkit-scrollbar { width:10px; height:10px; }
.fr-cards::-webkit-scrollbar-track, .fr-summary::-webkit-scrollbar-track, .fr-section .fr-search::-webkit-scrollbar-track {
  background: linear-gradient(180deg, #0a0f0e 0%, #0e1513 100%);
  border-radius: 999px; box-shadow: inset 0 0 4px rgba(0,0,0,.6); border: 1px solid #1f2937;
}
.fr-cards::-webkit-scrollbar-thumb, .fr-summary::-webkit-scrollbar-thumb, .fr-section .fr-search::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: linear-gradient(180deg, #22c55e 0%, #16a34a 60%, #f59e0b 100%);
  box-shadow: 0 0 8px rgba(34,197,94,.6), inset 0 0 6px rgba(0,0,0,.35);
  border: 1px solid rgba(34,197,94,.65);
}
.fr-cards::-webkit-scrollbar-thumb:hover, .fr-summary::-webkit-scrollbar-thumb:hover, .fr-section .fr-search::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, #34d399 0%, #22c55e 60%, #fbbf24 100%);
  box-shadow: 0 0 12px rgba(34,197,94,.9), 0 0 18px rgba(245,158,11,.35);
}
