@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap";:root{--primary-bg: #2f3542;--secondary-bg: #3d4451;--accent-color: #5c9ce6;--accent-hover: #4a89d1;--text-primary: #ffffff;--text-secondary: #dcdde1;--error-color: #e74c3c;--success-color: #2ecc71;--warning-color: #f1c40f;--delete-color: #e74c3c;--delete-hover: #c0392b;--border-color: #535a6b;--input-bg: #454d5e;--header-bg: #2a3440;--checkbox-bg: #2f3542;--checkbox-border: #535a6b;--checkbox-checked-bg: #5c9ce6}body{background-color:var(--primary-bg);color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;margin:0;padding:0;min-height:100vh}h1{color:var(--text-primary);text-align:center;font-size:2rem;margin:2rem 0;line-height:1.4}.centered-data-container{width:600px;max-width:90%;margin:2rem auto;padding:2rem 1.5rem;background-color:var(--secondary-bg);border-radius:8px;overflow-x:auto;box-shadow:0 4px 6px #0000001a;position:relative;text-align:left}.settings-container{display:flex;flex-direction:column;align-items:flex-start;width:100%;max-width:600px;margin:0 auto;margin-top:2rem}.left-aligned-h1{color:var(--text-primary);text-align:left;font-size:2rem;margin:0 0 1rem;line-height:1.4;padding-left:1.5rem;position:relative;display:inline-block}.left-aligned-h1:after{content:"";display:block;width:110%;border-top:2px solid var(--accent-color);margin-top:.5rem;margin-left:-5%}a{color:var(--text-primary);text-decoration:none;transition:color .3s ease;font-size:.9rem}a:hover{color:var(--accent-color)}form{max-width:400px;margin:0 auto;padding:2rem 2.5rem;background-color:var(--secondary-bg);border-radius:8px;box-shadow:0 4px 6px #0000004d}label{display:block;margin-bottom:.5rem;color:var(--text-secondary);font-size:.9rem}.input-text-email,.input-text-password,.search-input,.form-group input,.form-group select{background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);transition:border-color .3s ease}.input-standalone{background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);width:75px;height:1.25rem;padding:.25rem .5rem;margin:5px 10px 5px 5px;font-size:.9rem;transition:border-color .3s ease}.input-standalone:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #5c9ce633}.select-standalone{background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);width:50px;height:1.75rem;padding:.25rem .5rem;margin:5px 10px 5px 5px;font-size:.9rem;transition:border-color .3s ease}.select-standalone:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #5c9ce633}.save-button-standalone{background-color:var(--accent-color);color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .3s ease;padding:.75rem 1.5rem;margin:0 0 0 75px}.save-button-standalone:hover{background-color:var(--accent-hover)}.save-button-standalone:disabled{background-color:var(--border-color);cursor:not-allowed;opacity:.7}.input-standalone.incorrect,.select-standalone.incorrect{border-color:var(--error-color);box-shadow:0 0 0 2px #e74c3c33}.input-standalone.incorrect:focus,.select-standalone.incorrect:focus{border-color:var(--error-color);box-shadow:0 0 0 2px #e74c3c66}.input-text-email,.input-text-password{width:calc(100% - 1.5rem);padding:.75rem;margin-bottom:1.5rem;font-size:1rem}.input-text-email:focus,.input-text-password:focus,.search-input:focus,.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #5c9ce633}.input-button-login,.modal-actions button.save-button{background-color:var(--accent-color);color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .3s ease}.input-button-login:hover:not(:disabled),.modal-actions button.save-button:hover{background-color:var(--accent-hover)}.input-button-login{width:100%;padding:.75rem}.input-button-login:disabled{background-color:var(--border-color);cursor:not-allowed;opacity:.7}.login-error-message,.welcome-message{text-align:center;margin:1rem 0;line-height:1.4}.login-error-message{color:var(--error-color);font-size:.9rem}.welcome-message{color:var(--text-primary);font-size:1.25rem;margin:2rem 0}.new-member-book-container{display:flex;justify-content:center;margin:2rem auto;max-width:90%}.new-member-book-button{background-color:var(--accent-color);color:var(--text-primary);border:none;border-radius:4px;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;cursor:pointer;transition:background-color .3s ease;box-shadow:0 2px 4px #0000001a}.new-member-book-button:hover{background-color:var(--accent-hover)}.header{background-color:var(--secondary-bg);border-bottom:1px solid var(--border-color)}.header-container{max-width:1536px;margin:0 auto;padding:.75rem 1rem;display:flex;align-items:center;justify-content:space-between}.search-container{flex:1;max-width:28rem;position:relative;display:flex;align-items:center}.search-input{width:100%;padding:.5rem 1rem .5rem 2.5rem;font-size:1rem}.search-input::placeholder{color:var(--text-secondary)}.search-icon{position:absolute;left:.75rem;color:var(--text-secondary);width:1rem;height:1rem}.nav-container{display:flex;align-items:center;gap:1.5rem;margin-left:1.5rem}.nav-link{color:var(--text-primary);text-decoration:none;transition:color .3s ease}.nav-link:hover{color:var(--accent-color)}.signout-prompt{text-align:center;margin:.25rem 0 0;color:var(--text-secondary);font-size:.875rem}.signout-link{cursor:pointer;color:var(--accent-color);text-decoration:underline}.signout-link:hover{color:var(--accent-hover)}.data-container{position:relative;max-width:90%;margin:2rem auto;padding:2rem 1.5rem;background-color:var(--secondary-bg);border-radius:8px;overflow-x:auto;box-shadow:0 4px 6px #0000001a}.data-table{width:100%;border-collapse:separate;border-spacing:0;min-width:1200px;table-layout:auto}.data-table th,.data-table td{white-space:nowrap;padding:.75rem 1rem;text-align:left}.data-table th{background-color:var(--header-bg);color:var(--text-primary);font-weight:500;font-size:1rem;position:sticky;top:0;z-index:10;border-bottom:1px solid var(--border-color)}.table-row{transition:background-color .2s ease}.table-row:nth-child(odd){background-color:#2f354299}.table-row:nth-child(2n){background-color:#3d445199}.table-row:hover{background-color:var(--input-bg)}.table-row td{color:var(--text-secondary);border-bottom:1px solid var(--border-color);font-size:.9rem}.status-cell{position:relative}.status-cell:hover:after{content:attr(data-tooltip);position:absolute;left:50%;transform:translate(-50%);bottom:100%;padding:.5rem;background-color:var(--secondary-bg);color:var(--text-primary);border-radius:4px;font-size:.875rem;white-space:nowrap;box-shadow:0 2px 4px #0003;z-index:20}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:var(--secondary-bg);border-radius:8px;width:90%;max-width:500px;box-shadow:0 4px 6px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--border-color)}.modal-title{color:var(--text-primary);font-size:1.25rem;margin:0}.modal-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.5rem;padding:.5rem}.modal-close:hover{color:var(--text-primary)}.modal-form{display:flex;flex-direction:column;gap:.75rem;padding:2rem;margin-bottom:1rem;margin-top:1rem}.form-group{margin-bottom:0}.form-group label{display:block;margin-bottom:.25rem;color:var(--text-secondary);font-size:.85rem}.form-group input,.form-group select{width:100%;padding:.25rem .5rem;font-size:.9rem;height:2rem;background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary)}.form-group input:disabled{background-color:var(--secondary-bg);cursor:not-allowed;opacity:.7}.form-group fieldset{border:1px solid var(--border-color);border-radius:4px;padding:.5rem;margin:0;background-color:var(--input-bg)}.form-group fieldset legend{font-size:.85rem;padding:0 .25rem}.form-group fieldset .genre-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.form-group fieldset .genre-item{display:flex;align-items:center;font-size:.85rem;white-space:nowrap}.form-group fieldset input[type=checkbox]{height:1rem;width:1rem;margin-right:.35rem;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-color:var(--checkbox-bg);border:2px solid var(--checkbox-border);border-radius:4px;cursor:pointer;position:relative;transition:all .2s ease}.form-group fieldset input[type=checkbox]:checked{background-color:var(--checkbox-checked-bg);border-color:var(--checkbox-checked-bg)}.form-group fieldset input[type=checkbox]:checked:after{content:"✓";position:absolute;color:#fff;font-size:.75rem;top:50%;left:50%;transform:translate(-50%,-50%)}.form-group fieldset input[type=checkbox]:hover{border-color:var(--accent-color)}.form-group fieldset input[type=checkbox]:focus{outline:none;box-shadow:0 0 0 2px #5c9ce633}.modal-actions{display:flex;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;border-top:1px solid var(--border-color);background-color:var(--secondary-bg);border-radius:0 0 8px 8px}.modal-actions button{padding:.375rem .75rem;border:none;border-radius:4px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background-color .3s ease}.modal-actions button[type=button]{background-color:var(--input-bg);color:var(--text-secondary)}.modal-actions button[type=button]:hover{background-color:var(--border-color);color:var(--text-primary)}.modal-actions button.save-button{background-color:var(--accent-color);color:#fff}.modal-actions button.save-button:hover{background-color:var(--accent-hover)}.modal-actions button.delete-button{background-color:var(--delete-color);color:#fff;padding:.375rem .75rem;border:none;border-radius:4px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background-color .3s ease}.modal-actions button.delete-button:hover{background-color:var(--delete-hover)}.alert-container{position:fixed;top:1rem;left:50%;transform:translate(-50%);z-index:2000;min-width:300px;max-width:500px;animation:slideDown .3s ease-out forwards}.alert{background-color:var(--accent-color);color:var(--text-primary);padding:1rem 1.5rem;border-radius:6px;box-shadow:0 4px 6px #0003;text-align:center;border-left:4px solid var(--accent-color)}.alert-success{border-left-color:var(--success-color)}.alert-warning{border-left-color:var(--warning-color)}.alert-error{border-left-color:var(--error-color)}.alert-exit{animation:slideUp .3s ease-in forwards}@keyframes slideDown{0%{transform:translate(-50%,-100%);opacity:0}to{transform:translate(-50%);opacity:1}}@keyframes slideUp{0%{transform:translate(-50%);opacity:1}to{transform:translate(-50%,-100%);opacity:0}}@media (max-width: 1024px){.data-container{margin:1rem}}@media (max-width: 768px){.modal-form{grid-template-columns:1fr}.modal-form .form-group:nth-child(1),.modal-form .form-group:nth-child(2),.form-group fieldset{grid-column:1}.form-group fieldset .genre-grid{grid-template-columns:repeat(2,1fr)}.data-container{margin:.5rem;padding:.25rem}.data-table th,.data-table td{padding:.75rem .5rem;font-size:.9rem}}@media (max-width: 480px){.modal-content{padding:.5rem}.form-group fieldset .genre-grid{grid-template-columns:1fr}.form-group fieldset{padding:.375rem}form{margin:1rem;padding:1.5rem}.h1-login{font-size:1.75rem;margin:1.5rem 0}.data-container{margin:.25rem;padding:.125rem}}
