/* Minimal wrapper; no header copy */
.puragain-vr { font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, Arial, 'Apple Color Emoji', 'Segoe UI Emoji'; color:#0a0a0a }
.puragain-vr__root { border:1px solid #e5e7eb; border-radius:16px; padding:16px; background:#fff }

.vr-card { display:block }
.vr-hero { font-size:20px; font-weight:600; margin-bottom:4px }
.vr-hero.small { font-size:18px }
.vr-sub { color:#555; margin:8px 0 12px }
.vr-actions { display:flex; gap:10px; flex-wrap:wrap; margin-top:6px }
.btn { border:1px solid #e5e7eb; background:#fff; padding:10px 14px; border-radius:14px; cursor:pointer }
.btn:hover { background:#f6f7f9 }
.btn-primary { background:#0369a1; color:#fff; border-color:#0369a1 }
.btn-primary:hover { background:#075985 }
.btn-success { background:#059669; color:#fff; border-color:#059669 }
.btn-success:hover { background:#047857 }
.btn-danger { background:#dc2626; color:#fff; border-color:#dc2626 }
.btn-danger:hover { background:#b91c1c }
.vr-tips-wrap { margin:12px 0 0; }
.vr-tips-title { font-weight:600; margin:2px 0 6px }
.vr-tips { margin:0; color:#555; padding-left:18px }
.vr-tips li { margin:4px 0 }
.vr-video-wrap { background:#000; width:100%; overflow:hidden; border-radius:12px; display:grid; place-items:center }
.vr-video-wrap.portrait { aspect-ratio: 9 / 16; }
.vr-video { width:100%; height:100%; object-fit:cover; background:#000 }
.vr-video.portrait { aspect-ratio: 9 / 16; }
.vr-timer { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace; }
.vr-row { display:flex; align-items:flex-start; justify-content:space-between; margin-top:10px; gap:10px; flex-wrap:wrap }
.vr-prompt-title { font-weight:600 }
.vr-prompt-text { color:#555 }
.vr-input { width:100%; padding:10px 12px; border:1px solid #e5e7eb; border-radius:12px; margin:4px 0 8px }
.vr-check { margin-right:8px }
.vr-check-label { display:flex; gap:10px; align-items:flex-start; color:#333; flex-wrap:wrap }
.vr-celebrate { font-size:32px }
.vr-confirm { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace; display:inline-block; padding:6px 10px; border-radius:10px; border:1px solid #e5e7eb; background:#f9fafb; margin:6px 0 }
.vr-error { background:#fef2f2; border:1px solid #fecaca; color:#991b1b; padding:10px 12px; border-radius:12px; margin-bottom:10px }
.vr-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (max-width:640px){ .vr-grid{grid-template-columns:1fr} }

/* Gallery styles remain */
section .puragain-gallery { display:grid !important; gap:16px }
.puragain-gallery { display:grid !important; gap:16px }
.puragain-gallery__item { min-width:0; background:var(--puragain-card-bg); border:var(--puragain-card-border); border-radius:12px; overflow:hidden }
.pg-video-frame { aspect-ratio: 9 / 16; width:100%; background:#000; display:grid; place-items:center }
.puragain-gallery video { width:100%; height:100%; object-fit:cover; border-radius:var(--puragain-video-radius); border:var(--puragain-video-border); background:#000; display:block }
.pg-cap { background: var(--puragain-author-bg); color: var(--puragain-author-text); padding:8px 10px }
.puragain-gallery.cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)) !important; }
.puragain-gallery.cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
.puragain-gallery.cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
.puragain-gallery.cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
@media (max-width:1024px){ .puragain-gallery.cols-4 { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; } }
@media (max-width:768px){ .puragain-gallery.cols-4, .puragain-gallery.cols-3 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width:540px){ .puragain-gallery[class*='cols-'] { grid-template-columns: repeat(1, minmax(0, 1fr)) !important; } }
.pg-name { font-weight:600 }
.pg-date { color: inherit; opacity:.8; font-size:12px }

/* Star Rating UI */
.vr-rating-row { display:flex; align-items:center; gap:.5rem; margin:.25rem 0 .75rem; }
.vr-rating-label { font-weight:600; }
.vr-stars { display:inline-flex; gap:.35rem; user-select:none; }
.vr-star { border:0; background:transparent; font-size:1.25rem; line-height:1; cursor:pointer; opacity:.6; }
.vr-star.active { color:#facc15; opacity:1; } /* yellow-ish */

/* Gallery Stars */
.pg-cap .pg-stars { font-size:1rem; color:#facc15; line-height:1; margin-bottom:.25rem; letter-spacing:.15rem; }

.puragain-bunny-embed {opacity: 0; transition: opacity 0.4s ease; }
.puragain-bunny-embed[src] { opacity: 1; }

.puragain-load-spinner .spinner { width: 40px; height: 40px; border: 4px solid #ddd; border-top-color: #2d6cb3; border-radius: 50%; animation: spin 0.8s linear infinite; margin: 0 auto; }

@keyframes spin { to { transform: rotate(360deg); } }

