:root{--color-primary: #173a5e;--color-primary-hover: #214d74;--color-primary-active: #102b43;--color-secondary: #b48a4b;--color-accent: #5f7d7d;--bg-app: #f4efe7;--bg-surface: #f8f4eb;--bg-muted: #eef2f5;--bg-navbar: linear-gradient(135deg, #173a5e 0%, #214d74 100%);--bg-card: #ffffff;--text-primary: #18324a;--text-secondary: #536371;--text-muted: #72818e;--text-inverse: #f7f4ec;--border-color: #d8e0e7;--border-strong: #b7c2cc;--shadow-sm: 0 8px 24px rgba(23, 58, 94, .08);--shadow-md: 0 16px 40px rgba(23, 58, 94, .12);--shadow-lg: 0 24px 56px rgba(23, 58, 94, .16);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 18px;--success: #2f8f5f;--warning: #c77a1e;--danger: #c4494a;--info: #4f7c7d;--status-issued: #246b91;--status-requested: #b97a23;--status-returned: #2f8f5f;--status-overdue: #c4494a;--status-available: #2f8f5f;--status-unavailable: #6b7280}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;color:var(--text-primary);background:linear-gradient(180deg,var(--bg-app) 0%,#f9f6ee 100%);min-height:100vh}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}#root{min-height:100vh}.bg-primary{background-color:var(--color-primary)!important}.bg-light{background-color:var(--bg-surface)!important}.text-primary{color:var(--color-primary)!important}.text-success{color:var(--success)!important}.text-danger{color:var(--danger)!important}.text-warning{color:var(--warning)!important}.text-muted{color:var(--text-muted)!important}.btn,.btn-submit,.btn-view-all{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem 1.2rem;border-radius:999px;font-weight:600;border:1px solid transparent;transition:all .2s ease;cursor:pointer}.btn:hover,.btn-submit:hover,.btn-view-all:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-primary,.btn-submit,.btn-view-all{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);color:var(--text-inverse)}.btn-primary:hover,.btn-submit:hover,.btn-view-all:hover{background:linear-gradient(135deg,var(--color-primary-hover) 0%,var(--color-primary-active) 100%)}.btn-secondary{background:var(--color-secondary);color:#fff}.btn-outline{background:transparent;color:var(--color-primary);border-color:var(--color-primary)}.btn-outline:hover{background:var(--color-primary);color:#fff}.btn-light{background:var(--bg-card);color:var(--color-primary);border-color:var(--border-color)}.btn-outline-light{color:var(--text-inverse);border-color:#ffffff8c}.card,.section-card,.progress-card,.chart-card,.activity-card,.login-box,.forgot-password-card,.contact-form,.contact-info-card,.admin-table-container,.stat-card,.book-card,.category-card,.hours-card,.na-book-item,.profile-info.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.form-control,.form-group input,.form-group select,.form-group textarea,.forgot-password-input,.form-input,.search-input{width:100%;padding:.8rem 1rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--bg-card);color:var(--text-primary);transition:border-color .2s ease,box-shadow .2s ease}.form-control:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.forgot-password-input:focus,.form-input:focus,.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #173a5e1f}.table,.admin-table{width:100%;border-collapse:separate;border-spacing:0}.table th,.admin-table th{background:var(--bg-muted);color:var(--text-secondary);font-weight:600}.table td,.admin-table td{border-bottom:1px solid var(--border-color);color:var(--text-secondary)}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:.3rem .7rem;font-weight:600}.badge.bg-warning,.badge.warning,.badge.requested{background:#c77a1e26!important;color:var(--warning)!important}.badge.bg-success,.badge.returned,.badge.available{background:#2f8f5f26!important;color:var(--success)!important}.badge.bg-danger,.badge.overdue,.badge.unavailable{background:#c4494a26!important;color:var(--danger)!important}.badge.bg-info,.badge.issued{background:#4f7c7d26!important;color:var(--info)!important}.progress-container{background-color:var(--bg-muted)}.Toastify__toast{border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.Toastify__toast-theme--light{color:var(--text-primary)}.preloader{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100vh;background:linear-gradient(180deg,var(--bg-app) 0%,var(--bg-surface) 100%);color:var(--text-primary)}.spinner{width:50px;height:50px;border:5px solid rgba(23,58,94,.14);border-top:5px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.navbar{background:var(--bg-navbar);padding:.95rem 0;position:sticky;top:0;z-index:1000;border-bottom:1px solid rgba(255,255,255,.12)}.navbar-brand{display:flex;align-items:center;text-decoration:none;color:var(--text-inverse)!important;font-weight:700;font-size:1.2rem;letter-spacing:.01em}.navbar .nav-link{color:#f7f4eceb!important;padding:.55rem .8rem;border-radius:999px;transition:all .2s ease}.navbar .nav-link:hover{color:#fff!important;background:#ffffff1f}.navbar .navbar-nav{display:flex;align-items:center;gap:.35rem}.navbar-collapse{width:100%}.navbar-nav-main{display:flex;flex:1;justify-content:center;gap:1.4rem}.navbar-nav-main .nav-item{display:flex;align-items:center}.navbar-nav-auth{display:flex;align-items:center;gap:.75rem;margin-left:auto}.navbar-nav-auth .nav-item{display:flex;align-items:center}.navbar-toggler{border:1px solid rgba(255,255,255,.3)}.navbar-toggler-icon{filter:brightness(0) invert(1)}.dropdown-menu{border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:.6rem;min-width:200px;background:var(--bg-card)}.dropdown-item{padding:.7rem .8rem;border-radius:var(--radius-sm);color:var(--text-primary)}.dropdown-item:hover{background:var(--bg-muted);color:var(--color-primary)}.btn-light{background:var(--bg-card);color:var(--color-primary);border-color:#173a5e24}.btn-outline-light{color:var(--text-inverse);border-color:#ffffff7a}@media (max-width: 768px){.navbar-collapse{padding-top:.75rem}}.library-footer{background:linear-gradient(135deg,#14293e,#1d3b57);color:var(--text-inverse);padding:60px 0 0}.footer-container{width:90%;max-width:1200px;margin:0 auto;padding:0 15px}.footer-main{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:40px;margin-bottom:40px}.footer-column{margin-bottom:30px}.footer-heading{font-size:1.2rem;color:var(--text-inverse);margin-bottom:16px;position:relative;padding-bottom:8px}.footer-heading:after{content:"";position:absolute;left:0;bottom:0;width:52px;height:2px;background:var(--color-secondary)}.footer-about-text,.footer-link,.contact-item span,.footer-copyright,.legal-link{color:#f7f4eccc}.footer-social{display:flex;gap:12px}.social-icon{color:var(--text-inverse);font-size:1.1rem;transition:color .2s ease}.social-icon:hover,.footer-link:hover,.legal-link:hover{color:var(--color-secondary)}.footer-links,.footer-contact-info{list-style:none;padding:0}.footer-links li,.contact-item{margin-bottom:10px}.footer-link,.legal-link{text-decoration:none;display:inline-block}.contact-item{display:flex;align-items:flex-start;line-height:1.5}.contact-icon{margin-right:10px;color:var(--color-secondary);margin-top:3px;flex-shrink:0}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:20px 0;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center}.footer-legal{display:flex;gap:20px}@media (max-width: 768px){.footer-main{grid-template-columns:1fr 1fr}}@media (max-width: 480px){.footer-main{grid-template-columns:1fr}}.dropdown-menu{border-radius:var(--radius-md);border:none;box-shadow:var(--shadow-md);padding:.6rem;min-width:200px;background:var(--bg-card)}.dropdown-item{padding:.7rem .8rem;font-size:.95rem;font-weight:500;color:var(--text-primary);transition:background .2s ease,transform .1s ease;border-radius:var(--radius-sm)}.dropdown-item:hover{background:var(--bg-muted);color:var(--color-primary);transform:translate(4px)}.dropdown-item:active{background:var(--bg-muted)!important;transform:scale(.98)}.dropdown-toggle:after{margin-left:8px}
