.ideas-container{max-width:1200px;color:var(--color-text-primary);margin:100px auto 40px;padding:0 20px}.ideas-header{justify-content:space-between;align-items:center;margin-bottom:30px;display:flex}.ideas-header h1{margin:0;font-family:Playfair Display,serif;font-size:2.5rem}.forum-layout{grid-template-columns:250px 1fr;gap:40px;display:grid}.sidebar-categories{background:var(--color-bg-secondary);border-radius:12px;height:fit-content;padding:20px;box-shadow:0 4px 20px #0000000d}.category-item{cursor:pointer;color:var(--color-text-secondary);border-radius:8px;align-items:center;margin-bottom:8px;padding:12px;font-weight:500;text-decoration:none;transition:background .2s;display:flex}.category-item:hover,.category-item.active{background:var(--color-bg);color:var(--color-primary)}.category-name{white-space:nowrap;text-overflow:ellipsis;flex:1;margin-right:10px;overflow:hidden}.admin-cat-actions{opacity:.4;align-items:center;gap:8px;transition:opacity .2s;display:flex}.category-item:hover .admin-cat-actions{opacity:1}.reorder-btn{cursor:pointer;color:#888;background:0 0;border:none;padding:2px 4px;font-size:1rem;transition:color .2s,transform .1s}.reorder-btn:hover{color:var(--color-text-primary);transform:translateY(-1px)}.delete-cat-btn{cursor:pointer;color:#ff4d4d;z-index:5;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:1.3rem;font-weight:700;line-height:1;transition:transform .2s,color .2s;position:relative}.delete-cat-btn:hover{background:#ff4d4d1a;transform:scale(1.2)}.ideas-list{flex-direction:column;gap:15px;display:flex}.idea-card{background:var(--color-bg-secondary);color:inherit;border:1px solid #c5a87c0d;border-radius:12px;justify-content:space-between;align-items:center;padding:20px;text-decoration:none;transition:transform .2s;display:flex;box-shadow:0 4px 20px #0000000d}.idea-card:hover{transform:translateY(-2px);box-shadow:0 6px 25px #00000014}.idea-main{flex:1}.idea-title{color:var(--color-text-primary);margin-bottom:8px;font-size:1.2rem;font-weight:600}.idea-meta{color:var(--color-text-secondary);align-items:center;gap:15px;font-size:.85rem;display:flex}.idea-description-preview{color:var(--color-text-secondary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin-bottom:12px;font-size:.95rem;line-height:1.5;display:-webkit-box;overflow:hidden}.idea-category-tag{color:#fff;border-radius:4px;padding:2px 10px;font-size:.8rem;font-weight:600}.idea-has-image-badge{color:#4f46e5;background:#eef2ff;border:1px solid #c7d2fe;border-radius:4px;align-items:center;gap:4px;padding:2px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.idea-actions{align-items:center;gap:20px;display:flex}.vote-badge{background:var(--color-bg);border:1px solid #c5a87c1a;border-radius:8px;flex-direction:column;align-items:center;min-width:50px;padding:10px 15px;display:flex}.vote-badge .count{color:var(--color-text-primary);font-weight:700}.vote-badge .label{text-transform:uppercase;color:var(--color-text-secondary);font-size:.7rem}.btn-new-topic{background:var(--color-text-primary);color:var(--color-bg);cursor:pointer;border:none;border-radius:8px;padding:12px 24px;font-weight:600;transition:all .2s}.btn-new-topic:hover{background:#333}.vote-badge.voted{animation:.6s cubic-bezier(.175,.885,.32,1.275) vote-pulse;box-shadow:0 0 15px #ffd70080;color:#000!important;background:gold!important}@keyframes vote-pulse{0%{transform:scale(1)}30%{transform:scale(1.3)}to{transform:scale(1)}}@media (max-width:768px){.ideas-container{margin-top:60px;padding:0 15px}.ideas-header{flex-direction:column;align-items:flex-start;gap:20px}.ideas-header h1{font-size:1.8rem;line-height:1.2}.btn-new-topic{text-align:center;width:100%;padding:14px}.forum-layout{grid-template-columns:1fr;gap:20px}.sidebar-categories{background:var(--color-bg-secondary);-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:10px;margin:0 -15px 20px;padding:10px;display:flex;overflow-x:auto}.sidebar-categories::-webkit-scrollbar{display:none}.category-item{background:var(--color-bg);border:1px solid #c5a87c1a;flex:none;margin:0;padding:8px 16px;font-size:.9rem}.category-item.active{background:var(--color-text-primary);color:var(--color-bg);border-color:var(--color-text-primary)}.category-color{display:none}.idea-card{flex-direction:column;align-items:flex-start;gap:15px;padding:20px 15px;position:relative}.idea-main{padding-right:30px}.btn-delete{opacity:.7;z-index:10;position:absolute;top:15px;right:15px}.idea-actions{border-top:1px solid #f0f0f0;justify-content:flex-start;width:100%;padding-top:12px}.vote-badge{min-width:unset;flex-direction:row;gap:8px;padding:6px 12px;font-size:.9rem}.vote-badge .label{margin:0;font-size:.75rem}.idea-meta{flex-wrap:wrap;gap:8px 12px;font-size:.8rem}}.file-attachment-card{background:var(--color-bg);cursor:pointer;border:1px solid #c5a87c1a;border-radius:8px;align-items:center;gap:15px;max-width:100%;padding:10px;transition:all .2s;display:inline-flex}.file-attachment-card:hover{background:var(--color-bg-secondary);border-color:var(--color-primary);transform:translateY(-1px)}.file-attachment-preview{background:var(--color-bg-secondary);border:1px solid #c5a87c1a;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:60px;height:60px;display:flex;overflow:hidden}.file-attachment-preview img{object-fit:cover;width:100%;height:100%}.file-attachment-info{flex-direction:column;gap:2px;display:flex}.file-name{color:var(--color-text-primary);font-size:.95rem;font-weight:500}.file-action{color:var(--color-primary);font-size:.8rem}.lightbox-overlay{z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000000d9;justify-content:center;align-items:center;width:100%;height:100%;padding:20px;animation:.2s ease-out fade-in;display:flex;position:fixed;top:0;left:0}.lightbox-content{max-width:90%;max-height:90vh;animation:.3s cubic-bezier(.175,.885,.32,1.275) zoom-in;position:relative}.lightbox-image{border-radius:4px;max-width:100%;max-height:90vh;box-shadow:0 5px 30px #0000004d}.lightbox-close{color:#fff;cursor:pointer;opacity:.8;background:0 0;border:none;padding:5px;font-size:2rem;line-height:1;transition:opacity .2s;position:absolute;top:-40px;right:0}.lightbox-close:hover{opacity:1}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes zoom-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}
