@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--color-bg: #fafafa;--color-surface: #ffffff;--color-border: #e5e5e5;--color-text-primary: #0a0a0a;--color-text-secondary: #737373;--color-accent: #e60023;--color-accent-hover: #ad081b;--color-overlay: rgba(0, 0, 0, .6);--color-chip-bg: #f4f4f5;--color-chip-hover: #e4e4e7;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.5rem;--font-size-2xl: 2rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 12px rgba(0,0,0,.08);--shadow-lg: 0 12px 40px rgba(0,0,0,.12);--shadow-xl: 0 24px 60px rgba(0,0,0,.18);--transition-fast: .12s ease;--transition-base: .2s ease;--transition-slow: .32s ease;--grid-gap: 16px;--grid-columns: 4;--header-height: 60px}[data-theme=dark]{--color-bg: #0a0a0a;--color-surface: #171717;--color-border: #262626;--color-text-primary: #ededed;--color-text-secondary: #a3a3a3;--color-overlay: rgba(0, 0, 0, .8);--color-chip-bg: #1c1c1c;--color-chip-hover: #2a2a2a;--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow-md: 0 4px 12px rgba(0,0,0,.4);--shadow-lg: 0 12px 40px rgba(0,0,0,.5);--shadow-xl: 0 24px 60px rgba(0,0,0,.6)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-size:var(--font-size-base);background-color:var(--color-bg);color:var(--color-text-primary);line-height:1.6;transition:background-color var(--transition-slow),color var(--transition-slow);min-height:100dvh}img{display:block;max-width:100%}button{cursor:pointer;border:none;background:none;font-family:inherit}a{color:inherit;text-decoration:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.container{max-width:1600px;margin:0 auto;padding:0 var(--space-6)}.header{position:sticky;top:0;z-index:100;height:var(--header-height);background:color-mix(in srgb,var(--color-bg) 85%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);transition:background-color var(--transition-slow),border-color var(--transition-slow)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.logo{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-lg);font-weight:700;letter-spacing:-.02em;color:var(--color-text-primary);white-space:nowrap;transition:opacity var(--transition-fast)}.logo:hover{opacity:.75}.logo-dot{width:8px;height:8px;border-radius:50%;background:var(--color-accent);flex-shrink:0}.header-actions{display:flex;align-items:center;gap:var(--space-2)}.theme-toggle{width:36px;height:36px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);background:var(--color-chip-bg);border:1px solid var(--color-border);transition:all var(--transition-fast)}.theme-toggle:hover{background:var(--color-chip-hover);color:var(--color-text-primary);transform:scale(1.05)}.theme-toggle svg{width:16px;height:16px}.filter-bar{padding:var(--space-4) 0;border-bottom:1px solid var(--color-border);background:var(--color-bg);transition:background-color var(--transition-slow),border-color var(--transition-slow)}.filter-bar-inner{display:flex;flex-direction:column;gap:var(--space-3)}.filter-group{display:flex;align-items:center;gap:var(--space-2)}.filter-label{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);white-space:nowrap;min-width:60px}.filter-chips{display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:2px;flex-wrap:wrap}.filter-chips::-webkit-scrollbar{display:none}.chip{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;white-space:nowrap;border:1.5px solid var(--color-border);background:var(--color-chip-bg);color:var(--color-text-secondary);transition:all var(--transition-fast);cursor:pointer;-webkit-user-select:none;user-select:none}.chip:hover{border-color:var(--color-text-secondary);color:var(--color-text-primary);background:var(--color-chip-hover);transform:translateY(-1px)}.chip[aria-checked=true],.chip.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff;transform:translateY(-1px);box-shadow:0 2px 8px #e600234d}.chip-icon{width:12px;height:12px;flex-shrink:0}.gallery-main{padding:var(--space-8) 0;min-height:calc(100dvh - var(--header-height) - 200px)}.pose-grid{display:grid;grid-template-columns:repeat(var(--grid-columns),1fr);gap:var(--grid-gap)}@media (max-width: 640px){.pose-grid{grid-template-columns:repeat(2,1fr)}.filter-chips,.filter-group{flex-wrap:nowrap}.filter-label{display:none}}@media (min-width: 641px) and (max-width: 1024px){.pose-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1025px) and (max-width: 1440px){.pose-grid{grid-template-columns:repeat(4,1fr)}}@media (min-width: 1441px){.pose-grid{grid-template-columns:repeat(5,1fr)}}.pose-card{position:relative;border-radius:var(--radius-md);overflow:hidden;cursor:pointer;background:var(--color-surface);box-shadow:var(--shadow-sm);transition:transform var(--transition-base),box-shadow var(--transition-base);aspect-ratio:1/1}.pose-card:not(.ad-card):hover{transform:scale(1.02) translateY(-2px);box-shadow:var(--shadow-lg);z-index:2}.pose-card:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.pose-card img{width:100%;aspect-ratio:1/1;object-fit:contain;background-color:#fff;display:block;transition:opacity var(--transition-base),transform var(--transition-slow)}.pose-card-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.75) 0%,rgba(0,0,0,.3) 40%,transparent 70%);opacity:0;transition:opacity var(--transition-base);display:flex;flex-direction:column;justify-content:flex-end;padding:var(--space-3);gap:var(--space-1)}.pose-card:hover .pose-card-overlay{opacity:1}.pose-card-title{font-size:var(--font-size-sm);font-weight:600;color:#fff;line-height:1.3}.pose-card-meta{display:flex;gap:var(--space-1);flex-wrap:wrap}.pose-card-category{font-size:10px;font-weight:500;color:#fffc;background:#ffffff26;border-radius:var(--radius-full);padding:2px 8px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.pose-card-skeleton{border-radius:var(--radius-md);background:var(--color-chip-bg);overflow:hidden;break-inside:avoid;margin-bottom:var(--grid-gap)}.skeleton-shimmer{background:linear-gradient(90deg,var(--color-chip-bg) 25%,var(--color-chip-hover) 50%,var(--color-chip-bg) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:var(--color-overlay);display:flex;align-items:center;justify-content:center;padding:var(--space-4);animation:fadeIn var(--transition-base) ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.lightbox-content{position:relative;display:flex;gap:var(--space-6);max-width:1100px;width:100%;max-height:90dvh;animation:slideUp var(--transition-base) ease}@keyframes slideUp{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.lightbox-image-wrap{flex:0 0 auto;max-width:560px;position:relative}.lightbox-image-wrap img{border-radius:var(--radius-lg);max-height:85dvh;width:auto;max-width:100%;box-shadow:var(--shadow-xl);object-fit:contain}.lightbox-info{flex:1;background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4);min-width:260px;max-width:320px;overflow-y:auto;box-shadow:var(--shadow-lg)}.lightbox-info h2{font-size:var(--font-size-xl);font-weight:700;letter-spacing:-.02em;color:var(--color-text-primary);line-height:1.2}.lightbox-meta{display:flex;flex-direction:column;gap:var(--space-2)}.lightbox-meta-row{display:flex;align-items:center;gap:var(--space-2)}.lightbox-meta-key{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);min-width:72px}.lightbox-meta-value{font-size:var(--font-size-sm);color:var(--color-text-primary)}.lightbox-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.7;padding-top:var(--space-2);border-top:1px solid var(--color-border)}.lightbox-actions{display:flex;flex-direction:column;gap:var(--space-2);margin-top:auto;padding-top:var(--space-4);border-top:1px solid var(--color-border)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:600;transition:all var(--transition-fast);cursor:pointer}.btn-primary{background:var(--color-accent);color:#fff;border:none}.btn-primary:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #e6002359}.btn-ghost{background:var(--color-chip-bg);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-ghost:hover{background:var(--color-chip-hover);transform:translateY(-1px)}.btn svg{width:16px;height:16px;flex-shrink:0}.lightbox-close{position:absolute;top:-12px;right:-12px;width:36px;height:36px;border-radius:var(--radius-full);background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-md);z-index:10}.lightbox-close:hover{color:var(--color-text-primary);background:var(--color-chip-hover);transform:scale(1.1)}.lightbox-close svg{width:16px;height:16px}@media (max-width: 768px){.lightbox-content{flex-direction:column;align-items:center;overflow-y:auto;max-height:90dvh}.lightbox-image-wrap{max-width:100%}.lightbox-info{min-width:unset;max-width:100%;width:100%}.lightbox-close{top:8px;right:8px}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-12) var(--space-4);text-align:center;color:var(--color-text-secondary)}.empty-state svg{width:48px;height:48px;opacity:.4}.empty-state h3{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary)}.empty-state p{font-size:var(--font-size-sm);max-width:320px}.footer{border-top:1px solid var(--color-border);padding:var(--space-8) 0;color:var(--color-text-secondary);font-size:var(--font-size-sm);transition:border-color var(--transition-slow)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.footer-credit{display:flex;align-items:center;gap:var(--space-2)}.footer-dot{width:4px;height:4px;border-radius:50%;background:var(--color-border)}.count-badge{font-size:var(--font-size-xs);color:var(--color-text-secondary);padding:var(--space-4) 0 0}.placeholder-1{background:#dcdfe5}.placeholder-2{background:#e2dce5}.placeholder-3{background:#dce5e0}.placeholder-4{background:#e4e0d7}.placeholder-5{background:#e3dddd}.placeholder-6{background:#dce2e5}[data-theme=dark] .placeholder-1{background:#272c35}[data-theme=dark] .placeholder-2{background:#302735}[data-theme=dark] .placeholder-3{background:#27352e}[data-theme=dark] .placeholder-4{background:#342e23}[data-theme=dark] .placeholder-5{background:#322929}[data-theme=dark] .placeholder-6{background:#273035}.ad-badge{position:absolute;top:8px;right:8px;background:#00000059;color:#ffffffe6;font-size:.65rem;font-weight:700;padding:2px 6px;border-radius:4px;z-index:10;pointer-events:none;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
