:root{--color-bg:#0f0f1a;--color-bg-dark:#1a1a2e;--color-bg-light:#25254a;--color-border:#2d2d4a;--color-border-light:#3d3d5c;--color-primary:#667eea;--color-primary-dark:#5568d3;--color-primary-light:#7e8ff0;--color-text-primary:#f5f5f7;--color-text-secondary:#b8b8c8;--color-text-subtitle:#8a8a9a;--color-error-text:#ff6b6b;--color-error-bg:#3d1f1f;--color-error-border:#5a2a2a;--color-success-text:#51cf66;--color-success-bg:#1f3d2a;--color-success-border:#2a5a3a;--color-white:#fff;--gradient-primary:linear-gradient(135deg,#667eea,#764ba2);--gradient-secondary:linear-gradient(135deg,#f093fb,#f5576c);--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 4px 20px #0006;--shadow-lg:0 10px 40px #00000080;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--transition-fast:all 0.15s ease}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6;overflow-x:hidden}body,h1,h2,h3,h4,h5,h6{color:var(--color-text-primary)}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.3;margin-bottom:.5em}p{color:var(--color-text-secondary);margin-bottom:1em}a{color:var(--color-primary);text-decoration:none;transition:var(--transition-fast)}.active,a:hover{color:var(--color-primary-light)}.active{font-weight:700;position:relative}ul{list-style:none}ul li{margin-bottom:.5em}form{gap:1.2rem}form,label{display:flex;flex-direction:column}label{gap:.5rem}label span{color:var(--color-text-secondary);font-size:.9rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}input,select,textarea{background-color:var(--color-bg-light);border:2px solid var(--color-border-light);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:inherit;font-size:1rem;outline:none;padding:.9rem 1.2rem;transition:var(--transition-smooth);width:100%}input:focus,select:focus,textarea:focus{background-color:var(--color-bg-dark);border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}input::placeholder,textarea::placeholder{color:var(--color-text-subtitle)}input:disabled,select:disabled,textarea:disabled{background-color:var(--color-bg-dark);cursor:not-allowed;opacity:.6}.btn,button,input[type=button],input[type=submit]{align-items:center;background:var(--gradient-primary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:var(--color-white);cursor:pointer;display:inline-flex;font-family:inherit;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;padding:.9rem 1.8rem;text-decoration:none;transition:var(--transition-smooth)}.btn:hover,button:hover,input[type=button]:hover,input[type=submit]:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn:active,button:active,input[type=submit]:active{transform:translateY(0)}button:disabled,input[type=submit]:disabled{cursor:not-allowed;opacity:.5;transform:none}.btn-secondary,.cancel-btn{background:#0000;border:2px solid var(--color-border-light);box-shadow:none;color:var(--color-text-secondary)}.btn-secondary:hover,.cancel-btn:hover{background:var(--color-bg-light);border-color:var(--color-primary);color:var(--color-primary)}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626)}.btn-danger:hover{box-shadow:0 4px 20px #ef444466}.btn-success{background:linear-gradient(135deg,#34d399,#10b981)}.btn-success:hover{box-shadow:0 4px 20px #34d39966}.card{background:var(--color-bg-dark);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.5rem;transition:var(--transition-smooth)}.card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.message{animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.message.error{border:1px solid var(--color-error-border)}.message.success{border:1px solid var(--color-success-border)}.text-center{text-align:center}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.p-1{padding:.5rem}.p-2{padding:1rem}.p-3{padding:1.5rem}.p-4{padding:2rem}.container{margin:0 auto;max-width:1200px;padding:0 2rem;width:100%}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:var(--color-bg-dark)}::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--color-primary-light)}@media (max-width:768px){body{font-size:14px}.container{padding:0 1rem}.btn,button,input[type=submit]{font-size:.95rem;padding:.8rem 1.5rem}input,select,textarea{font-size:.95rem;padding:.8rem 1rem}.active:after{background:var(--gradient-primary);border-radius:2px;bottom:-1px;content:"";height:2px;left:0;position:absolute;width:100%}}@media (max-width:480px){.container{padding:0 .8rem}h1{font-size:1.8rem}h2{font-size:1.5rem}h3{font-size:1.3rem}.active:after{background:var(--gradient-primary);border-radius:2px;bottom:-1px;content:"";height:2px;left:0;position:absolute;width:100%}}.container{min-height:70vh}#nav{align-items:center;background-color:var(--color-bg-dark);border-bottom:1px solid var(--color-border);box-sizing:border-box;display:flex;justify-content:space-between;padding:1rem 1.5rem;position:relative}#nav .brand h2{color:var(--color-text-primary);font-size:1.5rem;margin:0}#nav .brand a{text-decoration:none}.hamburger-menu{color:var(--color-text-primary);cursor:pointer;display:none;font-size:2rem;z-index:150}.nav-center{justify-content:space-between;margin:0 1.5rem}#nav .search-form,.nav-center{align-items:center;display:flex;flex-grow:1}#nav .search-form{max-width:400px;position:relative}#nav .search-form svg{color:var(--color-text-secondary);cursor:pointer;font-size:1rem;left:12px;position:absolute;top:50%;transform:translateY(-50%);z-index:10}#nav .search-form input{background-color:var(--color-bg-light);border:1px solid var(--color-border-light);border-radius:5px;box-sizing:border-box;color:var(--color-text-primary);font-size:.9rem;outline:none;padding:.6rem 1rem .6rem 3rem;width:100%}#nav .search-form input:focus{border-color:var(--color-primary)}#nav .links{align-items:center;display:flex;gap:1.5rem;list-style:none;margin:0 0 0 1.5rem;padding:0}#nav .links span{display:none}#nav .links a{align-items:center;color:var(--color-text-primary);display:flex;font-size:1.5rem;position:relative;text-decoration:none;top:6px;transition:var(--transition-fast)}#nav .links a:hover{color:var(--color-primary)}#nav .links button{align-items:center;background:none;border:none;color:var(--color-text-primary);cursor:pointer;display:flex;font-family:inherit;font-size:1.5rem;padding:0;position:relative;top:6px;transition:var(--transition-fast)}#nav .links button:hover{color:var(--color-primary)}#nav .links a:not([class]){font-size:1rem}@media (max-width:768px){#nav{padding:1rem}.hamburger-menu{display:block}.nav-center{display:none;margin:0}.nav-center.active{align-items:stretch;background-color:var(--color-bg-dark);box-sizing:border-box;display:flex;flex-direction:column;gap:1.5rem;left:0;padding:1.5rem 1rem;position:absolute;right:0;top:60px;z-index:100}.nav-center.active .search-form{margin:0;max-width:none;width:100%}.nav-center.active .links{align-items:stretch;flex-direction:column;gap:1.5rem;margin-left:0;width:100%}.nav-center.active .links li{box-sizing:border-box;display:flex;justify-content:flex-end;padding-right:2rem;width:100%}#nav .nav-center.active .links span{display:inline;font-size:1rem;margin-left:.5rem}.nav-center.active .links a,.nav-center.active .links button{align-items:center;display:flex;flex-direction:row;font-size:1rem;width:auto}}@media (max-width:480px){#nav{padding:.8rem}#nav .brand h2{font-size:1.3rem}.hamburger-menu{font-size:1.8rem}.nav-center.active{gap:1.2rem;padding:1.2rem .8rem;top:55px}.nav-center.active .links{gap:1.2rem}.nav-center.active .links li{padding-right:2rem}#nav .nav-center.active .links span{font-size:.95rem}}#footer{background:var(--color-bg-dark);border-top:1px solid var(--color-border);margin-top:4rem;padding:3rem 2rem}.footer-content{flex-direction:column;gap:1.5rem;margin:0 auto;max-width:1200px}.footer-brand,.footer-content{align-items:center;display:flex}.footer-brand{gap:.8rem;margin-bottom:.5rem}.footer-brand h3{-webkit-text-fill-color:#0000;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;font-size:1.5rem;margin:0}.footer-description{color:var(--color-text-secondary);font-size:.95rem;margin-bottom:1rem;max-width:500px;text-align:center}.footer-social{display:flex;gap:1rem;margin-bottom:1.5rem}.footer-social a{align-items:center;background:var(--color-bg-light);border:1px solid var(--color-border-light);border-radius:50%;color:var(--color-text-secondary);display:flex;font-size:1.2rem;height:42px;justify-content:center;transition:var(--transition-smooth);width:42px}.footer-social a:hover{background:var(--gradient-primary);border-color:#0000;box-shadow:var(--shadow-md);color:var(--color-white);transform:translateY(-3px)}.footer-bottom{border-top:1px solid var(--color-border);color:var(--color-text-subtitle);font-size:.9rem;margin-top:1rem;padding-top:1.5rem;text-align:center;width:100%}.footer-bottom p{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin:0}@media (max-width:768px){#footer{margin-top:3rem;padding:2rem 1.5rem}.footer-brand h3{font-size:1.3rem}.footer-description{font-size:.9rem}.footer-social a{font-size:1.1rem;height:38px;width:38px}.footer-bottom{font-size:.85rem}}@media (max-width:480px){#footer{padding:1.5rem 1rem}.footer-social{gap:.8rem}}#home{animation:fadeIn .5s ease-out;margin:2rem auto;max-width:800px;padding:0 1rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.loading-state{align-items:center;background:var(--color-bg-dark);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:1.5rem;margin:2rem 0;padding:4rem 2rem;text-align:center}.spinner{animation:spin .8s linear infinite;border:4px solid var(--color-border-light);border-radius:50%;border-top-color:var(--color-primary);height:50px;width:50px}.loading-state p{color:var(--color-text-secondary);font-size:1.1rem;font-weight:500;margin:0}.no-photos{animation:fadeInUp .5s ease-out;background:var(--color-bg-dark);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin:2rem 0;padding:4rem 2rem;text-align:center}.no-photos h2{color:var(--color-text-primary);font-size:2rem;margin:0 0 1rem}.no-photos p{color:var(--color-text-secondary);font-size:1.1rem;line-height:1.6;margin:0}.no-photos a{color:var(--color-primary);font-weight:600;position:relative;text-decoration:none;transition:var(--transition-fast)}.no-photos a:after{background:var(--gradient-primary);bottom:-2px;content:"";height:2px;left:0;position:absolute;transition:var(--transition-smooth);width:0}.no-photos a:hover:after{width:100%}.no-photos a:hover{color:var(--color-primary-light)}.photos-container{display:flex;flex-direction:column;gap:2rem}.welcome-message{animation:fadeInUp .5s ease-out;background:var(--color-bg-dark);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:2rem;padding:2rem;text-align:center}.welcome-message h2{color:var(--color-text-primary);font-size:1.8rem;margin:0 0 .5rem}.welcome-message p{color:var(--color-text-secondary);font-size:1rem;margin:0}.btn-retry{background:var(--gradient-primary);border:none;border-radius:var(--radius-md);color:var(--color-white);cursor:pointer;font-weight:600;margin-top:1rem;padding:.8rem 1.5rem;transition:var(--transition-smooth)}.btn-retry:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}@media (max-width:768px){#home{margin:1.5rem auto;padding:0 1rem}.loading-state{padding:3rem 1.5rem}.spinner{height:45px;width:45px}.loading-state p{font-size:1rem}.no-photos{padding:3rem 1.5rem}.no-photos h2{font-size:1.7rem}.no-photos p{font-size:1rem}.photos-container{gap:1.5rem}.welcome-message{padding:1.5rem}.welcome-message h2{font-size:1.5rem}.btn-retry{font-size:.95rem;padding:.7rem 1.3rem}}@media (max-width:480px){#home{margin:1rem auto;padding:0 .5rem}.loading-state{padding:2.5rem 1rem}.spinner{height:40px;width:40px}.loading-state p{font-size:.95rem}.no-photos{border-radius:var(--radius-md);padding:2.5rem 1rem}.no-photos h2{font-size:1.5rem}.no-photos p{font-size:.95rem}.photos-container{gap:1rem}.welcome-message{padding:1.2rem}.welcome-message h2{font-size:1.3rem}.btn-retry,.welcome-message p{font-size:.9rem}.btn-retry{padding:.6rem 1.2rem}}.photo-item{animation:fadeInUp .4s ease-out;background:var(--color-bg-dark);border:1px solid var(--color-border);box-shadow:var(--shadow-md);margin-bottom:2rem}.photo-item:hover{border-color:var(--color-primary)}.photo-item img{display:block;height:auto;max-height:500px;object-fit:cover;transition:var(--transition-smooth);width:100%}.photo-item:hover img{transform:scale(1.02)}.photo-item h2{color:var(--color-text-primary);font-size:1.4rem;font-weight:600;line-height:1.4;margin:0;padding:1.2rem 1.5rem .5rem}.photo-title-link{color:inherit;display:inline-block;text-decoration:none;transition:var(--transition-fast)}.photo-title-link:hover{color:var(--color-primary);transform:translateX(4px)}.photo-author{align-items:center;color:var(--color-text-secondary);display:flex;font-size:.95rem;gap:.5rem;margin:0 0 .8rem;padding:0 1.5rem}.author-name{color:var(--color-primary);font-weight:600;text-decoration:none;transition:var(--transition-fast)}.author-name:hover{color:var(--color-primary-light);text-decoration:underline}.photo-item .photo-actions{display:flex;justify-content:flex-start;padding:0 1.5rem}.photo-item .photo-actions .like{padding:.8rem 0}.btn-photo-item{align-items:center;background:var(--gradient-primary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:var(--color-white);cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;margin:1rem 1.5rem;padding:.9rem 1.5rem;text-decoration:none;transition:var(--transition-smooth);width:calc(100% - 3rem)}.btn-photo-item:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-photo-item:active{transform:translateY(0)}@media (max-width:768px){.photo-item{border-radius:var(--radius-md);margin-bottom:1.5rem}.photo-item img{max-height:400px}.photo-item h2{font-size:1.2rem;padding:1rem 1.2rem .4rem}.photo-author{font-size:.9rem}.photo-author,.photo-item .photo-actions{padding:0 1.2rem}.btn-photo-item{font-size:.95rem;margin:.8rem 1.2rem;padding:.8rem 1.3rem;width:calc(100% - 2.4rem)}}@media (max-width:480px){.photo-item{border-radius:var(--radius-sm);margin-bottom:1rem}.photo-item img{max-height:350px}.photo-item h2{font-size:1.1rem;padding:.8rem 1rem .3rem}.photo-author{font-size:.85rem}.photo-author,.photo-item .photo-actions{padding:0 1rem}.btn-photo-item{font-size:.9rem;margin:.7rem 1rem;padding:.7rem 1.2rem;width:calc(100% - 2rem)}}.like{gap:.7rem;justify-content:flex-start;padding:.75rem 0}.like,.like button{align-items:center;display:flex}.like button{background:none;border:none;color:inherit;font-family:inherit;justify-content:center;padding:0}.like button,.like svg{cursor:pointer;margin:0}.like svg{color:var(--color-primary);font-size:1.5rem;transition:var(--transition-smooth)}.like svg:hover{color:var(--color-primary-light);transform:scale(1.15)}.like svg:active{transform:scale(.95)}.like svg.liked{animation:likeAnimation .4s ease-in-out;color:#ff6b6b}@keyframes likeAnimation{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.like .like-count{color:var(--color-text-secondary);font-size:.95rem;font-weight:500;margin:0}@media (max-width:768px){.like{gap:.6rem;padding:.6rem 0}.like svg{font-size:1.4rem}.like .like-count{font-size:.9rem}}@media (max-width:480px){.like{padding:.5rem 0}.like svg{font-size:1.3rem}.like .like-count{font-size:.85rem}}#login,#register{margin:3rem auto;max-width:480px;padding:0 1.5rem}.auth-container{animation:fadeInUp .5s ease-out;background:var(--color-bg-dark);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:3rem 2.5rem}.auth-brand{margin-bottom:2rem;text-align:center}.auth-brand h2{-webkit-text-fill-color:#0000;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:800;letter-spacing:-.5px;margin:0 0 .5rem}.auth-brand .brand-icon{animation:float 3s ease-in-out infinite;display:inline-block;font-size:3rem;margin-bottom:1rem}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.subtitle{color:var(--color-text-secondary);font-size:1rem;font-weight:400;line-height:1.6;margin-bottom:2rem;text-align:center}#login form,#register form{border-bottom:1px solid var(--color-border);display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem;padding-bottom:2rem}.auth-input-group{position:relative}#login input,#register input{background:var(--color-bg-light);border:2px solid var(--color-border-light);border-radius:var(--radius-md);box-sizing:border-box;color:var(--color-text-primary);font-size:1rem;outline:none;padding:1rem 1.2rem;transition:var(--transition-smooth);width:100%}#login input:focus,#register input:focus{background:var(--color-bg-dark);border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}#login input::placeholder,#register input::placeholder{color:var(--color-text-subtitle)}#login input[type=submit],#register input[type=submit]{background:var(--gradient-primary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:var(--color-white);cursor:pointer;font-size:1.05rem;font-weight:700;letter-spacing:.5px;margin-top:.5rem;padding:1.1rem 1.5rem;text-transform:uppercase;transition:var(--transition-smooth)}#login input[type=submit]:hover,#register input[type=submit]:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}#login input[type=submit]:active,#register input[type=submit]:active{transform:translateY(0)}#login input[type=submit]:disabled,#register input[type=submit]:disabled{cursor:not-allowed;opacity:.6;transform:none}#login p,#register p{color:var(--color-text-secondary);font-size:.95rem;margin:0;text-align:center}#login p a,#register p a{color:var(--color-primary);font-weight:600;position:relative;text-decoration:none;transition:var(--transition-fast)}#login p a:after,#register p a:after{background:var(--gradient-primary);bottom:-2px;content:"";height:2px;left:0;position:absolute;transition:var(--transition-smooth);width:0}#login p a:hover:after,#register p a:hover:after{width:100%}#login p a:hover,#register p a:hover{color:var(--color-primary-light)}.auth-loading{align-items:center;display:flex;gap:.5rem;justify-content:center}@media (max-width:768px){#login,#register{margin:2rem auto;padding:0 1rem}.auth-container{padding:2rem 1.8rem}.auth-brand h2{font-size:2.2rem}.auth-brand .brand-icon{font-size:2.5rem}.subtitle{font-size:.95rem}#login form,#register form{gap:1.3rem}#login input,#register input{font-size:.95rem;padding:.9rem 1.1rem}#login input[type=submit],#register input[type=submit]{font-size:1rem;padding:1rem 1.3rem}}@media (max-width:480px){#login,#register{margin:1.5rem auto;max-width:100%}.auth-container{border-radius:var(--radius-md);padding:1.8rem 1.5rem}.auth-brand h2{font-size:2rem}.auth-brand .brand-icon{font-size:2.2rem;margin-bottom:.8rem}.subtitle{font-size:.9rem;margin-bottom:1.5rem}#login form,#register form{gap:1.2rem;margin-bottom:1.5rem;padding-bottom:1.5rem}#login input,#register input{font-size:.9rem;padding:.85rem 1rem}#login input[type=submit],#register input[type=submit]{font-size:.95rem;padding:.95rem 1.2rem}#login p,#register p{font-size:.9rem}}.message{align-items:center;animation:messageSlideIn .3s ease-out;border:1px solid #0000;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;font-weight:500;gap:.8rem;margin-bottom:1.5rem;overflow:hidden;padding:1rem 1.5rem;position:relative}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.message:before{background:currentColor;bottom:0;content:"";left:0;position:absolute;top:0;width:4px}.message p{color:inherit;flex:1 1;font-size:.95rem;line-height:1.5;margin:0}.message-icon{flex-shrink:0;font-size:1.3rem}.message.error{background-color:var(--color-error-bg);border-color:var(--color-error-border);color:var(--color-error-text)}.message.error:before{background:var(--color-error-text)}.message.success{background-color:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-success-text)}.message.success:before{background:var(--color-success-text)}.message.info{background-color:#667eea1a;border-color:#667eea4d;color:var(--color-primary-light)}.message.info:before{background:var(--color-primary)}.message.warning{background-color:#ffc1071a;border-color:#ffc1074d;color:#ffb74d}.message.warning:before{background:#ff9800}@media (max-width:768px){.message{gap:.7rem;padding:.9rem 1.2rem}.message p{font-size:.9rem}.message-icon{font-size:1.2rem}}@media (max-width:480px){.message{border-radius:var(--radius-sm);gap:.6rem;padding:.8rem 1rem}.message p{font-size:.85rem}.message-icon{font-size:1.1rem}}#edit-profile{margin:3rem auto;max-width:600px;padding:0 1.5rem}.edit-profile-container{animation:fadeInUp .5s ease-out;background:var(--color-bg-dark);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:3rem 2.5rem}.edit-profile-header{border-bottom:1px solid var(--color-border);margin-bottom:2.5rem;padding-bottom:2rem;text-align:center}.edit-profile-header h2{-webkit-text-fill-color:#0000;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:800;margin:0 0 .5rem}.edit-profile-header .subtitle{color:var(--color-text-secondary);font-size:1rem;line-height:1.6;margin:0}.profile-image-section{align-items:center;display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.profile-image-wrapper{height:150px;position:relative;width:150px}.profile-image{border:4px solid var(--color-border-light);border-radius:50%;box-shadow:var(--shadow-md);height:150px;object-fit:cover;transition:var(--transition-smooth);width:150px}.profile-image:hover{border-color:var(--color-primary);transform:scale(1.05)}.profile-image-placeholder{border:4px solid var(--color-border-light);border-radius:50%;box-shadow:var(--shadow-md);color:var(--color-white);font-size:3.5rem;font-weight:700;height:150px;width:150px}.image-upload-badge,.profile-image-placeholder{align-items:center;background:var(--gradient-primary);display:flex;justify-content:center}.image-upload-badge{border:3px solid var(--color-bg-dark);border-radius:50%;bottom:8px;box-shadow:var(--shadow-sm);cursor:pointer;height:40px;position:absolute;right:8px;transition:var(--transition-smooth);width:40px}.image-upload-badge:hover{box-shadow:var(--shadow-md);transform:scale(1.1)}.image-upload-badge svg{color:var(--color-white);font-size:1.2rem}#edit-profile form{display:flex;flex-direction:column;gap:1.8rem}.form-group-edit,.form-group-edit label{display:flex;flex-direction:column;gap:.6rem}.form-group-edit label span{color:var(--color-text-secondary);font-size:.9rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}#edit-profile input[type=email],#edit-profile input[type=password],#edit-profile input[type=text],#edit-profile textarea{background:var(--color-bg-light);border:2px solid var(--color-border-light);border-radius:var(--radius-md);box-sizing:border-box;color:var(--color-text-primary);font-family:inherit;font-size:1rem;outline:none;padding:1rem 1.2rem;transition:var(--transition-smooth);width:100%}#edit-profile textarea{min-height:100px;resize:vertical}#edit-profile input:focus,#edit-profile textarea:focus{background:var(--color-bg-dark);border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}#edit-profile input:disabled{background:var(--color-bg-dark);cursor:not-allowed;opacity:.6}#edit-profile input::placeholder,#edit-profile textarea::placeholder{color:var(--color-text-subtitle)}.file-upload-input{display:none}.file-upload-button{align-items:center;background:var(--color-bg-light);border:2px solid var(--color-border-light);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;padding:.9rem 1.5rem;transition:var(--transition-smooth)}.file-upload-button:hover{background:#667eea1a;border-color:var(--color-primary)}.file-upload-button svg{font-size:1.2rem}.file-selected{color:var(--color-text-secondary);font-size:.9rem;margin-top:.5rem}.password-section{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.5rem}.password-section h3{color:var(--color-text-primary);font-size:1.1rem;margin:0 0 1.2rem}#edit-profile input[type=submit]{background:var(--gradient-primary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:var(--color-white);cursor:pointer;font-size:1.05rem;font-weight:700;letter-spacing:.5px;margin-top:1rem;padding:1.1rem 1.5rem;text-transform:uppercase;transition:var(--transition-smooth)}#edit-profile input[type=submit]:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}#edit-profile input[type=submit]:active{transform:translateY(0)}#edit-profile input[type=submit]:disabled{cursor:not-allowed;opacity:.6;transform:none}.helper-text{color:var(--color-text-subtitle);font-size:.85rem;margin-top:.4rem}.form-label-text{color:var(--color-text-secondary);display:block;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin-bottom:.6rem;text-transform:uppercase}@media (max-width:768px){#edit-profile{margin:2rem auto;padding:0 1rem}.edit-profile-container{padding:2rem 1.8rem}.edit-profile-header{margin-bottom:2rem;padding-bottom:1.5rem}.edit-profile-header h2{font-size:1.8rem}.edit-profile-header .subtitle{font-size:.95rem}.profile-image-wrapper{height:130px;width:130px}.profile-image,.profile-image-placeholder{font-size:3rem;height:130px;width:130px}.image-upload-badge{height:36px;width:36px}.image-upload-badge svg{font-size:1.1rem}#edit-profile form{gap:1.5rem}#edit-profile input,#edit-profile textarea{font-size:.95rem;padding:.9rem 1.1rem}#edit-profile input[type=submit]{font-size:1rem;padding:1rem 1.3rem}}@media (max-width:480px){#edit-profile{margin:1.5rem auto;max-width:100%}.edit-profile-container{border-radius:var(--radius-md);padding:1.8rem 1.5rem}.edit-profile-header{margin-bottom:1.5rem;padding-bottom:1.2rem}.edit-profile-header h2{font-size:1.6rem}.edit-profile-header .subtitle{font-size:.9rem}.profile-image-wrapper{height:120px;width:120px}.profile-image,.profile-image-placeholder{border-width:3px;font-size:2.5rem;height:120px;width:120px}.image-upload-badge{bottom:4px;height:34px;right:4px;width:34px}.image-upload-badge svg{font-size:1rem}#edit-profile form{gap:1.3rem}#edit-profile input,#edit-profile textarea{font-size:.9rem;padding:.85rem 1rem}#edit-profile input[type=submit]{font-size:.95rem;padding:.95rem 1.2rem}.password-section{padding:1.2rem}.file-upload-button{font-size:.9rem;padding:.8rem 1.3rem}}:root{--shadow-sm:0 2px 8px #0000001a;--shadow-md:0 4px 20px #00000026;--shadow-lg:0 10px 40px #0003;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--transition-smooth:all 0.3s cubic-bezier(0.4,0,0.2,1)}.loading-container{align-items:center;display:flex;flex-direction:column;gap:1.5rem;justify-content:center;min-height:60vh}.loading-spinner{animation:spin .8s linear infinite;border:4px solid #667eea33;border-radius:50%;border-top:4px solid var(--color-primary);height:50px;width:50px}@keyframes spin{to{transform:rotate(1turn)}}#profile{animation:fadeInUp .6s ease-out;box-sizing:border-box;margin:0 auto;max-width:1200px;padding:2rem;width:100%}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.profile-header-modern{align-items:flex-end;border-bottom:1px solid var(--color-border);display:flex;gap:2rem;margin-bottom:2rem;padding:2rem;position:relative}.profile-avatar-wrapper{flex-shrink:0;position:relative}.profile-avatar-img,.profile-avatar-placeholder{border:5px solid var(--color-bg-dark);border-radius:50%;box-shadow:var(--shadow-lg);height:140px;object-fit:cover;transition:var(--transition-smooth);width:140px}.profile-avatar-placeholder{align-items:center;background:var(--gradient-primary);color:var(--color-white);display:flex;font-size:3rem;font-weight:700;justify-content:center}.avatar-badge{background:var(--gradient-primary);border:3px solid var(--color-bg-dark);border-radius:50%;bottom:8px;box-shadow:0 2px 10px #667eea80;height:24px;position:absolute;right:8px;width:24px}.profile-details{flex:1 1;padding-bottom:.5rem}.profile-name{-webkit-text-fill-color:#0000;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:800;margin:0 0 .5rem}.profile-bio{color:var(--color-text-subtitle);font-size:1.1rem;line-height:1.6;margin:0 0 1.5rem}.profile-stats{display:flex;gap:2rem}.stat-item{align-items:center;background:var(--color-bg-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;padding:.8rem 1.5rem}.stat-number{color:var(--color-primary);font-size:1.8rem;font-weight:700}.stat-label{color:var(--color-text-secondary);font-size:.9rem;letter-spacing:.5px;text-transform:uppercase}.glass-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);box-sizing:border-box;margin-bottom:2rem;padding:2rem;transition:var(--transition-smooth)}.glass-card:hover{border-color:var(--color-primary);box-shadow:0 8px 30px #667eea26}.card-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;gap:.8rem;margin-bottom:1.5rem;padding-bottom:1rem}.card-icon{color:var(--color-primary);font-size:1.5rem}.card-header h3{color:var(--color-text-primary);font-size:1.4rem;font-weight:600;margin:0}.modern-form{gap:1.5rem}.form-group,.modern-form{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-label span{color:var(--color-text-secondary);font-size:.9rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.form-input{background:var(--color-bg-dark);border:2px solid #ffffff1a;border-radius:var(--radius-md);box-sizing:border-box;color:var(--color-text-primary);font-size:1rem;max-width:100%;outline:none;padding:.9rem 1.2rem;transition:var(--transition-smooth);width:100%}.form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.form-input::placeholder{color:var(--color-text-subtitle)}.file-upload-area{cursor:pointer;display:block;position:relative}.file-input-hidden{display:none}.file-upload-content{align-items:center;background:var(--color-bg-dark);border:2px dashed #667eea4d;border-radius:var(--radius-md);display:flex;flex-direction:column;justify-content:center;padding:2.5rem 1.5rem;transition:var(--transition-smooth)}.file-upload-area:hover .file-upload-content{background:#667eea0d;border-color:var(--color-primary)}.upload-icon{color:var(--color-primary);font-size:2.5rem;margin-bottom:.8rem}.upload-text{color:var(--color-text-primary);font-size:1rem;font-weight:600;margin-bottom:.3rem}.upload-hint{color:var(--color-text-subtitle);font-size:.85rem}.btn-modern{align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.6rem;justify-content:center;outline:none;padding:.9rem 1.8rem;transition:var(--transition-smooth)}.btn-primary{background:var(--gradient-primary);box-shadow:0 4px 15px #667eea4d;color:#fff}.btn-primary:hover:not(:disabled){box-shadow:0 6px 25px #667eea66;transform:translateY(-2px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.btn-secondary{background:#0000;border:2px solid #ffffff1a;color:var(--color-text-secondary)}.btn-secondary:hover{background:#ffffff0d;border-color:var(--color-primary);color:var(--color-primary)}.btn-spinner{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.button-group{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.edit-preview{border-radius:var(--radius-md);box-shadow:var(--shadow-md);margin:0 auto 1.5rem;max-width:300px;overflow:hidden;width:100%}.edit-preview img{display:block;height:auto;width:100%}.gallery-section{margin-top:3rem}.section-header{align-items:center;border-bottom:2px solid #ffffff1a;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.section-header h2{-webkit-text-fill-color:#0000;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:700;margin:0}.photo-count{background:#667eea1a;border-radius:20px;color:var(--color-primary);font-size:.9rem;font-weight:600;padding:.5rem 1rem}.photos-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.photo-item{border-radius:var(--radius-lg);transition:var(--transition-smooth)}.photo-item,.photo-wrapper{overflow:hidden;position:relative}.photo-wrapper{background:var(--color-bg-light);padding-bottom:100%;width:100%}.photo-wrapper img{height:100%;left:0;object-fit:cover;position:absolute;top:0;transition:var(--transition-smooth);width:100%}.photo-item:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.photo-item:hover .photo-wrapper img{transform:scale(1.1)}.photo-hover-overlay{background:linear-gradient(180deg,#0000 0,#000000b3 70%,#000000e6);bottom:0;display:flex;flex-direction:column;justify-content:flex-end;left:0;opacity:0;padding:1.5rem;position:absolute;right:0;top:0;transition:var(--transition-smooth)}.photo-item:hover .photo-hover-overlay{opacity:1}.photo-info{transform:translateY(20px);transition:var(--transition-smooth)}.photo-item:hover .photo-info{transform:translateY(0)}.photo-title{color:#fff;font-size:1.1rem;font-weight:600;line-height:1.4;margin:0 0 1rem}.photo-actions{flex-wrap:wrap;gap:.6rem;padding-left:20px}.action-btn,.photo-actions{display:flex;justify-content:center}.action-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:1px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;gap:.4rem;margin-right:.6rem;min-width:-webkit-fit-content;min-width:fit-content;padding:.6rem 1rem;text-decoration:none;transition:var(--transition-smooth);white-space:nowrap}.action-btn:hover{background:#ffffff4d;transform:translateY(-2px)}.view-btn:hover{background:#667eeacc;border-color:#667eea}.edit-btn:hover{background:#34d399cc;border-color:#34d399}.delete-btn:hover{background:#ef4444cc;border-color:#ef4444}.empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:4rem 2rem;text-align:center}.empty-icon{color:#667eea4d;font-size:5rem;margin-bottom:1.5rem}.empty-text{color:var(--color-text-secondary);font-size:1.2rem;margin:0 0 .5rem}.empty-hint{color:var(--color-text-subtitle);font-size:.95rem;margin:0}.hide{display:none!important}@media (max-width:1024px){.photos-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media (max-width:768px){#profile{padding:1rem}.profile-header-modern{align-items:center;flex-direction:column;padding:1.5rem 1rem;text-align:center}.profile-avatar-img,.profile-avatar-placeholder{height:110px;width:110px}.profile-name{font-size:2rem}.profile-stats{justify-content:center}.photos-grid{gap:1rem;grid-template-columns:repeat(2,1fr)}.button-group{grid-template-columns:1fr}.glass-card{margin-left:0;margin-right:0;padding:1.5rem}.photo-actions{justify-content:center;width:100%}.action-btn{flex:0 0 auto;font-size:.8rem;min-width:0;padding:.7rem .5rem;width:60px}.action-btn span{display:none}.action-btn svg{font-size:1.2rem}}@media (max-width:480px){#profile{padding:.8rem}.profile-name{font-size:1.6rem}.profile-bio{font-size:1rem}.photos-grid{grid-template-columns:1fr}.glass-card{margin-left:0;margin-right:0;padding:1.2rem}.card-header h3{font-size:1.2rem}.form-input{font-size:.95rem;padding:.8rem 1rem}.file-upload-content{padding:2rem 1rem}.upload-icon{font-size:2rem}.upload-text{font-size:.9rem}.btn-modern{font-size:.95rem;padding:.8rem 1.5rem}.photo-wrapper{padding-bottom:100%}.photo-title{font-size:1rem}.photo-actions{gap:.6rem;justify-content:center;padding-left:15px}.action-btn{height:auto;min-width:auto;padding:.6rem 1rem;width:auto}.action-btn span{display:inline}.stat-item{padding:.6rem 1.2rem}.stat-number{font-size:1.5rem}.stat-label{font-size:.8rem}}#photo{background-color:var(--color-bg-dark);border-radius:8px;box-shadow:0 4px 15px #00000026;box-sizing:border-box;margin:2rem auto;max-width:900px;padding-bottom:1rem;padding-top:1.5rem;width:70%}.photo-display{border-bottom:1px solid var(--color-border);padding-bottom:1rem}.photo-display img{display:block;height:auto;margin-bottom:1rem;max-height:500px;object-fit:contain;width:100%}.photo-title-detail{color:var(--color-text-primary);font-size:1.8rem;font-weight:700;margin:0;padding:0 1.5rem .5rem;text-align:left}.photo-author-detail{color:var(--color-text-secondary);font-size:1rem;margin:0;padding:0 1.5rem 1rem;text-align:left}.photo-author-detail .author-name-detail{color:var(--color-primary);font-weight:700;margin-left:.25rem;text-decoration:none}.photo-author-detail .author-name-detail:hover{text-decoration:underline}.photo-actions-detail{background-color:var(--color-bg-dark-light);border-top:1px solid var(--color-border);margin-top:1rem;padding:.75rem 1.5rem;position:relative;top:15px}.photo-actions-detail .like{align-items:center;border:none;display:flex;padding:0}.photo-actions-detail .like svg{color:#ff6b6b;cursor:pointer;font-size:1.8rem;margin-right:.6rem;transition:transform .2s ease-in-out}.photo-actions-detail .like svg:hover{transform:scale(1.15)}.photo-actions-detail .like p{color:var(--color-text-secondary);font-size:1.1rem;margin:0;position:relative;top:6px}.message-container{margin:1em 0;padding:0 1.5rem}.comments{margin-top:2rem;padding:0 1.5rem;text-align:left}.comments h3{border-bottom:1px solid var(--color-border);color:var(--color-text-primary);font-size:1.5rem;margin-bottom:1rem;padding-bottom:.5rem}.comment-form{display:flex;flex-direction:column;gap:.8em;margin-bottom:2rem}.comment-form input[type=text]{background-color:var(--color-bg-light);border:1px solid var(--color-border);border-radius:5px;box-sizing:border-box;color:var(--color-text-primary);padding:.7em;width:100%}.comment-form input[type=submit]{background-color:var(--color-primary);border:none;border-radius:5px;color:var(--color-white);cursor:pointer;font-size:1em;font-weight:700;padding:.8em 1.2em;transition:background-color .2s ease-in-out}.comment-form input[type=submit]:hover{opacity:.8}.comment-list{display:flex;flex-direction:column;gap:1.5rem}.comment{border-bottom:1px solid var(--color-border-light);padding-bottom:1.5rem}.comment:last-child{border-bottom:none}.comment .author{align-items:center;display:flex;gap:.75rem;margin-bottom:.5rem}.comment .author img{object-fit:cover}.comment .author .author-placeholder,.comment .author img{border:2px solid var(--color-border-light);border-radius:50%;height:40px;width:40px}.comment .author .author-placeholder{background-color:var(--color-bg-light)}.comment .author .author-name{color:var(--color-text-primary);font-weight:700;margin:0;text-decoration:none}.comment .author .author-name:hover{color:var(--color-primary);text-decoration:underline}.comment .comment-text{color:var(--color-text-secondary);line-height:1.5;margin:0;padding-left:54px}@media (max-width:992px){#photo{width:90%}}@media (max-width:600px){#photo{box-shadow:none;margin:1rem auto;padding-top:0;width:100%}#photo,.photo-display img{border-radius:0}.comments,.message-container,.photo-actions-detail,.photo-author-detail,.photo-title-detail{padding-left:1rem;padding-right:1rem}}#search{margin:0 auto;padding-top:2em;width:50%}#search h2{text-align:center}
/*# sourceMappingURL=main.b8460cd7.css.map*/