*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0);height:100%}body{display:flex;flex-direction:column;font-size:var(--font-size-base);font-weight:400;margin:0;min-height:100%;padding:0;text-align:left}h1,h2,h3,h4,h5,h6{font-weight:500;line-height:1.2;margin-bottom:.5rem;margin-top:0}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-bottom:1rem;margin-top:0}a{background-color:#0000;color:#0071e3;color:var(--primary-color);text-decoration:none;transition:color .15s ease-in-out}a:hover{color:#0062cc;color:var(--primary-color-dark);text-decoration:underline}img{border-style:none;height:auto;max-width:100%;vertical-align:middle}button{-webkit-appearance:button;appearance:button;border-radius:var(--border-radius);cursor:pointer;font-family:inherit;font-size:inherit;line-height:inherit;margin:0;overflow:visible;text-align:center;text-transform:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-user-select:none;user-select:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}.sr-only{border:0}.embed-responsive{display:block;overflow:hidden;padding:0;position:relative;width:100%}.embed-responsive:before{content:"";display:block;padding-top:56.25%}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{border:0;bottom:0;height:100%;left:0;position:absolute;top:0;width:100%}.cta-button{background-color:#06c;border:none;border-radius:6.25rem;box-shadow:0 .25rem 1rem #06c3;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;letter-spacing:.01em;padding:.625rem 1.25rem;transition:all .2s ease}.cta-button:hover{background-color:#0052a3;box-shadow:0 .375rem 1.25rem #0066cc4d;transform:translateY(-.125rem)}.cta-button:active{box-shadow:0 .125rem .5rem #06c3;transform:translateY(0)}.login-button{background-color:#0000;border:.0625rem solid #0000000d;border-radius:6.25rem;color:#1d1d1f;cursor:pointer;font-size:1rem;font-weight:500;margin-right:1rem;padding:.625rem 1.25rem;transition:all .2s ease}.login-button:hover{background-color:#0066cc0d;border-color:#06c;color:#06c}.navigation{backdrop-filter:blur(1.25rem);-webkit-backdrop-filter:blur(1.25rem);background-color:#ffffffe6;border-bottom:.0625rem solid #00000080;left:0;padding:1.5rem 0;position:fixed;right:0;top:0;transition:all .3s ease;z-index:100}.navigation.scrolled{background-color:#fffffff2;box-shadow:0 .25rem 1.25rem #0000000d;padding:.75rem 0}.navigation.menu-open{background-color:#fff;height:100vh;overflow-y:auto}.navigation.menu-open .nav-content{align-items:flex-start;flex-direction:column;height:100%}.nav-content{justify-content:space-between;margin:0 auto;max-width:75rem;padding:0 1.5rem}.logo,.nav-content{align-items:center;display:flex}.logo{color:#1d1d1f;cursor:pointer;font-size:1.25rem;font-weight:700;gap:.5rem;letter-spacing:-.03125rem;transition:all .2s ease}.logo:hover{color:#06c}.logo:hover img{transform:scale(1.05)}.logo img{cursor:pointer;display:block;height:2.5rem;transition:transform .3s ease;width:auto}.logo img.capturing{animation:camera-capture 1s ease-in-out}.logo .logo-text{background:linear-gradient(135deg,#06c,#004080);background-clip:text;-webkit-background-clip:text;color:#0000;font-weight:700;text-shadow:0 .0625rem .125rem #0000000d}.nav-links{align-items:center;display:flex;gap:1.875rem}.nav-links .nav-link{border-radius:.75rem;color:#6e6e73;font-size:1rem;font-weight:500;padding:.5rem .75rem;position:relative;text-decoration:none;transition:all .2s ease}.nav-links .nav-link:hover{background-color:#0066cc0d;color:#06c}.nav-links .nav-link:after{background-color:#06c;bottom:0;content:"";height:.125rem;left:50%;position:absolute;transform:translateX(-50%);transition:all .2s ease;width:0}.nav-links .nav-link:hover:after{width:1.5rem}.nav-links .nav-link.register-link{color:#06c;font-weight:600;margin-left:.5rem}@keyframes camera-capture{0%{filter:brightness(1);transform:rotate(0deg) scale(1)}10%{transform:rotate(-5deg) scale(.95)}20%{transform:rotate(-10deg) scale(.9)}30%{transform:rotate(-5deg) scale(.85)}40%{filter:brightness(1);transform:rotate(0deg) scale(.8)}50%{filter:brightness(1.5);transform:rotate(0deg) scale(.8)}60%{filter:brightness(1.2);transform:rotate(0deg) scale(.85)}70%{filter:brightness(1.1);transform:rotate(5deg) scale(.9)}80%{filter:brightness(1.05);transform:rotate(10deg) scale(.95)}90%{filter:brightness(1.02);transform:rotate(5deg) scale(.98)}to{filter:brightness(1);transform:rotate(0deg) scale(1)}}.nav-actions{align-items:center;display:flex}.mobile-menu-toggle{background:#0000;border:none;cursor:pointer;display:none;flex-direction:column;height:1.25rem;justify-content:space-between;margin-left:1rem;padding:0;width:1.5rem;z-index:10}.mobile-menu-toggle span{background-color:#1d1d1f;border-radius:6.25rem;display:block;height:.125rem;transition:all .2s ease;width:100%}.mobile-menu-toggle.active span:first-child{background-color:#06c;transform:translateY(.5625rem) rotate(45deg)}.mobile-menu-toggle.active span:nth-child(2){opacity:0}.mobile-menu-toggle.active span:last-child{background-color:#06c;transform:translateY(-.5625rem) rotate(-45deg)}@media screen and (max-width:48rem){.nav-links{align-items:flex-start;display:none;flex-direction:column;padding:2rem 0;width:100%}.nav-links.visible{display:flex}.nav-links .nav-link{font-size:1.125rem;padding:.75rem 0;width:100%}.login-button,.nav-links .nav-link:after{display:none}.mobile-menu-toggle{display:flex}.navigation.menu-open .nav-content{padding-top:1rem}.logo{z-index:10}}.footer-column h4{color:#1d1d1f;font-size:1rem;font-weight:600;margin-bottom:1.5rem}.footer-column ul{list-style:none;margin:0;padding:0}.footer-column ul li{margin-bottom:.5rem}.footer-column ul li a{color:#6e6e73;font-size:.875rem;text-decoration:none;transition:all .2s ease}.footer-column ul li a:hover{color:#06c}footer{background-color:#f5f5f7;border-top:1px solid #0000000d;padding:4rem 0}.footer-content{align-items:flex-start;display:flex;justify-content:space-between}.footer-logo{flex:1 1}.footer-logo h3{font-size:1.5rem;font-weight:600;margin-bottom:.75rem}.footer-logo p{color:#6e6e73;font-size:.875rem;max-width:18.75rem}.footer-links{grid-gap:2rem;display:grid;flex:2 1;gap:2rem;grid-template-columns:repeat(3,1fr)}.copyright{border-top:1px solid #0000000d;color:#86868b;font-size:.75rem;margin-top:4rem;padding-top:1.5rem;text-align:center}@media screen and (max-width:48rem){.footer-content{flex-direction:column}.footer-logo{margin-bottom:2.5rem}.footer-links{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:30rem){.footer-links{gap:1.5rem;grid-template-columns:1fr}}.contact-page,.help-center-page,.legal-page{background-color:#fff;color:#1d1d1f;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Helvetica Neue,sans-serif;min-height:100vh}.contact-page main,.help-center-page main,.legal-page main{flex:1 1;padding:3rem 0}.contact-page main .container,.help-center-page main .container,.legal-page main .container{margin:0 auto;max-width:75rem;padding:0 1.5rem}.contact-page h1,.help-center-page h1,.legal-page h1{color:#1d1d1f;font-size:2.5rem;font-weight:700;letter-spacing:-.01em;line-height:1.2;margin-bottom:1rem}@media(max-width:768px){.contact-page h1,.help-center-page h1,.legal-page h1{font-size:2rem}}.contact-page h2,.help-center-page h2,.legal-page h2{color:#1d1d1f;font-size:2rem;font-weight:700;line-height:1.3;margin:2rem 0 1rem}@media(max-width:768px){.contact-page h2,.help-center-page h2,.legal-page h2{font-size:1.75rem}}.contact-page h3,.help-center-page h3,.legal-page h3{color:#1d1d1f;font-size:1.25rem;font-weight:600;margin:1.5rem 0 .75rem}.contact-page li,.contact-page p,.help-center-page li,.help-center-page p,.legal-page li,.legal-page p{color:var(--text-color);color:#6e6e73;font-size:1rem;line-height:1.6;margin-bottom:1rem}.contact-page a,.help-center-page a,.legal-page a{color:#06c;text-decoration:none;transition:color .2s ease}.contact-page a:hover,.help-center-page a:hover,.legal-page a:hover{color:#004d99;text-decoration:underline}.legal-page .legal-content header{border-bottom:1px solid #0000000d;margin-bottom:2rem;padding-bottom:1.5rem}.legal-page .legal-content header .last-updated{color:#86868b;font-size:.875rem;font-style:italic;line-height:1.5;margin-top:.5rem}.legal-page .legal-content .legal-section{margin-bottom:2.5rem}.legal-page .legal-content .legal-section h2{color:#1d1d1f;font-weight:700}.legal-page .legal-content .legal-section h3{color:#1d1d1f;font-weight:600}.legal-page .legal-content .legal-section ol,.legal-page .legal-content .legal-section ul{margin:1rem 0 1.5rem 1rem}.legal-page .legal-content .legal-section ol li,.legal-page .legal-content .legal-section ul li{color:#6e6e73;margin-bottom:.5rem;position:relative}.legal-page .legal-content .legal-section address{color:#6e6e73;font-style:normal;line-height:1.6;margin:1rem 0}.legal-page .legal-content .legal-section .contact-link{color:#06c;display:inline-block;font-weight:500;margin-top:.5rem}.help-center-page .help-header{margin-bottom:3rem;text-align:center}.help-center-page .help-header p{color:#6e6e73;font-size:1.25rem;margin:1rem auto;max-width:40rem}.help-center-page .help-header .search-container{margin:2rem auto 0;max-width:40rem;position:relative}.help-center-page .help-header .search-container .search-input{border:2px solid #0000000d;border-radius:6.25rem;box-shadow:0 2px 1.25rem #0000000a;font-size:1rem;padding:1rem 3rem 1rem 1.5rem;transition:border-color .2s ease;width:100%}.help-center-page .help-header .search-container .search-input:focus{border-color:#06c;outline:none}.help-center-page .help-header .search-container .search-button{background:none;border:none;color:#86868b;cursor:pointer;position:absolute;right:1rem;top:50%;transform:translateY(-50%);transition:color .2s ease}.help-center-page .help-header .search-container .search-button:hover{color:#06c}.help-center-page .help-categories{margin-bottom:3rem}.help-center-page .help-categories h2{margin-bottom:1.5rem;text-align:center}.help-center-page .help-categories .category-filters{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:.75rem;justify-content:center}.help-center-page .help-categories .category-filters .category-button{background-color:#f5f5f7;border:1px solid #0000000d;border-radius:6.25rem;color:#6e6e73;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.help-center-page .help-categories .category-filters .category-button:hover{background-color:#e7e7ec;transform:translateY(-2px)}.help-center-page .help-categories .category-filters .category-button.active{background-color:#06c;border-color:#06c;box-shadow:0 4px 12px #0666cc40;color:#fff}.help-center-page .faq-section{margin-bottom:3rem}.help-center-page .faq-section h2{margin-bottom:2rem;text-align:center}.help-center-page .faq-section .faq-list{margin:0 auto;max-width:50rem}.help-center-page .faq-section .faq-list .faq-item{border:1px solid #0000000d;border-radius:.75rem;box-shadow:0 2px 1.25rem #0000000a;margin-bottom:1rem;overflow:hidden;transition:box-shadow .2s ease}.help-center-page .faq-section .faq-list .faq-item:hover{box-shadow:0 2px 1.25rem #0000000a}.help-center-page .faq-section .faq-list .faq-item[open] .faq-question{background-color:#f5f5f7;color:#06c}.help-center-page .faq-section .faq-list .faq-item[open] .faq-question:after{color:#06c;transform:translateY(-50%) rotate(180deg)}.help-center-page .faq-section .faq-list .faq-item .faq-question{color:#1d1d1f;cursor:pointer;font-weight:600;padding:1.5rem 3rem 1.5rem 1.5rem;position:relative;transition:background-color .2s ease}.help-center-page .faq-section .faq-list .faq-item .faq-question:hover{background-color:#f5f5f7}.help-center-page .faq-section .faq-list .faq-item .faq-question:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;content:"";height:1rem;position:absolute;right:1.5rem;top:50%;transform:translateY(-50%);transition:transform .2s ease;width:1rem}.help-center-page .faq-section .faq-list .faq-item .faq-answer{color:#6e6e73;padding:0 1.5rem 1.5rem}.help-center-page .faq-section .faq-list .faq-item .faq-answer ol,.help-center-page .faq-section .faq-list .faq-item .faq-answer ul{margin-left:1.5rem}.help-center-page .faq-section .faq-list .faq-item .faq-answer ol li,.help-center-page .faq-section .faq-list .faq-item .faq-answer ul li{margin-bottom:.5rem}.help-center-page .faq-section .faq-list .faq-item .faq-answer a{color:#06c;font-weight:500}.help-center-page .faq-section .no-results{color:#86868b;font-size:1.125rem;padding:3rem 0;text-align:center}.help-center-page .help-contact{margin-bottom:3rem;text-align:center}.help-center-page .help-contact p{color:#6e6e73;margin:1rem auto 2rem;max-width:40rem}.help-center-page .help-contact .contact-options{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:2rem;justify-content:center}.help-center-page .help-contact .contact-options .contact-card{background-color:#fff;border:1px solid #0000000d;border-radius:.75rem;box-shadow:0 2px 1.25rem #0000000a;max-width:20rem;padding:2rem;transition:transform box-shadow ease;width:100%}.help-center-page .help-contact .contact-options .contact-card:hover{border-color:#06c;box-shadow:0 1.25rem 5rem #0000001f;transform:translateY(-.25rem)}.help-center-page .help-contact .contact-options .contact-card .contact-icon{align-items:center;background-color:#0066cc1a;border-radius:50%;color:#06c;display:flex;height:3rem;justify-content:center;margin:0 auto 1rem;width:3rem}.help-center-page .help-contact .contact-options .contact-card h3{color:#1d1d1f;margin-top:0}.help-center-page .help-contact .contact-options .contact-card .contact-link{color:#06c;display:inline-block;font-weight:600;margin-top:1rem}.help-center-page .help-contact .contact-options .contact-card .contact-link:hover{color:#004d99}.help-center-page .help-resources{text-align:center}.help-center-page .help-resources .resource-cards{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:2rem;justify-content:center;margin-top:2rem}.help-center-page .help-resources .resource-cards .resource-card{background-color:#fff;border:1px solid #0000000d;border-radius:.75rem;box-shadow:0 2px 1.25rem #0000000a;max-width:18rem;padding:1.5rem;transition:all .2s ease;width:100%}.help-center-page .help-resources .resource-cards .resource-card:hover{border-color:#06c;box-shadow:0 1.25rem 5rem #0000001f;transform:translateY(-.25rem)}.help-center-page .help-resources .resource-cards .resource-card h3{color:#1d1d1f;margin-top:0}.help-center-page .help-resources .resource-cards .resource-card .resource-link{color:#06c;display:inline-block;font-weight:600;margin-top:1rem}.help-center-page .help-resources .resource-cards .resource-card .resource-link:hover{color:#004d99}.contact-page .contact-header{margin-bottom:3rem;text-align:center}.contact-page .contact-header p{color:#6e6e73;font-size:1.25rem;margin:1rem auto;max-width:40rem}.contact-page .contact-container{align-items:stretch;display:flex;flex-direction:row;flex-wrap:wrap;gap:3rem;justify-content:flex-start;margin-bottom:4rem}.contact-page .contact-container .contact-form-container{flex:1 1;min-width:20rem}.contact-page .contact-container .contact-form-container h2{color:#1d1d1f;margin-top:0}.contact-page .contact-container .contact-form-container .contact-form .form-group{margin-bottom:1.5rem}.contact-page .contact-container .contact-form-container .contact-form .form-group label{color:#1d1d1f;display:block;font-weight:600;margin-bottom:.5rem}.contact-page .contact-container .contact-form-container .contact-form .form-group input,.contact-page .contact-container .contact-form-container .contact-form .form-group select,.contact-page .contact-container .contact-form-container .contact-form .form-group textarea{background-color:#fff;border:1px solid #0000000d;border-radius:.5rem;color:#1d1d1f;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Helvetica Neue,sans-serif;font-size:1rem;padding:.75rem 1rem;transition:border-color .2s ease;width:100%}.contact-page .contact-container .contact-form-container .contact-form .form-group input:focus,.contact-page .contact-container .contact-form-container .contact-form .form-group select:focus,.contact-page .contact-container .contact-form-container .contact-form .form-group textarea:focus{border-color:#06c;box-shadow:0 0 0 3px #0066cc26;outline:none}.contact-page .contact-container .contact-form-container .contact-form .form-group input::placeholder,.contact-page .contact-container .contact-form-container .contact-form .form-group select::placeholder,.contact-page .contact-container .contact-form-container .contact-form .form-group textarea::placeholder{color:#86868b}.contact-page .contact-container .contact-form-container .contact-form .form-group textarea{min-height:8rem;resize:vertical}.contact-page .contact-container .contact-form-container .contact-form .error-message{color:red;font-size:.875rem;font-weight:500;margin-bottom:1rem}.contact-page .contact-container .contact-form-container .contact-form .submit-button{align-items:center;background-color:var(--primary-color);border:none;border-radius:var(--border-radius-md);color:var(--text-on-primary);cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;justify-content:center;outline:none;padding:.75rem 1.5rem;text-decoration:none;transition:all var(--transition-fast)}.contact-page .contact-container .contact-form-container .contact-form .submit-button:focus,.contact-page .contact-container .contact-form-container .contact-form .submit-button:hover{background-color:var(--primary-color-hover);box-shadow:0 4px 12px rgba(var(--primary-color-rgb),.25);transform:translateY(-2px)}.contact-page .contact-container .contact-form-container .contact-form .submit-button:active{background-color:var(--primary-color-active);transform:translateY(0)}.contact-page .contact-container .contact-form-container .contact-form .submit-button:hover{background-color:#004d99}.contact-page .contact-container .contact-form-container .contact-form .submit-button:disabled{background-color:#86868b;cursor:not-allowed}.contact-page .contact-container .contact-form-container .success-message{align-items:center;background-color:#0080001a;border:1px solid #00800033;border-radius:.75rem;color:green;display:flex;flex-direction:row;flex-wrap:nowrap;gap:1rem;justify-content:center;padding:1.5rem}.contact-page .contact-container .contact-form-container .success-message svg{stroke:green;flex-shrink:0}.contact-page .contact-container .contact-info-container{flex:1 1;min-width:20rem}.contact-page .contact-container .contact-info-container h2{color:#1d1d1f;margin-top:0}.contact-page .contact-container .contact-info-container .contact-info .contact-method{align-items:flex-start;display:flex;flex-direction:row;flex-wrap:nowrap;gap:1rem;justify-content:flex-start;margin-bottom:2rem}.contact-page .contact-container .contact-info-container .contact-info .contact-method .contact-icon{align-items:center;background-color:#0066cc1a;border-radius:50%;color:#06c;display:flex;flex-shrink:0;height:3rem;justify-content:center;width:3rem}.contact-page .contact-container .contact-info-container .contact-info .contact-method .contact-details h3{color:#1d1d1f;font-weight:600;margin-bottom:.5rem;margin-top:0}.contact-page .contact-container .contact-info-container .contact-info .contact-method .contact-details p{color:#6e6e73;margin-bottom:.25rem}.contact-page .contact-container .contact-info-container .contact-info .contact-method .contact-details .hours{color:#86868b;font-size:.875rem;font-style:italic;margin-top:.25rem}.contact-page .contact-container .contact-info-container .contact-info .contact-method .contact-details address{color:#6e6e73;font-style:normal;line-height:1.6}.contact-page .contact-container .contact-info-container .contact-info .contact-method .contact-details .social-links{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:1rem;justify-content:flex-start;margin-top:.5rem}.contact-page .contact-container .contact-info-container .contact-info .contact-method .contact-details .social-links a{color:#06c;transition:transform color ease}.contact-page .contact-container .contact-info-container .contact-info .contact-method .contact-details .social-links a:hover{color:#004d99;transform:translateY(-2px)}.contact-page .faq-preview{border-top:1px solid #0000000d;padding-top:3rem;text-align:center}.contact-page .faq-preview p{color:#6e6e73;margin:1rem auto 2rem;max-width:40rem}.contact-page .faq-preview .faq-preview-items{align-items:stretch;display:flex;flex-direction:row;flex-wrap:wrap;gap:2rem;justify-content:center;margin-bottom:2rem}.contact-page .faq-preview .faq-preview-items .faq-preview-item{background-color:#fff;border:1px solid #0000000d;border-radius:.75rem;box-shadow:0 2px 1.25rem #0000000a;max-width:20rem;padding:1.5rem;text-align:left;transition:all .2s ease;width:100%}.contact-page .faq-preview .faq-preview-items .faq-preview-item:hover{border-color:#06c;box-shadow:0 2px 1.25rem #0000000a;transform:translateY(-.25rem)}.contact-page .faq-preview .faq-preview-items .faq-preview-item h3{color:#1d1d1f;font-weight:600;margin-top:0}.contact-page .faq-preview .faq-preview-items .faq-preview-item p{color:#6e6e73;margin:0}.contact-page .faq-preview .view-all-faq{align-items:center;background-color:var(--primary-color);border:none;border-radius:var(--border-radius-md);color:var(--text-on-primary);cursor:pointer;display:inline-flex;font-weight:600;justify-content:center;outline:none;padding:.75rem 1.5rem;text-decoration:none;transition:all var(--transition-fast);transition:all .2s ease}.contact-page .faq-preview .view-all-faq:focus,.contact-page .faq-preview .view-all-faq:hover{background-color:var(--primary-color-hover);box-shadow:0 4px 12px rgba(var(--primary-color-rgb),.25);transform:translateY(-2px)}.contact-page .faq-preview .view-all-faq:active{background-color:var(--primary-color-active);transform:translateY(0)}.contact-page .faq-preview .view-all-faq:hover{background-color:#004d99;text-decoration:none;transform:translateY(-2px)}@media(max-width:48rem){.contact-page main,.help-center-page main,.legal-page main{padding:2rem 0}.contact-page h1,.help-center-page h1,.legal-page h1{font-size:2rem}.contact-page h2,.help-center-page h2,.legal-page h2{font-size:1.5rem}.contact-page .container,.help-center-page .container,.legal-page .container{padding:0 1rem}.help-center-page .help-header{margin-bottom:2rem}.help-center-page .help-header p{font-size:1.125rem}.help-center-page .help-contact .contact-options{align-items:center;flex-direction:column}.help-center-page .faq-section .faq-list .faq-item .faq-question{padding:1rem 2.5rem 1rem 1rem}.help-center-page .faq-section .faq-list .faq-item .faq-question:after{right:1rem}.contact-page .contact-header{margin-bottom:2rem}.contact-page .contact-header p{font-size:1.125rem}.contact-page .contact-container{flex-direction:column;gap:2rem}.contact-page .faq-preview-items{gap:1.5rem}}.auth-logo-container{align-items:center;cursor:pointer;display:flex;gap:.75rem;margin-bottom:2rem;position:relative;transition:transform .3s ease;z-index:10}.auth-logo-container:hover{transform:scale(1.02)}.auth-logo-container:hover .auth-logo-image{transform:rotate(-5deg) scale(1.05)}.auth-logo-container:hover .logo-text{color:#0071e3;color:var(--primary-color)}.auth-logo-container .logo-wrapper{position:relative}.auth-logo-container .logo-wrapper:before{background:#0071e31a;background:rgba(var(--primary-color-rgb),.1);border-radius:50%;bottom:-.25rem;content:"";left:-.25rem;opacity:0;position:absolute;right:-.25rem;top:-.25rem;transform:scale(0);transition:all .3s ease}.auth-logo-container .logo-wrapper:hover:before{opacity:1;transform:scale(1)}.auth-logo-container .logo-wrapper.animating{animation:logoCapture .9s ease-in-out forwards}.auth-logo-container .logo-wrapper.animating:before{animation:logoFlash .9s ease-in-out forwards}.auth-logo-container .auth-logo-image{height:2.5rem;transition:all .3s ease;width:auto}.auth-logo-container .logo-text{color:#0071e3;color:var(--primary-color);font-size:1.5rem;font-weight:600;letter-spacing:-.02em;transition:all .3s ease}.auth-logo-container .logo-text.animating{animation:textFade .9s ease-in-out forwards}@keyframes logoCapture{0%{filter:brightness(1);transform:rotate(0deg) scale(1)}20%{filter:brightness(1);transform:rotate(-10deg) scale(.9)}40%{filter:brightness(1);transform:rotate(-5deg) scale(.85)}50%{filter:brightness(1.8);transform:rotate(0deg) scale(.8)}60%{filter:brightness(1.2);transform:rotate(5deg) scale(.85)}80%{filter:brightness(1.1);transform:rotate(10deg) scale(.9)}to{filter:brightness(1);opacity:0;transform:rotate(0deg) scale(1.2)}}@keyframes logoFlash{0%{opacity:0;transform:scale(0)}40%{opacity:.2;transform:scale(.8)}50%{opacity:.8;transform:scale(1.5)}to{opacity:0;transform:scale(2)}}@keyframes textFade{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(20px)}}@media(max-width:48rem){.auth-logo-container{margin-bottom:1.5rem}.auth-logo-container .auth-logo-image{height:2rem}.auth-logo-container .logo-text{font-size:1.25rem}}.auth-layout{align-items:center;background-color:#f5f5f7;background-color:var(--background-color);box-sizing:border-box;display:flex;justify-content:center;min-height:100vh;padding:1.5rem;position:relative;width:100%}.auth-layout:before{background:linear-gradient(135deg,#0071e30d,#0071e300 50%);background:linear-gradient(135deg,rgba(var(--primary-color-rgb),.05) 0,rgba(var(--primary-color-rgb),0) 50%);content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:0}.auth-layout.desktop-layout{align-items:stretch;padding:0}.auth-container,.auth-layout.desktop-layout{background-color:#fff;background-color:var(--white)}.auth-container{animation:fadeIn .5s ease-out;border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .25rem 1.25rem #00000014;max-width:26.25rem;overflow:hidden;padding:2.5rem;position:relative;text-align:center;width:100%;z-index:1}@media(max-width:30rem){.auth-container{border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 .25rem .9375rem #0000000f;max-width:100%;padding:1.75rem}}.auth-header{position:relative;text-align:left}@media(max-width:30rem){.auth-header{text-align:center}}.auth-header .auth-title{color:var(--text-color)}@media(max-width:30rem){.auth-header .auth-title{font-size:1.5rem}}.auth-header .auth-subtitle{color:var(--text-secondary);font-size:.95rem;margin:0}@media(max-width:30rem){.auth-header .auth-subtitle{font-size:.9rem}}.auth-content{margin-bottom:1.5rem;text-align:left}@media(max-width:30rem){.auth-content{text-align:center}}.auth-footer{border-top:.0625rem solid #d2d2d7;border-top:.0625rem solid var(--border-color);color:var(--text-secondary);flex-direction:column;margin-top:2rem;padding-top:1.5rem}@media(min-width:23.4375rem){.auth-footer{flex-direction:row;justify-content:center}}.auth-footer .auth-footer-link,.auth-footer a{color:#0071e3;color:var(--primary-color);font-weight:500;text-decoration:none;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}@media(min-width:23.4375rem){.auth-footer .auth-footer-link,.auth-footer a{margin-left:.5rem}}.auth-footer .auth-footer-link:hover,.auth-footer a:hover{opacity:.9;text-decoration:underline}.auth-footer .auth-footer-link:focus,.auth-footer a:focus{outline:none;text-decoration:underline}.auth-footer .auth-footer-link.disabled,.auth-footer a.disabled{cursor:not-allowed;opacity:.6;pointer-events:none}@media(max-width:23.375rem){.auth-layout{padding:.75rem}.auth-container{border-radius:1rem;padding:1.5rem 1rem}.auth-header .auth-title{font-size:1.5rem}}@media(min-width:23.4375rem)and (max-width:30rem){.auth-layout{padding:1rem}.auth-container{padding:1.75rem 1.25rem}}@supports(padding:max(0px)){.auth-layout{padding-bottom:max(1.5rem,env(safe-area-inset-bottom));padding-left:max(1.5rem,env(safe-area-inset-left));padding-right:max(1.5rem,env(safe-area-inset-right))}}.desktop-layout{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;padding:0}.desktop-layout .auth-hero{background:linear-gradient(135deg,#0071e30f,#0071e308);background:linear-gradient(135deg,rgba(var(--primary-color-rgb),.06) 0,rgba(var(--primary-color-rgb),.03) 100%);display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:3.5rem;position:relative}.desktop-layout .auth-hero:before{animation:pulse 15s ease-in-out infinite alternate;background:radial-gradient(circle,#0071e30d 0,#0000 70%);background:radial-gradient(circle,rgba(var(--primary-color-rgb),.05) 0,#0000 70%);border-radius:50%;content:"";height:70%;position:absolute;right:-15%;top:-15%;width:70%;z-index:0}.desktop-layout .auth-hero:after{animation:pulse 10s ease-in-out infinite alternate-reverse;background:radial-gradient(circle,#0071e30a 0,#0000 70%);background:radial-gradient(circle,rgba(var(--primary-color-rgb),.04) 0,#0000 70%);border-radius:50%;bottom:-10%;content:"";height:50%;left:-10%;position:absolute;width:50%;z-index:0}.desktop-layout .auth-hero-decoration-circle{border-radius:50%;opacity:.4;position:absolute;z-index:0}.desktop-layout .auth-hero-decoration-circle.circle-1{animation:float 20s ease-in-out infinite alternate;border:.125rem solid #0071e31a;border:.125rem solid rgba(var(--primary-color-rgb),.1);height:12.5rem;right:5%;top:10%;width:12.5rem}.desktop-layout .auth-hero-decoration-circle.circle-2{animation:float 25s ease-in-out infinite alternate-reverse;border:.0625rem solid #0071e314;border:.0625rem solid rgba(var(--primary-color-rgb),.08);bottom:-10%;height:18.75rem;left:-5%;width:18.75rem}.desktop-layout .auth-hero-decoration-dots{animation:float 30s ease-in-out infinite alternate;background-image:radial-gradient(#0071e333 1px,#0000 0);background-image:radial-gradient(rgba(var(--primary-color-rgb),.2) 1px,#0000 1px);background-size:1.25rem 1.25rem;height:15.625rem;opacity:.3;position:absolute;right:10%;top:50%;transform:rotate(15deg);width:15.625rem;z-index:0}.desktop-layout .auth-hero-content{display:flex;flex-direction:column;gap:1.5rem;max-width:85%;position:relative;z-index:1}.desktop-layout .auth-hero-title{animation:fadeInUp .8s ease-out;color:#1d1d1f;color:var(--text-color);font-size:2.75rem;font-weight:700;line-height:1.2;margin-bottom:.75rem}.desktop-layout .auth-hero-subtitle{animation:fadeInUp .8s ease-out .2s both;color:#86868b;color:var(--text-secondary);font-size:1.25rem;line-height:1.6;margin-bottom:1.5rem}.desktop-layout .auth-hero-image{animation:fadeInUp .8s ease-out .6s both;border-radius:1rem;box-shadow:0 .625rem 1.875rem #0000001f;height:auto;margin-top:2.5rem;max-width:100%}.desktop-layout .auth-hero-features{animation:fadeInUp .8s ease-out .4s both;margin:1.5rem 0 2rem;position:relative}.desktop-layout .auth-hero-feature{align-items:flex-start;background-color:#ffffffb3;border:.0625rem solid #0071e30d;border:.0625rem solid rgba(var(--primary-color-rgb),.05);border-radius:1rem;box-shadow:0 .25rem .5rem #00000008;cursor:pointer;display:flex;margin-bottom:1rem;opacity:.75;padding:1.25rem;transform:translateY(0);transition:all .3s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-normal)}.desktop-layout .auth-hero-feature:hover{box-shadow:0 .5rem 1rem #0000000d;opacity:1;transform:translateY(-.25rem)}.desktop-layout .auth-hero-feature.active{background-color:#fff;border-color:#0071e31a;border-color:rgba(var(--primary-color-rgb),.1);box-shadow:0 .5rem 1.5rem #0071e314;box-shadow:0 .5rem 1.5rem rgba(var(--primary-color-rgb),.08);opacity:1}.desktop-layout .auth-hero-feature-icon{align-items:center;background-color:#0071e31a;background-color:rgba(var(--primary-color-rgb),.1);border-radius:.75rem;color:#0071e3;color:var(--primary-color);display:flex;flex-shrink:0;font-size:1.5rem;height:3.125rem;justify-content:center;margin-right:1rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:3.125rem}.active .desktop-layout .auth-hero-feature-icon{background-color:#0071e3;background-color:var(--primary-color);color:#fff}.desktop-layout .auth-hero-feature-content{flex:1 1}.desktop-layout .auth-hero-feature-content h3{color:#1d1d1f;color:var(--text-color);font-size:1.125rem;font-weight:600;margin:0 0 .375rem}.desktop-layout .auth-hero-feature-content p{color:#86868b;color:var(--text-secondary);font-size:.9375rem;line-height:1.5;margin:0}.desktop-layout .auth-hero-feature-indicators{display:flex;gap:.5rem;justify-content:center;margin-top:1.25rem}.desktop-layout .auth-hero-feature-indicators .indicator{background-color:#0071e333;background-color:rgba(var(--primary-color-rgb),.2);border-radius:50%;cursor:pointer;height:.5rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:.5rem}.desktop-layout .auth-hero-feature-indicators .indicator:hover{background-color:#0071e366;background-color:rgba(var(--primary-color-rgb),.4)}.desktop-layout .auth-hero-feature-indicators .indicator.active{background-color:#0071e3;background-color:var(--primary-color);transform:scale(1.2)}.desktop-layout .auth-hero-testimonial{animation:fadeInUp .8s ease-out .5s both;background-color:#fff;border:.0625rem solid #0071e314;border:.0625rem solid rgba(var(--primary-color-rgb),.08);border-radius:1rem;box-shadow:0 .375rem 1.25rem #0000000f;margin-top:1.5rem;padding:1.5rem;position:relative;z-index:1}.desktop-layout .auth-hero-testimonial:before{color:#0071e31a;color:rgba(var(--primary-color-rgb),.1);content:'"';font-family:serif;font-size:3.75rem;left:1.25rem;line-height:1;position:absolute;top:1rem;z-index:-1}.desktop-layout .auth-hero-testimonial blockquote{color:#1d1d1f;color:var(--text-color);font-size:.9375rem;font-style:italic;line-height:1.6;margin:0 0 1rem}.desktop-layout .auth-hero-testimonial-author{align-items:center;display:flex}.desktop-layout .auth-hero-testimonial-author img{border:.125rem solid #0071e333;border:.125rem solid rgba(var(--primary-color-rgb),.2);border-radius:50%;height:2.5rem;margin-right:.75rem;object-fit:cover;width:2.5rem}.desktop-layout .auth-hero-testimonial-author div{flex:1 1}.desktop-layout .auth-hero-testimonial-author-name{color:#1d1d1f;color:var(--text-color);font-size:.875rem;font-weight:600;margin:0}.desktop-layout .auth-hero-testimonial-author-role{color:#86868b;color:var(--text-secondary);font-size:.75rem;margin:0}.desktop-layout .auth-container{box-shadow:none;display:flex;flex-direction:column;justify-content:center;margin:0 auto;max-width:480px}.auth-back-button{align-items:center;background-color:#0000;border:none;border-radius:50%;color:#86868b;color:var(--text-secondary);cursor:pointer;display:flex;font-size:1.2rem;justify-content:center;left:1.5rem;padding:.5rem;position:absolute;top:1.5rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}.auth-back-button:hover{background-color:#0071e30d;background-color:rgba(var(--primary-color-rgb),.05);color:#1d1d1f;color:var(--text-color)}@media(min-width:48rem){.auth-back-button{font-size:1.4rem;left:2rem;top:2rem}}.input-field-container{margin-bottom:1.5rem;position:relative;width:100%}.input-field-container.has-error .input-field-wrapper{border-color:#ff3b30;border-color:var(--error-color);box-shadow:0 0 0 .1875rem #ff3b3026;box-shadow:0 0 0 .1875rem rgba(var(--danger-color-rgb),.15)}.input-field-container.has-error .input-field{color:#1d1d1f;color:var(--text-color)}.input-field-container.has-error .input-field-label,.input-field-container.has-error .input-icon{color:#ff3b30;color:var(--error-color)}.input-field-container.has-error .error-message{display:block}@media(max-width:30rem){.input-field-container{margin-bottom:1.25rem}}.input-field-label{color:#1d1d1f;color:var(--text-color);display:block;font-size:1rem;font-weight:500;margin-bottom:.5rem;transition:color .2s cubic-bezier(.25,.46,.45,.94);transition:color var(--transition-fast)}@media(max-width:30rem){.input-field-label{font-size:.9375rem;margin-bottom:.375rem}}.input-field-wrapper{align-items:center;background-color:#f5f5f7;background-color:var(--background-color);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:12px;border-radius:var(--border-radius-lg);display:flex;overflow:hidden;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}@media(max-width:30rem){.input-field-wrapper{border-radius:.625rem}}.input-field-wrapper:focus-within{background-color:#fff;border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 .1875rem #0071e326;box-shadow:0 0 0 .1875rem rgba(var(--primary-color-rgb),.15)}.input-field-wrapper:hover:not(:focus-within){background-color:#e8e8ed;background-color:var(--hover-color);border-color:#bbb;border-color:var(--border-color-dark)}.input-field-icon{align-items:center;color:#86868b;color:var(--text-secondary);display:flex;font-size:1.25rem;justify-content:center;padding-left:1.25rem;transition:color .2s cubic-bezier(.25,.46,.45,.94);transition:color var(--transition-fast)}@media(max-width:30rem){.input-field-icon{font-size:1.125rem;padding-left:1rem}}.input-field{-webkit-appearance:none;appearance:none;background-color:#0000;border:none;color:#1d1d1f;color:var(--text-color);flex:1 1;font-size:1rem;min-height:3.125rem;padding:1rem 1.25rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:100%}.input-field.with-icon{padding-left:.625rem}@media(max-width:30rem){.input-field{font-size:.9375rem;min-height:2.75rem;padding:.875rem 1rem}.input-field.with-icon{padding-left:.5rem}}.input-field:focus{outline:none}.input-field::placeholder{color:#86868b;color:var(--text-secondary);opacity:.7}.input-field-error{color:#ff3b30;color:var(--error-color);display:none;font-size:.875rem;line-height:1.4;margin-top:.5rem;padding-left:.5rem;transition:opacity .2s cubic-bezier(.25,.46,.45,.94);transition:opacity var(--transition-fast)}@media(max-width:30rem){.input-field-error{font-size:.75rem;margin-top:.375rem}}@supports(-webkit-touch-callout:none){.input-field{font-size:-apple-system-body}.input-field-wrapper:focus-within{box-shadow:0 0 0 .1875rem #0071e326;box-shadow:0 0 0 .1875rem rgba(var(--primary-color-rgb),.15)}}.button{align-items:center;border:none;border-radius:8px;border-radius:var(--border-radius-md);cursor:pointer;display:inline-flex;font-family:var(--font-family);font-weight:500;justify-content:center;overflow:hidden;position:relative;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}.button:focus{outline:none}.button:focus-visible{box-shadow:0 0 0 .1875rem #0071e34d;box-shadow:0 0 0 .1875rem rgba(var(--primary-color-rgb),.3)}.button:disabled{cursor:not-allowed;opacity:.6;pointer-events:none}.button.button-small{font-size:.875rem;height:2rem;padding:0 .75rem}.button.button-small .button-icon{font-size:.875rem}.button.button-medium{font-size:.9375rem;height:2.5rem;padding:0 1rem}.button.button-medium .button-icon{font-size:.9375rem}.button.button-large{font-size:1rem;height:3rem;padding:0 1.25rem}.button.button-large .button-icon{font-size:1rem}.button.button-primary{background-color:#0071e3;background-color:var(--primary-color);color:#fff;color:var(--text-on-primary)}.button.button-primary:hover:not(:disabled){background-color:#0077ed;background-color:var(--primary-color-hover);transform:translateY(-.0625rem)}.button.button-primary:active:not(:disabled){background-color:#0068d1;background-color:var(--primary-color-active);transform:translateY(0)}.button.button-secondary{background-color:#0071e31a;background-color:var(--secondary-color);color:#0071e3;color:var(--text-on-secondary)}.button.button-secondary:hover:not(:disabled){background-color:#0071e326;background-color:var(--secondary-color-dark);color:#0071e3;color:var(--text-on-secondary-dark);transform:translateY(-.0625rem)}.button.button-secondary:active:not(:disabled){background-color:#0071e333;background-color:var(--secondary-color-darker);color:#0071e3;color:var(--text-on-secondary-darker);transform:translateY(0)}.button.button-outline{background-color:#0000;border:.0625rem solid #0071e3;border:.0625rem solid var(--primary-color);color:#0071e3;color:var(--primary-color)}.button.button-outline:hover:not(:disabled){background-color:#0071e30d;background-color:rgba(var(--primary-color-rgb),.05);color:#0077ed;color:var(--primary-color-hover);transform:translateY(-.0625rem)}.button.button-outline:active:not(:disabled){background-color:#0071e31a;background-color:rgba(var(--primary-color-rgb),.1);transform:translateY(0)}.button.button-text{background-color:#0000;color:#0071e3;color:var(--primary-color);padding-left:.5rem;padding-right:.5rem}.button.button-text:hover:not(:disabled){background-color:#0071e30d;background-color:rgba(var(--primary-color-rgb),.05)}.button.button-danger{background-color:#ff3b30;background-color:var(--error-color);color:#1d1d1f;color:var(--text-color)}.button.button-danger:hover:not(:disabled){background-color:#ff2317;background-color:var(--error-color-dark);transform:translateY(-.0625rem)}.button.button-danger:active:not(:disabled){background-color:#fc0d00;background-color:var(--error-color-darker);transform:translateY(0)}.button.full-width{width:100%}.button.with-icon .button-icon{align-items:center;display:flex;justify-content:center}.button.with-icon.icon-left .button-icon{margin-right:.5rem}.button.with-icon.icon-right .button-icon{margin-left:.5rem}.button .button-content{align-items:center;display:flex;justify-content:center;position:relative;width:100%}.button.loading .button-text,.button.loading .hidden{opacity:0;visibility:hidden}.button.loading .spinner-container{align-items:center;bottom:0;display:flex;justify-content:center;left:0;pointer-events:none;position:absolute;right:0;top:0}.button.loading .loading-spinner{animation:spin .8s linear infinite;border:.125rem solid #ffffff4d;border-radius:50%;border-top:.125rem solid var(--text-on-primary);height:1.125rem;width:1.125rem}.button.loading.button-outline .loading-spinner,.button.loading.button-text .loading-spinner{border:.125rem solid #0071e34d;border-top-color:#0071e3;border:.125rem solid rgba(var(--primary-color-rgb),.3);border-top-color:var(--primary-color)}.button.loading.button-danger .loading-spinner{border:.125rem solid #ffffff4d;border-top:.125rem solid var(--text-on-error)}.button:not(:disabled):active{transform:scale(.98);transition:transform .1s ease}.otp-input-container{margin-bottom:1.5rem;width:100%}.otp-input-container.has-error .otp-digit{border-color:#ff3b30;border-color:var(--error-color);color:#ff3b30;color:var(--error-color)}.otp-inputs{display:flex;gap:.5rem;justify-content:center;width:100%}@media(max-width:20rem){.otp-inputs{gap:.25rem}}@media(min-width:20.0625rem)and (max-width:23.4375rem){.otp-inputs{gap:.375rem}}@media(min-width:23.5rem)and (max-width:30rem){.otp-inputs{gap:.5rem}}@media(min-width:30.0625rem){.otp-inputs{gap:.75rem}}.otp-digit{-webkit-appearance:none;appearance:none;background-color:#e8e8ed;background-color:var(--hover-color);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);flex:0 0 auto;font-weight:500;padding:0;text-align:center;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}@media(max-width:20rem){.otp-digit{border-radius:.5rem;font-size:1.125rem;height:2.75rem;width:2.25rem}}@media(min-width:20.0625rem)and (max-width:23.4375rem){.otp-digit{border-radius:.5rem;font-size:1.25rem;height:3rem;width:2.5rem}}@media(min-width:23.5rem)and (max-width:30rem){.otp-digit{border-radius:.625rem;font-size:1.375rem;height:3.375rem;width:2.8125rem}}@media(min-width:30.0625rem)and (max-width:47.9375rem){.otp-digit{border-radius:.75rem;font-size:1.5rem;height:3.75rem;width:3.125rem}}@media(min-width:48rem){.otp-digit{border-radius:.75rem;font-size:1.625rem;height:4rem;width:3.5rem}}.otp-digit:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 .1875rem #0071e326;box-shadow:0 0 0 .1875rem rgba(var(--primary-color-rgb),.15);outline:none}.otp-digit:disabled{cursor:not-allowed;opacity:.6}.otp-error{color:#ff3b30;color:var(--error-color);font-size:.85rem;line-height:1.4;margin-top:.75rem;text-align:center}@media(max-width:30rem){.otp-digit{touch-action:manipulation}}@supports(-webkit-touch-callout:none){.otp-digit{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}}.auth-btn{-webkit-tap-highlight-color:rgba(0,0,0,0);align-items:center;-webkit-appearance:none;appearance:none;border:none;border-radius:8px;border-radius:var(--border-radius-md);cursor:pointer;display:inline-flex;font-size:1rem;font-weight:500;justify-content:center;min-height:3rem;overflow:hidden;padding:.9375rem 1.5rem;position:relative;text-align:center;transition:all .3s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-normal)}.auth-btn:before{background-color:#ffffff1a;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .4s ease-out,height .4s ease-out;width:0;z-index:0}.auth-btn:hover:before{height:150%;width:150%}.auth-btn span{position:relative;z-index:1}@media(max-width:30rem){.auth-btn{font-size:.9375rem;min-height:2.75rem;padding:.875rem 1.25rem}}@media(min-width:48rem){.auth-btn{border-radius:12px;border-radius:var(--border-radius-lg);font-size:1.0625rem;padding:1rem 1.75rem}}.auth-btn.full-width{width:100%}.auth-btn:disabled{cursor:not-allowed;opacity:.6}.auth-btn .btn-icon{align-items:center;display:flex;font-size:1.125rem;justify-content:center}.auth-btn .btn-icon.left{margin-right:.625rem}.auth-btn .btn-icon.right{margin-left:.625rem}@media(max-width:30rem){.auth-btn .btn-icon{font-size:1rem}}.auth-btn.auth-btn-primary{background-color:#0071e3;background-color:var(--primary-color);box-shadow:0 .125rem .25rem #00000014;color:#fff;color:var(--white);font-weight:600}.auth-btn.auth-btn-primary:hover:not(:disabled){background-color:#0077ed;background-color:var(--primary-color-hover);box-shadow:0 .25rem .5rem #0071e34d;box-shadow:0 .25rem .5rem rgba(var(--primary-color-rgb),.3);transform:translateY(-.0625rem)}.auth-btn.auth-btn-primary:active:not(:disabled){background-color:#0068d1;background-color:var(--primary-color-active);box-shadow:0 .125rem .25rem #0071e333;box-shadow:0 .125rem .25rem rgba(var(--primary-color-rgb),.2);transform:translateY(0)}.auth-btn.auth-btn-primary:focus:not(:disabled){box-shadow:0 0 0 .1875rem #0071e34d;box-shadow:0 0 0 .1875rem rgba(var(--primary-color-rgb),.3);outline:none}.auth-btn.auth-btn-secondary{background-color:#f5f5f7;background-color:var(--background-color);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);color:#1d1d1f;color:var(--text-color);font-weight:500}.auth-btn.auth-btn-secondary:hover:not(:disabled){background-color:#e8e8ed;background-color:var(--hover-color);transform:translateY(-.0625rem)}.auth-btn.auth-btn-secondary:active:not(:disabled){background-color:#d2d2d7;background-color:var(--gray-300);transform:translateY(0)}.auth-btn.auth-btn-secondary:focus:not(:disabled){box-shadow:0 0 0 .1875rem #0071e326;box-shadow:0 0 0 .1875rem rgba(var(--primary-color-rgb),.15);outline:none}.auth-btn.auth-btn-outline{background-color:#0000;border:.0625rem solid #0071e3;border:.0625rem solid var(--primary-color);color:#0071e3;color:var(--primary-color);font-weight:500}.auth-btn.auth-btn-outline:hover:not(:disabled){background-color:#0071e30d;background-color:rgba(var(--primary-color-rgb),.05);transform:translateY(-.0625rem)}.auth-btn.auth-btn-outline:active:not(:disabled){background-color:#0071e31a;background-color:rgba(var(--primary-color-rgb),.1);transform:translateY(0)}.auth-btn.auth-btn-outline:focus:not(:disabled){box-shadow:0 0 0 .1875rem #0071e326;box-shadow:0 0 0 .1875rem rgba(var(--primary-color-rgb),.15);outline:none}.auth-btn.auth-btn-tertiary{background-color:#0000;border:none;box-shadow:none;color:var(--text-color-secondary);font-weight:500;padding:.75rem 1.25rem}.auth-btn.auth-btn-tertiary:hover:not(:disabled){background-color:#00000008;color:#1d1d1f;color:var(--text-color)}.auth-btn.auth-btn-tertiary:active:not(:disabled){background-color:#0000000d;transform:translateY(0)}.auth-btn.auth-btn-tertiary:focus:not(:disabled){box-shadow:none;outline:none;text-decoration:underline}.auth-btn.loading{color:#0000;pointer-events:none;position:relative}.auth-btn.loading:after{animation:button-loading-spinner .8s linear infinite;border:.125rem solid #ffffff4d;border-radius:50%;border-top-color:#fff;content:"";height:1.25rem;left:50%;margin:-.625rem 0 0 -.625rem;position:absolute;top:50%;width:1.25rem}.auth-btn.loading.auth-btn-outline:after,.auth-btn.loading.auth-btn-secondary:after{border:.125rem solid #0071e34d;border-top-color:#0071e3;border:.125rem solid rgba(var(--primary-color-rgb),.3);border-top-color:var(--primary-color)}@media(min-width:30.0625rem){.auth-btn.loading:after{height:1.5rem;margin:-.75rem 0 0 -.75rem;width:1.5rem}}.auth-btn+.auth-btn{margin-top:.75rem}@media(min-width:30.0625rem){.auth-btn+.auth-btn{margin-top:1rem}}@supports(-webkit-touch-callout:none){.auth-btn:active:not(:disabled){transform:translateY(.0625rem)}}.referral-code-container{margin-bottom:1.5rem;margin-top:1rem;width:100%}.referral-header{margin-bottom:1.5rem;text-align:center}.referral-header .referral-title{color:#1d1d1f;color:var(--text-color);font-size:1.5rem;font-weight:600;margin-bottom:.5rem}@media(max-width:30rem){.referral-header .referral-title{font-size:1.25rem}}.referral-header .referral-subtitle{color:var(--text-color-secondary);font-size:1rem;line-height:1.4}@media(max-width:30rem){.referral-header .referral-subtitle{font-size:.875rem}}.referral-input{letter-spacing:.125rem;margin-bottom:1.5rem;text-align:center}@media(max-width:23.375rem){.referral-input{font-size:1.1rem;font-weight:500;margin-bottom:1.25rem;padding:.8rem}}@media(min-width:23.4375rem)and (max-width:30rem){.referral-input{font-size:1.2rem;font-weight:500;margin-bottom:1.25rem}}@media(min-width:30.0625rem){.referral-input{font-size:1.25rem;font-weight:600;margin-bottom:1.5rem}}.referral-input::placeholder{font-weight:400;letter-spacing:normal}@media(max-width:23.375rem){.referral-input::placeholder{font-size:.9rem}}@media(min-width:23.4375rem){.referral-input::placeholder{font-size:1rem}}.referral-input.error{border-color:#ff3b30;border-color:var(--error-color);box-shadow:0 0 0 .1875rem #ff3b3026;box-shadow:0 0 0 .1875rem rgba(var(--danger-color-rgb),.15)}@media(max-width:30rem){.error-message{font-size:.85rem;margin-bottom:1.25rem;margin-top:-.75rem}}@media(min-width:30.0625rem){.error-message{font-size:.9rem;margin-bottom:1.5rem;margin-top:-1rem}}@media(max-width:30rem){.referral-code-container{padding:0 .5rem}}@media(min-width:30.0625rem)and (max-width:47.9375rem){.referral-code-container{margin-left:auto;margin-right:auto;max-width:22.5rem}}@media(min-width:48rem){.referral-code-container{margin-left:auto;margin-right:auto;max-width:25rem}}.referral-buttons{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem}@media(min-width:30.0625rem){.referral-buttons{margin-top:1rem}}.referral-buttons .auth-btn{margin-bottom:0}@supports(-webkit-touch-callout:none){.referral-input{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}}.create-profile-container{align-items:center;display:flex;flex-direction:column;width:100%}@media(max-width:23.375rem){.create-profile-container{padding:.5rem 0 1.5rem}}@media(min-width:23.4375rem)and (max-width:30rem){.create-profile-container{padding:.75rem 0 1.75rem}}@media(min-width:30.0625rem){.create-profile-container{padding:1rem 0 2rem}}@media(max-width:30rem){.profile-photo-container{margin-bottom:1.5rem}}@media(min-width:30.0625rem){.profile-photo-container{margin-bottom:2rem}}.profile-photo{align-items:center;background-color:#e8e8ed;background-color:var(--hover-color);background-position:50%;background-size:cover;border-radius:50%;cursor:pointer;display:flex;justify-content:center;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}@media(max-width:23.375rem){.profile-photo{height:6.25rem;width:6.25rem}}@media(min-width:23.4375rem)and (max-width:30rem){.profile-photo{height:6.875rem;width:6.875rem}}@media(min-width:30.0625rem){.profile-photo{height:7.5rem;width:7.5rem}}.profile-photo:hover{opacity:.9}.profile-photo .profile-placeholder-icon{color:#86868b;color:var(--text-secondary)}@media(max-width:23.375rem){.profile-photo .profile-placeholder-icon{font-size:2.5rem}}@media(min-width:23.4375rem){.profile-photo .profile-placeholder-icon{font-size:3rem}}.profile-photo .camera-button{align-items:center;background-color:#0071e3;background-color:var(--primary-color);border:.1875rem solid #f5f5f7;border:.1875rem solid var(--background-color);border-radius:50%;bottom:0;color:#fff;color:var(--white);display:flex;justify-content:center;position:absolute;right:0}@media(max-width:23.375rem){.profile-photo .camera-button{border-width:.125rem;font-size:.8rem;height:2rem;width:2rem}}@media(min-width:23.4375rem)and (max-width:30rem){.profile-photo .camera-button{border-width:.125rem;font-size:.85rem;height:2.125rem;width:2.125rem}}@media(min-width:30.0625rem){.profile-photo .camera-button{border-width:.1875rem;font-size:.9rem;height:2.25rem;width:2.25rem}}.profile-photo .camera-button:hover{background-color:#0077ed;background-color:var(--primary-color-hover)}.photo-hint{color:#86868b;color:var(--text-secondary);margin-top:.5rem}@media(max-width:30rem){.photo-hint{font-size:.85rem}}@media(min-width:30.0625rem){.photo-hint{font-size:.9rem}}@media(max-width:30rem){.form-group{margin-bottom:1.25rem}}@media(min-width:30.0625rem){.form-group{margin-bottom:1.5rem}}.error-message{line-height:1.4;text-align:center;width:100%}@media(max-width:30rem){.error-message{font-size:.85rem;margin-bottom:1.25rem;margin-top:-.4rem}}@media(min-width:30.0625rem){.error-message{font-size:.9rem;margin-bottom:1.5rem;margin-top:-.5rem}}@media(max-width:30rem){.create-profile-container{padding:0 .5rem}}@media(min-width:30.0625rem)and (max-width:47.9375rem){.create-profile-container{margin-left:auto;margin-right:auto;max-width:22.5rem}}@media(min-width:48rem){.create-profile-container{margin-left:auto;margin-right:auto;max-width:25rem}}.profile-buttons{display:flex;gap:.75rem;width:100%}@media(min-width:481px){.profile-buttons{margin-top:.5rem}}.profile-buttons .auth-btn{margin-bottom:0}@supports(-webkit-touch-callout:none){.camera-button,.profile-photo{-webkit-tap-highlight-color:rgba(0,0,0,0)}}.select-field-container{margin-bottom:1.5rem;position:relative;width:100%}.select-field-container.has-error .select-field-wrapper{border-color:#ff3b30;border-color:var(--error-color);box-shadow:0 0 0 .1875rem #ff3b3026;box-shadow:0 0 0 .1875rem rgba(var(--danger-color-rgb),.15)}.select-field-container.has-error .select-field{color:#1d1d1f;color:var(--text-color)}.select-field-container.has-error .select-field-label,.select-field-container.has-error .select-icon{color:#ff3b30;color:var(--error-color)}.select-field-container.has-error .error-message{display:block}@media(max-width:30rem){.select-field-container{margin-bottom:1.25rem}}.select-field-label{color:#1d1d1f;color:var(--text-color);display:block;font-size:1rem;font-weight:500;font-weight:var(--font-weight-medium);margin-bottom:.5rem;transition:color .2s cubic-bezier(.25,.46,.45,.94);transition:color var(--transition-fast)}@media(max-width:30rem){.select-field-label{font-size:.9375rem;margin-bottom:.375rem}}.select-field-wrapper{align-items:center;background-color:#f5f5f7;background-color:var(--background-color);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:12px;border-radius:var(--border-radius-lg);display:flex;overflow:hidden;position:relative;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}@media(max-width:30rem){.select-field-wrapper{border-radius:.625rem}}.select-field-wrapper:focus-within{background-color:#fff;border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 .1875rem #0071e326;box-shadow:0 0 0 .1875rem rgba(var(--primary-color-rgb),.15)}.select-field-wrapper:hover:not(:focus-within){background-color:#e8e8ed;background-color:var(--hover-color);border-color:#bbb;border-color:var(--border-color-dark)}.select-field-wrapper:after{border-bottom:.125rem solid #86868b;border-bottom:.125rem solid var(--text-secondary);border-right:.125rem solid #86868b;border-right:.125rem solid var(--text-secondary);content:"";height:.75rem;pointer-events:none;position:absolute;right:1.25rem;top:50%;transform:translateY(-50%);transform:translateY(-75%) rotate(45deg);transition:border-color .2s cubic-bezier(.25,.46,.45,.94);transition:border-color var(--transition-fast);width:.75rem}.select-field-wrapper:focus-within:after{border-color:#0071e3;border-color:var(--primary-color)}.select-field-icon{align-items:center;color:#86868b;color:var(--text-secondary);display:flex;font-size:1.25rem;justify-content:center;padding-left:1.25rem;transition:color .2s cubic-bezier(.25,.46,.45,.94);transition:color var(--transition-fast)}@media(max-width:30rem){.select-field-icon{font-size:1.125rem;padding-left:1rem}}.select-field{-webkit-appearance:none;appearance:none;background-color:#0000;border:none;color:#1d1d1f;color:var(--text-color);cursor:pointer;flex:1 1;font-size:1rem;padding:1rem 2.5rem 1rem 1.25rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:100%}.select-field:focus{outline:none}.select-field:disabled{cursor:not-allowed;opacity:.7}.select-field.with-icon{padding-left:.5rem}@media(max-width:30rem){.select-field{font-size:.9375rem;padding:.875rem 2.25rem .875rem 1rem}}.select-field-error{color:#ff3b30;color:var(--error-color);font-size:.875rem;font-weight:500;font-weight:var(--font-weight-medium);margin-top:.5rem}@media(max-width:30rem){.select-field-error{font-size:.8125rem;margin-top:.375rem}}.business-details-container{margin:0 auto;max-width:31.25rem;padding:1.5rem;padding:var(--spacing-xl);width:100%}.business-details-container .business-header{margin-bottom:1.5rem;margin-bottom:var(--spacing-xl);text-align:center}.business-details-container .business-title{font-size:1.5rem;font-weight:600;font-weight:var(--font-weight-semibold);margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.business-details-container .business-subtitle{color:#86868b;color:var(--text-secondary);font-size:1rem}.business-details-container .form-group{width:100%}@media(max-width:30rem){.business-details-container .form-group{margin-bottom:1.25rem}}@media(min-width:30.0625rem){.business-details-container .form-group{margin-bottom:1.5rem}}.business-details-container .form-label{display:block;font-size:.875rem;font-weight:500;font-weight:var(--font-weight-medium);margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.business-details-container .photography-types-grid{grid-gap:.625rem;display:grid;gap:.625rem;grid-template-columns:repeat(3,1fr)}@media(max-width:30rem){.business-details-container .photography-types-grid{grid-template-columns:repeat(2,1fr)}}.business-details-container .photography-type-item{align-items:center;border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:.75rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}.business-details-container .photography-type-item.selected{background-color:#0071e31a;background-color:var(--active-color);border-color:#0071e3;border-color:var(--primary-color)}.business-details-container .photography-type-item.selected .photography-type-icon{color:#0071e3;color:var(--primary-color)}.business-details-container .photography-type-item:hover{border-color:#0071e3;border-color:var(--primary-color)}.business-details-container .photography-type-item .photography-type-icon{color:#86868b;color:var(--text-secondary);font-size:1.125rem;margin-bottom:.375rem}.business-details-container .photography-type-item span{font-size:.875rem;font-weight:500;font-weight:var(--font-weight-medium)}.business-details-container .error-message{color:#ff3b30;color:var(--danger-color);font-size:.875rem;margin:.5rem 0 1rem;margin:var(--spacing-sm) 0 var(--spacing-md);text-align:center}.business-details-container .business-buttons{display:flex;gap:.75rem;margin-top:1.5rem;margin-top:var(--spacing-xl)}@media(max-width:30rem){.business-details-container{padding:1rem;padding:var(--spacing-md)}.business-details-container .business-title{font-size:1.25rem}.business-details-container .business-subtitle{font-size:.875rem}}.auth-form{animation:fadeIn .5s ease-out;text-align:left;width:100%}@media(max-width:30rem){.auth-form .otp-form,.auth-form .phone-form{display:flex;flex-direction:column}.auth-form .mobile-terms{font-size:.8rem;line-height:1.4;margin-top:1rem;text-align:center}}.form-group{position:relative}.form-group:last-of-type{margin-bottom:2rem}.form-group label{display:block;font-size:.9375rem;margin-bottom:.5rem;transition:color .2s cubic-bezier(.25,.46,.45,.94);transition:color var(--transition-fast)}.form-group.has-error label{color:#ff3b30;color:var(--error-color)}.phone-input-container{align-items:center;background-color:#e8e8ed;background-color:var(--hover-color);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);display:flex;overflow:hidden;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}.phone-input-container:focus-within{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 .1875rem #0071e326;box-shadow:0 0 0 .1875rem rgba(var(--primary-color-rgb),.15)}.phone-input-container.has-error{border-color:#ff3b30;border-color:var(--error-color);box-shadow:0 0 0 .1875rem #ff3b3026;box-shadow:0 0 0 .1875rem rgba(var(--danger-color-rgb),.15)}.phone-input-container .country-code{background-color:#e8e8ed;background-color:var(--hover-color);border-right:.0625rem solid #d2d2d7;border-right:.0625rem solid var(--border-color);color:#1d1d1f;color:var(--text-color);font-weight:500;padding:.9rem .75rem;transition:background-color .2s cubic-bezier(.25,.46,.45,.94);transition:background-color var(--transition-fast)}.phone-input-container .phone-input{background:#0000;border:none;color:#1d1d1f;color:var(--text-color);flex:1 1;font-size:1rem;padding:.9rem 1rem}.phone-input-container .phone-input::placeholder{color:#86868b;color:var(--text-secondary);opacity:.8}.phone-input-container .phone-input:focus{outline:none}.form-input{-webkit-appearance:none;appearance:none;background-color:#e8e8ed;background-color:var(--hover-color);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);color:#1d1d1f;color:var(--text-color);font-size:1rem;padding:.9rem 1rem}.form-input:focus{box-shadow:0 0 0 .1875rem #0071e326;box-shadow:0 0 0 .1875rem rgba(var(--primary-color-rgb),.15)}.form-input::placeholder{color:#86868b;color:var(--text-secondary);opacity:.8}.form-input.error:focus{box-shadow:0 0 0 .1875rem #ff3b3026;box-shadow:0 0 0 .1875rem rgba(var(--danger-color-rgb),.15)}.form-input:disabled{background-color:#f5f5f7;background-color:var(--gray-100);opacity:.7}.form-options{align-items:center;display:flex;font-size:.9rem;justify-content:space-between;margin:1.5rem 0}@media(max-width:30rem){.form-options{align-items:flex-start;flex-direction:column;gap:1rem}}.checkbox-container{align-items:center;cursor:pointer;display:flex;transition:opacity .2s cubic-bezier(.25,.46,.45,.94);transition:opacity var(--transition-fast);-webkit-user-select:none;user-select:none}.checkbox-container:hover{opacity:.9}.checkbox-container .checkbox-input{cursor:pointer;height:0;opacity:0;position:absolute;width:0}.checkbox-container .checkbox-input:checked~.checkbox-custom{background-color:#0071e3;background-color:var(--primary-color);border-color:#0071e3;border-color:var(--primary-color)}.checkbox-container .checkbox-input:checked~.checkbox-custom:after{animation:checkmark .2s ease-in-out forwards;display:block}.checkbox-container .checkbox-input:focus~.checkbox-custom{box-shadow:0 0 0 .1875rem #0071e326;box-shadow:0 0 0 .1875rem rgba(var(--primary-color-rgb),.15)}.checkbox-container .checkbox-custom{background-color:#e8e8ed;background-color:var(--hover-color);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:3px;border-radius:calc(var(--border-radius-sm)/2);height:1.125rem;margin-right:.5rem;position:relative;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:1.125rem}.checkbox-container .checkbox-custom:after{border:solid #fff;border-width:0 .125rem .125rem 0;content:"";display:none;height:.5rem;left:.375rem;position:absolute;top:.125rem;transform:rotate(45deg);width:.25rem}.checkbox-container .checkbox-label{color:#1d1d1f;color:var(--text-color);font-size:.875rem;line-height:1.4}.checkbox-container .terms-link{color:#0071e3;font-weight:500;text-decoration:none;transition:all .2s ease}.checkbox-container .terms-link:hover{opacity:.9;text-decoration:underline}.checkbox-container .terms-link:focus{outline:none;text-decoration:underline}@keyframes checkmark{0%{opacity:0;transform:scale(.5) rotate(45deg)}to{opacity:1;transform:scale(1) rotate(45deg)}}.forgot-password{color:#0071e3;display:inline-block;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s ease}.forgot-password:hover{opacity:.9;text-decoration:underline}.forgot-password:focus{border-radius:6px;box-shadow:0 0 0 2px #0071e333;outline:none;text-decoration:underline}@media(max-width:480px){.forgot-password{align-self:center;margin-top:.5rem}}.auth-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:1rem;font-weight:500;justify-content:center;margin-bottom:1rem;overflow:hidden;padding:.9rem;position:relative;transition:all .2s ease;width:100%}.auth-button:before{background-color:#ffffff1a;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .4s ease-out,height .4s ease-out;width:0;z-index:0}.auth-button:hover:before{height:150%;width:150%}.auth-button.primary{background-color:#0071e3;box-shadow:0 2px 4px #0071e333;color:#fff}.auth-button.primary:hover:not(:disabled){background-color:#0077ed;box-shadow:0 4px 8px #0071e34d;transform:translateY(-1px)}.auth-button.primary:active:not(:disabled){background-color:#0068d1;box-shadow:0 2px 4px #0071e333;transform:translateY(0)}.auth-button.primary:focus:not(:disabled){box-shadow:0 0 0 3px #0071e34d,0 2px 4px #0071e333;outline:none}.auth-button.primary.disabled,.auth-button.primary:disabled{background-color:#0071e380;box-shadow:none;cursor:not-allowed;opacity:.7}.auth-button.secondary{background-color:#0000;border:1px solid #d2d2d7;color:#1d1d1f}.auth-button.secondary:hover:not(:disabled){background-color:#e8e8ed;transform:translateY(-1px)}.auth-button.secondary:active:not(:disabled){background-color:#0071e31a;transform:translateY(0)}.auth-button.secondary:focus:not(:disabled){box-shadow:0 0 0 3px #0071e326;outline:none}.auth-button.secondary.disabled,.auth-button.secondary:disabled{cursor:not-allowed;opacity:.5}.auth-button.loading{color:#0000;pointer-events:none;position:relative}.auth-button.loading:after{animation:button-loading-spinner .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;content:"";height:20px;left:50%;margin:-10px 0 0 -10px;position:absolute;top:50%;width:20px}@keyframes button-loading-spinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.divider{align-items:center;color:#86868b;color:var(--text-secondary);display:flex;font-size:.8rem;letter-spacing:.5px;margin:1.5rem 0;text-align:center;text-transform:uppercase}.divider:after,.divider:before{border-bottom:1px solid #d2d2d7;border-bottom:1px solid var(--border-color);content:"";flex:1 1}.divider span{padding:0 1rem}.otp-container{animation:fadeIn .5s ease-out;margin-bottom:2rem;text-align:center}.otp-container .otp-instructions{color:#86868b;font-size:.95rem;line-height:1.5;margin-bottom:1.5rem}.otp-container .otp-inputs{display:flex;gap:.75rem;justify-content:center;margin:2rem 0}@media(max-width:480px){.otp-container .otp-inputs{gap:.5rem}}.otp-container .otp-inputs .otp-input{-webkit-appearance:none;appearance:none;background-color:#e8e8ed;border:1px solid #d2d2d7;border-radius:8px;font-size:1.5rem;font-weight:500;height:3.5rem;text-align:center;transition:all .2s ease;width:3rem}@media(max-width:480px){.otp-container .otp-inputs .otp-input{font-size:1.25rem;height:3rem;width:2.5rem}}@media(max-width:360px){.otp-container .otp-inputs .otp-input{font-size:1.125rem;height:2.75rem;width:2.25rem}}.otp-container .otp-inputs .otp-input:focus{border-color:#0071e3;box-shadow:0 0 0 3px #0071e326;outline:none;transform:scale(1.05)}.otp-container .otp-inputs .otp-input.error{animation:shake .5s cubic-bezier(.36,.07,.19,.97) both;border-color:#ff3b30}.otp-container .otp-inputs .otp-input.error:focus{box-shadow:0 0 0 3px #ff3b3026}.otp-container .otp-inputs .otp-input:disabled{cursor:not-allowed;opacity:.7}@keyframes shake{10%,90%{transform:translateX(-1px)}20%,80%{transform:translateX(2px)}30%,50%,70%{transform:translateX(-3px)}40%,60%{transform:translateX(3px)}}.auth-header{animation:fadeIn .5s ease-out;margin-bottom:2rem}.auth-header .auth-title{color:#1d1d1f;font-size:1.75rem;font-weight:600;margin-bottom:.5rem}@media(max-width:480px){.auth-header .auth-title{font-size:1.5rem;text-align:center}}.auth-header .auth-subtitle{color:#86868b;font-size:1rem;line-height:1.5}@media(max-width:480px){.auth-header .auth-subtitle{font-size:.9rem;text-align:center}}.auth-footer{align-items:center;color:#86868b;display:flex;font-size:.9rem;gap:.5rem;justify-content:center;margin:1.5rem 0}.auth-footer .auth-footer-link{color:#0071e3;font-weight:500;text-decoration:none;transition:all .2s ease}.auth-footer .auth-footer-link:hover{opacity:.9;text-decoration:underline}.auth-footer .auth-footer-link:focus{outline:none;text-decoration:underline}.auth-footer .auth-footer-link.disabled{cursor:not-allowed;opacity:.6;pointer-events:none}.terms-text{line-height:1.5}@media(max-width:480px){.terms-text{font-size:.75rem;padding:0 1rem}}.auth-buttons{display:flex;gap:1rem;margin-top:2rem}.auth-buttons .auth-button{flex:1 1;margin-bottom:0}@media(max-width:480px){.auth-buttons.mobile-buttons{flex-direction:column;gap:.75rem}}.social-buttons{animation:fadeIn .5s ease-out;flex-direction:column;gap:.8rem;margin-top:1.5rem}.social-button{align-items:center;background-color:#fff;border:1px solid #d2d2d7;border-radius:8px;color:#1d1d1f;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;justify-content:center;overflow:hidden;padding:.9rem;position:relative;transition:all .2s ease;width:100%}.social-button:before{background-color:#0000000d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .4s ease-out,height .4s ease-out;width:0;z-index:0}.social-button:hover:before{height:150%;width:150%}.social-button .social-icon{font-size:1.2rem;margin-right:10px;position:relative;z-index:1}.social-button span{position:relative;z-index:1}.social-button:hover{background-color:#e8e8ed;transform:translateY(-1px)}.social-button:active{background-color:#0071e31a;transform:translateY(0)}.social-button:focus{box-shadow:0 0 0 3px #0071e326;outline:none}.social-button.apple .social-icon{color:#1d1d1f}.social-button.google .social-icon{color:#4285f4}.social-button.facebook .social-icon{color:#1877f2}.error-message{animation:fadeIn .3s ease-out;background-color:#ff3b301a;border-left:3px solid #ff3b30;border-radius:8px;margin-bottom:1rem;padding:.75rem}@media(max-width:480px){.error-message{font-size:.8rem;text-align:center}.form-options{align-items:flex-start;flex-direction:column;gap:1rem}.forgot-password{margin-top:.5rem}.otp-instructions{font-size:.85rem;margin-bottom:1rem}.auth-buttons.mobile-buttons{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem}.auth-buttons.mobile-buttons .auth-btn{margin-bottom:0}.auth-buttons.mobile-buttons .auth-btn[variant=secondary]{margin-top:.5rem;padding:.75rem}.error-message{font-size:.85rem;margin-bottom:1rem;text-align:center}}.phone-input-container{animation:fadeIn .5s ease-out;margin-bottom:2rem}.phone-input-wrapper{align-items:center;display:flex;gap:.5rem;width:100%}.country-code-select-container{align-items:center;display:flex;height:3rem;width:6.875rem}@media(max-width:30rem){.country-code-select-container{height:2.75rem;width:5.625rem}}.static-country-code{align-items:center;background-color:#e8e8ed;background-color:var(--hover-color);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);color:#1d1d1f;color:var(--text-color);display:flex;font-size:1rem;font-weight:500;height:100%;justify-content:center;padding:.9rem .8rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:100%}.static-country-code:focus-within{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 .1875rem #0071e326;box-shadow:0 0 0 .1875rem rgba(var(--primary-color-rgb),.15)}@media(min-width:48rem){.static-country-code{border-radius:12px;border-radius:var(--border-radius-lg);font-size:1.1rem;padding:1rem .8rem}}@media(max-width:30rem){.static-country-code{font-size:.9rem;padding:.8rem .6rem}}.phone-field-container{flex:1 1}.phone-field-container .input-field-container{margin-bottom:0;position:relative}.phone-field-container .input-field-container.has-error .input-icon{color:#ff3b30;color:var(--error-color)}.phone-field-container .hidden-label{display:none}.phone-field-container .input-field{-webkit-appearance:none;appearance:none;background-color:#e8e8ed;background-color:var(--hover-color);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);color:#1d1d1f;color:var(--text-color);font-size:1rem;padding:.9rem 1rem .9rem 2.5rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:100%}.phone-field-container .input-field:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 .1875rem #0071e326;box-shadow:0 0 0 .1875rem rgba(var(--primary-color-rgb),.15);outline:none}.phone-field-container .input-field::placeholder{color:#86868b;color:var(--text-secondary);opacity:.8}.phone-field-container .input-field.error{border-color:#ff3b30;border-color:var(--error-color)}.phone-field-container .input-field.error:focus{box-shadow:0 0 0 .1875rem #ff3b3026;box-shadow:0 0 0 .1875rem rgba(var(--danger-color-rgb),.15)}@media(min-width:48rem){.phone-field-container .input-field{border-radius:12px;border-radius:var(--border-radius-lg);font-size:1.1rem;padding:1rem 1rem 1rem 2.5rem}}@media(max-width:30rem){.phone-field-container .input-field{font-size:.9rem;padding:.8rem 1rem .8rem 2.5rem}}.phone-field-container .input-icon{color:#86868b;color:var(--text-secondary);font-size:1rem;left:1rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);transition:color .2s cubic-bezier(.25,.46,.45,.94);transition:color var(--transition-fast)}@media(max-width:30rem){.phone-field-container .input-icon{font-size:.9rem}}.country-code-select{-webkit-appearance:none;appearance:none;background-color:#e8e8ed;background-color:var(--hover-color);background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6 9l6 6 6-6"/></svg>');background-position:right .5rem center;background-repeat:no-repeat;border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:.625rem;color:#1d1d1f;color:var(--text-color);font-size:1rem;height:100%;padding:.9rem .5rem;width:100%}.country-code-select:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 .1875rem #0071e326;box-shadow:0 0 0 .1875rem rgba(var(--primary-color-rgb),.15);outline:none}@media(min-width:48rem){.country-code-select{border-radius:.75rem;font-size:1.1rem;padding:1rem .6rem}.phone-input-group{align-items:flex-start;display:flex;gap:1rem}.phone-input-group .country-code-wrapper{margin-bottom:0;width:30%}.phone-input-group .input-field-container{flex:1 1}}.social-auth-btn{border-radius:50%!important;height:3rem!important;padding:0!important;width:3rem!important}.social-auth-btn .btn-icon{font-size:1.2rem;margin:0!important}@media(min-width:48rem){.social-auth-btn{height:3.5rem!important;width:3.5rem!important}.social-auth-btn .btn-icon{font-size:1.4rem}}.social-buttons{display:flex;gap:1rem;justify-content:center;margin:1.5rem 0}.mt-3{margin-top:1rem}.terms-text{font-size:.8rem;margin-top:1.5rem}.otp-instructions,.terms-text{color:#86868b;color:var(--text-secondary)}.otp-instructions{font-size:.95rem;margin-bottom:1.5rem;text-align:center}.button-group{display:flex;gap:1rem;margin-top:1.5rem}.button-group .auth-btn{flex:1 1}@media(min-width:768px){.user-type-selection{flex-direction:row}}.user-type-selection .user-type-option{align-items:center;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:24px 16px;text-align:center;transition:all .2s ease}.user-type-selection .user-type-option:hover{background-color:#4f46e50d;border-color:#4f46e5}.user-type-selection .user-type-option.selected{background-color:#4f46e51a;border-color:#4f46e5}.user-type-selection .user-type-option .user-type-icon{color:#4f46e5;font-size:32px;margin-bottom:16px}.user-type-selection .user-type-option h3{font-size:18px;font-weight:600;margin:0 0 8px}.user-type-selection .user-type-option p{color:#64748b;font-size:14px;margin:0}.dashboard{background-color:#fff;color:#333;display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;height:100vh;position:relative;width:100%}.dashboard .sidebar{background:linear-gradient(135deg,#0071e30d,#0071e305);background:linear-gradient(135deg,rgba(var(--primary-color-rgb),.05) 0,rgba(var(--primary-color-rgb),.02) 100%);border-right:1px solid #e8e8ed;box-shadow:0 1px 3px 0 #0000000d,0 1px 2px 0 #0000001a;display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:16rem;z-index:10}.dashboard .sidebar:before{background:linear-gradient(180deg,#fffc,#fff6);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}.dashboard .sidebar>*{position:relative;z-index:2}.dashboard .sidebar .sidebar-header{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe6;border-bottom:1px solid #e8e8ed;display:flex;justify-content:space-between;min-height:5rem;padding:1.5rem}.dashboard .sidebar .sidebar-header .logo-container{align-items:center;display:flex;gap:.75rem;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.dashboard .sidebar .sidebar-header .logo-container .logo-text{color:#0071e3;color:var(--primary-color);font-size:1.5rem;font-weight:600;letter-spacing:-.02em;transition:all .3s ease}.dashboard .sidebar .sidebar-header .logo-container .logo-text.photographer-logo{color:#0d47a1;font-size:1.3rem;font-style:italic;font-weight:600}.dashboard .sidebar .sidebar-header .logo-icon{align-items:center;background:linear-gradient(135deg,#0071e3,#0077ed);background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-color-hover) 100%);border-radius:.5rem;box-shadow:0 2px 8px rgba(#0071e3,.3);box-shadow:0 2px 8px rgba(var(--primary-color),.3);color:#fff;color:var(--white);display:flex;font-size:1.125rem;font-weight:700;height:2rem;justify-content:center;width:2rem}.dashboard .sidebar .sidebar-header h2{color:#333;font-size:1.25rem;font-weight:700;letter-spacing:-.025em;margin:0;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.dashboard .sidebar .sidebar-header .sidebar-toggle{align-items:center;background:#0000;border:none;border-radius:.5rem;color:#86868b;cursor:pointer;display:flex;font-size:1.25rem;height:2.5rem;justify-content:center;padding:.5rem;transition:all .2s cubic-bezier(.4,0,.2,1);width:2.5rem}.dashboard .sidebar .sidebar-header .sidebar-toggle:hover{background:#0071e314;color:#0071e3;transform:scale(1.05)}.dashboard .sidebar .sidebar-header .sidebar-toggle:focus{box-shadow:0 0 0 3px #0071e333;outline:none;transition:box-shadow .15s ease-in-out}.dashboard .sidebar .sidebar-nav{flex:1 1;overflow-x:hidden;overflow-y:auto}.dashboard .sidebar .sidebar-nav::-webkit-scrollbar{width:.25rem}.dashboard .sidebar .sidebar-nav::-webkit-scrollbar-track{background:#0000}.dashboard .sidebar .sidebar-nav::-webkit-scrollbar-thumb{background:#d2d2d7;border-radius:.25rem}.dashboard .sidebar .sidebar-nav::-webkit-scrollbar-thumb:hover{background:#bbb}.dashboard .sidebar .sidebar-nav ul{list-style:none;margin:0;padding:0}.dashboard .sidebar .sidebar-nav ul li{margin:1.2rem 1rem}.dashboard .sidebar .sidebar-nav ul li .nav-link{align-items:center;border-radius:.75rem;color:#6e6e73;display:flex;font-size:1.2rem;font-weight:500;letter-spacing:-.01em;padding:.75rem 1rem;position:relative;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1)}.dashboard .sidebar .sidebar-nav ul li .nav-link .nav-icon{font-size:1.125rem;margin-right:.75rem;min-width:1.125rem;transition:all .2s cubic-bezier(.4,0,.2,1)}.dashboard .sidebar .sidebar-nav ul li .nav-link span{transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.dashboard .sidebar .sidebar-nav ul li .nav-link:before{background:linear-gradient(135deg,#0071e3,#0077ed);border-radius:0 .125rem .125rem 0;content:"";height:0;left:-1rem;opacity:0;position:absolute;top:50%;transform:translateY(-50%);transition:height .3s cubic-bezier(.4,0,.2,1);width:.25rem}.dashboard .sidebar .sidebar-nav ul li .nav-link:hover{background:#0071e30f;color:#333;transform:translateX(.125rem)}.dashboard .sidebar .sidebar-nav ul li .nav-link:hover .nav-icon{color:#0071e3;transform:scale(1.1)}.dashboard .sidebar .sidebar-nav ul li .nav-link:focus{box-shadow:0 0 0 3px #0071e333;outline:none;transition:box-shadow .15s ease-in-out}.dashboard .sidebar .sidebar-nav ul li .nav-link.active{background:#0071e31a;box-shadow:0 2px 8px #0071e314;color:#333}.dashboard .sidebar .sidebar-nav ul li .nav-link.active .nav-icon{color:#0071e3}.dashboard .sidebar .sidebar-nav ul li .nav-link.active:before{height:1.5rem;opacity:1}.dashboard .sidebar .sidebar-footer{background:#fff9;border-top:1px solid #e8e8ed;padding:1rem}.dashboard .dashboard-content{background-color:#f5f5f7;flex:1 1;overflow-y:auto;padding:2rem}.dashboard .dashboard-content .page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.dashboard .dashboard-content .page-header h1{color:#333;font-size:2rem;font-weight:700;letter-spacing:-.025em;margin:0}.dashboard .dashboard-content .page-header .header-actions{display:flex;gap:.75rem}.dashboard .dashboard-content .content-section{background:#fff;border:1px solid #e8e8ed;border-radius:1rem;box-shadow:0 1px 3px #0000000d,0 1px 2px #0000001a;margin-bottom:2rem;padding:2rem}@media(max-width:1024px){.dashboard .sidebar:not(.sidebar-collapsed){width:15rem}}@media(max-width:768px){.dashboard .sidebar{height:100vh;left:0;position:fixed;top:0;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);width:16rem!important;z-index:50}.dashboard .sidebar.mobile-open{transform:translateX(0)}.dashboard .sidebar .sidebar-toggle{display:none}.dashboard .dashboard-content{margin-left:0!important;padding:1rem}.dashboard:before{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006;bottom:0;content:"";left:0;opacity:0;position:fixed;right:0;top:0;transition:all .3s ease;visibility:hidden;z-index:40}.dashboard.mobile-sidebar-open:before{opacity:1;visibility:visible}}@media(max-width:480px){.dashboard .dashboard-content{padding:.75rem}.dashboard .dashboard-content .page-header{margin-bottom:1.5rem}.dashboard .dashboard-content .page-header h1{font-size:1.5rem}.dashboard .dashboard-content .content-section{border-radius:.75rem;padding:1.5rem}}@keyframes slideInFromLeft{0%{opacity:0;transform:translateX(-2rem)}to{opacity:1;transform:translateX(0)}}.animate-slide-in{animation:slideInFromLeft .3s cubic-bezier(.4,0,.2,1)}.animate-fade-in-up{animation:fadeInUp .3s cubic-bezier(.4,0,.2,1)}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(.5rem);backdrop-filter:blur(.5rem);background-color:#0006;background-color:var(--overlay-background);bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:fixed;right:0;top:0;transition:opacity .3s cubic-bezier(.25,.46,.45,.94),visibility .3s cubic-bezier(.25,.46,.45,.94);transition:opacity var(--transition-normal),visibility var(--transition-normal);visibility:hidden;z-index:1000}.modal-overlay.visible{opacity:1;visibility:visible}.modal-overlay.hidden{opacity:0;visibility:hidden}.modal{background-color:#fff;background-color:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 1rem 2.5rem #00000014,0 .5rem 1rem #0000000d;box-shadow:0 1rem 2.5rem var(--shadow-medium),0 .5rem 1rem var(--shadow-light);display:flex;flex-direction:column;max-height:90vh;opacity:0;overflow:hidden;transform:translateY(1rem);transition:transform .3s cubic-bezier(.25,.46,.45,.94),opacity .3s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-normal),opacity var(--transition-normal);transition-duration:.3s;transition-duration:var(--transition-duration,.3s)}.modal.visible{opacity:1;transform:translateY(0)}.modal.hidden{opacity:0;transform:translateY(1rem)}.modal.modal-small{max-width:25rem;width:90%}.modal.modal-large,.modal.modal-medium{max-width:50rem;width:90%}.modal.modal-full{height:90vh;max-width:65rem;width:95%}.modal .modal-header{align-items:center;border-bottom:.0625rem solid #d2d2d7;border-bottom:.0625rem solid var(--border-color);display:flex;justify-content:space-between;padding:1.25rem 1.5rem;padding:var(--spacing-lg) var(--spacing-xl)}.modal .modal-header .modal-title{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;font-weight:600;margin:0}.modal .modal-header .modal-close-button{align-items:center;border-radius:50%;color:#86868b;color:var(--text-secondary);display:flex;font-size:1.5rem;height:2rem;justify-content:center;min-width:auto;padding:0;width:2rem}.modal .modal-header .modal-close-button .close-icon{font-size:2rem;line-height:.8}.modal .modal-content{flex:1 1;overflow-y:auto;padding:1.5rem;padding:var(--spacing-xl)}.modal .modal-footer{border-top:.0625rem solid #d2d2d7;border-top:.0625rem solid var(--border-color);display:flex;gap:.5rem;gap:var(--spacing-sm);justify-content:flex-end;padding:1.25rem 1.5rem;padding:var(--spacing-lg) var(--spacing-xl)}.modal:focus-visible{outline:.125rem solid #0071e3;outline:.125rem solid var(--primary-color);outline-offset:.25rem}@media(max-width:48rem){.modal.modal-large,.modal.modal-medium,.modal.modal-small{width:95%}.modal .modal-header{padding:1rem 1.25rem;padding:var(--spacing-md) var(--spacing-lg)}.modal .modal-content{padding:1.25rem;padding:var(--spacing-lg)}.modal .modal-footer{flex-wrap:wrap;padding:1rem 1.25rem;padding:var(--spacing-md) var(--spacing-lg)}}@media(max-width:30rem){.modal{max-height:95vh}.modal .modal-footer{flex-direction:column;gap:.25rem;gap:var(--spacing-xs)}.modal .modal-footer .button{width:100%}}.confirmation-modal .modal-content{padding:0}.confirmation-modal .confirmation-content{align-items:center;display:flex;flex-direction:column;max-width:100%;padding:1.25rem;padding:var(--spacing-lg);text-align:center;width:100%}.confirmation-modal .confirmation-icon{align-items:center;border-radius:50%;display:flex;height:3.75rem;justify-content:center;margin:0 auto 1rem;margin:0 auto var(--spacing-md);transition:transform var(--transition-medium);width:3.75rem}.confirmation-modal .confirmation-icon.primary{background-color:#42a1ff;background-color:var(--primary-color-light);color:#0071e3;color:var(--primary-color)}.confirmation-modal .confirmation-icon.danger{background-color:var(--error-background);color:#ff3b30;color:var(--error-color)}.confirmation-modal .confirmation-icon svg{font-size:1.5rem}.confirmation-modal .confirmation-title{color:#1d1d1f;color:var(--text-color);font-size:var(--font-size-lg);font-weight:700;font-weight:var(--font-weight-bold);margin:0 0 .5rem;margin:0 0 var(--spacing-sm) 0}.confirmation-modal .confirmation-message{color:#86868b;color:var(--text-secondary);font-size:var(--font-size-md);line-height:1.5;margin:0 0 1.25rem;margin:0 0 var(--spacing-lg) 0;width:100%}.confirmation-modal .confirmation-actions{display:flex;gap:.5rem;gap:var(--spacing-sm);justify-content:center;width:100%}.confirmation-modal .confirmation-actions .cancel-button,.confirmation-modal .confirmation-actions .confirm-button{flex:1 1;min-width:5rem}.confirmation-modal .confirmation-actions .cancel-button:focus,.confirmation-modal .confirmation-actions .confirm-button:focus{outline:2px solid var(--focus-color);outline-offset:2px}.confirmation-modal .confirmation-actions .button{transition:transform .2s cubic-bezier(.25,.46,.45,.94),box-shadow .2s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.confirmation-modal .confirmation-actions .button:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.confirmation-modal .confirmation-actions .button:active{transform:translateY(0)}.dashboard-home{margin:0 auto;max-width:75rem;padding:1.5rem;padding:var(--spacing-xl)}.dashboard-home .dashboard-skeleton .header-skeleton{margin-bottom:2rem;margin-bottom:var(--spacing-2xl)}.dashboard-home .dashboard-skeleton .header-skeleton .skeleton-header{height:2.5rem;margin-bottom:.5rem;margin-bottom:var(--spacing-sm);width:60%}.dashboard-home .dashboard-skeleton .header-skeleton .skeleton-header,.dashboard-home .dashboard-skeleton .header-skeleton .skeleton-subheader{animation:skeleton-loading 1.4s ease infinite;background-color:#e0e0e0;background-color:var(--skeleton-color);border-radius:8px;border-radius:var(--border-radius-md)}.dashboard-home .dashboard-skeleton .header-skeleton .skeleton-subheader{height:1.2rem;width:40%}.dashboard-home .dashboard-skeleton .stat-card.skeleton{align-items:center;background-color:#fff;background-color:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);display:flex;height:7rem;padding:1.25rem;padding:var(--spacing-lg)}.dashboard-home .dashboard-skeleton .stat-card.skeleton .skeleton-icon{animation:skeleton-loading 1.4s ease infinite;background-color:#e0e0e0;background-color:var(--skeleton-color);border-radius:50%;height:3rem;margin-right:1rem;margin-right:var(--spacing-md);width:3rem}.dashboard-home .dashboard-skeleton .stat-card.skeleton .skeleton-content{flex:1 1}.dashboard-home .dashboard-skeleton .stat-card.skeleton .skeleton-content .skeleton-value{animation:skeleton-loading 1.4s ease infinite;background-color:#e0e0e0;background-color:var(--skeleton-color);border-radius:6px;border-radius:var(--border-radius-sm);height:1.8rem;margin-bottom:.25rem;margin-bottom:var(--spacing-xs);width:60%}.dashboard-home .dashboard-skeleton .stat-card.skeleton .skeleton-content .skeleton-title{animation:skeleton-loading 1.4s ease infinite;background-color:#e0e0e0;background-color:var(--skeleton-color);border-radius:6px;border-radius:var(--border-radius-sm);height:1rem;width:40%}.dashboard-home .dashboard-skeleton .section.skeleton{background-color:#fff;background-color:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);margin-bottom:1.5rem;margin-bottom:var(--spacing-xl);padding:1.5rem;padding:var(--spacing-xl)}.dashboard-home .dashboard-skeleton .section.skeleton .skeleton-section-header{height:1.5rem;margin-bottom:1.25rem;margin-bottom:var(--spacing-lg);width:30%}.dashboard-home .dashboard-skeleton .section.skeleton .skeleton-section-content,.dashboard-home .dashboard-skeleton .section.skeleton .skeleton-section-header{animation:skeleton-loading 1.4s ease infinite;background-color:#e0e0e0;background-color:var(--skeleton-color);border-radius:8px;border-radius:var(--border-radius-md)}.dashboard-home .dashboard-skeleton .section.skeleton .skeleton-section-content{height:12rem}.dashboard-home .dashboard-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:2rem;margin-bottom:var(--spacing-2xl)}@media(max-width:48rem){.dashboard-home .dashboard-header{flex-direction:column;gap:1rem;gap:var(--spacing-md)}}.dashboard-home .dashboard-header .welcome-section h1{color:#1d1d1f;color:var(--text-color);font-size:1.8rem;font-weight:600;font-weight:var(--font-weight-semibold);letter-spacing:-.02em;letter-spacing:var(--letter-spacing-tight);margin-bottom:.25rem;margin-bottom:var(--spacing-xs)}.dashboard-home .dashboard-header .welcome-section .subtitle{color:#86868b;color:var(--text-secondary);font-size:1rem;letter-spacing:0;letter-spacing:var(--letter-spacing-normal)}.dashboard-home .dashboard-header .header-actions{display:flex;gap:1rem;gap:var(--spacing-md)}.dashboard-home .stats-grid{grid-gap:1.5rem;grid-gap:var(--spacing-xl);display:grid;gap:1.5rem;gap:var(--spacing-xl);grid-template-columns:repeat(auto-fill,minmax(13.75rem,1fr));margin-bottom:2rem;margin-bottom:var(--spacing-2xl)}.dashboard-home .stats-grid .stat-card{align-items:center;background-color:#fff;background-color:var(--card-background);border:1px solid #e8e8ed;border:1px solid var(--gray-200);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 2px 4px #0000000d;box-shadow:var(--shadow-sm-value);cursor:pointer;display:flex;overflow:hidden;padding:1.5rem;padding:var(--spacing-xl);transition:transform .3s cubic-bezier(.25,.46,.45,.94),box-shadow .3s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.dashboard-home .stats-grid .stat-card:hover{box-shadow:0 8px 16px #0000001f;box-shadow:var(--shadow-lg-value);transform:translateY(-4px)}.dashboard-home .stats-grid .stat-card .stat-icon{align-items:center;border-radius:50%;display:flex;font-size:1.3rem;height:3.125rem;justify-content:center;margin-right:1rem;margin-right:var(--spacing-md);transition:transform .2s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-fast);width:3.125rem}.dashboard-home .stats-grid .stat-card .stat-content h3{color:#1d1d1f;color:var(--text-color);font-size:1.8rem;font-weight:600;font-weight:var(--font-weight-semibold);letter-spacing:-.02em;letter-spacing:var(--letter-spacing-tight);margin:0}.dashboard-home .stats-grid .stat-card .stat-content p{color:#86868b;color:var(--text-secondary);font-size:.9rem;margin:0}.dashboard-home .stats-grid .stat-card:active{transform:scale(.98)}.dashboard-home .stats-grid .stat-card:active .stat-icon{transform:scale(.9)}.dashboard-home .section-divider{border-bottom:1px solid #e8e8ed;border-bottom:1px solid var(--divider-color);color:#1d1d1f;color:var(--text-color);font-size:1.5rem;font-weight:600;font-weight:var(--font-weight-semibold);letter-spacing:-.02em;letter-spacing:var(--letter-spacing-tight);margin:2rem 0 1.5rem;margin:var(--spacing-2xl) 0 var(--spacing-xl);padding-bottom:.5rem;padding-bottom:var(--spacing-sm)}.dashboard-home .dashboard-sections{grid-gap:1.5rem;grid-gap:var(--spacing-xl);display:grid;gap:1.5rem;gap:var(--spacing-xl);grid-template-columns:1fr 1fr}@media(max-width:48rem){.dashboard-home .dashboard-sections{grid-template-columns:1fr}}.dashboard-home .dashboard-sections.albums-sections{grid-template-columns:repeat(3,1fr)}@media(max-width:64rem){.dashboard-home .dashboard-sections.albums-sections{grid-template-columns:1fr 1fr}}@media(max-width:48rem){.dashboard-home .dashboard-sections.albums-sections{grid-template-columns:1fr}}.dashboard-home .dashboard-sections .section{background-color:#fff;background-color:var(--card-background);border:1px solid #e8e8ed;border:1px solid var(--gray-200);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 2px 4px #0000000d;box-shadow:var(--shadow-sm-value);overflow:hidden;padding:1.5rem;padding:var(--spacing-xl);transition:transform .3s cubic-bezier(.25,.46,.45,.94),box-shadow .3s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.dashboard-home .dashboard-sections .section:hover{box-shadow:0 8px 16px #0000001f;box-shadow:var(--shadow-lg-value);transform:translateY(-4px)}.dashboard-home .dashboard-sections .section .section-header{align-items:center;border-bottom:1px solid #e8e8ed;border-bottom:1px solid var(--divider-color);display:flex;justify-content:space-between;margin-bottom:1.5rem;margin-bottom:var(--spacing-xl);padding-bottom:1rem;padding-bottom:var(--spacing-md)}.dashboard-home .dashboard-sections .section .section-header h2{color:#1d1d1f;color:var(--text-color);font-size:1.3rem;font-weight:600;font-weight:var(--font-weight-semibold);letter-spacing:-.02em;letter-spacing:var(--letter-spacing-tight);margin:0}.dashboard-home .dashboard-sections .activity-list{display:flex;flex-direction:column;gap:1rem;gap:var(--spacing-md)}.dashboard-home .dashboard-sections .activity-list .activity-item{align-items:center;background-color:#f5f5f7;background-color:var(--light-bg-color);border-radius:8px;border-radius:var(--border-radius-md);display:flex;padding:1rem;padding:var(--spacing-md);transition:transform .2s cubic-bezier(.25,.46,.45,.94),background-color .2s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-fast),background-color var(--transition-fast)}.dashboard-home .dashboard-sections .activity-list .activity-item:hover{background-color:color-mix(in srgb,#f5f5f7 95%,#0071e3);background-color:color-mix(in srgb,var(--light-bg-color) 95%,var(--primary-color));transform:translateX(4px)}.dashboard-home .dashboard-sections .activity-list .activity-item .activity-icon{align-items:center;border-radius:50%;display:flex;font-size:1rem;height:2.5rem;justify-content:center;margin-right:1rem;margin-right:var(--spacing-md);width:2.5rem}.dashboard-home .dashboard-sections .activity-list .activity-item .activity-icon.album{background-color:color-mix(in srgb,#af52de 10%,#0000);background-color:color-mix(in srgb,var(--purple-color) 10%,#0000);color:#af52de;color:var(--purple-color)}.dashboard-home .dashboard-sections .activity-list .activity-item .activity-icon.client{background-color:color-mix(in srgb,#34c759 10%,#0000);background-color:color-mix(in srgb,var(--success-color) 10%,#0000);color:#34c759;color:var(--success-color)}.dashboard-home .dashboard-sections .activity-list .activity-item .activity-icon.photos{background-color:color-mix(in srgb,#ff9500 10%,#0000);background-color:color-mix(in srgb,var(--warning-color) 10%,#0000);color:#ff9500;color:var(--warning-color)}.dashboard-home .dashboard-sections .activity-list .activity-item .activity-details{flex:1 1}.dashboard-home .dashboard-sections .activity-list .activity-item .activity-details p{color:#1d1d1f;color:var(--text-color);font-size:.9rem;font-weight:500;font-weight:var(--font-weight-medium);margin:0}.dashboard-home .dashboard-sections .activity-list .activity-item .activity-details .activity-date{color:#6e6e73;color:var(--text-tertiary);font-size:.8rem;margin-top:.125rem;margin-top:var(--spacing-2xs)}.dashboard-home .dashboard-sections .action-buttons{grid-gap:1rem;grid-gap:var(--spacing-md);display:grid;gap:1rem;gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(10rem,1fr))}.dashboard-home .dashboard-sections .action-buttons .action-button{align-items:center;border-radius:8px;border-radius:var(--border-radius-md);display:flex;justify-content:flex-start;padding:1.25rem 1rem;padding:var(--spacing-lg) var(--spacing-md);transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}.dashboard-home .dashboard-sections .action-buttons .action-button svg{font-size:1.25rem;margin-right:.5rem;margin-right:var(--spacing-sm)}.dashboard-home :global(.empty-state){padding:1.5rem 0;padding:var(--spacing-xl) 0}.dashboard-home :global(.empty-state) .empty-state-icon-container{margin-bottom:1rem;margin-bottom:var(--spacing-md)}.dashboard-home :global(.empty-state) .empty-state-icon-container .empty-state-icon{color:#6e6e73;color:var(--text-tertiary);font-size:2.5rem}.dashboard-home .albums-grid{grid-gap:1rem;grid-gap:var(--spacing-md);display:grid;gap:1rem;gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));margin-top:1rem;margin-top:var(--spacing-md)}.dashboard-home .albums-grid .album-card{background-color:#fff;background-color:var(--card-background);border:1px solid #e8e8ed;border:1px solid var(--gray-200);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 2px 4px #0000000d;box-shadow:var(--shadow-sm-value);cursor:pointer;display:flex;flex-direction:column;overflow:hidden;transition:transform .3s cubic-bezier(.25,.46,.45,.94),box-shadow .3s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-normal),box-shadow var(--transition-normal);transition:transform .2s cubic-bezier(.25,.46,.45,.94),box-shadow .2s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.dashboard-home .albums-grid .album-card:hover{box-shadow:0 8px 16px #0000001f;box-shadow:var(--shadow-lg-value);transform:translateY(-4px)}.dashboard-home .albums-grid .album-card.expiring{border-left:3px solid #ff9500;border-left:3px solid var(--warning-color)}.dashboard-home .albums-grid .album-card.needs_attention{border-left:3px solid #ff3b30;border-left:3px solid var(--error-color)}.dashboard-home .albums-grid .album-card .album-cover{height:8rem;overflow:hidden;position:relative}.dashboard-home .albums-grid .album-card .album-cover img{height:100%;object-fit:cover;width:100%}.dashboard-home .albums-grid .album-card .album-cover .placeholder-cover{align-items:center;background-color:#f5f5f7;background-color:var(--light-bg-color);color:#6e6e73;color:var(--text-tertiary);display:flex;font-size:2rem;height:100%;justify-content:center;width:100%}.dashboard-home .albums-grid .album-card .album-info{padding:1rem;padding:var(--spacing-md)}.dashboard-home .albums-grid .album-card .album-info h3{color:#1d1d1f;color:var(--text-color);font-size:1rem;font-weight:600;font-weight:var(--font-weight-semibold);margin:0 0 .25rem;margin:0 0 var(--spacing-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-home .albums-grid .album-card .album-info p{color:#86868b;color:var(--text-secondary);font-size:.85rem;margin:.125rem 0;margin:var(--spacing-2xs) 0}.dashboard-home .albums-grid .album-card .album-info .client-name{font-weight:500;font-weight:var(--font-weight-medium)}.dashboard-home .albums-grid .album-card .album-info .expiry-date.expiring-soon{color:#ff9500;color:var(--warning-color);font-weight:500;font-weight:var(--font-weight-medium)}.dashboard-home .albums-grid .album-card .album-info .action-needed{background-color:color-mix(in srgb,#ff3b30 10%,#0000);background-color:color-mix(in srgb,var(--error-color) 10%,#0000);border-radius:6px;border-radius:var(--border-radius-sm);color:#ff3b30;color:var(--error-color);display:inline-block;font-size:.8rem;font-weight:500;font-weight:var(--font-weight-medium);margin-top:.25rem;margin-top:var(--spacing-xs);padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm)}.page-layout{display:flex;flex-direction:column;height:100%;margin:0 auto;max-width:75rem;padding:0 1rem;padding:0 var(--spacing-md);width:100%}.page-layout.full-width{max-width:none}.page-layout .page-header{align-items:center;background-color:#f5f5f7;background-color:var(--background-color);display:flex;justify-content:space-between;margin-bottom:1rem;margin-bottom:var(--spacing-md);padding:1.5rem 0;padding:var(--spacing-xl) 0;position:-webkit-sticky;position:sticky;top:0;z-index:10}.page-layout .page-header .page-title{color:#1d1d1f;color:var(--text-color);font-size:1.75rem;font-weight:600;margin:0}@media(min-width:48rem){.page-layout .page-header .page-title{font-size:2rem}}.page-layout .page-header .back-button{color:#0071e3;color:var(--primary-color);margin-right:1rem;margin-right:var(--spacing-md)}.page-layout .page-header .back-button:hover{background-color:#e8e8ed;background-color:var(--hover-color)}.page-layout .page-header .header-actions{align-items:center;display:flex;gap:.5rem;gap:var(--spacing-sm)}.page-layout .page-content{flex:1 1;position:relative}.page-layout .page-content.loading{min-height:18.75rem}.page-layout .page-loader{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}.page-layout .page-loader .loader-spinner{animation:spin 1s ease-in-out infinite;border:.1875rem solid #0000000d;border-radius:50%;border-top-color:#0071e3;border:.1875rem solid var(--shadow-light);border-top-color:var(--primary-color);height:2.5rem;width:2.5rem}@media(max-width:48rem){.page-layout{padding:0 .5rem;padding:0 var(--spacing-sm)}.page-layout .page-header{padding:1rem 0;padding:var(--spacing-md) 0}}.page-layout .page-content,.page-layout .page-header{animation:fadeIn ease-out .3s cubic-bezier(.25,.46,.45,.94);animation:fadeIn var(--transition-normal) ease-out}.empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:1.25rem;padding:var(--spacing-lg);text-align:center;width:100%}.empty-state.default{min-height:18.75rem}.empty-state.compact{min-height:12.5rem;padding:1rem;padding:var(--spacing-md)}.empty-state.compact .empty-state-icon-container{height:3.75rem;margin-bottom:1rem;margin-bottom:var(--spacing-md);width:3.75rem}.empty-state.compact .empty-state-icon-container .empty-state-icon{font-size:1.5rem}.empty-state.compact .empty-state-title{font-size:var(--font-size-md);margin-bottom:.25rem;margin-bottom:var(--spacing-xs)}.empty-state.compact .empty-state-description{font-size:var(--font-size-sm)}.empty-state.fullPage{min-height:60vh}.empty-state.fullPage .empty-state-icon-container{height:7.5rem;margin-bottom:1.25rem;margin-bottom:var(--spacing-lg);width:7.5rem}.empty-state.fullPage .empty-state-icon-container .empty-state-icon{font-size:3rem}.empty-state.fullPage .empty-state-title{font-size:var(--font-size-xl);margin-bottom:1rem;margin-bottom:var(--spacing-md)}.empty-state.fullPage .empty-state-description{font-size:var(--font-size-md);max-width:31.25rem}.empty-state .empty-state-content{animation:fadeIn ease-out .3s cubic-bezier(.25,.46,.45,.94);animation:fadeIn var(--transition-normal) ease-out;max-width:37.5rem}.empty-state .empty-state-icon-container{align-items:center;background-color:#f5f5f7;background-color:var(--light-bg-color);border-radius:50%;display:flex;height:5rem;justify-content:center;margin:0 auto 1rem;margin:0 auto var(--spacing-md);transition:transform .2s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-fast);width:5rem}.empty-state .empty-state-icon-container:hover{transform:scale(1.05)}.empty-state .empty-state-icon-container .empty-state-icon{color:#86868b;color:var(--text-secondary);font-size:2rem}.empty-state .empty-state-title{color:#1d1d1f;color:var(--text-color);font-size:var(--font-size-lg);font-weight:600;font-weight:var(--font-weight-semibold);margin:0 0 .25rem;margin:0 0 var(--spacing-xs)}.empty-state .empty-state-description{color:#86868b;color:var(--text-secondary);font-size:var(--font-size-base);line-height:1.5;margin:0 0 1rem;margin:0 0 var(--spacing-md)}.empty-state .empty-state-actions{display:flex;flex-wrap:wrap;gap:1rem;gap:var(--spacing-md);justify-content:center}@media(max-width:48rem){.empty-state{padding:1rem .5rem;padding:var(--spacing-md) var(--spacing-sm)}.empty-state.fullPage .empty-state-icon-container{height:6.25rem;width:6.25rem}.empty-state.fullPage .empty-state-icon-container .empty-state-icon{font-size:2.5rem}.empty-state.fullPage .empty-state-title{font-size:var(--font-size-lg)}.empty-state.fullPage .empty-state-description{font-size:var(--font-size-base)}}@media(max-width:30rem){.empty-state{padding:.5rem;padding:var(--spacing-sm)}.empty-state .empty-state-icon-container{height:4rem;width:4rem}.empty-state .empty-state-icon-container .empty-state-icon{font-size:1.75rem}.empty-state .empty-state-actions{flex-direction:column;margin:0 auto;max-width:20rem;width:100%}}.loading-skeleton{animation:fadeIn ease-out .3s cubic-bezier(.25,.46,.45,.94);animation:fadeIn var(--transition-normal) ease-out;padding:2rem;width:100%}.loading-skeleton .skeleton-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:2rem}.loading-skeleton .skeleton-header .skeleton-title-container{display:flex;flex-direction:column;gap:.75rem}.loading-skeleton .skeleton-header .skeleton-title-container .skeleton-title{border-radius:8px;border-radius:var(--border-radius-md);height:2.5rem;width:15rem}.loading-skeleton .skeleton-header .skeleton-title-container .skeleton-subtitle,.loading-skeleton .skeleton-header .skeleton-title-container .skeleton-title{animation:shimmer 2s linear infinite;background:linear-gradient(90deg,#f5f5f7 25%,#e8e8ed 50%,#f5f5f7 75%);background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-200) 50%,var(--gray-100) 75%);background-size:62.5rem 100%}.loading-skeleton .skeleton-header .skeleton-title-container .skeleton-subtitle{border-radius:6px;border-radius:var(--border-radius-sm);height:1rem;width:10rem}.loading-skeleton .skeleton-header .skeleton-actions{display:flex;gap:1rem;justify-content:flex-end}.loading-skeleton .skeleton-header .skeleton-actions .skeleton-search{width:18.75rem}.loading-skeleton .skeleton-header .skeleton-actions .skeleton-button,.loading-skeleton .skeleton-header .skeleton-actions .skeleton-search{animation:shimmer 2s linear infinite;background:linear-gradient(90deg,#f5f5f7 25%,#e8e8ed 50%,#f5f5f7 75%);background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-200) 50%,var(--gray-100) 75%);background-size:62.5rem 100%;border-radius:8px;border-radius:var(--border-radius-md);height:2.5rem}.loading-skeleton .skeleton-header .skeleton-actions .skeleton-button{width:9.375rem}@media(max-width:48rem){.loading-skeleton .skeleton-header{flex-direction:column;gap:1rem}.loading-skeleton .skeleton-header .skeleton-actions{justify-content:space-between;width:100%}}.loading-skeleton .skeleton-filter-bar{display:flex;gap:.75rem;margin-bottom:1.5rem;overflow-x:auto;padding-bottom:.5rem}.loading-skeleton .skeleton-filter-bar .skeleton-filter{animation:shimmer 2s linear infinite;background:linear-gradient(90deg,#f5f5f7 25%,#e8e8ed 50%,#f5f5f7 75%);background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-200) 50%,var(--gray-100) 75%);background-size:62.5rem 100%;border-radius:1.25rem;flex-shrink:0;height:2.25rem;min-width:6.25rem}.loading-skeleton .skeleton-filter-bar .skeleton-filter.skeleton-filter-active{background:linear-gradient(90deg,var(--gray-50) 25%,#f5f5f7 50%,var(--gray-50) 75%);background:linear-gradient(90deg,var(--gray-50) 25%,var(--gray-100) 50%,var(--gray-50) 75%);box-shadow:0 .0625rem .1875rem #0000000d;box-shadow:0 .0625rem .1875rem var(--shadow-light)}.loading-skeleton .skeleton-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr))}@media(max-width:48rem){.loading-skeleton .skeleton-grid{gap:1rem;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr))}}.loading-skeleton .skeleton-grid .skeleton-card{animation:fadeIn ease-out .5s cubic-bezier(.25,.46,.45,.94) both;animation:fadeIn var(--transition-slow) ease-out both;background-color:#fff;background-color:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .0625rem .1875rem #0000000d;box-shadow:0 .0625rem .1875rem var(--shadow-light);display:flex;flex-direction:column;overflow:hidden;transition:transform .2s cubic-bezier(.25,.46,.45,.94),box-shadow .2s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.loading-skeleton .skeleton-grid .skeleton-card:hover{box-shadow:0 .25rem .5rem #00000014;box-shadow:0 .25rem .5rem var(--shadow-medium);transform:translateY(-.125rem)}.loading-skeleton .skeleton-grid .skeleton-card .skeleton-cover{animation:shimmer 2s linear infinite;aspect-ratio:4/3;background:linear-gradient(90deg,#f5f5f7 25%,#e8e8ed 50%,#f5f5f7 75%);background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-200) 50%,var(--gray-100) 75%);background-size:62.5rem 100%;width:100%}.loading-skeleton .skeleton-grid .skeleton-card .skeleton-info{padding:.75rem}.loading-skeleton .skeleton-grid .skeleton-card .skeleton-info .skeleton-title-line{height:1.25rem;margin-bottom:.5rem}.loading-skeleton .skeleton-grid .skeleton-card .skeleton-info .skeleton-meta-line,.loading-skeleton .skeleton-grid .skeleton-card .skeleton-info .skeleton-title-line{animation:shimmer 2s linear infinite;background:linear-gradient(90deg,#f5f5f7 25%,#e8e8ed 50%,#f5f5f7 75%);background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-200) 50%,var(--gray-100) 75%);background-size:62.5rem 100%;border-radius:6px;border-radius:var(--border-radius-sm)}.loading-skeleton .skeleton-grid .skeleton-card .skeleton-info .skeleton-meta-line{height:1rem;margin-bottom:.75rem}.loading-skeleton .skeleton-grid .skeleton-card .skeleton-info .skeleton-tags{display:flex;flex-wrap:wrap;gap:.5rem}.loading-skeleton .skeleton-grid .skeleton-card .skeleton-info .skeleton-tags .skeleton-tag{animation:shimmer 2s linear infinite;background:linear-gradient(90deg,var(--gray-50) 25%,#f5f5f7 50%,var(--gray-50) 75%);background:linear-gradient(90deg,var(--gray-50) 25%,var(--gray-100) 50%,var(--gray-50) 75%);background-size:62.5rem 100%;border-radius:.75rem;height:1.5rem;width:3.75rem}.create-album-modal{overflow-y:auto;padding:0}.create-album-modal .loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:2rem}.create-album-modal .loading-container .spinner{animation:spin 1s linear infinite;border:.1875rem solid #e8e8ed;border-top-color:#0071e3;border:.1875rem solid var(--gray-200);border-radius:50%;border-top-color:var(--primary-color);height:2.5rem;width:2.5rem}.create-album-modal .loading-container p{color:#86868b;color:var(--text-secondary);font-size:.9rem;margin-top:1rem}.create-album-modal .create-album-content,.create-album-modal .modal-content{padding:1.5rem}.create-album-modal .album-type-selection{padding:1rem 0}.create-album-modal .album-type-selection .selection-instruction{color:#86868b;color:var(--text-secondary);font-size:1rem;margin-bottom:2rem;padding:0 1rem;text-align:center}.create-album-modal .album-type-selection .album-types-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));padding:0 1rem}.create-album-modal .album-type-selection .album-types-grid .album-type-card{align-items:center;background:#fff;border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 2px 8px #00000014;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;padding:1.5rem 1rem;position:relative;text-align:center;transition:all .3s ease}.create-album-modal .album-type-selection .album-types-grid .album-type-card.selected{box-shadow:0 4px 12px #00000026;transform:translateY(-5px)}.create-album-modal .album-type-selection .album-types-grid .album-type-card .album-type-icon{align-items:center;background:#0071e3;background:var(--primary-color);border-radius:50%;color:#fff;display:flex;font-size:2.5rem;height:5rem;justify-content:center;margin-bottom:1rem;transition:all .3s ease;width:5rem}.create-album-modal .album-type-selection .album-types-grid .album-type-card .album-type-title{color:#1d1d1f;color:var(--text-color);font-size:1.2rem;font-weight:600;margin:0 0 .5rem;transition:color .3s ease}.create-album-modal .album-type-selection .album-types-grid .album-type-card .album-type-description{color:#86868b;color:var(--text-secondary);font-size:.9rem;margin-bottom:1rem;transition:color .3s ease}.create-album-modal .album-type-selection .album-types-grid .album-type-card .album-type-examples{overflow:hidden;width:100%}.create-album-modal .album-type-selection .album-types-grid .album-type-card .album-type-examples .examples-title{color:#1d1d1f;color:var(--text-color);font-size:.85rem;font-weight:600;margin:0 0 .5rem}.create-album-modal .album-type-selection .album-types-grid .album-type-card .album-type-examples .examples-list{list-style-type:none;margin:0;padding:0;text-align:left}.create-album-modal .album-type-selection .album-types-grid .album-type-card .album-type-examples .examples-list li{color:#1d1d1f;color:var(--text-color);font-size:.8rem;padding:.25rem 0 .25rem 1rem;position:relative}.create-album-modal .album-type-selection .album-types-grid .album-type-card .album-type-examples .examples-list li:before{content:"•";left:0;position:absolute}.create-album-modal .album-type-selection .album-types-grid .album-type-card.selected .album-type-title,.create-album-modal .album-type-selection .album-types-grid .album-type-card:hover .album-type-title{color:#fff}.create-album-modal .album-type-selection .album-types-grid .album-type-card.selected .album-type-description,.create-album-modal .album-type-selection .album-types-grid .album-type-card:hover .album-type-description{color:#ffffffe6}.create-album-modal .album-type-selection .album-types-grid .album-type-card.selected .album-type-icon,.create-album-modal .album-type-selection .album-types-grid .album-type-card:hover .album-type-icon{background:#fff3}.create-album-modal .album-type-selection .album-types-grid .album-type-card.selected .album-type-examples .examples-title,.create-album-modal .album-type-selection .album-types-grid .album-type-card:hover .album-type-examples .examples-title{color:#fff}.create-album-modal .album-type-selection .album-types-grid .album-type-card.selected .album-type-examples .examples-list li,.create-album-modal .album-type-selection .album-types-grid .album-type-card:hover .album-type-examples .examples-list li{color:#ffffffe6}.create-album-modal .section{margin-bottom:2rem}.create-album-modal .section:last-child{margin-bottom:0}.create-album-modal .section-title{color:#1d1d1f;color:var(--text-color);font-size:1.1rem;font-weight:600;margin-bottom:.25rem}.create-album-modal .section-subtitle{color:#86868b;color:var(--text-secondary);font-size:.9rem;margin-bottom:1rem}.create-album-modal .input-container{margin-bottom:1.5rem;position:relative}.create-album-modal .input-container label{color:#1d1d1f;color:var(--text-color);display:block;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.create-album-modal .input-container .text-input{background-color:#fff;background-color:var(--input-background,var(--white));border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);color:#1d1d1f;color:var(--text-color);font-size:1rem;padding:.75rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:100%}.create-album-modal .input-container .text-input:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 .125rem #42a1ff;box-shadow:0 0 0 .125rem var(--primary-color-light,rgba(var(--primary-color-rgb),.2));outline:none}.create-album-modal .input-container .text-input::placeholder{color:#86868b;color:var(--text-secondary)}.create-album-modal .input-container .text-input.textarea{min-height:6.25rem;resize:vertical}.create-album-modal .character-count{bottom:-1.25rem;color:#86868b;color:var(--text-secondary);font-size:.8rem;margin-top:.25rem;position:absolute;right:0;text-align:right}.create-album-modal .error-message{background-color:#ff3b301a;background-color:var(--error-background,rgba(var(--danger-color-rgb),.1));border-radius:8px;border-radius:var(--border-radius-md);color:#ff3b30;color:var(--error-color);font-size:.9rem;margin-bottom:1rem;padding:.75rem}.create-album-modal .selected-image-container{border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 .125rem .5rem #0000000d;box-shadow:0 .125rem .5rem var(--shadow-light);height:12.5rem;margin:1rem auto;overflow:hidden;position:relative;width:12.5rem}.create-album-modal .selected-image-container .selected-image{display:block;height:100%;object-fit:cover;width:100%}.create-album-modal .selected-image-container .remove-image-button{align-items:center;background-color:#00000080;background-color:var(--overlay-background-dark,#0009);border:none;border-radius:50%;color:#fff;color:var(--white-color);cursor:pointer;display:flex;font-size:.9rem;height:1.875rem;justify-content:center;position:absolute;right:.5rem;top:.5rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:1.875rem}.create-album-modal .selected-image-container .remove-image-button:hover{background-color:#000c;background-color:var(--overlay-background-darker,#000c)}.create-album-modal .image-options{display:flex;gap:1.5rem;justify-content:center;margin:1rem 0}.create-album-modal .image-options .image-option,.create-album-modal .image-options .image-option .image-option-button{align-items:center;cursor:pointer;display:flex;flex-direction:column}.create-album-modal .image-options .image-option .image-option-button .image-option-icon{align-items:center;background-color:#f5f5f7;background-color:var(--gray-100);border-radius:50%;display:flex;height:4.375rem;justify-content:center;margin-bottom:.75rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:4.375rem}.create-album-modal .image-options .image-option .image-option-button .image-option-icon svg{color:#0071e3;color:var(--primary-color);font-size:1.5rem}.create-album-modal .image-options .image-option .image-option-button span{color:#0071e3;color:var(--primary-color);font-size:.9rem}.create-album-modal .image-options .image-option .image-option-button:hover .image-option-icon{background-color:#42a1ff;background-color:var(--primary-color-light,var(--secondary-color))}.create-album-modal .setting-row{align-items:center;border-bottom:.0625rem solid #d2d2d7;border-bottom:.0625rem solid var(--border-color-light,var(--border-color));display:flex;justify-content:space-between;padding:.75rem 0}.create-album-modal .setting-row:last-child{border-bottom:none}.create-album-modal .setting-label-container{align-items:center;display:flex;flex:1 1}.create-album-modal .setting-icon{align-items:center;color:#0071e3;color:var(--primary-color);display:flex;font-size:1.2rem;height:1.5rem;justify-content:center;margin-right:1rem;width:1.5rem}.create-album-modal .setting-text{display:flex;flex-direction:column}.create-album-modal .setting-label{color:#1d1d1f;color:var(--text-color);display:block;font-size:.95rem;font-weight:500;margin-bottom:.25rem}.create-album-modal .setting-description{color:#86868b;color:var(--text-secondary);font-size:.8rem;margin:0}.create-album-modal .toggle-switch{display:inline-block;height:1.9375rem;position:relative;width:3.1875rem}.create-album-modal .toggle-switch input{height:0;opacity:0;width:0}.create-album-modal .toggle-switch input:checked+.toggle-slider{background-color:#0071e3;background-color:var(--primary-color)}.create-album-modal .toggle-switch input:checked+.toggle-slider:before{transform:translateX(1.25rem)}.create-album-modal .toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.5}.create-album-modal .toggle-switch .toggle-slider{background-color:#d2d2d7;background-color:var(--gray-300);border-radius:2.125rem;bottom:0;cursor:pointer;left:0;right:0;top:0}.create-album-modal .toggle-switch .toggle-slider,.create-album-modal .toggle-switch .toggle-slider:before{position:absolute;transition:.5s cubic-bezier(.25,.46,.45,.94);transition:var(--transition-slow,var(--transition-fast))}.create-album-modal .toggle-switch .toggle-slider:before{background-color:#fff;background-color:var(--white-color);border-radius:50%;bottom:.125rem;box-shadow:0 .125rem .25rem #0000000d;box-shadow:0 .125rem .25rem var(--shadow-light);content:"";height:1.6875rem;left:.125rem;width:1.6875rem}.create-album-modal .password-container{background-color:#f5f5f7;background-color:var(--gray-100);border-radius:8px;border-radius:var(--border-radius-md);margin-top:1rem;padding:1rem}.create-album-modal .password-hint{color:#86868b;color:var(--text-secondary);font-size:.8rem;margin:.5rem 0 0}.create-album-modal .categories-container{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-top:1rem}.create-album-modal .category-item{align-items:center;border-radius:8px;border-radius:var(--border-radius-md);cursor:pointer;display:flex;flex-direction:column;padding:.75rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}.create-album-modal .category-item:hover{background-color:#f5f5f7;background-color:var(--gray-100)}.create-album-modal .category-item.selected{background-color:#42a1ff;background-color:var(--primary-color-light,var(--secondary-color))}.create-album-modal .category-item.selected .category-icon{border:.125rem solid #0071e3;border:.125rem solid var(--primary-color)}.create-album-modal .category-item.selected .category-label{color:#0071e3;color:var(--primary-color);font-weight:500}.create-album-modal .category-item .category-icon{align-items:center;background-color:#f5f5f7;background-color:var(--gray-100);border-radius:50%;color:#1d1d1f;color:var(--text-color);display:flex;font-size:1.5rem;height:3.75rem;justify-content:center;margin-bottom:.75rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:3.75rem}.create-album-modal .category-item .category-icon svg{color:#1d1d1f;color:var(--text-color);font-size:1.5rem;transition:color .2s cubic-bezier(.25,.46,.45,.94);transition:color var(--transition-fast)}.create-album-modal .category-item .category-label{color:#1d1d1f;color:var(--text-color);font-size:.85rem;text-align:center}.create-album-modal .action-buttons{border-top:.0625rem solid #d2d2d7;border-top:.0625rem solid var(--border-color);display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1rem}@media(max-width:48rem){.create-album-modal .category-item{width:50%}.create-album-modal .action-buttons{flex-direction:column;gap:1rem}.create-album-modal .action-buttons .right-buttons{justify-content:flex-end}}.toast{align-items:center;animation:slide-in .3s cubic-bezier(.25,.46,.45,.94) forwards;animation:slide-in var(--transition-normal) forwards;border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 .25rem .75rem #00000014;box-shadow:0 .25rem .75rem var(--shadow-medium);display:flex;max-width:28.125rem;min-width:18.75rem;padding:.75rem 1rem;position:fixed;right:1.25rem;top:1.25rem;transition:all .3s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-normal);z-index:3000}.toast.hidden{animation:slide-out .3s cubic-bezier(.25,.46,.45,.94) forwards;animation:slide-out var(--transition-normal) forwards}.toast.toast-success{background-color:#4d4d4d;background-color:var(--gray-700);border-left:.25rem solid #34c759;border-left:.25rem solid var(--success-color)}.toast.toast-success .toast-icon{color:#34c759;color:var(--success-color)}.toast.toast-error{background-color:#4d4d4d;background-color:var(--gray-700);border-left:.25rem solid #ff3b30;border-left:.25rem solid var(--danger-color)}.toast.toast-error .toast-icon{color:#ff3b30;color:var(--danger-color)}.toast.toast-info{background-color:#4d4d4d;background-color:var(--gray-700);border-left:.25rem solid #5ac8fa;border-left:.25rem solid var(--info-color)}.toast.toast-info .toast-icon{color:#5ac8fa;color:var(--info-color)}.toast .toast-icon{align-items:center;display:flex;font-size:1.125rem;justify-content:center;margin-right:.75rem}.toast .toast-content{color:#fff;color:var(--white);flex:1 1;font-size:.875rem;line-height:1.4}.toast .toast-close{align-items:center;background:none;border:none;color:#d2d2d7;color:var(--gray-300);cursor:pointer;display:flex;font-size:.875rem;justify-content:center;margin-left:.75rem;padding:.25rem;transition:color .2s cubic-bezier(.25,.46,.45,.94);transition:color var(--transition-fast)}.toast .toast-close:hover{color:#fff;color:var(--white)}@keyframes slide-in{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slide-out{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}@media(max-width:48rem){.toast{left:.625rem;max-width:none;min-width:auto;right:.625rem;top:.625rem;width:calc(100% - 1.25rem)}}.album-creation-animation{align-items:center;-webkit-backdrop-filter:blur(.5rem);backdrop-filter:blur(.5rem);background-color:#fffffff2;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.album-creation-animation .animation-content{align-items:center;display:flex;flex-direction:column;justify-content:center;max-width:31.25rem;padding:2rem;width:90%}.album-creation-animation .animation-content .animation-graphic{align-items:center;display:flex;height:12.5rem;justify-content:center;margin-bottom:2rem;position:relative;width:12.5rem}.album-creation-animation .animation-content .animation-graphic .album-icon{align-items:center;border-radius:50%;box-shadow:0 0 1.875rem #0071e333;display:flex;height:5rem;justify-content:center;width:5rem;z-index:2}.album-creation-animation .animation-content .animation-graphic .album-icon .icon{color:#fff;font-size:2rem}.album-creation-animation .animation-content .animation-graphic .album-icon.wedding{background:linear-gradient(135deg,#ff6b6b,#cc2366)}.album-creation-animation .animation-content .animation-graphic .album-icon.travel{background:linear-gradient(135deg,#4facfe,#00f2fe)}.album-creation-animation .animation-content .animation-graphic .album-icon.birthday{background:linear-gradient(135deg,#ffc3a0,#ffafbd)}.album-creation-animation .animation-content .animation-graphic .album-icon.default{background:linear-gradient(135deg,#a18cd1,#fbc2eb)}.album-creation-animation .animation-content .animation-graphic .orbit{border:1px dashed #0071e34d;border-radius:50%;height:9.375rem;position:absolute;width:9.375rem}.album-creation-animation .animation-content .animation-graphic .orbit .satellite{align-items:center;background-color:#0071e3;border-radius:50%;box-shadow:0 0 .9375rem #0071e380;display:flex;height:1.875rem;justify-content:center;left:calc(50% - .625rem);position:absolute;top:-.625rem;width:1.875rem}.album-creation-animation .animation-content .animation-graphic .orbit .satellite svg{color:#fff;font-size:1rem}.album-creation-animation .animation-content .animation-graphic .orbit-2{height:12.5rem;width:12.5rem}.album-creation-animation .animation-content .animation-graphic .orbit-2 .satellite{background-color:#0071e31a}.album-creation-animation .animation-content .animation-graphic .orbit-2 .satellite svg{color:#fff}.album-creation-animation .animation-content .animation-graphic .success-icon{align-items:center;background:linear-gradient(135deg,#34c759,#6ed989);border-radius:50%;box-shadow:0 0 1.875rem #34c75980;display:flex;height:6.25rem;justify-content:center;width:6.25rem}.album-creation-animation .animation-content .animation-graphic .success-icon svg{color:#fff;font-size:3rem}.album-creation-animation .animation-content .stage-text{color:#1d1d1f;font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;min-height:2.5rem;text-align:center}.album-creation-animation .animation-content .progress-bar-container{align-items:center;display:flex;gap:1rem;width:100%}.album-creation-animation .animation-content .progress-bar-container .progress-bar-background{background-color:#e8e8ed;border-radius:.375rem;flex:1 1;height:.75rem;overflow:hidden}.album-creation-animation .animation-content .progress-bar-container .progress-bar-background .progress-bar-fill{background:linear-gradient(90deg,#0071e3,#3197ff);border-radius:.375rem;height:100%}.album-creation-animation .animation-content .progress-bar-container .progress-percentage{color:#1d1d1f;font-size:1rem;font-weight:600;min-width:2.8125rem;text-align:right}@media(max-width:48rem){.album-creation-animation .animation-content{padding:1.5rem}.album-creation-animation .animation-content .animation-graphic{height:9.375rem;width:9.375rem}.album-creation-animation .animation-content .animation-graphic .orbit{height:7.5rem;width:7.5rem}.album-creation-animation .animation-content .animation-graphic .orbit-2{height:10rem;width:10rem}.album-creation-animation .animation-content .stage-text{font-size:1.2rem}}.client-details-form-container{position:relative;width:100%}.client-details-form{width:100%}.client-details-form .form-content,.client-details-form .form-header{margin-bottom:1.5rem}.client-details-form .form-header h2{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.client-details-form .form-header p{color:#86868b;color:var(--text-secondary);font-size:1rem}.client-details-form .form-group{margin-bottom:1.25rem}.client-details-form .form-group.full-width{width:100%}.client-details-form .form-label{align-items:center;color:var(--text-primary);display:flex;font-weight:500;margin-bottom:.5rem}.client-details-form .form-label .form-icon{color:#0071e3;color:var(--primary-color);font-size:.875rem;margin-right:.5rem}.client-details-form .phone-input-container{align-items:center;display:flex;width:100%}.client-details-form .phone-input-container .country-code{align-items:center;background-color:var(--background-medium);border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:.5rem 0 0 .5rem;border-right:none;color:var(--text-primary);display:flex;font-size:1rem;font-weight:500;height:2.75rem;justify-content:center;padding:0 .75rem}.client-details-form .form-input{background-color:var(--background-light);border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:.5rem;font-size:1rem;padding:.75rem 1rem;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.client-details-form .form-input:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(var(--primary-rgb),.2);outline:none}.client-details-form .form-input.error{border-color:#ff3b30;border-color:var(--error-color)}.client-details-form .form-input.valid{border-color:#34c759;border-color:var(--success-color)}.client-details-form .form-input.textarea{min-height:6rem;resize:vertical}.client-details-form .form-input:disabled{background-color:var(--background-disabled);cursor:not-allowed;opacity:.7}.client-details-form .phone-input-container .form-input{border-radius:0 .5rem .5rem 0}.client-details-form .error-message{color:#ff3b30;color:var(--error-color);font-size:.75rem;margin-top:.25rem}.client-details-form .form-actions{display:flex;justify-content:space-between;margin-top:2rem}.client-details-form .form-actions button{min-width:10rem}.client-details-form .user-preview{align-items:center;background-color:var(--background-light);border-radius:.75rem;box-shadow:0 .125rem .25rem #0000000d;display:flex;flex-direction:column;margin-bottom:1.5rem;padding:1.5rem}.client-details-form .user-preview .user-avatar-container{height:5rem;margin-bottom:1rem;position:relative;width:5rem}.client-details-form .user-preview .user-avatar-container .user-avatar{border-radius:50%;height:100%;object-fit:cover;width:100%}.client-details-form .user-preview .user-avatar-container .avatar-placeholder{align-items:center;background-color:#0071e3;background-color:var(--primary-color);border-radius:50%;color:#fff;display:flex;font-size:1.75rem;font-weight:600;height:100%;justify-content:center;width:100%}.client-details-form .user-preview .user-info{text-align:center}.client-details-form .user-preview .user-info .user-name{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin-bottom:.25rem}.client-details-form .user-preview .user-info .user-email,.client-details-form .user-preview .user-info .user-phone,.client-details-form .user-preview .user-info .user-username{color:#86868b;color:var(--text-secondary);font-size:.875rem;margin-bottom:.25rem}.client-details-form .confirm-text{color:var(--text-primary);font-size:1rem;margin-bottom:1rem;text-align:center}.client-details-form .found-user-info{align-items:center;background-color:var(--background-light);border-radius:.5rem;display:flex;margin-top:.5rem;padding:.75rem}.client-details-form .found-user-info .user-avatar-small{height:2.5rem;margin-right:.75rem;width:2.5rem}.client-details-form .found-user-info .user-avatar-small .user-avatar-img{border-radius:50%;height:100%;object-fit:cover;width:100%}.client-details-form .found-user-info .user-avatar-small .avatar-placeholder-small{align-items:center;background-color:#0071e3;background-color:var(--primary-color);border-radius:50%;color:#fff;display:flex;font-size:1rem;font-weight:600;height:100%;justify-content:center;width:100%}.client-details-form .found-user-info span{color:var(--text-primary);font-size:.875rem;font-weight:500}@media(max-width:48rem){.client-details-form .form-actions{flex-direction:column-reverse;gap:1rem}.client-details-form .form-actions button{width:100%}}.album-subscription-selection{padding-bottom:3rem;position:relative}.album-subscription-selection .header-section{margin-bottom:1.5rem}.album-subscription-selection .header-section .section-title{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#0071e3,var(--accent-color));background:linear-gradient(90deg,var(--primary-color),var(--accent-color));-webkit-background-clip:text;background-clip:text;color:var(--text-primary);display:inline-block;font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.album-subscription-selection .header-section .section-description{color:#86868b;color:var(--text-secondary);font-size:1rem;max-width:40rem}.album-subscription-selection .compare-toggle{display:flex;justify-content:flex-end;margin-bottom:1rem}.album-subscription-selection .compare-toggle .compare-button{align-items:center;background:#0000;border:none;border-radius:1rem;color:#0071e3;color:var(--primary-color);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.album-subscription-selection .compare-toggle .compare-button:hover{background-color:rgba(var(--primary-rgb),.1)}.album-subscription-selection .compare-toggle .compare-button.active{background-color:rgba(var(--primary-rgb),.15);font-weight:600}.album-subscription-selection .compare-toggle .compare-button:disabled{cursor:not-allowed;opacity:.5}.album-subscription-selection .error-message{align-items:center;background-color:rgba(var(--error-rgb),.1);border:1px solid #ff3b30;border:1px solid var(--error-color);border-radius:.5rem;display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem}.album-subscription-selection .error-message .error-icon{color:#ff3b30;color:var(--error-color);flex-shrink:0;font-size:1.125rem}.album-subscription-selection .error-message span{color:var(--text-primary);flex-grow:1;font-size:.875rem}.album-subscription-selection .category-selector{background-color:var(--background-light);border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:.5rem;display:flex;margin-bottom:1.5rem;padding:.25rem}.album-subscription-selection .category-selector .category-button{align-items:center;background:#0000;border:none;border-radius:.375rem;color:#86868b;color:var(--text-secondary);cursor:pointer;display:flex;flex:1 1;font-weight:500;justify-content:center;padding:.75rem 1rem;transition:all .2s ease}.album-subscription-selection .category-selector .category-button.active{background-color:#0071e3;background-color:var(--primary-color);box-shadow:var(--shadow-sm);color:#fff}.album-subscription-selection .category-selector .category-button .category-icon{font-size:.875rem;margin-right:.5rem}.album-subscription-selection .category-selector .category-button:hover:not(.active){background-color:var(--background-hover)}.album-subscription-selection .auto-renewal-option{margin-bottom:1rem;margin-top:1.5rem}.album-subscription-selection .auto-renewal-option .checkbox-container{align-items:center;color:#86868b;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.875rem}.album-subscription-selection .auto-renewal-option .checkbox-container input[type=checkbox]{accent-color:#0071e3;accent-color:var(--primary-color);cursor:pointer;height:1rem;margin-right:.5rem;width:1rem}.album-subscription-selection .auto-renewal-option .checkbox-container input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.album-subscription-selection .auto-renewal-option .checkbox-container .checkbox-label{-webkit-user-select:none;user-select:none}.album-subscription-selection .action-buttons{display:flex;justify-content:space-between;margin-top:1.5rem}.album-subscription-selection .action-buttons button{min-width:10rem;transition:transform .2s ease}.album-subscription-selection .action-buttons button:hover:not(:disabled){transform:translateY(-.125rem)}.album-subscription-selection .action-buttons button .back-icon{transform:rotate(180deg)}.album-subscription-selection .album-skeleton-container{align-items:center;display:flex;flex-direction:column;width:100%}.album-subscription-selection .album-skeleton-container .album-skeleton-header{animation:pulse 1.5s infinite;background-color:#e8e8ed;background-color:var(--gray-200,#e0e0e0);border-radius:.5rem;height:2rem;margin-bottom:2rem;width:60%}.album-subscription-selection .album-skeleton-container .album-skeleton-storage{animation:pulse 1.5s infinite;background-color:#e8e8ed;background-color:var(--gray-200,#e0e0e0);border-radius:.5rem;height:6rem;margin-bottom:2rem;overflow:hidden;position:relative;width:100%}.album-subscription-selection .album-skeleton-container .album-skeleton-storage:after{animation:shimmer 2s linear infinite;background-image:linear-gradient(90deg,#fff0,#fff3 20%,#ffffff80 60%,#fff0);bottom:0;content:"";left:0;position:absolute;right:0;top:0;transform:translateX(-100%)}.album-subscription-selection .album-skeleton-container .album-skeleton-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr);width:100%}.album-subscription-selection .album-skeleton-container .album-skeleton-grid .album-skeleton-card{animation:pulse 1.5s infinite;background-color:#e8e8ed;background-color:var(--gray-200,#e0e0e0);border-radius:.5rem;height:24rem;overflow:hidden;position:relative}.album-subscription-selection .album-skeleton-container .album-skeleton-grid .album-skeleton-card:before{background-color:#d2d2d7;background-color:var(--gray-300,#d0d0d0);border-radius:.25rem;content:"";height:2rem;left:1rem;position:absolute;right:1rem;top:4rem}.album-subscription-selection .album-skeleton-container .album-skeleton-grid .album-skeleton-card:after{animation:shimmer 2s linear infinite;background-image:linear-gradient(90deg,#fff0,#fff3 20%,#ffffff80 60%,#fff0);bottom:0;content:"";left:0;position:absolute;right:0;top:0;transform:translateX(-100%)}.album-subscription-selection .album-skeleton-container .album-skeleton-grid .album-skeleton-card .album-skeleton-button,.album-subscription-selection .album-skeleton-container .album-skeleton-grid .album-skeleton-card .album-skeleton-features,.album-subscription-selection .album-skeleton-container .album-skeleton-grid .album-skeleton-card .album-skeleton-price{background-color:#d2d2d7;background-color:var(--gray-300,#d0d0d0);border-radius:.25rem;height:1.5rem;left:1rem;position:absolute;right:1rem}.album-subscription-selection .album-skeleton-container .album-skeleton-grid .album-skeleton-card .album-skeleton-price{top:8rem;width:40%}.album-subscription-selection .album-skeleton-container .album-skeleton-grid .album-skeleton-card .album-skeleton-features{height:6rem;top:12rem}.album-subscription-selection .album-skeleton-container .album-skeleton-grid .album-skeleton-card .album-skeleton-button{bottom:1.5rem;height:2.5rem}@media(max-width:48rem){.album-subscription-selection .header-section .section-title{font-size:1.25rem}.album-subscription-selection .header-section .section-description{font-size:.875rem}.album-subscription-selection .compare-toggle{justify-content:center;margin-bottom:1.5rem}.album-subscription-selection .category-selector{flex-direction:column;gap:.5rem;padding:.5rem}.album-subscription-selection .category-selector .category-button{width:100%}.album-subscription-selection .plans-grid{grid-template-columns:1fr}.album-subscription-selection .auto-renewal-option{margin-bottom:.75rem;margin-top:1rem}.album-subscription-selection .auto-renewal-option .checkbox-container{font-size:.75rem}.album-subscription-selection .action-buttons{flex-direction:column-reverse}.album-subscription-selection .action-buttons .back-button,.album-subscription-selection .action-buttons .continue-button{margin:.5rem 0;width:100%}}.album-payment-verification{animation:fadeIn .3s ease-out;background-color:#fff;background-color:var(--white);border-radius:1rem;box-shadow:var(--shadow-md);margin-top:2rem;padding:2rem}.album-payment-verification .album-payment-header{align-items:center;border-bottom:1px solid #d2d2d7;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.album-payment-verification .album-payment-header h3{color:#1d1d1f;color:var(--text-color);font-size:1.5rem;font-weight:600;margin:0}.album-payment-verification .album-payment-header .payment-icon{color:#0071e3;color:var(--primary-color);font-size:2rem}.album-payment-verification .album-payment-steps{display:flex;flex-direction:column;gap:2rem;margin-bottom:2rem}.album-payment-verification .album-payment-steps .album-payment-step{display:flex;gap:1.5rem}.album-payment-verification .album-payment-steps .album-payment-step .step-indicator{align-items:center;display:flex;flex-direction:column}.album-payment-verification .album-payment-steps .album-payment-step .step-indicator .step-number{align-items:center;background-color:#0071e3;background-color:var(--primary-color);border-radius:50%;color:#fff;display:flex;font-size:1.25rem;font-weight:600;height:2.5rem;justify-content:center;margin-bottom:.5rem;width:2.5rem}.album-payment-verification .album-payment-steps .album-payment-step .step-indicator .step-line{background-color:#0071e3;background-color:var(--primary-color);border-radius:.125rem;flex-grow:1;height:100%;width:.25rem}.album-payment-verification .album-payment-steps .album-payment-step .step-content{flex:1 1}.album-payment-verification .album-payment-steps .album-payment-step .step-content h4{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;font-weight:600;margin:0 0 .75rem}.album-payment-verification .album-payment-steps .album-payment-step .step-content p{color:#86868b;color:var(--text-secondary);font-size:1rem;line-height:1.5;margin:0 0 1.5rem}.album-payment-verification .album-payment-steps .album-payment-step .step-content .reopen-button,.album-payment-verification .album-payment-steps .album-payment-step .step-content .verify-button{margin-top:.5rem}.album-payment-verification .album-payment-note{align-items:flex-start;background-color:#ff95001a;background-color:rgba(var(--warning-color-rgb),.1);border-left:.25rem solid #ff9500;border-left:.25rem solid var(--warning-color);border-radius:.5rem;display:flex;gap:1rem;margin-bottom:1.5rem;padding:1rem}.album-payment-verification .album-payment-note .info-icon{color:#ff9500;color:var(--warning-color);flex-shrink:0;font-size:1.25rem;margin-top:.125rem}.album-payment-verification .album-payment-note p{color:#1d1d1f;color:var(--text-color);font-size:.875rem;line-height:1.5;margin:0}.album-payment-verification .payment-actions{display:flex;justify-content:flex-start;margin-top:1rem}.album-payment-verification .payment-actions .back-button{color:#0071e3;color:var(--primary-color)}.album-payment-verification .payment-actions .back-button:hover{text-decoration:underline}@media(max-width:48rem){.album-payment-verification{margin-top:1.5rem;padding:1.5rem}.album-payment-verification .album-payment-steps{gap:1.5rem}.album-payment-verification .album-payment-steps .album-payment-step{gap:1rem}}.photographer-component h1,.photographer-component h2,.photographer-component h3,.photographer-component h4,.photographer-component h5,.photographer-component h6{color:#1d1d1f;color:var(--text-color);margin-bottom:1rem}.photographer-component h1{font-size:2rem;font-weight:700}.photographer-component h2{font-size:1.5rem;font-weight:600}.photographer-component h3{font-size:1.25rem;font-weight:600}.photographer-component p{color:#86868b;color:var(--text-secondary);font-size:1rem;line-height:1.5;margin-bottom:1rem}.photographer-component .form-group{margin-bottom:1.25rem}.photographer-component .form-group label{color:#1d1d1f;color:var(--text-color);display:block;font-weight:500;margin-bottom:.5rem}.photographer-component .form-group .text-input{background-color:#fff;background-color:var(--white-color);border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:8px;font-size:1rem;padding:.5rem 1rem;transition:border-color .2s cubic-bezier(.25,.46,.45,.94),box-shadow .2s cubic-bezier(.25,.46,.45,.94);width:100%}.photographer-component .form-group .text-input:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 2px #0071e333;box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.2);outline:none}.photographer-component .form-group .text-input.textarea{min-height:6rem;resize:vertical}.photographer-component .form-group .text-input:disabled{background-color:#e8e8ed;cursor:not-allowed;opacity:.7}.photographer-component .card{background-color:#fff;background-color:var(--white-color);border-radius:12px;box-shadow:0 4px 8px #00000014;margin-bottom:1.5rem;padding:1.5rem;transition:transform .3s cubic-bezier(.25,.46,.45,.94),box-shadow .3s cubic-bezier(.25,.46,.45,.94)}.photographer-component .card:hover{box-shadow:0 8px 16px #0000001f;transform:translateY(-.25rem)}.photographer-component .toast{z-index:1000}.photographer-component .toast.toast-success{background-color:#34c759f2;background-color:rgba(var(--success-color-rgb),.95)}.photographer-component .toast.toast-error{background-color:#ff3b30f2;background-color:rgba(var(--danger-color-rgb),.95)}.photographer-component .toast.toast-info{background-color:#5ac8faf2;background-color:rgba(var(--info-color-rgb),.95)}.photographer-component .button.button-primary{background-color:#0071e3;background-color:var(--primary-color);color:#fff;color:var(--white-color)}.photographer-component .button.button-primary:hover:not(:disabled){background-color:#0077ed;background-color:var(--primary-color-hover)}.photographer-component .button.button-primary:active:not(:disabled){background-color:#0068d1;background-color:var(--primary-color-active)}.photographer-component .button.button-secondary{background-color:#0071e31a;background-color:var(--secondary-color);color:#0071e3;color:var(--primary-color)}.photographer-component .button.button-secondary:hover:not(:disabled){background-color:#0071e326;background-color:var(--secondary-color-dark)}.photographer-component .button.button-secondary:active:not(:disabled){background-color:#0071e333;background-color:var(--secondary-color-darker)}.photographer-component .button.button-outline{border:1px solid #0071e3;border:1px solid var(--primary-color);color:#0071e3;color:var(--primary-color)}.photographer-component .button.button-outline:hover:not(:disabled){background-color:#0071e30d;background-color:rgba(var(--primary-color-rgb),.05)}.photographer-component .button.button-danger{background-color:#ff3b30;background-color:var(--danger-color);color:#fff;color:var(--white-color)}.photographer-component .button.button-danger:hover:not(:disabled){background-color:#ff2317;background-color:var(--error-color-dark)}.photographer-component .button.button-danger:active:not(:disabled){background-color:#fc0d00;background-color:var(--error-color-darker)}.photographer-component .button.button-small{font-size:.875rem;padding:.25rem 1rem}.photographer-component .button.button-medium{font-size:1rem;padding:.5rem 1.25rem}.photographer-component .button.button-large{font-size:1.125rem;padding:1rem 1.5rem}.photographer-component .action-buttons{display:flex;justify-content:space-between;margin-top:2rem}.photographer-component .action-buttons .button{min-width:10rem}@media(max-width:48rem){.photographer-component .action-buttons{flex-direction:column-reverse;gap:1rem}.photographer-component .action-buttons .button{width:100%}}.card{background-color:#fff;background-color:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);overflow:hidden;position:relative;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}.card.elevation-none{box-shadow:none}.card.elevation-low{box-shadow:0 .25rem .5rem #0000000d,0 .125rem .25rem #00000014;box-shadow:0 var(--spacing-xs) var(--spacing-sm) var(--shadow-light),0 calc(var(--spacing-xs)/2) var(--spacing-xs) var(--shadow-medium)}.card.elevation-medium{box-shadow:0 .5rem 1rem #00000014,0 .25rem .5rem #0000000d;box-shadow:0 var(--spacing-sm) var(--spacing-md) var(--shadow-medium),0 var(--spacing-xs) var(--spacing-sm) var(--shadow-light)}.card.elevation-high{box-shadow:0 1rem 1.25rem #00000014,0 .5rem 1rem #0000000d;box-shadow:0 var(--spacing-md) var(--spacing-lg) var(--shadow-medium),0 var(--spacing-sm) var(--spacing-md) var(--shadow-light)}.card.padding-none{padding:0}.card.padding-small{padding:.5rem;padding:var(--spacing-sm)}.card.padding-medium{padding:1rem;padding:var(--spacing-md)}.card.padding-large{padding:1.5rem;padding:var(--spacing-xl)}.card.radius-none{border-radius:0}.card.radius-small{border-radius:6px;border-radius:var(--border-radius-sm)}.card.radius-medium{border-radius:8px;border-radius:var(--border-radius-md)}.card.radius-large{border-radius:12px;border-radius:var(--border-radius-lg)}.card.hoverable{cursor:pointer;transition:transform .2s cubic-bezier(.25,.46,.45,.94),box-shadow .2s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.card.hoverable:hover{box-shadow:0 .5rem 1rem #0071e31a,0 .25rem .5rem #0071e314;box-shadow:0 var(--spacing-sm) var(--spacing-md) rgba(var(--primary-color-rgb),.1),0 var(--spacing-xs) var(--spacing-sm) rgba(var(--primary-color-rgb),.08);transform:translateY(-.125rem);transform:translateY(calc(var(--spacing-xs)*-.5))}.card.hoverable:active{box-shadow:0 .25rem .5rem #00000014,0 .125rem .25rem #0000000d;box-shadow:0 var(--spacing-xs) var(--spacing-sm) var(--shadow-medium),0 calc(var(--spacing-xs)/2) var(--spacing-xs) var(--shadow-light);transform:translateY(0);transition:all .1s ease-out}.card.selectable:after{border:.125rem solid #0000;border:calc(var(--spacing-xs)/2) solid #0000;border-radius:inherit;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;transition:border-color .2s cubic-bezier(.25,.46,.45,.94);transition:border-color var(--transition-fast)}.card.selectable.selected:after{border-color:#0071e3;border-color:var(--primary-color)}.card:focus-visible{outline:.125rem solid #0071e3;outline:calc(var(--spacing-xs)/2) solid var(--primary-color);outline-offset:.125rem;outline-offset:calc(var(--spacing-xs)/2)}@media(prefers-color-scheme:dark){.card.elevation-high,.card.elevation-low,.card.elevation-medium{box-shadow:0 .5rem 1rem #0000004d;box-shadow:0 var(--spacing-sm) var(--spacing-md) #0000004d}.card.hoverable:hover{box-shadow:0 .5rem 1.25rem #0071e326;box-shadow:0 var(--spacing-sm) var(--spacing-lg) rgba(var(--primary-color-rgb),.15)}}.album-subscription-selection{margin-bottom:2rem;width:100%}.album-subscription-selection .section-title{color:#1d1d1f;font-size:1.5rem;margin-bottom:1.25rem}.album-subscription-selection .storage-section{margin-bottom:2rem}.album-subscription-selection .storage-section .storage-info{background-color:#f5f5f7;background-color:var(--gray-100);border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 2px 4px #0000000d;box-shadow:var(--shadow-sm-value);padding:1.25rem;padding:var(--spacing-lg)}.album-subscription-selection .storage-section .storage-info .storage-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.album-subscription-selection .storage-section .storage-info .storage-header h3{color:#1d1d1f;color:var(--text-color);font-size:1.125rem;margin:0}.album-subscription-selection .storage-section .storage-info .storage-details .storage-text{font-size:.875rem;margin-bottom:.5rem}.album-subscription-selection .storage-section .storage-info .storage-details .storage-text .limit,.album-subscription-selection .storage-section .storage-info .storage-details .storage-text .used{font-weight:600}.album-subscription-selection .storage-section .storage-info .storage-details .storage-bar{background-color:#e8e8ed;background-color:var(--gray-200);border-radius:9999px;border-radius:var(--border-radius-pill);height:.5rem;overflow:hidden}.album-subscription-selection .storage-section .storage-info .storage-details .storage-bar .storage-progress{background-color:#0071e3;background-color:var(--primary-color);border-radius:9999px;border-radius:var(--border-radius-pill);height:100%;transition:width .3s ease}.album-subscription-selection .storage-section .storage-info .storage-details .storage-bar .storage-progress.warning{background-color:#ff9500;background-color:var(--warning-color)}.album-subscription-selection .storage-section .storage-info .storage-details .storage-bar .storage-progress.danger{background-color:#ff3b30;background-color:var(--danger-color)}.album-subscription-selection .plans-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.album-subscription-selection .plans-header h3{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;margin:0}.album-subscription-selection .plans-header .view-controls{display:flex;gap:.5rem}.album-subscription-selection .plans-header .view-controls .view-control{background-color:#f5f5f7;background-color:var(--gray-100);border:1px solid #d2d2d7;border:1px solid var(--gray-300);border-radius:6px;border-radius:var(--border-radius-sm);cursor:pointer;padding:.375rem .75rem;transition:all .2s ease}.album-subscription-selection .plans-header .view-controls .view-control.active{background-color:#0071e3;background-color:var(--primary-color);border-color:#0071e3;border-color:var(--primary-color);color:#fff}.album-subscription-selection .plans-header .view-controls .view-control:hover:not(.active){background-color:#e8e8ed;background-color:var(--gray-200)}.album-subscription-selection .plans-header .view-controls .view-control .icon{margin-right:.25rem}.album-subscription-selection .album-plans-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));margin-bottom:1.5rem}@media(min-width:64rem){.album-subscription-selection .album-plans-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:48rem)and (max-width:64rem){.album-subscription-selection .album-plans-grid{grid-template-columns:repeat(2,1fr)}}.album-subscription-selection .album-plan-card{border:2px solid #0000;cursor:pointer;display:flex;flex-direction:column;height:100%;overflow:hidden;padding:1rem;position:relative;transition:transform .3s ease-in-out,box-shadow .3s ease-in-out,border-color .3s ease-in-out}.album-subscription-selection .album-plan-card:hover{box-shadow:#00000014;box-shadow:var(--shadow-medium);transform:translateY(-.25rem)}.album-subscription-selection .album-plan-card .spinner{animation:spin 1s linear infinite}.album-subscription-selection .album-plan-card.recommended{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 .25rem .75rem #0071e333;box-shadow:0 .25rem .75rem rgba(var(--primary-color-rgb),.2)}.album-subscription-selection .album-plan-card.selected{background-color:#0071e30d;background-color:rgba(var(--primary-color-rgb),.05);border-color:#0071e3;border-color:var(--primary-color)}.album-subscription-selection .album-plan-card.current{background-color:#34c7590d;background-color:rgba(var(--success-color-rgb),.05);border-color:#34c759;border-color:var(--success-color)}.album-subscription-selection .album-plan-card .badge{align-items:center;border-radius:6px;border-radius:var(--border-radius-sm);box-shadow:var(--shadow-sm);display:flex;font-size:.75rem;font-weight:600;gap:.25rem;left:.75rem;padding:.25rem .5rem;position:absolute;top:.75rem;z-index:1}.album-subscription-selection .album-plan-card .badge.recommended-badge{background-color:#0071e3;background-color:var(--primary-color);color:#fff}.album-subscription-selection .album-plan-card .badge.popular-badge{background-color:#34c759;background-color:var(--success-color);color:#fff}.album-subscription-selection .album-plan-card .badge.savings-badge{background-color:#ff9500;background-color:var(--warning-color);color:#000;margin-left:70%;width:30%}.album-subscription-selection .album-plan-card .badge.current-badge{background-color:#6e6e73;background-color:var(--gray-600);color:#fff}.album-subscription-selection .album-plan-card .plan-header{border-bottom:1px solid #d2d2d7;border-bottom:1px solid var(--border-color);margin-bottom:1rem;padding-bottom:1rem}.album-subscription-selection .album-plan-card .plan-header h3{color:inherit;font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.album-subscription-selection .album-plan-card .plan-header .plan-price{align-items:baseline;color:#0071e3;color:var(--primary-color);display:flex;font-size:1.5rem;font-weight:700;gap:.25rem;margin:0 0 .25rem}.album-subscription-selection .album-plan-card .plan-header .plan-price .monthly-price{color:#86868b;color:var(--text-secondary);font-size:.875rem;font-weight:500}.album-subscription-selection .album-plan-card .plan-header .plan-duration{align-items:center;color:#86868b;color:var(--text-secondary);display:flex;font-size:.875rem;gap:.25rem;margin:0 0 .5rem}.album-subscription-selection .album-plan-card .plan-header .plan-storage{align-items:center;color:#1d1d1f;color:var(--text-color);display:flex;font-size:.875rem;font-weight:500;gap:.25rem;margin:.25rem 0 0}.album-subscription-selection .album-plan-card .plan-features{flex:1 1;list-style:none;margin:0;padding:0}.album-subscription-selection .album-plan-card .plan-features li{align-items:flex-start;display:flex;font-size:.875rem;gap:.5rem;margin-bottom:.5rem}.album-subscription-selection .album-plan-card .plan-features li.included{color:#1d1d1f;color:var(--text-color)}.album-subscription-selection .album-plan-card .plan-features li.excluded{color:#86868b;color:var(--text-secondary);opacity:.7;text-decoration:line-through}.album-subscription-selection .album-plan-card .plan-features li .feature-icon,.album-subscription-selection .album-plan-card .plan-features li svg{flex-shrink:0;font-size:1rem;margin-top:.125rem}.album-subscription-selection .album-plan-card .plan-features li .feature-icon.included,.album-subscription-selection .album-plan-card .plan-features li svg.included{color:#34c759;color:var(--success-color)}.album-subscription-selection .album-plan-card .plan-features li .feature-icon.excluded,.album-subscription-selection .album-plan-card .plan-features li svg.excluded{color:#86868b;color:var(--text-secondary)}.album-subscription-selection .album-plan-card .plan-features li .feature-text{line-height:1.4}.album-subscription-selection .album-plan-card .selected-indicator{border-color:#0000 #0071e3 #0000 #0000;border-color:#0000 var(--primary-color) #0000 #0000;border-style:solid;border-width:0 3rem 3rem 0;height:0;position:absolute;right:0;top:0;width:0}.album-subscription-selection .album-plan-card .selected-indicator .selected-check{color:#fff;font-size:1rem;position:absolute;right:.5rem;top:.5rem}.album-subscription-selection .plans-table{border:1px solid #d2d2d7;border:1px solid var(--gray-300);border-radius:8px;border-radius:var(--border-radius-md);overflow:hidden}.album-subscription-selection .plans-table table{border-collapse:collapse;width:100%}.album-subscription-selection .plans-table table td,.album-subscription-selection .plans-table table th{border-bottom:1px solid #d2d2d7;border-bottom:1px solid var(--gray-300);font-size:.875rem;padding:.75rem 1rem;text-align:left}.album-subscription-selection .plans-table table td:not(:first-child),.album-subscription-selection .plans-table table th:not(:first-child){border-left:1px solid #d2d2d7;border-left:1px solid var(--gray-300)}.album-subscription-selection .plans-table table th{background-color:#f5f5f7;background-color:var(--gray-100);color:#1d1d1f;color:var(--text-color);font-weight:600}.album-subscription-selection .plans-table table th.plan-header{text-align:center}.album-subscription-selection .plans-table table th.plan-header .plan-name{font-size:1rem;margin-bottom:.25rem}.album-subscription-selection .plans-table table th.plan-header .plan-price{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;font-weight:700;margin-bottom:.25rem}.album-subscription-selection .plans-table table th.plan-header .plan-price .currency{font-size:.875rem}.album-subscription-selection .plans-table table th.plan-header .plan-price .period{color:#86868b;color:var(--text-secondary);font-size:.75rem;font-weight:400}.album-subscription-selection .plans-table table th.plan-header .select-plan-btn{margin-top:.5rem}.album-subscription-selection .plans-table table tr:last-child td{border-bottom:none}.album-subscription-selection .plans-table table tr:nth-child(2n){background-color:var(--gray-50)}.album-subscription-selection .plans-table table td.feature-cell{text-align:center}.album-subscription-selection .plans-table table td.feature-cell .feature-icon{font-size:1rem}.album-subscription-selection .plans-table table td.feature-cell .feature-icon.included{color:#34c759;color:var(--success-color)}.album-subscription-selection .plans-table table td.feature-cell .feature-icon.excluded{color:#ff3b30;color:var(--danger-color)}.subscription-actions{display:flex;justify-content:center;margin-top:2rem}.subscription-actions .action-button{min-width:12rem}.subscription-actions .action-button:not(:last-child){margin-right:1rem}@media(max-width:48rem){.subscription-plan-container .plans-section .album-plans-grid{grid-template-columns:1fr}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.album-skeleton-container .album-skeleton-grid{grid-template-columns:1fr}}.album-details-form{width:100%}.album-details-form .section-title{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.album-details-form .section-description{color:#86868b;color:var(--text-secondary);font-size:1rem;margin-bottom:1.5rem}.album-details-form .section{margin-bottom:2rem}.album-details-form .section .section-title{font-size:1.125rem;font-weight:600;margin-bottom:.25rem}.album-details-form .section .section-subtitle{color:#86868b;color:var(--text-secondary);font-size:.875rem;margin-bottom:1rem}.album-details-form .album-types-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(8rem,1fr));margin-bottom:1rem}.album-details-form .album-types-grid .album-type-card{align-items:center;border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:.5rem;cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:1.25rem .75rem;transition:all .2s ease}.album-details-form .album-types-grid .album-type-card:hover{box-shadow:var(--shadow-md);transform:translateY(-.25rem)}.album-details-form .album-types-grid .album-type-card.selected{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(var(--primary-rgb),.2);color:#0071e3;color:var(--primary-color);font-weight:600}.album-details-form .album-types-grid .album-type-card.selected .type-name{color:#0071e3;color:var(--primary-color);font-weight:600}.album-details-form .album-types-grid .album-type-card .type-icon{font-size:1.5rem;margin-bottom:.75rem}.album-details-form .album-types-grid .album-type-card .type-icon svg{display:block}.album-details-form .album-types-grid .album-type-card .type-name{font-size:.875rem;font-weight:500;text-align:center}.album-details-form .form-group{margin-bottom:1.25rem}.album-details-form .form-group label{color:var(--text-primary);display:block;font-weight:500;margin-bottom:.5rem}.album-details-form .form-group .text-input{background-color:var(--background-light);border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:.5rem;font-size:1rem;padding:.75rem 1rem;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.album-details-form .form-group .text-input:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(var(--primary-rgb),.2);outline:none}.album-details-form .form-group .text-input.textarea{min-height:6rem;resize:vertical}.album-details-form .form-group .text-input:disabled{background-color:var(--background-disabled);cursor:not-allowed;opacity:.7}.album-details-form .cover-preview-container{border-radius:.5rem;height:12rem;margin-bottom:1rem;overflow:hidden;position:relative;width:100%}.album-details-form .cover-preview-container .cover-preview{height:100%;object-fit:cover;width:100%}.album-details-form .cover-preview-container .remove-photo-button{align-items:center;background-color:#00000080;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:2rem;justify-content:center;position:absolute;right:.5rem;top:.5rem;transition:background-color .2s ease;width:2rem}.album-details-form .cover-preview-container .remove-photo-button:hover{background-color:#000000b3}.album-details-form .cover-preview-container .remove-photo-button:disabled{cursor:not-allowed;opacity:.5}.album-details-form .cover-preview-container .upload-progress-container{align-items:center;background-color:#00000080;bottom:0;display:flex;height:1.5rem;left:0;position:absolute;width:100%}.album-details-form .cover-preview-container .upload-progress-container .upload-progress-bar{background-color:#0071e3;background-color:var(--primary-color);height:100%;transition:width .3s ease}.album-details-form .cover-preview-container .upload-progress-container .upload-progress-text{color:#fff;font-size:.75rem;font-weight:500;position:absolute;text-align:center;width:100%}.album-details-form .cover-photo-upload{align-items:center;background-color:var(--background-light);border:2px dashed #d2d2d7;border:2px dashed var(--border-color);border-radius:.5rem;cursor:pointer;display:flex;height:12rem;justify-content:center;transition:all .2s ease;width:100%}.album-details-form .cover-photo-upload:hover{background-color:rgba(var(--primary-rgb),.05);border-color:#0071e3;border-color:var(--primary-color)}.album-details-form .cover-photo-upload .upload-button{align-items:center;cursor:pointer;display:flex;flex-direction:column}.album-details-form .cover-photo-upload .upload-button .upload-icon{color:#0071e3;color:var(--primary-color);font-size:2rem;margin-bottom:.75rem}.album-details-form .cover-photo-upload .upload-button span{color:#86868b;color:var(--text-secondary);font-size:1rem;font-weight:500}.album-details-form .setting-row{align-items:center;border-bottom:1px solid #d2d2d7;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:1rem 0}.album-details-form .setting-row:last-child{border-bottom:none}.album-details-form .setting-row .setting-label-container{align-items:center;display:flex;flex:1 1}.album-details-form .setting-row .setting-label-container .setting-icon{align-items:center;background-color:var(--background-light);border-radius:50%;color:#0071e3;color:var(--primary-color);display:flex;font-size:1rem;height:2.5rem;justify-content:center;margin-right:1rem;width:2.5rem}.album-details-form .setting-row .setting-label-container .setting-text{display:flex;flex-direction:column}.album-details-form .setting-row .setting-label-container .setting-text .setting-label{color:var(--text-primary);font-weight:500;margin-bottom:.25rem}.album-details-form .setting-row .setting-label-container .setting-text .setting-description{color:#86868b;color:var(--text-secondary);font-size:.875rem}.album-details-form .setting-row .toggle-switch{display:inline-block;height:2rem;position:relative;width:3.5rem}.album-details-form .setting-row .toggle-switch input{height:0;opacity:0;width:0}.album-details-form .setting-row .toggle-switch input:checked+.toggle-slider{background-color:#0071e3;background-color:var(--primary-color)}.album-details-form .setting-row .toggle-switch input:checked+.toggle-slider:before{transform:translateX(1.5rem)}.album-details-form .setting-row .toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.5}.album-details-form .setting-row .toggle-switch .toggle-slider{background-color:#d2d2d7;background-color:var(--border-color);border-radius:2rem;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.4s}.album-details-form .setting-row .toggle-switch .toggle-slider:before{background-color:#fff;border-radius:50%;bottom:.25rem;content:"";height:1.5rem;left:.25rem;position:absolute;transition:.4s;width:1.5rem}.album-details-form .password-container{background-color:var(--background-light);border-radius:.5rem;margin-top:1rem;padding:1rem}.album-details-form .password-container .input-container{margin-bottom:.75rem}.album-details-form .password-container .input-container label{display:block;font-weight:500;margin-bottom:.5rem}.album-details-form .password-container .password-hint{color:#86868b;color:var(--text-secondary);font-size:.75rem;margin:0}.album-details-form .action-buttons{display:flex;justify-content:space-between;margin-top:2rem}.album-details-form .action-buttons button{min-width:10rem}@media(max-width:48rem){.album-details-form .album-types-grid{grid-template-columns:repeat(auto-fill,minmax(6rem,1fr))}.album-details-form .action-buttons{flex-direction:column-reverse;gap:1rem}.album-details-form .action-buttons button{width:100%}}.photographer-create-album-modal{width:100%}.photographer-create-album-modal .premium-progress-steps{display:flex;margin-bottom:2rem;padding:2rem 2rem 0;position:relative}.photographer-create-album-modal .premium-progress-steps .premium-step{align-items:flex-start;display:flex;flex:1 1;position:relative}.photographer-create-album-modal .premium-progress-steps .premium-step .premium-step-indicator{align-items:center;display:flex;z-index:2}.photographer-create-album-modal .premium-progress-steps .premium-step .premium-step-number{align-items:center;background-color:var(--background-light);border:2px solid #d2d2d7;border:2px solid var(--border-color);border-radius:50%;color:#86868b;color:var(--text-secondary);display:flex;font-size:1.125rem;font-weight:600;height:2.5rem;justify-content:center;margin-right:1rem;transition:all .3s ease;width:2.5rem}.photographer-create-album-modal .premium-progress-steps .premium-step .premium-step-title{display:flex;flex-direction:column}.photographer-create-album-modal .premium-progress-steps .premium-step .premium-step-title .premium-step-name{color:var(--text-primary);font-size:1rem;font-weight:600;margin-bottom:.25rem;transition:color .3s ease}.photographer-create-album-modal .premium-progress-steps .premium-step .premium-step-title .premium-step-description{color:#86868b;color:var(--text-secondary);font-size:.875rem;transition:color .3s ease}.photographer-create-album-modal .premium-progress-steps .premium-step .premium-step-connector{height:100%;left:1.25rem;position:absolute;top:1.25rem;width:100%;z-index:1}.photographer-create-album-modal .premium-progress-steps .premium-step .premium-step-connector .premium-step-connector-line{background-color:#d2d2d7;background-color:var(--border-color);height:2px;left:1.25rem;position:absolute;transition:background-color .3s ease;width:calc(100% - 2.5rem)}.photographer-create-album-modal .premium-progress-steps .premium-step.active .premium-step-number{background-color:#0071e3;background-color:var(--primary-color);border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 4px rgba(var(--primary-rgb),.15);color:#fff}.photographer-create-album-modal .premium-progress-steps .premium-step.active .premium-step-name{color:#0071e3;color:var(--primary-color)}.photographer-create-album-modal .premium-progress-steps .premium-step.completed .premium-step-number{background-color:#34c759;background-color:var(--success-color);border-color:#34c759;border-color:var(--success-color);color:#fff}.photographer-create-album-modal .premium-progress-steps .premium-step.completed .premium-step-connector-line{background-color:#34c759;background-color:var(--success-color)}.photographer-create-album-modal .premium-navigation{display:flex;justify-content:flex-start;margin-top:1.5rem}@media(max-width:64rem){.photographer-create-album-modal .premium-content-container{flex-direction:column}.photographer-create-album-modal .premium-content-container .client-summary-container,.photographer-create-album-modal .premium-content-container .premium-step-content{max-width:100%}}@media(max-width:48rem){.photographer-create-album-modal .premium-header{padding:1.25rem}.photographer-create-album-modal .premium-header h2{font-size:1.5rem}.photographer-create-album-modal .premium-progress-steps{flex-direction:column;gap:1rem;padding:1.5rem 1.5rem 0}.photographer-create-album-modal .premium-progress-steps .premium-step .premium-step-connector{display:none}.photographer-create-album-modal .premium-content-container{padding:1.5rem}}@media(max-width:30rem){.photographer-create-album-modal .premium-header{padding:1rem}.photographer-create-album-modal .premium-header h2{font-size:1.25rem}.photographer-create-album-modal .premium-header .premium-subtitle{font-size:.875rem}.photographer-create-album-modal .premium-progress-steps{padding:1rem 1rem 0}.photographer-create-album-modal .premium-card .premium-card-header,.photographer-create-album-modal .premium-content-container{padding:1rem}.photographer-create-album-modal .premium-card .premium-card-header .premium-card-icon{font-size:1.25rem;height:2.5rem;width:2.5rem}.photographer-create-album-modal .premium-card .premium-card-content{padding:1rem}}.albums-page{background-color:#f5f5f7;background-color:var(--background-color,#f5f5f7);display:flex;flex-direction:column;height:100%;overflow-y:auto}@media(max-width:48rem){.albums-page{padding:1rem}}.album-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));margin:0 1rem}@media(max-width:48rem){.album-grid{gap:1rem;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr))}}.album-grid .add-new{align-items:center;background-color:#fff;background-color:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .0625rem .1875rem #0000000d;box-shadow:0 .0625rem .1875rem var(--shadow-light);cursor:pointer;display:flex;flex-direction:column;height:100%;justify-content:center;min-height:21rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}.album-grid .add-new:hover{box-shadow:0 .25rem .75rem #00000014;box-shadow:0 .25rem .75rem var(--shadow-medium);transform:translateY(-.25rem)}.album-grid .add-new .add-icon{align-items:center;background-color:#0071e3;background-color:var(--primary-color);border-radius:50%;color:#fff;color:var(--text-on-primary);display:flex;font-size:1.5rem;height:3.75rem;justify-content:center;margin-bottom:1rem;width:3.75rem}.album-grid .add-new h3{color:#1d1d1f;color:var(--text-color);font-size:1rem;font-weight:500;margin:0 0 1.25rem}.album-grid .add-new .create-album-button{margin-top:.5rem;max-width:12.5rem;width:80%}.album-card,.album-grid .add-new .create-album-button{transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}.album-card{-webkit-font-smoothing:subpixel-antialiased;-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .25rem 1rem #00000014;box-shadow:0 var(--spacing-xs) var(--spacing-md) var(--shadow-medium);color:inherit;display:block;overflow:hidden;padding:1rem;position:relative;text-decoration:none;will-change:transform,box-shadow}.album-card:hover{box-shadow:0 1rem 1.5rem #00000014;box-shadow:0 var(--spacing-md) var(--spacing-xl) var(--shadow-medium);z-index:2}.album-card:hover .album-cover,.album-card:hover .album-cover-placeholder{transform:scale(1.05)}.album-card:active{box-shadow:0 .25rem .5rem #0000000d;box-shadow:0 var(--spacing-xs) var(--spacing-sm) var(--shadow-light)}.album-card.favorite .album-cover-container:before{border-color:#0000 #0071e3 #0000 #0000;border-color:#0000 var(--primary-color) #0000 #0000;border-style:solid;border-width:0 2rem 2rem 0;border-width:0 var(--spacing-2xl) var(--spacing-2xl) 0;content:"";height:0;position:absolute;right:0;top:0;width:0;z-index:3}.album-card.album-size-small .album-cover-container{aspect-ratio:.75}.album-card.album-size-small .album-cover-container .album-title{font-size:.875rem}.album-card.album-size-small .album-cover-container .album-details{font-size:.75rem}.album-card.album-size-medium .album-cover-container{aspect-ratio:.75}.album-card.album-size-medium .album-cover-container .album-title{font-size:1rem}.album-card.album-size-medium .album-cover-container .album-details{font-size:.8125rem}.album-card.album-size-large .album-cover-container{aspect-ratio:.75}.album-card.album-size-large .album-cover-container .album-title{font-size:1.125rem}.album-card.album-size-large .album-cover-container .album-details{font-size:.875rem}.album-card.selectable{cursor:pointer}.album-card.selectable.selected .album-cover-container:after{background-color:#0071e34d;background-color:rgba(var(--primary-color-rgb),.3);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.album-card .album-cover-container{aspect-ratio:.75;background-color:#fff;background-color:var(--card-background);border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 .25rem .5rem #0000000d;box-shadow:0 var(--spacing-xs) var(--spacing-sm) var(--shadow-light);margin:0 auto;overflow:hidden;position:relative;width:100%}.album-card .album-cover-container.loading{background-color:var(--background-secondary)}.album-card .album-cover-container .album-loading-skeleton{animation:pulse 1.5s ease-in-out infinite;background-color:var(--background-secondary);height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%;z-index:1}.album-card .album-cover-container .album-loading-skeleton .skeleton-shine{animation:skeletonShine 1.5s infinite;background:linear-gradient(90deg,#fff0,#ffffff26 50%,#fff0);height:100%;left:0;position:absolute;top:0;width:100%}.album-card .album-cover-container .album-cover{object-fit:cover;will-change:transform;z-index:2}.album-card .album-cover-container .album-cover,.album-card .album-cover-container .album-cover-placeholder{height:100%;position:relative;transition:transform .3s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-normal);width:100%}.album-card .album-cover-container .album-cover-placeholder{align-items:center;border-radius:8px;border-radius:var(--border-radius-md);box-shadow:inset 0 0 0 1px #ffffff1a;display:flex;justify-content:center;overflow:hidden}.album-card .album-cover-container .album-cover-placeholder:before{background:radial-gradient(circle at 30% 30%,#ffffff26,#0000 70%);bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:1}.album-card .album-cover-container .album-cover-placeholder .placeholder-content{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;padding:1rem;width:100%;z-index:2}.album-card .album-cover-container .album-cover-placeholder .album-initials{color:#fffffff2;font-size:3rem;font-weight:700;letter-spacing:.05em;margin-bottom:.5rem;text-shadow:0 2px 8px #00000026}.album-card .album-cover-container .album-cover-placeholder .placeholder-photo-count{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background-color:#0003;border-radius:1rem;color:#ffffffd9;font-size:.875rem;font-weight:500;padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm);transition:transform .2s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-fast)}.album-size-small .album-card .album-cover-container .album-cover-placeholder .album-initials{font-size:2rem;margin-bottom:.25rem}.album-size-small .album-card .album-cover-container .album-cover-placeholder .placeholder-photo-count{font-size:.75rem;padding:.2rem .5rem;padding:calc(var(--spacing-xs) - .05rem) var(--spacing-sm)}.album-size-medium .album-card .album-cover-container .album-cover-placeholder .album-initials{font-size:3rem}.album-size-large .album-card .album-cover-container .album-cover-placeholder .album-initials{font-size:4rem;margin-bottom:.75rem}.album-size-large .album-card .album-cover-container .album-cover-placeholder .placeholder-photo-count{font-size:1rem;padding:.3rem .875rem;padding:calc(var(--spacing-xs) + .05rem) calc(var(--spacing-md) - .125rem)}.album-card .album-cover-container .album-status-icon{align-items:center;border-radius:50%;box-shadow:0 .125rem .25rem #0003;color:#fff;color:var(--white-color);cursor:help;display:flex;font-size:.875rem;height:1.875rem;justify-content:center;left:.5rem;left:var(--spacing-sm);position:absolute;top:.5rem;top:var(--spacing-sm);transition:transform .2s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-fast);width:1.875rem;z-index:2}.album-card .album-cover-container .album-status-icon:hover{transform:scale(1.1)}.album-card .album-cover-container .album-status-icon.private{background-color:#000000b3}.album-card .album-cover-container .album-status-icon.public{background-color:#0071e3cc;background-color:rgba(var(--primary-color-rgb),.8)}.album-card .album-cover-container .album-status-icon.shared{background-color:#5856d6cc}.album-card .album-cover-container .album-info-overlay{backdrop-filter:blur(.1875rem);-webkit-backdrop-filter:blur(.1875rem);background:linear-gradient(0deg,#000000d9,#00000080,#0000);bottom:0;color:#fff;color:var(--white-color);left:0;padding:1.25rem .5rem .5rem;padding:var(--spacing-lg) var(--spacing-sm) var(--spacing-sm);position:absolute;right:0;transition:opacity .3s cubic-bezier(.25,.46,.45,.94);transition:opacity var(--transition-normal);z-index:3}.album-card .album-cover-container .album-info-overlay .album-title{font-weight:600;letter-spacing:.01em;margin:0 0 .375rem;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 3px #0000004d;white-space:nowrap}.album-card .album-cover-container .album-info-overlay .album-details{align-items:center;display:flex;justify-content:space-between}.album-card .album-cover-container .album-info-overlay .album-details .album-photo-count{opacity:.9}.album-card .album-cover-container .album-info-overlay .album-details .album-tags{display:flex;flex-wrap:wrap;gap:.375rem;gap:calc(var(--spacing-xs) + .125rem)}.album-card .album-cover-container .album-info-overlay .album-details .album-tags .album-tag,.album-card .album-cover-container .album-info-overlay .album-details .album-tags .album-tag-more{font-size:.85em;opacity:.9;white-space:nowrap}.album-card .album-meta-info{color:#86868b;color:var(--text-secondary);font-size:.8125rem;padding:.5rem .25rem 0;padding:var(--spacing-sm) var(--spacing-xs) 0}.album-card .album-meta-info .last-updated{align-items:center;display:flex;gap:.25rem;gap:var(--spacing-xs)}.album-card .album-meta-info .last-updated .update-icon{font-size:.75rem;opacity:.7}.album-card .album-meta-info .last-updated span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.album-card .album-meta-info .subscription-info{align-items:center;display:flex;font-size:.75rem;margin-top:.25rem;margin-top:var(--spacing-xs)}.album-card .album-meta-info .subscription-info .subscription-active{align-items:center;color:#34c759;color:var(--success-color);display:flex;font-weight:500}.album-card .album-meta-info .subscription-info .subscription-active:before{background-color:#34c759;background-color:var(--success-color);border-radius:50%;content:"";display:inline-block;height:.5rem;margin-right:.25rem;margin-right:var(--spacing-xs);width:.5rem}.album-card .album-meta-info .subscription-info .expiry-warning{align-items:center;color:#ff9500;color:var(--warning-color);display:flex;font-weight:500}.album-card .album-meta-info .subscription-info .expiry-warning:before{animation:pulse 1.5s ease-in-out infinite;background-color:#ff9500;background-color:var(--warning-color);border-radius:50%;content:"";display:inline-block;height:.5rem;margin-right:.25rem;margin-right:var(--spacing-xs);width:.5rem}.album-card .album-quick-actions{display:flex;gap:.5rem;gap:var(--spacing-sm);position:absolute;right:.5rem;right:var(--spacing-sm);top:.5rem;top:var(--spacing-sm);z-index:5}.album-card .album-quick-actions .quick-action-btn{align-items:center;backdrop-filter:blur(.25rem);-webkit-backdrop-filter:blur(.25rem);background-color:#00000080;border:none;border-radius:50%;box-shadow:0 .125rem .3125rem #0003;color:#fff;cursor:pointer;display:flex;height:2rem;height:var(--spacing-2xl);justify-content:center;transition:all .2s ease;width:2rem;width:var(--spacing-2xl)}.album-card .album-quick-actions .quick-action-btn:hover{background-color:#000000b3;transform:scale(1.1)}.album-card .album-quick-actions .quick-action-btn:active{transform:scale(.95)}.album-card .album-quick-actions .quick-action-btn.favorite-btn.active{background-color:#0071e3;background-color:var(--primary-color);color:#fff}.album-card .album-selection-indicator{align-items:center;background-color:#ffffffd9;border:.125rem solid #0071e3;border:.125rem solid var(--primary-color);border-radius:50%;box-shadow:0 2px 5px #0003;display:flex;height:1.75rem;justify-content:center;position:absolute;right:.5rem;right:var(--spacing-sm);top:.5rem;top:var(--spacing-sm);transition:transform .2s cubic-bezier(.25,.46,.45,.94),box-shadow .2s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-fast),box-shadow var(--transition-fast);transition:transform .2s ease;width:1.75rem;z-index:4}.album-card .album-selection-indicator .selection-check{animation:scaleIn .2s forwards;background-color:#0071e3;background-color:var(--primary-color);border-radius:50%;height:.875rem;transform:scale(0);width:.875rem}@media(max-width:48rem){.album-card{padding:.5rem;padding:var(--spacing-sm)}.album-card.album-size-large .album-title,.album-card.album-size-medium .album-title{font-size:.9375rem}.album-card.album-size-large .album-details,.album-card.album-size-medium .album-details{font-size:.75rem}.album-card .album-quick-actions .quick-action-btn{height:1.75rem;width:1.75rem}}@media(max-width:480px){.album-card{padding:.5rem}.album-card.album-size-large .album-title,.album-card.album-size-medium .album-title{font-size:.875rem}.album-card.album-size-large .album-details,.album-card.album-size-medium .album-details{font-size:.75rem}.album-card .album-quick-actions{right:.5rem;top:.5rem}.album-card .album-quick-actions .quick-action-btn{height:1.5rem;width:1.5rem}.album-card .album-status-icon{height:1.5rem;left:.5rem;left:var(--spacing-sm);top:.5rem;top:var(--spacing-sm);width:1.5rem}}@media(prefers-color-scheme:dark){.album-card{box-shadow:0 .25rem 1rem #0000004d;box-shadow:0 var(--spacing-xs) var(--spacing-md) #0000004d}.album-card:hover{box-shadow:0 .5rem 1.5rem #0006;box-shadow:0 var(--spacing-sm) var(--spacing-xl) #0006}.album-card .album-loading-skeleton{background-color:#ffffff0d}.album-card .album-loading-skeleton .skeleton-shine{background:linear-gradient(90deg,#fff0,#ffffff1a 50%,#fff0)}}.premium-badge{align-items:center;-webkit-backdrop-filter:blur(.25rem);backdrop-filter:blur(.25rem);background:#0009;border:.0625rem solid #fff3;border-radius:1rem;box-shadow:0 .125rem .25rem #0003;color:#fff;display:flex;font-size:.75rem;font-weight:500;padding:.25rem .5rem;position:absolute;right:.5rem;top:.5rem;transition:all .2s ease;z-index:10}.premium-badge:hover{background:#000c}.premium-badge .premium-icon{align-items:center;color:gold;display:flex;justify-content:center;margin-right:.25rem}.premium-badge .premium-icon svg{height:.875rem;width:.875rem}.premium-badge .status-container{align-items:center;display:flex}.premium-badge .status-container .status-icon{align-items:center;display:flex;margin-right:.25rem}.premium-badge .status-container .status-icon svg{height:.75rem;width:.75rem}.premium-badge .status-container .status-text{font-size:.6875rem;white-space:nowrap}.premium-badge.active .status-icon{color:#34c759}.premium-badge.expiring .status-icon,.premium-badge.pending .status-icon{color:#ff9500}.premium-badge.inactive .status-icon{color:#ff3b30}.premium-badge.size-small{font-size:.625rem;padding:.125rem .375rem}.premium-badge.size-small .premium-icon svg{height:.75rem;width:.75rem}.premium-badge.size-small .status-icon svg{height:.625rem;width:.625rem}.premium-badge.size-small .status-text{font-size:.5625rem}.premium-badge.size-large{font-size:.875rem;padding:.375rem .625rem}.premium-badge.size-large .premium-icon svg{height:1rem;width:1rem}.premium-badge.size-large .status-icon svg{height:.875rem;width:.875rem}.premium-badge.size-large .status-text{font-size:.75rem}.album-header{display:flex;flex-direction:column;margin-bottom:2rem}.album-header .album-header-title{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.album-header .album-header-title h1{color:#1d1d1f;color:var(--text-color);font-size:2rem;font-weight:700;margin:0}.album-header .album-header-title .album-header-actions{align-items:center;display:flex;gap:1rem}.album-header .album-header-title .album-header-actions .search-container{position:relative;width:18.75rem}@media(max-width:48rem){.album-header .album-header-title .album-header-actions .search-container{width:100%}}.album-header .album-header-title .album-header-actions .search-container .search-icon{color:#86868b;color:var(--text-secondary,#86868b);font-size:.9rem;left:.75rem;position:absolute;top:50%;transform:translateY(-50%)}.album-header .album-header-title .album-header-actions .search-container .search-input{background-color:#fff;background-color:var(--input-background,#fff);border:none;border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 .0625rem .125rem #0000000d;color:#1d1d1f;color:var(--text-color,#1d1d1f);font-size:.9rem;padding:.75rem 1rem .75rem 2.5rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:100%}.album-header .album-header-title .album-header-actions .search-container .search-input:focus{box-shadow:0 0 0 .125rem #0071e3;box-shadow:0 0 0 .125rem var(--primary-color,#0071e3);outline:none}.album-header .album-header-title .album-header-actions .search-container .search-input::placeholder{color:#6e6e73;color:var(--text-tertiary,#86868b)}.album-header .album-filter-bar{display:flex;gap:.5rem;margin-bottom:1.5rem;overflow-x:auto;padding-bottom:.5rem}.album-header .album-filter-bar::-webkit-scrollbar{height:.25rem}.album-header .album-filter-bar::-webkit-scrollbar-track{background:#0000}.album-header .album-filter-bar::-webkit-scrollbar-thumb{background-color:#0000000d;background-color:var(--shadow-light);border-radius:.25rem}.horizontal-filter-bar{align-items:center;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:1rem;overflow-x:auto;padding-bottom:.5rem}.horizontal-filter-bar .button{padding:.5rem .75rem}.horizontal-filter-bar .filter-bar-left,.horizontal-filter-bar .filter-bar-right{align-items:center;display:flex;gap:.5rem}.horizontal-filter-bar .filter-bar-right{margin-left:auto}.horizontal-filter-bar::-webkit-scrollbar{height:4px}.horizontal-filter-bar::-webkit-scrollbar-track{background:#0000}.horizontal-filter-bar::-webkit-scrollbar-thumb{background-color:#0000001a;border-radius:4px}.filter-bar{align-items:center;backdrop-filter:blur(.625rem);-webkit-backdrop-filter:blur(.625rem);background-color:#fffffff2;border-top:.0625rem solid #0000001a;bottom:0;display:flex;height:3.75rem;justify-content:space-between;left:0;padding:0 1rem;position:fixed;right:0;z-index:100}.filter-bar .filter-bar-left,.filter-bar .filter-bar-right{align-items:center;display:flex;gap:.5rem}.filter-bar .filter-bar-right{margin-left:auto}@media(prefers-color-scheme:dark){.filter-bar{background-color:#1c1c1ef2;border-top:.0625rem solid #ffffff1a}}.qr-code-modal .qrcode-container,.qr-code-modal-enhanced .qrcode-container{align-items:center;display:flex;flex-direction:column;padding:1.5rem}.qr-code-modal .qrcode-container .qrcode-placeholder,.qr-code-modal-enhanced .qrcode-container .qrcode-placeholder{margin-bottom:2rem;text-align:center}.qr-code-modal .qrcode-container .qrcode-placeholder .qrcode-box,.qr-code-modal-enhanced .qrcode-container .qrcode-placeholder .qrcode-box{background-color:#e8e8ed;background-color:var(--gray-200);border-radius:8px;border-radius:var(--border-radius-md);height:12.5rem;margin:0 auto 1rem;position:relative;width:12.5rem}.qr-code-modal .qrcode-container .qrcode-placeholder .qrcode-box:after,.qr-code-modal .qrcode-container .qrcode-placeholder .qrcode-box:before,.qr-code-modal-enhanced .qrcode-container .qrcode-placeholder .qrcode-box:after,.qr-code-modal-enhanced .qrcode-container .qrcode-placeholder .qrcode-box:before{background-color:#d2d2d7;background-color:var(--gray-300);content:"";position:absolute}.qr-code-modal .qrcode-container .qrcode-placeholder .qrcode-box:before,.qr-code-modal-enhanced .qrcode-container .qrcode-placeholder .qrcode-box:before{height:.5rem;left:20%;top:50%;transform:translateY(-50%);width:60%}.qr-code-modal .qrcode-container .qrcode-placeholder .qrcode-box:after,.qr-code-modal-enhanced .qrcode-container .qrcode-placeholder .qrcode-box:after{height:60%;left:50%;top:20%;transform:translateX(-50%);width:.5rem}.qr-code-modal .qrcode-container .qrcode-placeholder p,.qr-code-modal-enhanced .qrcode-container .qrcode-placeholder p{color:#1d1d1f;color:var(--text-color);font-size:.9rem;margin:.5rem 0}.qr-code-modal .qrcode-container .share-link,.qr-code-modal-enhanced .qrcode-container .share-link{width:100%}.qr-code-modal .qrcode-container .share-link p,.qr-code-modal-enhanced .qrcode-container .share-link p{color:#86868b;color:var(--text-secondary);margin-bottom:1rem;text-align:center}.qr-code-modal .qrcode-container .share-link .link-container,.qr-code-modal-enhanced .qrcode-container .share-link .link-container{display:flex;gap:.75rem}.qr-code-modal .qrcode-container .share-link .link-container input,.qr-code-modal-enhanced .qrcode-container .share-link .link-container input{background-color:#fff;background-color:var(--input-background,var(--white));border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);color:#1d1d1f;color:var(--text-color);flex:1 1;font-size:.9rem;padding:.75rem}.qr-code-modal .qrcode-container .share-link .link-container input:focus,.qr-code-modal-enhanced .qrcode-container .share-link .link-container input:focus{border-color:#0071e3;border-color:var(--primary-color);outline:none}.qr-code-modal .qrcode-container .share-buttons,.qr-code-modal-enhanced .qrcode-container .share-buttons{display:flex;gap:1rem;justify-content:center;margin-top:1.5rem}@media(max-width:48rem){.qr-code-modal .qrcode-container .link-container,.qr-modal-body{flex-direction:column}.qr-modal-body{gap:1.5rem;padding:1rem}.settings-section{border-left:none;border-top:1px solid #d2d2d7;border-top:1px solid var(--border-color);padding-left:0;padding-top:1.5rem}}.qr-modal-content{background:#fff;border-radius:16px;display:flex;flex-direction:column;height:100%;max-height:90vh;overflow:hidden;width:100%}.qr-modal-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:24px}.qr-modal-header .header-info h3{color:#111827;font-size:20px;font-weight:600;margin:0 0 4px}.qr-modal-header .header-info .album-title{color:#6b7280;font-size:14px;margin:0}.qr-modal-header .close-button{background:none;border:none;border-radius:8px;color:#6b7280;cursor:pointer;padding:8px;transition:all .2s}.qr-modal-header .close-button:hover{background:#f3f4f6;color:#374151}.qr-modal-body{flex:1 1;gap:20px;padding:24px}.qr-modal-body,.qr-section{display:flex;flex-direction:column}.qr-section{align-items:center;margin-bottom:32px;padding:0 16px;width:100%}.qr-code-wrapper{background-color:#f9fafb;width:100%}.qr-code-container,.qr-code-wrapper{border-radius:12px;display:flex;justify-content:center;margin-bottom:20px;padding:16px}.qr-code-container{background-color:#fff;box-shadow:0 4px 8px #0000000d;height:240px;width:240px}.qr-code-container,.qr-code-display{align-items:center;position:relative}.qr-code-display{display:flex;height:100%;justify-content:center;width:100%}.qr-code-display img{border-radius:8px;max-height:100%;max-width:100%;object-fit:contain}.qr-code-display .expired-overlay{align-items:center;background-color:#00000080;border-radius:12px;color:#fff;display:flex;flex-direction:column;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%}.qr-code-display .expired-overlay span{font-weight:600;margin-top:8px}.qr-code{position:relative}.qr-code img{border-radius:12px;box-shadow:0 4px 12px #0000001a;height:200px;width:200px}.qr-code img.expired{opacity:.5}.qr-code .expired-overlay{align-items:center;background:#ffffffe6;border-radius:12px;bottom:0;color:#dc2626;display:flex;flex-direction:column;font-weight:600;justify-content:center;left:0;position:absolute;right:0;top:0}.qr-code .expired-overlay span{margin-top:8px}.qr-placeholder{align-items:center;background:#f9fafb;border:2px dashed #d1d5db;border-radius:12px;color:#6b7280;display:flex;flex-direction:column;height:200px;justify-content:center;position:relative;text-align:center;width:200px}.qr-placeholder p{font-size:14px;margin:12px 0 0}.qr-placeholder .expired-badge{background:#dc2626;border-radius:4px;color:#fff;font-size:12px;font-weight:500;padding:4px 8px;position:absolute;right:8px;top:8px}.qr-loading{align-items:center;display:flex;flex-direction:column;height:auto;justify-content:center;width:12.5rem}.qr-loading .skeleton-loader{margin-bottom:.75rem}.qr-loading p{color:#86868b;color:var(--text-secondary);font-size:.875rem;margin:0}.qr-loading .mt-2{margin-top:.5rem}.join-code-section{align-items:center;display:flex;flex-direction:column;margin-bottom:16px}.join-code-section label{color:#6b7280;font-size:12px;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.join-code-section .join-code-value{background:#eff6ff;border-radius:8px;color:#3b82f6;font-family:Courier New,monospace;font-size:18px;font-weight:700;letter-spacing:2px;padding:8px 16px}.usage-section{margin-bottom:20px;max-width:300px;width:100%}.usage-section label{color:#6b7280;display:block;font-size:14px;margin-bottom:8px;text-align:center}.usage-section .usage-bar{background:#f3f4f6;border-radius:3px;height:6px;overflow:hidden}.usage-section .usage-bar .usage-progress{background:linear-gradient(90deg,#3b82f6,#1d4ed8);border-radius:3px;height:100%;transition:width .3s ease}.qr-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:24px}.share-link-section{max-width:400px;width:100%}.share-link-section label{color:#6b7280;display:block;font-size:14px;margin-bottom:8px}.share-link-section .link-container{display:flex;gap:8px}.share-link-section .link-container input{background:#f9fafb;border:1px solid #d1d5db;border-radius:8px;color:#374151;flex:1 1;font-size:14px;padding:10px 12px}.share-link-section .link-container input:focus{background:#fff;border-color:#3b82f6;outline:none}.settings-section h4{color:#111827;font-size:18px;font-weight:600;margin:0 0 20px}.setting-item{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:16px 0}.setting-item:last-child{border-bottom:none}.setting-item .setting-info{flex:1 1;margin-right:16px}.setting-item .setting-info label{color:#111827;display:block;font-size:16px;font-weight:500;margin-bottom:2px}.setting-item .setting-info span{color:#6b7280;font-size:14px;line-height:1.4}.setting-item .toggle-switch{display:inline-block;height:24px;position:relative;width:48px}.setting-item .toggle-switch input{height:0;opacity:0;width:0}.setting-item .toggle-switch input:checked+.toggle-slider{background-color:#3b82f6}.setting-item .toggle-switch input:checked+.toggle-slider:before{transform:translateX(24px)}.setting-item .toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.5}.setting-item .toggle-switch .toggle-slider{background-color:#d1d5db;border-radius:24px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.setting-item .toggle-switch .toggle-slider:before{background-color:#fff;border-radius:50%;bottom:2px;box-shadow:0 2px 4px #0003;content:"";height:20px;left:2px;position:absolute;transition:.3s;width:20px}.setting-item .dropdown-button{background:none;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;padding:8px;transition:all .2s}.setting-item .dropdown-button:hover{background:#f3f4f6;color:#374151}.setting-item .dropdown-button:disabled{cursor:not-allowed;opacity:.5}.setting-item .dropdown-select{-webkit-appearance:none;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;border:1px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;font-size:14px;min-width:200px;padding:8px 36px 8px 12px}.setting-item .dropdown-select:hover{border-color:#d1d5db}.setting-item .dropdown-select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a;outline:none}.setting-item .dropdown-select:disabled{background-color:#f9fafb;cursor:not-allowed;opacity:.5}.setting-item .dropdown-select option{padding:8px}.setting-item .number-input{border:1px solid #d1d5db;border-radius:8px;font-size:14px;padding:8px 12px;text-align:center;width:80px}.setting-item .number-input:focus{border-color:#3b82f6;outline:none}.setting-item .number-input:disabled{background:#f9fafb;opacity:.5}.setting-item .expiry-actions{align-items:center;display:flex;gap:8px}.setting-item .expiry-actions .remove-button{background:none;border:none;border-radius:4px;color:#dc2626;cursor:pointer;padding:4px;transition:all .2s}.setting-item .expiry-actions .remove-button:hover{background:#fee2e2}.regenerate-button{align-items:center;background:none;border:1px solid #3b82f6;border-radius:8px;color:#3b82f6;cursor:pointer;display:flex;font-weight:500;gap:8px;justify-content:center;margin-top:20px;padding:12px;transition:all .2s;width:100%}.regenerate-button:hover:not(:disabled){background:#eff6ff}.regenerate-button:disabled{cursor:not-allowed;opacity:.5}.save-section{align-items:center;border-top:1px solid #f3f4f6;display:flex;justify-content:center;width:100%}.picker-modal .modal-content{max-height:500px;max-width:400px}.picker-content{background:#fff;border-radius:12px;overflow:hidden}.picker-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px}.picker-header h4{color:#111827;font-size:18px;font-weight:600;margin:0}.picker-header button{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;padding:4px}.picker-header button:hover{background:#f3f4f6}.picker-options{max-height:400px;overflow-y:auto}.picker-option{align-items:center;background:#fff;border:none;border-bottom:1px solid #f3f4f6;cursor:pointer;display:flex;justify-content:space-between;padding:16px 20px;text-align:left;transition:all .2s;width:100%}.picker-option:hover{background:#f9fafb}.picker-option.selected{background:#eff6ff;color:#3b82f6;font-weight:500}.picker-option:last-child{border-bottom:none}.picker-option .access-level-info{flex:1 1}.picker-option .access-level-info .access-level-label{display:block;font-size:16px;font-weight:500;margin-bottom:2px}.picker-option .access-level-info .access-level-description{color:#6b7280;font-size:12px}.confirmation-content{background:#fff;border-radius:12px;padding:24px;text-align:center}.confirmation-content .confirmation-header{align-items:center;display:flex;flex-direction:column;margin-bottom:16px}.confirmation-content .confirmation-header svg{color:#f59e0b;margin-bottom:12px}.confirmation-content .confirmation-header h4{color:#111827;font-size:18px;font-weight:600;margin:0}.confirmation-content p{color:#6b7280;line-height:1.5;margin:0 0 24px}.confirmation-content .confirmation-actions{display:flex;gap:12px;justify-content:center}.toast-message{animation:slideInUp .3s ease;border-radius:8px;bottom:24px;box-shadow:0 4px 12px #00000026;color:#fff;font-weight:500;padding:12px 20px;position:fixed;right:24px;z-index:10000}.toast-message.success{background:#10b981}.toast-message.error{background:#dc2626}.toast-message.info{background:#3b82f6}@media(max-width:768px){.qr-modal-content{border-radius:12px 12px 0 0;margin:0;max-height:95vh}.qr-modal-body,.qr-modal-header{padding:16px}.qr-code-display img,.qr-loading,.qr-placeholder{height:160px;width:160px}.qr-actions{flex-direction:column;width:100%}.qr-actions button{width:100%}.share-link-section .link-container{flex-direction:column}.share-link-section .link-container input{margin-bottom:8px}.setting-item{align-items:flex-start;flex-direction:column;gap:12px}.setting-item .setting-info{margin-right:0}.toast-message{bottom:16px;left:16px;right:16px}}.qr-code-pdf-card{background:linear-gradient(135deg,#fff,#f8f9ff);border:.0625rem solid #e5e7eb;border-radius:.75rem;box-shadow:0 .625rem 1.875rem #0000001a;box-sizing:border-box;color:#1f2937;display:flex;flex-direction:column;font-family:Helvetica,Arial,sans-serif;height:148mm;overflow:hidden;padding:1.5625rem;position:relative;width:210mm}.qr-code-pdf-card .decorative-circle{border-radius:50%;position:absolute;z-index:0}.qr-code-pdf-card .decorative-circle.circle-1{background:linear-gradient(135deg,#4f46e51a,#4f46e50d);height:40%;right:-10%;top:-10%;width:40%}.qr-code-pdf-card .decorative-circle.circle-2{background:linear-gradient(135deg,#ec489914,#ec489908);bottom:-15%;height:45%;left:-15%;width:45%}.qr-code-pdf-card .decorative-dots{position:absolute;z-index:0}.qr-code-pdf-card .decorative-dots.dots-1{background-image:radial-gradient(circle,#4f46e5 .0625rem,#0000 0);background-size:.625rem .625rem;height:15%;left:8%;opacity:.2;top:8%;width:15%}.qr-code-pdf-card .decorative-dots.dots-2{background-image:radial-gradient(circle,#ec4899 .0625rem,#0000 0);background-size:.5rem .5rem;bottom:8%;height:12%;opacity:.2;right:8%;width:12%}.qr-code-pdf-card .pdf-card-header{margin-bottom:1.25rem;position:relative;text-align:center;z-index:1}.qr-code-pdf-card .pdf-card-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#4f46e5,#ec4899);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:2rem;font-weight:800;letter-spacing:-.03125rem;margin:0 0 .5rem}.qr-code-pdf-card .pdf-card-header .tagline{font-size:1.5rem;font-weight:400;letter-spacing:.03125rem;margin:0}.qr-code-pdf-card .pdf-card-content{display:flex;flex:1 1;margin:.625rem 0;position:relative;z-index:1}.qr-code-pdf-card .pdf-card-content .qr-code-section{align-items:center;display:flex;flex:0 0 40%;flex-direction:column;justify-content:center;padding:.625rem}.qr-code-pdf-card .pdf-card-content .qr-code-section .qr-image-container{background:#fff;border-radius:1rem;box-shadow:0 .625rem 1.5625rem #0000001a,0 0 0 .0625rem #0000000d,0 0 0 .3125rem #4f46e51a;margin-bottom:.9375rem;padding:.9375rem}.qr-code-pdf-card .pdf-card-content .qr-code-section .qr-image-container .qr-image{display:block;height:12.5rem;width:12.5rem}.qr-code-pdf-card .pdf-card-content .qr-code-section .scan-instruction{color:#6b7280;font-size:.875rem;font-weight:500;letter-spacing:.0625rem;margin:.625rem 0 0;text-transform:uppercase}.qr-code-pdf-card .pdf-card-content .album-details-section{display:flex;flex:0 0 60%;flex-direction:column;justify-content:center;padding:.625rem 1.25rem}.qr-code-pdf-card .pdf-card-content .album-details-section .detail-card{backdrop-filter:blur(.625rem);-webkit-backdrop-filter:blur(.625rem);background:#fffc;border-radius:1rem;box-shadow:0 .25rem 1.25rem #0000000d,0 0 0 .0625rem #00000008;margin-bottom:.9375rem;padding:1.25rem}.qr-code-pdf-card .pdf-card-content .album-details-section .detail-card .detail-item{border-bottom:.0625rem solid #0000000d;margin-bottom:.9375rem;padding-bottom:.9375rem}.qr-code-pdf-card .pdf-card-content .album-details-section .detail-card .detail-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.qr-code-pdf-card .pdf-card-content .album-details-section .detail-card .detail-item .detail-label{color:#6b7280;display:block;font-size:.75rem;font-weight:600;letter-spacing:.0625rem;margin-bottom:.3125rem;text-transform:uppercase}.qr-code-pdf-card .pdf-card-content .album-details-section .detail-card .detail-item .detail-value{color:#1f2937;display:block;font-family:Courier New,monospace;font-size:1.25rem;font-weight:700;letter-spacing:.03125rem;word-break:break-all}.qr-code-pdf-card .pdf-card-content .album-details-section .detail-card .detail-item .detail-value.album-title{color:#4f46e5;font-family:Helvetica,Arial,sans-serif;font-weight:600}.qr-code-pdf-card .pdf-card-content .album-details-section .album-description{background:#fff9;border-radius:.75rem;box-shadow:0 .125rem .625rem #00000008;color:#4b5563;font-size:.875rem;font-style:italic;line-height:1.5;margin-top:.625rem;padding:.9375rem}.qr-code-pdf-card .pdf-card-content .album-details-section .album-description p{margin:0}.qr-code-pdf-card .pdf-card-footer{border-top:.0625rem solid #0000000d;margin-top:auto;padding:.9375rem 0 .3125rem;position:relative;text-align:center;z-index:1}.qr-code-pdf-card .pdf-card-footer .business-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#4f46e5,#ec4899);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:1.125rem;font-weight:700;margin:0 0 .3125rem}.qr-code-pdf-card .pdf-card-footer .website-url{color:#4f46e5;font-size:1rem;font-weight:600;margin:0 0 .3125rem}.qr-code-pdf-card .pdf-card-footer .instructions{color:#6b7280;font-size:.75rem;margin:0}.album-detail-skeleton{animation:fadeIn ease-out .3s cubic-bezier(.25,.46,.45,.94);animation:fadeIn var(--transition-normal) ease-out;padding:1rem;width:100%}.album-detail-skeleton .album-header-skeleton .album-actions-skeleton .action-button-skeleton,.album-detail-skeleton .album-header-skeleton .album-cover-skeleton,.album-detail-skeleton .album-header-skeleton .album-info-skeleton .album-description-skeleton,.album-detail-skeleton .album-header-skeleton .album-info-skeleton .album-meta-skeleton .meta-item-skeleton,.album-detail-skeleton .album-header-skeleton .album-info-skeleton .album-tags-skeleton .tag-skeleton,.album-detail-skeleton .album-header-skeleton .album-info-skeleton .album-title-skeleton,.album-detail-skeleton .back-button-skeleton .back-text-skeleton,.album-detail-skeleton .details-tab-skeleton .details-grid-skeleton .detail-item-skeleton .detail-label-skeleton,.album-detail-skeleton .details-tab-skeleton .details-grid-skeleton .detail-item-skeleton .detail-value-skeleton,.album-detail-skeleton .details-tab-skeleton .details-section-skeleton .section-title-skeleton,.album-detail-skeleton .details-tab-skeleton .empty-state-skeleton .empty-button-skeleton,.album-detail-skeleton .details-tab-skeleton .empty-state-skeleton .empty-description-skeleton,.album-detail-skeleton .details-tab-skeleton .empty-state-skeleton .empty-icon-skeleton,.album-detail-skeleton .details-tab-skeleton .empty-state-skeleton .empty-title-skeleton,.album-detail-skeleton .details-tab-skeleton .sharing-section-skeleton .section-title-skeleton,.album-detail-skeleton .tab-content-skeleton .photos-actions-skeleton .action-button-skeleton,.album-detail-skeleton .tab-content-skeleton .photos-grid-skeleton .photo-skeleton .photo-image-skeleton,.album-detail-skeleton .tab-content-skeleton .photos-grid-skeleton .photo-skeleton .photo-title-skeleton,.album-detail-skeleton .tabs-skeleton .tab-button-skeleton .tab-text-skeleton{animation:shimmer 2s linear infinite;background:linear-gradient(90deg,#f5f5f7 25%,#e8e8ed 50%,#f5f5f7 75%);background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-200) 50%,var(--gray-100) 75%);background-size:62.5rem 100%;border-radius:6px;border-radius:var(--border-radius-sm)}.album-detail-skeleton .back-button-skeleton{align-items:center;display:flex;margin-bottom:1.5rem}.album-detail-skeleton .back-button-skeleton .back-icon{color:#0071e3;color:var(--primary-color);font-size:1rem;margin-right:.5rem;opacity:.7}.album-detail-skeleton .back-button-skeleton .back-text-skeleton{height:1rem;width:5rem}.album-detail-skeleton .album-header-skeleton{align-items:flex-start;background-color:#fff;background-color:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .125rem .5rem #0000000d;box-shadow:0 .125rem .5rem var(--shadow-light);display:flex;margin-bottom:2rem;padding:1rem}.album-detail-skeleton .album-header-skeleton .album-cover-skeleton{border-radius:8px;border-radius:var(--border-radius-md);flex-shrink:0;height:9.375rem;margin-right:1.5rem;width:9.375rem}.album-detail-skeleton .album-header-skeleton .album-info-skeleton{flex:1 1}.album-detail-skeleton .album-header-skeleton .album-info-skeleton .album-title-skeleton{height:2rem;margin-bottom:.75rem;width:70%}.album-detail-skeleton .album-header-skeleton .album-info-skeleton .album-description-skeleton{height:1.25rem;margin-bottom:1rem;width:90%}.album-detail-skeleton .album-header-skeleton .album-info-skeleton .album-meta-skeleton{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.album-detail-skeleton .album-header-skeleton .album-info-skeleton .album-meta-skeleton .meta-item-skeleton{height:1rem;width:5rem}.album-detail-skeleton .album-header-skeleton .album-info-skeleton .album-tags-skeleton{display:flex;flex-wrap:wrap;gap:.5rem}.album-detail-skeleton .album-header-skeleton .album-info-skeleton .album-tags-skeleton .tag-skeleton{border-radius:.75rem;height:1.5rem;width:5rem}.album-detail-skeleton .album-header-skeleton .album-actions-skeleton{display:flex;gap:.75rem;margin-left:auto}.album-detail-skeleton .album-header-skeleton .album-actions-skeleton .action-button-skeleton{border-radius:8px;border-radius:var(--border-radius-md);height:2.5rem;width:2.5rem}@media(max-width:48rem){.album-detail-skeleton .album-header-skeleton{flex-direction:column}.album-detail-skeleton .album-header-skeleton .album-cover-skeleton{aspect-ratio:1.5;height:auto;margin-bottom:1rem;margin-right:0;width:100%}.album-detail-skeleton .album-header-skeleton .album-actions-skeleton{justify-content:center;margin-left:0;margin-top:1rem;width:100%}}.album-detail-skeleton .tabs-skeleton{border-bottom:.0625rem solid #d2d2d7;border-bottom:.0625rem solid var(--border-color);display:flex;margin-bottom:1.5rem}.album-detail-skeleton .tabs-skeleton .tab-button-skeleton{align-items:center;color:#86868b;color:var(--text-secondary);display:flex;font-size:1rem;opacity:.7;padding:.75rem 1.25rem}.album-detail-skeleton .tabs-skeleton .tab-button-skeleton svg{font-size:1.125rem;margin-right:.5rem}.album-detail-skeleton .tabs-skeleton .tab-button-skeleton .tab-text-skeleton{height:1rem;width:3.75rem}.album-detail-skeleton .tabs-skeleton .tab-button-skeleton.active{border-bottom:.125rem solid #0071e3;border-bottom:.125rem solid var(--primary-color);color:#0071e3;color:var(--primary-color)}.album-detail-skeleton .tab-content-skeleton{animation:fadeIn ease-out .3s cubic-bezier(.25,.46,.45,.94);animation:fadeIn var(--transition-normal) ease-out;min-height:18.75rem}.album-detail-skeleton .tab-content-skeleton .photos-actions-skeleton{display:flex;justify-content:flex-end;margin-bottom:1rem}.album-detail-skeleton .tab-content-skeleton .photos-actions-skeleton .action-button-skeleton{border-radius:8px;border-radius:var(--border-radius-md);height:2.25rem;width:7.5rem}.album-detail-skeleton .tab-content-skeleton .photos-grid-skeleton{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr))}.album-detail-skeleton .tab-content-skeleton .photos-grid-skeleton .photo-skeleton{animation:fadeIn ease-out .5s cubic-bezier(.25,.46,.45,.94) both;animation:fadeIn var(--transition-slow) ease-out both;background-color:#fff;background-color:var(--card-background);border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 .0625rem .1875rem #0000000d;box-shadow:0 .0625rem .1875rem var(--shadow-light);display:flex;flex-direction:column;overflow:hidden}.album-detail-skeleton .tab-content-skeleton .photos-grid-skeleton .photo-skeleton .photo-image-skeleton{aspect-ratio:1;border-radius:0;width:100%}.album-detail-skeleton .tab-content-skeleton .photos-grid-skeleton .photo-skeleton .photo-title-skeleton{height:1rem;margin:.75rem}@media(max-width:48rem){.album-detail-skeleton .tab-content-skeleton .photos-grid-skeleton{grid-template-columns:repeat(auto-fill,minmax(8.75rem,1fr))}}.album-detail-skeleton .details-tab-skeleton .details-section-skeleton,.album-detail-skeleton .details-tab-skeleton .sharing-section-skeleton{margin-bottom:2rem}.album-detail-skeleton .details-tab-skeleton .details-section-skeleton .section-title-skeleton,.album-detail-skeleton .details-tab-skeleton .sharing-section-skeleton .section-title-skeleton{height:1.5rem;margin-bottom:1rem;width:9.375rem}.album-detail-skeleton .details-tab-skeleton .details-grid-skeleton{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr));margin-bottom:2rem}.album-detail-skeleton .details-tab-skeleton .details-grid-skeleton .detail-item-skeleton{background-color:#fff;background-color:var(--card-background);border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 .0625rem .1875rem #0000000d;box-shadow:0 .0625rem .1875rem var(--shadow-light);padding:.75rem}.album-detail-skeleton .details-tab-skeleton .details-grid-skeleton .detail-item-skeleton .detail-label-skeleton{height:.75rem;margin-bottom:.5rem;width:60%}.album-detail-skeleton .details-tab-skeleton .details-grid-skeleton .detail-item-skeleton .detail-value-skeleton{height:1.125rem}.album-detail-skeleton .details-tab-skeleton .empty-state-skeleton{align-items:center;display:flex;flex-direction:column;padding:2rem;text-align:center}.album-detail-skeleton .details-tab-skeleton .empty-state-skeleton .empty-icon-skeleton{border-radius:50%;height:3.75rem;margin-bottom:1rem;width:3.75rem}.album-detail-skeleton .details-tab-skeleton .empty-state-skeleton .empty-title-skeleton{height:1.5rem;margin-bottom:.75rem;width:11.25rem}.album-detail-skeleton .details-tab-skeleton .empty-state-skeleton .empty-description-skeleton{height:1rem;margin-bottom:1.5rem;width:18.75rem}.album-detail-skeleton .details-tab-skeleton .empty-state-skeleton .empty-button-skeleton{border-radius:8px;border-radius:var(--border-radius-md);height:2.5rem;width:8.75rem}.add-friend-album-modal{display:flex;flex-direction:column;height:100%}.add-friend-album-modal .search-container{margin-bottom:1rem}.add-friend-album-modal .search-container .search-input-wrapper{position:relative}.add-friend-album-modal .search-container .search-input-wrapper .search-icon{color:#86868b;color:var(--text-secondary);left:1rem;position:absolute;top:50%;transform:translateY(-50%)}.add-friend-album-modal .search-container .search-input-wrapper .search-input{background-color:#f5f5f7;background-color:var(--gray-100);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);font-size:1rem;padding:1rem 1rem 1rem 4rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:100%}.add-friend-album-modal .search-container .search-input-wrapper .search-input:focus{background-color:#fff;background-color:var(--white-color);border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 .1875rem #0071e333;box-shadow:0 0 0 .1875rem rgba(var(--primary-color-rgb),.2);outline:none}.add-friend-album-modal .search-container .search-input-wrapper .search-input::placeholder{color:#86868b;color:var(--text-secondary)}.add-friend-album-modal .friends-list{background-color:#fff;background-color:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);flex:1 1;margin-bottom:1rem;overflow-y:auto}.add-friend-album-modal .friends-list .friend-item{align-items:center;cursor:pointer;display:flex;margin-top:.3125rem;padding:1rem;transition:background-color .2s cubic-bezier(.25,.46,.45,.94);transition:background-color var(--transition-fast)}.add-friend-album-modal .friends-list .friend-item:not(:last-child){border-bottom:.0625rem solid #d2d2d7;border-bottom:.0625rem solid var(--border-color)}.add-friend-album-modal .friends-list .friend-item:hover{background-color:#e8e8ed;background-color:var(--hover-color)}.add-friend-album-modal .friends-list .friend-item.selected{background-color:#0071e31a;background-color:var(--active-color)}.add-friend-album-modal .friends-list .friend-item .friend-avatar{border-radius:15%;flex-shrink:0;height:4rem;margin-right:1rem;overflow:hidden;width:4rem}.add-friend-album-modal .friends-list .friend-item .friend-avatar img{height:100%;object-fit:cover;width:100%}.add-friend-album-modal .friends-list .friend-item .friend-avatar .avatar-placeholder{align-items:center;background-color:#0071e3;background-color:var(--primary-color);color:#fff;color:var(--text-on-primary);display:flex;font-size:1.25rem;font-weight:600;height:100%;justify-content:center;width:100%}.add-friend-album-modal .friends-list .friend-item .friend-info{flex:1 1}.add-friend-album-modal .friends-list .friend-item .friend-info .friend-name{font-size:1rem;font-weight:500;margin:0 0 .25rem}.add-friend-album-modal .friends-list .friend-item .friend-info .friend-username{color:#86868b;color:var(--text-secondary);font-size:.875rem;margin:0}.add-friend-album-modal .friends-list .friend-item .friend-selection-indicator{align-items:center;background-color:#ffffffd9;border:.1rem solid #0071e3;border:.1rem solid var(--primary-color);border-radius:50%;box-shadow:0 .125rem .3125rem #0003;display:flex;height:1.75rem;justify-content:center;transition:transform .2s ease;width:1.75rem;z-index:4}.add-friend-album-modal .friends-list .friend-item .friend-selection-indicator .selection-check{animation:scaleIn .2s forwards;background-color:#0071e3;background-color:var(--primary-color);border-radius:50%;height:.8rem;transform:scale(0);width:.8rem}.add-friend-album-modal .friends-list .no-results{color:#86868b;color:var(--text-secondary);padding:1.5rem;text-align:center}.add-friend-album-modal .modal-actions{border-top:.0625rem solid #d2d2d7;border-top:.0625rem solid var(--border-color);display:flex;gap:.75rem;justify-content:flex-end;padding-top:1rem}@media(max-width:48rem){.add-friend-modal .friends-list{max-height:18.75rem}.add-friend-modal .friends-list .friend-item{padding:1rem}.add-friend-modal .friends-list .friend-item .friend-avatar{height:3.5rem;margin-right:.75rem;width:3.5rem}.add-friend-modal .friends-list .friend-item .friend-info .friend-name{font-size:.9375rem}.add-friend-modal .friends-list .friend-item .friend-info .friend-username{font-size:.8125rem}}.edit-friend-access-content{display:flex;flex-direction:column;gap:1.5rem}.edit-friend-access-content .friend-profile{align-items:center;border-bottom:1px solid #d2d2d7;border-bottom:1px solid var(--border-color);display:flex;gap:1rem;padding-bottom:1rem}.edit-friend-access-content .friend-profile .friend-avatar{background-color:var(--background-secondary);border-radius:50%;height:3.5rem;overflow:hidden;width:3.5rem}.edit-friend-access-content .friend-profile .friend-avatar img{height:100%;object-fit:cover;width:100%}.edit-friend-access-content .friend-profile .friend-avatar .avatar-placeholder{align-items:center;background-color:var(--background-tertiary);color:var(--text-color-secondary);display:flex;font-size:1.5rem;font-weight:600;height:100%;justify-content:center;width:100%}.edit-friend-access-content .friend-profile .friend-details h3{color:var(--text-color-primary);font-size:1.25rem;font-weight:600;margin:0}.edit-friend-access-content .friend-profile .friend-details .friend-username{color:var(--text-color-secondary);font-size:.875rem;margin:.25rem 0 0}.edit-friend-access-content .current-access h4{color:var(--text-color-primary);font-size:1rem;font-weight:600;margin:0 0 .75rem}.edit-friend-access-content .current-access .access-badge{align-items:center;background-color:var(--background-secondary);border-radius:1rem;color:var(--text-color-primary);display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.375rem .75rem}.edit-friend-access-content .current-access .access-badge svg{font-size:.875rem}.edit-friend-access-content .current-access .access-description{color:var(--text-color-secondary);font-size:.875rem;margin:.5rem 0 0}.edit-friend-access-content .access-level-selector h4{color:var(--text-color-primary);font-size:1rem;font-weight:600;margin:0 0 .75rem}.edit-friend-access-content .access-level-selector .access-options{display:flex;flex-direction:column;gap:.75rem;max-height:18.75rem;overflow-y:auto;padding-right:.5rem}.edit-friend-access-content .access-level-selector .access-options::-webkit-scrollbar{width:.375rem}.edit-friend-access-content .access-level-selector .access-options::-webkit-scrollbar-track{background:var(--background-secondary);border-radius:.25rem}.edit-friend-access-content .access-level-selector .access-options::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:.25rem}.edit-friend-access-content .access-level-selector .access-option{background-color:var(--background-secondary);border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:.5rem;cursor:pointer;padding:.875rem;transition:all .2s ease}.edit-friend-access-content .access-level-selector .access-option:hover{background-color:var(--background-hover);border-color:#42a1ff;border-color:var(--primary-color-light)}.edit-friend-access-content .access-level-selector .access-option.selected{background-color:var(--primary-color-faint);border:3px solid #0071e3;border:3px solid var(--primary-color)}.edit-friend-access-content .access-level-selector .access-option .access-option-header{align-items:center;display:flex;gap:.75rem;margin-bottom:.5rem}.edit-friend-access-content .access-level-selector .access-option .access-option-header .access-icon{align-items:center;background-color:var(--background-tertiary);border-radius:50%;color:#0071e3;color:var(--primary-color);display:flex;height:2rem;justify-content:center;width:2rem}.edit-friend-access-content .access-level-selector .access-option .access-option-header .access-icon svg{font-size:1rem}.edit-friend-access-content .access-level-selector .access-option .access-option-header h5{color:var(--text-color-primary);font-size:1rem;font-weight:500;margin:0}.edit-friend-access-content .access-level-selector .access-option .access-description{color:var(--text-color-secondary);font-size:.875rem;margin:0}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end}@media(max-width:48rem){.edit-friend-access-content .access-level-selector .access-options{max-height:25rem}}.album-friends-container{display:flex;flex-direction:column;padding:1rem;width:100%}.album-friends-container .album-friends-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.25rem}.album-friends-container .album-friends-header .friends-count{align-items:center;display:flex;font-size:1rem;font-weight:500}.album-friends-container .album-friends-header .friends-count svg{color:var(--primary-color);margin-right:.5rem}.album-friends-container .album-friends-header .header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.album-friends-container .album-friends-header .search-container{position:relative;width:18.75rem}@media(max-width:48rem){.album-friends-container .album-friends-header .search-container{width:100%}}.album-friends-container .album-friends-header .search-container .search-icon{color:#86868b;color:var(--text-secondary,#86868b);font-size:.9rem;left:.75rem;position:absolute;top:50%;transform:translateY(-50%)}.album-friends-container .album-friends-header .search-container .search-input{background-color:#fff;background-color:var(--input-background,#fff);border:none;border-radius:var(--border-radius-md);box-shadow:0 .0625rem .125rem #0000000d;color:#1d1d1f;color:var(--text-color,#1d1d1f);font-size:.9rem;padding:.75rem 1rem .75rem 2.5rem;transition:all var(--transition-fast);width:100%}.album-friends-container .album-friends-header .search-container .search-input:focus{box-shadow:0 0 0 .125rem #0071e3;box-shadow:0 0 0 .125rem var(--primary-color,#0071e3);outline:none}.album-friends-container .album-friends-header .search-container .search-input::placeholder{color:#86868b;color:var(--text-tertiary,#86868b)}.album-friends-container .album-friends-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(18.75rem,1fr));width:100%}.album-friends-container .album-friends-list .friend-item .friend-card{align-items:center;display:flex;padding:1rem;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.album-friends-container .album-friends-list .friend-item .friend-card:hover{box-shadow:0 .375rem .75rem #0000001a;transform:translateY(-.125rem)}.album-friends-container .album-friends-list .friend-item .friend-card.clickable{cursor:pointer;position:relative}.album-friends-container .album-friends-list .friend-item .friend-card.clickable:after{background-color:var(--primary-color);border-radius:inherit;bottom:0;content:"";left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity var(--transition-fast)}.album-friends-container .album-friends-list .friend-item .friend-card.clickable:hover:after{opacity:.05}.album-friends-container .album-friends-list .friend-item .friend-card.clickable:active:after{opacity:.1}.album-friends-container .album-friends-list .friend-item .friend-card .friend-avatar{background-color:var(--gray-100);border-radius:50%;height:3rem;margin-right:1rem;overflow:hidden;width:3rem}.album-friends-container .album-friends-list .friend-item .friend-card .friend-avatar img{height:100%;object-fit:cover;width:100%}.album-friends-container .album-friends-list .friend-item .friend-card .friend-avatar .avatar-placeholder{align-items:center;background-color:var(--primary-color);color:var(--white-color);display:flex;font-size:1.25rem;font-weight:600;height:100%;justify-content:center;width:100%}.album-friends-container .album-friends-list .friend-item .friend-card .friend-info{flex:1 1;overflow:hidden}.album-friends-container .album-friends-list .friend-item .friend-card .friend-info .friend-name-container{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.25rem}.album-friends-container .album-friends-list .friend-item .friend-card .friend-info .friend-name{font-size:1rem;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.album-friends-container .album-friends-list .friend-item .friend-card .friend-info .friend-username{color:var(--text-secondary);font-size:.875rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.album-friends-container .album-friends-list .friend-item .friend-card .friend-info .role-badge{align-items:center;border-radius:.75rem;display:flex;font-size:.75rem;font-weight:500;padding:.125rem .5rem;width:-webkit-fit-content;width:fit-content}.album-friends-container .album-friends-list .friend-item .friend-card .friend-info .role-badge .role-icon{align-items:center;display:flex;margin-right:.25rem}.album-friends-container .album-friends-list .friend-item .friend-card .friend-info .role-badge.role-badge-owner{background-color:rgba(var(--primary-color-rgb),.1);color:var(--primary-color)}.album-friends-container .album-friends-list .friend-item .friend-card .friend-info .role-badge.role-badge-admin{background-color:#28cd411a;color:var(--success-color)}.album-friends-container .album-friends-list .friend-item .friend-card .friend-info .role-badge.role-badge-add-only{background-color:#ff95001a;color:var(--warning-color)}.album-friends-container .album-friends-list .friend-item .friend-card .friend-info .role-badge.role-badge-view-only{background-color:#86868b1a;color:var(--text-secondary)}.album-friends-container .album-friends-list .friend-item .friend-card .remove-friend-button{color:var(--error-color);margin-left:.5rem}.album-friends-container .album-friends-list .friend-item .friend-card .remove-friend-button:hover{background-color:rgba(var(--danger-color-rgb),.1)}.album-friends-container .album-friends-list .friend-item .friend-card .remove-confirmation{align-items:center;display:flex;gap:.5rem}.album-friends-container .album-friends-list .friend-item .friend-card .remove-confirmation span{color:var(--error-color);font-size:.875rem}.album-friends-container .album-friends-list .no-search-results{align-items:center;display:flex;flex-direction:column;grid-column:1/-1;justify-content:center;padding:2rem;text-align:center}.album-friends-container .album-friends-list .no-search-results p{color:var(--text-secondary);font-size:1rem;margin-bottom:1rem}.album-friends-container .album-friends-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:3rem}.album-friends-container .album-friends-loading .loading-spinner{animation:spin 1s ease-in-out infinite;border:.1875rem solid rgba(var(--primary-color-rgb),.3);border-radius:50%;border-top-color:var(--primary-color);height:2.5rem;margin-bottom:1rem;width:2.5rem}.album-friends-container .album-friends-loading p{color:var(--text-secondary);font-size:1rem}.album-friends-container .album-friends-error{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:3rem;text-align:center}.album-friends-container .album-friends-error p{color:var(--error-color);font-size:1rem;margin-bottom:1rem}.album-friends-container .empty-state-container{position:relative;width:100%}.album-friends-container .empty-state-container .loading-overlay{align-items:center;background-color:#ffffffb3;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:10}.album-friends-container .empty-state-container .loading-overlay .loading-spinner{animation:spin 1s ease-in-out infinite;border:.1875rem solid rgba(var(--primary-color-rgb),.3);border-radius:50%;border-top-color:var(--primary-color);height:2.5rem;width:2.5rem}@media(max-width:48rem){.album-friends-container .album-friends-header{align-items:flex-start;flex-direction:column}.album-friends-container .album-friends-header .search-container{width:100%}.album-friends-container .album-friends-list{grid-template-columns:1fr}}.friend-skeleton-container{padding:1rem;width:100%}.friend-skeleton-container .friend-skeleton-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.friend-skeleton-container .friend-skeleton-header .skeleton-count{border-radius:.25rem;height:1.5rem;width:11.25rem}.friend-skeleton-container .friend-skeleton-header .skeleton-count,.friend-skeleton-container .friend-skeleton-header .skeleton-search{animation:pulse 1.5s ease-in-out infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%}.friend-skeleton-container .friend-skeleton-header .skeleton-search{border-radius:.5rem;height:2.25rem;width:17.5rem}.friend-skeleton-container .friend-skeleton-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(18.75rem,1fr))}.friend-skeleton-container .friend-skeleton-list .friend-skeleton-item{align-items:center;background-color:#fff;background-color:var(--white-color,#fff);border-radius:.5rem;box-shadow:0 .0625rem .1875rem #0000001a;display:flex;padding:1rem}.friend-skeleton-container .friend-skeleton-list .friend-skeleton-item .friend-skeleton-avatar{animation:pulse 1.5s ease-in-out infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:50%;height:3rem;margin-right:1rem;width:3rem}.friend-skeleton-container .friend-skeleton-list .friend-skeleton-item .friend-skeleton-content{flex:1 1}.friend-skeleton-container .friend-skeleton-list .friend-skeleton-item .friend-skeleton-content .friend-skeleton-name{animation:pulse 1.5s ease-in-out infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:.25rem;height:1.125rem;margin-bottom:.5rem;width:70%}.friend-skeleton-container .friend-skeleton-list .friend-skeleton-item .friend-skeleton-content .friend-skeleton-username{animation:pulse 1.5s ease-in-out infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:.25rem;height:.875rem;width:50%}@media(max-width:48rem){.friend-skeleton-container .friend-skeleton-header{align-items:flex-start;flex-direction:column;gap:1rem}.friend-skeleton-container .friend-skeleton-header .skeleton-count,.friend-skeleton-container .friend-skeleton-header .skeleton-search{width:100%}.friend-skeleton-container .friend-skeleton-list{grid-template-columns:1fr}}.settings-section{background-color:var(--background-secondary);border-radius:.75rem;box-shadow:var(--shadow-sm)}.settings-section .settings-section-header{align-items:center;display:flex;justify-content:space-between}.settings-section .settings-section-header h3{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0}.settings-section .settings-section-header .button-group{display:flex;gap:.5rem}.settings-section .settings-section-content .album-settings-details,.settings-section .settings-section-content .album-settings-form{display:flex;flex-direction:column;gap:1rem}.settings-section .settings-section-content .settings-card{background-color:var(--background-primary);border-radius:.5rem;box-shadow:var(--shadow-xs);padding:1.25rem}.settings-section .settings-section-content .settings-card .settings-card-title{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 1rem}.settings-section .settings-section-content .settings-card .permission-row{margin-bottom:1rem}.settings-section .settings-section-content .settings-card .permission-row:last-child{margin-bottom:0}.settings-section .settings-section-content .settings-card .password-input-row{margin-left:1rem;margin-top:.5rem}.settings-section .settings-section-content .settings-card .password-input-row .form-group label{color:var(--text-primary);display:block;font-size:.875rem;font-weight:500;margin-bottom:.375rem}.settings-section .settings-section-content .settings-card .password-input-row .form-group .password-input{border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:.375rem;font-size:.875rem;padding:.625rem;transition:var(--transition-standard);width:100%}.settings-section .settings-section-content .settings-card .password-input-row .form-group .password-input:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 2px #0071e333;box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.2);outline:none}.settings-section .settings-section-content .settings-card .expiry-date-row{align-items:center;display:flex;justify-content:space-between}.settings-section .settings-section-content .settings-card .expiry-date-row .expiry-date-label{align-items:center;display:flex;gap:.75rem}.settings-section .settings-section-content .settings-card .expiry-date-row .expiry-date-label .expiry-date-icon{color:#86868b;color:var(--text-secondary);font-size:1rem}.settings-section .settings-section-content .settings-card .expiry-date-row .expiry-date-label label{color:var(--text-primary);font-size:.875rem;font-weight:500;margin:0}.settings-section .settings-section-content .settings-card .expiry-date-row .expiry-date-label .input-description{color:#86868b;color:var(--text-secondary);font-size:.75rem;margin-top:.25rem}.settings-section .settings-section-content .settings-card .expiry-date-row .expiry-date-input{border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:.375rem;font-size:.875rem;padding:.5rem;transition:var(--transition-standard)}.settings-section .settings-section-content .settings-card .expiry-date-row .expiry-date-input:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 2px #0071e333;box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.2);outline:none}.settings-section .settings-section-content .detail-item{align-items:center;border-bottom:1px solid #d2d2d7;border-bottom:1px solid var(--border-color);display:flex;padding:.75rem 0}.settings-section .settings-section-content .detail-item:last-child{border-bottom:none;padding-bottom:0}.settings-section .settings-section-content .detail-item:first-child{padding-top:0}.settings-section .settings-section-content .detail-item .detail-icon{align-items:center;background-color:var(--background-tertiary);border-radius:50%;color:#86868b;color:var(--text-secondary);display:flex;height:2rem;justify-content:center;margin-right:.75rem;width:2rem}.settings-section .settings-section-content .detail-item .detail-content{flex:1 1}.settings-section .settings-section-content .detail-item .detail-content .detail-label{color:var(--text-primary);font-size:.875rem;font-weight:500}.settings-section .settings-section-content .detail-item .detail-content .detail-value{color:#86868b;color:var(--text-secondary);font-size:.875rem;margin-top:.25rem}.settings-section .settings-section-content .detail-item .detail-content .detail-value .password-value{font-style:italic}.settings-section .settings-section-content .detail-item .detail-status .status-indicator{border-radius:50%;display:inline-block;height:.75rem;width:.75rem}.settings-section .settings-section-content .detail-item .detail-status .status-indicator.active{background-color:#34c759;background-color:var(--success-color)}.settings-section .settings-section-content .detail-item .detail-status .status-indicator.inactive{background-color:#d2d2d7;background-color:var(--border-color)}@media(max-width:48rem){.settings-section{padding:1rem}.settings-section .settings-section-content .expiry-date-row{align-items:flex-start;flex-direction:column}.settings-section .settings-section-content .expiry-date-row .expiry-date-input{margin-top:.75rem;width:100%}}.toggle-container{align-items:center;display:flex;justify-content:space-between;width:100%}.toggle-container .toggle-text{flex:1 1}.toggle-container .toggle-text .toggle-label{color:var(--text-primary);font-size:.875rem;font-weight:500;margin-bottom:.25rem}.toggle-container .toggle-text .toggle-description{color:#86868b;color:var(--text-secondary);font-size:.75rem}.toggle-container .toggle-switch{display:inline-block;height:1.25rem;margin-left:1rem;position:relative;width:2.5rem}.toggle-container .toggle-switch input{height:0;opacity:0;width:0}.toggle-container .toggle-switch input:checked+.toggle-slider{background-color:#0071e3;background-color:var(--primary-color)}.toggle-container .toggle-switch input:checked+.toggle-slider:before{transform:translateX(1.25rem)}.toggle-container .toggle-switch input:focus+.toggle-slider{box-shadow:0 0 .0625rem #0071e3;box-shadow:0 0 .0625rem var(--primary-color)}.toggle-container .toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.5}.toggle-container .toggle-switch .toggle-slider{background-color:#d2d2d7;background-color:var(--border-color);border-radius:1.25rem;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:var(--transition-standard)}.toggle-container .toggle-switch .toggle-slider:before{background-color:#fff;border-radius:50%;bottom:.125rem;content:"";height:1rem;left:.125rem;position:absolute;transition:var(--transition-standard);width:1rem}.toggle-container .toggle-switch.disabled{cursor:not-allowed;opacity:.5}.toggle-container .toggle-switch.disabled .toggle-slider{cursor:not-allowed}@media(max-width:48rem){.toggle-container{align-items:flex-start;flex-direction:column}.toggle-container .toggle-switch{margin-left:0;margin-top:.5rem}}.album-subscription-details{animation:fadeIn .5s ease-out;margin-left:auto;margin-right:auto;max-width:1200px;padding:1rem 0;width:100%}.album-subscription-details .album-subscription-plan-container{width:100%}.album-subscription-details .album-subscription-plan-container .section-title{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;font-weight:600;margin-bottom:1.5rem;position:relative}.album-subscription-details .album-subscription-plan-container .section-title:after{background-color:#0071e3;background-color:var(--primary-color);border-radius:6px;border-radius:var(--border-radius-sm);bottom:-.5rem;content:"";height:.125rem;left:0;position:absolute;width:3rem}.album-subscription-details .album-subscription-plan-container .storage-section{display:flex;flex-wrap:wrap;gap:2rem;margin-bottom:2rem}@media(min-width:64rem){.album-subscription-details .album-subscription-plan-container .storage-section{flex-wrap:nowrap}}.album-subscription-details .album-subscription-plan-container .storage-section .storage-info{background-color:var(--background-light);border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);flex:1 1;min-width:18.75rem;padding:1.5rem;transition:all .3s ease}.album-subscription-details .album-subscription-plan-container .storage-section .storage-info:hover{box-shadow:var(--shadow-md);transform:translateY(-.125rem)}.album-subscription-details .album-subscription-plan-container .storage-section .storage-info .storage-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.25rem}.album-subscription-details .album-subscription-plan-container .storage-section .storage-info .storage-header h3{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;font-weight:600;margin:0;padding-bottom:.5rem;position:relative}.album-subscription-details .album-subscription-plan-container .storage-section .storage-info .storage-header h3:after{background-color:#0071e3;background-color:var(--primary-color);border-radius:.0625rem;bottom:0;content:"";height:.125rem;left:0;position:absolute;width:2.5rem}.album-subscription-details .album-subscription-plan-container .storage-section .storage-info .storage-header .storage-percentage{background-color:#f5f5f7;background-color:var(--gray-100);border-radius:6px;border-radius:var(--border-radius-sm);font-size:.875rem;font-weight:600;padding:.25rem .5rem}.album-subscription-details .album-subscription-plan-container .storage-section .storage-info .storage-header .storage-percentage.warning{background-color:#ff950033;background-color:rgba(var(--warning-color-rgb),.2);color:var(--warning-color-dark)}.album-subscription-details .album-subscription-plan-container .storage-section .storage-info .storage-header .storage-percentage.danger{animation:pulse 1.5s infinite;background-color:#ff3b3033;background-color:rgba(var(--danger-color-rgb),.2);color:#ff3b30;color:var(--danger-color)}.album-subscription-details .album-subscription-plan-container .storage-section .storage-info .storage-details{margin-top:1.25rem}.album-subscription-details .album-subscription-plan-container .storage-section .storage-info .storage-text{color:#86868b;color:var(--text-secondary);font-size:.875rem;margin-bottom:.75rem}.album-subscription-details .album-subscription-plan-container .storage-section .storage-info .storage-text .limit,.album-subscription-details .album-subscription-plan-container .storage-section .storage-info .storage-text .used{color:#1d1d1f;color:var(--text-color);font-weight:600}.album-subscription-details .album-subscription-plan-container .storage-section .storage-bar-container{background-color:var(--background-secondary);border-radius:.25rem;height:.5rem;overflow:hidden;width:100%}.album-subscription-details .album-subscription-plan-container .storage-section .storage-bar-container .storage-bar{height:100%;position:relative;width:100%}.album-subscription-details .album-subscription-plan-container .storage-section .storage-bar-container .storage-bar .storage-used{border-radius:.25rem;height:100%;left:0;position:absolute;top:0;transition:width .3s ease,background-color .3s ease}.album-subscription-details .available-plans-section{margin-bottom:2rem;padding:1.5rem 0}.album-subscription-details .available-plans-section .plans-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr;margin-top:2rem}@media(min-width:36rem){.album-subscription-details .available-plans-section .plans-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:64rem){.album-subscription-details .available-plans-section .plans-grid{grid-template-columns:repeat(3,1fr)}}.album-subscription-details .available-plans-section .plans-grid .plan-card{background-color:#fff;background-color:var(--card-background);border:.125rem solid #d2d2d7;border:.125rem solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);cursor:pointer;height:100%;overflow:hidden;padding:1rem;position:relative;transition:transform .3s ease-in-out,box-shadow .3s ease-in-out,border-color .3s ease-in-out}.album-subscription-details .available-plans-section .plans-grid .plan-card:hover{box-shadow:var(--shadow-md);transform:translateY(-.25rem)}.album-subscription-details .available-plans-section .plans-grid .plan-card.current{background-color:#34c7590d;background-color:rgba(var(--success-color-rgb),.05);border-color:#34c759;border-color:var(--success-color)}.album-subscription-details .available-plans-section .plans-grid .plan-card .savings-badge{align-items:center;background-color:#ff9500;background-color:var(--warning-color);border-bottom-left-radius:6px;border-bottom-left-radius:var(--border-radius-sm);border-top-right-radius:8px;border-top-right-radius:var(--border-radius-md);color:var(--text-dark);display:flex;font-size:.75rem;font-weight:600;gap:.25rem;padding:.25rem .5rem;position:absolute;right:0;top:0;z-index:1}.album-subscription-details .available-plans-section .plans-grid .plan-card .savings-badge .savings-icon{font-size:.75rem}.album-subscription-details .available-plans-section .plans-grid .plan-card .plan-header{margin-bottom:1rem}.album-subscription-details .available-plans-section .plans-grid .plan-card .plan-header .plan-name{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.album-subscription-details .available-plans-section .plans-grid .plan-card .plan-header .plan-badge{border-radius:6px;border-radius:var(--border-radius-sm);display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .5rem;text-transform:uppercase}.album-subscription-details .available-plans-section .plans-grid .plan-card .plan-header .plan-badge.premium{background-color:#ff950033;background-color:rgba(var(--warning-color-rgb),.2);color:#ff9500;color:var(--warning-color)}.album-subscription-details .available-plans-section .plans-grid .plan-card .plan-header .plan-badge.basic{background-color:#0071e333;background-color:rgba(var(--primary-color-rgb),.2);color:#0071e3;color:var(--primary-color)}.album-subscription-details .available-plans-section .plans-grid .plan-card .plan-price{align-items:baseline;color:#1d1d1f;color:var(--text-color);display:flex;font-size:1.5rem;font-weight:700;margin-bottom:.75rem}.album-subscription-details .available-plans-section .plans-grid .plan-card .plan-price .currency{color:#1d1d1f;color:var(--text-color);font-size:1rem;margin-right:.25rem}.album-subscription-details .available-plans-section .plans-grid .plan-card .plan-price .amount{color:#1d1d1f;color:var(--text-color)}.album-subscription-details .available-plans-section .plans-grid .plan-card .plan-price .period{color:#86868b;color:var(--text-secondary);font-size:.875rem;font-weight:400;margin-left:.25rem}.album-subscription-details .available-plans-section .plans-grid .plan-card .storage-info{align-items:center;background-color:var(--background-secondary);border-radius:6px;border-radius:var(--border-radius-sm);color:#1d1d1f;color:var(--text-color);display:flex;font-size:.875rem;gap:.5rem;margin-bottom:1rem;padding:.5rem}.album-subscription-details .available-plans-section .plans-grid .plan-card .storage-info .storage-icon{color:#0071e3;color:var(--primary-color)}.album-subscription-details .available-plans-section .plans-grid .plan-card .features-container{margin-top:auto}.album-subscription-details .available-plans-section .plans-grid .plan-card .features-container .features-title{color:#1d1d1f;color:var(--text-color);font-size:1rem;font-weight:600;margin-bottom:.75rem}.album-subscription-details .available-plans-section .plans-grid .plan-card .features-container .features-list{list-style:none;margin:0;padding:0}.album-subscription-details .available-plans-section .plans-grid .plan-card .features-container .features-list .feature-item{align-items:flex-start;color:#1d1d1f;color:var(--text-color);display:flex;font-size:.875rem;margin-bottom:.75rem}.album-subscription-details .available-plans-section .plans-grid .plan-card .features-container .features-list .feature-item.not-included{color:#86868b;color:var(--text-secondary);opacity:.7;text-decoration:line-through}.album-subscription-details .available-plans-section .plans-grid .plan-card .features-container .features-list .feature-item .feature-icon{flex-shrink:0;margin-right:.5rem;margin-top:.125rem}.album-subscription-details .available-plans-section .plans-grid .plan-card .features-container .features-list .feature-item .feature-icon.included{color:#34c759;color:var(--success-color)}.album-subscription-details .available-plans-section .plans-grid .plan-card .features-container .features-list .feature-item .feature-icon.not-included{color:#ff3b30;color:var(--danger-color)}.album-subscription-details .section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem;margin-top:1.5rem}.album-subscription-details .section-header h2{font-size:1.5rem;font-weight:600;margin:0;position:relative}.album-subscription-details .section-header h2:after{background-color:#0071e3;background-color:var(--primary-color);border-radius:6px;border-radius:var(--border-radius-sm);bottom:-.5rem;content:"";height:.125rem;left:0;position:absolute;width:3rem}.album-subscription-details .info-button{align-items:center;background:none;border:none;border-radius:50%;color:#86868b;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:.25rem;transition:all .2s cubic-bezier(.25,.46,.45,.94)}.album-subscription-details .info-button:hover{background-color:#e8e8ed;background-color:var(--hover-color);color:#0071e3;color:var(--primary-color)}.album-subscription-details .info-button:focus{box-shadow:0 0 0 .125rem #42a1ff;box-shadow:0 0 0 .125rem var(--primary-color-light);outline:none}.album-subscription-details .plans-section{margin-top:1.5rem}.album-subscription-details .plans-heading{color:#1d1d1f;color:var(--text-color);font-size:1rem;font-weight:600;margin:0 0 1rem}.album-subscription-details .plans-grid{grid-gap:1.25rem;color:#1d1d1f;color:var(--text-color);display:grid;gap:1.25rem;grid-template-columns:repeat(1,1fr);margin-bottom:1.5rem}@media(min-width:64rem){.album-subscription-details .plans-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:48rem)and (max-width:64rem){.album-subscription-details .plans-grid{grid-template-columns:repeat(2,1fr)}}.album-subscription-details .plan-card{background-color:#fff;background-color:var(--card-background);border:2px solid #d2d2d7;border:2px solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);cursor:pointer;height:100%;overflow:hidden;padding:1rem;transition:transform .3s ease-in-out,box-shadow .3s ease-in-out,border-color .3s ease-in-out}.album-subscription-details .plan-card:hover{box-shadow:var(--shadow-md);transform:translateY(-.25rem)}.album-subscription-details .plan-card.selected{background-color:#0071e30d;background-color:rgba(var(--primary-color-rgb),.05);border-color:#0071e3;border-color:var(--primary-color)}.album-subscription-details .plan-card.current{background-color:#34c7590d;background-color:rgba(var(--success-color-rgb),.05);border-color:#34c759;border-color:var(--success-color)}.album-subscription-details .plan-card .spinner{animation:spin 1s linear infinite}.album-subscription-details .plan-card .badge{align-items:center;display:flex;font-size:.75rem;font-weight:600;gap:.25rem}.album-subscription-details .plan-card .badge.popular-badge{background-color:#0071e3;background-color:var(--primary-color);color:#fff}.album-subscription-details .plan-card .badge.savings-badge{align-items:center;background-color:#ff9500;background-color:var(--warning-color);border-bottom-left-radius:6px;border-bottom-left-radius:var(--border-radius-sm);border-top-right-radius:8px;border-top-right-radius:var(--border-radius-md);color:var(--text-dark);display:flex;gap:.25rem;padding:.25rem .5rem;position:absolute;right:0;top:0;z-index:1}.album-subscription-details .plan-card .badge.savings-badge .savings-icon{font-size:.875rem}.album-subscription-details .plan-card .badge .features-list{list-style:none;margin:0;padding:0}.album-subscription-details .plan-card .badge .features-list .feature-item{align-items:flex-start;display:flex;font-size:.875rem;margin-bottom:.75rem}.album-subscription-details .plan-card .badge .features-list .feature-item.included{color:#1d1d1f;color:var(--text-color)}.album-subscription-details .plan-card .badge .features-list .feature-item.excluded{color:#86868b;color:var(--text-secondary);opacity:.7;text-decoration:line-through}.album-subscription-details .plan-card .badge .features-list .feature-item .icon{flex-shrink:0;margin-right:.5rem;margin-top:.125rem}.album-subscription-details .plan-card .badge .features-list .feature-item .icon.included{color:#34c759;color:var(--success-color)}.album-subscription-details .plan-card .badge .features-list .feature-item .icon.excluded{color:#ff3b30;color:var(--danger-color)}.album-subscription-details .plan-card .selected-indicator{border-color:#0000 #0071e3 #0000 #0000;border-color:#0000 var(--primary-color) #0000 #0000;border-style:solid;border-width:0 3rem 3rem 0;height:0;position:absolute;right:0;top:0;width:0}.album-subscription-details .plan-card .selected-indicator .selected-check{color:#fff;font-size:1rem;position:absolute;right:.5rem;top:.5rem}.album-subscription-details .current-plan-card{margin-bottom:1.25rem}.album-subscription-details .current-plan-card .current-plan-header{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.album-subscription-details .current-plan-card .plan-icon-container{align-items:center;background-color:#0071e3;background-color:var(--primary-color);border-radius:50%;color:#fff;display:flex;height:2.5rem;justify-content:center;width:2.5rem}.album-subscription-details .current-plan-card .plan-icon{font-size:1.25rem}.album-subscription-details .current-plan-card .plan-info{flex:1 1}.album-subscription-details .current-plan-card .plan-info h3{font-size:1rem;font-weight:600;margin:0 0 .25rem}.album-subscription-details .current-plan-card .plan-info .plan-price{font-size:.875rem;font-weight:500;margin:0 0 .25rem}.album-subscription-details .current-plan-card .plan-info .plan-duration{color:#86868b;color:var(--text-secondary);font-size:.75rem;margin:0}.album-subscription-details .upgrade-confirmation{background-color:var(--gray-50);border-radius:8px;border-radius:var(--border-radius-md);margin-top:1rem;padding:1.25rem}.album-subscription-details .upgrade-confirmation h4{color:#1d1d1f;color:var(--text-color);font-size:1.125rem;font-weight:600;margin:0 0 1rem}.album-subscription-details .upgrade-confirmation .plan-comparison{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.25rem}.album-subscription-details .upgrade-confirmation .plan-comparison .current-plan-summary,.album-subscription-details .upgrade-confirmation .plan-comparison .new-plan-summary{background-color:#fff;border-radius:8px;border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);flex:1 1;padding:1rem}.album-subscription-details .upgrade-confirmation .plan-comparison .current-plan-summary h5,.album-subscription-details .upgrade-confirmation .plan-comparison .new-plan-summary h5{color:#86868b;color:var(--text-secondary);font-size:.875rem;font-weight:500;margin:0 0 .5rem}.album-subscription-details .upgrade-confirmation .plan-comparison .current-plan-summary .plan-name,.album-subscription-details .upgrade-confirmation .plan-comparison .new-plan-summary .plan-name{font-size:1rem;font-weight:600;margin-bottom:.25rem}.album-subscription-details .upgrade-confirmation .plan-comparison .current-plan-summary .plan-price,.album-subscription-details .upgrade-confirmation .plan-comparison .new-plan-summary .plan-price{align-items:baseline;color:#1d1d1f;color:var(--text-color);display:flex;font-size:1.125rem;font-weight:700;margin-bottom:.75rem}.album-subscription-details .upgrade-confirmation .plan-comparison .current-plan-summary .plan-price .currency,.album-subscription-details .upgrade-confirmation .plan-comparison .new-plan-summary .plan-price .currency{color:#1d1d1f;color:var(--text-color);font-size:1rem;margin-right:.25rem}.album-subscription-details .upgrade-confirmation .plan-comparison .current-plan-summary .plan-price .amount,.album-subscription-details .upgrade-confirmation .plan-comparison .new-plan-summary .plan-price .amount{color:#1d1d1f;color:var(--text-color)}.album-subscription-details .upgrade-confirmation .plan-comparison .current-plan-summary .plan-price .period,.album-subscription-details .upgrade-confirmation .plan-comparison .new-plan-summary .plan-price .period{color:#86868b;color:var(--text-secondary);font-size:.875rem;font-weight:400;margin-left:.25rem}.album-subscription-details .upgrade-confirmation .plan-comparison .arrow{align-items:center;color:#86868b;color:var(--text-secondary);display:flex;justify-content:center;padding:0 1rem}.album-subscription-details .upgrade-confirmation .confirmation-message{background-color:var(--info-color-light);border-left:.25rem solid #5ac8fa;border-left:.25rem solid var(--info-color);border-radius:8px;border-radius:var(--border-radius-md);color:#86868b;color:var(--text-secondary);font-size:.875rem;margin-bottom:1.25rem;padding:1rem}.album-subscription-details .upgrade-confirmation .confirmation-actions{display:flex;gap:1rem;justify-content:flex-end}.album-subscription-details .upgrade-actions{display:flex;justify-content:flex-end;margin-top:1.25rem}.album-subscription-details .upgrade-modal .modal-content{margin:0 auto;max-width:36rem;padding:1.25rem}.album-subscription-details .upgrade-modal .modal-content .modal-header{margin-bottom:1.25rem;text-align:center}.album-subscription-details .upgrade-modal .modal-content .modal-header h3{color:#1d1d1f;color:var(--text-color);font-size:1.5rem;font-weight:600;margin-bottom:1rem}.album-subscription-details .upgrade-modal .modal-content .modal-header p{color:#86868b;color:var(--text-secondary);font-size:1rem;line-height:1.5}.album-subscription-details .upgrade-modal .modal-content .plan-comparison{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.album-subscription-details .upgrade-modal .modal-content .plan-comparison .current-plan-summary,.album-subscription-details .upgrade-modal .modal-content .plan-comparison .new-plan-summary{background-color:var(--background-light);border-radius:8px;border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);flex:1 1;padding:1.25rem;transition:all .2s cubic-bezier(.25,.46,.45,.94)}.album-subscription-details .upgrade-modal .modal-content .plan-comparison .current-plan-summary:hover,.album-subscription-details .upgrade-modal .modal-content .plan-comparison .new-plan-summary:hover{box-shadow:var(--shadow-md)}.album-subscription-details .upgrade-modal .modal-content .plan-comparison .current-plan-summary h4,.album-subscription-details .upgrade-modal .modal-content .plan-comparison .new-plan-summary h4{align-items:center;color:#1d1d1f;color:var(--text-color);display:flex;font-size:1.125rem;font-weight:600;gap:.5rem;margin-bottom:1rem}.album-subscription-details .upgrade-modal .modal-content .plan-comparison .current-plan-summary h4 .plan-icon,.album-subscription-details .upgrade-modal .modal-content .plan-comparison .new-plan-summary h4 .plan-icon{color:#0071e3;color:var(--primary-color)}.album-subscription-details .upgrade-modal .modal-content .plan-comparison .current-plan-summary .plan-price,.album-subscription-details .upgrade-modal .modal-content .plan-comparison .new-plan-summary .plan-price{align-items:baseline;color:#1d1d1f;color:var(--text-color);display:flex;font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.album-subscription-details .upgrade-modal .modal-content .plan-comparison .current-plan-summary .plan-price .currency,.album-subscription-details .upgrade-modal .modal-content .plan-comparison .new-plan-summary .plan-price .currency{font-size:1rem;margin-right:.25rem}.album-subscription-details .upgrade-modal .modal-content .plan-comparison .current-plan-summary .plan-period,.album-subscription-details .upgrade-modal .modal-content .plan-comparison .new-plan-summary .plan-period{color:#86868b;color:var(--text-secondary);font-size:.875rem}.album-subscription-details .upgrade-modal .modal-content .plan-comparison .new-plan-summary{background-color:#0071e30d;background-color:rgba(var(--primary-color-rgb),.05);border:2px solid #0071e3;border:2px solid var(--primary-color)}.album-subscription-details .upgrade-modal .modal-content .plan-comparison .arrow{color:#86868b;color:var(--text-secondary);font-size:1.5rem;padding:0 1rem}.album-subscription-details .upgrade-modal .modal-content .confirmation-message{color:#86868b;color:var(--text-secondary);font-size:1rem;line-height:1.5;margin-bottom:1.25rem}.album-subscription-details .upgrade-modal .modal-content .confirmation-message .highlight{color:#0071e3;color:var(--primary-color);font-weight:600}.album-subscription-details .upgrade-modal .modal-content .confirmation-actions{display:flex;gap:1rem;justify-content:flex-end}.album-subscription-details .upgrade-modal .modal-content .confirmation-actions .btn{min-width:8rem}.album-subscription-details .upgrade-modal .modal-content.processing .processing-spinner{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:1.5rem 0}.album-subscription-details .upgrade-modal .modal-content.processing .processing-spinner .spinner{animation:spin 1.5s linear infinite;color:#0071e3;color:var(--primary-color);font-size:3rem;margin-bottom:1.25rem}.album-subscription-details .upgrade-modal .modal-content.processing .processing-spinner .processing-text{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;font-weight:600;margin-bottom:1rem}.album-subscription-details .upgrade-modal .modal-content.processing .processing-spinner .processing-subtext{color:#86868b;color:var(--text-secondary);font-size:1rem;line-height:1.5;max-width:80%;text-align:center}.album-subscription-details .upgrade-modal .modal-content.complete .complete-message{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:1.5rem 0}.album-subscription-details .upgrade-modal .modal-content.complete .complete-message .complete-icon{color:#34c759;color:var(--success-color);font-size:3.5rem;margin-bottom:1.25rem}.album-subscription-details .upgrade-modal .modal-content.complete .complete-message .complete-text{color:#1d1d1f;color:var(--text-color);font-size:1.5rem;font-weight:600;margin-bottom:1rem}.album-subscription-details .upgrade-modal .modal-content.complete .complete-message .complete-subtext{color:#86868b;color:var(--text-secondary);font-size:1rem;line-height:1.5;margin-bottom:1.25rem;max-width:80%;text-align:center}.album-subscription-details .verification-modal .modal-content{margin:0 auto;max-width:30rem;padding:1.25rem;text-align:center}.album-subscription-details .verification-modal .modal-content .verification-header{margin-bottom:1.25rem}.album-subscription-details .verification-modal .modal-content .verification-header h3{color:#1d1d1f;color:var(--text-color);font-size:1.5rem;font-weight:600;margin-bottom:1rem}.album-subscription-details .verification-modal .modal-content .verification-header p{color:#86868b;color:var(--text-secondary);font-size:1rem;line-height:1.5}.album-subscription-details .verification-modal .modal-content .verification-form{margin-bottom:1.25rem}.album-subscription-details .verification-modal .modal-content .verification-form .form-group{margin-bottom:1rem}.album-subscription-details .verification-modal .modal-content .verification-form .payment-id-input{border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);font-size:1rem;padding:1rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);width:100%}.album-subscription-details .verification-modal .modal-content .verification-form .payment-id-input:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 .125rem #0071e333;box-shadow:0 0 0 .125rem rgba(var(--primary-color-rgb),.2);outline:none}.album-subscription-details .verification-modal .modal-content .verification-actions{display:flex;gap:1rem;justify-content:center}.album-subscription-details .verification-modal .modal-content .verification-actions .btn{min-width:8rem}.album-subscription-details .verification-modal .modal-content .verification-icon{font-size:3rem;margin-bottom:1rem}.album-subscription-details .verification-modal .modal-content .verification-icon.success{color:#34c759;color:var(--success-color)}.album-subscription-details .verification-modal .modal-content .verification-icon.error{color:#ff3b30;color:var(--danger-color)}.album-subscription-details .verification-modal .modal-content .verification-icon.processing{animation:spin 1s linear infinite;color:#0071e3;color:var(--primary-color)}.album-subscription-details .plan-price{align-items:baseline;color:#1d1d1f;color:var(--text-color);display:flex;font-size:1.5rem;font-weight:700;margin-bottom:.75rem}.album-subscription-details .plan-price .currency{color:#1d1d1f;color:var(--text-color);font-size:1rem;margin-right:.25rem}.album-subscription-details .plan-price .amount{color:#1d1d1f;color:var(--text-color)}.album-subscription-details .plan-price .period{color:#86868b;color:var(--text-secondary);font-size:.875rem;font-weight:400;margin-left:.25rem}.album-subscription-details .plan-storage{align-items:center;background-color:var(--background-secondary);border-radius:6px;border-radius:var(--border-radius-sm);color:#1d1d1f;color:var(--text-color);display:flex;font-size:.875rem;gap:.5rem;margin-bottom:1rem;padding:.5rem}.album-subscription-details .plan-storage .storage-icon{color:#0071e3;color:var(--primary-color)}@media(max-width:48rem){.subscription-details{margin-top:1.25rem}.section-header h2{font-size:1rem}.current-plan-card{margin-bottom:1rem}.current-plan-card .current-plan-header{align-items:flex-start;flex-direction:column;gap:.5rem}.plans-grid{grid-template-columns:1fr}.plans-heading{font-size:.875rem}.plan-category .category-title{font-size:.75rem}.plan-card{max-width:100%}.upgrade-confirmation{padding:1rem}.upgrade-confirmation .plan-comparison{flex-direction:column;gap:1rem}.upgrade-confirmation .plan-comparison .current-plan-summary,.upgrade-confirmation .plan-comparison .new-plan-summary{width:100%}.upgrade-confirmation .plan-comparison .arrow{padding:.5rem 0;transform:rotate(90deg)}.upgrade-confirmation .confirmation-actions{flex-direction:column;gap:.5rem}}@media(max-width:30rem){.current-plan-card,.plan-card{padding:.5rem!important}}.album-upgrade-modal-content{padding:1rem}.album-upgrade-modal-content .album-upgrade-modal-header{display:flex;justify-content:center;margin-bottom:1.25rem}.album-upgrade-modal-content .album-upgrade-modal-header .plan-badge{align-items:center;border-radius:9999px;border-radius:var(--border-radius-pill);display:inline-flex;font-size:.875rem;font-weight:600;font-weight:var(--font-weight-semibold);letter-spacing:-.02em;letter-spacing:var(--letter-spacing-tight);padding:.25rem 1rem}.album-upgrade-modal-content .album-upgrade-modal-header .plan-badge.premium{background-color:#ff950026;background-color:rgba(var(--warning-color-rgb),.15);color:#ff9500;color:var(--warning-color)}.album-upgrade-modal-content .album-upgrade-modal-header .plan-badge.premium svg{font-size:1rem;margin-right:.25rem}.album-upgrade-modal-content .upgrade-modal-body .selected-plan-info{background-color:#f5f5f7;background-color:var(--gray-100);border:1px solid #e8e8ed;border:1px solid var(--gray-200);border-radius:8px;border-radius:var(--border-radius-md);margin-bottom:1.25rem;padding:1.25rem}.album-upgrade-modal-content .upgrade-modal-body .selected-plan-info .plan-price-container{align-items:baseline;display:flex;justify-content:center;margin-bottom:1rem}.album-upgrade-modal-content .upgrade-modal-body .selected-plan-info .plan-price-container .plan-price{align-items:baseline;display:flex;font-weight:700;font-weight:var(--font-weight-bold)}.album-upgrade-modal-content .upgrade-modal-body .selected-plan-info .plan-price-container .plan-price .currency{font-size:1.25rem;margin-right:.125rem}.album-upgrade-modal-content .upgrade-modal-body .selected-plan-info .plan-price-container .plan-price .amount{color:#1d1d1f;color:var(--text-color);font-size:2.5rem;line-height:1}.album-upgrade-modal-content .upgrade-modal-body .selected-plan-info .plan-price-container .billing-cycle{color:#86868b;color:var(--text-secondary);font-size:1rem;margin-left:.25rem}.album-upgrade-modal-content .upgrade-modal-body .selected-plan-info .plan-details{display:flex;flex-direction:column;gap:.5rem}.album-upgrade-modal-content .upgrade-modal-body .selected-plan-info .plan-details .plan-name,.album-upgrade-modal-content .upgrade-modal-body .selected-plan-info .plan-details .plan-storage{display:flex;font-size:.9375rem;justify-content:space-between}.album-upgrade-modal-content .upgrade-modal-body .selected-plan-info .plan-details .plan-name .label,.album-upgrade-modal-content .upgrade-modal-body .selected-plan-info .plan-details .plan-storage .label{color:#86868b;color:var(--text-secondary)}.album-upgrade-modal-content .upgrade-modal-body .plan-features h4,.album-upgrade-modal-content .upgrade-modal-body .selected-plan-info .plan-details .plan-name .value,.album-upgrade-modal-content .upgrade-modal-body .selected-plan-info .plan-details .plan-storage .value{color:#1d1d1f;color:var(--text-color);font-weight:600;font-weight:var(--font-weight-semibold)}.album-upgrade-modal-content .upgrade-modal-body .plan-features h4{font-size:1rem;margin-bottom:1rem}.album-upgrade-modal-content .upgrade-modal-body .plan-features .features-list{display:flex;flex-direction:column;gap:.5rem;list-style:none;margin:0;padding:0}.album-upgrade-modal-content .upgrade-modal-body .plan-features .features-list .feature-item{align-items:center;color:#1d1d1f;color:var(--text-color);display:flex;font-size:.9375rem}.album-upgrade-modal-content .upgrade-modal-body .plan-features .features-list .feature-item.excluded{color:#86868b;color:var(--text-secondary);opacity:.7;text-decoration:line-through}.album-upgrade-modal-content .upgrade-modal-body .plan-features .features-list .feature-item .icon{flex-shrink:0;margin-right:.5rem}.album-upgrade-modal-content .upgrade-modal-body .plan-features .features-list .feature-item .icon.included{color:#34c759;color:var(--success-color)}.album-upgrade-modal-content .upgrade-modal-body .plan-features .features-list .feature-item .icon.excluded{color:#ff3b30;color:var(--danger-color)}.album-upgrade-modal-content .upgrade-modal-footer{margin-top:1.5rem}.album-upgrade-modal-content .upgrade-modal-footer .payment-buttons{display:flex;flex-direction:column;gap:1rem}.album-upgrade-modal-content .upgrade-modal-footer .payment-buttons button{height:2.75rem}.album-upgrade-modal-content .upgrade-modal-footer .payment-buttons button svg{font-size:1rem}.album-upgrade-modal-content .upgrade-modal-footer .payment-buttons button svg.spinner{animation:spin 1s linear infinite}.album-upgrade-modal-content .upgrade-modal-processing{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:1.5rem 0;text-align:center}.album-upgrade-modal-content .upgrade-modal-processing .processing-icon{color:#0071e3;color:var(--primary-color);font-size:2.5rem;margin-bottom:1.25rem}.album-upgrade-modal-content .upgrade-modal-processing .processing-icon .spinner{animation:spin 1.2s linear infinite}.album-upgrade-modal-content .upgrade-modal-processing h3{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;font-weight:600;font-weight:var(--font-weight-semibold);margin-bottom:1rem}.album-upgrade-modal-content .upgrade-modal-processing p{color:#86868b;color:var(--text-secondary);font-size:.9375rem;margin:0 auto;max-width:80%}.album-upgrade-modal-content .upgrade-modal-complete{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:1.5rem 0;text-align:center}.album-upgrade-modal-content .upgrade-modal-complete .complete-icon{color:#34c759;color:var(--success-color);font-size:3rem;margin-bottom:1.25rem}.album-upgrade-modal-content .upgrade-modal-complete h3{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;font-weight:600;font-weight:var(--font-weight-semibold);margin-bottom:1rem}.album-upgrade-modal-content .upgrade-modal-complete p{color:#86868b;color:var(--text-secondary);font-size:.9375rem;margin:0 auto 1.5rem;max-width:80%}.album-upgrade-modal-content .upgrade-modal-complete .action-buttons{display:flex;flex-direction:column;gap:1rem;width:100%}.album-upgrade-modal-content .upgrade-modal-complete .action-buttons button{height:2.75rem}.album-upgrade-modal-content .upgrade-modal-complete .action-buttons button svg{font-size:.875rem}@keyframes skeleton-loading{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.skeleton{position:relative}.skeleton .skeleton-card,.skeleton .skeleton-header,.skeleton .skeleton-plan-card,.skeleton .skeleton-row{animation:skeleton-loading 1.4s ease infinite;background:linear-gradient(90deg,#e0e0e0 25%,#e0e0e0b3 37%,#e0e0e0 63%);background:linear-gradient(90deg,var(--skeleton-color) 25%,#e0e0e0b3 37%,var(--skeleton-color) 63%);background-size:400% 100%;border-radius:.25rem}.skeleton .skeleton-header{height:1.5rem;margin-bottom:1rem;width:60%}.skeleton .skeleton-card{background-color:rgba(var(--card-bg-color),.5);border-radius:.5rem;box-shadow:var(--card-shadow);margin-bottom:1.5rem;padding:1rem}.skeleton .skeleton-card .skeleton-row{height:1rem;margin-bottom:.75rem}.skeleton .skeleton-card .skeleton-row:first-child{width:80%}.skeleton .skeleton-card .skeleton-row:nth-child(2){width:60%}.skeleton .skeleton-card .skeleton-row:nth-child(3){width:70%}.skeleton .skeleton-card .skeleton-row:last-child{margin-bottom:0}.skeleton .skeleton-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr))}.skeleton .skeleton-grid .skeleton-plan-card{background-color:rgba(var(--card-bg-color),.5);border-radius:.5rem;box-shadow:var(--card-shadow);height:12rem}.subscription-details .loading-container{align-items:center;display:flex;flex-direction:column;margin-bottom:2rem}.subscription-details .loading-container .spinner{animation:spin 1s linear infinite;color:#0071e3;color:var(--primary-color);font-size:2rem;margin-bottom:.5rem}.subscription-details .subscription-plan-container.skeleton{margin-bottom:2rem}.album-settings-tab{display:flex;flex-direction:column;width:100%}.album-settings-tab .settings-navigation{border-bottom:1px solid #d2d2d7;border-bottom:1px solid var(--border-color);display:flex;margin-bottom:1.5rem}.album-settings-tab .settings-navigation .settings-nav-button{border-radius:0;margin-right:1rem;padding:.75rem 1.25rem;position:relative}.album-settings-tab .settings-navigation .settings-nav-button.active{color:#0071e3;color:var(--primary-color);font-weight:500}.album-settings-tab .settings-navigation .settings-nav-button.active:after{background-color:#0071e3;background-color:var(--primary-color);bottom:-1px;content:"";height:2px;left:0;position:absolute;width:100%}.album-settings-tab .settings-navigation .settings-nav-button:hover:not(.active){color:var(--text-color-secondary)}.album-settings-tab .settings-navigation .settings-nav-button svg{margin-right:.5rem}.album-settings-tab .settings-content{padding:1rem}.album-settings-tab .settings-content .settings-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.album-settings-tab .settings-content .settings-section-header h3{font-size:1.25rem;margin:0}.album-settings-tab .settings-content .settings-section-content{background-color:var(--card-bg);border-radius:.5rem;box-shadow:var(--card-shadow);padding:1.5rem}.album-settings-tab .album-settings-loading{align-items:center;color:var(--text-color-secondary);display:flex;flex-direction:column;font-size:1.125rem;height:15rem;justify-content:center}.album-settings-tab .album-settings-loading .loading-spinner{animation:spin 1s linear infinite;border:.25rem solid #0071e333;border-radius:50%;border-top-color:#0071e3;border:.25rem solid rgba(var(--primary-color-rgb),.2);border-top-color:var(--primary-color);height:3rem;margin-bottom:1rem;width:3rem}.album-settings-tab .album-settings-loading p{margin:0}@media(max-width:48rem){.album-settings-tab .settings-navigation{overflow-x:auto;padding-bottom:.5rem}.album-settings-tab .settings-navigation::-webkit-scrollbar{height:.25rem}.album-settings-tab .settings-navigation::-webkit-scrollbar-thumb{background-color:#d2d2d7;background-color:var(--border-color);border-radius:.25rem}}.transfer-album-modal{display:flex;flex-direction:column;gap:2rem;margin:0 auto;padding:2rem}.transfer-album-modal .info-section{align-items:flex-start;background-color:#f0f9ff;border-left:4px solid #3b82f6;border-radius:12px;display:flex}.transfer-album-modal .info-section .info-icon{color:#3b82f6;font-size:24px;margin-top:2px}.transfer-album-modal .info-section .info-text p{color:#1e3a8a;font-size:14px;line-height:1.5;margin:0 0 8px}.transfer-album-modal .info-section .info-text p:last-child{margin-bottom:0}.transfer-album-modal .info-section .info-text p strong{font-weight:600}.transfer-album-modal .form-section{display:flex;flex-direction:column;gap:12px}.transfer-album-modal .form-section label{color:#374151;font-size:15px;font-weight:500}.transfer-album-modal .form-section .input-container{position:relative}.transfer-album-modal .form-section .input-container .phone-input-wrapper{align-items:center;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;display:flex;overflow:hidden;transition:all .2s}.transfer-album-modal .form-section .input-container .phone-input-wrapper:focus-within{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.transfer-album-modal .form-section .input-container .phone-input-wrapper .country-code{background-color:#f3f4f6;border-right:1px solid #d1d5db;color:#374151;font-weight:500;min-width:54px;padding:12px 16px;text-align:center}.transfer-album-modal .form-section .input-container .phone-input-wrapper input{border:none;flex:1 1;font-size:16px;outline:none;padding:12px 16px;width:100%}.transfer-album-modal .form-section .input-container .phone-input-wrapper input.error{background-color:#fef2f2}.transfer-album-modal .form-section .input-container .phone-input-wrapper input::placeholder{color:#9ca3af}.transfer-album-modal .form-section .input-container .phone-input-wrapper .phone-icon{color:#9ca3af;margin-right:16px}.transfer-album-modal .form-section .input-container .error-message{align-items:center;color:#dc2626;display:flex;font-size:13px;gap:4px;margin-top:6px}.transfer-album-modal .form-section .help-text{color:#6b7280;font-size:13px;margin:4px 0 0}.transfer-album-modal .confirmation-section{align-items:center;display:flex;flex-direction:column;padding:16px;text-align:center}.transfer-album-modal .confirmation-section .transfer-icon{align-items:center;background-color:#eff6ff;border-radius:50%;color:#3b82f6;display:flex;font-size:24px;height:64px;justify-content:center;margin-bottom:20px;width:64px}.transfer-album-modal .confirmation-section h3{color:#111827;font-size:20px;font-weight:600;margin:0 0 16px}.transfer-album-modal .confirmation-section p{color:#4b5563;line-height:1.5;margin:0 0 24px}.transfer-album-modal .confirmation-section p strong{color:#111827;font-weight:600}.transfer-album-modal .confirmation-section .user-details{align-items:center;background-color:#f9fafb;border-radius:12px;display:flex;gap:16px;margin-bottom:24px;max-width:400px;padding:16px;width:100%}.transfer-album-modal .confirmation-section .user-details .user-avatar{align-items:center;background-color:#e5e7eb;border-radius:50%;display:flex;flex-shrink:0;height:64px;justify-content:center;overflow:hidden;width:64px}.transfer-album-modal .confirmation-section .user-details .user-avatar img{height:100%;object-fit:cover;width:100%}.transfer-album-modal .confirmation-section .user-details .user-avatar .default-avatar{align-items:center;background-color:#3b82f6;color:#fff;display:flex;font-size:24px;height:100%;justify-content:center;width:100%}.transfer-album-modal .confirmation-section .user-details .user-info{overflow:hidden;text-align:left}.transfer-album-modal .confirmation-section .user-details .user-info h4{color:#111827;font-size:16px;font-weight:600;margin:0 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transfer-album-modal .confirmation-section .user-details .user-info .phone-display{color:#4b5563;font-size:14px;margin:0 0 4px}.transfer-album-modal .confirmation-section .user-details .user-info .username{color:#6b7280;font-size:13px;margin:0}.transfer-album-modal .confirmation-section .warning{color:#b91c1c;font-size:14px;font-weight:500;margin:0}.transfer-album-modal .confirmation-section .transfer-implications{display:flex;flex-direction:column;gap:1.5rem;margin:1.5rem 0;text-align:left;width:100%}.transfer-album-modal .confirmation-section .transfer-implications .implication-item{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem;display:flex;gap:1rem;padding:1rem}.transfer-album-modal .confirmation-section .transfer-implications .implication-item .implication-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:2.5rem;justify-content:center;width:2.5rem}.transfer-album-modal .confirmation-section .transfer-implications .implication-item .implication-icon:first-child{background-color:#fef3c7;color:#d97706}.transfer-album-modal .confirmation-section .transfer-implications .implication-item .implication-icon:last-child{background-color:#e0f2fe;color:#0284c7}.transfer-album-modal .confirmation-section .transfer-implications .implication-item .implication-content{flex:1 1}.transfer-album-modal .confirmation-section .transfer-implications .implication-item .implication-content h4{color:#111827;font-size:1rem;font-weight:600;margin:0 0 .5rem}.transfer-album-modal .confirmation-section .transfer-implications .implication-item .implication-content p{color:#4b5563;font-size:.875rem;margin:0 0 1rem}.transfer-album-modal .confirmation-section .transfer-implications .implication-item .implication-content .confirmation-checkbox{align-items:center;display:flex;gap:.5rem}.transfer-album-modal .confirmation-section .transfer-implications .implication-item .implication-content .confirmation-checkbox input[type=checkbox]{-webkit-appearance:none;appearance:none;background-color:#fff;border:1px solid #d1d5db;border-radius:.25rem;cursor:pointer;height:1.25rem;position:relative;transition:all .2s;width:1.25rem}.transfer-album-modal .confirmation-section .transfer-implications .implication-item .implication-content .confirmation-checkbox input[type=checkbox]:checked{background-color:#0071e3;border-color:#0071e3}.transfer-album-modal .confirmation-section .transfer-implications .implication-item .implication-content .confirmation-checkbox input[type=checkbox]:checked:after{border:solid #fff;border-width:0 2px 2px 0;content:"";height:.6rem;left:.4rem;position:absolute;top:.2rem;transform:rotate(45deg);width:.3rem}.transfer-album-modal .confirmation-section .transfer-implications .implication-item .implication-content .confirmation-checkbox input[type=checkbox]:focus{box-shadow:0 0 0 2px #0071e34d;outline:none}.transfer-album-modal .confirmation-section .transfer-implications .implication-item .implication-content .confirmation-checkbox label{color:#374151;cursor:pointer;font-size:.875rem}.transfer-album-modal .modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.transfer-album-modal .modal-actions button{min-width:100px}@media(max-width:768px){.transfer-album-modal{padding:8px}.transfer-album-modal .info-section{gap:12px;padding:12px}.transfer-album-modal .confirmation-section{padding:12px}.transfer-album-modal .confirmation-section .user-details{flex-direction:column;padding:12px}.transfer-album-modal .confirmation-section .user-details .user-avatar{margin-bottom:8px}.transfer-album-modal .confirmation-section .user-details .user-info{text-align:center}.transfer-album-modal .confirmation-section .transfer-implications{gap:1rem;margin:1rem 0}.transfer-album-modal .confirmation-section .transfer-implications .implication-item{align-items:center;flex-direction:column;padding:.75rem;text-align:center}.transfer-album-modal .confirmation-section .transfer-implications .implication-item .implication-icon{margin-bottom:.5rem}.transfer-album-modal .confirmation-section .transfer-implications .implication-item .implication-content .confirmation-checkbox{justify-content:center}.transfer-album-modal .modal-actions{flex-direction:column-reverse}.transfer-album-modal .modal-actions button{width:100%}}.album-detail-page{display:flex;flex-direction:column;height:100%;width:100%}.album-detail-page .back-button-container{padding:.5rem 0}.album-detail-page .back-button-container .back-button{align-items:center;background:none;border:none;color:#0071e3;color:var(--primary-color);cursor:pointer;display:flex;font-size:.9375rem;padding:.5rem 0;transition:color .2s ease}.album-detail-page .back-button-container .back-button svg{font-size:1rem;margin-right:.5rem}.album-detail-page .back-button-container .back-button:hover{color:#0062cc;color:var(--primary-color-dark);text-decoration:underline}.album-detail-page .content-tabs{border-bottom:.0625rem solid #d2d2d7;border-bottom:.0625rem solid var(--border-color);border-radius:0;display:flex;margin-bottom:1.5rem;overflow-x:auto}.album-detail-page .content-tabs .tab-button{align-items:center;background:none;border:none;border-bottom:.125rem solid #0000;color:#86868b;color:var(--text-secondary);cursor:pointer;display:flex;font-size:1rem;font-weight:500;padding:.75rem 1.25rem;transition:all .2s ease}.album-detail-page .content-tabs .tab-button svg{font-size:1.125rem;margin-right:.5rem}.album-detail-page .content-tabs .tab-button:hover{color:#1d1d1f;color:var(--text-color)}.album-detail-page .content-tabs .tab-button.active{border-bottom-color:#0071e3;border-bottom-color:var(--primary-color);color:#0071e3;color:var(--primary-color)}.album-detail-page .tab-content{min-height:18.75rem}.album-detail-page .album-photos-tab .album-photo-filter-bar{align-items:center;display:flex;gap:.5rem;margin-bottom:1rem;overflow-x:auto;padding-bottom:.5rem}.album-detail-page .album-photos-tab .album-photo-filter-bar::-webkit-scrollbar{height:.25rem}.album-detail-page .album-photos-tab .album-photo-filter-bar::-webkit-scrollbar-track{background:#0000}.album-detail-page .album-photos-tab .album-photo-filter-bar::-webkit-scrollbar-thumb{background-color:#0000001a;border-radius:.25rem}.album-detail-page .details-tab .album-details-section,.album-detail-page .details-tab .album-sharing-section{margin-bottom:2rem}.album-detail-page .details-tab .album-details-section h3,.album-detail-page .details-tab .album-sharing-section h3{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;font-weight:600;margin:0 0 1rem}.album-detail-page .details-tab .details-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr))}.album-detail-page .details-tab .details-grid .detail-item{background-color:#fff;background-color:var(--card-background);border-radius:8px;padding:.75rem}.album-detail-page .details-tab .details-grid .detail-item .detail-label{color:#86868b;color:var(--text-secondary);display:block;font-size:.75rem;margin-bottom:.25rem}.album-detail-page .details-tab .details-grid .detail-item .detail-value{color:#1d1d1f;color:var(--text-color);font-size:.9375rem;font-weight:500}.album-detail-page .photos-container{margin-bottom:5rem}@media(max-width:768px){.album-detail-page .album-header{flex-direction:column}.album-detail-page .album-header .album-cover{aspect-ratio:1.5;height:auto;margin-bottom:1rem;margin-right:0;width:100%}.album-detail-page .album-header .album-actions{justify-content:center;margin-left:0;width:100%}}.album-detail-page .album-info-skeleton{background-color:#fff;border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:#0000000d;box-shadow:var(--shadow-light);display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding:1.5rem}.album-detail-page .photo-grid-skeleton{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}.qr-code-modal h3{text-align:center}.qr-code-modal h3,.qr-code-modal h4{color:#1d1d1f;color:var(--text-color);margin-bottom:1rem}.qr-code-modal h4{font-size:1.125rem}.qr-code-modal .qr-code-container{align-items:center;display:flex;flex-direction:column;margin:1.5rem 0;width:100%}.qr-code-modal .qr-code-container .loading-spinner{align-items:center;display:flex;flex-direction:column;height:12.5rem;justify-content:center}.qr-code-modal .qr-code-container .loading-spinner .spinner{animation:spin 1s linear infinite;border:.25rem solid #0071e31a;border-top-color:#0071e3;border:.25rem solid rgba(var(--primary-color-rgb,0,122,255),.1);border-radius:50%;border-top-color:var(--primary-color);height:2.5rem;margin-bottom:1rem;width:2.5rem}.qr-code-modal .qr-code-container .loading-spinner p{color:#86868b;color:var(--text-secondary)}.qr-code-modal .qr-code-container .error-container{align-items:center;display:flex;flex-direction:column;padding:2rem}.qr-code-modal .qr-code-container .error-container .error-message{color:#ff3b30;color:var(--error-color,#ff3b30);margin-bottom:1rem;text-align:center}.qr-code-modal .qr-code-container .qr-code-image{align-items:center;display:flex;flex-direction:column}.qr-code-modal .qr-code-container .qr-code-image img{border-radius:.5rem;box-shadow:0 2px 8px #0000001a;height:12.5rem;width:12.5rem}.qr-code-modal .qr-code-container .qr-code-image p{color:#86868b;color:var(--text-secondary);margin-top:.75rem;text-align:center}.qr-code-modal .qr-code-container .share-link{margin-top:1.5rem;max-width:25rem;width:100%}.qr-code-modal .qr-code-container .share-link p{color:#86868b;color:var(--text-secondary);margin-bottom:.5rem;text-align:center}.qr-code-modal .qr-code-container .share-link .link-container{align-items:center;display:flex;gap:.5rem}.qr-code-modal .qr-code-container .share-link .link-container input{background-color:#f5f5f5;background-color:var(--input-background,#f5f5f5);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:.5rem;color:#1d1d1f;color:var(--text-color);flex:1 1;font-size:.875rem;padding:.75rem}.qr-code-modal .qr-code-container .share-link .link-container input:focus{border-color:#0071e3;border-color:var(--primary-color);outline:none}.qr-code-modal .qr-code-container .qr-actions{display:flex;gap:.75rem;justify-content:center;margin-top:1.5rem;max-width:25rem;width:100%}.qr-code-modal .qr-code-container .qr-settings-panel{max-width:25rem;width:100%}.qr-code-modal .qr-code-container .qr-settings-panel .settings-form{display:flex;flex-direction:column;gap:1rem}.qr-code-modal .qr-code-container .qr-settings-panel .settings-form .form-group{display:flex;flex-direction:column;gap:.5rem}.qr-code-modal .qr-code-container .qr-settings-panel .settings-form .form-group label{color:#1d1d1f;color:var(--text-color);font-size:.875rem;font-weight:500}.qr-code-modal .qr-code-container .qr-settings-panel .settings-form .details-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr))}.qr-code-modal .qr-code-container .qr-settings-panel .settings-form .details-grid .detail-item{border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:.5rem;cursor:pointer;padding:.25rem}.qr-code-modal .qr-code-container .qr-settings-panel .settings-form .details-grid input[type=range]{margin:0;width:100%}.qr-code-modal .qr-code-container .qr-settings-panel .settings-form .details-grid input[type=text]{border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:.5rem;font-size:.875rem;padding:.75rem;width:100%}.qr-code-modal .qr-code-container .qr-settings-panel .settings-form .details-grid input[type=text]:focus{border-color:#0071e3;border-color:var(--primary-color);outline:none}.qr-code-modal .qr-code-container .qr-settings-panel .settings-form .details-grid span{align-self:flex-end;color:#86868b;color:var(--text-secondary);font-size:.875rem}.qr-code-modal .qr-code-container .qr-settings-panel .settings-form .form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem}.qr-code-modal .toast-message{border-radius:2rem;bottom:1.5rem;box-shadow:0 4px 12px #00000026;font-size:.875rem;font-weight:500;left:50%;padding:.75rem 1.25rem;position:fixed;transform:translateX(-50%);z-index:1000}.qr-code-modal .toast-message.success{background-color:#34c759;background-color:var(--success-color,#34c759);color:#fff}.qr-code-modal .modal-actions{display:flex;justify-content:flex-end;margin-top:1rem}.qr-code-modal .verify-payment-button-container{background-color:#fff;border-radius:8px;bottom:24px;box-shadow:0 4px 12px #00000026;padding:12px;position:fixed;right:24px;z-index:100}.qr-code-modal .verify-payment-button-container .spinner{animation:spin 1s linear infinite}.share-modal .share-options{display:flex;flex-direction:column;gap:1rem}.add-friend-modal .search-container{margin-bottom:1rem}.add-friend-modal .search-container .search-input-wrapper{position:relative}.add-friend-modal .search-container .search-input-wrapper .search-icon{color:#86868b;color:var(--text-secondary);left:.75rem;position:absolute;top:50%;transform:translateY(-50%)}.add-friend-modal .search-container .search-input-wrapper .search-input{border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:8px;font-size:.9375rem;padding:.75rem 1rem .75rem 2.5rem;width:100%}.add-friend-modal .search-container .search-input-wrapper .search-input:focus{border-color:#0071e3;border-color:var(--primary-color);outline:none}.add-friend-modal .friends-list{margin-bottom:1.5rem;max-height:18.75rem;overflow-y:auto}.add-friend-modal .friends-list .friend-item{align-items:center;border-radius:8px;cursor:pointer;display:flex;padding:.75rem;transition:background-color .2s cubic-bezier(.25,.46,.45,.94);transition:background-color var(--transition-fast,.2s ease)}.add-friend-modal .friends-list .friend-item:hover{background-color:#e8e8ed;background-color:var(--hover-color,#f5f5f5)}.add-friend-modal .friends-list .friend-item.selected{background-color:#0071e31a;background-color:rgba(var(--primary-color-rgb,0,122,255),.1)}.add-friend-modal .friends-list .friend-item .friend-avatar{border-radius:50%;height:2.5rem;margin-right:.75rem;overflow:hidden;width:2.5rem}.add-friend-modal .friends-list .friend-item .friend-avatar img{height:100%;object-fit:cover;width:100%}.add-friend-modal .friends-list .friend-item .friend-avatar .avatar-placeholder{align-items:center;background-color:#0071e3;background-color:var(--primary-color);color:#fff;display:flex;font-size:1.25rem;font-weight:600;height:100%;justify-content:center;width:100%}.add-friend-modal .friends-list .friend-item .friend-info{flex:1 1}.add-friend-modal .friends-list .friend-item .friend-info .friend-name{color:#1d1d1f;color:var(--text-color);font-size:.9375rem;font-weight:500;margin:0 0 .25rem}.add-friend-modal .friends-list .friend-item .friend-info .friend-username{color:#86868b;color:var(--text-secondary);font-size:.8125rem;margin:0}.add-friend-modal .friends-list .friend-item .selection-indicator{color:#0071e3;color:var(--primary-color);font-size:1.125rem}.add-friend-modal .friends-list .no-results{color:#86868b;color:var(--text-secondary);padding:1rem;text-align:center}.add-friend-modal .modal-actions{justify-content:flex-end}.photographer-business-card{background-color:#00000005;background-color:var(--card-background-secondary,#00000005);border-radius:var(--border-radius-md);margin-top:.5rem;overflow:hidden;padding:1rem}.photographer-business-card .photographer-header{align-items:center;display:flex;margin-bottom:1rem}.photographer-business-card .photographer-header .photographer-avatar{align-items:center;background:linear-gradient(135deg,var(--primary-color),#0062cc);background:linear-gradient(135deg,var(--primary-color),var(--primary-color-dark,#0062cc));border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1.5rem;font-weight:600;height:3rem;justify-content:center;margin-right:1rem;width:3rem}.photographer-business-card .photographer-header .business-logo{border-radius:50%;flex-shrink:0;height:3rem;margin-right:1rem;object-fit:cover;width:3rem}.photographer-business-card .photographer-header .photographer-info .photographer-name{color:var(--text-color);font-size:1.125rem;font-weight:600;margin:0}.photographer-business-card .photographer-header .photographer-info .business-name{align-items:center;color:var(--text-color-secondary);display:flex;font-size:.875rem;margin:.25rem 0 0}.photographer-business-card .photographer-header .photographer-info .business-name .business-icon{color:var(--primary-color);margin-right:.5rem}.photographer-business-card .business-details{margin-bottom:1rem}.photographer-business-card .business-details .detail-item{align-items:center;display:flex;font-size:.875rem;margin:.5rem 0}.photographer-business-card .business-details .detail-item .detail-icon{color:var(--primary-color);flex-shrink:0;margin-right:.75rem}.photographer-business-card .business-details .detail-item a{color:var(--primary-color);color:var(--link-color,var(--primary-color));text-decoration:none}.photographer-business-card .business-details .detail-item a:hover{text-decoration:underline}.photographer-business-card .business-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.photographer-business-card .business-actions button{flex:1 1;min-width:7.5rem}@keyframes premiumPulse{0%{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}to{opacity:.7;transform:scale(1)}}.album-details-header{align-items:flex-start;background-color:var(--card-background);border-radius:var(--border-radius-lg);box-shadow:0 .25rem 1.25rem #00000014;display:flex;margin-bottom:2rem;padding:1rem;position:relative;transition:all var(--transition-normal)}.album-details-header.favorite:before{border-color:#0000 var(--primary-color) #0000 #0000;border-style:solid;border-width:0 3rem 3rem 0;content:"";height:0;position:absolute;right:0;top:0;width:0;z-index:1}.album-details-header .album-cover{border-radius:var(--border-radius-md);box-shadow:0 .5rem 1.25rem #00000026;flex-shrink:0;height:8.125rem;margin-right:1.25rem;overflow:hidden;position:relative;transition:all var(--transition-normal);width:6.25rem}.album-details-header .album-cover.loading{background-color:var(--background-secondary)}.album-details-header .album-cover:hover{box-shadow:0 .75rem 1.5rem #0003;transform:translateY(-.3125rem)}.album-details-header .album-cover:hover .album-cover-image{transform:scale(1.05)}.album-details-header .album-cover .album-loading-skeleton{animation:pulse 1.5s ease-in-out infinite;background-color:var(--background-secondary);height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%;z-index:1}.album-details-header .album-cover .album-loading-skeleton .skeleton-shine{animation:skeletonShine 1.5s infinite;background:linear-gradient(90deg,#fff0,#ffffff26 50%,#fff0);height:100%;left:0;position:absolute;top:0;width:100%}.album-details-header .album-cover .album-status-icon{align-items:center;border-radius:50%;box-shadow:0 .125rem .375rem #0003;color:var(--white-color);display:flex;font-size:1rem;height:1.75rem;justify-content:center;left:.5rem;position:absolute;top:.5rem;transition:transform var(--transition-fast);width:1.75rem;z-index:2}.album-details-header .album-cover .album-status-icon:hover{transform:scale(1.1)}.album-details-header .album-cover .album-status-icon.private{background-color:#000000b3}.album-details-header .album-cover .album-status-icon.public{background-color:rgba(var(--primary-color-rgb),.8)}.album-details-header .album-cover .album-status-icon.shared{background-color:#5856d6cc}.album-details-header .album-cover .favorite-btn{align-items:center;backdrop-filter:blur(.25rem);-webkit-backdrop-filter:blur(.25rem);background-color:#00000080;border:none;border-radius:50%;box-shadow:0 .125rem .375rem #0003;color:#fff;cursor:pointer;display:flex;height:1.75rem;justify-content:center;position:absolute;right:.5rem;top:.5rem;transition:all var(--transition-fast);width:1.75rem;z-index:2}.album-details-header .album-cover .favorite-btn:hover{background-color:#000000b3;transform:scale(1.1)}.album-details-header .album-cover .favorite-btn:active{transform:scale(.95)}.album-details-header .album-cover .favorite-btn.active{background-color:var(--primary-color);color:#fff}.album-details-header .album-cover img{height:100%;object-fit:cover;transition:transform .5s ease;width:100%;will-change:transform}.album-details-header .album-cover .album-cover-placeholder{align-items:center;border-radius:12px;box-shadow:inset 0 0 0 1px #ffffff1a;display:flex;height:100%;justify-content:center;overflow:hidden;position:relative;transition:transform .5s ease;width:100%}.album-details-header .album-cover .album-cover-placeholder:before{background:radial-gradient(circle at 30% 30%,#ffffff26,#0000 70%);bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:1}.album-details-header .album-cover .album-cover-placeholder .placeholder-content{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;padding:1rem;text-align:center;width:100%;z-index:2}.album-details-header .album-cover .album-cover-placeholder .album-initials{color:#fffffff2;font-size:2.5rem;font-weight:700;letter-spacing:.05em;margin-bottom:.5rem;text-shadow:0 2px 8px #00000026}.album-details-header .album-cover .album-cover-placeholder .placeholder-photo-count{backdrop-filter:blur(.25rem);-webkit-backdrop-filter:blur(.25rem);background-color:#0003;border-radius:1rem;color:#ffffffd9;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.album-details-header .album-info{flex:1 1;min-width:0}.album-details-header .album-info .album-title-container{align-items:center;display:flex;margin-bottom:.5rem}.album-details-header .album-info .album-title-container .album-title{color:var(--text-primary);font-size:1.5rem;font-weight:700;line-height:1.2;margin:0 .75rem 0 0}.album-details-header .album-info .album-title-container .premium-title-badge{align-items:center;background:linear-gradient(135deg,gold,#ffc107);border-radius:1rem;box-shadow:0 2px 8px #ffd7004d;color:#222;display:flex;font-size:.75rem;font-weight:600;padding:.25rem .5rem;transform:translateY(0);transition:all .3s ease}.album-details-header .album-info .album-title-container .premium-title-badge .premium-crown{font-size:.75rem;margin-right:.25rem}.album-details-header .album-info .album-title-container .premium-title-badge:hover{box-shadow:0 4px 12px #ffd70066;transform:translateY(-2px)}.album-details-header .album-info .album-description{color:var(--text-color);font-size:.9375rem;line-height:1.5;margin:0 0 .5rem;max-width:90%}.album-details-header .album-info .album-meta{align-items:center;color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:.875rem;margin-bottom:.75rem}.album-details-header .album-info .album-meta .meta-item{align-items:center;display:flex}.album-details-header .album-info .album-meta .meta-item .meta-icon{font-size:.75rem;margin-right:.25rem}.album-details-header .album-info .album-meta .meta-item .meta-value{color:var(--text-primary);font-weight:600;margin-right:.25rem}.album-details-header .album-info .album-meta .meta-item.status{color:var(--text-secondary)}.album-details-header .album-info .album-meta .meta-item.premium{color:gold;font-weight:500}.album-details-header .album-info .album-meta .meta-item.premium .premium-icon{animation:premiumPulse 2s infinite}.album-details-header .album-info .album-meta .meta-separator{color:var(--border-color);font-weight:300;margin:0 .5rem}.album-details-header .album-info .album-tags{display:flex;flex-wrap:wrap;gap:.625rem}.album-details-header .album-info .album-tags .tag{align-items:center;background-color:var(--background-secondary);border-radius:1rem;box-shadow:none;color:var(--text-color-secondary);display:inline-flex;font-size:.8125rem;font-weight:500;padding:.25rem .625rem}.album-details-header .album-owner-info{margin-top:1rem;width:100%}.album-details-header .album-owner-info .photographer-details-toggle{align-items:center;background:none;border:none;border-radius:var(--border-radius-md);cursor:pointer;display:flex;justify-content:space-between;padding:.75rem 1rem;text-align:left;transition:all var(--transition-fast);width:100%}.album-details-header .album-owner-info .photographer-details-toggle:hover{background-color:#0000000d;background-color:var(--hover-color,#0000000d)}.album-details-header .album-owner-info .photographer-details-toggle .photographer-summary{align-items:center;display:flex}.album-details-header .album-owner-info .photographer-details-toggle .photographer-summary .photographer-icon{color:var(--primary-color);font-size:1.125rem;margin-right:.75rem}.album-details-header .album-owner-info .photographer-details-toggle .photographer-summary .photographer-label{color:var(--text-color-secondary);font-weight:600;margin-right:.5rem}.album-details-header .album-owner-info .photographer-details-toggle .photographer-summary .photographer-name{color:var(--text-color);font-weight:500}.album-details-header .album-owner-info .photographer-details-toggle .toggle-icon{color:var(--text-color-secondary);font-size:.875rem;transition:transform var(--transition-fast)}.album-details-header .album-owner-info .photographer-business-card{background-color:#00000005;background-color:var(--card-background-secondary,#00000005);border-radius:var(--border-radius-md);margin-top:.5rem;overflow:hidden;padding:1rem}.album-details-header .album-owner-info .photographer-business-card .photographer-header{align-items:center;display:flex;margin-bottom:1rem}.album-details-header .album-owner-info .photographer-business-card .photographer-header .photographer-avatar{align-items:center;background:linear-gradient(135deg,var(--primary-color),#0062cc);background:linear-gradient(135deg,var(--primary-color),var(--primary-color-dark,#0062cc));border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1.5rem;font-weight:600;height:3rem;justify-content:center;margin-right:1rem;width:3rem}.album-details-header .album-owner-info .photographer-business-card .photographer-header .photographer-info .photographer-name{color:var(--text-color);font-size:1.125rem;font-weight:600;margin:0}.album-details-header .album-owner-info .photographer-business-card .photographer-header .photographer-info .business-name{align-items:center;color:var(--text-color-secondary);display:flex;font-size:.875rem;margin:.25rem 0 0}.album-details-header .album-owner-info .photographer-business-card .photographer-header .photographer-info .business-name .business-icon{color:var(--primary-color);margin-right:.5rem}.album-details-header .album-owner-info .photographer-business-card .photographer-details{margin-bottom:1rem}.album-details-header .album-owner-info .photographer-business-card .photographer-details .detail-item{align-items:center;display:flex;font-size:.875rem;margin:.5rem 0}.album-details-header .album-owner-info .photographer-business-card .photographer-details .detail-item .detail-icon{color:var(--primary-color);flex-shrink:0;margin-right:.75rem}.album-details-header .album-owner-info .photographer-business-card .photographer-details .detail-item a{color:var(--primary-color);color:var(--link-color,var(--primary-color));text-decoration:none}.album-details-header .album-owner-info .photographer-business-card .photographer-details .detail-item a:hover{text-decoration:underline}.album-details-header .album-owner-info .photographer-business-card .photographer-specialties{margin-bottom:1rem}.album-details-header .album-owner-info .photographer-business-card .photographer-specialties h4{color:var(--text-color-secondary);font-size:.875rem;font-weight:600;margin:0 0 .5rem}.album-details-header .album-owner-info .photographer-business-card .photographer-specialties .specialty-tags{display:flex;flex-wrap:wrap;gap:.5rem}.album-details-header .album-owner-info .photographer-business-card .business-actions{display:flex;gap:.75rem;justify-content:flex-start;margin-top:1rem}.album-details-header .album-actions{align-items:flex-start;display:flex;gap:.625rem;margin-left:auto;padding-left:1rem}@media(max-width:992px){.album-details-header .album-actions{margin-top:1rem;padding-left:0}}.album-details-header .album-actions .options-menu-container{position:relative}.album-details-header .album-actions .options-menu-container .options-menu{backdrop-filter:blur(.625rem);-webkit-backdrop-filter:blur(.625rem);background-color:var(--card-background);border-radius:var(--border-radius-md);box-shadow:0 .5rem 1.5rem #00000026;margin-top:.5rem;min-width:12.5rem;overflow:hidden;position:absolute;right:0;top:100%;z-index:100}.album-details-header .album-actions .options-menu-container .options-menu button{align-items:center;background:none;border:none;border-radius:.5rem;color:var(--text-color);cursor:pointer;display:flex;font-size:.875rem;padding:.75rem 1rem;text-align:left;transition:all .2s ease;width:100%}.album-details-header .album-actions .options-menu-container .options-menu button:hover{background-color:#0000000d;background-color:var(--hover-color,#0000000d)}.album-details-header .album-actions .options-menu-container .options-menu button svg{font-size:1rem;margin-right:.5rem}.album-details-header .album-actions .options-menu-container .options-menu button.delete-option{color:#e53935;color:var(--error-color,#e53935)}.album-details-header .album-actions .options-menu-container .options-menu button.delete-option:hover{background-color:#e539351a}.album-details-header .album-actions .options-menu-container .options-menu button.delete-option .leave-icon{color:var(--error-color);font-size:1.5rem;margin-right:.75rem}.album-details-header .album-actions .options-menu-container .options-menu button:disabled{background-color:var(--color-background-disabled);cursor:not-allowed;opacity:.6}.album-details-header .album-actions .options-menu-container .options-menu button:has(svg[data-icon=cloud-upload-alt]){color:#007aff}.album-details-header .album-actions .options-menu-container .options-menu button:has(svg[data-icon=cloud-upload-alt]) svg{color:#007aff}.album-details-header .album-actions .options-menu-container .options-menu button:has(svg[data-icon=cloud-upload-alt]):hover{background-color:#007aff1a}.album-details-header .album-actions .options-menu-container .options-menu button:has(svg[data-icon=cloud-upload-alt]):active{background-color:#007aff33}@media(max-width:48rem){.album-details-header{flex-direction:column;padding:1rem}.album-details-header .album-cover{height:120px;margin-bottom:1.5rem;margin-right:0;width:100%}.album-details-header .album-info{width:100%}.album-details-header .album-info .album-title{font-size:1.5rem}.album-details-header .album-info .album-description{font-size:1rem;max-width:100%}.album-details-header .album-info .album-owner-info .photographer-details-toggle{padding:.625rem .75rem}.album-details-header .album-info .album-owner-info .photographer-details-toggle .photographer-summary .photographer-label,.album-details-header .album-info .album-owner-info .photographer-details-toggle .photographer-summary .photographer-name{font-size:.875rem}.album-details-header .album-info .album-owner-info .photographer-business-card .photographer-header .photographer-avatar{font-size:1.25rem;height:2.5rem;width:2.5rem}.album-details-header .album-info .album-owner-info .photographer-business-card .photographer-header .photographer-info .photographer-name{font-size:1rem}.album-details-header .album-info .album-owner-info .photographer-business-card .business-actions{align-items:flex-start;flex-direction:column}.album-details-header .album-info .album-owner-info .photographer-business-card .business-actions button{width:100%}.album-details-header .album-actions{justify-content:center;margin-top:1.5rem;padding-left:0;width:100%}}@media(max-width:30rem){.album-details-header{padding:1rem}.album-details-header .album-cover{height:180px;margin-bottom:1.25rem}.album-details-header .album-cover .album-status-icon,.album-details-header .album-cover .favorite-btn{font-size:.875rem;height:2rem;width:2rem}.album-details-header .album-info .album-title{font-size:1.25rem}.album-details-header .album-info .album-meta{font-size:.8125rem;gap:.75rem}.album-details-header .album-info .album-tags .tag{font-size:.8125rem;padding:.25rem .75rem}.album-details-header .album-actions{flex-wrap:wrap;gap:.625rem}}@media(prefers-color-scheme:dark){.album-details-header .album-cover .album-loading-skeleton{background-color:#ffffff0d}.album-details-header .album-cover .album-loading-skeleton .skeleton-shine{background:linear-gradient(90deg,#fff0,#ffffff1a 50%,#fff0)}.album-details-header .album-info .album-tags .tag{background-color:#ffffff1a;box-shadow:0 1px 3px #0003}}body.no-scroll{overflow:hidden}.coming-soon-modal-backdrop{align-items:center;animation:fadeIn .2s ease-out forwards;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;opacity:0;padding:16px;position:fixed;right:0;top:0;z-index:1000}.coming-soon-modal{animation:slideUp .3s ease-out .1s forwards;background-color:#fff;background-color:var(--white);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 10px 25px #0000001a;display:flex;flex-direction:column;max-height:90vh;max-width:400px;opacity:0;overflow:hidden;transform:translateY(20px);width:100%}.coming-soon-modal__header{align-items:center;border-bottom:1px solid #e8e8ed;border-bottom:1px solid var(--gray-200);display:flex;justify-content:space-between;padding:16px 20px}.coming-soon-modal__title{color:#1d1d1f;color:var(--gray-900);font-size:17px;font-weight:600;margin:0}.coming-soon-modal__close{align-items:center;background:none;border:none;border-radius:50%;color:#86868b;color:var(--gray-500);cursor:pointer;display:flex;justify-content:center;line-height:1;padding:6px;transition:all .2s ease}.coming-soon-modal__close .icon{display:block;font-size:18px;height:1em;width:1em}.coming-soon-modal__close:hover{background-color:#f5f5f7;background-color:var(--gray-100);color:#4d4d4d;color:var(--gray-700)}.coming-soon-modal__close:active{background-color:#e8e8ed;background-color:var(--gray-200);transform:scale(.95)}.coming-soon-modal__close:focus{box-shadow:0 0 0 3px #0071e333;box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.2);outline:none}.coming-soon-modal__content{flex-grow:1;overflow-y:auto;padding:24px 20px;text-align:center}.coming-soon-modal__icon{align-items:center;color:#0071e3;color:var(--primary-color);display:flex;height:60px;justify-content:center;margin:0 auto 16px;width:60px}.coming-soon-modal__icon svg{height:100%;width:100%}.coming-soon-modal__message{color:#1d1d1f;color:var(--gray-900);font-size:17px;font-weight:500;line-height:1.4;margin:0 0 8px}.coming-soon-modal__subtext{color:#86868b;color:var(--gray-500);font-size:15px;line-height:1.5;margin:0}.coming-soon-modal__footer{border-top:1px solid #e8e8ed;border-top:1px solid var(--gray-200);padding:16px 20px 20px}.coming-soon-modal__button{background-color:#0071e3;background-color:var(--primary-color);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:12px 16px;transition:background-color .2s;width:100%}.coming-soon-modal__button:hover{background-color:#0077ed;background-color:var(--primary-color-hover)}.coming-soon-modal__button:active{background-color:#0068d1;background-color:var(--primary-color-active)}.coming-soon-modal__button:focus-visible{box-shadow:0 0 0 3px #0071e34d;box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.3);outline:none}.loading-skeleton{animation:loading-animation ease .5s cubic-bezier(.25,.46,.45,.94) infinite;animation:loading-animation var(--transition-slow) ease infinite;background:linear-gradient(90deg,#0000000f 25%,#0000001a 37%,#0000000f 63%);background:linear-gradient(90deg,var(--skeleton-start-color,#0000000f) 25%,var(--skeleton-middle-color,#0000001a) 37%,var(--skeleton-end-color,#0000000f) 63%);background-size:400% 100%;border-radius:6px;border-radius:var(--border-radius-sm)}@keyframes loading-animation{0%{background-position:100% 50%}to{background-position:0 50%}}.edit-album-modal{overflow-y:auto;padding:0}.edit-album-modal .loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:2rem}.edit-album-modal .loading-container .spinner{animation:spin 1s linear infinite;border:.1875rem solid #e8e8ed;border-top-color:#0071e3;border:.1875rem solid var(--gray-200);border-radius:50%;border-top-color:var(--primary-color);height:2.5rem;width:2.5rem}.edit-album-modal .loading-container p{color:#86868b;color:var(--text-secondary);font-size:.9rem;margin-top:1rem}.edit-album-modal .section{margin-bottom:2rem}.edit-album-modal .section:last-child{margin-bottom:0}.edit-album-modal .section-title{color:#1d1d1f;color:var(--text-color);font-size:1.1rem;font-weight:600;margin-bottom:.25rem}.edit-album-modal .section-subtitle{color:#86868b;color:var(--text-secondary);font-size:.9rem;margin-bottom:1rem}.edit-album-modal .input-container{margin-bottom:1.5rem;position:relative}.edit-album-modal .input-container label{color:#1d1d1f;color:var(--text-color);display:block;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.edit-album-modal .input-container .text-input{background-color:#fff;background-color:var(--input-background,var(--white));border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);color:#1d1d1f;color:var(--text-color);font-size:1rem;padding:.75rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:100%}.edit-album-modal .input-container .text-input:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 .125rem #42a1ff;box-shadow:0 0 0 .125rem var(--primary-color-light,rgba(var(--primary-color-rgb),.2));outline:none}.edit-album-modal .input-container .text-input::placeholder{color:#86868b;color:var(--text-secondary)}.edit-album-modal .input-container .text-input.textarea{min-height:6.25rem;resize:vertical}.edit-album-modal .character-count{bottom:-1.25rem;color:#86868b;color:var(--text-secondary);font-size:.8rem;margin-top:.25rem;position:absolute;right:0;text-align:right}.edit-album-modal .error-message{background-color:#ff3b301a;background-color:var(--error-background,rgba(var(--danger-color-rgb),.1));border-radius:8px;border-radius:var(--border-radius-md);color:#ff3b30;color:var(--error-color);font-size:.9rem;margin-bottom:1rem;padding:.75rem}.edit-album-modal .selected-image-container{border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 .125rem .5rem #0000000d;box-shadow:0 .125rem .5rem var(--shadow-light);height:12.5rem;margin:1rem auto;overflow:hidden;position:relative;width:12.5rem}.edit-album-modal .selected-image-container .selected-image{display:block;height:100%;object-fit:cover;width:100%}.edit-album-modal .selected-image-container .remove-image-button{align-items:center;background-color:#00000080;background-color:var(--overlay-background-dark,#0009);border:none;border-radius:50%;color:#fff;color:var(--white-color);cursor:pointer;display:flex;font-size:.9rem;height:1.875rem;justify-content:center;position:absolute;right:.5rem;top:.5rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:1.875rem}.edit-album-modal .selected-image-container .remove-image-button:hover{background-color:#000c;background-color:var(--overlay-background-darker,#000c)}.edit-album-modal .image-options{display:flex;gap:1.5rem;justify-content:center;margin:1rem 0}.edit-album-modal .image-options .image-option,.edit-album-modal .image-options .image-option .image-option-button{align-items:center;cursor:pointer;display:flex;flex-direction:column}.edit-album-modal .image-options .image-option .image-option-button .image-option-icon{align-items:center;background-color:#f5f5f7;background-color:var(--gray-100);border-radius:50%;display:flex;height:4.375rem;justify-content:center;margin-bottom:.75rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:4.375rem}.edit-album-modal .image-options .image-option .image-option-button .image-option-icon svg{color:#0071e3;color:var(--primary-color);font-size:1.5rem}.edit-album-modal .image-options .image-option .image-option-button span{color:#0071e3;color:var(--primary-color);font-size:.9rem}.edit-album-modal .image-options .image-option .image-option-button:hover .image-option-icon{background-color:#42a1ff;background-color:var(--primary-color-light,var(--secondary-color))}.edit-album-modal .setting-row{align-items:center;border-bottom:.0625rem solid #d2d2d7;border-bottom:.0625rem solid var(--border-color-light,var(--border-color));display:flex;justify-content:space-between;padding:.75rem 0}.edit-album-modal .setting-row:last-child{border-bottom:none}.edit-album-modal .setting-label-container{align-items:center;display:flex;flex:1 1}.edit-album-modal .setting-icon{align-items:center;color:#0071e3;color:var(--primary-color);display:flex;font-size:1.2rem;height:1.5rem;justify-content:center;margin-right:1rem;width:1.5rem}.edit-album-modal .setting-text{display:flex;flex-direction:column}.edit-album-modal .setting-label{color:#1d1d1f;color:var(--text-color);display:block;font-size:.95rem;font-weight:500;margin-bottom:.25rem}.edit-album-modal .setting-description{color:#86868b;color:var(--text-secondary);font-size:.8rem;margin:0}.edit-album-modal .toggle-switch{display:inline-block;height:1.9375rem;position:relative;width:3.1875rem}.edit-album-modal .toggle-switch input{height:0;opacity:0;width:0}.edit-album-modal .toggle-switch input:checked+.toggle-slider{background-color:#0071e3;background-color:var(--primary-color)}.edit-album-modal .toggle-switch input:checked+.toggle-slider:before{transform:translateX(1.25rem)}.edit-album-modal .toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.5}.edit-album-modal .toggle-switch .toggle-slider{background-color:#d2d2d7;background-color:var(--gray-300);border-radius:2.125rem;bottom:0;cursor:pointer;left:0;right:0;top:0}.edit-album-modal .toggle-switch .toggle-slider,.edit-album-modal .toggle-switch .toggle-slider:before{position:absolute;transition:.5s cubic-bezier(.25,.46,.45,.94);transition:var(--transition-slow,var(--transition-fast))}.edit-album-modal .toggle-switch .toggle-slider:before{background-color:#fff;background-color:var(--white-color);border-radius:50%;bottom:.125rem;box-shadow:0 .125rem .25rem #0000000d;box-shadow:0 .125rem .25rem var(--shadow-light);content:"";height:1.6875rem;left:.125rem;width:1.6875rem}.edit-album-modal .password-container{background-color:#f5f5f7;background-color:var(--gray-100);border-radius:8px;border-radius:var(--border-radius-md);margin-top:1rem;padding:1rem}.edit-album-modal .password-hint{color:#86868b;color:var(--text-secondary);font-size:.8rem;margin:.5rem 0 0}.edit-album-modal .categories-container{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-top:1rem}.edit-album-modal .category-item{align-items:center;border-radius:8px;border-radius:var(--border-radius-md);cursor:pointer;display:flex;flex-direction:column;padding:.75rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}.edit-album-modal .category-item:hover{background-color:#f5f5f7;background-color:var(--gray-100)}.edit-album-modal .category-item.selected{background-color:#42a1ff;background-color:var(--primary-color-light,var(--secondary-color))}.edit-album-modal .category-item.selected .category-icon{border:.125rem solid #0071e3;border:.125rem solid var(--primary-color)}.edit-album-modal .category-item.selected .category-label{color:#0071e3;color:var(--primary-color);font-weight:500}.edit-album-modal .category-item .category-icon{align-items:center;background-color:#f5f5f7;background-color:var(--gray-100);border-radius:50%;color:#1d1d1f;color:var(--text-color);display:flex;font-size:1.5rem;height:3.75rem;justify-content:center;margin-bottom:.75rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:3.75rem}.edit-album-modal .category-item .category-icon svg{color:#1d1d1f;color:var(--text-color);font-size:1.5rem;transition:color .2s cubic-bezier(.25,.46,.45,.94);transition:color var(--transition-fast)}.edit-album-modal .category-item .category-label{color:#1d1d1f;color:var(--text-color);font-size:.85rem;text-align:center}.edit-album-modal .action-buttons{border-top:.0625rem solid #d2d2d7;border-top:.0625rem solid var(--border-color);display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1rem}.confirmation-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1100}.confirmation-modal{background-color:#fff;background-color:var(--white);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .25rem 1.25rem #00000026;max-width:25rem;padding:1.5rem;width:90%}.confirmation-modal h3{font-size:1.2rem;font-weight:600;margin-bottom:1rem}.confirmation-modal p{color:#1d1d1f;color:var(--text-color);margin-bottom:1.5rem}.confirmation-modal .confirmation-buttons{display:flex;gap:.5rem;justify-content:flex-end}@media(max-width:48rem){.edit-album-modal .category-item{width:50%}.edit-album-modal .action-buttons{flex-direction:column;gap:1rem}.edit-album-modal .action-buttons .right-buttons{justify-content:flex-end}}.sub-album-grid-container .sub-album-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-md)}.sub-album-grid-container .sub-album-section-title{color:var(--text-color);font-size:1.25rem;font-weight:600;margin:0}.sub-album-grid-container .sub-album-grid{grid-gap:var(--spacing-xl);display:grid;gap:var(--spacing-xl);grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr));margin-top:var(--spacing-md)}.sub-album-grid-container .sub-album-card{background-color:var(--card-background);border-radius:var(--border-radius-lg);box-shadow:0 .125rem .5rem var(--shadow-light);cursor:pointer;overflow:hidden;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.sub-album-grid-container .sub-album-card:hover{box-shadow:0 .5rem 1rem var(--shadow-medium);transform:translateY(-.25rem)}.sub-album-grid-container .sub-album-card:focus{box-shadow:0 0 0 .125rem var(--primary-color);outline:none}.sub-album-grid-container .sub-album-card.skeleton{pointer-events:none}.sub-album-grid-container .sub-album-thumbnail{align-items:center;background-color:var(--gray-200);background-position:50%;background-size:cover;display:flex;height:9.375rem;justify-content:center}.sub-album-grid-container .sub-album-thumbnail .folder-icon{color:var(--primary-color);font-size:3rem;opacity:.7}.sub-album-grid-container .sub-album-thumbnail.skeleton-image{animation:pulse 1.5s infinite}.sub-album-grid-container .sub-album-details{padding:var(--spacing-md)}.sub-album-grid-container .sub-album-title{color:var(--text-color);font-size:1rem;font-weight:600;margin:0 0 var(--spacing-sm) 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sub-album-grid-container .sub-album-title.skeleton-text{animation:pulse 1.5s infinite;background-color:var(--gray-200);border-radius:var(--border-radius-sm);height:1rem;width:80%}.sub-album-grid-container .sub-album-count{color:var(--text-secondary);font-size:.85rem;margin:0}.sub-album-grid-container .sub-album-count.skeleton-text{animation:pulse 1.5s infinite;background-color:var(--gray-200);border-radius:var(--border-radius-sm);height:.85rem;margin-top:var(--spacing-sm);width:50%}.sub-album-grid-container .sub-album-empty-state{align-items:center;background-color:var(--gray-100);border-radius:var(--border-radius-lg);display:flex;flex-direction:column;justify-content:center;padding:var(--spacing-3xl) var(--spacing-md);text-align:center}.sub-album-grid-container .sub-album-empty-state .empty-icon{color:var(--primary-color);margin-bottom:var(--spacing-md);opacity:.7}.sub-album-grid-container .sub-album-empty-state p{color:var(--text-secondary);font-size:1rem;margin-bottom:var(--spacing-xl)}.create-sub-album-form{display:flex;flex-direction:column;gap:var(--spacing-xl)}.create-sub-album-form .form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.create-sub-album-form .form-group label{color:var(--text-color);font-size:.9rem;font-weight:500}.create-sub-album-form .form-group .text-area,.create-sub-album-form .form-group .text-input{background-color:var(--card-background);border:.0625rem solid var(--border-color);border-radius:var(--border-radius-md);color:var(--text-color);font-size:1rem;padding:var(--spacing-md);transition:border-color var(--transition-fast);width:100%}.create-sub-album-form .form-group .text-area:focus,.create-sub-album-form .form-group .text-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 .125rem rgba(var(--primary-color-rgb),.2);outline:none}.create-sub-album-form .form-group .text-area::placeholder,.create-sub-album-form .form-group .text-input::placeholder{color:var(--text-secondary)}.create-sub-album-form .form-group .text-area[aria-invalid=true],.create-sub-album-form .form-group .text-input[aria-invalid=true]{border-color:var(--danger-color)}.create-sub-album-form .error-message{animation:fadeIn var(--transition-fast);background-color:var(--danger-color);border-radius:var(--border-radius-md);color:var(--white);font-size:.9rem;margin-bottom:var(--spacing-sm);padding:var(--spacing-md)}.create-sub-album-form .modal-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-md)}.highlights-page{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f5f7;background:var(--background-color);font-family:-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh;overflow-x:hidden;position:relative;scroll-behavior:smooth;width:100%}.highlights-page .page-header{align-items:center;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#fffffff2;border-bottom:1px solid var(--border-light);box-shadow:0 2px 20px #0000000d;display:flex;justify-content:space-between;padding:16px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.highlights-page .page-header .header-left{align-items:center;display:flex;gap:20px}.highlights-page .page-header .header-left .back-button{-webkit-tap-highlight-color:rgba(0,0,0,0);align-items:center;background:#ffd7001a;border:1px solid var(--border-light);border-radius:20px;color:var(--deep-gold);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .3s cubic-bezier(.25,.46,.45,.94)}.highlights-page .page-header .header-left .back-button:hover{background:#ffd70033;box-shadow:0 4px 12px var(--shadow-gold);transform:translateY(-1px)}.highlights-page .page-header .header-center h2{color:var(--charcoal);font-family:Crimson Text,serif;font-size:24px;font-weight:600;margin:0}.highlights-page .page-header .header-right .edit-indicator{align-items:center;background:#007aff1a;border:1px solid #007aff33;border-radius:16px;color:var(--edit-blue);display:flex;font-size:14px;font-weight:500;gap:6px;padding:6px 12px}.highlights-page .mode-selector{background:#fff;border:1px solid var(--border-light);border-radius:24px;box-shadow:0 4px 12px #0000001a;display:flex;overflow:hidden}.highlights-page .mode-selector .mode-btn{-webkit-tap-highlight-color:rgba(0,0,0,0);align-items:center;background:none;border:none;border-right:1px solid var(--border-light);color:var(--charcoal);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:12px 20px;transition:all .3s cubic-bezier(.25,.46,.45,.94)}.highlights-page .mode-selector .mode-btn:last-child{border-right:none}.highlights-page .mode-selector .mode-btn:hover:not(.disabled){background:var(--edit-overlay);color:var(--edit-blue)}.highlights-page .mode-selector .mode-btn.active{background:var(--edit-blue);box-shadow:inset 0 2px 4px #0000001a;color:#fff}.highlights-page .mode-selector .mode-btn.disabled{cursor:not-allowed;opacity:.5}.photo-grid{grid-gap:1rem;grid-gap:var(--spacing-md);display:grid;gap:1rem;gap:var(--spacing-md);margin:0 1rem;margin:0 var(--spacing-md);width:100%}.photo-grid.grid-size-small{grid-template-columns:repeat(auto-fill,minmax(7.5rem,1fr))}.photo-grid.grid-size-small .photo-container{aspect-ratio:1}.photo-grid.grid-size-medium{grid-template-columns:repeat(auto-fill,minmax(11.25rem,1fr))}.photo-grid.grid-size-medium .photo-container{aspect-ratio:1}.photo-grid.grid-size-large{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr))}.photo-grid.grid-size-large .photo-container{aspect-ratio:1}@media(max-width:48rem){.photo-grid.grid-size-small{grid-template-columns:repeat(auto-fill,minmax(6.25rem,1fr))}.photo-grid.grid-size-medium{grid-template-columns:repeat(auto-fill,minmax(8.75rem,1fr))}.photo-grid.grid-size-large{grid-template-columns:repeat(auto-fill,minmax(11.25rem,1fr))}}.photo-grid .upload-placeholder{-webkit-tap-highlight-color:rgba(0,0,0,0);align-items:center;aspect-ratio:4/3;background:#ffd70005;background:#ffd7000d;border:2px dashed var(--border-light);border-color:var(--primary-gold);border-radius:20px;box-shadow:0 8px 25px #ffd7001a;color:var(--deep-gold);cursor:pointer;display:flex;flex-direction:column;font-size:1rem;gap:1rem;gap:var(--spacing-md);justify-content:center;transform:translateY(-4px);transition:all .3s ease}.photo-grid .upload-placeholder svg{font-size:2.5rem}.photo-grid .upload-placeholder span{font-weight:500}.photo-grid .photo-item.upload-item{background:#0071e30d;background:rgba(var(--primary-color-rgb),.05);border:2px dashed var(--border-light);transition:all .3s ease}.photo-grid .photo-item.upload-item .upload-container{align-items:center;aspect-ratio:1;color:#0071e3;color:var(--primary-color);display:flex;flex-direction:column;height:100%;justify-content:center;padding:1rem;padding:var(--spacing-md);width:100%}.photo-grid .photo-item.upload-item .upload-container .upload-icon{margin-bottom:.5rem;margin-bottom:var(--spacing-sm);opacity:.8}.photo-grid .photo-item.upload-item .upload-container .upload-text{font-size:.9rem;font-weight:500;margin:0;text-align:center}.photo-grid .photo-item.upload-item.hovered,.photo-grid .photo-item.upload-item:hover{background:#0071e31a;background:rgba(var(--primary-color-rgb),.1);border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 8px 20px #0071e326;box-shadow:0 8px 20px rgba(var(--primary-color-rgb),.15);transform:translateY(-4px)}.photo-grid .photo-item{border-radius:8px;border-radius:var(--border-radius-md);cursor:pointer;overflow:hidden;position:relative;transition:transform .2s cubic-bezier(.25,.46,.45,.94),box-shadow .2s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.photo-grid .photo-item.document .photo-container:before,.photo-grid .photo-item.video .photo-container:before{background:linear-gradient(180deg,#0003,#0000);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}.photo-grid .photo-item.hovered,.photo-grid .photo-item:hover{box-shadow:0 0 1rem #00000014;box-shadow:0 0 var(--spacing-md) var(--shadow-medium);transform:scale(1.02);transition:transform .2s cubic-bezier(.25,.46,.45,.94),box-shadow .2s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-fast),box-shadow var(--transition-fast);z-index:1}.photo-grid .photo-item:active{transform:scale(.98);transition:transform .1s ease}.photo-grid .photo-item.selectable.selected .photo-container:after{background-color:#0071e34d;background-color:rgba(var(--primary-color-rgb),.3);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.photo-grid .photo-item.selectable.selected .selection-indicator{background-color:#0071e3;background-color:var(--primary-color);border-color:#fff;border-color:var(--white-color)}.photo-grid .photo-item.skeleton .photo-skeleton-container{animation:shimmer 1.5s infinite;aspect-ratio:1;background:linear-gradient(90deg,#e8e8ed,#d2d2d7 50%,#e8e8ed);background:linear-gradient(90deg,var(--gray-200) 0,var(--gray-300) 50%,var(--gray-200) 100%);background-size:200% 100%;border-radius:8px;border-radius:var(--border-radius-md);height:100%;width:100%}.photo-grid .photo-container{border-radius:8px;border-radius:var(--border-radius-md);height:100%;overflow:hidden;position:relative;width:100%}.photo-grid .photo-container img{height:100%;object-fit:cover;transition:transform .3s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-normal);width:100%}.photo-grid .photo-container .selection-indicator{background-color:#ffffffb3;border:.125rem solid #0071e3;border:.125rem solid var(--primary-color);border-radius:50%;font-size:.75rem;height:1.5rem;top:.5rem;top:var(--spacing-sm);width:1.5rem}.photo-grid .photo-container .favorite-toggle,.photo-grid .photo-container .selection-indicator{align-items:center;color:#fff;color:var(--white-color);display:flex;justify-content:center;position:absolute;right:.5rem;right:var(--spacing-sm);transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);z-index:2}.photo-grid .photo-container .favorite-toggle{background-color:#00000080;border:none;border-radius:50%;bottom:.5rem;bottom:var(--spacing-sm);font-size:.875rem;height:2rem;opacity:0;width:2rem}.photo-grid .photo-container .favorite-toggle.favorited{background-color:#ff3b30b3;background-color:rgba(var(--danger-color-rgb),.7)}.photo-item.hovered .photo-grid .photo-container .favorite-toggle,.photo-item:hover .photo-grid .photo-container .favorite-toggle{opacity:1}.photo-grid .photo-container .media-type-indicator{align-items:center;background-color:#0009;border-radius:50%;color:#fff;color:var(--white-color);display:flex;font-size:.875rem;height:1.75rem;justify-content:center;left:.5rem;left:var(--spacing-sm);position:absolute;top:.5rem;top:var(--spacing-sm);width:1.75rem;z-index:2}.photo-grid .photo-container .media-type-indicator.document,.photo-grid .photo-container .media-type-indicator.video{background-color:#0009}.photo-grid .photo-container .favorite-indicator{background-color:#ff3b30b3;background-color:rgba(var(--danger-color-rgb),.7);bottom:.5rem;bottom:var(--spacing-sm)}.photo-grid .photo-container .favorite-indicator,.photo-grid .photo-container .highlighted-indicator{align-items:center;border-radius:50%;color:#fff;color:var(--white-color);display:flex;font-size:.875rem;height:1.75rem;justify-content:center;position:absolute;right:.5rem;right:var(--spacing-sm);width:1.75rem;z-index:2}.photo-grid .photo-container .highlighted-indicator{background-color:#ffd700b3;top:.5rem;top:var(--spacing-sm)}.photo-grid .photo-container .photo-info-overlay{background:linear-gradient(0deg,#000000b3,#0000);bottom:0;color:#fff;color:var(--white-color);left:0;opacity:0;padding:1rem .5rem .5rem;padding:var(--spacing-md) var(--spacing-sm) var(--spacing-sm);position:absolute;right:0;transform:translateY(.625rem);transition:all .3s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-normal)}.photo-grid .photo-container .photo-info-overlay .photo-title{font-size:.875rem;font-weight:500;margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.photo-grid .photo-container .photo-info-overlay .photo-date{font-size:.75rem;margin:0;opacity:.8}.photo-item.hovered .photo-grid .photo-container .photo-info-overlay,.photo-item:hover .photo-grid .photo-container .photo-info-overlay{opacity:1;transform:translateY(0)}.photo-grid-empty{align-items:center;background-color:#f5f5f7;background-color:var(--light-bg-color);border-radius:8px;border-radius:var(--border-radius-md);color:#86868b;color:var(--text-secondary);display:flex;font-size:1rem;height:12.5rem;justify-content:center;margin:1rem 0;margin:var(--spacing-md) 0;width:100%}.sr-only{height:1px;margin:-1px;width:1px}.media-viewer-modal-wrapper{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.media-viewer-modal-wrapper .media-viewer-overlay{backdrop-filter:blur(.5rem);-webkit-backdrop-filter:blur(.5rem);background-color:#00000080;background-color:var(--overlay-background-dark);bottom:0;left:0;position:absolute;right:0;top:0;z-index:0}.quality-selector-container{align-items:center;display:flex;gap:.5rem}.quality-selector-container .quality-button{opacity:.7;transition:all .2s ease}.quality-selector-container .quality-button.selected{color:#0071e3;color:var(--primary-color,#007aff);opacity:1;transform:scale(1.1)}.quality-selector-container .quality-button:hover{opacity:1}.media-viewer-modal{align-items:center;display:flex;height:90vh;justify-content:center;max-height:90vh;max-width:80%;position:relative;width:100%;z-index:1000}.media-viewer-modal.fullscreen{background-color:#000;bottom:0;height:100vh;left:0;max-height:none;max-width:none;position:fixed;right:0;top:0;width:100vw}.media-viewer-modal.fullscreen .media-viewer-content{border-radius:0;height:100%;max-height:none;max-width:none;width:100%}.media-viewer-modal.hide-controls .bottom-controls,.media-viewer-modal.hide-controls .top-controls{opacity:0;pointer-events:none}.media-viewer-modal .media-viewer-content{background-color:#100f0ffa;border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 1rem 2rem #00000014;box-shadow:0 1rem 2rem var(--shadow-medium);display:flex;flex-direction:column;height:90%;max-height:100%;max-width:100%;overflow:hidden;position:relative;width:100%;z-index:2}@media(max-width:768px){.media-viewer-modal .media-viewer-content{border-radius:0;height:100%;max-height:none;max-width:none;width:100%}}.media-viewer-modal .media-content{align-items:center;display:flex;flex:1 1;justify-content:center;overflow:hidden;position:relative}.media-viewer-modal .image-container{align-items:center;display:flex;height:100%;justify-content:center;transition:transform .3s ease;width:100%}.media-viewer-modal .image-container.zoomed{cursor:zoom-out}.media-viewer-modal .image-container img{-webkit-user-drag:none;max-height:100%;max-width:100%;object-fit:contain;-webkit-user-select:none;user-select:none}.media-viewer-modal .video-container{align-items:center;background-color:#000;display:flex;height:100%;justify-content:center;width:100%}.media-viewer-modal .video-container video{max-height:100%;max-width:100%}.media-viewer-modal .video-container .video-controls{bottom:20px;left:50%;position:absolute;transform:translateX(-50%);z-index:10}.media-viewer-modal .video-container .video-controls .play-pause-button{background-color:#0009;border:none;border-radius:50px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px;transition:all .2s ease}.media-viewer-modal .video-container .video-controls .play-pause-button:hover{background-color:#000c}.media-viewer-modal .document-container{justify-content:center;overflow:auto;padding:20px;transition:transform .3s ease}.media-viewer-modal .document-container,.media-viewer-modal .document-container .react-pdf__Document{align-items:center;display:flex;flex-direction:column;height:100%;width:100%}.media-viewer-modal .document-container .react-pdf__Page{background-color:#fff;box-shadow:0 2px 10px #0003;margin-bottom:20px}.media-viewer-modal .document-container .document-pagination{align-items:center;background-color:#0009;border-radius:50px;display:flex;justify-content:center;margin-top:20px;padding:10px}.media-viewer-modal .document-container .document-pagination button{background:none;border:none;color:#fff;cursor:pointer;font-size:16px;padding:5px 10px}.media-viewer-modal .document-container .document-pagination button:disabled{cursor:not-allowed;opacity:.5}.media-viewer-modal .document-container .document-pagination span{color:#fff;font-size:14px;margin:0 10px}.media-viewer-modal .loading-container{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.media-viewer-modal .loading-container .spinner{animation:spin 1s linear infinite;color:#0071e3;color:var(--primary-color);font-size:2rem}.media-viewer-modal .upload-progress-container{background-color:#000000b3;border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 5px 15px #0000004d;left:50%;max-width:400px;padding:20px;position:absolute;top:50%;transform:translate(-50%,-50%);width:80%}.media-viewer-modal .upload-progress-container .upload-progress-bar{background-color:#fff3;border-radius:3px;height:6px;margin-bottom:10px;overflow:hidden;width:100%}.media-viewer-modal .upload-progress-container .upload-progress-bar .upload-progress-fill{background-color:#0071e3;background-color:var(--primary-color);border-radius:3px;height:100%;transition:width .3s ease}.media-viewer-modal .upload-progress-container .upload-progress-text{color:#fff;font-size:14px;text-align:center}.media-viewer-modal .upload-error{background-color:#ff3b30e6;background-color:rgba(var(--danger-color-rgb),.9);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 5px 15px #0000004d;left:50%;max-width:400px;padding:20px;position:absolute;top:50%;transform:translate(-50%,-50%);width:80%}.media-viewer-modal .upload-error p{color:#fff;margin:0;text-align:center}.media-viewer-modal .bottom-controls,.media-viewer-modal .top-controls{align-items:center;display:flex;left:0;padding:1.5rem;position:absolute;right:0;transition:opacity .3s cubic-bezier(.25,.46,.45,.94);transition:opacity var(--transition-normal);z-index:10}.media-viewer-modal .top-controls{background:linear-gradient(180deg,#000000b3,#0000);justify-content:space-between;top:0}.media-viewer-modal .top-controls .close-button{align-items:center;background:none;border:none;border-radius:50%;color:#fff;color:var(--white);cursor:pointer;display:flex;font-size:1.5rem;height:2.5rem;justify-content:center;transition:background-color .2s cubic-bezier(.25,.46,.45,.94);transition:background-color var(--transition-fast);width:2.5rem}.media-viewer-modal .top-controls .close-button:hover{background-color:#fff3}.media-viewer-modal .top-controls .media-info{flex:1 1;margin:0 20px}.media-viewer-modal .top-controls .media-info h3{color:#fff;font-size:16px;font-weight:500;margin:0;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.media-viewer-modal .top-controls .right-controls .action-button{background:none;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 12px;transition:background-color .2s ease}.media-viewer-modal .top-controls .right-controls .action-button:hover{background-color:#fff3}.media-viewer-modal .bottom-controls{background:linear-gradient(0deg,#000000b3,#0000);bottom:0;justify-content:space-between}.media-viewer-modal .bottom-controls .left-controls,.media-viewer-modal .bottom-controls .right-controls{width:80px}.media-viewer-modal .bottom-controls .center-controls{align-items:center;display:flex;gap:15px;justify-content:center}.media-viewer-modal .bottom-controls .nav-button{align-items:center;background:#00000080;border:none;border-radius:50%;color:#fff;color:var(--white);cursor:pointer;display:flex;font-size:1.25rem;height:2.5rem;justify-content:center;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:2.5rem}.media-viewer-modal .bottom-controls .nav-button:hover{background-color:#fff3}.media-viewer-modal .bottom-controls .nav-button:disabled{cursor:not-allowed;opacity:.5}.media-viewer-modal .bottom-controls .action-button{align-items:center;background:#00000080;border:none;color:#fff;color:var(--white);cursor:pointer;display:flex;font-size:1.125rem;justify-content:center;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}.media-viewer-modal .bottom-controls .action-button:hover{background-color:#fff3}.media-viewer-modal .bottom-controls .action-button:disabled{cursor:not-allowed;opacity:.5}.media-viewer-modal .bottom-controls .action-button.favorite-button.active{background-color:#fff3;color:#ff3b30;color:var(--danger-color)}.media-viewer-modal .bottom-controls .action-button.delete-button:hover{background-color:#ff3b30b3;background-color:rgba(var(--danger-color-rgb),.7)}@media(max-width:768px){.media-viewer-modal .bottom-controls,.media-viewer-modal .top-controls{padding:1rem}.media-viewer-modal .top-controls .media-info h3{font-size:.875rem}.media-viewer-modal .bottom-controls .left-controls,.media-viewer-modal .bottom-controls .right-controls{width:3.125rem}.media-viewer-modal .bottom-controls .center-controls{gap:.5rem}.media-viewer-modal .bottom-controls .action-button,.media-viewer-modal .bottom-controls .nav-button{font-size:1rem;height:2.25rem;width:2.25rem}}.loading-container{height:100%;min-height:200px}.loading-container .spinner{animation:spin 1s linear infinite;color:#007aff;font-size:24px}.image-container{align-items:center;display:flex;height:100%;justify-content:center;transition:transform .3s ease;width:100%}.image-container img{max-height:100%;max-width:100%;object-fit:contain}.image-container.zoomed{cursor:zoom-out}.video-container{cursor:pointer;display:flex;flex-direction:column;height:100%;position:relative;width:100%}.video-container video{max-height:100%;max-width:100%;object-fit:contain}.video-container .video-play-overlay{align-items:center;background-color:#0000001a;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:10}.video-container .video-play-overlay .play-pause-button{align-items:center;background:#0009;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:80px;justify-content:center;transition:all .2s ease;width:80px}.video-container .video-play-overlay .play-pause-button:hover{background-color:#000c;transform:scale(1.1)}.video-container .video-play-overlay .play-pause-button:active{transform:scale(.95)}.video-container .video-custom-controls{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#0009;border-radius:8px;bottom:20px;display:flex;left:0;margin:0 20px;padding:12px 20px;position:absolute;right:0;transition:opacity .3s ease;z-index:20}.video-container .video-custom-controls.video-player-controls{bottom:80px;z-index:15}.video-container .video-custom-controls.fade{opacity:.7}.video-container .video-custom-controls.fade:hover{opacity:1}.video-container .video-custom-controls .controls-container{align-items:center;display:flex;gap:15px;width:100%}.video-container .video-custom-controls .control-button{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;height:36px;justify-content:center;transition:all .2s ease;width:36px}.video-container .video-custom-controls .control-button:hover{background-color:#fff3}.video-container .video-custom-controls .control-button:active{transform:scale(.95)}.video-container .video-custom-controls .video-progress{display:flex;flex:1 1;flex-direction:column;gap:4px;margin:0 15px}.video-container .video-custom-controls .video-progress .progress-bar-container{background-color:#fff3;border-radius:4px;cursor:pointer;height:8px;position:relative;width:100%}.video-container .video-custom-controls .video-progress .progress-bar-container:hover .progress-bar-handle{opacity:1;transform:scale(1.2)}.video-container .video-custom-controls .video-progress .progress-bar-fill{background-color:#007aff;border-radius:4px;height:100%;left:0;position:absolute;top:0;transition:width .1s linear}.video-container .video-custom-controls .video-progress .progress-bar-handle{background-color:#fff;border-radius:50%;box-shadow:0 0 5px #00000080;height:14px;margin-left:-7px;opacity:.8;position:absolute;top:50%;transform:translateY(-50%);transition:transform .2s ease,opacity .2s ease;width:14px}.video-container .video-custom-controls .video-progress .time-display{color:#fff;display:flex;font-size:12px;justify-content:space-between;opacity:.8}.document-container{align-items:center;display:flex;flex-direction:column;height:100%;position:relative;width:100%}.document-container iframe{border:none}.document-container .document-pagination{align-items:center;display:flex;justify-content:center;margin-top:15px}.document-container .document-pagination button{align-items:center;background:none;border:none;color:#007aff;cursor:pointer;display:flex;font-size:18px;justify-content:center;padding:5px 10px}.document-container .document-pagination button:disabled{color:#999;cursor:not-allowed}.document-container .document-pagination button:not(:disabled):hover{background-color:#007aff1a}.document-container .document-pagination span{font-size:14px;margin:0 15px}:root{--react-pdf-text-layer:1;--highlight-bg-color:#b400aa;--highlight-selected-bg-color:#006400}@media screen and (forced-colors:active){:root{--highlight-bg-color:Highlight;--highlight-selected-bg-color:ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translateX(-100%)}.textLayer{-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;inset:0;line-height:1;overflow:hidden;position:absolute;text-align:left;text-align:initial;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:#0000;cursor:text;margin:0;position:absolute;transform-origin:0 0;white-space:pre}.textLayer span.markedContent{height:0;top:0}.textLayer .highlight{background-color:#b400aa;background-color:var(--highlight-bg-color);border-radius:4px;margin:-1px;padding:1px}.textLayer .highlight.appended{position:static}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:#006400;background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:#0000}.textLayer .endOfContent{cursor:default;display:block;inset:100% 0 0;position:absolute;-webkit-user-select:none;user-select:none;z-index:-1}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{display:none;height:0;left:0;position:absolute;top:0;width:0}:root{--react-pdf-annotation-layer:1;--annotation-unfocused-field-background:url('data:image/svg+xml;charset=utf-8,<svg width="1" height="1" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" style="fill:rgba(0,54,255,.13)"/></svg>');--input-focus-border-color:Highlight;--input-focus-outline:1px solid Canvas;--input-unfocused-border-color:#0000;--input-disabled-border-color:#0000;--input-hover-border-color:#000;--link-outline:none}@media screen and (forced-colors:active){:root{--input-focus-border-color:CanvasText;--input-unfocused-border-color:ActiveText;--input-disabled-border-color:GrayText;--input-hover-border-color:Highlight;--link-outline:1.5px solid LinkText}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .textWidgetAnnotation :is(input,textarea):required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{left:0;pointer-events:none;position:absolute;top:0;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translateX(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{height:100%;position:absolute;width:100%}.annotationLayer section{box-sizing:border-box;margin:0;pointer-events:auto;position:absolute;text-align:left;text-align:initial;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:none;outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{font-size:1em;height:100%;left:0;position:absolute;top:0;width:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{background:#ff0;box-shadow:0 2px 10px #ff0;opacity:.2}.annotationLayer .textAnnotation img{cursor:pointer;height:100%;left:0;position:absolute;top:0;width:100%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input,.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .textWidgetAnnotation :is(input,textarea){background-image:url('data:image/svg+xml;charset=utf-8,<svg width="1" height="1" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" style="fill:rgba(0,54,255,.13)"/></svg>');background-image:var(--annotation-unfocused-field-background);border:2px solid #0000;border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px*var(--scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .textWidgetAnnotation :is(input,textarea):required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled]{background:none;border:2px solid #0000;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .textWidgetAnnotation :is(input,textarea):hover{border:2px solid #000;border:2px solid var(--input-hover-border-color)}.annotationLayer .buttonWidgetAnnotation.checkBox input:hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .textWidgetAnnotation :is(input,textarea):hover{border-radius:2px}.annotationLayer .choiceWidgetAnnotation select:focus,.annotationLayer .textWidgetAnnotation :is(input,textarea):focus{background:none;border:2px solid Highlight;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:1px solid Canvas;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-color:initial;background-image:none}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid Highlight;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:1px solid Canvas;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid Highlight;border:2px solid var(--input-focus-border-color);outline:1px solid Canvas;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{-webkit-appearance:none;appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{font-size:calc(9px*var(--scale-factor));min-width:calc(180px*var(--scale-factor));pointer-events:none;position:absolute;width:100%}.annotationLayer .popup{word-wrap:break-word;background-color:#ff9;border-radius:calc(2px*var(--scale-factor));box-shadow:0 calc(2px*var(--scale-factor)) calc(5px*var(--scale-factor)) #888;cursor:pointer;font:message-box;margin-left:calc(5px*var(--scale-factor));max-width:calc(180px*var(--scale-factor));padding:calc(6px*var(--scale-factor));pointer-events:auto;position:absolute;white-space:normal}.annotationLayer .popup>*{font-size:calc(9px*var(--scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px*var(--scale-factor))}.annotationLayer .popupContent{border-top:1px solid #333;margin-top:calc(2px*var(--scale-factor));padding-top:calc(2px*var(--scale-factor))}.annotationLayer .richText>*{font-size:calc(9px*var(--scale-factor));white-space:pre-wrap}.annotationLayer .caretAnnotation,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .fileAttachmentAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .highlightAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .lineAnnotation svg line,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .squareAnnotation svg rect,.annotationLayer .squigglyAnnotation,.annotationLayer .stampAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .underlineAnnotation{cursor:pointer}.annotationLayer section svg{height:100%;left:0;position:absolute;top:0;width:100%}.annotationLayer .annotationTextContent{color:#0000;height:100%;opacity:0;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;width:100%}.annotationLayer .annotationTextContent span{display:inline-block;width:100%}.file-upload-modal .modal-content{padding:0}.file-upload-modal .modal-footer-buttons{display:flex;flex-wrap:wrap;gap:.5rem;gap:var(--spacing-sm);justify-content:flex-end}.file-upload-modal .modal-footer-buttons .upload-button{margin-left:auto}.file-upload-container{display:flex;flex-direction:column;gap:1.25rem;gap:var(--spacing-lg);padding:1.5rem;padding:var(--spacing-xl)}.file-upload-container .drop-zone{background-color:var(--background-light);border:.125rem dashed #d2d2d7;border:.125rem dashed var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);cursor:pointer;padding:2.5rem 1.5rem;padding:var(--spacing-3xl) var(--spacing-xl);text-align:center;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}.file-upload-container .drop-zone.active,.file-upload-container .drop-zone:hover{background-color:#e8e8ed;background-color:var(--hover-color);border-color:#0071e3;border-color:var(--primary-color)}.file-upload-container .drop-zone.active{box-shadow:0 0 0 .125rem #42a1ff;box-shadow:0 0 0 .125rem var(--primary-color-light)}.file-upload-container .drop-zone .drop-zone-content{align-items:center;display:flex;flex-direction:column;gap:.5rem;gap:var(--spacing-sm)}.file-upload-container .drop-zone .drop-zone-content .upload-icon{color:#0071e3;color:var(--primary-color);font-size:3rem;margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.file-upload-container .drop-zone .drop-zone-content h3{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;font-weight:600;margin:0}.file-upload-container .drop-zone .drop-zone-content p{color:#86868b;color:var(--text-secondary);font-size:.875rem;margin:0}.file-upload-container .drop-zone .drop-zone-content .file-types,.file-upload-container .drop-zone .drop-zone-content .max-size{font-size:.75rem;margin-top:.5rem;margin-top:var(--spacing-sm);opacity:.7}.file-upload-container .drop-zone .file-input{display:none}.file-upload-container .error-message{align-items:center;background-color:#ff3b301a;background-color:rgba(var(--danger-color-rgb),.1);border-radius:8px;border-radius:var(--border-radius-md);color:#ff3b30;color:var(--error-color);display:flex;font-size:.875rem;padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md)}.file-upload-container .error-message:before{content:"⚠️";margin-right:.5rem;margin-right:var(--spacing-sm)}.file-upload-container .file-list{border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);overflow:hidden;overflow-y:auto}.file-upload-container .file-list .file-list-header{align-items:center;background-color:var(--background-light);border-bottom:.0625rem solid #d2d2d7;border-bottom:.0625rem solid var(--border-color);display:flex;justify-content:space-between;padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);position:-webkit-sticky;position:sticky;top:0;z-index:1}.file-upload-container .file-list .file-list-header h4{font-size:.875rem;font-weight:600;margin:0}.file-upload-container .file-list .file-list-header .clear-all-button{color:#0071e3;color:var(--primary-color);font-size:.75rem}.file-upload-container .file-list .file-item{align-items:center;border-bottom:.0625rem solid #d2d2d7;border-bottom:.0625rem solid var(--border-color);display:flex;padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);transition:background-color .2s cubic-bezier(.25,.46,.45,.94);transition:background-color var(--transition-fast)}.file-upload-container .file-list .file-item:last-child{border-bottom:none}.file-upload-container .file-list .file-item:hover{background-color:#e8e8ed;background-color:var(--hover-color)}.file-upload-container .file-list .file-item.success{background-color:var(--success-light)}.file-upload-container .file-list .file-item.error{background-color:var(--error-light)}.file-upload-container .file-list .file-item .file-icon{align-items:center;background-color:var(--background-light);border-radius:8px;border-radius:var(--border-radius-md);color:#86868b;color:var(--text-secondary);display:flex;height:2.5rem;justify-content:center;margin-right:1rem;margin-right:var(--spacing-md);width:2.5rem}.file-upload-container .file-list .file-item .file-icon svg{font-size:1.25rem}.file-upload-container .file-list .file-item .file-info{flex:1 1;min-width:0}.file-upload-container .file-list .file-item .file-info .file-name-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.file-upload-container .file-list .file-item .file-info .file-name-row .file-name{color:#1d1d1f;color:var(--text-color);font-weight:500;max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-upload-container .file-list .file-item .file-info .file-name-row .file-size{color:#86868b;color:var(--text-secondary);font-size:.75rem}.file-upload-container .file-list .file-item .file-info .file-progress-container{background-color:var(--background-light);border-radius:.125rem;height:.25rem;overflow:hidden}.file-upload-container .file-list .file-item .file-info .file-progress-container .file-progress-bar{background-color:#0071e3;background-color:var(--primary-color);height:100%;transition:width .3s ease-out}.file-upload-container .file-list .file-item .file-info .file-progress-container .file-progress-bar.success{background-color:#34c759;background-color:var(--success-color)}.file-upload-container .file-list .file-item .file-info .file-progress-container .file-progress-bar.error{background-color:#ff3b30;background-color:var(--error-color)}.file-upload-container .file-list .file-item .file-info .file-error{color:#ff3b30;color:var(--error-color);font-size:.75rem;margin-top:.5rem;margin-top:var(--spacing-sm)}.file-upload-container .file-list .file-item .file-info .file-message{color:#ff9500;color:var(--warning-color);font-size:.75rem;margin-top:.5rem;margin-top:var(--spacing-sm)}.file-upload-container .file-list .file-item .file-remove-button{align-items:center;border-radius:50%;color:#86868b;color:var(--text-secondary);display:flex;height:1.75rem;justify-content:center;margin-left:.5rem;margin-left:var(--spacing-sm);min-width:auto;padding:0;width:1.75rem}.file-upload-container .file-list .file-item .file-remove-button:hover{color:#ff3b30;color:var(--error-color)}.file-upload-container .file-list .file-item .file-remove-button svg{font-size:.875rem}.file-upload-container .overall-progress{margin-top:.5rem;margin-top:var(--spacing-sm)}.file-upload-container .overall-progress .progress-text{color:#86868b;color:var(--text-secondary);display:flex;font-size:.875rem;justify-content:space-between;margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.file-upload-container .overall-progress .progress-container{background-color:var(--background-light);border-radius:6px;border-radius:var(--border-radius-sm);height:.375rem;overflow:hidden}.file-upload-container .overall-progress .progress-container .progress-bar{background-color:#0071e3;background-color:var(--primary-color);height:100%;transition:width .3s cubic-bezier(.25,.46,.45,.94);transition:width var(--transition-normal)}@media(max-width:48rem){.file-upload-modal .modal-footer-buttons{flex-direction:column-reverse}.file-upload-modal .modal-footer-buttons .cancel-button,.file-upload-modal .modal-footer-buttons .clear-button,.file-upload-modal .modal-footer-buttons .upload-button{margin-left:0;width:100%}.file-upload-container{padding:1rem;padding:var(--spacing-md)}.file-upload-container .drop-zone{padding:1.5rem 1rem;padding:var(--spacing-xl) var(--spacing-md)}.file-upload-container .drop-zone .drop-zone-content .upload-icon{font-size:2.5rem}.file-upload-container .drop-zone .drop-zone-content h3{font-size:1.125rem}.file-upload-container .file-list .file-item .file-icon{height:2rem;margin-right:.5rem;margin-right:var(--spacing-sm);width:2rem}.file-upload-container .file-list .file-item .file-icon svg{font-size:1rem}.file-upload-container .file-list .file-item .file-info .file-name-row .file-name{max-width:60%}}@media(max-width:30rem){.file-upload-container .file-list .file-item .file-info .file-name-row .file-name{max-width:50%}}.media-selection-manager{align-items:center;background-color:var(--card-background);bottom:0;box-shadow:0 -.125rem .625rem #0000001a;display:flex;justify-content:space-between;left:15rem;left:var(--sidebar-width,15rem);padding:1rem 1.5rem;position:fixed;right:0;z-index:90}.media-selection-manager span{color:var(--text-color);font-size:1rem;font-weight:500}.media-selection-manager .action-buttons{display:flex;gap:.75rem}@media(max-width:48rem){.media-selection-manager{left:0;padding:.75rem 1rem}}.no-permissions-message{background-color:#f8f9fa;border:.0625rem solid #e9ecef;border-radius:.375rem;margin:0 2%;padding:.75rem 1rem;text-align:right}.no-permissions-message p{color:#6c757d;font-size:.875rem;line-height:1.5;margin:0}.download-progress-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.download-progress-modal{animation:modal-appear .3s ease-out;background-color:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;max-height:90vh;max-width:500px;overflow:hidden;width:90%}.download-progress-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:16px 20px}.download-progress-header h2{align-items:center;display:flex;font-size:18px;font-weight:600;margin:0}.download-progress-header h2 .download-icon{color:#4a90e2;margin-right:10px}.download-progress-header .close-button{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:20px;justify-content:center;padding:4px;transition:background-color .2s}.download-progress-header .close-button:hover{background-color:#f0f0f0;color:#333}.download-progress-content{flex:1 1;overflow-y:auto;padding:20px}.overall-progress{margin-bottom:20px}.overall-progress .progress-text{color:#555;display:flex;font-size:14px;justify-content:space-between;margin-bottom:8px}.overall-progress .progress-bar-container{background-color:#eee;border-radius:4px;height:8px;overflow:hidden}.overall-progress .progress-bar-container .progress-bar{background-color:#4a90e2;border-radius:4px;height:100%;transition:width .3s ease}.download-items-list{max-height:300px;overflow-y:auto}.download-items-list .download-item{border-bottom:1px solid #f0f0f0;padding:12px 0}.download-items-list .download-item:last-child{border-bottom:none}.download-items-list .download-item.completed .item-status{color:#27ae60}.download-items-list .download-item.error .item-status{color:#e74c3c}.download-items-list .download-item .item-info{display:flex;justify-content:space-between;margin-bottom:8px}.download-items-list .download-item .item-info .item-name{font-size:14px;font-weight:500;max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.download-items-list .download-item .item-info .item-status{font-size:14px;font-weight:500}.download-items-list .download-item .item-progress-bar-container{background-color:#eee;border-radius:2px;height:4px;overflow:hidden}.download-items-list .download-item .item-progress-bar-container .item-progress-bar{background-color:#4a90e2;border-radius:2px;height:100%;transition:width .3s ease}.download-items-list .download-item.completed .item-progress-bar{background-color:#27ae60}.download-items-list .download-item.error .item-progress-bar{background-color:#e74c3c}.download-progress-footer{align-items:center;border-top:1px solid #eee;display:flex;justify-content:space-between;padding:16px 20px}.download-progress-footer .error-message{color:#e74c3c;font-size:14px;margin:0}.download-progress-footer .close-button-text{background-color:#f0f0f0;border:none;border-radius:4px;cursor:pointer;font-weight:500;padding:8px 16px;transition:background-color .2s}.download-progress-footer .close-button-text:hover{background-color:#e0e0e0}.people-section{background:#fff;background:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .125rem .625rem #0000000d;box-shadow:0 .125rem .625rem var(--shadow-light);margin-bottom:1.5rem;margin-bottom:var(--spacing-xl);padding:1rem;padding:var(--spacing-md)}.people-section .people-header{align-items:center;display:flex;justify-content:space-between}.people-section .people-header .people-title{align-items:center;color:#1d1d1f;color:var(--text-color);display:flex;font-size:1.125rem;font-weight:600;gap:.5rem;gap:var(--spacing-sm);margin:0}.people-section .people-header .people-title .people-icon{color:#0071e3;color:var(--primary-color)}.people-section .people-header .toggle-people-button{background:#0071e31a;background:rgba(var(--primary-color-rgb),.1);border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:12px;border-radius:var(--border-radius-lg);color:#0071e3;color:var(--primary-color);cursor:pointer;font-size:.875rem;font-weight:500;padding:.375rem .75rem;transition:.2s cubic-bezier(.25,.46,.45,.94);transition:var(--transition-fast)}.people-section .people-header .toggle-people-button:hover{background:#0071e333;background:rgba(var(--primary-color-rgb),.2);transform:translateY(-1px)}.people-section .faces-container{overflow:hidden}.people-section .faces-container .faces-loading{display:flex;gap:1rem;gap:var(--spacing-md);padding:.5rem 0;padding:var(--spacing-sm) 0}.people-section .faces-container .faces-loading .face-skeleton{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--skeleton-start) 25%,var(--skeleton-end) 50%,var(--skeleton-start) 75%);background-size:200% 100%;border-radius:50%;border-radius:8px;border-radius:var(--border-radius-md);height:6rem;width:6rem}.people-section .faces-container .faces-grid{display:flex;overflow-x:auto;padding:.5rem 0;padding:var(--spacing-sm) 0;scrollbar-color:#d2d2d7 #0000;scrollbar-color:var(--border-color) #0000;scrollbar-width:thin}.people-section .faces-container .faces-grid::-webkit-scrollbar{height:.375rem}.people-section .faces-container .faces-grid::-webkit-scrollbar-track{background:#0000}.people-section .faces-container .faces-grid::-webkit-scrollbar-thumb{background-color:#d2d2d7;background-color:var(--border-color);border-radius:.375rem}.people-section .faces-container .faces-grid .face-item{border-radius:8px;border-radius:var(--border-radius-md);cursor:pointer;max-width:6rem;min-width:6rem;padding:.5rem;padding:var(--spacing-sm);text-align:center;transition:.2s cubic-bezier(.25,.46,.45,.94);transition:var(--transition-fast)}.people-section .faces-container .faces-grid .face-item:hover{background:var(--hover-bg);transform:translateY(-2px)}.people-section .faces-container .faces-grid .face-item.selected{background:#0071e31a;background:rgba(var(--primary-color-rgb),.1);border:1px solid #0071e34d;border:1px solid rgba(var(--primary-color-rgb),.3)}.people-section .faces-container .faces-grid .face-item .face-avatar{align-items:center;background:var(--avatar-bg);border-radius:8px;border-radius:var(--border-radius-md);display:flex;height:4rem;justify-content:center;margin:0 auto .5rem;margin:0 auto var(--spacing-sm);overflow:hidden;width:4rem}.people-section .faces-container .faces-grid .face-item .face-avatar img{height:100%;object-fit:cover;width:100%}.people-section .faces-container .faces-grid .face-item .face-avatar .avatar-placeholder{align-items:center;background:var(--avatar-placeholder-bg);color:var(--avatar-placeholder-text);display:flex;font-size:1.5rem;font-weight:600;height:100%;justify-content:center;width:100%}.people-section .faces-container .faces-grid .face-item .face-name{color:#1d1d1f;color:var(--text-color);font-size:.875rem;font-weight:500;margin-top:.25rem;margin-top:var(--spacing-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.people-section .faces-container .no-faces{align-items:center;color:#86868b;color:var(--text-secondary);display:flex;flex-direction:column;padding:1.5rem;padding:var(--spacing-xl)}.people-section .faces-container .no-faces .no-faces-icon{font-size:2rem;margin-bottom:.5rem;margin-bottom:var(--spacing-sm);opacity:.5}.people-section .faces-container .no-faces p{font-size:.875rem;margin:0}.sub-album-detail-container{padding:0 1rem}.sub-album-detail-container .sub-album-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.sub-album-detail-container .sub-album-header h1{flex-grow:1;font-size:1.75rem;font-weight:600;margin:0}.sub-album-detail-container .sub-album-header .back-button{padding-left:0}.sub-album-detail-container .sub-album-header .sub-album-actions{display:flex;gap:.5rem}.sub-album-detail-container .sub-album-content{margin-top:1.5rem;margin-top:var(--spacing-xl)}.sub-album-detail-container .sub-album-content .section-container{margin-bottom:2rem;margin-bottom:var(--spacing-2xl)}.sub-album-detail-container .sub-album-content .section-container .section-header{align-items:center;background-color:var(--background-light);border-radius:8px;border-radius:var(--border-radius-md);display:flex;justify-content:space-between;margin-bottom:1rem;margin-bottom:var(--spacing-md);padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md)}.sub-album-detail-container .sub-album-content .section-container .section-header .section-title{color:#1d1d1f;color:var(--text-color);font-size:1.125rem;font-weight:600;margin:0}.sub-album-detail-container .sub-album-content .section-container .section-header .section-info{align-items:center;display:flex;gap:.5rem;gap:var(--spacing-sm)}.sub-album-detail-container .sub-album-content .section-container .section-header .section-info .media-count{background-color:var(--background-secondary);border-radius:1rem;color:#86868b;color:var(--text-secondary);font-size:.875rem;font-weight:500;padding:.25rem .75rem}.watermark-button{align-items:center;display:flex;gap:.5rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}.watermark-button svg{color:#0071e3;color:var(--primary-color);transition:transform .2s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-fast)}.watermark-button:hover svg{transform:scale(1.1)}.watermark-button.active{background-color:#0071e31a;background-color:rgba(var(--primary-color-rgb),.1);border-color:#0071e3;border-color:var(--primary-color)}.watermark-button.active svg{color:#0071e3;color:var(--primary-color)}@media(max-width:48rem){.sub-album-detail-container .sub-album-header{align-items:flex-start;flex-direction:column}.sub-album-detail-container .sub-album-header h1{font-size:1.5rem}.sub-album-detail-container .sub-album-header .sub-album-actions{justify-content:flex-end;width:100%}}.photos-page-skeleton{animation:fadeIn ease-out .3s cubic-bezier(.25,.46,.45,.94);animation:fadeIn var(--transition-normal) ease-out;padding:1.5rem;width:100%}.photos-page-skeleton .filter-bar-skeleton .filter-item-skeleton,.photos-page-skeleton .photos-header-skeleton .header-actions-skeleton .add-button-skeleton,.photos-page-skeleton .photos-header-skeleton .header-actions-skeleton .filter-skeleton,.photos-page-skeleton .photos-header-skeleton .header-actions-skeleton .search-skeleton,.photos-page-skeleton .photos-header-skeleton .header-title-skeleton,.photos-page-skeleton .quick-filter-skeleton .quick-filter-item-skeleton{animation:shimmer 2s linear infinite;background:linear-gradient(90deg,#f5f5f7 25%,#e8e8ed 50%,#f5f5f7 75%);background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-200) 50%,var(--gray-100) 75%);background-size:62.5rem 100%;border-radius:6px;border-radius:var(--border-radius-sm)}.photos-page-skeleton .photos-header-skeleton{display:flex;flex-direction:column;margin-bottom:1.5rem}.photos-page-skeleton .photos-header-skeleton .header-title-skeleton{height:2rem;margin-bottom:1rem;width:11.25rem}.photos-page-skeleton .photos-header-skeleton .header-actions-skeleton{align-items:center;display:flex;justify-content:space-between}.photos-page-skeleton .photos-header-skeleton .header-actions-skeleton .search-skeleton{border-radius:1.25rem;height:2.5rem;width:15rem}.photos-page-skeleton .photos-header-skeleton .header-actions-skeleton .filter-skeleton{border-radius:1.25rem;height:2.5rem;margin-left:auto;margin-right:.75rem;width:7.5rem}.photos-page-skeleton .photos-header-skeleton .header-actions-skeleton .add-button-skeleton{border-radius:1.25rem;height:2.5rem;width:2.5rem}@media(max-width:48rem){.photos-page-skeleton .photos-header-skeleton .header-actions-skeleton{flex-wrap:wrap;gap:.75rem}.photos-page-skeleton .photos-header-skeleton .header-actions-skeleton .search-skeleton{order:2;width:100%}.photos-page-skeleton .photos-header-skeleton .header-actions-skeleton .add-button-skeleton,.photos-page-skeleton .photos-header-skeleton .header-actions-skeleton .filter-skeleton{margin:0}}.photos-page-skeleton .filter-bar-skeleton{display:flex;gap:.75rem;margin-bottom:1rem;overflow-x:auto;padding-bottom:.5rem}.photos-page-skeleton .filter-bar-skeleton .filter-item-skeleton{border-radius:1.125rem;flex-shrink:0;height:2.25rem;min-width:6.25rem}.photos-page-skeleton .filter-bar-skeleton .filter-item-skeleton.filter-active{animation:shimmer 2s linear infinite;background:linear-gradient(90deg,#42a1ff 25%,var(--primary-color-lighter) 50%,#42a1ff 75%);background:linear-gradient(90deg,var(--primary-color-light) 25%,var(--primary-color-lighter) 50%,var(--primary-color-light) 75%);background-size:62.5rem 100%;box-shadow:0 .0625rem .1875rem #0000000d;box-shadow:0 .0625rem .1875rem var(--shadow-light)}.photos-page-skeleton .quick-filter-skeleton{display:flex;gap:.75rem;margin-bottom:2rem}.photos-page-skeleton .quick-filter-skeleton .quick-filter-item-skeleton{border-radius:1rem;height:2rem;width:7.5rem}.photos-page-skeleton .quick-filter-skeleton .quick-filter-item-skeleton.quick-filter-active{animation:shimmer 2s linear infinite;background:linear-gradient(90deg,#42a1ff 25%,var(--primary-color-lighter) 50%,#42a1ff 75%);background:linear-gradient(90deg,var(--primary-color-light) 25%,var(--primary-color-lighter) 50%,var(--primary-color-light) 75%);background-size:62.5rem 100%}.photos-page-skeleton .photos-content-skeleton{display:flex;flex-direction:column;gap:2rem}.photo-grid-skeleton-container{animation:fadeIn ease-out .3s cubic-bezier(.25,.46,.45,.94);animation:fadeIn var(--transition-normal) ease-out;margin-bottom:2rem}.photo-grid-skeleton-container .photo-grid-skeleton .photo-item-skeleton .photo-container-skeleton .image-skeleton,.photo-grid-skeleton-container .photo-grid-skeleton .photo-item-skeleton .photo-title-skeleton,.photo-grid-skeleton-container .section-title-skeleton .count-skeleton,.photo-grid-skeleton-container .section-title-skeleton .title-text-skeleton{animation:shimmer 2s linear infinite;background:linear-gradient(90deg,#f5f5f7 25%,#e8e8ed 50%,#f5f5f7 75%);background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-200) 50%,var(--gray-100) 75%);background-size:62.5rem 100%;border-radius:6px;border-radius:var(--border-radius-sm)}.photo-grid-skeleton-container .section-title-skeleton{align-items:center;display:flex;margin-bottom:1rem}.photo-grid-skeleton-container .section-title-skeleton .title-text-skeleton{height:1.25rem;margin-right:.5rem;width:7.5rem}.photo-grid-skeleton-container .section-title-skeleton .count-skeleton{height:1rem;opacity:.7;width:2.5rem}.photo-grid-skeleton-container .photo-grid-skeleton{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(11.25rem,1fr));width:100%}@media(max-width:48rem){.photo-grid-skeleton-container .photo-grid-skeleton{gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(8.75rem,1fr))}}.photo-grid-skeleton-container .photo-grid-skeleton .photo-item-skeleton{animation:fadeIn ease-out .5s cubic-bezier(.25,.46,.45,.94) both;animation:fadeIn var(--transition-slow) ease-out both;background-color:#fff;background-color:var(--card-background);border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 .0625rem .1875rem #0000000d;box-shadow:0 .0625rem .1875rem var(--shadow-light);display:flex;flex-direction:column;overflow:hidden;transition:transform .2s cubic-bezier(.25,.46,.45,.94) ease,box-shadow .2s cubic-bezier(.25,.46,.45,.94) ease;transition:transform var(--transition-fast) ease,box-shadow var(--transition-fast) ease;width:100%}.photo-grid-skeleton-container .photo-grid-skeleton .photo-item-skeleton:hover{box-shadow:0 .25rem .5rem #00000014;box-shadow:0 .25rem .5rem var(--shadow-medium);transform:translateY(-.125rem)}.photo-grid-skeleton-container .photo-grid-skeleton .photo-item-skeleton .photo-container-skeleton{position:relative;width:100%}.photo-grid-skeleton-container .photo-grid-skeleton .photo-item-skeleton .photo-container-skeleton .image-skeleton{aspect-ratio:1;border-radius:0;width:100%}.photo-grid-skeleton-container .photo-grid-skeleton .photo-item-skeleton .photo-container-skeleton .video-indicator-skeleton{align-items:center;background-color:var(--overlay-dark);border-radius:50%;display:flex;height:1.5rem;justify-content:center;left:.5rem;position:absolute;top:.5rem;width:1.5rem}.photo-grid-skeleton-container .photo-grid-skeleton .photo-item-skeleton .photo-container-skeleton .video-indicator-skeleton:before{background-color:#fff;background-color:var(--white-color);border-radius:.125rem;content:"";height:.625rem;opacity:.9;width:.625rem}.photo-grid-skeleton-container .photo-grid-skeleton .photo-item-skeleton .photo-container-skeleton .favorite-indicator-skeleton{align-items:center;background-color:var(--favorite-color-translucent);border-radius:50%;display:flex;height:1.5rem;justify-content:center;position:absolute;right:.5rem;top:.5rem;width:1.5rem}.photo-grid-skeleton-container .photo-grid-skeleton .photo-item-skeleton .photo-container-skeleton .favorite-indicator-skeleton:before{background-color:#fff;background-color:var(--white-color);border-radius:50%;content:"";height:.625rem;opacity:.9;width:.625rem}.photo-grid-skeleton-container .photo-grid-skeleton .photo-item-skeleton .photo-title-skeleton{height:1rem;margin:.75rem}@keyframes skeletonShine{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.sub-album-details-header{background-color:#fff;background-color:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .25rem .75rem #00000014;box-shadow:0 .25rem .75rem var(--shadow-medium);display:flex;flex-direction:column;margin-bottom:1.5rem;margin-bottom:var(--spacing-xl);overflow:hidden;position:relative}.sub-album-details-header .back-navigation{border-bottom:.0625rem solid #d2d2d7;border-bottom:.0625rem solid var(--border-color);padding:1rem;padding:var(--spacing-md)}.sub-album-details-header .back-navigation .back-button{color:#86868b;color:var(--text-secondary);font-weight:500;transition:color .2s cubic-bezier(.25,.46,.45,.94);transition:color var(--transition-fast)}.sub-album-details-header .back-navigation .back-button:hover{color:#0071e3;color:var(--primary-color)}.sub-album-details-header .sub-album-header-content{display:flex;gap:1.5rem;gap:var(--spacing-xl);padding:1.5rem;padding:var(--spacing-xl)}@media(max-width:48rem){.sub-album-details-header .sub-album-header-content{flex-direction:column}}.sub-album-details-header .album-cover{border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 .25rem .75rem #00000014;box-shadow:0 .25rem .75rem var(--shadow-medium);flex-shrink:0;height:5.25rem;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-normal);width:5.25rem}@media(max-width:48rem){.sub-album-details-header .album-cover{height:8.75rem;margin:0 auto;width:8.75rem}}.sub-album-details-header .album-cover.loading{background-color:#e8e8ed;background-color:var(--gray-200)}.sub-album-details-header .album-cover.loading:after{animation:skeletonShine 1.5s infinite;background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:0;position:absolute;top:0;width:100%}.sub-album-details-header .album-cover .album-cover-image{height:100%;object-fit:cover;transition:transform .3s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-normal);width:100%;will-change:transform}.sub-album-details-header .album-cover .album-cover-image:hover{transform:scale(1.05)}.sub-album-details-header .album-cover .album-status-icon{align-items:center;border-radius:50%;box-shadow:0 .125rem .25rem #0000000d;box-shadow:0 .125rem .25rem var(--shadow-light);color:#fff;color:var(--white-color);display:flex;font-size:1rem;height:1.75rem;justify-content:center;left:.5rem;left:var(--spacing-sm);position:absolute;top:.5rem;top:var(--spacing-sm);transition:transform .2s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-fast);width:1.75rem;z-index:2}.sub-album-details-header .album-cover .album-status-icon:hover{transform:scale(1.1)}.sub-album-details-header .album-cover .album-status-icon.private{background-color:#333;background-color:var(--gray-800)}.sub-album-details-header .album-cover .album-status-icon.public{background-color:#0071e3d9;background-color:rgba(var(--primary-color-rgb),.85)}.sub-album-details-header .album-cover .album-status-icon.shared{background-color:#5856d6d9}.sub-album-details-header .album-cover .favorite-btn{align-items:center;background-color:#ffffffe6;border:none;border-radius:50%;bottom:.5rem;bottom:var(--spacing-sm);box-shadow:0 .125rem .25rem #0000000d;box-shadow:0 .125rem .25rem var(--shadow-light);color:#86868b;color:var(--text-secondary);cursor:pointer;display:flex;height:1.875rem;justify-content:center;position:absolute;right:.5rem;right:var(--spacing-sm);transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:1.875rem;z-index:2}.sub-album-details-header .album-cover .favorite-btn:hover{color:#ff3b30;color:var(--danger-color);transform:scale(1.1)}.sub-album-details-header .album-cover .favorite-btn.active{color:#ff3b30;color:var(--danger-color)}.sub-album-details-header .album-loading-skeleton{background-color:#e8e8ed;background-color:var(--gray-200);height:100%;overflow:hidden;position:relative;width:100%}.sub-album-details-header .album-loading-skeleton .skeleton-shine{animation:skeletonShine 1.5s infinite;background:linear-gradient(90deg,#fff0,#fff3,#fff0);height:100%;left:0;position:absolute;top:0;width:100%}.sub-album-details-header .album-cover-placeholder{align-items:center;background-color:#86868b;background-color:var(--gray-500);color:#fff;color:var(--white-color);display:flex;height:100%;justify-content:center;position:relative;width:100%}.sub-album-details-header .album-cover-placeholder .placeholder-content{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:1rem;padding:var(--spacing-md);text-align:center;z-index:1}.sub-album-details-header .album-cover-placeholder .album-initials{font-size:3rem;font-weight:700;text-shadow:0 .125rem .25rem #0003}.sub-album-details-header .album-cover-placeholder .placeholder-photo-count{background-color:#0000004d;border-radius:1rem;font-size:.875rem;margin-top:.5rem;margin-top:var(--spacing-sm);padding:.25rem 1rem;padding:var(--spacing-xs) var(--spacing-md)}.sub-album-details-header .album-info{flex:1 1;min-width:0}.sub-album-details-header .album-info .album-title{color:#1d1d1f;color:var(--text-color);font-size:1.75rem;font-weight:600;margin:0 0 .5rem;margin:0 0 var(--spacing-sm);word-break:break-word}.sub-album-details-header .album-info .album-description{color:#86868b;color:var(--text-secondary);font-size:1rem;line-height:1.5;margin:0 0 1rem;margin:0 0 var(--spacing-md)}.sub-album-details-header .album-info .album-meta{align-items:center;color:#86868b;color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:.875rem;gap:.5rem;gap:var(--spacing-sm);margin-bottom:1rem;margin-bottom:var(--spacing-md)}.sub-album-details-header .album-info .album-meta .meta-item{align-items:center;display:flex;gap:.25rem;gap:var(--spacing-xs)}.sub-album-details-header .album-info .album-meta .meta-item .meta-value{font-weight:600}.sub-album-details-header .album-info .album-meta .meta-item .meta-icon{font-size:.875rem}.sub-album-details-header .album-info .album-meta .meta-separator{color:#bbb;color:var(--gray-400)}.sub-album-details-header .album-info .album-meta .status{align-items:center;display:flex;gap:.25rem;gap:var(--spacing-xs)}.sub-album-details-header .album-info .parent-album-info{align-items:center;border-top:.0625rem solid #d2d2d7;border-top:.0625rem solid var(--border-color);display:flex;font-size:.875rem;gap:.5rem;gap:var(--spacing-sm);margin-top:1rem;margin-top:var(--spacing-md);padding-top:1rem;padding-top:var(--spacing-md)}.sub-album-details-header .album-info .parent-album-info .parent-album-label{color:#86868b;color:var(--text-secondary)}.sub-album-details-header .album-info .parent-album-info .parent-album-name{color:#0071e3;color:var(--primary-color);font-weight:600;transition:color .2s cubic-bezier(.25,.46,.45,.94);transition:color var(--transition-fast)}.sub-album-details-header .album-info .parent-album-info .parent-album-name:hover{color:#0077ed;color:var(--primary-color-hover)}.sub-album-details-header .sub-album-actions{align-items:flex-start;display:flex;gap:1rem;gap:var(--spacing-md)}@media(max-width:48rem){.sub-album-details-header .sub-album-actions{justify-content:flex-end;margin-top:1rem;margin-top:var(--spacing-md)}}.sub-album-details-header .sub-album-actions .options-menu-container{position:relative}.sub-album-details-header .sub-album-actions .options-menu-container .options-menu{background-color:#fff;background-color:var(--card-background);border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 .25rem .75rem #00000014;box-shadow:0 .25rem .75rem var(--shadow-medium);min-width:11.25rem;overflow:hidden;position:absolute;right:0;top:calc(100% + .3125rem);z-index:10}.sub-album-details-header .sub-album-actions .options-menu-container .options-menu button{align-items:center;background:none;border:none;color:#1d1d1f;color:var(--text-color);cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;gap:var(--spacing-sm);padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);text-align:left;transition:background-color .2s cubic-bezier(.25,.46,.45,.94);transition:background-color var(--transition-fast);width:100%}.sub-album-details-header .sub-album-actions .options-menu-container .options-menu button:hover{background-color:#e8e8ed;background-color:var(--hover-color)}.sub-album-details-header .sub-album-actions .options-menu-container .options-menu button.delete-option{color:#ff3b30;color:var(--danger-color)}.photos-page{width:100%}.photos-page .page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.photos-page .page-header h1{color:#1d1d1f;color:var(--text-color);font-size:1.75rem;font-weight:700;margin:0}.photos-page .page-header .header-actions{display:flex;gap:.75rem}.photos-page .page-header .header-actions .action-button{align-items:center;background-color:#fff;border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);color:#1d1d1f;color:var(--text-color);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;justify-content:center;padding:.5rem 1rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}.photos-page .page-header .header-actions .action-button svg{font-size:1rem;margin-right:.5rem}.photos-page .page-header .header-actions .action-button:hover{background-color:#e8e8ed;background-color:var(--hover-color);border-color:#bbb;border-color:var(--border-color-dark)}@media(max-width:48rem){.photos-page .page-header .header-actions .action-button .action-label{display:none}.photos-page .page-header .header-actions .action-button{padding:.5rem}}.photos-page .page-header .header-actions .options-menu-container{position:relative}.photos-page .page-header .header-actions .options-menu-container .options-menu{background-color:#fff;background-color:var(--white-color);border-radius:8px;border-radius:var(--border-radius-md);box-shadow:#00000014;box-shadow:var(--shadow-medium);margin-top:.5rem;min-width:11.25rem;overflow:hidden;position:absolute;right:0;top:100%;z-index:100}.photos-page .page-header .header-actions .options-menu-container .options-menu button{align-items:center;background:none;border:none;color:#1d1d1f;color:var(--text-color);cursor:pointer;display:flex;font-size:.875rem;padding:.75rem 1rem;text-align:left;transition:background-color .2s cubic-bezier(.25,.46,.45,.94);transition:background-color var(--transition-fast);width:100%}.photos-page .page-header .header-actions .options-menu-container .options-menu button:hover{background-color:#e8e8ed;background-color:var(--hover-color)}.photos-page .search-filter-bar{display:flex;gap:1rem;margin-bottom:1.5rem}.photos-page .search-filter-bar .search-container{flex:1 1;position:relative}.photos-page .search-filter-bar .search-container .search-icon{color:#86868b;color:var(--text-secondary);font-size:1rem;left:.75rem;position:absolute;top:50%;transform:translateY(-50%)}.photos-page .search-filter-bar .search-container input{background-color:#fff;background-color:var(--white-color);border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);color:#1d1d1f;color:var(--text-color);font-size:.875rem;padding:.75rem .75rem .75rem 2.5rem;width:100%}.photos-page .search-filter-bar .search-container input:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 .125rem rgba(#0071e3,.2);box-shadow:0 0 0 .125rem rgba(var(--primary-color),.2);outline:none}.photos-page .search-filter-bar .search-container input::placeholder{color:#86868b;color:var(--text-secondary)}.photos-page .search-filter-bar .search-container .clear-search{background:none;border:none;color:#86868b;color:var(--text-secondary);cursor:pointer;font-size:1.125rem;position:absolute;right:.75rem;top:50%;transform:translateY(-50%)}.photos-page .search-filter-bar .search-container .clear-search:hover{color:#1d1d1f;color:var(--text-color)}.photos-page .search-filter-bar .filter-container{position:relative}.photos-page .search-filter-bar .filter-container .filter-menu{background-color:#fff;background-color:var(--white-color);border-radius:8px;border-radius:var(--border-radius-md);box-shadow:#00000014;box-shadow:var(--shadow-medium);margin-top:.5rem;min-width:11.25rem;overflow:hidden;position:absolute;right:0;top:100%;z-index:100}.photos-page .search-filter-bar .filter-container .filter-menu button{background:none;border:none;color:#1d1d1f;color:var(--text-color);cursor:pointer;font-size:.875rem;padding:.75rem 1rem;text-align:left;transition:background-color .2s cubic-bezier(.25,.46,.45,.94);transition:background-color var(--transition-fast);width:100%}.photos-page .search-filter-bar .filter-container .filter-menu button:hover{background-color:#e8e8ed;background-color:var(--hover-color)}.photos-page .search-filter-bar .filter-container .filter-menu button.active{background-color:rgba(#0071e3,.1);background-color:rgba(var(--primary-color),.1);color:#0071e3;color:var(--primary-color);font-weight:500}.photos-page .photos-content{margin-bottom:5rem}.photos-page .photos-content .photo-group{margin-bottom:2rem}.photos-page .photos-content .photo-group .group-date{color:#1d1d1f;color:var(--text-color);font-size:1.125rem;font-weight:600;margin:0 0 1rem}.photos-page .search-filter-bar-skeleton{margin-bottom:1.5rem}.photos-page .photo-grid-skeleton-container{margin-top:1.5rem}.photo-header{margin-bottom:2rem}.photo-header .photo-header-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}@media(max-width:48rem){.photo-header .photo-header-top{align-items:flex-start;flex-direction:column;gap:1rem}}.photo-header h1{color:#1d1d1f;color:var(--text-color);font-size:2rem;font-weight:700;margin:0}.photo-header .photo-actions{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}@media(max-width:48rem){.photo-header .photo-actions{width:100%}}.photo-header .photo-actions .active-filter{background-color:#0071e31a;background-color:var(--active-color);border-color:#0071e3;border-color:var(--primary-color);color:#0071e3;color:var(--primary-color)}.photo-header .search-container{position:relative;width:18.75rem}@media(max-width:48rem){.photo-header .search-container{margin-bottom:.75rem;width:100%}}.photo-header .search-container .search-icon{color:#86868b;color:var(--text-secondary);font-size:.9rem;left:.75rem;position:absolute;top:50%;transform:translateY(-50%)}.photo-header .search-container .search-input{background-color:#fff;background-color:var(--card-background);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 .0625rem .125rem #0000000d;box-shadow:0 .0625rem .125rem var(--shadow-light);color:#1d1d1f;color:var(--text-color);font-size:.9rem;padding:.75rem 1rem .75rem 2.5rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:100%}.photo-header .search-container .search-input:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 .125rem #0071e333;box-shadow:0 0 0 .125rem rgba(var(--primary-color-rgb),.2);outline:none}.photo-header .search-container .search-input::placeholder{color:#86868b;color:var(--text-secondary)}.sr-only{clip:rect(0,0,0,0);border-width:0;height:.0625rem;margin:-.0625rem;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:.0625rem}.friends-page{background-color:#f5f5f7;background-color:var(--background-color);display:flex;flex-direction:column;height:100%}.friend-requests-modal-overlay{align-items:center;backdrop-filter:blur(.3125rem);-webkit-backdrop-filter:blur(.3125rem);background-color:#0006;background-color:var(--overlay-background);bottom:0;display:flex;justify-content:center;left:0;opacity:1;padding:1rem;position:fixed;right:0;top:0;transition:opacity .3s cubic-bezier(.25,.46,.45,.94);transition:opacity var(--transition-normal);z-index:1000}.friend-requests-modal-overlay.animate-out{opacity:0}.friend-requests-modal-overlay.show-confetti .confetti-container{opacity:1}.confetti-container{height:100%;left:0;opacity:0;pointer-events:none;position:absolute;top:0;transition:opacity .3s ease;width:100%;z-index:1}.confetti{animation:confetti-fall 3s ease-in-out forwards;background-color:#0071e3;background-color:var(--primary-color);height:.625rem;opacity:.8;position:absolute;width:.625rem}.confetti:nth-child(0){animation-delay:.89s;animation-duration:2.6s;background-color:#fc0;height:.875rem;left:46%;transform:rotate(103deg);width:.4375rem}.confetti:first-child{animation-delay:.31s;animation-duration:2.5s;background-color:#fc0;height:.75rem;left:100%;transform:rotate(160deg);width:.9375rem}.confetti:nth-child(2){animation-delay:.9s;animation-duration:2.2s;background-color:#5856d6;height:.6875rem;left:47%;transform:rotate(84deg);width:.8125rem}.confetti:nth-child(3){animation-delay:.22s;animation-duration:3.4s;background-color:#007aff;height:.4375rem;left:45%;transform:rotate(270deg);width:.5625rem}.confetti:nth-child(4){animation-delay:.29s;animation-duration:3s;background-color:#5856d6;height:.625rem;left:99%;transform:rotate(181deg);width:.5625rem}.confetti:nth-child(5){animation-delay:.96s;animation-duration:3.5s;background-color:#fc0;height:.4375rem;left:51%;transform:rotate(301deg);width:.875rem}.confetti:nth-child(6){animation-delay:.98s;animation-duration:3.5s;background-color:#5856d6;height:.375rem;left:39%;transform:rotate(318deg);width:.75rem}.confetti:nth-child(7){animation-delay:.95s;animation-duration:2.3s;background-color:#007aff;height:.875rem;left:78%;transform:rotate(193deg);width:.375rem}.confetti:nth-child(8){animation-delay:.1s;animation-duration:2.5s;background-color:#007aff;height:.875rem;left:24%;transform:rotate(285deg);width:.5rem}.confetti:nth-child(9){animation-delay:.03s;animation-duration:3.1s;background-color:#ff3b30;height:.8125rem;left:36%;transform:rotate(271deg);width:.625rem}.confetti:nth-child(10){animation-delay:.2s;animation-duration:3.3s;background-color:#ff3b30;height:.4375rem;left:75%;transform:rotate(68deg);width:.6875rem}.confetti:nth-child(11){animation-delay:.15s;animation-duration:2.9s;background-color:#4cd964;height:.8125rem;left:34%;transform:rotate(3deg);width:.9375rem}.confetti:nth-child(12){animation-delay:.51s;animation-duration:3.2s;background-color:#4cd964;height:.8125rem;left:17%;transform:rotate(286deg);width:.875rem}.confetti:nth-child(13){animation-delay:.96s;animation-duration:2.3s;background-color:#fc0;height:.8125rem;left:3%;transform:rotate(192deg);width:.75rem}.confetti:nth-child(14){animation-delay:.38s;animation-duration:3.3s;background-color:#fc0;height:.375rem;left:9%;transform:rotate(2deg);width:.5rem}.confetti:nth-child(15){animation-delay:.72s;animation-duration:3.8s;background-color:#5856d6;height:.375rem;left:70%;transform:rotate(166deg);width:.9375rem}.confetti:nth-child(16){animation-delay:.38s;animation-duration:2.2s;background-color:#ff3b30;height:.9375rem;left:95%;transform:rotate(103deg);width:.4375rem}.confetti:nth-child(17){animation-delay:.2s;animation-duration:2.6s;background-color:#007aff;height:.375rem;left:18%;transform:rotate(11deg);width:.8125rem}.confetti:nth-child(18){animation-delay:.86s;animation-duration:3.9s;background-color:#fc0;height:.8125rem;left:11%;transform:rotate(61deg);width:.5625rem}.confetti:nth-child(19){animation-delay:.09s;animation-duration:3.1s;background-color:#fc0;height:.9375rem;left:100%;transform:rotate(297deg);width:.875rem}.confetti:nth-child(20){animation-delay:.32s;animation-duration:3.8s;background-color:#5856d6;height:.4375rem;left:61%;transform:rotate(118deg);width:.9375rem}.confetti:nth-child(21){animation-delay:.06s;animation-duration:2.1s;background-color:#fc0;height:.5625rem;left:55%;transform:rotate(101deg);width:.5rem}.confetti:nth-child(22){animation-delay:.11s;animation-duration:3.7s;background-color:#fc0;height:.625rem;left:11%;transform:rotate(64deg);width:.5625rem}.confetti:nth-child(23){animation-delay:.91s;animation-duration:3.6s;background-color:#ff3b30;height:.75rem;left:48%;transform:rotate(236deg);width:.9375rem}.confetti:nth-child(24){animation-delay:.46s;animation-duration:2.2s;background-color:#5856d6;height:.5rem;left:100%;transform:rotate(136deg);width:.8125rem}.confetti:nth-child(25){animation-delay:.59s;animation-duration:2.2s;background-color:#4cd964;height:.6875rem;left:66%;transform:rotate(357deg);width:.5rem}.confetti:nth-child(26){animation-delay:.79s;animation-duration:3.8s;background-color:#fc0;height:.875rem;left:65%;transform:rotate(354deg);width:.8125rem}.confetti:nth-child(27){animation-delay:.92s;animation-duration:3.7s;background-color:#ff3b30;height:.375rem;left:98%;transform:rotate(311deg);width:.625rem}.confetti:nth-child(28){animation-delay:.75s;animation-duration:3.1s;background-color:#ff3b30;height:.6875rem;left:43%;transform:rotate(18deg);width:.5625rem}.confetti:nth-child(29){animation-delay:.64s;animation-duration:2.6s;background-color:#007aff;height:.5rem;left:39%;transform:rotate(132deg);width:.5625rem}.confetti:nth-child(30){animation-delay:.04s;animation-duration:3.6s;background-color:#ff3b30;height:.5625rem;left:23%;transform:rotate(311deg);width:.5rem}.confetti.confetti-0{background-color:#0071e3;background-color:var(--primary-color)}.confetti.confetti-1{background-color:#34c759;background-color:var(--success-color)}.confetti.confetti-2{background-color:#ff9500;background-color:var(--warning-color)}.confetti.confetti-3{background-color:#ff3b30;background-color:var(--error-color)}.confetti.confetti-4{background-color:#5ac8fa;background-color:var(--info-color)}.friend-requests-modal{animation:modal-appear ease-out .3s cubic-bezier(.25,.46,.45,.94);animation:modal-appear var(--transition-normal) ease-out;background:#fff;background:var(--white);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .625rem 1.5625rem #0003;display:flex;flex-direction:column;max-height:80vh;max-width:25rem;overflow:hidden;transform:translateY(0);transition:transform .3s cubic-bezier(.25,.46,.45,.94),opacity .3s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-normal),opacity var(--transition-normal);width:100%}@keyframes modal-appear{0%{opacity:0;transform:translateY(1.25rem)}to{opacity:1;transform:translateY(0)}}@keyframes item-appear{0%{opacity:0;transform:translateY(.625rem)}to{opacity:1;transform:translateY(0)}}@keyframes confetti-fall{0%{opacity:1;transform:translateY(-6.25rem) rotate(0deg)}to{opacity:0;transform:translateY(100vh) rotate(1turn)}}@keyframes avatar-pulse{0%{box-shadow:0 0 0 0 #0071e366;box-shadow:0 0 0 0 rgba(var(--primary-color-rgb),.4)}70%{box-shadow:0 0 0 .625rem #0071e300;box-shadow:0 0 0 .625rem rgba(var(--primary-color-rgb),0)}to{box-shadow:0 0 0 0 #0071e300;box-shadow:0 0 0 0 rgba(var(--primary-color-rgb),0)}}.friend-requests-modal.animate-out{opacity:0;transform:translateY(1.25rem)}.friend-requests-modal .requests-header{border-bottom:.0625rem solid var(--border-color-light);padding:1rem 1.5rem .5rem}.friend-requests-modal .requests-header .requests-count{color:#86868b;color:var(--text-secondary);font-size:.9375rem;font-weight:500;margin:0}.friend-requests-modal .modal-content{overflow:hidden;padding:0}.friend-requests-modal .requests-list{flex:1 1;max-height:60vh;overflow-y:auto;padding:0}.friend-requests-modal .requests-list .empty-state{align-items:center;color:#86868b;color:var(--text-secondary);display:flex;flex-direction:column;justify-content:center;padding:2rem 1rem;text-align:center}.friend-requests-modal .requests-list .empty-state .empty-icon{color:#bbb;color:var(--gray-400);font-size:2.5rem;margin-bottom:1rem}.friend-requests-modal .requests-list .empty-state .empty-text{font-size:1rem;margin-bottom:1.5rem;max-width:300px}.friend-requests-modal .requests-list .request-item{align-items:center;animation:item-appear .3s ease-out;animation-fill-mode:both;border-bottom:.0625rem solid var(--border-color-light);display:flex;flex-direction:column;justify-content:space-between;padding:1rem 1.5rem;transition:background-color .2s ease}.friend-requests-modal .requests-list .request-item:first-child{animation-delay:.05s}.friend-requests-modal .requests-list .request-item:nth-child(2){animation-delay:.1s}.friend-requests-modal .requests-list .request-item:nth-child(3){animation-delay:.15s}.friend-requests-modal .requests-list .request-item:nth-child(4){animation-delay:.2s}.friend-requests-modal .requests-list .request-item:nth-child(5){animation-delay:.25s}.friend-requests-modal .requests-list .request-item:nth-child(6){animation-delay:.3s}.friend-requests-modal .requests-list .request-item:nth-child(7){animation-delay:.35s}.friend-requests-modal .requests-list .request-item:nth-child(8){animation-delay:.4s}.friend-requests-modal .requests-list .request-item:nth-child(9){animation-delay:.45s}.friend-requests-modal .requests-list .request-item:nth-child(10){animation-delay:.5s}.friend-requests-modal .requests-list .request-item:last-child{border-bottom:none}.friend-requests-modal .requests-list .request-item.active{background-color:#0071e30d;background-color:rgba(var(--primary-color-rgb),.05)}.friend-requests-modal .requests-list .request-item .request-user{align-items:center;display:flex;min-width:0;position:relative;width:100%}.friend-requests-modal .requests-list .request-item .request-avatar{background-color:#f5f5f7;background-color:var(--gray-100);border-radius:50%;box-shadow:0 2px 8px #0000001a;flex-shrink:0;height:5rem;margin-right:1rem;overflow:hidden;position:relative;transition:transform .2s ease;width:5rem}.friend-requests-modal .requests-list .request-item .request-avatar img{height:100%;object-fit:cover;width:100%}.friend-requests-modal .requests-list .request-item .request-avatar .avatar-placeholder{align-items:center;background-color:#0071e3;background-color:var(--primary-color);color:#fff;color:var(--text-on-primary);display:flex;font-size:1.5rem;font-weight:600;height:100%;justify-content:center;width:100%}.friend-requests-modal .requests-list .request-item .request-info{flex:1 1;min-width:0;overflow:hidden;padding-right:.5rem}.friend-requests-modal .requests-list .request-item .request-message{color:#86868b;color:var(--text-secondary);font-size:.875rem;line-height:1.4;margin:.25rem 0 0}.friend-requests-modal .requests-list .request-item .request-name{color:#1d1d1f;color:var(--text-color);font-size:1rem;font-weight:600;letter-spacing:-.01em;margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friend-requests-modal .requests-list .request-item .request-username{color:#0071e3;color:var(--primary-color);font-size:.875rem;font-weight:500;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friend-requests-modal .requests-list .request-item .request-actions{display:flex;gap:1rem;justify-content:flex-end;width:100%}.friend-requests-modal .friend-request-form{display:flex;flex-direction:column;height:100%}.friend-requests-modal .modal-content{flex:1 1;padding:0 0 1.5rem}.friend-requests-modal .modal-description{color:#86868b;color:var(--text-secondary);font-size:.9375rem;line-height:1.4;margin:0 0 1.5rem;text-align:center}@media(min-width:768px){.friend-requests-modal .modal-description{font-size:1rem;margin-bottom:2rem}}.friend-requests-modal .form-group{margin-bottom:1rem}@media(min-width:768px){.friend-requests-modal .form-group{margin-bottom:1.25rem}}.friend-requests-modal .form-label{color:#1d1d1f;color:var(--text-color);display:block;font-size:.875rem;font-weight:600;letter-spacing:-.01em;margin-bottom:.5rem}@media(min-width:768px){.friend-requests-modal .form-label{font-size:.9375rem;margin-bottom:.625rem}}.friend-requests-modal .input-container{position:relative}.friend-requests-modal .form-input{-webkit-appearance:none;appearance:none;background-color:#fff;background-color:var(--card-background);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);color:#1d1d1f;color:var(--text-color);font-size:1rem;font-weight:400;line-height:1.5;outline:none;padding:.75rem 1rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:100%}@media(min-width:768px){.friend-requests-modal .form-input{font-size:1.0625rem;padding:.875rem 1.125rem}}.friend-requests-modal .form-input::placeholder{color:#86868b;color:var(--text-secondary);opacity:1}.friend-requests-modal .form-input:focus{background-color:#fff;background-color:var(--white);border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 .1875rem #0071e31a;box-shadow:0 0 0 .1875rem rgba(var(--primary-color-rgb),.1)}.friend-requests-modal .form-input:hover:not(:focus):not(:disabled){background-color:#fff;background-color:var(--white);border-color:#bbb;border-color:var(--border-color-dark)}.friend-requests-modal .form-input:disabled{background-color:#f5f5f7;background-color:var(--gray-100);color:#86868b;color:var(--text-secondary);cursor:not-allowed;opacity:.6}.friend-requests-modal .form-input.valid,.friend-requests-modal .form-input.valid:focus{border-color:#34c759;border-color:var(--success-color)}.friend-requests-modal .form-input.valid:focus{box-shadow:0 0 0 .1875rem #34c7591a;box-shadow:0 0 0 .1875rem rgba(var(--success-color-rgb),.1)}.friend-requests-modal .form-input.error{background-color:#ff3b3005;background-color:rgba(var(--danger-color-rgb),.02);border-color:#ff3b30;border-color:var(--error-color)}.friend-requests-modal .form-input.error:focus{border-color:#ff3b30;border-color:var(--error-color);box-shadow:0 0 0 .1875rem #ff3b301a;box-shadow:0 0 0 .1875rem rgba(var(--danger-color-rgb),.1)}.friend-requests-modal .input-error{align-items:center;color:#ff3b30;color:var(--error-color);display:flex;font-size:.8125rem;font-weight:500;line-height:1.3;margin-top:.375rem}@media(min-width:768px){.friend-requests-modal .input-error{font-size:.875rem;margin-top:.5rem}}.friend-requests-modal .request-actions{background-color:var(--gray-50);border-bottom:.0625rem solid #d2d2d7;border-bottom:.0625rem solid var(--border-color);display:flex;gap:.75rem;justify-content:right;padding-bottom:1rem}.friend-requests-modal .modal-actions{border-top:.0625rem solid #d2d2d7;border-top:.0625rem solid var(--border-color);display:flex;gap:.75rem;margin-top:auto;padding-top:1.5rem}@media(min-width:48rem){.friend-requests-modal .modal-actions{gap:1rem;padding-top:2rem}}.friend-requests-modal .modal-actions .button{flex:1 1;font-size:.9375rem;font-weight:600;letter-spacing:-.01em;min-height:2.75rem}@media(min-width:768px){.friend-requests-modal .modal-actions .button{font-size:1rem;min-height:3rem}}@media(prefers-reduced-motion:reduce){.friend-requests-modal .form-input{transition:none}}@media(prefers-color-scheme:dark){.friend-requests-modal .modal-description{color:#ffffffb3}.friend-requests-modal .form-input{background-color:#ffffff0d;border-color:#fff3;color:#fff;color:var(--white-color)}.friend-requests-modal .form-input::placeholder{color:#ffffff80}.friend-requests-modal .form-input:focus{background-color:#ffffff14;border-color:#0071e3;border-color:var(--primary-color)}.friend-requests-modal .form-input:hover:not(:focus):not(:disabled){background-color:#ffffff14;border-color:#ffffff4d}.friend-requests-modal .form-input.error{background-color:#ff3b3014;background-color:rgba(var(--danger-color-rgb),.08)}}@media(prefers-contrast:high){.friend-requests-modal .form-input{border-width:.125rem}.friend-requests-modal .form-input:focus{box-shadow:0 0 0 .125rem #0071e3;box-shadow:0 0 0 .125rem var(--primary-color)}.friend-requests-modal .form-input.error:focus{box-shadow:0 0 0 .125rem #ff3b30;box-shadow:0 0 0 .125rem var(--error-color)}}.add-friend-modal-overlay{align-items:center;backdrop-filter:blur(.3125rem);-webkit-backdrop-filter:blur(.3125rem);background-color:#0006;background-color:var(--overlay-background);bottom:0;display:flex;justify-content:center;left:0;opacity:1;padding:1rem;position:fixed;right:0;top:0;transition:opacity .3s cubic-bezier(.25,.46,.45,.94);transition:opacity var(--transition-normal);z-index:1000}.add-friend-modal{animation:modal-appear ease-out .3s cubic-bezier(.25,.46,.45,.94);animation:modal-appear var(--transition-normal) ease-out;background:#fff;background:var(--white);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .625rem 1.5625rem #0003;display:flex;flex-direction:column;max-height:90vh;max-width:31.25rem;overflow:hidden;width:100%}.add-friend-modal .modal-header{align-items:center;border-bottom:.0625rem solid #d2d2d7;border-bottom:.0625rem solid var(--border-color);display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.add-friend-modal .modal-header .modal-title{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;font-weight:600;margin:0}.add-friend-modal .modal-header .modal-close-button{background:none;border:none;border-radius:50%;color:#86868b;color:var(--text-secondary);cursor:pointer;font-size:1.5rem;margin-right:-.5rem;padding:.5rem;transition:background-color .2s cubic-bezier(.25,.46,.45,.94);transition:background-color var(--transition-fast)}.add-friend-modal .modal-header .modal-close-button:hover{background-color:#f5f5f7;background-color:var(--gray-100)}.add-friend-modal .add-friend-form{display:flex;flex-direction:column;height:100%;justify-content:space-between}.add-friend-modal .add-friend-form .modal-content{flex:1 1;overflow-y:auto;padding:1.5rem 1.5rem 1rem}.add-friend-modal .add-friend-form .modal-description{color:#86868b;color:var(--text-secondary);font-size:.9375rem;line-height:1.4;margin:0 0 1.25rem;text-align:center}@media(min-width:768px){.add-friend-modal .add-friend-form .modal-description{font-size:1rem;margin-bottom:2rem}}.add-friend-modal .add-friend-form .section-title{color:#1d1d1f;color:var(--text-color);font-size:1.125rem;font-weight:600;line-height:1.3;margin:0 0 1rem}.add-friend-modal .confirm-text{color:#86868b;color:var(--text-secondary);font-size:1rem;font-weight:500;line-height:1.4;margin:1rem 0 0;text-align:center}.add-friend-modal .form-group{margin-bottom:1rem}@media(min-width:768px){.add-friend-modal .form-group{margin-bottom:1.25rem}}.add-friend-modal .form-label{color:#1d1d1f;color:var(--text-color);display:block;font-size:.875rem;font-weight:600;letter-spacing:-.01em;margin-bottom:.5rem}@media(min-width:768px){.add-friend-modal .form-label{font-size:.9375rem;margin-bottom:.625rem}}.add-friend-modal .input-container{position:relative}.add-friend-modal .phone-input-container{align-items:center;background-color:#fff;background-color:var(--card-background);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);display:flex;overflow:hidden;position:relative;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}.add-friend-modal .phone-input-container:focus-within{background-color:#fff;background-color:var(--white-color);border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 3px #0071e31a;box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.1)}.add-friend-modal .phone-input-container:hover:not(:focus-within){background-color:#fff;background-color:var(--white-color);border-color:#bbb;border-color:var(--border-color-dark)}.add-friend-modal .country-code-container{align-items:center;background-color:var(--gray-50);border-right:.0625rem solid #d2d2d7;border-right:.0625rem solid var(--border-color);display:flex;height:100%;min-height:3.25rem;padding:0 .75rem}.add-friend-modal .country-code-container .country-code{color:#1d1d1f;color:var(--text-color);font-size:1rem;font-weight:500;margin-right:.5rem}.add-friend-modal .country-code-container .country-code-icon{color:#86868b;color:var(--text-secondary)}.add-friend-modal .form-input{-webkit-appearance:none;appearance:none;background-color:#0000;border:0;color:#1d1d1f;color:var(--text-color);font-size:1rem;font-weight:400;line-height:1.5;outline:none;padding:.75rem 1rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:100%}.phone-input-container .add-friend-modal .form-input{background-color:#0000;border-radius:0;flex:1 1;padding:.875rem 1rem}.add-friend-modal .form-input:not(.phone-input-container .add-friend-modal .form-input){background-color:#fff;background-color:var(--card-background);border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);color:#1d1d1f;color:var(--text-color)}@media(min-width:768px){.add-friend-modal .form-input{font-size:1.0625rem;padding:.875rem 1.125rem}}.add-friend-modal .form-input::placeholder{color:#86868b;color:var(--text-secondary);opacity:1}.add-friend-modal .form-input:focus{background-color:#fff;background-color:var(--white-color);border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 3px #0071e31a;box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.1)}.add-friend-modal .form-input:hover:not(:focus):not(:disabled){background-color:#fff;background-color:var(--white-color);border-color:#bbb;border-color:var(--border-color-dark)}.add-friend-modal .form-input:disabled{background-color:#f5f5f7;background-color:var(--gray-100);color:#86868b;color:var(--text-secondary);cursor:not-allowed;opacity:.6}.add-friend-modal .form-input.valid,.add-friend-modal .form-input.valid:focus{border-color:#34c759;border-color:var(--success-color)}.add-friend-modal .form-input.valid:focus{box-shadow:0 0 0 3px #34c7591a;box-shadow:0 0 0 3px rgba(var(--success-color-rgb),.1)}.add-friend-modal .form-input.error{background-color:#ff3b3005;background-color:rgba(var(--danger-color-rgb),.02);border-color:#ff3b30;border-color:var(--error-color)}.add-friend-modal .form-input.error:focus{border-color:#ff3b30;border-color:var(--error-color);box-shadow:0 0 0 3px #ff3b301a;box-shadow:0 0 0 3px rgba(var(--danger-color-rgb),.1)}.add-friend-modal .input-error,.add-friend-modal .search-error{align-items:center;color:#ff3b30;color:var(--error-color);display:flex;font-size:.8125rem;font-weight:500;line-height:1.3;margin-top:.375rem}@media(min-width:768px){.add-friend-modal .input-error,.add-friend-modal .search-error{font-size:.875rem;margin-top:.5rem}}.add-friend-modal .search-error{background-color:#ff3b300d;background-color:rgba(var(--danger-color-rgb),.05);border-left:3px solid #ff3b30;border-left:3px solid var(--error-color);border-radius:8px;border-radius:var(--border-radius-md);margin-bottom:.5rem;margin-top:1rem;padding:.75rem}.add-friend-modal .user-preview{align-items:center;background-color:var(--gray-50);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);display:flex;margin-bottom:1.5rem;padding:1.25rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}.add-friend-modal .user-preview:hover{border-color:#bbb;border-color:var(--border-color-dark);box-shadow:0 .125rem .5rem #0000000d}.add-friend-modal .user-avatar-container{background-color:#f5f5f7;background-color:var(--gray-100);border-radius:50%;box-shadow:0 .125rem .375rem #0000001a;flex-shrink:0;height:3.75rem;margin-right:1rem;overflow:hidden;position:relative;width:3.75rem}.add-friend-modal .user-avatar{height:100%;object-fit:cover;width:100%}.add-friend-modal .avatar-placeholder{align-items:center;background-color:#0071e3;background-color:var(--primary-color);color:#fff;display:flex;font-size:1.25rem;font-weight:600;height:100%;justify-content:center;width:100%}.add-friend-modal .user-info{flex:1 1;min-width:0}.add-friend-modal .user-name{color:#1d1d1f;color:var(--text-color);font-size:1.125rem;font-weight:600;line-height:1.3;margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.add-friend-modal .user-phone{color:#86868b;color:var(--text-secondary);font-size:.875rem;line-height:1.4;margin:0 0 .25rem}.add-friend-modal .user-username{color:#0071e3;color:var(--primary-color);font-size:.875rem;font-weight:500;margin:0}.add-friend-modal .form-actions{background-color:var(--gray-50);border-top:1px solid #d2d2d7;border-top:1px solid var(--border-color);display:flex;gap:.75rem;padding:1rem 1.5rem}.add-friend-modal .form-actions .button{align-items:center;border-radius:8px;border-radius:var(--border-radius-md);display:flex;flex:1 1;font-size:.9375rem;font-weight:600;gap:.5rem;justify-content:center;min-height:2.75rem;transition:all .2s}.add-friend-modal .form-actions .button-primary{background-color:#0071e3;background-color:var(--primary-color);border:none;color:#fff}.add-friend-modal .form-actions .button-primary:hover:not(:disabled){background-color:#0062cc;background-color:var(--primary-color-dark)}.add-friend-modal .form-actions .button:disabled{cursor:not-allowed;opacity:.6}.add-friend-modal .modal-actions{background-color:var(--gray-50);border-top:.0625rem solid #d2d2d7;border-top:.0625rem solid var(--border-color);display:flex;gap:.75rem;margin-top:0;padding:1rem 1.5rem}@media(min-width:48rem){.add-friend-modal .modal-actions{gap:1rem;padding-top:2rem}}.add-friend-modal .modal-actions .button{flex:1 1;font-size:.9375rem;font-weight:600;letter-spacing:-.01em;min-height:2.75rem}@media(min-width:768px){.add-friend-modal .modal-actions .button{font-size:1rem;min-height:3rem}}@media(prefers-reduced-motion:reduce){.add-friend-modal .form-input{transition:none}}@media(prefers-color-scheme:dark){.add-friend-modal .modal-description{color:#ffffffb3}.add-friend-modal .form-input{background-color:#ffffff0d;border-color:#fff3;color:#fff;color:var(--white-color)}.add-friend-modal .form-input::placeholder{color:#ffffff80}.add-friend-modal .form-input:focus{background-color:#ffffff14;border-color:#0071e3;border-color:var(--primary-color)}.add-friend-modal .form-input:hover:not(:focus):not(:disabled){background-color:#ffffff14;border-color:#ffffff4d}.add-friend-modal .form-input.error{background-color:#ff3b3014;background-color:rgba(var(--danger-color-rgb),.08)}}@media(prefers-contrast:high){.add-friend-modal .form-input{border-width:2px}.add-friend-modal .form-input:focus{box-shadow:0 0 0 2px #0071e3;box-shadow:0 0 0 2px var(--primary-color)}.add-friend-modal .form-input.error:focus{box-shadow:0 0 0 2px #ff3b30;box-shadow:0 0 0 2px var(--error-color)}}.friend-card{cursor:pointer;transition:transform .2s cubic-bezier(.25,.46,.45,.94),box-shadow .2s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-fast),box-shadow var(--transition-fast);width:100%}.friend-card:hover{box-shadow:0 .5rem 1rem #00000014;box-shadow:0 .5rem 1rem var(--shadow-medium)}.friend-card .friend-card-content{align-items:center;display:flex}.friend-card .friend-avatar{border-radius:8px;border-radius:var(--border-radius-md);flex-shrink:0;height:5rem;margin-right:1rem;overflow:hidden;width:5rem}.friend-card .friend-avatar img{height:100%;object-fit:cover;width:100%}.friend-card .friend-avatar .avatar-placeholder{align-items:center;background-color:#0071e3;background-color:var(--primary-color);color:#fff;color:var(--text-on-primary);display:flex;font-size:1.5rem;font-weight:600;height:100%;justify-content:center;width:100%}.friend-card .friend-info{flex:1 1;overflow:hidden}.friend-card .friend-info .friend-name{color:#1d1d1f;color:var(--text-color);font-size:1.125rem;font-weight:600;margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friend-card .friend-info .friend-username{color:#86868b;color:var(--text-secondary);font-size:.875rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friend-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(17.5rem,1fr));margin:0 1rem;width:100%}@media(max-width:48rem){.friend-grid{gap:1rem;grid-template-columns:repeat(auto-fill,minmax(13.75rem,1fr))}}.friend-grid .friend-card-wrapper{transition:transform .2s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-fast);width:100%}.friend-grid .friend-card-wrapper:hover{transform:translateY(-.25rem)}.friend-header{margin-bottom:2rem}.friend-header .friend-header-title{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.friend-header .friend-header-title h1{color:#1d1d1f;color:var(--text-color);font-size:2rem;font-weight:700;margin:0}.friend-header .friend-header-title .friend-header-actions{align-items:center;display:flex;gap:1rem}.friend-header .friend-header-title .friend-header-actions .search-container{position:relative;width:18.75rem}@media(max-width:48rem){.friend-header .friend-header-title .friend-header-actions .search-container{width:100%}}.friend-header .friend-header-title .friend-header-actions .search-container .search-icon{color:#86868b;color:var(--text-secondary);font-size:.9rem;left:.75rem;position:absolute;top:50%;transform:translateY(-50%)}.friend-header .friend-header-title .friend-header-actions .search-container .search-input{background-color:#fff;background-color:var(--card-background);border:none;border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 .0625rem .125rem #0000000d;color:#1d1d1f;color:var(--text-color);font-size:.9rem;padding:.75rem 1rem .75rem 2.5rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:100%}.friend-header .friend-header-title .friend-header-actions .search-container .search-input:focus{box-shadow:0 0 0 .125rem #0071e3;box-shadow:0 0 0 .125rem var(--primary-color);outline:none}.friend-header .friend-header-title .friend-header-actions .search-container .search-input::placeholder{color:#86868b;color:var(--text-secondary)}.friend-header .friend-header-filters{align-items:center;display:flex;justify-content:space-between}@media(max-width:48rem){.friend-header .friend-header-filters{align-items:flex-start;flex-direction:column;gap:1rem}}.friend-header .friend-header-filters .filter-tabs{display:flex;gap:.5rem}.friend-header .friend-header-filters .filter-tabs .filter-tab{background:none;border:none;border-radius:1.25rem;color:#86868b;color:var(--text-secondary);cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}.friend-header .friend-header-filters .filter-tabs .filter-tab:hover{background-color:#e8e8ed;background-color:var(--hover-color)}.friend-header .friend-header-filters .filter-tabs .filter-tab.active{background-color:#0071e3;background-color:var(--primary-color);color:#fff;color:var(--text-on-primary)}.friend-header .friend-header-filters .search-container{position:relative;width:15.625rem}@media(max-width:48rem){.friend-header .friend-header-filters .search-container{width:100%}}.friend-header .friend-header-filters .search-container .search-icon{color:#86868b;color:var(--text-secondary);font-size:.875rem;left:.75rem;position:absolute;top:50%;transform:translateY(-50%)}.friend-header .friend-header-filters .search-container .search-input{background-color:var(--input-background);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:1.25rem;color:#1d1d1f;color:var(--text-color);font-size:.875rem;padding:.5rem .5rem .5rem 2.25rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:100%}.friend-header .friend-header-filters .search-container .search-input:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 .1875rem #42a1ff;box-shadow:0 0 0 .1875rem var(--primary-color-light);outline:none}.friend-header .friend-header-filters .search-container .search-input::placeholder{color:var(--text-placeholder)}.friends-loading-skeleton{width:100%}.friends-loading-skeleton .skeleton-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.friends-loading-skeleton .skeleton-header .skeleton-title{animation:pulse 1.5s ease-in-out infinite;background-color:#e0e0e0;background-color:var(--skeleton-color);border-radius:6px;border-radius:var(--border-radius-sm);height:2.25rem;width:9.375rem}.friends-loading-skeleton .skeleton-header .skeleton-actions{display:flex;gap:1rem}.friends-loading-skeleton .skeleton-header .skeleton-actions .skeleton-button{animation:pulse 1.5s ease-in-out infinite;background-color:#e0e0e0;background-color:var(--skeleton-color);border-radius:1.125rem;height:2.25rem;width:7.5rem}.friends-loading-skeleton .skeleton-filters{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.friends-loading-skeleton .skeleton-filters .skeleton-tabs{display:flex;gap:.5rem}.friends-loading-skeleton .skeleton-filters .skeleton-tabs .skeleton-tab{animation:pulse 1.5s ease-in-out infinite;background-color:#e0e0e0;background-color:var(--skeleton-color);border-radius:1rem;height:2rem;width:5rem}.friends-loading-skeleton .skeleton-filters .skeleton-search{animation:pulse 1.5s ease-in-out infinite;background-color:#e0e0e0;background-color:var(--skeleton-color);border-radius:1.125rem;height:2.25rem;width:12.5rem}.friends-loading-skeleton .skeleton-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(17.5rem,1fr))}@media(max-width:48rem){.friends-loading-skeleton .skeleton-grid{gap:1rem;grid-template-columns:repeat(auto-fill,minmax(13.75rem,1fr))}}.friends-loading-skeleton .skeleton-grid .skeleton-card{align-items:center;background-color:#fff;background-color:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .125rem .5rem #0000000d;box-shadow:0 .125rem .5rem var(--shadow-light);display:flex;height:5.625rem;padding:1rem}.friends-loading-skeleton .skeleton-grid .skeleton-card .skeleton-avatar{animation:pulse 1.5s ease-in-out infinite;background-color:#e0e0e0;background-color:var(--skeleton-color);border-radius:50%;height:3.75rem;margin-right:1rem;width:3.75rem}.friends-loading-skeleton .skeleton-grid .skeleton-card .skeleton-content{flex:1 1}.friends-loading-skeleton .skeleton-grid .skeleton-card .skeleton-content .skeleton-name{animation:pulse 1.5s ease-in-out infinite;background-color:#e0e0e0;background-color:var(--skeleton-color);border-radius:6px;border-radius:var(--border-radius-sm);height:1.25rem;margin-bottom:.5rem;width:70%}.friends-loading-skeleton .skeleton-grid .skeleton-card .skeleton-content .skeleton-username{animation:pulse 1.5s ease-in-out infinite;background-color:#e0e0e0;background-color:var(--skeleton-color);border-radius:6px;border-radius:var(--border-radius-sm);height:1rem;width:50%}.friend-profile-header{align-items:center;background-color:#fff;background-color:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .125rem .5rem #00000014;box-shadow:0 .125rem .5rem var(--shadow-medium);display:flex;margin-bottom:2rem;padding:1rem}.friend-profile-header .friend-avatar{border-radius:15%;flex-shrink:0;height:7rem;margin-right:1.5rem;overflow:hidden;width:7rem}.friend-profile-header .friend-avatar img{height:100%;object-fit:cover;width:100%}.friend-profile-header .friend-avatar .avatar-placeholder{align-items:center;background-color:#0071e3;background-color:var(--primary-color);color:#fff;color:var(--text-on-primary);display:flex;font-size:2.5rem;font-weight:600;height:100%;justify-content:center;width:100%}.friend-profile-header .friend-info{flex:1 1}.friend-profile-header .friend-info .friend-name{color:#1d1d1f;color:var(--text-color);font-size:1.75rem;font-weight:600;margin:0 0 .5rem}.friend-profile-header .friend-info .friend-username{color:#86868b;color:var(--text-secondary);font-size:1.125rem;margin:0}.friend-profile-header .friend-actions{align-items:flex-start;display:flex;gap:.625rem;margin-left:auto;padding-left:1rem}@media(max-width:62rem){.friend-profile-header .friend-actions{margin-top:1rem;padding-left:0}}.friend-profile-header .friend-actions .options-menu-container{position:relative}.friend-profile-header .friend-actions .options-menu-container .options-menu{backdrop-filter:blur(.625rem);-webkit-backdrop-filter:blur(.625rem);background-color:#fff;background-color:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .5rem 1.5rem #00000026;margin-top:.5rem;min-width:12.5rem;overflow:hidden;position:absolute;right:0;top:100%;z-index:100}.friend-profile-header .friend-actions .options-menu-container .options-menu button{align-items:center;background:none;border:none;color:#1d1d1f;color:var(--text-color);cursor:pointer;display:flex;font-size:.9375rem;padding:.875rem 1.25rem;text-align:left;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:100%}.friend-profile-header .friend-actions .options-menu-container .options-menu button svg{font-size:1.125rem;margin-right:.75rem}.friend-profile-header .friend-actions .options-menu-container .options-menu button:hover{background-color:#e8e8ed;background-color:var(--hover-color);transform:translateX(.125rem)}.friend-profile-header .friend-actions .options-menu-container .options-menu button.delete-option{color:#ff3b30;color:var(--error-color)}.friend-profile-header .friend-actions .options-menu-container .options-menu button.delete-option:hover{background-color:#ff3b301a;background-color:rgba(var(--danger-color-rgb),.1)}@media(max-width:48rem){.friend-profile-header{flex-direction:column;text-align:center}.friend-profile-header .friend-avatar{margin-bottom:1rem;margin-right:0}}.friend-detail-skeleton{animation:fadeIn ease-out .3s cubic-bezier(.25,.46,.45,.94);animation:fadeIn var(--transition-normal) ease-out;padding:1rem;width:100%}.friend-detail-skeleton .back-button-skeleton .back-text-skeleton,.friend-detail-skeleton .friend-profile-header-skeleton .friend-actions-skeleton .action-button-skeleton,.friend-detail-skeleton .friend-profile-header-skeleton .friend-avatar-skeleton,.friend-detail-skeleton .friend-profile-header-skeleton .friend-info-skeleton .friend-name-skeleton,.friend-detail-skeleton .friend-profile-header-skeleton .friend-info-skeleton .friend-username-skeleton,.friend-detail-skeleton .tab-content-skeleton.albums-tab-skeleton .albums-grid-skeleton .album-card-skeleton .album-cover-skeleton,.friend-detail-skeleton .tab-content-skeleton.photos-tab-skeleton .photos-grid-skeleton .photo-item-skeleton .photo-container-skeleton,.friend-detail-skeleton .tab-content-skeleton.photos-tab-skeleton .photos-grid-skeleton .photo-item-skeleton .photo-title-skeleton,.friend-detail-skeleton .tabs-skeleton .tab-button-skeleton .tab-text-skeleton{animation:shimmer 2s linear infinite;background:linear-gradient(90deg,#f5f5f7 25%,#e8e8ed 50%,#f5f5f7 75%);background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-200) 50%,var(--gray-100) 75%);background-size:62.5rem 100%;border-radius:6px;border-radius:var(--border-radius-sm)}.friend-detail-skeleton .back-button-skeleton{align-items:center;display:flex;margin-bottom:1.5rem}.friend-detail-skeleton .back-button-skeleton .back-icon{color:#0071e3;color:var(--primary-color);font-size:1rem;margin-right:.5rem;opacity:.7}.friend-detail-skeleton .back-button-skeleton .back-text-skeleton{height:1rem;width:5rem}.friend-detail-skeleton .friend-profile-header-skeleton{align-items:center;background-color:#fff;background-color:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .125rem .5rem #0000000d;box-shadow:0 .125rem .5rem var(--shadow-light);display:flex;margin-bottom:2rem;padding:1rem}.friend-detail-skeleton .friend-profile-header-skeleton .friend-avatar-skeleton{border-radius:50%;flex-shrink:0;height:6.25rem;margin-right:1.5rem;width:6.25rem}.friend-detail-skeleton .friend-profile-header-skeleton .friend-info-skeleton{flex:1 1}.friend-detail-skeleton .friend-profile-header-skeleton .friend-info-skeleton .friend-name-skeleton{height:1.75rem;margin-bottom:.75rem;width:60%}.friend-detail-skeleton .friend-profile-header-skeleton .friend-info-skeleton .friend-username-skeleton{height:1.125rem;width:40%}.friend-detail-skeleton .friend-profile-header-skeleton .friend-actions-skeleton{display:flex;gap:.75rem;margin-left:auto}.friend-detail-skeleton .friend-profile-header-skeleton .friend-actions-skeleton .action-button-skeleton{border-radius:8px;border-radius:var(--border-radius-md);height:2.5rem;width:2.5rem}@media(max-width:48rem){.friend-detail-skeleton .friend-profile-header-skeleton{flex-direction:column;text-align:center}.friend-detail-skeleton .friend-profile-header-skeleton .friend-avatar-skeleton{margin-bottom:1rem;margin-right:0}.friend-detail-skeleton .friend-profile-header-skeleton .friend-actions-skeleton{justify-content:center;margin-left:0;margin-top:1rem}}.friend-detail-skeleton .tabs-skeleton{border-bottom:.0625rem solid #d2d2d7;border-bottom:.0625rem solid var(--border-color);display:flex;margin-bottom:1.5rem}.friend-detail-skeleton .tabs-skeleton .tab-button-skeleton{align-items:center;color:#86868b;color:var(--text-secondary);display:flex;font-size:1rem;opacity:.7;padding:.75rem 1.25rem}.friend-detail-skeleton .tabs-skeleton .tab-button-skeleton svg{font-size:1.125rem;margin-right:.5rem}.friend-detail-skeleton .tabs-skeleton .tab-button-skeleton .tab-text-skeleton{height:1rem;width:6.25rem}.friend-detail-skeleton .tabs-skeleton .tab-button-skeleton.active{border-bottom:.125rem solid #0071e3;border-bottom:.125rem solid var(--primary-color);color:#0071e3;color:var(--primary-color)}.friend-detail-skeleton .tab-content-skeleton{animation:fadeIn ease-out .3s cubic-bezier(.25,.46,.45,.94);animation:fadeIn var(--transition-normal) ease-out;min-height:18.75rem}.friend-detail-skeleton .tab-content-skeleton.photos-tab-skeleton .photos-grid-skeleton{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(11.25rem,1fr))}.friend-detail-skeleton .tab-content-skeleton.photos-tab-skeleton .photos-grid-skeleton .photo-item-skeleton{animation:fadeIn ease-out .5s cubic-bezier(.25,.46,.45,.94) both;animation:fadeIn var(--transition-slow) ease-out both;background-color:#fff;background-color:var(--card-background);border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 .0625rem .1875rem #0000000d;box-shadow:0 .0625rem .1875rem var(--shadow-light);display:flex;flex-direction:column;overflow:hidden}.friend-detail-skeleton .tab-content-skeleton.photos-tab-skeleton .photos-grid-skeleton .photo-item-skeleton .photo-container-skeleton{aspect-ratio:1;border-radius:0;width:100%}.friend-detail-skeleton .tab-content-skeleton.photos-tab-skeleton .photos-grid-skeleton .photo-item-skeleton .photo-title-skeleton{height:1rem;margin:.75rem}@media(max-width:48rem){.friend-detail-skeleton .tab-content-skeleton.photos-tab-skeleton .photos-grid-skeleton{grid-template-columns:repeat(auto-fill,minmax(8.75rem,1fr))}}.friend-detail-skeleton .tab-content-skeleton.albums-tab-skeleton .albums-grid-skeleton{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr))}.friend-detail-skeleton .tab-content-skeleton.albums-tab-skeleton .albums-grid-skeleton .album-card-skeleton{animation:fadeIn ease-out .5s cubic-bezier(.25,.46,.45,.94) both;animation:fadeIn var(--transition-slow) ease-out both;aspect-ratio:.75;background-color:#fff;background-color:var(--card-background);border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 .0625rem .1875rem #0000000d;box-shadow:0 .0625rem .1875rem var(--shadow-light);overflow:hidden;position:relative;width:100%}.friend-detail-skeleton .tab-content-skeleton.albums-tab-skeleton .albums-grid-skeleton .album-card-skeleton .album-cover-skeleton{border-radius:0;height:100%;width:100%}.friend-detail-skeleton .tab-content-skeleton.albums-tab-skeleton .albums-grid-skeleton .album-card-skeleton .album-info-overlay-skeleton{background:linear-gradient(to top,var(--overlay-dark),var(--overlay-medium),#0000);bottom:0;left:0;padding:1rem;position:absolute;right:0}.friend-detail-skeleton .tab-content-skeleton.albums-tab-skeleton .albums-grid-skeleton .album-card-skeleton .album-info-overlay-skeleton .album-title-skeleton{animation:shimmer 2s linear infinite;background:linear-gradient(90deg,#fffc 25%,#fff9 50%,#fffc 75%);background-size:62.5rem 100%;border-radius:6px;border-radius:var(--border-radius-sm);height:1.125rem;margin-bottom:.25rem}.friend-detail-skeleton .tab-content-skeleton.albums-tab-skeleton .albums-grid-skeleton .album-card-skeleton .album-info-overlay-skeleton .album-photo-count-skeleton{animation:shimmer 2s linear infinite;background:linear-gradient(90deg,#ffffffb3 25%,#ffffff80 50%,#ffffffb3 75%);background-size:62.5rem 100%;border-radius:6px;border-radius:var(--border-radius-sm);height:.875rem}@media(max-width:48rem){.friend-detail-skeleton .tab-content-skeleton.albums-tab-skeleton .albums-grid-skeleton{gap:1rem;grid-template-columns:repeat(auto-fill,minmax(11.25rem,1fr))}}.back-button-container{padding:.5rem 0}.back-button-container .back-button{align-items:center;background-color:#0000;border:none;color:#0071e3;color:var(--primary-color);cursor:pointer;display:flex;font-size:.9375rem;padding:.5rem 0;transition:color .2s cubic-bezier(.25,.46,.45,.94);transition:color var(--transition-fast)}.back-button-container .back-button svg{font-size:1rem;margin-right:.5rem}.back-button-container .back-button:hover{color:#0068d1;color:var(--primary-color-active);text-decoration:underline}.friend-detail-page{width:100%}.friend-detail-page .content-tabs{border-bottom:1px solid #d2d2d7;border-bottom:1px solid var(--border-color);display:flex;margin-bottom:1.5rem}.friend-detail-page .content-tabs .tab-button{align-items:center;background-color:#0000;border:none;border-bottom:2px solid #0000;color:#86868b;color:var(--text-secondary);cursor:pointer;display:flex;font-size:1rem;font-weight:500;padding:.75rem 1.25rem;transition:all .2s ease}.friend-detail-page .content-tabs .tab-button svg{font-size:1.125rem;margin-right:.5rem}.friend-detail-page .content-tabs .tab-button:hover{color:#1d1d1f;color:var(--text-color)}.friend-detail-page .content-tabs .tab-button.active{border-bottom-color:#0071e3;border-bottom-color:var(--primary-color);color:#0071e3;color:var(--primary-color)}.friend-detail-page .tab-content{min-height:18.75rem}.friend-detail-page .tab-content .photos-content{display:flex;flex-direction:column;gap:1.5rem}.friend-detail-page .tab-content .photos-content .friend-photo-filter-bar{align-items:center;display:flex;gap:.5rem;margin-bottom:1rem;overflow-x:auto;padding-bottom:.5rem}.friend-detail-page .tab-content .photos-content .friend-photo-filter-bar::-webkit-scrollbar{height:.25rem}.friend-detail-page .tab-content .photos-content .friend-photo-filter-bar::-webkit-scrollbar-track{background:#0000}.friend-detail-page .tab-content .photos-content .friend-photo-filter-bar::-webkit-scrollbar-thumb{background-color:#0000000d;background-color:var(--shadow-light);border-radius:6px;border-radius:var(--border-radius-sm)}.friend-detail-page .albums-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));width:100%}@media(max-width:48rem){.friend-detail-page .albums-grid{gap:1rem;grid-template-columns:repeat(auto-fill,minmax(11.25rem,1fr))}}.friend-detail-page .album-card,.friend-detail-page .album-card-wrapper{width:100%}.friend-detail-page .album-card .album-cover{aspect-ratio:.75;border-radius:8px;border-radius:var(--border-radius-md);overflow:hidden;position:relative;width:100%}.friend-detail-page .album-card .album-cover img{height:100%;object-fit:cover;width:100%}.friend-detail-page .album-card .album-cover .album-info-overlay{background:linear-gradient(0deg,#000c,#0006,#0000);bottom:0;color:#fff;color:var(--white);left:0;padding:1rem;position:absolute;right:0}.friend-detail-page .album-card .album-cover .album-info-overlay .album-title{font-size:1.125rem;font-weight:600;margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friend-detail-page .album-card .album-cover .album-info-overlay .album-photo-count{font-size:.875rem;margin:0;opacity:.9}.remove-friend-modal .confirmation-message{color:#86868b;color:var(--text-secondary);margin-bottom:1.5rem}.remove-friend-modal .modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.share-modal .share-tabs{border-bottom:1px solid #d2d2d7;border-bottom:1px solid var(--border-color);display:flex;margin-bottom:1.5rem}.share-modal .share-tabs .share-tab-button{background-color:#0000;border:none;border-bottom:2px solid #0000;color:#86868b;color:var(--text-secondary);cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.25rem;transition:all .2s ease}.share-modal .share-tabs .share-tab-button:hover{color:#1d1d1f;color:var(--text-color)}.share-modal .share-tabs .share-tab-button.active{border-bottom-color:#0071e3;border-bottom-color:var(--primary-color);color:#0071e3;color:var(--primary-color)}.share-modal .share-content{margin-bottom:1.5rem;min-height:12.5rem}.share-modal .share-content .share-description{color:#86868b;color:var(--text-secondary);margin-bottom:1rem}.share-modal .selectable-albums-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr))}.share-modal .selectable-album-card{cursor:pointer}.share-modal .selectable-album-card.selected{outline:.125rem solid #0071e3;outline:.125rem solid var(--primary-color);outline-offset:.125rem}.share-modal .modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.delete-confirmation-modal .confirmation-message{color:#86868b;color:var(--text-secondary);margin-bottom:1.5rem}.delete-confirmation-modal .modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.add-to-album-modal{display:flex;flex-direction:column;height:100%;position:relative}.add-to-album-modal .search-container{margin-bottom:1rem;margin-bottom:var(--spacing-md)}.add-to-album-modal .search-container .search-input-wrapper{position:relative}.add-to-album-modal .search-container .search-input-wrapper .search-icon{color:#86868b;color:var(--text-secondary);left:.75rem;position:absolute;top:50%;transform:translateY(-50%)}.add-to-album-modal .search-container .search-input-wrapper .search-input{background-color:#f5f5f7;background-color:var(--gray-100);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);font-size:1rem;padding:.75rem .75rem .75rem 2.5rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:100%}.add-to-album-modal .search-container .search-input-wrapper .search-input:focus{background-color:#fff;background-color:var(--white-color);border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 .1875rem #0071e333;box-shadow:0 0 0 .1875rem rgba(var(--primary-color-rgb),.2);outline:none}.add-to-album-modal .search-container .search-input-wrapper .search-input::placeholder,.add-to-album-modal .selected-count{color:#86868b;color:var(--text-secondary)}.add-to-album-modal .selected-count{font-size:.9375rem;margin-bottom:1rem;margin-bottom:var(--spacing-md);text-align:center}.add-to-album-modal .albums-grid{grid-gap:1rem;grid-gap:var(--spacing-md);display:grid;gap:1rem;gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));margin-bottom:1.25rem;margin-bottom:var(--spacing-lg);max-height:25rem;overflow-y:auto;padding:.25rem}.add-to-album-modal .albums-grid .create-new-album{align-items:center;background-color:#f5f5f7;background-color:var(--gray-100);border-radius:12px;border-radius:var(--border-radius-lg);cursor:pointer;display:flex;flex-direction:column;height:10rem;justify-content:center;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast)}.add-to-album-modal .albums-grid .create-new-album:focus,.add-to-album-modal .albums-grid .create-new-album:hover{background-color:#e8e8ed;background-color:var(--gray-200);box-shadow:0 .375rem .75rem #00000014;box-shadow:0 .375rem .75rem var(--shadow-medium);transform:translateY(-.125rem)}.add-to-album-modal .albums-grid .create-new-album:focus{outline:.125rem solid #0071e3;outline:.125rem solid var(--primary-color);outline-offset:.125rem}.add-to-album-modal .albums-grid .create-new-album .create-album-icon{align-items:center;background-color:#fff;background-color:var(--white-color);border-radius:50%;color:#0071e3;color:var(--primary-color);display:flex;font-size:1.25rem;height:3rem;justify-content:center;margin-bottom:.5rem;margin-bottom:var(--spacing-sm);width:3rem}.add-to-album-modal .albums-grid .create-new-album .create-album-text{color:#1d1d1f;color:var(--text-color);font-size:.9375rem;font-weight:500}.add-to-album-modal .albums-grid .album-selection-card{border-radius:12px;border-radius:var(--border-radius-lg);overflow:hidden;transition:transform .2s cubic-bezier(.25,.46,.45,.94),box-shadow .2s cubic-bezier(.25,.46,.45,.94);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.add-to-album-modal .albums-grid .album-selection-card:hover{box-shadow:0 .375rem .75rem #00000014;box-shadow:0 .375rem .75rem var(--shadow-medium);transform:translateY(-.125rem)}.add-to-album-modal .albums-grid .album-selection-card.selected{border:.125rem solid #0071e3;border:.125rem solid var(--primary-color)}.add-to-album-modal .albums-grid .album-selection-card.selected .album-selection-indicator{align-items:center;background-color:#0071e3;background-color:var(--primary-color);border-radius:50%;color:#fff;color:var(--text-on-primary);display:flex;height:1.5rem;justify-content:center;position:absolute;right:.5rem;top:.5rem;width:1.5rem}.add-to-album-modal .albums-grid .album-selection-card.selected .album-selection-indicator .selection-check{background-color:#fff;background-color:var(--white-color);border-radius:50%;height:.75rem;width:.75rem}.add-to-album-modal .albums-grid .error-state,.add-to-album-modal .albums-grid .no-results{align-items:center;background-color:#f5f5f7;background-color:var(--gray-100);border-radius:12px;border-radius:var(--border-radius-lg);color:#86868b;color:var(--text-secondary);display:flex;flex-direction:column;gap:1rem;gap:var(--spacing-md);grid-column:1/-1;padding:1.5rem;text-align:center}.add-to-album-modal .albums-grid .error-state{background-color:var(--error-bg-light);border:.0625rem solid var(--error-color-light);color:#ff3b30;color:var(--error-color)}.add-to-album-modal .albums-grid .album-skeleton{border-radius:12px;border-radius:var(--border-radius-lg);height:10rem;overflow:hidden}.add-to-album-modal .modal-actions{border-top:.0625rem solid #d2d2d7;border-top:.0625rem solid var(--border-color);display:flex;gap:.75rem;justify-content:flex-end;margin-top:auto;padding-top:1rem;padding-top:var(--spacing-md)}@media(max-width:48rem){.add-to-album-modal .albums-grid{grid-template-columns:repeat(auto-fill,minmax(8.75rem,1fr));max-height:20rem}.add-to-album-modal .albums-grid .create-new-album{height:8.75rem}.add-to-album-modal .albums-grid .create-new-album .create-album-icon{font-size:1.125rem;height:2.5rem;width:2.5rem}.add-to-album-modal .albums-grid .create-new-album .create-album-text{font-size:.875rem}}.add-to-album-modal .toast{animation:slide-down ease-out .2s cubic-bezier(.25,.46,.45,.94) forwards;animation:slide-down var(--transition-fast) ease-out forwards;left:50%;max-width:90%;min-width:60%;position:absolute;top:1rem;top:var(--spacing-md);transform:translateX(-50%);width:auto;z-index:10}@keyframes slide-down{0%{opacity:0;transform:translate(-50%,-1rem)}to{opacity:1;transform:translate(-50%)}}.referral-modal-overlay{align-items:center;animation:fadeIn .3s cubic-bezier(.25,.46,.45,.94);animation:fadeIn var(--transition-normal);-webkit-backdrop-filter:blur(.625rem);backdrop-filter:blur(.625rem);background:#0006;background:var(--overlay-background);bottom:0;display:flex;justify-content:center;left:0;padding:1.25rem;position:fixed;right:0;top:0;z-index:1000}@media(max-width:48rem){.referral-modal-overlay{align-items:flex-end;padding:0}}.referral-modal{animation:slideUp .4s cubic-bezier(.34,1.56,.64,1);background:#fff;background:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 1.25rem 3.75rem #00000014;box-shadow:0 1.25rem 3.75rem var(--shadow-medium);max-height:90vh;max-width:26.25rem;overflow:hidden;width:100%}@media(max-width:48rem){.referral-modal{animation:slideUpMobile .4s cubic-bezier(.34,1.56,.64,1);border-radius:12px 12px 0 0;border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0;max-height:85vh}}.referral-modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem;padding:1.5rem 1.5rem 0}@media(max-width:48rem){.referral-modal-header{padding:1.25rem 1.25rem 0}}.referral-modal-title{color:#1d1d1f;color:var(--text-color);font-size:1.375rem;font-weight:600;letter-spacing:-.03em;line-height:1.2;margin:0}@media(max-width:48rem){.referral-modal-title{font-size:1.25rem}}.referral-modal-close{border-radius:50%;color:#86868b;color:var(--text-secondary);font-size:1rem;height:2rem;width:2rem}.referral-modal-content{padding:1rem 1.5rem 1.5rem}@media(max-width:48rem){.referral-modal-content{padding:.75rem 1.25rem 1.25rem}}.referral-success{align-items:center;animation:fadeInUp .5s ease-out;display:flex;flex-direction:column;padding:.75rem 0;text-align:center}.success-icon{align-items:center;animation:bounceIn .6s cubic-bezier(.68,-.55,.265,1.55);background:linear-gradient(135deg,#34c759,#30d158);background:linear-gradient(135deg,var(--success-color),#30d158);border-radius:50%;box-shadow:0 .5rem 1.25rem #34c7594d;display:flex;height:4rem;justify-content:center;margin-bottom:1.25rem;width:4rem}.success-icon svg{color:#fff;color:var(--white);font-size:1.5rem}.success-content{margin-bottom:1.75rem}.success-message{color:#1d1d1f;color:var(--text-color);font-size:1.0625rem;font-weight:500;line-height:1.3;margin:0 0 .5rem}.success-description{color:#86868b;color:var(--text-secondary);font-size:.9375rem;line-height:1.4;margin:0}.success-actions{display:flex;flex-direction:column;gap:.75rem;width:100%}.referral-form{animation:fadeInUp .4s ease-out}.form-description{margin-bottom:1.75rem}.description-text{color:#86868b;color:var(--text-secondary);font-size:.9375rem;line-height:1.5;margin:0;text-align:center}.description-text strong{color:#1d1d1f;color:var(--text-color);font-weight:600}.form-group{margin-bottom:1.5rem}.form-label{color:#1d1d1f;color:var(--text-color);display:block;font-size:.9375rem;font-weight:500;letter-spacing:-.01em;margin-bottom:.5rem}.input-container{position:relative}.input-icon{color:#86868b;color:var(--text-secondary);font-size:1rem;left:1rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);z-index:1}.form-input{background:#f5f5f7;background:var(--light-bg-color);border:.09375rem solid #d2d2d7;border:.09375rem solid var(--border-color);border-radius:12px;border-radius:var(--border-radius-lg);box-sizing:border-box;font-size:1.0625rem;padding:1rem 1rem 1rem 3rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:100%}.form-input:focus{background:#fff;background:var(--white);border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 .25rem #0071e31a;box-shadow:0 0 0 .25rem rgba(var(--primary-color-rgb),.1);outline:none}.form-input.error{background:#fff5f5}.form-input.error,.form-input.error:focus{border-color:#ff3b30;border-color:var(--error-color)}.form-input.error:focus{box-shadow:0 0 0 .25rem #ff3b301a;box-shadow:0 0 0 .25rem rgba(var(--danger-color-rgb),.1)}.form-input::placeholder{color:#bbb;color:var(--gray-400)}.form-input:disabled{background:#e8e8ed;background:var(--gray-200);color:#86868b;color:var(--text-secondary);cursor:not-allowed}@media(max-width:48rem){.form-input{font-size:1rem}}.error-message{animation:slideInError .3s ease-out;font-size:.875rem;font-weight:500;margin-top:.375rem;padding-left:.25rem}.form-actions{display:flex;flex-direction:column;gap:.75rem;margin-top:1.75rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(1.25rem)}to{opacity:1;transform:translateY(0)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes slideInError{0%{opacity:0;transform:translateY(-.625rem)}to{opacity:1;transform:translateY(0)}}.profile-page-layout{background-color:#f5f5f7;min-height:100vh;transition:background-color .3s cubic-bezier(.25,.46,.45,.94)}.profile-page-layout h2{color:#1d1d1f;color:var(--text-color);font-size:1.4rem;font-weight:600;letter-spacing:-.01em;margin-bottom:.5rem}.profile-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.25rem}.profile-header h1{color:#1d1d1f;color:var(--text-color);font-size:2rem;font-weight:700;margin:0}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.info-item:hover,.profile-photo:hover{transform:none}}.photo-picker-overlay{align-items:center;animation:fadeIn .3s cubic-bezier(.25,.46,.45,.94);animation:fadeIn var(--transition-normal);-webkit-backdrop-filter:blur(.5rem);backdrop-filter:blur(.5rem);background:#0006;background:var(--overlay-background);bottom:0;display:flex;justify-content:center;left:0;padding:1.25rem;position:fixed;right:0;top:0;z-index:1000}@media(max-width:48rem){.photo-picker-overlay{align-items:flex-end;padding:0}}.photo-picker-modal{animation:slideUp .3s cubic-bezier(.25,.46,.45,.94);animation:slideUp var(--transition-normal);background:#fff;background:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 1.25rem 3.75rem #00000014;box-shadow:0 1.25rem 3.75rem var(--shadow-medium);max-height:90vh;max-width:26.25rem;overflow:hidden;width:100%}@media(max-width:48rem){.photo-picker-modal{animation:slideUpMobile .3s cubic-bezier(.25,.46,.45,.94);animation:slideUpMobile var(--transition-normal);border-radius:12px 12px 0 0;border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0;max-height:80vh}}.photo-picker-header{align-items:center;border-bottom:.0625rem solid #d2d2d7;border-bottom:.0625rem solid var(--border-color);display:flex;justify-content:space-between;padding:1.5rem 1.5rem 1rem}@media(max-width:48rem){.photo-picker-header{padding:1.25rem 1.25rem .75rem}}.photo-picker-title{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;font-weight:600;letter-spacing:-.02em;margin:0}@media(max-width:48rem){.photo-picker-title{font-size:1.125rem}}.photo-picker-close{align-items:center;border-radius:50%;color:#86868b;color:var(--text-secondary);display:flex;font-size:1.125rem;height:2.25rem;justify-content:center;width:2.25rem}.photo-picker-close span{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.photo-picker-content{padding:.5rem 1.5rem 1.5rem}@media(max-width:48rem){.photo-picker-content{padding:.5rem 1.25rem 1.25rem}}.photo-picker-subtitle{color:#86868b;color:var(--text-secondary);font-size:.9375rem;line-height:1.4;margin:0 0 1.5rem;text-align:center}@media(max-width:48rem){.photo-picker-subtitle{font-size:.875rem;margin-bottom:1.25rem}}.photo-picker-options{display:flex;flex-direction:column;gap:.75rem}.photo-picker-option{align-items:center;display:flex;padding:1rem;text-align:left;width:100%}@media(max-width:48rem){.photo-picker-option{padding:.875rem}}.photo-option-icon{align-items:center;border-radius:.625rem;display:flex;flex-shrink:0;font-size:1.125rem;height:2.75rem;justify-content:center;margin-right:1rem;width:2.75rem}.photo-option-icon.gallery-icon{background:linear-gradient(135deg,#34c759,#28a745);background:linear-gradient(135deg,var(--success-color),#28a745);color:#fff;color:var(--white)}@media(max-width:48rem){.photo-option-icon{font-size:1rem;height:2.5rem;margin-right:.75rem;width:2.5rem}}.photo-option-content{flex:1 1}.photo-option-title{color:#1d1d1f;color:var(--text-color);font-size:1rem;font-weight:600;letter-spacing:-.01em;margin:0 0 .25rem}@media(max-width:48rem){.photo-option-title{font-size:.9375rem}}.photo-option-description{color:#86868b;color:var(--text-secondary);font-size:.875rem;line-height:1.3;margin:0}@media(max-width:48rem){.photo-option-description{font-size:.8125rem}}.photo-upload-progress{align-items:center;background:#f5f5f7;background:var(--light-bg-color);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:12px;border-radius:var(--border-radius-lg);display:flex;flex-direction:column;margin-top:1rem;padding:1.5rem}.upload-spinner{animation:spin 1s linear infinite;border:.1875rem solid #d2d2d7;border-top:.1875rem solid #0071e3;border:.1875rem solid var(--border-color);border-radius:50%;border-top-color:var(--primary-color);height:2rem;margin-bottom:.75rem;width:2rem}.upload-text{color:#86868b;color:var(--text-secondary);font-size:.9375rem;margin:0;text-align:center}.photo-picker-footer{border-top:.0625rem solid #d2d2d7;border-top:.0625rem solid var(--border-color);padding:1rem 1.5rem 1.5rem}@media(max-width:48rem){.photo-picker-footer{padding:.75rem 1.25rem 1.25rem}}@keyframes slideUpMobile{0%{transform:translateY(100%)}to{transform:translateY(0)}}.profile-view{background-color:#fff;background-color:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .125rem .75rem #0000000d;box-shadow:0 .125rem .75rem var(--shadow-light);display:flex;flex-direction:column;gap:1.25rem;padding:1.25rem;width:100%}.profile-header-row{align-items:center}.profile-header-row .profile-photo{border:.125rem solid #fff;border:.125rem solid var(--white);border-radius:20%;box-shadow:0 .125rem .5rem #0000000d;box-shadow:0 .125rem .5rem var(--shadow-light);flex-shrink:0;height:10rem;margin-right:2rem;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.25,.46,.45,.94);width:10rem}.profile-header-row .profile-photo:hover{transform:scale(1.02)}.profile-header-row .profile-photo .profile-img{height:100%;object-fit:cover;width:100%}.profile-header-row .profile-photo .profile-placeholder{align-items:center;background:linear-gradient(135deg,#f5f5f7,#e8e8ed);background:linear-gradient(135deg,var(--gray-100),var(--gray-200));color:#86868b;color:var(--gray-500);display:flex;font-size:1.5rem;height:100%;justify-content:center;width:100%}.profile-header-row .profile-info{flex:1 1}.profile-header-row .profile-info .profile-name{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;font-weight:600;letter-spacing:-.01em;line-height:1.2;margin:0 0 .25rem}.profile-header-row .profile-info .profile-username{color:#86868b;color:var(--text-secondary);font-size:.875rem;font-weight:500;margin:0;opacity:.8}@media(max-width:576px){.profile-header-row{gap:1rem}.profile-header-row .profile-photo{height:3.5rem;width:3.5rem}.profile-header-row .profile-info .profile-name{font-size:1.125rem}.profile-header-row .profile-info .profile-username{font-size:.8125rem}}.info-item{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:.5rem 0;transition:background-color .2s cubic-bezier(.25,.46,.45,.94);width:100%}.info-item:hover{background-color:#e8e8ed;background-color:var(--hover-color)}.info-item:focus{outline:.125rem solid #0071e3;outline:.125rem solid var(--primary-color);outline-offset:.125rem}.info-item-content{align-items:center;display:flex;gap:.5rem;width:80%}.info-icon{font-size:1.125rem;min-width:1.125rem}.info-icon,.info-label{color:#86868b;color:var(--text-secondary)}.info-label{display:block;font-size:.75rem;margin-bottom:.25rem}.info-value{color:#1d1d1f;color:var(--text-color);font-size:1rem;margin:0;word-break:break-word}.info-chevron{color:#86868b;color:var(--gray-500);font-size:.875rem}.form-divider{background-color:#d2d2d7;background-color:var(--border-color);height:.0625rem;margin:.25rem 0;width:100%}@media(max-width:768px){.info-item-content{width:70%}.info-value{font-size:.9375rem}}.edit-profile{background-color:#fff;background-color:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .125rem .75rem #0000000d;box-shadow:0 .125rem .75rem var(--shadow-light);display:flex;flex-direction:column;gap:1.25rem;padding:1.25rem;width:100%}.form-group{margin-bottom:1rem;width:100%}.edit-info-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.5rem}.edit-info-header label{color:#1d1d1f;color:var(--text-color);font-size:.875rem;font-weight:500}.disabled-note{color:#86868b;color:var(--gray-500);font-size:.75rem;margin-left:auto}.info-input{border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);font-size:1rem;padding:.625rem .75rem;transition:border-color .2s cubic-bezier(.25,.46,.45,.94);width:100%}.info-input:focus{border-color:#0071e3;border-color:var(--primary-color);outline:none}.info-input.error-input{border-color:#ff3b30;border-color:var(--error-color)}.info-input.disabled-input{background-color:#f5f5f7;background-color:var(--gray-100);color:#86868b;color:var(--gray-500);cursor:not-allowed}.error-message{align-items:center;color:#ff3b30;color:var(--error-color);display:flex;font-size:.75rem;gap:.25rem;margin-top:.25rem}.profile-header-row{align-items:flex-start;display:flex;flex-direction:row;gap:1.25rem;margin-bottom:1.25rem;padding:1rem 0}@media(max-width:768px){.profile-header-row{align-items:center;flex-direction:column}}.profile-photo-container{align-items:center;display:flex;flex-direction:column;flex-shrink:0;margin-right:1.25rem}@media(max-width:768px){.profile-photo-container{margin-bottom:1rem;margin-right:0}}.profile-photo{border:.125rem solid #fff;border:.125rem solid var(--white);border-radius:20%;box-shadow:0 .125rem .5rem #0000000d;box-shadow:0 .125rem .5rem var(--shadow-light);height:10rem;margin-bottom:.5rem;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.25,.46,.45,.94);width:10rem}.profile-photo:hover{transform:scale(1.02)}.profile-photo .profile-img{height:100%;object-fit:cover;width:100%}.profile-photo .profile-placeholder{align-items:center;background:linear-gradient(135deg,#f5f5f7,#e8e8ed);background:linear-gradient(135deg,var(--gray-100),var(--gray-200));color:#86868b;color:var(--gray-500);display:flex;font-size:1.5rem;height:100%;justify-content:center;width:100%}@media(max-width:576px){.profile-photo{height:8rem;width:8rem}}.change-photo-btn{margin-top:.5rem}.profile-form-container{flex:1 1;width:100%}@media(max-width:768px){.edit-info-header label{font-size:.8125rem}.info-input{font-size:.9375rem;padding:.5625rem .6875rem}.disabled-note{font-size:.6875rem}}.referral-section{margin-top:1.5rem;width:100%}.section-header{margin-bottom:1rem}.section-title{color:#1d1d1f;color:var(--text-color);font-size:1.125rem;font-weight:600;margin:0}.referral-card{background-color:#fff;background-color:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .125rem .75rem #0000000d;box-shadow:0 .125rem .75rem var(--shadow-light);display:flex;flex-direction:column;gap:1.25rem;padding:1.25rem;width:100%}.referral-banner{background:linear-gradient(135deg,#42a1ff,#0071e3);background:linear-gradient(135deg,var(--primary-color-light),var(--primary-color));border-radius:8px;border-radius:var(--border-radius-md);color:#000;gap:1rem;margin-bottom:.5rem;padding:1rem}.banner-icon,.referral-banner{align-items:center;display:flex}.banner-icon{background-color:#fff3;border-radius:50%;flex-shrink:0;font-size:1.25rem;height:2.5rem;justify-content:center;width:2.5rem}.banner-content{flex:1 1}.referral-title{color:#000;font-size:1.125rem;font-weight:600;margin:0 0 .25rem}.referral-subtitle{color:#000;font-size:.875rem;margin:0}.storage-section{background-color:var(--gray-50);border-radius:8px;border-radius:var(--border-radius-md);padding:1rem}.storage-header{margin-bottom:.5rem}.storage-label{font-weight:500}.storage-label,.storage-value{color:#86868b;color:var(--text-secondary);font-size:.875rem}.storage-bar{background-color:#e8e8ed;background-color:var(--gray-200);height:.5rem;overflow:hidden}.storage-bar,.storage-used{border-radius:6px;border-radius:var(--border-radius-sm)}.storage-used{height:100%;transition:width .3s cubic-bezier(.25,.46,.45,.94)}.referral-code-container{margin-bottom:.5rem}.referral-code-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.referral-code-label{color:#86868b;color:var(--text-secondary);font-size:.875rem;font-weight:500;margin:0}.copied-feedback{align-items:center;animation:fadeIn .3s ease-in-out;color:#34c759;color:var(--success-color);display:flex;font-size:.75rem;font-weight:500;gap:.25rem}.referral-code-box{align-items:center;background-color:#f5f5f7;background-color:var(--gray-100);border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);display:flex;justify-content:space-between;padding:.75rem 1rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);width:100%}.referral-code-box:hover{border-color:#42a1ff;border-color:var(--primary-color-light)}.referral-code{color:#1d1d1f;color:var(--text-color);font-family:monospace;font-size:1rem;font-weight:600;max-width:70%;word-break:break-all}.copy-button{flex-shrink:0;min-width:auto}.copy-button.copied{background-color:#34c759;background-color:var(--success-color);border-color:#34c759;border-color:var(--success-color)}.referral-actions{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;width:100%}.referral-button{transition:transform .2s cubic-bezier(.25,.46,.45,.94);width:100%}.referral-button:hover{transform:translateY(-2px)}.referral-button.invite-button{background-color:#0071e3;background-color:var(--primary-color);border-color:#0071e3;border-color:var(--primary-color)}.logout-section{margin-top:1.5rem;width:100%}.logout-button{width:100%}@media(max-width:768px){.referral-section{margin-top:1.25rem}.section-title{font-size:1rem}.referral-card{gap:1rem;padding:1rem}.referral-banner{flex-direction:column;padding:.5rem;text-align:center}.banner-icon{margin-bottom:.25rem}.referral-actions{gap:.5rem;grid-template-columns:1fr}.referral-code{font-size:.875rem;max-width:60%}.referral-code-box{padding:.625rem .5rem}.storage-section{padding:.5rem}}@media(max-width:480px){.referral-code{max-width:50%}.referral-card{padding:.5rem}}.user-subscription-plan-container{animation:fadeIn .5s ease-out;padding:1rem 0;width:100%}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.25rem;margin-top:1rem}.section-header h2{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;font-weight:600;margin:0;padding-bottom:.25rem;position:relative}.section-header h2:after{background-color:#0071e3;background-color:var(--primary-color);border-radius:.0625rem;bottom:0;content:"";height:.125rem;left:0;position:absolute;width:3rem}.info-button{align-items:center;background:none;border:none;border-radius:50%;color:#86868b;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:.25rem;transition:all .2s cubic-bezier(.25,.46,.45,.94)}.info-button:hover{background-color:#e8e8ed;background-color:var(--hover-color);color:#0071e3;color:var(--primary-color)}.info-button:focus{box-shadow:0 0 0 .125rem #42a1ff;box-shadow:0 0 0 .125rem var(--primary-color-light);outline:none}.plans-section{margin-top:1.5rem}.plans-heading{color:#1d1d1f;color:var(--text-color);display:inline-block;font-size:1.125rem;font-weight:600;margin:0 0 1rem;padding-bottom:.25rem;position:relative}.plans-heading:after{background-color:#0071e3;background-color:var(--primary-color);border-radius:.0625rem;bottom:0;content:"";height:.125rem;left:0;position:absolute;width:2rem}.category-selector{border-bottom:1px solid #d2d2d7;border-bottom:1px solid var(--border-color);display:flex;gap:1rem;margin-bottom:1.25rem}.category-selector .category-button{background:none;border:none;color:#86868b;color:var(--text-secondary);cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;position:relative;transition:all .2s cubic-bezier(.25,.46,.45,.94)}.category-selector .category-button:hover{color:#0071e3;color:var(--primary-color)}.category-selector .category-button.active{color:#0071e3;color:var(--primary-color);font-weight:600}.category-selector .category-button.active:after{background-color:#0071e3;background-color:var(--primary-color);border-radius:.0625rem;bottom:-1px;content:"";height:.125rem;left:0;position:absolute;width:100%}.category-selector .category-button:focus{box-shadow:0 0 0 .125rem #42a1ff;box-shadow:0 0 0 .125rem var(--primary-color-light);outline:none}.plans-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));margin-bottom:1.5rem}@media(min-width:64rem){.plans-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:48rem)and (max-width:64rem){.plans-grid{grid-template-columns:repeat(2,1fr)}}.plan-card{border:2px solid #0000;cursor:pointer;display:flex;flex-direction:column;height:100%;overflow:hidden;padding:1rem;position:relative;transition:transform .3s ease-in-out,box-shadow .3s ease-in-out,border-color .3s ease-in-out}.plan-card:hover{box-shadow:#00000014;box-shadow:var(--shadow-medium);transform:translateY(-.25rem)}.plan-card .spinner{animation:spin 1s linear infinite}.plan-card.recommended{box-shadow:0 .25rem .75rem #0071e333;box-shadow:0 .25rem .75rem rgba(var(--primary-color-rgb),.2)}.plan-card.recommended,.plan-card.selected{border-color:#0071e3;border-color:var(--primary-color)}.plan-card.selected{background-color:#0071e30d;background-color:rgba(var(--primary-color-rgb),.05)}.plan-card.current{background-color:#34c7590d;background-color:rgba(var(--success-color-rgb),.05);border-color:#34c759;border-color:var(--success-color)}.plan-card .badge{align-items:center;border-radius:6px;border-radius:var(--border-radius-sm);box-shadow:var(--shadow-sm);display:flex;font-size:.75rem;font-weight:600;gap:.25rem;left:.75rem;padding:.25rem .5rem;position:absolute;top:.75rem;z-index:1}.plan-card .badge.recommended-badge{background-color:#0071e3;background-color:var(--primary-color);color:#fff}.plan-card .badge.popular-badge{background-color:#34c759;background-color:var(--success-color);color:#fff}.plan-card .badge.savings-badge{background-color:#ff9500;background-color:var(--warning-color);color:#000;margin-left:70%;width:30%}.plan-card .badge.current-badge{background-color:#6e6e73;background-color:var(--gray-600);color:#fff}.plan-card .plan-header{border-bottom:1px solid #d2d2d7;border-bottom:1px solid var(--border-color);margin-bottom:1rem;padding-bottom:1rem}.plan-card .plan-header h3{color:inherit;font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.plan-card .plan-header .plan-price{align-items:baseline;color:#0071e3;color:var(--primary-color);display:flex;font-size:1.5rem;font-weight:700;gap:.25rem;margin:0 0 .25rem}.plan-card .plan-header .plan-price .monthly-price{color:#86868b;color:var(--text-secondary);font-size:.875rem;font-weight:500}.plan-card .plan-header .plan-duration{align-items:center;color:#86868b;color:var(--text-secondary);display:flex;font-size:.875rem;gap:.25rem;margin:0 0 .5rem}.plan-card .plan-header .plan-storage{align-items:center;color:#1d1d1f;color:var(--text-color);display:flex;font-size:.875rem;font-weight:500;gap:.25rem;margin:.25rem 0 0}.plan-card .plan-features{flex:1 1;list-style:none;margin:0;padding:0}.plan-card .plan-features li{align-items:flex-start;display:flex;font-size:.875rem;gap:.5rem;margin-bottom:.5rem}.plan-card .plan-features li.included{color:#1d1d1f;color:var(--text-color)}.plan-card .plan-features li.excluded{color:#86868b;color:var(--text-secondary);opacity:.7;text-decoration:line-through}.plan-card .plan-features li .feature-icon,.plan-card .plan-features li svg{flex-shrink:0;font-size:1rem;margin-top:.125rem}.plan-card .plan-features li .feature-icon.included,.plan-card .plan-features li svg.included{color:#34c759;color:var(--success-color)}.plan-card .plan-features li .feature-icon.excluded,.plan-card .plan-features li svg.excluded{color:#86868b;color:var(--text-secondary)}.plan-card .plan-features li .feature-text{line-height:1.4}.plan-card .selected-indicator{border-color:#0000 #0071e3 #0000 #0000;border-color:#0000 var(--primary-color) #0000 #0000;border-style:solid;border-width:0 3rem 3rem 0;height:0;position:absolute;right:0;top:0;width:0}.plan-card .selected-indicator .selected-check{color:#fff;font-size:1rem;position:absolute;right:.5rem;top:.5rem}.current-plan-section{animation:fadeIn .5s ease-out;margin-bottom:1.25rem}.current-plan-section .current-plan-header{align-items:center;display:flex;gap:1rem;padding:1rem}.current-plan-section .plan-icon-container{align-items:center;background-color:#0071e3;background-color:var(--primary-color);border-radius:50%;box-shadow:var(--shadow-sm);color:#fff;display:flex;height:3rem;justify-content:center;width:3rem}.current-plan-section .plan-icon{font-size:1.5rem}.current-plan-section .plan-info{flex:1 1}.current-plan-section .plan-info h3{color:#1d1d1f;color:var(--text-color);font-size:1.125rem;font-weight:600;margin:0 0 .25rem}.current-plan-section .plan-info .plan-details{display:flex;flex-direction:column;gap:.25rem}.current-plan-section .plan-info .plan-expiry{align-items:center;color:#86868b;color:var(--text-secondary);display:flex;font-size:.875rem;gap:.25rem}.storage-section{animation:fadeIn .5s ease-out;margin-bottom:1.25rem}.storage-info{padding:1rem}.storage-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.storage-header h3{color:#1d1d1f;color:var(--text-color);font-size:1.125rem;font-weight:600;margin:0}.storage-percentage{background-color:#f5f5f7;background-color:var(--gray-100);border-radius:6px;border-radius:var(--border-radius-sm);font-size:.875rem;font-weight:600;padding:.25rem .5rem}.storage-percentage.warning{background-color:#ff950033;background-color:rgba(var(--warning-color-rgb),.2);color:var(--warning-color-dark)}.storage-percentage.danger{background-color:#ff3b3033;background-color:rgba(var(--danger-color-rgb),.2);color:#ff3b30;color:var(--danger-color)}.storage-details{display:flex;flex-direction:column;gap:.5rem}.storage-text{color:#86868b;color:var(--text-secondary);font-size:.875rem;margin-bottom:.25rem}.storage-bar-container{background-color:#e8e8ed;background-color:var(--gray-200);border-radius:var(--border-radius-full);height:.5rem;margin-bottom:.5rem;overflow:hidden;width:100%}.storage-bar-fill{background-color:#0071e3;background-color:var(--primary-color);border-radius:var(--border-radius-full);height:100%;position:relative;transition:width .5s ease-out}.storage-bar-fill.warning{background-color:#ff9500;background-color:var(--warning-color)}.storage-bar-fill.danger{background-color:#ff3b30;background-color:var(--danger-color)}.storage-bar-fill .storage-warning-indicator{animation:pulse 1s infinite;background-color:#fff;border-radius:50%;height:.25rem;position:absolute;right:.25rem;top:50%;transform:translateY(-50%);width:.25rem}.storage-alert{align-items:center;border-radius:6px;border-radius:var(--border-radius-sm);display:flex;font-size:.75rem;gap:.5rem;margin-top:.25rem;padding:.5rem}.storage-alert.warning{background-color:#ff95001a;background-color:rgba(var(--warning-color-rgb),.1);color:var(--warning-color-dark)}.storage-alert.danger{background-color:#ff3b301a;background-color:rgba(var(--danger-color-rgb),.1);color:#ff3b30;color:var(--danger-color)}.storage-alert svg{flex-shrink:0}.storage-highlight{color:#1d1d1f;color:var(--text-color);font-weight:600}.plan-comparison-link{margin-top:1rem;text-align:center}.verification-modal{padding:1.5rem}.verification-modal h3{color:var(--text-primary);font-size:1.25rem;margin-bottom:1.25rem}.verification-modal .verification-content{display:flex;flex-direction:column;gap:1.25rem}.verification-modal .verification-content p{color:#86868b;color:var(--text-secondary);line-height:1.5}.verification-modal .verification-content .pending-payment-notice{align-items:flex-start;background-color:var(--warning-light);border-left:.25rem solid var(--warning);border-radius:.5rem;display:flex;gap:.75rem;margin-bottom:1rem;padding:1rem}.verification-modal .verification-content .pending-payment-notice .info-icon{color:var(--warning);font-size:1.25rem;margin-top:.125rem}.verification-modal .verification-content .pending-payment-notice p{color:var(--text-primary);margin:0}.verification-modal .verification-content .pending-payment-notice p strong{font-weight:600}.verification-modal .verification-content.pending{align-items:center;text-align:center}.verification-modal .verification-content.pending .spinner{animation:spin 1s linear infinite;color:var(--primary);font-size:2rem;margin-bottom:1rem}.verification-modal .verification-content.failure,.verification-modal .verification-content.success{align-items:center;text-align:center}.verification-modal .verification-content.failure .failure-icon,.verification-modal .verification-content.failure .success-icon,.verification-modal .verification-content.success .failure-icon,.verification-modal .verification-content.success .success-icon{align-items:center;border-radius:50%;display:flex;font-size:1.75rem;height:3.75rem;justify-content:center;margin-bottom:1rem;width:3.75rem}.verification-modal .verification-content.failure .success-icon,.verification-modal .verification-content.success .success-icon{background-color:var(--success-light);color:var(--success)}.verification-modal .verification-content.failure .failure-icon,.verification-modal .verification-content.success .failure-icon{background-color:var(--danger-light);color:var(--danger)}.verification-modal .verification-content.failure h4,.verification-modal .verification-content.success h4{color:#ff3b30;color:var(--danger-color);font-size:1.125rem;font-weight:600;margin:0 0 .5rem}@media(max-width:48rem){.user-subscription-plan-container{padding:.5rem 0}.section-header h2{font-size:1.125rem}.current-plan-section{margin-bottom:1rem}.current-plan-section .current-plan-header{align-items:flex-start;flex-direction:column;gap:.5rem;padding:.5rem}.plans-grid{gap:1rem;grid-template-columns:1fr}.plans-heading{font-size:1rem}.category-selector{overflow-x:auto;padding-bottom:.25rem}.storage-section{margin-bottom:1rem}.plan-card,.storage-info{padding:.5rem}.plan-card{max-width:100%}}@media(max-width:30rem){.storage-header{align-items:flex-start;flex-direction:column;gap:.25rem}.verification-modal{padding:.5rem}.verification-modal h3{font-size:1.125rem}}.upgrade-plan-modal{animation:modalFadeIn .3s ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-1rem)}to{opacity:1;transform:translateY(0)}}.upgrade-plan-modal .upgrade-modal-header{align-items:center;border-bottom:1px solid #e8e8ed;border-bottom:1px solid var(--gray-200);display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.upgrade-plan-modal .upgrade-modal-header h3{color:#1d1d1f;color:var(--gray-900);font-size:1.5rem;font-weight:600;letter-spacing:-.01em;margin:0}.upgrade-plan-modal .upgrade-modal-header .plan-badge{align-items:center;border-radius:1.5rem;display:flex;font-size:.875rem;font-weight:600;padding:.25rem .75rem;transition:all .2s ease}.upgrade-plan-modal .upgrade-modal-header .plan-badge.premium{background-color:#ffd70026;box-shadow:0 .125rem .5rem #ff950026;color:#ff9500;color:var(--warning-color)}.upgrade-plan-modal .upgrade-modal-header .plan-badge.premium:hover{background-color:#ffd70033}.upgrade-plan-modal .upgrade-modal-header .plan-badge.premium svg{font-size:1rem;margin-right:.375rem}.upgrade-plan-modal .upgrade-modal-body{margin-bottom:1.5rem}.upgrade-plan-modal .upgrade-modal-body .plan-summary{background-color:#f5f5f7;background-color:var(--gray-100);border-radius:1rem;box-shadow:inset 0 .125rem .25rem #00000005;padding:1.75rem;transition:all .3s ease}.upgrade-plan-modal .upgrade-modal-body .plan-summary:hover{background-color:#0071e308;background-color:rgba(var(--primary-color-rgb),.03)}.upgrade-plan-modal .upgrade-modal-body .plan-summary .plan-price{margin-bottom:2rem;position:relative;text-align:center}.upgrade-plan-modal .upgrade-modal-body .plan-summary .plan-price:after{background:linear-gradient(90deg,#0071e333,#0071e399);background:linear-gradient(90deg,rgba(var(--primary-color-rgb),.2),rgba(var(--primary-color-rgb),.6));border-radius:.125rem;bottom:-1rem;content:"";height:.25rem;left:50%;position:absolute;transform:translateX(-50%);width:3rem}.upgrade-plan-modal .upgrade-modal-body .plan-summary .plan-price .currency{color:#333;color:var(--gray-800);font-size:1.25rem;font-weight:500;position:relative;top:.5rem;vertical-align:top}.upgrade-plan-modal .upgrade-modal-body .plan-summary .plan-price .amount{color:#1d1d1f;color:var(--gray-900);font-size:3rem;font-weight:700;letter-spacing:-.02em;line-height:1;margin:0 .25rem}.upgrade-plan-modal .upgrade-modal-body .plan-summary .plan-price .period{color:#86868b;color:var(--text-secondary);font-size:1rem;font-weight:500}.upgrade-plan-modal .upgrade-modal-body .plan-summary .plan-features-summary{margin-bottom:1.75rem}.upgrade-plan-modal .upgrade-modal-body .plan-summary .plan-features-summary h4{color:#333;color:var(--gray-800);font-size:1.125rem;font-weight:600;margin-bottom:1rem;text-align:center}.upgrade-plan-modal .upgrade-modal-body .plan-summary .plan-features-summary .features-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(2,1fr);margin:0;padding:0}.upgrade-plan-modal .upgrade-modal-body .plan-summary .plan-features-summary .features-grid .feature-item{align-items:center;background-color:#ffffff80;border-radius:.5rem;display:flex;font-size:.9375rem;padding:.5rem .75rem;transition:all .2s ease}.upgrade-plan-modal .upgrade-modal-body .plan-summary .plan-features-summary .features-grid .feature-item:hover{background-color:#ffffffe6;box-shadow:0 .25rem .5rem #0000000d;transform:translateY(-.125rem)}.upgrade-plan-modal .upgrade-modal-body .plan-summary .plan-features-summary .features-grid .feature-item .feature-check{color:#34c759;color:var(--success-color);flex-shrink:0;font-size:1rem;margin-right:.5rem}.upgrade-plan-modal .upgrade-modal-body .plan-summary .plan-features-summary .features-grid .feature-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upgrade-plan-modal .upgrade-modal-body .plan-summary .payment-info{align-items:flex-start;background-color:#0071e314;background-color:rgba(var(--primary-color-rgb),.08);border-left:.25rem solid #0071e3;border-left:.25rem solid var(--primary-color);border-radius:.75rem;display:flex;font-size:.875rem;padding:1rem}.upgrade-plan-modal .upgrade-modal-body .plan-summary .payment-info .info-icon{color:#0071e3;color:var(--primary-color);flex-shrink:0;font-size:1.125rem;margin-right:.75rem;margin-top:.125rem}.upgrade-plan-modal .upgrade-modal-body .plan-summary .payment-info p{color:#333;color:var(--gray-800);line-height:1.5;margin:0}.upgrade-plan-modal .upgrade-modal-footer{border-top:1px solid #e8e8ed;border-top:1px solid var(--gray-200);display:flex;gap:.75rem;justify-content:flex-end;padding-top:1rem}.upgrade-plan-modal .upgrade-modal-footer button{transition:all .2s ease}.upgrade-plan-modal .upgrade-modal-footer button:hover{transform:translateY(-.125rem)}.upgrade-plan-modal .upgrade-modal-footer button:active{transform:translateY(0)}.upgrade-plan-modal .upgrade-processing{animation:fadeIn .3s ease-out;padding:3rem 1.5rem;text-align:center}.upgrade-plan-modal .upgrade-processing .processing-animation{margin-bottom:2rem}.upgrade-plan-modal .upgrade-processing .processing-animation .spinner{animation:spin 1.5s cubic-bezier(.68,-.55,.27,1.55) infinite;color:#0071e3;color:var(--primary-color);filter:drop-shadow(0 .25rem .5rem rgba(0,113,227,.3));filter:drop-shadow(0 .25rem .5rem rgba(var(--primary-color-rgb),.3));font-size:3.5rem}.upgrade-plan-modal .upgrade-processing h3{color:#1d1d1f;color:var(--gray-900);font-size:1.5rem;font-weight:600;margin-bottom:.75rem}.upgrade-plan-modal .upgrade-processing p{color:#86868b;color:var(--text-secondary);font-size:1rem;line-height:1.5;margin:0 auto;max-width:20rem}.upgrade-plan-modal .upgrade-complete{animation:fadeIn .3s ease-out;padding:2.5rem 1.5rem;text-align:center}.upgrade-plan-modal .upgrade-complete .success-icon{align-items:center;animation:successPulse 2s infinite;background:linear-gradient(135deg,#34c7591a,#34c75933);background:linear-gradient(135deg,rgba(var(--success-color-rgb),.1),rgba(var(--success-color-rgb),.2));border-radius:50%;box-shadow:0 .5rem 1rem #34c75926;box-shadow:0 .5rem 1rem rgba(var(--success-color-rgb),.15);color:#34c759;color:var(--success-color);display:flex;font-size:2rem;height:5rem;justify-content:center;margin:0 auto 2rem;width:5rem}@keyframes successPulse{0%{box-shadow:0 0 0 0 #34c75966;box-shadow:0 0 0 0 rgba(var(--success-color-rgb),.4)}70%{box-shadow:0 0 0 .75rem #34c75900;box-shadow:0 0 0 .75rem rgba(var(--success-color-rgb),0)}to{box-shadow:0 0 0 0 #34c75900;box-shadow:0 0 0 0 rgba(var(--success-color-rgb),0)}}.upgrade-plan-modal .upgrade-complete h3{color:#1d1d1f;color:var(--gray-900);font-size:1.75rem;font-weight:600;margin-bottom:1rem}.upgrade-plan-modal .upgrade-complete p{color:#86868b;color:var(--text-secondary);font-size:1rem;line-height:1.6;margin-bottom:2rem;margin-left:auto;margin-right:auto;max-width:24rem}.upgrade-plan-modal .upgrade-complete .payment-actions{display:flex;flex-direction:column;gap:.75rem;margin:0 auto;max-width:20rem}.upgrade-plan-modal .upgrade-complete .payment-actions button{transition:all .2s ease}.upgrade-plan-modal .upgrade-complete .payment-actions button:first-child{box-shadow:0 .25rem 1rem #0071e326;box-shadow:0 .25rem 1rem rgba(var(--primary-color-rgb),.15)}.upgrade-plan-modal .upgrade-complete .payment-actions button:first-child:hover{box-shadow:0 .5rem 1.5rem #0071e333;box-shadow:0 .5rem 1.5rem rgba(var(--primary-color-rgb),.2);transform:translateY(-.125rem)}@media(max-width:48rem){.upgrade-plan-modal .upgrade-modal-content{margin:0 .5rem;max-width:100%}.upgrade-plan-modal .plan-features-summary .features-grid{grid-template-columns:1fr}.upgrade-plan-modal .upgrade-modal-footer{flex-direction:column-reverse}.upgrade-plan-modal .upgrade-modal-footer button{width:100%}}.current-subscription-container{margin-bottom:1.5rem}.current-subscription-container .current-subscription-card{border-left:.25rem solid #34c759;border-left:.25rem solid var(--success-color)}.current-subscription-container .current-subscription-card:has(.subscription-badge.pending){border-left-color:#ff9500;border-left-color:var(--warning-color)}.current-subscription-container .current-subscription-card:has(.subscription-badge.inactive){border-left-color:#ff3b30;border-left-color:var(--danger-color)}.current-subscription-container .current-subscription-card .subscription-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.current-subscription-container .current-subscription-card .subscription-header .subscription-title{align-items:center;display:flex;gap:.75rem}.current-subscription-container .current-subscription-card .subscription-header .subscription-title h3{font-size:1.25rem;font-weight:600;margin:0}.current-subscription-container .current-subscription-card .subscription-header .subscription-title .subscription-badge{border-radius:1rem;font-size:.75rem;font-weight:500;padding:.25rem .75rem}.current-subscription-container .current-subscription-card .subscription-header .subscription-title .subscription-badge.active{background-color:#4caf5026;color:#34c759;color:var(--success-color)}.current-subscription-container .current-subscription-card .subscription-header .subscription-title .subscription-badge.pending{background-color:#ff980026;color:#ff9500;color:var(--warning-color)}.current-subscription-container .current-subscription-card .subscription-header .subscription-title .subscription-badge.inactive{background-color:#f4433626;color:#ff3b30;color:var(--danger-color)}.current-subscription-container .current-subscription-card .subscription-header .subscription-icon{color:#0071e3;color:var(--primary-color);font-size:1.5rem}.current-subscription-container .current-subscription-card .subscription-details .detail-row{display:flex;margin-bottom:1rem}.current-subscription-container .current-subscription-card .subscription-details .detail-row:last-child{margin-bottom:0}.current-subscription-container .current-subscription-card .subscription-details .detail-row .detail-item{flex:1 1}.current-subscription-container .current-subscription-card .subscription-details .detail-row .detail-item .detail-label{color:#86868b;color:var(--text-secondary);display:block;font-size:.75rem;margin-bottom:.25rem}.current-subscription-container .current-subscription-card .subscription-details .detail-row .detail-item .detail-value{font-size:.9375rem;font-weight:500}.current-subscription-container .current-subscription-card .subscription-details .detail-row .detail-item .detail-value .auto-renew-on{align-items:center;color:#34c759;color:var(--success-color);display:flex;gap:.25rem}.current-subscription-container .current-subscription-card .subscription-details .detail-row .detail-item .detail-value .auto-renew-off{align-items:center;color:#ff3b30;color:var(--danger-color);display:flex;gap:.25rem}.current-subscription-card .action-buttons{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.current-subscription-card .action-buttons.verification-buttons{justify-content:center}.current-subscription-card .payment-verification-section{margin-top:1.5rem}.current-subscription-card .payment-verification-section .section-divider{background-color:#d2d2d7;background-color:var(--border-color);height:1px;margin:1rem 0}.current-subscription-card .payment-verification-section h4{color:#1d1d1f;color:var(--text-color);font-size:1rem;font-weight:600;margin:1rem 0}.current-subscription-card .payment-verification-section .verification-content{background-color:var(--background-light);border-radius:var(--border-radius);margin-bottom:1rem;padding:1rem}.current-subscription-card .payment-verification-section .verification-content.pending{align-items:center;display:flex;flex-direction:column;padding:2rem 1rem;text-align:center}.current-subscription-card .payment-verification-section .verification-content.pending .spinner{animation:spin 1s linear infinite;color:#0071e3;color:var(--primary-color);font-size:2rem;margin-bottom:1rem}.current-subscription-card .payment-verification-section .verification-content.pending p{color:#86868b;color:var(--text-secondary)}.current-subscription-card .payment-verification-section .verification-content.success{align-items:center;display:flex;flex-direction:column;padding:2rem 1rem;text-align:center}.current-subscription-card .payment-verification-section .verification-content.success .success-icon{align-items:center;background-color:#34c7591a;background-color:rgba(var(--success-color-rgb),.1);border-radius:50%;color:#34c759;color:var(--success-color);display:flex;font-size:1.5rem;height:3rem;justify-content:center;margin-bottom:1rem;width:3rem}.current-subscription-card .payment-verification-section .verification-content.success h4{color:#34c759;color:var(--success-color);margin-bottom:.5rem}.current-subscription-card .payment-verification-section .verification-content.success p{color:#86868b;color:var(--text-secondary);margin-bottom:1.5rem}.current-subscription-card .payment-verification-section .verification-content.failure{display:flex;flex-direction:column;padding:1.5rem 1rem}.current-subscription-card .payment-verification-section .verification-content.failure .failure-icon{align-items:center;align-self:center;background-color:#ff3b301a;background-color:rgba(var(--danger-color-rgb),.1);border-radius:50%;color:#ff3b30;color:var(--danger-color);display:flex;font-size:1.5rem;height:3rem;justify-content:center;margin-bottom:1rem;width:3rem}.current-subscription-card .payment-verification-section .verification-content.failure h4{color:#ff3b30;color:var(--danger-color);margin-bottom:.5rem;text-align:center}.current-subscription-card .payment-verification-section .verification-content.failure p{color:#86868b;color:var(--text-secondary);margin-bottom:1rem}.current-subscription-card .payment-verification-section .verification-content.failure ul{margin:0 0 1.5rem 1.5rem;padding:0}.current-subscription-card .payment-verification-section .verification-content.failure ul li{color:#86868b;color:var(--text-secondary);font-size:.875rem;margin-bottom:.5rem}.current-subscription-card .payment-verification-section .verification-content.failure .action-buttons{display:flex;gap:1rem;justify-content:center}.current-subscription-card .payment-verification-section .verification-content .pending-payment-notice{align-items:flex-start;background-color:#ff95001a;background-color:rgba(var(--warning-color-rgb),.1);border-radius:6px;border-radius:var(--border-radius-sm);display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem}.current-subscription-card .payment-verification-section .verification-content .pending-payment-notice .info-icon{color:#ff9500;color:var(--warning-color);flex-shrink:0;font-size:1.25rem;margin-top:.125rem}.current-subscription-card .payment-verification-section .verification-content .pending-payment-notice p{color:#86868b;color:var(--text-secondary);font-size:.875rem;line-height:1.5;margin:0}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.settings-page-layout{background-color:#f5f5f7;min-height:100vh;transition:background-color .3s cubic-bezier(.25,.46,.45,.94)}.settings-page{animation:fadeIn .3s ease-out;color:#1d1d1f;color:var(--text-color);margin:0 auto}.settings-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.25rem}.settings-header h1{color:#1d1d1f;color:var(--text-color);font-size:2rem;font-weight:700;margin:0}.settings-content{gap:1.5rem}.form-skeleton,.settings-content{display:flex;flex-direction:column}.form-skeleton{animation:fadeIn .3s ease-out;gap:1.25rem;margin-top:1.5rem}.settings-form{display:flex;flex-direction:column;gap:2rem}.form-card{background-color:#fff;border-radius:16px;box-shadow:0 2px 12px #00000014;padding:1.5rem;transition:all .2s ease}.form-card:hover{box-shadow:0 4px 16px #0000001f}.form-card .form-card-header{margin-bottom:1.5rem}.form-card .form-card-header h2{color:#1d1d1f;color:var(--text-color);font-size:1.4rem;font-weight:600;letter-spacing:-.01em;margin-bottom:.5rem}.form-card .form-card-header p{color:#86868b;color:var(--text-secondary);font-size:.95rem;margin:0}.logo-upload-section .logo-upload-content{align-items:center;display:flex;gap:2rem}@media(max-width:768px){.logo-upload-section .logo-upload-content{align-items:flex-start;flex-direction:column}}.logo-upload-section .logo-preview{align-items:center;background-color:var(--gray-50);border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;height:140px;justify-content:center;overflow:hidden;transition:all .2s ease;width:140px}.logo-upload-section .logo-preview:hover{border-color:#42a1ff;border-color:var(--primary-color-light);box-shadow:0 4px 12px #0000001a}.logo-upload-section .logo-preview img{height:100%;object-fit:cover;width:100%}.logo-upload-section .logo-preview .logo-placeholder{align-items:center;color:#86868b;color:var(--text-secondary);display:flex;flex-direction:column;justify-content:center}.logo-upload-section .logo-preview .logo-placeholder svg{font-size:2.5rem;margin-bottom:.75rem;opacity:.7}.logo-upload-section .logo-preview .logo-placeholder span{font-size:.9rem;font-weight:500}.logo-upload-section .logo-upload-controls{display:flex;flex:1 1;flex-direction:column;gap:1rem}.logo-upload-section .logo-upload-controls .upload-button{align-items:center;background-color:#0071e3;background-color:var(--primary-color);border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:500;justify-content:center;padding:.75rem 1.25rem;text-align:center;transition:all .2s ease;width:40%}.logo-upload-section .logo-upload-controls .upload-button:hover{background-color:#0b3d89;box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.logo-upload-section .logo-upload-controls .upload-button:active{transform:translateY(0)}.logo-upload-section .logo-upload-controls .upload-button.uploading{background-color:#bbb;background-color:var(--gray-400);cursor:not-allowed}.logo-upload-section .logo-upload-controls input[type=file]{display:none}.logo-upload-section .logo-upload-controls .upload-hint{align-items:center;color:#86868b;color:var(--text-secondary);display:flex;font-size:.85rem}.logo-upload-section .logo-upload-controls .upload-hint .hint-icon{color:#42a1ff;color:var(--primary-color-light);margin-right:.5rem}.business-details-card .form-fields-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}@media(max-width:768px){.business-details-card .form-fields-grid{gap:1.25rem;grid-template-columns:1fr}}.form-group{display:flex;flex-direction:column;gap:.75rem}.form-group label{align-items:center;color:#1d1d1f;color:var(--text-color);display:flex;font-size:.95rem;font-weight:500}.form-group label .field-icon{color:#0071e3;color:var(--primary-color);font-size:.9rem;margin-right:.5rem}.form-group label .required{color:#dc3545;margin-left:.25rem}.form-group .input-wrapper{position:relative}.form-group .input-wrapper.textarea-wrapper textarea{min-height:120px;resize:vertical}.form-group .input-wrapper.select-wrapper:after{border-left:5px solid #0000;border-right:5px solid #0000;border-top:5px solid #86868b;border-top:5px solid var(--text-secondary);content:"";height:0;pointer-events:none;position:absolute;right:12px;top:50%;transform:translateY(-50%);width:0}.form-group input,.form-group select,.form-group textarea{background-color:#fff;background-color:var(--input-bg,#fff);border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:8px;color:#1d1d1f;color:var(--text-color);font-size:1rem;padding:.875rem 1rem;transition:all .2s ease;width:100%}.form-group input::placeholder,.form-group select::placeholder,.form-group textarea::placeholder{color:var(--text-placeholder)}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:#bbb;border-color:var(--gray-400)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 3px #0d47a126;outline:none}.form-group input.has-value,.form-group select.has-value,.form-group textarea.has-value{border-color:#bbb;border-color:var(--gray-400)}.form-group select{-webkit-appearance:none;appearance:none;cursor:pointer;padding-right:2rem}.photography-types-card .photography-types-grid{grid-gap:.875rem;display:grid;gap:.875rem;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));margin-bottom:1rem}@media(max-width:768px){.photography-types-card .photography-types-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}@media(max-width:480px){.photography-types-card .photography-types-grid{grid-template-columns:1fr 1fr}}.photography-types-card .photography-type-option{align-items:center;border:1.5px solid #d2d2d7;border:1.5px solid var(--border-color);border-radius:10px;cursor:pointer;display:flex;overflow:hidden;padding:.875rem 1rem;position:relative;transition:all .2s ease}.photography-types-card .photography-type-option .check-icon{color:#0071e3;color:var(--primary-color);font-size:.9rem;margin-right:.5rem}.photography-types-card .photography-type-option span{font-size:.95rem;font-weight:400}.photography-types-card .photography-type-option:hover{background-color:#e8e8ed;background-color:var(--hover-color);border-color:#d2d2d7;border-color:var(--gray-300);transform:translateY(-2px)}.photography-types-card .photography-type-option:focus{box-shadow:0 0 0 3px #0d47a126;outline:none}.photography-types-card .photography-type-option.selected{color:#0071e3;color:var(--primary-color);font-weight:500}.photography-types-card .photography-type-option.selected,.photography-types-card .photography-type-option.selected:hover{background-color:var(--primary-color-light-bg);border-color:#0071e3;border-color:var(--primary-color)}.photography-types-card .selected-count{color:#86868b;color:var(--text-secondary);font-size:.9rem;font-weight:500;margin-top:1rem;text-align:right}@media(max-width:768px){.settings-page{padding:1rem .5rem}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.logo-preview:hover,.photography-type-option:hover,.upload-button:hover{transform:none}}.join-album-handler{align-items:center;background-color:#f5f5f7;background-color:var(--background-color);display:flex;justify-content:center;min-height:100vh;padding:1rem}.join-album-handler .loading-content{padding:1rem;text-align:center}.join-album-handler .loading-content p{color:#86868b;color:var(--text-secondary);font-size:1rem;margin-top:1rem}.join-album-handler .loading-spinner{animation:spin 1s cubic-bezier(.25,.46,.45,.94) .3s infinite;border:.1875rem solid #0000001a;border-radius:50%;border-top:.1875rem solid var(--primary-color);height:2.5rem;margin:0 auto;width:2.5rem}.join-album-handler .album-preview-card{align-items:stretch;background:#fff;background:var(--card-bg,#fff);border-radius:12px;box-shadow:0 4px 24px #00000014,0 1.5px 8px #0000000a;display:flex;flex-direction:row;margin-bottom:1.5rem;overflow:hidden;padding:0;transition:box-shadow .2s cubic-bezier(.25,.46,.45,.94) .3s}@media(max-width:480px){.join-album-handler .album-preview-card{flex-direction:column;margin-bottom:1.25rem}}.join-album-handler .album-preview-card .album-cover-container{align-items:center;background:linear-gradient(135deg,#0071e3,#42a1ff);background:linear-gradient(135deg,var(--primary-color),var(--primary-color-light));display:flex;height:7rem;justify-content:center;min-width:7rem;position:relative;width:7rem}@media(max-width:480px){.join-album-handler .album-preview-card .album-cover-container{height:12rem;min-width:100%;width:100%}}.join-album-handler .album-preview-card .album-cover-container .album-cover-image{border-radius:12px 0 0 12px;height:100%;object-fit:cover;width:100%}@media(max-width:480px){.join-album-handler .album-preview-card .album-cover-container .album-cover-image{border-radius:12px 12px 0 0}}.join-album-handler .album-preview-card .album-cover-container .album-cover-placeholder{align-items:center;background:linear-gradient(135deg,#0071e3,#42a1ff);background:linear-gradient(135deg,var(--primary-color),var(--primary-color-light));border-radius:12px 0 0 12px;color:#fff;color:var(--white);display:flex;font-size:2.5rem;font-weight:700;height:100%;justify-content:center;width:100%}@media(max-width:480px){.join-album-handler .album-preview-card .album-cover-container .album-cover-placeholder{border-radius:12px 12px 0 0}}.join-album-handler .album-preview-card .album-cover-container .album-badge{background:#1d1d1f;background:var(--gray-900);border-radius:8px;box-shadow:0 1px 4px #00000014;color:#fff;color:var(--white);font-size:.75rem;font-weight:600;left:.75rem;padding:.25rem .75rem;position:absolute;top:.75rem}.join-album-handler .album-preview-card .album-cover-container .album-badge.private{background:#ff3b30;background:var(--danger-color)}.join-album-handler .album-preview-card .album-cover-container .album-badge.public{background:#34c759;background:var(--success-color)}.join-album-handler .album-preview-card .album-info{display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:1.5rem 1.25rem 1.25rem 1.5rem}@media(max-width:480px){.join-album-handler .album-preview-card .album-info{padding:1.25rem}}.join-album-handler .album-preview-card .album-info .album-title{color:#1d1d1f;color:var(--text-color);font-size:1.35rem;font-weight:700;margin-bottom:.25rem}.join-album-handler .album-preview-card .album-info .album-tags{margin-bottom:.25rem}.join-album-handler .album-preview-card .album-info .album-tags .album-tag-chip{background:#42a1ff;background:var(--primary-color-light);border-radius:6px;color:#0071e3;color:var(--primary-color);display:inline-block;font-size:.85rem;font-weight:500;margin-bottom:.2rem;margin-right:.35rem;padding:.2rem .7rem}.join-album-handler .album-preview-card .album-info .album-description{color:#86868b;color:var(--text-secondary);font-size:1rem;font-style:italic;margin-bottom:.25rem}.join-album-handler .album-preview-card .album-info .album-owner-info{align-items:center;display:flex;gap:.5rem;margin-top:.25rem}.join-album-handler .album-preview-card .album-info .album-owner-info .owner-avatar{background:#e8e8ed;background:var(--gray-200);border:2px solid #42a1ff;border:2px solid var(--primary-color-light);border-radius:50%;height:2rem;object-fit:cover;width:2rem}.join-album-handler .album-preview-card .album-info .album-owner-info .owner-avatar-placeholder{align-items:center;background:#0071e3;background:var(--primary-color);border-radius:50%;color:#fff;color:var(--white);display:flex;font-size:1rem;font-weight:700;height:2rem;justify-content:center;width:2rem}.join-album-handler .album-preview-card .album-info .album-owner-info .album-owner{color:#1d1d1f;color:var(--text-color);font-size:.95rem;font-weight:500}.join-album-handler .confirmation-cta{align-items:center;display:flex;flex-direction:column;margin-bottom:1rem}.join-album-handler .confirmation-cta .confirmation-icon{animation:popIn .5s cubic-bezier(.25,.46,.45,.94) .3s;color:#34c759;color:var(--success-color);font-size:2.5rem;margin-bottom:.25rem}.join-album-handler .confirmation-cta .join-confirmation-text{color:#1d1d1f;color:var(--text-color);font-size:1.1rem;font-weight:500;margin:0;text-align:center}@keyframes popIn{0%{opacity:0;transform:scale(.7)}70%{opacity:1;transform:scale(1.15)}to{transform:scale(1)}}.join-album-handler .join-confirmation-text{color:#1d1d1f;color:var(--text-color);font-size:1rem;margin:1rem 0;text-align:center}.join-album-handler .join-album-actions{display:flex;gap:.5rem;margin-top:1.5rem}@media(max-width:480px){.join-album-handler .join-album-actions{flex-direction:column;width:100%}}.join-album-handler :global(.modal-content){padding:0}.join-album-handler :global(.modal-container){max-width:30rem;width:90%}@media(max-width:480px){.join-album-handler :global(.modal-container){margin:.5rem;width:95%}}.mobile-modal-overlay{background:#20202052;display:flex;flex-direction:column;height:100vh;justify-content:flex-end;left:0;position:fixed;top:0;width:100vw;z-index:1000}@media(min-width:481px){.mobile-modal-overlay{align-items:center;background:#20202073;justify-content:center}}.mobile-modal-container{animation:mobileModalSlideUp .33s cubic-bezier(.33,1,.68,1);background:#fff;background:var(--card-bg,#fff);border-radius:1.5rem 1.5rem 0 0;box-shadow:0 -2px 16px #0000001a;max-height:100vh;max-width:100vw;min-height:40vh;overflow-y:auto;padding:1.5rem 1rem 1rem;position:relative;width:100vw}@media(min-width:481px){.mobile-modal-container{border-radius:1.5rem;margin:2rem auto;max-width:28rem;padding:2rem 2rem 1.5rem}}@keyframes mobileModalSlideUp{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:none}}.mobile-modal-title{color:var(--primary-color);font-size:1.25rem;font-weight:700;margin-bottom:1rem;text-align:center}.mobile-modal-content{max-width:100vw;width:100%}.mobile-modal-close{background:none;border:none;color:#888;color:var(--gray-600,#888);cursor:pointer;font-size:2rem;line-height:1;padding:0;position:absolute;right:1.3rem;top:1.1rem;transition:color .15s;z-index:2}.mobile-modal-close:hover{color:#e00;color:var(--danger-color,#e00)}.mobile-media-selection-manager{background-color:var(--color-background);border-top-left-radius:1rem;border-top-right-radius:1rem;bottom:0;box-shadow:0 -.25rem .5rem #0000001a;display:flex;flex-direction:column;gap:.75rem;left:0;padding:.75rem 1rem;position:fixed;width:100%;z-index:1000}.mobile-media-selection-manager .selection-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding-bottom:.5rem}.mobile-media-selection-manager .selection-header .selection-count{color:var(--color-text-primary);font-size:.875rem;font-weight:600}.mobile-media-selection-manager .selection-header .close-selection-btn{background:none;border:none;border-radius:.25rem;color:var(--color-primary);cursor:pointer;font-size:.875rem;font-weight:600;padding:.25rem .5rem}.mobile-media-selection-manager .selection-header .close-selection-btn:hover{background-color:var(--color-background-hover)}.mobile-media-selection-manager .selection-header .close-selection-btn:active{background-color:var(--color-background-active)}.mobile-media-selection-manager .action-buttons{display:flex;gap:.5rem;justify-content:space-around}.mobile-media-selection-manager .action-buttons button{flex:1 1;min-width:0;padding:.5rem}.mobile-media-selection-manager .action-buttons button svg{font-size:1.125rem}.mobile-media-selection-manager .action-buttons button span{font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-media-selection-manager .no-permissions-message{color:var(--color-text-secondary);font-size:.875rem;padding:1rem;text-align:center}@media(max-width:48rem){.mobile-media-selection-manager .action-buttons button span{display:none}.mobile-media-selection-manager .action-buttons button svg{margin:0}}@supports(padding-bottom:env(safe-area-inset-bottom)){.mobile-media-selection-manager{padding-bottom:calc(.75rem + env(safe-area-inset-bottom))}}.mobile-event-info{border-bottom:1px solid #eee;margin-bottom:12px;padding:0 16px 12px}.mobile-event-info .event-title{color:var(--text-primary);font-size:1.2rem;font-weight:600;margin:0 0 8px}.mobile-event-info .event-description{color:#86868b;color:var(--text-secondary);font-size:.9rem;line-height:1.4;margin:0 0 12px}.mobile-event-info .event-meta{display:flex;flex-wrap:wrap;gap:12px}.mobile-event-info .event-meta .meta-item{align-items:center;color:#86868b;color:var(--text-secondary);display:flex;font-size:.85rem}.mobile-event-info .event-meta .meta-item .meta-icon{align-items:center;display:flex;justify-content:center;margin-right:4px}.mobile-gallery-container{padding:0 8px}.mobile-gallery-container .mobile-gallery-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}.mobile-gallery-container .mobile-gallery-grid .gallery-item{aspect-ratio:1/1;border-radius:.25rem;overflow:hidden;position:relative}.mobile-gallery-container .mobile-gallery-grid .gallery-item.skeleton-item{background-color:var(--background-light)}.mobile-gallery-container .mobile-gallery-grid .gallery-item.skeleton-item .skeleton-image{background-color:#e0e0e0;height:100%;width:100%}.mobile-gallery-container .mobile-gallery-grid .gallery-item.skeleton-item .skeleton-image.pulse{animation:pulse 1.5s ease-in-out infinite}.mobile-gallery-container .mobile-gallery-grid .gallery-item img{height:100%;object-fit:cover;transition:transform .2s ease;width:100%}.mobile-gallery-container .mobile-gallery-grid .gallery-item.selected img{opacity:.8}.mobile-gallery-container .mobile-gallery-grid .gallery-item .selection-overlay{align-items:flex-start;background-color:#0000004d;bottom:0;display:flex;justify-content:flex-end;left:0;padding:8px;position:absolute;right:0;top:0}.mobile-gallery-container .mobile-gallery-grid .gallery-item .selection-overlay .selection-indicator{align-items:center;background-color:#0071e3;background-color:var(--primary-color);border:2px solid #fff;border-radius:50%;box-shadow:0 1px 3px #0003;color:#fff;display:flex;font-size:.8rem;height:20px;justify-content:center;width:20px}.mobile-gallery-container .mobile-gallery-grid .gallery-item .selection-overlay .selection-indicator.selected{background-color:#0071e3;background-color:var(--primary-color)}.mobile-gallery-loading{color:#86868b;color:var(--text-secondary);padding:2rem 1rem;text-align:center}.mobile-gallery-loading .loading-spinner{animation:spin 1s ease-in-out infinite;border:.1875rem solid #0000001a;border-radius:50%;border-top:.1875rem solid var(--primary-color);height:2.5rem;margin:0 auto 1rem;width:2.5rem}.mobile-gallery-empty{color:#86868b;color:var(--text-secondary);padding:32px 16px;text-align:center}.mobile-gallery-empty p{margin-bottom:16px}.mobile-gallery-empty .add-photos-btn{background-color:#0071e3;background-color:var(--primary-color);border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:8px 16px}.mobile-gallery-empty .add-photos-btn:hover{background-color:#0062cc;background-color:var(--primary-color-dark)}.mobile-people-section{margin-bottom:16px;padding:0 16px}.mobile-people-section .people-section-header{align-items:center;border-bottom:1px solid #eee;cursor:pointer;display:flex;justify-content:space-between;padding:12px 0}.mobile-people-section .people-section-header .section-title{align-items:center;color:var(--text-primary);display:flex;font-weight:500}.mobile-people-section .people-section-header .section-title svg{font-size:1.2rem;margin-right:8px}.mobile-people-section .people-section-header .section-toggle{color:#86868b;color:var(--text-secondary);font-size:.8rem}.mobile-people-section .mobile-loading-faces{color:#86868b;color:var(--text-secondary);font-size:.9rem;padding:1rem 0;text-align:center}.mobile-people-section .mobile-faces-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(4,1fr);padding:.5rem 0}.mobile-people-section .mobile-faces-grid .face-item{align-items:center;cursor:pointer;display:flex;flex-direction:column}.mobile-people-section .mobile-faces-grid .face-item.selected .face-thumbnail{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 2px #42a1ff;box-shadow:0 0 0 2px var(--primary-color-light)}.mobile-people-section .mobile-faces-grid .face-item.skeleton-item .skeleton-thumbnail{background-color:#e0e0e0;border-radius:10%;height:4rem;margin-bottom:.5rem;width:4rem}.mobile-people-section .mobile-faces-grid .face-item.skeleton-item .skeleton-name{background-color:#e0e0e0;border-radius:.25rem;height:.8rem;width:80%}.mobile-people-section .mobile-faces-grid .face-item.skeleton-item .pulse{animation:pulse 1.5s ease-in-out infinite}.mobile-people-section .mobile-faces-grid .face-item .face-thumbnail{border:2px solid #0000;border-radius:10%;height:4rem;margin-bottom:.5rem;overflow:hidden;transition:all .2s ease;width:4rem}.mobile-people-section .mobile-faces-grid .face-item .face-thumbnail img{height:100%;object-fit:cover;width:100%}.mobile-people-section .mobile-faces-grid .face-item .face-name{color:#86868b;color:var(--text-secondary);font-size:.8rem;max-width:100%;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.mobile-people-section .mobile-empty-people{color:#86868b;color:var(--text-secondary);font-size:.9rem;padding:16px;text-align:center}.mobile-people-section:not(.open) .mobile-faces-grid{display:none}.mobile-highlights-page{background-color:#f5f5f7;background-color:var(--background-color);display:flex;flex-direction:column;height:100vh;overflow:hidden;position:relative}.mobile-highlights-page .mobile-main-content{flex:1 1;overflow-y:auto;padding-bottom:70px}.mobile-highlights-page .mobile-header{align-items:center;background-color:#0071e3;background-color:var(--primary-color);box-shadow:0 2px 4px #0000001a;color:#fff;display:flex;padding:16px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.mobile-highlights-page .mobile-header h1{font-size:1.2rem;font-weight:600;margin:0;max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-highlights-page .mobile-header .back-button{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.4rem;justify-content:center;margin-right:.5rem;padding:.5rem}.mobile-highlights-page .mobile-header .back-button:active{background-color:#fff3}.mobile-highlights-page .mobile-header .selection-mode-toggle{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;justify-content:center;margin-left:auto;padding:.5rem;transition:transform .2s var(--transition-timing)}.mobile-highlights-page .mobile-header .selection-mode-toggle:active{background-color:#fff3}.mobile-highlights-page .mobile-header .selection-mode-toggle.active{background-color:#fff3;color:var(--color-accent);transform:rotate(180deg)}.mobile-highlights-page .mobile-header .mobile-add-btn{background-color:#fff3;border:none;border-radius:50px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:6px 16px;transition:background-color .2s ease}.mobile-highlights-page .mobile-header .mobile-add-btn:active{background-color:#ffffff4d}.mobile-highlights-page .mobile-bottom-tabs{background-color:#fff;bottom:0;box-shadow:0 -2px 10px #0000001a;left:0;padding-bottom:env(safe-area-inset-bottom,0);position:fixed;right:0;width:100%;z-index:100}.mobile-highlights-page .mobile-empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:40px 16px;text-align:center}.mobile-highlights-page .mobile-empty-state p{color:#666;margin-bottom:16px}.mobile-highlights-page .mobile-empty-state .mobile-add-photos-btn{background-color:#0071e3;background-color:var(--primary-color);border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 20px}.mobile-selection-manager{border-radius:16px 16px 0 0;bottom:60px;box-shadow:0 -2px 10px #0000001a;left:0;position:fixed;right:0;z-index:6}.mobile-selection-manager .selection-actions{padding:12px}.mobile-selection-manager .selection-actions .action-button{min-width:auto;padding:8px}.mobile-selection-manager .selection-actions .action-button .action-icon{font-size:1.2rem}.mobile-selection-manager .selection-actions .action-button .action-label{font-size:.7rem}@media(max-width:360px){.mobile-highlights-page .mobile-gallery-container .mobile-photo-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:480px){.mobile-highlights-page .mobile-gallery-container .mobile-photo-grid{grid-template-columns:repeat(4,1fr)}}@media(orientation:landscape)and (max-height:500px){.mobile-highlights-page .mobile-gallery-container .mobile-photo-grid{grid-template-columns:repeat(5,1fr)}.mobile-highlights-page .mobile-people-section .mobile-faces-grid{flex-wrap:wrap;justify-content:center}}.mobile-albums-page{flex-direction:column;height:100vh;overflow-x:hidden}.mobile-albums-page,.mobile-albums-page .mobile-albums-header{background-color:#f5f5f7;background-color:var(--background-color);display:flex}.mobile-albums-page .mobile-albums-header{align-items:center;border-bottom:1px solid #d2d2d7;border-bottom:1px solid var(--border-color);justify-content:space-between;padding:16px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.mobile-albums-page .mobile-albums-header h1{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0}.mobile-albums-page .mobile-albums-header .header-actions{display:flex;gap:12px}.mobile-albums-page .mobile-albums-header .header-actions .icon-button{align-items:center;background:none;border:none;border-radius:50%;color:#86868b;color:var(--text-secondary);cursor:pointer;display:flex;font-size:1.2rem;justify-content:center;padding:8px}.mobile-albums-page .mobile-albums-header .header-actions .icon-button:active{background-color:#e8e8ed;background-color:var(--hover-color)}.mobile-albums-page .mobile-search-bar{align-items:center;background-color:var(--input-background);border-radius:8px;display:flex;margin:0 16px 16px;padding:8px 12px}.mobile-albums-page .mobile-search-bar .search-icon{color:#86868b;color:var(--text-secondary);margin-right:8px}.mobile-albums-page .mobile-search-bar input{background:none;border:none;color:var(--text-primary);flex:1 1;font-size:1rem;outline:none}.mobile-albums-page .mobile-search-bar input::placeholder{color:#6e6e73;color:var(--text-tertiary)}.mobile-albums-page .mobile-search-bar .clear-search{align-items:center;background:none;border:none;color:#86868b;color:var(--text-secondary);cursor:pointer;display:flex;font-size:1.2rem;justify-content:center;padding:4px}.mobile-albums-page .active-filter-indicator{align-items:center;background-color:#42a1ff;background-color:var(--primary-color-light);border-radius:8px;color:#0071e3;color:var(--primary-color);display:flex;font-size:.9rem;justify-content:space-between;margin:0 16px 16px;padding:8px 12px}.mobile-albums-page .active-filter-indicator button{align-items:center;background:none;border:none;color:#0071e3;color:var(--primary-color);cursor:pointer;display:flex;justify-content:center}.mobile-albums-page .mobile-albums-content{-webkit-overflow-scrolling:touch;flex:1 1;overflow-y:auto;padding:16px}.mobile-albums-page .mobile-albums-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.mobile-albums-page .mobile-albums-grid .mobile-album-card{background-color:#fff;background-color:var(--card-background);border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;flex-direction:column;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.mobile-albums-page .mobile-albums-grid .mobile-album-card:active{transform:scale(.98)}.mobile-albums-page .mobile-albums-grid .mobile-album-card .album-cover{overflow:hidden;padding-bottom:100%;position:relative;width:100%}.mobile-albums-page .mobile-albums-grid .mobile-album-card .album-cover img{height:100%;left:0;object-fit:cover;position:absolute;top:0;width:100%}.mobile-albums-page .mobile-albums-grid .mobile-album-card .album-cover .album-cover-placeholder{align-items:center;background-color:#6c5ce7;color:#fff;display:flex;font-size:2rem;font-weight:600;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%}.mobile-albums-page .mobile-albums-grid .mobile-album-card .album-cover .album-badge{background-color:#0009;border-radius:4px;color:#fff;font-size:.7rem;padding:4px 8px;position:absolute;right:8px;top:8px}.mobile-albums-page .mobile-albums-grid .mobile-album-card .album-info{padding:12px}.mobile-albums-page .mobile-albums-grid .mobile-album-card .album-info .album-title{color:var(--text-primary);font-size:.9rem;font-weight:500;margin:0 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-albums-page .mobile-albums-grid .mobile-album-card .album-info .album-meta{color:#86868b;color:var(--text-secondary);display:flex;font-size:.8rem;justify-content:space-between}.mobile-albums-page .mobile-albums-grid .mobile-album-card .album-info .album-meta .album-visibility{opacity:.7}.mobile-albums-page .mobile-albums-grid .mobile-album-card.create-album-card .create-album-placeholder{background-color:var(--background-alt);display:flex;height:200px;justify-content:center;padding-top:40%;position:relative;width:100%}.mobile-albums-page .mobile-albums-grid .mobile-album-card.create-album-card .create-album-placeholder svg{color:#0071e3;color:var(--primary-color);font-size:2rem;margin:2rem;position:absolute}.mobile-albums-page .mobile-albums-grid .mobile-album-card.create-album-card .album-info{text-align:center}.mobile-albums-page .mobile-albums-grid .mobile-album-card.create-album-card .album-info .album-title{color:#0071e3;color:var(--primary-color)}.mobile-albums-page .mobile-albums-loading{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.mobile-albums-page .mobile-albums-loading .album-skeleton{background-color:#fff;background-color:var(--card-background);border-radius:12px;display:flex;flex-direction:column;overflow:hidden}.mobile-albums-page .mobile-albums-loading .album-skeleton .album-cover-skeleton{animation:pulse 1.5s infinite;background-color:#e0e0e0;background-color:var(--skeleton-color);padding-bottom:100%;width:100%}.mobile-albums-page .mobile-albums-loading .album-skeleton .album-title-skeleton{animation:pulse 1.5s infinite;background-color:#e0e0e0;background-color:var(--skeleton-color);border-radius:4px;height:16px;margin:12px 12px 8px}.mobile-albums-page .mobile-albums-loading .album-skeleton .album-meta-skeleton{animation:pulse 1.5s infinite;background-color:#e0e0e0;background-color:var(--skeleton-color);border-radius:4px;height:12px;margin:0 12px 12px;width:70%}.mobile-albums-page .mobile-filter-menu{background-color:#fff;background-color:var(--card-background);border-top-left-radius:16px;border-top-right-radius:16px;bottom:0;box-shadow:0 -4px 12px #0000001a;left:0;position:fixed;right:0;transform:translateY(0);transition:transform .3s ease;z-index:100}.mobile-albums-page .mobile-filter-menu .filter-menu-header{align-items:center;border-bottom:1px solid #d2d2d7;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:16px}.mobile-albums-page .mobile-filter-menu .filter-menu-header h3{font-size:1.1rem;font-weight:500;margin:0}.mobile-albums-page .mobile-filter-menu .filter-menu-header .close-button{align-items:center;background:none;border:none;color:#86868b;color:var(--text-secondary);display:flex;font-size:1.2rem;justify-content:center;padding:4px}.mobile-albums-page .mobile-filter-menu .filter-options{padding:8px 16px 24px}.mobile-albums-page .mobile-filter-menu .filter-options .filter-option{background:none;border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:1rem;margin-bottom:8px;padding:12px 16px;text-align:left;transition:all .2s ease;width:100%}.mobile-albums-page .mobile-filter-menu .filter-options .filter-option.active{background-color:#0071e3;background-color:var(--primary-color);border-color:#0071e3;border-color:var(--primary-color);color:#fff;color:var(--text-on-primary)}.mobile-albums-page .mobile-filter-menu .filter-options .filter-option:last-child{margin-bottom:0}.app-install-prompt-overlay{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;opacity:0;padding:20px;position:fixed;right:0;top:0;transition:opacity .3s ease;z-index:1000}.app-install-prompt-overlay.show{opacity:1}.app-install-prompt-overlay.hide{opacity:0}.app-install-prompt-container{background-color:#fff;background-color:var(--card-background);border-radius:16px;box-shadow:0 10px 25px #0003;max-width:380px;padding:24px;position:relative;text-align:center;transform:translateY(20px);transition:transform .3s ease;width:100%}.show .app-install-prompt-container{transform:translateY(0)}.hide .app-install-prompt-container{transform:translateY(20px)}.app-install-prompt-container .close-button{align-items:center;background:none;border:none;border-radius:50%;color:#86868b;color:var(--text-secondary);cursor:pointer;display:flex;font-size:1.5rem;justify-content:center;padding:4px;position:absolute;right:12px;top:12px}.app-install-prompt-container .close-button:active,.app-install-prompt-container .close-button:hover{background-color:#e8e8ed;background-color:var(--hover-color)}.app-install-prompt-container .app-icon{align-items:center;background-color:#0071e3;background-color:var(--primary-color);border-radius:16px;color:#fff;display:flex;font-size:2.5rem;height:72px;justify-content:center;margin:0 auto 20px;width:72px}.app-install-prompt-container h2{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0 0 16px}.app-install-prompt-container p{color:#86868b;color:var(--text-secondary);font-size:1rem;line-height:1.5;margin-bottom:24px}.app-install-prompt-container .platform-info{margin-bottom:24px;text-align:left}.app-install-prompt-container .platform-info .platform-section{align-items:flex-start;background-color:var(--background-alt);border-radius:12px;display:flex;gap:16px;padding:16px}.app-install-prompt-container .platform-info .platform-section .platform-icon{color:#0071e3;color:var(--primary-color);flex-shrink:0;font-size:2rem}.app-install-prompt-container .platform-info .platform-section .platform-instructions{flex:1 1}.app-install-prompt-container .platform-info .platform-section .platform-instructions h3{color:var(--text-primary);font-size:1.1rem;font-weight:500;margin:0 0 8px}.app-install-prompt-container .platform-info .platform-section .platform-instructions ol{margin:0;padding-left:20px}.app-install-prompt-container .platform-info .platform-section .platform-instructions ol li{color:#86868b;color:var(--text-secondary);font-size:.9rem;margin-bottom:6px}.app-install-prompt-container .platform-info .platform-section .platform-instructions ol li:last-child{margin-bottom:0}.app-install-prompt-container .platform-info .platform-section .platform-instructions ol li strong{color:var(--text-primary);font-weight:500}.app-install-prompt-container .platform-info .platform-section .platform-instructions p{font-size:.9rem;margin:0}.app-install-prompt-container .action-buttons{display:flex;flex-direction:column;gap:12px}.app-install-prompt-container .action-buttons .primary-button,.app-install-prompt-container .action-buttons .secondary-button{align-items:center;border-radius:8px;cursor:pointer;display:flex;font-size:1rem;font-weight:500;justify-content:center;padding:12px 16px;text-decoration:none;transition:all .2s ease;width:100%}.app-install-prompt-container .action-buttons .primary-button{background-color:#0071e3;background-color:var(--primary-color);border:none;color:#fff}.app-install-prompt-container .action-buttons .primary-button:active,.app-install-prompt-container .action-buttons .primary-button:hover{background-color:#0062cc;background-color:var(--primary-color-dark)}.app-install-prompt-container .action-buttons .secondary-button{background-color:#0000;border:1px solid #0071e3;border:1px solid var(--primary-color);color:#0071e3;color:var(--primary-color)}.app-install-prompt-container .action-buttons .secondary-button:active,.app-install-prompt-container .action-buttons .secondary-button:hover{background-color:#42a1ff;background-color:var(--primary-color-light)}.mobile-loading-skeleton{animation:mobile-loading-animation ease .5s cubic-bezier(.25,.46,.45,.94) infinite;animation:mobile-loading-animation var(--transition-slow) ease infinite;background:linear-gradient(90deg,#0000000d 25%,#00000017 37%,#0000000d 63%);background:linear-gradient(90deg,var(--skeleton-start-color,#0000000d) 25%,var(--skeleton-middle-color,#00000017) 37%,var(--skeleton-end-color,#0000000d) 63%);background-size:400% 100%;border-radius:6px;border-radius:var(--border-radius-sm)}@media(prefers-color-scheme:dark){.mobile-loading-skeleton{--skeleton-start-color:#ffffff0d;--skeleton-middle-color:#ffffff17;--skeleton-end-color:#ffffff0d}}.mobile-skeleton-button{border-radius:8px;border-radius:var(--border-radius-md);opacity:.8}.mobile-skeleton-image{opacity:.7}.mobile-skeleton-text-container{display:flex;flex-direction:column;width:100%}@keyframes mobile-loading-animation{0%{background-position:100% 50%}to{background-position:0 50%}}.mobile-dashboard{background-color:#f5f5f7;background-color:var(--background-color);display:flex;flex-direction:column;height:100vh;position:relative;width:100%}.mobile-dashboard-content{flex:1 1;overflow-y:auto;padding-bottom:70px}.mobile-dashboard-tabs{background-color:#fff;background-color:var(--card-background);bottom:0;box-shadow:0 -2px 10px #0000001a;left:0;position:fixed;width:100%;z-index:100}.mobile-dashboard-tabs ul{align-items:center;display:flex;height:60px;justify-content:space-around;list-style:none;margin:0;padding:0}.mobile-dashboard-tabs li{flex:1 1;height:100%}.mobile-dashboard-tabs li .tab-button{align-items:center;background:none;border:none;color:#86868b;color:var(--text-secondary);display:flex;flex-direction:column;font-size:.75rem;height:100%;justify-content:center;padding:8px 0;transition:color .2s ease;width:100%}.mobile-dashboard-tabs li .tab-button.active,.mobile-dashboard-tabs li .tab-button.active .tab-icon{color:#0071e3;color:var(--primary-color)}.mobile-dashboard-tabs li .tab-button.logout-button,.mobile-dashboard-tabs li .tab-button.logout-button .tab-icon{color:#ff3b30;color:var(--danger-color,#ff4757)}.mobile-dashboard-tabs li .tab-button .tab-icon{color:#86868b;color:var(--text-secondary);font-size:1.5rem;margin-bottom:4px;transition:color .2s ease}.mobile-dashboard-tabs li .tab-button .tab-label{font-size:.7rem;font-weight:500}.tab-transition-enter{opacity:0;transform:translateY(20px)}.tab-transition-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s,transform .3s}.tab-transition-exit{opacity:1}.tab-transition-exit-active{opacity:0;transition:opacity .3s}.mobile-qr-scanner{background-color:#000;display:flex;flex-direction:column;height:100vh;position:relative;width:100%}.mobile-qr-scanner .scanner-header{align-items:center;background-color:#000c;color:#fff;display:flex;justify-content:space-between;padding:16px;z-index:10}.mobile-qr-scanner .scanner-header h1{font-size:1.2rem;font-weight:500;margin:0}.mobile-qr-scanner .scanner-header .back-button,.mobile-qr-scanner .scanner-header .flash-button{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;justify-content:center;padding:8px}.mobile-qr-scanner .scanner-header .back-button:active,.mobile-qr-scanner .scanner-header .flash-button:active{opacity:.7}.mobile-qr-scanner .scanner-container{flex:1 1;overflow:hidden;position:relative}.mobile-qr-scanner .scanner-container .camera-feed{height:100%;object-fit:cover;width:100%}.mobile-qr-scanner .scanner-container .no-camera-message{align-items:center;background-color:#000000b3;color:#fff;display:flex;flex-direction:column;height:100%;justify-content:center;padding:2rem;text-align:center}.mobile-qr-scanner .scanner-container .no-camera-message p{font-size:1rem;margin-top:1rem}.mobile-qr-scanner .scanner-container .scanner-overlay{align-items:center;background-color:#0000004d;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:5}.mobile-qr-scanner .scanner-container .scanner-overlay .scanner-target{border:2px solid #fff;border-radius:20px;box-shadow:0 0 0 9999px #00000080;height:70%;max-height:300px;max-width:300px;position:relative;width:70%}.mobile-qr-scanner .scanner-container .scanner-overlay .scanner-target:after,.mobile-qr-scanner .scanner-container .scanner-overlay .scanner-target:before{border-color:#0071e3;border-color:var(--primary-color);border-style:solid;border-width:0;content:"";height:30px;position:absolute;width:30px}.mobile-qr-scanner .scanner-container .scanner-overlay .scanner-target:before{border-left-width:4px;border-top-left-radius:10px;border-top-width:4px;top:-2px}.mobile-qr-scanner .scanner-container .scanner-overlay .scanner-target:after{border-right-width:4px;border-top-right-radius:10px;border-top-width:4px;top:-2px}.mobile-qr-scanner .scanner-container .scanner-overlay .scanner-target:before{border-bottom-left-radius:10px;border-color:#0071e3;border-color:var(--primary-color);border-style:solid;border-width:0 0 4px 4px;bottom:-2px;content:"";height:30px;left:-2px;position:absolute;width:30px}.mobile-qr-scanner .scanner-container .scanner-overlay .scanner-target:after{border-bottom-right-radius:10px;border-color:#0071e3;border-color:var(--primary-color);border-style:solid;border-width:0 4px 4px 0;bottom:-2px;content:"";height:30px;position:absolute;right:-2px;width:30px}.mobile-qr-scanner .scanner-container .scanner-instructions{align-items:center;bottom:40px;color:#fff;display:flex;flex-direction:column;gap:16px;left:0;padding:16px;position:absolute;right:0;text-align:center;z-index:6}.mobile-qr-scanner .scanner-container .scanner-instructions p{background-color:#0009;border-radius:24px;display:inline-block;font-size:.9rem;margin:0;padding:12px 24px}.mobile-qr-scanner .scanner-container .scanner-instructions .scan-button{background-color:#0071e3;background-color:var(--primary-color);border:none;border-radius:24px;box-shadow:0 2px 8px #0000004d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:12px 24px;transition:background-color .2s ease}.mobile-qr-scanner .scanner-container .scanner-instructions .scan-button:hover{opacity:.9}.mobile-qr-scanner .scanner-container .scanner-instructions .scan-button:active{transform:translateY(1px)}.skeleton-profile-view .skeleton-username{align-items:center;display:flex;gap:.25rem}.skeleton-profile-view .info-icon-skeleton{align-items:center;display:flex;height:1.25rem;justify-content:center;margin-top:.125rem;width:1.25rem}.skeleton-profile-view .edit-info-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.25rem}.skeleton-profile-view .save-button-container{border-top:.0625rem solid #d2d2d7;border-top:.0625rem solid var(--border-color);display:flex;justify-content:center;margin-top:1.5rem;padding-top:1rem;width:100%}.mobile-profile-page{background-color:#f5f5f7;background-color:var(--background-color);display:flex;flex-direction:column;font-family:var(--font-family);height:100%;width:100%}.mobile-profile-page .mobile-profile-header{align-items:center;background-color:#fff;background-color:var(--card-background);box-shadow:0 .125rem .25rem #0000000d;box-shadow:0 .125rem .25rem var(--shadow-light);display:flex;height:3.5rem;justify-content:space-between;padding:1rem;position:-webkit-sticky;position:sticky;top:0;z-index:10}.mobile-profile-page .mobile-profile-header h1{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;font-weight:600;letter-spacing:-.01em;margin:0}.mobile-profile-page .mobile-profile-header .back-button,.mobile-profile-page .mobile-profile-header .edit-button{align-items:center;background:none;border:none;border-radius:50%;color:#0071e3;color:var(--primary-color);cursor:pointer;display:flex;font-size:1.25rem;height:2.5rem;justify-content:center;padding:.5rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);width:2.5rem}.mobile-profile-page .mobile-profile-header .back-button:focus,.mobile-profile-page .mobile-profile-header .back-button:hover,.mobile-profile-page .mobile-profile-header .edit-button:focus,.mobile-profile-page .mobile-profile-header .edit-button:hover{background-color:#e8e8ed;background-color:var(--hover-color);transform:scale(1.05)}.mobile-profile-page .mobile-profile-header .back-button:active,.mobile-profile-page .mobile-profile-header .edit-button:active{transform:scale(.95)}.mobile-profile-page .mobile-profile-content{-webkit-overflow-scrolling:touch;flex:1 1;overflow-y:auto;padding:1rem}.mobile-profile-page .mobile-profile-content .profile-view{animation:fadeIn .3s ease-in-out;background-color:#fff;background-color:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .0625rem .1875rem #0000000d;box-shadow:0 .0625rem .1875rem var(--shadow-light);display:flex;flex-direction:column;gap:1rem;padding:1.25rem;width:100%}.mobile-profile-page .mobile-profile-content .profile-view.skeleton-profile-view .skeleton-username{align-items:center;display:flex;gap:.25rem}.mobile-profile-page .mobile-profile-content .profile-view.skeleton-profile-view .info-icon-skeleton{align-items:center;display:flex;height:1.25rem;justify-content:center;margin-top:.125rem;width:1.25rem}.mobile-profile-page .profile-header-row{align-items:center;display:flex;gap:1.25rem;margin-bottom:.5rem;padding:1rem 0}.mobile-profile-page .profile-header-row .profile-photo{border:.125rem solid var(--border-color-light);border-radius:25%;box-shadow:0 .125rem .25rem #0000000d;box-shadow:0 .125rem .25rem var(--shadow-light);flex-shrink:0;height:7rem;overflow:hidden;position:relative;width:7rem}.mobile-profile-page .profile-header-row .profile-photo .profile-img{height:100%;object-fit:cover;width:100%}.mobile-profile-page .profile-header-row .profile-photo .profile-placeholder{align-items:center;background:linear-gradient(135deg,#f5f5f7,#e8e8ed);background:linear-gradient(135deg,var(--gray-100),var(--gray-200));color:#86868b;color:var(--gray-500);display:flex;font-size:2rem;height:100%;justify-content:center;transition:all .2s cubic-bezier(.25,.46,.45,.94);width:100%}.mobile-profile-page .profile-header-row .profile-info{flex:1 1}.mobile-profile-page .profile-header-row .profile-info .profile-name{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;font-weight:600;letter-spacing:-.01em;margin:0 0 .25rem}.mobile-profile-page .profile-header-row .profile-info .profile-username{align-items:center;color:#86868b;color:var(--text-secondary);display:flex;font-size:.875rem;font-weight:500;gap:.25rem;margin:0;opacity:.8}.mobile-profile-page .info-items{background-color:var(--card-background-secondary);border-radius:8px;border-radius:var(--border-radius-md);display:flex;flex-direction:column;margin-top:1rem;overflow:hidden;width:100%}.mobile-profile-page .info-item{align-items:center;display:flex;justify-content:space-between;padding:1rem .5rem;transition:background-color .2s cubic-bezier(.25,.46,.45,.94);width:100%}.mobile-profile-page .info-item:active{background-color:#e8e8ed;background-color:var(--hover-color)}.mobile-profile-page .info-item:last-child{border-bottom:none}.mobile-profile-page .info-item-content{align-items:flex-start;display:flex;gap:1rem;position:relative;width:100%}.mobile-profile-page .info-icon{color:#0071e3;color:var(--primary-color);font-size:1.125rem;margin-top:.125rem;min-width:1.125rem;opacity:.8}.mobile-profile-page .info-label{color:#86868b;color:var(--text-secondary);display:block;font-size:.75rem;font-weight:500;letter-spacing:.03em;margin-bottom:.25rem;text-transform:uppercase}.mobile-profile-page .info-value{color:#1d1d1f;color:var(--text-color);font-size:.9375rem;line-height:1.4;margin:0;word-break:break-word}.mobile-profile-page .bio-text{font-size:.9375rem;line-height:1.5;padding:.25rem 0;white-space:pre-line}.mobile-profile-page .form-divider{background-color:#d2d2d7;background-color:var(--border-color);height:.0625rem;margin:0;opacity:.6;width:100%}.mobile-profile-page .logout-section{border-top:.0625rem solid #d2d2d7;border-top:.0625rem solid var(--border-color);display:flex;justify-content:center;margin-top:1.5rem;padding-top:1rem;width:100%}.mobile-profile-page .logout-button{align-items:center;background-color:#0000;border:.0625rem solid #ff3b30;border:.0625rem solid var(--danger-color);border-radius:8px;border-radius:var(--border-radius-md);color:#ff3b30;color:var(--danger-color);cursor:pointer;display:flex;font-size:.9375rem;font-weight:600;gap:.5rem;justify-content:center;max-width:12rem;padding:1rem 1.25rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);width:100%}.mobile-profile-page .logout-button:focus,.mobile-profile-page .logout-button:hover{background-color:var(--danger-color-light);box-shadow:0 .125rem .25rem #ff3b3033;box-shadow:0 .125rem .25rem rgba(var(--danger-color-rgb),.2)}.mobile-profile-page .logout-button:active{box-shadow:none;transform:scale(.98)}.mobile-profile-page .logout-button .logout-icon{font-size:1rem;margin-right:.25rem}.image-picker-modal{align-items:center;animation:fadeIn .2s;background:#00000073;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:2000}.image-picker-modal-content{align-items:stretch;animation:scaleIn .18s;background:#fff;background:var(--card-background,#fff);border-radius:18px;box-shadow:0 6px 32px #0000002e;display:flex;flex-direction:column;gap:1rem;max-width:340px;min-width:260px;padding:2rem 1.5rem 1.2rem;width:90vw}.image-picker-modal .image-picker-btn{background:#4285f4;background:var(--primary-color,#4285f4);border:none;border-radius:8px;box-shadow:0 1px 4px #4285f40f;color:#fff;cursor:pointer;font-size:1.08rem;font-weight:500;margin-bottom:.25rem;outline:none;padding:.9rem .5rem;transition:background .16s}.image-picker-modal .image-picker-btn:focus,.image-picker-modal .image-picker-btn:hover{background:#3367d6;background:var(--primary-color-dark,#3367d6)}.image-picker-modal .image-picker-cancel{background:#0000;border:1px solid #e53935;border:1px solid var(--error-color,#e53935);border-radius:8px;color:#e53935;color:var(--error-color,#e53935);cursor:pointer;font-size:1.02rem;font-weight:500;margin-top:.5rem;padding:.85rem .5rem;transition:background .14s,color .14s}.image-picker-modal .image-picker-cancel:focus,.image-picker-modal .image-picker-cancel:hover{background:#e53935;background:var(--error-color,#e53935);color:#fff}@keyframes scaleIn{0%{transform:scale(.93)}to{transform:scale(1)}}.mobile-edit-profile-page{background-color:#f5f5f7;background-color:var(--background-color);display:flex;flex-direction:column;font-family:var(--font-family);height:100%;width:100%}.mobile-edit-profile-page .mobile-profile-header{align-items:center;background-color:#fff;background-color:var(--card-background);box-shadow:0 .125rem .25rem #0000000d;box-shadow:0 .125rem .25rem var(--shadow-light);display:flex;height:3.5rem;justify-content:space-between;padding:1rem;position:-webkit-sticky;position:sticky;top:0;z-index:10}.mobile-edit-profile-page .mobile-profile-header h1{color:#1d1d1f;color:var(--text-color);font-size:1.25rem;font-weight:600;letter-spacing:-.01em;margin:0}.mobile-edit-profile-page .mobile-profile-header .back-button{align-items:center;background:none;border:none;border-radius:50%;color:#0071e3;color:var(--primary-color);cursor:pointer;display:flex;font-size:1.25rem;height:2.5rem;justify-content:center;padding:.5rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);width:2.5rem}.mobile-edit-profile-page .mobile-profile-header .back-button:focus,.mobile-edit-profile-page .mobile-profile-header .back-button:hover{background-color:#e8e8ed;background-color:var(--hover-color);transform:scale(1.05)}.mobile-edit-profile-page .mobile-profile-header .back-button:active{transform:scale(.95)}.mobile-edit-profile-page .mobile-profile-header .save-button{align-items:center;background:none;border:none;border-radius:50%;color:#0071e3;color:var(--primary-color);cursor:pointer;display:flex;font-size:1.25rem;font-weight:600;height:2.5rem;justify-content:center;padding:.5rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);width:2.5rem}.mobile-edit-profile-page .mobile-profile-header .save-button:focus:not(:disabled),.mobile-edit-profile-page .mobile-profile-header .save-button:hover{background-color:#e8e8ed;background-color:var(--hover-color);transform:scale(1.05)}.mobile-edit-profile-page .mobile-profile-header .save-button:active:not(:disabled){transform:scale(.95)}.mobile-edit-profile-page .mobile-profile-header .save-button:disabled{color:#bbb;color:var(--gray-400);cursor:not-allowed}.mobile-edit-profile-page .mobile-profile-header .header-placeholder{width:40px}.mobile-edit-profile-page .mobile-profile-content{-webkit-overflow-scrolling:touch;flex:1 1;overflow-y:auto;padding:1rem}.mobile-edit-profile-page .mobile-profile-content .edit-profile{animation:fadeIn .3s ease-in-out;background-color:#fff;background-color:var(--card-background);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 .0625rem .1875rem #0000000d;box-shadow:0 .0625rem .1875rem var(--shadow-light);display:flex;flex-direction:column;gap:1rem;padding:1.25rem;width:100%}.mobile-edit-profile-page .profile-photo-container{align-items:center;display:flex;flex-direction:column;margin-bottom:1.25rem;padding:1rem 0}.mobile-edit-profile-page .profile-photo{border:.125rem solid var(--border-color-light);border-radius:25%;box-shadow:0 .125rem .25rem #0000000d;box-shadow:0 .125rem .25rem var(--shadow-light);height:7rem;margin-bottom:1rem;overflow:hidden;position:relative;width:7rem}.mobile-edit-profile-page .profile-photo .profile-img{height:100%;object-fit:cover;width:100%}.mobile-edit-profile-page .profile-photo .profile-placeholder{align-items:center;background:linear-gradient(135deg,#f5f5f7,#e8e8ed);background:linear-gradient(135deg,var(--gray-100),var(--gray-200));color:#86868b;color:var(--gray-500);display:flex;font-size:2rem;height:100%;justify-content:center;transition:all .2s cubic-bezier(.25,.46,.45,.94);width:100%}.mobile-edit-profile-page .profile-photo .upload-overlay{align-items:center;background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%}.mobile-edit-profile-page .profile-photo .upload-overlay .upload-spinner{animation:spin 1s linear infinite;border:.25rem solid #ffffff4d;border-radius:50%;border-top:.25rem solid var(--white);height:2rem;width:2rem}.mobile-edit-profile-page .change-photo-btn{margin-top:1rem;min-width:10rem}.mobile-edit-profile-page .form-container{width:100%}.mobile-edit-profile-page .form-group{margin-bottom:1.25rem;width:100%}.mobile-edit-profile-page .edit-info-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.25rem}.mobile-edit-profile-page .edit-info-header label{color:#86868b;color:var(--text-secondary);font-size:.75rem;font-weight:500;letter-spacing:.03em;text-transform:uppercase}.mobile-edit-profile-page .edit-info-header .info-icon{color:#0071e3;color:var(--primary-color);font-size:1.125rem;opacity:.8}.mobile-edit-profile-page .disabled-note{color:#86868b;color:var(--gray-500);font-size:.75rem;margin-left:auto}.mobile-edit-profile-page .info-input{background-color:var(--card-background-secondary);border:.0625rem solid #d2d2d7;border:.0625rem solid var(--border-color);border-radius:8px;border-radius:var(--border-radius-md);color:#1d1d1f;color:var(--text-color);font-size:.9375rem;padding:.75rem;transition:all .2s cubic-bezier(.25,.46,.45,.94);width:100%}.mobile-edit-profile-page .info-input:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 .125rem #0071e333;box-shadow:0 0 0 .125rem rgba(var(--primary-color-rgb),.2);outline:none}.mobile-edit-profile-page .info-input.error-input{border-color:#ff3b30;border-color:var(--error-color)}.mobile-edit-profile-page .info-input.disabled-input{background-color:#f5f5f7;background-color:var(--gray-100);color:#86868b;color:var(--gray-500);cursor:not-allowed}.mobile-edit-profile-page .info-input.bio-input{min-height:100px;resize:none}.mobile-edit-profile-page .error-message{align-items:center;color:#ff3b30;color:var(--error-color);display:flex;font-size:.75rem;gap:.25rem;margin-top:.25rem}.mobile-edit-profile-page .form-divider{background-color:#d2d2d7;background-color:var(--border-color);height:.0625rem;margin:1rem 0;opacity:.6;width:100%}html{font-size:16px;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;background-color:var(--white-color);color:#333;color:var(--gray-800);font-family:var(--font-family-base);line-height:var(--line-height-base);overflow-x:hidden}.app{background-color:#f5f5f7;background-color:var(--background-color);display:flex;flex-direction:column;min-height:100vh}.container{margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem;width:100%}@media(min-width:640px){.container{max-width:640px;padding-left:1.5rem;padding-right:1.5rem}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1440px){.container{max-width:1440px}}.img-fluid{height:auto;max-width:100%}.text-center{text-align:center}.text-muted{color:#6e6e73;color:var(--gray-600)}.loading-container{align-items:center;background-color:#fffc;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.loading-spinner{animation:spin 1s ease-in-out infinite;border:3px solid #0071e333;border-radius:50%;border-top-color:#0071e3;height:50px;width:50px}@keyframes spin{to{transform:rotate(1turn)}}.m-0{margin:var(--spacer-0)!important}.mt-0,.my-0{margin-top:var(--spacer-0)!important}.mr-0,.mx-0{margin-right:var(--spacer-0)!important}.mb-0,.my-0{margin-bottom:var(--spacer-0)!important}.ml-0,.mx-0{margin-left:var(--spacer-0)!important}.p-0{padding:var(--spacer-0)!important}.pt-0,.py-0{padding-top:var(--spacer-0)!important}.pr-0,.px-0{padding-right:var(--spacer-0)!important}.pb-0,.py-0{padding-bottom:var(--spacer-0)!important}.pl-0,.px-0{padding-left:var(--spacer-0)!important}.m-1{margin:var(--spacer-1)!important}.mt-1,.my-1{margin-top:var(--spacer-1)!important}.mr-1,.mx-1{margin-right:var(--spacer-1)!important}.mb-1,.my-1{margin-bottom:var(--spacer-1)!important}.ml-1,.mx-1{margin-left:var(--spacer-1)!important}.p-1{padding:var(--spacer-1)!important}.pt-1,.py-1{padding-top:var(--spacer-1)!important}.pr-1,.px-1{padding-right:var(--spacer-1)!important}.pb-1,.py-1{padding-bottom:var(--spacer-1)!important}.pl-1,.px-1{padding-left:var(--spacer-1)!important}.m-2{margin:var(--spacer-2)!important}.mt-2,.my-2{margin-top:var(--spacer-2)!important}.mr-2,.mx-2{margin-right:var(--spacer-2)!important}.mb-2,.my-2{margin-bottom:var(--spacer-2)!important}.ml-2,.mx-2{margin-left:var(--spacer-2)!important}.p-2{padding:var(--spacer-2)!important}.pt-2,.py-2{padding-top:var(--spacer-2)!important}.pr-2,.px-2{padding-right:var(--spacer-2)!important}.pb-2,.py-2{padding-bottom:var(--spacer-2)!important}.pl-2,.px-2{padding-left:var(--spacer-2)!important}.m-3{margin:var(--spacer-3)!important}.mt-3,.my-3{margin-top:var(--spacer-3)!important}.mr-3,.mx-3{margin-right:var(--spacer-3)!important}.mb-3,.my-3{margin-bottom:var(--spacer-3)!important}.ml-3,.mx-3{margin-left:var(--spacer-3)!important}.p-3{padding:var(--spacer-3)!important}.pt-3,.py-3{padding-top:var(--spacer-3)!important}.pr-3,.px-3{padding-right:var(--spacer-3)!important}.pb-3,.py-3{padding-bottom:var(--spacer-3)!important}.pl-3,.px-3{padding-left:var(--spacer-3)!important}.m-4{margin:var(--spacer-4)!important}.mt-4,.my-4{margin-top:var(--spacer-4)!important}.mr-4,.mx-4{margin-right:var(--spacer-4)!important}.mb-4,.my-4{margin-bottom:var(--spacer-4)!important}.ml-4,.mx-4{margin-left:var(--spacer-4)!important}.p-4{padding:var(--spacer-4)!important}.pt-4,.py-4{padding-top:var(--spacer-4)!important}.pr-4,.px-4{padding-right:var(--spacer-4)!important}.pb-4,.py-4{padding-bottom:var(--spacer-4)!important}.pl-4,.px-4{padding-left:var(--spacer-4)!important}.m-5{margin:var(--spacer-5)!important}.mt-5,.my-5{margin-top:var(--spacer-5)!important}.mr-5,.mx-5{margin-right:var(--spacer-5)!important}.mb-5,.my-5{margin-bottom:var(--spacer-5)!important}.ml-5,.mx-5{margin-left:var(--spacer-5)!important}.p-5{padding:var(--spacer-5)!important}.pt-5,.py-5{padding-top:var(--spacer-5)!important}.pr-5,.px-5{padding-right:var(--spacer-5)!important}.pb-5,.py-5{padding-bottom:var(--spacer-5)!important}.pl-5,.px-5{padding-left:var(--spacer-5)!important}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes rotateGradient{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}*{box-sizing:border-box;margin:0;padding:0}body,html{background-color:var(--background-light);color:var(--text-primary);line-height:1.5;overflow-x:hidden;scroll-behavior:smooth}.container{margin:0 auto;max-width:75rem;padding:0 1.25rem}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.from-rose-400{--tw-gradient-from:#fb7185;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to,#fb718500)}.to-pink-600{--tw-gradient-to:#db2777}.from-purple-400{--tw-gradient-from:#c084fc;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to,#c084fc00)}.to-indigo-600{--tw-gradient-to:#4f46e5}.from-emerald-400{--tw-gradient-from:#34d399;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to,#34d39900)}.to-teal-600{--tw-gradient-to:#0d9488}.from-amber-400{--tw-gradient-from:#fbbf24;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to,#fbbf2400)}.to-orange-600{--tw-gradient-to:#ea580c}.from-blue-400{--tw-gradient-from:#60a5fa;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to,#60a5fa00)}.to-cyan-600{--tw-gradient-to:#0891b2}.content-container{opacity:0;transform:translateY(1rem);transition:opacity .8s ease,transform .8s ease;visibility:hidden}.content-container.visible{opacity:1;transform:translateY(0);visibility:visible}.unified-landing .hero-section{align-items:center;background:linear-gradient(135deg,#f9fafbf2,#eff6fff2);display:flex;flex-direction:column;justify-content:center;min-height:100vh;overflow:hidden;padding:6rem 2rem;position:relative}.unified-landing .hero-section:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='100' height='100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18a7 7 0 1 0 0-14 7 7 0 0 0 0 14zm48 25a7 7 0 1 0 0-14 7 7 0 0 0 0 14zm-43-7a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm63 31a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM34 90a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm56-76a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 63c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm57-13c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-9-21a2 2 0 1 0 .001-3.999A2 2 0 0 0 80 29zM60 91a2 2 0 1 0 .001-3.999A2 2 0 0 0 60 91zM35 41a2 2 0 1 0 .001-3.999A2 2 0 0 0 35 41zM12 60a2 2 0 1 0 .001-3.999A2 2 0 0 0 12 60z' fill='%23e0e7ff' fill-opacity='.6' fill-rule='evenodd'/%3E%3C/svg%3E");bottom:0;content:"";left:0;opacity:.5;position:absolute;right:0;top:0;z-index:-1}.unified-landing .hero-section:after{animation:rotateGradient 30s linear infinite;background:radial-gradient(circle,#fffc 0,#fff0 60%);content:"";height:200%;left:-50%;opacity:.6;position:absolute;top:-50%;width:200%;z-index:-1}.unified-landing .hero-section .hero-content{animation:fadeSlideUp 1.2s ease-out;display:flex;flex-direction:column;margin:0 auto;max-width:55rem;text-align:center;z-index:1}.unified-landing .hero-section .hero-content h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#06c,#a569bd);-webkit-background-clip:text;background-clip:text;font-size:3rem;font-weight:800;letter-spacing:-.02em;line-height:1.1;margin:5rem 1.5rem 1.5rem;text-shadow:0 10px 20px #0000000a}.unified-landing .hero-section .hero-content .hero-subtitle{color:#6e6e73;font-size:1.35rem;font-weight:400;line-height:1.6;margin-left:auto;margin-right:auto;max-width:42rem}.unified-landing .hero-section .hero-cta-container{display:flex;gap:2.5rem;justify-content:center;margin-bottom:4rem;margin-top:1rem;max-width:55rem;perspective:1000px;width:100%}.unified-landing .hero-section .hero-cta-container .cta-card{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#ffffffe6;border:1px solid #ffffffe6;border-radius:1.25rem;box-shadow:0 15px 35px #00000012,0 5px 15px #00000008;padding:2.5rem 2rem;transform-style:preserve-3d;transition:all .4s cubic-bezier(.165,.84,.44,1);width:20rem}.unified-landing .hero-section .hero-cta-container .cta-card:hover{border-color:#fff;box-shadow:0 20px 40px #0000001f,0 8px 20px #0000000f;transform:translateY(-8px) rotateX(3deg)}.unified-landing .hero-section .hero-cta-container .cta-card .cta-icon{align-items:center;border-radius:20%;display:flex;font-size:1.75rem;height:4rem;justify-content:center;margin:0 auto 1.75rem;overflow:hidden;position:relative;width:4rem}.unified-landing .hero-section .hero-cta-container .cta-card .cta-icon:before{background:inherit;content:"";filter:blur(10px);height:100%;left:0;opacity:.2;position:absolute;top:0;transform:scale(1.5);width:100%;z-index:-1}.unified-landing .hero-section .hero-cta-container .cta-card .cta-icon svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));height:1.75rem;width:1.75rem}.unified-landing .hero-section .hero-cta-container .cta-card.couples-cta .cta-icon{background:linear-gradient(135deg,#ff6b6b,#ee5253);box-shadow:0 8px 20px #ee525340;color:#fff}.unified-landing .hero-section .hero-cta-container .cta-card.photographers-cta .cta-icon{background:linear-gradient(135deg,#54a0ff,#2e86de);box-shadow:0 8px 20px #2e86de40;color:#fff}.unified-landing .hero-section .hero-cta-container .cta-card h3{font-size:1.4rem;font-weight:700;letter-spacing:-.01em;margin-bottom:.85rem;text-align:center}.unified-landing .hero-section .hero-cta-container .cta-card p{color:#6e6e73;font-size:1rem;line-height:1.6;margin-bottom:1.75rem;text-align:center}.unified-landing .hero-section .hero-cta-container .cta-card .cta-button{border-radius:.75rem;display:block;font-weight:600;overflow:hidden;padding:.9rem;position:relative;text-align:center;text-decoration:none;transition:all .3s cubic-bezier(.165,.84,.44,1);width:100%}.unified-landing .hero-section .hero-cta-container .cta-card .cta-button:before{background:linear-gradient(90deg,#fff0,#ffffff4d 50%,#fff0);content:"";height:100%;left:-100%;position:absolute;top:0;transition:all .6s ease;width:100%}.unified-landing .hero-section .hero-cta-container .cta-card .cta-button:hover:before{left:100%}.unified-landing .hero-section .hero-cta-container .cta-card .cta-button.primary{background:linear-gradient(135deg,#ff6b6b,#ee5253);color:#fff}.unified-landing .hero-section .hero-cta-container .cta-card .cta-button.primary:hover{box-shadow:0 8px 20px #ee525359;transform:translateY(-2px)}.unified-landing .hero-section .hero-cta-container .cta-card .cta-button.secondary{background:linear-gradient(135deg,#54a0ff,#2e86de);color:#fff}.unified-landing .hero-section .hero-cta-container .cta-card .cta-button.secondary:hover{box-shadow:0 8px 20px #2e86de59;transform:translateY(-2px)}.unified-landing .hero-section .scroll-down-button{align-items:center;background:none;border:none;color:#6e6e73;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;margin:0 auto;transition:all .2s ease}.unified-landing .hero-section .scroll-down-button svg{animation:pulse 2s infinite}.unified-landing .hero-section .scroll-down-button:hover{color:#06c}.unified-landing .hero-section .hero-visual{max-width:30rem;position:absolute;right:5%;top:50%;transform:translateY(-50%);width:40%;z-index:0}@media(max-width:1200px){.unified-landing .hero-section .hero-visual{display:none}}.unified-landing .hero-section .hero-visual .app-showcase{position:relative}.unified-landing .hero-section .hero-visual .app-showcase .app-image{animation:float 6s ease-in-out infinite;border-radius:1.5rem;box-shadow:0 20px 40px #0000001a;height:auto;width:100%}.unified-landing .hero-section .hero-visual .app-showcase .floating-element{align-items:center;background:#fff;border-radius:.75rem;box-shadow:0 10px 20px #0000000d;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.75rem 1rem;position:absolute}.unified-landing .hero-section .hero-visual .app-showcase .floating-element svg{color:#06c}.unified-landing .hero-section .hero-visual .app-showcase .floating-element.element-1{animation:float 5s ease-in-out infinite;left:-15%;top:20%}.unified-landing .hero-section .hero-visual .app-showcase .floating-element.element-2{animation:float 5s ease-in-out 1s infinite;bottom:20%;right:-15%}.unified-landing .trust-section{background:#fff;box-shadow:0 -10px 30px #00000008;padding:2rem 0}.unified-landing .trust-section .trust-container{align-items:center;display:flex;justify-content:center;margin:0 auto;max-width:50rem}.unified-landing .trust-section .trust-container .trust-item{padding:0 2rem;text-align:center}.unified-landing .trust-section .trust-container .trust-item strong{color:#06c;display:block;font-size:2rem;font-weight:700;margin-bottom:.25rem}.unified-landing .trust-section .trust-container .trust-item span{color:#6e6e73;font-size:.9rem}.unified-landing .trust-section .trust-container .trust-divider{background:#0000001a;height:3rem;width:1px}.unified-landing .core-features{background:linear-gradient(135deg,#f0f0ff80,#ffffff80);padding:6rem 0}.unified-landing .core-features .section-header{align-items:center;display:flex;flex-direction:column;margin:0 auto 4rem;max-width:40rem;text-align:center}.unified-landing .core-features .section-header h2{color:#1d1d1f;font-size:2.5rem;font-weight:700;margin-bottom:1rem}.unified-landing .core-features .section-header p{color:#6e6e73;font-size:1.1rem}.unified-landing .core-features .features-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));margin:0 auto;max-width:75rem;padding:0 2rem}.unified-landing .core-features .features-grid .feature-item{background:#fff;border-radius:1rem;box-shadow:0 10px 30px #0000000d;padding:2rem;text-align:center;transition:all .3s ease}.unified-landing .core-features .features-grid .feature-item:hover{box-shadow:0 15px 35px #0000001a;transform:translateY(-5px)}.unified-landing .core-features .features-grid .feature-item .feature-icon{align-items:center;background:linear-gradient(135deg,#06c,#a569bd);border-radius:1rem;color:#fff;display:flex;height:4rem;justify-content:center;margin:0 auto 1.5rem;width:4rem}.unified-landing .core-features .features-grid .feature-item .feature-icon svg{height:2rem;width:2rem}.unified-landing .core-features .features-grid .feature-item h3{color:#1d1d1f;font-size:1.25rem;font-weight:600;margin-bottom:.75rem}.unified-landing .core-features .features-grid .feature-item p{color:#6e6e73;font-size:.9rem;line-height:1.5}@media(max-width:768px){.unified-landing .hero-section{padding:5rem 1rem}.unified-landing .hero-section .hero-content h1{font-size:2rem;margin-bottom:1.25rem}.unified-landing .hero-section .hero-content .hero-subtitle{font-size:1rem;margin-bottom:2.5rem}.unified-landing .hero-section .hero-cta-container{align-items:center;flex-direction:column;gap:2rem;padding:0 1rem}.unified-landing .hero-section .hero-cta-container .cta-card{max-width:24rem;padding:2rem 1.5rem;transform:none!important;width:100%}.unified-landing .hero-section .hero-cta-container .cta-card:hover{transform:translateY(-5px)!important}.unified-landing .trust-section .trust-container{flex-direction:column;gap:2rem}.unified-landing .trust-section .trust-container .trust-divider{height:1px;width:50%}.unified-landing .how-it-works .steps-container{flex-direction:column;gap:2rem}.unified-landing .how-it-works .steps-container .step-connector{height:3rem;margin-top:0;width:2px}.unified-landing .how-it-works .steps-container .step-connector:after{border:6px solid #0000;border-bottom:none;border-top-color:#0000001a;right:50%;top:100%;transform:translateX(50%)}.unified-landing .core-features{padding:4rem 0}.unified-landing .core-features .section-header{margin:0 auto 2.5rem}.unified-landing .core-features .section-header h2{font-size:1.8rem;margin-bottom:.75rem}.unified-landing .core-features .section-header p{font-size:1rem}.unified-landing .section-header h2{font-size:1.8rem;margin-bottom:.75rem}}.testimonial-card{background-color:#fff;border-radius:1rem;box-shadow:0 2px 1.25rem #0000000a;padding:2.5rem;text-align:left;transition:all .3s ease}.testimonial-card:hover{box-shadow:0 1rem 2.5rem #00000014;transform:translateY(-.5rem)}.testimonial-text{color:#1d1d1f;font-size:1.125rem;line-height:1.6;margin-bottom:1.5rem;position:relative}.testimonial-text:before{color:#0066cc1a;content:'"';font-family:serif;font-size:4rem;left:-.5rem;position:absolute;top:-1.5rem;z-index:0}.testimonial-author{align-items:center;display:flex}.author-avatar{border-radius:50%;height:3.125rem;margin-right:1rem;overflow:hidden;width:3.125rem}.author-avatar img{height:100%;object-fit:cover;width:100%}.author-info h4{color:#1d1d1f;font-size:1rem;font-weight:600;margin-bottom:.25rem}.author-info p{color:#6e6e73;font-size:.875rem}@media screen and (max-width:48rem){.testimonial-card{padding:2rem}.testimonial-text{font-size:1rem}}.testimonials{background-color:#f5f5f7;padding:7.5rem 0;text-align:center}.testimonials h2{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#06c,#a569bd);-webkit-background-clip:text;background-clip:text;font-size:3rem;font-weight:700;letter-spacing:-.5px;margin-bottom:4rem}.testimonial-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(3,1fr)}@media screen and (max-width:48rem){.testimonials{padding:5rem 0}.testimonials h2{font-size:2rem;margin-bottom:3rem}.testimonial-grid{gap:1.5rem;grid-template-columns:1fr;margin:0 auto;max-width:25rem}}.loading-animation{animation:fadeOut .5s ease-in-out 3s forwards;background-color:#fff;height:100%;left:0;position:fixed;top:0;width:100%;z-index:1000}.loading-animation,.loading-animation .logo-container{align-items:center;display:flex;justify-content:center}.loading-animation .logo-container{flex-direction:column;text-align:center}.loading-animation .logo-image{height:5rem;margin-bottom:1rem;width:auto}.loading-animation .logo-image.stage-0{animation:fadeIn .5s ease-in-out forwards;opacity:0;transform:scale(.8)}.loading-animation .logo-image.stage-1{animation:cameraRotate 1s ease-in-out forwards}.loading-animation .logo-image.stage-2{animation:cameraFlash 1s ease-in-out forwards}.loading-animation .logo-image.stage-3{animation:cameraFinalRotate 1s ease-in-out forwards}.loading-animation .logo-text{background:linear-gradient(135deg,#06c,#004080);background-clip:text;-webkit-background-clip:text;color:#0000;font-weight:700;text-shadow:0 .0625rem .125rem #0000000d}.loading-animation .loading-text{animation:fadeInOut 2.5s ease-in-out 1s forwards;color:#6e6e73;font-size:1rem;opacity:0}@keyframes fadeOut{0%{opacity:1}to{opacity:0;visibility:hidden}}@keyframes fadeInOut{0%{opacity:0}20%{opacity:1}80%{opacity:1}to{opacity:0}}@keyframes cameraRotate{0%{transform:rotate(0deg) scale(1)}25%{transform:rotate(-15deg) scale(.95)}50%{transform:rotate(-30deg) scale(.9)}75%{transform:rotate(-15deg) scale(.95)}to{transform:rotate(0deg) scale(1)}}@keyframes cameraFlash{0%{filter:brightness(1);transform:rotate(0deg) scale(1)}20%{filter:brightness(1);transform:rotate(0deg) scale(.9)}50%{filter:brightness(2);transform:rotate(0deg) scale(.85)}80%{filter:brightness(1.2);transform:rotate(0deg) scale(.9)}to{filter:brightness(1);transform:rotate(0deg) scale(1)}}@keyframes cameraFinalRotate{0%{transform:rotate(0deg) scale(1)}25%{transform:rotate(15deg) scale(.95)}50%{transform:rotate(30deg) scale(.9)}75%{transform:rotate(15deg) scale(.95)}to{transform:rotate(0deg) scale(1.1)}}.cta-section{background:linear-gradient(90deg,#06c,#a569bd);overflow:hidden;padding:7.5rem 0;position:relative}.cta-section:before{background:radial-gradient(circle at 20% 20%,#ffffff1a 0,#0000 50%),radial-gradient(circle at 80% 80%,#ffffff1a 0,#0000 50%);content:"";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.container{position:relative;z-index:2}.cta-content{animation:fadeIn 1s ease-out forwards;margin:0 auto;max-width:40rem;opacity:0;text-align:center}.cta-content h2{color:#fff;font-size:2.5rem;font-weight:700;letter-spacing:-.5px;margin-bottom:1.5rem}.cta-content p{color:#ffffffe6;font-size:1.25rem;line-height:1.6;margin-bottom:3rem}@media(max-width:48rem){.cta-content h2{font-size:2rem}.cta-content p{font-size:1.125rem}}.cta-buttons{justify-content:center;margin-bottom:3rem}@media(max-width:30rem){.cta-buttons{align-items:center;flex-direction:column}}.cta-buttons .primary-button,.cta-buttons .secondary-button{border-radius:1rem;box-shadow:0 .25rem 1rem #00000026;font-size:1rem;font-weight:600;padding:1rem 2rem;transition:all .3s ease}.cta-buttons .primary-button:hover,.cta-buttons .secondary-button:hover{box-shadow:0 .5rem 1.5rem #00000040;transform:translateY(-.125rem)}.cta-buttons .primary-button:focus,.cta-buttons .secondary-button:focus{outline:.125rem solid #ffffff80;outline-offset:.125rem}.cta-buttons .primary-button{background:#fff;border:none;color:#06c}.cta-buttons .secondary-button{background:#0000;border:2px solid #ffffff4d;color:#fff}.cta-features{display:flex;gap:3rem;justify-content:center}@media(max-width:48rem){.cta-features{gap:1.5rem}}@media(max-width:30rem){.cta-features{align-items:center;flex-direction:column;gap:1rem}}.cta-features .feature{align-items:center;display:flex}.cta-features .feature .feature-icon{font-size:1.25rem;margin-right:.75rem}.cta-features .feature .feature-text{color:#fff;font-size:1rem;font-weight:500}.cta-decoration{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.decoration-element{background:#ffffff1a;border-radius:50%;position:absolute}.decoration-element.element-1{animation:float 8s ease-in-out infinite;height:15rem;left:-5rem;top:-5rem;width:15rem}.decoration-element.element-2{animation:float 10s ease-in-out infinite reverse;bottom:-3rem;height:10rem;right:10%;width:10rem}.decoration-element.element-3{animation:float 6s ease-in-out infinite;height:5rem;right:5%;top:30%;width:5rem}.decoration-element.element-4{animation:float 9s ease-in-out infinite reverse;bottom:20%;height:8rem;left:15%;width:8rem}.decoration-element.element-5{animation:float 7s ease-in-out infinite;height:12rem;right:-3rem;top:10%;width:12rem}@media(max-width:48rem){.cta-section{padding:4rem 0}}.how-it-works{background:linear-gradient(180deg,#fff,#ffffffb3);overflow:hidden;padding:7.5rem 0;position:relative}.how-it-works .container{margin:0 auto;max-width:100rem;padding:0 2rem}.how-it-works:before{background:radial-gradient(circle at 10% 30%,#0066cc0d 0,#0000 50%),radial-gradient(circle at 90% 70%,#a569bd0d 0,#0000 50%);content:"";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.how-it-works .section-intro{animation:fadeIn 1s ease-out forwards;margin-bottom:5rem;opacity:0;text-align:center}.how-it-works .section-intro h2{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#06c,#a569bd);-webkit-background-clip:text;background-clip:text;font-size:3rem;font-weight:700;letter-spacing:-.5px;margin-bottom:1.5rem}.how-it-works .section-intro p{color:#6e6e73;font-size:1.25rem;line-height:1.6;margin:0 auto;max-width:37.5rem}.how-it-works .steps-container{grid-gap:2.5rem;display:grid;gap:2.5rem;grid-template-columns:repeat(4,1fr);margin:0 auto 4rem;position:relative;width:100%}@media(max-width:1200px){.how-it-works .steps-container{gap:2rem}}@media(max-width:48rem){.how-it-works .steps-container{gap:3rem 2.5rem;grid-template-columns:repeat(2,1fr)}}@media(max-width:30rem){.how-it-works .steps-container{gap:3rem;grid-template-columns:1fr;margin-left:auto;margin-right:auto;max-width:28rem}}.how-it-works .steps-container:after{background:linear-gradient(90deg,#06c3,#06c6 50%,#a569bd33);border-radius:6.25rem;box-shadow:0 .125rem .5rem #0066cc26;content:"";height:.25rem;left:3.5rem;position:absolute;right:3.5rem;top:5.5rem;z-index:1}@media(max-width:48rem){.how-it-works .steps-container:after{display:none}}.how-it-works .step-card{animation:slideUp .8s ease-out forwards;animation-delay:0s;animation-delay:var(--step-delay,0s);background:#fff;border:1px solid #0066cc0d;border-radius:1.5rem;box-shadow:0 .5rem 1.5rem #00000014;display:flex;flex-direction:column;height:100%;margin:1.5rem 0;min-height:22rem;opacity:0;padding:2.5rem 2rem 2rem;position:relative;text-align:center;transform:translateY(2rem);transition:all .3s ease;z-index:2}.how-it-works .step-card:hover{border-color:#0066cc1a;box-shadow:0 1rem 2rem #0066cc26;transform:translateY(-.5rem)}.how-it-works .step-card:before{background:linear-gradient(90deg,#06c,#a569bd);border-radius:1.5rem 1.5rem 0 0;content:"";height:.25rem;left:0;position:absolute;right:0;top:0}.how-it-works .step-card .step-icon{align-items:center;background:#0066cc0d;border-radius:50%;display:inline-block;display:flex;font-size:2.5rem;height:5rem;justify-content:center;margin:0 auto 2rem;position:relative;transition:all .3s ease;width:5rem}.how-it-works .step-card .step-icon:after{background:#0066cc1a;border-radius:50%;bottom:-.5rem;content:"";left:-.5rem;opacity:0;position:absolute;right:-.5rem;top:-.5rem;transform:scale(.8);transition:all .3s ease;z-index:-1}.how-it-works .step-card:hover .step-icon{background:#0066cc1a;transform:scale(1.05) rotate(5deg)}.how-it-works .step-card:hover .step-icon:after{opacity:1;transform:scale(1)}.how-it-works .step-card .step-number{align-items:center;background:linear-gradient(90deg,#06c,#a569bd);border:3px solid #fff;border-radius:50%;box-shadow:0 .25rem .75rem #0066cc4d;color:#fff;display:flex;font-size:1.25rem;font-weight:700;height:3rem;justify-content:center;left:50%;position:absolute;top:-1.5rem;transform:translateX(-50%);width:3rem;z-index:3}.how-it-works .step-card h3{color:#1d1d1f;font-size:1.25rem;font-weight:600;margin-bottom:1.5rem;padding-bottom:1rem;position:relative}.how-it-works .step-card h3:after{background:linear-gradient(90deg,#06c,#a569bd);border-radius:6.25rem;bottom:0;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);width:4rem}.how-it-works .step-card p{color:#6e6e73;font-size:1rem;line-height:1.6;margin-top:auto;padding:0}.how-it-works .step-card .step-arrow{align-items:center;animation:pulse 2s infinite;background:#fff;border-radius:50%;box-shadow:0 .25rem .75rem #0000001a;color:#06c;display:flex;height:3rem;justify-content:center;position:absolute;right:-1.5rem;top:5.5rem;width:3rem;z-index:4}.how-it-works .step-card .step-arrow svg{height:1.5rem;width:1.5rem}@media(max-width:48rem){.how-it-works .step-card .step-arrow{display:none}}.how-it-works .how-it-works-cta{animation:fadeIn 1s ease-out .8s forwards;display:flex;gap:1rem;justify-content:center;margin-top:4rem;opacity:0}@media(max-width:30rem){.how-it-works .how-it-works-cta{align-items:center;flex-direction:column}}.how-it-works .how-it-works-cta .primary-button,.how-it-works .how-it-works-cta .secondary-button{border-radius:1rem;box-shadow:0 .25rem 1rem #0000001a;font-size:1rem;font-weight:600;padding:.875rem 1.75rem;transition:all .3s ease}.how-it-works .how-it-works-cta .primary-button:hover,.how-it-works .how-it-works-cta .secondary-button:hover{box-shadow:0 .5rem 1.5rem #00000026;transform:translateY(-.125rem)}.how-it-works .how-it-works-cta .primary-button:focus,.how-it-works .how-it-works-cta .secondary-button:focus{outline:.125rem solid #0066cc80;outline-offset:.125rem}.how-it-works .how-it-works-cta .primary-button{background:linear-gradient(90deg,#06c,#a569bd);border:none;color:#fff}.how-it-works .how-it-works-cta .secondary-button{background:#0000;border:1px solid #0066cc4d;color:#06c}@keyframes slideUp{0%{opacity:0;transform:translateY(2rem)}to{opacity:1;transform:translateY(0)}}@media(max-width:48rem){.how-it-works{padding:4rem 0}.section-intro{margin-bottom:3rem}.section-intro h2{font-size:2rem}.section-intro p{font-size:1rem}}.photographer-landing{background-color:#fff;color:#1d1d1f;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Helvetica Neue,sans-serif;overflow-x:hidden}.photographer-landing .section-navigator{display:flex;flex-direction:column;gap:.75rem;position:fixed;right:1.5rem;top:50%;transform:translateY(-50%);transition:opacity .3s ease;z-index:100}.photographer-landing .section-navigator .nav-dot{background-color:#ffffff80;border:1px solid #06c;border-radius:50%;cursor:pointer;height:.75rem;padding:0;position:relative;transition:all .3s ease;width:.75rem}.photographer-landing .section-navigator .nav-dot:after{background-color:#fff;border-radius:.5rem;box-shadow:0 2px 1.25rem #0000000a;color:#1d1d1f;content:attr(data-tooltip);font-size:.75rem;opacity:0;padding:.5rem .75rem;pointer-events:none;position:absolute;right:1.5rem;top:50%;transform:translateY(-50%) scale(.8);transition:all .2s ease;white-space:nowrap}.photographer-landing .section-navigator .nav-dot:hover:after{opacity:1;transform:translateY(-50%) scale(1)}.photographer-landing .section-navigator .nav-dot.active{background-color:#06c;transform:scale(1.2)}.photographer-landing .section-navigator .nav-dot:hover{background-color:#0066ccb3;transform:scale(1.1)}.photographer-landing .photographer-stats{background-color:#f5f5f7;border-radius:1rem 1rem 0 0;box-shadow:0 -.625rem 1.25rem #0000000d;margin-top:-1.25rem;padding:2rem 0;position:relative;width:100%;z-index:10}.photographer-landing .photographer-stats .container{margin:0 auto;max-width:75rem;padding:0 1.5rem}.photographer-landing .photographer-stats .stats-wrapper{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-around;width:100%}.photographer-landing .photographer-stats .stat-item{align-items:center;display:flex;flex-direction:column;flex-wrap:nowrap;justify-content:center;padding:0 1rem;text-align:center;transition:transform .3s ease}.photographer-landing .photographer-stats .stat-item:hover{transform:translateY(-.25rem)}.photographer-landing .photographer-stats .stat-item .stat-number{-webkit-text-fill-color:#0000;background-clip:text;-webkit-background-clip:text;background:linear-gradient(90deg,#06c,#a569bd);color:#06c;color:#0000;font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.photographer-landing .photographer-stats .stat-item .stat-label{color:#6e6e73;font-size:.875rem;line-height:1.4;max-width:9.375rem}.photographer-landing .hero{min-height:90vh}.photographer-landing .hero .hero-content{gap:3rem}.photographer-landing .features-section{background:linear-gradient(180deg,#fff,#f5f5f7);padding:5rem 0}.photographer-landing .features-section .section-title{font-size:2.5rem;font-weight:700;letter-spacing:-.01em;line-height:1.2;margin-bottom:3rem;text-align:center}@media(max-width:768px){.photographer-landing .features-section .section-title{font-size:2rem}}.photographer-landing .features-section .features-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(18.75rem,1fr));width:100%}.photographer-landing .features-section .features-grid .feature-card{background-color:var(--card-background);border-radius:var(--border-radius-md);box-shadow:0 2px 12px var(--shadow-light);height:100%;padding:2rem;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.photographer-landing .features-section .features-grid .feature-card:hover{box-shadow:0 8px 24px var(--shadow-medium);box-shadow:0 .625rem 1.875rem #00000014;transform:translateY(-4px);transform:translateY(-.625rem)}.photographer-landing .features-section .features-grid .feature-card .feature-icon{color:#06c;font-size:2rem;margin-bottom:1rem}.photographer-landing .features-section .features-grid .feature-card .feature-title{font-size:1.25rem;font-weight:600;margin-bottom:.75rem}.photographer-landing .features-section .features-grid .feature-card .feature-description{color:#6e6e73;font-size:1rem;line-height:1.6}.photographer-landing .pricing-section{padding:5rem 0}.photographer-landing .pricing-section .pricing-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(18.75rem,1fr));width:100%}.photographer-landing .pricing-section .pricing-grid .pricing-card{background-color:var(--card-background);border-radius:var(--border-radius-md);box-shadow:0 2px 12px var(--shadow-light);height:100%;padding:2rem;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.photographer-landing .pricing-section .pricing-grid .pricing-card:hover{box-shadow:0 8px 24px var(--shadow-medium);transform:translateY(-4px)}.photographer-landing .pricing-section .pricing-grid .pricing-card.featured{border:2px solid #06c;transform:scale(1.05)}.photographer-landing .pricing-section .pricing-grid .pricing-card.featured .pricing-header{background:linear-gradient(90deg,#06c,#a569bd);border-radius:.75rem .75rem 0 0;color:#fff;margin:-2rem -2rem 1.5rem;padding:1.5rem}.photographer-landing .cta-section{background:linear-gradient(90deg,#06c,#a569bd);color:#fff;padding:5rem 0;text-align:center}.photographer-landing .cta-section .cta-content{margin:0 auto;max-width:40rem}.photographer-landing .cta-section .cta-content .cta-title{font-size:2.5rem;font-weight:700;letter-spacing:-.01em;line-height:1.2;margin-bottom:1.5rem}@media(max-width:768px){.photographer-landing .cta-section .cta-content .cta-title{font-size:2rem}}.photographer-landing .cta-section .cta-content .cta-description{font-size:1.125rem;margin-bottom:2rem;opacity:.9}.photographer-landing .cta-section .cta-content .cta-buttons{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:1rem;justify-content:center}.photographer-landing .cta-section .cta-content .cta-buttons .primary-button{align-items:center;background-color:var(--primary-color);border:none;border-radius:var(--border-radius-md);color:var(--text-on-primary);cursor:pointer;display:inline-flex;font-weight:600;justify-content:center;outline:none;padding:.75rem 1.5rem;text-decoration:none;transition:all var(--transition-fast)}.photographer-landing .cta-section .cta-content .cta-buttons .primary-button:focus,.photographer-landing .cta-section .cta-content .cta-buttons .primary-button:hover{background-color:var(--primary-color-hover);box-shadow:0 4px 12px rgba(var(--primary-color-rgb),.25);transform:translateY(-2px)}.photographer-landing .cta-section .cta-content .cta-buttons .primary-button:active{background-color:var(--primary-color-active);transform:translateY(0)}.photographer-landing .cta-section .cta-content .cta-buttons .secondary-button{align-items:center;background-color:#0000;border:1px solid #ffffff80;border-radius:var(--border-radius-md);color:var(--text-color);color:#fff;cursor:pointer;display:inline-flex;font-weight:600;justify-content:center;outline:none;padding:.75rem 1.5rem;text-decoration:none;transition:all var(--transition-fast)}.photographer-landing .cta-section .cta-content .cta-buttons .secondary-button:focus,.photographer-landing .cta-section .cta-content .cta-buttons .secondary-button:hover{border-color:var(--primary-color);color:var(--primary-color);transform:translateY(-2px)}.photographer-landing .cta-section .cta-content .cta-buttons .secondary-button:active{background-color:var(--secondary-color);transform:translateY(0)}.photographer-landing .cta-section .cta-content .cta-buttons .secondary-button:hover{background-color:#ffffff1a;border-color:#fff}@media(max-width:992px){.photographer-landing .section-navigator{right:.75rem}.photographer-landing .section-navigator .nav-dot:after{display:none}.photographer-landing .workflow-steps{flex-direction:column}.photographer-landing .workflow-steps .workflow-step{margin-bottom:2rem;width:100%}.photographer-landing .features-grid,.photographer-landing .pricing-grid{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}.photographer-landing .faq-grid{grid-template-columns:1fr}}@media(max-width:768px){.photographer-landing .section-navigator{display:none}.photographer-landing .photographer-stats{padding:1.5rem 0}.photographer-landing .photographer-stats .stats-wrapper{flex-direction:column;gap:1.5rem}.photographer-landing .photographer-stats .stat-item{margin:0 auto;max-width:18.75rem;width:100%}.photographer-landing .photographer-stats .stat-item .stat-number{font-size:2rem}.photographer-landing .hero .hero-content{gap:2rem}.photographer-landing .cta-section,.photographer-landing .features-section,.photographer-landing .pricing-section{padding:3rem 0}.photographer-landing .cta-section .cta-buttons{flex-direction:column;width:100%}.photographer-landing .cta-section .cta-buttons button{width:100%}}@media(max-width:480px){.photographer-landing .photographer-stats .stat-item .stat-number{font-size:1.5rem}.photographer-landing .photographer-stats .stat-item .stat-label{font-size:.75rem}.photographer-landing .features-grid,.photographer-landing .pricing-grid{grid-template-columns:1fr}.photographer-landing .pricing-section .pricing-card.featured{transform:scale(1)}}.hero{align-items:center;background:linear-gradient(to bottom,var(--bg-color),var(--bg-color-alt));background:var(--bg-gradient-desktop,linear-gradient(to bottom,var(--bg-color),var(--bg-color-alt)));display:flex;min-height:100vh;overflow:hidden;padding-bottom:5rem;padding-bottom:var(--spacing-5xl,5rem);padding-top:6rem;padding-top:var(--spacing-6xl,6rem);position:relative}.hero:before{background:radial-gradient(circle,rgba(var(--primary-color-rgb),.05) 0,#0000 70%);right:-5%;top:-5%}.hero:after,.hero:before{content:"";height:40%;position:absolute;width:40%;z-index:0}.hero:after{background:radial-gradient(circle,rgba(var(--secondary-color-rgb),.05) 0,#0000 70%);bottom:-5%;left:-5%}.hero-content{align-items:center;display:grid;grid-template-columns:1fr 1fr;position:relative;width:100%;z-index:1}@media(max-width:48rem){.hero-content{grid-template-columns:1fr;text-align:center}}.hero-text{max-width:37.5rem}@media(max-width:48rem){.hero-text{max-width:100%;order:1}}.hero-title{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#06c,#a569bd);-webkit-background-clip:text;background-clip:text;color:#1d1d1f;font-size:3.5rem;font-weight:700;letter-spacing:-.025em;line-height:1.1;margin-bottom:1rem;min-height:5rem}@media(max-width:48rem){.hero-title{font-size:2.5rem;min-height:auto}}.hero-subtitle{animation:slideInUp .8s ease-out .2s forwards;color:#6e6e73;font-size:1.25rem;font-weight:500;margin-bottom:1.5rem;opacity:0}@media(max-width:48rem){.hero-subtitle{font-size:1.125rem}}.hero-description{animation:slideInUp .8s ease-out .4s forwards;color:#86868b;font-size:1.125rem;line-height:1.7;margin-bottom:2.5rem;opacity:0}@media(max-width:48rem){.hero-description{font-size:1rem;line-height:1.6}}.slide-text{opacity:0;transform:translateY(1.25rem);transition:all .6s cubic-bezier(.25,.46,.45,.94)}.slide-text.active{opacity:1;transform:translateY(0)}.cta-buttons{animation:slideInUp .8s ease-out .6s forwards;display:flex;gap:1rem;margin-bottom:2.5rem;opacity:0}@media(max-width:48rem){.cta-buttons{flex-wrap:wrap;justify-content:center}}.cta-buttons .primary-cta,.cta-buttons .secondary-cta{border-radius:1rem;box-shadow:0 .25rem 1rem #0000001a;font-size:1rem;font-weight:600;overflow:hidden;padding:.875rem 1.75rem;position:relative;transition:all .3s ease}.cta-buttons .primary-cta:hover,.cta-buttons .secondary-cta:hover{box-shadow:0 .5rem 1.5625rem #00000026;transform:translateY(-.125rem)}.cta-buttons .primary-cta:focus,.cta-buttons .secondary-cta:focus{outline:.125rem solid #0066cc80;outline-offset:.125rem}.cta-buttons .primary-cta{background:linear-gradient(90deg,#06c,#a569bd);border:none;color:#fff}.cta-buttons .primary-cta:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:0;position:absolute;top:0;transform:translateX(-100%);transition:transform .6s ease;width:100%}.cta-buttons .primary-cta:hover:before{transform:translateX(100%)}.cta-buttons .secondary-cta{-webkit-backdrop-filter:blur(.625rem);backdrop-filter:blur(.625rem);background:#0066cc0d;border:1px solid #06c3;color:#06c}.cta-buttons .secondary-cta:hover{background:#0066cc1a}.download-options{animation:slideInUp .8s ease-out .8s forwards;display:flex;gap:1.5rem;margin-bottom:1.5rem;opacity:0}@media(max-width:48rem){.download-options{flex-wrap:wrap;justify-content:center}}.download-button{background:none;border:none;border-radius:.5rem;border-radius:var(--border-radius-md,.5rem);box-shadow:0 .25rem 1rem #0000001a;cursor:pointer;overflow:hidden;transition:all .3s ease;transition:all var(--transition-normal,.3s ease)}.download-button:hover{box-shadow:0 .5rem 1.5625rem #00000026;transform:translateY(-.125rem)}.download-button:focus{outline:.125rem solid rgba(var(--primary-color-rgb),.5);outline-offset:.125rem}.download-button.app-store-button,.download-button.play-store-button{height:2.5rem}.download-button.app-store-button img,.download-button.play-store-button img{display:block;height:2.5rem;width:auto}@media(max-width:var(--breakpoint-mobile,30rem)){.download-button.app-store-button,.download-button.app-store-button img,.download-button.play-store-button,.download-button.play-store-button img{height:2.25rem}}.carousel-container{animation:fadeIn 1s ease-out .8s forwards;border-radius:1.5rem;box-shadow:0 1.5625rem 3.125rem #00000026;cursor:pointer;height:25rem;max-width:37.5rem;opacity:0;overflow:hidden;position:relative;transform:translateY(1.25rem);width:100%}@media(max-width:48rem){.carousel-container{height:20rem;margin-top:2rem;max-width:100%;order:2}}@media(max-width:30rem){.carousel-container{height:18rem}}.carousel-wrapper{height:100%;position:relative;width:100%}.carousel-wrapper:hover .carousel-controls{opacity:1}.carousel-slide{height:100%;left:0;opacity:0;position:absolute;top:0;transition:transform .8s cubic-bezier(.25,.46,.45,.94);width:100%}.carousel-slide.slide-position--5{transform:translateX(-500%)}.carousel-slide.slide-position--4{transform:translateX(-400%)}.carousel-slide.slide-position--3{transform:translateX(-300%)}.carousel-slide.slide-position--2{transform:translateX(-200%)}.carousel-slide.slide-position--1{transform:translateX(-100%)}.carousel-slide.slide-position-0{transform:translateX(0)}.carousel-slide.slide-position-1{transform:translateX(100%)}.carousel-slide.slide-position-2{transform:translateX(200%)}.carousel-slide.slide-position-3{transform:translateX(300%)}.carousel-slide.slide-position-4{transform:translateX(400%)}.carousel-slide.slide-position-5{transform:translateX(500%)}.carousel-slide.active{opacity:1;z-index:1}.carousel-slide.prev{transform:translateX(-100%)}.carousel-slide.next{transform:translateX(100%)}.carousel-slide.from-rose-400.to-pink-600{background:linear-gradient(135deg,#fb7185,#db2777)}.carousel-slide.from-purple-400.to-indigo-600{background:linear-gradient(135deg,#c084fc,#4f46e5)}.carousel-slide.from-emerald-400.to-teal-600{background:linear-gradient(135deg,#34d399,#0d9488)}.carousel-slide.from-amber-400.to-orange-600{background:linear-gradient(135deg,#fbbf24,#ea580c)}.carousel-slide.from-blue-400.to-cyan-600{background:linear-gradient(135deg,#60a5fa,#0891b2)}.slide-image-container{align-items:center;display:flex;height:100%;justify-content:center;overflow:hidden;position:relative;width:100%}.slide-image-container .device-mockup{height:85%;position:relative;width:85%;z-index:3}.slide-image-container .device-mockup .device-frame{background:#fff;border-radius:1.5rem;border-radius:2.5rem;box-shadow:25px 50px #00000040;height:100%;overflow:hidden;padding:.5rem;position:relative;width:100%}.slide-image-container .device-mockup .device-frame .device-screen{border-radius:1.25rem;height:100%;overflow:hidden;position:relative;width:100%}.slide-image-container .device-mockup .device-frame .device-screen .slide-image{height:100%;object-fit:cover;width:100%}.slide-image-container .device-mockup .ui-elements{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:4}.slide-image-container .device-mockup .ui-elements .ui-badge{background:#ffffffe6;border-radius:1rem;box-shadow:0 .25rem .5rem #0000001a;color:#1d1d1f;font-size:.75rem;font-weight:600;padding:.375rem .75rem;position:absolute}.slide-image-container .device-mockup .ui-elements .ui-badge.ceremony-badge:first-child{left:1rem;top:1rem}.slide-image-container .device-mockup .ui-elements .ui-badge.ceremony-badge:nth-child(2){right:1rem;top:1rem}.slide-image-container .device-mockup .ui-elements .ui-badge.ceremony-badge:nth-child(3){bottom:1rem;left:1rem}.slide-image-container .device-mockup .ui-elements .face-groups{display:flex;gap:1rem;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.slide-image-container .device-mockup .ui-elements .face-groups .face-group{align-items:center;animation:float 3s ease-in-out infinite;background:#ffffffe6;border-radius:50%;box-shadow:0 .25rem .5rem #0000001a;display:flex;font-size:1.5rem;height:3.5rem;justify-content:center;width:3.5rem}.slide-image-container .device-mockup .ui-elements .face-groups .face-group:nth-child(2){animation-delay:.5s}.slide-image-container .device-mockup .ui-elements .face-groups .face-group:nth-child(3){animation-delay:1s}.slide-image-container .device-mockup .ui-elements .privacy-shield{align-items:center;display:flex;flex-direction:column;gap:1rem;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.slide-image-container .device-mockup .ui-elements .privacy-shield .lock-icon{align-items:center;animation:pulse 2s ease-in-out infinite;background:#ffffffe6;border-radius:50%;box-shadow:0 .25rem .5rem #0000001a;display:flex;font-size:2.5rem;height:4rem;justify-content:center;width:4rem}.slide-image-container .device-mockup .ui-elements .privacy-shield .qr-code{background:#ffffffe6;border-radius:.5rem;box-shadow:0 .25rem .5rem #0000001a;height:5rem;position:relative;width:5rem}.slide-image-container .device-mockup .ui-elements .privacy-shield .qr-code:after,.slide-image-container .device-mockup .ui-elements .privacy-shield .qr-code:before{background:#1d1d1f;content:"";position:absolute}.slide-image-container .device-mockup .ui-elements .privacy-shield .qr-code:before{background:repeating-conic-gradient(#1d1d1f 0 25%,#0000 0 50%);background-size:1rem 1rem;height:60%;left:20%;top:20%;width:60%}.slide-gradient{background:linear-gradient(180deg,#06c3,#a569bd33);height:100%;left:0;opacity:.7;position:absolute;top:0;width:100%;z-index:1}.slide-image{filter:brightness(.95);height:100%;object-fit:cover;object-position:center;transform:scale(1.05);transition:transform 8s cubic-bezier(.25,.46,.45,.94);width:100%}.carousel-slide.active .slide-image{transform:scale(1)}.carousel-controls{bottom:1rem;display:flex;gap:.5rem;opacity:0;position:absolute;right:1rem;transition:opacity .3s ease;z-index:2}@media(max-width:30rem){.carousel-controls{opacity:1}}.slide-overlay{background:linear-gradient(45deg,#0000004d,#0000001a 50%,#ffffff1a);height:100%;left:0;position:absolute;top:0;width:100%;z-index:2}.carousel-dots{bottom:1.5rem;display:flex;gap:.75rem;left:50%;position:absolute;transform:translateX(-50%);z-index:3}@media(max-width:30rem){.carousel-dots{bottom:1rem;gap:.5rem}}.dot{-webkit-backdrop-filter:blur(.625rem);backdrop-filter:blur(.625rem);background:#ffffff4d;border:.125rem solid #fffc;border-radius:50%;cursor:pointer;height:.75rem;transition:all .3s ease;width:.75rem}@media(max-width:30rem){.dot{height:.625rem;width:.625rem}}.dot:hover{transform:scale(1.1)}.dot.active{background:#fff;transform:scale(1.2)}.progress-container{background-color:#fff3;bottom:0;height:.25rem;left:0;position:absolute;width:100%;z-index:10}.progress-bar{animation:progress 5s linear infinite;animation-play-state:running;background-color:var(--primary-color);height:100%;transform-origin:left;width:100%}.progress-bar.paused{animation-play-state:paused}.progress-bar.playing{animation-play-state:running}.control-button{align-items:center;-webkit-backdrop-filter:blur(.625rem);backdrop-filter:blur(.625rem);background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.125rem;height:2.5rem;justify-content:center;transition:all .3s ease;width:2.5rem}.control-button:hover{background:#ffffff4d;transform:scale(1.05)}.control-button:focus{outline:.125rem solid #0066cc80;outline-offset:.125rem}@media(max-width:30rem){.control-button{height:2rem;width:2rem}}@keyframes progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.photographer-section{background:linear-gradient(180deg,#fff,#f5f5f7);overflow:hidden;padding:7.5rem 0;position:relative}.photographer-section:before{background:radial-gradient(circle at 80% 20%,#0066cc0d 0,#0000 50%),radial-gradient(circle at 20% 80%,#a569bd0d 0,#0000 50%);content:"";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.photographer-intro{animation:fadeIn 1s ease-out forwards;margin-bottom:5rem;opacity:0;text-align:center}.photographer-intro h2{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#06c,#a569bd);-webkit-background-clip:text;background-clip:text;font-size:3rem;font-weight:700;letter-spacing:-.5px;margin-bottom:1.5rem}.photographer-intro p{color:#6e6e73;font-size:1.25rem;line-height:1.6;margin:0 auto;max-width:37.5rem}.photographer-grid{grid-gap:5rem;align-items:center;display:grid;gap:5rem;grid-template-columns:1fr 1fr;margin-bottom:4rem}@media(max-width:48rem){.photographer-grid{gap:3rem;grid-template-columns:1fr}}.photographer-content{animation:slideInLeft 1s ease-out .2s forwards;opacity:0}.photographer-content h3{color:#1d1d1f;font-size:2rem;font-weight:700;margin-bottom:1.5rem}.photographer-content>p{color:#6e6e73;font-size:1.125rem;line-height:1.6;margin-bottom:2.5rem}.photographer-features{list-style:none;margin:0 0 3rem;padding:0}.photographer-features li{align-items:flex-start;display:flex;margin-bottom:1.5rem}.photographer-features li .feature-icon{align-items:center;background:#0066cc1a;border-radius:1rem;display:flex;flex-shrink:0;font-size:1.5rem;height:3rem;justify-content:center;margin-right:1.5rem;width:3rem}.photographer-features li div strong{color:#1d1d1f;display:block;font-size:1.125rem;font-weight:600;margin-bottom:.25rem}.photographer-features li div p{color:#6e6e73;font-size:1rem;margin:0}.photographer-cta{display:flex;gap:1rem}@media(max-width:30rem){.photographer-cta{flex-direction:column}}.photographer-cta .primary-button,.photographer-cta .secondary-button{border-radius:1rem;box-shadow:0 .25rem 1rem #0000001a;font-size:1rem;font-weight:600;padding:.875rem 1.75rem;transition:all .3s ease}.photographer-cta .primary-button:hover,.photographer-cta .secondary-button:hover{box-shadow:0 .5rem 1.5rem #00000026;transform:translateY(-.125rem)}.photographer-cta .primary-button:focus,.photographer-cta .secondary-button:focus{outline:.125rem solid #0066cc80;outline-offset:.125rem}.photographer-cta .primary-button{background:linear-gradient(90deg,#06c,#a569bd);border:none;color:#fff}.photographer-cta .secondary-button{background:#0000;border:1px solid #0066cc4d;color:#06c}.photographer-showcase{animation:slideInRight 1s ease-out .4s forwards;opacity:0}.dashboard-mockup{background:#fff;border-radius:1.5rem;box-shadow:0 1.25rem 3.75rem #00000026;overflow:hidden;position:relative}.dashboard-mockup .dashboard-header{align-items:center;background:linear-gradient(90deg,#06c,#a569bd);display:flex;justify-content:space-between;padding:1rem 1.5rem}.dashboard-mockup .dashboard-header .dashboard-logo{color:#fff;font-size:1.125rem;font-weight:700}.dashboard-mockup .dashboard-header .dashboard-nav{display:flex;gap:.5rem}.dashboard-mockup .dashboard-header .dashboard-nav span{background:#ffffff80;border-radius:50%;height:.5rem;width:.5rem}.dashboard-mockup .dashboard-content{display:flex;height:20rem}.dashboard-mockup .dashboard-content .sidebar{background:#f5f5f7;display:flex;flex-direction:column;gap:1rem;padding:1rem;width:4rem}.dashboard-mockup .dashboard-content .sidebar .sidebar-item{background:#6e6e731a;border-radius:.75rem;height:2rem;width:100%}.dashboard-mockup .dashboard-content .sidebar .sidebar-item.active{background:#06c3}.dashboard-mockup .dashboard-content .main-content{flex:1 1;padding:1.5rem}.dashboard-mockup .dashboard-content .main-content .content-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.dashboard-mockup .dashboard-content .main-content .content-header .header-title{color:#1d1d1f;font-size:1.125rem;font-weight:600}.dashboard-mockup .dashboard-content .main-content .content-header .header-actions{background:#6e6e731a;border-radius:6.25rem;height:1.5rem;width:5rem}.dashboard-mockup .dashboard-content .main-content .gallery-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr))}.dashboard-mockup .dashboard-content .main-content .gallery-grid .gallery-item .gallery-thumbnail{background:linear-gradient(135deg,#0066cc1a,#a569bd1a);border-radius:.75rem;height:7rem;margin-bottom:.75rem}.dashboard-mockup .dashboard-content .main-content .gallery-grid .gallery-item .gallery-info .gallery-title{color:#1d1d1f;font-size:.875rem;font-weight:500;margin-bottom:.25rem}.dashboard-mockup .dashboard-content .main-content .gallery-grid .gallery-item .gallery-info .gallery-meta{color:#6e6e73;font-size:.75rem}.dashboard-mockup .dashboard-url{background:#f5f5f7;color:#6e6e73;font-size:.875rem;padding:.75rem;text-align:center}.testimonials{animation:fadeIn 1s ease-out .6s forwards;margin-top:5rem;opacity:0}.testimonial{background:#fff;border-radius:1.5rem;box-shadow:0 1rem 2.5rem #0000001a;margin:0 auto;max-width:40rem;padding:2rem}.testimonial .testimonial-content{color:#1d1d1f;font-size:1.125rem;font-style:italic;line-height:1.6;margin-bottom:1.5rem;position:relative}.testimonial .testimonial-content:before{color:#0066cc1a;content:'"';font-family:serif;font-size:5rem;left:-.5rem;position:absolute;top:-1.5rem}.testimonial .testimonial-author{align-items:center;display:flex}.testimonial .testimonial-author .author-avatar{align-items:center;background:linear-gradient(90deg,#06c,#a569bd);border-radius:50%;color:#fff;display:flex;font-weight:600;height:3rem;justify-content:center;margin-right:1rem;width:3rem}.testimonial .testimonial-author .author-info .author-name{color:#1d1d1f;font-weight:600;margin-bottom:.25rem}.testimonial .testimonial-author .author-info .author-title{color:#6e6e73;font-size:.875rem}@media(max-width:48rem){.photographer-section{padding:4rem 0}.photographer-intro{margin-bottom:3rem}.photographer-intro h2{font-size:2rem}.photographer-intro p{font-size:1rem}.dashboard-mockup .dashboard-content{height:15rem}.testimonial{padding:1.5rem}.testimonial .testimonial-content{font-size:1rem}}.features{background:linear-gradient(180deg,#f5f5f7,#fff);overflow:hidden;padding:7.5rem 0;position:relative}.features:before{background:radial-gradient(circle at 20% 20%,#0066cc0d 0,#0000 50%),radial-gradient(circle at 80% 80%,#a569bd0d 0,#0000 50%);content:"";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.features-intro{animation:slideInUp .8s ease-out .2s forwards;margin-bottom:5rem;opacity:0;text-align:center;transform:translateY(1.875rem)}.features-intro h2{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#06c,#a569bd);-webkit-background-clip:text;background-clip:text;font-size:3rem;font-weight:700;letter-spacing:-.5px;margin-bottom:1.5rem}.features-intro p{color:#6e6e73;font-size:1.25rem;line-height:1.6;margin:0 auto 2.5rem;max-width:37.5rem}.features-intro .features-cta{margin-top:2.5rem}.features-intro .features-cta .feature-cta-button{background:linear-gradient(90deg,#06c,#a569bd);border:none;border-radius:1rem;box-shadow:0 .25rem 1rem #0000001a;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.875rem 2rem;transition:all .3s ease}.features-intro .features-cta .feature-cta-button:hover{box-shadow:0 .5rem 1.5rem #00000026;transform:translateY(-.125rem)}.features-intro .features-cta .feature-cta-button:focus{outline:.125rem solid #0066cc80;outline-offset:.125rem}.trust-indicators{display:flex;gap:3.75rem;justify-content:center;margin-top:2.5rem}.trust-item{text-align:center}.trust-item strong{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#06c,#a569bd);-webkit-background-clip:text;background-clip:text;display:block;font-size:2rem;font-weight:700;margin-bottom:.25rem}.trust-item span{color:#6e6e73;font-size:.875rem;font-weight:500}.features-container{display:flex;flex-direction:column;gap:2rem;margin-bottom:7.5rem;margin-left:auto;margin-right:auto;max-width:75rem}.feature-row{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border:1px solid #fffc;border-radius:1.5rem;box-shadow:0 10px 30px #0000000d,0 1px 3px #00000008;opacity:0;overflow:hidden;position:relative;transform:translateY(30px);transition:all .3s ease}.feature-row.visible{opacity:1;transform:translateY(0)}.feature-row:hover{border-color:#06c3;box-shadow:0 15px 35px #0000001a,0 3px 10px #0000000d;transform:translateY(-5px)}.feature-row .feature-row-content{display:flex;padding:2.5rem;position:relative;z-index:1}.feature-row .feature-left{display:flex;flex:3 1;gap:2rem}.feature-row .feature-icon{flex-shrink:0;position:relative}.feature-row .feature-icon .icon-wrapper{align-items:center;background:linear-gradient(90deg,#06c,#a569bd);border-radius:1rem;box-shadow:0 5px 15px #0066cc4d;color:#fff;display:flex;height:4rem;justify-content:center;width:4rem}.feature-row .feature-icon .icon-wrapper svg{height:2rem;width:2rem}.feature-row .feature-icon .icon-pulse{animation:pulse 2s infinite;background:#0000;border:2px solid #0066cc4d;border-radius:1rem;height:4rem;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);width:4rem;z-index:-1}.feature-row .feature-text{display:flex;flex-direction:column;gap:1rem}.feature-row .feature-text h3{color:#1d1d1f;font-size:1.5rem;font-weight:600;margin:0}.feature-row .feature-text .feature-description{color:#6e6e73;font-size:1rem;line-height:1.6;margin:0}.feature-row .feature-list{display:flex;flex-wrap:wrap;gap:1rem 2rem;margin:1rem 0}.feature-row .feature-list .feature-item{align-items:center;display:flex;gap:.5rem}.feature-row .feature-list .feature-item .feature-check{align-items:center;background:#0066cc1a;border-radius:50%;color:#06c;display:flex;flex-shrink:0;font-size:.75rem;height:1.25rem;justify-content:center;width:1.25rem}.feature-row .feature-list .feature-item span{color:#6e6e73;font-size:.875rem}.feature-row .feature-stats{align-items:center;display:flex;gap:.5rem;margin-top:.75rem}.feature-row .feature-stats .stat-value{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#06c,#a569bd);-webkit-background-clip:text;background-clip:text;font-size:1.25rem;font-weight:700}.feature-row .feature-stats .stat-label{color:#6e6e73;font-size:.75rem;font-weight:500}.feature-row .feature-right{align-items:center;display:flex;flex:2 1;justify-content:center}.feature-row .feature-right .demo-content{align-items:center;background:#ffffff80;border-radius:1rem;display:flex;height:100%;justify-content:center;min-height:12rem;padding:1rem;transition:transform .3s ease;width:100%}.feature-row .feature-right .demo-content:hover{transform:scale(1.02)}.feature-row .feature-row-hover{background:linear-gradient(135deg,#0066cc0d,#a569bd0d);height:100%;left:0;opacity:0;pointer-events:none;position:absolute;top:0;transition:opacity .3s ease;width:100%}.feature-row .feature-row-hover.active{opacity:1}.sub-album-demo .album-stack{display:flex;height:10rem;justify-content:center;position:relative}.sub-album-demo .album-stack .album{align-items:center;background:#fff;border-radius:1rem;box-shadow:0 .5rem 1.5rem #0000001a;color:#1d1d1f;display:flex;font-weight:600;height:8rem;justify-content:center;position:absolute;transition:transform .3s ease;width:8rem}.sub-album-demo .album-stack .album.album-1{background:linear-gradient(135deg,#fde68a,#fbbf24);transform:translateX(-60%) rotate(-5deg);z-index:1}.sub-album-demo .album-stack .album.album-2{background:linear-gradient(135deg,#c4b5fd,#8b5cf6);z-index:2}.sub-album-demo .album-stack .album.album-3{background:linear-gradient(135deg,#a7f3d0,#34d399);transform:translateX(60%) rotate(5deg);z-index:1}.sub-album-demo .album-stack:hover .album-1{transform:translateX(-80%) rotate(-8deg)}.sub-album-demo .album-stack:hover .album-3{transform:translateX(80%) rotate(8deg)}.ai-demo .face-grid{display:flex;gap:1rem;justify-content:center}.ai-demo .face-grid .face-group{text-align:center}.ai-demo .face-grid .face-group .face-thumbnail{align-items:center;background:#fff;border-radius:50%;box-shadow:0 .25rem .75rem #0000001a;display:flex;font-size:1.5rem;height:3.5rem;justify-content:center;margin-bottom:.5rem;transition:transform .3s ease;width:3.5rem}.ai-demo .face-grid .face-group .face-thumbnail:hover{transform:scale(1.1)}.ai-demo .face-grid .face-group .photo-count{color:#6e6e73;font-size:.75rem;font-weight:500}.photographer-demo .dashboard-preview{background:#fff;border-radius:1rem;box-shadow:0 .5rem 1.5rem #0000001a;overflow:hidden}.photographer-demo .dashboard-preview .dashboard-header{align-items:center;background:linear-gradient(90deg,#06c,#a569bd);display:flex;justify-content:space-between;padding:1rem}.photographer-demo .dashboard-preview .dashboard-header .logo-placeholder{background:#fff3;border-radius:50%;height:2rem;width:2rem}.photographer-demo .dashboard-preview .dashboard-header .domain-badge{background:#fff3;border-radius:6.25rem;color:#fff;font-size:.75rem;padding:.25rem .75rem}.photographer-demo .dashboard-preview .client-list{padding:1rem}.photographer-demo .dashboard-preview .client-list .client-item{background:#f5f5f7;border-radius:.5rem;height:1.5rem;margin-bottom:.5rem}.photographer-demo .dashboard-preview .client-list .client-item:last-child{margin-bottom:0;width:70%}.sharing-demo .qr-display{align-items:center;display:flex;flex-direction:column;gap:1rem}.sharing-demo .qr-display .qr-code{background:#fff;border-radius:.75rem;box-shadow:0 .25rem .75rem #0000001a;height:5rem;position:relative;width:5rem}.sharing-demo .qr-display .qr-code:before{background:repeating-conic-gradient(#1d1d1f 0 25%,#0000 0 50%);background-size:1rem 1rem;content:"";height:60%;left:20%;position:absolute;top:20%;width:60%}.sharing-demo .qr-display .phone-invite{align-items:center;background:#fff;border-radius:6.25rem;box-shadow:0 .25rem .75rem #0000001a;display:flex;gap:.5rem;padding:.5rem .75rem}.sharing-demo .qr-display .phone-invite .phone-icon{font-size:1.25rem}.sharing-demo .qr-display .phone-invite .invite-text{color:#1d1d1f;font-size:.875rem;font-weight:500}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-.3125rem)}}@keyframes fillProgress{0%{width:0}50%{width:100%}to{width:100%}}@media screen and (max-width:48rem){.features{padding:5rem 0}.features-intro h2{font-size:2rem}.features-intro p{font-size:1rem;margin-bottom:2rem}.trust-indicators{align-items:center;flex-direction:column;gap:1.5rem}.trust-item{align-items:center;display:flex;gap:.75rem}.trust-item strong{font-size:1.25rem;margin-bottom:0}.features-container{gap:1.5rem;margin-bottom:4rem;padding:0 1rem}.feature-row .feature-row-content{flex-direction:column;padding:2rem}.feature-row .feature-left{align-items:center;flex-direction:column;gap:1rem;margin-bottom:2rem;text-align:center}.feature-row .feature-list,.feature-row .feature-stats{justify-content:center}.feature-row .feature-right{width:100%}.feature-row .feature-right .demo-content{min-height:8rem}.how-it-works{padding:3rem 0}.how-it-works h2{font-size:1.5rem;margin-bottom:2.5rem}.how-it-works .steps-container{flex-direction:column}.how-it-works .steps-container .step{padding:1.5rem 0}.how-it-works .steps-container .step-arrow{margin:.75rem 0;transform:rotate(90deg)}.sub-album-demo .album-stack .album{height:6rem;width:6rem}.ai-demo .face-grid{flex-wrap:wrap}}.pricing-card{background-color:#fff;border:1px solid #0000000d;border-radius:1rem;box-shadow:0 2px 1.25rem #0000000a;overflow:hidden;transition:all .3s ease;width:18.75rem}.pricing-card:hover{box-shadow:0 .625rem 1.875rem #0000001a;transform:translateY(-.3125rem)}.pricing-card.featured{border:none;box-shadow:0 .5rem 1.875rem #0066cc26;transform:scale(1.05)}.pricing-card.featured:hover{transform:scale(1.05) translateY(-.3125rem)}.pricing-header{border-bottom:1px solid #0000000d;padding:1.875rem 1.5625rem}.pricing-header h3{font-size:1.25rem;font-weight:600;margin-bottom:1rem}.price{color:#1d1d1f;font-size:2.625rem;font-weight:700;margin-bottom:.3125rem}.billing-cycle{color:#6e6e73;font-size:.875rem}.pricing-features{padding:1.5625rem}.pricing-features ul{list-style:none;margin:0;padding:0;text-align:left}.pricing-features ul li{font-size:.875rem;padding:.625rem 0 .625rem 1.5625rem;position:relative}.pricing-features ul li:before{color:#06c;content:"✓";font-weight:700;left:0;position:absolute}.pricing-button{background-color:#f5f5f7;border:none;color:#1d1d1f;cursor:pointer;font-size:1rem;font-weight:600;padding:.9375rem 1.25rem;transition:all .2s ease;width:100%}.pricing-button:hover{background-color:#ededf0}.pricing-button.featured-button{background-color:#06c;color:#fff}.pricing-button.featured-button:hover{background-color:#0052a3}@media screen and (max-width:48rem){.pricing-card{max-width:21.875rem;width:100%}.pricing-card.featured{order:-1;transform:none}.pricing-card.featured:hover{transform:translateY(-.3125rem)}}.cta{background:linear-gradient(180deg,#fff,#f5f5f7);padding:7.5rem 0;text-align:center}.cta h2{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#06c,#a569bd);-webkit-background-clip:text;background-clip:text;font-size:3rem;font-weight:700;letter-spacing:-.5px;margin-bottom:1.5rem}.cta p{color:#6e6e73;font-size:1.25rem;margin:0 auto 4rem;max-width:37.5rem}.pricing-container{display:flex;gap:2rem;justify-content:center;margin-bottom:2.5rem}.pricing-footnote{color:#6e6e73;font-size:.875rem;margin-top:2rem}.pricing-footnote a{color:#06c;margin-left:.3125rem;text-decoration:none}.pricing-footnote a:hover{text-decoration:underline}@media screen and (max-width:48rem){.cta{padding:5rem 0}.cta h2{font-size:2rem}.cta p{font-size:1rem;margin-bottom:3rem}.pricing-container{align-items:center;flex-direction:column;gap:2rem}}@keyframes slideInUp{0%{opacity:0;transform:translateY(1.875rem)}to{opacity:1;transform:translateY(0)}}.wedding-features-container .wedding-features{background:linear-gradient(180deg,#f8f9ff,#ffffffe6);opacity:0;overflow:hidden;padding:7.5rem 0;position:relative;transform:translateY(20px)}.wedding-features-container .wedding-features.visible{opacity:1;transform:translateY(0)}.wedding-features-container .wedding-features:before{background:radial-gradient(circle at 20% 20%,#ff6b6b0d 0,#0000 50%),radial-gradient(circle at 80% 80%,#4f46e50d 0,#0000 50%);content:"";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.wedding-features-container .section-header{margin-bottom:4rem;text-align:center}.wedding-features-container .section-header .section-tag{background:linear-gradient(135deg,#ff6b6b,#ee5253);border-radius:2rem;box-shadow:0 4px 10px #ee525340;color:#fff;display:inline-block;font-size:.875rem;font-weight:600;margin-bottom:1.5rem;padding:.5rem 1rem}.wedding-features-container .section-header h2{color:#333;font-size:2.75rem;font-weight:800;line-height:1.2;margin-bottom:1rem}.wedding-features-container .section-header h2 .highlight{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#ff6b6b,#ee5253);-webkit-background-clip:text;background-clip:text}.wedding-features-container .section-header p{color:#666;font-size:1.125rem;line-height:1.6;margin:0 auto;max-width:37.5rem}.wedding-features-container .wedding-features-grid{display:flex;flex-direction:column;gap:5rem;margin-bottom:5rem;margin-left:auto;margin-right:auto;max-width:1200px;padding:0 1.5rem}.wedding-features-container .wedding-feature-card{grid-gap:3rem;align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border:1px solid #fff9;border-radius:1.5rem;box-shadow:0 10px 30px #0000000d;display:grid;gap:3rem;grid-template-columns:1fr 1fr;opacity:0;padding:3rem;transform:translateY(30px);transition:all .5s ease}.wedding-features-container .wedding-feature-card.visible{opacity:1;transform:translateY(0)}.wedding-features-container .wedding-feature-card:hover{box-shadow:0 15px 40px #00000014;transform:translateY(-5px)}.wedding-features-container .wedding-feature-card:nth-child(2n) .feature-left{order:2}.wedding-features-container .wedding-feature-card:nth-child(2n) .feature-right{order:1}@media(max-width:992px){.wedding-features-container .wedding-feature-card{gap:2rem;grid-template-columns:1fr;padding:2rem}.wedding-features-container .wedding-feature-card .feature-left,.wedding-features-container .wedding-feature-card .feature-right{order:0!important}.wedding-features-container .wedding-feature-card .feature-left{order:1}.wedding-features-container .wedding-feature-card .feature-right{order:2}}.wedding-features-container .feature-left h3{color:#333;font-size:1.75rem;font-weight:700;margin-bottom:1rem}.wedding-features-container .feature-left p{color:#666;font-size:1rem;line-height:1.6;margin-bottom:1.5rem}.wedding-features-container .feature-left .feature-icon-container{align-items:center;background:linear-gradient(135deg,#ff6b6b,#ee5253);border-radius:1rem;box-shadow:0 8px 15px #ee525340;color:#fff;display:flex;font-size:1.25rem;height:3.5rem;justify-content:center;margin-bottom:1.5rem;width:3.5rem}.wedding-features-container .feature-list{list-style:none;margin:0;padding:0}.wedding-features-container .feature-list li{align-items:center;color:#555;display:flex;font-size:.95rem;margin-bottom:.75rem}.wedding-features-container .feature-list li .check-icon{align-items:center;background:linear-gradient(135deg,#ff6b6b,#ee5253);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.75rem;height:1.25rem;justify-content:center;margin-right:.75rem;width:1.25rem}.wedding-features-container .feature-right{align-items:center;display:flex;height:100%;justify-content:center;min-height:320px;position:relative}@media(max-width:992px){.wedding-features-container .feature-right{min-height:280px}}.wedding-features-container .sub-albums-showcase{align-items:center;display:flex;height:100%;justify-content:center;perspective:1000px;position:relative;width:100%}.wedding-features-container .sub-albums-showcase .floating-badge{align-items:center;animation:float 3s ease-in-out infinite;background:linear-gradient(135deg,#4f46e5,#6366f1);border-radius:1rem;box-shadow:0 4px 10px #4f46e54d;color:#fff;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;position:absolute;right:-15px;top:-15px;z-index:10}.wedding-features-container .album-card{background:#fff;border-radius:1rem;box-shadow:0 10px 25px #0000001a;height:16rem;padding:1rem;position:absolute;transition:all .5s ease;width:12rem}.wedding-features-container .album-card.haldi{transform:translateX(-40%) translateY(-5%) rotateY(-15deg);z-index:1}.wedding-features-container .album-card.haldi .album-badge,.wedding-features-container .album-card.haldi .album-thumbnail{background:linear-gradient(135deg,gold,orange)}.wedding-features-container .album-card.sangeet{z-index:2}.wedding-features-container .album-card.sangeet .album-badge,.wedding-features-container .album-card.sangeet .album-thumbnail{background:linear-gradient(135deg,#9c27b0,#673ab7)}.wedding-features-container .album-card.reception{transform:translateX(40%) translateY(-5%) rotateY(15deg);z-index:1}.wedding-features-container .album-card.reception .album-badge,.wedding-features-container .album-card.reception .album-thumbnail{background:linear-gradient(135deg,#f44336,#e91e63)}.wedding-features-container .album-card:hover{box-shadow:0 15px 35px #00000026;transform:translateY(-10px)}.wedding-features-container .album-card:hover.haldi{transform:translateX(-35%) translateY(-15%) rotateY(-10deg)}.wedding-features-container .album-card:hover.reception{transform:translateX(35%) translateY(-15%) rotateY(10deg)}.wedding-features-container .album-badge{border-radius:1rem;color:#fff;display:inline-block;font-size:.75rem;font-weight:600;margin-bottom:.75rem;padding:.25rem .75rem}.wedding-features-container .album-thumbnail{border-radius:.5rem;height:9rem;margin-bottom:.75rem;overflow:hidden;position:relative;width:100%}.wedding-features-container .album-thumbnail:after{content:"";height:100%;left:0;opacity:.2;position:absolute;top:0;width:100%}.wedding-features-container .album-count{align-items:center;color:#666;display:flex;font-size:.75rem;gap:.25rem}.wedding-features-container .ai-face-showcase{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;position:relative;width:100%}.wedding-features-container .ai-face-showcase .ai-badge{align-items:center;animation:float 3s ease-in-out infinite;background:linear-gradient(135deg,#10b981,#059669);border-radius:1rem;box-shadow:0 4px 10px #10b9814d;color:#fff;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;position:absolute;right:-15px;top:-15px;z-index:10}.wedding-features-container .ai-face-showcase .face-grid{grid-gap:.75rem;display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:1.5rem;max-width:300px;width:100%}.wedding-features-container .ai-face-showcase .face-grid .face-thumbnail{animation:fadeInScale .5s forwards;aspect-ratio:1;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:12px;box-shadow:0 4px 12px #00000014;opacity:0;overflow:hidden;position:relative;transform:scale(.9);width:100%}.wedding-features-container .ai-face-showcase .face-grid .face-thumbnail:after{background:radial-gradient(circle at 30% 30%,#fffc,#0000 70%);content:"";height:100%;left:0;position:absolute;top:0;width:100%}.wedding-features-container .ai-face-showcase .face-grid .face-thumbnail:first-child{animation-delay:.1s;background:linear-gradient(135deg,#fecaca,#fca5a5)}.wedding-features-container .ai-face-showcase .face-grid .face-thumbnail:nth-child(2){animation-delay:.2s;background:linear-gradient(135deg,#bfdbfe,#93c5fd)}.wedding-features-container .ai-face-showcase .face-grid .face-thumbnail:nth-child(3){animation-delay:.3s;background:linear-gradient(135deg,#c7d2fe,#a5b4fc)}.wedding-features-container .ai-face-showcase .face-grid .face-thumbnail:nth-child(4){animation-delay:.4s;background:linear-gradient(135deg,#bbf7d0,#86efac)}.wedding-features-container .ai-face-showcase .face-grid .face-thumbnail:nth-child(5){animation-delay:.5s;background:linear-gradient(135deg,#fed7aa,#fdba74)}.wedding-features-container .ai-face-showcase .face-grid .face-thumbnail:nth-child(6){animation-delay:.6s;background:linear-gradient(135deg,#e9d5ff,#d8b4fe)}.wedding-features-container .ai-face-showcase .face-grid .face-thumbnail:nth-child(7){animation-delay:.7s;background:linear-gradient(135deg,#fde68a,#fcd34d)}.wedding-features-container .ai-face-showcase .face-grid .face-thumbnail:nth-child(8){animation-delay:.8s;background:linear-gradient(135deg,#a5f3fc,#67e8f9)}.wedding-features-container .ai-face-showcase .face-grid .face-thumbnail:nth-child(9){animation-delay:.9s;background:linear-gradient(135deg,#ddd6fe,#c4b5fd)}.wedding-features-container .ai-face-showcase .face-tag{align-items:center;animation:fadeIn .5s forwards;animation-delay:1s;background:#fff;border-radius:1rem;box-shadow:0 8px 20px #0000001a;display:flex;opacity:0;padding:.75rem 1.25rem;transform:translateY(0);transition:transform .3s ease}.wedding-features-container .ai-face-showcase .face-tag:hover{transform:translateY(-5px)}.wedding-features-container .ai-face-showcase .face-tag .face-avatar{background:linear-gradient(135deg,#c7d2fe,#a5b4fc);border-radius:50%;height:2.5rem;margin-right:1rem;position:relative;width:2.5rem}.wedding-features-container .ai-face-showcase .face-tag .face-avatar:after{background:radial-gradient(circle at 30% 30%,#fffc,#0000 70%);border-radius:50%;content:"";height:100%;left:0;position:absolute;top:0;width:100%}.wedding-features-container .ai-face-showcase .face-tag .face-name{color:#333;font-size:.95rem;font-weight:600;margin-right:1rem}.wedding-features-container .ai-face-showcase .face-tag .face-count{background:#f3f4f6;border-radius:1rem;color:#666;font-size:.8rem;padding:.25rem .5rem}.wedding-features-container .device-mockup{background:#111;border-radius:2.5rem;box-shadow:0 25px 50px #00000040;height:36rem;margin-bottom:1.5rem;overflow:hidden;position:relative;transform:perspective(1000px) rotateY(0deg) rotateX(0deg) translateY(-10px);transition:all .5s ease;width:18rem}.wedding-features-container .device-mockup:hover{box-shadow:0 30px 60px #0000004d;transform:perspective(1000px) rotateY(0deg) rotateX(0deg) translateY(-15px)}.wedding-features-container .device-mockup .device-frame{border:.5rem solid #111;border-radius:2.5rem;height:100%;overflow:hidden;position:relative;width:100%}.wedding-features-container .device-mockup .device-notch{background:#111;border-bottom-left-radius:1.5rem;border-bottom-right-radius:1.5rem;height:1.75rem;left:50%;position:absolute;top:0;transform:translateX(-50%);width:8rem;z-index:10}.wedding-features-container .device-mockup .device-button{background:#222;border-bottom-left-radius:.25rem;border-top-left-radius:.25rem;height:3rem;position:absolute;right:-.75rem;top:7rem;width:.25rem}@media(max-width:30rem){.wedding-features-container .sharing-options{align-items:center;flex-direction:column}}.wedding-features-container .option{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border-radius:1rem;box-shadow:0 8px 20px #0000001a;display:flex;flex-direction:column;padding:.75rem 1rem;transform:translateY(0);transition:all .3s ease}.wedding-features-container .option:hover{box-shadow:0 12px 25px #00000026;transform:translateY(-5px)}.wedding-features-container .option-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));font-size:1.75rem;margin-bottom:.75rem}.wedding-features-container .option-label{color:#333;font-size:.875rem;font-weight:600;white-space:nowrap}.wedding-features-container .wedding-features-cta{animation:fadeIn 1s ease-out forwards;animation-delay:.6s;opacity:0;text-align:center}.wedding-features-container .wedding-features-cta .primary-button{background:linear-gradient(90deg,#06c,#a569bd);border:none;border-radius:1rem;box-shadow:0 .25rem 1rem #0000001a;color:#fff;font-size:1rem;font-weight:600;margin-bottom:3rem;padding:.875rem 1.75rem;transition:all .3s ease}.wedding-features-container .wedding-features-cta .primary-button:hover{box-shadow:0 .5rem 1.5rem #00000026;transform:translateY(-.125rem)}.wedding-features-container .wedding-features-cta .primary-button:focus{outline:.125rem solid #0066cc80;outline-offset:.125rem}.wedding-features-container .stats-row{display:flex;gap:4rem;justify-content:center}@media(max-width:48rem){.wedding-features-container .stats-row{gap:2rem}}@media(max-width:30rem){.wedding-features-container .stats-row{align-items:center;flex-direction:column;gap:2rem}}.wedding-features-container .stat .stat-value{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#06c,#a569bd);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:700;line-height:1;margin-bottom:.25rem}.wedding-features-container .stat .stat-label{color:#6e6e73;font-size:.875rem}.wedding-features-container .privacy-showcase{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;position:relative;width:100%}.wedding-features-container .privacy-showcase .security-badge{align-items:center;animation:float 3s ease-in-out infinite;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:1rem;box-shadow:0 4px 10px #3b82f64d;color:#fff;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;position:absolute;right:-15px;top:-15px;z-index:10}.wedding-features-container .device-screen{background:#fff;height:100%;overflow:hidden;position:relative;width:100%}.wedding-features-container .device-screen .album-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(5,1fr);height:100%;padding:.5rem}.wedding-features-container .device-screen .album-grid .album-item{background:linear-gradient(135deg,#ff6b6b33,#4f46e533);border-radius:.5rem;overflow:hidden;position:relative}.wedding-features-container .device-screen .album-grid .album-item:after{content:"";height:100%;left:0;opacity:.3;position:absolute;top:0;width:100%}.wedding-features-container .device-screen .album-grid .album-item:first-child{grid-column:span 2;grid-row:span 2}.wedding-features-container .device-screen .album-grid .album-item:nth-child(4){grid-column:span 2}.wedding-features-container .screen-content{background:#f8fafc;display:flex;flex-direction:column;height:100%;position:relative;width:100%}.wedding-features-container .screen-content .app-header{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 2px 10px #0000000d;display:flex;justify-content:space-between;padding:1.5rem 1.25rem}.wedding-features-container .screen-content .app-header .app-logo{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;background-clip:text;font-size:1.25rem;font-weight:700}.wedding-features-container .screen-content .app-header .app-actions{display:flex;flex-direction:column;height:1.5rem;justify-content:space-between;width:1.5rem}.wedding-features-container .screen-content .app-header .app-actions:after,.wedding-features-container .screen-content .app-header .app-actions:before{background:#94a3b8;border-radius:.25rem;content:"";height:.25rem;width:100%}.wedding-features-container .screen-content .app-header .app-actions:after{align-self:flex-end;width:60%}.wedding-features-container .screen-content .qr-display{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:1.5rem}.wedding-features-container .screen-content .qr-display .qr-code{align-items:center;background:#fff;border-radius:1rem;box-shadow:0 10px 25px #0000001a;display:flex;height:12rem;justify-content:center;margin-bottom:1.5rem;padding:1rem;position:relative;width:12rem}.wedding-features-container .screen-content .qr-display .qr-code:before{background:radial-gradient(circle at 75% 25%,#ffffffe6,#0000 70%);border-radius:1rem;content:"";height:100%;left:0;position:absolute;top:0;width:100%}.wedding-features-container .screen-content .qr-display .qr-code .qr-pattern{grid-gap:.25rem;background:linear-gradient(135deg,#000,#333);border-radius:.5rem;display:grid;gap:.25rem;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(7,1fr);height:100%;padding:.5rem;position:relative;width:100%}.wedding-features-container .screen-content .qr-display .qr-code .qr-pattern .qr-square{background:#000;border-radius:.25rem;position:relative}.wedding-features-container .screen-content .qr-display .qr-code .qr-pattern .qr-square.top-left{background:#fff;border:.5rem solid #000;grid-column:1/span 2;grid-row:1/span 2}.wedding-features-container .screen-content .qr-display .qr-code .qr-pattern .qr-square.top-right{background:#fff;border:.5rem solid #000;grid-column:5/span 2;grid-row:1/span 2}.wedding-features-container .screen-content .qr-display .qr-code .qr-pattern .qr-square.bottom-left{background:#fff;border:.5rem solid #000;grid-column:1/span 2;grid-row:5/span 2}.wedding-features-container .screen-content .qr-display .qr-code .qr-pattern .qr-dots{grid-gap:.25rem;display:grid;gap:.25rem;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(7,1fr);height:100%;left:0;padding:.5rem;position:absolute;top:0;width:100%}.wedding-features-container .screen-content .qr-display .qr-code .qr-pattern .qr-dots:after,.wedding-features-container .screen-content .qr-display .qr-code .qr-pattern .qr-dots:before{background:#fff;border-radius:50%;content:"";height:.5rem;position:absolute;width:.5rem}.wedding-features-container .screen-content .qr-display .qr-code .qr-pattern .qr-dots:before{left:30%;top:50%}.wedding-features-container .screen-content .qr-display .qr-code .qr-pattern .qr-dots:after{bottom:30%;right:40%}.wedding-features-container .screen-content .qr-display .qr-label{color:#1e293b;font-size:1.25rem;font-weight:700;margin-bottom:.5rem}.wedding-features-container .screen-content .qr-display .qr-instruction{color:#64748b;font-size:.875rem}.wedding-features-container .screen-content .share-options{background:#fff;border-top:1px solid #e2e8f0;display:flex;justify-content:space-around;padding:1.5rem}.wedding-features-container .screen-content .share-options .share-option{align-items:center;display:flex;flex-direction:column;gap:.5rem}.wedding-features-container .screen-content .share-options .share-option .option-icon{align-items:center;background:#f1f5f9;border-radius:50%;color:#0f172a;display:flex;height:2.5rem;justify-content:center;transition:all .3s ease;width:2.5rem}.wedding-features-container .screen-content .share-options .share-option .option-icon svg{height:1.25rem;width:1.25rem}.wedding-features-container .screen-content .share-options .share-option .option-label{color:#64748b;font-size:.75rem;font-weight:500}.wedding-features-container .screen-content .share-options .share-option:hover .option-icon{background:#3b82f6;color:#fff;transform:translateY(-3px)}.wedding-features-container .sharing-options{animation:fadeIn .5s forwards;animation-delay:.3s;display:flex;gap:1rem;justify-content:center;margin-top:1.5rem;opacity:0}.wedding-features-container .share-option{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff26;border-radius:1rem;display:flex;flex-direction:column;padding:1rem;transition:all .3s ease;width:4.5rem}.wedding-features-container .share-option:hover{background:#ffffff40;transform:translateY(-5px)}.wedding-features-container .share-option .share-icon{color:#ffffffe6;font-size:1.5rem;margin-bottom:.5rem}.wedding-features-container .share-option .share-label{color:#ffffffe6;font-size:.75rem}.wedding-features-container .wedding-cta-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border:1px solid #fff9;border-radius:1.5rem;box-shadow:0 10px 30px #0000000d;margin-top:5rem;padding:3rem;text-align:center}.wedding-features-container .wedding-cta-section .stats-row{display:flex;gap:4rem;justify-content:center;margin-bottom:3rem}@media(max-width:992px){.wedding-features-container .wedding-cta-section .stats-row{align-items:center;flex-direction:column;gap:2rem}}.wedding-features-container .wedding-cta-section .stat-item h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#ff6b6b,#ee5253);-webkit-background-clip:text;background-clip:text;font-size:3rem;font-weight:800;margin-bottom:.5rem}.wedding-features-container .wedding-cta-section .stat-item p{color:#666;font-size:1rem}.wedding-features-container .wedding-cta-section .cta-button{background:linear-gradient(135deg,#ff6b6b,#ee5253);border-radius:2rem;box-shadow:0 8px 20px #ee52534d;color:#fff;display:inline-block;font-size:1.125rem;font-weight:700;padding:1rem 2.5rem;text-decoration:none;transition:all .3s ease}.wedding-features-container .wedding-cta-section .cta-button:hover{box-shadow:0 12px 25px #ee525366;transform:translateY(-5px)}@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes expandRing{0%{opacity:.8;transform:translate(-50%,-50%) scale(.8)}50%{opacity:.4}to{opacity:0;transform:translate(-50%,-50%) scale(1.2)}}@keyframes pulse{0%{opacity:.8;transform:translate(-50%,-50%) scale(.8)}50%{opacity:.4}to{opacity:0;transform:translate(-50%,-50%) scale(1.2)}}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}@media(max-width:48rem){.wedding-features-container .wedding-features{padding:4rem 0}.wedding-features-container .section-intro{margin-bottom:3rem}.wedding-features-container .section-intro h2{font-size:2rem}.wedding-features-container .section-intro p{font-size:1rem}.wedding-features-container .feature-content h3{font-size:1.5rem}.wedding-features-container .feature-content>p{font-size:1rem}}.mobile-auth-container{background-color:var(--background);display:flex;flex-direction:column;min-height:100vh;padding:20px}.mobile-auth-container .screen-container{animation:fadeIn .3s ease-in-out;display:flex;flex:1 1;flex-direction:column}.mobile-auth-container .slide-enter{opacity:0;transform:translateX(100%)}.mobile-auth-container .slide-enter-active{opacity:1;transform:translateX(0);transition:all .3s ease-in-out}.mobile-auth-container .slide-exit{opacity:1;transform:translateX(0)}.mobile-auth-container .slide-exit-active{opacity:0;transform:translateX(-100%);transition:all .3s ease-in-out}.mobile-auth-container .welcome-screen{align-items:center;animation:fadeIn .5s;background:linear-gradient(135deg,#42a1ff 0,var(--background) 100%);background:linear-gradient(135deg,var(--primary-color-light,#e0e7ff) 0,var(--background) 100%);display:flex;flex-direction:column;gap:0;justify-content:center;min-height:100vh;padding:0 8px;position:relative}.mobile-auth-container .welcome-logo{align-items:center;display:flex;justify-content:center;margin-bottom:18px}.mobile-auth-container .welcome-logo .app-logo{background:#fff;border-radius:18px;box-shadow:0 2px 8px #0000000f;height:72px;object-fit:contain;transition:box-shadow .2s;width:72px}.mobile-auth-container .welcome-card{background:#fff;background:var(--card-background,#fff);border-radius:18px;box-shadow:0 2px 10px #0000000d;margin-bottom:22px;max-width:350px;padding:20px 10px 16px;text-align:center;width:100%}.mobile-auth-container .welcome-card h1{color:#0071e3;color:var(--primary-color);font-size:1.55rem;font-weight:700;letter-spacing:-.5px;margin-bottom:8px}.mobile-auth-container .welcome-card .tagline{color:#86868b;color:var(--text-secondary);font-size:1.02rem;font-weight:500;line-height:1.4;margin-bottom:14px}.mobile-auth-container .welcome-buttons{align-items:center;display:flex;flex-direction:column;gap:12px;margin-top:6px}.mobile-auth-container .welcome-buttons .primary-button{background:linear-gradient(90deg,#0071e3,#0062cc);background:linear-gradient(90deg,var(--primary-color),var(--primary-color-dark,#4e54c8));border:none;border-radius:12px;box-shadow:0 2px 8px #00000012;color:#fff;cursor:pointer;font-size:1.08rem;font-weight:700;letter-spacing:.01em;max-width:320px;padding:15px 0;transition:background .18s,box-shadow .18s,transform .12s;width:100%}.mobile-auth-container .welcome-buttons .primary-button:focus,.mobile-auth-container .welcome-buttons .primary-button:hover{background:linear-gradient(90deg,#0062cc,#0071e3);background:linear-gradient(90deg,var(--primary-color-dark,#4e54c8),var(--primary-color));box-shadow:0 4px 16px #0000001f;transform:translateY(-2px) scale(1.02)}.mobile-auth-container .welcome-buttons .primary-button:active{opacity:.97;transform:scale(.98)}.mobile-auth-container .welcome-buttons .terms-text{color:#6e6e73;color:var(--text-tertiary);font-size:.82rem;line-height:1.5;margin-top:4px}.mobile-auth-container .welcome-buttons .terms-text a{color:#0071e3;color:var(--primary-color);text-decoration:underline}.mobile-auth-container .welcome-buttons .terms-text a:hover{color:#0062cc;color:var(--primary-color-dark,#4e54c8)}@media(max-width:480px){.mobile-auth-container .welcome-screen{min-height:100vh;padding:0 2vw}.mobile-auth-container .welcome-logo .app-logo{border-radius:14px;height:54px;width:54px}.mobile-auth-container .welcome-card{border-radius:10px;max-width:96vw;padding:13px 2px 10px}.mobile-auth-container .welcome-card h1{font-size:1.15rem}.mobile-auth-container .welcome-card .tagline{font-size:.97rem}.mobile-auth-container .welcome-buttons .primary-button{border-radius:8px;font-size:.97rem;padding:11px 0}.mobile-auth-container .welcome-buttons .terms-text{font-size:.76rem;margin-top:2px}}.mobile-auth-container .welcome-card{padding:18px 6px 14px}.mobile-auth-container .welcome-logo .app-logo{height:60px;width:60px}.mobile-auth-container .welcome-buttons .primary-button{font-size:1rem;padding:12px 0}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-100%)}to{opacity:1;transform:translateX(0)}}.mobile-auth-header-logo{height:auto;margin-bottom:16px;width:80px}.mobile-auth-header-title{color:#0071e3;color:var(--primary-color);font-size:2rem;font-weight:600;margin:0}.mobile-auth-header-subtitle{color:#86868b;color:var(--text-secondary);font-size:.9rem;margin-bottom:0}.mobile-auth-phone-input{align-items:center;border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:8px;display:flex;overflow:hidden}.mobile-auth-phone-input-country{background-color:var(--background-light);border-right:1px solid #d2d2d7;border-right:1px solid var(--border-color);font-weight:500;min-width:60px;padding:12px;text-align:center}.mobile-auth-phone-input-number{background-color:#0000;border:none;color:var(--text-primary);flex:1 1;font-size:1rem;padding:12px}.mobile-auth-phone-input-number:focus{outline:none}.terms-text{color:#6e6e73;color:var(--text-tertiary);font-size:.75rem;margin-top:16px;text-align:center}.mobile-auth-otp-container{display:flex;justify-content:space-between;margin:24px 0}.mobile-auth-otp-input{background-color:#0000;border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:1.2rem;font-weight:600;height:48px;text-align:center;width:40px}.mobile-auth-otp-input:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 2px #0071e333;box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.2);outline:none}.mobile-auth-otp-info{margin-bottom:16px;text-align:center}.mobile-auth-otp-info-number{color:var(--text-primary);font-weight:600}.text-button{background:none;border:none;color:#0071e3;color:var(--primary-color);cursor:pointer;font-weight:500;padding:0}.text-button:hover{text-decoration:underline}.user-type-selection{display:flex;flex-direction:column;gap:16px;margin:24px 0}.user-type-selection-option{background-color:var(--background-light);border:2px solid #d2d2d7;border:2px solid var(--border-color);border-radius:12px;cursor:pointer;padding:20px;transition:all .2s ease}.user-type-selection-option.selected{background-color:#0071e30d;background-color:rgba(var(--primary-color-rgb),.05);border-color:#0071e3;border-color:var(--primary-color)}.user-type-selection-option-icon{color:#0071e3;color:var(--primary-color);font-size:1.8rem;margin-bottom:12px}.user-type-selection-option h3{color:var(--text-primary);font-size:1.1rem;margin:0 0 8px}.user-type-selection-option p{color:#86868b;color:var(--text-secondary);font-size:.85rem;margin:0}.mobile-auth-form-group input{background-color:#0000;border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:1rem;padding:12px;width:100%}.mobile-auth-form-group input:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 2px #0071e333;box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.2);outline:none}.mobile-auth-buttons.row{flex-direction:row}.mobile-auth-buttons.row button{flex:1 1}.referral-info{margin-bottom:20px;text-align:center}.referral-info p{color:#86868b;color:var(--text-secondary);font-size:.9rem;line-height:1.5}.mobile-auth-form-group textarea{min-height:100px;resize:vertical}.business-info-section{margin-bottom:24px}.business-info-section h3{color:var(--text-primary);font-size:1.1rem;margin-bottom:16px}.mobile-auth-header{align-items:center;display:flex;flex-direction:column;margin-bottom:30px}.mobile-auth-form{background-color:#fff;background-color:var(--card-background);border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;margin-bottom:16px;padding:16px;width:100%}.mobile-auth-form-group{margin-bottom:20px}.mobile-auth-form-group label{color:#86868b;color:var(--text-secondary);display:block;font-size:.9rem;font-weight:500;margin-bottom:8px}.mobile-auth-form-group input,.mobile-auth-form-group select,.mobile-auth-form-group textarea{background-color:#0000;border:1px solid #d2d2d7;border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:1rem;padding:12px;width:100%}.mobile-auth-form-group input:focus,.mobile-auth-form-group select:focus,.mobile-auth-form-group textarea:focus{border-color:#0071e3;border-color:var(--primary-color);box-shadow:0 0 0 2px #0071e333;box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.2);outline:none}.mobile-auth-form-error{color:#ff3b30;color:var(--danger-color,#ff4757);font-size:.85rem;margin-top:8px;min-height:20px}.mobile-auth-buttons{display:flex;flex-direction:column;gap:12px;margin-top:16px}.mobile-auth-buttons button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-weight:600;gap:8px;justify-content:center;padding:14px;transition:all .2s ease}.mobile-auth-buttons button.primary{background-color:#0071e3;background-color:var(--primary-color);color:#fff}.mobile-auth-buttons button.primary:disabled{background-color:var(--disabled-color);cursor:not-allowed}.mobile-auth-buttons button.secondary{background-color:var(--background-light);border:1px solid #d2d2d7;border:1px solid var(--border-color);color:var(--text-primary)}.profile-photo-upload{align-items:center;display:flex;flex-direction:column;margin-bottom:24px}.profile-photo-upload-preview{align-items:center;background-color:var(--background-light);border-radius:20%;display:flex;height:10rem;justify-content:center;margin-bottom:16px;overflow:hidden;position:relative;width:10rem}.profile-photo-upload-preview img{height:100%;object-fit:cover;width:100%}.profile-photo-upload-preview .upload-icon{color:#86868b;color:var(--text-secondary);font-size:2rem}.profile-photo-upload-button{background-color:#0000;border:none;color:#0071e3;color:var(--primary-color);cursor:pointer;font-weight:500;padding:8px}.profile-photo-upload-button:hover{text-decoration:underline}.profile-photo-upload input[type=file]{display:none}.mobile-redirect{align-items:center;background-color:#f5f5f7;background-color:var(--background-color);display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;justify-content:center;padding:20px;width:100%}.mobile-redirect .mobile-redirect-content{background-color:#fff;background-color:var(--white);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 4px 20px #00000014;max-width:400px;padding:32px 24px;text-align:center;width:100%}.mobile-redirect .mobile-redirect-content .app-logo{margin-bottom:24px}.mobile-redirect .mobile-redirect-content .app-logo h1{color:#1d1d1f;color:var(--text-color);font-size:28px;font-weight:700;margin:0}.mobile-redirect .mobile-redirect-content .app-logo img{height:64px;width:auto}.mobile-redirect .mobile-redirect-content h2{color:#1d1d1f;color:var(--text-color);font-size:22px;font-weight:600;margin:0 0 16px}.mobile-redirect .mobile-redirect-content .message{color:#86868b;color:var(--text-secondary);font-size:16px;line-height:1.5;margin-bottom:28px}.mobile-redirect .mobile-redirect-content .app-store-buttons{display:flex;justify-content:center;margin-bottom:24px}.mobile-redirect .mobile-redirect-content .app-store-buttons .app-store-button{align-items:center;background-color:#000;background-color:var(--black);border-radius:8px;border-radius:var(--border-radius-md);color:#fff;color:var(--white);display:flex;padding:10px 16px;text-decoration:none;transition:opacity .2s cubic-bezier(.25,.46,.45,.94);transition:opacity var(--transition-fast)}.mobile-redirect .mobile-redirect-content .app-store-buttons .app-store-button:hover{opacity:.9}.mobile-redirect .mobile-redirect-content .app-store-buttons .app-store-button.apple,.mobile-redirect .mobile-redirect-content .app-store-buttons .app-store-button.google-play{background-color:#000;background-color:var(--black)}.mobile-redirect .mobile-redirect-content .app-store-buttons .app-store-button .store-icon{font-size:24px;margin-right:10px}.mobile-redirect .mobile-redirect-content .app-store-buttons .app-store-button .button-text{align-items:flex-start;display:flex;flex-direction:column}.mobile-redirect .mobile-redirect-content .app-store-buttons .app-store-button .button-text .small-text{font-size:10px;font-weight:400}.mobile-redirect .mobile-redirect-content .app-store-buttons .app-store-button .button-text .large-text{font-size:16px;font-weight:600}.mobile-redirect .mobile-redirect-content .divider{align-items:center;display:flex;margin:24px 0}.mobile-redirect .mobile-redirect-content .divider:after,.mobile-redirect .mobile-redirect-content .divider:before{background-color:#d2d2d7;background-color:var(--gray-300);content:"";flex:1 1;height:1px}.mobile-redirect .mobile-redirect-content .divider span{color:#86868b;color:var(--gray-500);font-size:14px;padding:0 16px}.mobile-redirect .mobile-redirect-content .desktop-button{align-items:center;background-color:#0071e3;background-color:var(--primary-color);border:1px solid #0071e3;border:1px solid var(--primary-color);border-radius:8px;border-radius:var(--border-radius-md);color:#fff;color:var(--white);cursor:pointer;display:flex;font-size:16px;font-weight:500;justify-content:center;padding:14px 20px;transition:all .2s cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-fast);width:100%}.mobile-redirect .mobile-redirect-content .desktop-button:hover{background-color:rgba(#0071e3,.05);background-color:rgba(var(--primary-color),.05)}.mobile-redirect .mobile-redirect-content .desktop-button:active{background-color:rgba(#0071e3,.1);background-color:rgba(var(--primary-color),.1)}.mobile-redirect .mobile-redirect-content .desktop-button .desktop-icon{font-size:18px;margin-right:10px}.mobile-redirect .mobile-redirect-content .note{color:#86868b;color:var(--gray-500);font-size:13px;margin-top:20px}@media(max-width:480px){.mobile-redirect{padding:16px}.mobile-redirect .mobile-redirect-content{padding:24px 20px}.mobile-redirect .mobile-redirect-content h2{font-size:20px}.mobile-redirect .mobile-redirect-content .message{font-size:15px}}:root{--black:#000;--white:#fff;--primary-color:#0071e3;--primary-color-hover:#0077ed;--primary-color-active:#0068d1;--primary-color-dark:#0062cc;--primary-color-darker:#004e9e;--primary-color-light:#42a1ff;--secondary-color:#0071e31a;--secondary-color-dark:#0071e326;--secondary-color-darker:#0071e333;--success-color:#34c759;--danger-color:#ff3b30;--warning-color:#ff9500;--info-color:#5ac8fa;--purple-color:#af52de;--pink-color:#ff2d55;--skeleton-color:#e0e0e0;--gray-100:#f5f5f7;--gray-200:#e8e8ed;--gray-300:#d2d2d7;--gray-400:#bbb;--gray-500:#86868b;--gray-600:#6e6e73;--gray-700:#4d4d4d;--gray-800:#333;--gray-900:#1d1d1f;--background-color:#f5f5f7;--overlay-background:#0006;--overlay-background-dark:#00000080;--overlay-blur:blur(10px);--text-color:#1d1d1f;--text-secondary:#86868b;--text-tertiary:#6e6e73;--border-color:#d2d2d7;--border-color-dark:#bbb;--hover-color:#e8e8ed;--active-color:#0071e31a;--error-color:#ff3b30;--error-color-dark:#ff2317;--error-color-darker:#fc0d00;--card-background:#fff;--light-bg-color:#f5f5f7;--white-color:#fff;--nav-background:#fffc;--card-highlight:#ffffff80;--divider-color:#e8e8ed;--border-radius-xs:4px;--border-radius-sm:6px;--border-radius-md:8px;--border-radius-lg:12px;--border-radius-xl:16px;--border-radius-pill:9999px;--transition-fast:0.2s cubic-bezier(0.25,0.46,0.45,0.94);--transition-normal:0.3s cubic-bezier(0.25,0.46,0.45,0.94);--transition-slow:0.5s cubic-bezier(0.25,0.46,0.45,0.94);--transition-bounce:0.5s cubic-bezier(0.175,0.885,0.32,1.275);--transition-spring:0.6s cubic-bezier(0.25,0.1,0.25,1);--shadow-light:#0000000d;--shadow-medium:#00000014;--shadow-large:#0000001f;--shadow-xl:#00000026;--shadow-sm-value:0 2px 4px #0000000d;--shadow-md-value:0 4px 8px #00000014;--shadow-lg-value:0 8px 16px #0000001f;--shadow-xl-value:0 12px 24px #00000026;--spacing-2xs:0.125rem;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.25rem;--spacing-xl:1.5rem;--spacing-2xl:2rem;--spacing-3xl:2.5rem;--spacing-4xl:3rem;--spacing-5xl:4rem;--facebook-color:#1877f2;--google-color:#ea4335;--apple-color:#000;--primary-color-rgb:0,113,227;--primary-color-light-rgb:66,161,255;--success-color-rgb:52,199,89;--danger-color-rgb:255,59,48;--warning-color-rgb:255,149,0;--info-color-rgb:90,200,250;--purple-color-rgb:175,82,222;--pink-color-rgb:255,45,85;--text-on-primary:#fff;--text-on-secondary:#0071e3;--text-on-secondary-dark:#0071e3;--text-on-secondary-darker:#0071e3;--text-on-error:#fff;--text-on-success:#fff;--text-on-warning:#fff;--text-on-info:#fff;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--letter-spacing-tight:-0.02em;--letter-spacing-normal:0;--letter-spacing-wide:0.02em}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn-up{0%{opacity:0;transform:translateY(1.25rem)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn-down{0%{opacity:0;transform:translateY(-1.25rem)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn-left{0%{opacity:0;transform:translateX(1.25rem)}to{opacity:1;transform:translateX(0)}}@keyframes slideIn-right{0%{opacity:0;transform:translateX(-1.25rem)}to{opacity:1;transform:translateX(0)}}.photographer-redirect{align-items:center;background:#fff;background:var(--color-surface,#fff);border-radius:1.5rem;border-radius:var(--radius-lg,1.5rem);box-shadow:0 2px 8px #0000000f;box-shadow:var(--shadow-md,0 2px 8px #0000000f);display:flex;flex-direction:column;gap:2rem;justify-content:center;min-height:60vh;padding:2rem 1.5rem}.photographer-redirect .photographer-redirect-icon{align-items:center;background:#e3f0fc;background:var(--color-primary-bg,#e3f0fc);border-radius:50%;box-shadow:0 1px 3px #0000000a;box-shadow:var(--shadow-xs,0 1px 3px #0000000a);color:#1a73e8;color:var(--color-primary,#1a73e8);display:flex;justify-content:center;margin-bottom:.5rem;padding:1.5rem}.photographer-redirect .photographer-redirect-message{text-align:center}.photographer-redirect .photographer-redirect-message h2{color:#222;color:var(--color-heading,#222);font-size:1.5rem;font-weight:700;margin-bottom:1rem}.photographer-redirect .photographer-redirect-message p{color:#444;color:var(--color-text,#444);font-size:1rem;line-height:1.5;margin-bottom:.5rem}.photographer-redirect .photographer-redirect-message b{color:#1a73e8;color:var(--color-primary,#1a73e8)}.photographer-redirect .button-group{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem;width:100%}.photographer-redirect .button-group .button,.photographer-redirect .button-group button{font-size:1.1rem;width:100%}@media(max-width:48rem){.photographer-redirect{padding:1rem .5rem}.photographer-redirect .photographer-redirect-icon{padding:1rem}.photographer-redirect .photographer-redirect-message h2{font-size:1.2rem}.photographer-redirect .button-group{gap:.75rem}}
/*# sourceMappingURL=main.2f2ec95b.css.map*/