:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#000000e6}html{background:#000000e6}body{margin:0;min-height:100vh;overflow-x:hidden;background:#000000e6}#root{min-height:100vh;background:#000000e6}*{margin:0;padding:0;box-sizing:border-box}.app{min-height:100vh;background:radial-gradient(circle at 20% 80%,rgba(120,119,198,.3) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,119,198,.15) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(120,119,198,.15) 0%,transparent 50%),#000000e6;display:flex;align-items:center;justify-content:center;font-family:Arial,sans-serif}.container{width:100%;max-width:1200px;margin:0 auto;padding:2rem;text-align:center}.header{margin-bottom:3rem}.title{font-size:4rem;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.3);margin-bottom:1rem;font-weight:700;background:linear-gradient(45deg,#ff6b6b,#4ecdc4,#45b7d1,#f9ca24);background-size:400% 400%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradientShift 3s ease infinite;cursor:default}.subtitle{font-size:1.5rem;color:#ffffffe6;margin-bottom:2rem;text-shadow:1px 1px 2px rgba(0,0,0,.3);cursor:default}.main{margin-bottom:3rem}.coming-soon-container{margin:3rem 0;overflow:hidden;background:#ffffff1a;border-radius:15px;padding:1rem;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.marquee{overflow:hidden;white-space:nowrap}.marquee-content{display:inline-block;font-size:2rem;font-weight:700;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.5);animation:marquee 15s linear infinite}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:3rem}.feature{background:#ffffff1a;padding:2rem;border-radius:15px;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);transition:transform .3s ease,box-shadow .3s ease}.feature:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0000004d}.emoji{font-size:3rem;display:block;margin-bottom:1rem}.feature h3{color:#fff;font-size:1.5rem;margin-bottom:.5rem;text-shadow:1px 1px 2px rgba(0,0,0,.3);cursor:default}.feature p{color:#fffc;font-size:1rem;line-height:1.5}.footer{margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.2)}.footer p{color:#ffffffb3;font-size:.9rem}@keyframes marquee{0%{transform:translate(100%)}to{transform:translate(-100%)}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@media (max-width: 768px){.title{font-size:2.5rem}.subtitle{font-size:1.2rem}.marquee-content{font-size:1.5rem}.features{grid-template-columns:1fr}.container{padding:1rem}}.app.image-only{display:flex;align-items:center;justify-content:center;padding:0;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;box-sizing:border-box;position:relative}.fullpage-close-button{position:fixed;top:2rem;right:2rem;background:#000000b3;color:#fff;border:none;border-radius:50%;width:50px;height:50px;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:1000;backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.2)}.fullpage-close-button:hover{background:#f00c;transform:scale(1.1);box-shadow:0 5px 15px #0000004d}.fullpage-close-button:active{transform:scale(.95)}.full-image{max-width:60vw;max-height:70vh;width:auto;height:auto;display:block;border-radius:20px;box-shadow:0 10px 40px #0000004d;transition:all .3s ease}@media (max-width: 768px){.full-image{max-width:85vw;max-height:60vh}}@media (max-width: 480px){.full-image{max-width:90vw;max-height:50vh}}.error-simple{color:#fff;text-align:center;padding:2rem;background:#ffffff1a;border-radius:10px;margin:2rem}.error-simple h3{margin-bottom:1rem;color:#ff6b6b}.error-simple p{font-family:monospace;font-size:.9rem}.loading{color:#fff;text-align:center;padding:2rem;background:#ffffff1a;border-radius:10px;margin:2rem}.loading h3{margin-bottom:1rem;color:#4ecdc4}.loading p{font-size:.9rem;opacity:.8}.image-container{width:100%;max-width:1200px;margin:0 auto;padding:2rem}.image-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.home-button{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:.75rem 1.5rem;border-radius:10px;cursor:pointer;font-size:1rem;backdrop-filter:blur(10px);transition:all .3s ease}.home-button:hover{background:#ffffff4d;transform:translateY(-2px)}.image-title{color:#fff;font-size:1.5rem;text-shadow:1px 1px 2px rgba(0,0,0,.3);word-break:break-all}.image-display{text-align:center}.main-image{max-width:100%;max-height:70vh;border-radius:15px;box-shadow:0 20px 40px #0000004d;backdrop-filter:blur(10px)}.image-info{margin-top:2rem;padding:1rem;background:#ffffff1a;border-radius:10px;backdrop-filter:blur(10px)}.image-info code{background:#0000004d;padding:.25rem .5rem;border-radius:5px;color:#f9ca24;font-family:Courier New,monospace}.error-container{text-align:center;padding:3rem}.error-message{background:#ffffff1a;padding:2rem;border-radius:15px;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.error-message h3{color:#ff6b6b;margin-bottom:1rem;font-size:2rem}.error-message p{color:#fff;margin-bottom:1rem;font-size:1.1rem}.available-images{margin:2rem 0;text-align:left}.available-images h4{color:#fff;margin-bottom:1rem}.available-images ul{list-style:none;padding:0}.available-images li{margin:.5rem 0}.available-images a{color:#4ecdc4;text-decoration:none;font-family:Courier New,monospace}.available-images a:hover{color:#f9ca24;text-decoration:underline}.usage-hint{margin-top:2rem;font-style:italic;color:#fffc}.usage-section{margin-bottom:3rem}.usage-section h2{color:#fff;margin-bottom:2rem;font-size:2.5rem;text-shadow:1px 1px 2px rgba(0,0,0,.3);cursor:default}.usage-card{background:#ffffff1a;padding:2rem;border-radius:15px;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);margin-bottom:2rem}.usage-card p{color:#fff;font-size:1.2rem;margin-bottom:1rem}.url-format{background:#0000004d;padding:1rem;border-radius:10px;margin:1rem 0}.url-format code{color:#f9ca24;font-size:1.3rem;font-family:Courier New,monospace}.usage-card a{color:#4ecdc4;text-decoration:none;font-weight:700}.usage-card a:hover{color:#f9ca24;text-decoration:underline}.image-grid-section{margin:3rem 0}.image-grid-section h2{color:#fff;font-size:2.5rem;margin-bottom:2rem;text-align:center;text-shadow:2px 2px 4px rgba(0,0,0,.3);background:linear-gradient(45deg,#ff6b6b,#4ecdc4,#45b7d1,#f9ca24);background-size:400% 400%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradientShift 3s ease infinite;cursor:default}.search-section{margin-bottom:2rem;display:flex;justify-content:center}.search-container{position:relative;width:100%;max-width:400px}.search-input{width:100%;padding:1rem 3rem 1rem 1rem;font-size:1rem;border:2px solid rgba(255,255,255,.3);border-radius:25px;background:#ffffff1a;color:#fff;outline:none;transition:all .3s ease;backdrop-filter:blur(10px)}.search-input::placeholder{color:#ffffffb3}.search-input:focus{border-color:#fff9;background:#ffffff26;box-shadow:0 0 20px #ffffff1a}.search-clear-button{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:#fff3;border:none;border-radius:50%;width:24px;height:24px;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.8rem;transition:all .3s ease}.search-clear-button:hover{background:#ffffff4d;transform:translateY(-50%) scale(1.1)}.image-grid-container{background:#ffffff1a;border-radius:20px;padding:2rem;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(10px)}.image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:2rem;justify-items:center}.image-grid-item{transition:transform .3s ease}.image-grid-item:hover{transform:scale(1.05)}.image-grid-link{text-decoration:none;display:block}.image-preview{position:relative;width:200px;height:150px;border-radius:15px;overflow:hidden;box-shadow:0 8px 25px #0000004d;transition:all .3s ease}.image-preview:hover{box-shadow:0 12px 35px #0006;transform:translateY(-5px)}.grid-thumbnail{width:100%;height:100%;object-fit:cover;transition:transform .3s ease,opacity .3s ease;background:linear-gradient(45deg,#2a2a2a 25%,transparent 25%),linear-gradient(-45deg,#2a2a2a 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#2a2a2a 75%),linear-gradient(-45deg,transparent 75%,#2a2a2a 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0px;background-color:#1a1a1a;opacity:.9;transform:translateZ(0);will-change:transform,opacity}.image-preview:hover .grid-thumbnail{transform:scale(1.1)}@media (max-width: 768px){.image-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.image-preview{width:150px;height:120px}}@media (max-width: 480px){.image-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.8rem}.image-preview{width:120px;height:90px}.image-hashtag-overlay{font-size:.8rem;padding:.5rem}}.image-hashtag-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,#000c,#0006);color:#fff;padding:1rem 1rem .8rem;font-weight:700;font-size:1rem;text-shadow:2px 2px 4px rgba(0,0,0,.8);transform:translateY(0);transition:all .3s ease}.image-preview:hover .image-hashtag-overlay{background:linear-gradient(to top,#000000e6,#0009);font-size:1.1rem}.image-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9999;backdrop-filter:blur(10px);width:100vw;height:100vh}.modal-loading-container{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.modal-loading-spinner{text-align:center;color:#fff}.modal-loading-spinner p{margin-top:1rem;font-size:1.2rem;color:#ffffffe6}.spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.2);border-top:4px solid #4ecdc4;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.image-modal{background:#ffffff1a;border-radius:20px;max-width:95vw;max-height:95vh;width:auto;height:auto;backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);box-shadow:0 20px 40px #00000080;position:relative;display:flex;flex-direction:row;overflow:hidden;animation:modalFadeIn .3s ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.modal-close-button{position:absolute;top:10px;right:10px;background:transparent;border:none;border-radius:50%;width:30px;height:30px;color:#fff;font-size:14px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:1001}.modal-close-button:hover{background:#f00c;transform:scale(1.1);box-shadow:0 6px 16px #f006}.modal-close-button:active{transform:scale(.95)}.modal-sidebar{width:300px;min-width:300px;background:#000c;backdrop-filter:blur(10px);display:flex;flex-direction:column;padding:1rem;gap:1rem;border-radius:20px 0 0 20px;position:relative;z-index:1001}.modal-image-container{flex:1;display:flex;align-items:center;justify-content:center;padding:1rem;position:relative;z-index:1000;min-width:0}.modal-header{text-align:center}.modal-image{max-width:calc(95vw - 280px);max-height:calc(95vh - 2rem);width:auto;height:auto;object-fit:contain;border-radius:10px;box-shadow:0 8px 25px #0000004d;min-width:300px;min-height:200px;opacity:0;transform:scale(.95);transition:opacity .3s ease,transform .3s ease}.modal-image.loaded{opacity:1;transform:scale(1)}.modal-title{font-size:1.8rem;margin:0;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.8);background:linear-gradient(45deg,#ff6b6b,#4ecdc4,#45b7d1,#f9ca24);background-size:400% 400%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradientShift 3s ease infinite}.share-section{width:100%}.share-label{display:block;font-size:1rem;margin-bottom:.75rem;color:#fff;font-weight:600;text-align:left}.share-input-container{display:flex;gap:.5rem;align-items:stretch;background:#0000004d;border-radius:10px;padding:.5rem;border:1px solid rgba(255,255,255,.3);width:100%;max-width:100%;box-sizing:border-box}.share-input{flex:1;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:.9rem;padding:.75rem 1rem;border-radius:6px;outline:none;font-family:Courier New,monospace;transition:all .2s ease;min-width:0;width:100%}.share-input:focus{background:#fff3;border-color:#4ecdc499;box-shadow:0 0 0 2px #4ecdc433}.share-input::selection{background:#4ecdc466}.copy-button{background:linear-gradient(45deg,#4ecdc4,#45b7d1);border:none;color:#fff;padding:.75rem 1.25rem;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.85rem;white-space:nowrap;min-width:80px}.copy-button:hover{background:linear-gradient(45deg,#45b7d1,#4ecdc4);transform:translateY(-1px);box-shadow:0 4px 12px #4ecdc44d}.copy-button:active{transform:translateY(0)}.copy-raw-button{background:linear-gradient(135deg,#ffffff26,#ffffff0d);border:1px solid rgba(255,255,255,.3);color:#fff;padding:.6rem .9rem;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);font-size:.85rem;white-space:nowrap;min-width:70px;backdrop-filter:blur(10px);box-shadow:0 2px 8px #0000001a;flex-shrink:0;box-sizing:border-box}.copy-raw-button:hover{background:linear-gradient(135deg,#ffffff40,#ffffff26);border-color:#ffffff80;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.copy-raw-button:active{transform:translateY(0);box-shadow:0 1px 4px #0000001a}@media (max-width: 768px){.search-container{max-width:350px}.search-input{padding:.8rem 2.5rem .8rem .8rem;font-size:.9rem}.search-clear-button{right:.8rem;width:20px;height:20px;font-size:.7rem}.image-modal{max-width:98vw;max-height:98vh;flex-direction:column}.modal-sidebar{width:100%;min-width:auto;border-radius:20px 20px 0 0;padding:.75rem;max-height:180px;overflow-y:auto;position:relative;order:2}.modal-image-container{padding:.5rem;order:1}.modal-image{max-width:96vw;max-height:calc(98vh - 200px);min-width:auto;min-height:auto}.modal-title{font-size:1.4rem}.share-input-container{flex-direction:column;gap:.75rem;align-items:stretch}.share-input{text-align:center;font-size:.8rem}.copy-button,.copy-raw-button{width:100%;padding:1rem}.modal-close-button{top:5px;right:5px;width:28px;height:28px;font-size:12px}}.marquee-section{margin:3rem 0;overflow:hidden}.marquee-section h3{color:#fff;font-size:2rem;margin-bottom:2rem;text-align:center;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.marquee-container{background:#ffffff0d;border-radius:15px;padding:1rem 0;border:1px solid rgba(255,255,255,.1);overflow:hidden;white-space:nowrap}.marquee{display:inline-block;white-space:nowrap;animation:scroll-left 30s linear infinite;padding-left:100%}@keyframes scroll-left{0%{transform:translateZ(0)}to{transform:translate3d(-100%,0,0)}}.marquee-item{display:inline-block;margin-right:2rem;padding:.5rem 1rem;background:#ffffff1a;border-radius:20px;transition:all .3s ease}.marquee-item:hover{background:#fff3;transform:scale(1.05)}.marquee-item.cached{background:linear-gradient(45deg,#4ecdc433,#45b7d133);border:1px solid rgba(78,205,196,.3)}.marquee-item.uncached{background:#ffffff0d;border:1px solid rgba(255,255,255,.1)}.marquee-link{text-decoration:none;color:#fff;display:flex;align-items:center;gap:.3rem}.meme-name{font-weight:600;font-size:.9rem}.meme-ext{color:#4ecdc4;font-size:.8rem;font-weight:500}.cached-badge{font-size:.8rem;opacity:.8}.supported-formats-section{margin-bottom:3rem}.supported-formats-section h3{color:#fff;margin-bottom:2rem;font-size:2rem;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.formats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:1rem;margin-bottom:2rem}.format-card{background:#ffffff1a;border-radius:10px;padding:1rem;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);transition:transform .3s ease,box-shadow .3s ease;text-align:center}.format-card:hover{transform:translateY(-2px);box-shadow:0 5px 15px #0003;background:#fff3}.format-name{color:#fff;font-size:.9rem;font-weight:600;margin:0;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.note{color:#fffc;font-size:1rem;font-style:italic;text-shadow:1px 1px 2px rgba(0,0,0,.3);margin-top:1rem}.cache-info{margin-top:3rem;padding:2rem;background:#ffffff0d;border-radius:15px;border:1px solid rgba(255,255,255,.1)}.cache-info h4{color:#fff;font-size:1.5rem;margin-bottom:1.5rem;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.cached-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.cached-image{background:#ffffff1a;border-radius:10px;transition:all .3s ease}.cached-image:hover{background:#fff3;transform:translateY(-2px)}.cached-link{display:block;padding:1rem;text-decoration:none;color:#fff}.cached-link .image-name{font-weight:600;font-size:1rem}.cached-link .cached-ext{color:#4ecdc4;font-size:.9rem;margin-left:.5rem;font-weight:500}.cache-note{color:#ffffffb3;font-size:.9rem;font-style:italic;text-align:center}.submission-section{background:#ffffff1a;backdrop-filter:blur(10px);border-radius:20px;padding:2rem;margin:2rem 0;border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 32px #0000001a}.submission-section h2{color:#fff;font-size:2.5rem;margin-bottom:2rem;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.submission-form{max-width:600px;margin:0 auto}.file-upload-section{margin-bottom:2rem}.drop-zone{border:3px dashed rgba(255,255,255,.5);border-radius:15px;padding:3rem 2rem;background:#ffffff1a;transition:all .3s ease;cursor:pointer;min-height:200px;display:flex;align-items:center;justify-content:center}.drop-zone:hover{border-color:#fffc;background:#ffffff26;transform:translateY(-2px)}.drop-zone.drag-over{border-color:#4ecdc4;background:#4ecdc433;transform:scale(1.02)}.drop-zone.has-file{border-color:#4ecdc4;background:#4ecdc41a}.drop-zone-content{text-align:center;color:#fff}.drop-icon{font-size:4rem;margin-bottom:1rem;opacity:.7}.drop-zone-content p{color:#ffffffe6;font-size:1.2rem;margin:.5rem 0}.browse-button{display:inline-block;background:linear-gradient(45deg,#ff6b6b,#4ecdc4);color:#fff;padding:1rem 2rem;border-radius:50px;text-decoration:none;font-weight:700;cursor:pointer;transition:all .3s ease;margin-top:1rem;border:none;font-size:1rem}.browse-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0003}.file-preview{text-align:center;color:#fff}.preview-image{max-width:200px;max-height:200px;border-radius:10px;margin-bottom:1rem;box-shadow:0 4px 15px #0003}.file-name{color:#ffffffe6;margin-bottom:1rem;font-weight:700}.remove-file{background:#ff6b6b;color:#fff;border:none;padding:.5rem 1rem;border-radius:25px;cursor:pointer;font-weight:700;transition:all .3s ease}.remove-file:hover{background:#ff5252;transform:translateY(-1px)}.text-input-section{margin-bottom:2rem}.text-label{display:block;color:#fff;font-size:1.5rem;font-weight:700;margin-bottom:1rem;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.user-text-input{width:100%;padding:1rem;border:2px solid rgba(255,255,255,.3);border-radius:15px;background:#ffffff1a;color:#fff;font-size:1rem;font-family:Arial,sans-serif;resize:vertical;min-height:100px;backdrop-filter:blur(5px);transition:all .3s ease}.user-text-input:focus{outline:none;border-color:#4ecdc4;background:#ffffff26;box-shadow:0 0 20px #4ecdc44d}.user-text-input::placeholder{color:#fff9}.char-counter{text-align:right;color:#ffffffb3;font-size:.9rem;margin-top:.5rem}.submit-button{background:linear-gradient(45deg,#ff6b6b,#ff9800);color:#fff;border:none;padding:1.2rem 3rem;border-radius:50px;font-size:1.3rem;font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;box-shadow:0 6px 20px #0003}.submit-button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 10px 30px #0000004d;background:linear-gradient(45deg,#ff5252,#f57c00)}.submit-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.submit-message{margin-top:1rem;padding:1rem;border-radius:10px;font-weight:700;text-align:center}.submit-message.success{background:#4caf5033;color:#4caf50;border:1px solid rgba(76,175,80,.5)}.submit-message.error{background:#f4433633;color:#f44336;border:1px solid rgba(244,67,54,.5)}@media (min-width: 1200px){.modal-image{max-width:calc(95vw - 250px);max-height:calc(95vh - 1rem);min-width:400px}.image-modal{max-width:90vw;max-height:90vh}}@media (min-width: 1600px){.modal-image{max-width:calc(90vw - 300px);max-height:calc(90vh - 1rem);min-width:500px}}
