.navbar{background-color:#333;padding:10px;display:flex;justify-content:space-between;align-items:center}.navbar a{color:#fff;text-decoration:none;margin:0 15px;font-size:18px}.navbar a:hover{text-decoration:underline}.active{font-weight:700;text-decoration:underline}.nav-left,.nav-right{flex:1;display:flex;align-items:center}.nav-right{justify-content:flex-end}.nav-title{flex:2;text-align:center}.nav-title h1{color:#fff;margin:0;font-size:24px;font-weight:700}.logout-btn{background-color:transparent;color:#fff;border:none;font-size:18px;cursor:pointer;margin:0 15px}.logout-btn:hover{text-decoration:underline}.footer{background-color:#2c3e50;color:#fff;padding:20px 0;margin-top:40px;width:100%}.footer-content{max-width:1200px;margin:0 auto;padding:0 20px;text-align:center}.footer p{margin:0;font-size:16px}.posts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.post-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 5px #0000001a;padding:20px;transition:transform .3s,box-shadow .3s;position:relative;margin-bottom:16px;cursor:pointer}.post-card:hover{transform:translateY(-5px);box-shadow:0 5px 15px #0000001a;background-color:#f8f9fa}.post-card h2{margin-bottom:10px;font-size:1.5rem;color:#2c3e50;transition:color .2s}.post-meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;margin-top:15px;padding-bottom:15px;font-size:.9rem;color:#7f8c8d;gap:8px;text-align:left}.post-date{font-style:italic;color:#95a5a6;width:100%;margin-top:5px}@media (min-width: 768px){.post-date{width:auto;margin-top:0}}.read-more{font-weight:700;color:#3498db}.read-more:hover{text-decoration:underline}.no-posts{text-align:center;padding:50px 0}.create-post-btn{display:inline-block;margin-top:15px;background-color:#3498db;color:#fff;padding:10px 20px;border-radius:4px;transition:background-color .3s}.create-post-btn:hover{background-color:#2980b9;text-decoration:none}.edit-card-btn{position:absolute;top:10px;right:10px;background-color:#f39c12;color:#fff;border-radius:50%;width:30px;height:30px;display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:16px;transition:background-color .3s,transform .2s}.edit-card-btn:hover{background-color:#e67e22;transform:scale(1.1);text-decoration:none}.post-detail-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:30px;text-align:left}.post-detail-container h1{margin-bottom:10px;text-align:left}.post-content{margin:20px 0;line-height:1.8;text-align:left}.post-content p{text-align:left}.post-actions{display:flex;gap:10px;margin-top:30px}.vote-counts{display:flex;gap:15px}.vote-stats{display:flex;gap:10px}.upvotes-count{color:#27ae60;font-weight:700}.downvotes-count{color:#e74c3c;font-weight:700}.vote-buttons{display:flex;gap:10px}.vote-btn{padding:8px 15px;border:none;border-radius:4px;cursor:pointer;font-size:16px;display:flex;align-items:center;gap:5px;transition:all .2s ease}.vote-btn:disabled{opacity:.7;cursor:not-allowed}.upvote-btn{background-color:#eafaf1;color:#27ae60;border:1px solid #27ae60}.upvote-btn:hover{background-color:#d5f5e3}.upvote-btn.active{background-color:#27ae60;color:#fff}.upvotes{color:#27ae60}.downvote-btn{background-color:#fef5f5;color:#e74c3c;border:1px solid #e74c3c}.downvote-btn:hover{background-color:#fdecec}.downvote-btn.active{background-color:#e74c3c;color:#fff}.downvotes{color:#e74c3c}.edit-btn{background-color:#f39c12;color:#fff;padding:10px 20px;border-radius:4px;display:inline-block}.edit-btn:hover{background-color:#e67e22;text-decoration:none}.delete-btn{background-color:#e74c3c}.delete-btn:hover{background-color:#c0392b}.create-post-container{max-width:800px;margin:0 auto;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:30px}.form-actions{display:flex;gap:15px;margin-top:20px}.update-btn{background-color:#3498db;color:#fff;padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-size:16px;flex:1}.update-btn:hover{background-color:#2980b9}.update-btn:disabled{background-color:#95a5a6;cursor:not-allowed}.form-actions .delete-btn{background-color:#e74c3c;color:#fff;padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-size:16px;flex:1}.form-actions .delete-btn:hover{background-color:#c0392b}.form-actions .delete-btn:disabled{background-color:#95a5a6;cursor:not-allowed}.post-actions{display:flex;justify-content:space-between;margin-top:30px;flex-wrap:wrap;gap:15px}.author-actions{display:flex;gap:10px}.home-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.home-header h1{margin-bottom:0}.controls-container{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.search-container{position:relative;display:flex;align-items:center}.search-input{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:15px;min-width:200px;transition:border-color .3s,box-shadow .3s}.search-input:hover{border-color:#3498db}.search-input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 2px #3498db33}.clear-search-btn{position:absolute;right:8px;background:none;border:none;font-size:18px;cursor:pointer;color:#7f8c8d;display:flex;align-items:center;justify-content:center;padding:0;width:20px;height:20px}.clear-search-btn:hover{color:#e74c3c}.sort-container{display:flex;align-items:center;gap:10px}.sort-container label{font-weight:500;color:#2c3e50}.sort-select{padding:8px 12px;border:1px solid #ddd;border-radius:4px;background-color:#fff;font-size:15px;min-width:180px;cursor:pointer;transition:border-color .3s,box-shadow .3s}.sort-select:hover{border-color:#3498db}.sort-select:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 2px #3498db33}@media (max-width: 768px){.home-header{flex-direction:column;align-items:flex-start}.controls-container{width:100%;flex-direction:column;align-items:stretch}.search-container,.search-input,.sort-container{width:100%}.sort-select{flex-grow:1}}.stats-container{display:flex;gap:15px;align-items:center}.comment-stats{display:flex;align-items:center}.comment-count{color:#3498db;font-weight:700;display:flex;align-items:center;gap:2px}.sort-select{min-width:200px}.auth-container{max-width:500px;margin:50px auto;padding:30px;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a}.auth-container h2{text-align:center;margin-bottom:25px;color:#2c3e50}.auth-container form{margin-bottom:20px}.auth-container button{width:100%;margin-top:10px}.auth-container p{text-align:center;margin-top:20px}.comments-section{margin-top:30px;border-top:1px solid #ddd;padding-top:30px}.comments-title{margin-bottom:20px;font-size:1.5rem;color:#2c3e50}.comment-form{margin-bottom:30px}.comment-form textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;resize:vertical;transition:border-color .3s;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.comment-form textarea:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 2px #3498db33}.comment-form button{margin-top:10px;background-color:#3498db;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:16px}.comment-form button:hover{background-color:#2980b9}.comment-form button:disabled{background-color:#95a5a6;cursor:not-allowed}.login-prompt{margin-bottom:20px;padding:15px;background-color:#f8f9fa;border-radius:4px;text-align:center}.login-prompt a{color:#3498db;font-weight:700}.comments-list{display:flex;flex-direction:column;gap:15px}.no-comments{text-align:center;color:#7f8c8d;font-style:italic;padding:20px 0}.comment-card{background-color:#f8f9fa;border-radius:8px;padding:15px;position:relative}.comment-replies{margin-top:15px;margin-left:20px;display:flex;flex-direction:column;gap:15px;border-left:2px solid #e0e0e0;padding-left:15px}.reply-level-1{background-color:#f5f7fa}.reply-level-2{background-color:#f0f3f8}.reply-level-3{background-color:#ebeef3}.reply-level-4{background-color:#e6ebf0}.reply-level-5{background-color:#e1e7ec}.comment-header{display:flex;justify-content:space-between;margin-bottom:10px;font-size:.9rem;flex-wrap:wrap;gap:10px;align-items:center}.comment-author{font-weight:700;color:#2c3e50}.comment-date{color:#7f8c8d}.comment-content{line-height:1.6;white-space:pre-wrap;margin-bottom:30px}.comment-actions{position:absolute;bottom:10px;right:10px;display:flex;gap:10px}.reply-btn{background-color:transparent;color:#3498db;border:none;cursor:pointer;font-size:.9rem;padding:5px}.reply-btn:hover{text-decoration:underline}.edit-comment-btn{background-color:transparent;color:#3498db;border:none;cursor:pointer;font-size:.9rem;padding:5px}.edit-comment-btn:hover{text-decoration:underline}.delete-comment-btn{background-color:transparent;color:#e74c3c;border:none;cursor:pointer;font-size:.9rem;padding:5px}.delete-comment-btn:hover{text-decoration:underline}.edit-comment-form{margin-bottom:10px}.edit-comment-form textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;resize:vertical;margin-bottom:10px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.edit-comment-form textarea:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 2px #3498db33}.edit-actions{display:flex;justify-content:flex-end;gap:10px}.save-edit-btn{background-color:#27ae60;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:14px}.save-edit-btn:hover{background-color:#219653}.cancel-edit-btn{background-color:#95a5a6;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:14px}.cancel-edit-btn:hover{background-color:#7f8c8d}.reply-form{margin-top:15px;margin-bottom:10px;border-top:1px solid #e0e0e0;padding-top:10px;width:100%;clear:both;position:relative}.reply-form textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;resize:vertical;margin-bottom:10px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.reply-form textarea:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 2px #3498db33}.reply-actions{display:flex;justify-content:flex-end;gap:10px;position:relative;z-index:2}.submit-reply-btn{background-color:#3498db;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:14px}.submit-reply-btn:hover{background-color:#2980b9}.submit-reply-btn:disabled{background-color:#95a5a6;cursor:not-allowed}.cancel-reply-btn{background-color:#95a5a6;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:14px}.cancel-reply-btn:hover{background-color:#7f8c8d}.comments-loading{text-align:center;padding:20px;color:#7f8c8d}.comments-sort{display:flex;align-items:center;gap:8px}.comments-sort label{font-weight:500;color:#2c3e50;margin-bottom:12px}.comment-sort-select{padding:6px 10px;margin-bottom:12px;border:1px solid #ddd;border-radius:4px;background-color:#fff;font-size:14px;cursor:pointer;transition:border-color .3s,box-shadow .3s}.comment-sort-select:hover{border-color:#3498db}.comment-sort-select:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 2px #3498db33}@media (max-width: 600px){.comments-header{flex-direction:column;align-items:flex-start;gap:10px}.comments-sort{width:100%}.comment-sort-select{flex-grow:1}}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;color:#333;background-color:#f5f5f5}.app{display:flex;flex-direction:column;min-height:100vh}.content{max-width:1200px;margin:0 auto;padding:20px;width:100%}h1{margin-bottom:20px;color:#2c3e50}h2{margin-bottom:15px;color:#2c3e50}a{text-decoration:none;color:#3498db}a:hover{text-decoration:underline}button{background-color:#3498db;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:16px;transition:background-color .3s}button:hover{background-color:#2980b9}button:disabled{background-color:#95a5a6;cursor:not-allowed}.error-message{background-color:#fdd;color:#d63031;padding:10px;border-radius:4px;margin-bottom:20px}.success-message{background-color:#dfd;color:#00b894;padding:10px;border-radius:4px;margin-bottom:20px}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:500}.form-group input,.form-group textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:16px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.form-group textarea{resize:vertical}
