@import"https://fonts.googleapis.com/css2?family=Kalam:wght@300;400;700&display=swap";.welcome-page{min-height:100vh;background:var(--bg-primary);display:flex;align-items:center;justify-content:center;padding:2rem;position:relative}.welcome-content{max-width:700px;width:100%;display:flex;flex-direction:column;align-items:center;text-align:center;background:var(--bg-secondary);padding:3rem;border-radius:24px;box-shadow:0 8px 32px var(--shadow-color);border:1px solid var(--border-primary);position:relative}.dashboard-link{position:absolute;top:1.5rem;right:1.5rem;color:var(--accent-primary);font-weight:600;font-size:1rem;text-decoration:none;padding:.5rem 1rem;border-radius:8px;transition:all .3s ease;background:#3b82f61a}.dashboard-link:hover{background:#3b82f633;transform:translateY(-2px)}.welcome-title{font-size:4rem;font-weight:800;margin:2rem 0 1.5rem;letter-spacing:-2px;background:linear-gradient(135deg,var(--accent-primary),var(--color-accent, #06b6d4));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:none}.welcome-description{font-size:1.25rem;color:var(--text-secondary);margin-bottom:2.5rem;text-align:center;max-width:600px;line-height:1.7}.welcome-subtitle{display:block;margin-top:.75rem;color:var(--accent-primary);font-weight:600;font-size:1.125rem}.welcome-buttons{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin-bottom:1.5rem;width:100%}.welcome-button{padding:1rem 2.5rem;border-radius:12px;font-size:1.125rem;font-weight:600;text-decoration:none;transition:all .3s ease;cursor:pointer;border:none;display:inline-block;text-align:center}.welcome-button-primary{background:linear-gradient(135deg,var(--accent-primary),var(--color-accent, #06b6d4));color:#fff;box-shadow:0 4px 12px #3b82f64d}.welcome-button-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #3b82f666}.welcome-button-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:2px solid var(--border-primary)}.welcome-button-secondary:hover{background:var(--bg-quaternary);border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:0 8px 20px var(--shadow-color)}.welcome-button-tertiary{background:transparent;color:var(--accent-primary);border:2px solid var(--accent-primary);width:100%;max-width:400px}.welcome-button-tertiary:hover{background:var(--accent-primary);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}@media(max-width:768px){.welcome-page{padding:1rem}.welcome-content{padding:2rem 1.5rem}.dashboard-link{top:1rem;right:1rem;font-size:.9rem;padding:.4rem .8rem}.welcome-title{font-size:2.5rem;margin:1.5rem 0 1rem}.welcome-description{font-size:1.125rem;padding:0 .5rem;margin-bottom:2rem}.welcome-subtitle{font-size:1rem}.welcome-buttons{flex-direction:column;align-items:center;gap:.75rem}.welcome-button{width:100%;max-width:320px;padding:.875rem 2rem}}@media(max-width:480px){.welcome-content{padding:1.5rem 1rem}.welcome-title{font-size:2rem}.welcome-description{font-size:1rem}.welcome-subtitle{font-size:.9rem}.welcome-button{padding:.75rem 1.5rem;font-size:1rem}}.back-button{background:transparent;border:none;border-radius:50%;color:var(--text-primary, #333);cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.4,0,.2,1);width:40px;height:40px;min-width:40px;min-height:40px;position:relative}.back-button svg{width:24px;height:24px;display:block}.back-button:hover{background-color:#0000000a}.back-button:active{background-color:#0000001f;transform:scale(.95)}.back-button:focus-visible{outline:2px solid var(--primary-color, #007bff);outline-offset:2px}@media(max-width:768px){.back-button{width:40px;height:40px;padding:8px}}.profile-button{display:flex;justify-content:center;align-items:center;width:40px;height:40px;border-radius:50%;background-color:#6c757d;overflow:hidden;cursor:pointer;box-shadow:0 2px 4px #0000001a;transition:all .2s cubic-bezier(.4,0,.2,1);border:none;padding:8px}.profile-button:hover{background-color:#5a6268;box-shadow:0 4px 8px #00000026}.profile-button:active{transform:scale(.95)}.profile-button img{width:24px;height:24px;object-fit:contain;filter:brightness(0) invert(1)}.qr-code-page{min-height:100vh;background:var(--bg-primary);padding:80px 2rem 2rem}.qr-code-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;max-width:600px;margin-left:auto;margin-right:auto}.qr-code-header h2{margin:0;text-align:center;flex:1;color:var(--text-primary);font-weight:700;font-size:1.75rem}.qr-code-container{background:var(--bg-secondary);color:var(--text-primary);padding:2.5rem;border-radius:16px;box-shadow:0 8px 32px var(--shadow-color);border:1px solid var(--border-primary);text-align:center;max-width:600px;width:100%}.qr-code-container h2{margin-bottom:1.5rem;color:var(--text-primary);font-weight:700}.qr-code-container>p{color:var(--text-secondary);margin-bottom:2rem;font-weight:500;line-height:1.6;font-size:1.125rem}.qr-scanner{width:100%;max-width:500px;margin:0 auto 1.5rem;border-radius:16px;overflow:hidden;background:var(--bg-tertiary);border:2px solid var(--border-primary);position:relative}.qr-scanner video{width:100%;border-radius:14px;display:block}.qr-scanner #qr-shaded-region{border-width:50px!important;border-style:solid!important;border-color:#0000007a!important}.qr-scanner #qr-shaded-region{position:absolute!important}.qr-scanner button,.qr-scanner select,.qr-scanner input[type=file]{display:none!important}.scanner-controls{margin-bottom:2rem}.scan-button{padding:1rem 3rem!important;font-size:1.125rem!important;font-weight:600!important;background:linear-gradient(135deg,var(--accent-primary),var(--color-accent, #06b6d4))!important;border:none!important;border-radius:12px!important;transition:all .3s ease!important}.scan-button:hover{transform:translateY(-2px)!important;box-shadow:0 8px 24px #06b6d466!important}.stop-scan-button{margin-top:1rem;padding:.75rem 2rem!important}.divider{margin:2rem 0;display:flex;align-items:center;color:var(--text-secondary);font-weight:500}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--border-primary)}.divider span{padding:0 1rem}.qr-scanner-placeholder{width:100%;height:300px;background:var(--bg-tertiary);color:var(--text-secondary);display:flex;justify-content:center;align-items:center;border-radius:16px;margin-bottom:2rem;border:2px dashed var(--border-primary);transition:all .3s ease;position:relative;overflow:hidden}.qr-scanner-placeholder:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--accent-primary),var(--color-accent, #06b6d4));opacity:0;transition:opacity .3s ease}.qr-scanner-placeholder:hover:before{opacity:.05}.qr-scanner-placeholder:hover{border-color:var(--accent-primary);transform:translateY(-4px);box-shadow:0 8px 20px var(--shadow-color)}.qr-scanner-placeholder p{font-weight:600;font-size:1.25rem;color:var(--text-secondary);margin:0;position:relative;z-index:1}.join-with-code{display:flex;gap:1rem;margin-bottom:2rem}.join-with-code input{flex-grow:1;padding:1rem 1.25rem;border:1.5px solid var(--border-primary);border-radius:12px;background:var(--input-bg);color:var(--text-primary);font-size:1rem;transition:all .3s ease}.join-with-code input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 4px #3b82f61a;transform:translateY(-2px)}.join-with-code input::placeholder{color:var(--text-muted)}.join-with-code .btn-primary{padding:1rem 2rem;background:linear-gradient(135deg,var(--accent-primary),var(--color-accent, #06b6d4));color:#fff;border:none;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;box-shadow:0 4px 12px #3b82f64d;white-space:nowrap}.join-with-code .btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #3b82f666}.join-with-code .btn-primary:active{transform:translateY(0)}.back-to-welcome{margin-top:2rem}.back-to-welcome a{color:var(--accent-primary);text-decoration:none;font-weight:600;transition:all .3s ease;font-size:1rem}.back-to-welcome a:hover{color:var(--color-accent, #06b6d4);text-decoration:underline}@media(max-width:768px){.qr-code-page{padding:2rem 1rem 1rem;align-items:flex-start}.qr-code-header{gap:.5rem;padding:0 .5rem;margin-bottom:1.5rem}.qr-code-header h2{font-size:1.5rem}.qr-code-container{padding:1.5rem}.qr-scanner-placeholder{height:250px}.join-with-code{flex-direction:column;gap:.75rem}.join-with-code input{padding:.875rem 1rem}.join-with-code .btn-primary{width:100%;padding:.875rem 1rem}}@media(max-width:480px){.qr-code-header h2{font-size:1.25rem}.qr-code-container{padding:1.25rem}.qr-scanner-placeholder{height:200px}.qr-scanner-placeholder p{font-size:1rem}}.sign-in-page{min-height:100vh;background:var(--bg-primary);padding:80px 2rem 2rem;display:flex;flex-direction:column;align-items:center}.sign-in-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;max-width:500px;width:100%}.sign-in-header h2{margin:0;text-align:center;flex:1;color:var(--text-primary);font-weight:700;font-size:1.75rem}.sign-in-container{background-color:var(--card-bg);color:var(--text-primary);padding:40px;border-radius:12px;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);text-align:center;max-width:400px;width:100%}.sign-in-container h2{margin-bottom:20px;color:var(--text-primary)}.sign-in-form{display:flex;flex-direction:column;gap:16px}.sign-in-form input{padding:12px 16px;border:1.5px solid var(--input-border);border-radius:8px;background-color:var(--input-bg);color:var(--text-primary);font-size:1em;transition:all .2s ease}.sign-in-form input:focus{outline:none;border-color:var(--primary-color);background-color:var(--input-bg-focus);box-shadow:0 0 0 3px var(--primary-color-light)}.sign-in-form input::placeholder{color:var(--text-secondary)}.sign-up-page{min-height:100vh;background:var(--bg-primary);padding:80px 2rem 2rem;display:flex;flex-direction:column;align-items:center}.sign-up-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;max-width:500px;width:100%}.sign-up-header h2{margin:0;text-align:center;flex:1;color:var(--text-primary);font-weight:700;font-size:1.75rem}.sign-up-container{background-color:var(--card-bg);color:var(--text-primary);padding:40px;border-radius:12px;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);text-align:center;max-width:400px;width:100%}.sign-up-container h2{margin-bottom:20px;color:var(--text-primary)}.btn-google{width:100%;padding:12px;background-color:#4285f4;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1em;font-weight:500;margin-bottom:15px;transition:all .2s ease;text-decoration:none;display:inline-block}.btn-google:hover{background-color:#3367d6;transform:translateY(-1px);box-shadow:var(--shadow-md)}.divider{display:flex;align-items:center;text-align:center;color:var(--text-secondary);margin:20px 0;font-size:.9em;font-weight:500}.divider:before,.divider:after{content:"";flex:1;border-bottom:1px solid var(--border-color)}.divider:not(:empty):before{margin-right:.25em}.divider:not(:empty):after{margin-left:.25em}.sign-up-form{display:flex;flex-direction:column;gap:16px}.password-container{position:relative;display:flex;align-items:center}.sign-up-form input{width:100%;padding:12px 16px;border:1.5px solid var(--input-border);border-radius:8px;background-color:var(--input-bg);color:var(--text-primary);font-size:1em;transition:all .2s ease;box-sizing:border-box}.password-container input{padding-right:50px}.sign-up-form input:focus{outline:none;border-color:var(--primary-color);background-color:var(--input-bg-focus);box-shadow:0 0 0 3px var(--primary-color-light)}.sign-up-form input::placeholder{color:var(--text-secondary)}.btn-show-hide{position:absolute;right:12px;background:none;border:none;cursor:pointer;color:var(--text-secondary);font-size:.9em;font-weight:500;padding:4px 8px;border-radius:4px;transition:all .2s ease}.btn-show-hide:hover{color:var(--primary-color);background-color:var(--button-secondary-bg)}.back-to-welcome{margin-top:24px}.back-to-welcome a{color:var(--link-color);text-decoration:none;font-weight:500;transition:color .2s ease}.back-to-welcome a:hover{color:var(--link-hover-color);text-decoration:underline}.error-message{color:var(--error-color);background-color:var(--error-bg);border:1px solid var(--error-border);padding:12px;border-radius:8px;margin-bottom:16px;font-weight:500}.language-switcher{position:relative;display:inline-block}.language-dropdown{position:relative}.language-btn{display:flex;align-items:center;gap:8px;padding:8px 12px;background:linear-gradient(135deg,#007bff,#0056b3);border:2px solid #0056b3;border-radius:8px;cursor:pointer;font-size:14px;color:#fff;font-weight:600;transition:all .3s ease;min-width:140px;box-shadow:0 2px 8px #007bff4d}.language-btn:hover{background:linear-gradient(135deg,#0056b3,#004085);border-color:#004085;transform:translateY(-1px);box-shadow:0 4px 12px #007bff66}.current-language-flag{font-size:18px;filter:brightness(1.2)}.current-language-name{flex:1;text-align:left;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.1)}.dropdown-arrow{font-size:12px;transition:transform .3s ease;color:#ffffffe6}.language-dropdown:hover .dropdown-arrow{transform:rotate(180deg)}.language-options{position:absolute;top:100%;left:0;right:0;background:#fff;border:2px solid #007bff;border-radius:8px;box-shadow:0 8px 24px #007bff33;z-index:1000;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .3s ease;margin-top:6px;overflow:hidden}.language-dropdown:hover .language-options{opacity:1;visibility:visible;transform:translateY(0)}.language-option{display:flex;align-items:center;gap:10px;width:100%;padding:12px 15px;background:none;border:none;cursor:pointer;font-size:14px;color:#333;font-weight:500;transition:all .2s ease;text-align:left;border-bottom:1px solid #f0f0f0}.language-option:last-child{border-bottom:none}.language-option:hover{background:linear-gradient(90deg,#007bff1a,#007bff0d);color:#007bff}.language-option.active{background:linear-gradient(90deg,#007bff,#0056b3);color:#fff;font-weight:700}.language-flag{font-size:18px;filter:brightness(1.1)}.language-name{flex:1}.checkmark{color:#fff;font-weight:700;font-size:14px;text-shadow:0 1px 2px rgba(0,0,0,.3)}@media(max-width:768px){.language-btn{padding:6px 10px;font-size:13px;min-width:120px}.current-language-name{display:block;font-size:12px}.language-option .language-name{font-size:13px}}@media(prefers-color-scheme:dark){.language-btn{background:linear-gradient(135deg,#0d6efd,#0a58ca);border-color:#0a58ca;color:#fff}.language-btn:hover{background:linear-gradient(135deg,#0a58ca,#084298);border-color:#084298}.language-options{background:#2d3748;border-color:#0d6efd}.language-option{color:#fff;border-bottom-color:#4a5568}.language-option:hover{background:linear-gradient(90deg,#0d6efd33,#0d6efd1a);color:#66b3ff}.language-option.active{background:linear-gradient(90deg,#0d6efd,#0a58ca);color:#fff}}.admin-dashboard .language-switcher{margin-left:auto}.admin-sidebar .language-switcher .language-btn{background:#ffffff1a;border-color:#fff3;color:#fff}.admin-sidebar .language-switcher .language-btn:hover{background:#fff3}.admin-sidebar .language-switcher .language-options{background:var(--admin-sidebar-bg, #2c3e50);border-color:#fff3}.admin-sidebar .language-switcher .language-option{color:#fff}.admin-sidebar .language-switcher .language-option:hover{background:#ffffff1a}.admin-sidebar .language-switcher .language-option.active{background:var(--accent-color, #007bff);color:#fff}.top-nav{position:fixed;top:0;left:0;right:0;background:var(--bg-secondary);-webkit-backdrop-filter:saturate(180%) blur(8px);backdrop-filter:saturate(180%) blur(8px);border-bottom:1px solid var(--border-primary);display:flex;align-items:center;justify-content:space-between;padding:12px 24px;z-index:1000;box-shadow:0 2px 8px var(--shadow-color);height:60px}.top-nav .nav-left{display:flex;align-items:center}.top-nav .brand{font-weight:700;margin-right:16px;color:var(--text-primary);text-decoration:none;letter-spacing:.3px;display:flex;align-items:center;gap:10px;font-size:1.25rem}.top-nav .brand-logo{height:36px;width:auto;display:block}.top-nav .nav-center{flex-grow:1;display:flex;justify-content:center;align-items:center}.top-nav .nav-links{display:flex;gap:8px;align-items:center}.top-nav a{color:var(--text-secondary);text-decoration:none;padding:8px 14px;border-radius:8px;transition:all .2s cubic-bezier(.4,0,.2,1);font-weight:500;font-size:.9rem}.top-nav a:hover{background:var(--bg-tertiary);color:var(--text-primary)}.top-nav .linklike{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:8px 14px;border-radius:8px;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);font-size:.9rem}.top-nav .linklike:hover{background:var(--bg-tertiary);color:var(--text-primary)}.hamburger{display:none;flex-direction:column;cursor:pointer;padding:10px;border-radius:8px;background:transparent;border:none;transition:background .2s cubic-bezier(.4,0,.2,1);gap:5px}.hamburger:hover{background:#0000000f}.hamburger:active{background:#0000001f}.hamburger span{display:block;width:24px;height:3px;background:var(--text-primary);border-radius:2px;transition:all .3s cubic-bezier(.4,0,.2,1)}.hamburger.open span:nth-child(1){transform:rotate(-45deg) translate(-6px,6px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(45deg) translate(-6px,-6px)}.mobile-menu{display:none;position:absolute;top:60px;left:0;right:0;background:var(--bg-secondary);-webkit-backdrop-filter:saturate(180%) blur(8px);backdrop-filter:saturate(180%) blur(8px);border-bottom:1px solid var(--border-primary);flex-direction:column;padding:16px;z-index:999;box-shadow:0 8px 16px var(--shadow-color);max-height:calc(100vh - 60px);overflow-y:auto}.mobile-menu a,.mobile-menu .linklike{display:block;padding:14px 16px;text-align:left;border-radius:8px;margin:4px 0;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);color:var(--text-secondary)}.mobile-menu a:hover,.mobile-menu .linklike:hover{background:var(--bg-tertiary);color:var(--text-primary)}.top-nav-spacer{height:60px}.super-admin-badge{display:inline-block;margin-left:6px;font-size:.875rem;animation:float 2s ease-in-out infinite;filter:drop-shadow(0 2px 4px rgba(255,215,0,.4))}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@media(max-width:768px){.top-nav{padding:10px 16px}.top-nav .brand{font-size:1.1rem}.top-nav .brand-logo{height:32px}.top-nav .nav-links{display:none}.hamburger,.mobile-menu{display:flex}}.framed-photo{position:relative;display:inline-block;width:100%;height:100%;overflow:hidden}.photo-content{width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:1;position:relative}.frame-overlay{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;pointer-events:none;z-index:2;border-radius:inherit;mix-blend-mode:normal;opacity:1;background:transparent}.framed-photo{transition:transform .3s ease,box-shadow .3s ease}.framed-photo:hover{transform:translateY(-2px);box-shadow:0 8px 16px #00000026}.framed-photo.gallery-item{border-radius:8px;overflow:hidden}.framed-photo.album-photo{border-radius:12px;overflow:hidden}.framed-photo.thumbnail{border-radius:4px;overflow:hidden}.framed-photo.tilt-left{transform:rotate(-1deg)}.framed-photo.tilt-right{transform:rotate(1deg)}.framed-photo.shadow-soft{box-shadow:0 4px 8px #0000001a}.framed-photo.shadow-strong{box-shadow:0 6px 12px #0003}@media(max-width:768px){.framed-photo:hover{transform:translateY(-1px);box-shadow:0 4px 8px #0000001a}}.framed-photo.loading .photo-content{background:#f0f0f0;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.7}to{opacity:1}}.framed-photo.error .photo-content{background:#f5f5f5;display:flex;align-items:center;justify-content:center;color:#999;font-size:.9rem}.framed-photo.error .photo-content:before{content:"📷";font-size:2rem;margin-bottom:.5rem}.framed-photo.clickable{cursor:pointer}.framed-photo.clickable:hover .frame-overlay{opacity:.9}.frame-overlay{transition:opacity .3s ease}.frame-overlay.loading{opacity:.5}.frame-overlay:not([src]){display:none}.framed-photo.fullscreen-framed-photo{max-width:90vw;max-height:90vh;border-radius:0;box-shadow:0 20px 40px #0000004d;display:flex;align-items:center;justify-content:center}.framed-photo.fullscreen-framed-photo:hover{transform:none;box-shadow:0 20px 40px #0000004d}.framed-photo.fullscreen-framed-photo .photo-content{border-radius:0;max-width:100%;max-height:100%;object-fit:contain}.framed-photo.fullscreen-framed-photo .frame-overlay{border-radius:0;object-fit:contain}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;padding:1rem;max-width:1400px;margin:0 auto}.gallery-item{background:#fff;border:1px solid #dbdbdb;border-radius:12px;overflow:hidden;transition:all .3s ease;cursor:pointer;box-shadow:0 1px 3px #0000000a}.gallery-item:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.gallery-photo{width:100%;height:100%;object-fit:cover;display:block}.gallery-item video{width:100%;aspect-ratio:1 / 1;object-fit:cover}.gallery-item-info{padding:1rem;background:#fff}.gallery-item-info h4{margin:0 0 .5rem;font-size:.95rem;font-weight:600;color:#262626;line-height:1.3}.gallery-item-info p{margin:.25rem 0;color:#8e8e8e;font-size:.85rem;line-height:1.4}.gallery-item-info p b{color:#262626;font-weight:600}.gallery-item-info .description{color:#262626;font-size:.875rem;margin-bottom:.5rem;line-height:1.5}.gallery-item-info .uploader{font-size:.875rem;margin-top:.5rem}.gallery-item-info .timestamp{font-size:.75rem;color:#8e8e8e;margin-top:.25rem}.reactions{display:flex;gap:.4rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid #efefef}.reaction-btn{background:#fff;border:1px solid #dbdbdb;border-radius:20px;padding:.4rem .7rem;cursor:pointer;font-size:.85rem;transition:all .2s ease;color:#262626;font-weight:500}.reaction-btn:hover{background:#fafafa;border-color:#262626}.reaction-btn:active{transform:scale(.95)}.action-buttons{display:flex!important;flex-direction:row!important;gap:.25rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid #efefef;flex-wrap:nowrap!important;align-items:center;justify-content:flex-start}.action-buttons .btn-delete,.action-buttons .btn-save,.action-buttons .btn-report,.action-buttons .btn-reported{display:inline-flex!important;align-items:center;justify-content:center;width:32px!important;height:32px!important;border:none;border-radius:8px!important;cursor:pointer;font-size:0;padding:0!important;transition:all .2s ease;box-shadow:0 1px 2px #00000014;flex-shrink:0;min-width:32px;max-width:32px}.action-buttons .btn-delete svg,.action-buttons .btn-save svg,.action-buttons .btn-report svg,.action-buttons .btn-reported svg{width:15px;height:15px}.action-buttons .btn-delete{background:linear-gradient(135deg,#dc3545,#c82333)!important;color:#fff!important}.action-buttons .btn-save{background:linear-gradient(135deg,#28a745,#218838)!important;color:#fff!important}.action-buttons .btn-report{background:linear-gradient(135deg,#ffc107,#e0a800)!important;color:#212529!important}.action-buttons .btn-reported{background:#e0e0e0!important;color:#999!important;cursor:not-allowed;opacity:.7;box-shadow:none!important}.action-buttons .btn-delete:hover{transform:scale(1.08)!important;box-shadow:0 2px 4px #dc35452e!important}.action-buttons .btn-save:hover{transform:scale(1.08)!important;box-shadow:0 2px 4px #28a7452e!important}.action-buttons .btn-report:hover{transform:scale(1.08)!important;box-shadow:0 2px 4px #ffc1072e!important}.action-buttons .btn-delete:active,.action-buttons .btn-save:active,.action-buttons .btn-report:active{transform:scale(1.02)!important}.zoomable-container{width:100%;aspect-ratio:1 / 1;overflow:hidden;position:relative;touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none;background:#fafafa}.zoomable-container.loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:30px;height:30px;border:3px solid #dbdbdb;border-top-color:#262626;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}.zoomable-container .gallery-photo{transform-origin:center center;width:100%;height:100%;transition:opacity .3s ease}@media(max-width:768px){.gallery-grid{grid-template-columns:1fr;gap:1rem;padding:.5rem}.gallery-item{border-radius:8px}.gallery-item-info{padding:.875rem}.action-buttons{gap:.3rem;margin-top:.625rem;padding-top:.625rem;justify-content:flex-start;display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important}.reactions{margin-top:.625rem;padding-top:.625rem}.action-buttons .btn-delete,.action-buttons .btn-save,.action-buttons .btn-report,.action-buttons .btn-reported{width:34px!important;height:34px!important;flex-shrink:0;min-width:34px;max-width:34px}.action-buttons .btn-delete svg,.action-buttons .btn-save svg,.action-buttons .btn-report svg,.action-buttons .btn-reported svg{width:14px;height:14px}}@media(min-width:769px)and (max-width:1024px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1025px){.gallery-grid{grid-template-columns:repeat(3,1fr)}}.report-modal-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:2000}.report-modal{background:#fff;padding:16px;border-radius:6px;width:420px;max-width:90%}.report-modal textarea{width:100%;min-height:80px;margin-top:8px}.report-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.upload-page{padding:24px;max-width:800px;margin:0 auto;min-height:100vh;background:var(--bg-primary, #fafafa)}.upload-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.upload-header h2{margin:0;text-align:center;flex:1;font-size:1.75rem;font-weight:500;background:linear-gradient(135deg,var(--accent-primary, #667eea) 0%,var(--accent-secondary, #764ba2) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.upload-page h2{text-align:center;margin-bottom:24px;color:var(--text-primary, #333);font-weight:500;font-size:1.5rem}.upload-form{display:flex;flex-direction:column;gap:20px;background-color:var(--bg-secondary, white);color:var(--text-primary, #333);padding:32px;border-radius:16px;box-shadow:0 2px 8px #0000001a,0 4px 16px #0000000d;margin-bottom:32px;max-width:600px;margin-left:auto;margin-right:auto}.upload-form input[type=file]{border:2px dashed var(--accent-primary, #667eea);padding:24px 20px;border-radius:12px;background-color:#667eea0d;color:var(--text-primary, #333);font-size:.95rem;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;text-align:center}.upload-form input[type=file]:hover{border-color:var(--accent-secondary, #764ba2);background-color:#667eea14}.upload-form input[type=file]:focus{outline:none;border-color:var(--accent-primary, #667eea);background-color:#667eea1a;box-shadow:0 0 0 4px #667eea26}.upload-form input[type=text],.upload-form textarea{width:100%;padding:16px;border:1px solid rgba(0,0,0,.12);border-radius:8px;background-color:var(--bg-primary, #fafafa);color:var(--text-primary, #333);font-size:1rem;font-family:inherit;transition:all .3s cubic-bezier(.4,0,.2,1);box-sizing:border-box}.upload-form input[type=text]:hover,.upload-form textarea:hover{border-color:#0000003d}.upload-form input[type=text]:focus,.upload-form textarea:focus{outline:none;border-color:var(--accent-primary, #667eea);background-color:var(--bg-secondary, white);box-shadow:0 0 0 2px #667eea26}.upload-form input[type=text]::placeholder,.upload-form textarea::placeholder{color:var(--text-secondary)}.upload-form textarea{min-height:100px;resize:vertical;line-height:1.5}.upload-form button{padding:14px 24px;background:linear-gradient(135deg,var(--accent-primary, #667eea),var(--accent-secondary, #764ba2));color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0003;margin-top:8px}.upload-form button:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.upload-form button:active{transform:translateY(0);box-shadow:0 2px 4px #0003}.fullscreen-modal{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#000000eb;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.fullscreen-media{max-width:90%;max-height:90%;display:flex;flex-direction:column;align-items:center;text-align:center}.fullscreen-media img,.fullscreen-media video{max-width:100%;max-height:70vh;object-fit:contain;border-radius:8px;box-shadow:var(--shadow-xl)}.fullscreen-media h3{color:var(--text-primary);margin:16px 0 8px;font-weight:600;font-size:1.25rem}.fullscreen-media p{color:var(--text-secondary);margin:0 0 16px;max-width:500px;line-height:1.5}.close-btn{position:absolute;top:24px;right:24px;background:linear-gradient(135deg,#f44336,#e53935);color:#fff;border:none;border-radius:50%;width:56px;height:56px;font-size:1.5rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 8px #0000004d}.close-btn:hover{transform:scale(1.1) rotate(90deg);box-shadow:0 6px 16px #0006}.close-btn:active{transform:scale(1.05) rotate(90deg)}.prev-btn,.next-btn{position:absolute;top:50%;transform:translateY(-50%);background:#fffffff2;color:#333;border:none;border-radius:50%;width:56px;height:56px;font-size:2rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 8px #0000004d}.prev-btn{left:24px}.next-btn{right:24px}.prev-btn:hover,.next-btn:hover{background:#fff;transform:translateY(-50%) scale(1.1);box-shadow:0 6px 16px #0006}.prev-btn:active,.next-btn:active{transform:translateY(-50%) scale(1.05)}.fullscreen-reactions{position:absolute;bottom:32px;left:50%;transform:translate(-50%);display:flex;gap:12px;background:#fffffff2;padding:12px 20px;border-radius:28px;box-shadow:0 4px 16px #0000004d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.reaction-btn{background:transparent;border:none;border-radius:20px;padding:8px 16px;cursor:pointer;font-size:1rem;color:#333;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap;font-weight:500}.reaction-btn:hover{background:#667eea26;transform:scale(1.1)}.reaction-btn:active{transform:scale(1.05)}.view-controls{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:var(--card-bg);border-radius:12px;border:1px solid var(--border-color);max-width:none}.view-mode-selector{display:flex;gap:.5rem}.view-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;cursor:pointer;transition:all .2s ease;color:var(--text-primary);font-size:.875rem}.view-btn:hover{background:var(--button-secondary-bg);border-color:var(--primary-color)}.view-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.view-icon{font-size:1rem}.album-theme-selector{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.theme-label{font-weight:600;color:var(--text-primary);font-size:.875rem}.theme-btn{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem .75rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;cursor:pointer;transition:all .2s ease;min-width:60px}.theme-btn:hover{background:var(--button-secondary-bg);border-color:var(--primary-color);transform:translateY(-1px)}.theme-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.theme-icon{font-size:1.25rem}.theme-name{font-size:.75rem;font-weight:500}.album-container{background:var(--card-bg);border-radius:12px;overflow:hidden;border:1px solid var(--border-color);max-width:none}.no-photos{padding:3rem 2rem;text-align:center;color:var(--text-secondary)}.no-photos p{margin:.5rem 0;font-size:1rem}.no-photos p:first-child{font-size:1.125rem;font-weight:600;color:var(--text-primary)}@media(max-width:768px){.upload-page{padding:16px}.upload-header h2{font-size:1.5rem}.upload-form{padding:24px;border-radius:12px}.upload-form input[type=file]{padding:20px 16px}.upload-form button{padding:12px 20px}.close-btn .gallery-section{margin-top:48px}.close-btn .gallery-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid rgba(0,0,0,.08)}.close-btn .gallery-header h2{margin:0;color:var(--text-primary, #333);font-weight:500;font-size:1.5rem}.close-btn .next-btn{right:16px}.close-btn .fullscreen-reactions{bottom:24px;padding:10px 16px;gap:8px}.close-btn .reaction-btn{padding:6px 12px;font-size:.9rem}.close-btn .view-controls{padding:.75rem}.close-btn .view-mode-selector{flex-direction:column}.close-btn .album-theme-selector{justify-content:center}.close-btn .theme-btn{min-width:50px;padding:.4rem .6rem}.close-btn .theme-name{display:none}@media(max-width:480px){.upload-header h2{font-size:1.25rem}.upload-form{padding:20px}.upload-form input[type=file]{padding:16px 12px;font-size:.9rem}.close-btn{width:40px;height:40px;font-size:1.25rem}.prev-btn,.next-btn{width:40px;height:40px;font-size:1.5rem}.fullscreen-reactions{flex-wrap:wrap;max-width:90%}.view-controls{gap:.75rem}.view-btn{padding:.6rem .8rem;font-size:.8rem}.album-theme-selector{gap:.5rem}.theme-btn{min-width:45px;padding:.3rem .5rem}.theme-icon{font-size:1rem}}.login-modal-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.login-modal{background:var(--bg-secondary);padding:20px;border-radius:8px;min-width:300px;max-width:90%;box-shadow:0 10px 30px #0003;color:var(--text-primary)}.login-modal h3{margin-top:0}.login-modal form{display:flex;flex-direction:column;gap:10px}.login-modal input{padding:8px}.login-modal .error{color:#b00020}.login-modal button{padding:8px 12px}.login-modal button.secondary{background:#eee}:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: hsl(6, 78%, 57%);--toastify-color-transparent: rgba(255, 255, 255, .7);--toastify-icon-color-info: var(--toastify-color-info);--toastify-icon-color-success: var(--toastify-color-success);--toastify-icon-color-warning: var(--toastify-color-warning);--toastify-icon-color-error: var(--toastify-color-error);--toastify-container-width: fit-content;--toastify-toast-width: 320px;--toastify-toast-offset: 16px;--toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background: #fff;--toastify-toast-padding: 14px;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--toastify-toast-bd-radius: 6px;--toastify-toast-shadow: 0px 4px 12px rgba(0, 0, 0, .1);--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error);--toastify-color-progress-bgo: .2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;width:var(--toastify-container-width);box-sizing:border-box;color:#fff;display:flex;flex-direction:column}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right);align-items:end}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right);align-items:end}.Toastify__toast{--y: 0;position:relative;touch-action:none;width:var(--toastify-toast-width);min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:var(--toastify-toast-padding);border-radius:var(--toastify-toast-bd-radius);box-shadow:var(--toastify-toast-shadow);max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);z-index:0;display:flex;flex:1 auto;align-items:center;word-break:break-word}@media only screen and (max-width:480px){.Toastify__toast-container{width:100vw;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}.Toastify__toast{--toastify-toast-width: 100%;margin-bottom:0;border-radius:0}}.Toastify__toast-container[data-stacked=true]{width:var(--toastify-toast-width)}.Toastify__toast--stacked{position:absolute;width:100%;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";position:absolute;left:0;right:0;height:calc(var(--g) * 1px);bottom:100%}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{margin-inline-end:10px;width:22px;flex-shrink:0;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.5s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;position:absolute;top:6px;right:6px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:unset}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:100%;z-index:1;opacity:.7;transform-origin:left}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right;border-bottom-left-radius:initial}.Toastify__progress-bar--wrp{position:absolute;overflow:hidden;bottom:0;left:0;width:100%;height:5px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg);opacity:1}to{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(110%,var(--y),0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(-110%,var(--y),0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-timing-function:ease-in;animation-duration:.3s}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.slideshow-image-container.cube .slideshow-image{animation:cubeIn .7s cubic-bezier(.4,.2,.2,1);backface-visibility:hidden}.slideshow-image-container.newspaper .slideshow-image{animation:newspaperIn .7s cubic-bezier(.4,.2,.2,1)}.slideshow-image-container.flip .slideshow-image{animation:flipIn .7s cubic-bezier(.4,.2,.2,1);backface-visibility:hidden}.slideshow-image-container.rotate .slideshow-image{animation:rotateIn .7s cubic-bezier(.4,.2,.2,1)}.slideshow-image-container.blur .slideshow-image{animation:blurIn .7s cubic-bezier(.4,.2,.2,1)}@keyframes cubeIn{0%{transform:rotateY(90deg) scale(.8);opacity:0}to{transform:rotateY(0) scale(1);opacity:1}}@keyframes newspaperIn{0%{transform:scale(.2) rotate(720deg);opacity:0;filter:blur(8px)}to{transform:scale(1) rotate(0);opacity:1;filter:blur(0)}}@keyframes flipIn{0%{transform:rotateX(90deg) scale(.8);opacity:0}to{transform:rotateX(0) scale(1);opacity:1}}@keyframes rotateIn{0%{transform:rotate(-180deg) scale(.8);opacity:0}to{transform:rotate(0) scale(1);opacity:1}}@keyframes blurIn{0%{filter:blur(16px);opacity:0;transform:scale(1.2)}to{filter:blur(0);opacity:1;transform:scale(1)}}.photo-album{width:100%;min-height:100vh}.classic-container{background:#f5f5f5;padding:2rem;box-shadow:inset 0 2px 8px #0000001a;border-radius:.75rem;min-height:100vh}.classic-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.classic-frame{background:#fff;border:4px solid #e5e7eb;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;border-radius:.5rem;padding:.5rem;cursor:pointer;transition:transform .3s ease-in-out}.classic-frame:hover{transform:scale(1.05)}.classic-photo{width:100%;height:12rem;object-fit:cover;border-radius:.375rem}.collage-container{background:#f8fafc;padding:.5rem;min-height:100vh;width:100%}.collage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:.25rem;width:100%;max-width:100vw;margin:0;padding:0}.collage-frame{background:#fff;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a;border-radius:.25rem;padding:.125rem;cursor:pointer;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;overflow:hidden}.collage-frame:hover{transform:scale(1.02);box-shadow:0 4px 6px #0000001a}.collage-photo{width:100%;height:4rem;object-fit:cover;border-radius:.125rem}.collage-grid{grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:.25rem}.collage-photo{height:3rem}.collage-container{padding:.25rem}@media(max-width:480px){.collage-grid{grid-template-columns:repeat(auto-fit,minmax(70px,1fr));gap:.125rem}.collage-photo{height:2.5rem}.collage-container{padding:.125rem}}.polaroid-container{background:#fafaf9;padding:2.5rem;min-height:100vh}.polaroid-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;justify-items:center}.polaroid-frame{background:linear-gradient(145deg,#fff,#f8f9fa);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;padding:1rem;text-align:center;cursor:pointer;transition:transform .3s ease-in-out;max-width:18rem;margin:0 auto}.polaroid-frame:hover{transform:rotate(0)!important}.polaroid-photo{width:100%;height:12rem;object-fit:cover;margin-bottom:.75rem}.polaroid-caption{font-family:Kalam,cursive;font-size:.875rem;margin-top:.5rem;color:#374151}.vintage-container{background:linear-gradient(135deg,#fef3c7,#fde68a);padding:3rem;border-radius:.75rem;box-shadow:0 25px 50px -12px #00000040;min-height:100vh;position:relative;overflow:hidden}.vintage-texture{position:absolute;inset:0;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZGVmcz48cGF0dGVybiBpZD0iZ3JpZCIgd2lkdGg9IjQwIiBoZWlnaHQ9IjQwIiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cGF0aCBkPSJNIDQwIDAgTCAwIDAgMCA0MCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJyZ2JhKDAsIDAsIDAsIDAuMDUpIiBzdHJva2Utd2lkdGg9IjEiLz48L3BhdHRlcm4+PC9kZWZzPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JpZCkiLz48L3N2Zz4=);opacity:.2;pointer-events:none}.vintage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;position:relative;z-index:10}.vintage-frame{border:8px solid #92400e;background:beige;box-shadow:inset 0 2px 4px #0000001a,0 4px 8px #0000004d;padding:.5rem;border-radius:.375rem;cursor:pointer;transition:transform .3s ease-in-out}.vintage-frame:hover{transform:scale(1.05)}.vintage-photo{width:100%;height:12rem;object-fit:cover;border-radius:.25rem;filter:sepia(.3) contrast(1.1) brightness(1.05) saturate(1.1)}.scrapbook-container{background:#fffbeb;padding:2rem;min-height:100vh}.scrapbook-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.scrapbook-frame{position:relative;background:linear-gradient(145deg,#fff,#fefefe);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;padding:1rem;border-radius:.375rem;cursor:pointer;transition:transform .3s ease-in-out}.scrapbook-frame:hover{transform:scale(1.05)}.tape-effect{position:absolute;top:-8px;left:50%;transform:translate(-50%);width:3rem;height:1rem;background:linear-gradient(45deg,#d1d5db,#9ca3af);border-radius:9999px;opacity:.7;box-shadow:0 1px 3px #0000004d,inset 0 1px 1px #ffffff80}.scrapbook-photo{width:100%;height:12rem;object-fit:cover;border-radius:.125rem}.corner-decoration{position:absolute;top:.5rem;right:.5rem;width:.75rem;height:.75rem;background:radial-gradient(circle,#ef4444,#dc2626);border-radius:50%;opacity:.6}.sticker-decoration{position:absolute;bottom:.5rem;left:.5rem;width:.5rem;height:1.5rem;background:linear-gradient(45deg,#fbbf24,#f59e0b);border-radius:.125rem;transform:rotate(12deg);opacity:.7}.flipbook-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:#f3f4f6;padding:2rem}.flipbook-controls{margin-bottom:1.5rem;display:flex;gap:1rem}.flipbook-btn{padding:.5rem 1rem;background:#2563eb;color:#fff;border:none;border-radius:.5rem;cursor:pointer;transition:background-color .2s;filter:drop-shadow(0 4px 6px rgba(0,0,0,.1))}.flipbook-btn:hover{background:#1d4ed8}.flipbook-wrapper{box-shadow:0 25px 50px -12px #00000040;background:#fff;padding:1.5rem;border-radius:.5rem;position:relative}.flipbook-page{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #d1d5db;box-shadow:inset 0 2px 4px #0000000f;position:relative;overflow:hidden}.page-content{width:100%;height:100%;padding:1.5rem;display:flex;flex-direction:column;background:#fff}.single-photo-container{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}.dual-photo-container{flex:1;display:flex;flex-direction:column;gap:1rem}.photo-slot{flex:1;display:flex;align-items:center;justify-content:center}.flipbook-photo{max-width:85%;max-height:75%;width:auto;height:auto;border-radius:.5rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;object-fit:contain;background:#fff;border:1px solid #e5e7eb}.photo-caption{text-align:center;font-size:.875rem;color:#6b7280;font-style:italic;margin-top:.5rem}.cover-page{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1e3a8a,#7c3aed);color:#fff;border-radius:.5rem}.cover-content{text-align:center;padding:2rem}.cover-title{font-size:2rem;font-weight:700;margin-bottom:1rem;text-shadow:0 2px 4px rgba(0,0,0,.3)}.cover-subtitle{font-size:1.125rem;margin-bottom:.5rem;opacity:.9}.cover-count{font-size:.875rem;opacity:.8}.back-cover{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#374151,#111827);color:#fff;border-radius:.5rem}.back-cover-content{text-align:center;padding:2rem}.back-cover-title{font-size:1.5rem;margin-bottom:1rem;font-weight:600}.back-cover-subtitle{font-size:1rem;margin-bottom:.5rem;opacity:.9}.back-cover-date{font-size:.875rem;opacity:.7}.flipbook-info{margin-top:1rem;text-align:center}.flipbook-info p{font-size:.875rem;color:#6b7280;font-style:italic}.hover-zoom:hover{transform:scale(1.05)}.hover-lift:hover{transform:translateY(-4px)}.hover-rotate:hover{transform:rotate(0)!important}.polaroid-frame{max-width:280px}.flipbook-wrapper{padding:1rem}.flipbook-controls{flex-direction:column;align-items:center}@media(max-width:480px){.classic-container,.polaroid-container,.vintage-container,.scrapbook-container,.flipbook-container{padding:1rem}}.photo-album img{transition:all .3s ease-in-out}.photo-album::-webkit-scrollbar{width:8px}.photo-album::-webkit-scrollbar-track{background:#0000001a;border-radius:4px}.photo-album::-webkit-scrollbar-thumb{background:#0000004d;border-radius:4px}.photo-album::-webkit-scrollbar-thumb:hover{background:#00000080}.slideshow-container{display:flex;flex-direction:column;background:#000;min-height:100vh;position:relative}.slideshow-container.fullscreen{position:fixed;inset:0;z-index:9999}.slideshow-main{flex:1;position:relative;display:flex;align-items:center;justify-content:center;background:#000}.slideshow-image-container{position:relative;width:100%;height:80vh;display:flex;align-items:center;justify-content:center}.slideshow-image{max-width:100%;max-height:100%;object-fit:contain;transition:opacity .5s ease-in-out}.slideshow-image-container.fade .slideshow-image{animation:fadeIn .5s ease-in-out}.slideshow-image-container.slide .slideshow-image{animation:slideIn .5s ease-in-out}.slideshow-image-container.zoom .slideshow-image{animation:zoomIn .5s ease-in-out}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.slideshow-nav{position:absolute;top:50%;transform:translateY(-50%);background:#fff3;border:none;color:#fff;font-size:3rem;padding:1rem;cursor:pointer;border-radius:50%;transition:background-color .3s ease;z-index:10}.slideshow-nav:hover{background:#fff6}.slideshow-nav-prev{left:2rem}.slideshow-nav-next{right:2rem}.slideshow-controls{position:absolute;top:2rem;right:2rem;display:flex;gap:1rem;align-items:center;background:#00000080;padding:.5rem 1rem;border-radius:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.slideshow-control-btn{background:transparent;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.5rem;border-radius:50%;transition:background-color .3s ease}.slideshow-control-btn:hover{background:#fff3}.slideshow-music-indicator{color:#fff;font-size:.875rem;margin-left:.5rem}.slideshow-counter{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);background:#00000080;color:#fff;padding:.5rem 1rem;border-radius:1rem;font-size:.875rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.slideshow-thumbnails{display:flex;gap:.5rem;padding:1rem;background:#000c;overflow-x:auto;justify-content:center;flex-wrap:wrap}.slideshow-thumbnail{background:transparent;border:2px solid transparent;border-radius:.375rem;cursor:pointer;transition:all .3s ease;padding:0}.slideshow-thumbnail.active{border-color:#3b82f6;transform:scale(1.1)}.slideshow-thumbnail:hover{border-color:#60a5fa;transform:scale(1.05)}.slideshow-thumbnail-image{width:60px;height:40px;object-fit:cover;border-radius:.25rem;display:block}.slideshow-nav{font-size:2rem;padding:.5rem}.slideshow-nav-prev{left:1rem}.slideshow-nav-next{right:1rem}.slideshow-controls{top:1rem;right:1rem;gap:.5rem}.slideshow-control-btn{font-size:1.25rem;padding:.25rem}.slideshow-counter{bottom:1rem;font-size:.75rem}.slideshow-thumbnails{padding:.5rem;gap:.25rem}.slideshow-thumbnail-image{width:45px;height:30px}.slideshow-image-container{height:70vh}.image-modal-overlay{position:fixed;inset:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.image-modal-content{position:relative;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center;justify-content:center;animation:zoomIn .3s ease}@keyframes zoomIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.image-modal-img{max-width:100%;max-height:85vh;object-fit:contain;border-radius:8px;box-shadow:0 8px 32px #00000080}.image-modal-close{position:absolute;top:-50px;right:0;background:#fffffff2;border:none;border-radius:50%;width:44px;height:44px;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#333;transition:all .3s ease;box-shadow:0 4px 12px #0000004d}.image-modal-close:hover{background:#fff;transform:rotate(90deg) scale(1.1);box-shadow:0 6px 16px #0006}.image-modal-caption{margin-top:16px;color:#fff;font-size:1rem;font-weight:500;background:#0009;padding:8px 16px;border-radius:20px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.image-modal-overlay{padding:10px}.image-modal-img{max-height:80vh}.image-modal-close{top:-40px;width:36px;height:36px;font-size:1.25rem}.image-modal-caption{font-size:.875rem;padding:6px 12px;margin-top:12px}.new-collage-creator-overlay{position:fixed;inset:0;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.new-collage-creator-modal{background:#fff;width:100%;max-width:1600px;height:95vh;border-radius:20px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.new-collage-creator-header{display:flex;justify-content:space-between;align-items:center;padding:8px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;flex-shrink:0}.new-collage-creator-header h2{margin:0;font-size:1.2rem;font-weight:700;letter-spacing:-.5px}.close-button{background:#fff3;border:2px solid white;color:#fff;width:32px;height:32px;border-radius:50%;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;font-weight:300;line-height:1}.close-button:hover{background:#fff;color:#667eea;transform:rotate(90deg)}.new-collage-creator-content{flex:1;overflow-y:auto;overflow-x:hidden;background:#f8f9fa}.loading-overlay{position:absolute;inset:0;background:#fffffff2;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:10}.loading-spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}.error-banner{background:#f44;color:#fff;padding:15px 20px;display:flex;justify-content:space-between;align-items:center;font-weight:500}.error-banner button{background:transparent;border:none;color:#fff;font-size:24px;cursor:pointer;padding:0 10px}.step-select{padding:30px;max-width:1400px;margin:0 auto}.section{background:#fff;border-radius:12px;padding:30px;margin-bottom:30px;box-shadow:0 2px 10px #0000000d}.section h3{margin:0 0 20px;color:#333;font-size:1.4rem;font-weight:600}.template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}.template-card{background:#f8f9fa;border:3px solid transparent;border-radius:12px;padding:25px;text-align:center;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.template-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #0000001a}.template-card.selected{border-color:#667eea;background:linear-gradient(135deg,#667eea1a,#764ba21a);box-shadow:0 10px 25px #667eea4d}.template-card.selected:before{content:"✓";position:absolute;top:10px;right:10px;background:#667eea;color:#fff;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px}.template-icon{font-size:3rem;margin-bottom:15px}.template-name{font-weight:600;font-size:1.1rem;color:#333;margin-bottom:8px}.template-description{font-size:.9rem;color:#666;line-height:1.4}.layout-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:15px;padding:10px}.layout-card{background:#fff;border:3px solid #e0e0e0;border-radius:16px;padding:20px;text-align:center;cursor:pointer;transition:all .3s ease;position:relative;min-height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center}.layout-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #667eea40;border-color:#667eea}.layout-card.selected{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.layout-card.selected .layout-name,.layout-card.selected .layout-description{color:#fff}.layout-icon{font-size:3rem;margin-bottom:10px}.layout-name{font-weight:600;font-size:1.05rem;color:#333;margin-bottom:6px}.layout-description{font-size:.85rem;color:#666;line-height:1.3}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px;max-height:400px;overflow-y:auto;padding:10px}.photo-card{aspect-ratio:1;border-radius:12px;overflow:hidden;cursor:pointer;border:3px solid transparent;transition:all .3s ease;position:relative;background:#f0f0f0}.photo-card img{width:100%;height:100%;object-fit:cover;display:block}.photo-card:hover{transform:scale(1.05);box-shadow:0 8px 20px #00000026}.photo-card.selected{border-color:#28a745;box-shadow:0 8px 20px #28a7454d;transform:scale(.95)}.selected-badge{position:absolute;top:10px;right:10px;background:#28a745;color:#fff;width:35px;height:35px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;box-shadow:0 2px 8px #0000004d}.no-photos{text-align:center;padding:60px 20px;color:#999;font-size:1.1rem}.settings-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.setting-group{display:flex;flex-direction:column;gap:8px}.setting-group label{font-weight:600;color:#555;font-size:.95rem}.text-input,.select-input{padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:all .2s;background:#fff}.text-input:focus,.select-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.color-picker-group{display:flex;align-items:center;gap:12px}.color-input{width:60px;height:45px;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer}.color-value{font-family:Courier New,monospace;font-weight:600;color:#666;text-transform:uppercase}.action-buttons{display:flex;justify-content:center;gap:15px;padding:0 30px 30px}.primary-button,.secondary-button{padding:16px 32px;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;min-width:200px}.primary-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea66}.primary-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea99}.primary-button:disabled{opacity:.5;cursor:not-allowed}.secondary-button{background:#fff;color:#667eea;border:2px solid #667eea}.secondary-button:hover{background:#667eea;color:#fff}.step-design{display:flex;height:100%;overflow:hidden}.design-sidebar{width:280px;background:#fff;border-right:1px solid #e0e0e0;overflow-y:auto;flex-shrink:0;max-height:100%}.sidebar-section{padding:8px 12px;border-bottom:1px solid #e0e0e0}.sidebar-section h4{margin:0 0 8px;font-size:1rem;color:#333;font-weight:600}.sidebar-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.sidebar-photo{aspect-ratio:1;border-radius:8px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:all .2s;position:relative}.sidebar-photo img{width:100%;height:100%;object-fit:cover}.sidebar-photo:hover:not(.used){border-color:#667eea;transform:scale(1.05)}.sidebar-photo.used{opacity:.5;cursor:default}.used-badge{position:absolute;top:5px;right:5px;background:#28a745;color:#fff;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.edit-controls{display:flex;flex-direction:column;gap:10px}.control-btn{padding:12px 16px;background:#f8f9fa;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s;display:flex;align-items:center;gap:8px;text-align:left}.control-btn:hover{background:#e9ecef;border-color:#667eea;transform:translate(5px)}.control-btn.danger{color:#dc3545}.control-btn.danger:hover{background:#dc3545;color:#fff;border-color:#dc3545}.sidebar-settings{display:flex;flex-direction:column;gap:10px}.sidebar-settings label{font-weight:600;font-size:.9rem;color:#555;margin-top:5px}.sidebar-settings input{width:100%;padding:10px;border:2px solid #e0e0e0;border-radius:6px;font-size:.95rem}.sidebar-settings input[type=color]{height:45px;cursor:pointer}.design-canvas-container{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#e9ecef}.canvas-toolbar{background:linear-gradient(135deg,#667eea,#764ba2);padding:5px 10px;border-bottom:1px solid #e0e0e0;display:flex;justify-content:center;align-items:center}.canvas-info{font-size:.9rem;color:#666;font-weight:500}.canvas-wrapper{flex:1;display:flex;align-items:center;justify-content:center;padding:5px;overflow:hidden;background:#f5f5f5}.canvas-wrapper>div{max-width:100%;max-height:100%}.canvas-wrapper canvas{max-width:100%;max-height:100%;object-fit:contain}.design-actions{background:#fff;padding:8px 15px;border-top:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:stretch;gap:10px;flex-shrink:0}.action-button{flex:1;padding:6px 16px;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;height:34px;white-space:nowrap}.action-button.primary-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.action-button.secondary-button{background:#f8f9fa;color:#495057;border:1px solid #dee2e6}.action-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.action-button.primary-button:hover:not(:disabled){box-shadow:0 2px 12px #667eea66}.action-button:active:not(:disabled){transform:translateY(0)}.action-button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:1200px){.template-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.settings-panel{grid-template-columns:1fr}}.new-collage-creator-overlay{padding:0}.new-collage-creator-modal{height:100vh;border-radius:0}.new-collage-creator-header h2{font-size:1.3rem}.step-select{padding:15px}.section{padding:20px;margin-bottom:20px}.template-grid{grid-template-columns:repeat(2,1fr);gap:10px}.template-card{padding:15px}.template-icon{font-size:2rem}.step-design{flex-direction:column}.design-sidebar{width:100%;max-height:250px;border-right:none;border-bottom:1px solid #e0e0e0}.sidebar-photos{grid-template-columns:repeat(4,1fr)}.design-actions{flex-direction:column;gap:10px}.primary-button,.secondary-button{width:100%;min-width:0}.canvas-wrapper{padding:10px;min-height:50vh}.canvas-wrapper>div canvas{max-width:100%!important;height:auto!important}.layout-grid{grid-template-columns:repeat(2,1fr)}.new-collage-creator-content,.photo-grid,.design-sidebar{scroll-behavior:smooth}.new-collage-creator-content::-webkit-scrollbar,.photo-grid::-webkit-scrollbar,.design-sidebar::-webkit-scrollbar{width:8px}.new-collage-creator-content::-webkit-scrollbar-track,.photo-grid::-webkit-scrollbar-track,.design-sidebar::-webkit-scrollbar-track{background:#f1f1f1}.new-collage-creator-content::-webkit-scrollbar-thumb,.photo-grid::-webkit-scrollbar-thumb,.design-sidebar::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.new-collage-creator-content::-webkit-scrollbar-thumb:hover,.photo-grid::-webkit-scrollbar-thumb:hover,.design-sidebar::-webkit-scrollbar-thumb:hover{background:#555}.collage-gallery{padding:20px}.collage-gallery-loading,.collage-gallery-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.loading-spinner{font-size:18px;color:#666}.collage-gallery-error p{color:#dc3545;margin-bottom:16px;font-size:16px}.retry-button{background:#007bff;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:16px;cursor:pointer;transition:background .2s ease}.retry-button:hover{background:#0056b3}.no-collages{text-align:center;padding:60px 20px;color:#666}.no-collages h3{margin:0 0 12px;font-size:24px;color:#333}.no-collages p{margin:0;font-size:16px}.collages-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;margin-bottom:24px}.collage-card{background:#fff;border:1px solid #e0e0e0;border-radius:12px;overflow:hidden;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0000001a}.collage-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000026;border-color:#007bff}.collage-image-container{position:relative;width:100%;height:200px;overflow:hidden}.collage-thumbnail{width:100%;height:100%;object-fit:cover;transition:transform .2s ease}.collage-card:hover .collage-thumbnail{transform:scale(1.05)}.collage-status-badge{position:absolute;top:12px;right:12px;color:#fff;padding:6px 12px;border-radius:16px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 8px #0003}.collage-info{padding:16px}.collage-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.collage-creator{font-weight:600;color:#333;font-size:14px}.collage-date{color:#666;font-size:12px}.collage-details{display:flex;justify-content:space-between;align-items:center;color:#666;font-size:12px}.collage-layout{background:#f8f9fa;padding:4px 8px;border-radius:4px;text-transform:capitalize}.collage-photos{font-weight:500}.collage-actions{padding:12px 16px;background:#f8f9fa;border-top:1px solid #e0e0e0;display:flex;gap:8px;flex-wrap:wrap}.collage-actions button{padding:6px 12px;border:none;border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px}.approve-button{background:#28a745;color:#fff}.approve-button:hover{background:#1e7e34}.reject-button{background:#dc3545;color:#fff}.reject-button:hover{background:#c82333}.hide-button{background:#6c757d;color:#fff}.hide-button:hover{background:#545b62}.show-button{background:#17a2b8;color:#fff}.show-button:hover{background:#138496}.delete-button{background:#dc3545;color:#fff}.delete-button:hover{background:#c82333}.collage-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.collage-modal{background:#fff;border-radius:12px;width:100%;max-width:900px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #0000004d}.collage-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e0e0e0;background:#f8f9fa;border-radius:12px 12px 0 0}.collage-modal-header h3{margin:0;color:#333;font-size:20px;font-weight:600}.modal-close-button{background:none;border:none;font-size:28px;color:#666;cursor:pointer;width:40px;height:40px;border-radius:20px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.modal-close-button:hover{background:#e0e0e0;color:#333}.collage-modal-content{display:grid;grid-template-columns:1fr 300px;gap:24px;padding:24px}.collage-modal-image{display:flex;align-items:center;justify-content:center;background:#f8f9fa;border-radius:8px;padding:16px;min-height:400px}.collage-modal-image img{max-width:100%;max-height:500px;border-radius:8px;box-shadow:0 4px 12px #00000026}.collage-modal-info{display:flex;flex-direction:column;gap:24px}.collage-modal-meta{border:1px solid #e0e0e0;border-radius:8px;padding:16px;background:#fafafa}.collage-modal-meta p{margin:0 0 8px;color:#555;font-size:14px}.collage-modal-meta p:last-child{margin-bottom:0}.collage-modal-meta strong{color:#333;font-weight:600}.status-indicator{font-weight:600;margin-left:8px}.layout-metadata{border-top:1px solid #e0e0e0;padding-top:12px;margin-top:12px}.layout-metadata p{color:#666;font-size:13px}.collage-modal-actions{display:flex;flex-direction:column;gap:12px}.download-button{background:#28a745;color:#fff;border:none;padding:12px 16px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px}.download-button:hover{background:#1e7e34;transform:translateY(-1px);box-shadow:0 4px 12px #28a7454d}.host-actions{display:flex;flex-direction:column;gap:8px;border-top:1px solid #e0e0e0;padding-top:16px}.host-actions button{padding:10px 16px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px}.collage-gallery{padding:16px}.collages-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.collage-modal-overlay{padding:10px}.collage-modal{max-height:95vh}.collage-modal-content{grid-template-columns:1fr;padding:16px}.collage-modal-info{order:-1}.collage-modal-header{padding:16px}.collage-modal-header h3{font-size:18px}.collage-actions{justify-content:center}.host-actions{flex-direction:row;flex-wrap:wrap}.host-actions button{flex:1;min-width:120px}@media(max-width:480px){.collages-grid{grid-template-columns:1fr;gap:12px}.collage-card{max-width:100%}.collage-meta,.collage-details{flex-direction:column;align-items:flex-start;gap:4px}.collage-actions{flex-direction:column}.collage-actions button{width:100%}.host-actions{flex-direction:column}}.gallery-page{min-height:100vh;background:var(--bg-primary);padding:80px 2rem 2rem;max-width:1400px;margin:0 auto}.gallery-header{margin-bottom:2rem}.header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.page-title{font-size:2rem;font-weight:700;color:var(--text-primary);margin:0 0 8px;text-align:center;flex:1}.event-subtitle{font-size:1.1rem;color:var(--text-secondary, #666);margin:0;font-weight:500}.gallery-page .view-controls{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:2rem;padding:1.5rem;background:var(--bg-secondary, white);border-radius:16px;box-shadow:0 2px 8px #00000014}.collage-controls{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1.25rem;background:linear-gradient(135deg,#667eea1f,#764ba21f);border-radius:16px;border:2px solid var(--accent-primary, #667eea);box-shadow:0 4px 16px #667eea26}.create-collage-btn{background:linear-gradient(135deg,var(--accent-primary, #667eea),var(--accent-secondary, #764ba2));color:#fff;border:none;padding:16px 32px;border-radius:14px;font-size:1.05rem;font-weight:700;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:12px;box-shadow:0 6px 20px #667eea66;text-transform:uppercase;letter-spacing:.5px}.create-collage-btn:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 8px 24px #667eea80}.templates-btn{background:linear-gradient(135deg,var(--accent-secondary, #764ba2),var(--accent-primary, #667eea));color:#fff;border:none;padding:16px 32px;border-radius:14px;font-size:1.05rem;font-weight:700;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:12px;text-decoration:none;box-shadow:0 6px 20px #764ba266;text-transform:uppercase;letter-spacing:.5px}.templates-btn:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 8px 24px #764ba280;color:#fff;text-decoration:none}.create-collage-btn:active{transform:translateY(0)}.create-collage-btn .create-icon{font-size:1.2rem}.refresh-info{text-align:center;color:var(--text-secondary, #666);font-size:.9rem;margin-bottom:1.5rem;font-weight:500}.collages-container{background:var(--bg-secondary, white);border-radius:16px;padding:32px;box-shadow:0 2px 12px #00000014}.collage-header{text-align:center;margin-bottom:32px;padding-bottom:20px;border-bottom:2px solid var(--bg-primary, #f5f5f5)}.collage-header h3{margin:0 0 12px;color:var(--text-primary, #333);font-size:1.75rem;font-weight:700;background:linear-gradient(135deg,var(--accent-primary, #667eea),var(--accent-secondary, #764ba2));background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.collage-header p{margin:0;color:var(--text-secondary, #666);font-size:1rem}.album-container{background:var(--bg-secondary, white);border-radius:16px;padding:24px;box-shadow:0 2px 12px #00000014}.no-photos{text-align:center;padding:80px 20px;background:var(--bg-primary, #f5f5f5);border-radius:16px}.no-photos p:first-child{margin:0 0 12px;color:var(--text-primary, #333);font-size:1.25rem;font-weight:600}.no-photos p:last-child{margin:0;color:var(--text-secondary, #666);font-size:1rem}.collage-permission-message{text-align:center;padding:60px 20px;background:var(--bg-primary, #f5f5f5);border-radius:16px}.collage-permission-message h3{margin:0 0 16px;color:var(--text-primary, #333);font-size:1.5rem;font-weight:600}.collage-permission-message p{margin:0 0 8px;color:var(--text-secondary, #666);font-size:1rem}.collage-permission-message p:last-child{margin-bottom:0}.gallery-page .view-mode-selector{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center;align-items:stretch}.gallery-page .view-btn{display:flex;align-items:center;gap:.625rem;padding:14px 24px;background:var(--bg-primary, #f5f5f5);border:2px solid transparent;border-radius:12px;cursor:pointer;transition:all .3s ease;color:var(--text-primary, #333);font-size:1rem;font-weight:600;min-height:52px;position:relative;overflow:hidden}.gallery-page .view-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#667eea0d,#764ba20d);opacity:0;transition:opacity .3s ease}.gallery-page .view-btn:hover:before{opacity:1}.gallery-page .view-btn:hover{background:linear-gradient(135deg,#667eea26,#764ba226);border-color:var(--accent-primary, #667eea);transform:translateY(-2px);box-shadow:0 4px 12px #667eea33}.gallery-page .view-btn.active{background:linear-gradient(135deg,var(--accent-primary, #667eea),var(--accent-secondary, #764ba2));color:#fff;border-color:transparent;box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.gallery-page .view-btn.active:before{opacity:0}.gallery-page .view-icon{font-size:1.3rem;position:relative;z-index:1}.auto-album-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary, #667eea));border:1px solid var(--color-primary);border-radius:8px;cursor:pointer;transition:all .2s ease;color:#fff;font-size:.875rem;text-decoration:none;font-weight:500}.auto-album-btn:hover{background:linear-gradient(135deg,var(--color-primary-dark, #3f51b5),var(--color-secondary-dark, #5a67d8));transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.album-theme-selector{display:flex;align-items:center;justify-content:center;gap:.875rem;flex-wrap:wrap;padding-top:.5rem}.theme-label{font-weight:600;color:var(--text-primary, #333);font-size:.95rem;margin-right:.5rem}.theme-btn{display:flex;flex-direction:column;align-items:center;gap:.375rem;padding:10px 14px;background:var(--bg-primary, #f5f5f5);border:2px solid transparent;border-radius:12px;cursor:pointer;transition:all .3s ease;min-width:70px;min-height:44px}.theme-btn:hover{background:linear-gradient(135deg,#667eea1a,#764ba21a);border-color:var(--accent-primary, #667eea);transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.theme-btn.active{background:linear-gradient(135deg,var(--accent-primary, #667eea),var(--accent-secondary, #764ba2));color:#fff;border-color:transparent;box-shadow:0 4px 12px #667eea4d}.theme-icon{font-size:1.5rem}.theme-name{font-size:.8rem;font-weight:600}.frame-controls{display:flex;flex-direction:column;gap:1rem;padding:1rem;background:var(--color-secondary, #f8f9fa);border-radius:8px;border:1px solid var(--color-border)}.frame-toggle{display:flex;align-items:center;gap:.5rem}.toggle-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s ease;color:var(--text-primary);font-size:.875rem;font-weight:500}.toggle-btn:hover{background:var(--color-hover);border-color:var(--color-primary)}.toggle-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.toggle-icon{font-size:1rem}.frame-selector{display:flex;flex-direction:column;gap:.75rem}.frame-label{font-weight:600;color:var(--text-primary);font-size:.875rem}.frame-options{display:flex;gap:.75rem;flex-wrap:wrap;max-height:200px;overflow-y:auto;padding:.5rem;background:var(--color-bg);border-radius:6px;border:1px solid var(--color-border)}.frame-btn{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.75rem;background:var(--color-bg);border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s ease;min-width:80px;max-width:120px}.frame-btn:hover{background:var(--color-hover);border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.frame-btn.active{background:var(--color-primary-light, rgba(74, 144, 226, .1));border-color:var(--color-primary);color:var(--color-primary)}.frame-preview{width:60px;height:60px;object-fit:contain;border-radius:4px;background:#f5f5f5}.frame-name{font-size:.75rem;font-weight:500;text-align:center;line-height:1.2;max-width:100%;word-break:break-word}.gallery-page p{text-align:center;color:var(--text-secondary);margin-bottom:24px;font-weight:500}.fullscreen-modal{position:fixed;top:0;left:0;width:100vw;height:100vh;background:var(--modal-bg);display:flex;justify-content:center;align-items:center;z-index:9999;flex-direction:column}.fullscreen-modal .close-btn{position:absolute;top:20px;right:20px;background-color:var(--button-danger-bg);color:#fff;border:none;border-radius:50%;width:40px;height:40px;font-size:1.2rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.fullscreen-modal .close-btn:hover{background-color:var(--button-danger-hover-bg);transform:scale(1.1)}.fullscreen-modal .prev-btn,.fullscreen-modal .next-btn{position:absolute;top:50%;transform:translateY(-50%);background-color:var(--button-secondary-bg);color:var(--button-secondary-text);border:1px solid var(--button-secondary-border);border-radius:50%;width:50px;height:50px;font-size:1.5rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.fullscreen-modal .prev-btn{left:20px}.fullscreen-modal .next-btn{right:20px}.fullscreen-modal .prev-btn:hover,.fullscreen-modal .next-btn:hover{background-color:var(--button-secondary-hover-bg);color:var(--button-secondary-hover-text);transform:translateY(-50%) scale(1.1)}.fullscreen-media{max-width:90%;max-height:75%;text-align:center;display:flex;flex-direction:column;align-items:center}.fullscreen-media img,.fullscreen-media video{max-width:100%;max-height:70vh;object-fit:contain;border-radius:8px;box-shadow:var(--shadow-xl)}.fullscreen-media h3{color:var(--text-primary);margin:16px 0 8px;font-weight:600;font-size:1.25rem}.fullscreen-media p{color:var(--text-secondary);margin:0 0 16px;max-width:500px;line-height:1.5}.fullscreen-reactions{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;gap:8px;background-color:var(--card-bg);padding:12px 16px;border-radius:25px;box-shadow:var(--shadow-lg);border:1px solid var(--border-color)}.fullscreen-reactions .reaction-btn{background-color:transparent;border:1px solid var(--border-color);border-radius:20px;padding:8px 12px;cursor:pointer;font-size:.9rem;color:var(--text-primary);transition:all .2s ease;white-space:nowrap}.fullscreen-reactions .reaction-btn:hover{background-color:var(--button-secondary-bg);border-color:var(--primary-color);transform:scale(1.05)}.fullscreen-reactions .reaction-btn:active{transform:scale(.95)}.gallery-page{padding:16px}.page-title{font-size:2rem}.event-subtitle{font-size:1rem}.gallery-page .view-controls{padding:1rem;gap:1rem}.gallery-page .view-mode-selector{flex-direction:column;align-items:stretch;gap:.5rem}.gallery-page .view-btn{padding:10px 14px;font-size:.85rem;flex:none;width:100%;min-width:0;justify-content:center}.gallery-page .view-icon{font-size:1rem}.collage-controls{flex-direction:column;width:100%;gap:.75rem;padding:1rem}.create-collage-btn,.templates-btn{width:100%;justify-content:center;padding:14px 24px;font-size:1rem}.album-theme-selector{gap:.5rem;justify-content:center}.theme-btn{padding:8px 10px;min-width:60px}.theme-icon{font-size:1.3rem}.theme-name{font-size:.7rem}.collages-container,.album-container{padding:20px}.collage-header h3{font-size:1.5rem}.collage-header p{font-size:.9rem}.fullscreen-reactions{bottom:80px;padding:10px 12px;gap:6px;flex-wrap:wrap;max-width:90%}.fullscreen-reactions .reaction-btn{padding:6px 10px;font-size:.85rem}@media(max-width:480px){.page-title{font-size:1.75rem}.event-subtitle{font-size:.9rem}.gallery-page .view-controls{gap:.75rem}.gallery-page .view-btn{padding:8px 10px;font-size:.8rem}.gallery-page .view-btn span:not(.view-icon){display:none}.gallery-page .view-icon{font-size:1.2rem}.collage-controls{flex-direction:column;width:100%;gap:.75rem;padding:1rem}.create-collage-btn,.templates-btn{width:100%;justify-content:center;padding:16px 24px;font-size:1rem}.create-collage-btn .create-icon,.templates-btn .templates-icon{font-size:1.2rem}.theme-label{width:100%;text-align:center;margin-bottom:.25rem}.album-theme-selector{gap:.5rem}.theme-btn{padding:6px 8px;min-width:55px}.theme-icon{font-size:1.2rem}.theme-name{font-size:.65rem}.refresh-info{font-size:.85rem}.collage-header h3{font-size:1.25rem}.collage-header p{font-size:.85rem}.no-photos{padding:60px 16px}.no-photos p:first-child{font-size:1.1rem}.no-photos p:last-child{font-size:.9rem}}.create-event-page{min-height:100vh;background:var(--bg-primary);padding:80px 2rem 2rem}.create-event-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;max-width:600px;margin-left:auto;margin-right:auto}.create-event-header h2{margin:0;text-align:center;flex:1;color:var(--text-primary);font-weight:700;font-size:1.75rem}.header-actions{display:flex;gap:15px;align-items:center}.create-event-container{max-width:600px;width:100%;margin:0 auto;background:var(--bg-secondary);color:var(--text-primary);padding:2.5rem;border-radius:16px;box-shadow:0 8px 32px var(--shadow-color);border:1px solid var(--border-primary);position:relative}.create-event-form{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.create-event-form input{padding:1rem 1.25rem;border:1.5px solid var(--border-primary);border-radius:12px;background:var(--input-bg);color:var(--text-primary);font-size:1rem;transition:all .3s ease}.create-event-form input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 4px #3b82f61a;transform:translateY(-2px)}.create-event-form input::placeholder{color:var(--text-muted)}.create-event-form button{padding:1rem 1.5rem;background:linear-gradient(135deg,var(--accent-primary),var(--color-accent, #06b6d4));color:#fff;border:none;border-radius:12px;cursor:pointer;font-size:1.1rem;font-weight:600;transition:all .3s ease;box-shadow:0 4px 12px #3b82f64d}.create-event-form button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #3b82f666}.create-event-form button:active{transform:translateY(0)}.create-event-form button:disabled,.create-event-form button.btn-disabled{background:var(--bg-quaternary);color:var(--text-muted);cursor:not-allowed;opacity:.6;box-shadow:none}.create-event-form button:disabled:hover,.create-event-form button.btn-disabled:hover{transform:none;box-shadow:none}.event-result{margin-top:2rem;padding:2rem;background:linear-gradient(135deg,#10b9811a,#3b82f61a);border:2px solid var(--success-color);border-radius:16px;animation:slideIn .4s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.event-result h3{color:var(--success-color);margin-top:0;margin-bottom:1.5rem;font-weight:700;font-size:1.5rem;text-align:center}.event-result p{margin:1rem 0;color:var(--text-primary);font-size:1rem;line-height:1.6}.event-result strong{color:var(--accent-primary);font-weight:700;background:#3b82f61a;padding:.25rem .5rem;border-radius:6px}.event-result img{border-radius:12px;box-shadow:0 4px 16px var(--shadow-color);border:2px solid var(--border-primary);margin-top:1rem;display:block}.event-actions-after-creation{display:flex;justify-content:center;gap:1rem;margin-top:2rem}.event-actions-after-creation .btn{padding:.875rem 1.5rem;border-radius:12px;text-decoration:none;color:#fff;font-weight:600;text-align:center;transition:all .3s ease;border:2px solid transparent}.event-actions-after-creation .disabled-link{pointer-events:none;opacity:.5;cursor:not-allowed}.your-events-button-container{margin-top:2rem;text-align:center}.your-events-button-container .btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:2px solid var(--border-primary);padding:.875rem 2rem;border-radius:12px;text-decoration:none;font-weight:600;transition:all .3s ease;display:inline-block}.your-events-button-container .btn-secondary:hover{background:var(--bg-quaternary);border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:0 8px 20px var(--shadow-color)}.create-event-page{padding:2rem 1rem 1rem;align-items:flex-start}.create-event-header{gap:.5rem;padding:0 .5rem;margin-bottom:1.5rem}.create-event-header h2{font-size:1.5rem}.create-event-container{padding:1.5rem}.create-event-form input{padding:.875rem 1rem;font-size:1rem}.create-event-form button{padding:.875rem 1.25rem;font-size:1rem}.event-result{padding:1.5rem}.event-result h3{font-size:1.25rem}.event-result img{max-width:100%;height:auto}.event-actions-after-creation{flex-direction:column;gap:.75rem}.event-actions-after-creation .btn{width:100%}.your-events-button-container .btn-secondary{width:100%;padding:.875rem 1rem}@media(max-width:480px){.create-event-header h2{font-size:1.25rem}.create-event-container{padding:1.25rem}}.profile-page{min-height:100vh;background:var(--bg-primary);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem}.profile-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;gap:2rem;padding:0 1rem;width:100%;max-width:600px}.profile-header h2{margin:0;text-align:center;flex:1;color:var(--text-primary);font-weight:700;font-size:2rem;background:linear-gradient(135deg,var(--accent-primary),var(--color-accent, #06b6d4));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.profile-container{background:var(--bg-secondary);padding:2.5rem;border-radius:16px;box-shadow:0 8px 32px var(--shadow-color);border:1px solid var(--border-primary);text-align:center;max-width:600px;width:100%}.profile-container h2{margin-bottom:1.5rem;color:var(--text-primary)}.profile-info{display:flex;align-items:center;gap:2rem;margin-bottom:2rem;padding:1.5rem;background:var(--bg-tertiary);border-radius:12px;border:1px solid var(--border-secondary)}.profile-photo img{width:100px;height:100px;border-radius:50%;object-fit:cover;border:3px solid var(--accent-primary);box-shadow:0 4px 12px var(--shadow-color)}.profile-details{flex:1;text-align:left}.profile-details p{margin:.75rem 0;color:var(--text-primary);font-size:1rem;line-height:1.6}.profile-details strong{color:var(--text-secondary);font-weight:600;margin-right:.5rem}.password-form{display:flex;flex-direction:column;gap:1rem;margin-top:2rem;padding:1.5rem;background:var(--bg-tertiary);border-radius:12px;border:1px solid var(--border-secondary)}.password-form h3{margin:0 0 1rem;color:var(--text-primary);font-weight:700;font-size:1.25rem}.input-with-view{position:relative;display:flex;align-items:center}.password-form input{width:100%;padding:1rem 3rem 1rem 1.25rem;border:1.5px solid var(--border-primary);border-radius:12px;background:var(--input-bg);color:var(--text-primary);font-size:1rem;transition:all .3s ease}.password-form input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 4px #3b82f61a;transform:translateY(-2px)}.password-form input::placeholder{color:var(--text-muted)}.view-btn{position:absolute;right:1rem;background:none;border:none;cursor:pointer;font-size:1.2rem;color:var(--text-secondary);transition:all .3s ease;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:8px;z-index:1}.view-btn:hover{background:var(--bg-quaternary);color:var(--accent-primary)}.password-form .btn{padding:1rem 2rem;background:linear-gradient(135deg,var(--accent-primary),var(--color-accent, #06b6d4));color:#fff;border:none;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;box-shadow:0 4px 12px #3b82f64d;margin-top:.5rem}.password-form .btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #3b82f666}.password-form .btn:disabled{opacity:.6;cursor:not-allowed}.profile-actions{display:flex;gap:1rem;margin-top:1.5rem;flex-wrap:wrap}.profile-actions .btn{flex:1;min-width:150px;padding:1rem 2rem;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;border:none}.profile-actions .btn:not(.btn-danger){background:var(--bg-quaternary);color:var(--text-primary);border:2px solid var(--border-primary)}.profile-actions .btn:not(.btn-danger):hover{background:var(--bg-tertiary);border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:0 8px 20px var(--shadow-color)}.btn-danger{background:var(--error-color, #ef4444);color:#fff;box-shadow:0 4px 12px #ef44444d}.btn-danger:hover{background:#dc2626;transform:translateY(-2px);box-shadow:0 8px 20px #ef444466}.profile-page{padding:2rem 1rem 1rem;align-items:flex-start}.profile-header{gap:.5rem;padding:0 .5rem;margin-bottom:1.5rem}.profile-header h2{font-size:1.5rem}.profile-container{padding:1.5rem}.profile-info{flex-direction:column;text-align:center;gap:1rem}.profile-details{text-align:center}.profile-actions{flex-direction:column}.profile-actions .btn{width:100%}@media(max-width:480px){.profile-header h2{font-size:1.25rem}.profile-container,.password-form{padding:1.25rem}}.album-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;overflow:hidden;transition:all .3s ease;box-shadow:var(--shadow-sm)}.album-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.album-card-image{position:relative;width:100%;height:200px;overflow:hidden;background:var(--bg-secondary)}.album-cover{width:100%;height:100%;object-fit:cover}.album-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--border-color) 100%)}.album-placeholder-icon{font-size:3rem;margin-bottom:8px;opacity:.6}.album-placeholder-text{font-size:.9rem;opacity:.8}.album-card-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#0000001a,#0000 50%);display:flex;justify-content:flex-end;align-items:flex-start;padding:12px}.album-visibility{display:flex;align-items:center}.visibility-badge{background:#000000b3;color:#fff;padding:4px 8px;border-radius:12px;font-size:.8rem;font-weight:500;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.visibility-badge.private{background:#dc2626cc}.visibility-badge.public{background:#22c55ecc}.album-card-content{padding:16px}.album-title{margin:0 0 8px;font-size:1.1rem;font-weight:600;color:var(--text-primary);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.album-description{margin:0 0 12px;font-size:.9rem;color:var(--text-secondary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.album-meta{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:var(--text-secondary);margin-bottom:16px}.album-count{font-weight:500;color:var(--primary-color)}.album-date{opacity:.8}.album-card-actions{padding:0 16px 16px;display:flex;flex-direction:column;gap:8px}.album-view-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-weight:600;background:#3b82f6;color:#fff;padding:12px 16px;border-radius:8px;border:2px solid #3b82f6;transition:all .2s ease;box-shadow:0 2px 8px #3b82f64d}.album-view-btn:hover{background:#2563eb;border-color:#2563eb;color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666;text-decoration:none}.album-view-btn .icon{font-size:1.1rem}.album-host-actions{display:flex;gap:8px;margin-top:4px}.album-edit-btn,.album-delete-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;font-size:.9rem;font-weight:600;padding:10px 12px;border-radius:6px;border:2px solid;cursor:pointer;transition:all .2s ease}.album-edit-btn{background:#f59e0b;color:#fff;border-color:#f59e0b;box-shadow:0 2px 6px #f59e0b4d}.album-edit-btn:hover{background:#d97706;border-color:#d97706;transform:translateY(-1px);box-shadow:0 4px 10px #f59e0b66}.album-delete-btn{background:#ef4444;color:#fff;border-color:#ef4444;box-shadow:0 2px 6px #ef44444d}.album-delete-btn:hover{background:#dc2626;border-color:#dc2626;transform:translateY(-1px);box-shadow:0 4px 10px #ef444466}.album-edit-btn .icon,.album-delete-btn .icon{font-size:1rem}.album-card-image{height:160px}.album-card-content{padding:12px}.album-card-actions{padding:0 12px 12px}.album-title{font-size:1rem}.album-host-actions{flex-direction:column}.album-edit-btn,.album-delete-btn{flex:none}.create-album-modal{max-width:600px;max-height:90vh;overflow-y:auto}.create-album-form{padding:20px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:var(--text-primary)}.form-group input,.form-group textarea,.form-group select{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;font-size:.95rem;background:var(--input-bg);color:var(--text-primary);transition:border-color .3s ease}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.1)}.form-group textarea{resize:vertical;min-height:80px}.form-hint{font-size:.85rem;color:var(--text-secondary);margin-top:4px;margin-bottom:12px}.cover-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px;max-height:200px;overflow-y:auto;padding:8px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary)}.cover-photo-option{position:relative;aspect-ratio:1;border-radius:6px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:all .3s ease}.cover-photo-option:hover{border-color:var(--primary-color);transform:scale(1.05)}.cover-photo-option.selected{border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.3)}.cover-photo-thumbnail{width:100%;height:100%;object-fit:cover}.cover-photo-selected-overlay{position:absolute;inset:0;background:rgba(var(--primary-color-rgb),.8);display:flex;align-items:center;justify-content:center}.checkmark{color:#fff;font-size:1.2rem;font-weight:700}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px;border-top:1px solid var(--border-color)}.modal-actions .btn{min-width:100px}.create-album-modal{max-width:95vw;margin:20px}.create-album-form{padding:16px}.cover-photo-grid{grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:6px}.modal-actions{flex-direction:column-reverse}.modal-actions .btn{min-width:unset}.edit-album-modal{max-width:800px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-tabs{display:flex;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.tab-button{flex:1;padding:12px 16px;border:none;background:transparent;color:var(--text-secondary);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s ease;border-bottom:2px solid transparent}.tab-button:hover{color:var(--text-primary);background:var(--hover-bg)}.tab-button.active{color:var(--primary-color);border-bottom-color:var(--primary-color);background:var(--card-bg)}.edit-album-form{padding:20px;overflow-y:auto}.photo-management{padding:20px;overflow-y:auto;flex:1}.photo-section{margin-bottom:32px}.photo-section h4{margin:0 0 16px;font-size:1.1rem;color:var(--text-primary);padding-bottom:8px;border-bottom:1px solid var(--border-color)}.no-photos{text-align:center;padding:40px 20px;color:var(--text-secondary);font-style:italic;background:var(--bg-secondary);border-radius:8px}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}.photo-item{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;border:2px solid var(--border-color);transition:all .3s ease}.photo-item:hover{border-color:var(--primary-color);transform:scale(1.02)}.photo-thumbnail{width:100%;height:100%;object-fit:cover}.video-thumbnail{width:100%;height:100%;background:var(--bg-secondary);display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.video-icon{font-size:2rem}.photo-remove-btn,.photo-add-btn{position:absolute;top:6px;right:6px;width:28px;height:28px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:var(--shadow-sm)}.photo-remove-btn{background:#dc2626e6;color:#fff}.photo-remove-btn:hover{background:#dc2626;transform:scale(1.1)}.photo-add-btn{background:#22c55ee6;color:#fff}.photo-add-btn:hover{background:#22c55e;transform:scale(1.1)}.loading-spinner{text-align:center;padding:40px;color:var(--text-secondary);font-size:1.1rem}.edit-album-form .cover-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px;max-height:200px;overflow-y:auto;padding:8px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary)}.edit-album-form .cover-photo-option{position:relative;aspect-ratio:1;border-radius:6px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:all .3s ease}.edit-album-form .cover-photo-option:hover{border-color:var(--primary-color);transform:scale(1.05)}.edit-album-form .cover-photo-option.selected{border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.3)}.edit-album-form .cover-photo-thumbnail{width:100%;height:100%;object-fit:cover}.edit-album-form .cover-photo-selected-overlay{position:absolute;inset:0;background:rgba(var(--primary-color-rgb),.8);display:flex;align-items:center;justify-content:center}.edit-album-form .checkmark{color:#fff;font-size:1.2rem;font-weight:700}.edit-album-modal{max-width:95vw;margin:20px}.edit-album-form,.photo-management{padding:16px}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px}.photo-section{margin-bottom:24px}.tab-button{padding:10px 12px;font-size:.9rem}.edit-album-form .cover-photo-grid{grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:6px}.album-manager{padding:20px 0}.album-manager.loading{display:flex;justify-content:center;align-items:center;min-height:200px}.loading-spinner{font-size:1.1rem;color:var(--text-secondary)}.album-manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid var(--border-color)}.album-manager-header h3{margin:0;font-size:1.5rem;color:var(--text-primary)}.create-album-btn{display:flex;align-items:center;gap:8px;font-weight:600;background:#10b981;color:#fff;border:2px solid #10b981;padding:12px 20px;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #10b9814d}.create-album-btn:hover{background:#059669;border-color:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b98166}.create-album-btn .icon{font-size:1.2rem}.no-albums{text-align:center;padding:60px 20px;color:var(--text-secondary)}.no-albums-icon{font-size:4rem;margin-bottom:16px;opacity:.5}.no-albums h4{margin:0 0 8px;font-size:1.3rem;color:var(--text-primary)}.no-albums p{font-size:1rem;max-width:400px;margin:0 auto 24px;line-height:1.5}.albums-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin-top:20px}.album-manager-header{flex-direction:column;gap:16px;align-items:stretch}.albums-grid{grid-template-columns:1fr;gap:16px}.no-albums{padding:40px 16px}.dashboard-page{min-height:100vh;background:var(--bg-primary);padding:80px 2rem 2rem}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;max-width:1400px;margin-left:auto;margin-right:auto}.dashboard-header h1{color:var(--text-primary);font-weight:700;font-size:2rem;margin:0;flex:1;text-align:center}.dashboard-header h2{margin:0;text-align:center;flex:1;color:var(--text-primary);font-weight:700;font-size:1.75rem}.dashboard-main{max-width:1400px;margin:0 auto}.dashboard-main>p{color:var(--text-secondary);text-align:center;margin-bottom:2rem;font-size:1.125rem;line-height:1.6}.dashboard-tabs{display:flex;gap:1rem;margin-bottom:2rem;border-bottom:2px solid var(--border-primary);padding-bottom:0}.tab-button{padding:1rem 2rem;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:1rem;font-weight:600;border-radius:12px 12px 0 0;border-bottom:3px solid transparent;transition:all .3s ease;position:relative}.tab-button:hover{color:var(--text-primary);background:var(--bg-secondary);border-bottom-color:var(--accent-primary)}.tab-button.active{color:var(--accent-primary);background:var(--bg-secondary);border-bottom-color:var(--accent-primary);box-shadow:0 -4px 12px #3b82f626}.tab-content{min-height:400px}.events-tab h2{color:var(--text-primary);margin-bottom:2rem;font-size:1.75rem;font-weight:700}.dashboard-container{background:var(--bg-secondary);color:var(--text-primary);padding:2.5rem;border-radius:16px;box-shadow:0 8px 32px var(--shadow-color);border:1px solid var(--border-primary);text-align:center;max-width:100%;width:100%}.dashboard-container h2{margin-bottom:24px;color:var(--text-primary)}.dashboard-container>p{color:var(--text-secondary);font-size:1.1rem;font-weight:500}.event-list{list-style:none;padding:0;margin:0}.event-item{background:var(--bg-tertiary);margin-bottom:1.5rem;padding:2rem;border-radius:16px;text-align:left;border:1px solid var(--border-primary);transition:all .3s ease;position:relative;overflow:hidden}.event-item:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--accent-primary),var(--color-accent, #06b6d4));opacity:0;transition:opacity .3s ease;z-index:0}.event-item:hover:before{opacity:.05}.event-item:hover{transform:translateY(-4px);border-color:var(--accent-primary);box-shadow:0 12px 24px var(--shadow-color)}.event-item h3{margin:0 0 1rem;color:var(--accent-primary);font-weight:700;font-size:1.5rem;position:relative;z-index:1}.event-item p{margin:.5rem 0;color:var(--text-secondary);font-weight:500;position:relative;z-index:1}.event-item p:last-of-type{margin-bottom:0}.event-code-container{display:flex;align-items:center;gap:1rem;margin:1rem 0;padding:1rem;background:var(--bg-quaternary);border:1px solid var(--border-secondary);border-radius:12px;position:relative;z-index:1}.event-code-label{margin:0;flex:1;font-size:1rem;color:var(--text-primary)}.event-code-label strong{color:var(--accent-primary);font-weight:700;background:#3b82f61a;padding:.25rem .75rem;border-radius:6px;margin-left:.5rem;font-family:Courier New,monospace;font-size:1.1rem}.btn-copy{background:linear-gradient(135deg,var(--success-color, #10b981),#059669);color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-weight:600;font-size:.9rem;transition:all .3s ease;box-shadow:0 2px 8px #10b9814d;white-space:nowrap}.btn-copy:hover{transform:translateY(-2px);box-shadow:0 4px 12px #10b98166;background:linear-gradient(135deg,#059669,#047857)}.btn-copy:active{transform:translateY(0)}.event-actions{display:flex;gap:1rem;margin:1.5rem 0;flex-wrap:wrap;position:relative;z-index:1}.event-actions .btn{padding:.75rem 1.5rem;border-radius:12px;text-decoration:none;color:#fff;font-weight:600;text-align:center;transition:all .3s ease;border:none;cursor:pointer;font-size:.95rem}.event-actions .btn-primary{background:linear-gradient(135deg,var(--accent-primary),var(--color-accent, #06b6d4));box-shadow:0 4px 12px #3b82f64d}.event-actions .btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #3b82f666}.event-actions .btn-secondary{background:var(--bg-quaternary);color:var(--text-primary);border:2px solid var(--border-primary)}.event-actions .btn-secondary:hover{background:var(--bg-tertiary);border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:0 8px 20px var(--shadow-color)}.event-actions .btn-danger{background:var(--error-color, #ef4444);border:none;cursor:pointer;box-shadow:0 4px 12px #ef44444d}.event-actions .btn-danger:hover{background:#dc2626;transform:translateY(-2px);box-shadow:0 8px 20px #ef444466}.event-actions .btn-danger:disabled{background:#6b7280;cursor:not-allowed;opacity:.6;transform:none;box-shadow:none}.dashboard-page{padding:1rem}.dashboard-header{gap:.5rem;padding:0 .5rem;margin-bottom:1.5rem}.dashboard-header h1{font-size:1.75rem}.dashboard-main>p{font-size:1rem;padding:0 .5rem}.dashboard-tabs{gap:.5rem;flex-wrap:wrap}.tab-button{padding:.75rem 1.25rem;font-size:.9rem;flex:1;min-width:120px}.events-tab h2{font-size:1.5rem;margin-bottom:1.5rem}.dashboard-container,.event-item{padding:1.5rem}.event-item h3{font-size:1.25rem}.event-item p{font-size:.9rem}.event-code-container{flex-direction:column;align-items:flex-start;gap:.75rem}.btn-copy{width:100%}.event-actions{flex-direction:column;gap:.75rem}.event-actions .btn{width:100%;padding:.875rem 1rem}.qr-code-section{padding:1rem 0}.qr-code-section h4{font-size:1.1rem}.qr-code-image{max-width:100%;height:auto}@media(max-width:480px){.dashboard-header h1{font-size:1.5rem}.tab-button{padding:.625rem 1rem;font-size:.85rem}.dashboard-container,.event-item{padding:1.25rem}}.users-table-container{background-color:var(--color-card-bg);border-radius:12px;border:1px solid var(--color-border);box-shadow:var(--shadow-sm);overflow:hidden}.users-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--color-border);background-color:var(--color-bg)}.users-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text)}.users-stats{display:flex;gap:1rem}.users-stats .stat{font-size:.875rem;color:var(--color-text-secondary);background-color:var(--color-card-bg);padding:.375rem .75rem;border-radius:6px;border:1px solid var(--color-border)}.users-controls{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background-color:var(--color-bg);border-bottom:1px solid var(--color-border)}.users-table{width:100%;border-collapse:collapse;background-color:var(--color-card-bg)}.users-table th{background-color:var(--color-bg);color:var(--color-text);font-weight:600;font-size:.875rem;text-align:left;padding:.75rem;border-bottom:1px solid var(--color-border);white-space:nowrap}.users-table td{padding:.75rem;border-bottom:1px solid var(--color-border);color:var(--color-text);font-size:.875rem;vertical-align:middle}.users-table tr:hover{background-color:var(--color-hover)}.user-name{font-weight:500;color:var(--color-text)}.user-email{color:var(--color-text-secondary)}.date-cell{white-space:nowrap;color:var(--color-text-secondary);font-size:.8rem}.status-badge,.role-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.status-badge.status-deleted{background-color:#ef44441a;color:#ef4444}.role-badge.role-admin{background-color:#9333ea1a;color:#9333ea}.role-badge.role-host{background-color:#3b82f61a;color:#3b82f6}.role-badge.role-guest{background-color:#6b72801a;color:#6b7280}.actions-cell{white-space:nowrap}.btn-primary{background-color:#3b82f61a;color:#3b82f6;border:1px solid rgba(59,130,246,.2)}.btn-primary:hover{background-color:#3b82f633}@media(max-width:1024px){.users-controls{flex-direction:column;gap:1rem;align-items:stretch}.filters{margin-left:0;justify-content:flex-start}.action-buttons{flex-direction:column;gap:.25rem}.action-buttons .btn{text-align:center}}.users-header{flex-direction:column;gap:1rem;align-items:flex-start}.users-stats{flex-wrap:wrap;gap:.5rem}.users-table{font-size:.8rem}.users-table th,.users-table td{padding:.5rem .375rem}.users-table th:nth-child(6),.users-table td:nth-child(6),.users-table th:nth-child(7),.users-table td:nth-child(7),.users-table th:nth-child(8),.users-table td:nth-child(8),.users-table th:nth-child(9),.users-table td:nth-child(9){display:none}@media(max-width:480px){.users-table-container{margin:0 -1rem;border-radius:0;border-left:none;border-right:none}.users-header,.users-controls,.pagination{padding-left:1rem;padding-right:1rem}}.events-table-container{background-color:var(--color-card-bg);border-radius:12px;border:1px solid var(--color-border);box-shadow:var(--shadow-sm);overflow:hidden}.events-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--color-border);background-color:var(--color-bg)}.events-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text)}.events-stats{display:flex;gap:1rem;flex-wrap:wrap}.events-stats .stat{font-size:.875rem;color:var(--color-text-secondary);background-color:var(--color-card-bg);padding:.375rem .75rem;border-radius:6px;border:1px solid var(--color-border);white-space:nowrap}.events-controls{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background-color:var(--color-bg);border-bottom:1px solid var(--color-border)}.search-box{flex:1;max-width:400px}.search-input{width:100%;padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:6px;background-color:var(--color-card-bg);color:var(--color-text);font-size:.875rem}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61a}.filters{display:flex;gap:.75rem;margin-left:1rem}.filter-select{padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:6px;background-color:var(--color-card-bg);color:var(--color-text);font-size:.875rem;cursor:pointer}.filter-select:focus{outline:none;border-color:var(--color-primary)}.table-container{overflow-x:auto}.events-table{width:100%;border-collapse:collapse;background-color:var(--color-card-bg)}.events-table th{background-color:var(--color-bg);color:var(--color-text);font-weight:600;font-size:.875rem;text-align:left;padding:.75rem;border-bottom:1px solid var(--color-border);white-space:nowrap}.events-table td{padding:.75rem;border-bottom:1px solid var(--color-border);color:var(--color-text);font-size:.875rem;vertical-align:middle}.events-table tr:hover{background-color:var(--color-hover)}.event-title{max-width:200px}.title-text{font-weight:500;color:var(--color-text);margin-bottom:.25rem}.slug-text{font-size:.75rem;color:var(--color-text-secondary);font-family:monospace}.host-info{max-width:180px}.host-name{font-weight:500;color:var(--color-text);margin-bottom:.25rem}.host-email{font-size:.75rem;color:var(--color-text-secondary)}.date-cell{white-space:nowrap;color:var(--color-text-secondary);font-size:.8rem;max-width:120px}.number-cell{text-align:center;font-weight:500}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;white-space:nowrap}.status-badge.status-active{background-color:#22c55e1a;color:#22c55e}.status-badge.status-archived{background-color:#6b72801a;color:#6b7280}.status-badge.status-suspended{background-color:#fbbf241a;color:#fbbf24}.status-badge.status-expired{background-color:#ef44441a;color:#ef4444}.actions-cell{white-space:nowrap;min-width:200px}.action-buttons{display:flex;gap:.375rem;flex-wrap:wrap}.action-buttons .btn{padding:.25rem .5rem;font-size:.75rem;border-radius:4px;cursor:pointer;border:none;font-weight:500;transition:all .2s ease;white-space:nowrap}.btn-info{background-color:#06b6d41a;color:#06b6d4;border:1px solid rgba(6,182,212,.2)}.btn-info:hover{background-color:#06b6d433}.btn-warning{background-color:#fbbf241a;color:#fbbf24;border:1px solid rgba(251,191,36,.2)}.btn-success{background-color:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.2)}.btn-success:hover{background-color:#22c55e33}.btn-danger{background-color:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.btn-danger:hover{background-color:#ef444433}.btn-secondary{background-color:#6b72801a;color:#6b7280;border:1px solid rgba(107,114,128,.2)}.btn-secondary:hover{background-color:#6b728033}.pagination{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background-color:var(--color-bg);border-top:1px solid var(--color-border)}.page-info{font-size:.875rem;color:var(--color-text-secondary)}.pagination .btn{padding:.5rem .75rem;font-size:.875rem;border-radius:6px;cursor:pointer;border:1px solid var(--color-border);background-color:var(--color-card-bg);color:var(--color-text);transition:all .2s ease}.pagination .btn:hover:not(:disabled){background-color:var(--color-hover)}.pagination .btn:disabled{opacity:.5;cursor:not-allowed}.loading{text-align:center;padding:3rem;color:var(--color-text-secondary);font-size:1rem}@media(max-width:1024px){.events-controls{flex-direction:column;gap:1rem;align-items:stretch}.filters{margin-left:0;justify-content:flex-start}.action-buttons{flex-direction:column;gap:.25rem}.action-buttons .btn{text-align:center}}.events-header{flex-direction:column;gap:1rem;align-items:flex-start}.events-stats{flex-wrap:wrap;gap:.5rem}.events-table{font-size:.8rem}.events-table th,.events-table td{padding:.5rem .375rem}.pagination{flex-direction:column;gap:.75rem}.events-table th:nth-child(5),.events-table td:nth-child(5),.events-table th:nth-child(6),.events-table td:nth-child(6),.events-table th:nth-child(7),.events-table td:nth-child(7),.events-table th:nth-child(8),.events-table td:nth-child(8){display:none}@media(max-width:480px){.events-table-container{margin:0 -1rem;border-radius:0;border-left:none;border-right:none}.events-header,.events-controls,.pagination{padding-left:1rem;padding-right:1rem}.events-table th:nth-child(3),.events-table td:nth-child(3){display:none}}.platform-settings{max-width:1200px}.settings-header{margin-bottom:2rem}.settings-header h2{margin:0 0 .5rem;font-size:1.5rem;font-weight:600;color:var(--color-text)}.settings-header p{margin:0;color:var(--color-text-secondary);font-size:.95rem}.settings-tabs{display:flex;border-bottom:1px solid var(--color-border);margin-bottom:2rem;gap:.5rem}.tab-button{padding:.75rem 1.5rem;background:none;border:none;border-bottom:2px solid transparent;color:var(--color-text-secondary);cursor:pointer;font-size:.95rem;font-weight:500;transition:all .2s ease}.tab-button:hover{color:var(--color-text);background-color:var(--color-hover)}.tab-button.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text)}.add-theme-form{background-color:var(--color-card-bg);border:1px solid var(--color-border);border-radius:12px;padding:2rem;margin-bottom:2rem}.add-theme-form h4{margin:0 0 1.5rem;font-size:1.125rem;font-weight:600;color:var(--color-text)}.add-theme-form h5{margin:1.5rem 0 .75rem;font-size:1rem;font-weight:600;color:var(--color-text)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:.5rem;font-weight:500;color:var(--color-text);font-size:.875rem;text-transform:capitalize}.form-group input[type=text]{padding:.75rem;border:1px solid var(--color-border);border-radius:8px;background-color:var(--color-bg);color:var(--color-text);font-size:.875rem}.form-group input[type=text]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61a}.color-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.color-input-group{display:flex;flex-direction:column}.color-input-group label{margin-bottom:.5rem;font-weight:500;color:var(--color-text);font-size:.875rem;text-transform:capitalize}.color-input-wrapper{display:flex;gap:.5rem;align-items:center}.color-input-wrapper input[type=color]{width:40px;height:40px;border:1px solid var(--color-border);border-radius:6px;cursor:pointer;background:none}.color-text-input{flex:1;padding:.5rem;border:1px solid var(--color-border);border-radius:6px;background-color:var(--color-bg);color:var(--color-text);font-size:.875rem;font-family:Courier New,monospace}.color-text-input:focus{outline:none;border-color:var(--color-primary)}.background-image-section{margin-bottom:1.5rem}.help-text{margin:.5rem 0 1rem;color:var(--color-text-secondary);font-size:.875rem;line-height:1.5}.image-upload-area{border:2px dashed var(--color-border);border-radius:12px;overflow:hidden;position:relative}.upload-label{display:block;cursor:pointer;transition:all .2s ease}.upload-label:hover{border-color:var(--color-primary);background-color:var(--color-hover)}.upload-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center}.upload-icon{font-size:2rem;margin-bottom:1rem;opacity:.7}.upload-placeholder span{color:var(--color-text);font-weight:500;margin-bottom:.5rem}.upload-placeholder small{color:var(--color-text-secondary);font-size:.8rem}.image-preview{position:relative;max-height:200px;overflow:hidden}.image-preview img{width:100%;height:auto;display:block}.image-overlay{position:absolute;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease}.image-preview:hover .image-overlay{opacity:1}.theme-preview-section{margin-bottom:1.5rem}.theme-preview{height:120px;border-radius:8px;position:relative;overflow:hidden;margin-bottom:1rem}.theme-preview-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:1rem}.theme-preview-card{padding:1rem;border-radius:8px;text-align:center;min-width:200px}.theme-preview-card h4{margin:0 0 .5rem;font-size:.95rem;font-weight:600}.theme-preview-card p{margin:0 0 .75rem;font-size:.8rem;opacity:.8}.theme-preview-buttons{display:flex;gap:.5rem;justify-content:center}.theme-preview-buttons button{font-size:.75rem;cursor:default}.form-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid var(--color-border)}.themes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-top:2rem}.theme-card{background-color:var(--color-card-bg);border:1px solid var(--color-border);border-radius:12px;overflow:hidden;transition:all .2s ease}.theme-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.theme-info{padding:1rem}.theme-info h4{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:var(--color-text)}.theme-info p{margin:0 0 1rem;font-size:.875rem;color:var(--color-text-secondary);line-height:1.4}.theme-actions{display:flex;gap:.5rem}.btn{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover{opacity:.9;transform:translateY(-1px)}.btn-secondary{background-color:var(--color-card-bg);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{background-color:var(--color-hover)}.btn-success{background-color:var(--color-success);color:#fff}.btn-success:hover{opacity:.9}.btn-danger{background-color:var(--color-danger);color:#fff}.btn-danger:hover{opacity:.9}.btn-sm{padding:.375rem .75rem;font-size:.8rem}.content-section,.general-section{background-color:var(--color-card-bg);border:1px solid var(--color-border);border-radius:12px;padding:2rem;text-align:center}.content-section h3,.general-section h3{margin:0 0 1rem;font-size:1.25rem;color:var(--color-text)}.content-section p,.general-section p{margin:0;color:var(--color-text-secondary)}@media(max-width:1024px){.form-grid{grid-template-columns:1fr}.color-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.themes-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}.settings-tabs{flex-direction:column;gap:0}.tab-button{border-bottom:none;border-left:2px solid transparent;text-align:left}.tab-button.active{border-bottom:none;border-left-color:var(--color-primary);background-color:var(--color-hover)}.section-header{flex-direction:column;align-items:flex-start;gap:1rem}.form-actions{flex-direction:column}.color-grid,.themes-grid{grid-template-columns:1fr}@media(max-width:480px){.add-theme-form,.content-section,.general-section{padding:1.5rem}.upload-placeholder{padding:2rem 1rem}}.admin-auth-overlay{position:fixed;inset:0;background-color:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.admin-auth-container{background-color:var(--color-card-bg);border-radius:16px;border:1px solid var(--color-border);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:420px;width:100%;overflow:hidden;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.admin-auth-header{padding:2rem 2rem 1rem;text-align:center;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff;margin-bottom:0}.admin-auth-header h2{margin:0 0 .5rem;font-size:1.5rem;font-weight:700}.admin-auth-header p{margin:0;opacity:.9;font-size:.95rem}.admin-auth-form{padding:2rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--color-text);font-size:.875rem}.auth-input{width:100%;padding:.875rem 1rem;border:2px solid var(--color-border);border-radius:8px;background-color:var(--color-bg);color:var(--color-text);font-size:1rem;transition:all .2s ease;box-sizing:border-box}.auth-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61a}.auth-input.error{border-color:var(--color-danger);box-shadow:0 0 0 3px #ef44441a}.auth-input:disabled{opacity:.6;cursor:not-allowed}.error-message{margin-top:.5rem;color:var(--color-danger);font-size:.875rem;font-weight:500}.auth-button{width:100%;padding:.875rem 1rem;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:.5rem}.auth-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.auth-button:active:not(:disabled){transform:translateY(0)}.auth-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.admin-auth-footer{padding:1rem 2rem 2rem;text-align:center;border-top:1px solid var(--color-border);background-color:var(--color-bg)}.hint{margin:0 0 .75rem;font-size:.875rem;color:var(--color-text-secondary)}.hint code{background-color:var(--color-card-bg);padding:.25rem .5rem;border-radius:4px;font-family:Consolas,Monaco,Courier New,monospace;font-size:.8rem;color:var(--color-primary);border:1px solid var(--color-border)}.security-note{margin:0;font-size:.75rem;color:var(--color-text-secondary);opacity:.8}@media(max-width:480px){.admin-auth-overlay{padding:.5rem}.admin-auth-container{border-radius:12px}.admin-auth-header,.admin-auth-form,.admin-auth-footer{padding-left:1.5rem;padding-right:1.5rem}.admin-auth-header h2{font-size:1.25rem}}.frame-mask-editor{max-width:1200px;margin:0 auto;padding:2rem;background:var(--bg-primary);color:var(--text-primary)}.editor-header{text-align:center;margin-bottom:2rem}.editor-header h3{color:var(--primary-color);margin-bottom:.5rem}.editor-header p{color:var(--text-secondary);font-size:1.1rem}.editor-content{display:grid;grid-template-columns:1fr 300px;gap:2rem;margin-bottom:2rem}.canvas-container{position:relative;background:#f5f5f5;border-radius:8px;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:400px}.mask-canvas{max-width:100%;max-height:600px;cursor:crosshair;border-radius:8px;box-shadow:0 4px 8px #0000001a}.mask-canvas:hover{cursor:move}.editor-controls{background:var(--bg-secondary);padding:1.5rem;border-radius:8px;display:flex;flex-direction:column;gap:1.5rem}.mask-info h4{color:var(--text-primary);margin-bottom:1rem;font-size:1.1rem}.mask-inputs{display:flex;flex-direction:column;gap:.75rem}.input-group{display:flex;flex-direction:column;gap:.25rem}.input-group label{font-weight:600;color:var(--text-primary);font-size:.9rem}.input-group input{padding:.5rem;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-primary);color:var(--text-primary);font-size:.9rem}.input-group input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #4a90e21a}.action-buttons{display:flex;flex-direction:column;gap:.75rem;margin-top:auto}.action-buttons button{padding:.75rem 1rem;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease}.reset-btn{background:var(--bg-tertiary);color:var(--text-primary)}.reset-btn:hover{background:var(--bg-quaternary)}.cancel-btn{background:#6c757d;color:#fff}.cancel-btn:hover{background:#5a6268}.save-btn{background:var(--primary-color);color:#fff}.save-btn:hover:not(:disabled){background:var(--accent-color);transform:translateY(-1px)}.save-btn:disabled{opacity:.6;cursor:not-allowed}.editor-help{background:var(--bg-secondary);padding:1.5rem;border-radius:8px;border-left:4px solid var(--primary-color)}.editor-help h4{color:var(--text-primary);margin-bottom:1rem}.editor-help ul{color:var(--text-secondary);line-height:1.6}.editor-help li{margin-bottom:.5rem}.frame-mask-editor{padding:1rem}.editor-content{grid-template-columns:1fr;gap:1.5rem}.canvas-container{min-height:300px}.mask-canvas{max-height:400px}.action-buttons{flex-direction:row;flex-wrap:wrap}.action-buttons button{flex:1;min-width:100px}@media(max-width:480px){.editor-content{gap:1rem}.editor-controls{padding:1rem}.action-buttons{flex-direction:column}.mask-inputs{grid-template-columns:1fr}}.admin-frame-manager{max-width:1200px;margin:0 auto;padding:2rem;background:var(--bg-primary);color:var(--text-primary)}.frame-manager-header{text-align:center;margin-bottom:2rem}.frame-manager-header h2{color:var(--primary-color);margin-bottom:.5rem}.frame-manager-header p{color:var(--text-secondary);font-size:1.1rem}.alert{padding:1rem;border-radius:8px;margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center}.alert-error{background:#fee;color:#c33;border:1px solid #fcc}.alert-success{background:#efe;color:#363;border:1px solid #cfc}.alert button{background:none;border:none;font-size:1.2rem;cursor:pointer;padding:0;margin-left:1rem}.frame-upload-section{background:var(--bg-secondary);border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 6px #0000001a}.upload-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem}.tab-btn{background:var(--bg-tertiary);border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;color:var(--text-primary);transition:all .3s ease;font-weight:500}.tab-btn.active{background:var(--primary-color);color:#fff;transform:translateY(-2px);box-shadow:0 4px 8px #0003}.tab-btn:hover:not(.active){background:var(--accent-color)}.upload-form{display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;color:var(--text-primary)}.form-group input{padding:.75rem;border:2px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:1rem;transition:border-color .3s ease}.form-group input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4a90e21a}.file-input-section{margin-bottom:1rem}.file-input-label{display:flex;align-items:center;justify-content:space-between;padding:1rem;border:2px dashed var(--border-color);border-radius:8px;cursor:pointer;transition:all .3s ease;background:var(--bg-primary)}.file-input-label:hover{border-color:var(--primary-color);background:var(--bg-tertiary)}.file-input{display:none}.file-input-text{font-weight:500;color:var(--text-primary)}.file-input-icon{font-size:1.5rem}.preview-section{background:var(--bg-tertiary);padding:1.5rem;border-radius:8px}.preview-section h4{margin-bottom:1rem;color:var(--text-primary)}.frame-preview{max-width:300px;margin:0 auto}.frame-preview img{width:100%;height:auto;border-radius:8px;box-shadow:0 4px 8px #0000001a}.upload-btn{background:linear-gradient(135deg,var(--primary-color),var(--accent-color));color:#fff;border:none;padding:1rem 2rem;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;align-self:flex-start}.upload-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 12px #0003}.upload-btn:disabled{opacity:.6;cursor:not-allowed}.frames-list-section{background:var(--bg-secondary);border-radius:12px;padding:2rem;box-shadow:0 4px 6px #0000001a}.frames-list-section h3{margin-bottom:1.5rem;color:var(--text-primary)}.loading{text-align:center;padding:3rem;color:var(--text-secondary);font-size:1.1rem}.empty-state{text-align:center;padding:3rem;color:var(--text-secondary)}.empty-state p{font-size:1.1rem}.frames-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.frame-card{background:var(--bg-primary);border-radius:12px;padding:1.5rem;box-shadow:0 4px 6px #0000001a;transition:transform .3s ease,box-shadow .3s ease}.frame-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #00000026}.frame-preview-container{position:relative;width:100%;height:200px;border-radius:8px;overflow:hidden;margin-bottom:1rem;background:#f5f5f5}.frame-thumbnail{width:100%;height:100%;object-fit:contain}.frame-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000b3;color:#fff;padding:.5rem 1rem;border-radius:4px;font-weight:500;z-index:1}.sample-text{font-size:.9rem}.frame-info{margin-bottom:1rem}.frame-info h4{margin-bottom:.5rem;color:var(--text-primary);font-size:1.1rem}.frame-meta{color:var(--text-secondary);font-size:.9rem;margin-bottom:.25rem}.frame-date{color:var(--text-tertiary);font-size:.8rem}.frame-actions{display:flex;gap:.5rem;justify-content:center}.action-btn{background:var(--bg-tertiary);border:none;width:40px;height:40px;border-radius:8px;cursor:pointer;font-size:1.2rem;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.action-btn:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.edit-btn:hover{background:#ffc107}.mask-btn:hover{background:#17a2b8;color:#fff}.default-btn:hover{background:#28a745}.delete-btn:hover{background:#dc3545;color:#fff}.edit-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.edit-modal{background:var(--bg-primary);border-radius:12px;padding:2rem;width:90%;max-width:500px;box-shadow:0 8px 24px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.modal-header h3{color:var(--text-primary);margin:0}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary);width:32px;height:32px;border-radius:4px;display:flex;align-items:center;justify-content:center}.close-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.edit-form{display:flex;flex-direction:column;gap:1.5rem}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem}.cancel-btn{background:var(--bg-tertiary);color:var(--text-primary);border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:500;transition:all .3s ease}.cancel-btn:hover{background:var(--bg-quaternary)}.save-btn{background:var(--primary-color);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:500;transition:all .3s ease}.save-btn:hover{background:var(--accent-color);transform:translateY(-1px)}.mask-editor-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:2000}.mask-editor-modal{background:var(--bg-primary);border-radius:12px;width:95%;max-width:1400px;max-height:95vh;overflow-y:auto;box-shadow:0 8px 32px #0000004d}.admin-frame-manager{padding:1rem}.form-row,.frames-grid{grid-template-columns:1fr}.frame-card{padding:1rem}.edit-modal{width:95%;padding:1.5rem}.modal-actions{flex-direction:column}.cancel-btn,.save-btn{width:100%}@media(max-width:480px){.upload-tabs{flex-direction:column}.tab-btn{width:100%}.frame-actions{flex-wrap:wrap}}.admin-feedback-page{padding:2rem;background:var(--color-bg);min-height:100vh;max-width:1400px;margin:0 auto}.feedback-loading,.feedback-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.feedback-loading .spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top:3px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.feedback-loading span{color:var(--color-text-secondary);font-size:1.125rem}.feedback-error h2{color:var(--color-text);margin:0 0 1rem;font-size:1.5rem}.feedback-error p{color:var(--color-text-secondary);margin:0 0 2rem;font-size:1rem}.retry-button{background:var(--color-primary);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.retry-button:hover{background:var(--color-primary-dark);transform:translateY(-1px)}.feedback-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--color-border)}.feedback-header h1{margin:0;color:#fff;font-size:2rem;font-weight:700}.feedback-stats{display:flex;gap:2rem;align-items:center}.stat-item{display:flex;flex-direction:column;align-items:center;padding:1rem 1.5rem;background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:8px;min-width:80px}.stat-number{font-size:1.5rem;font-weight:700;color:var(--color-primary);margin-bottom:.25rem}.stat-label{font-size:.75rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;font-weight:500}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:1024px){.admin-feedback-page{padding:1.5rem}.feedback-header{flex-direction:column;gap:1.5rem;align-items:flex-start}.feedback-header h1{font-size:1.75rem}.feedback-stats{align-self:stretch;justify-content:space-between;gap:1rem}.stat-item{flex:1;min-width:60px;padding:.75rem 1rem}.stat-number{font-size:1.25rem}}.admin-feedback-page{padding:1rem}.feedback-header{margin-bottom:1.5rem;padding-bottom:1.5rem}.feedback-header h1{font-size:1.5rem}.feedback-stats{gap:.75rem}.stat-item{padding:.5rem .75rem}.stat-number{font-size:1.125rem}.stat-label{font-size:.6875rem}.feedback-loading,.feedback-error{padding:3rem 1rem}.feedback-loading .spinner{width:32px;height:32px}.feedback-loading span{font-size:1rem}.feedback-error h2{font-size:1.25rem}.retry-button{width:100%;max-width:200px}@media(max-width:480px){.admin-feedback-page{padding:.75rem}.feedback-header h1{font-size:1.25rem}.feedback-stats{flex-wrap:wrap;gap:.5rem}.stat-item{flex:1 1 45%;min-width:0;padding:.5rem}.stat-number{font-size:1rem}.stat-label{font-size:.625rem}}.dark-theme .stat-item{background:var(--color-card-bg);border-color:var(--color-border)}.dark-theme .feedback-loading .spinner{border-color:var(--color-border);border-top-color:var(--color-primary)}.admin-dashboard,.admin-layout,.admin-main,.admin-content{min-height:100vh;background:var(--bg-primary)}.admin-dashboard{min-height:100vh;background-color:var(--color-bg);color:var(--color-text)}.admin-layout{display:flex;min-height:100vh;background:var(--color-bg)}.admin-language-switcher{position:fixed;top:15px;right:15px;z-index:250;background:var(--color-card-bg);border-radius:10px;padding:8px;box-shadow:0 4px 12px #00000026;border:1px solid var(--color-border)}.admin-language-switcher .language-switcher .language-btn{background:var(--color-primary);border:1px solid var(--color-primary-dark, #0056b3);color:#fff;padding:8px 12px;font-size:.9rem;min-width:120px}.admin-language-switcher .language-switcher .language-btn:hover{background:var(--color-primary-dark, #0056b3)}.admin-language-switcher .language-switcher .language-options{background:var(--color-card-bg);border:1px solid var(--color-border);box-shadow:0 8px 24px #0003;right:0;left:auto}.admin-language-switcher .language-switcher .language-option{color:var(--color-text);padding:10px 15px}.admin-language-switcher .language-switcher .language-option:hover{background:var(--color-bg-hover, rgba(0, 123, 255, .1))}.admin-language-switcher .language-switcher .language-option.active{background:var(--color-primary);color:#fff}.admin-sidebar{width:280px;background-color:var(--color-card-bg);border-right:1px solid var(--color-border);display:flex;flex-direction:column;position:fixed;left:0;top:0;height:100vh;overflow-y:auto;z-index:100;transition:transform .3s ease}.mobile-menu-toggle{display:flex;position:fixed;top:15px;left:15px;z-index:200;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark, #0056b3));color:#fff;border:none;width:44px;height:44px;border-radius:10px;cursor:pointer;box-shadow:0 4px 12px #0003;transition:all .3s ease;flex-direction:column;align-items:center;justify-content:center;gap:4px}.mobile-menu-toggle:hover{background:linear-gradient(135deg,var(--color-primary-dark, #0056b3),var(--color-primary));transform:scale(1.05);box-shadow:0 6px 16px #00000040}.mobile-menu-toggle span{width:22px;height:3px;background:#fff;border-radius:2px;transition:all .3s ease;display:block}.mobile-menu-toggle.active span:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.mobile-menu-toggle.active span:nth-child(2){opacity:0;transform:translate(-20px)}.mobile-menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.sidebar-overlay{display:none;position:fixed;inset:0;background:#0009;z-index:99;opacity:0;pointer-events:none;transition:opacity .3s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sidebar-menu{flex:1;padding:2rem 0 1rem;list-style:none;margin:0}.sidebar-menu-item{margin-bottom:.25rem}.sidebar-item{width:100%;display:flex;align-items:center;padding:.75rem 1.5rem;background:none;border:none;color:var(--color-text-secondary);text-decoration:none;cursor:pointer;transition:all .2s ease;font-size:.95rem;border-radius:8px;text-align:left;position:relative}.sidebar-item:hover{background-color:var(--color-hover);color:var(--color-text)}.sidebar-item.active{background-color:var(--color-primary);color:#fff}.sidebar-item.dropdown{justify-content:space-between}.dropdown-arrow{margin-left:auto;font-size:.875rem;transition:transform .2s ease}.sidebar-item.dropdown.expanded .dropdown-arrow{transform:rotate(90deg)}.submenu{list-style:none;margin:.25rem 0 0;padding:0;background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:6px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.submenu-item{padding:.75rem 1.5rem .75rem 3rem!important;font-size:.85rem!important;border-radius:0!important;color:var(--color-text-secondary);transition:all .2s ease}.submenu-item:hover{background:var(--color-hover);color:var(--color-text)}.submenu-item.active{background:var(--color-primary);color:#fff}.sidebar-icon{margin-right:.75rem;font-size:1.1rem;width:20px;text-align:center}.sidebar-label{font-weight:500}.sidebar-footer{padding:1.5rem;border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:.75rem}.sidebar-logout{font-size:.875rem;padding:.5rem .75rem}.admin-main{flex:1;margin-left:280px;background-color:var(--color-bg);width:calc(100% - 280px);min-height:100vh}.admin-header{padding:2rem 2.5rem 1rem;border-bottom:1px solid var(--color-border);background-color:var(--color-card-bg)}.admin-header h1{margin:0;font-size:1.875rem;font-weight:600;color:var(--color-text)}.admin-content{padding:2rem 2.5rem;max-width:none}.dashboard-overview{max-width:1200px}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2.5rem}.stat-card{background-color:var(--color-card-bg);padding:1.5rem;border-radius:12px;border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.stat-card h3{margin:0 0 .5rem;font-size:.875rem;font-weight:500;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.stat-number{font-size:2rem;font-weight:700;color:var(--color-text);margin-bottom:.5rem}.stat-change{font-size:.875rem;font-weight:500}.stat-change.positive{color:var(--color-success)}.stat-change.negative{color:var(--color-danger)}.stat-change.neutral{color:var(--color-text-secondary)}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2rem}.recent-activity,.pending-reports{background-color:var(--color-card-bg);padding:1.5rem;border-radius:12px;border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.recent-activity h3,.pending-reports h3{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:var(--color-text)}.activity-item{display:flex;align-items:flex-start;padding:.75rem 0;border-bottom:1px solid var(--color-border)}.activity-item:last-child{border-bottom:none;padding-bottom:0}.activity-icon{margin-right:.75rem;font-size:1.25rem;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.activity-content{flex:1}.activity-message{font-size:.875rem;color:var(--color-text);margin-bottom:.25rem}.activity-time{font-size:.75rem;color:var(--color-text-secondary)}.report-item{padding:1rem;background-color:var(--color-bg);border-radius:8px;border:1px solid var(--color-border);margin-bottom:.75rem}.report-type{font-size:.75rem;font-weight:600;color:var(--color-danger);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.report-content{font-size:.875rem;color:var(--color-text);margin-bottom:.75rem}.report-actions{display:flex;gap:.5rem}.admin-section{max-width:1200px}.admin-section h2{margin:0 0 1rem;font-size:1.5rem;font-weight:600;color:var(--color-text)}.admin-section p{color:var(--color-text-secondary);line-height:1.6}.btn-sm{padding:.375rem .75rem;font-size:.875rem;border-radius:6px}.btn-warning{background-color:#fbbf241a;color:#fbbf24;border:1px solid rgba(251,191,36,.2);cursor:pointer;transition:all .2s ease}.btn-warning:hover{background-color:#fbbf2433}@media(max-width:1200px){.admin-content{padding:2rem 1.5rem}.dashboard-stats{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}}@media(max-width:1024px){.dashboard-stats{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.dashboard-grid{grid-template-columns:1fr;gap:1.5rem}.admin-sidebar{width:260px}.admin-main{margin-left:260px}.admin-header,.admin-content{padding-left:1.5rem;padding-right:1.5rem}}.sidebar-overlay{display:block}.sidebar-overlay.active{opacity:1;pointer-events:all}.admin-sidebar{transform:translate(-100%);width:300px;top:0;height:100vh;left:0;position:fixed;box-shadow:4px 0 20px #00000026;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:150}.admin-sidebar.active{transform:translate(0)}.admin-main{margin-left:0!important;width:100%!important}.admin-header{padding:1.25rem 1rem 1.25rem 70px;border-bottom:1px solid var(--color-border)}.admin-header h1{font-size:1.5rem}.admin-content{padding:1rem}.dashboard-stats{grid-template-columns:1fr 1fr;gap:.75rem}.stat-card{padding:1rem .75rem}.stat-number{font-size:1.5rem}.sidebar-header{padding:1.5rem 1rem;border-bottom:1px solid var(--color-border)}.sidebar-header h2{font-size:1.125rem}.sidebar-item{padding:1rem 1.5rem;font-size:.95rem}.sidebar-icon{font-size:1.1rem}.recent-activity,.pending-reports{padding:1rem}.admin-section{overflow-x:hidden}.admin-section table{font-size:.8rem;min-width:700px}.reports-table{overflow-x:auto;margin:0 -1rem;padding:0 1rem;-webkit-overflow-scrolling:touch;border-radius:8px}.admin-section table th,.admin-section table td{padding:.5rem .25rem;font-size:.8rem}.admin-section .btn-sm{padding:.25rem .4rem;font-size:.7rem;margin:.1rem}.sidebar-footer{padding:1rem;gap:.5rem}.sidebar-footer .btn{padding:.75rem 1rem;font-size:.9rem}.admin-language-switcher{top:10px;right:10px;padding:6px}.admin-language-switcher .language-switcher .language-btn{padding:6px 10px;font-size:.8rem;min-width:100px}@media(max-width:480px){.admin-header h1,.stat-number{font-size:1.5rem}.admin-header{padding:1rem .75rem 1rem 50px}.admin-content{padding:.75rem}.dashboard-stats{grid-template-columns:1fr;gap:.75rem}.stat-card{padding:.875rem}.sidebar-header h2{font-size:1.1rem}.sidebar-item{padding:.875rem 1rem;font-size:.9rem}.sidebar-icon{margin-right:.5rem;font-size:1rem}.recent-activity,.pending-reports{padding:.875rem}.activity-item{padding:.5rem 0}.activity-message{font-size:.8rem}.report-item{padding:.75rem}.mobile-menu-toggle{width:35px;height:35px;top:65px;left:8px}}@media(max-width:360px){.admin-header h1{font-size:1.25rem}.stat-card h3{font-size:.8rem}.stat-number{font-size:1.25rem}.sidebar-header{padding:1rem .75rem}.sidebar-item{padding:.75rem}}.preview-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000}.preview-modal{background:var(--color-card-bg);border-radius:8px;width:90%;max-width:800px;max-height:90vh;overflow:auto;box-shadow:0 4px 20px #0000004d}.preview-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--color-border)}.preview-modal-header h3{margin:0;color:var(--color-text);font-size:1.25rem}.preview-close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text);padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px}.preview-close-btn:hover{background:var(--color-hover)}.preview-modal-content{padding:1.5rem}.preview-info{margin-bottom:1.5rem}.preview-info p{margin:.5rem 0;color:var(--color-text)}.preview-info strong{color:var(--color-primary)}.preview-media{text-align:center;margin-bottom:1.5rem;min-height:200px;display:flex;align-items:center;justify-content:center;background:var(--color-bg);border-radius:4px;padding:1rem}.preview-media img,.preview-media video{border-radius:4px;box-shadow:0 2px 10px #0003}.preview-actions{display:flex;gap:.75rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid var(--color-border)}.preview-actions .btn{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;transition:background-color .2s}.preview-actions .btn-danger{background:#dc3545;color:#fff}.preview-actions .btn-danger:hover{background:#c82333}.preview-actions .btn-secondary{background:#6c757d;color:#fff}.preview-actions .btn-secondary:hover{background:#545b62}.preview-actions .btn-primary{background:var(--color-primary);color:#fff}.preview-actions .btn-primary:hover{background:var(--color-primary-dark)}.preview-actions .btn-info{background:#17a2b8;color:#fff}.preview-actions .btn-info:hover{background:#138496}.no-event-selected-page{padding:20px}.no-event-selected-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.no-event-selected-header h2{margin:0;text-align:center;flex:1}.no-event-selected-container{background-color:var(--bg-secondary);padding:40px;border-radius:8px;box-shadow:0 4px 8px #0000001a;text-align:center;max-width:500px;width:100%}.no-event-selected-container h2{margin-bottom:20px}.no-event-selected-container p{margin-bottom:30px;color:#555}.no-event-selected-container .btn{margin:0 10px}.theme-settings-page{min-height:100vh;padding:20px}.theme-settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;max-width:1200px;margin-left:auto;margin-right:auto}.theme-settings-header h2{margin:0;text-align:center;flex:1;color:var(--text-primary);font-weight:600;font-size:1.5rem}.theme-settings-container{max-width:1200px;margin:0 auto}.theme-settings-intro{text-align:center;margin-bottom:48px}.theme-settings-intro h1{color:var(--text-primary);font-size:2.5rem;font-weight:700;margin-bottom:16px;letter-spacing:-.025em}.theme-settings-intro p{color:var(--text-secondary);font-size:1.125rem;line-height:1.7;max-width:600px;margin:0 auto}.themes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-bottom:48px}.theme-card{background-color:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:16px;overflow:hidden;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 6px var(--shadow-color)}.theme-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px var(--shadow-color);border-color:var(--accent-primary)}.theme-card.active{border-color:var(--accent-primary);box-shadow:0 0 0 3px rgba(var(--accent-primary),.1),0 8px 16px var(--shadow-color);transform:translateY(-2px)}.theme-preview{height:160px;padding:16px;position:relative;transition:all .2s ease}.preview-card{width:100%;height:100%;border-radius:8px;padding:12px;position:relative;box-shadow:0 2px 8px #00000026}.preview-content{display:flex;flex-direction:column;gap:8px;height:100%}.preview-header{font-weight:600;font-size:.875rem;opacity:.9}.preview-button{padding:6px 12px;border-radius:6px;font-size:.75rem;font-weight:600;width:fit-content;transition:all .2s ease}.preview-text{font-size:.75rem;opacity:.7;line-height:1.4;flex:1}.theme-info{padding:20px;position:relative}.theme-info h3{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0 0 8px}.theme-info p{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:0}.current-theme-badge{position:absolute;top:12px;right:12px;background-color:var(--accent-primary);color:var(--bg-primary);padding:4px 8px;border-radius:12px;font-size:.75rem;font-weight:600}.theme-settings-footer{text-align:center;padding:32px 0;border-top:1px solid var(--border-primary)}.back-to-home{color:var(--link-color);text-decoration:none;font-weight:500;font-size:1.1rem;transition:color .2s ease;display:inline-flex;align-items:center;gap:8px}.back-to-home:hover{color:var(--link-hover-color)}.theme-settings-page{padding:16px}.theme-settings-intro h1{font-size:2rem}.theme-settings-intro p{font-size:1rem}.themes-grid{grid-template-columns:1fr;gap:16px}.theme-card{border-radius:12px}.theme-preview{height:140px;padding:12px}.theme-info{padding:16px}@media(max-width:480px){.theme-settings-header{margin-bottom:24px}.theme-settings-intro{margin-bottom:32px}.theme-settings-intro h1{font-size:1.75rem}.themes-grid{gap:12px}}.photo-album-demo{min-height:100vh;background:var(--bg-primary)}.demo-header{padding:2rem;text-align:center;background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);box-shadow:0 2px 10px var(--shadow-color)}.demo-header h1{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.demo-header p{font-size:1.125rem;color:var(--text-secondary);margin-bottom:2rem}.theme-selector h3{font-size:1.25rem;color:var(--text-primary);margin-bottom:1rem}.theme-buttons{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;max-width:800px;margin:0 auto}.theme-btn{display:flex;flex-direction:column;align-items:center;padding:1rem 1.5rem;background:var(--bg-primary);border:2px solid var(--border-primary);border-radius:12px;cursor:pointer;transition:all .3s ease;min-width:140px;text-align:center}.theme-btn:hover{background:var(--color-hover);border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow-color)}.theme-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.theme-btn strong{display:block;font-size:1rem;font-weight:600;margin-bottom:.25rem}.theme-btn small{display:block;font-size:.75rem;opacity:.8;line-height:1.3}.theme-btn.active strong,.theme-btn.active small{color:#fff}.demo-content{background:var(--bg-primary)}.demo-header{padding:1.5rem 1rem}.demo-header h1{font-size:2rem}.theme-buttons{flex-direction:column;align-items:center}.theme-btn{min-width:200px}@media(max-width:480px){.demo-header{padding:1rem .5rem}.demo-header h1{font-size:1.75rem}.demo-header p{font-size:1rem}.theme-btn{min-width:180px;padding:.75rem 1rem}}.enhanced-gallery-page{padding:20px;min-height:100vh;background:var(--bg-primary);color:var(--text-primary)}.gallery-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.gallery-header h2{margin:0;text-align:center;flex:1;color:var(--text-primary);font-weight:600}.view-controls{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-primary)}.view-mode-selector{display:flex;gap:.5rem}.view-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:8px;cursor:pointer;transition:all .2s ease;color:var(--text-primary);font-size:.875rem}.view-btn:hover{background:var(--color-hover);border-color:var(--color-primary)}.view-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.view-icon{font-size:1rem}.album-theme-selector{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.theme-label{font-weight:600;color:var(--text-primary);font-size:.875rem}.theme-btn{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem .75rem;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:8px;cursor:pointer;transition:all .2s ease;min-width:60px}.theme-btn:hover{background:var(--color-hover);border-color:var(--color-primary);transform:translateY(-1px)}.theme-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.theme-icon{font-size:1.25rem}.theme-name{font-size:.75rem;font-weight:500}.refresh-info{text-align:center;color:var(--text-secondary);margin-bottom:1.5rem;font-size:.875rem}.gallery-content{min-height:200px}.album-container{background:var(--bg-secondary);border-radius:12px;overflow:hidden;border:1px solid var(--border-primary)}.no-photos{padding:3rem 2rem;text-align:center;color:var(--text-secondary)}.no-photos p{margin:.5rem 0;font-size:1rem}.no-photos p:first-child{font-size:1.125rem;font-weight:600;color:var(--text-primary)}.fullscreen-modal{position:fixed;inset:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:1000}.close-btn,.prev-btn,.next-btn{position:absolute;background:#fff3;border:none;color:#fff;font-size:2rem;cursor:pointer;padding:1rem;border-radius:50%;transition:background .2s ease}.close-btn:hover,.prev-btn:hover,.next-btn:hover{background:#ffffff4d}.close-btn{top:20px;right:20px}.prev-btn{left:20px;top:50%;transform:translateY(-50%)}.next-btn{right:20px;top:50%;transform:translateY(-50%)}.fullscreen-media{max-width:90vw;max-height:90vh;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem}.fullscreen-media img,.fullscreen-media video{max-width:100%;max-height:80vh;object-fit:contain;border-radius:8px}.fullscreen-media h3{color:#fff;margin:0;font-size:1.5rem}.fullscreen-media p{color:#fffc;margin:0;font-size:1rem}.fullscreen-reactions{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;gap:.5rem}.fullscreen-reactions .reaction-btn{background:#fff3;border:none;color:#fff;padding:.5rem 1rem;border-radius:20px;cursor:pointer;font-size:1rem;transition:background .2s ease}.fullscreen-reactions .reaction-btn:hover{background:#ffffff4d}.enhanced-gallery-page{padding:1rem}.view-controls{padding:.75rem}.view-mode-selector{flex-direction:column}.album-theme-selector{justify-content:center}.theme-btn{min-width:50px;padding:.4rem .6rem}.theme-name{display:none}.fullscreen-media{max-width:95vw;max-height:85vh}.close-btn,.prev-btn,.next-btn{font-size:1.5rem;padding:.75rem}.fullscreen-reactions{bottom:10px;flex-wrap:wrap;max-width:90vw}@media(max-width:480px){.view-controls{gap:.75rem}.view-btn{padding:.6rem .8rem;font-size:.8rem}.album-theme-selector{gap:.5rem}.theme-btn{min-width:45px;padding:.3rem .5rem}.theme-icon{font-size:1rem}}.feedback-page{min-height:100vh;background:var(--color-bg);padding:2rem 1rem}.feedback-container{max-width:800px;margin:0 auto;background:var(--color-card-bg);border-radius:12px;box-shadow:0 4px 20px #0000001a;overflow:hidden}.feedback-header{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff;padding:3rem 2rem}text-align: center}.feedback-header h1{margin:0 0 1rem;font-size:2.5rem;font-weight:700}.feedback-header p{margin:0;font-size:1.125rem;opacity:.9;line-height:1.6}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem}.spinner{width:32px;height:32px;border:3px solid var(--color-border);border-top:3px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}.feedback-status{margin:2rem;padding:1rem 1.5rem;border-radius:8px;border-left:4px solid}.feedback-status.success{background:#10b9811a;border-color:#10b981;color:#059669}.feedback-status.error{background:#ef44441a;border-color:#ef4444;color:#dc2626}.status-content{display:flex;align-items:flex-start;gap:12px}.status-content i{font-size:1.25rem;margin-top:2px;flex-shrink:0}.status-content p{margin:0 0 4px;font-weight:500}.status-content small{opacity:.8;font-size:.875rem}.feedback-form{padding:2rem}.form-section{margin-bottom:2.5rem}.form-section h3{margin:0 0 1.5rem;color:var(--color-text);font-size:1.25rem;font-weight:600;display:flex;align-items:center;gap:8px}.feedback-type-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem}.type-option{display:block;cursor:pointer;border:2px solid var(--color-border);border-radius:8px;padding:1rem;transition:all .2s ease;background:var(--color-bg)}.type-option:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.type-option.selected{border-color:var(--color-primary);background:rgba(var(--color-primary-rgb, 59, 130, 246),.1)}.type-option input{display:none}.type-content{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.type-icon{font-size:2rem;margin-bottom:4px}.type-label{font-weight:500;color:var(--color-text);font-size:.875rem}.feedback-textarea{width:100%;padding:1rem;border:2px solid var(--color-border);border-radius:8px;background:var(--color-bg);color:var(--color-text);font-family:inherit;font-size:1rem;line-height:1.6;resize:vertical;min-height:120px;transition:border-color .2s ease}.feedback-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb, 59, 130, 246),.1)}.feedback-textarea:disabled{opacity:.6;cursor:not-allowed}.feedback-textarea::placeholder{color:var(--color-text-secondary)}.char-count{text-align:right;margin-top:8px;font-size:.875rem;color:var(--color-text-secondary);font-family:monospace}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field-group{display:flex;flex-direction:column;gap:8px}.field-group label{font-weight:500;color:var(--color-text);font-size:.875rem}.field-group input{padding:.75rem 1rem;border:2px solid var(--color-border);border-radius:6px;background:var(--color-bg);color:var(--color-text);font-size:.875rem;transition:border-color .2s ease}.field-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb, 59, 130, 246),.1)}.field-group input:disabled{opacity:.6;cursor:not-allowed}.field-group input::placeholder{color:var(--color-text-secondary)}.attachment-area{display:flex;flex-direction:column;gap:1rem}.attachment-button{display:flex;align-items:center;justify-content:center;gap:8px;padding:1rem 1.5rem;border:2px dashed var(--color-border);border-radius:8px;background:var(--color-bg);color:var(--color-text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.attachment-button:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background:rgba(var(--color-primary-rgb, 59, 130, 246),.05)}.attachment-button:disabled{opacity:.6;cursor:not-allowed}.attachment-info small{color:var(--color-text-secondary);font-size:.75rem;line-height:1.4}.attachment-list{display:flex;flex-direction:column;gap:8px;margin-top:1rem}.attachment-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;transition:all .2s ease}.attachment-item:hover{border-color:var(--color-primary)}.attachment-details{display:flex;flex-direction:column;gap:4px;flex:1}.file-name{color:var(--color-text);font-size:.875rem;font-weight:500;word-break:break-word}.file-size{color:var(--color-text-secondary);font-size:.75rem}.remove-attachment{background:none;border:none;color:var(--color-text-secondary);padding:4px;border-radius:4px;cursor:pointer;transition:all .2s ease}.remove-attachment:hover:not(:disabled){background:#ef44441a;color:#ef4444}.remove-attachment:disabled{opacity:.6;cursor:not-allowed}.form-actions{display:flex;justify-content:center;padding-top:1rem;border-top:1px solid var(--color-border)}.submit-button{display:flex;align-items:center;justify-content:center;gap:8px;padding:1rem 2rem;background:var(--color-primary);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:180px}.submit-button:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--color-primary-rgb, 59, 130, 246),.3)}.submit-button:disabled{background:var(--color-border);color:var(--color-text-secondary);cursor:not-allowed;transform:none;box-shadow:none}.submit-button .spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white}.feedback-info{padding:2rem;background:var(--color-bg);border-top:1px solid var(--color-border)}.feedback-info h3{margin:0 0 1.5rem;color:var(--color-text);font-size:1.25rem;font-weight:600;text-align:center}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.info-item{display:flex;gap:1rem;align-items:flex-start}.info-item i{color:var(--color-primary);font-size:1.5rem;flex-shrink:0;margin-top:4px}.info-item h4{margin:0 0 .5rem;color:var(--color-text);font-size:1rem;font-weight:600}.info-item p{margin:0;color:var(--color-text-secondary);font-size:.875rem;line-height:1.5}@media(max-width:768px){.feedback-page{padding:1rem .5rem}.feedback-header{padding:2rem 1.5rem}.feedback-header h1{font-size:2rem}.feedback-header p{font-size:1rem}.feedback-form{padding:1.5rem}.feedback-type-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem}.type-option{padding:.75rem}.contact-fields,.info-grid{grid-template-columns:1fr;gap:1rem}.submit-button{width:100%;min-width:unset}.feedback-info{padding:1.5rem}}@media(max-width:480px){.feedback-page{padding:.5rem}.feedback-container{border-radius:8px}.feedback-header{padding:1.5rem 1rem}.feedback-header h1{font-size:1.75rem}.feedback-form{padding:1rem}.form-section{margin-bottom:2rem}.form-section h3{font-size:1.125rem;margin-bottom:1rem}.feedback-type-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.type-option{padding:.5rem}.type-icon{font-size:1.5rem}.type-label{font-size:.75rem}.feedback-textarea{padding:.75rem;font-size:.875rem}.field-group input{padding:.625rem .75rem}.attachment-button{padding:.75rem 1rem;font-size:.8rem}.feedback-info{padding:1rem}.info-item{flex-direction:column;gap:.5rem;text-align:center}.info-item i{align-self:center;margin-top:0}}.dark-theme .feedback-container{box-shadow:0 4px 20px #0000004d}.dark-theme .type-option:hover,.dark-theme .attachment-item:hover{box-shadow:0 4px 12px #ffffff1a}.template-gallery{width:100%}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.error-message{color:var(--color-error);margin-bottom:1rem;font-size:1.125rem}.category-filter{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-border)}.category-pills{display:flex;gap:.75rem;flex-wrap:wrap}.category-pill{padding:.5rem 1rem;border:2px solid var(--color-border);background:transparent;color:var(--color-text-secondary);border-radius:2rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.category-pill:hover{border-color:var(--color-primary);color:var(--color-primary)}.category-pill.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.template-card.auto-generate{background:linear-gradient(135deg,var(--color-secondary),var(--color-secondary-dark));color:#fff;border:2px solid var(--color-secondary)}.template-card.auto-generate:hover{transform:translateY(-4px);box-shadow:0 8px 25px #00000026;border-color:var(--color-secondary-dark)}.template-card.auto-generate.loading{opacity:.7;cursor:not-allowed;pointer-events:none}.template-card.auto-generate .create-icon svg{animation:spin 2s linear infinite;animation-play-state:paused}.template-card.auto-generate.loading .create-icon svg{animation-play-state:running}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.template-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:.75rem;overflow:hidden;cursor:pointer;transition:all .3s ease;position:relative}.template-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #00000026;border-color:var(--color-primary)}.template-card.create-new{border:2px dashed var(--color-border);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 2rem;min-height:280px;background:rgba(var(--color-primary-rgb),.02)}.template-card.create-new:hover{border-color:var(--color-primary);background:rgba(var(--color-primary-rgb),.05)}.create-icon{width:80px;height:80px;background:var(--color-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:1rem;transition:transform .2s ease}.template-card.create-new:hover .create-icon{transform:scale(1.1)}.template-card.create-new h3{margin:0 0 .5rem;color:var(--color-text);font-size:1.25rem;font-weight:600}.template-card.create-new p{margin:0;color:var(--color-text-secondary);font-size:.875rem}.template-preview{position:relative;aspect-ratio:16/9;background:var(--color-bg);overflow:hidden}.template-preview img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.template-card:hover .template-preview img{transform:scale(1.05)}.preview-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--color-bg);color:var(--color-text-secondary)}.template-overlay{position:absolute;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.template-card:hover .template-overlay{opacity:1}.use-template-btn{background:var(--color-primary);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;cursor:pointer;transition:transform .2s ease}.use-template-btn:hover{transform:scale(1.05)}.template-info{padding:1.25rem}.template-info h3{margin:0 0 .5rem;color:var(--color-text);font-size:1.125rem;font-weight:600;line-height:1.3}.template-info p{margin:0 0 1rem;color:var(--color-text-secondary);font-size:.875rem;line-height:1.4}.template-meta{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;color:var(--color-text-secondary)}.frame-count{background:var(--color-primary);color:#fff;padding:.25rem .5rem;border-radius:.25rem;font-weight:500}.dimensions{font-weight:500}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:var(--color-text-secondary)}.empty-state svg{margin-bottom:1.5rem;opacity:.6}.empty-state h3{margin:0 0 .5rem;color:var(--color-text);font-size:1.5rem;font-weight:600}.empty-state p{margin:0 0 1.5rem;max-width:400px;line-height:1.5}@media(max-width:768px){.templates-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.template-card.create-new{padding:2rem 1rem;min-height:220px}.create-icon{width:60px;height:60px}.template-info{padding:1rem}.category-pills{justify-content:center}}@media(max-width:480px){.templates-grid{grid-template-columns:1fr}.category-pills{flex-direction:column;align-items:center}.category-pill{padding:.75rem 1.5rem;width:100%;max-width:200px;text-align:center}}.template-creator{height:100vh;display:flex;flex-direction:column;background:var(--color-bg)}.creator-header{display:flex;align-items:center;gap:1rem;padding:1.5rem 2rem;border-bottom:1px solid var(--color-border);background:var(--color-card)}.creator-header h2{margin:0;color:var(--color-text);font-size:1.5rem;font-weight:600}.creator-content{flex:1;display:grid;grid-template-columns:320px 1fr;overflow:hidden}.creator-sidebar{background:var(--color-card);border-right:1px solid var(--color-border);padding:1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:2rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-bg);color:var(--color-text);font-size:.875rem;transition:border-color .2s ease}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-primary)}.form-group textarea{resize:vertical;min-height:80px}.upload-area{border:2px dashed var(--color-border);border-radius:.75rem;padding:2rem 1rem;text-align:center;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.upload-area:hover{border-color:var(--color-primary);background:rgba(var(--color-primary-rgb),.02)}.upload-placeholder{color:var(--color-text-secondary)}.upload-placeholder svg{margin-bottom:1rem;opacity:.6}.upload-placeholder p{margin:0;font-size:.875rem}.background-preview{position:relative}.background-preview img{max-width:100%;max-height:120px;object-fit:cover;border-radius:.5rem}.upload-overlay{position:absolute;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease;border-radius:.5rem}.background-preview:hover .upload-overlay{opacity:1}.upload-overlay span{color:#fff;font-size:.875rem;font-weight:500}.frame-controls{display:flex;flex-direction:column;gap:1rem}.frame-controls .form-group{margin-bottom:0}.frame-controls input[type=range]{width:100%;margin-bottom:.5rem}.frame-controls input[type=range]+span{font-size:.875rem;color:var(--color-text-secondary);font-weight:500}.creator-canvas{padding:2rem;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;background:var(--color-bg)}.canvas-container{position:relative;border:1px solid var(--color-border);border-radius:.75rem;overflow:hidden;background:#fff;max-width:100%;max-height:70vh}.canvas-container canvas{display:block;cursor:crosshair;max-width:100%;max-height:100%}.canvas-placeholder{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:var(--color-text-secondary);pointer-events:none}.canvas-help{margin-top:1.5rem;text-align:center;color:var(--color-text-secondary);font-size:.875rem;max-width:500px}.btn-primary,.btn-danger{border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.875rem}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-full{width:100%}@media(max-width:1200px){.creator-content{grid-template-columns:280px 1fr}.creator-sidebar{padding:1rem}}@media(max-width:968px){.creator-content{grid-template-columns:1fr;grid-template-rows:auto 1fr}.creator-sidebar{max-height:40vh;border-right:none;border-bottom:1px solid var(--color-border)}.creator-canvas{padding:1rem}}@media(max-width:640px){.creator-header{padding:1rem}.creator-header h2{font-size:1.25rem}.creator-sidebar{padding:1rem;gap:1.5rem}.section{padding-bottom:1.5rem}.upload-area{padding:1.5rem 1rem}.canvas-container{max-height:50vh}}.template-workspace{height:100vh;display:flex;flex-direction:column;background:var(--color-bg)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;text-align:center}.loading-spinner{width:40px;height:40px;border:4px solid var(--color-border);border-top:4px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.workspace-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;border-bottom:1px solid var(--color-border);background:var(--color-card)}.header-left{display:flex;align-items:center;gap:1.5rem}.back-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;padding:8px;border-radius:50%;color:var(--color-text);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);width:40px;height:40px}.back-btn svg{width:24px;height:24px}.back-btn:hover{background:#0000000a}.back-btn:active{background:#0000001f;transform:scale(.95)}.template-info h2{margin:0 0 .25rem;color:var(--color-text);font-size:1.5rem;font-weight:600}.template-info p{margin:0;color:var(--color-text-secondary);font-size:.875rem}.header-actions{display:flex;gap:1rem}.workspace-content{flex:1;display:grid;grid-template-columns:320px 1fr;overflow:hidden}.workspace-sidebar{background:var(--color-card);border-right:1px solid var(--color-border);padding:1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:2rem}.section{border-bottom:1px solid var(--color-border);padding-bottom:2rem}.section:last-child{border-bottom:none;padding-bottom:0}.section h3{margin:0 0 1rem;color:var(--color-text);font-size:1.125rem;font-weight:600}.form-group{margin-bottom:1rem}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:.5rem;color:var(--color-text);font-weight:500;font-size:.875rem}.form-group input[type=range]{width:100%;margin-bottom:.5rem;accent-color:var(--color-primary)}.form-group input[type=range]+span{font-size:.875rem;color:var(--color-text-secondary);font-weight:500;display:block;text-align:center}.button-group{display:flex;gap:.5rem;margin-top:1rem}.button-group .btn-small{flex:1;padding:.5rem .75rem;font-size:.75rem}.help-text{text-align:center;color:var(--color-text-secondary);padding:2rem 1rem}.help-text svg{margin-bottom:1rem;opacity:.6}.help-text h3{margin:0 0 .5rem;color:var(--color-text);font-size:1.125rem;font-weight:600}.help-text p{margin:0;font-size:.875rem;line-height:1.5}.info-grid{display:flex;flex-direction:column;gap:.75rem}.info-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--color-border)}.info-item:last-child{border-bottom:none}.info-item .label{font-size:.875rem;color:var(--color-text-secondary);font-weight:500}.info-item .value{font-size:.875rem;color:var(--color-text);font-weight:600}.workspace-canvas{padding:2rem;display:flex;align-items:center;justify-content:center;background:var(--color-bg)}.canvas-container{border:1px solid var(--color-border);border-radius:.75rem;overflow:hidden;background:#fff;max-width:calc(100vw - 400px);max-height:calc(100vh - 200px);box-shadow:0 4px 20px #0000001a}.canvas-container canvas{display:block;cursor:pointer;max-width:100%;max-height:100%}.btn-primary,.btn-secondary,.btn-danger{border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.875rem}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--color-primary-rgb),.3)}.btn-secondary{background:transparent;color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-bg);border-color:var(--color-primary);color:var(--color-primary)}.btn-danger{background:var(--color-error);color:#fff}.btn-danger:hover{transform:translateY(-1px);box-shadow:0 4px 12px #dc26264d}.btn-primary:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-small{padding:.5rem 1rem;font-size:.75rem}@media(max-width:1200px){.workspace-content{grid-template-columns:280px 1fr}.workspace-sidebar{padding:1rem}.canvas-container{max-width:calc(100vw - 340px)}}@media(max-width:968px){.workspace-content{grid-template-columns:1fr;grid-template-rows:auto 1fr}.workspace-sidebar{max-height:40vh;border-right:none;border-bottom:1px solid var(--color-border);overflow-y:auto}.workspace-canvas{padding:1rem}.canvas-container{max-width:calc(100vw - 2rem);max-height:calc(60vh - 2rem)}.header-actions{flex-wrap:wrap;gap:.5rem}.header-actions .btn-primary,.header-actions .btn-secondary{padding:.5rem 1rem;font-size:.75rem}}@media(max-width:640px){.workspace-header{padding:1rem;flex-direction:column;gap:1rem;align-items:stretch}.header-left{gap:1rem}.header-actions{justify-content:center}.workspace-sidebar{padding:1rem;gap:1.5rem}.section{padding-bottom:1.5rem}.template-info h2{font-size:1.25rem}.button-group{flex-direction:column}.button-group .btn-small{flex:none}}.template-page{min-height:100vh;background:var(--color-bg);padding:2rem 1rem}.template-header{max-width:1400px;margin:0 auto 2rem;display:flex;justify-content:space-between;align-items:flex-start;gap:2rem}.template-header .header-content h1{margin:0 0 .5rem;color:var(--color-text);font-size:2.5rem;font-weight:700}.template-header .header-content p{margin:0;color:var(--color-text-secondary);font-size:1.125rem}.template-header .header-actions{display:flex;gap:1rem;flex-shrink:0}.template-content{max-width:1400px;margin:0 auto}@media(max-width:768px){.template-page{padding:1rem .5rem}.template-header{flex-direction:column;gap:1rem}.template-header .header-content h1{font-size:2rem}.template-header .header-actions{align-self:stretch}.template-header .header-actions .btn-primary,.template-header .header-actions .btn-secondary{flex:1}}:root{color-scheme:light only}.page-container{max-width:700px;margin:.25rem auto 0;padding:1.5rem 1.25rem 1.75rem;background:var(--bg-secondary);border-radius:18px;box-shadow:0 4px 32px 0 var(--shadow-color);min-height:70vh;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;border:1px solid var(--border-primary)}.centered-content{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}@media(max-width:800px){.page-container{max-width:98vw;padding:1rem .75rem;border-radius:0;min-height:70vh}}body,#root,.App{background:var(--bg-primary);color:var(--text-primary);min-height:100vh;font-family:var(--font-family);transition:background .3s ease,color .3s ease}.App{text-align:center}a{color:var(--link-color);text-decoration:none;transition:color .2s ease}a:hover{color:var(--link-hover-color)}button,.button{background:var(--button-bg);color:var(--button-text);border:1px solid var(--button-border);border-radius:8px;padding:.75em 1.5em;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s ease;font-family:inherit}button:hover,.button:hover{background:var(--button-hover-bg);color:var(--button-hover-text);border-color:var(--button-hover-border);transform:translateY(-1px)}.button.secondary{background:var(--button-secondary-bg);color:var(--button-secondary-text);border-color:var(--border-primary)}.button.secondary:hover{background:var(--button-secondary-hover-bg)}input,textarea,select{background:var(--input-bg);color:var(--input-text);border:1px solid var(--input-border);border-radius:8px;padding:.75em 1em;margin-bottom:.5em;font-family:inherit;font-size:.875rem;transition:border-color .2s ease,box-shadow .2s ease;width:100%;box-sizing:border-box}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--input-focus-border);box-shadow:0 0 0 3px #3b82f61a}.error-message{color:var(--error-color);font-size:.875rem;margin-top:.5rem}.success-message{color:var(--success-color);font-size:.875rem;margin-top:.5rem}form{width:100%;max-width:400px}h1,h2,h3,h4,h5,h6{color:var(--text-primary);margin-bottom:1rem}h1{font-size:2.5rem;font-weight:700}h2{font-size:2rem;font-weight:600}h3{font-size:1.5rem;font-weight:600}p{color:var(--text-secondary);line-height:1.6}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.home-container{min-height:100vh;background:var(--bg-primary);padding:80px 2rem 2rem;display:flex;align-items:center;justify-content:center}.home-content{max-width:1200px;width:100%;margin:0 auto}.home-header{text-align:center;margin-bottom:3rem}.home-title{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin:0 0 1rem}.home-subtitle{font-size:1.1rem;color:var(--text-secondary);margin:0;font-weight:500}.home-nav-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}.home-nav-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:16px;padding:2rem;text-decoration:none;color:var(--text-primary);transition:all .3s ease;display:flex;flex-direction:column;align-items:center;text-align:center;cursor:pointer;position:relative;overflow:hidden}.home-nav-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--accent-primary),var(--color-accent, #06b6d4));opacity:0;transition:opacity .3s ease;z-index:0}.home-nav-card:hover:before{opacity:.1}.home-nav-card:hover{transform:translateY(-8px);border-color:var(--accent-primary);box-shadow:0 12px 24px var(--shadow-color)}.nav-card-icon{font-size:3rem;margin-bottom:1rem;position:relative;z-index:1}.home-nav-card h3{font-size:1.5rem;font-weight:600;margin:0 0 .5rem;color:var(--text-primary);position:relative;z-index:1}.home-nav-card p{font-size:1rem;color:var(--text-secondary);margin:0;position:relative;z-index:1}@media(max-width:768px){.home-container{padding:1rem;min-height:100vh}.home-header{margin-bottom:2rem}.home-title{font-size:2rem;line-height:1.2}.home-subtitle{font-size:1rem;padding:0 .5rem}.home-nav-grid{grid-template-columns:1fr;gap:1rem}.home-nav-card{padding:1.5rem;min-height:120px}.nav-card-icon{font-size:2.5rem}.home-nav-card h3{font-size:1.25rem}.home-nav-card p{font-size:.9rem}}@media(max-width:480px){.home-title{font-size:1.75rem}.home-subtitle{font-size:.9rem}.home-nav-card{padding:1.25rem}}.splash-container{position:relative;top:0;left:0;width:100vw;height:100vh;background-color:#faebcb;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding-top:8vh;z-index:9999;opacity:0;transform:scale(1.05);transition:all .5s cubic-bezier(.25,.46,.45,.94);overflow:hidden}.splash-container.animate-in{opacity:1;transform:scale(1)}.splash-container.animate-out{opacity:0;transform:scale(.95)}.mandala-bg-wrapper{position:fixed;left:0;bottom:0;width:100vw;height:100vh;display:flex;justify-content:center;align-items:flex-end;z-index:0;pointer-events:none}.mandala-bg{width:100vw;height:100vh;max-width:600px;max-height:600px;object-fit:contain;margin:0 auto;mix-blend-mode:multiply;filter:brightness(var(--mandala-brightness, 2)) drop-shadow(0 2px 24px var(--accent-color, #3b82f6));opacity:var(--mandala-opacity, .7);transition:filter .3s,opacity .3s;animation:mandalaPulse 3s ease-in-out infinite}@keyframes mandalaPulse{0%,to{opacity:var(--mandala-opacity, .7);filter:brightness(var(--mandala-brightness, 2)) drop-shadow(0 2px 24px var(--accent-color, #3b82f6))}50%{opacity:calc(var(--mandala-opacity, .7) + .2);filter:brightness(calc(var(--mandala-brightness, 2) + .5)) drop-shadow(0 2px 32px var(--accent-color, #3b82f6))}}.splash-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;padding:2rem;max-width:500px;margin:0 auto}.splash-logo-image{width:clamp(120px,25vw,180px);height:auto;margin:0 0 1rem;opacity:0;transform:translateY(30px) scale(.9);animation:fadeInUpScale 1s ease-out .1s forwards;filter:drop-shadow(2px 4px 8px rgba(0,0,0,.15))}@keyframes fadeInUpScale{to{opacity:1;transform:translateY(0) scale(1)}}.splash-logo{font-family:Dancing Script,Brush Script MT,cursive,serif;font-size:clamp(2.2rem,6vw,3.2rem);font-weight:700;color:var(--accent-color, #3b82f6);margin:0 0 .5rem;text-shadow:2px 2px 4px rgba(0,0,0,.1);opacity:0;transform:translateY(30px);animation:fadeInUp 1s ease-out .2s forwards;line-height:1.1}.splash-subtitle{font-family:var(--font-family, "Inter", sans-serif);font-size:clamp(.9rem,2.5vw,1.05rem);font-weight:400;color:#000000b3;margin:0 0 1.2rem;opacity:0;transform:translateY(20px);animation:fadeInUp 1s ease-out .4s forwards;letter-spacing:.5px}.start-button{background:var(--accent-color, #3b82f6);background:linear-gradient(135deg,var(--accent-color, #3b82f6) 0%,color-mix(in srgb,var(--accent-color, #3b82f6) 80%,#000 20%) 100%);color:#fff;border:none;padding:.5rem 1.5rem;border-radius:50px;font-size:.95rem;font-weight:600;font-family:var(--font-family, "Inter", sans-serif);cursor:pointer;transition:all .3s cubic-bezier(.25,.46,.45,.94);box-shadow:0 4px 20px #00000026,0 1px 3px #0000001a;opacity:0;transform:translateY(20px);animation:fadeInUp 1s ease-out .6s forwards;letter-spacing:.5px;min-width:90px}.start-button:hover{transform:translateY(-2px);box-shadow:0 6px 25px #0003,0 2px 5px #00000026;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-color, #3b82f6) 90%,#fff 10%) 0%,var(--accent-color, #3b82f6) 100%)}.start-button:active{transform:translateY(0);box-shadow:0 2px 10px #0003,0 1px 3px #0000001a}.splash-overlay{position:absolute;inset:0;background:transparent;z-index:2;pointer-events:none}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.splash-container{padding-top:12vh}.splash-content{padding:1.5rem;position:relative;z-index:3}.splash-logo{font-size:clamp(1.6rem,8vw,2.2rem);margin-bottom:.5rem}.splash-subtitle{font-size:clamp(.8rem,2vw,.95rem);margin-bottom:1.2rem}.start-button{padding:.4rem 1.2rem;font-size:.85rem;min-width:70px}.mandala-bg-wrapper{width:100vw;height:100vh;left:0;bottom:0}.mandala-bg{width:100vw;height:100vh;max-width:100vw;max-height:100vh;object-fit:cover}}@media(max-width:480px){.splash-container{padding-top:10vh}.splash-content{padding:1rem;position:relative;z-index:3}.splash-logo{font-size:clamp(2rem,12vw,3.5rem)}.start-button{padding:.75rem 2rem;font-size:.95rem}.mandala-bg-wrapper{width:100vw;height:100vh;left:0;bottom:0}.mandala-bg{width:100vw;height:100vh;max-width:100vw;max-height:100vh;object-fit:cover}}@media(max-height:500px)and (orientation:landscape){.splash-container{padding-top:5vh}.splash-logo{font-size:clamp(2rem,6vh,3rem);margin-bottom:.25rem}.splash-subtitle{font-size:clamp(.8rem,2.5vh,1rem);margin-bottom:1rem}.start-button{padding:.625rem 1.5rem;font-size:.9rem}.mandala-bg-wrapper{width:80vh;height:80vh;bottom:0;transform:translate(-50%) translateY(20%)}}@media(min-width:1200px){.splash-logo{font-size:5.5rem}.splash-subtitle{font-size:1.3rem}.start-button{padding:1.125rem 3.5rem;font-size:1.2rem}}@media(min-width:601px){.mandala-bg-wrapper{bottom:8vh}}@media(prefers-reduced-motion:reduce){.splash-container{transition:opacity .3s ease}.mandala-bg{animation:none}.splash-logo,.splash-subtitle,.start-button{animation:none;opacity:1;transform:none}}.install-prompt{position:fixed;bottom:0;left:0;right:0;background:var(--card-bg);border-top:2px solid var(--primary-color);padding:16px;box-shadow:0 -4px 12px #0003;z-index:9999;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.install-prompt-content{max-width:600px;margin:0 auto;text-align:center}.install-prompt-content h3{margin:0 0 8px;color:var(--text-primary);font-size:1.1em}.install-prompt-content p{margin:0 0 16px;color:var(--text-secondary);font-size:.9em}.install-prompt-buttons{display:flex;gap:12px;justify-content:center}.install-btn,.dismiss-btn{padding:10px 24px;border:none;border-radius:8px;font-size:1em;font-weight:500;cursor:pointer;transition:all .2s ease}.install-btn{background:var(--primary-color);color:#fff}.install-btn:hover{background:var(--primary-hover);transform:translateY(-1px)}.dismiss-btn{background:transparent;color:var(--text-secondary);border:1px solid var(--border-color)}.dismiss-btn:hover{background:var(--hover-bg)}:root{color-scheme:only light;--font-family: "Inter", "Segoe UI", Arial, sans-serif;--accent-color: #3b82f6;--accent-hue: 210deg;--bg-primary: #0f1419;--bg-secondary: #1a1f24;--bg-tertiary: #2d3748;--bg-quaternary: #374151;--text-primary: #ffffff;--text-secondary: #e2e8f0;--text-muted: #a0aec0;--accent-primary: #3b82f6;--accent-secondary: #1e40af;--border-primary: #374151;--border-secondary: #4a5568;--shadow-color: rgba(0, 0, 0, .25);--link-color: #60a5fa;--link-hover-color: #93c5fd;--button-bg: #3b82f6;--button-text: #ffffff;--button-hover-bg: #2563eb;--button-hover-text: #ffffff;--button-border: #3b82f6;--button-hover-border: #2563eb;--button-secondary-bg: #374151;--button-secondary-text: #e2e8f0;--button-secondary-hover-bg: #4a5568;--input-bg: #1a1f24;--input-text: #ffffff;--input-border: #374151;--input-focus-border: #3b82f6;--scrollbar-bg: #1a1f24;--scrollbar-thumb-bg: #374151;--scrollbar-thumb-hover-bg: #4a5568;--error-color: #ef4444;--success-color: #10b981;--warning-color: #f59e0b;--color-primary: #3b82f6;--color-primary-rgb: 59, 130, 246;--color-accent: #06b6d4;--color-bg: #0f1419;--color-card-bg: #1a1f24;--color-text: #ffffff;--color-text-secondary: #9ca3af;--color-border: #374151;--color-hover: #1f2937;--color-success: #22c55e;--color-warning: #f59e0b;--color-danger: #ef4444;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--gallery-bg-opacity: .85;--color-card: var(--color-card-bg);--color-error: var(--color-danger);--card-bg: var(--bg-secondary);--modal-bg: rgba(0, 0, 0, .8);--border-color: var(--border-primary);--primary-color: var(--accent-primary);--button-secondary-border: var(--border-primary);--button-secondary-hover-text: var(--text-primary);--button-danger-bg: #ef4444;--button-danger-hover-bg: #dc2626}[data-theme=dark]{--accent-color: #3b82f6;--accent-hue: 210deg;--bg-primary: #0f1419;--bg-secondary: #1a1f24;--bg-tertiary: #2d3748;--bg-quaternary: #374151;--text-primary: #ffffff;--text-secondary: #e2e8f0;--text-muted: #a0aec0;--accent-primary: #3b82f6;--accent-secondary: #1e40af;--border-primary: #374151;--border-secondary: #4a5568;--shadow-color: rgba(0, 0, 0, .25);--link-color: #60a5fa;--link-hover-color: #93c5fd;--button-bg: #3b82f6;--button-text: #ffffff;--button-hover-bg: #2563eb;--button-hover-text: #ffffff;--button-border: #3b82f6;--button-hover-border: #2563eb;--button-secondary-bg: #374151;--button-secondary-text: #e2e8f0;--button-secondary-hover-bg: #4a5568;--input-bg: #1a1f24;--input-text: #ffffff;--input-border: #374151;--input-focus-border: #3b82f6;--scrollbar-bg: #1a1f24;--scrollbar-thumb-bg: #374151;--scrollbar-thumb-hover-bg: #4a5568;--error-color: #ef4444;--success-color: #10b981;--warning-color: #f59e0b;--color-primary: #3b82f6;--color-primary-rgb: 59, 130, 246;--color-accent: #06b6d4;--color-bg: #0f1419;--color-card-bg: #1a1f24;--color-text: #ffffff;--color-text-secondary: #9ca3af;--color-border: #374151;--color-hover: #1f2937;--color-success: #22c55e;--color-warning: #f59e0b;--color-danger: #ef4444;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--gallery-bg-opacity: .85}[data-theme=light]{--accent-color: #2563eb;--accent-hue: 215deg;--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-tertiary: #f1f5f9;--bg-quaternary: #e2e8f0;--text-primary: #0f172a;--text-secondary: #334155;--text-muted: #64748b;--accent-primary: #3b82f6;--accent-secondary: #1e40af;--border-primary: #e2e8f0;--border-secondary: #cbd5e0;--shadow-color: rgba(0, 0, 0, .08);--link-color: #3b82f6;--link-hover-color: #2563eb;--button-bg: #3b82f6;--button-text: #ffffff;--button-hover-bg: #2563eb;--button-hover-text: #ffffff;--button-border: #3b82f6;--button-hover-border: #2563eb;--button-secondary-bg: #f1f5f9;--button-secondary-text: #334155;--button-secondary-hover-bg: #e2e8f0;--input-bg: #ffffff;--input-text: #0f172a;--input-border: #cbd5e0;--input-focus-border: #3b82f6;--scrollbar-bg: #f1f5f9;--scrollbar-thumb-bg: #cbd5e0;--scrollbar-thumb-hover-bg: #94a3b8;--error-color: #ef4444;--success-color: #10b981;--warning-color: #f59e0b;--color-primary: #3b82f6;--color-primary-rgb: 59, 130, 246;--color-accent: #06b6d4;--color-bg: #f8fafc;--color-card-bg: #ffffff;--color-text: #0f172a;--color-text-secondary: #64748b;--color-border: #e2e8f0;--color-hover: #f1f5f9;--color-success: #22c55e;--color-warning: #f59e0b;--color-danger: #ef4444;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--gallery-bg-opacity: .9}[data-theme=green-wedding]{--accent-color: #4E7F58;--accent-hue: 135deg;--bg-primary: #F7FBF8;--bg-secondary: #E9F2EC;--bg-tertiary: #D4E8DB;--bg-quaternary: #C0DCC8;--text-primary: #2F4A38;--text-secondary: #4E7F58;--text-muted: #7A9B85;--accent-primary: #4E7F58;--accent-secondary: #2F4A38;--border-primary: #C0DCC8;--border-secondary: #A8CDB5;--shadow-color: rgba(47, 74, 56, .1);--link-color: #4E7F58;--link-hover-color: #2F4A38;--button-bg: #4E7F58;--button-text: #FFFFFF;--button-hover-bg: #2F4A38;--button-hover-text: #FFFFFF;--button-border: #4E7F58;--button-hover-border: #2F4A38;--button-secondary-bg: #E9F2EC;--button-secondary-text: #2F4A38;--button-secondary-hover-bg: #D4E8DB;--input-bg: #FFFFFF;--input-text: #2F4A38;--input-border: #C0DCC8;--input-focus-border: #4E7F58;--scrollbar-bg: #E9F2EC;--scrollbar-thumb-bg: #C0DCC8;--scrollbar-thumb-hover-bg: #A8CDB5;--error-color: #ef4444;--success-color: #4E7F58;--warning-color: #D4BA7E;--color-primary: #4E7F58;--color-primary-rgb: 78, 127, 88;--color-accent: #D4BA7E;--color-bg: #F7FBF8;--color-card-bg: #E9F2EC;--color-text: #2F4A38;--color-text-secondary: #7A9B85;--color-border: #C0DCC8;--color-hover: #E9F2EC;--color-success: #4E7F58;--color-warning: #D4BA7E;--color-danger: #ef4444;--shadow-sm: 0 1px 2px 0 rgba(47, 74, 56, .05);--shadow-lg: 0 4px 6px -1px rgba(47, 74, 56, .1), 0 2px 4px -1px rgba(47, 74, 56, .06);--shadow-xl: 0 10px 15px -3px rgba(47, 74, 56, .1), 0 4px 6px -2px rgba(47, 74, 56, .05);--gallery-bg-opacity: .95;--wedding-gold: #D4BA7E;--wedding-sage: #4E7F58;--wedding-forest: #2F4A38;--wedding-light-sage: #E9F2EC}[data-theme=green-wedding] body{background:linear-gradient(135deg,#f7fbf8,#e9f2ec)}[data-theme=green-wedding] .card,[data-theme=green-wedding] .modal-content,[data-theme=green-wedding] .dashboard-card,[data-theme=green-wedding] .event-item,[data-theme=green-wedding] .create-event-container,[data-theme=green-wedding] .profile-container{background:#fffffff2;border:1px solid var(--wedding-light-sage);border-radius:16px;box-shadow:0 8px 32px #4e7f581a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}[data-theme=green-wedding] .card:before,[data-theme=green-wedding] .modal-content:before,[data-theme=green-wedding] .dashboard-card:before,[data-theme=green-wedding] .event-item:before,[data-theme=green-wedding] .create-event-container:before,[data-theme=green-wedding] .profile-container:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--wedding-sage),var(--wedding-gold),var(--wedding-sage));opacity:.8}[data-theme=green-wedding] .btn,[data-theme=green-wedding] button[type=submit],[data-theme=green-wedding] .btn-primary{background:linear-gradient(135deg,var(--wedding-sage),var(--wedding-forest));border:2px solid var(--wedding-sage);color:#fff;font-weight:600;letter-spacing:.5px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #4e7f584d}[data-theme=green-wedding] .btn:hover,[data-theme=green-wedding] button[type=submit]:hover,[data-theme=green-wedding] .btn-primary:hover{background:linear-gradient(135deg,var(--wedding-forest),var(--wedding-sage));border-color:var(--wedding-gold);transform:translateY(-2px);box-shadow:0 8px 20px #4e7f5866}[data-theme=green-wedding] h1,[data-theme=green-wedding] h2,[data-theme=green-wedding] .header-title{background:linear-gradient(135deg,var(--wedding-forest),var(--wedding-sage));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative}[data-theme=green-wedding] h1:after,[data-theme=green-wedding] h2:after{content:"";position:absolute;bottom:-4px;left:50%;transform:translate(-50%);width:60px;height:2px;background:linear-gradient(90deg,transparent,var(--wedding-gold),transparent)}[data-theme=green-wedding] input:focus,[data-theme=green-wedding] textarea:focus,[data-theme=green-wedding] select:focus{border-color:var(--wedding-sage);box-shadow:0 0 0 3px #4e7f581a;background:#fffffffa}[data-theme=dusk]{--accent-color: #8b5cf6;--accent-hue: 258deg;--bg-primary: #1e1b4b;--bg-secondary: #312e81;--bg-tertiary: #4338ca;--bg-quaternary: #6366f1;--text-primary: #f8fafc;--text-secondary: #e2e8f0;--text-muted: #cbd5e0;--accent-primary: #8b5cf6;--accent-secondary: #7c3aed;--border-primary: #4338ca;--border-secondary: #6366f1;--shadow-color: rgba(0, 0, 0, .15);--link-color: #a78bfa;--link-hover-color: #c4b5fd;--button-bg: #8b5cf6;--button-text: #ffffff;--button-hover-bg: #7c3aed;--button-hover-text: #ffffff;--button-border: #8b5cf6;--button-hover-border: #7c3aed;--button-secondary-bg: #4338ca;--button-secondary-text: #e2e8f0;--button-secondary-hover-bg: #6366f1;--input-bg: #312e81;--input-text: #f8fafc;--input-border: #4338ca;--input-focus-border: #8b5cf6;--scrollbar-bg: #312e81;--scrollbar-thumb-bg: #4338ca;--scrollbar-thumb-hover-bg: #6366f1;--error-color: #ef4444;--success-color: #10b981;--warning-color: #f59e0b}[data-theme=ocean]{--accent-color: #06b6d4;--accent-hue: 187deg;--bg-primary: #083344;--bg-secondary: #0e4c5d;--bg-tertiary: #155e75;--bg-quaternary: #1e7490;--text-primary: #ecfeff;--text-secondary: #a5f3fc;--text-muted: #67e8f9;--accent-primary: #06b6d4;--accent-secondary: #0891b2;--border-primary: #155e75;--border-secondary: #1e7490;--shadow-color: rgba(0, 0, 0, .3);--link-color: #22d3ee;--link-hover-color: #06b6d4;--button-bg: #06b6d4;--button-text: #083344;--button-hover-bg: #0891b2;--button-hover-text: #083344;--button-border: #06b6d4;--button-hover-border: #0891b2;--button-secondary-bg: #155e75;--button-secondary-text: #a5f3fc;--button-secondary-hover-bg: #1e7490;--input-bg: #0e4c5d;--input-text: #ecfeff;--input-border: #155e75;--input-focus-border: #06b6d4;--scrollbar-bg: #0e4c5d;--scrollbar-thumb-bg: #155e75;--scrollbar-thumb-hover-bg: #1e7490;--error-color: #ef4444;--success-color: #10b981;--warning-color: #f59e0b}[data-theme=forest]{--accent-color: #22c55e;--accent-hue: 142deg;--bg-primary: #14532d;--bg-secondary: #166534;--bg-tertiary: #15803d;--bg-quaternary: #16a34a;--text-primary: #f0fdf4;--text-secondary: #bbf7d0;--text-muted: #86efac;--accent-primary: #22c55e;--accent-secondary: #16a34a;--border-primary: #15803d;--border-secondary: #16a34a;--shadow-color: rgba(0, 0, 0, .25);--link-color: #4ade80;--link-hover-color: #22c55e;--button-bg: #22c55e;--button-text: #14532d;--button-hover-bg: #16a34a;--button-hover-text: #14532d;--button-border: #22c55e;--button-hover-border: #16a34a;--button-secondary-bg: #15803d;--button-secondary-text: #bbf7d0;--button-secondary-hover-bg: #16a34a;--input-bg: #166534;--input-text: #f0fdf4;--input-border: #15803d;--input-focus-border: #22c55e;--scrollbar-bg: #166534;--scrollbar-thumb-bg: #15803d;--scrollbar-thumb-hover-bg: #16a34a;--error-color: #ef4444;--success-color: #10b981;--warning-color: #f59e0b}[data-theme=sunset]{--accent-color: #f97316;--accent-hue: 25deg;--bg-primary: #7c2d12;--bg-secondary: #9a3412;--bg-tertiary: #c2410c;--bg-quaternary: #ea580c;--text-primary: #fff7ed;--text-secondary: #fed7aa;--text-muted: #fdba74;--accent-primary: #f97316;--accent-secondary: #ea580c;--border-primary: #c2410c;--border-secondary: #ea580c;--shadow-color: rgba(0, 0, 0, .25);--link-color: #fb923c;--link-hover-color: #f97316;--button-bg: #f97316;--button-text: #7c2d12;--button-hover-bg: #ea580c;--button-hover-text: #7c2d12;--button-border: #f97316;--button-hover-border: #ea580c;--button-secondary-bg: #c2410c;--button-secondary-text: #fed7aa;--button-secondary-hover-bg: #ea580c;--input-bg: #9a3412;--input-text: #fff7ed;--input-border: #c2410c;--input-focus-border: #f97316;--scrollbar-bg: #9a3412;--scrollbar-thumb-bg: #c2410c;--scrollbar-thumb-hover-bg: #ea580c;--error-color: #ef4444;--success-color: #10b981;--warning-color: #f59e0b}[data-theme=midnight]{--accent-color: #6366f1;--accent-hue: 239deg;--bg-primary: #1e1b4b;--bg-secondary: #312e81;--bg-tertiary: #3730a3;--bg-quaternary: #4338ca;--text-primary: #faf5ff;--text-secondary: #e9d5ff;--text-muted: #c4b5fd;--accent-primary: #8b5cf6;--accent-secondary: #7c3aed;--border-primary: #3730a3;--border-secondary: #4338ca;--shadow-color: rgba(0, 0, 0, .3);--link-color: #a78bfa;--link-hover-color: #8b5cf6;--button-bg: #8b5cf6;--button-text: #1e1b4b;--button-hover-bg: #7c3aed;--button-hover-text: #1e1b4b;--button-border: #8b5cf6;--button-hover-border: #7c3aed;--button-secondary-bg: #3730a3;--button-secondary-text: #e9d5ff;--button-secondary-hover-bg: #4338ca;--input-bg: #312e81;--input-text: #faf5ff;--input-border: #3730a3;--input-focus-border: #8b5cf6;--scrollbar-bg: #312e81;--scrollbar-thumb-bg: #3730a3;--scrollbar-thumb-hover-bg: #4338ca;--error-color: #ef4444;--success-color: #10b981;--warning-color: #f59e0b}[data-theme=rose-gold]{--accent-color: #ec4899;--accent-hue: 330deg;--bg-primary: #831843;--bg-secondary: #9d174d;--bg-tertiary: #be185d;--bg-quaternary: #db2777;--text-primary: #fdf2f8;--text-secondary: #fce7f3;--text-muted: #f9a8d4;--accent-primary: #ec4899;--accent-secondary: #db2777;--border-primary: #be185d;--border-secondary: #db2777;--shadow-color: rgba(0, 0, 0, .25);--link-color: #f472b6;--link-hover-color: #ec4899;--button-bg: #ec4899;--button-text: #831843;--button-hover-bg: #db2777;--button-hover-text: #831843;--button-border: #ec4899;--button-hover-border: #db2777;--button-secondary-bg: #be185d;--button-secondary-text: #fce7f3;--button-secondary-hover-bg: #db2777;--input-bg: #9d174d;--input-text: #fdf2f8;--input-border: #be185d;--input-focus-border: #ec4899;--scrollbar-bg: #9d174d;--scrollbar-thumb-bg: #be185d;--scrollbar-thumb-hover-bg: #db2777;--error-color: #ef4444;--success-color: #10b981;--warning-color: #f59e0b}[data-theme=wedding-style]{--accent-color: #CE0082;--accent-hue: 330deg;--bg-primary: #FFE2B2;--bg-secondary: #FFF5E6;--bg-tertiary: #FFD699;--bg-quaternary: #FFCA80;--text-primary: #2d1810;--text-secondary: #5c3a28;--text-muted: #8b6346;--accent-primary: #CE0082;--accent-secondary: #A50068;--border-primary: #FFCA80;--border-secondary: #FFD699;--shadow-color: rgba(206, 0, 130, .15);--link-color: #CE0082;--link-hover-color: #A50068;--button-bg: #CE0082;--button-text: #ffffff;--button-hover-bg: #A50068;--button-hover-text: #ffffff;--button-border: #CE0082;--button-hover-border: #A50068;--button-secondary-bg: #FFD699;--button-secondary-text: #2d1810;--button-secondary-hover-bg: #FFCA80;--input-bg: #ffffff;--input-text: #2d1810;--input-border: #FFCA80;--input-focus-border: #CE0082;--scrollbar-bg: #FFF5E6;--scrollbar-thumb-bg: #FFCA80;--scrollbar-thumb-hover-bg: #FFD699;--error-color: #ef4444;--success-color: #10b981;--warning-color: #f59e0b;--color-primary: #CE0082;--color-primary-rgb: 206, 0, 130;--color-accent: #FF69B4;--color-bg: #FFE2B2;--color-card-bg: #FFF5E6;--color-text: #2d1810;--color-text-secondary: #5c3a28;--color-border: #FFCA80;--color-hover: #FFD699;--color-success: #22c55e;--color-warning: #f59e0b;--color-danger: #ef4444;--shadow-sm: 0 1px 2px 0 rgba(206, 0, 130, .1);--shadow-lg: 0 10px 15px -3px rgba(206, 0, 130, .15), 0 4px 6px -2px rgba(206, 0, 130, .1);--shadow-xl: 0 20px 25px -5px rgba(206, 0, 130, .15), 0 10px 10px -5px rgba(206, 0, 130, .1);--gallery-bg-opacity: .95}[data-theme=creme-rose]{--accent-color: #f8a5c2;--accent-hue: 345deg;--bg-primary: #f5ede3;--bg-secondary: #f0e6d8;--bg-tertiary: #ead8c7;--bg-quaternary: #e1ccb5;--text-primary: #3d2914;--text-secondary: #5a3f2a;--text-muted: #8b6f47;--accent-primary: #f8a5c2;--accent-secondary: #722f37;--border-primary: #d4c0a8;--border-secondary: #c7ae93;--shadow-color: rgba(114, 47, 55, .15);--link-color: #722f37;--link-hover-color: #5a252b;--button-bg: #722f37;--button-text: #ffffff;--button-hover-bg: #5a252b;--button-hover-text: #ffffff;--button-border: #722f37;--button-hover-border: #5a252b;--button-secondary-bg: #e1ccb5;--button-secondary-text: #3d2914;--button-secondary-hover-bg: #d4c0a8;--input-bg: #f9f1e7;--input-text: #3d2914;--input-border: #d4c0a8;--input-focus-border: #f8a5c2;--scrollbar-bg: #f0e6d8;--scrollbar-thumb-bg: #d4c0a8;--scrollbar-thumb-hover-bg: #c7ae93;--error-color: #dc2626;--success-color: #16a34a;--warning-color: #ea580c;--color-primary: #722f37;--color-primary-rgb: 114, 47, 55;--color-accent: #f8a5c2;--color-bg: #f5ede3;--color-card-bg: #f0e6d8;--color-text: #3d2914;--color-text-secondary: #5a3f2a;--color-border: #d4c0a8;--color-hover: #ead8c7;--color-success: #16a34a;--color-warning: #ea580c;--color-danger: #dc2626;--shadow-sm: 0 1px 2px 0 rgba(114, 47, 55, .1);--shadow-lg: 0 10px 15px -3px rgba(114, 47, 55, .15), 0 4px 6px -2px rgba(114, 47, 55, .1);--shadow-xl: 0 20px 25px -5px rgba(114, 47, 55, .15), 0 10px 10px -5px rgba(114, 47, 55, .1);--gallery-bg-opacity: .92;--mandala-primary: #f8a5c2;--mandala-secondary: rgba(248, 165, 194, .3);--mandala-accent: #722f37;--mandala-light: rgba(248, 165, 194, .1)}[data-theme=creme-rose] body{background-image:radial-gradient(circle at 25% 25%,var(--mandala-light) 0%,transparent 50%),radial-gradient(circle at 75% 75%,var(--mandala-light) 0%,transparent 50%),radial-gradient(circle at 75% 25%,var(--mandala-secondary) 0%,transparent 30%),radial-gradient(circle at 25% 75%,var(--mandala-secondary) 0%,transparent 30%);background-size:800px 800px,600px 600px,400px 400px,400px 400px;background-position:-200px -200px,200px 200px,100px -100px,-100px 100px;background-attachment:fixed}[data-theme=creme-rose] .card,[data-theme=creme-rose] .modal-content,[data-theme=creme-rose] .dashboard-card{position:relative}[data-theme=creme-rose] .card:before,[data-theme=creme-rose] .modal-content:before,[data-theme=creme-rose] .dashboard-card:before{content:"";position:absolute;top:-10px;right:-10px;width:60px;height:60px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cg fill='%23f8a5c2' opacity='0.15'%3E%3Ccircle cx='50' cy='50' r='2'/%3E%3Cg transform='rotate(0 50 50)'%3E%3Cpath d='M50 10 L52 20 L50 30 L48 20 Z'/%3E%3C/g%3E%3Cg transform='rotate(45 50 50)'%3E%3Cpath d='M50 10 L52 20 L50 30 L48 20 Z'/%3E%3C/g%3E%3Cg transform='rotate(90 50 50)'%3E%3Cpath d='M50 10 L52 20 L50 30 L48 20 Z'/%3E%3C/g%3E%3Cg transform='rotate(135 50 50)'%3E%3Cpath d='M50 10 L52 20 L50 30 L48 20 Z'/%3E%3C/g%3E%3Cg transform='rotate(180 50 50)'%3E%3Cpath d='M50 10 L52 20 L50 30 L48 20 Z'/%3E%3C/g%3E%3Cg transform='rotate(225 50 50)'%3E%3Cpath d='M50 10 L52 20 L50 30 L48 20 Z'/%3E%3C/g%3E%3Cg transform='rotate(270 50 50)'%3E%3Cpath d='M50 10 L52 20 L50 30 L48 20 Z'/%3E%3C/g%3E%3Cg transform='rotate(315 50 50)'%3E%3Cpath d='M50 10 L52 20 L50 30 L48 20 Z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;pointer-events:none;z-index:1}[data-theme=creme-rose] h1:after,[data-theme=creme-rose] h2:after{content:"";display:inline-block;width:20px;height:20px;margin-left:10px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23722f37'%3E%3Cpath d='M12 2 L14 8 L12 14 L10 8 Z' opacity='0.6'/%3E%3Cpath d='M2 12 L8 10 L14 12 L8 14 Z' opacity='0.6'/%3E%3Cpath d='M4.9 4.9 L9.2 9.2 L12 12 L9.2 14.8 L4.9 19.1 L9.2 14.8 Z' opacity='0.4'/%3E%3Cpath d='M19.1 4.9 L14.8 9.2 L12 12 L14.8 14.8 L19.1 19.1 L14.8 14.8 Z' opacity='0.4'/%3E%3Ccircle cx='12' cy='12' r='2' fill='%23f8a5c2'/%3E%3C/svg%3E");background-size:contain;vertical-align:middle}[data-theme=creme-rose] input:focus,[data-theme=creme-rose] textarea:focus,[data-theme=creme-rose] select:focus{box-shadow:0 0 0 3px var(--mandala-secondary),0 0 20px var(--mandala-light),inset 0 0 0 1px var(--input-focus-border)}[data-theme=creme-rose] button:hover,[data-theme=creme-rose] .btn:hover{box-shadow:0 4px 15px var(--mandala-secondary),0 0 30px var(--mandala-light);transform:translateY(-1px)}[data-theme=creme-rose] .admin-sidebar{background-image:radial-gradient(circle at top right,var(--mandala-light) 0%,transparent 60%),radial-gradient(circle at bottom left,var(--mandala-secondary) 0%,transparent 40%)}[data-theme=creme-rose] tr:hover{background:linear-gradient(90deg,var(--mandala-light),transparent,var(--mandala-light));box-shadow:0 2px 8px var(--mandala-secondary)}[data-theme=creme-rose] .loading-spinner:before{content:"";border:3px solid var(--mandala-secondary);border-top:3px solid var(--mandala-primary);border-radius:50%;animation:mandala-spin 2s linear infinite}@keyframes mandala-spin{0%{transform:rotate(0)}25%{transform:rotate(90deg) scale(1.1)}50%{transform:rotate(180deg)}75%{transform:rotate(270deg) scale(1.1)}to{transform:rotate(360deg)}}[data-theme=creme-rose] .nav-links a:before{content:"✦";color:var(--mandala-primary);margin-right:8px;opacity:0;transition:opacity .3s ease}[data-theme=creme-rose] .nav-links a:hover:before{opacity:1}[data-theme=creme-rose] hr{border:none;height:2px;background:linear-gradient(90deg,transparent 0%,var(--mandala-secondary) 20%,var(--mandala-primary) 50%,var(--mandala-secondary) 80%,transparent 100%);position:relative}[data-theme=creme-rose] hr:after{content:"❋";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--bg-secondary);color:var(--mandala-accent);padding:0 10px;font-size:16px}:root{color-scheme:light only!important}html{color-scheme:light only!important}#root>div{background:var(--bg-primary)}html,body,#root{height:100%;min-height:100vh;margin:0;padding:0;box-sizing:border-box;background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-family);overflow-x:hidden;color-scheme:only light}*,*:before,*:after{box-sizing:border-box}img{max-width:100%;height:auto;display:block}::-webkit-scrollbar{width:10px;background:var(--scrollbar-bg)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb-bg);border-radius:6px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover-bg)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb-bg) var(--scrollbar-bg)}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:var(--text-primary);background-color:var(--bg-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg-primary);-webkit-tap-highlight-color:transparent;touch-action:manipulation}button,a,input,select,textarea{min-height:44px}button{font-family:var(--font-family);font-size:.9rem;font-weight:500;border:none;border-radius:8px;padding:10px 20px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);background:var(--button-bg);color:var(--button-text);text-align:center;display:inline-flex;align-items:center;justify-content:center;gap:8px}button:hover:not(:disabled){background:var(--button-hover-bg);transform:translateY(-1px);box-shadow:0 4px 12px #00000026}button:active:not(:disabled){transform:translateY(0)}button:disabled{opacity:.6;cursor:not-allowed}input,select,textarea{font-family:var(--font-family);font-size:.95rem;padding:12px 16px;border-radius:8px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--input-text);transition:all .2s cubic-bezier(.4,0,.2,1);width:100%}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--input-focus-border);box-shadow:0 0 0 3px #3b82f61a}input::placeholder{color:var(--text-muted)}label{display:block;margin-bottom:6px;font-weight:500;color:var(--text-primary);font-size:.9rem}.page-container{min-height:100vh;background:var(--bg-primary);padding:80px 2rem 2rem}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;max-width:1200px;margin-left:auto;margin-right:auto}.page-header h1,.page-header h2{margin:0;text-align:center;flex:1;color:var(--text-primary);font-weight:700}.card{background:var(--bg-secondary);border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px var(--shadow-color);border:1px solid var(--border-primary);transition:all .2s cubic-bezier(.4,0,.2,1)}.card:hover{box-shadow:0 4px 16px var(--shadow-color);transform:translateY(-2px)}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:var(--text-primary);background-color:var(--bg-primary)}}
