@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap";:root{color:#f5f5ff;font-synthesis:none;text-rendering:optimizelegibility;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#080912;font-family:DM Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#080912;min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}:focus-visible{outline-offset:3px;outline:3px solid #8b7dff}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{background:radial-gradient(circle at 10% -5%,#2563eb57,#0000 31rem),radial-gradient(circle at 90% 2%,#0ea5e926,#0000 28rem),linear-gradient(#0c0d1c 0,#080912 36rem);min-height:100vh;position:relative;overflow:hidden}.app-shell:before{pointer-events:none;content:"";opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.hero,main,footer{width:min(100% - 2rem,1180px);margin-inline:auto;position:relative}.hero{padding:2rem 0 3.5rem}.brand{color:#fff;align-items:center;gap:.75rem;font-weight:700;text-decoration:none;display:inline-flex}.brand__mark{letter-spacing:.04em;background:linear-gradient(135deg,#2563eb,#4f46e5);border-radius:.8rem;place-items:center;width:2.65rem;height:2.65rem;font-size:.72rem;display:grid;box-shadow:0 8px 28px #2563eb52}.hero__copy{text-align:center;max-width:780px;margin:6rem auto 2.4rem}.eyebrow{color:#a7a4d7;letter-spacing:.16em;text-transform:uppercase;margin:0 0 .75rem;font-size:.76rem;font-weight:700}h1,h2,p{margin-top:0}h1{letter-spacing:-.065em;color:#0000;background:linear-gradient(120deg,#fff 25%,#bfdbfe 58%,#60a5fa);-webkit-background-clip:text;background-clip:text;margin-bottom:1rem;font-size:clamp(2.6rem,8vw,5.4rem);line-height:.98}.hero__copy>p:last-child{color:#a7a9bc;max-width:620px;margin:0 auto;font-size:clamp(1rem,2vw,1.15rem);line-height:1.7}.search{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#131426d1;border:1px solid #ffffff21;border-radius:1.1rem;gap:.5rem;max-width:760px;margin:0 auto;padding:.45rem;display:flex;box-shadow:0 22px 70px #00000059}.search:focus-within{border-color:#897effb8;box-shadow:0 22px 70px #00000059,0 0 0 4px #7c6dff1a}.search__field{flex:1;align-items:center;gap:.75rem;min-width:0;padding:0 .75rem;display:flex}.search__field svg,.icon-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.search__field svg{color:#8e91a7;flex:none}.search input{color:#fff;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:.9rem 0}.search input::placeholder{color:#777a90}.button{cursor:pointer;border:0;border-radius:.8rem;justify-content:center;align-items:center;gap:.55rem;min-height:3rem;padding:.75rem 1.35rem;font-weight:700;display:inline-flex}.button--primary{background:linear-gradient(135deg,#2563eb,#4f46e5);box-shadow:0 9px 24px #2563eb47}.button--secondary{color:#dbeafe;background:#2563eb1f;border:1px solid #60a5fa40}.button:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px)}.button:disabled,.icon-button:disabled,.search input:disabled{cursor:not-allowed;opacity:.55}.button__spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:1rem;height:1rem;animation:.7s linear infinite spin;display:inline-block}main{min-height:24rem;padding-bottom:5rem}.view-switch{background:#0f111fb8;border:1px solid #ffffff17;border-radius:.8rem;padding:.3rem;display:inline-flex}.view-switch button{color:#85899f;cursor:pointer;background:0 0;border:0;border-radius:.58rem;align-items:center;gap:.5rem;min-height:2.5rem;padding:.55rem .85rem;font-size:.82rem;font-weight:700;display:inline-flex}.view-switch button:hover{color:#dbeafe}.view-switch button.is-active{color:#fff;background:linear-gradient(135deg,#2563ebb8,#4f46e5b8);box-shadow:0 5px 16px #2563eb29}.view-switch button span{color:#dbeafe;background:#ffffff1f;border-radius:999px;place-items:center;min-width:1.25rem;height:1.25rem;padding:0 .3rem;font-size:.68rem;display:grid}.results-heading{justify-content:space-between;align-items:flex-end;gap:1rem;margin:1.5rem 0 1.6rem;display:flex}.results-heading h2{letter-spacing:-.035em;margin:0;font-size:clamp(1.45rem,4vw,2rem)}.results-heading>span{color:#9598ae;background:#ffffff09;border:1px solid #ffffff17;border-radius:999px;padding:.4rem .7rem;font-size:.78rem}.gif-grid{columns:4 230px;column-gap:1rem;transition:opacity .18s}.gif-grid--loading{opacity:.45;pointer-events:none}.load-more{justify-content:center;align-items:center;min-height:7rem;padding:1.5rem 0;display:flex}.load-more p{color:#777a90;margin:0;font-size:.85rem}.gif-card{break-inside:avoid;background:#141524eb;border:1px solid #ffffff14;border-radius:1rem;width:100%;margin:0 0 1rem;display:inline-block;overflow:hidden;box-shadow:0 12px 30px #00000029}.gif-card__media{background:#151626;width:100%;display:block;overflow:hidden}.gif-card__media img{width:100%;height:auto;display:block}.gif-card__footer{align-items:center;gap:.6rem;min-height:3.5rem;padding:.6rem .65rem .6rem .9rem;display:flex}.gif-card__footer p{color:#c2c3d0;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;font-size:.79rem;overflow:hidden}.icon-button{color:#aaa8ce;cursor:pointer;background:#ffffff0b;border:1px solid #ffffff17;border-radius:.65rem;flex:none;place-items:center;width:2.3rem;height:2.3rem;display:grid}.icon-button:hover:not(:disabled){color:#fff;background:#7b6aff29;border-color:#8b7dff80}.status-card{text-align:center;background:#141526bf;border:1px solid #ffffff1a;border-radius:1.25rem;max-width:620px;margin:3rem auto;padding:2.5rem}.status-card__icon{background:#7967ff1f;border:1px solid #8b7dff47;border-radius:1rem;place-items:center;width:3.25rem;height:3.25rem;margin:0 auto 1rem;font-size:1.25rem;display:grid}.status-card h2{margin-bottom:.65rem}.status-card p{color:#a6a8bc;margin:0;line-height:1.65}code{color:#d9d5ff;background:#ffffff0e;border:1px solid #ffffff17;border-radius:.35rem;padding:.1rem .35rem;font-size:.88em}.skeleton-grid{columns:4 230px;column-gap:1rem}.skeleton{background:linear-gradient(100deg,#151625 15%,#202138 35%,#151625 55%) 0 0/200% 100%;border-radius:1rem;width:100%;height:240px;margin-bottom:1rem;animation:1.3s linear infinite shimmer;display:inline-block}.skeleton:nth-child(3n+2){height:310px}.skeleton:nth-child(3n){height:190px}.toast{z-index:10;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#191b2cf5;border:1px solid #ffffff1f;border-radius:.85rem;align-items:center;gap:.65rem;max-width:calc(100vw - 2.5rem);padding:.85rem 1rem;font-size:.9rem;font-weight:600;animation:.18s ease-out toast-in;display:flex;position:fixed;bottom:1.25rem;right:1.25rem;box-shadow:0 18px 50px #0000006b}.toast span{color:#0d101a;background:#69e5a2;border-radius:50%;place-items:center;width:1.45rem;height:1.45rem;font-size:.78rem;display:grid}.toast--error span{background:#ff8f9a}footer{color:#66697e;text-align:center;padding:0 0 2.25rem;font-size:.78rem}footer p{margin:0}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{background-position-x:-200%}}@keyframes toast-in{0%{opacity:0;transform:translateY(.75rem)}}@media (width<=640px){.hero{padding-top:1.25rem}.hero__copy{margin-top:4.5rem}.search{flex-direction:column;padding:.55rem}.search__field{min-height:3.15rem}.search .button{width:100%}.view-switch{width:100%;display:flex}.view-switch button{flex:1;justify-content:center}.gif-grid,.skeleton-grid{columns:2 140px;column-gap:.7rem}.gif-card,.skeleton{margin-bottom:.7rem}.gif-card__footer{padding-left:.7rem}.status-card{padding:2rem 1.25rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
