*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0a0a0a;--surface: #111111;--surface2: #1a1a1a;--border: #2a2a2a;--text: #f2ede8;--text-muted: #888888;--accent: #ff4d4d;--accent-dim: #e03e3e;--accent-glow: rgba(255, 77, 77, .2);--danger: #ef4444;--success: #22c55e;--radius: 12px;--radius-sm: 8px;--nav-height: 64px;--sidebar-width: 220px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:16px;line-height:1.5}html,body{height:100%;overflow:hidden;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;overscroll-behavior:none}#root{height:100%;overflow:hidden;display:flex;flex-direction:column}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;background:none;font:inherit;color:inherit}input,textarea{font:inherit;color:var(--text);background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;width:100%;outline:none}input:focus,textarea:focus{border-color:var(--accent)}input[type=range].vol-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:4px;border-radius:2px;border:none;padding:0;background:none;outline:none;cursor:pointer;width:80px}input[type=range].vol-slider::-webkit-slider-thumb{-webkit-appearance:none;width:13px;height:13px;border-radius:50%;background:var(--accent);box-shadow:0 1px 6px #ff6b6b80;cursor:pointer;transition:transform .1s}input[type=range].vol-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}input[type=range].vol-slider::-moz-range-thumb{width:13px;height:13px;border-radius:50%;background:var(--accent);border:none;box-shadow:0 1px 6px #ff6b6b80;cursor:pointer}input[type=range].vol-slider::-moz-range-track{height:4px;border-radius:2px;background:transparent}img{display:block;max-width:100%}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.app-layout{display:flex;height:100%;width:100%;max-width:1080px;margin:0 auto;position:relative;overflow:hidden}.sidebar{width:var(--sidebar-width);height:100%;display:flex;flex-direction:column;padding:24px 12px;border-right:1px solid var(--border);position:sticky;top:0;flex-shrink:0;gap:4px}.sidebar-logo{font-size:22px;font-weight:800;letter-spacing:-.03em;color:#ff4d4d;padding:8px 12px 20px}.sidebar-nav-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-sm);font-size:15px;font-weight:500;color:var(--text-muted);transition:all .15s;width:100%;text-align:left}.sidebar-nav-item:hover{background:var(--surface);color:var(--text)}.sidebar-nav-item.active{color:var(--accent);background:var(--surface)}.sidebar-post-btn{margin-top:12px;padding:11px;border-radius:var(--radius);background:var(--accent);color:#fff;font-weight:700;font-size:15px;text-align:center;transition:background .15s}.sidebar-post-btn:hover{background:var(--accent-dim)}.sidebar-spacer{flex:1}.sidebar-user{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);margin-top:8px}.sidebar-user-info{flex:1;min-width:0}.sidebar-user-name{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-handle{font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.main-content{flex:1;min-width:0;height:100%;overflow-y:auto;border-right:1px solid var(--border)}.right-panel{width:300px;flex-shrink:0;padding:24px 16px;display:flex;flex-direction:column;gap:16px}.bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;height:var(--nav-height);background:#0a0a0af2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border);z-index:100}@media (max-width: 768px){.sidebar,.right-panel{display:none}.bottom-nav{display:flex}.main-content{padding-bottom:var(--nav-height)}.app-layout{max-width:100%}}@media (max-width: 1024px){.right-panel{display:none}}@keyframes pulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .2s ease}
