.home-page{align-items:center;min-height:100vh;padding:1.25rem;display:flex}.home-container{width:min(100%, var(--page-max-width));align-items:center;gap:2rem;margin:0 auto;display:grid}.home-content{flex-direction:column;gap:1.4rem;display:flex}.home-header{flex-direction:column;gap:.7rem;display:flex}.home-header .home-title{letter-spacing:-.06em;font-size:clamp(2.8rem,10vw,5rem);font-weight:900;line-height:.92}.home-header .home-subtitle{max-width:36rem;color:var(--color-text-secondary);font-size:clamp(1rem,3vw,1.2rem)}.home-description p{max-width:38rem;color:var(--color-text-secondary)}.home-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.home-features .feature{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#ffffff0a;border-radius:1.15rem;padding:1rem}.home-features .feature .feature-icon{margin-bottom:.75rem;font-size:1.4rem;display:inline-flex}.home-features .feature h3{margin-bottom:.35rem;font-size:1rem}.home-features .feature p{color:var(--color-text-secondary);font-size:.86rem}.home-cta{flex-wrap:wrap;gap:.85rem;display:flex}.home-cta .btn{border-radius:var(--radius-full);min-height:3rem;padding:.9rem 1.35rem;font-size:.95rem;font-weight:700}.home-cta .btn.btn-primary{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;box-shadow:0 18px 36px #ff7a5938}.home-cta .btn.btn-secondary{border:1px solid var(--color-border);color:var(--color-text-primary);background:#ffffff0a}.home-footer{flex-direction:column;gap:.35rem;display:flex}.home-footer p{color:var(--color-text-secondary);font-size:.88rem}.home-footer .link-btn{color:var(--color-primary-light);background:0 0;font-weight:700}.home-illustration{justify-content:center;display:flex}.illustration-box{aspect-ratio:.9;width:min(22rem,80vw);position:relative}.illustration-post{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow-lg);border:1px solid #94a3b824;border-radius:1.4rem;position:absolute;inset:auto}.illustration-post:before,.illustration-post:after{content:"";position:absolute}.illustration-post:before{border-radius:1rem;inset:1rem}.illustration-post:after{background:linear-gradient(#0000,#060913e6);border-radius:1rem;height:4rem;bottom:1rem;left:1rem;right:1rem}.illustration-post.post-1{background:linear-gradient(155deg,#ff7a593d,#ff7a590f);inset:0 0 1.2rem 2.5rem;transform:rotate(6deg)}.illustration-post.post-1:before{background:linear-gradient(#ff7a5938,#080d181f)}.illustration-post.post-2{background:linear-gradient(155deg,#3b82f62e,#3b82f60a);inset:2rem 3rem 0 0;transform:rotate(-8deg)}.illustration-post.post-2:before{background:linear-gradient(#3b82f62e,#080d181f)}.illustration-post.post-3{background:linear-gradient(155deg,#ffffff1a,#ff7a5905);inset:4rem 1.5rem 2rem 4rem;transform:rotate(-2deg)}.illustration-post.post-3:before{background:linear-gradient(#ffffff24,#080d181f)}@media (width<=767px){.home-features{grid-template-columns:1fr}.home-cta{flex-direction:column}.home-cta .btn{width:100%}}@media (width>=900px){.home-container{grid-template-columns:minmax(0,1.05fr) minmax(18rem,.95fr);gap:3rem}}main{width:100%;min-height:100vh;padding:var(--spacing-lg);background:linear-gradient(135deg, var(--color-bg-main) 0%, var(--color-bg-secondary) 100%);justify-content:center;align-items:center;display:flex}.form-container{border-radius:var(--radius-2xl);background:var(--color-bg-glass);border:1px solid var(--color-border);width:min(480px,100%);box-shadow:var(--shadow-xl);flex-direction:column;gap:1.25rem;display:flex;overflow:hidden}.form-container h1{padding:var(--spacing-xl) var(--spacing-xl) 0;text-align:center;color:var(--color-text-primary);letter-spacing:.05em;margin:0;font-size:clamp(2rem,4vw,2.6rem)}.form-container form{gap:var(--spacing-lg);padding:var(--spacing-2xl) var(--spacing-xl);flex-direction:column;display:flex}.form-container .form-group{flex-direction:column;gap:.65rem;display:flex}.form-container label{color:var(--color-text-secondary);font-size:var(--font-sm);font-weight:500}.form-container input{width:100%;padding:var(--spacing-md) var(--spacing-md);border-radius:var(--radius-lg);border:1px solid var(--color-border);color:var(--color-text-primary);font-size:var(--font-base);transition:var(--transition-base);background-color:#ffffff0f}.form-container input::placeholder{color:var(--color-text-tertiary)}.form-container input:focus{border-color:var(--color-primary);background-color:#ffffff1f;transform:translateY(-1px);box-shadow:0 12px 32px #ff5f4a29}.form-container button{width:100%;padding:var(--spacing-md);border-radius:var(--radius-lg);background:linear-gradient(135deg, var(--color-primary), var(--color-accent));color:var(--color-text-primary);font-size:var(--font-base);letter-spacing:.02em;cursor:pointer;transition:var(--transition-base);border:none;font-weight:700}.form-container button:hover{transform:translateY(-2px);box-shadow:0 18px 36px #ff5f4a47}.form-container button:active{transform:translateY(0)}.form-container button:disabled{opacity:.6;cursor:not-allowed}.form-error{padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);color:#ff4757;font-size:var(--font-sm);text-align:center;background:#ff47571f;border:1px solid #ff475766;font-weight:500;animation:.3s ease-out slideDown}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.toggleAuthForm{padding:0 var(--spacing-xl) var(--spacing-2xl);text-align:center;color:var(--color-text-secondary);font-size:var(--font-sm)}.toggleAuthForm a,.toggleAuthForm{color:var(--color-primary);transition:var(--transition-base);font-weight:700;text-decoration:none}.toggleAuthForm a:hover,.toggleAuthForm:hover{color:var(--color-primary-light)}@media (width<=580px){main{padding:var(--spacing-md)}.form-container{border-radius:var(--radius-xl);gap:var(--spacing-md);width:100%}.form-container h1{padding-top:var(--spacing-lg);font-size:clamp(1.5rem,4vw,2rem)}.form-container form{padding:var(--spacing-xl) var(--spacing-lg);gap:var(--spacing-md)}.form-group{gap:.5rem}.form-container label{font-size:var(--font-xs)}.form-container input{padding:.875rem var(--spacing-md);font-size:1rem}.form-container button{padding:var(--spacing-md)}}@media (width<=420px){main{padding:var(--spacing-sm)}.form-container{gap:var(--spacing-sm);border-radius:var(--radius-lg)}.form-container h1{padding-top:var(--spacing-md);font-size:1.5rem}.form-container form{padding:var(--spacing-lg) var(--spacing-md);gap:var(--spacing-sm)}.form-container input,.form-container button{padding:.8rem var(--spacing-sm);font-size:1rem}.toggleAuthForm{padding:0 var(--spacing-md) var(--spacing-lg);font-size:var(--font-xs)}.form-error{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-xs)}}.create-post-page{justify-content:center;align-items:flex-start;min-height:100vh;padding:2rem 1rem 4rem;display:flex}.create-post-page .form-container{background:var(--glass-bg);border:1px solid var(--color-border);width:min(100%,40rem);box-shadow:var(--shadow-md);color:var(--color-text-primary);border-radius:1.35rem;padding:1.5rem}.create-post-page .form-container h1{margin-bottom:1.35rem;font-size:clamp(1.8rem,5vw,2.3rem)}.create-post-page .form-container form{flex-direction:column;gap:1.2rem;display:flex}.create-post-page .form-group{flex-direction:column;gap:.9rem;display:flex}.create-post-page textarea{border:1px solid var(--color-border);width:100%;min-height:8rem;color:var(--color-text-primary);resize:vertical;background:#ffffff0d;border-radius:1rem;padding:.9rem 1rem}.create-post-page textarea::placeholder{color:var(--color-text-tertiary)}.create-post-page textarea:focus{background:#ffffff12;border-color:#ff7a594d}.create-post-page .image-preview{border:1px solid var(--color-border);border-radius:1rem;overflow:hidden}.create-post-page .image-preview img{object-fit:cover;width:100%;max-height:24rem}.create-post-page .file-label{width:100%;min-height:3.4rem;color:var(--color-text-primary);cursor:pointer;background:#ff7a5914;border:1px dashed #ff7a5966;border-radius:1rem;justify-content:center;align-items:center;padding:1rem;font-weight:700;display:inline-flex}.create-post-page .file-label:hover{background:#ff7a591f}.create-post-page .button{width:100%}@media (width<=767px){.create-post-page{padding:1.25rem 1rem 2rem}.create-post-page .form-container{border-radius:1.15rem;padding:1rem}}.app-nav{z-index:1200}.app-nav--desktop{width:var(--nav-rail-width);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#080d18e0;border:1px solid #94a3b829;border-radius:1.5rem;flex-direction:column;gap:1rem;padding:1rem .75rem;display:flex;position:fixed;top:1rem;bottom:1rem;left:1rem}.app-nav__brand{color:var(--color-text-primary);background:0 0;flex-direction:column;align-items:center;gap:.7rem;padding:.25rem 0;display:flex}.app-nav__brand .brand-mark{background:linear-gradient(145deg, var(--color-primary), #ff9b7b);color:#fff8f5;letter-spacing:.08em;border-radius:1rem;justify-content:center;align-items:center;width:3rem;height:3rem;font-size:.95rem;font-weight:800;display:inline-flex;box-shadow:0 14px 30px #ff7a594d}.app-nav__brand .brand-copy{text-align:center;flex-direction:column;align-items:center;gap:.15rem;display:flex}.app-nav__brand .brand-copy strong{letter-spacing:.01em;font-size:.8rem;font-weight:700}.app-nav__brand .brand-copy small{color:var(--color-text-tertiary);font-size:.68rem}.app-nav__desktop-links{flex-direction:column;flex:1;gap:.55rem;display:flex}.nav-link{min-height:4.5rem;color:var(--color-text-secondary);background:0 0;border:1px solid #0000;border-radius:1.1rem;flex-direction:column;justify-content:center;align-items:center;gap:.45rem;padding:.75rem .5rem;display:flex;position:relative}.nav-link:hover{color:var(--color-text-primary);background:#ffffff0a;border-color:#94a3b824;transform:translateY(-1px)}.nav-link.active{color:var(--color-text-primary);background:linear-gradient(#ff7a592e,#ff7a591a);border-color:#ff7a5938;box-shadow:0 16px 30px #ff7a591f}.nav-link__icon{justify-content:center;align-items:center;width:2rem;height:2rem;display:inline-flex;position:relative}.nav-link__icon svg{width:1.35rem;height:1.35rem}.nav-link__icon--avatar{width:2rem;height:2rem}.nav-link__badge,.menu-badge{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;justify-content:center;align-items:center;min-width:1.1rem;height:1.1rem;padding:0 .25rem;font-size:.68rem;font-weight:700;display:inline-flex}.nav-link__badge{position:absolute;top:-.1rem;right:-.35rem}.nav-link__label{font-size:.74rem;font-weight:600;line-height:1}.app-nav__desktop-footer{position:relative}.profile-trigger{width:100%;color:var(--color-text-primary);background:#ffffff0a;border:1px solid #94a3b824;border-radius:1.15rem;flex-direction:column;align-items:center;gap:.45rem;padding:.75rem .5rem;display:flex}.profile-trigger:hover{background:#ff7a5914;border-color:#ff7a593d}.profile-trigger__avatar,.mobile-profile-avatar,.menu-avatar{object-fit:cover;border-radius:50%}.profile-trigger__avatar{border:2px solid #ff7a5952;width:2.5rem;height:2.5rem}.profile-trigger__copy{flex-direction:column;align-items:center;gap:.15rem;min-width:0;display:flex}.profile-trigger__copy strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.78rem;overflow:hidden}.profile-trigger__copy small{color:var(--color-text-tertiary);font-size:.68rem}.profile-menu{width:min(18rem,100vw - 1.5rem);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#080d18f2;border:1px solid #94a3b829;border-radius:1.15rem;padding:.5rem}.profile-menu.profile-menu--desktop{z-index:1300;position:absolute;bottom:0;left:calc(100% + .9rem)}.profile-menu.profile-menu--mobile{z-index:1300;position:absolute;bottom:calc(100% + .7rem);right:0}.menu-header{align-items:center;gap:.85rem;padding:.75rem;display:flex}.menu-avatar{border:2px solid #ff7a594d;width:2.8rem;height:2.8rem}.menu-user-info{min-width:0}.menu-user-info .menu-username{font-size:.95rem;font-weight:700}.menu-user-info .menu-email{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;margin-top:.2rem;font-size:.78rem;overflow:hidden}.menu-divider{background:#94a3b81f;height:1px;margin:.4rem 0}.menu-item{width:100%;color:var(--color-text-primary);text-align:left;background:0 0;border-radius:.95rem;align-items:center;gap:.7rem;padding:.8rem .85rem;display:flex}.menu-item svg{flex-shrink:0;width:1rem;height:1rem}.menu-item span{font-size:.9rem;font-weight:600}.menu-item .menu-badge{margin-left:auto}.menu-item:hover{background:#ffffff0d}.menu-item.logout-item{color:#ffd5dc}.menu-item.logout-item:hover{color:#fff0f3;background:#fb71851f}.app-nav--mobile{left:.75rem;right:.75rem;bottom:calc(.75rem + env(safe-area-inset-bottom));box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#080d18eb;border:1px solid #94a3b829;border-radius:1.35rem;padding:.45rem;display:none;position:fixed}.app-nav__mobile-links{grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;gap:.2rem;display:grid}.nav-link--mobile{border-radius:1rem;gap:.25rem;min-height:4.1rem;padding:.4rem .1rem}.nav-link--mobile .nav-link__label{letter-spacing:-.01em;font-size:.64rem}.mobile-profile-wrapper{position:relative}.mobile-profile-avatar{border:2px solid #ff7a5947;width:1.75rem;height:1.75rem}@media (width<=767px){.app-nav--desktop{display:none}.app-nav--mobile{display:block}}.feed-page{min-height:100vh;color:var(--color-text-primary)}.feed{width:min(100%, var(--content-max-width));flex-direction:column;gap:1.5rem;margin:0 auto;padding:2rem 1rem 4rem;display:flex}.feed-header{background:var(--glass-bg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:1.35rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.35rem;display:flex}.feed-copy{flex-direction:column;gap:.25rem;min-width:0;display:flex}.feed-eyebrow{color:var(--color-primary-light);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:700}.feed-header h1{font-size:clamp(1.75rem,4vw,2.4rem)}.feed-header p{color:var(--color-text-secondary)}.feed-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.feed-toggle{border-radius:var(--radius-full);border:1px solid var(--color-border);min-height:2.75rem;color:var(--color-text-secondary);white-space:nowrap;background:#ffffff0a;padding:.75rem 1rem;font-size:.9rem;font-weight:600}.feed-toggle:hover{color:var(--color-text-primary);background:#ff7a5914;border-color:#ff7a5947}.feed-toggle.active{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;border-color:#0000;box-shadow:0 16px 28px #ff7a593d}.post-count{border-radius:var(--radius-full);border:1px solid var(--color-border);min-height:2.75rem;color:var(--color-text-primary);background:#ffffff0a;justify-content:center;align-items:center;padding:.6rem 1rem;font-size:.88rem;font-weight:700;display:inline-flex}.feed .posts{width:100%;max-width:var(--content-max-width);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));align-items:start;gap:1.5rem;margin:0 auto;display:grid}.feed .message-state{background:var(--glass-bg);border:1px solid var(--color-border);width:min(100%,41rem);box-shadow:var(--shadow-sm);text-align:center;border-radius:1.35rem;margin:0 auto;padding:2rem 1.5rem}.feed .message-state h2{margin-bottom:.65rem;font-size:1.35rem}.feed .message-state p{color:var(--color-text-secondary)}.feed .error-state{border-color:#fb718552}.feed .empty-state{max-width:34rem}@media (width<=767px){.feed{padding:1.25rem 1rem 2rem}.feed-header{align-items:flex-start;padding:1rem}.feed-controls{justify-content:flex-start;width:100%}.feed-toggle{flex:calc(50% - .375rem);justify-content:center}.post-count{justify-content:flex-start;width:100%;padding-left:1rem}.feed .message-state{padding:1.5rem 1rem}}.comments-section{border-top:1px solid var(--color-border);padding-top:.9rem}.comments-section .toggle-comments-btn{color:var(--color-text-secondary);background:0 0;align-items:center;gap:.5rem;padding:0;font-size:.88rem;font-weight:600;display:inline-flex}.comments-section .toggle-comments-btn svg{width:1rem;height:1rem}.comments-section .toggle-comments-btn:hover{color:var(--color-text-primary)}.comments-section .comment-count{border-radius:var(--radius-full);min-width:1.4rem;height:1.4rem;color:var(--color-primary-light);background:#ff7a591f;justify-content:center;align-items:center;padding:0 .3rem;font-size:.72rem;font-weight:700;display:inline-flex}.comments-section .comments-container{border:1px solid var(--color-border-light);background:#ffffff0a;border-radius:1rem;margin-top:.85rem;padding:.9rem}.comments-section .comment-form{border-bottom:1px solid var(--color-border-light);align-items:flex-start;gap:.75rem;margin-bottom:.9rem;padding-bottom:.9rem;display:flex}.comments-section .comment-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:2.2rem;height:2.2rem}.comments-section .comment-input-wrapper{flex:1;grid-template-columns:minmax(0,1fr) auto;gap:.55rem;display:grid}.comments-section .comment-input{border:1px solid var(--color-border);width:100%;min-height:2.7rem;color:var(--color-text-primary);background:#ffffff0d;border-radius:.95rem;padding:.8rem .9rem;font-size:.9rem}.comments-section .comment-input::placeholder{color:var(--color-text-tertiary)}.comments-section .comment-input:focus{background:#ffffff12;border-color:#ff7a594d}.comments-section .comment-submit-btn{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;border-radius:.95rem;min-width:4.6rem;min-height:2.7rem;padding:.75rem .9rem;font-weight:700}.comments-section .comment-submit-btn:disabled{opacity:.55}.comments-section .comment-error,.comments-section .login-prompt,.comments-section .loading,.comments-section .no-comments{color:var(--color-text-secondary);font-size:.85rem}.comments-section .comment-error{color:#ffd2dc;margin-top:.5rem}.comments-section .comments-list{flex-direction:column;gap:.65rem;max-height:20rem;display:flex;overflow-y:auto}.comments-section .comment-item{background:#ffffff08;border:1px solid #0000;border-radius:.95rem;align-items:flex-start;gap:.7rem;padding:.75rem;display:flex}.comments-section .comment-item:hover{border-color:var(--color-border-light)}.comments-section .comment-content{flex:1;min-width:0}.comments-section .comment-header{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.comments-section .comment-header strong{font-size:.88rem}.comments-section .comment-time{color:var(--color-text-tertiary);font-size:.76rem}.comments-section .comment-text{color:var(--color-text-secondary);word-break:break-word;font-size:.88rem;line-height:1.55}.comments-section .delete-comment-btn{color:#ffcad3;background:0 0;font-size:1rem;line-height:1}.comments-section .delete-comment-btn:hover{color:#fff1f4}@media (width<=640px){.comments-section .comment-input-wrapper{grid-template-columns:1fr}.comments-section .comment-submit-btn{width:100%}}@keyframes heartBeat{0%{transform:scale(1)}20%{transform:scale(1.18)}45%{transform:scale(.96)}to{transform:scale(1)}}.post{background:var(--glass-bg);border:1px solid var(--color-border);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:1.35rem;flex-direction:column;gap:1rem;padding:1rem;display:flex;position:relative;overflow:hidden}.post .post-error{color:#ffe3ea;z-index:2;background:#fb71852e;border:1px solid #fb718559;border-radius:.9rem;padding:.65rem .8rem;font-size:.82rem;font-weight:600;position:absolute;top:.85rem;left:.85rem;right:3.5rem}.post .post-delete-btn{color:#ffd3dc;z-index:10;background:#0b1220c2;border:1px solid #fb718547;border-radius:50%;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;display:inline-flex;position:absolute;top:1.25rem;right:1.25rem}.post .post-delete-btn svg{width:1rem;height:1rem}.post .post-delete-btn:hover:not(:disabled){color:#fff1f4;background:#fb718529}.post .post-delete-btn__loader{border:2px solid #ffffff38;border-top-color:currentColor;border-radius:50%;width:.9rem;height:.9rem;animation:.75s linear infinite spin}.post .post-header{justify-content:space-between;align-items:center;gap:.85rem;padding-right:3.5rem;display:flex;position:relative}.post .user-info{flex:1;align-items:center;gap:.85rem;min-width:0;display:flex}.post .img-wrapper{background:linear-gradient(145deg, var(--color-primary), var(--color-primary-light));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:3rem;height:3rem;padding:2px;display:flex;box-shadow:0 10px 24px #ff7a5933}.post .img-wrapper img{object-fit:cover;border-radius:50%;width:100%;height:100%}.post .user-copy{flex-direction:column;gap:.15rem;min-width:0;display:flex}.post .post-username{text-overflow:ellipsis;white-space:nowrap;font-size:.98rem;font-weight:700;overflow:hidden}.post .post-meta{color:var(--color-text-secondary);font-size:.78rem}.post .post-header-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.post .follow-btn,.post .owner-badge{border-radius:var(--radius-full);white-space:nowrap;min-height:2.4rem;padding:.55rem .9rem;font-size:.82rem;font-weight:700}.post .follow-btn{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;border:1px solid #0000;box-shadow:0 14px 24px #ff7a592e}.post .follow-btn:hover:not(:disabled){transform:translateY(-1px)}.post .follow-btn:disabled{opacity:.6;cursor:not-allowed}.post .follow-btn.following{border-color:var(--color-border);color:var(--color-text-primary);box-shadow:none;background:#ffffff0d}.post .follow-btn.pending{color:#ffe7a0;box-shadow:none;background:#f8c95b29;border-color:#f8c95b3d}.post .owner-badge{border:1px solid var(--color-border);color:var(--color-text-secondary);background:#ffffff0d;justify-content:center;align-items:center;display:inline-flex}.post .post-media{background:var(--color-surface);border-radius:1.1rem;width:100%;overflow:hidden}.post .post-media img{aspect-ratio:1;object-fit:cover;width:100%}.post .icons{justify-content:space-between;align-items:center;gap:1rem;display:flex}.post .left,.post .right{align-items:center;gap:.5rem;display:flex}.post .like-action{border-radius:var(--radius-full);border:1px solid var(--color-border-light);background:#ffffff0a;align-items:center;gap:.35rem;padding:.2rem .2rem .2rem .45rem;display:flex}.post .like-action button,.post .post-icon-btn,.post .save-btn{border:1px solid var(--color-border-light);width:2.35rem;height:2.35rem;color:var(--color-text-secondary);background:#ffffff0a;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.post .like-action button:hover:not(:disabled),.post .post-icon-btn:hover:not(:disabled),.post .save-btn:hover:not(:disabled){color:var(--color-text-primary);background:#ff7a5914;border-color:#ff7a5933}.post .like-action button:disabled,.post .post-icon-btn:disabled,.post .save-btn:disabled{opacity:.55;cursor:not-allowed}.post svg{width:1.15rem;height:1.15rem;transition:var(--transition-fast)}.post svg.like{color:var(--color-like);fill:var(--color-like)}.post svg.like-animate{animation:.4s heartBeat}.post .like-count{min-width:1.8rem;color:var(--color-text-primary);text-align:center;padding-right:.35rem;font-size:.83rem;font-weight:700}.post .save-btn.saved{color:var(--color-primary);background:#ff7a5914;border-color:#ff7a5933}.post .bottom{flex-direction:column;gap:.85rem;display:flex}.post .caption{color:var(--color-text-secondary);word-break:break-word;font-size:.93rem;line-height:1.6}@media (width<=767px){.post{padding:1rem}.post .post-header{padding-right:3rem}.post .post-header-actions{align-self:center}.post .icons,.post .left{flex-wrap:wrap}.post .post-delete-btn{width:2.1rem;height:2.1rem;top:1.45rem;right:.9rem}}.profile-page{min-height:100vh;color:var(--color-text-primary)}.profile{flex-direction:column;gap:1.35rem;width:min(100%,60rem);margin:0 auto;padding:2rem 1rem 4rem;display:flex}.profile-header,.profile .message-state{background:var(--glass-bg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:1.35rem}.profile-header{padding:1.5rem}.profile .profile-info{align-items:center;gap:1.4rem;display:flex}.profile .profile-avatar{flex-shrink:0}.profile .profile-avatar img{object-fit:cover;border:2px solid #ff7a593d;border-radius:1.8rem;width:6.5rem;height:6.5rem;box-shadow:0 18px 36px #ff7a592e}.profile .profile-details{flex-direction:column;flex:1;gap:.95rem;min-width:0;display:flex}.profile .profile-identity{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.profile .profile-kicker{color:var(--color-primary-light);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.35rem;font-size:.78rem;font-weight:700;display:inline-flex}.profile .profile-identity h1{font-size:clamp(1.8rem,4vw,2.6rem)}.profile .profile-chip{border-radius:var(--radius-full);border:1px solid var(--color-border);min-height:2.4rem;color:var(--color-text-secondary);background:#ffffff0d;justify-content:center;align-items:center;padding:.55rem .9rem;font-size:.82rem;font-weight:700;display:inline-flex}.profile .profile-email{color:var(--color-text-secondary)}.profile .profile-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.profile .stat{border:1px solid var(--color-border-light);background:#ffffff0a;border-radius:1rem;flex-direction:column;gap:.2rem;padding:.95rem;display:flex}.profile .stat-number{font-size:clamp(1.2rem,3vw,1.65rem);font-weight:800}.profile .stat-label{color:var(--color-text-secondary);font-size:.82rem}.profile .profile-tabs{flex-wrap:wrap;gap:.75rem;display:flex}.profile .tab{border-radius:var(--radius-full);border:1px solid var(--color-border);min-height:2.75rem;color:var(--color-text-secondary);background:#ffffff0a;padding:.75rem 1rem;font-size:.92rem;font-weight:700}.profile .tab:hover{color:var(--color-text-primary);border-color:#ff7a593d}.profile .tab.active{color:var(--color-text-primary);background:linear-gradient(135deg,#ff7a592e,#ff7a5914);border-color:#ff7a593d}.profile .section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.profile .section-header h2{font-size:1.35rem}.profile .section-header p{color:var(--color-text-secondary)}.profile .profile-post-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;display:grid}.profile .profile-post-card{aspect-ratio:1;border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);border-radius:1rem;position:relative;overflow:hidden}.profile .profile-post-card img{object-fit:cover;width:100%;height:100%}.profile .profile-post-card__overlay{background:linear-gradient(#0000,#060913e6);flex-direction:column;gap:.35rem;padding:.8rem;display:flex;position:absolute;inset:auto 0 0}.profile .profile-post-card__overlay span{border-radius:var(--radius-full);color:#fff;background:#0b1220b8;align-items:center;width:fit-content;padding:.28rem .5rem;font-size:.72rem;font-weight:700;display:inline-flex}.profile .profile-post-card__overlay p{color:#f8fafcf0;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.82rem;line-height:1.4;display:-webkit-box;overflow:hidden}.profile .saved-posts-list{flex-direction:column;gap:1rem;display:flex}.profile .saved-posts-list .post{width:min(100%,41rem);margin:0 auto}.profile .message-state{text-align:center;padding:2rem 1.5rem}.profile .message-state h2{margin-bottom:.6rem;font-size:1.25rem}.profile .message-state p{color:var(--color-text-secondary)}.profile .message-state.error-state{border-color:#fb718552}@media (width<=767px){.profile{padding:1.25rem 1rem 2rem}.profile .profile-header{padding:1rem}.profile .profile-info{align-items:flex-start}.profile .profile-avatar img{border-radius:1.35rem;width:5.2rem;height:5.2rem}.profile .profile-stats{gap:.55rem}.profile .stat{padding:.8rem .65rem}}@media (width<=520px){.profile{padding-inline:.8rem}.profile .profile-header{padding:.9rem}.profile .profile-info{gap:.9rem}.profile .profile-avatar img{width:4.5rem;height:4.5rem}.profile .profile-post-grid{gap:.4rem}.profile .profile-post-card__overlay{padding:.55rem}.profile .profile-post-card__overlay p{font-size:.75rem}}@keyframes slideInToast{0%{opacity:0;transform:translate(1.5rem)}to{opacity:1;transform:translate(0)}}.follow-requests{min-height:100vh;color:var(--color-text-primary);padding:2rem 1rem 4rem}.follow-requests .container{width:min(100%,46rem);margin:0 auto}.follow-requests .header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.follow-requests .header h1{font-size:clamp(1.7rem,4vw,2.35rem)}.follow-requests .header .back-btn,.follow-requests .header .count{border-radius:var(--radius-full);justify-content:center;align-items:center;min-height:2.75rem;padding:.75rem 1rem;display:inline-flex}.follow-requests .header .back-btn{border:1px solid var(--color-border);color:var(--color-text-primary);background:#ffffff0d}.follow-requests .header .back-btn:hover{background:#ff7a5914;border-color:#ff7a593d}.follow-requests .header .count{color:var(--color-primary-light);background:#ff7a591a;border:1px solid #ff7a592e;font-weight:700}.follow-requests .error-banner,.follow-requests .success-banner,.follow-requests .empty-state,.follow-requests .request-card,.follow-requests .loading,.follow-requests .not-auth{background:var(--glass-bg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:1.2rem}.follow-requests .error-banner,.follow-requests .success-banner{margin-bottom:1rem;padding:.9rem 1rem}.follow-requests .error-banner{color:#ffe3ea;border-color:#fb718552}.follow-requests .success-banner{color:#d9fff0;border-color:#3ddc9747}.follow-requests .loading,.follow-requests .not-auth,.follow-requests .empty-state{text-align:center;padding:2rem 1.5rem}.follow-requests .loading p,.follow-requests .not-auth,.follow-requests .empty-state p{color:var(--color-text-secondary)}.follow-requests .empty-icon{margin-bottom:.75rem;font-size:2rem}.follow-requests .empty-state h2{margin-bottom:.55rem}.follow-requests .empty-tip{margin-top:1rem;font-size:.82rem}.follow-requests .btn-back-home{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;margin-top:1.25rem;padding:.85rem 1.2rem;font-weight:700}.follow-requests .requests-list{flex-direction:column;gap:.8rem;display:flex}.follow-requests .request-card{justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.follow-requests .request-info{flex:1;align-items:center;gap:.85rem;min-width:0;display:flex}.follow-requests .avatar img{object-fit:cover;border-radius:1rem;width:3rem;height:3rem}.follow-requests .details{min-width:0}.follow-requests .details .username{word-break:break-word;font-weight:700}.follow-requests .details .timestamp{color:var(--color-text-secondary);margin-top:.2rem;font-size:.82rem}.follow-requests .actions{flex-wrap:wrap;gap:.6rem;display:flex}.follow-requests .actions button{border-radius:var(--radius-full);min-height:2.65rem;padding:.75rem 1rem;font-size:.85rem;font-weight:700}.follow-requests .actions button:disabled{opacity:.6}.follow-requests .btn-accept{color:#dbfff1;background:#3ddc9724;border:1px solid #3ddc9738}.follow-requests .btn-reject{color:#ffe1e8;background:#fb718524;border:1px solid #fb718538}@media (width<=767px){.follow-requests{padding:1.25rem 1rem 2rem}.follow-requests .request-card{flex-direction:column;align-items:stretch}.follow-requests .actions{width:100%}.follow-requests .actions button{flex:1 1 0;justify-content:center}}.search-page{color:#fff;max-width:935px;min-height:100vh;margin:0 auto;padding:24px 20px}.search-page .search-header{z-index:100;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#000c;margin-bottom:24px;padding:12px 0;position:sticky;top:0}.search-page .search-header .search-input-wrapper{align-items:center;display:flex;position:relative}.search-page .search-header .search-input-wrapper .search-icon{color:#ffffff80;width:18px;height:18px;position:absolute;left:16px}.search-page .search-header .search-input-wrapper .search-input{color:#fff;background:#262626;border:1px solid #363636;border-radius:12px;width:100%;padding:12px 16px 12px 48px;font-size:16px;transition:all .2s}.search-page .search-header .search-input-wrapper .search-input:focus{background:#333;border-color:#555;outline:none;box-shadow:0 0 0 2px #ffffff1a}.search-page .search-header .search-input-wrapper .search-loader{border:2px solid #ffffff1a;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite spin;position:absolute;right:16px}.search-page .search-tabs{border-bottom:1px solid #262626;margin-bottom:24px;display:flex}.search-page .search-tabs .tab-btn{color:#ffffff80;cursor:pointer;background:0 0;border:none;flex:1;padding:16px;font-size:14px;font-weight:600;transition:all .2s;position:relative}.search-page .search-tabs .tab-btn:hover,.search-page .search-tabs .tab-btn.active{color:#fff}.search-page .search-tabs .tab-btn.active:after{content:"";background:#fff;width:100%;height:2px;position:absolute;bottom:0;left:0}.search-page .search-results .search-error{color:#ed4956;text-align:center;background:#ed49561a;border-radius:8px;margin-bottom:16px;padding:16px}.search-page .search-results .no-results{text-align:center;color:#ffffff80;margin-top:48px;font-size:16px}.search-page .search-results .users-list{flex-direction:column;gap:16px;display:flex}.search-page .search-results .users-list .user-card{justify-content:space-between;align-items:center;padding:8px 0;display:flex}.search-page .search-results .users-list .user-card .user-info{cursor:pointer;flex:1;align-items:center;gap:12px;display:flex}.search-page .search-results .users-list .user-card .user-info .user-avatar{object-fit:cover;border:2px solid #262626;border-radius:50%;width:56px;height:56px}.search-page .search-results .users-list .user-card .user-info .user-details .username{color:#fff;font-size:14px;font-weight:600}.search-page .search-results .users-list .user-card .user-info .user-details .bio{color:#ffffff80;white-space:nowrap;text-overflow:ellipsis;max-width:200px;font-size:14px;overflow:hidden}.search-page .search-results .users-list .user-card .follow-btn{cursor:pointer;color:#fff;background:#0095f6;border:none;border-radius:8px;min-width:100px;padding:8px 16px;font-size:14px;font-weight:600;transition:all .2s}.search-page .search-results .users-list .user-card .follow-btn:hover{background:#1877f2}.search-page .search-results .users-list .user-card .follow-btn.following{color:#fff;background:#363636}.search-page .search-results .users-list .user-card .follow-btn.following:hover{background:#262626}.search-page .search-results .users-list .user-card .follow-btn.pending{color:#ffffff80;cursor:default;background:#262626}.search-page .search-results .users-list .user-card .follow-btn:disabled{opacity:.7;cursor:not-allowed}.search-page .search-results .posts-grid{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.search-page .search-results .posts-grid .grid-item{aspect-ratio:1;cursor:pointer;position:relative;overflow:hidden}.search-page .search-results .posts-grid .grid-item .post-thumb{object-fit:cover;width:100%;height:100%;transition:transform .3s}.search-page .search-results .posts-grid .grid-item .overlay{opacity:0;background:#0006;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;inset:0}.search-page .search-results .posts-grid .grid-item .overlay .stat{color:#fff;align-items:center;gap:8px;font-weight:600;display:flex}.search-page .search-results .posts-grid .grid-item .overlay .stat svg{width:20px;height:20px}.search-page .search-results .posts-grid .grid-item:hover .post-thumb{transform:scale(1.05)}.search-page .search-results .posts-grid .grid-item:hover .overlay{opacity:1}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=768px){.search-page{padding-bottom:80px}.search-page .users-list .user-card .user-info .user-details .bio{max-width:150px}}button{cursor:pointer;transition:var(--transition-base);border:none;font-family:inherit}button:focus-visible{outline:2px dashed var(--color-primary);outline-offset:2px}input,textarea,select{font-family:inherit;font-size:inherit}input:focus,textarea:focus,select:focus{outline:none}img{max-width:100%;height:auto;display:block}ul,ol{list-style:none}.container{width:100%;max-width:1280px;padding:0 var(--spacing-md);margin:0 auto}.flex-center{justify-content:center;align-items:center;display:flex}.blur-backdrop{-webkit-backdrop-filter:blur(18px)}.glass-effect{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffff0f;border:1px solid #ffffff1f}.smooth-shadow{box-shadow:0 12px 32px #0000002e}.spinner{border:2px solid #fff3;border-top-color:var(--color-primary);border-radius:50%;width:1rem;height:1rem;animation:.8s linear infinite spin;display:inline-block}.button{border-radius:var(--radius-lg);background:linear-gradient(135deg, var(--color-primary), var(--color-accent));min-height:2.75rem;color:var(--color-text-primary);font-size:var(--font-base);letter-spacing:.02em;cursor:pointer;transition:var(--transition-base);-webkit-user-select:none;user-select:none;border:none;justify-content:center;align-items:center;padding:.875rem 1.5rem;font-weight:700;display:inline-flex}.button:hover{transform:translateY(-2px);box-shadow:0 12px 28px #ff5f4a3d}.button:active{transform:translateY(0)}.button:disabled{opacity:.5;cursor:not-allowed}.button.secondary{border:1.5px solid var(--color-border);color:var(--color-text-primary);background:0 0}.button.secondary:hover{border-color:var(--color-primary);background:#ff5f4a14}.button.small{min-height:2rem;font-size:var(--font-sm);padding:.5rem 1rem}.button.large{min-height:3.5rem;font-size:var(--font-lg);padding:1rem 2rem}.button.icon-only{border-radius:var(--radius-full);width:2.5rem;height:2.5rem;padding:0}.button.rounded{border-radius:var(--radius-full)}:root{--color-primary:#ff7a59;--color-primary-light:#ff9f86;--color-primary-dark:#e8623f;--color-accent:#ffb690;--color-bg-main:#060913;--color-bg-secondary:#0b1220;--color-bg-tertiary:#121b2d;--color-surface:#131d31;--color-surface-strong:#1a2740;--color-bg-glass:#0b1220c7;--color-text-primary:#f8fafc;--color-text-secondary:#b5c0d4;--color-text-tertiary:#73809a;--color-border:#94a3b82e;--color-border-light:#94a3b81a;--color-success:#3ddc97;--color-warning:#f8c95b;--color-error:#fb7185;--color-like:#ff7b92;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--font-family-base:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family-mono:"SFMono-Regular", "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;--font-xs:.75rem;--font-sm:.875rem;--font-base:1rem;--font-lg:1.125rem;--font-xl:1.25rem;--font-2xl:1.5rem;--font-3xl:1.875rem;--font-4xl:2.5rem;--line-height-tight:1.15;--line-height-normal:1.55;--line-height-relaxed:1.7;--radius-sm:.5rem;--radius-md:.625rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.25rem;--radius-full:9999px;--shadow-sm:0 8px 18px #0206172e;--shadow-md:0 16px 40px #02061747;--shadow-lg:0 24px 64px #02061761;--shadow-xl:0 40px 100px #02061773;--transition-fast:.18s ease;--transition-base:.24s ease;--transition-slow:.32s ease;--page-max-width:1120px;--content-max-width:760px;--nav-rail-width:7.5rem;--nav-mobile-height:5.25rem;--primary:var(--color-primary);--accent:var(--color-accent);--text-primary:var(--color-text-primary);--text-secondary:var(--color-text-secondary);--text-tertiary:var(--color-text-tertiary);--glass-bg:#0b1220b8;--glass-border:1px solid var(--color-border);--glass-effect:blur(18px);--bg-gradient:radial-gradient(circle at top left, #ff7a5924, transparent 26rem), radial-gradient(circle at top right, #3b82f624, transparent 24rem), linear-gradient(180deg, #070b15 0%, #0b1220 48%, #09111f 100%)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;min-height:100%}html{background-color:var(--color-bg-main);color:var(--color-text-primary);font-family:var(--font-family-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{background:var(--bg-gradient);min-height:100vh;color:var(--color-text-primary);overflow-x:hidden}main{width:100%}h1,h2,h3,h4,h5,h6{line-height:var(--line-height-tight);letter-spacing:-.03em;font-weight:700}h1{font-size:var(--font-4xl)}h2{font-size:var(--font-3xl)}h3{font-size:var(--font-2xl)}p{line-height:var(--line-height-normal)}a{color:var(--color-primary);transition:var(--transition-base);text-decoration:none}a:hover{color:var(--color-primary-light)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0b1220c7}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#94a3b84d}::-webkit-scrollbar-thumb:hover{background:#94a3b873}::selection{color:var(--color-text-primary);background-color:#ff7a5947}.app-shell-page{padding-inline-start:calc(var(--nav-rail-width) + 2rem)}.app-loading-shell{min-height:100vh;padding:var(--spacing-lg);justify-content:center;align-items:center;display:flex}.app-loading-card{align-items:center;gap:var(--spacing-md);width:min(100%,28rem);padding:var(--spacing-2xl) var(--spacing-xl);text-align:center;border-radius:var(--radius-2xl);background:var(--glass-bg);border:1px solid var(--color-border);box-shadow:var(--shadow-xl);flex-direction:column;display:flex}.app-loading-card .spinner{width:2.25rem;height:2.25rem}.app-loading-card h1{font-size:clamp(1.8rem,5vw,2.3rem)}.app-loading-card p{color:var(--color-text-secondary)}@media (width<=767px){.app-shell-page{padding-inline-start:0;padding-bottom:calc(var(--nav-mobile-height) + env(safe-area-inset-bottom) + var(--spacing-md))}}
