@charset "UTF-8";:root{--primary: #e10600;--primary-strong: #b00020;--primary-rgb: 225, 6, 0;--accent: #ff4d4d;--bg: #fafafa;--surface: #ffffff;--muted: #444444;--glass: rgba(255, 255, 255, .78);--radius: 14px;--shadow: 0 8px 30px rgba(225, 6, 0, .12);--transition: .24s cubic-bezier(.2, .8, .2, 1);--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--fill-subtle: #f1f5f9;--fill-hover: #fff5f5;--border: #e2e8f0;--border-subtle: #f1f5f9;--avatar-bg: #fee2e2;--gradient-page: radial-gradient(circle at top left, #fff1f2 0%, #f8fafc 50%, #f1f5f9 100%)}.dark-theme{--primary: #f87171;--primary-strong: #c62828;--primary-rgb: 248, 113, 113;--accent: #ff8080;--bg: #1e293b;--surface: #334155;--muted: #e2e8f0;--glass: rgba(0, 0, 0, .7);--shadow: 0 8px 30px rgba(0, 0, 0, .5);--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--fill-subtle: #1e293b;--fill-hover: rgba(var(--primary-rgb), .12);--border: #334155;--border-subtle: #2a3a4d;--avatar-bg: rgba(var(--primary-rgb), .2);--gradient-page: radial-gradient(circle at top left, #243244 0%, #1b2433 55%, #161d29 100%)}*,*:before,*:after{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{font-family:Inter,Segoe UI,sans-serif;background-color:var(--bg);color:var(--muted);transition:background var(--transition),color var(--transition);user-select:none;-webkit-user-select:none;cursor:default}a,button,[role=button],summary,label[for],.clickable{cursor:pointer}input,textarea,select,[contenteditable=true],.bubble,.post-text,.comment-text,.bio-text,.notifications-page .body{user-select:text;-webkit-user-select:text;cursor:auto}input,textarea{cursor:text}input::-ms-reveal,input::-ms-clear{display:none}.material-icons-outlined{font-size:24px;vertical-align:middle;transition:transform .25s ease,color .25s ease}.material-icons-outlined:hover{color:var(--accent)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background-color:rgba(var(--primary-rgb),.2);border-radius:10px}::-webkit-scrollbar-thumb:hover{background-color:rgba(var(--primary-rgb),.4)}::-webkit-scrollbar-track{background:transparent}*{scrollbar-width:thin;scrollbar-color:rgba(var(--primary-rgb),.2) transparent}.layout{display:flex;height:100vh;background:var(--bg);overflow:hidden;position:relative}.sidebar{width:270px;min-width:270px;background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid rgba(255,255,255,.2);transition:width var(--transition),min-width var(--transition),left var(--transition);position:fixed;left:0;top:0;bottom:0;overflow-y:auto;overflow-x:hidden;padding:18px 14px;z-index:1000;-webkit-user-select:none;user-select:none}.sidebar-header{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;min-height:44px;margin-bottom:18px;user-select:none;-webkit-user-select:none}.toggle-btn{flex-shrink:0;width:44px;height:44px;display:grid;place-items:center;border:none;border-radius:12px;background:transparent;color:var(--primary);cursor:pointer;user-select:none;-webkit-user-select:none;transition:background var(--transition),color var(--transition),width var(--transition),height var(--transition)}.toggle-btn:hover{background:rgba(var(--primary-rgb),.08)}.toggle-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.toggle-btn>span{user-select:none;-webkit-user-select:none}.logo{display:grid;place-items:center;overflow:hidden;user-select:none;-webkit-user-select:none}.logo .logo-full,.logo .logo-small{grid-area:1/1;transition:opacity var(--transition);user-select:none;-webkit-user-select:none;-webkit-user-drag:none}.logo .logo-full{height:42px;width:auto;max-width:240px;border-radius:8px;opacity:1;transition:opacity var(--transition),max-width var(--transition)}.logo .logo-small{width:40px;height:40px;object-fit:contain;opacity:0}.nav-links{list-style:none;margin:14px 0;padding:0;display:flex;flex-direction:column;gap:6px}.nav-links a{display:flex;align-items:center;gap:12px;color:var(--muted);text-decoration:none;padding:7px 10px;border-radius:14px;white-space:nowrap;transition:background var(--transition),color var(--transition)}.nav-links a>i,.nav-links a>.icon-badge-container{position:relative;flex-shrink:0;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#0000000d;color:var(--muted);font-size:20px;transition:background var(--transition),color var(--transition)}.nav-links a>.icon-badge-container>i{font-size:20px;background:transparent;color:inherit}.nav-links a .badge{position:absolute;top:-3px;right:-3px;min-width:17px;height:17px;padding:0 4px;display:grid;place-items:center;box-sizing:border-box;border-radius:999px;border:2px solid var(--surface);background:var(--primary);color:#fff;font-size:10px;font-weight:700;line-height:1}.nav-links a .label{overflow:hidden;white-space:nowrap;max-width:160px;opacity:1;transition:max-width var(--transition),opacity var(--transition)}.nav-links a:hover{color:var(--primary)}.nav-links a:hover>i,.nav-links a:hover>.icon-badge-container{background:rgba(var(--primary-rgb),.12);color:var(--primary)}.nav-links a.active{background:var(--primary);color:#fff}.nav-links a.active>i,.nav-links a.active>.icon-badge-container{background:#ffffff38;color:#fff}.nav-links a.active .badge{background:#fff;color:var(--primary);border-color:var(--primary)}.nav-links a:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.auth-buttons{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:18px;border-top:1px solid rgba(0,0,0,.06)}.auth-buttons .btn-auth{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 12px;border-radius:12px;text-decoration:none;font-weight:600;font-size:.92rem;cursor:pointer;border:1px solid transparent;transition:background var(--transition),color var(--transition),border-color var(--transition),transform var(--transition),box-shadow var(--transition)}.auth-buttons .btn-auth i{font-size:20px;flex-shrink:0}.auth-buttons .btn-auth .label{overflow:hidden;white-space:nowrap;max-width:160px;opacity:1;transition:max-width var(--transition),opacity var(--transition)}.auth-buttons .btn-auth:hover{transform:translateY(-1px)}.auth-buttons .btn-auth:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.auth-buttons .btn-auth.login{color:var(--muted);background:#00000008;border-color:#00000014}.auth-buttons .btn-auth.login:hover{background:rgba(var(--primary-rgb),.06);border-color:rgba(var(--primary-rgb),.3);color:var(--primary);box-shadow:0 6px 16px #00000012}.auth-buttons .btn-auth.register,.auth-buttons .btn-auth.logout{background:var(--primary);color:#fff;box-shadow:0 4px 12px rgba(var(--primary-rgb),.22)}.auth-buttons .btn-auth.register:hover,.auth-buttons .btn-auth.logout:hover{background:var(--primary-strong);box-shadow:0 7px 18px rgba(var(--primary-rgb),.32)}.layout.collapsed .sidebar{width:88px;min-width:88px;padding:18px 8px}.layout.collapsed .sidebar-header{justify-content:center;gap:6px}.layout.collapsed .toggle-btn{width:34px;height:34px}.layout.collapsed .logo{width:30px}.layout.collapsed .logo .logo-full{opacity:0;max-width:0}.layout.collapsed .logo .logo-small{opacity:1;width:30px;height:30px}.layout.collapsed .nav-links a{justify-content:center}.layout.collapsed .nav-links a .label{max-width:0;opacity:0}.layout.collapsed .auth-buttons{flex-direction:column}.layout.collapsed .auth-buttons .btn-auth{flex:0 0 auto;width:100%;justify-content:center}.layout.collapsed .auth-buttons .btn-auth .label{max-width:0;opacity:0}@media(prefers-reduced-motion:reduce){.sidebar,.logo .logo-full,.logo .logo-small,.nav-links a,.nav-links a>i,.nav-links a>.icon-badge-container,.nav-links a .label,.btn-auth,.btn-auth .label,.content{transition:none!important}}.content{flex:1;margin-left:270px;padding:40px;display:flex;flex-direction:column;height:100vh;overflow:hidden;transition:margin .3s ease,transform .3s ease}.content .page-container{flex:1;display:flex;flex-direction:column;min-height:0;border-radius:var(--radius);background:var(--surface);overflow:hidden;position:relative}.content .page-container>*:not(router-outlet){display:flex!important;flex-direction:column!important;height:100%!important;width:100%!important;flex:1!important}.layout.collapsed .content{margin-left:88px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0;margin-bottom:20px}.topbar .topbar-heading{min-width:0}.topbar .topbar-title{font-size:1.5rem;font-weight:900;color:var(--text-primary);margin:0;letter-spacing:-.01em}.topbar .topbar-desc{margin:3px 0 0;color:var(--muted);font-size:.9rem;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar .topbar-actions{display:flex;align-items:center;gap:10px}.topbar .topbar-btn{position:relative;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--surface);border:1px solid rgba(0,0,0,.06);color:var(--muted);text-decoration:none;transition:background var(--transition),color var(--transition),border-color var(--transition),box-shadow var(--transition)}.topbar .topbar-btn i{font-size:22px}.topbar .topbar-btn:hover{color:var(--primary);border-color:rgba(var(--primary-rgb),.3);box-shadow:0 6px 16px #0000000f}.topbar .topbar-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.topbar .topbar-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.topbar .topbar-btn .badge{position:absolute;top:-2px;right:-2px;min-width:18px;height:18px;padding:0 5px;display:grid;place-items:center;box-sizing:border-box;border-radius:999px;border:2px solid var(--bg);background:var(--primary);color:#fff;font-size:10px;font-weight:700;line-height:1}.nav-mobile-only{display:none}@media(max-width:1024px){.content{padding:20px;margin-left:220px}.sidebar{width:220px;min-width:220px}.layout.collapsed .content{margin-left:88px}}@media(max-width:768px){.topbar{display:none}.nav-mobile-only{display:block}.sidebar{left:-270px;z-index:2100}.sidebar.show{left:0}.content{margin-left:0!important;margin-top:60px;display:flex;flex-direction:column;flex:1;padding:15px;min-height:0}.mobile-header{display:flex;align-items:center;justify-content:space-between;background:var(--primary);color:#fff;padding:0 16px;position:fixed;top:0;left:0;right:0;z-index:2000;height:60px;box-shadow:0 2px 8px #0000001a}.mobile-header .toggle-btn{color:#fff!important;display:flex;align-items:center;padding:8px}.sidebar-overlay{position:fixed;inset:0;background:#00000080;z-index:2050;opacity:0;visibility:hidden;transition:all .3s ease}.sidebar-overlay.show{opacity:1;visibility:visible}}@media(max-width:768px){.desktop-only{display:none}}.btn{padding:12px 20px;border-radius:var(--radius);font-weight:600;cursor:pointer;border:none;transition:transform var(--transition),box-shadow var(--transition),background-color var(--transition);display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn--primary{background-color:var(--primary);color:var(--surface)}.btn--primary:hover{background-color:var(--primary-strong);transform:translateY(-2px);box-shadow:0 10px 24px rgba(var(--primary-rgb),.18)}.card{background-color:var(--surface);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);transition:transform var(--transition),box-shadow var(--transition)}.card:hover{transform:translateY(-6px);box-shadow:0 18px 36px rgba(var(--primary-rgb),.18)}
