.auth-btn{background-color:var(--accent-color);color:var(--btn-text);border:none;border-radius:.4rem;padding:.6rem 1.2rem;font-size:1.4rem;font-weight:500;cursor:pointer;display:flex;align-items:center;transition:background-color .2s ease,transform .1s ease}.auth-btn:hover{background-color:var(--accent-hover);transform:translateY(-1px)}.auth-btn:active{transform:translateY(0)}.user-menu-container{position:relative;height:100%;display:flex;align-items:center}.user-profile{display:flex;align-items:center;gap:.8rem;cursor:pointer;padding:.6rem 1.2rem;border-radius:.4rem;background-color:var(--input-bg);position:relative;transition:background-color .2s ease}.user-profile:hover{background-color:var(--btn-hover-bg)}.user-name{font-size:1.4rem;font-weight:500;color:var(--text-color);max-width:15rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-icon{font-size:.8rem;color:var(--text-muted);transition:transform .2s ease}.user-profile.active .dropdown-icon{transform:rotate(180deg)}.premium-badge{background:linear-gradient(45deg,gold,orange);color:#000;font-size:.9rem;font-weight:700;padding:.2rem .5rem;border-radius:.3rem;margin-left:.5rem}.user-dropdown-menu{position:absolute;top:calc(100% + .5rem);right:0;width:25rem;background-color:var(--panel-bg);border-radius:.6rem;box-shadow:0 .4rem 1.5rem rgba(0,0,0,.2);z-index:1000;overflow:hidden;display:none;animation:dropdownFadeIn .2s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}.user-profile.active .user-dropdown-menu{display:block}.dropdown-section{padding:1.2rem;border-bottom:1px solid var(--border-color)}.dropdown-section:last-child{border-bottom:none}.dropdown-user-info{display:flex;align-items:center;gap:1.2rem}.user-details{display:flex;flex-direction:column;gap:.4rem}.user-full-name{font-size:1.6rem;font-weight:600;color:var(--text-color)}.user-email{font-size:1.2rem;color:var(--text-muted);word-break:break-all}.menu-options{display:flex;flex-direction:column;gap:.8rem}.dropdown-option{display:flex;align-items:center;gap:1rem;padding:1rem;border-radius:.4rem;cursor:pointer;transition:background-color .2s ease}.dropdown-option:hover{background-color:var(--btn-hover-bg)}.dropdown-option svg{color:var(--text-muted)}.dropdown-option span{font-size:1.4rem;color:var(--text-color)}.upgrade-option{color:var(--accent-color);font-weight:500}.upgrade-option svg{color:gold}.logout-option svg{color:#f44336}.premium-locked{position:relative;opacity:.5;cursor:not-allowed!important}.premium-locked:after{content:"🔒";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.6rem;color:var(--accent-color)}.premium-badge-inline{display:inline-flex;align-items:center;background:linear-gradient(45deg,gold,orange);color:#000;font-size:.8rem;font-weight:700;padding:.1rem .4rem;border-radius:.3rem;margin-left:.5rem;vertical-align:middle}.premium-tooltip:before{content:"Fonctionnalité Premium";position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:rgba(0,0,0,.8);color:#fff;font-size:1.2rem;padding:.5rem 1rem;border-radius:.4rem;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;z-index:1000}.premium-tooltip:hover:before{opacity:1;visibility:visible}@media (max-width: 768px){.user-profile{padding:.5rem}.user-name{display:none}.dropdown-icon{margin-left:.5rem}.user-dropdown-menu{width:22rem;right:-7rem}.user-dropdown-menu:before{content:"";position:absolute;top:-.8rem;right:8rem;width:1.6rem;height:1.6rem;background-color:var(--panel-bg);transform:rotate(45deg);z-index:-1}}.premium-features-list{margin:1rem 0;padding-left:2rem}.premium-features-list li{margin-bottom:.5rem;color:#ddd;position:relative}.premium-features-list li:before{content:"✨";position:absolute;left:-2rem;color:gold}.gif-controls{display:flex;flex-direction:column;gap:.8rem;border-radius:.6rem;padding:1rem;box-shadow:0 4px 12px rgba(0,0,0,.15);width:100%;margin-top:.5rem}.playback-controls{display:flex;gap:.8rem;justify-content:center}.control-btn{background-color:var(--input-bg);color:var(--text-color);border:1px solid var(--border-color);border-radius:50%;width:4rem;height:4rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.control-btn:hover{background-color:var(--accent-color);color:var(--btn-text);transform:scale(1.05)}.control-btn:active{transform:scale(.95)}.control-btn .icon{font-size:1.8rem;line-height:1}.control-btn.play-btn .icon{margin-left:.3rem}.progress-container{display:flex;flex-direction:column;gap:.8rem}.frame-progress{width:100%;height:.8rem;-webkit-appearance:none;appearance:none;border:none;background-color:var(--range-bg);border-radius:.4rem;overflow:hidden;cursor:pointer}.frame-progress::-webkit-progress-bar{background-color:var(--range-bg);border-radius:.4rem}.frame-progress::-webkit-progress-value{background-color:var(--accent-color);border-radius:.4rem;transition:width .1s ease}.frame-progress::-moz-progress-bar{background-color:var(--accent-color);border-radius:.4rem;transition:width .1s ease}.frame-counter{font-size:1.2rem;color:var(--text-muted);text-align:center}@media (min-width: 768px){.gif-controls{padding:1.2rem}.progress-container{flex-direction:row;align-items:center}.frame-progress{flex:1}.frame-counter{min-width:10rem;text-align:right}}@media (max-width: 480px){.control-btn{width:3.5rem;height:3.5rem}.control-btn .icon{font-size:1.5rem}}.premium-badge-inline{display:inline-block;background:linear-gradient(45deg,gold,orange);color:#000;font-weight:600;padding:.2rem .6rem;border-radius:1rem;font-size:1rem;margin-left:.8rem;vertical-align:middle}.premium-promo{margin-top:3rem;margin-bottom:3rem;border-radius:1rem;overflow:hidden;box-shadow:0 15px 30px rgba(0,0,0,.2);max-width:600px;margin-left:auto;margin-right:auto}.premium-promo-content{background:linear-gradient(135deg,var(--panel-bg),rgba(74,144,226,.1));border:1px solid var(--border-color);border-radius:1rem;padding:2.5rem;text-align:center;position:relative;overflow:hidden}.premium-promo-content h3{font-size:2.2rem;margin-bottom:1.5rem;color:var(--accent-color)}.premium-features-list li{font-size:1.5rem;margin-bottom:.8rem;color:var(--text-color)}.premium-btn{background:linear-gradient(45deg,gold,orange);color:#000;border:none;padding:1rem 2rem;border-radius:.5rem;font-size:1.6rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 8px rgba(0,0,0,.2)}.premium-btn:hover{transform:translateY(-2px);box-shadow:0 6px 12px rgba(0,0,0,.3)}.format-option[data-premium=true]{position:relative}.format-option[data-premium=true]:after{content:"Premium";position:absolute;top:-10px;right:-10px;background:linear-gradient(45deg,gold,orange);color:#000;font-size:.9rem;font-weight:600;padding:2px 6px;border-radius:10px;box-shadow:0 2px 4px rgba(0,0,0,.2);transform:rotate(10deg)}.format-option[data-premium=true].disabled{opacity:.7;cursor:pointer!important;border-color:rgba(255,215,0,.5)}.gif-limit-indicator{background-color:var(--panel-bg);border-radius:.6rem;padding:.8rem 1rem;margin-top:.8rem;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--panel-shadow);font-size:1.3rem}.upgrade-mini-btn{font-size:1.2rem;padding:.3rem .8rem;background:linear-gradient(45deg,gold,orange);color:#000;border:none;border-radius:.4rem;cursor:pointer;font-weight:600;box-shadow:0 2px 4px rgba(0,0,0,.2);transition:all .2s ease}.upgrade-mini-btn:hover{transform:translateY(-1px);box-shadow:0 3px 6px rgba(0,0,0,.25)}.user-profile .premium-badge{position:absolute;top:-8px;right:-8px;font-size:.9rem;padding:.1rem .5rem;border-radius:1rem;z-index:1}.dropdown-option.upgrade-option{color:#000;background:linear-gradient(45deg,gold,orange);font-weight:600}.dropdown-option.upgrade-option svg{filter:brightness(0)}@keyframes pulse-gold{0%{box-shadow:0 0 rgba(255,215,0,.7)}70%{box-shadow:0 0 0 10px rgba(255,215,0,0)}to{box-shadow:0 0 rgba(255,215,0,0)}}.premium-locked{position:relative;overflow:hidden}.premium-locked:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:5;display:flex;align-items:center;justify-content:center}.premium-locked:after{content:"✨ Premium";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(45deg,gold,orange);color:#000;padding:.3rem .8rem;border-radius:1rem;font-size:1.2rem;font-weight:600;z-index:6;white-space:nowrap}.premium-tooltip{position:relative}.premium-tooltip:before{content:attr(title);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:var(--panel-bg);color:var(--text-color);padding:.5rem 1rem;border-radius:.4rem;font-size:1.2rem;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;box-shadow:0 3px 8px rgba(0,0,0,.2);z-index:100}.premium-tooltip:after{content:"";position:absolute;bottom:calc(100% - 5px);left:50%;transform:translate(-50%);border-width:5px;border-style:solid;border-color:var(--panel-bg) transparent transparent transparent;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;z-index:100}.premium-tooltip:hover:before,.premium-tooltip:hover:after{opacity:1;visibility:visible}.ascii-notification{position:fixed;bottom:2rem;right:2rem;padding:1rem 1.5rem;border-radius:.6rem;font-size:1.4rem;z-index:9999;box-shadow:0 5px 15px rgba(0,0,0,.3);opacity:0;transition:opacity .3s ease}.ascii-notification.success{background-color:#4caf50;color:#fff}.ascii-notification.error{background-color:#f44336;color:#fff}.ascii-notification.info{background-color:var(--accent-color);color:#fff}@media (max-width: 768px){.premium-promo-content{padding:2rem 1.5rem}.premium-promo-content h3{font-size:1.8rem}.premium-features-list li{font-size:1.4rem}.price-amount{font-size:2.5rem}.price-period{font-size:1.4rem}.premium-btn{padding:.8rem 1.5rem;font-size:1.4rem}}@media (max-width: 480px){html{font-size:58%}.button-group{flex-direction:column}.button-group button{width:100%}.ascii-output{font-size:.7rem}.header-content{justify-content:center;text-align:center}.theme-switch-wrapper{margin-top:1rem}}@media (min-width: 481px) and (max-width: 768px){.app-container{grid-template-columns:1fr}.footer-content{flex-direction:column;text-align:center}.footer-links{justify-content:center}.ascii-output{font-size:.9rem}}@media (min-width: 769px) and (max-width: 1024px){.app-container{grid-template-columns:40% 60%}}@media (min-width: 1025px){html{font-size:65%}.container{padding:0 4rem}.ascii-output{font-size:1.2rem}}@media (max-height: 500px) and (orientation: landscape){.upload-zone{padding:1.5rem}.upload-icon{font-size:2.5rem;margin-bottom:.8rem}.output-container{min-height:20rem}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:62.5%;scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1.6rem;line-height:1.6;min-height:100vh;display:flex;flex-direction:column;padding-top:0;transition:padding-top .5s ease}:root{--accent-color: #4a90e2;--accent-hover: #357abd;--text-color: #333333;--text-muted: #6e6e6e;--panel-bg: #ffffff;--input-bg: #f9fafb;--output-bg: #ffffff;--border-color: #e0e0e0;--btn-text: #ffffff;--btn-hover-bg: #f1f3f5;--range-bg: #e0e0e0;--switch-bg: #ccc;--switch-handle: #ffffff;--upload-hover-bg: rgba(74, 144, 226, .1);--panel-shadow: 0 4px 12px rgba(0, 0, 0, .1);--logo-gradient: linear-gradient(45deg, #4a90e2, #63b3ed)}body.dark-theme{--accent-color: #63b3ed;--accent-hover: #4a90e2;--text-color: #e0e0e0;--text-muted: #a0a0a0;--panel-bg: #2d2d2d;--input-bg: #3a3a3a;--output-bg: #2d2d2d;--border-color: #4a4a4a;--btn-text: #ffffff;--btn-hover-bg: #4a4a4a;--range-bg: #4a4a4a;--switch-bg: #666;--switch-handle: #e0e0e0;--upload-hover-bg: rgba(99, 179, 237, .2);--panel-shadow: 0 4px 12px rgba(0, 0, 0, .3);--logo-gradient: linear-gradient(45deg, #63b3ed, #93c5fd)}img{max-width:100%;height:auto;display:block}a{text-decoration:none;transition:color .2s ease}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}ul,ol{list-style:none}.container{width:100%;max-width:1400px;margin:0 auto;padding:0 1.5rem}.main-content{flex:1;padding:2rem 0}.app-container{display:grid;grid-template-columns:1fr;gap:2rem;margin:2rem 0;position:relative}@media (min-width: 1024px){.app-container{grid-template-columns:minmax(300px,1fr) 2fr;align-items:stretch}.controls-panel,.preview-panel{height:700px;display:flex;flex-direction:column;overflow:hidden}.controls-panel,.preview-panel{padding-bottom:0}.preview-panel .output-container{flex:1;height:calc(100% - 8rem);max-height:none;width:100%}}@media (max-width: 1023px){.app-container{grid-template-columns:1fr}.controls-panel,.preview-panel{height:auto;overflow:visible}.preview-panel .output-container{height:500px;max-height:500px}}.controls-panel.panel,.panel,.preview-panel{width:100%;max-width:100%;transition:opacity .2s ease}h1,h2,h3,h4,h5{line-height:1.2;margin-bottom:.8rem;font-weight:600;color:var(--text-color)}h1{font-size:3.2rem}h2{font-size:2.8rem}h3{font-size:2rem}p{margin-bottom:1rem;color:var(--text-muted)}.site-header{padding:1rem 0;border-bottom:1px solid var(--border-color);background-color:var(--panel-bg)}.header-content{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}.logo h1{font-size:2.4rem;margin-bottom:0;background:var(--logo-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.main-nav ul{display:flex;gap:1.5rem}.main-nav a{color:var(--text-color);font-weight:500;padding:.5rem 0;position:relative;font-size:1.4rem}.main-nav a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--accent-color);transition:width .3s ease}.main-nav a:hover:after,.main-nav a.active:after{width:100%}.theme-switch-wrapper{display:flex;align-items:center;gap:.8rem}.theme-switch{position:relative;display:inline-block;width:4rem;height:2rem}.theme-switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--switch-bg);transition:.4s;border-radius:3rem}.slider:before{position:absolute;content:"";height:1.4rem;width:1.4rem;left:.3rem;bottom:.3rem;background-color:var(--switch-handle);transition:.4s;border-radius:50%}input:checked+.slider{background-color:var(--accent-color)}input:checked+.slider:before{transform:translate(2rem)}.theme-label{font-size:1.2rem;color:var(--text-muted)}.panel{background-color:var(--panel-bg);border-radius:.8rem;padding:1.5rem;box-shadow:var(--panel-shadow)}.control-group{margin-bottom:1.5rem}.control-group h3{font-size:1.6rem;margin-bottom:1rem;color:var(--text-color);border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.control-item{margin-bottom:1rem}.control-item label{display:block;margin-bottom:.5rem;font-size:1.3rem;color:var(--text-muted)}.range-control{display:flex;align-items:center;gap:.8rem;position:relative}.range-control span{min-width:3rem;text-align:right;color:var(--text-color);font-size:1.2rem}.range-control:before{content:"";position:absolute;top:-5px;left:0;right:0;bottom:-5px;z-index:-1}input[type=range]{-webkit-appearance:none;width:100%;height:5px;background-color:var(--range-bg);border-radius:2px;outline:none;cursor:pointer;margin:5px 0;padding:0;touch-action:pan-x;-webkit-user-select:none;user-select:none;pointer-events:auto}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent-color);cursor:grab;border:none;margin-top:-5px;box-shadow:0 1px 2px rgba(0,0,0,.3);pointer-events:auto}input[type=range]:active::-webkit-slider-thumb{cursor:grabbing;background:var(--accent-hover)}input[type=range]::-moz-range-track{width:100%;height:5px;background-color:var(--range-bg);border-radius:2px}input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent-color);cursor:grab;border:none;box-shadow:0 1px 2px rgba(0,0,0,.3);pointer-events:auto}input[type=range]:active::-moz-range-thumb{cursor:grabbing;background:var(--accent-hover)}input[type=range]::-ms-track{width:100%;height:5px;background:transparent;border-color:transparent;color:transparent}input[type=range]::-ms-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent-color);cursor:grab;border:none;box-shadow:0 1px 2px rgba(0,0,0,.3);pointer-events:auto}input[type=range]:active::-ms-thumb{cursor:grabbing;background:var(--accent-hover)}input[type=range]:active+.ascii-output,input[type=range]:active~.output-container{transition:none!important}select{width:100%;padding:.8rem;background-color:var(--input-bg);color:var(--text-color);border:1px solid var(--border-color);border-radius:.4rem;font-size:1.3rem;cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 12 8'%3E%3Cpath fill='%23aaa' d='M6 7.4L0.6 2 2 0.6 6 4.6 10 0.6 11.4 2z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .8rem center;background-size:1rem}select:focus{outline:none;border-color:var(--accent-color)}.checkbox-control{display:flex;align-items:center;gap:.8rem;cursor:pointer}.checkbox-control label{margin-bottom:0;cursor:pointer;transition:none;font-size:1.3rem}.button-group{display:flex;flex-wrap:nowrap;gap:.8rem;align-items:center}button{padding:.8rem 1.2rem;border-radius:.4rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;font-size:1.3rem}.secondary-btn{background-color:transparent;border:1px solid var(--border-color);color:var(--text-color)}.secondary-btn:not(:disabled):hover{background-color:var(--btn-hover-bg);border-color:var(--text-muted)}button:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.upload-section{margin-bottom:1.5rem;position:relative;display:flex;flex-wrap:nowrap;gap:.8rem;align-items:center}.upload-zone{border:2px dashed var(--border-color);border-radius:.8rem;padding:2rem 1rem;text-align:center;cursor:pointer;transition:border-color .3s ease,background-color .3s ease;position:relative;flex:1;min-height:8rem}.upload-zone:hover,.upload-zone.dragover{border-color:var(--accent-color);background-color:var(--upload-hover-bg)}.upload-zone.loading{pointer-events:none;background-color:var(--input-bg);border-color:transparent}.upload-zone.loading-content-hidden>*:not(input):not(.loader){display:none!important}.upload-zone--small{flex:0 0 auto;padding:.6rem;min-height:auto;width:3.5rem;height:4.3rem;display:flex;align-items:center;justify-content:center;border-radius:.6rem;border:2px dashed var(--border-color);background-color:var(--input-bg);transition:border-color .3s ease,background-color .3s ease,transform .2s ease}.upload-zone--small:hover{border-color:var(--accent-color);background-color:var(--upload-hover-bg);transform:scale(1.05)}.upload-zone--small p{display:none}.upload-zone--small .upload-icon{margin-bottom:0;font-size:1.8rem;color:var(--text-muted);transition:color .3s ease}.upload-zone--small:hover .upload-icon{color:var(--accent-color)}.upload-icon{font-size:3rem;color:var(--text-muted);margin-bottom:1rem;display:block;transition:color .3s ease,transform .3s ease}.upload-zone p{color:var(--text-muted);font-size:1.3rem;margin-bottom:0}.upload-section .image-preview{display:none!important;width:35rem!important;height:35rem!important;max-width:35rem!important;max-height:35rem!important;border-radius:.6rem;object-fit:contain!important;flex:0 0 auto;overflow:hidden!important;contain:strict!important;border:2px solid var(--accent-color);box-shadow:0 2px 8px rgba(0,0,0,.15);padding:.4rem;background-color:var(--panel-bg);transition:transform .2s ease,box-shadow .2s ease}.upload-section .image-preview:hover{transform:scale(1.02);box-shadow:0 4px 12px rgba(0,0,0,.2)}.upload-section .image-preview--visible{display:block!important}.upload-section .image-preview img{width:100%!important;height:100%!important;object-fit:contain!important;display:block!important}.upload-container{margin-top:3rem;display:flex;margin-bottom:3rem;justify-content:center;min-height:200px}.upload-zone--large{width:100%;max-width:600px;height:200px;display:flex;flex-direction:column;justify-content:center;align-items:center;border:3px dashed var(--border-color);border-radius:1.2rem;background-color:var(--input-bg);cursor:pointer;transition:border-color .3s ease,background-color .3s ease,box-shadow .3s ease,transform .2s ease;box-shadow:0 4px 12px rgba(0,0,0,.05);position:relative}.upload-zone--large:hover{border-color:var(--accent-color);background-color:var(--upload-hover-bg);box-shadow:0 10px 20px rgba(0,0,0,.1);transform:translateY(-3px)}.upload-zone--large .upload-icon{font-size:4.5rem;margin-bottom:1.5rem;color:var(--accent-color);animation:pulse-icon 2s infinite ease-in-out}.upload-zone--large p{font-size:1.6rem;color:var(--text-color);text-align:center;line-height:1.6;font-weight:500}.upload-zone--large p span{font-size:1.4rem;color:var(--text-muted);display:block;margin-top:.3rem}.upload-zone--large.loading{background-color:var(--input-bg);border-color:transparent;box-shadow:none}@keyframes pulse-icon{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.preview-panel{display:flex;flex-direction:column;align-items:center;width:100%;max-width:100%}.preview-panel h3{margin-bottom:1rem}.output-container{flex:1;position:relative;background-color:var(--output-bg);border-radius:.5rem;width:100%;overflow:hidden;display:flex;justify-content:center;align-items:center}.output-container .secondary-btn{position:absolute;top:.8rem;right:.8rem;z-index:10}#fullscreen-btn{padding:0;font-size:1.1rem;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:.3rem;background-color:var(--btn-hover-bg);border:1px solid var(--border-color);line-height:1}#fullscreen-btn:hover{background-color:var(--accent-color);color:var(--btn-text)}#fullscreen-btn .icon{line-height:1}#ascii-output,#fullscreen-ascii{font-size:11px;line-height:1;white-space:pre;letter-spacing:0;transform-origin:center center;color:#fff;background-color:#000}.ascii-art.colored{font-size:11px;line-height:1;white-space:pre;background-color:#000}.ascii-line{line-height:1;font-size:11px;white-space:pre;background-color:#000}.ascii-line span{font-size:inherit;line-height:inherit;font-family:inherit;letter-spacing:inherit;display:inline;vertical-align:baseline}.ascii-line.watermark{position:absolute;bottom:10px;width:100%;text-align:center;color:#fff;font-size:calc(9px + .1vw);background:rgba(0,0,0,.6);padding:2px 0;z-index:10}#output-container{position:relative;background-color:#000;display:flex;justify-content:center;align-items:center}#gif-controls-container{background-color:transparent!important;position:absolute;bottom:10px;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;justify-content:center;padding:5px 10px;width:auto;height:auto}#fullscreen-gif-controls{background:rgba(0,0,0,.7);position:absolute;bottom:20px;left:50%;transform:translate(-50%);z-index:10000;display:flex;align-items:center;justify-content:center;gap:15px;padding:10px 15px;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.1)}#gif-controls-container button,#fullscreen-gif-controls button{background:#2a2a2a;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;cursor:pointer;transition:background .2s ease}#gif-controls-container button:hover,#fullscreen-gif-controls button:hover{background:#4a90e2}#gif-controls-container .frame-counter,#fullscreen-gif-controls .fullscreen-frame-counter{color:#ccc;font-size:12px;font-family:monospace;white-space:nowrap;margin:0 10px;flex:0 1 auto;text-align:center}#gif-preview-container{background-color:transparent}.jsgif,.jsgif div,.jsgif canvas,img[id^=gif-temp-],img[id^=gif-img-]{background-color:transparent!important}.fullscreen-container{background-color:#000;position:relative}.actions-section{display:flex;flex-direction:column;align-items:center;gap:.8rem;margin-top:1rem;width:100%;background:var(--panel-bg);padding:1rem 5rem;border-radius:.6rem;box-shadow:0 4px 12px rgba(0,0,0,.15)}@media (min-width: 1024px){.actions-section{flex-direction:row;justify-content:space-between;align-items:center;gap:1.5rem;padding:1rem 5rem}.button-group{justify-content:flex-start;flex-shrink:0}.format-selector{display:flex;flex-direction:row;align-items:center;gap:1rem;flex-grow:1;justify-content:flex-end}.format-options{display:flex;align-items:center;gap:.6rem}}@media (max-width: 1023px){.actions-section{flex-direction:column;gap:1rem;padding:1rem}.button-group{justify-content:center;width:100%}.format-selector{text-align:center;width:100%}.format-options{justify-content:center}}.format-selector{margin:0;padding:0;display:flex;flex-direction:column;align-items:center}.format-selector h4{font-size:1.4rem;margin-bottom:.6rem;color:var(--text-muted);margin-top:0;display:flex;align-items:center;gap:.5rem}.format-options{display:flex;flex-wrap:wrap;gap:.6rem}.format-option{padding:.4rem .8rem;background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;font-size:1.2rem;transition:all .2s ease;box-shadow:0 2px 4px rgba(0,0,0,.1)}.format-option:hover{background-color:var(--btn-hover-bg);transform:translateY(-1px);box-shadow:0 3px 6px rgba(0,0,0,.15)}.format-option.active{background-color:var(--accent-color);color:var(--btn-text);border-color:var(--accent-color);box-shadow:0 2px 4px rgba(0,0,0,.2)}.format-description{font-size:1rem;color:var(--text-muted);margin-top:.6rem;line-height:1.4;text-align:center}.format-option.disabled{opacity:.5;cursor:not-allowed}.format-option.disabled:hover{background-color:var(--input-bg);transform:none;box-shadow:0 2px 4px rgba(0,0,0,.1)}button:disabled,.format-option.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}button:disabled:hover,.format-option.disabled:hover{background:none;color:inherit}.loading{display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.loading div{width:1rem;height:1rem;background-color:var(--accent-color);border-radius:50%;display:inline-block;animation:bounce 1.4s infinite ease-in-out both;margin:0 .2rem}.loading div:nth-child(1){animation-delay:-.32s}.loading div:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.loader{position:absolute;top:-3px;left:-3px;right:-3px;bottom:-3px;width:auto;height:auto;background:var(--input-bg);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:1001;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .3s ease,visibility .3s ease}.loader.active{visibility:visible;opacity:1;pointer-events:auto}.loader:not(.active){display:none!important}.upload-zone-wrapper .loader{border-radius:1rem;background:var(--input-bg);border:3px solid var(--input-bg)}.app-container .loader{border-radius:.5rem}.spinner{width:50px;height:50px;border:5px solid transparent;border-top:5px solid var(--accent-color);border-right:5px solid var(--accent-color);border-radius:50%;animation:spin .8s ease-in-out infinite;position:relative}.spinner:before{content:"";position:absolute;top:5px;left:5px;right:5px;bottom:5px;border:3px solid transparent;border-top:3px solid var(--accent-hover);border-radius:50%;animation:spin 1.2s ease-in-out infinite reverse}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loader p{margin-top:1.5rem;font-size:1.8rem;font-weight:500;color:var(--text-color);letter-spacing:.5px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.site-footer{padding:1.5rem 0;border-top:1px solid var(--border-color);font-size:1.3rem;margin-top:auto;background-color:var(--panel-bg);position:relative;z-index:1}.footer-content{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem}.footer-links{display:flex;gap:1.5rem}.footer-links a{color:var(--text-muted)}.footer-links a:hover{color:var(--accent-color)}.ascii-notification{position:fixed;bottom:1.5rem;right:1.5rem;padding:.8rem 1.2rem;background-color:var(--panel-bg);color:var(--text-color);border-radius:.4rem;box-shadow:0 .2rem .5rem rgba(0,0,0,.2);z-index:9999;font-size:1.3rem;opacity:0;transition:opacity .3s ease}.error-message{position:fixed;top:1.5rem;left:50%;transform:translate(-50%);padding:.8rem 1.5rem;background-color:#ff4747;color:#fff;border-radius:.4rem;box-shadow:0 .2rem 1rem rgba(0,0,0,.2);z-index:9999;max-width:90%;text-align:center;font-size:1.3rem;animation:fadeIn .3s ease}.error-message.fade-out{animation:fadeOut .5s ease forwards}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%,-1rem)}to{opacity:1;transform:translate(-50%)}}@keyframes fadeOut{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-1rem)}}.dragging-slider *{transition:none!important}.dragging-slider .output-container{will-change:contents}.dragging-slider input[type=range]{pointer-events:auto!important;cursor:grabbing!important}.preview-header{display:flex;align-items:center;margin-bottom:.8rem;width:100%;padding:0 .4rem}.preview-header h3{margin:0;font-size:1.6rem}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,.9);overflow:hidden}.modal-content{position:relative;background-color:var(--panel-bg);margin:0;padding:0;width:100%;height:100%;overflow:hidden}.close-modal{position:absolute;top:.8rem;right:1.2rem;color:var(--text-muted);font-size:2rem;font-weight:700;cursor:pointer;z-index:1010}.close-modal:hover{color:var(--accent-color)}.fullscreen-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;overflow:hidden;position:relative}#fullscreen-ascii{background-color:var(--output-bg);color:var(--text-color);transition:background-color .3s ease,color .3s ease;white-space:pre;font-family:monospace;line-height:1}.zoom-controls{position:absolute;bottom:15px;right:15px;display:flex;gap:8px;z-index:1010}.zoom-btn{background-color:var(--panel-bg);color:var(--text-color);width:35px;height:35px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;border:1px solid var(--border-color);transition:all .2s ease}.zoom-btn:hover{background-color:var(--accent-color);color:#fff}.zoom-level{position:absolute;bottom:15px;left:15px;background-color:var(--panel-bg);color:var(--text-color);padding:4px 8px;border-radius:3px;font-size:11px;z-index:1010}@media (max-width: 1023px){.output-container{width:100%;max-width:450px;height:500px;max-height:500px}}.logo a{display:flex;align-items:center;gap:1rem;text-decoration:none}.logo-image{height:4rem;width:auto;display:block}@media (max-width: 480px){.logo a{flex-direction:column;gap:.4rem}.logo-image{height:2.5rem}.logo h1{font-size:2rem}}.welcome-text{max-width:1400px;margin:3rem auto;background-color:var(--panel-bg);border-radius:1.2rem;padding:3rem;box-shadow:0 12px 32px rgba(0,0,0,.2);text-align:center;position:relative}.welcome-content h2{font-size:3.2rem;margin-bottom:2rem;background:var(--logo-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:inline-block;font-weight:700}.features-and-promo{display:flex;flex-wrap:wrap;gap:3rem;justify-content:space-between;align-items:stretch}.features-grid{flex:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem;margin:0}.feature-item{background-color:var(--input-bg);border-radius:1rem;padding:2rem;transition:transform .3s ease,box-shadow .3s ease;box-shadow:0 4px 12px rgba(0,0,0,.1)}.feature-item:hover{transform:translateY(-8px);box-shadow:0 8px 24px rgba(0,0,0,.2)}.feature-icon{font-size:3rem;margin-bottom:1.2rem;display:block;color:var(--accent-color)}.feature-item h3{font-size:1.8rem;margin-bottom:1rem;color:var(--text-color);font-weight:600}.feature-item p{color:var(--text-muted);font-size:1.4rem;line-height:1.5}.reset-btn{width:100%;padding:1rem;background-color:var(--input-bg);color:var(--text-muted);border:1px solid var(--border-color);transition:all .2s ease}.reset-btn:hover{background-color:var(--accent-color);color:var(--btn-text)}@media (max-width: 1023px){.features-and-promo{flex-direction:column;align-items:center;gap:2rem}.features-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.premium-promo{max-width:500px;width:100%}}@media (max-width: 768px){.welcome-text{padding:2rem;margin:2rem auto}.welcome-content h2{font-size:2.4rem}.features-grid{grid-template-columns:1fr}.premium-promo-content{padding:1.5rem}}.format-option.hidden{display:none}.jsgif,.jsgif *,img[id^=gif-temp-],img[id^=gif-img-],body>canvas:not(.jsgif canvas){display:none!important}.gif-controls{display:flex;align-items:center;gap:.8rem;flex:1;min-width:0}@media (max-width: 768px){#gif-controls-container{padding:.5rem;flex-direction:column;gap:.5rem}.gif-controls{width:100%;justify-content:space-between}}.premium-badge{display:inline-block;background:linear-gradient(45deg,gold,orange);color:#000;font-weight:600;padding:.5rem 1rem;border-radius:2rem;font-size:1.4rem;margin-bottom:1rem;box-shadow:0 2px 5px rgba(0,0,0,.2)}.premium-promo{flex:1;min-width:300px;margin:0;border-radius:1rem;overflow:hidden;box-shadow:0 12px 24px rgba(0,0,0,.2)}.premium-promo-content{background:linear-gradient(135deg,var(--panel-bg),rgba(74,144,226,.15));border:1px solid var(--border-color);border-radius:1rem;padding:2rem;text-align:center;position:relative;overflow:hidden}.premium-promo-content:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,gold,orange)}.premium-promo-content h3{font-size:2.2rem;margin-bottom:1.5rem;color:var(--text-color);font-weight:600}.premium-features-list{list-style:none;padding:0;margin:0 0 2rem;text-align:center}.premium-features-list li{font-size:1.5rem;margin-bottom:.8rem;color:var(--text-muted)}.premium-price{margin:1.5rem 0;display:flex;align-items:baseline;justify-content:center;gap:.5rem}.price-amount{font-size:3rem;font-weight:700;color:var(--text-color)}.price-period{font-size:1.6rem;color:var(--text-muted)}.premium-btn{background:linear-gradient(45deg,gold,#ffca28);color:#1a1a1a;border:none;padding:1rem 2rem;border-radius:.5rem;font-size:1.6rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px rgba(0,0,0,.2)}.premium-btn:hover{transform:translateY(-3px);box-shadow:0 6px 16px rgba(0,0,0,.3)}.premium-note{margin-top:1.5rem;font-size:1.3rem;color:var(--text-muted);font-style:italic}.control-panel-premium{margin-top:2rem;padding:1.5rem;background:linear-gradient(135deg,var(--panel-bg),rgba(74,144,226,.1));border:1px solid var(--border-color);border-radius:.8rem;text-align:center}.control-panel-premium p{margin-bottom:1rem;color:var(--text-color);font-size:1.3rem}.premium-highlight{border:1px solid #FFD700!important;background:rgba(255,215,0,.1)!important;color:var(--text-color)!important;font-weight:500}.premium-highlight:hover{background:rgba(255,215,0,.2)!important}select option[data-premium=true]{background-color:rgba(255,215,0,.1);color:var(--text-color)}@media (max-width: 768px){.premium-promo-content{padding:1.5rem}.premium-promo-content h3{font-size:1.8rem}.premium-features-list li{font-size:1.4rem}.price-amount{font-size:2.5rem}.price-period{font-size:1.4rem}.premium-btn{padding:.8rem 1.5rem;font-size:1.4rem}}.login-banner{position:fixed;top:0;left:0;right:0;background-color:#2196f3;color:#fff;padding:10px;text-align:center;z-index:1000;font-size:16px;display:flex;justify-content:center;align-items:center;gap:10px;box-shadow:0 2px 5px rgba(0,0,0,.2);opacity:1;transition:opacity .5s ease}.login-banner button{background-color:#fff;color:#2196f3;border:none;padding:5px 10px;border-radius:4px;cursor:pointer;font-weight:700}.login-banner button:hover{background-color:#e0e0e0}body.login-banner-active{padding-top:40px;transition:padding-top .5s ease}.manage-subscription-option{display:flex;align-items:center;padding:12px 16px;border-radius:6px;cursor:pointer;transition:background-color .2s ease;color:var(--text-color)}.manage-subscription-option:hover{background-color:rgba(255,0,0,.1);color:#ff3a30}.manage-subscription-option svg{margin-right:12px;flex-shrink:0}.manage-subscription-option span{font-size:14px;font-weight:500}.manage-subscription-option.subscription-ending{opacity:.7;cursor:default}.manage-subscription-option.subscription-ending:hover{background-color:transparent;color:var(--text-color)}.cancel-subscription-confirm{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.6);z-index:1000;display:flex;justify-content:center;align-items:center}.cancel-subscription-dialog{background-color:var(--bg-color);border-radius:10px;box-shadow:0 4px 20px rgba(0,0,0,.2);padding:24px;width:90%;max-width:450px;text-align:center;animation:dialogFadeIn .3s ease forwards}.cancel-subscription-dialog h3{margin-top:0;margin-bottom:16px;color:var(--text-color);font-size:18px}.cancel-subscription-dialog p{margin-bottom:24px;color:var(--text-secondary);font-size:14px;line-height:1.5}.cancel-subscription-dialog .btn-container{display:flex;justify-content:center;gap:16px}.cancel-subscription-dialog .btn{padding:10px 20px;border-radius:6px;font-weight:500;cursor:pointer;border:none;font-size:14px;transition:all .2s ease}.cancel-subscription-dialog .btn-cancel{background-color:#f1f1f1;color:#333}.cancel-subscription-dialog .btn-cancel:hover{background-color:#e0e0e0}.cancel-subscription-dialog .btn-confirm{background-color:#ff3a30;color:#fff}.cancel-subscription-dialog .btn-confirm:hover{background-color:#e6352c}.subscription-status{margin-top:12px;padding-top:12px;border-top:1px solid rgba(128,128,128,.2);font-size:12px;color:var(--text-secondary)}.subscription-status .end-date{font-weight:700;color:var(--text-color)}.subscription-ending-icon{display:inline-block;margin-left:8px;color:#ff9500;font-size:14px}.subscription-info{font-size:11px;color:rgba(255,255,255,.7);background-color:rgba(0,0,0,.2);border-radius:4px;padding:3px 8px;margin-top:4px;margin-left:8px;display:inline-block;vertical-align:middle}.subscription-info.ending{background-color:rgba(255,149,0,.2);color:#ff9500}@keyframes dialogFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.user-profile{display:flex;align-items:center;position:relative}.user-profile .premium-badge+.subscription-info{position:absolute;top:-10px;right:20px;font-size:10px;padding:2px 4px;margin:0}.user-profile-wrapper{display:flex;align-items:center;gap:8px}.subscription-info{font-size:11px;color:rgba(255,255,255,.7);background-color:rgba(0,0,0,.2);border-radius:4px;padding:3px 8px;display:inline-flex;align-items:center;gap:4px}#gif-preview-container{position:relative;overflow:hidden}.auth-loader{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.8);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:10000;opacity:0;transition:opacity .3s ease}.auth-loader.active{display:flex;opacity:1}.auth-loader .spinner{border:4px solid #f3f3f3;border-top:4px solid var(--accent-color, #4a90e2);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}.upload-limits{font-size:.8rem;color:var(--text-secondary);margin-top:.5rem;opacity:.75}.loader.active{display:flex!important;opacity:1!important;z-index:9999!important;position:fixed!important;background-color:rgba(0,0,0,.85)!important;backdrop-filter:blur(3px)}.loader .spinner,.loader .loader-message,.loader .progress-text{z-index:10000;position:relative}.loader .loader-message{color:#fff!important;margin-top:1.5rem;font-size:1.8rem;font-weight:500;text-shadow:0 2px 4px rgba(0,0,0,.5)}.loader .progress-text{color:#fff!important;margin-top:.8rem}.gif-controls{display:flex;align-items:center;gap:10px;margin-top:10px;justify-content:center}.playback-controls{display:flex;gap:5px}.control-btn{background:#333;border:1px solid #555;color:#fff;padding:5px 10px;cursor:pointer;border-radius:4px}.control-btn:hover{background:#4a90e2}.progress-container{flex-grow:1;display:flex;align-items:center;gap:10px}.frame-progress{width:100%;height:10px}.frame-counter{color:#ddd;font-size:14px}.auth-menu-loader{display:flex;align-items:center;justify-content:center;height:40px;min-width:40px}.auth-menu-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:var(--accent-color, #4a90e2);animation:auth-spin .8s ease-in-out infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-btn{display:flex;align-items:center;padding:8px 15px;color:#fff;background-color:var(--accent-color, #4a90e2);border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:background-color .3s ease}.auth-btn:hover{background-color:var(--accent-hover, #3a80d2)}#video-quality-select{width:100%;padding:.8rem;border-radius:.4rem;border:1px solid var(--border-color);background:var(--panel-bg);color:var(--text-color);font-size:1.2rem;cursor:pointer}#video-quality-select:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px rgba(74,144,226,.2)}.contact-fab{position:fixed;bottom:2rem;right:2rem;z-index:1000;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.contact-fab-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:60px;padding:1.2rem 1.8rem;display:flex;align-items:center;gap:1rem;box-shadow:0 8px 32px rgba(102,126,234,.3),0 4px 16px rgba(0,0,0,.1);transition:all .4s cubic-bezier(.175,.885,.32,1.275);border:2px solid rgba(255,255,255,.2);backdrop-filter:blur(20px);position:relative;overflow:hidden}.contact-fab:hover .contact-fab-button{transform:translateY(-4px) scale(1.05);box-shadow:0 12px 40px rgba(102,126,234,.4),0 8px 24px rgba(0,0,0,.15);background:linear-gradient(135deg,#764ba2,#667eea)}.contact-icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center}.contact-icon{font-size:1.8rem;animation:float 3s ease-in-out infinite;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.contact-ping{position:absolute;width:100%;height:100%;border-radius:50%;background:rgba(255,255,255,.7);animation:ping 2s cubic-bezier(0,0,.2,1) infinite}.contact-content{display:flex;flex-direction:column;gap:.2rem}.contact-text{font-weight:700;font-size:1.1rem;line-height:1.2;text-shadow:0 1px 2px rgba(0,0,0,.1)}.contact-subtext{font-weight:500;font-size:.85rem;opacity:.9;line-height:1.1}.contact-tooltip{position:absolute;bottom:100%;right:0;margin-bottom:1rem;opacity:0;transform:translateY(10px) scale(.9);transition:all .3s cubic-bezier(.175,.885,.32,1.275);pointer-events:none}.tooltip-content{background:linear-gradient(135deg,#2d3748,#1a202c);color:#fff;padding:1rem 1.2rem;border-radius:12px;font-size:.9rem;white-space:nowrap;box-shadow:0 8px 32px rgba(0,0,0,.3),0 4px 16px rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.1);position:relative}.contact-fab:hover .contact-tooltip{opacity:1;transform:translateY(0) scale(1)}.contact-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:10000;display:none;opacity:0;transition:opacity .4s cubic-bezier(.25,.46,.45,.94)}.contact-modal.active{display:flex;opacity:1}.contact-modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(0,0,0,.7),rgba(102,126,234,.3));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.contact-modal-content{position:relative;margin:auto;max-width:900px;width:90%;max-height:90vh;overflow:hidden;border-radius:24px;z-index:10001;animation:modalSlideIn .5s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 32px 64px rgba(0,0,0,.3),0 16px 32px rgba(102,126,234,.2),inset 0 1px rgba(255,255,255,.1)}.contact-modal-close{position:absolute;top:1.5rem;right:1.5rem;width:44px;height:44px;border:none;background:rgba(0,0,0,.6);color:#fff;border-radius:50%;font-size:1.5rem;cursor:pointer;z-index:10002;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.175,.885,.32,1.275);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2)}.contact-modal-close:hover{background:linear-gradient(135deg,#ff6b6b,#ff5252);transform:scale(1.1) rotate(90deg);box-shadow:0 8px 24px rgba(255,107,107,.4)}.super-contact-section{background:linear-gradient(145deg,var(--bg-secondary, #1e1e2e) 0%,var(--panel-bg, #2a2a3e) 50%,var(--bg-secondary, #1a1a2e) 100%);position:relative;overflow:hidden}.super-contact-section:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2,#f093fb,#f5576c);background-size:300% 300%;animation:gradientShift 4s ease infinite}.super-contact-section:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(102,126,234,.1) 0%,transparent 70%);animation:contactFloat 6s ease-in-out infinite;pointer-events:none}.contact-header{padding:3rem 3rem 2rem;text-align:center;position:relative;z-index:2}.contact-hero{position:relative}.contact-emoji{font-size:4rem;display:block;margin-bottom:1.5rem;animation:wave 2s ease-in-out infinite;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))}.contact-hero h3{font-size:2.5rem;font-weight:700;background:linear-gradient(135deg,var(--accent-color, #667eea) 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1rem;line-height:1.2}.contact-intro{font-size:1.2rem;color:var(--text-muted, #a0a0b0);line-height:1.6;max-width:600px;margin:0 auto;font-weight:400}.super-contact-form{padding:0 3rem 3rem;position:relative;z-index:2}.form-header{text-align:center;margin-bottom:2.5rem}.form-header h4{font-size:1.8rem;color:var(--text-color, #ffffff);margin-bottom:.5rem;font-weight:600}.form-header p{color:var(--text-muted, #888899);font-size:1.1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.form-group{margin-bottom:1.5rem;position:relative}.form-group label{display:flex;align-items:center;gap:.5rem;margin-bottom:.8rem;font-size:1.1rem;font-weight:600;color:var(--text-color, #e0e0e0)}.label-icon{font-size:1.2rem;opacity:.8}.form-group input,.form-group select,.form-group textarea{width:100%;padding:1rem 1.2rem;border:2px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.05);color:var(--text-color, #ffffff);font-size:1rem;transition:all .3s cubic-bezier(.25,.46,.45,.94);backdrop-filter:blur(10px);font-family:inherit;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-color, #667eea);background:rgba(102,126,234,.1);box-shadow:0 0 0 4px rgba(102,126,234,.2),0 8px 32px rgba(102,126,234,.1);transform:translateY(-2px)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted, #888899);opacity:1}.form-group select{cursor:pointer}.form-group select option{background:var(--panel-bg, #2a2a3e);color:var(--text-color, #ffffff)}.form-group textarea{resize:vertical;min-height:120px;line-height:1.5}.char-counter{margin-top:.5rem}.char-counter small{color:var(--text-muted, #888899);font-size:.9rem;font-style:italic}.super-submit-btn{width:100%;padding:1.2rem 2rem;border:none;border-radius:16px;background:linear-gradient(135deg,var(--accent-color, #667eea) 0%,#764ba2 100%);color:#fff;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden;box-shadow:0 8px 32px rgba(102,126,234,.4),inset 0 1px rgba(255,255,255,.2)}.super-submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .6s ease}.super-submit-btn:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(102,126,234,.5),inset 0 1px rgba(255,255,255,.3);background:linear-gradient(135deg,#764ba2 0%,var(--accent-color, #667eea) 100%)}.super-submit-btn:hover:before{left:100%}.super-submit-btn:active{transform:translateY(-1px)}.btn-content{display:flex;align-items:center;justify-content:center;gap:.8rem}.btn-icon{font-size:1.3rem;animation:bounce 1s ease infinite}.btn-text{font-weight:700;letter-spacing:.5px}.form-footer{text-align:center;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}.form-footer p{color:var(--accent-color, #667eea);font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.form-footer small{color:var(--text-muted, #888899);font-size:.9rem;opacity:.8}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes ping{75%,to{transform:scale(2);opacity:0}}@keyframes modalSlideIn{0%{transform:scale(.8) translateY(-50px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes contactFloat{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(180deg)}}@keyframes wave{0%,to{transform:rotate(0)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@media (max-width: 768px){.contact-fab{bottom:1.5rem;right:1.5rem}.contact-tooltip{display:none}.contact-modal-content{width:95%;margin:1rem auto;border-radius:16px}.contact-header{padding:2rem 1.5rem 1.5rem}.super-contact-form{padding:0 1.5rem 2rem}.contact-hero h3{font-size:2rem}.contact-intro{font-size:1.1rem}.form-row{grid-template-columns:1fr;gap:1rem}.form-group input,.form-group select,.form-group textarea{padding:.9rem 1rem;font-size:.95rem}.super-submit-btn{padding:1rem 1.5rem;font-size:1.1rem}.contact-modal-close{top:1rem;right:1rem;width:40px;height:40px}}@media (max-width: 480px){.contact-modal-content{width:98%;max-height:95vh;margin:.5rem auto}.contact-header{padding:1.5rem 1rem 1rem}.super-contact-form{padding:0 1rem 1.5rem}.contact-hero h3{font-size:1.8rem}.contact-emoji{font-size:3rem}}.contact-modal-content::-webkit-scrollbar{width:8px}.contact-modal-content::-webkit-scrollbar-track{background:rgba(255,255,255,.1);border-radius:4px}.contact-modal-content::-webkit-scrollbar-thumb{background:linear-gradient(135deg,var(--accent-color, #667eea),#764ba2);border-radius:4px}.contact-modal-content::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#764ba2,var(--accent-color, #667eea))}.loading-creations{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem}.loading-creations .spinner{width:50px;height:50px;border:5px solid transparent;border-top:5px solid var(--accent-color);border-right:5px solid var(--accent-color);border-radius:50%;animation:spin .8s ease-in-out infinite;margin-bottom:1.5rem}.loading-creations p{color:var(--text-muted);font-size:1.4rem;margin:0}.tutorial-section{animation:fadeInUp .6s ease-out}.tutorial-grid-two{display:grid;grid-template-columns:1fr 1fr;gap:2rem;justify-items:center;align-items:start}.tutorial-item.video-item{width:100%;max-width:400px;animation:slideIn .6s ease-out}.tutorial-item.video-item:nth-child(2n){animation-delay:.2s}.video-embed{margin-bottom:1rem;border-radius:.8rem;overflow:hidden;background-color:#000;aspect-ratio:16/9;width:100%}.video-embed iframe{width:100%;height:100%;border:none}.video-embed.tiktok-embed{aspect-ratio:auto;height:auto;width:auto;max-width:100%;margin:0 auto;background-color:transparent;overflow:visible;border-radius:0}.video-embed.tiktok-embed blockquote{margin:0 auto!important;padding:0!important;width:auto!important;height:auto!important;max-width:100%!important;background:transparent!important;border:none!important}.platform-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:2.5rem;padding-bottom:1.5rem;border-bottom:3px solid var(--border-color);position:relative;overflow:hidden}.platform-header:before{content:"";position:absolute;bottom:0;left:0;width:0;height:3px;background:linear-gradient(90deg,var(--accent-color),var(--accent-hover));transition:width .8s ease}.platform-header:hover:before{width:100%}.platform-icon{font-size:2.5rem;color:var(--accent-color);filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.platform-link{background:linear-gradient(135deg,var(--accent-color),var(--accent-hover));color:#fff;text-decoration:none;font-size:1.3rem;font-weight:600;padding:.8rem 1.8rem;border-radius:2rem;margin-left:auto;transition:all .3s ease;box-shadow:0 4px 15px rgba(74,144,226,.3);position:relative;overflow:hidden}.platform-link:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .6s ease}.platform-link:hover{box-shadow:0 6px 20px rgba(74,144,226,.4);background:linear-gradient(135deg,var(--accent-hover),var(--accent-color))}.platform-link:hover:before{left:100%}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@media (max-width: 768px){.tutorial-grid-two{grid-template-columns:1fr;justify-items:center;gap:1.5rem}.tutorial-item.video-item{max-width:none;width:100%}.platform-header{flex-direction:column;text-align:center;gap:1rem}.platform-link{margin-left:0;padding:.7rem 1.5rem;font-size:1.2rem}}.settings-tabs{display:flex;margin-bottom:1.5rem;background-color:var(--input-bg, #2a2a2a);border-radius:6px;padding:2px;border:1px solid var(--border-color, #444)}.tab-btn{flex:1;background:none;border:none;padding:8px 12px;color:var(--text-muted, #888);cursor:pointer;border-radius:4px;transition:all .2s ease;font-size:13px;font-weight:500;font-family:inherit;position:relative;white-space:nowrap;text-align:center;line-height:1.2}.tab-btn:hover{color:var(--text-color, #fff);background-color:rgba(255,255,255,.05)}.tab-btn.active{color:var(--text-color, #fff);background-color:var(--accent-color, #4a90e2);box-shadow:0 1px 3px rgba(0,0,0,.2)}.tab-btn:focus{outline:none;box-shadow:0 0 0 2px rgba(74,144,226,.3)}.tab-content{display:none;animation:fadeIn .2s ease-in-out}.tab-content.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.settings-tabs{margin-bottom:1rem;padding:2px}.tab-btn{padding:6px 10px;font-size:12px}}.tab-btn{position:relative}.tab-indicator{position:absolute;top:4px;right:6px;width:8px;height:8px;background-color:var(--accent-color);border-radius:50%;opacity:0;transition:opacity .3s ease;box-shadow:0 0 4px rgba(74,144,226,.5)}.tab-indicator.modified{opacity:1}.reset-btn{background:var(--input-bg);border:1px solid var(--border-color);color:var(--text-color);padding:.4rem .6rem;border-radius:4px;cursor:pointer;font-size:1rem;transition:all .3s ease;opacity:0;margin-bottom:1rem}.reset-btn.visible{opacity:1}.reset-btn:hover{background:var(--accent-color);color:#fff}.checkbox-control{display:flex;align-items:center;gap:.5rem}.checkbox-control input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-group{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:.5rem}.checkbox-item{margin-bottom:0!important}.checkbox-item label{font-size:.9rem;margin-bottom:.3rem}.checkbox-control{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem;background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;transition:all .3s ease}.checkbox-control:hover{border-color:var(--accent-color)}.checkbox-control input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--accent-color)}.checkmark{font-size:.8rem;color:var(--text-secondary)}:root{--accent-color: #00b3ff;--accent-hover: #0095d9;--secondary-color: #ff4081;--logo-gradient: linear-gradient(90deg, var(--accent-color), var(--secondary-color))}.dark-theme,body:not(.light-theme){--bg-color: #121212;--text-color: #e0e0e0;--text-muted: #a0a0a0;--border-color: #333;--panel-bg: #1e1e1e;--panel-shadow: 0 4px 6px rgba(0, 0, 0, .15);--input-bg: #2a2a2a;--btn-text: #fff;--btn-hover-bg: rgba(255, 255, 255, .05);--output-bg: #262626;--range-bg: #333;--switch-bg: #444;--switch-handle: #fff;--upload-hover-bg: rgba(0, 179, 255, .05);--export-bg: #000000;--export-text: #ffffff}.light-theme{--bg-color: #f5f5f5;--text-color: #333;--text-muted: #666;--border-color: #ddd;--panel-bg: #fff;--panel-shadow: 0 4px 6px rgba(0, 0, 0, .05);--input-bg: #f0f0f0;--btn-text: #fff;--btn-hover-bg: rgba(0, 0, 0, .05);--output-bg: #f9f9f9;--range-bg: #ddd;--switch-bg: #ccc;--switch-handle: #fff;--upload-hover-bg: rgba(0, 179, 255, .05);--export-bg: #ffffff;--export-text: #000000}body{background-color:var(--bg-color);color:var(--text-color)}.site-header,.main-content,.site-footer{color:var(--text-color)}body,body *{transition:background-color .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease}.ascii-output{background-color:var(--output-bg);color:var(--text-color)}
