.board-container{width:900px;margin:40px auto}.board-container h1{margin-bottom:20px}.board-table{border-collapse:collapse;width:100%}.board-table th,.board-table td{text-align:center;border:1px solid #ddd;padding:12px}.board-table th{background:#f5f5f5}.board-table tbody tr:hover{background:#f9f9f9}.board-table td:nth-child(2){text-align:left}.board-table a{color:#333;text-decoration:none}.board-table a:hover{color:#3498db}.pagination{text-align:center;margin-top:20px}.active-page{color:#fff!important;background:#3498db!important}@media (width<=768px){.board-table{font-size:14px}.board-table th,.board-table td{padding:8px}.board-table th:first-child,.board-table td:first-child{display:none}}.search-box{gap:10px;margin-bottom:20px;display:flex}.search-box select{padding:8px}.search-box input{width:300px;padding:8px}.detail-container{width:900px;margin:40px auto}.board-box{background:#fff;border:1px solid #ddd;border-radius:8px;padding:25px;box-shadow:0 2px 8px #00000014}.board-box h1{margin-bottom:15px}.writer{color:#666;margin-bottom:15px}.content{white-space:pre-wrap;margin:20px 0;line-height:1.8}.file-box{background:#f8f9fa;border-radius:6px;margin:20px 0;padding:15px}.file-box a{color:#3498db;font-weight:700;text-decoration:none}.file-box a:hover{text-decoration:underline}.button-group{gap:10px;margin-top:20px;display:flex}.comment-write{margin:30px 0}.comment-box{clear:both;background:#fafafa;border:1px solid #ddd;border-radius:8px;margin-top:20px;padding:20px}.comment-writer{margin-bottom:10px;font-weight:700}.comment-content{white-space:pre-wrap;margin-bottom:15px;line-height:1.6}.comment-buttons{gap:10px;display:flex}.create-container{width:700px;margin:40px auto}.create-box{border:1px solid #ddd;border-radius:10px;padding:30px}.create-box h1{margin-bottom:25px}.input-group,.file-group{margin-bottom:20px}.selected-file{background:#f8f8f8;border-radius:6px;margin-top:10px;padding:10px}.update-container{width:700px;margin:40px auto}.update-box{border:1px solid #ddd;border-radius:10px;padding:30px}.update-box h1{margin-bottom:25px}.input-group,.file-group{margin-bottom:20px}.current-file{background:#f8f8f8;border-radius:6px;margin-bottom:20px;padding:15px}.login-container{justify-content:center;align-items:center;margin-top:80px;display:flex}.login-box{background:#fff;border:1px solid #ddd;border-radius:10px;width:400px;padding:30px;box-shadow:0 2px 10px #00000014}.login-box h1{text-align:center;margin-bottom:30px}@media (width<=768px){.login-container{margin-top:40px}.login-box{padding:20px}}.signup-container{justify-content:center;align-items:center;margin-top:80px;display:flex}.signup-box{background:#fff;border:1px solid #ddd;border-radius:10px;width:450px;padding:30px;box-shadow:0 2px 10px #00000014}.signup-box h1{text-align:center;margin-bottom:30px}@media (width<=768px){.signup-container{margin-top:40px}.signup-box{padding:20px}}.navbar{box-sizing:border-box;background:#2c3e50;justify-content:space-between;align-items:center;width:100%;height:70px;padding:0 40px;display:flex}.navbar-left,.navbar-right{align-items:center;gap:10px;display:flex}.welcome{color:#fff;margin-left:10px;font-weight:700}@media (width<=768px){.navbar{flex-direction:column;gap:15px;height:auto;padding:15px}.navbar-left,.navbar-right{justify-content:center;width:100%}.navbar-right{flex-wrap:wrap}.welcome{text-align:center;width:100%;margin:0}}.btn{cursor:pointer;color:#333;background:#eee;border:none;border-radius:8px;padding:10px 18px;font-size:15px;font-weight:600;transition:all .2s}.btn.primary{color:#fff;background:#3498db}.btn.danger{color:#fff;background:#e74c3c}.btn.success{color:#fff;background:#2ecc71}.btn:hover:not(:disabled){opacity:.85}.btn:disabled{cursor:not-allowed;opacity:.5}.input{box-sizing:border-box;border:1px solid #d1d5db;border-radius:8px;outline:none;width:100%;padding:12px 14px;font-size:15px;transition:all .2s}.input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26}.input:disabled{cursor:not-allowed;background-color:#f3f4f6}.textarea{resize:vertical;box-sizing:border-box;border:1px solid #d1d5db;border-radius:8px;outline:none;width:100%;min-height:150px;padding:12px 14px;font-size:15px;transition:all .2s}.textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26}.textarea:disabled{cursor:not-allowed;background-color:#f3f4f6}.loading{flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:40px;display:flex}.loading-spinner{border:4px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading p{color:#6b7280;font-size:15px}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.empty-icon{margin-bottom:16px;font-size:60px}.empty-state h2{color:#374151;margin:0;font-size:24px}.empty-state p{color:#6b7280;margin-top:10px;font-size:15px}.empty-board{flex-direction:column;align-items:center;gap:20px;display:flex}.modal-overlay{z-index:999;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{text-align:center;background:#fff;border-radius:12px;width:360px;padding:24px}.modal h2{margin-bottom:12px}.modal p{color:#666;margin-bottom:24px}.modal-buttons{justify-content:center;gap:12px;display:flex}.cancel-btn,.confirm-btn{cursor:pointer;border:none;border-radius:8px;padding:10px 20px}.cancel-btn{background:#ddd}.confirm-btn{color:#fff;background:#ef4444}@media (width<=768px){.create-container,.update-container,.board-container,.detail-container{width:auto;margin:20px 15px}.create-box,.update-box,.board-box,.login-box,.signup-box{padding:20px}h1{font-size:24px}.button-group,.comment-buttons{flex-direction:column}.btn{width:100%}}
