body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@keyframes float{0%,to{transform:translate(0) scale(1)}50%{transform:translate(20px,-20px) scale(1.05)}}@keyframes float2{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-15px,15px) scale(1.08)}}@keyframes float3{0%,to{transform:translate(0) scale(1)}50%{transform:translate(10px,10px) scale(.95)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes ripple{to{opacity:0;transform:scale(4)}}@keyframes borderDash{to{stroke-dashoffset:0}}@keyframes glow{0%,to{box-shadow:0 0 20px #7c3aed4d}50%{box-shadow:0 0 30px #7c3aed80}}.App{background:linear-gradient(135deg,#4f46e5,#7c3aed 50%,#ec4899);box-sizing:border-box;font-family:Poppins,Arial,sans-serif;height:100vh;left:0;overflow:hidden;padding:15px;position:fixed;text-align:center;top:0;width:100vw}.App:after,.App:before{border-radius:50%;content:"";pointer-events:none;position:absolute;z-index:0}.App:before{animation:float 8s ease-in-out infinite;background:radial-gradient(circle,#ec48994d 0,#0000 70%);height:400px;right:-100px;top:-100px;width:400px}.App:after{animation:float2 10s ease-in-out infinite;background:radial-gradient(circle,#4f46e54d 0,#0000 70%);bottom:-50px;height:300px;left:-50px;width:300px}.floating-orbs{height:100%;left:0;overflow:hidden;pointer-events:none;position:absolute;top:0;width:100%;z-index:0}.orb{border-radius:50%;filter:blur(40px);position:absolute}.orb-1{animation:float 12s ease-in-out infinite;background:#a78bfa40;height:200px;left:10%;top:30%;width:200px}.orb-2{animation:float2 14s ease-in-out infinite;background:#f472b633;height:250px;right:15%;top:60%;width:250px}.orb-3{animation:float3 10s ease-in-out infinite;background:#6366f140;height:150px;left:50%;top:10%;width:150px}.app-container{display:flex;gap:15px;height:calc(100vh - 30px);max-width:100%;overflow:hidden;position:relative;z-index:1}.color-palette-sidebar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#ffffff2e,#ffffff14);border:1px solid #ffffff40;border-radius:20px;box-shadow:0 8px 32px #0003,inset 0 1px 0 #fff3;flex-shrink:0;min-width:200px;overflow-y:auto;padding:20px;transition:all .3s ease;width:240px}.color-palette-sidebar:hover{box-shadow:0 12px 40px #00000040,inset 0 1px 0 #ffffff40}.color-palette-sidebar h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#e0e7ff);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:1.3rem;font-weight:700;letter-spacing:.5px;margin:0 0 20px;text-shadow:0 2px 4px #0000004d}.color-list{display:flex;flex-direction:column;gap:10px}.color-item-wrapper{position:relative}.color-item{align-items:center;animation:colorItemEnter .4s cubic-bezier(.34,1.56,.64,1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(135deg,#ffffff1f,#ffffff0f);border:1px solid #ffffff2e;border-radius:14px;box-shadow:0 4px 20px #0000001a;display:flex;gap:12px;padding:14px;transition:all .3s cubic-bezier(.4,0,.2,1)}@keyframes colorItemEnter{0%{opacity:0;transform:translateX(-20px) scale(.8)}to{opacity:1;transform:translateX(0) scale(1)}}.color-item:hover{background:linear-gradient(135deg,#ffffff38,#ffffff1f);border-color:#ffffff4d;box-shadow:0 8px 30px #0000002e,0 0 15px #a78bfa26;transform:translateX(8px) scale(1.02)}.color-item.pulse{animation:pulse .5s ease-out}.color-number{align-items:center;background:#ffffff26;border-radius:8px;color:#fff;display:flex;font-size:.85rem;font-weight:700;height:28px;justify-content:center;min-width:28px;text-shadow:0 1px 2px #0003}.color-swatch{border:2px solid #fff6;border-radius:10px;box-shadow:0 4px 12px #00000040,inset 0 1px 0 #fff3;cursor:pointer;flex-shrink:0;height:36px;transition:all .3s ease;width:36px}.color-item:hover .color-swatch{box-shadow:0 6px 20px #0000004d,0 0 15px currentColor,inset 0 1px 0 #ffffff4d;transform:scale(1.15) rotate(5deg)}.color-swatch:active{transform:scale(.9)}.color-value{border-radius:6px;color:#fffffff2;cursor:pointer;flex:1 1;font-family:SF Mono,Fira Code,monospace;font-size:.9rem;font-weight:500;padding:4px 8px;text-shadow:0 1px 2px #0003;transition:all .2s ease}.color-value:hover{background:#ffffff26}.color-value:active{transform:scale(.95)}.copy-button,.delete-button{color:#fff!important;opacity:0;transition:all .2s ease}.copy-button:hover,.delete-button:hover{background:#ffffff26!important;transform:scale(1.1)}.color-item:hover .copy-button,.color-item:hover .delete-button{opacity:1}.empty-message{color:#fffc;font-style:italic;margin-top:20px;text-align:center;text-shadow:0 1px 2px #0003}.canvas-container{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#ffffff1f,#ffffff0d);border:1px solid #fff3;border-radius:20px;box-shadow:0 8px 40px #00000026,inset 0 1px 0 #ffffff26;display:flex;flex:1 1;flex-direction:column;justify-content:center;min-width:0;overflow:hidden;transition:all .3s ease}.canvas-container:hover{box-shadow:0 12px 50px #0003,inset 0 1px 0 #fff3}h1{color:#333}h1,p{margin-bottom:20px}p{color:#666}ul{color:#444;margin-bottom:30px;text-align:left}li{margin-bottom:10px}.upload-button{background-color:#1976d2;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:10px 20px;text-transform:uppercase;transition:background-color .3s}.upload-button:hover{background-color:#1565c0}.controls-panel{align-self:flex-start;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#ffffff2e,#ffffff14);border:1px solid #ffffff40;border-radius:20px;box-shadow:0 8px 32px #0003,inset 0 1px 0 #fff3;display:flex;flex-direction:column;flex-shrink:0;gap:14px;min-width:160px;padding:20px;transition:all .3s ease;width:180px}.controls-panel:hover{box-shadow:0 12px 40px #00000040,inset 0 1px 0 #ffffff40}.controls-panel h4{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#e0e7ff);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:1.1rem;font-weight:700;letter-spacing:.5px;margin:0 0 8px;text-shadow:0 2px 4px #0000004d}.button-container{display:flex;flex-direction:column;gap:12px}.button-container button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#ffffff26,#ffffff14);border:1px solid #ffffff40;border-radius:12px;box-shadow:0 4px 15px #0000001a;color:#fff;cursor:pointer;font-family:Poppins,sans-serif;font-size:12px;font-weight:600;letter-spacing:.3px;overflow:hidden;padding:12px 14px;position:relative;text-align:center;text-overflow:ellipsis;text-shadow:0 1px 2px #0003;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap;width:100%}.button-container button:hover{background:linear-gradient(135deg,#ffffff40,#ffffff26);border-color:#ffffff80;box-shadow:0 8px 25px #0003,0 0 20px #a78bfa4d,inset 0 1px 0 #fff3;transform:translateY(-3px) scale(1.02)}.button-container button:active{box-shadow:0 2px 10px #00000026;transform:translateY(-1px) scale(.98);transition:all .1s ease}.button-container button:disabled{background:#ffffff0d;cursor:not-allowed;opacity:.5}.button-container button:disabled:hover{background:#ffffff0d;border-color:#ffffff26;box-shadow:0 4px 15px #0000001a;transform:none}@media (max-width:1200px){.color-palette-sidebar{min-width:180px;width:220px}.controls-panel{min-width:140px;width:160px}}@media (max-width:1024px){.color-palette-sidebar{min-width:160px;padding:12px;width:200px}.controls-panel{min-width:120px;padding:12px;width:140px}.button-container button{font-size:11px;padding:8px 10px}}@media (max-width:768px){.App{padding:8px}.app-container{flex-direction:column;gap:8px;height:calc(100vh - 16px)}.canvas-container{border-radius:12px;flex:1 1;min-height:40vh;order:1}.color-palette-sidebar{border-radius:12px;height:auto;max-height:none;min-width:100%;order:2;overflow:hidden;padding:8px;width:100%}.color-palette-sidebar h3{display:none}.color-list{flex-direction:row;flex-wrap:wrap;gap:6px;justify-content:center}.color-item{border-radius:8px;flex-direction:row;flex-shrink:0;gap:4px;min-width:auto;padding:4px 6px}.color-number{display:none}.color-swatch{border-radius:6px;height:32px;width:32px}.color-value{display:none}.delete-button{opacity:.7!important;padding:2px!important}.delete-button svg{font-size:16px!important}.color-item:hover{transform:none}.controls-panel{align-self:auto;border-radius:12px;min-width:100%;order:3;padding:10px;width:100%}.controls-panel h4{display:none}.button-container{flex-direction:row;flex-wrap:wrap;gap:6px}.button-container button{border-radius:8px;flex-basis:calc(50% - 3px);flex-grow:1;flex-shrink:1;font-size:11px;min-width:calc(50% - 3px);padding:10px 8px}.empty-message{font-size:.85rem;margin:8px 0}}@media (max-width:480px){.App{padding:6px}.app-container{gap:6px;height:calc(100vh - 12px)}.canvas-container{border-radius:10px;min-height:35vh}.color-palette-sidebar{border-radius:10px;padding:6px}.color-list{gap:5px}.color-item{padding:3px 5px}.color-swatch{height:28px;width:28px}.controls-panel{border-radius:10px;padding:8px}.button-container{gap:5px}.button-container button{flex-basis:calc(50% - 3px);flex-grow:1;flex-shrink:1;font-size:10px;padding:8px 6px}}@media (max-width:768px) and (orientation:landscape){.app-container{flex-direction:row;height:calc(100vh - 16px)}.canvas-container{flex:1 1;min-height:auto;order:2}.color-palette-sidebar{height:100%;max-height:none;max-width:160px;min-width:140px;order:1;overflow-x:hidden;overflow-y:auto;width:auto}.color-palette-sidebar h3{display:block;font-size:.9rem;margin-bottom:10px}.color-list{flex-direction:column}.color-item{flex-direction:row;min-width:auto}.color-value{max-width:60px}.controls-panel{align-self:stretch;height:100%;max-width:140px;min-width:120px;order:3;width:auto}.controls-panel h4{display:block;font-size:.9rem}.button-container{flex-direction:column}.button-container button{flex:none;font-size:10px;min-width:100%}}@media (max-width:360px){.button-container button{font-size:9px;padding:7px 5px}.color-swatch{height:26px;width:26px}.color-item{padding:2px 4px}.color-list{gap:4px}}.colorjar-logo{filter:drop-shadow(0 8px 16px rgba(0,0,0,.3));height:80px;width:80px}.logo-svg{height:100%;width:100%}.jar-body{animation:jarPulse 3s ease-in-out infinite}@keyframes jarPulse{0%,to{filter:brightness(1)}50%{filter:brightness(1.1)}}.jar-lid{animation:lidShine 4s ease-in-out infinite}@keyframes lidShine{0%,to{opacity:.9}50%{opacity:1}}.liquid-wave{transform-origin:center}.wave-1{animation:waveMove1 3s ease-in-out infinite}.wave-2{animation:waveMove2 4s ease-in-out infinite}@keyframes waveMove1{0%,to{transform:translateX(0) translateY(0)}25%{transform:translateX(3px) translateY(-2px)}50%{transform:translateX(0) translateY(-3px)}75%{transform:translateX(-3px) translateY(-1px)}}@keyframes waveMove2{0%,to{transform:translateX(0) translateY(0)}33%{transform:translateX(-2px) translateY(-2px)}66%{transform:translateX(2px) translateY(-1px)}}.blob{animation:blobFloat 4s ease-in-out infinite}.blob-1{animation:blobFloat1 3.5s ease-in-out infinite}.blob-2{animation:blobFloat2 4s ease-in-out infinite;animation-delay:-1s}.blob-3{animation:blobFloat3 3.8s ease-in-out infinite;animation-delay:-.5s}.blob-4{animation:blobFloat4 4.2s ease-in-out infinite;animation-delay:-1.5s}.blob-5{animation:blobFloat5 3.6s ease-in-out infinite;animation-delay:-2s}@keyframes blobFloat1{0%,to{transform:translate(0) scale(1)}50%{transform:translate(3px,-5px) scale(1.1)}}@keyframes blobFloat2{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-4px,-4px) scale(1.15)}}@keyframes blobFloat3{0%,to{transform:translate(0) scale(1)}50%{transform:translate(2px,-6px) scale(1.1)}}@keyframes blobFloat4{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-3px,-4px) scale(1.12)}}@keyframes blobFloat5{0%,to{transform:translate(0) scale(1)}50%{transform:translate(4px,-3px) scale(1.08)}}.glass-shine{animation:shineMove 3s ease-in-out infinite}@keyframes shineMove{0%,to{opacity:.4;transform:translateY(0)}50%{opacity:.6;transform:translateY(-2px)}}.glass-highlight{animation:highlightPulse 2s ease-in-out infinite}@keyframes highlightPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.8;transform:scale(1.2)}}@media (max-width:768px){.colorjar-logo{height:60px;width:60px}}@media (max-width:480px){.colorjar-logo{height:50px;width:50px}}.welcome-container{align-items:center;background:linear-gradient(135deg,#4f46e5,#7c3aed 50%,#ec4899);box-sizing:border-box;color:#fff;display:flex;flex-direction:column;font-family:Poppins,sans-serif;justify-content:center;left:0;min-height:100vh;overflow-y:auto;padding:2rem;position:fixed;text-align:center;top:0;width:100vw}.welcome-orbs{height:100%;left:0;overflow:hidden;pointer-events:none;position:absolute;top:0;width:100%;z-index:0}.welcome-orb{border-radius:50%;filter:blur(60px);position:absolute}.welcome-orb.orb-1{animation:float 10s ease-in-out infinite;background:#ec48994d;height:300px;right:-50px;top:10%;width:300px}.welcome-orb.orb-2{animation:float2 12s ease-in-out infinite;background:#6366f14d;bottom:10%;height:250px;left:-50px;width:250px}.welcome-orb.orb-3{animation:float3 8s ease-in-out infinite;background:#a78bfa40;height:200px;left:30%;top:50%;width:200px}.animate-in{animation:fadeInUp .8s ease-out forwards;opacity:0;transform:translateY(30px)}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.animate-bounce{animation:logoBounce 2s ease-in-out infinite}@keyframes logoBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.welcome-header{margin-bottom:3rem;position:relative;z-index:1}.logo-container{align-items:center;display:flex;gap:1rem;justify-content:center;margin-bottom:1rem}.logo-icon{color:#fff;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3));font-size:3.5rem!important}.app-title{-webkit-text-fill-color:#0000;animation:titleShimmer 4s ease-in-out infinite;background:linear-gradient(90deg,#fff,#f0e6ff 25%,#fce7f3 50%,#f0e6ff 75%,#fff);-webkit-background-clip:text;background-clip:text;background-size:200% 100%;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));font-size:3rem;font-weight:700;letter-spacing:-.5px;margin:0;text-shadow:none}@keyframes titleShimmer{0%,to{background-position:200% 0}50%{background-position:-200% 0}}.app-subtitle{color:#fffffff2;font-size:1.3rem;font-weight:400;letter-spacing:.3px;margin:0;text-shadow:0 1px 3px #0003}.upload-area{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#ffffff2e,#ffffff14);border:2px dashed #ffffff80;border-radius:24px;box-shadow:0 8px 40px #00000026,inset 0 1px 0 #fff3;cursor:pointer;margin-bottom:3rem;min-width:420px;overflow:hidden;padding:3.5rem 2.5rem;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);z-index:1}.upload-area:before{animation:borderGlow 3s linear infinite;background:linear-gradient(90deg,#0000,#fff6,#a78bfa80,#ec489980,#fff6,#0000);background-size:200% 100%;border-radius:26px;bottom:-2px;content:"";left:-2px;opacity:0;position:absolute;right:-2px;top:-2px;transition:opacity .3s ease;z-index:-1}.upload-area.dragging:before,.upload-area:hover:before{opacity:1}@keyframes borderGlow{0%{background-position:200% 0}to{background-position:-200% 0}}.upload-area.dragging,.upload-area:hover{background:linear-gradient(135deg,#ffffff40,#ffffff26);border-color:#fffc;box-shadow:0 20px 60px #0003,0 0 30px #a78bfa4d,inset 0 1px 0 #ffffff4d;transform:translateY(-8px) scale(1.02)}.upload-content{align-items:center;display:flex;flex-direction:column;gap:1.2rem}.upload-icon{filter:drop-shadow(0 4px 8px rgba(0,0,0,.2));font-size:4.5rem!important;opacity:.9;transition:transform .3s ease}.upload-area:hover .upload-icon{transform:translateY(-5px)}.upload-title{color:#fff;font-size:1.6rem;font-weight:700;letter-spacing:.3px;margin:0;text-shadow:0 2px 4px #0003}.upload-text{color:#ffffffd9;font-size:1.1rem;margin:0;text-shadow:0 1px 2px #0003}.browse-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#ffffff40,#ffffff26);border:1px solid #fff6;border-radius:50px;box-shadow:0 4px 15px #0000001a;color:#fff;cursor:pointer;font-family:Poppins,sans-serif;font-size:1rem;font-weight:600;letter-spacing:.5px;padding:.9rem 2.5rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.browse-button:hover{background:linear-gradient(135deg,#ffffff59,#ffffff40);border-color:#fff9;box-shadow:0 8px 25px #00000026,0 0 20px #a78bfa4d;transform:translateY(-3px) scale(1.02)}.browse-button:active{transform:translateY(-1px) scale(.98)}.url-section{margin-bottom:2rem;max-width:420px;position:relative;width:100%;z-index:1}.url-divider{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.url-divider:after,.url-divider:before{background:#ffffff4d;content:"";flex:1 1;height:1px}.url-divider span{color:#fffc;font-size:.9rem;font-weight:500;white-space:nowrap}.url-form{display:flex;gap:.75rem}.url-input-wrapper{align-items:center;display:flex;flex:1 1;position:relative}.url-input-icon{color:#fff9;font-size:1.2rem!important;left:14px;pointer-events:none;position:absolute}.url-input{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #ffffff4d;border-radius:12px;color:#fff;font-family:Poppins,sans-serif;font-size:.95rem;padding:.85rem 1rem .85rem 2.8rem;transition:all .3s ease;width:100%}.url-input::placeholder{color:#ffffff80}.url-input:focus{background:#ffffff26;border-color:#fff9;box-shadow:0 0 20px #a78bfa33;outline:none}.url-input:disabled{cursor:not-allowed;opacity:.6}.url-submit-button{background:linear-gradient(135deg,#ffffff40,#ffffff26);border:1px solid #ffffff4d;border-radius:12px;color:#fff;cursor:pointer;font-family:Poppins,sans-serif;font-size:.95rem;font-weight:600;padding:.85rem 1.5rem;transition:all .3s ease;white-space:nowrap}.url-submit-button:hover:not(:disabled){background:linear-gradient(135deg,#ffffff59,#ffffff40);box-shadow:0 4px 15px #00000026;transform:translateY(-2px)}.url-submit-button:disabled{cursor:not-allowed;opacity:.5}.url-error{animation:fadeInUp .3s ease-out;color:#fca5a5;font-size:.85rem;margin-top:.75rem;text-align:center}@media (max-width:480px){.url-section{max-width:100%}.url-form{flex-direction:column}.url-submit-button{width:100%}.url-divider span{font-size:.8rem}}.features-section{max-width:650px;position:relative;z-index:1}.features-section h3{color:#fff;font-size:1.6rem;font-weight:700;letter-spacing:.5px;margin-bottom:2rem;text-shadow:0 2px 4px #0003}.features-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(3,1fr)}.feature-item{align-items:center;animation:fadeInUp .6s ease-out forwards;border-radius:16px;display:flex;flex-direction:column;gap:1rem;opacity:0;padding:1.5rem 1rem;transform:translateY(20px);transition:all .3s ease}.feature-item:hover{background:#ffffff1a;transform:translateY(-5px)}.feature-number{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#ffffff40,#ffffff1a);border:1px solid #fff3;border-radius:50%;box-shadow:0 4px 20px #00000026,inset 0 1px 0 #fff3;display:flex;font-size:1.4rem;font-weight:700;height:60px;justify-content:center;transition:all .3s ease;width:60px}.feature-item:hover .feature-number{box-shadow:0 8px 30px #0003,0 0 20px #a78bfa4d;transform:scale(1.1)}.feature-item p{color:#fffffff2;font-size:1.05rem;font-weight:500;margin:0;text-shadow:0 1px 2px #0003}@media (max-width:768px){.welcome-container{justify-content:flex-start;padding:3rem 1.5rem 1.5rem}.welcome-header{margin-bottom:2rem}.logo-container{flex-direction:column;gap:.5rem}.logo-icon{font-size:2.5rem!important}.app-title{font-size:2rem}.app-subtitle{font-size:1rem}.upload-area{margin-bottom:2rem;max-width:350px;min-width:auto;padding:2rem 1.5rem;width:100%}.upload-icon{font-size:3rem!important}.upload-title{font-size:1.2rem}.browse-button,.upload-text{font-size:.9rem}.browse-button{padding:.6rem 1.5rem}.features-section h3{font-size:1.2rem;margin-bottom:1.5rem}.features-grid{gap:1.5rem;grid-template-columns:1fr}.feature-item{flex-direction:row;gap:1rem;text-align:left}.feature-number{flex-shrink:0;font-size:1rem;height:40px;width:40px}.feature-item p{font-size:.9rem}}@media (max-width:480px){.welcome-container{padding:2rem 1rem 1rem}.welcome-header{margin-bottom:1.5rem}.logo-icon{font-size:2rem!important}.app-title{font-size:1.6rem}.app-subtitle{font-size:.9rem}.upload-area{border-radius:16px;margin-bottom:1.5rem;padding:1.5rem 1rem}.upload-icon{font-size:2.5rem!important}.upload-title{font-size:1.1rem}.browse-button,.upload-text{font-size:.85rem}.browse-button{padding:.5rem 1.2rem}.features-section{width:100%}.features-section h3{font-size:1.1rem;margin-bottom:1rem}.feature-number{font-size:.9rem;height:35px;width:35px}.feature-item p{font-size:.85rem}}@media (max-width:360px){.app-title{font-size:1.4rem}.upload-area{padding:1.2rem .8rem}.features-section h3,.upload-title{font-size:1rem}}@media (max-width:768px) and (orientation:landscape){.welcome-container{justify-content:center;padding:1rem 2rem}.welcome-header{margin-bottom:1rem}.logo-container{flex-direction:row}.app-title{font-size:1.5rem}.upload-area{margin-bottom:1rem;max-width:300px;padding:1rem}.upload-icon{font-size:2rem!important}.upload-title{font-size:1rem}.features-section{display:none}}.toast{align-items:center;animation:slideInRight .4s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffffff2,#ffffffe6);border-radius:14px;bottom:30px;box-shadow:0 10px 40px #00000026,0 0 0 1px #fff3;display:flex;font-family:Poppins,sans-serif;gap:12px;max-width:350px;padding:14px 20px;position:fixed;right:30px;z-index:1000}.toast-exit{animation:slideOutRight .3s cubic-bezier(.4,0,.2,1) forwards}@keyframes slideInRight{0%{opacity:0;transform:translateX(120%)}to{opacity:1;transform:translateX(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(120%)}}.toast-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.toast-success .toast-icon{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 12px #10b9814d;color:#fff}.toast-info .toast-icon{background:linear-gradient(135deg,#6366f1,#4f46e5);box-shadow:0 4px 12px #6366f14d;color:#fff}.toast-error .toast-icon{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 12px #ef44444d;color:#fff}.toast-message{color:#1f2937;flex:1 1;font-size:.95rem;font-weight:500;line-height:1.4}.toast-close{align-items:center;background:#0000000d;border:none;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;transition:all .2s ease;width:28px}.toast-close:hover{background:#0000001a;color:#374151}@media (max-width:480px){.toast{bottom:20px;left:20px;max-width:none;right:20px}}.harmony-panel{animation:harmonySlideIn .3s cubic-bezier(.34,1.56,.64,1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#1e1e32f2,#141428f2);border-radius:16px;box-shadow:0 10px 40px #0000004d,0 0 0 1px #ffffff1a;left:calc(100% + 10px);padding:16px;position:absolute;top:0;width:220px;z-index:100}@keyframes harmonySlideIn{0%{opacity:0;transform:translateX(-10px) scale(.95)}to{opacity:1;transform:translateX(0) scale(1)}}.harmony-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:10px}.harmony-title{color:#fff;font-size:.9rem;font-weight:600;letter-spacing:.3px}.harmony-close{align-items:center;background:none;border:none;border-radius:6px;color:#fff9;cursor:pointer;display:flex;font-size:1.4rem;height:24px;justify-content:center;padding:0;transition:all .2s ease;width:24px}.harmony-close:hover{background:#ffffff1a;color:#fff}.harmony-base{align-items:center;background:#ffffff0d;border-radius:10px;display:flex;gap:10px;margin-bottom:14px;padding:8px}.harmony-base-swatch{border:2px solid #ffffff4d;border-radius:8px;box-shadow:0 2px 8px #0003;height:28px;width:28px}.harmony-base-label{color:#fffc;font-family:SF Mono,Fira Code,monospace;font-size:.8rem}.harmony-list{gap:12px}.harmony-group,.harmony-list{display:flex;flex-direction:column}.harmony-group{gap:6px}.harmony-group-name{color:#ffffff80;font-size:.75rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.harmony-colors{display:flex;flex-wrap:wrap;gap:8px}.harmony-swatch{border:2px solid #fff3;border-radius:10px;box-shadow:0 2px 8px #0003;cursor:pointer;height:36px;overflow:hidden;position:relative;transition:all .2s ease;width:36px}.harmony-swatch:hover{border-color:#ffffff80;box-shadow:0 4px 15px #0000004d;transform:scale(1.1)}.harmony-swatch:active{transform:scale(.95)}.harmony-add-icon{color:#fff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5));font-size:1.2rem!important;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);transition:opacity .2s ease}.harmony-swatch:hover .harmony-add-icon{opacity:1}@media (max-width:768px){.harmony-panel{bottom:20px;left:20px;position:fixed;right:20px;top:auto;width:auto}.harmony-colors{justify-content:flex-start}.harmony-swatch{height:40px;width:40px}}
/*# sourceMappingURL=main.2c68b0c6.css.map*/