.book-list-container{animation:fadeIn .6s ease-out}.book-list-header{margin-bottom:3rem}.header-content h1{font-family:var(--font-display);font-size:3.5rem;font-weight:700;color:var(--color-primary);margin-bottom:.5rem;letter-spacing:-.02em}.subtitle{font-size:1.2rem;color:var(--color-dark);opacity:.6;font-weight:300;font-style:italic}.search-bar{display:flex;gap:.5rem;max-width:600px;position:relative}.search-bar input{flex:1;padding:1rem 3rem 1rem 1.5rem;border:2px solid var(--color-light);border-radius:50px;font-size:1rem;font-family:var(--font-body);transition:var(--transition)}.clear-search-button{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--color-dark);opacity:.5;cursor:pointer;font-size:1.2rem;padding:.5rem;transition:var(--transition)}.clear-search-button:hover{opacity:1;color:var(--color-danger)}.search-button{padding:1rem 2rem;background:var(--color-primary);color:var(--color-white);border:none;border-radius:50px;font-family:var(--font-body);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition)}.search-button:hover{background:var(--color-accent);transform:translateY(-2px)}.filters-section{margin-bottom:2rem;background:var(--color-white);padding:1.5rem;border-radius:12px;box-shadow:var(--shadow-sm);border:2px solid var(--color-light)}.filters-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;align-items:end}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-size:.85rem;font-weight:600;color:var(--color-dark);text-transform:uppercase;letter-spacing:.05em}.filter-select{padding:.75rem 1rem;border:2px solid var(--color-light);border-radius:8px;font-family:var(--font-body);font-size:.95rem;color:var(--color-dark);background:var(--color-white);cursor:pointer;transition:var(--transition)}.filter-select:hover{border-color:var(--color-secondary)}.filter-select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #d4a5741a}.clear-filters-button{padding:.75rem 1.5rem;background:transparent;color:var(--color-danger);border:2px solid var(--color-danger);border-radius:8px;font-family:var(--font-body);font-size:.9rem;font-weight:600;cursor:pointer;transition:var(--transition);white-space:nowrap}.clear-filters-button:hover{background:var(--color-danger);color:var(--color-white)}.results-info{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-light);font-size:.95rem;color:var(--color-dark);opacity:.7;font-weight:500}.search-bar{display:flex;gap:1rem;margin-top:2rem;max-width:600px}.search-bar input{flex:1;padding:1rem 1.5rem;border:2px solid var(--color-light);border-radius:8px;font-family:var(--font-body);font-size:1rem;background:var(--color-white);color:var(--color-dark);transition:var(--transition)}.search-bar input:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 4px #d4a5741a}.search-button{padding:1rem 2rem;background:var(--color-primary);color:var(--color-white);border:none;border-radius:8px;font-family:var(--font-body);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition)}.search-button:hover{background:var(--color-accent);transform:translateY(-2px);box-shadow:var(--shadow-md)}.books-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem;margin-top:2rem}.book-card{background:var(--color-white);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-sm);transition:var(--transition);animation:fadeIn .5s ease-out backwards;display:flex;flex-direction:column;border:1px solid var(--color-light)}.book-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}.book-cover{position:relative;width:100%;height:400px;overflow:hidden}.book-cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.book-card:hover .book-cover img{transform:scale(1.05)}.book-overlay{position:absolute;top:0;left:0;right:0;padding:1rem;background:linear-gradient(to bottom,rgba(44,24,16,.7),transparent);display:flex;justify-content:flex-end}.book-genre{background:var(--color-white);color:var(--color-primary);padding:.4rem .8rem;border-radius:20px;font-size:.85rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.book-details{padding:1.5rem;display:flex;flex-direction:column;gap:.75rem;flex:1}.book-title{font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:var(--color-dark);line-height:1.3;margin:0}.book-author{font-size:1rem;color:var(--color-dark);opacity:.7;font-style:italic}.book-description{font-size:.95rem;color:var(--color-dark);opacity:.8;line-height:1.6;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.book-meta{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid var(--color-light);font-size:.9rem}.book-year{color:var(--color-primary);font-weight:600}.book-availability{color:var(--color-dark);opacity:.7;font-size:.85rem}.borrow-button{width:100%;padding:1rem;background:var(--color-primary);color:var(--color-white);border:none;border-radius:8px;font-family:var(--font-body);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);margin-top:.5rem;letter-spacing:.03em}.borrow-button:hover:not(:disabled){background:var(--color-accent);transform:translateY(-2px);box-shadow:var(--shadow-md)}.borrow-button.borrowed{background:var(--color-success);cursor:default}.borrow-button.queue-mode{background:var(--color-warning)}.borrow-button.queue-mode:hover:not(:disabled){background:#b45309}.borrow-button.disabled,.borrow-button:disabled{background:var(--color-light);color:var(--color-dark);opacity:.5;cursor:not-allowed;transform:none}.queue-status{margin-top:.5rem}.queue-position{background:#fef3c7;color:var(--color-warning);padding:.75rem 1rem;border-radius:8px;font-weight:600;text-align:center;margin-bottom:.5rem}.leave-queue-button{width:100%;padding:1rem;background:transparent;color:var(--color-danger);border:2px solid var(--color-danger);border-radius:8px;font-family:var(--font-body);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition)}.leave-queue-button:hover:not(:disabled){background:var(--color-danger);color:var(--color-white)}.leave-queue-button:disabled{opacity:.5;cursor:not-allowed}.empty-state p{font-size:1.2rem;color:var(--color-dark);opacity:.6;margin-bottom:2rem}.reset-button{padding:1rem 2rem;background:var(--color-primary);color:var(--color-white);border:none;border-radius:8px;font-family:var(--font-body);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition)}@media (max-width: 1024px){.header-content h1{font-size:3rem}.books-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.75rem}.filters-row{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.book-list-header{gap:1.5rem}.header-content h1{font-size:2.5rem}.subtitle{font-size:1rem}.search-bar{max-width:100%}.search-bar input{font-size:.95rem;padding:.875rem 2.5rem .875rem 1rem}.filters-section{padding:1.25rem}.filters-row{grid-template-columns:1fr;gap:1rem}.clear-filters-button{width:100%}.results-info{text-align:center}.books-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.5rem}.book-cover{height:320px}.book-card{padding:1.25rem}.book-title{font-size:1.3rem}.book-author{font-size:1rem}}@media (max-width: 480px){.header-content h1{font-size:2rem}.subtitle{font-size:.95rem}.search-bar input{font-size:.9rem;padding:.75rem 2.5rem .75rem 1rem}.filters-section{padding:1rem}.filter-group label{font-size:.8rem}.filter-select{font-size:.9rem;padding:.65rem .85rem}.clear-filters-button{font-size:.85rem;padding:.65rem 1.25rem}.results-info{font-size:.9rem}.books-grid{grid-template-columns:1fr;gap:1.25rem}.book-card{padding:1rem}.book-cover{height:280px}.book-title{font-size:1.2rem}.book-author{font-size:.95rem}.book-meta{font-size:.85rem}.borrow-button,.leave-queue-button{padding:.75rem 1.25rem;font-size:.9rem}.queue-position{font-size:.9rem}}.borrowing-list-container{animation:fadeIn .6s ease-out}.borrowing-list-header{margin-bottom:3rem}.borrowing-list-header h1{font-family:var(--font-display);font-size:3.5rem;font-weight:700;color:var(--color-primary);margin-bottom:.5rem;letter-spacing:-.02em}.borrowing-section{margin-bottom:4rem}.section-title{font-family:var(--font-display);font-size:2rem;font-weight:600;color:var(--color-dark);margin-bottom:2rem;padding-bottom:.75rem;border-bottom:2px solid var(--color-light)}.borrowings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem}.borrowing-card{background:var(--color-white);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-sm);transition:var(--transition);animation:fadeIn .5s ease-out backwards;display:flex;flex-direction:column;border:2px solid transparent}.borrowing-card.pending{border-color:var(--color-warning)}.borrowing-card.ready{border-color:var(--color-accent)}.borrowing-card.collected{border-color:var(--color-success)}.borrowing-card.overdue{border-color:var(--color-danger);background:linear-gradient(to bottom,#FEF2F2,var(--color-white))}.borrowing-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.borrowing-cover{position:relative;width:100%;height:320px;overflow:hidden}.borrowing-cover img{width:100%;height:100%;object-fit:cover}.overdue-badge{position:absolute;top:1rem;right:1rem;background:var(--color-danger);color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;box-shadow:var(--shadow-md)}.status-badge{position:absolute;top:1rem;right:1rem;color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;box-shadow:var(--shadow-md)}.status-badge.status-pending{background:var(--color-warning)}.status-badge.status-ready{background:var(--color-accent)}.status-badge.status-collected{background:var(--color-success)}.status-badge.status-returned{background:#6b7280}.borrowing-details{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.borrowing-title{font-family:var(--font-display);font-size:1.6rem;font-weight:700;color:var(--color-dark);line-height:1.3;margin:0}.borrowing-author{font-size:1.05rem;color:var(--color-dark);opacity:.7;font-style:italic}.borrowing-info{padding:1rem;background:var(--color-light);border-radius:8px;margin-top:1rem}.info-text{font-size:.95rem;color:var(--color-dark);margin-bottom:.5rem}.info-text:last-child{margin-bottom:0}.info-note{font-size:.9rem;color:var(--color-dark);opacity:.6;font-style:italic;margin-top:.5rem}.info-highlight{font-size:1rem;color:var(--color-accent);font-weight:600;margin-top:.5rem}.borrowing-dates{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:1rem;background:var(--color-light);border-radius:8px;margin-top:.5rem}.date-item{display:flex;flex-direction:column;gap:.25rem}.date-label{font-size:.85rem;color:var(--color-dark);opacity:.6;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.date-value{font-size:1rem;color:var(--color-dark);font-weight:600}.date-value.overdue-text{color:var(--color-danger)}.due-soon-warning,.overdue-warning{padding:.75rem 1rem;border-radius:8px;font-size:.95rem;font-weight:600;text-align:center}.due-soon-warning{background:#fef3c7;color:var(--color-warning);border:1px solid var(--color-warning)}.overdue-warning{background:#fee2e2;color:var(--color-danger);border:1px solid var(--color-danger)}.action-button{width:100%;padding:1rem;border:none;border-radius:8px;font-family:var(--font-body);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);margin-top:.5rem}.collect-button{background:var(--color-accent);color:var(--color-white)}.collect-button:hover:not(:disabled){background:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.return-button{background:var(--color-primary);color:var(--color-white)}.return-button:hover:not(:disabled){background:var(--color-accent);transform:translateY(-2px);box-shadow:var(--shadow-md)}.action-button:disabled{opacity:.6;cursor:not-allowed}.history-list{display:flex;flex-direction:column;gap:1rem}.history-item{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:var(--color-white);border-radius:12px;box-shadow:var(--shadow-sm);transition:var(--transition);animation:slideIn .4s ease-out}.history-item:hover{box-shadow:var(--shadow-md);transform:translate(4px)}.history-cover{width:80px;height:120px;object-fit:cover;border-radius:6px;box-shadow:var(--shadow-sm)}.history-info{flex:1}.history-info h4{font-family:var(--font-display);font-size:1.3rem;font-weight:600;color:var(--color-dark);margin-bottom:.25rem}.history-author{font-size:1rem;color:var(--color-dark);opacity:.7;font-style:italic;margin-bottom:.5rem}.history-dates{font-size:.9rem;color:var(--color-dark);opacity:.6}.history-status{display:flex;align-items:center}.returned-badge{background:var(--color-success);color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}@media (max-width: 1024px){.borrowing-list-header h1{font-size:3rem}.borrowings-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width: 768px){.borrowing-list-header{padding:1.5rem 0}.borrowing-list-header h1{font-size:2.5rem}.borrowing-list-header p{font-size:1rem}.section-title{font-size:1.6rem}.borrowings-grid{grid-template-columns:1fr;gap:1.5rem}.borrowing-card{padding:1.25rem}.borrowing-cover{height:280px}.borrowing-title{font-size:1.3rem}.borrowing-author{font-size:1rem}.borrowing-info{padding:1rem}.borrowing-dates{grid-template-columns:1fr;gap:.75rem}.action-button{padding:.875rem 1.5rem;font-size:.95rem}.history-item{flex-direction:column;text-align:center;padding:1.25rem}.history-cover{width:100px;height:150px;margin:0 auto}}@media (max-width: 480px){.borrowing-list-header h1{font-size:2rem}.borrowing-list-header p{font-size:.95rem}.section-title{font-size:1.4rem}.borrowings-grid{gap:1.25rem}.borrowing-card{padding:1rem}.borrowing-cover{height:240px}.borrowing-title{font-size:1.2rem}.borrowing-author{font-size:.95rem}.status-badge{font-size:.75rem;padding:.4rem .8rem}.borrowing-info{padding:.875rem}.info-text{font-size:.9rem}.date-label,.date-value{font-size:.85rem}.action-button{padding:.75rem 1.25rem;font-size:.9rem}.history-item{padding:1rem}.history-title{font-size:1.1rem}.history-dates{font-size:.85rem}}.resource-list-container{animation:fadeIn .6s ease-out}.resource-list-header{margin-bottom:3rem}.resource-list-header .header-content h1{font-family:var(--font-display);font-size:3.5rem;font-weight:700;color:var(--color-primary);margin-bottom:.5rem;letter-spacing:-.02em}.resources-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem;animation:fadeIn .6s ease-out}.resource-card{background:var(--color-white);border-radius:12px;padding:2rem;box-shadow:var(--shadow-sm);transition:var(--transition);animation:fadeIn .5s ease-out backwards;border:2px solid var(--color-light);display:flex;gap:1.5rem}.resource-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-secondary)}.resource-icon{font-size:3.5rem;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:80px;height:80px;background:var(--color-light);border-radius:12px}.resource-details{flex:1;display:flex;flex-direction:column;gap:.75rem}.resource-title{font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:var(--color-dark);line-height:1.3;margin:0}.resource-description{font-size:.95rem;color:var(--color-dark);opacity:.8;line-height:1.6;margin:0}.resource-meta{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:var(--color-light);border-radius:8px;font-size:.85rem}.resource-filename{color:var(--color-dark);font-weight:600;font-family:monospace;word-break:break-all}.resource-size{color:var(--color-dark);opacity:.6}.resource-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:.5rem}.resource-date{font-size:.85rem;color:var(--color-dark);opacity:.6}.download-button{padding:.75rem 1.5rem;background:var(--color-primary);color:var(--color-white);border:none;border-radius:8px;font-family:var(--font-body);font-size:.95rem;font-weight:700;cursor:pointer;transition:var(--transition);display:flex;align-items:center;gap:.5rem}.download-button:hover:not(:disabled){background:var(--color-accent);transform:translateY(-2px);box-shadow:var(--shadow-md)}.download-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.spinner-small{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.reset-button{margin-top:2rem;padding:1rem 2rem;background:var(--color-primary);color:var(--color-white);border:none;border-radius:8px;font-family:var(--font-body);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition)}.reset-button:hover{background:var(--color-accent);transform:translateY(-2px);box-shadow:var(--shadow-md)}@media (max-width: 1024px){.resource-list-header .header-content h1{font-size:3rem}.resources-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}@media (max-width: 768px){.resource-list-container{padding:0}.resource-list-header{padding:1.5rem 0}.resource-list-header .header-content h1{font-size:2.5rem}.subtitle{font-size:1rem}.search-bar{max-width:100%}.search-bar input{font-size:.95rem;padding:.875rem 2.5rem .875rem 1rem}.resources-grid{grid-template-columns:1fr;gap:1.5rem}.resource-card{flex-direction:column;padding:1.5rem}.resource-icon{width:60px;height:60px;font-size:2.5rem;margin:0 auto}.resource-title{font-size:1.3rem}.resource-description{font-size:.9rem}.resource-meta{padding:.875rem}.resource-footer{flex-direction:column;gap:1rem;align-items:stretch}.download-button{width:100%;justify-content:center}.empty-state{padding:3rem 1.5rem}.empty-state .empty-icon{font-size:4rem}.empty-state h2{font-size:2rem}.empty-state p{font-size:1.1rem}}@media (max-width: 480px){.resource-list-header .header-content h1{font-size:2rem}.subtitle{font-size:.95rem}.search-bar input{font-size:.9rem;padding:.75rem 2.5rem .75rem 1rem}.resources-grid{gap:1.25rem}.resource-card{padding:1.25rem}.resource-icon{width:50px;height:50px;font-size:2rem}.resource-title{font-size:1.2rem}.resource-description{font-size:.85rem}.resource-meta{padding:.75rem;font-size:.8rem}.resource-date{font-size:.8rem}.download-button{padding:.7rem 1.25rem;font-size:.9rem}.empty-state{padding:2.5rem 1rem}.empty-state .empty-icon{font-size:3.5rem}.empty-state h2{font-size:1.75rem}.empty-state p{font-size:1rem}.reset-button{padding:.875rem 1.5rem;font-size:.95rem}}.book-management{animation:fadeIn .6s ease-out}.book-management-header{display:flex;justify-content:flex-end;margin-bottom:2rem}.add-book-button{padding:1rem 2rem;background:var(--color-success);color:#fff;border:none;border-radius:8px;font-family:var(--font-body);font-size:1.05rem;font-weight:700;cursor:pointer;transition:var(--transition)}.add-book-button:hover{background:#3d6449;transform:translateY(-2px);box-shadow:var(--shadow-md)}.books-table-container{background:var(--color-white);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-md);border:2px solid var(--color-light)}.books-table{width:100%;border-collapse:collapse;font-size:.95rem}.books-table thead{background:var(--color-light)}.books-table th{padding:1rem;text-align:left;font-weight:700;color:var(--color-dark);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem}.books-table td{padding:1rem;border-top:1px solid var(--color-light)}.books-table tbody tr{transition:background .2s ease}.books-table tbody tr:hover{background:#d4a5740d}.table-book-cover{width:50px;height:75px;object-fit:cover;border-radius:4px;box-shadow:var(--shadow-sm)}.table-actions{display:flex;gap:.5rem}.edit-btn,.delete-btn{padding:.5rem 1rem;border:none;border-radius:6px;font-family:var(--font-body);font-size:.9rem;font-weight:600;cursor:pointer;transition:var(--transition)}.edit-btn{background:var(--color-accent);color:#fff}.edit-btn:hover:not(:disabled){background:var(--color-primary);transform:translateY(-1px)}.delete-btn{background:transparent;color:var(--color-danger);border:1px solid var(--color-danger)}.edit-btn:disabled,.delete-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.modal-content{background:var(--color-white);border-radius:12px;padding:2rem;max-width:700px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);animation:slideIn .3s ease-out}.book-form{display:flex;flex-direction:column;gap:1.25rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group label{font-size:.9rem;font-weight:600;color:var(--color-dark);letter-spacing:.02em}.form-group input,.form-group textarea{padding:.75rem 1rem;border:2px solid var(--color-light);border-radius:8px;font-family:var(--font-body);font-size:1rem;color:var(--color-dark);transition:var(--transition);background:var(--color-white)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 4px #d4a5741a}.form-group textarea{resize:vertical;min-height:100px}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-light)}.submit-btn:hover{background:#3d6449;transform:translateY(-2px);box-shadow:var(--shadow-md)}@media (max-width: 1024px){.books-table th,.books-table td{padding:.875rem;font-size:.9rem}}@media (max-width: 768px){.book-management{padding:0}.book-management-header{margin-bottom:1.5rem}.add-book-button{width:100%;padding:.875rem 1.5rem;font-size:1rem}.books-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.books-table{min-width:900px}.books-table th,.books-table td{padding:.75rem .5rem;font-size:.85rem}.table-book-cover{width:45px;height:68px}.table-actions{flex-direction:column;gap:.4rem}.edit-btn,.delete-btn{width:100%;padding:.45rem .85rem;font-size:.85rem}.modal-content{padding:1.5rem;max-width:90%}.modal-content h2{font-size:1.75rem}.form-row{grid-template-columns:1fr}.modal-actions{flex-direction:column}.cancel-btn,.submit-btn{width:100%}}@media (max-width: 480px){.add-book-button{font-size:.95rem;padding:.8rem 1.25rem}.books-table{min-width:800px}.books-table th,.books-table td{padding:.65rem .4rem;font-size:.8rem}.table-book-cover{width:40px;height:60px}.edit-btn,.delete-btn{font-size:.8rem;padding:.4rem .75rem}.modal-content{padding:1.25rem}.modal-content h2{font-size:1.5rem;margin-bottom:1.25rem}.book-form{gap:1rem}.form-group label{font-size:.85rem}.form-group input,.form-group textarea{padding:.7rem .85rem;font-size:.95rem}.cancel-btn,.submit-btn{padding:.75rem 1.5rem;font-size:.95rem}}.walk-in-container{animation:fadeIn .6s ease-out}.walk-in-header{margin-bottom:2rem}.walk-in-header h2{font-family:var(--font-display);font-size:2.5rem;font-weight:700;color:var(--color-primary);margin-bottom:.5rem}.walk-in-form{background:var(--color-white);border-radius:12px;padding:2rem;box-shadow:var(--shadow-md);border:2px solid var(--color-light)}.form-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--color-light)}.form-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-section h3{font-family:var(--font-display);font-size:1.5rem;color:var(--color-dark);margin-bottom:1rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h3{margin-bottom:0}.add-user-btn{padding:.6rem 1.2rem;background:var(--color-success);color:#fff;border:none;border-radius:6px;font-family:var(--font-body);font-size:.9rem;font-weight:600;cursor:pointer;transition:var(--transition)}.add-user-btn:hover{background:#3d6449;transform:translateY(-1px)}.user-select,.book-select{width:100%;padding:1rem 1.25rem;border:2px solid var(--color-light);border-radius:8px;font-family:var(--font-body);font-size:1rem;color:var(--color-dark);transition:var(--transition);background:var(--color-white)}.user-select:focus,.book-select:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 4px #d4a5741a}.book-preview{display:flex;gap:1.5rem;margin-top:1.5rem;padding:1.5rem;background:var(--color-light);border-radius:8px}.preview-cover{width:100px;height:150px;object-fit:cover;border-radius:6px;box-shadow:var(--shadow-sm)}.preview-details h4{font-family:var(--font-display);font-size:1.4rem;color:var(--color-dark);margin-bottom:.5rem}.preview-author{font-size:1rem;color:var(--color-dark);opacity:.7;font-style:italic;margin-bottom:.75rem}.preview-info{font-size:.95rem;color:var(--color-dark);opacity:.8}.duration-control{display:flex;align-items:center;gap:1rem}.duration-input{width:120px;padding:.875rem 1rem;border:2px solid var(--color-light);border-radius:8px;font-family:var(--font-body);font-size:1.1rem;color:var(--color-dark);transition:var(--transition);text-align:center;font-weight:600}.duration-label{font-size:1.05rem;color:var(--color-dark);opacity:.7}.submit-borrowing-btn{width:100%;padding:1.25rem;background:var(--color-primary);color:var(--color-white);border:none;border-radius:8px;font-family:var(--font-body);font-size:1.1rem;font-weight:700;cursor:pointer;transition:var(--transition);margin-top:2rem;letter-spacing:.02em;text-transform:uppercase}.submit-borrowing-btn:hover:not(:disabled){background:var(--color-accent);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.submit-borrowing-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.add-user-form{display:flex;flex-direction:column;gap:1.25rem}.add-user-form .form-group{display:flex;flex-direction:column;gap:.5rem}.add-user-form label{font-size:.9rem;font-weight:600;color:var(--color-dark)}.add-user-form .password-input-wrapper{position:relative;display:flex;align-items:center}.add-user-form .password-input-wrapper input{flex:1;padding-right:3rem}.add-user-form .password-toggle{position:absolute;right:.75rem;background:none;border:none;color:var(--color-dark);opacity:.5;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:var(--transition);border-radius:4px}.add-user-form .password-toggle:hover{opacity:.8;background:var(--color-light)}.add-user-form .password-toggle:focus{outline:2px solid var(--color-secondary);opacity:1}.add-user-form input{padding:.875rem 1rem;border:2px solid var(--color-light);border-radius:8px;font-family:var(--font-body);font-size:1rem;color:var(--color-dark);transition:var(--transition)}.add-user-form input:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 4px #d4a5741a}.modal-content{background:var(--color-white);border-radius:12px;padding:2rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);animation:slideIn .3s ease-out}.cancel-btn:hover{background:var(--color-secondary)}.submit-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 1024px){.walk-in-header h2{font-size:2.25rem}.walk-in-form{padding:1.75rem}}@media (max-width: 768px){.walk-in-container{padding:0}.walk-in-header{margin-bottom:1.5rem}.walk-in-header h2{font-size:2rem}.subtitle{font-size:1rem}.walk-in-form{padding:1.5rem}.form-section{margin-bottom:1.5rem;padding-bottom:1.5rem}.section-header{flex-direction:column;align-items:flex-start;gap:.75rem}.add-user-btn{width:100%}.user-select,.book-select{font-size:.95rem;padding:.875rem 1rem}.book-preview{flex-direction:column;padding:1.25rem}.preview-cover{width:90px;height:135px;margin:0 auto}.preview-details{text-align:center}.preview-details h4{font-size:1.25rem}.duration-control{flex-direction:column;align-items:stretch}.duration-input{width:100%;text-align:center}.duration-label{text-align:center}.submit-borrowing-btn{padding:1.125rem;font-size:1.05rem}.modal-content{padding:1.5rem;max-width:90%}.modal-content h2{font-size:1.75rem}.add-user-form{gap:1.125rem}.modal-actions{flex-direction:column}.cancel-btn,.submit-btn{width:100%}}@media (max-width: 480px){.walk-in-header h2{font-size:1.75rem}.subtitle{font-size:.95rem}.walk-in-form{padding:1.25rem}.form-section h3{font-size:1.3rem}.add-user-btn{padding:.55rem 1.1rem;font-size:.85rem}.user-select,.book-select{font-size:.9rem;padding:.75rem .875rem}.book-preview{padding:1rem;gap:1rem}.preview-cover{width:80px;height:120px}.preview-details h4{font-size:1.15rem}.preview-author{font-size:.95rem}.preview-info{font-size:.9rem}.duration-input{padding:.75rem .85rem;font-size:1.05rem}.duration-label{font-size:1rem}.submit-borrowing-btn{padding:1rem;font-size:1rem}.modal-content{padding:1.25rem}.modal-content h2{font-size:1.5rem;margin-bottom:1.25rem}.add-user-form{gap:1rem}.add-user-form label{font-size:.85rem}.add-user-form input{padding:.75rem .85rem;font-size:.95rem}.cancel-btn,.submit-btn{padding:.75rem 1.5rem;font-size:.95rem}}.resource-management{animation:fadeIn .6s ease-out}.resource-management-header{display:flex;justify-content:flex-end;margin-bottom:2rem}.add-resource-button{padding:1rem 2rem;background:var(--color-success);color:#fff;border:none;border-radius:8px;font-family:var(--font-body);font-size:1.05rem;font-weight:700;cursor:pointer;transition:var(--transition)}.add-resource-button:hover{background:#3d6449;transform:translateY(-2px);box-shadow:var(--shadow-md)}.resources-table-container{background:var(--color-white);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-md);border:2px solid var(--color-light)}.resources-table{width:100%;border-collapse:collapse;font-size:.95rem}.resources-table thead{background:var(--color-light)}.resources-table th{padding:1rem;text-align:left;font-weight:700;color:var(--color-dark);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem}.resources-table td{padding:1rem;border-top:1px solid var(--color-light)}.resources-table tbody tr{transition:background .2s ease}.resources-table tbody tr:hover{background:#d4a5740d}.table-resource-info{display:flex;align-items:flex-start;gap:1rem}.resource-icon-small{font-size:2rem;flex-shrink:0}.description-small{font-size:.85rem;color:var(--color-dark);opacity:.6;margin:.25rem 0 0;line-height:1.4}.filename-code{font-family:monospace;font-size:.9rem;background:var(--color-light);padding:.25rem .5rem;border-radius:4px;color:var(--color-dark)}.delete-btn{padding:.5rem 1rem;background:transparent;color:var(--color-danger);border:1px solid var(--color-danger);border-radius:6px;font-family:var(--font-body);font-size:.9rem;font-weight:600;cursor:pointer;transition:var(--transition)}.delete-btn:hover:not(:disabled){background:var(--color-danger);color:#fff}.delete-btn:disabled{opacity:.5;cursor:not-allowed}.upload-form{display:flex;flex-direction:column;gap:1.5rem}.upload-form .form-group{display:flex;flex-direction:column;gap:.5rem}.upload-form label{font-size:.9rem;font-weight:600;color:var(--color-dark)}.upload-form input[type=text],.upload-form textarea{padding:.875rem 1rem;border:2px solid var(--color-light);border-radius:8px;font-family:var(--font-body);font-size:1rem;color:var(--color-dark);transition:var(--transition)}.upload-form input:focus,.upload-form textarea:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 4px #d4a5741a}.upload-form textarea{resize:vertical}.file-input{padding:.75rem;border:2px dashed var(--color-light);border-radius:8px;cursor:pointer;transition:var(--transition);background:var(--color-background)}.file-input:hover{border-color:var(--color-secondary);background:var(--color-light)}.file-preview{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--color-light);border-radius:8px;margin-top:1rem}.file-preview-icon{font-size:2.5rem}.file-preview-info{display:flex;flex-direction:column;gap:.25rem}.file-preview-info strong{font-size:1rem;color:var(--color-dark)}.file-preview-size{font-size:.85rem;color:var(--color-dark);opacity:.6}.upload-note{font-size:.85rem;color:var(--color-dark);opacity:.6;font-style:italic;margin:0;padding:.75rem 1rem;background:var(--color-light);border-radius:6px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#2c181099;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease-out}.modal-content{background:var(--color-white);border-radius:12px;padding:2rem;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-content h2{font-family:var(--font-display);font-size:2rem;color:var(--color-primary);margin-bottom:1.5rem}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--color-light)}.cancel-btn,.submit-btn{padding:.875rem 2rem;border:none;border-radius:8px;font-family:var(--font-body);font-size:1rem;font-weight:700;cursor:pointer;transition:var(--transition)}.cancel-btn{background:var(--color-light);color:var(--color-dark)}.cancel-btn:hover:not(:disabled){background:var(--color-secondary)}.submit-btn{background:var(--color-success);color:#fff}.submit-btn:hover:not(:disabled){background:#3d6449;transform:translateY(-2px);box-shadow:var(--shadow-md)}.submit-btn:disabled,.cancel-btn:disabled{opacity:.5;cursor:not-allowed}.empty-state{text-align:center;padding:3rem 2rem;background:var(--color-white);border-radius:12px;border:2px dashed var(--color-light)}.empty-state .empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.3}.empty-state h3{font-family:var(--font-display);font-size:1.8rem;color:var(--color-primary);margin-bottom:.5rem}.empty-state p{font-size:1.1rem;color:var(--color-dark);opacity:.6}@media (max-width: 1024px){.resources-table th,.resources-table td{padding:.875rem;font-size:.9rem}}@media (max-width: 768px){.resource-management{padding:0}.resource-management-header{margin-bottom:1.5rem}.add-resource-button{width:100%;padding:.875rem 1.5rem;font-size:1rem}.resources-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.resources-table{min-width:800px}.resources-table th,.resources-table td{padding:.75rem .5rem;font-size:.85rem}.table-resource-info{gap:.75rem}.resource-icon-small{font-size:1.75rem}.description-small{font-size:.8rem}.filename-code{font-size:.85rem}.modal-content{padding:1.5rem;max-width:90%}.modal-content h2{font-size:1.75rem}.upload-form{gap:1.25rem}.modal-actions{flex-direction:column}.cancel-btn,.submit-btn{width:100%}.empty-state{padding:2.5rem 1.5rem}.empty-state .empty-icon{font-size:3.5rem}.empty-state h3{font-size:1.6rem}.empty-state p{font-size:1rem}}@media (max-width: 480px){.add-resource-button{font-size:.95rem;padding:.8rem 1.25rem}.resources-table{min-width:700px}.resources-table th,.resources-table td{padding:.65rem .4rem;font-size:.8rem}.resource-icon-small{font-size:1.5rem}.filename-code{font-size:.8rem}.delete-btn{padding:.45rem .85rem;font-size:.85rem}.modal-content{padding:1.25rem}.modal-content h2{font-size:1.5rem}.upload-form label{font-size:.85rem}.upload-form input[type=text],.upload-form textarea{padding:.75rem .85rem;font-size:.95rem}.file-preview{padding:.875rem}.file-preview-icon{font-size:2rem}.file-preview-info strong{font-size:.95rem}.file-preview-size{font-size:.8rem}.upload-note{font-size:.8rem;padding:.65rem .85rem}.cancel-btn,.submit-btn{padding:.75rem 1.5rem;font-size:.95rem}.empty-state{padding:2rem 1rem}.empty-state .empty-icon{font-size:3rem}.empty-state h3{font-size:1.4rem}.empty-state p{font-size:.95rem}}.admin-dashboard-container{animation:fadeIn .6s ease-out}.admin-header{margin-bottom:2rem}.admin-header h1{font-family:var(--font-display);font-size:3.5rem;font-weight:700;color:var(--color-primary);margin-bottom:.5rem;letter-spacing:-.02em}.tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid var(--color-light)}.tab{padding:1rem 2rem;background:none;border:none;font-family:var(--font-body);font-size:1.1rem;color:var(--color-dark);opacity:.6;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.tab:hover{opacity:.8}.tab.active{opacity:1;color:var(--color-primary);border-bottom-color:var(--color-accent);font-weight:600}.tab .badge{background:var(--color-warning);color:#fff;padding:.25rem .6rem;border-radius:12px;font-size:.85rem;font-weight:700;min-width:20px;text-align:center}.admin-section{margin-top:2rem}.borrowing-requests-list{display:flex;flex-direction:column;gap:1.5rem}.request-card{background:var(--color-white);border-radius:12px;padding:2rem;box-shadow:var(--shadow-md);border:2px solid var(--color-light);transition:var(--transition);animation:slideIn .4s ease-out}.request-card:hover{box-shadow:var(--shadow-lg);transform:translate(4px)}.request-book-info{display:flex;gap:1.5rem;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-light)}.request-book-cover{width:100px;height:150px;object-fit:cover;border-radius:8px;box-shadow:var(--shadow-sm)}.request-details{flex:1}.request-book-title{font-family:var(--font-display);font-size:1.8rem;font-weight:700;color:var(--color-dark);margin-bottom:.5rem}.request-book-author{font-size:1.1rem;color:var(--color-dark);opacity:.7;font-style:italic;margin-bottom:1rem}.request-meta{display:flex;flex-wrap:wrap;gap:1rem}.meta-item{font-size:.95rem;color:var(--color-dark);opacity:.7}.request-user-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem;padding:1rem;background:var(--color-light);border-radius:8px}.info-row{display:flex;flex-direction:column;gap:.25rem}.info-label{font-size:.85rem;color:var(--color-dark);opacity:.6;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.info-value{font-size:1rem;color:var(--color-dark);font-weight:600}.duration-selector{padding:1rem;background:var(--color-background);border-radius:8px;margin-bottom:1rem}.duration-selector label{display:block;font-size:.95rem;font-weight:600;color:var(--color-dark);margin-bottom:.5rem}.duration-input-group{display:flex;align-items:center;gap:1rem}.duration-input{flex:1;padding:.75rem 1rem;border:2px solid var(--color-light);border-radius:8px;font-family:var(--font-body);font-size:1rem;color:var(--color-dark);transition:var(--transition);max-width:150px}.duration-input:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 4px #d4a5741a}.duration-help{font-size:.85rem;color:var(--color-dark);opacity:.6;font-style:italic}.request-actions{display:flex;gap:1rem}.approve-button,.reject-button{flex:1;padding:1rem 2rem;border:none;border-radius:8px;font-family:var(--font-body);font-size:1rem;font-weight:700;cursor:pointer;transition:var(--transition);letter-spacing:.02em}.approve-button{background:var(--color-success);color:#fff}.approve-button:hover:not(:disabled){background:#3d6449;transform:translateY(-2px);box-shadow:var(--shadow-md)}.reject-button{background:transparent;color:var(--color-danger);border:2px solid var(--color-danger)}.reject-button:hover:not(:disabled){background:var(--color-danger);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-md)}.approve-button:disabled,.reject-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.borrowings-subsection{margin-bottom:3rem}.subsection-title{font-family:var(--font-display);font-size:1.8rem;color:var(--color-primary);margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:2px solid var(--color-accent)}.history-section{margin-top:3rem;padding-top:2rem;border-top:3px solid var(--color-light)}.history-section .subsection-title{color:var(--color-dark);opacity:.7;border-bottom-color:var(--color-light)}.history-row{opacity:.75}.history-row:hover{opacity:1}.pending-note{font-size:.85rem;color:var(--color-dark);opacity:.6;font-style:italic}.borrowings-table-container{background:var(--color-white);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-md);border:2px solid var(--color-light)}.borrowings-table{width:100%;border-collapse:collapse;font-size:.95rem}.borrowings-table thead{background:var(--color-light)}.borrowings-table th{padding:1rem;text-align:left;font-weight:700;color:var(--color-dark);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem}.borrowings-table td{padding:1rem;border-top:1px solid var(--color-light)}.borrowings-table tbody tr{transition:background .2s ease}.borrowings-table tbody tr:hover{background:#d4a5740d}.table-book-info{display:flex;flex-direction:column;gap:.25rem}.table-book-info strong{color:var(--color-dark)}.book-author-small{font-size:.9rem;color:var(--color-dark);opacity:.6;font-style:italic}.status-badge-small{display:inline-block;padding:.4rem .8rem;border-radius:12px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#fff}.status-badge-small.status-pending{background:var(--color-warning)}.status-badge-small.status-ready{background:var(--color-accent)}.status-badge-small.status-collected{background:var(--color-success)}.status-badge-small.status-returned{background:#6b7280}.status-badge-small.status-rejected{background:var(--color-danger)}.overdue-text{color:var(--color-danger);font-weight:700}.action-btn{padding:.5rem 1rem;border:none;border-radius:6px;font-family:var(--font-body);font-size:.85rem;font-weight:600;cursor:pointer;transition:var(--transition);white-space:nowrap}.collected-btn{background:var(--color-accent);color:#fff}.collected-btn:hover:not(:disabled){background:var(--color-primary)}.returned-btn{background:var(--color-success);color:#fff}.returned-btn:hover:not(:disabled){background:#3d6449}.action-btn:disabled{opacity:.6;cursor:not-allowed}.no-action{color:var(--color-dark);opacity:.3;font-size:1.2rem}.error-message{background:#fee2e2;color:var(--color-danger);padding:1rem 1.5rem;border-radius:8px;margin-bottom:2rem;border:1px solid var(--color-danger);font-weight:500}.empty-state{text-align:center;padding:4rem 2rem}.empty-state .empty-icon{font-size:5rem;margin-bottom:1rem;opacity:.3}.empty-state h2{font-family:var(--font-display);font-size:2.5rem;color:var(--color-primary);margin-bottom:1rem}.empty-state p{font-size:1.2rem;color:var(--color-dark);opacity:.6}@media (max-width: 1024px){.admin-header h1{font-size:3rem}.tabs{gap:.75rem}.tab{padding:1rem 1.5rem;font-size:1rem}.request-card{padding:1.5rem}}@media (max-width: 768px){.admin-dashboard{padding:1.5rem 1rem}.admin-header{padding:1.5rem 0}.admin-header h1{font-size:2.5rem}.admin-header p{font-size:1rem}.tabs{overflow-x:auto;flex-wrap:nowrap;gap:.5rem;padding-bottom:.5rem;-webkit-overflow-scrolling:touch}.tab{font-size:.95rem;padding:.875rem 1.25rem;white-space:nowrap;flex-shrink:0}.subsection-title{font-size:1.6rem}.request-card{padding:1.25rem}.request-book-info{flex-direction:column}.request-book-cover{width:120px;height:180px;margin:0 auto}.request-user-info{grid-template-columns:1fr}.duration-selector{padding:1rem}.duration-input{max-width:120px}.request-actions{flex-direction:column}.approve-button,.reject-button{width:100%}.borrowings-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.borrowings-table{min-width:900px}.borrowings-table th,.borrowings-table td{padding:.75rem;font-size:.9rem}.status-badge-small{font-size:.75rem;padding:.35rem .7rem}.action-btn{padding:.45rem .85rem;font-size:.8rem}}@media (max-width: 480px){.admin-dashboard{padding:1rem .75rem}.admin-header h1{font-size:2rem}.admin-header p{font-size:.95rem}.tabs{gap:.4rem}.tab{font-size:.85rem;padding:.75rem 1rem}.badge{font-size:.7rem;padding:.15rem .4rem}.subsection-title{font-size:1.4rem}.request-card{padding:1rem}.request-book-title{font-size:1.3rem}.request-book-author{font-size:.95rem}.info-label{font-size:.8rem}.info-value,.duration-selector label{font-size:.9rem}.duration-input{padding:.65rem .85rem;font-size:.95rem}.duration-help{font-size:.8rem}.approve-button,.reject-button{padding:.875rem 1.5rem;font-size:.95rem}.borrowings-table{min-width:800px}.borrowings-table th,.borrowings-table td{padding:.65rem .5rem;font-size:.85rem}.table-book-info strong{font-size:.9rem}.book-author-small{font-size:.8rem}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;overflow:hidden}.login-background{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#faf7f2,#f5e6d3);z-index:-1}.bg-pattern{position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(/home-wallpaper.jpg);background-size:cover;background-position:center;background-repeat:no-repeat}.login-card{background:#fffef9;padding:3rem;border-radius:16px;box-shadow:0 8px 32px #2c181026;width:100%;max-width:440px;border:2px solid #D4A574;position:relative;z-index:1}.login-header{text-align:center;margin-bottom:2rem}.login-title{font-family:Cormorant Garamond,serif;font-size:2.5rem;color:#8b4513;margin-bottom:.5rem;font-weight:700}.login-subtitle{font-size:1.1rem;color:var(--color-dark);opacity:.6;font-style:italic;font-weight:300}.quote-author{display:block;margin-top:.5rem;opacity:.6;font-style:italic;font-size:.9em}.login-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:#2c1810;font-weight:600;font-size:.95rem}.form-group input{padding:.875rem 1rem;border:2px solid #D4A574;border-radius:8px;font-size:1rem;font-family:Crimson Pro,serif;background:#fffef9;color:#2c1810;transition:all .3s ease}.form-group input:focus{outline:none;border-color:#8b4513;box-shadow:0 0 0 3px #8b45131a}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{flex:1;padding-right:3rem}.password-toggle{position:absolute;right:1rem;background:none;border:none;color:#8b4513;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:opacity .2s}.password-toggle:hover{opacity:.7}.login-button{background:#8b4513;color:#fffef9;border:none;padding:1rem;border-radius:8px;font-size:1.05rem;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:Crimson Pro,serif;margin-top:.5rem}.login-button:hover:not(:disabled){background:#c17d3a;transform:translateY(-2px);box-shadow:0 4px 12px #8b45134d}.login-button:disabled{opacity:.6;cursor:not-allowed}.error-banner{background:#fef2f2;border:1px solid #B91C1C;color:#b91c1c;padding:.875rem 1rem;border-radius:8px;font-size:.95rem}.login-footer{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-light);text-align:center}.login-footer p{font-size:.9rem;color:var(--color-dark);opacity:.6;font-style:italic}.forgot-password-link{color:#8b4513;text-decoration:none;font-size:.9rem;font-weight:500;transition:color .2s}.forgot-password-link:hover{color:#c17d3a;text-decoration:underline}.success-message,.error-message{text-align:center;padding:2rem 1rem}.success-icon,.error-icon{width:64px;height:64px;margin:0 auto 1.5rem;background:#4a7c59;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700}.error-icon{background:#b91c1c}.success-message h3,.error-message h3{color:#8b4513;font-family:Cormorant Garamond,serif;font-size:1.5rem;margin-bottom:.5rem}.success-message p,.error-message p{color:#2c1810;line-height:1.6;margin:.5rem 0}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center}.loading-spinner{width:50px;height:50px;border:3px solid #F5E6D3;border-top-color:#8b4513;border-radius:50%;animation:spin .8s linear infinite}.loading-state p{margin-top:1rem;color:#2c1810;opacity:.7;font-size:1rem}@media (max-width: 768px){.login-card{padding:2rem;max-width:100%}.login-title{font-size:2rem}}@media (max-width: 480px){.login-container{padding:1rem}.login-card{padding:1.5rem}.login-title{font-size:1.75rem}}:root{--color-primary: #8B4513;--color-secondary: #D4A574;--color-accent: #C17D3A;--color-dark: #2C1810;--color-light: #F5E6D3;--color-white: #FFFEF9;--color-background: #FAF7F2;--color-success: #4A7C59;--color-warning: #D97706;--color-danger: #B91C1C;--font-display: "Cormorant Garamond", serif;--font-body: "Crimson Pro", serif;--shadow-sm: 0 1px 3px rgba(44, 24, 16, .08);--shadow-md: 0 4px 12px rgba(44, 24, 16, .12);--shadow-lg: 0 8px 24px rgba(44, 24, 16, .15);--transition: all .3s cubic-bezier(.4, 0, .2, 1)}body{font-family:var(--font-body);background:var(--color-background);color:var(--color-dark);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{min-height:100vh;display:flex;flex-direction:column}.nav-bar{background:var(--color-white);border-bottom:2px solid var(--color-secondary);padding:1.5rem 2rem;position:sticky;top:0;z-index:100;box-shadow:var(--shadow-sm)}.nav-container{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;position:relative}.hamburger-menu{display:none;flex-direction:column;justify-content:space-around;width:30px;height:25px;background:transparent;border:none;cursor:pointer;padding:0;z-index:101}.hamburger-menu span{width:30px;height:3px;background:var(--color-primary);border-radius:2px;transition:all .3s ease;transform-origin:center}.hamburger-menu span.open:nth-child(1){transform:rotate(45deg) translateY(8px)}.hamburger-menu span.open:nth-child(2){opacity:0}.hamburger-menu span.open:nth-child(3){transform:rotate(-45deg) translateY(-8px)}.nav-brand{font-family:var(--font-display);font-size:2rem;font-weight:700;color:var(--color-primary);text-decoration:none;letter-spacing:.02em;transition:var(--transition);display:flex;align-items:center;gap:1rem}.nav-logo{width:60px;height:60px;border-radius:50%;object-fit:cover;border:3px solid var(--color-secondary);box-shadow:var(--shadow-sm);transition:var(--transition)}.nav-title{font-size:2.5rem;font-weight:700}.nav-brand:hover .nav-logo{border-color:var(--color-accent);transform:scale(1.05)}.nav-brand:hover{color:var(--color-accent)}.nav-links{display:flex;gap:2rem;align-items:center}.nav-link{font-family:var(--font-body);font-size:1.05rem;color:var(--color-dark);text-decoration:none;padding:.5rem 1rem;border-radius:4px;transition:var(--transition);position:relative}.nav-link:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:0;height:2px;background:var(--color-accent);transition:width .3s ease}.nav-link:hover:after,.nav-link.active:after{width:80%}.nav-link:hover{color:var(--color-accent)}.nav-link.active{color:var(--color-primary);font-weight:600}.user-info{display:flex;align-items:center;gap:1rem;padding:.5rem 1rem;background:var(--color-light);border-radius:50px}.user-name{font-size:.95rem;color:var(--color-dark);font-weight:500;display:flex;align-items:center;gap:.5rem}.admin-badge{background:var(--color-accent);color:var(--color-white);padding:.2rem .6rem;border-radius:12px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.admin-link{color:var(--color-accent)!important;font-weight:600}.admin-link:after{background:var(--color-accent)!important}.logout-button{background:var(--color-primary);color:var(--color-white);border:none;padding:.5rem 1.25rem;border-radius:50px;font-family:var(--font-body);font-size:.95rem;cursor:pointer;transition:var(--transition);font-weight:500}.logout-button:hover{background:var(--color-accent);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.main-content{flex:1;max-width:1400px;width:100%;margin:0 auto;padding:2rem}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.loading-spinner{width:50px;height:50px;border:3px solid var(--color-light);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-state p,.empty-state p{margin-top:1rem;color:var(--color-dark);opacity:.7;font-size:1.1rem}.empty-state h2{font-family:var(--font-display);font-size:2rem;color:var(--color-primary);margin-top:1rem}.empty-icon{font-size:4rem;opacity:.5}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@media (max-width: 1024px){.nav-container{padding:1rem 1.5rem}.nav-links{gap:1.5rem}.main-content{padding:2rem 1.5rem}}@media (max-width: 768px){.nav-bar{padding:1rem}.nav-container{flex-direction:row;padding:0;gap:0;align-items:center}.hamburger-menu{display:flex}.nav-brand{font-size:1.75rem}.nav-logo{width:50px;height:50px}.nav-title{font-size:1.75rem}.nav-links{position:absolute;top:100%;left:0;right:0;background:var(--color-white);flex-direction:column;gap:.5rem;width:100%;padding:1rem;box-shadow:var(--shadow-md);max-height:0;overflow:hidden;opacity:0;transition:all .3s ease}.nav-links.open{max-height:500px;opacity:1;padding:1rem}.nav-link{font-size:.95rem;padding:.75rem 1rem;background:var(--color-light);border-radius:8px;text-align:center;width:100%}.nav-link:after{display:none}.nav-link:hover{background:var(--color-secondary)}.nav-link.admin-link{background:#d4a57433}.user-info{width:100%;justify-content:space-between;padding:.75rem 1rem}.user-name{font-size:.9rem}.logout-button{padding:.6rem 1.2rem}.main-content{padding:1.5rem 1rem}}@media (max-width: 480px){.nav-brand{font-size:1.5rem}.nav-logo{width:45px;height:45px}.nav-title{font-size:1.5rem}.nav-link{font-size:.9rem;padding:.7rem}.user-info{flex-direction:column;gap:.75rem;padding:1rem}.logout-button{width:100%}.main-content{padding:1rem .75rem}}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;font-family:Crimson Pro,serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}
