:root{--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--bg-tertiary: #e9ecef;--text-primary: #212529;--text-secondary: #6c757d;--text-tertiary: #adb5bd;--border-color: #dee2e6;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .12), 0 1px 2px rgba(0, 0, 0, .24);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1), 0 2px 4px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1), 0 4px 6px rgba(0, 0, 0, .05);--primary: #6366f1;--primary-hover: #4f46e5;--primary-light: #e0e7ff;--success: #10b981;--success-light: #d1fae5;--danger: #ef4444;--danger-light: #fee2e2;--warning: #f59e0b;--warning-light: #fef3c7;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease}[data-theme=dark]{--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--bg-tertiary: #3d3d3d;--text-primary: #f8f9fa;--text-secondary: #adb5bd;--text-tertiary: #6c757d;--border-color: #495057;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .5), 0 1px 2px rgba(0, 0, 0, .6);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4), 0 2px 4px rgba(0, 0, 0, .5);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .5), 0 4px 6px rgba(0, 0, 0, .4)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-secondary);color:var(--text-primary);line-height:1.5;transition:background var(--transition-base),color var(--transition-base);min-height:100vh;overflow:hidden}.screen{display:none!important;min-height:100vh;position:fixed;top:0;left:0;right:0;bottom:0;overflow-y:auto;z-index:1}.screen.active{display:flex!important;flex-direction:column}.logo-header{display:flex;align-items:center;gap:var(--spacing-sm)}.text-logo{display:flex;align-items:center;font-size:1.5rem;font-weight:700;margin:0}.brand-text{color:var(--primary)}.overlay-text{color:#fff}[data-theme=light] .overlay-text{color:#000}.header{background:var(--bg-primary);border-bottom:1px solid var(--border-color);padding:var(--spacing-md) var(--spacing-xl);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:100}.header-content{display:flex;justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto}.header-right{display:flex;align-items:center;gap:var(--spacing-lg)}.credits-badge{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--primary-light);color:var(--primary);border-radius:var(--radius-lg);font-weight:600;font-size:.875rem}.credits-badge svg{width:1.25rem;height:1.25rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;font-family:inherit;cursor:pointer;transition:all var(--transition-fast);text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn svg{width:1.25rem;height:1.25rem}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:var(--border-color)}.btn-sm{padding:var(--spacing-xs) var(--spacing-md);font-size:.8125rem}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:1rem}.btn-icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;padding:0;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.btn-icon:hover{background:var(--bg-tertiary);color:var(--text-primary)}.btn-icon svg{width:1.5rem;height:1.5rem}[data-theme=light] .icon-dark,[data-theme=dark] .icon-light{display:none}.user-menu{position:relative}.dropdown{position:absolute;top:calc(100% + var(--spacing-sm));right:0;min-width:200px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--spacing-sm);display:none;z-index:1000}.dropdown.active{display:block}.dropdown-item{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);border:none;background:transparent;color:var(--text-primary);text-align:left;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast);font-size:.875rem;font-family:inherit}.dropdown-item:hover{background:var(--bg-tertiary)}.dropdown-item svg{width:1rem;height:1rem}.dropdown-divider{height:1px;background:var(--border-color);margin:var(--spacing-sm) 0}.main-content{flex:1;padding:var(--spacing-2xl) var(--spacing-md);contain:layout style paint}.container{max-width:1400px;margin:0 auto}.upload-section{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);margin-bottom:var(--spacing-2xl)}.images-logo-card{grid-column:1;display:flex;flex-direction:column;gap:var(--spacing-lg)}.logo-section h3,.images-section h3{margin:0 0 var(--spacing-md) 0;font-size:1rem;font-weight:600;color:var(--text-primary)}.logo-section h3{margin-bottom:var(--spacing-sm)}.images-section h3{display:flex;align-items:center;justify-content:space-between}#image-count{font-size:.875rem;color:var(--text-secondary);font-weight:400}.logo-area{min-height:45px;max-height:110px}.images-area{min-height:100px;max-height:160px}.preview-card{grid-column:2;background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-md);height:fit-content}.upload-card{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-md)}.upload-area{position:relative;border:2px dashed var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg);text-align:center;cursor:pointer;transition:all var(--transition-base);min-height:50px;display:flex;align-items:center;justify-content:center}.upload-area:hover{border-color:var(--primary);background:var(--primary-light)}.upload-area.drag-over{border-color:var(--primary);background:var(--primary-light);transform:scale(1.02)}.upload-placeholder svg{width:1.5rem;height:1.5rem;color:var(--text-tertiary);margin-bottom:0;display:block;margin-left:auto;margin-right:auto}.upload-placeholder{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm)}.upload-placeholder h3{font-size:.875rem;font-weight:600;color:var(--text-primary);margin:0}.upload-placeholder p{color:var(--text-secondary);font-size:.75rem;margin:0}.file-types{display:inline-block;padding:var(--spacing-xs) var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-sm);font-size:.75rem;color:var(--text-tertiary)}.upload-preview{position:relative}.upload-preview img{max-width:100%;max-height:100px;border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.btn-remove{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);width:2rem;height:2rem;padding:0;background:var(--danger);color:#fff;border:none;border-radius:50%;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.btn-remove:hover{transform:scale(1.1);box-shadow:var(--shadow-md)}.btn-remove svg{width:1rem;height:1rem}.preset-controls{margin-top:var(--spacing-lg);display:flex;gap:var(--spacing-sm);align-items:flex-end}.preset-controls label{font-size:.875rem;font-weight:500;color:var(--text-secondary);margin-right:var(--spacing-sm)}.preset-controls select{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);font-family:inherit;font-size:.875rem;cursor:pointer}.logo-preview-container label{display:block;font-size:.875rem;font-weight:500;color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.preview-box{background:var(--bg-secondary);border:2px dashed var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);display:flex;justify-content:center;align-items:center}#preview-canvas{max-width:100%;height:auto;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.logo-preview-container small{display:block;margin-top:var(--spacing-sm);font-size:.75rem;color:var(--text-tertiary);text-align:center}.images-list{margin-top:var(--spacing-lg);display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:var(--spacing-md)}.image-item{position:relative;aspect-ratio:1;border-radius:var(--radius-md);overflow:hidden;background:var(--bg-secondary);box-shadow:var(--shadow-sm)}.image-item img{width:100%;height:100%;object-fit:cover}.image-item .btn-remove{opacity:0;transition:opacity var(--transition-fast)}.image-item:hover .btn-remove{opacity:1}.controls-section{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-md);margin-bottom:var(--spacing-2xl);display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-xl)}.position-grid,.position-grid-9{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.position-option{cursor:pointer;position:relative}.position-option input[type=checkbox]{position:absolute;opacity:0;cursor:pointer}.position-box{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-md);background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:var(--radius-md);transition:all var(--transition-fast);font-size:.75rem;font-weight:500;color:var(--text-secondary);min-height:80px}.position-box svg{width:24px;height:24px;color:var(--text-tertiary);transition:color var(--transition-fast)}.position-option:hover .position-box{border-color:var(--primary);background:var(--primary-light)}.position-option input[type=checkbox]:checked+.position-box{border-color:var(--primary);background:var(--primary);color:#fff}.position-option input[type=checkbox]:checked+.position-box svg{color:#fff}.control-group label{display:block;font-size:.875rem;font-weight:500;color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.control-group select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);font-family:inherit;font-size:.875rem;cursor:pointer}.slider-container{display:flex;align-items:center;gap:var(--spacing-md)}.slider-container input[type=range]{flex:1;height:6px;border-radius:var(--radius-sm);background:var(--bg-tertiary);outline:none;-webkit-appearance:none}.slider-container input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:var(--primary);cursor:pointer;transition:all var(--transition-fast)}.slider-container input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:0 0 0 8px var(--primary-light)}.slider-container input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--primary);cursor:pointer;border:none;transition:all var(--transition-fast)}.slider-container input[type=range]::-moz-range-thumb:hover{transform:scale(1.2);box-shadow:0 0 0 8px var(--primary-light)}.slider-container span{min-width:50px;text-align:right;font-size:.875rem;font-weight:600;color:var(--primary)}.actions-section{display:flex;justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-2xl)}.results-section{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-md);margin-bottom:var(--spacing-2xl)}.results-section h2{font-size:1.5rem;font-weight:700;margin-bottom:var(--spacing-lg)}.progress-bar{position:relative;width:100%;height:32px;background:var(--bg-tertiary);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:var(--spacing-xl)}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--primary-hover));transition:width var(--transition-slow);border-radius:var(--radius-lg)}.progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.875rem;font-weight:600;color:var(--text-primary);z-index:1}.results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.result-item{background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-md);box-shadow:var(--shadow-sm)}.result-item img{width:100%;border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm)}.result-item a{display:block;text-align:center;color:var(--primary);text-decoration:none;font-size:.875rem;font-weight:500;transition:color var(--transition-fast)}.result-item a:hover{color:var(--primary-hover)}.ad-section{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);margin-bottom:var(--spacing-2xl)}.info-card{background:linear-gradient(135deg,var(--primary-light),var(--success-light));border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-md);text-align:center}.info-card h3{font-size:1.25rem;font-weight:700;margin-bottom:var(--spacing-md);color:var(--text-primary)}.info-card p{color:var(--text-secondary);margin-bottom:var(--spacing-lg)}.limit-text{font-size:.875rem;color:var(--text-tertiary);margin-top:var(--spacing-md)}.adsense-placeholder{background:var(--bg-primary);border:2px dashed var(--border-color);border-radius:var(--radius-lg);min-height:250px;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);font-size:.875rem}.footer{background:var(--bg-primary);border-top:1px solid var(--border-color);padding:var(--spacing-xl);text-align:center;color:var(--text-secondary);font-size:.875rem}.btn-link{background:none;border:none;color:var(--text-secondary);font-size:.875rem;cursor:pointer;padding:0;font-family:inherit;transition:color .2s}.btn-link:hover{color:var(--primary);text-decoration:underline}.modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:none;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .2s ease}.modal.active{display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-content{background:var(--card-bg);border-radius:20px;box-shadow:0 20px 60px #0000004d;max-width:480px;width:90%;position:relative;animation:slideUp .3s ease;border:1px solid var(--border-color)}.modal-close-btn{position:absolute;top:16px;right:16px;width:36px;height:36px;border-radius:50%;background:transparent;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all .2s ease;z-index:10}.modal-close-btn:hover{background:var(--bg-secondary);color:var(--text-primary);transform:rotate(90deg)}.modal-close-btn svg{width:20px;height:20px}.modal-body{padding:var(--spacing-2xl) var(--spacing-xl)}.login-required-content{text-align:center}.login-required-icon{width:80px;height:80px;margin:0 auto var(--spacing-lg);background:linear-gradient(135deg,var(--primary),var(--primary-dark));border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 10px 30px #8a2be24d}.login-required-icon svg{width:44px;height:44px}.login-required-content h2{margin:0 0 var(--spacing-md) 0;color:var(--text-primary);font-size:1.75rem;font-weight:600}.login-required-content p{margin:0 0 var(--spacing-sm) 0;color:var(--text-secondary);line-height:1.6;font-size:1rem}.login-required-content .modal-subtitle{color:var(--text-tertiary);font-size:.875rem;margin-bottom:var(--spacing-xl)}.modal-actions{display:flex;gap:var(--spacing-md);padding:0 var(--spacing-xl) var(--spacing-xl)}.modal-actions .btn{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:14px 24px;font-weight:500;border-radius:12px;transition:all .2s ease}.modal-actions .btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));box-shadow:0 4px 15px #8a2be24d}.modal-actions .btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #8a2be266}.modal-actions .btn-secondary{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.modal-actions .btn-secondary:hover{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--text-tertiary)}.modal-actions .btn svg{width:20px;height:20px}@media (max-width: 640px){.modal-content{width:95%;max-width:none;margin:var(--spacing-md)}.modal-body{padding:var(--spacing-xl) var(--spacing-lg)}.modal-actions{flex-direction:column;padding:0 var(--spacing-lg) var(--spacing-lg)}.login-required-content h2{font-size:1.5rem}}.toast-container{position:fixed;top:var(--spacing-xl);right:var(--spacing-xl);z-index:9999;display:flex;flex-direction:column;gap:var(--spacing-sm)}.toast{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md) var(--spacing-lg);box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:var(--spacing-md);min-width:300px;max-width:400px;animation:slideIn .3s ease}.toast.success{border-left:4px solid var(--success)}.toast.error{border-left:4px solid var(--danger)}.toast.warning{border-left:4px solid var(--warning)}.toast svg{width:1.25rem;height:1.25rem;flex-shrink:0}.toast-message{flex:1;font-size:.875rem}@keyframes slideIn{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9998;gap:var(--spacing-lg)}.spinner{width:48px;height:48px;border:4px solid var(--bg-tertiary);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-overlay p{color:#fff;font-size:1rem;font-weight:500}.error-message{background:var(--danger-light);color:var(--danger);padding:var(--spacing-md);border-radius:var(--radius-md);font-size:.875rem;margin-top:var(--spacing-md);display:none}.error-message.active{display:block}@media (max-width: 768px){.header{padding:var(--spacing-md)}.header-right{gap:var(--spacing-sm)}.credits-badge{font-size:.75rem;padding:var(--spacing-xs) var(--spacing-sm)}.main-content{padding:var(--spacing-lg) var(--spacing-sm)}.upload-section{grid-template-columns:1fr;grid-template-rows:auto auto}.images-logo-card{grid-column:1;grid-row:1}.preview-card{grid-column:1;grid-row:2}.ad-section,.controls-section{grid-template-columns:1fr}.actions-section{flex-direction:column}.actions-section .btn{width:100%}.toast-container{left:var(--spacing-sm);right:var(--spacing-sm)}.toast{min-width:auto}}@media (max-width: 480px){.logo-header h1{font-size:1.25rem}.upload-card{padding:var(--spacing-md)}.results-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}#auth-screen{background:#0a0f1e;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);min-height:100vh;position:relative;overflow:hidden}#auth-background{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0}.particle{position:absolute;border-radius:50%;pointer-events:none;opacity:.6;animation:float 20s infinite ease-in-out}@keyframes float{0%,to{transform:translate(0) scale(1)}25%{transform:translate(20px,-30px) scale(1.1)}50%{transform:translate(-15px,-50px) scale(.9)}75%{transform:translate(25px,-20px) scale(1.05)}}#auth-screen:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(rgba(99,102,241,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(99,102,241,.1) 1px,transparent 1px);background-size:50px 50px;animation:gridMove 20s linear infinite;z-index:0}@keyframes gridMove{0%{transform:translate(0)}to{transform:translate(50px,50px)}}#auth-screen:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 30% 50%,rgba(99,102,241,.15) 0%,transparent 50%),radial-gradient(circle at 70% 50%,rgba(139,92,246,.15) 0%,transparent 50%);animation:orbMove 15s ease-in-out infinite;z-index:0}@keyframes orbMove{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(30px,-30px) rotate(180deg)}}.auth-container{width:100%;max-width:420px;position:relative;z-index:10}.auth-card{background:#111827cc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(99,102,241,.2);border-radius:var(--radius-xl);padding:var(--spacing-2xl);box-shadow:0 25px 50px -12px #00000080,0 0 50px #6366f11a;transition:all var(--transition-normal)}.auth-card:hover{border-color:#6366f166;box-shadow:0 25px 50px -12px #00000080,0 0 80px #6366f133}.auth-card .logo-header{justify-content:center;margin-bottom:var(--spacing-md)}.auth-card .text-logo{font-size:2rem}.subtitle{text-align:center;color:var(--text-secondary);font-size:.875rem;margin-bottom:var(--spacing-2xl)}.auth-form{display:none}.auth-form.active{display:block}.auth-form h2{font-size:1.5rem;font-weight:700;margin-bottom:var(--spacing-xl);text-align:center;color:var(--text-primary)}.input-group{margin-bottom:var(--spacing-lg)}.input-group label{display:block;font-size:.875rem;font-weight:500;color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.input-group input{width:100%;padding:var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);font-family:inherit;font-size:.875rem;transition:all var(--transition-fast)}.input-group input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.input-group small{display:block;margin-top:var(--spacing-xs);font-size:.75rem;color:var(--text-tertiary)}.input-group input.password-match{border-color:#10b981}.input-group input.password-mismatch{border-color:#ef4444}.input-group small.match-feedback{font-weight:500;transition:all var(--transition-fast)}.input-group small.match-feedback.match{color:#10b981}.input-group small.match-feedback.mismatch{color:#ef4444}.auth-form .btn{width:100%;margin-bottom:var(--spacing-md);padding:var(--spacing-md);font-size:.875rem}.toggle-auth{text-align:center;margin-top:var(--spacing-lg);font-size:.875rem;color:var(--text-secondary)}.toggle-auth a{color:var(--primary);text-decoration:none;font-weight:600;transition:color var(--transition-fast)}.toggle-auth a:hover{color:var(--primary-hover);text-decoration:underline}.forgot-password-container{text-align:right;margin-bottom:var(--spacing-md)}.forgot-password-link{color:var(--primary);text-decoration:none;font-size:.875rem;font-weight:500;transition:color var(--transition-fast)}.forgot-password-link:hover{color:var(--primary-hover);text-decoration:underline}.btn-secondary svg{flex-shrink:0}.verification-content{text-align:center;padding:var(--spacing-lg) 0}.verification-icon{display:flex;justify-content:center;margin-bottom:var(--spacing-xl)}.verification-icon svg{color:var(--primary);animation:checkPulse 2s ease-in-out infinite}@keyframes checkPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}}.verification-content h2{font-size:1.5rem;font-weight:700;margin-bottom:var(--spacing-md);color:var(--text-primary)}.verification-message{font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--spacing-md);line-height:1.6}.verification-message strong{color:var(--primary);font-weight:600}.verification-instructions{font-size:.875rem;color:var(--text-tertiary);margin-bottom:var(--spacing-md);line-height:1.8;padding:var(--spacing-md);background:#6366f11a;border-radius:var(--radius-md);border-left:3px solid var(--primary);text-align:left}.verification-note{font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--spacing-xl);font-style:italic}.verification-content .btn{width:100%;margin-bottom:var(--spacing-md)}.btn-text{background:transparent;color:var(--text-secondary);border:none;padding:var(--spacing-sm);font-size:.875rem}.btn-text:hover{background:#6366f11a;color:var(--primary)}@media (max-width: 480px){.auth-card{padding:var(--spacing-xl)}.auth-card .text-logo{font-size:1.75rem}.verification-icon svg{width:48px;height:48px}}.upload-area.dragging{border-color:var(--primary);background:var(--primary-light)}.images-list:empty:after{content:"Nenhuma imagem selecionada";display:block;text-align:center;color:var(--text-tertiary);font-size:.875rem;padding:var(--spacing-xl)}.btn-primary.processing{background:var(--warning);pointer-events:none}.btn-primary.processing:before{content:"";display:inline-block;width:16px;height:16px;border:2px solid white;border-top-color:transparent;border-radius:50%;margin-right:var(--spacing-sm);animation:spin .6s linear infinite}.result-item{transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.result-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}#download-all-btn{position:relative;overflow:hidden}#download-all-btn:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#ffffff4d;border-radius:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s}#download-all-btn:active:after{width:300px;height:300px}.credits-badge.low{background:var(--warning-light);color:var(--warning);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.results-grid:empty:before{content:"Processando imagens...";display:block;text-align:center;color:var(--text-tertiary);font-size:.875rem;padding:var(--spacing-2xl);grid-column:1 / -1}.preset-controls select{transition:all var(--transition-fast)}.preset-controls select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light);outline:none}.info-card{animation:fadeInUp .6s ease}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.file-types{transition:all var(--transition-fast)}.upload-area:hover .file-types{background:var(--primary);color:#fff}.upload-preview{animation:zoomIn .3s ease}@keyframes zoomIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.image-item.loading{position:relative}.image-item.loading:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:var(--bg-secondary);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}.control-group{transition:transform var(--transition-fast)}.control-group:focus-within{transform:translateY(-2px)}.actions-section .btn{position:relative;z-index:1}.actions-section .btn:hover{z-index:2}.results-section{animation:slideDown .4s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.progress-fill{position:relative;overflow:hidden}.progress-fill:after{content:"";position:absolute;top:0;left:0;bottom:0;right:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmerProgress 2s infinite}@keyframes shimmerProgress{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (max-width: 768px){.upload-placeholder svg{width:2rem;height:2rem}.upload-placeholder h3{font-size:1rem}.images-list{grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:var(--spacing-sm)}}.cookie-consent-banner{position:fixed;bottom:0;left:0;right:0;background:var(--card-bg);box-shadow:0 -4px 20px #00000040;z-index:10000;padding:var(--spacing-lg);animation:slideUp .3s ease;border-top:3px solid var(--primary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}[data-theme=light] .cookie-consent-banner{background:#fffffffa}[data-theme=dark] .cookie-consent-banner{background:#1e1e1efa}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.cookie-consent-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:var(--spacing-xl)}.cookie-consent-text{flex:1}.cookie-consent-text h3{margin:0 0 var(--spacing-sm) 0;color:var(--text-primary);font-size:1.25rem}.cookie-consent-text p{margin:0 0 var(--spacing-sm) 0;color:var(--text-secondary);line-height:1.5}.cookie-policy-link{color:var(--primary);text-decoration:none;font-weight:500;font-size:.9rem}.cookie-policy-link:hover{text-decoration:underline}.cookie-consent-actions{display:flex;gap:var(--spacing-md);flex-shrink:0}.cookie-modal{max-width:600px}.cookie-category{background:var(--bg-secondary);border-radius:var(--border-radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-md)}.cookie-category-header{display:flex;gap:var(--spacing-md);align-items:flex-start}.cookie-category h3{margin:0 0 var(--spacing-sm) 0;font-size:1.1rem;color:var(--text-primary)}.cookie-category p{margin:0;font-size:.9rem;color:var(--text-secondary);line-height:1.5}.cookie-toggle{position:relative;display:inline-block;width:50px;height:26px;flex-shrink:0;margin-top:4px}.cookie-toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.3s;border-radius:26px}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.cookie-toggle input:checked+.toggle-slider{background-color:var(--primary)}.cookie-toggle input:checked+.toggle-slider:before{transform:translate(24px)}.cookie-toggle input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed;background-color:#4caf50}@media (max-width: 768px){.cookie-consent-content{flex-direction:column;gap:var(--spacing-md)}.cookie-consent-actions{flex-direction:column;width:100%}.cookie-consent-actions .btn{width:100%;justify-content:center}.cookie-consent-banner{padding:var(--spacing-md)}.cookie-category-header{flex-direction:column;gap:var(--spacing-sm)}}.footer-links{display:flex;gap:var(--spacing-lg);justify-content:center;flex-wrap:wrap;margin-top:var(--spacing-md)}.footer-links a{color:var(--text-secondary);text-decoration:none;font-size:.875rem;transition:color .2s}.footer-links a:hover{color:var(--primary);text-decoration:underline}@media (max-width: 640px){.footer-links{flex-direction:column;gap:var(--spacing-sm);text-align:center}}
