.exchange-manage-container{background:#f8fdf9;min-height:100vh;padding-bottom:60px}.manage-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding:32px;background:white;border-radius:20px;box-shadow:0 4px 20px rgba(24,133,80,0.08)}.header-content{flex:1}.manage-title{font-size:32px;font-weight:800;color:#188550;margin:0 0 8px 0;display:flex;align-items:center}.manage-title i{color:#58D77A}.manage-subtitle{font-size:16px;color:#718096;margin:0}.btn-back{padding:12px 24px;background:white;color:#188550;border:2px solid #188550;border-radius:12px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;transition:all 0.3s}.btn-back:hover{background:#188550;color:white;transform:translateX(-4px)}.nav-tabs{border-bottom:3px solid #E2FFF1;background:white;padding:0 24px;border-radius:16px 16px 0 0;margin-bottom:0}.nav-tabs .nav-link{border:none;color:#718096;padding:16px 24px;font-weight:600;transition:all 0.3s;border-bottom:3px solid transparent;margin-bottom:-3px;display:flex;align-items:center;gap:8px}.nav-tabs .nav-link:hover{color:#188550;background:#f7fafc}.nav-tabs .nav-link.active{color:#188550;border-bottom-color:#58D77A;background:transparent}.nav-tabs .badge{font-size:11px;padding:4px 10px;border-radius:12px;font-weight:700}.nav-tabs .nav-link.active .badge{background:linear-gradient(135deg, #188550 0%, #58D77A 100%);color:white}.nav-tabs .nav-link:not(.active) .badge{background:#e2e8f0;color:#718096}.tab-content{background:white;padding:32px;border-radius:0 0 16px 16px;box-shadow:0 4px 20px rgba(24,133,80,0.08);min-height:400px}.card{border:2px solid #e2e8f0;border-radius:16px;transition:all 0.3s}.card:hover{border-color:#58D77A;box-shadow:0 4px 16px rgba(24,133,80,0.1)}.badge{font-weight:600;padding:6px 12px;border-radius:20px}.bg-primary{background:linear-gradient(135deg, #188550 0%, #58D77A 100%) !important}.bg-success{background:linear-gradient(135deg, #10b981 0%, #34d399 100%) !important}.bg-warning{background:linear-gradient(135deg, #FFB118 0%, #FFC942 100%) !important}.bg-danger{background:linear-gradient(135deg, #ef4444 0%, #f87171 100%) !important}.bg-info{background:linear-gradient(135deg, #3b82f6 0%, #60a5fa 100%) !important}.bg-secondary{background:#718096 !important}.btn-outline-primary,.btn-outline-warning,.btn-outline-danger{border-width:2px;font-weight:600;transition:all 0.3s}.btn-outline-primary{color:#188550;border-color:#188550}.btn-outline-primary:hover{background:#188550;border-color:#188550;color:white}.btn-outline-warning{color:#FFB118;border-color:#FFB118}.btn-outline-warning:hover{background:#FFB118;border-color:#FFB118;color:white}.btn-outline-danger{color:#ef4444;border-color:#ef4444}.btn-outline-danger:hover{background:#ef4444;border-color:#ef4444;color:white}.btn-success{background:linear-gradient(135deg, #188550 0%, #58D77A 100%);border:none;color:white;font-weight:600}.btn-success:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(24,133,80,0.3)}.text-center{padding:60px 20px}.text-center i{font-size:64px;color:#58D77A;margin-bottom:20px}.text-center h5{color:#718096;font-weight:600;margin-bottom:16px}.image-preview-center{text-align:center}.empty-state-center{text-align:center;padding:60px 20px}.empty-state-center i{font-size:64px;color:#58D77A;margin-bottom:20px}.empty-state-center h5{color:#718096;font-weight:600;margin-bottom:16px}.loading-center{text-align:center;padding:60px 20px}.direction-tabs{display:flex;gap:12px;background:white;padding:8px;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.08);margin-bottom:20px}.direction-tab{flex:1;padding:12px 20px;border:2px solid #e2e8f0;background:white;border-radius:8px;cursor:pointer;transition:all 0.2s;font-weight:600;color:#6b7280;display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.direction-tab:hover{background:#f3f4f6;color:#1f2937;border-color:#cbd5e0;text-decoration:none}.direction-tab.active{background:linear-gradient(135deg, #188550 0%, #58D77A 100%);color:white;border-color:#188550}.direction-tab .badge{font-size:12px;padding:3px 8px}.direction-tab.active .badge{background:rgba(255,255,255,0.3) !important;color:white}@media (max-width: 768px){.manage-header{flex-direction:column;gap:16px;text-align:center}.manage-title{font-size:24px;justify-content:center}.btn-back{width:100%;justify-content:center}.nav-tabs{padding:0 12px;overflow-x:auto;white-space:nowrap}.nav-tabs .nav-link{padding:12px 16px;font-size:14px}.tab-content{padding:20px}.direction-tabs{flex-direction:column}.direction-tab{width:100%}}.image-uploading{position:relative;opacity:0.7}.upload-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);background:rgba(0,0,0,0.8);color:white;padding:8px 12px;border-radius:4px;font-size:12px;z-index:10;display:flex;align-items:center;gap:6px}.upload-spinner i{font-size:14px}.placeholder-image{opacity:0.6;filter:grayscale(50%)}.book-image-container{position:relative;overflow:hidden}.book-image-container img{transition:opacity 0.3s ease}@keyframes pulse{0%{opacity:0.6}50%{opacity:1}100%{opacity:0.6}}.image-uploading img{animation:pulse 1.5s infinite}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.image-completed{animation:fadeIn 0.5s ease}.exchange-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.6);backdrop-filter:blur(4px);align-items:center;justify-content:center;z-index:9999;animation:fadeIn 0.2s ease-out;display:none;padding:20px;overflow-y:auto}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.exchange-modal{background:white;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,0.3);max-width:500px;width:100%;animation:slideUp 0.3s ease-out;max-height:90vh;display:flex;flex-direction:column}.exchange-modal-large{max-width:700px}@keyframes slideUp{from{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.exchange-modal-header{padding:24px 28px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.exchange-modal-title{margin:0;font-size:20px;font-weight:600;color:#111827;display:flex;align-items:center;gap:10px}.exchange-modal-title i{color:#188550}.exchange-modal-close{background:none;border:none;width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#6b7280;transition:all 0.2s;font-size:20px}.exchange-modal-close:hover{background:#f3f4f6;color:#111827}.exchange-modal-body{padding:28px;overflow-y:auto;flex:1}.exchange-modal-footer{padding:20px 28px;border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;flex-shrink:0}.exchange-modal .form-group{margin-bottom:20px}.exchange-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 768px){.exchange-modal .form-row{grid-template-columns:1fr}}.exchange-modal .form-label{display:block;margin-bottom:8px;font-weight:500;color:#374151;font-size:14px}.exchange-modal .required{color:#ef4444}.exchange-modal .form-input,.exchange-modal .form-textarea,.exchange-modal .form-select{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:10px;font-size:15px;transition:all 0.2s;font-family:inherit;background:white}.exchange-modal .form-input:focus,.exchange-modal .form-textarea:focus,.exchange-modal .form-select:focus{outline:none;border-color:#58D77A;box-shadow:0 0 0 3px rgba(88,215,122,0.1)}.exchange-modal .form-textarea{resize:vertical;min-height:100px}.exchange-modal .form-select{cursor:pointer}.exchange-modal .form-check{margin-bottom:12px;padding-left:0}.exchange-modal .form-check-input{width:20px;height:20px;margin-right:10px;cursor:pointer}.exchange-modal .form-check-label{cursor:pointer;font-size:15px;color:#374151}.exchange-modal-footer .btn-cancel,.exchange-modal-footer .btn-submit{padding:12px 24px;border-radius:10px;font-weight:600;font-size:15px;cursor:pointer;transition:all 0.2s;border:none;display:flex;align-items:center;gap:8px}.exchange-modal-footer .btn-cancel{background:#f3f4f6;color:#374151}.exchange-modal-footer .btn-cancel:hover{background:#e5e7eb}.exchange-modal-footer .btn-submit{background:linear-gradient(135deg, #188550 0%, #58D77A 100%);color:white;box-shadow:0 4px 12px rgba(24,133,80,0.4)}.exchange-modal-footer .btn-submit:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(24,133,80,0.5)}.exchange-modal-footer .btn-submit:disabled{opacity:0.5;cursor:not-allowed;transform:none}.exchange-modal-footer .btn-submit i{font-size:16px}@media (max-width: 768px){.exchange-modal{max-width:100%;margin:0;border-radius:16px 16px 0 0;max-height:95vh}.exchange-modal-overlay{align-items:flex-end;padding:0}}.exchange-modal .file-upload-wrapper{position:relative}.exchange-modal .file-input{position:absolute;opacity:0;width:0;height:0}.exchange-modal .file-upload-label{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px;border:2px dashed #cbd5e0;border-radius:10px;cursor:pointer;transition:all 0.3s;background:#f7fafc;color:#718096;font-weight:600}.exchange-modal .file-upload-label:hover{border-color:#58D77A;background:#E2FFF1;color:#188550}.exchange-modal .file-upload-label i{font-size:24px}.exchange-modal .file-name{display:block;margin-top:8px;font-size:13px;color:#188550;font-weight:500}.book-selection-list{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto;padding:4px}.book-selection-item{position:relative;border:2px solid #e5e7eb;border-radius:12px;transition:all 0.3s;background:white}.book-selection-item:hover{border-color:#58D77A;box-shadow:0 4px 12px rgba(24,133,80,0.1)}.book-selection-item.selected{border-color:#188550;background:#E2FFF1;box-shadow:0 4px 16px rgba(24,133,80,0.2)}.book-checkbox{position:absolute;opacity:0;width:0;height:0}.book-selection-label{display:flex;align-items:center;gap:16px;padding:12px;cursor:pointer;margin:0}.book-selection-image{flex-shrink:0;width:60px;height:80px;border-radius:8px;overflow:hidden;background:#f7fafc}.book-selection-image img{width:100%;height:100%;object-fit:cover}.book-selection-info{flex:1;min-width:0}.book-selection-title{font-size:15px;font-weight:700;color:#1a202c;margin:0 0 4px 0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.book-selection-author{font-size:13px;color:#718096;margin:0 0 8px 0}.book-selection-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.book-selection-meta .condition-badge{font-size:11px;padding:3px 10px}.book-selection-price{font-size:13px;font-weight:700;color:#dc2626}.book-selection-duration{font-size:12px;color:#188550;font-weight:600;display:flex;align-items:center;gap:4px}.book-selection-check{flex-shrink:0;width:32px;height:32px;border-radius:50%;border:2px solid #cbd5e0;display:flex;align-items:center;justify-content:center;color:white;background:white;transition:all 0.3s}.book-selection-item.selected .book-selection-check{background:#188550;border-color:#188550}.book-selection-check i{font-size:16px;opacity:0;transition:opacity 0.3s}.book-selection-item.selected .book-selection-check i{opacity:1}.swal2-container{z-index:99999 !important}.swal2-popup{z-index:99999 !important}.btn-success{background:linear-gradient(135deg, #188550 0%, #58D77A 100%);border:none;color:white;font-weight:600;padding:12px 24px;border-radius:12px;transition:all 0.3s}.btn-success:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(24,133,80,0.3);background:linear-gradient(135deg, #156b42 0%, #4bc268 100%)}.btn-success i{font-size:14px}.filter-section{background:white;padding:20px;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.08);border:1px solid #e5e7eb}.filter-label{display:block;font-weight:600;color:#374151;margin-bottom:8px;font-size:14px}.filter-label i{color:#6366f1}.filter-select{width:100%;padding:10px 14px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;color:#1f2937;background-color:white;transition:all 0.2s;cursor:pointer}.filter-select:hover{border-color:#c7d2fe}.filter-select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px rgba(99,102,241,0.1)}.filter-search-wrapper{position:relative}.filter-search{width:100%;padding:10px 14px 10px 40px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;color:#1f2937;transition:all 0.2s}.filter-search:hover{border-color:#c7d2fe}.filter-search:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px rgba(99,102,241,0.1)}.filter-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.active-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.active-filter-label{font-size:13px;color:#6b7280;font-weight:600}.filter-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);color:white;border-radius:20px;font-size:12px;font-weight:500;cursor:pointer;transition:all 0.2s}.filter-chip:hover{transform:translateY(-1px);box-shadow:0 2px 8px rgba(99,102,241,0.3)}.filter-chip i{cursor:pointer;opacity:0.8;transition:opacity 0.2s}.filter-chip i:hover{opacity:1}.book-group-header{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:12px;border-bottom:3px solid;position:relative}.book-group-header::after{content:'';position:absolute;bottom:-3px;left:0;width:80px;height:3px;background:currentColor;border-radius:3px}.book-group-header.available{color:#059669;border-bottom-color:rgba(5,150,105,0.2)}.book-group-header.available::after{background:linear-gradient(90deg, #059669 0%, #10b981 100%)}.book-group-header.in-post{color:#3b82f6;border-bottom-color:rgba(59,130,246,0.2)}.book-group-header.in-post::after{background:linear-gradient(90deg, #3b82f6 0%, #60a5fa 100%)}.book-group-header.in-transit{color:#f59e0b;border-bottom-color:rgba(245,158,11,0.2)}.book-group-header.in-transit::after{background:linear-gradient(90deg, #f59e0b 0%, #fbbf24 100%)}.book-group-header.unavailable{color:#6b7280;border-bottom-color:rgba(107,114,128,0.2)}.book-group-header.unavailable::after{background:linear-gradient(90deg, #6b7280 0%, #9ca3af 100%)}.book-group-header i{font-size:24px;filter:drop-shadow(0 2px 4px rgba(0,0,0,0.1))}.book-group-header h6{margin:0;font-weight:700;font-size:18px;letter-spacing:-0.02em}.book-group-count{margin-left:auto;background:white;padding:6px 14px;border-radius:20px;font-weight:600;font-size:14px;box-shadow:0 2px 8px rgba(0,0,0,0.08)}.book-card{background:white;border-radius:16px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06);border:1px solid #f3f4f6;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);height:100%}.book-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px rgba(0,0,0,0.12);border-color:#e5e7eb}.book-card-image{position:relative;overflow:hidden;background:linear-gradient(135deg, #f3f4f6 0%, #e5e7eb 100%)}.book-card-image img{width:100%;height:100%;object-fit:cover;transition:transform 0.3s}.book-card:hover .book-card-image img{transform:scale(1.05)}.book-card-body{padding:16px;display:flex;flex-direction:column;gap:10px}.book-card-title{font-weight:700;font-size:15px;color:#111827;margin:0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:42px}.book-card-author{font-size:12px;color:#6b7280;margin:0;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.book-card-badges{display:flex;flex-wrap:wrap;gap:6px}.book-card-badge{padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;display:inline-flex;align-items:center;gap:4px}.book-card-info-box{padding:10px 12px;border-radius:10px;font-size:11px;line-height:1.5;margin:4px 0;border-left:3px solid;transition:all 0.2s;text-decoration:none;display:block}.book-card-info-box:hover{transform:translateX(3px);box-shadow:0 2px 8px rgba(0,0,0,0.08)}.book-card-info-box.movement{background:linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);border-left-color:#f59e0b;color:#92400e}.book-card-info-box.post{background:linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);border-left-color:#3b82f6;color:#1e40af}.book-card-info-title{font-weight:700;display:block;margin-bottom:4px}.book-card-info-detail{font-size:10px;opacity:0.9;display:flex;align-items:center;gap:4px}.book-card-notes{font-size:11px;color:#6b7280;font-style:italic;padding:8px 10px;background:#f9fafb;border-radius:8px;margin:4px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.book-card-actions{display:flex;gap:6px;margin-top:auto;padding-top:8px;border-top:1px solid #f3f4f6}.book-card-btn{flex:1;padding:8px 12px;border-radius:8px;border:1.5px solid;background:white;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.2s;display:flex;align-items:center;justify-content:center;gap:6px}.book-card-btn.btn-view{border-color:#3b82f6;color:#3b82f6}.book-card-btn.btn-view:hover{background:#3b82f6;color:white;transform:translateY(-1px);box-shadow:0 4px 8px rgba(59,130,246,0.3)}.book-card-btn.btn-delete{border-color:#ef4444;color:#ef4444}.book-card-btn.btn-delete:hover{background:#ef4444;color:white;transform:translateY(-1px);box-shadow:0 4px 8px rgba(239,68,68,0.3)}.empty-state{text-align:center;padding:60px 20px;background:linear-gradient(135deg, #f9fafb 0%, #f3f4f6 100%);border-radius:16px;border:2px dashed #d1d5db}.empty-state-icon{font-size:64px;color:#d1d5db;margin-bottom:20px;display:block}.empty-state-title{font-size:20px;font-weight:700;color:#6b7280;margin-bottom:12px}.empty-state-text{font-size:14px;color:#9ca3af;margin-bottom:24px}.mobile-filter-toggle{display:none}@media (max-width: 768px){.tab-content>.d-flex:first-child{flex-direction:column !important;align-items:stretch !important;gap:12px !important}.tab-content>.d-flex:first-child h5{font-size:16px}.tab-content>.d-flex:first-child .d-flex{width:100%}.tab-content>.d-flex:first-child .btn{flex:1;font-size:13px;padding:10px 12px}.mobile-filter-toggle{display:flex;justify-content:space-between;align-items:center;width:100%;padding:12px 16px;background:white;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;font-weight:600;color:#374151;transition:all 0.3s}.mobile-filter-toggle:hover{background:#f0fdf4;border-color:#188550}.mobile-filter-toggle i.fa-chevron-down{transition:transform 0.3s}.filter-section.open .mobile-filter-toggle i.fa-chevron-down{transform:rotate(180deg)}.filter-section .row{display:none;margin-top:8px;padding:16px;background:white;border:2px solid #e5e7eb;border-radius:12px}.filter-section.open .row{display:block;animation:slideDown 0.3s ease-out}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.filter-section .col-md-4,.filter-section .col-md-8{width:100%;padding:0;margin-bottom:12px}.filter-section .col-md-8{margin-bottom:0}}.filter-section{background:linear-gradient(135deg, #fff 0%, #f7fafc 100%);padding:24px;border-radius:16px;box-shadow:0 4px 16px rgba(0,0,0,0.08);border:2px solid #e2e8f0;margin-bottom:24px}.filter-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #e2e8f0}.filter-title{font-size:18px;font-weight:700;color:#188550;margin:0;display:flex;align-items:center}.filter-title i{color:#58D77A}.btn-filter-reset{background:white;border:2px solid #e2e8f0;color:#718096;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.2s}.btn-filter-reset:hover{background:#fee2e2;border-color:#fca5a5;color:#dc2626;transform:translateY(-1px)}.filter-label{font-size:13px;font-weight:700;color:#4a5568;margin-bottom:8px;display:flex;align-items:center;text-transform:uppercase;letter-spacing:0.5px}.filter-label i{color:#58D77A;font-size:12px}.filter-select{width:100%;padding:10px 14px;border:2px solid #e2e8f0;border-radius:10px;font-size:14px;font-weight:500;color:#2d3748;background:white;cursor:pointer;transition:all 0.2s}.filter-select:hover{border-color:#cbd5e0}.filter-select:focus{outline:none;border-color:#188550;box-shadow:0 0 0 3px rgba(24,133,80,0.1)}.filter-search-wrapper{position:relative}.filter-search{width:100%;padding:10px 14px 10px 38px;border:2px solid #e2e8f0;border-radius:10px;font-size:14px;font-weight:500;color:#2d3748;background:white;transition:all 0.2s}.filter-search:focus{outline:none;border-color:#188550;box-shadow:0 0 0 3px rgba(24,133,80,0.1)}.filter-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#cbd5e0;font-size:14px;pointer-events:none}.active-filters{margin-top:16px;padding-top:16px;border-top:2px dashed #e2e8f0;display:flex;align-items:center;flex-wrap:wrap;gap:8px}.active-filter-label{font-size:13px;font-weight:700;color:#718096;text-transform:uppercase;letter-spacing:0.5px}.filter-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:linear-gradient(135deg, #188550 0%, #58D77A 100%);color:white;border-radius:20px;font-size:13px;font-weight:600;cursor:default;animation:slideIn 0.3s ease-out}.filter-chip i{cursor:pointer;padding:2px;border-radius:50%;transition:all 0.2s}.filter-chip i:hover{background:rgba(255,255,255,0.3);transform:rotate(90deg)}@keyframes slideIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.filter-section{padding:16px}.filter-header{flex-direction:column;align-items:flex-start;gap:12px}.btn-filter-reset{width:100%}}.exchange-modal-xlarge{max-width:900px;max-height:90vh;overflow-y:auto}.exchange-modal-header .header-actions{display:flex;align-items:center;gap:10px}.book-active-post{margin:12px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:4px;font-size:14px;color:#1e40af}.book-active-post a{color:#2563eb;text-decoration:none;font-weight:600}.book-active-post a:hover{text-decoration:underline}.post-type-label{font-size:13px;color:#3b82f6;font-weight:600;margin-left:4px}.book-description{font-size:14px;color:#4a5568;margin-top:12px;line-height:1.6}.book-detail-header{display:flex;gap:24px;margin-bottom:32px;padding-bottom:24px;border-bottom:2px solid #e2e8f0}.book-detail-cover img{width:150px;height:200px;object-fit:cover;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,0.15)}.book-detail-info{flex:1}.book-detail-info h4{font-size:24px;font-weight:700;color:#2d3748;margin-bottom:12px}.book-meta{font-size:14px;color:#718096;margin-bottom:8px}.book-badges{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.book-notes{font-size:14px;color:#4a5568;font-style:italic;margin-top:12px;padding:12px;background:#f7fafc;border-left:3px solid #667eea;border-radius:4px}.movement-flow-section{margin-bottom:32px}.section-title{font-size:18px;font-weight:600;color:#2d3748;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid #e2e8f0}.movement-card{background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;padding:20px;margin-bottom:16px}.active-movement{background:linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);border-color:#3b82f6}.movement-type-badge{display:inline-block;padding:6px 16px;border-radius:16px;font-size:13px;font-weight:600;margin-bottom:16px}.movement-type-badge.type-borrow{background:#dbeafe;color:#1e40af}.movement-type-badge.type-gift{background:#fce7f3;color:#9f1239}.movement-type-badge.type-sell{background:#d1fae5;color:#065f46}.movement-parties-info{display:flex;align-items:center;justify-content:center;margin-bottom:24px;padding:16px;background:white;border-radius:8px}.party-info{display:flex;flex-direction:column;align-items:center}.party-label{font-size:12px;color:#718096;margin-bottom:4px}.party-name{font-size:16px;font-weight:600;color:#2d3748}.flow-timeline{display:flex;justify-content:space-between;align-items:flex-start;margin:24px 0;padding:0 20px;position:relative}.flow-timeline::before{content:'';position:absolute;top:45px;left:60px;right:60px;height:2px;background:#e2e8f0;z-index:0}.timeline-step{display:flex;flex-direction:column;align-items:center;position:relative;z-index:1;flex:1;max-width:120px}.step-icon{width:40px;height:40px;border-radius:50%;background:#e2e8f0;color:#a0aec0;display:flex;align-items:center;justify-content:center;font-size:16px;margin-bottom:8px;transition:all 0.3s;border:3px solid white;box-shadow:0 2px 4px rgba(0,0,0,0.1)}.timeline-step.completed .step-icon{background:#10b981;color:white}.timeline-step.active .step-icon{background:#3b82f6;color:white;animation:pulse 2s infinite}@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(59,130,246,0.7)}50%{box-shadow:0 0 0 10px rgba(59,130,246,0)}}.step-content{text-align:center}.step-title{font-size:12px;font-weight:600;color:#4a5568;margin-bottom:4px}.timeline-step.completed .step-title,.timeline-step.active .step-title{color:#2d3748}.step-time{font-size:10px;color:#a0aec0}.movement-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:20px;padding-top:20px;border-top:1px solid #e2e8f0}.history-section{margin-bottom:32px}.history-list{display:flex;flex-direction:column;gap:12px}.history-item{display:flex;gap:16px;padding:16px;background:white;border:1px solid #e2e8f0;border-radius:8px;transition:all 0.2s}.history-item:hover{border-color:#cbd5e0;box-shadow:0 2px 8px rgba(0,0,0,0.05)}.history-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.history-icon.status-completed{background:#d1fae5;color:#065f46}.history-icon.status-cancelled{background:#fee2e2;color:#991b1b}.history-icon.status-pending{background:#fef3c7;color:#92400e}.history-content{flex:1}.history-title{font-size:15px;font-weight:600;color:#2d3748;margin-bottom:6px;display:flex;align-items:center;gap:8px}.movement-type-label{color:#3b82f6}.movement-status-label{font-size:11px;padding:2px 8px;border-radius:10px;font-weight:600}.movement-status-label.status-completed{background:#d1fae5;color:#065f46}.movement-status-label.status-cancelled{background:#fee2e2;color:#991b1b}.movement-status-label.status-pending,.movement-status-label.status-confirmed,.movement-status-label.status-sent,.movement-status-label.status-received,.movement-status-label.status-in_use,.movement-status-label.status-returning{background:#dbeafe;color:#1e40af}.history-details{font-size:13px;color:#718096;margin-bottom:4px}.history-time{font-size:12px;color:#a0aec0}.badge-sm{font-size:10px;padding:2px 8px}@media (max-width: 768px){.book-detail-header{flex-direction:column;align-items:center;text-align:center}.flow-timeline{flex-direction:column;padding:0}.flow-timeline::before{display:none}.timeline-step{flex-direction:row;max-width:100%;width:100%;justify-content:flex-start;margin-bottom:16px}.step-icon{margin-right:12px;margin-bottom:0}.step-content{text-align:left}.movement-actions{flex-direction:column}.movement-actions .btn{width:100%}}.load-more-section{text-align:center;margin-top:20px;padding-top:20px;border-top:2px dashed #e2e8f0}.btn-load-more{display:inline-flex;align-items:center;gap:8px;padding:12px 28px;background:linear-gradient(135deg, #188550 0%, #58D77A 100%);color:white;border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.3s ease;box-shadow:0 4px 12px rgba(24,133,80,0.25);text-decoration:none}.btn-load-more:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(24,133,80,0.35);color:white}.btn-load-more:active{transform:translateY(0);box-shadow:0 2px 8px rgba(24,133,80,0.25)}.btn-load-more i{font-size:14px;transition:transform 0.3s ease}.btn-load-more:hover i{transform:translateY(2px)}.btn-load-more.btn-success{background:linear-gradient(135deg, #059669 0%, #10b981 100%);box-shadow:0 4px 12px rgba(5,150,105,0.25)}.btn-load-more.btn-success:hover{box-shadow:0 6px 16px rgba(5,150,105,0.35)}.btn-load-more.btn-info{background:linear-gradient(135deg, #3b82f6 0%, #60a5fa 100%);box-shadow:0 4px 12px rgba(59,130,246,0.25)}.btn-load-more.btn-info:hover{box-shadow:0 6px 16px rgba(59,130,246,0.35)}.btn-load-more.btn-warning{background:linear-gradient(135deg, #f59e0b 0%, #fbbf24 100%);box-shadow:0 4px 12px rgba(245,158,11,0.25)}.btn-load-more.btn-warning:hover{box-shadow:0 6px 16px rgba(245,158,11,0.35)}.btn-load-more.btn-secondary{background:linear-gradient(135deg, #6b7280 0%, #9ca3af 100%);box-shadow:0 4px 12px rgba(107,114,128,0.25)}.btn-load-more.btn-secondary:hover{box-shadow:0 6px 16px rgba(107,114,128,0.35)}@media (max-width: 768px){.btn-load-more{width:100%;justify-content:center}}.group-loading-indicator{display:flex;align-items:center;justify-content:center;padding:24px;margin-top:16px;background:linear-gradient(135deg, #f7fafc 0%, #fff 100%);border-radius:12px;border:2px dashed #e2e8f0}.loading-spinner{width:24px;height:24px;border:3px solid #e2e8f0;border-top-color:#188550;border-radius:50%;animation:spin 0.8s linear infinite}.loading-spinner.spinner-success{border-top-color:#059669}.loading-spinner.spinner-info{border-top-color:#3b82f6}.loading-spinner.spinner-warning{border-top-color:#f59e0b}.loading-spinner.spinner-secondary{border-top-color:#6b7280}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{margin-left:12px;font-size:14px;font-weight:600;color:#64748b;letter-spacing:0.3px}@media (max-width: 768px){.group-loading-indicator{padding:16px}.loading-spinner{width:20px;height:20px;border-width:2px}.loading-text{font-size:13px}}.flow-timeline{display:flex;justify-content:space-around;align-items:flex-start;position:relative;padding:20px 0;margin:20px 0}.flow-timeline::before{content:'';position:absolute;top:45px;left:15%;right:15%;height:3px;background:#e5e7eb;z-index:0}.timeline-step{flex:1;display:flex;flex-direction:column;align-items:center;position:relative;z-index:1}.timeline-step .step-icon{width:50px;height:50px;border-radius:50%;background:#f3f4f6;border:3px solid #e5e7eb;display:flex;align-items:center;justify-content:center;margin-bottom:12px;transition:all 0.3s}.timeline-step .step-icon i{font-size:20px;color:#9ca3af}.timeline-step.active .step-icon{background:#fef3c7;border-color:#f59e0b}.timeline-step.active .step-icon i{color:#f59e0b}.timeline-step.completed .step-icon{background:#188550;border-color:#188550}.timeline-step.completed .step-icon i{color:white}.timeline-step .step-content{text-align:center}.timeline-step .step-title{font-weight:600;color:#374151;font-size:14px;margin-bottom:4px}.timeline-step .step-time{font-size:12px;color:#6b7280}.timeline-step .step-notes{font-size:11px;color:#6b7280;margin-top:4px}.movement-actions{display:flex;gap:10px;flex-wrap:wrap}
