:root{--primary-purple:#6b46c1;--primary-pink:#ec4899;--dark-purple:#4c1d95;--light-purple:#a78bfa;--gradient-main:linear-gradient(135deg,#6b46c1,#ec4899);--gradient-dark:linear-gradient(135deg,#4c1d95,#7c3aed);--gradient-light:linear-gradient(135deg,#a78bfa,#f9a8d4);--gradient-shine:linear-gradient(135deg,hsla(0,0%,100%,.1),hsla(0,0%,100%,0));--bg-dark:#0f0a1e;--bg-card:hsla(0,0%,100%,.06);--bg-card-hover:hsla(0,0%,100%,.1);--text-primary:#fff;--text-secondary:hsla(0,0%,100%,.7);--border-color:hsla(0,0%,100%,.12);--spacing-xs:0.5rem;--spacing-sm:1rem;--spacing-md:1.5rem;--spacing-lg:2rem;--spacing-xl:3rem;--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--shadow-sm:0 2px 10px rgba(0,0,0,.2);--shadow-md:0 8px 30px rgba(0,0,0,.3);--shadow-lg:0 20px 60px rgba(0,0,0,.4);--shadow-glow:0 0 40px rgba(236,72,153,.3)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:var(--bg-dark);color:var(--text-primary);line-height:1.6;min-height:100vh;overflow-x:hidden;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.background-gradient{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#0a0516,#1a0b2e 25%,#2d1b4e 50%,#1a0b2e 75%,#0a0516);background-size:200% 200%;animation:gradientShift 15s ease infinite;z-index:-1}@keyframes gradientShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.background-gradient:before{top:-50%;right:-20%;width:80%;height:80%;background:radial-gradient(circle,rgba(236,72,153,.2) 0,transparent 70%);animation:pulse 8s ease-in-out infinite}.background-gradient:after,.background-gradient:before{content:"";position:absolute;border-radius:50%;filter:blur(60px)}.background-gradient:after{bottom:-30%;left:-20%;width:70%;height:70%;background:radial-gradient(circle,rgba(107,70,193,.2) 0,transparent 70%);animation:pulse 10s ease-in-out infinite reverse}@keyframes pulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.1);opacity:.8}}.container{max-width:1400px;margin:0 auto;padding:0 var(--spacing-md)}header{background:rgba(15,10,30,.85);-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid var(--border-color);padding:var(--spacing-md) 0;position:-webkit-sticky;position:sticky;top:20px;z-index:100;margin:20px auto;max-width:1400px;border-radius:24px;box-shadow:0 8px 40px rgba(0,0,0,.5),inset 0 0 0 1px hsla(0,0%,100%,.05);transition:all .3s cubic-bezier(.4,0,.2,1)}header:hover{background:rgba(15,10,30,.95);box-shadow:0 12px 50px rgba(0,0,0,.6),inset 0 0 0 1px hsla(0,0%,100%,.08),0 0 60px rgba(236,72,153,.2);transform:translateY(-2px)}.header-content{justify-content:space-between;flex-wrap:wrap;padding:0 var(--spacing-lg)}.header-content,.logo{display:flex;align-items:center;gap:var(--spacing-md)}.logo-text h1{font-size:2.25rem;font-weight:800;background:var(--gradient-main);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.25rem;letter-spacing:-.5px;display:none}.subtitle{font-size:1.125rem;color:var(--text-primary);text-transform:uppercase;letter-spacing:3px;font-weight:600}.header-right{display:flex;align-items:center;gap:var(--spacing-md)}.last-updated{color:var(--text-secondary);font-size:.875rem;font-weight:500}.refresh-btn{display:flex;align-items:center;gap:.5rem;background:var(--gradient-main);color:#fff;border:none;padding:.875rem 1.75rem;border-radius:var(--radius-lg);font-weight:700;font-size:.9375rem;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 6px 25px rgba(236,72,153,.4),inset 0 1px 0 hsla(0,0%,100%,.2);position:relative;overflow:hidden}.refresh-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent);transition:left .5s}.refresh-btn:hover:before{left:100%}.refresh-btn:hover{transform:translateY(-3px);box-shadow:0 10px 35px rgba(236,72,153,.5),inset 0 1px 0 hsla(0,0%,100%,.3)}.refresh-btn:active{transform:translateY(-1px)}.refresh-btn.loading svg{animation:spin 1s linear infinite}.nav-link{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.15);border-radius:16px;color:#fff;text-decoration:none;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:.9375rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-link:hover{background:hsla(0,0%,100%,.15);border-color:hsla(0,0%,100%,.3);transform:translateY(-2px);box-shadow:0 8px 20px rgba(107,70,193,.4)}.nav-link svg{transition:transform .3s ease}.nav-link:hover svg{transform:scale(1.15) rotate(5deg)}main{padding:var(--spacing-xl) 0}.date-range-section{margin-bottom:var(--spacing-lg);animation:fadeIn .6s ease-out forwards}.date-range-card{background:var(--bg-card);-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm)}.date-range-card:hover{border-color:var(--primary-pink);box-shadow:0 15px 40px rgba(236,72,153,.2),var(--shadow-md)}.date-range-header{gap:var(--spacing-md);padding:var(--spacing-md);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.date-icon,.date-range-header{display:flex;align-items:center}.date-icon{justify-content:center;width:56px;height:56px;background:var(--gradient-main);border-radius:var(--radius-md);flex-shrink:0;box-shadow:0 8px 25px rgba(236,72,153,.4),inset 0 1px 0 hsla(0,0%,100%,.2)}.date-icon svg{color:#fff}.date-range-display{flex:1 1;display:flex;flex-direction:column;gap:.25rem}.date-label{font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.date-value{font-size:1.25rem;font-weight:600;background:var(--gradient-main);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.date-picker-toggle{background:hsla(0,0%,100%,.05);border:1px solid var(--border-color);border-radius:var(--radius-sm);width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;color:var(--text-primary)}.date-picker-toggle:hover{background:rgba(236,72,153,.2);border-color:var(--primary-pink)}.date-picker-toggle.active{transform:rotate(180deg)}.date-picker-panel{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .4s ease;border-top:1px solid transparent}.date-picker-panel.open{max-height:500px;padding:var(--spacing-md);border-top-color:var(--border-color)}.preset-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));grid-gap:var(--spacing-sm);gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.preset-btn{background:hsla(0,0%,100%,.05);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);padding:.75rem 1rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .3s ease}.preset-btn:hover{background:rgba(236,72,153,.2);border-color:var(--primary-pink);transform:translateY(-2px)}.preset-btn.active{background:var(--gradient-main);border-color:var(--primary-pink);box-shadow:0 4px 15px rgba(236,72,153,.3)}.custom-date-range{display:flex;align-items:flex-end;gap:var(--spacing-md);margin-bottom:var(--spacing-md);flex-wrap:wrap}.date-input-group{flex:1 1;min-width:180px;display:flex;flex-direction:column;gap:.5rem}.date-input-group label{font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.date-input{background:hsla(0,0%,100%,.05);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);padding:.75rem;font-size:1rem;font-family:inherit;transition:all .3s ease}.date-input:focus{outline:none;border-color:var(--primary-pink);background:rgba(236,72,153,.1);box-shadow:0 0 0 3px rgba(236,72,153,.1)}.date-input::-webkit-calendar-picker-indicator{filter:invert(1);cursor:pointer}.date-separator{font-size:1.5rem;color:var(--primary-pink);padding-bottom:.75rem}.date-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end}.date-btn{padding:.75rem 1.5rem;border-radius:var(--radius-sm);font-weight:600;font-size:.9375rem;cursor:pointer;transition:all .3s ease;border:none}.date-btn-primary{background:var(--gradient-main);color:#fff;box-shadow:0 4px 15px rgba(236,72,153,.3)}.date-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(236,72,153,.4)}.date-btn-secondary{background:hsla(0,0%,100%,.05);border:1px solid var(--border-color);color:var(--text-primary)}.date-btn-secondary:hover{background:hsla(0,0%,100%,.1);border-color:var(--primary-purple)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:var(--spacing-md);gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.stat-card{background:var(--bg-card);-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-md);transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:var(--shadow-sm)}.stat-card:before{top:0;left:0;width:100%;height:100%;background:var(--gradient-main)}.stat-card:after,.stat-card:before{content:"";position:absolute;opacity:0;transition:opacity .4s ease}.stat-card:after{top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,hsla(0,0%,100%,.1) 0,transparent 70%)}.stat-card:hover{transform:translateY(-8px) scale(1.02);border-color:var(--primary-pink);box-shadow:0 15px 40px rgba(236,72,153,.3),var(--shadow-glow)}.stat-card:hover:before{opacity:.15}.stat-card:hover:after{opacity:1}.stat-icon{font-size:2.5rem}.stat-content,.stat-icon{position:relative;z-index:1}.stat-value{font-size:2rem;font-weight:700;background:var(--gradient-main);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.25rem}.stat-label{color:var(--text-secondary);font-size:.875rem;text-transform:uppercase;letter-spacing:1px}.section{margin-bottom:var(--spacing-xl)}.section-title{font-size:2rem;font-weight:800;margin-bottom:var(--spacing-lg);background:var(--gradient-main);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.5px;position:relative;display:inline-block}.section-title:after{content:"";position:absolute;bottom:-8px;left:0;width:60px;height:4px;background:var(--gradient-main);border-radius:2px}.chart-grid{grid-template-columns:repeat(auto-fit,minmax(500px,1fr));grid-gap:var(--spacing-md)}.chart-grid,.chart-grid-3{display:grid;gap:var(--spacing-md)}.chart-grid-3{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));grid-gap:var(--spacing-md)}.chart-card{background:var(--bg-card);-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.chart-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:var(--gradient-main);transform:scaleX(0);transform-origin:left;transition:transform .4s ease}.chart-card:hover{border-color:var(--primary-pink);box-shadow:0 15px 50px rgba(236,72,153,.2),var(--shadow-md);transform:translateY(-5px)}.chart-card:hover:before{transform:scaleX(1)}.chart-title{font-size:1.125rem;font-weight:700;margin-bottom:var(--spacing-md);color:var(--text-primary);letter-spacing:.5px}canvas{max-height:350px}.posts-container{display:grid;grid-gap:var(--spacing-md);gap:var(--spacing-md)}.post-card{background:var(--bg-card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-md);transition:all .3s ease}.post-card:hover{border-color:var(--primary-pink);box-shadow:0 10px 30px rgba(236,72,153,.15);transform:translateX(5px)}.post-title{font-size:.9375rem;line-height:1.6;margin-bottom:var(--spacing-sm);color:var(--text-primary)}.post-stats{display:flex;flex-wrap:wrap;gap:var(--spacing-md);font-size:.875rem;color:var(--text-secondary)}.post-stat{display:flex;align-items:center;gap:.25rem}.post-stat-value{font-weight:600;color:var(--primary-pink)}.loading-overlay{width:100%;height:100%;background:rgba(10,5,22,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;z-index:1000;opacity:0;pointer-events:none;transition:opacity .4s ease}.loading-overlay.active{opacity:1;pointer-events:all}.loader{width:80px;height:80px;border-left:5px solid hsla(0,0%,100%,.1);border-bottom:5px solid hsla(0,0%,100%,.1);border-top:5px solid hsla(0,0%,100%,.1);border-top-color:var(--primary-pink);border-right:5px solid hsla(0,0%,100%,.1);border-right-color:var(--primary-purple);animation:spin 1s cubic-bezier(.68,-.55,.27,1.55) infinite;box-shadow:0 0 40px rgba(236,72,153,.5)}.loading-overlay p{margin-top:var(--spacing-lg);color:var(--text-primary);font-size:1.25rem;font-weight:600;animation:pulse 2s ease-in-out infinite}@media (max-width:768px){.header-content{flex-direction:column;text-align:center}.logo{flex-direction:column;gap:var(--spacing-sm)}.logo-image{width:50px;height:50px}.logo-text h1{font-size:1.75rem}.floating-mascot{width:80px;height:80px;bottom:20px;right:20px}.date-range-header{flex-wrap:wrap}.date-icon{width:40px;height:40px}.date-value{font-size:1rem}.preset-buttons{grid-template-columns:repeat(2,1fr)}.custom-date-range{flex-direction:column;align-items:stretch}.date-separator{text-align:center;padding:.5rem 0;transform:rotate(90deg)}.date-input-group{min-width:100%}.date-actions{flex-direction:column}.date-btn{width:100%}.chart-grid,.chart-grid-3,.stats-grid{grid-template-columns:1fr}canvas{max-height:250px}.section-title{font-size:1.5rem}}.chart-card,.post-card,.stat-card{animation:fadeIn .6s ease-out forwards}.stat-card:first-child{animation-delay:.1s}.stat-card:nth-child(2){animation-delay:.2s}.stat-card:nth-child(3){animation-delay:.3s}.stat-card:nth-child(4){animation-delay:.4s}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:hsla(0,0%,100%,.05)}::-webkit-scrollbar-thumb{background:var(--gradient-main);border-radius:6px;border:2px solid var(--bg-dark)}::-webkit-scrollbar-thumb:hover{background:var(--gradient-light)}.chart-card,.date-range-card,.post-card,.stat-card{position:relative}.chart-card:after,.date-range-card:after,.stat-card:after{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(180deg,hsla(0,0%,100%,.1),transparent);pointer-events:none;border-radius:var(--radius-lg) var(--radius-lg) 0 0}::selection{background:rgba(236,72,153,.3);color:#fff}::-moz-selection{background:rgba(236,72,153,.3);color:#fff}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(15,10,30,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:none;flex-direction:column;justify-content:center;align-items:center;z-index:9999}.loading-overlay p{margin-top:20px;font-size:16px;color:hsla(0,0%,100%,.8)}.loader{width:60px;height:60px;border:4px solid rgba(107,70,193,.3);border-top:4px solid var(--primary-pink);border-radius:50%}.loader,.spin{animation:spin 1s linear infinite}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;color:#fff}.loading-spinner{width:60px;height:60px;border:4px solid rgba(107,70,193,.3);border-top-color:#ec4899;border-radius:50%;animation:spin 1s linear infinite}.chart-placeholder{text-align:center;padding:50px 20px;color:hsla(0,0%,100%,.5);font-style:italic}.campaigns-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:20px;gap:20px;margin-top:20px}.campaign-card{background:hsla(0,0%,100%,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;border:1px solid hsla(0,0%,100%,.1);padding:24px;transition:all .3s ease;position:relative;overflow:hidden}.campaign-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#6b46c1,#ec4899);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.campaign-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px rgba(107,70,193,.3);border-color:hsla(0,0%,100%,.3)}.campaign-card:hover:before{transform:scaleX(1)}.campaign-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.campaign-name{font-size:18px;font-weight:600;color:#fff;margin:0}.campaign-status{background:linear-gradient(135deg,#6b46c1,#ec4899);color:#fff;font-size:12px;font-weight:700;padding:4px 12px;border-radius:20px;box-shadow:0 4px 8px rgba(107,70,193,.4);text-transform:uppercase}.campaign-stats{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px}.campaign-stat{background:hsla(0,0%,100%,.05);padding:12px;border-radius:12px;border:1px solid hsla(0,0%,100%,.1);display:flex;flex-direction:column;gap:4px}.campaign-stat-label{font-size:11px;color:hsla(0,0%,100%,.6);text-transform:uppercase;letter-spacing:.5px}.campaign-stat-value{font-size:20px;font-weight:700;background:linear-gradient(135deg,#fff,hsla(0,0%,100%,.8));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@media (max-width:768px){.campaigns-container{grid-template-columns:1fr}}.logo-image{width:60px;height:60px;object-fit:contain;filter:drop-shadow(0 4px 20px rgba(236,72,153,.5));animation:logoFloat 3s ease-in-out infinite}@keyframes logoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.floating-mascot{position:fixed;bottom:30px;right:30px;width:120px;height:120px;z-index:999;animation:mascotFloat 4s ease-in-out infinite;filter:drop-shadow(0 10px 30px rgba(236,72,153,.4));transition:transform .3s ease;cursor:pointer}.floating-mascot:hover{transform:scale(1.1) rotate(5deg);animation-play-state:paused}.floating-mascot img{width:100%;height:100%;object-fit:contain}@keyframes mascotFloat{0%,to{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-10px) rotate(2deg)}50%{transform:translateY(-5px) rotate(-2deg)}75%{transform:translateY(-15px) rotate(1deg)}}@media (max-width:768px){.logo-image{width:45px;height:45px}.floating-mascot{width:80px;height:80px;bottom:20px;right:20px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.75);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:linear-gradient(135deg,rgba(30,20,50,.98),rgba(20,15,35,.98));border-radius:24px;border:1px solid hsla(0,0%,100%,.2);max-width:700px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:slideUp .3s ease;box-shadow:0 20px 60px rgba(107,70,193,.4)}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-close{position:absolute;top:20px;right:20px;background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);color:#fff;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:1}.modal-close:hover{background:rgba(236,72,153,.3);border-color:#ec4899;transform:rotate(90deg)}.upload-trigger-btn{background:linear-gradient(135deg,#6b46c1,#ec4899);color:#fff;border:none;padding:10px 20px;border-radius:12px;font-size:14px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s ease;box-shadow:0 4px 15px rgba(236,72,153,.3)}.upload-trigger-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(236,72,153,.5)}.upload-trigger-btn svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.upload-section{margin-bottom:30px}.upload-card{background:hsla(0,0%,100%,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;border:1px solid hsla(0,0%,100%,.15);padding:30px;box-shadow:0 8px 32px rgba(107,70,193,.2)}.upload-title{display:flex;align-items:center;gap:12px;margin:0 0 24px;font-size:24px;font-weight:700;background:linear-gradient(135deg,#fff,hsla(0,0%,100%,.8));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.upload-title svg{stroke:#ec4899;filter:drop-shadow(0 2px 8px rgba(236,72,153,.5))}.upload-dropzone{border:2px dashed hsla(0,0%,100%,.3);border-radius:16px;padding:40px;text-align:center;transition:all .3s ease;background:hsla(0,0%,100%,.03);min-height:200px;display:flex;align-items:center;justify-content:center}.upload-dropzone:hover{border-color:rgba(236,72,153,.6);background:rgba(236,72,153,.05)}.upload-dropzone.has-files{border-style:solid;border-color:rgba(107,70,193,.6);background:rgba(107,70,193,.1)}.upload-label{cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:16px;width:100%}.upload-label svg{stroke:rgba(236,72,153,.8);filter:drop-shadow(0 4px 12px rgba(236,72,153,.4))}.upload-label p{margin:0;font-size:18px;font-weight:600;color:#fff}.upload-hint{font-size:14px;color:hsla(0,0%,100%,.6)}.file-list{width:100%;display:flex;flex-direction:column;gap:12px}.file-item{display:flex;align-items:center;gap:12px;background:hsla(0,0%,100%,.1);padding:12px 16px;border-radius:12px;border:1px solid hsla(0,0%,100%,.2);transition:all .2s ease}.file-item:hover{background:hsla(0,0%,100%,.15);transform:translateX(5px)}.file-item svg{stroke:#6b46c1;flex-shrink:0}.file-name{flex:1 1;font-weight:500;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size{font-size:12px;color:hsla(0,0%,100%,.6)}.file-remove{background:rgba(236,72,153,.2);border:none;color:#ec4899;width:28px;height:28px;border-radius:50%;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.file-remove:hover{background:#ec4899;color:#fff;transform:rotate(90deg)}.add-more-btn{cursor:pointer;color:#ec4899;font-size:14px;font-weight:600;padding:12px;text-align:center;border:2px dashed rgba(236,72,153,.4);border-radius:12px;background:rgba(236,72,153,.05);transition:all .2s ease}.add-more-btn:hover{border-color:#ec4899;background:rgba(236,72,153,.15)}.upload-actions{margin-top:24px;gap:16px}.upload-actions,.upload-btn{display:flex;align-items:center}.upload-btn{background:linear-gradient(135deg,#6b46c1,#ec4899);color:#fff;border:none;padding:14px 32px;border-radius:12px;font-size:16px;font-weight:700;cursor:pointer;gap:10px;transition:all .3s ease;box-shadow:0 4px 20px rgba(236,72,153,.4)}.upload-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 30px rgba(236,72,153,.6)}.upload-btn:disabled{opacity:.5;cursor:not-allowed}.upload-btn.uploading{background:linear-gradient(135deg,rgba(107,70,193,.7),rgba(236,72,153,.7))}.spinner{width:16px;height:16px;border:2px solid hsla(0,0%,100%,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.upload-message{padding:12px 20px;border-radius:8px;font-weight:600;font-size:14px;animation:slideIn .3s ease}.upload-message.success{background:rgba(34,197,94,.2);color:#4ade80;border:1px solid rgba(34,197,94,.4)}.upload-message.error{background:rgba(239,68,68,.2);color:#f87171;border:1px solid rgba(239,68,68,.4)}@keyframes slideIn{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}@media (max-width:768px){.upload-card{padding:20px}.upload-dropzone{padding:30px 20px}.upload-actions{flex-direction:column;align-items:stretch}.upload-btn{width:100%;justify-content:center}.modal-content{max-height:95vh;margin:10px}.upload-trigger-btn{padding:8px 16px;font-size:13px}.upload-trigger-btn span{display:none}}