:root{--background:#0a0a0b;--foreground:#f0f0f1;--card-bg:#19191cb3;--accent-blue:#3b82f6;--accent-red:#ef4444;--accent-gold:#fbbf24;--border:#ffffff1a;--glass:#ffffff0d;--transition:all .3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{color:var(--foreground);background:var(--background);min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow-x:hidden}h1,h2,h3{letter-spacing:-.02em;font-family:Outfit,sans-serif;font-weight:700}.premium-container{max-width:1400px;margin:0 auto;padding:2rem}.frosted-glass{background:var(--glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:1rem}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;padding:2rem 0;display:grid}.photo-card{aspect-ratio:16/10;background:var(--card-bg);border:1px solid var(--border);transition:var(--transition);border-radius:1rem;position:relative;overflow:hidden}.photo-card:hover{border-color:#fff3;transform:translateY(-4px);box-shadow:0 12px 24px #0006}.photo-card img,.photo-card video{object-fit:cover;width:100%;height:100%}.photo-card-container{flex-direction:column;display:flex}.swipe-label{color:#888;margin-bottom:.75rem;font-size:.85rem;font-weight:500}.vote-controls{gap:1rem;margin-top:1rem;display:flex}.vote-btn{text-shadow:0 1px 2px #00000080;flex:1;justify-content:center;font-size:1rem;font-weight:700;box-shadow:0 4px 6px #0003;color:#fff!important;background:#ffffff1a!important;border:1px solid #fff3!important;padding:1rem!important}.vote-btn:hover{transform:translateY(-2px);box-shadow:0 6px 12px #0000004d;background:#ffffff26!important}.vote-btn.liked{background:var(--accent-blue)!important;border-color:var(--accent-blue)!important;color:#fff!important}.vote-btn.disliked{background:var(--accent-red)!important;border-color:var(--accent-red)!important;color:#fff!important}.vote-overlay{opacity:0;transition:var(--transition);background:linear-gradient(#0000,#000c);justify-content:center;gap:1rem;padding:1rem;display:flex;position:absolute;bottom:0;left:0;right:0}.photo-card:hover .vote-overlay{opacity:1}.btn{cursor:pointer;transition:var(--transition);border:none;border-radius:.5rem;align-items:center;gap:.5rem;padding:.6rem 1.2rem;font-weight:600;display:flex}.btn-primary{background:var(--accent-blue);color:#fff}.btn-danger{background:var(--accent-red);color:#fff}.progress-badge{border:1px solid var(--border);color:var(--accent-gold);background:#ffffff1a;border-radius:2rem;padding:.4rem .8rem;font-size:.8rem;font-weight:600}.header{text-align:center;background:radial-gradient(circle,#3b82f61a 0%,#0000 70%);padding:4rem 0}.title{background:linear-gradient(135deg,#fff 0%,#888 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:1rem;font-size:4rem}.subtitle{color:#888;max-width:600px;margin:0 auto;font-size:1.2rem}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--background)}::-webkit-scrollbar-thumb{background:#333;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#444}@media (max-width:768px){.premium-container{padding:1rem}.title{font-size:2.5rem}.subtitle{font-size:1rem}.gallery-grid{scroll-snap-type:y mandatory;grid-template-columns:1fr;gap:0;height:calc(100vh - 120px);margin-top:1rem;padding:0;overflow-y:scroll}.photo-card-container{scroll-snap-align:center;flex-direction:column;justify-content:center;height:calc(100vh - 140px);padding:1.5rem 0;display:flex}.swipe-label{text-align:center;color:var(--accent-gold);margin-bottom:1rem;font-size:1rem}.photo-card{aspect-ratio:auto;border-radius:1.5rem;width:100%;max-height:55vh}.photo-card img,.photo-card video{object-fit:contain;background:#000}.vote-controls{gap:.75rem;margin-top:1.5rem}.vote-btn{font-size:1rem;border-radius:1rem!important;padding:1.1rem!important}.admin-asset-row{text-align:center;grid-template-columns:1fr!important;gap:1rem!important}.admin-asset-row>div{text-align:center!important;justify-content:center!important}.user-row{text-align:center;grid-template-columns:1fr!important;gap:1rem!important;padding:1.5rem!important}.user-row>div,.user-row>span{text-align:center!important;justify-content:center!important}.user-header-row{display:none!important}}
