@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--primary: #7C3AED;--primary-light: #A78BFA;--primary-dark: #5B21B6;--accent: #C084FC;--accent-2: #A78BFA;--secondary: #8B5CF6;--bg: #060611;--bg-2: #0A0A1A;--surface: #111128;--surface-light: #1A1A3E;--card-dark: #0D0D22;--text-primary: #F0F0FF;--text-secondary: #A0A0C8;--text-muted: #5A5A80;--gradient-start: #7C3AED;--gradient-mid: #8B5CF6;--gradient-end: #C084FC;--gradient-dark: #312E81;--glass-white: rgba(255, 255, 255, .06);--glass-border: rgba(255, 255, 255, .08);--glass-hover: rgba(255, 255, 255, .1);--glass-purple: rgba(124, 58, 237, .06);--glass-accent: rgba(192, 132, 252, .06);--success: #34D399;--error: #F87171;--warning: #FBBF24;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 18px;--radius-xl: 24px;--shadow: 0 8px 32px rgba(0, 0, 0, .5);--shadow-glow: 0 0 60px rgba(124, 58, 237, .2);--shadow-accent: 0 0 40px rgba(192, 132, 252, .15)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;background:var(--bg);background-image:radial-gradient(ellipse at 20% 50%,rgba(124,58,237,.06) 0%,transparent 60%),radial-gradient(ellipse at 80% 20%,rgba(192,132,252,.04) 0%,transparent 60%);color:var(--text-primary);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:none;user-select:none}input,textarea{-webkit-user-select:auto;user-select:auto}#root{min-height:100vh}a{text-decoration:none;color:inherit}button{font-family:inherit;cursor:pointer;border:none;outline:none}input,textarea,select{font-family:inherit;outline:none}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#7c3aed4d;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#7c3aed80}.gradient-text{background:linear-gradient(135deg,var(--gradient-start),var(--gradient-mid),var(--gradient-end));background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradient-shift 4s ease infinite}@keyframes gradient-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes glow-pulse{0%,to{box-shadow:0 0 20px #7c3aed4d}50%{box-shadow:0 0 40px #7c3aed80,0 0 60px #c084fc33}}.gradient-btn{background:linear-gradient(135deg,var(--gradient-start),var(--gradient-mid),var(--gradient-end));background-size:200% auto;color:#fff;border:none;padding:13px 28px;border-radius:var(--radius-md);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #7c3aed4d;position:relative;overflow:hidden}.gradient-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.15),transparent);opacity:0;transition:opacity .3s}.gradient-btn:hover{transform:translateY(-2px);box-shadow:0 8px 30px #7c3aed73,0 0 20px #c084fc26;background-position:right center}.gradient-btn:hover:before{opacity:1}.gradient-btn:active{transform:translateY(0)}.gradient-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.glass-card{background:#111128b3;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);transition:all .3s ease}.glass-input{width:100%;padding:14px 18px;background:#11112899;border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);font-size:.95rem;transition:all .3s ease}.glass-input::placeholder{color:var(--text-muted)}.glass-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #c084fc1a,0 0 20px #c084fc0d;background:#111128cc}.glass-input:-webkit-autofill,.glass-input:-webkit-autofill:hover,.glass-input:-webkit-autofill:focus,.glass-input:-webkit-autofill:active{-webkit-box-shadow:0 0 0px 1000px rgba(17,17,40,.9) inset!important;-webkit-text-fill-color:var(--text-primary)!important;transition:background-color 5000s ease-in-out 0s}.app-layout{display:flex;min-height:100vh}.main-content{flex:1;margin-left:260px;padding:32px;min-height:100vh;transition:margin-left .3s ease}.page-header{margin-bottom:32px;position:sticky;top:0;z-index:100;background:#0a0a14f2;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:24px 0 16px;border-bottom:1px solid var(--glass-border)}.page-header h1{font-size:1.75rem;font-weight:700;margin-bottom:4px}.page-header p{color:var(--text-secondary);font-size:.9rem}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;padding:14px 16px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--glass-border)}.data-table td{padding:14px 16px;font-size:.9rem;color:var(--text-secondary);border-bottom:1px solid rgba(255,255,255,.04)}.data-table tr:hover td{background:#ffffff08}.modal-overlay{position:fixed;inset:0;background:#060611d9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:linear-gradient(145deg,#111128f2,#0d0d22fa);border:1px solid rgba(124,58,237,.15);border-radius:var(--radius-xl);padding:32px;width:100%;max-width:480px;box-shadow:0 24px 80px #0009,0 0 40px #7c3aed14;position:relative;overflow:hidden}.modal-content:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--gradient-start),var(--gradient-mid),var(--gradient-end))}.modal-content h2{font-size:1.3rem;font-weight:700;margin:0}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.icon-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .2s}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:.85rem;font-weight:500;color:var(--text-secondary);margin-bottom:6px}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:100px;font-size:.75rem;font-weight:600}.badge-purple{background:#6c28e226;color:var(--accent)}.badge-green{background:#22c55e26;color:var(--success)}.badge-red{background:#ef444426;color:var(--error)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-sm);background:var(--glass-white);border:1px solid var(--glass-border);color:var(--text-secondary);transition:all .2s}.icon-btn:hover{background:var(--surface-light);color:var(--text-primary)}.icon-btn.danger:hover{background:#ef444426;color:var(--error)}.empty-state{text-align:center;padding:60px 20px;color:var(--text-muted)}.empty-state svg{margin-bottom:16px;opacity:.4}.empty-state h3{font-size:1.1rem;font-weight:600;color:var(--text-secondary);margin-bottom:8px}.empty-state p{font-size:.9rem}.toast{position:fixed;top:24px;right:24px;padding:14px 22px 14px 18px;border-radius:var(--radius-md);font-size:.85rem;font-weight:500;z-index:9999;display:flex;align-items:center;gap:10px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 8px 32px #0006;animation:toastSlideIn .35s cubic-bezier(.16,1,.3,1);max-width:380px;line-height:1.4}.toast-success{background:#22c55e26;border:1px solid rgba(34,197,94,.3);color:#4ade80}.toast-success:before{content:"✓";display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#22c55e40;font-size:.7rem;font-weight:700;flex-shrink:0}.toast-error{background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#f87171}.toast-error:before{content:"✕";display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#ef444440;font-size:.7rem;font-weight:700;flex-shrink:0}@keyframes toastSlideIn{0%{transform:translate(120px);opacity:0}to{transform:translate(0);opacity:1}}.custom-scroll::-webkit-scrollbar{width:5px}.custom-scroll::-webkit-scrollbar-track{background:transparent}.custom-scroll::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:10px}.custom-scroll::-webkit-scrollbar-thumb:hover{background:#fff3}.spinner{width:32px;height:32px;border:3px solid var(--surface-light);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.page-loader{display:flex;align-items:center;justify-content:center;min-height:400px}.spin-icon{animation:spin 1s linear infinite}.circular-progress{animation:spin .8s linear infinite;flex-shrink:0}.event-detail-header{display:flex;align-items:center;gap:16px;margin-bottom:24px}.event-detail-title{font-size:1.5rem;font-weight:700;margin-bottom:2px}.event-detail-subtitle{color:var(--text-muted);font-size:.85rem}.upload-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:var(--radius-md);font-size:.85rem;font-weight:600;background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end));color:#fff;border:none;cursor:pointer;transition:all .3s;box-shadow:0 4px 20px #6c28e259;white-space:nowrap}.upload-btn:hover{transform:translateY(-2px);box-shadow:0 6px 30px #6c28e280}.tab-bar{display:flex;gap:2px;margin-bottom:24px;background:var(--surface);border-radius:var(--radius-md);padding:4px;border:1px solid var(--glass-border)}.tab-item{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border-radius:var(--radius-sm);font-size:.85rem;font-weight:500;background:transparent;color:var(--text-muted);border:none;cursor:pointer;transition:all .2s}.tab-item:hover{color:var(--text-secondary);background:#ffffff08}.tab-item.active{background:#6c28e226;color:var(--accent)}.tab-count{background:#ffffff14;padding:2px 8px;border-radius:100px;font-size:.72rem;font-weight:600}.tab-item.active .tab-count{background:#6c28e233}.photos-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.photos-count{font-size:.85rem;color:var(--text-muted);font-weight:500}.select-toggle-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-sm);font-size:.8rem;font-weight:500;background:var(--glass-white);border:1px solid var(--glass-border);color:var(--text-secondary);cursor:pointer;transition:all .2s;user-select:none;-webkit-user-select:none}.select-toggle-btn>*{pointer-events:none}.select-toggle-btn:hover{background:var(--surface-light);color:var(--text-primary)}.selection-toolbar{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;margin-bottom:16px;background:#6c28e21a;border:1px solid rgba(108,40,226,.2);border-radius:var(--radius-md)}.selection-toolbar-left{display:flex;align-items:center;gap:16px}.selection-toolbar-right{display:flex;align-items:center;gap:8px}.selection-toolbar-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-sm);font-size:.8rem;font-weight:500;background:transparent;border:1px solid var(--glass-border);color:var(--text-secondary);cursor:pointer;transition:all .2s}.selection-toolbar-btn:hover{background:#ffffff0d}.selection-count{font-size:.82rem;color:var(--accent);font-weight:600}.delete-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--radius-sm);font-size:.8rem;font-weight:600;background:#ef444426;border:1px solid rgba(239,68,68,.3);color:var(--error);cursor:pointer;transition:all .2s}.delete-btn:hover{background:#ef444440}.delete-btn:disabled{opacity:.5;cursor:not-allowed}.cancel-select-btn{padding:8px 14px;border-radius:var(--radius-sm);font-size:.8rem;font-weight:500;background:transparent;border:1px solid var(--glass-border);color:var(--text-muted);cursor:pointer;transition:all .2s}.cancel-select-btn:hover{color:var(--text-primary);background:#ffffff0d}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}.photo-grid-item{position:relative;aspect-ratio:1;border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;background:var(--surface);border:2px solid transparent;transition:all .2s}.photo-grid-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.photo-grid-item:hover img{transform:scale(1.05)}.photo-grid-item.selected{border-color:var(--accent);box-shadow:0 0 0 2px #6c28e24d}.photo-checkbox{position:absolute;top:8px;left:8px;color:#fff9;filter:drop-shadow(0 1px 3px rgba(0,0,0,.5));transition:all .15s}.photo-checkbox.checked{color:var(--accent)}.folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.folder-card{padding:24px 16px;text-align:center;cursor:pointer;background:var(--glass-white);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);transition:all .3s}.folder-card-icon{color:var(--accent);margin-bottom:12px}.folder-card-name{font-weight:600;margin-bottom:4px;font-size:.9rem}.folder-card-count{font-size:.78rem;color:var(--text-muted)}.folder-breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding:10px 0}.breadcrumb-back{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:var(--radius-sm);background:var(--glass-white);border:1px solid var(--glass-border);color:var(--text-secondary);font-size:.82rem;font-weight:500;cursor:pointer;transition:all .2s}.breadcrumb-back:hover{background:var(--surface-light);color:var(--text-primary)}.breadcrumb-divider{color:var(--text-muted);font-size:.85rem}.breadcrumb-current{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:.9rem;color:var(--accent)}.pagination{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:24px}.pagination-btn{min-width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-size:.82rem;font-weight:500;background:var(--glass-white);border:1px solid var(--glass-border);color:var(--text-secondary);cursor:pointer;transition:all .2s}.pagination-btn:hover{background:var(--surface-light)}.pagination-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.drag-overlay{position:fixed;inset:0;background:#6c28e226;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;z-index:999;border:3px dashed var(--accent);margin:8px;border-radius:var(--radius-xl);color:var(--accent)}.drag-overlay h3{font-size:1.2rem;font-weight:700;color:var(--text-primary)}.drag-overlay p{font-size:.9rem;color:var(--text-secondary)}.lightbox-overlay{position:fixed;inset:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:2000;cursor:pointer}.lightbox-close{position:absolute;top:20px;right:20px;width:44px;height:44px;border-radius:50%;background:#ffffff1a;border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}.lightbox-close:hover{background:#fff3}.lightbox-image{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:var(--radius-md);cursor:default}.member-avatar{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end));font-size:.75rem;font-weight:700;color:#fff;margin-right:10px;vertical-align:middle}.upload-manager{position:fixed;bottom:24px;right:24px;width:380px;max-width:calc(100vw - 48px);background:var(--surface);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:0 8px 40px #00000080;z-index:1500;overflow:hidden}.upload-manager-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;cursor:pointer;transition:background .2s}.upload-manager-header:hover{background:#ffffff08}.upload-manager-header-left{display:flex;align-items:center;gap:10px}.upload-manager-title{font-size:.85rem;font-weight:600;color:var(--text-primary)}.upload-manager-header-actions{display:flex;align-items:center;gap:4px}.upload-manager-btn{padding:4px 12px;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;background:#6c28e226;color:var(--accent);border:none;cursor:pointer;transition:all .2s}.upload-manager-btn:hover{background:#6c28e240}.upload-manager-icon-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:transparent;border:none;color:var(--text-muted);cursor:pointer;transition:all .2s}.upload-manager-icon-btn:hover{background:#ffffff14;color:var(--text-primary)}.upload-manager-progress-track{height:3px;background:var(--surface-light)}.upload-manager-progress-bar{height:100%;background:linear-gradient(90deg,var(--gradient-start),var(--gradient-end));border-radius:2px}.upload-manager-list{max-height:300px;overflow-y:auto;border-top:1px solid var(--glass-border)}.upload-manager-item{display:flex;align-items:center;gap:10px;padding:8px 16px;border-bottom:1px solid rgba(255,255,255,.03)}.upload-manager-item:last-child{border-bottom:none}.upload-manager-item-thumb{width:32px;height:32px;border-radius:6px;background:var(--surface-light);display:flex;align-items:center;justify-content:center;color:var(--text-muted);flex-shrink:0}.upload-manager-item-info{flex:1;min-width:0}.upload-manager-item-name{display:block;font-size:.78rem;font-weight:500;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upload-manager-item-size{font-size:.7rem;color:var(--text-muted)}.upload-manager-item-status{flex-shrink:0}.event-code-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:6px;font-size:.75rem;font-weight:700;font-family:SF Mono,Fira Code,monospace;letter-spacing:.08em;background:#6c28e226;color:var(--accent);border:1px solid rgba(108,40,226,.25);cursor:pointer;transition:all .2s;white-space:nowrap}.event-code-badge:hover{background:#6c28e240}.qr-container{padding:24px;background:#ffffff0d;border-radius:var(--radius-lg);display:inline-flex;margin:8px 0 20px;border:1px solid var(--glass-border)}.event-code-display{display:inline-flex;align-items:center;gap:10px;padding:10px 20px;border-radius:var(--radius-md);background:var(--surface-light);border:1px solid var(--glass-border);cursor:pointer;transition:all .2s}.event-code-display:hover{background:#ffffff14}.event-code-label{font-size:.72rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.event-code-value{font-size:1.3rem;font-weight:800;font-family:SF Mono,Fira Code,monospace;letter-spacing:.15em;color:var(--accent)}.sub-tab-bar{margin-bottom:16px;position:relative}.sub-tab-scroll{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.sub-tab-scroll::-webkit-scrollbar{height:3px}.sub-tab-scroll::-webkit-scrollbar-track{background:transparent}.sub-tab-scroll::-webkit-scrollbar-thumb{background:var(--glass-border);border-radius:3px}.sub-tab-item{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;border-radius:100px;font-size:.8rem;font-weight:500;white-space:nowrap;background:var(--glass-white);border:1px solid var(--glass-border);color:var(--text-secondary);cursor:pointer;transition:all .2s}.sub-tab-item:hover{background:#ffffff0f;color:var(--text-primary)}.sub-tab-item.active{background:#6c28e226;border-color:#6c28e24d;color:var(--accent);font-weight:600}.sub-tab-count{font-size:.68rem;font-weight:600;padding:1px 6px;border-radius:100px;background:#ffffff0f}.sub-tab-item.active .sub-tab-count{background:#6c28e233}.sub-tab-add{display:inline-flex;align-items:center;gap:4px;padding:7px 14px;border-radius:100px;font-size:.78rem;font-weight:500;white-space:nowrap;background:transparent;border:1px dashed var(--glass-border);color:var(--text-muted);cursor:pointer;transition:all .2s}.sub-tab-add:hover{border-color:var(--accent);color:var(--accent);background:#6c28e20f}.delete-warning-box{padding:14px 16px;background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-md);color:var(--text-secondary)}.delete-event-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:var(--radius-md);font-size:.85rem;font-weight:600;background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.3);cursor:pointer;transition:all .2s}.delete-event-btn:hover:not(:disabled){background:#ef4444;color:#fff}.delete-event-btn:disabled{opacity:.4;cursor:not-allowed}.sub-tab-wrapper{position:relative;display:inline-flex;align-items:center}.sub-tab-menu-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#ffffff0f;border:none;color:var(--text-muted);cursor:pointer;transition:all .2s;margin-left:2px;flex-shrink:0}.sub-tab-menu-btn:hover{background:#ffffff1f;color:var(--text-primary)}.sub-tab-dropdown{position:fixed;min-width:140px;background:var(--surface);border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:0 8px 32px #00000080;z-index:10000;overflow:hidden;animation:dropdownIn .15s ease-out}@keyframes dropdownIn{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.sub-tab-dropdown button{display:flex;align-items:center;gap:8px;width:100%;padding:10px 14px;background:transparent;border:none;color:var(--text-secondary);font-size:.82rem;cursor:pointer;transition:all .15s}.sub-tab-dropdown button:hover{background:#ffffff0f;color:var(--text-primary)}.sub-tab-dropdown button.danger-text{color:#ef4444}.sub-tab-dropdown button.danger-text:hover{background:#ef44441a}.lightbox-topbar{position:fixed;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:16px 24px;z-index:10001;background:linear-gradient(to bottom,rgba(0,0,0,.6),transparent)}.lightbox-counter{font-size:.9rem;font-weight:600;color:#ffffffd9}.lightbox-actions{display:flex;gap:8px}.lightbox-action-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#ffffff1a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.15);color:#fff;cursor:pointer;transition:all .2s}.lightbox-action-btn:hover{background:#fff3;transform:scale(1.05)}.lightbox-nav{position:fixed;top:50%;transform:translateY(-50%);z-index:10001;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:#ffffff1a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.15);color:#fff;cursor:pointer;transition:all .2s}.lightbox-nav:hover{background:#ffffff40;transform:translateY(-50%) scale(1.1)}.lightbox-nav-prev{left:20px}.lightbox-nav-next{right:20px}.cover-image-picker{width:100%;height:160px;border:2px dashed var(--glass-border);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;background:#ffffff05;cursor:pointer;overflow:hidden;position:relative;transition:all .2s}.cover-image-picker:hover{background:#ffffff0d;border-color:var(--accent)}.cover-image-placeholder{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--text-muted)}.cover-image-placeholder span{font-size:.9rem;font-weight:500}.cover-image-preview{width:100%;height:100%;object-fit:cover}@keyframes shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}.shimmer-placeholder{background:linear-gradient(90deg,#ffffff0a,#ffffff1f,#ffffff0a 80%);background-color:var(--surface);background-size:1200px 100%;animation:shimmer 1.8s infinite linear;border-radius:var(--radius-sm);width:100%;height:100%}.shimmer-image-wrapper{position:relative;overflow:hidden;border-radius:inherit}.image-error-state{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:var(--surface);color:var(--text-muted);font-size:.7rem}.watermark-preview-container{position:relative;width:100%;aspect-ratio:16/10;border-radius:var(--radius-md);overflow:hidden;background:var(--surface);border:1px solid var(--glass-border)}.watermark-preview-container .demo-bg{width:100%;height:100%;object-fit:cover}.watermark-preview-container .wm-overlay{position:absolute;bottom:12px;right:12px;object-fit:contain}.watermark-preview-label{margin-top:8px;font-size:.75rem;color:var(--text-muted);text-align:center}.watermark-size-selector{display:flex;gap:8px;flex-wrap:wrap}.watermark-size-btn{padding:8px 18px;border-radius:var(--radius-sm);font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s;border:1px solid var(--glass-border);background:var(--glass-white);color:var(--text-secondary)}.watermark-size-btn:hover{background:var(--surface-light);color:var(--text-primary)}.watermark-size-btn.active{background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end));border-color:var(--primary);color:#fff}.watermark-position-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.watermark-pos-btn{padding:8px 6px;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s;border:1px solid var(--glass-border);background:var(--glass-white);color:var(--text-secondary);text-align:center}.watermark-pos-btn:hover{background:var(--surface-light);color:var(--text-primary)}.watermark-pos-btn.active{background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end));border-color:var(--primary);color:#fff}.upload-label-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--radius-md);background:var(--surface-light);color:var(--text-secondary);font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s}.upload-label-btn:hover{background:var(--surface);color:var(--text-primary)}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.custom-modal-overlay{position:fixed;inset:0;background:#060611e0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:40px 20px}.custom-modal-content{background:linear-gradient(160deg,#111128f7,#0a0a1afc);border:1px solid rgba(124,58,237,.12);border-radius:var(--radius-xl);width:100%;max-height:calc(100vh - 80px);display:flex;flex-direction:column;box-shadow:0 32px 100px #000000b3,0 0 60px #7c3aed0f,inset 0 1px #ffffff0a;position:relative;overflow:hidden}.custom-modal-accent{height:3px;background:linear-gradient(90deg,var(--gradient-start),var(--gradient-mid),var(--gradient-end));background-size:200% auto;animation:gradient-shift 3s ease infinite;flex-shrink:0}.custom-modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 28px 12px;flex-shrink:0}.custom-modal-body{padding:16px 28px 28px;overflow-y:auto;flex:1;scrollbar-gutter:stable}.custom-modal-body::-webkit-scrollbar{width:6px}.custom-modal-body::-webkit-scrollbar-track{background:transparent}.custom-modal-body::-webkit-scrollbar-thumb{background:#7c3aed33;border-radius:10px}.custom-modal-body::-webkit-scrollbar-thumb:hover{background:#7c3aed66}.custom-modal-icon{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#7c3aed26,#c084fc1a);display:flex;align-items:center;justify-content:center;color:var(--accent)}.custom-modal-title{font-size:1.2rem;font-weight:700;margin:0;color:var(--text-primary)}.custom-modal-done-btn{height:32px;padding:0 16px;border-radius:var(--radius-sm);font-size:.78rem;font-weight:600;background:linear-gradient(135deg,var(--gradient-start),var(--gradient-mid));color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;box-shadow:0 4px 12px #7c3aed33}.custom-modal-done-btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px #7c3aed4d;opacity:.95}.custom-modal-done-btn:active{transform:translateY(0)}.custom-modal-close{width:34px;height:34px;border-radius:10px;background:#ffffff0d;border:1px solid rgba(255,255,255,.06);color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.custom-modal-close:hover{background:#ffffff1a;color:var(--text-primary);border-color:#ffffff1a}.custom-modal-body{padding:24px 28px 28px}.glass-card:hover{border-color:#7c3aed1f}.selection-rectangle{border:2px solid var(--accent)!important;background:#c084fc14!important;border-radius:4px}
