.fi-gallery{background:#6b728026;border-radius:.5rem;min-height:24rem;margin-bottom:1rem;position:relative;overflow:hidden}@media (width>=768px){.fi-gallery{min-height:35rem}}@media (width>=1024px){.fi-gallery{min-height:38.75rem}}.fi-gallery-img{object-fit:cover;width:100%;height:100%;transition:opacity .3s;position:absolute;inset:0}.fi-gallery-img--loading{pointer-events:none;opacity:.5}.fi-loading-overlay{z-index:1;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:none;background:#00000040;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;display:flex;position:absolute;inset:0}html.dark .fi-loading-overlay{background:#00000073}.fi-loading-spinner{color:#db2777;flex-shrink:0;width:2.5rem;height:2.5rem;animation:1s linear infinite fi-spin}@media (width>=768px){.fi-loading-spinner{width:3rem;height:3rem}}@keyframes fi-spin{to{transform:rotate(360deg)}}.fi-loading-text{color:#fff;text-align:center;text-shadow:0 1px 2px #0009;max-width:20rem;padding:0 1rem;font-size:.875rem;font-weight:500}@media (width>=768px){.fi-loading-text{font-size:1rem}}.fi-exit-fullscreen{z-index:3;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);touch-action:manipulation;background:#0000008c;border:1px solid #fff3;border-radius:9999px;justify-content:center;align-items:center;gap:.375rem;min-width:44px;min-height:44px;padding:.625rem 1rem;font-size:.875rem;font-weight:500;display:inline-flex;position:absolute;top:.75rem;right:.75rem}.fi-exit-fullscreen:active{background:#000000bf}@media (width>=640px){.fi-exit-fullscreen{top:1rem;right:1rem}}.fi-fullscreen-hint{pointer-events:none;z-index:2;text-align:center;color:#ffffffe6;text-shadow:0 1px 2px #000000d9;padding:0 .75rem;font-size:11px;line-height:1.3;position:absolute;bottom:.75rem;left:0;right:0}@media (width>=640px){.fi-fullscreen-hint{font-size:.75rem}}:-webkit-any(.fi-gallery:fullscreen,.fi-gallery:-webkit-full-screen){border-radius:0;width:100%;height:100%;min-height:100vh;max-height:none;margin-bottom:0}:is(.fi-gallery:fullscreen,.fi-gallery:fullscreen){border-radius:0;width:100%;height:100%;min-height:100vh;max-height:none;margin-bottom:0}.fi-controls{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-bottom:1rem;display:flex}@media (width<=639px){.fi-controls{flex-direction:column;align-items:center}}.fi-btn{color:#fff;cursor:pointer;border:none;border-radius:.5rem;justify-content:center;align-items:center;gap:.375rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;transition:all .3s;display:inline-flex;box-shadow:0 4px 6px -1px #0000001a}.fi-btn:disabled{opacity:.6;cursor:not-allowed}@media (width<=639px){.fi-btn{width:100%;max-width:18.75rem}}.fi-btn--random{background:linear-gradient(90deg,#ec4899,#8b5cf6)}.fi-btn--random:hover:not(:disabled){background:linear-gradient(90deg,#db2777,#7c3aed);transform:scale(1.05)}.fi-btn--auto{background:linear-gradient(90deg,#3b82f6,#06b6d4)}.fi-btn--auto:hover:not(:disabled){background:linear-gradient(90deg,#2563eb,#0891b2);transform:scale(1.05)}.fi-btn--download{background:linear-gradient(90deg,#22c55e,#10b981)}.fi-btn--download:hover:not(:disabled){background:linear-gradient(90deg,#16a34a,#059669);transform:scale(1.05)}.fi-btn--fullscreen{background:linear-gradient(90deg,#8b5cf6,#d946ef)}.fi-btn--fullscreen:hover:not(:disabled){background:linear-gradient(90deg,#7c3aed,#c026d3);transform:scale(1.05)}.fi-stats{text-align:center;color:#4b5563;font-size:.875rem}html.dark .fi-stats{color:#9ca3af}.fi-guide{background:#eff6ff;border:1px solid #bfdbfe;border-radius:.5rem;margin-top:2rem;margin-bottom:1rem;padding:1rem}html.dark .fi-guide{background:#1e3a5f33;border-color:#1e3a5f}.fi-guide-title{color:#1e40af;margin-bottom:.5rem;font-size:.875rem;font-weight:600}html.dark .fi-guide-title{color:#93c5fd}.fi-guide-body{color:#1d4ed8;font-size:.75rem}html.dark .fi-guide-body{color:#93c5fd}.fi-guide-body p{margin:.25rem 0}.fi-guide-body a{text-decoration:underline}.fi-guide-body a:hover{opacity:.8}.fi-error{text-align:center;color:#dc2626;margin-top:.75rem;font-size:.875rem}html.dark .fi-error{color:#f87171}
