.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:.75rem;width:100%;max-width:400px;display:flex;position:fixed;top:1rem;right:1rem}.toast{pointer-events:auto;background:#fff;border-left:4px solid;border-radius:8px;align-items:center;gap:.75rem;padding:1rem 1.25rem;animation:.3s ease-out slideIn;display:flex;box-shadow:0 4px 12px #00000026}@keyframes slideIn{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.toast-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:1.25rem;font-weight:700;display:flex}.toast-message{color:#2d3748;flex:1;font-size:.9375rem;line-height:1.5}.toast-close{cursor:pointer;color:#718096;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:1.5rem;line-height:1;transition:color .2s;display:flex}.toast-close:hover{color:#2d3748}.toast-success{border-left-color:#48bb78}.toast-success .toast-icon{color:#48bb78;background:#f0fff4}.toast-error{border-left-color:#f56565}.toast-error .toast-icon{color:#f56565;background:#fff5f5}.toast-warning{border-left-color:#ed8936}.toast-warning .toast-icon{color:#ed8936;background:#fffaf0}.toast-info{border-left-color:#4299e1}.toast-info .toast-icon{color:#4299e1;background:#ebf8ff}@media (width<=640px){.toast-container{max-width:none;inset:auto 1rem 1rem}.toast{padding:.875rem 1rem}.toast-message{font-size:.875rem}}.spinner-overlay{z-index:9998;background:#ffffffe6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.spinner-wrapper{flex-direction:column;align-items:center;gap:1rem;display:flex}.spinner-wrapper.spinner-fullscreen{padding:2rem}.spinner{display:inline-block;position:relative}.spinner-small{width:24px;height:24px}.spinner-medium{width:40px;height:40px}.spinner-large{width:64px;height:64px}.spinner-circle{box-sizing:border-box;border:3px solid #0000;border-top-color:#667eea;border-radius:50%;width:100%;height:100%;animation:1.2s cubic-bezier(.5,0,.5,1) infinite spinner-rotate;display:block;position:absolute}.spinner-small .spinner-circle{border-width:2px}.spinner-large .spinner-circle{border-width:4px}.spinner-circle:first-child{animation-delay:-.45s}.spinner-circle:nth-child(2){animation-delay:-.3s}.spinner-circle:nth-child(3){animation-delay:-.15s}@keyframes spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner-message{color:#4a5568;text-align:center;margin:0;font-size:1rem;font-weight:500}.spinner-inline{align-items:center;gap:.5rem;display:inline-flex}.spinner-inline .spinner{vertical-align:middle}.spinner-inline .spinner-message{font-size:.875rem;display:inline}@media (prefers-color-scheme:dark){.spinner-overlay{background:#1a1a1af2}.spinner-message{color:#ffffffde}.spinner-circle{border-color:#93c5fd #0000 #0000}}.profile-editor-overlay{z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0;overflow-y:auto}.profile-editor-modal{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:800px;max-height:90vh;animation:.3s ease-out slideIn;display:flex;box-shadow:0 8px 32px #0000004d}.profile-editor-header{border-bottom:1px solid #e2e8f0;flex-shrink:0;justify-content:space-between;align-items:center;padding:2rem;display:flex}.profile-editor-header h1{color:#213547;margin:0;font-size:1.75rem}.profile-editor-content{flex:1;padding:2rem;overflow-y:auto}.profile-section{border-bottom:1px solid #e2e8f0;margin-bottom:2rem;padding-bottom:2rem}.profile-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.profile-section h2{color:#213547;margin-bottom:1rem;font-size:1.25rem}.section-description{color:#6c757d;margin-bottom:1rem;font-size:.875rem}.form-input.disabled{color:#6c757d;cursor:not-allowed;background-color:#f8f9fa}.form-help.security-note{color:#dc3545;font-weight:500}.link-group{background:#f8f9fa;border-radius:8px;margin-bottom:1rem;padding:1rem;position:relative}.link-group .form-group{margin-bottom:.75rem}.link-group .form-group:last-child{margin-bottom:0}.btn-remove-link{color:#fff;cursor:pointer;background:#dc3545;border:none;border-radius:6px;margin-top:.5rem;padding:.5rem 1rem;font-size:.875rem;transition:background-color .2s}.btn-remove-link:hover{background:#c82333}.tag-input-group{align-items:flex-start;gap:.5rem;width:100%;display:flex}.tag-input-wrapper{flex:1;min-width:0;position:relative}.tag-input-group .form-input{width:100%}.tag-input-group .btn-secondary{white-space:nowrap;flex-shrink:0;min-width:fit-content;max-width:120px}.profile-actions{background:#f8f9fa;border-top:1px solid #e2e8f0;flex-shrink:0;justify-content:flex-end;gap:1rem;padding:1.5rem 2rem;display:flex}.error-message{text-align:center;color:#dc3545;padding:2rem;font-size:1.1rem}@media (width<=768px){.profile-editor-overlay{padding:0}.profile-editor-modal{border-radius:0;max-height:100vh}.profile-editor-header,.profile-editor-content,.profile-actions{padding:1.5rem}.form-row{grid-template-columns:1fr}.profile-actions{flex-direction:column-reverse}.profile-actions button{width:100%}.tag-input-group{flex-direction:column;gap:.75rem}.tag-input-wrapper{min-width:auto}.tag-input-group button{width:100%}}@media (prefers-color-scheme:dark){.profile-editor-modal{background:#2a2a2a}.profile-editor-header{border-bottom-color:#3a3a3a}.profile-editor-header h1{color:#ffffffde}.close-button{color:#fff9}.close-button:hover{color:#ffffffde;background:#3a3a3a}.profile-section{border-bottom-color:#3a3a3a}.profile-section h2,.form-group label{color:#ffffffde}.form-input{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.form-input.disabled{color:#ffffff80;background:#2a2a2a}.form-help.security-note{color:#ff6b6b}.link-group{background:#1e1e1e}.profile-actions{background:#1e1e1e;border-top-color:#3a3a3a}.tag-suggestions-dropdown{background:#2a2a2a;border-color:#3a3a3a}.tag-suggestion-item{color:#ffffffde;border-bottom-color:#3a3a3a}.tag-suggestion-item:hover,.tag-suggestion-item.selected{color:#646cff;background:#3a3a3a}}.checkbox-group{margin-top:1rem}.checkbox-label{cursor:pointer;color:#2d3748;align-items:flex-start;gap:.75rem;font-size:.9375rem;display:flex}.checkbox-input{cursor:pointer;flex-shrink:0;width:20px;height:20px;margin-top:.125rem}.checkbox-label span{flex:1}.photo-upload-section{flex-direction:column;gap:1rem;display:flex}.current-photo{align-items:center;gap:1rem;display:flex}.profile-photo-preview{object-fit:cover;border:2px solid #e2e8f0;border-radius:50%;width:80px;height:80px}.no-photo{align-items:center;gap:1rem;display:flex}.photo-placeholder{color:#6c757d;background:#f8f9fa;border:2px dashed #dee2e6;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;font-size:.75rem;display:flex}.photo-upload-controls{flex-direction:column;gap:.5rem;display:flex}.photo-input{display:none}.photo-input+label{cursor:pointer;text-align:center;background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;max-width:150px;padding:.5rem 1rem;font-size:.875rem;transition:all .2s;display:inline-block}.photo-input+label:hover:not(.disabled){background:#e9ecef;border-color:#adb5bd}.photo-input+label.disabled{opacity:.6;cursor:not-allowed}.btn-remove-photo{color:#fff;cursor:pointer;background:#dc3545;border:none;border-radius:6px;max-width:150px;padding:.5rem 1rem;font-size:.875rem;transition:background-color .2s}.btn-remove-photo:hover:not(:disabled){background:#c82333}.btn-remove-photo:disabled{opacity:.6;cursor:not-allowed}@media (prefers-color-scheme:dark){.photo-placeholder{color:#fff9;background:#1e1e1e;border-color:#3a3a3a}.profile-photo-preview{border-color:#3a3a3a}.photo-input+label{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.photo-input+label:hover:not(.disabled){background:#2a2a2a;border-color:#4a4a4a}}.password-change-section{background:#f8f9fa;border-radius:8px;flex-direction:column;gap:1rem;margin-top:1rem;padding:1.5rem;display:flex}.password-actions button{flex:1}@media (width<=768px){.password-actions{flex-direction:column}.password-actions button{width:100%}}@media (prefers-color-scheme:dark){.password-change-section{background:#1e1e1e}}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-top:1rem;display:grid}.stat-card{text-align:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px;padding:1.5rem;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 6px #0000001a}.stat-card-author{background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%)}@media (prefers-color-scheme:dark){.stat-card{background:linear-gradient(135deg,#4a5568 0%,#2d3748 100%)}.stat-card-author{background:linear-gradient(135deg,#805ad5 0%,#d53f8c 100%)}}.passkey-manager{background:var(--surface-color,#fff);border:1px solid var(--border-color,#e0e0e0);border-radius:8px;padding:1.5rem}@media (prefers-color-scheme:dark){.passkey-manager{background:#2a2a2a;border-color:#3a3a3a}}.passkey-manager h3{color:var(--text-primary,#1a1a1a);margin:0 0 1.5rem;font-size:1.25rem}@media (prefers-color-scheme:dark){.passkey-manager h3{color:#ffffffde}}.passkey-empty{text-align:center;color:var(--text-secondary,#666);padding:2rem}@media (prefers-color-scheme:dark){.passkey-empty{color:#fff9}}.passkey-empty p{margin:.5rem 0}.passkey-empty-hint{color:var(--text-tertiary,#999);font-size:.875rem}@media (prefers-color-scheme:dark){.passkey-empty-hint{color:#fff6}}.passkey-list{flex-direction:column;gap:1rem;display:flex}.passkey-item{background:var(--background-secondary,#f5f5f5);border:1px solid var(--border-color,#e0e0e0);border-radius:6px;justify-content:space-between;align-items:center;padding:1rem;transition:background-color .2s;display:flex}@media (prefers-color-scheme:dark){.passkey-item{background:#1a1a1a;border-color:#3a3a3a}}.passkey-item:hover{background:var(--background-hover,#eee)}@media (prefers-color-scheme:dark){.passkey-item:hover{background:#2a2a2a}}.passkey-info{flex:1;min-width:0}.passkey-name{color:var(--text-primary,#1a1a1a);margin-bottom:.5rem;font-size:1rem;font-weight:500}@media (prefers-color-scheme:dark){.passkey-name{color:#ffffffde}}.passkey-details{color:var(--text-secondary,#666);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.875rem;display:flex}@media (prefers-color-scheme:dark){.passkey-details{color:#fff9}}.passkey-type{font-weight:500}.passkey-separator{color:var(--text-tertiary,#999)}@media (prefers-color-scheme:dark){.passkey-separator{color:#fff6}}.passkey-created,.passkey-last-used{white-space:nowrap}.passkey-edit-form{align-items:center;gap:.5rem;display:flex}.passkey-name-input{border:1px solid var(--border-color,#e0e0e0);color:#1a1a1a;background:#fff;border-radius:4px;flex:1;padding:.5rem;font-size:1rem}@media (prefers-color-scheme:dark){.passkey-name-input{color:#ffffffde;background:#1a1a1a;border-color:#3a3a3a}}.passkey-name-input:focus{border-color:var(--primary-color,#007bff);outline:none}.passkey-edit-actions{gap:.25rem;display:flex}.btn-save,.btn-cancel{cursor:pointer;border:none;border-radius:4px;padding:.5rem .75rem;font-size:1rem;transition:background-color .2s}.btn-save{background:var(--success-color,#28a745);color:#fff}.btn-save:hover{background:var(--success-hover,#218838)}.btn-cancel{background:var(--secondary-color,#6c757d);color:#fff}.btn-cancel:hover{background:var(--secondary-hover,#5a6268)}.passkey-actions{flex-shrink:0;gap:.5rem;display:flex}.btn-secondary{background:var(--secondary-color,#6c757d);color:#fff;cursor:pointer;border:none;border-radius:4px;transition:background-color .2s}.btn-danger{background:var(--danger-color,#dc3545);color:#fff;cursor:pointer;border:none;border-radius:4px;transition:background-color .2s}.btn-danger:hover{background:var(--danger-hover,#c82333)}@media (width<=768px){.passkey-item{flex-direction:column;align-items:flex-start;gap:1rem}.passkey-actions{justify-content:flex-end;width:100%}.passkey-details{flex-direction:column;align-items:flex-start;gap:.25rem}.passkey-separator{display:none}}.passkey-setup{position:relative}.passkey-setup-content{background:var(--surface-color,#fff);border:1px solid var(--border-color,#e0e0e0);border-radius:8px;padding:1.5rem}@media (prefers-color-scheme:dark){.passkey-setup-content{background:#2a2a2a;border-color:#3a3a3a}}.passkey-setup-content h3{color:var(--text-primary,#1a1a1a);margin:0 0 1rem;font-size:1.25rem}@media (prefers-color-scheme:dark){.passkey-setup-content h3{color:#ffffffde}}.passkey-info{color:var(--text-secondary,#666);margin:0 0 1.5rem;line-height:1.6}@media (prefers-color-scheme:dark){.passkey-info{color:#fff9}}.passkey-instructions{background:var(--background-secondary,#f5f5f5);border-radius:6px;margin:0 0 1.5rem;padding:1rem}@media (prefers-color-scheme:dark){.passkey-instructions{background:#1a1a1a}}.passkey-instructions h4{color:var(--text-primary,#1a1a1a);margin:0 0 .75rem;font-size:1rem}@media (prefers-color-scheme:dark){.passkey-instructions h4{color:#ffffffde}}.passkey-instructions ol{margin:0;padding-left:1.5rem}.passkey-instructions li{color:var(--text-secondary,#666);margin:.5rem 0;line-height:1.5}@media (prefers-color-scheme:dark){.passkey-instructions li{color:#fff9}}.passkey-actions{gap:.75rem;margin-top:1.5rem;display:flex}.passkey-actions button{flex:1}.form-group label{color:var(--text-primary,#1a1a1a);margin-bottom:.5rem;font-weight:500;display:block}@media (prefers-color-scheme:dark){.form-group label{color:#ffffffde}}.form-input{border:1px solid var(--border-color,#e0e0e0);color:#1a1a1a;background:#fff;border-radius:6px;width:100%;padding:.75rem;font-size:1rem;transition:border-color .2s}@media (prefers-color-scheme:dark){.form-input{color:#ffffffde;background:#1a1a1a;border-color:#3a3a3a}}.form-input:focus{border-color:var(--primary-color,#007bff);outline:none}.form-input:disabled{background-color:var(--background-disabled,#f5f5f5);cursor:not-allowed}@media (prefers-color-scheme:dark){.form-input:disabled{background-color:#0a0a0a}}@media (prefers-color-scheme:dark){.form-help{color:#fff6}}.security-modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.security-modal{background:#fff;border-radius:8px;flex-direction:column;width:100%;max-width:600px;max-height:90vh;display:flex;box-shadow:0 4px 6px #0000001a}.security-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:24px;display:flex}.security-modal-header h1{color:#111827;margin:0;font-size:24px;font-weight:600}.security-modal-content{flex:1;padding:24px;overflow-y:auto}.security-section{margin-bottom:32px}.security-section:last-child{margin-bottom:0}.security-section h2{color:#111827;margin:0 0 16px;font-size:18px;font-weight:600}.section-description{color:#6b7280;margin:0 0 16px;font-size:14px;line-height:1.5}.password-change-section{margin-top:16px}.form-input{border:1px solid #d1d5db;border-radius:6px;width:100%;padding:10px 12px;font-size:14px;transition:border-color .2s}.form-input:disabled{cursor:not-allowed;background-color:#f3f4f6}.password-actions{gap:12px;margin-top:16px;display:flex}.passkey-section{margin-top:16px}.passkey-divider{background:#e5e7eb;height:1px;margin:24px 0}.security-modal-actions{border-top:1px solid #e5e7eb;justify-content:flex-end;padding:16px 24px;display:flex}.btn-secondary{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}@media (width<=640px){.security-modal{border-radius:0;max-width:100%;max-height:100vh}.security-modal-header,.security-modal-content,.security-modal-actions{padding:16px}.password-actions{flex-direction:column}.password-actions button{width:100%}}.plan-selector{flex-direction:column;align-items:center;gap:2rem;width:100%;padding:2rem 1rem;display:flex}.plan-selector-title{color:#213547;text-align:center;margin:0;font-size:1.5rem;font-weight:700}.billing-toggle{background:#f1f3f5;border-radius:8px;align-items:center;gap:.75rem;padding:.25rem;display:flex}.billing-toggle-btn{color:#6c757d;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.5rem 1.25rem;font-size:.875rem;font-weight:500;transition:background-color .2s,color .2s}.billing-toggle-btn.is-active{color:#213547;background:#fff;font-weight:600;box-shadow:0 1px 3px #0000001a}.tier-cards{grid-template-columns:repeat(3,1fr);gap:1.5rem;width:100%;max-width:900px;display:grid}.tier-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;flex-direction:column;padding:1.5rem;transition:border-color .2s,box-shadow .2s;display:flex}.tier-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26}.tier-card.is-selected{border-color:#667eea;box-shadow:0 4px 16px #667eea40}.tier-card-header{flex-direction:column;gap:.25rem;margin-bottom:1rem;display:flex}.tier-card-name{color:#213547;margin:0;font-size:1.25rem;font-weight:700}.tier-card-description{color:#6c757d;margin:0;font-size:.8125rem}.tier-card-price{align-items:baseline;gap:.25rem;margin-bottom:1rem;display:flex}.tier-card-amount{color:#213547;font-size:2rem;font-weight:700}.tier-card-frequency{color:#6c757d;font-size:.875rem}.trial-badge{color:#06c;background:#e7f3ff;border-radius:20px;align-self:flex-start;margin-bottom:1rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-block}.tier-card-select-btn{color:#fff;cursor:pointer;background:#667eea;border:none;border-radius:8px;width:100%;margin-top:auto;padding:.75rem;font-size:.9375rem;font-weight:600;transition:background-color .2s}.tier-card-select-btn:hover{background:#5a67d8}.tier-card-select-btn:disabled{cursor:not-allowed;background:#a0aec0}.payment-form{flex-direction:column;gap:1.5rem;width:100%;max-width:480px;display:flex}.payment-form-header{justify-content:space-between;align-items:center;display:flex}.payment-form-title{color:#213547;margin:0;font-size:1.125rem;font-weight:600}.payment-form-back-btn{color:#667eea;cursor:pointer;background:0 0;border:none;font-size:.875rem;font-weight:500}.payment-form-back-btn:hover{text-decoration:underline}.card-element-wrapper{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:.75rem;transition:border-color .2s}.card-element-wrapper:focus-within{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.payment-submit-btn{color:#fff;cursor:pointer;background:#667eea;border:none;border-radius:8px;width:100%;padding:.875rem;font-size:1rem;font-weight:600;transition:background-color .2s}.payment-submit-btn:hover{background:#5a67d8}.payment-submit-btn:disabled{cursor:not-allowed;background:#a0aec0}.plan-selector-error{color:#c53030;text-align:center;background:#fff5f5;border:1px solid #feb2b2;border-radius:8px;padding:.75rem 1rem;font-size:.875rem}.plan-selector-loading{color:#6c757d;justify-content:center;align-items:center;padding:3rem;font-size:1rem;display:flex}@media (width<=768px){.tier-cards{grid-template-columns:1fr;max-width:400px}.plan-selector-title{font-size:1.25rem}}@media (prefers-color-scheme:dark){.plan-selector-title{color:#ffffffde}.billing-toggle{background:#2a2a2a}.billing-toggle-btn{color:#fff9}.billing-toggle-btn.is-active{color:#ffffffde;background:#3a3a3a}.tier-card{background:#2a2a2a;border-color:#3a3a3a}.tier-card:hover,.tier-card.is-selected{border-color:#667eea}.tier-card-name{color:#ffffffde}.tier-card-description{color:#fff9}.tier-card-amount{color:#ffffffde}.tier-card-frequency{color:#fff9}.trial-badge{color:#8da2fb;background:#667eea26}.payment-form-title{color:#ffffffde}.card-element-wrapper{background:#1e1e1e;border-color:#3a3a3a}.plan-selector-error{color:#fc8181;background:#c530301a;border-color:#c530304d}.plan-selector-loading{color:#fff9}}.billing-modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.billing-modal{background:#fff;border-radius:8px;flex-direction:column;width:100%;max-width:700px;max-height:90vh;display:flex;box-shadow:0 4px 6px #0000001a}.billing-modal-wide{max-width:900px}.billing-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:24px;display:flex}.billing-modal-header h1{color:#111827;margin:0;font-size:24px;font-weight:600}.billing-modal-header .close-button{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:28px;transition:all .2s;display:flex}.billing-modal-header .close-button:hover{color:#111827;background:#f3f4f6}.billing-modal-content{flex:1;padding:24px;overflow-y:auto}.billing-manager{flex-direction:column;gap:1.5rem;width:100%;max-width:720px;margin:0 auto;padding:0;display:flex}.billing-manager-title{color:#213547;margin:0;font-size:1.5rem;font-weight:700}.billing-manager-loading{color:#6c757d;justify-content:center;align-items:center;padding:3rem;font-size:1rem;display:flex}.billing-manager-error{color:#c53030;text-align:center;background:#fff5f5;border:1px solid #feb2b2;border-radius:8px;flex-direction:column;align-items:center;gap:1rem;padding:2rem;font-size:.875rem;display:flex}.billing-manager-retry-btn{color:#c53030;cursor:pointer;background:0 0;border:1px solid #c53030;border-radius:6px;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:background-color .2s}.billing-manager-retry-btn:hover{background:#fff0f0}.billing-manager-empty{text-align:center;color:#6c757d;padding:2rem;font-size:.9375rem}.billing-manager-alert{border-radius:8px;padding:.75rem 1rem;font-size:.875rem}.billing-manager-alert.is-error{color:#c53030;background:#fff5f5;border:1px solid #feb2b2}.billing-manager-alert.is-success{color:#276749;background:#f0fff4;border:1px solid #9ae6b4}.billing-current-plan{background:#fff;border:2px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.billing-plan-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.billing-plan-name{color:#213547;margin:0;font-size:1.25rem;font-weight:700}.billing-status-badge{border-radius:20px;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-block}.billing-status-badge.is-success{color:#276749;background:#e7f9ed}.billing-status-badge.is-warning{color:#92400e;background:#fefce8}.billing-status-badge.is-danger{color:#c53030;background:#fff5f5}.billing-plan-details{flex-direction:column;gap:.5rem;display:flex}.billing-detail-row{border-bottom:1px solid #f1f3f5;justify-content:space-between;align-items:center;padding:.375rem 0;display:flex}.billing-detail-row:last-child{border-bottom:none}.billing-detail-label{color:#6c757d;font-size:.875rem}.billing-detail-value{color:#213547;font-size:.875rem;font-weight:500}.billing-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.billing-section-title{color:#213547;margin:0;font-size:1rem;font-weight:600}.billing-section-notice{color:#6c757d;margin:0;font-size:.8125rem}.billing-tier-options{flex-direction:column;gap:.75rem;display:flex}.billing-tier-option{background:#f8f9fa;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem;display:flex}.billing-tier-option-info{flex-direction:column;gap:.25rem;display:flex}.billing-tier-option-name{color:#213547;font-size:.9375rem;font-weight:600}.billing-proration-amount{color:#6c757d;font-size:.8125rem}.billing-tier-option-actions{align-items:center;gap:.5rem;display:flex}.billing-preview-btn{color:#667eea;cursor:pointer;background:0 0;border:1px solid #667eea;border-radius:6px;padding:.5rem .875rem;font-size:.8125rem;font-weight:500;transition:background-color .2s}.billing-preview-btn:hover{background:#667eea0d}.billing-preview-btn:disabled{opacity:.6;cursor:not-allowed}.billing-upgrade-btn{color:#fff;cursor:pointer;background:#667eea;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.8125rem;font-weight:600;transition:background-color .2s}.billing-upgrade-btn:hover{background:#5a67d8}.billing-upgrade-btn:disabled{cursor:not-allowed;background:#a0aec0}.billing-downgrade-btn{color:#6c757d;cursor:pointer;background:0 0;border:1px solid #e2e8f0;border-radius:6px;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:background-color .2s,border-color .2s}.billing-downgrade-btn:hover{background:#f8f9fa;border-color:#a0aec0}.billing-downgrade-btn:disabled{opacity:.6;cursor:not-allowed}.billing-cancel-section{border-color:#fed7d7}.billing-cancel-btn{color:#c53030;cursor:pointer;background:0 0;border:1px solid #c53030;border-radius:6px;align-self:flex-start;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:background-color .2s}.billing-cancel-btn:hover{background:#fff5f5}.billing-cancel-btn:disabled{opacity:.6;cursor:not-allowed}.billing-cancel-confirm{flex-direction:column;gap:.75rem;display:flex}.billing-cancel-warning{color:#c53030;margin:0;font-size:.8125rem;line-height:1.5}.billing-cancel-confirm-actions{gap:.5rem;display:flex}.billing-cancel-confirm-btn{color:#fff;cursor:pointer;background:#c53030;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.8125rem;font-weight:600;transition:background-color .2s}.billing-cancel-confirm-btn:hover{background:#9b2c2c}.billing-cancel-confirm-btn:disabled{cursor:not-allowed;background:#a0aec0}.billing-cancel-back-btn{color:#213547;cursor:pointer;background:0 0;border:1px solid #e2e8f0;border-radius:6px;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:background-color .2s}.billing-cancel-back-btn:hover{background:#f8f9fa}@media (width<=768px){.billing-modal{border-radius:0;max-width:100%;max-height:100vh}.billing-modal-wide{max-width:100%}.billing-modal-header,.billing-modal-content{padding:16px}.billing-manager{padding:0}.billing-manager-title{font-size:1.25rem}.billing-tier-option{flex-direction:column;align-items:flex-start}.billing-tier-option-actions{width:100%}.billing-upgrade-btn,.billing-downgrade-btn,.billing-preview-btn{flex:1}.billing-cancel-confirm-actions{flex-direction:column}}@media (prefers-color-scheme:dark){.billing-modal{background:#1e1e1e}.billing-modal-header{border-bottom-color:#3a3a3a}.billing-modal-header h1{color:#ffffffde}.billing-modal-header .close-button{color:#fff9}.billing-modal-header .close-button:hover{color:#ffffffde;background:#333}.billing-manager-title{color:#ffffffde}.billing-manager-error{color:#fc8181;background:#c530301a;border-color:#c530304d}.billing-manager-retry-btn{color:#fc8181;border-color:#fc8181}.billing-manager-retry-btn:hover{background:#c530301a}.billing-manager-empty,.billing-manager-loading{color:#fff9}.billing-manager-alert.is-error{color:#fc8181;background:#c530301a;border-color:#c530304d}.billing-manager-alert.is-success{color:#68d391;background:#2767491a;border-color:#2767494d}.billing-current-plan{background:#2a2a2a;border-color:#3a3a3a}.billing-plan-name{color:#ffffffde}.billing-status-badge.is-success{color:#68d391;background:#27674926}.billing-status-badge.is-warning{color:#f6ad55;background:#92400e26}.billing-status-badge.is-danger{color:#fc8181;background:#c5303026}.billing-detail-row{border-bottom-color:#3a3a3a}.billing-detail-label{color:#fff9}.billing-detail-value{color:#ffffffde}.billing-section{background:#2a2a2a;border-color:#3a3a3a}.billing-section-title{color:#ffffffde}.billing-section-notice{color:#fff9}.billing-tier-option{background:#1e1e1e}.billing-tier-option-name{color:#ffffffde}.billing-proration-amount{color:#fff9}.billing-downgrade-btn{color:#fff9;border-color:#3a3a3a}.billing-downgrade-btn:hover{background:#333;border-color:#555}.billing-cancel-section{border-color:#c530304d}.billing-cancel-btn{color:#fc8181;border-color:#fc8181}.billing-cancel-btn:hover{background:#c530301a}.billing-cancel-warning{color:#fc8181}.billing-cancel-back-btn{color:#ffffffde;border-color:#3a3a3a}.billing-cancel-back-btn:hover{background:#333}}.banner-container{color:#fff;z-index:50;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);padding:.75rem 1rem;animation:.3s ease-out slideDown;position:relative;box-shadow:0 2px 8px #0000001a}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.banner-content{align-items:center;gap:1rem;max-width:1400px;margin:0 auto;display:flex}.banner-icon{flex-shrink:0;font-size:1.25rem}.banner-message{flex:1;font-size:.9375rem;font-weight:500;line-height:1.5}.banner-dismiss{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.25rem;line-height:1;transition:background .2s;display:flex}.banner-dismiss:hover{background:#ffffff4d}.banner-dismiss:focus{outline-offset:2px;outline:2px solid #fff}@media (width<=768px){.banner-container{padding:.625rem .75rem}.banner-content{gap:.75rem}.banner-icon{font-size:1.125rem}.banner-message{font-size:.875rem}.banner-dismiss{width:28px;height:28px;font-size:1.125rem}}.language-selector{display:inline-block;position:relative}.language-selector-button{background-color:var(--background-color,#fff);border:1px solid var(--border-color,#ddd);cursor:pointer;border-radius:4px;align-items:center;gap:8px;padding:8px 12px;font-size:14px;transition:background-color .2s,border-color .2s;display:flex}.language-selector-button:hover{background-color:var(--hover-background-color,#f5f5f5);border-color:var(--hover-border-color,#999)}.language-selector-button:focus{outline:2px solid var(--focus-color,#007bff);outline-offset:2px}.language-selector-icon{font-size:18px;line-height:1}.language-selector-current{color:var(--text-color,#333);font-weight:500}.language-selector-arrow{color:var(--text-color,#666);font-size:10px;transition:transform .2s}.language-selector-arrow.open{transform:rotate(180deg)}.language-selector-dropdown{background-color:var(--background-color,#fff);border:1px solid var(--border-color,#ddd);z-index:1000;border-radius:4px;min-width:200px;max-height:300px;margin:0;padding:4px 0;list-style:none;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto;box-shadow:0 4px 6px #0000001a}.language-selector-option{margin:0;padding:0}.language-selector-option-button{cursor:pointer;text-align:left;width:100%;color:var(--text-color,#333);background:0 0;border:none;justify-content:space-between;align-items:center;padding:10px 16px;font-size:14px;transition:background-color .2s;display:flex}.language-selector-option-button:hover:not(:disabled){background-color:var(--hover-background-color,#f5f5f5)}.language-selector-option-button:focus{outline:2px solid var(--focus-color,#007bff);outline-offset:-2px}.language-selector-option-button:disabled{cursor:default;background-color:var(--active-background-color,#e3f2fd)}.language-selector-option.active .language-selector-option-button{background-color:var(--active-background-color,#e3f2fd);font-weight:600}.language-selector-option-name{flex:1}.language-selector-checkmark{color:var(--primary-color,#007bff);margin-left:8px;font-weight:700}[dir=rtl] .language-selector-dropdown{left:auto;right:0}[dir=rtl] .language-selector-option-button{text-align:right}[dir=rtl] .language-selector-checkmark{margin-left:0;margin-right:8px}@media (prefers-color-scheme:dark){.language-selector-button{background-color:var(--background-color,#2d2d2d);border-color:var(--border-color,#444)}.language-selector-button:hover{background-color:var(--hover-background-color,#3d3d3d);border-color:var(--hover-border-color,#666)}.language-selector-current{color:var(--text-color,#e0e0e0)}.language-selector-arrow{color:var(--text-color,#999)}.language-selector-dropdown{background-color:var(--background-color,#2d2d2d);border-color:var(--border-color,#444)}.language-selector-option-button{color:var(--text-color,#e0e0e0)}.language-selector-option-button:hover:not(:disabled){background-color:var(--hover-background-color,#3d3d3d)}.language-selector-option.active .language-selector-option-button{background-color:var(--active-background-color,#1a3a52)}}.dashboard-layout{width:100%;min-height:100vh;display:flex}.dashboard-mobile-header{color:#fff;z-index:200;background-color:#1a1a2e;align-items:center;height:60px;padding:0 1rem;display:none;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 8px #0000001a}.mobile-menu-toggle{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:44px;height:44px;padding:.5rem;font-size:1.5rem;transition:background-color .2s;display:flex}.mobile-menu-toggle:hover{background-color:#ffffff1a}.mobile-menu-toggle:active{background-color:#fff3}.hamburger-icon{font-size:1.75rem;line-height:1}.mobile-header-title{text-align:center;flex:1;margin:0;font-size:1.25rem;font-weight:700}.mobile-menu-overlay{z-index:150;background-color:#00000080;animation:.2s ease-out fadeIn;display:none;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.dashboard-sidebar{color:#fff;z-index:100;background-color:#1a1a2e;flex-direction:column;width:260px;height:100vh;display:flex;position:fixed;top:0;left:0}.dashboard-sidebar-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:1rem;padding:2rem 1.5rem;display:flex}.dashboard-sidebar-header h1{color:#fff;flex:1;margin:0;font-size:1.75rem;font-weight:700}.theme-toggle-button{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;padding:0;font-size:1.25rem;transition:all .2s;display:flex}.theme-toggle-button:hover{background:#fff3;border-color:#ffffff4d;transform:scale(1.05)}.theme-toggle-button:active{transform:scale(.95)}.dashboard-nav{flex:1;padding:1.5rem 0;overflow-y:auto}.dashboard-nav ul{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.dashboard-nav li{margin:0;padding:0}.dashboard-sidebar .dashboard-nav .nav-button{color:#fffc;cursor:pointer;text-align:left;background:0 0;border:none;border-left:3px solid #0000;justify-content:flex-start;align-items:center;gap:1rem;width:100%;padding:1rem 1.5rem;font-family:inherit;font-size:1rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.dashboard-sidebar .dashboard-nav .nav-button:before,.dashboard-sidebar .dashboard-nav .nav-button:after{content:none!important;display:none!important}.dashboard-sidebar .dashboard-nav .nav-button:hover{color:#fff;background-color:#ffffff0d}.dashboard-sidebar .dashboard-nav .nav-button.active{color:#646cff;background-color:#646cff1a;border-left-color:#646cff;font-weight:600}.dashboard-sidebar .nav-icon{text-align:center;width:1.5rem;text-shadow:none;filter:none;flex-shrink:0;font-size:1.25rem;display:inline-block}.dashboard-sidebar .nav-icon:before,.dashboard-sidebar .nav-icon:after{content:none!important;display:none!important}.dashboard-sidebar-footer{background-color:#1a1a2e;border-top:1px solid #ffffff1a;padding:1rem;position:relative}.dashboard-sidebar .dashboard-sidebar-footer .dashboard-user-info{cursor:pointer;text-align:left;background-color:#ffffff14;border:1px solid #ffffff1a;border-radius:8px;align-items:center;gap:.75rem;width:100%;padding:.875rem;font-family:inherit;transition:all .2s;display:flex}.dashboard-sidebar .dashboard-sidebar-footer .dashboard-user-info:hover{background-color:#ffffff26;border-color:#fff3}.dashboard-sidebar .dashboard-sidebar-footer .user-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:2.5rem;height:2.5rem}.dashboard-sidebar .dashboard-sidebar-footer .user-avatar-placeholder{color:#ffffffe6;background:#ffffff26;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;font-size:1.25rem;font-weight:600;display:flex}.dashboard-sidebar .dashboard-sidebar-footer .user-details{flex-direction:column;flex:1;gap:.125rem;min-width:0;display:flex;background:0 0!important;border:none!important;border-radius:0!important;margin:0!important;padding:0!important}.dashboard-sidebar .dashboard-sidebar-footer .user-name{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:.9375rem;font-weight:600;line-height:1.2;overflow:hidden;text-align:left!important;background:0 0!important;border:none!important;margin:0!important;padding:0!important}.dashboard-sidebar .dashboard-sidebar-footer .user-email{color:#fff9;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;line-height:1.2;overflow:hidden;text-align:left!important;background:0 0!important;border:none!important;margin:0!important;padding:0!important}.dashboard-sidebar .dashboard-sidebar-footer .dropdown-arrow{color:#ffffff80;flex-shrink:0;font-size:.625rem}.profile-menu{z-index:1000;background:#2a2a3e;border-radius:8px;margin-bottom:.5rem;animation:.2s ease-out slideUp;position:absolute;bottom:100%;left:1rem;right:1rem;overflow:hidden;box-shadow:0 4px 12px #0000004d}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.profile-menu-item{color:#ffffffe6;cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.75rem;width:100%;padding:.875rem 1rem;font-family:inherit;font-size:.875rem;text-decoration:none;transition:background-color .2s;display:flex}.profile-menu-item .menu-icon{text-align:center;flex-shrink:0;width:1.25rem;font-size:1rem}.profile-menu-item:hover{background-color:#ffffff1a}.profile-menu-item.logout{color:#ff6b6b;border-top:1px solid #ffffff1a}.profile-menu-item.logout:hover{background-color:#ff6b6b1a}.profile-menu-language{border-top:1px solid #ffffff1a;border-bottom:1px solid #ffffff1a;padding:.5rem 0}.profile-menu-language .language-selector{width:100%}.profile-menu-language .language-selector-button{color:#ffffffe6;cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.75rem;width:100%;padding:.875rem 1rem;font-family:inherit;font-size:.875rem;transition:background-color .2s;display:flex}.profile-menu-language .language-selector-button:hover{background-color:#ffffff1a}.profile-menu-language .language-selector-current{color:#ffffffe6;font-weight:500}.profile-menu-language .language-selector-icon{color:#ffffffe6;font-size:1rem}.profile-menu-language .language-selector-arrow{color:#fff9;margin-left:auto}.profile-menu-language .language-selector-dropdown{background:#2a2a3e;border:1px solid #fff3;border-radius:6px;max-height:200px;margin-top:.5rem;position:relative;bottom:auto;left:auto;right:auto;overflow-y:auto}.profile-menu-language .language-selector-option{list-style:none}.profile-menu-language .language-selector-option-button{color:#ffffffe6;cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:.75rem 1rem;font-family:inherit;font-size:.875rem;transition:background-color .2s;display:flex}.profile-menu-language .language-selector-option-button:hover:not(:disabled){background-color:#ffffff1a}.profile-menu-language .language-selector-option.active .language-selector-option-button{color:#fff;background-color:#646cff33;font-weight:600}.profile-menu-language .language-selector-option-button:disabled{cursor:default;opacity:1}.profile-menu-language .language-selector-option-name{color:inherit}.profile-menu-language .language-selector-checkmark{color:#646cff;font-size:1rem;font-weight:700}.dashboard-main{background-color:#f8f9fa;flex:1;min-height:100vh;margin-left:260px;padding:2rem}@media (width<=768px){.dashboard-mobile-header{display:flex}.dashboard-sidebar-header{display:none}.dashboard-sidebar{z-index:160;width:280px;height:calc(100vh - 60px);transition:left .3s ease-out;position:fixed;top:60px;left:-100%;box-shadow:2px 0 8px #0003}.dashboard-sidebar.mobile-open{left:0}.dashboard-sidebar.mobile-open~.mobile-menu-overlay{display:block}.dashboard-main{width:100%;margin-top:60px;margin-left:0;padding:1.5rem 1rem}.dashboard-nav{padding:1rem 0}.dashboard-sidebar .dashboard-nav .nav-button{padding:1rem 1.5rem;font-size:1rem}.dashboard-sidebar-footer{padding:1rem}.profile-menu{bottom:calc(100% + .5rem)}}@media (width<=480px){.dashboard-sidebar{width:260px}.dashboard-main{padding:1rem .75rem}.mobile-header-title{font-size:1.125rem}.dashboard-sidebar .dashboard-nav .nav-button{padding:.875rem 1.25rem;font-size:.9375rem}.dashboard-sidebar .dashboard-sidebar-footer .user-name{font-size:.875rem}.dashboard-sidebar .dashboard-sidebar-footer .user-email{font-size:.6875rem}}@media (width<=768px) and (orientation:landscape){.dashboard-mobile-header{height:50px}.dashboard-sidebar{height:calc(100vh - 50px);top:50px}.dashboard-main{margin-top:50px}}@media (prefers-color-scheme:dark){.dashboard-main{background-color:#1a1a1a}.dashboard-sidebar{background:#2a2a2a;border-right-color:#3a3a3a}.dashboard-sidebar-header h1{color:#ffffffde}.nav-link{color:#fff9}.nav-link:hover{color:#ffffffde;background:#3a3a3a}.nav-link.active{color:#fff;background:#667eea}.user-profile{background:#1e1e1e;border-top-color:#3a3a3a}.user-info{color:#ffffffde}.user-email{color:#fff6}.dashboard-mobile-header{background:#2a2a2a;border-bottom-color:#3a3a3a}.dashboard-mobile-header h1,.menu-toggle{color:#ffffffde}}.dashboard-dark-mode .dashboard-main{color:#ffffffde;background-color:#0f0f0f}.dashboard-dark-mode .dashboard-sidebar,.dashboard-dark-mode .dashboard-mobile-header{background-color:#1a1a1a}html:not(.dashboard-dark-mode) .dashboard-main{color:#1a1a1a;background-color:#f8f9fa}html:not(.dashboard-dark-mode) .dashboard-sidebar,html:not(.dashboard-dark-mode) .dashboard-mobile-header{background-color:#1a1a2e}.progress-bar-container{width:100%}.progress-bar-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.progress-bar-label{color:#666;font-size:12px;font-weight:500}.progress-bar-percentage{color:#333;font-size:12px;font-weight:600}.progress-bar-track{background-color:#e0e0e0;border-radius:4px;width:100%;position:relative;overflow:hidden}.progress-bar-container.small .progress-bar-track{height:4px}.progress-bar-container.medium .progress-bar-track{height:6px}.progress-bar-container.large .progress-bar-track{height:8px}.progress-bar-fill{background:linear-gradient(90deg,#4caf50 0%,#66bb6a 100%);border-radius:4px;height:100%;transition:width .3s}.progress-bar-fill:empty{background-color:#e0e0e0}body.dark-mode .progress-bar-label{color:#aaa}body.dark-mode .progress-bar-percentage{color:#fff}body.dark-mode .progress-bar-track{background-color:#333}.book-uploader{border-radius:var(--radius-md);padding:var(--spacing-2xl);background:#fff;max-width:600px;margin:0 auto;box-shadow:0 2px 4px #0000001a}.book-uploader h2{color:#333;margin-top:0;margin-bottom:1.5rem;font-size:1.5rem}.upload-form{gap:var(--spacing-xl);flex-direction:column;display:flex}.author-search-wrapper{position:relative}.author-search-wrapper input{width:100%;padding:var(--spacing-md) 2.5rem var(--spacing-md) var(--spacing-md);border-radius:var(--radius-sm);transition:border-color var(--transition-base);border:1px solid #ddd;font-size:1rem}.author-search-wrapper input:focus{border-color:#646cff;outline:none}.clear-author{right:var(--spacing-sm);border-radius:var(--radius-full);cursor:pointer;color:#4a5568;width:24px;height:24px;transition:background-color var(--transition-base);background:#e2e8f0;border:none;justify-content:center;align-items:center;font-size:.875rem;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.clear-author:hover{background:#cbd5e0}.author-suggestions-dropdown{top:calc(100% + var(--spacing-xs));border-radius:var(--radius-sm);z-index:1000;background:#fff;border:1px solid #e2e8f0;max-height:240px;position:absolute;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #00000026}.author-suggestion-item{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);cursor:pointer;transition:background-color var(--transition-fast);border-bottom:1px solid #f7fafc;display:flex}.author-suggestion-item:last-child{border-bottom:none}.author-suggestion-item:hover,.author-suggestion-item.selected{background:#f7fafc}.author-icon{flex-shrink:0;font-size:1rem}.author-email{color:#2d3748;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.9375rem;overflow:hidden}.form-group input[type=text],.form-group select{padding:var(--spacing-md);border-radius:var(--radius-sm);transition:border-color var(--transition-base);border:1px solid #ddd;font-size:1rem}.form-group input[type=text]:focus,.form-group select:focus{border-color:#3498db;outline:none}.form-group input[type=text]:disabled,.form-group select:disabled{cursor:not-allowed;background-color:#f5f5f5}@media (width<=768px){.book-uploader{padding:var(--spacing-xl)}.form-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.tag-remove{color:#1976d2;cursor:pointer;width:16px;height:16px;transition:color var(--transition-base);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:1.125rem;line-height:1;display:flex}.tag-remove:hover:not(:disabled){color:#0d47a1}.header-image-preview{margin-top:1rem}.header-image-preview .preview-container{border-radius:var(--radius-md);border:2px solid #e2e8f0;max-width:100%;position:relative;overflow:hidden}.header-image-preview img{object-fit:cover;width:100%;height:auto;max-height:300px;display:block}.remove-image-btn{top:var(--spacing-md);right:var(--spacing-md);color:#fff;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-base);background:#000000b3;border:none;font-size:.875rem;font-weight:600;position:absolute}.remove-image-btn:hover:not(:disabled){background:#000000d9}.remove-image-btn:disabled{cursor:not-allowed;opacity:.5}.dashboard-dark-mode .book-uploader h2{color:#fffffff2}.dashboard-dark-mode .uploader-header{border-bottom-color:#3a3a3a}.dashboard-dark-mode .uploader-header h2{color:#fffffff2}.dashboard-dark-mode .close-btn{color:#fff9}.dashboard-dark-mode .close-btn:hover{color:#ffffffde;background:#3a3a3a}.dashboard-dark-mode .book-uploader .form-group label{color:#ffffffe6;font-weight:500}.dashboard-dark-mode .book-uploader .form-group input,.dashboard-dark-mode .book-uploader .form-group select,.dashboard-dark-mode .book-uploader .form-group textarea{color:#ffffffe6;background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .book-uploader .form-group input:focus,.dashboard-dark-mode .book-uploader .form-group select:focus,.dashboard-dark-mode .book-uploader .form-group textarea:focus{background:#2a2a2a;border-color:#667eea}.dashboard-dark-mode .book-uploader .form-group input::placeholder,.dashboard-dark-mode .book-uploader .form-group textarea::placeholder{color:#ffffff80}.dashboard-dark-mode .book-uploader .help-text{color:#fff9}.dashboard-dark-mode .file-input-wrapper{background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .file-input-wrapper:hover{background:#2a2a2a;border-color:#4a4a4a}.dashboard-dark-mode .file-name{color:#ffffffb3}.dashboard-dark-mode .book-uploader .selected-files{background-color:#1e1e1e}.dashboard-dark-mode .book-uploader .files-label{color:#ffffffe6}.dashboard-dark-mode .book-uploader .selected-files li{color:#ffffffb3}.dashboard-dark-mode .book-uploader .validation-errors{background-color:#3a2a1e;border-color:#4a3a2a}.dashboard-dark-mode .book-uploader .error-title,.dashboard-dark-mode .book-uploader .validation-errors li{color:#ffc107}.dashboard-dark-mode .book-uploader .error-message{color:#fca5a5;background:#3a1e1e;border-color:#4a2a2a}.dashboard-dark-mode .book-uploader .success-message{color:#86efac;background:#1e3a2a;border-color:#2a4a3a}.dashboard-dark-mode .upload-progress{background:#1e1e1e}.dashboard-dark-mode .book-uploader .progress-bar{background:#3a3a3a}.dashboard-dark-mode .book-uploader .btn-secondary{color:#ffffffde;background:#1e1e1e}.dashboard-dark-mode .book-uploader .btn-secondary:hover{background:#2a2a2a}.dashboard-dark-mode .book-uploader .tag{color:#90caf9;background:#1e3a5f;border-color:#2a5a8f}.dashboard-dark-mode .book-uploader .tag-remove{color:#90caf9}.dashboard-dark-mode .book-uploader .tag-remove:hover:not(:disabled){color:#bbdefb}.dashboard-dark-mode .book-uploader .tag-suggestions-dropdown{background:#2a2a2a;border-color:#3a3a3a}.dashboard-dark-mode .book-uploader .tag-suggestion-item{color:#ffffffde}.dashboard-dark-mode .book-uploader .tag-suggestion-item:hover,.dashboard-dark-mode .book-uploader .tag-suggestion-item.selected{background:#3a3a3a}.dashboard-dark-mode .book-uploader .author-search-wrapper input{color:#ffffffe6;background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .book-uploader .author-search-wrapper input:focus{border-color:#667eea}.dashboard-dark-mode .book-uploader .clear-author{color:#ffffffb3;background:#3a3a3a}.dashboard-dark-mode .book-uploader .clear-author:hover{background:#4a4a4a}.dashboard-dark-mode .book-uploader .author-suggestions-dropdown{background:#2a2a2a;border-color:#3a3a3a}.dashboard-dark-mode .book-uploader .author-suggestion-item{border-bottom-color:#3a3a3a}.dashboard-dark-mode .book-uploader .author-suggestion-item:hover,.dashboard-dark-mode .book-uploader .author-suggestion-item.selected{background:#3a3a3a}.dashboard-dark-mode .book-uploader .author-email{color:#ffffffde}.dashboard-dark-mode .header-image-preview .preview-container{border-color:#3a3a3a}.book-uploader .checkbox-group{margin-bottom:16px}.book-uploader .checkbox-label{cursor:pointer;align-items:center;gap:8px;font-weight:500;display:flex}.book-uploader .checkbox-label input[type=checkbox]{cursor:pointer;accent-color:#667eea;width:18px;height:18px;margin:0}.dashboard-dark-mode .book-uploader .checkbox-label{color:#ffffffe6}.book-editor{border-radius:var(--radius-md);padding:var(--spacing-2xl);box-shadow:none;background:#fff;max-width:100%;margin:0}.book-editor h2{color:#333;margin-top:0;margin-bottom:1.5rem;font-size:1.5rem}.book-info-section{border-radius:var(--radius-sm);padding:var(--spacing-lg);margin-bottom:var(--spacing-2xl);background-color:#f8f9fa}.info-row{border-bottom:1px solid #e9ecef;justify-content:space-between;padding:.5rem 0;display:flex}.info-row:last-child{border-bottom:none}.status-badge{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-lg);font-size:.85rem;font-weight:600}.status-badge.active{color:#155724;background-color:#d4edda}.status-badge.archived{color:#721c24;background-color:#f8d7da}.edit-form{gap:var(--spacing-xl);margin-bottom:var(--spacing-2xl);flex-direction:column;display:flex}.form-group input[type=text],.form-group input[type=date]{padding:var(--spacing-md);border-radius:var(--radius-sm);transition:border-color var(--transition-base);border:1px solid #ddd;font-size:1rem}.form-group input[type=text]:focus,.form-group input[type=date]:focus{border-color:#3498db;outline:none}.form-group input[type=text]:disabled,.form-group input[type=date]:disabled{cursor:not-allowed;background-color:#f5f5f5}.form-group input[type=file]{padding:var(--spacing-sm);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--transition-base);border:2px dashed #ddd}.form-group input[type=file]:hover:not(:disabled){border-color:#3498db}.form-group input[type=file]:disabled{cursor:not-allowed;opacity:.6}.selected-files{margin-top:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--radius-sm);background-color:#f8f9fa}.files-label{color:#555;margin:0 0 .5rem;font-size:.9rem;font-weight:600}.selected-files ul{margin:0;padding:0;list-style:none}.selected-files li{color:#666;padding:.25rem 0;font-size:.9rem}.validation-errors{padding:var(--spacing-lg);border-radius:var(--radius-sm);background-color:#fff3cd;border:1px solid #ffc107}.error-title{color:#856404;margin:0 0 .5rem;font-weight:600}.validation-errors ul{margin:0;padding:0;list-style:none}.validation-errors li{color:#856404;padding:.25rem 0;font-size:.9rem}.error-message{padding:var(--spacing-lg);border-radius:var(--radius-sm);color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb;font-size:.95rem}.danger-zone{padding-top:var(--spacing-2xl);margin-top:var(--spacing-2xl);border-top:2px solid #e9ecef}.danger-zone h3{color:#e74c3c;margin-top:0;margin-bottom:1.5rem;font-size:1.2rem}.danger-action{padding:var(--spacing-xl);border-radius:var(--radius-sm);margin-bottom:var(--spacing-lg);background-color:#fff;border:1px solid #e9ecef;justify-content:space-between;align-items:center;display:flex}.danger-action:last-child{margin-bottom:0}.danger-info{flex:1;margin-right:1rem}.danger-info h4{color:#333;margin:0 0 .5rem;font-size:1rem}.danger-info p{color:#666;margin:0;font-size:.9rem}.confirm-actions{flex-direction:column;align-items:flex-end;gap:.5rem;display:flex}.confirm-text{color:#e74c3c;margin:0 0 .5rem;font-size:.9rem;font-weight:600}.confirm-actions button{padding:var(--spacing-sm) var(--spacing-lg);min-width:120px;font-size:.9rem}@media (width<=768px){.book-editor{padding:var(--spacing-xl)}.form-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}.danger-action{flex-direction:column;align-items:stretch}.danger-info{margin-bottom:1rem;margin-right:0}.confirm-actions{align-items:stretch}.confirm-actions button{width:100%}}.tag{align-items:center;gap:var(--spacing-sm);padding:.375rem var(--spacing-md);color:#1976d2;background:#e3f2fd;border:1px solid #90caf9;border-radius:16px;font-size:.875rem;display:inline-flex}.tag-remove{color:#1976d2;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:16px;height:16px;padding:0;font-size:1.125rem;line-height:1;transition:color .2s;display:flex}.tag-remove:hover:not(:disabled){color:#0d47a1;transition:color var(--transition-base)}.tag-remove:disabled{cursor:not-allowed;opacity:.5}.tag-input-wrapper input{width:100%}.tag-suggestions-dropdown{bottom:calc(100% + var(--spacing-xs));border-radius:var(--radius-sm);z-index:1000;background:#fff;border:1px solid #e2e8f0;max-height:200px;position:absolute;left:0;right:0;overflow-y:auto;box-shadow:0 -4px 12px #00000026}.tag-suggestion-item{padding:.625rem var(--spacing-md);cursor:pointer;transition:background-color var(--transition-fast);color:#2d3748;font-size:.9375rem}.tag-suggestion-item:hover,.tag-suggestion-item.selected{background:#f7fafc}.tag-input-group .btn-secondary{padding:var(--spacing-md) var(--spacing-lg);white-space:nowrap}.display-config-section{border-top:2px solid #e9ecef;margin-top:1rem;padding-top:1.5rem}.display-config-section h3{color:#333;margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.section-description{color:#666;margin:0 0 1rem;font-size:.9rem}.color-input-group{align-items:center;gap:.5rem;display:flex}.color-input-group input[type=color]{border-radius:var(--radius-sm);cursor:pointer;border:1px solid #ddd;width:60px;height:40px;padding:2px}.color-input-group input[type=color]:disabled{cursor:not-allowed;opacity:.6}.color-text-input{text-transform:uppercase;flex:1;font-family:monospace}@media (width<=768px){.form-row{grid-template-columns:1fr}}.dashboard-dark-mode .book-editor{color:#ffffffde;background:#2a2a2a}.dashboard-dark-mode .book-editor h2{color:#fffffff2}.dashboard-dark-mode .book-info-section{background-color:#1e1e1e}.dashboard-dark-mode .book-editor .info-row{border-bottom-color:#3a3a3a}.dashboard-dark-mode .book-editor .info-label{color:#fffffff2}.dashboard-dark-mode .book-editor .info-value{color:#fffc}.dashboard-dark-mode .book-editor .editor-header{border-bottom-color:#3a3a3a}.dashboard-dark-mode .book-editor .editor-header h2,.dashboard-dark-mode .book-editor h3{color:#fffffff2}.dashboard-dark-mode .book-editor .editor-header h2,.dashboard-dark-mode .book-editor h3{color:#fffffff2}.dashboard-dark-mode .book-editor .close-btn{color:#fff9}.dashboard-dark-mode .book-editor .close-btn:hover{color:#ffffffde;background:#3a3a3a}.dashboard-dark-mode .book-editor .form-group label{color:#fffffff2;font-weight:500}.dashboard-dark-mode .book-editor .form-group input,.dashboard-dark-mode .book-editor .form-group select,.dashboard-dark-mode .book-editor .form-group textarea{color:#ffffffe6;background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .book-editor .form-group input:focus,.dashboard-dark-mode .book-editor .form-group select:focus,.dashboard-dark-mode .book-editor .form-group textarea:focus{background:#2a2a2a;border-color:#667eea}.dashboard-dark-mode .book-editor .form-group input::placeholder,.dashboard-dark-mode .book-editor .form-group textarea::placeholder{color:#ffffff80}.dashboard-dark-mode .book-editor .help-text{color:#fff9}.dashboard-dark-mode .book-editor .section-description{color:#ffffffb3}.dashboard-dark-mode .book-editor .error-message{color:#fca5a5;background:#3a1e1e;border-color:#4a2a2a}.dashboard-dark-mode .book-editor .danger-zone{background:0 0;border-color:#4a2a2a}.dashboard-dark-mode .book-editor .danger-zone h3{color:#fca5a5}.dashboard-dark-mode .book-editor .danger-zone p{color:#ffffffb3}.dashboard-dark-mode .book-editor .danger-action{background:#2a2a2a;border-color:#3a3a3a}.dashboard-dark-mode .book-editor .danger-info h4{color:#ffffffe6}.dashboard-dark-mode .book-editor .danger-info p{color:#ffffffb3}.dashboard-dark-mode .book-editor .btn-secondary{color:#ffffffde;background:#1e1e1e}.dashboard-dark-mode .book-editor .btn-secondary:hover{background:#2a2a2a}.dashboard-dark-mode .book-editor .display-config-section{border-top-color:#3a3a3a}.dashboard-dark-mode .book-editor .tag{color:#90caf9;background:#1e3a5f;border-color:#2a5a8f}.dashboard-dark-mode .book-editor .tag-remove{color:#90caf9}.dashboard-dark-mode .book-editor .tag-remove:hover:not(:disabled){color:#bbdefb}.dashboard-dark-mode .book-editor .tag-suggestions-dropdown{background:#2a2a2a;border-color:#3a3a3a}.dashboard-dark-mode .book-editor .tag-suggestion-item{color:#ffffffde}.dashboard-dark-mode .book-editor .tag-suggestion-item:hover,.dashboard-dark-mode .book-editor .tag-suggestion-item.selected{background:#3a3a3a}.dashboard-dark-mode .book-editor .selected-files{background:#1e1e1e}.dashboard-dark-mode .book-editor .files-label{color:#ffffffe6}.dashboard-dark-mode .book-editor .selected-files li{color:#ffffffb3}.dashboard-dark-mode .book-editor .validation-errors{background:#3a2a1e;border-color:#4a3a2a}.dashboard-dark-mode .book-editor .error-title,.dashboard-dark-mode .book-editor .validation-errors li{color:#ffc107}.dashboard-dark-mode .book-editor .status-badge.active{color:#90ee90;background-color:#1e3a2a}.dashboard-dark-mode .book-editor .status-badge.archived{color:#fca5a5;background-color:#3a1e1e}.book-editor .checkbox-group{margin-bottom:16px}.book-editor .checkbox-label{cursor:pointer;align-items:center;gap:8px;font-weight:500;display:flex}.book-editor .checkbox-label input[type=checkbox]{cursor:pointer;accent-color:#667eea;width:18px;height:18px;margin:0}.dashboard-dark-mode .book-editor .checkbox-label{color:#ffffffe6}.feedback-window-control{background:#fff;border:1px solid #e9ecef;border-radius:8px;margin-top:1.5rem;padding:1.5rem}.feedback-window-control h3{color:#333;border-bottom:2px solid #e9ecef;margin-top:0;margin-bottom:1.5rem;padding-bottom:.75rem;font-size:1.2rem}.feedback-status{background-color:#f8f9fa;border-radius:6px;margin-bottom:1.5rem;padding:1rem}.status-header{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.status-label{color:#555;font-size:.95rem;font-weight:600}.status-badge{border-radius:12px;padding:.25rem .75rem;font-size:.85rem;font-weight:600}.status-badge.status-open{color:#155724;background-color:#d4edda}.status-badge.status-closed{color:#856404;background-color:#fff3cd}.status-badge.status-archived{color:#721c24;background-color:#f8d7da}.status-description{color:#666;margin:0;font-size:.9rem;line-height:1.5}.form-group{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.form-group input[type=date]{border:1px solid #ddd;border-radius:4px;max-width:300px;padding:.75rem;font-size:1rem;transition:border-color .2s}.form-group input[type=date]:focus{border-color:#3498db;outline:none}.form-group input[type=date]:disabled{cursor:not-allowed;background-color:#f5f5f5}.btn-primary,.btn-secondary,.btn-warning{cursor:pointer;border:none;border-radius:4px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s}.btn-warning{color:#fff;background-color:#f39c12}.btn-warning:hover:not(:disabled){background-color:#e67e22}.btn-warning:disabled{cursor:not-allowed;background-color:#95a5a6}.archive-section{border-top:1px solid #e9ecef;margin-top:1.5rem;padding-top:1.5rem}.archive-info{margin-bottom:1rem}.archive-info h4{color:#333;margin:0 0 .5rem;font-size:1rem}.archive-info p{color:#666;margin:0;font-size:.9rem;line-height:1.5}.confirm-actions{margin-top:1rem}.confirm-text{color:#856404;background-color:#fff3cd;border:1px solid #ffc107;border-radius:4px;margin:0 0 1rem;padding:.75rem;font-size:.95rem;font-weight:600}.confirm-buttons{gap:.75rem;display:flex}.error-message{color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;margin-top:1rem;padding:1rem;font-size:.95rem}@media (width<=768px){.feedback-window-control{padding:1rem}.form-group input[type=date]{max-width:100%}.confirm-buttons{flex-direction:column}.btn-primary,.btn-secondary,.btn-warning{width:100%}}.reader-group-manager{background:#fff;border-radius:8px;width:100%;min-width:100%;margin:0 auto;padding:24px;box-shadow:0 2px 8px #0000001a}.manager-header{border-bottom:2px solid #e5e7eb;justify-content:space-between;align-items:flex-start;margin-bottom:24px;padding-bottom:16px;display:flex}.manager-header h2{color:#1f2937;margin:0 0 8px;font-size:24px}.manager-header .book-title{color:#6b7280;margin:0;font-size:14px}.btn-close{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:24px;transition:all .2s;display:flex}.btn-close:hover{color:#1f2937;background:#f3f4f6}.manager-content{grid-template-columns:1fr 1fr;gap:24px;height:600px;display:grid}.groups-panel,.members-panel{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;padding:16px;display:flex;overflow:hidden}.panel-header{flex-shrink:0;justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.panel-header h3{color:#1f2937;margin:0;font-size:18px}.member-search{flex-shrink:0;margin-bottom:12px;position:relative}.member-search .search-input{border:1px solid #d1d5db;border-radius:6px;width:100%;padding:8px 32px 8px 12px;font-size:14px}.member-search .search-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.member-search .clear-search{cursor:pointer;color:#4b5563;background:#e5e7eb;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;transition:background-color .2s;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.member-search .clear-search:hover{background:#d1d5db}.search-results-info{color:#6b7280;background:#f3f4f6;border-radius:4px;flex-shrink:0;margin-bottom:8px;padding:6px 8px;font-size:13px}.panel-header-actions{gap:8px;display:flex}.btn-small{white-space:nowrap;max-width:150px;padding:6px 12px;font-size:14px}.create-group-form,.add-reader-form{background:#fff;border:1px solid #d1d5db;border-radius:6px;margin-bottom:16px;padding:12px}.add-reader-modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.add-reader-modal{background:#fff;border-radius:12px;width:90%;max-width:500px;max-height:80vh;overflow-y:auto;box-shadow:0 4px 16px #0003}.add-reader-modal .modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.add-reader-modal .modal-header h3{color:#1f2937;margin:0;font-size:20px}.add-reader-modal .modal-body{padding:24px}.add-reader-modal .modal-body label{color:#374151;margin-bottom:8px;font-size:14px;font-weight:500;display:block}.add-reader-modal .modal-body input{border:1px solid #d1d5db;border-radius:6px;width:100%;margin-bottom:16px;padding:10px 12px;font-size:14px}.add-reader-modal .modal-body input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.search-results{margin-top:16px}.results-section{margin-bottom:16px}.results-label{color:#374151;margin-bottom:12px;font-size:14px;font-weight:500}.results-label.error{color:#dc2626}.reader-result{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:12px;display:flex}.reader-result:last-child{margin-bottom:0}.reader-email{color:#1f2937;font-size:14px;font-weight:500}.invite-option{text-align:center;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;padding:16px}.invite-option p{color:#1f2937;margin:0 0 12px;font-size:14px}.invite-option strong{color:#1e40af}.add-reader-form label{color:#374151;margin-bottom:8px;font-size:14px;font-weight:500;display:block}.create-group-form input,.add-reader-form select,.add-reader-form input{border:1px solid #d1d5db;border-radius:4px;width:100%;margin-bottom:8px;padding:8px 12px;font-size:14px}.create-group-form input:focus,.add-reader-form select:focus,.add-reader-form input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.add-reader-form .help-text{color:#6b7280;margin:0 0 8px;font-size:12px;font-style:italic}.form-actions{gap:8px;display:flex}.groups-list,.members-list{flex-direction:column;flex:1;gap:8px;display:flex;overflow-y:auto}.group-item{cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:12px;transition:all .2s}.group-item:hover{border-color:#3b82f6;box-shadow:0 2px 4px #0000000d}.group-item.selected{background:#eff6ff;border-color:#3b82f6;box-shadow:0 2px 4px #3b82f61a}.group-name{color:#1f2937;margin-bottom:4px;font-weight:600}.group-date{color:#6b7280;font-size:12px}.member-item{background:#fff;border:1px solid #e5e7eb;border-radius:6px;justify-content:space-between;align-items:center;padding:12px;display:flex}.member-info{flex:1}.member-name{color:#1f2937;margin-bottom:2px;font-size:15px;font-weight:600}.member-email{color:#6b7280;font-size:14px;font-weight:500}.member-date{color:#6b7280;font-size:12px}.btn-danger{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:4px;padding:8px 16px;font-size:14px;font-weight:500;transition:all .2s}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-danger:disabled{cursor:not-allowed;background:#fca5a5}.empty-state p{margin:8px 0}.error-message{color:#991b1b;background:#fee2e2;border:1px solid #fecaca;border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;display:flex}.error-message button{color:#991b1b;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:18px;transition:all .2s;display:flex}.error-message button:hover{background:#fecaca}.loading{text-align:center;color:#6b7280;padding:40px;font-size:16px}@media (width<=768px){.manager-content{grid-template-columns:1fr}.manager-header{flex-direction:column;align-items:flex-start}.btn-close{align-self:flex-end;margin-top:-32px}}.invitations-section{border-top:2px solid #e5e7eb;margin-top:24px;padding-top:16px}.invitations-section h4{color:#1f2937;margin:0 0 12px;font-size:16px;font-weight:600}.invitations-list{flex-direction:column;gap:8px;display:flex}.invitation-item{background:#fff;border:1px solid #e5e7eb;border-radius:6px;justify-content:space-between;align-items:center;padding:12px;display:flex}.invitation-item.expired{background:#fef2f2;border-color:#fecaca}.invitation-email{color:#1f2937;margin-bottom:4px;font-size:14px;font-weight:500}.invitation-status{align-items:center;gap:8px;font-size:12px;display:flex}.status-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.status-badge.pending{color:#1e40af;background:#dbeafe}.status-badge.expired{color:#991b1b;background:#fee2e2}.invitation-date{color:#6b7280}.access-type-selector,.access-type-control{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;margin-bottom:16px;padding:12px}.access-type-selector label,.access-type-control label{color:#374151;margin-bottom:8px;font-size:14px;font-weight:600;display:block}.access-type-select{cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:4px;width:100%;margin-bottom:8px;padding:8px 12px;font-size:14px}.access-type-select:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.access-type-selector .help-text,.access-type-control .help-text{color:#6b7280;margin:0;font-size:12px;font-style:italic;line-height:1.4}.access-badge{text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-radius:12px;align-items:center;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.access-badge.access-closed{color:#991b1b;background:#fee2e2}.access-badge.access-approval_required{color:#92400e;background:#fef3c7}.access-badge.access-open{color:#065f46;background:#d1fae5}.group-item{justify-content:space-between;align-items:center;gap:12px;display:flex}.group-info{flex:1;min-width:0}.group-info .group-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (prefers-color-scheme:dark){.reader-group-manager{color:#ffffffde;background:#2a2a2a}.manager-header{border-bottom-color:#3a3a3a}.groups-panel,.members-panel{background:#1e1e1e;border-color:#3a3a3a}.panel-header h3,.manager-header h2{color:#ffffffde}.close-btn{color:#fff9}.close-btn:hover{color:#ffffffde;background:#3a3a3a}.groups-list{border-color:#3a3a3a;background:#1e1e1e!important}.group-item{border-bottom-color:#3a3a3a;background:#1e1e1e!important}.group-item:hover{background:#2a2a2a!important}.group-item.selected{background:#3a3a3a!important}.group-name{color:#ffffffe6}.group-info{color:#ffffffb3}.members-section{border-color:#3a3a3a;background:#1e1e1e!important}.members-section h3{color:#ffffffe6}.member-item{border-color:#3a3a3a;background:#2a2a2a!important}.member-email{color:#ffffffe6}.form-group label{color:#ffffffe6;font-weight:500}.form-group input,.form-group select{color:#ffffffe6;background:#1e1e1e;border-color:#3a3a3a}.form-group input:focus,.form-group select:focus{background:#2a2a2a;border-color:#667eea}.form-hint{color:#fff9}.error-message{color:#fca5a5;background:#3a1e1e;border-color:#4a2a2a}.empty-state{color:#ffffffb3}.btn-secondary{color:#ffffffde;background:#1e1e1e}.btn-secondary:hover{background:#2a2a2a}}.group-item.inactive{opacity:.6}.group-item.inactive .group-name{color:#6b7280}.inactive-label{color:#9ca3af;font-size:12px;font-style:italic;font-weight:400}.group-badges{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.btn-toggle-active{text-transform:uppercase;letter-spacing:.5px;cursor:pointer;white-space:nowrap;border:none;border-radius:12px;padding:4px 10px;font-size:11px;font-weight:600;transition:all .2s}.btn-toggle-active.active{color:#065f46;background:#d1fae5}.btn-toggle-active.active:hover:not(:disabled){background:#a7f3d0}.btn-toggle-active.inactive{color:#6b7280;background:#f3f4f6}.btn-toggle-active.inactive:hover:not(:disabled){color:#374151;background:#e5e7eb}.btn-toggle-active:disabled{opacity:.5;cursor:not-allowed}.comment-viewer{border-radius:var(--radius-md);padding:var(--spacing-2xl);background:#fff;max-width:1200px;margin:0 auto}.comment-viewer-header{margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-xl);gap:var(--spacing-lg);border-bottom:2px solid #e9ecef;flex-direction:column!important;display:flex!important}.header-content{flex:none!important;width:100%!important}.comment-viewer-header h2{color:#333;word-wrap:break-word;overflow-wrap:break-word;margin:0 0 .5rem;font-size:1.5rem}.comment-count{color:#666;margin:0;font-size:.95rem}.header-actions{gap:var(--spacing-md);flex-wrap:wrap;flex-direction:row!important;width:100%!important;display:flex!important}.header-actions button{white-space:nowrap;flex:auto;min-width:150px}.error-message{padding:var(--spacing-lg);border-radius:var(--radius-sm);color:#721c24;margin-bottom:var(--spacing-xl);background-color:#f8d7da;border:1px solid #f5c6cb;font-size:.95rem}.empty-state{text-align:center;padding:var(--spacing-3xl) var(--spacing-2xl);color:#6c757d}.comments-list{gap:var(--spacing-xl);flex-direction:column;display:flex}.comment-card{border-radius:var(--radius-md);padding:var(--spacing-xl);transition:box-shadow var(--transition-base);background:#f8f9fa;border:1px solid #dee2e6}.comment-header{margin-bottom:var(--spacing-lg);justify-content:space-between;align-items:flex-start;gap:var(--spacing-lg);display:flex}.reader-info{flex-direction:column;gap:.25rem;display:flex}.reader-name{color:#333;font-size:1rem;font-weight:600}.reader-email{color:#666;font-size:.875rem}.comment-date{color:#999;white-space:nowrap;font-size:.875rem}.comment-context{padding:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-lg);border-radius:var(--radius-sm);background:#fff;border-left:3px solid #3498db}.context-label{text-transform:uppercase;color:#666;letter-spacing:.5px;margin-bottom:.25rem;font-size:.75rem;font-weight:600;display:block}.context-snippet{color:#555;font-size:.95rem;font-style:italic;line-height:1.5}.comment-text{color:#333;margin-bottom:var(--spacing-lg);white-space:pre-wrap;word-wrap:break-word;font-size:1rem;line-height:1.6}.comment-location{align-items:center;gap:var(--spacing-sm);padding-top:var(--spacing-md);border-top:1px solid #dee2e6;display:flex}.location-text{color:#666;font-size:.875rem}@media (width<=768px){.comment-viewer{padding:var(--spacing-xl)}.header-actions{flex-direction:column}.header-actions button{width:100%;min-width:auto}.comment-card{padding:var(--spacing-lg)}.comment-header{flex-direction:column}.comment-date{align-self:flex-start}}@media (prefers-color-scheme:dark){.comment-viewer{color:#ffffffde;background:#2a2a2a}.comment-viewer-header{border-bottom-color:#3a3a3a}.comment-viewer-header h2{color:#ffffffde}.comment-count{color:#fff9}.comments-list{background:#1e1e1e!important}.comment-item{border-color:#3a3a3a;background:#2a2a2a!important}.comment-header{border-bottom-color:#3a3a3a}.comment-author{color:#ffffffe6}.comment-date{color:#ffffff80}.comment-text{color:#ffffffe6}.comment-location,.empty-state{color:#ffffffb3}}.dashboard-container{max-width:1400px;margin:0 auto;padding:2rem;position:relative}.dashboard-container:has(.modal-overlay){height:auto;overflow:visible}.modal-overlay{z-index:9999;pointer-events:auto;background:#00000080;justify-content:center;align-items:center;padding:0;display:flex;position:fixed!important;inset:0!important}.modal-content{-webkit-overflow-scrolling:touch;pointer-events:auto;background:#fff;border-radius:12px;width:calc(100% - 2rem);max-width:800px;max-height:calc(100vh - 4rem);margin:2rem auto;padding:0;animation:.2s ease-out modalSlideIn;position:relative;overflow-x:hidden;box-shadow:0 20px 60px #0000004d;overflow-y:auto!important}.modal-content.reader-group-modal,.modal-content.comment-viewer-modal{max-width:1200px!important}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.dashboard-header{background:#fff;border-radius:12px;margin-bottom:2rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.dashboard-header-content{justify-content:space-between;align-items:flex-start;display:flex}.dashboard-header-left{flex:1}.dashboard-header h1{color:#213547;margin-bottom:.5rem;font-size:2rem}.dashboard-subtitle{color:#6c757d;font-size:1rem}.btn-add-book{white-space:nowrap;flex-shrink:0;max-width:200px;margin-left:2rem}.search-filter{margin-bottom:1.5rem}.clear-search{color:#a0aec0;cursor:pointer;z-index:1;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;padding:0;font-size:1.25rem;transition:all .2s;display:flex;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.books-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.section-header{border-bottom:2px solid #f0f0f0;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;display:flex}.section-header-left,.filter-controls{align-items:center;gap:1rem;display:flex}.role-filter-buttons{gap:.5rem;display:flex}.btn-filter{color:#495057;cursor:pointer;white-space:nowrap;background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:.5rem 1rem;font-size:.875rem;transition:all .2s}.btn-filter:hover{background:#e9ecef;border-color:#adb5bd;transform:translateY(-1px)}.btn-filter.active{color:#fff;background:#6366f1;border-color:#6366f1}.btn-filter.active:hover{background:#4f46e5;border-color:#4f46e5}.section-header h2{color:#213547;margin:0;font-size:1.5rem}.btn-toggle-archived{color:#495057;cursor:pointer;white-space:nowrap;background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:.5rem 1rem;font-size:.875rem;transition:all .2s}.btn-toggle-archived:hover{background:#e9ecef;border-color:#adb5bd;transform:translateY(-1px)}.btn-toggle-archived:active{transform:translateY(0)}.empty-state p{margin-bottom:1.5rem;font-size:1.1rem}.book-card{background:#f8f9fa;border:1px solid #dee2e6;border-radius:12px;padding:1.5rem;transition:transform .2s,box-shadow .2s}.book-card-header{background:#f8f9fa;border-radius:12px;justify-content:space-between;align-items:center;gap:1rem;min-height:140px;max-height:140px;margin-bottom:1rem;padding:1rem;display:flex}.book-title{color:#213547;word-break:break-word;text-align:left;-webkit-line-clamp:4;text-overflow:ellipsis;-webkit-box-orient:vertical;flex:1;margin:0;font-size:1.25rem;line-height:1.4;display:-webkit-box;overflow:hidden}.book-status{text-transform:uppercase;white-space:nowrap;border-radius:20px;padding:.25rem .75rem;font-size:.75rem;font-weight:600}.status-active{color:#155724;background-color:#d4edda}.book-card-body{margin-bottom:1.5rem}.book-progress{border-top:1px solid #dee2e6;margin-top:1rem;padding-top:.75rem}.book-info{border-bottom:1px solid #dee2e6;justify-content:space-between;padding:.5rem 0;display:flex}.book-info:last-child{border-bottom:none}.info-label{color:#6c757d;font-size:.875rem;font-weight:500}.info-value{color:#213547;font-size:.875rem}.book-card-actions{flex-direction:column;gap:.5rem;display:flex}.book-card-actions button{width:100%;padding:.5rem 1rem;font-size:.875rem}@media (width<=768px){.books-grid{grid-template-columns:1fr}.section-header{flex-direction:column;align-items:stretch;gap:1rem}.section-header-left{flex-direction:column;align-items:stretch;gap:.75rem}.section-header button,.btn-toggle-archived{width:100%}.book-card-actions{flex-direction:column}.book-card-actions button{width:100%}.modal-content{width:calc(100% - 2rem);margin:1rem auto}.pagination{flex-direction:column;gap:1rem}.pagination-button{width:100%}}@media (prefers-color-scheme:dark){.dashboard-container{background:#1a1a1a}.dashboard-header{background:#2a2a2a!important;box-shadow:0 1px 3px #0000004d!important}.dashboard-header h1,.section-header h2,.book-title,.info-value{color:#ffffffde}.dashboard-subtitle{color:#fff9}.modal-overlay{background:#000c}.modal-content{background:#2a2a2a}.search-input{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.search-input::placeholder{color:#fff6}.search-input:focus{background:#2a2a2a;border-color:#667eea}.clear-search{color:#fff9}.clear-search:hover{color:#ffffffde;background:#3a3a3a}.clear-search:active{background:#4a4a4a}.suggestions-dropdown{background:#2a2a2a;border-color:#3a3a3a;box-shadow:0 4px 12px #00000080}.suggestion-item{color:#ffffffde;border-bottom-color:#3a3a3a}.suggestion-item:hover,.suggestion-item.selected{background:#3a3a3a}.suggestion-type{color:#fff6}.search-results-info{color:#fff9;background:#2a2a2a}.books-section{background:#2a2a2a;box-shadow:0 2px 8px #0000004d}.book-card{border-color:#3a3a3a;background:#1e1e1e!important}.book-card-body,.book-card-actions{background:#1e1e1e}.section-header,.book-info{border-bottom-color:#3a3a3a}.book-progress{border-top-color:#3a3a3a}.info-label{color:#fff9}.btn-toggle-archived{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.btn-toggle-archived:hover{background:#2a2a2a;border-color:#4a4a4a}.btn-filter{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.btn-filter:hover{background:#2a2a2a;border-color:#4a4a4a}.btn-filter.active{color:#fff;background:#667eea;border-color:#667eea}.empty-state,.empty-state p{color:#fff9}.pagination{border-top-color:#3a3a3a}.pagination-button{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.pagination-button:hover:not(:disabled){background:#2a2a2a;border-color:#4a4a4a}.pagination-info{color:#ffffffde}.pagination-count{color:#fff9}.invitation-card{background:#1e1e1e;border-color:#3a3a3a}.invitation-card h3{color:#ffffffde}.invitation-card p{color:#fff9}}@media (width<=640px){.invitation-card{flex-direction:column;align-items:stretch}.accept-button{width:100%}}.admin-billing-controls{background:#fff;border-radius:12px;flex-direction:column;gap:1.5rem;padding:2rem;display:flex;box-shadow:0 1px 3px #0000001a}.admin-billing-controls-header{margin-bottom:.5rem}.admin-billing-controls-header h2{color:#1a202c;margin:0 0 .25rem;font-size:1.5rem;font-weight:600}.admin-billing-controls-description{color:#718096;margin:0;font-size:.875rem}.admin-billing-controls-loading{color:#718096;justify-content:center;align-items:center;padding:3rem;font-size:.9375rem;display:flex}.admin-billing-controls-error{color:#c53030;text-align:center;background:#fff5f5;border:1px solid #feb2b2;border-radius:8px;flex-direction:column;align-items:center;gap:1rem;padding:2rem;font-size:.875rem;display:flex}.admin-billing-controls-retry-btn{color:#c53030;cursor:pointer;background:0 0;border:1px solid #c53030;border-radius:6px;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:background-color .2s}.admin-billing-controls-retry-btn:hover{background:#fff0f0}.admin-billing-complimentary{background:#f8f9fa;border:1px solid #e2e8f0;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:1.25rem;display:flex}.admin-billing-complimentary-info{flex-direction:column;gap:.25rem;display:flex}.admin-billing-complimentary-label{color:#2d3748;font-size:.9375rem;font-weight:600}.admin-billing-complimentary-hint{color:#718096;font-size:.8125rem}.admin-billing-complimentary-toggle{align-items:center;gap:.5rem;display:inline-flex;position:relative}.admin-billing-toggle-switch{cursor:pointer;background:#cbd5e0;border:none;border-radius:12px;width:44px;height:24px;transition:background-color .2s;position:relative}.admin-billing-toggle-switch:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000026}.admin-billing-toggle-switch.is-active{background:#48bb78}.admin-billing-toggle-switch.is-active:after{transform:translate(20px)}.admin-billing-toggle-switch:disabled{opacity:.6;cursor:not-allowed}.admin-billing-toggle-status{color:#4a5568;font-size:.8125rem;font-weight:500}.admin-billing-payments{flex-direction:column;gap:.75rem;display:flex}.admin-billing-payments-title{color:#2d3748;margin:0;font-size:1.125rem;font-weight:600}.admin-billing-payments-empty{text-align:center;color:#718096;background:#f8f9fa;border-radius:8px;padding:1.5rem;font-size:.875rem}.admin-billing-payments-table-wrapper{border:1px solid #e2e8f0;border-radius:10px;overflow-x:auto}.admin-billing-payments-table{border-collapse:collapse;width:100%}.admin-billing-payments-table th{text-align:left;color:#4a5568;text-transform:uppercase;letter-spacing:.05em;background:#f7fafc;border-bottom:2px solid #e2e8f0;padding:.75rem 1rem;font-size:.75rem;font-weight:600}.admin-billing-payments-table td{color:#2d3748;border-bottom:1px solid #f1f3f5;padding:.75rem 1rem;font-size:.875rem}.admin-billing-payments-table tr:last-child td{border-bottom:none}.admin-billing-payments-table tr:hover{background:#f7fafc}.admin-billing-status-badge{border-radius:20px;padding:.2rem .6rem;font-size:.75rem;font-weight:600;display:inline-block}.admin-billing-status-badge.is-succeeded{color:#276749;background:#e7f9ed}.admin-billing-status-badge.is-failed{color:#c53030;background:#fff5f5}.admin-billing-status-badge.is-refunded{color:#2b6cb0;background:#ebf4ff}.admin-billing-status-badge.is-partially-refunded{color:#92400e;background:#fefce8}.admin-billing-charge-id{color:#718096;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.8125rem}.admin-billing-refund-btn{color:#667eea;cursor:pointer;background:0 0;border:1px solid #667eea;border-radius:6px;padding:.375rem .75rem;font-size:.75rem;font-weight:500;transition:background-color .2s}.admin-billing-refund-btn:hover{background:#667eea0d}.admin-billing-refund-btn:disabled{opacity:.6;cursor:not-allowed}.admin-billing-refund-form{align-items:center;gap:.5rem;display:flex}.admin-billing-refund-input{color:#2d3748;border:1px solid #cbd5e0;border-radius:6px;width:90px;padding:.375rem .5rem;font-size:.8125rem}.admin-billing-refund-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 2px #667eea26}.admin-billing-refund-submit{color:#fff;cursor:pointer;background:#667eea;border:none;border-radius:6px;padding:.375rem .625rem;font-size:.75rem;font-weight:600;transition:background-color .2s}.admin-billing-refund-submit:hover{background:#5a67d8}.admin-billing-refund-submit:disabled{cursor:not-allowed;background:#a0aec0}.admin-billing-refund-cancel{color:#718096;cursor:pointer;background:0 0;border:1px solid #e2e8f0;border-radius:6px;padding:.375rem .625rem;font-size:.75rem;font-weight:500;transition:background-color .2s}.admin-billing-refund-cancel:hover{background:#f8f9fa}.admin-billing-refund-error{color:#c53030;background:#fff5f5;border:1px solid #feb2b2;border-radius:6px;margin-top:.5rem;padding:.5rem .75rem;font-size:.8125rem}@media (width<=768px){.admin-billing-controls{padding:1.25rem}.admin-billing-complimentary{flex-direction:column;align-items:flex-start}.admin-billing-payments-table th,.admin-billing-payments-table td{padding:.5rem .75rem;font-size:.8125rem}}@media (prefers-color-scheme:dark){.admin-billing-controls{background:#2a2a2a;box-shadow:0 1px 3px #0000004d}.admin-billing-controls-header h2{color:#ffffffde}.admin-billing-controls-description,.admin-billing-controls-loading{color:#fff9}.admin-billing-controls-error{color:#fc8181;background:#c530301a;border-color:#c530304d}.admin-billing-controls-retry-btn{color:#fc8181;border-color:#fc8181}.admin-billing-controls-retry-btn:hover{background:#c530301a}.admin-billing-complimentary{background:#1e1e1e;border-color:#3a3a3a}.admin-billing-complimentary-label{color:#ffffffde}.admin-billing-complimentary-hint{color:#fff9}.admin-billing-toggle-status{color:#ffffffb3}.admin-billing-payments-title{color:#ffffffde}.admin-billing-payments-empty{color:#fff9;background:#1e1e1e}.admin-billing-payments-table-wrapper{border-color:#3a3a3a}.admin-billing-payments-table th{color:#ffffffb3;background:#1e1e1e;border-bottom-color:#3a3a3a}.admin-billing-payments-table td{color:#ffffffde;border-bottom-color:#3a3a3a}.admin-billing-payments-table tr:hover{background:#333}.admin-billing-status-badge.is-succeeded{color:#68d391;background:#27674926}.admin-billing-status-badge.is-failed{color:#fc8181;background:#c5303026}.admin-billing-status-badge.is-refunded{color:#63b3ed;background:#2b6cb026}.admin-billing-status-badge.is-partially-refunded{color:#f6ad55;background:#92400e26}.admin-billing-charge-id{color:#ffffff80}.admin-billing-refund-input{color:#ffffffde;background:#2a2a2a;border-color:#4a4a4a}.admin-billing-refund-input:focus{border-color:#667eea}.admin-billing-refund-cancel{color:#fff9;border-color:#3a3a3a}.admin-billing-refund-cancel:hover{background:#333}.admin-billing-refund-error{color:#fc8181;background:#c530301a;border-color:#c530304d}}.user-manager-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.user-manager-modal{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.close-button{color:#a0aec0;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:2rem;transition:all .2s;display:flex}.close-button:hover{color:#4a5568;background:#edf2f7}.user-form{padding:1.5rem}.form-group input,.form-group select{color:#2d3748;box-sizing:border-box;border:1px solid #cbd5e0;border-radius:8px;width:100%;padding:.75rem;font-size:.9375rem;transition:all .2s}.form-group input:focus,.form-group select:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled,.form-group select:disabled{cursor:not-allowed;background:#f7fafc}.form-hint{color:#718096;margin-top:.375rem;font-size:.8125rem;display:block}.error-message{color:#c53030;background:#fed7d7;border-left:4px solid #fc8181;border-radius:8px;margin-bottom:1.5rem;padding:.75rem 1rem;font-size:.875rem}.form-actions button{cursor:pointer;border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:600;transition:all .2s}.form-actions .btn-primary{color:#fff;background:#667eea}.form-actions .btn-primary:hover:not(:disabled){background:#5a67d8;transform:translateY(-1px);box-shadow:0 4px 6px #667eea4d}.form-actions .btn-primary:disabled{cursor:not-allowed;background:#cbd5e0}.form-actions .btn-secondary{color:#4a5568;background:#edf2f7}.form-actions .btn-secondary:hover:not(:disabled){background:#e2e8f0}.form-actions .btn-secondary:disabled{opacity:.5;cursor:not-allowed;opacity:.5;cursor:not-allowed}.form-row{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem;display:grid}.form-row .form-group{margin-bottom:0}.tags-container{flex-wrap:wrap;gap:.5rem;min-height:2rem;margin-bottom:1rem;display:flex}.tag{color:#fff;background:#667eea;border-radius:20px;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.875rem;display:inline-flex}.tag-remove{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:1.25rem;height:1.25rem;padding:0;font-size:1.25rem;line-height:1;transition:background-color .2s;display:flex}.tag-remove:hover:not(:disabled){background:#fff3}.tag-remove:disabled{opacity:.5;cursor:not-allowed}.tag-input-group{align-items:flex-start;gap:.5rem;display:flex}.tag-input-wrapper{flex:1;position:relative}.tag-input{color:#2d3748;box-sizing:border-box;border:1px solid #cbd5e0;border-radius:8px;width:100%;padding:.75rem;font-size:.9375rem;transition:all .2s}.tag-input:disabled{cursor:not-allowed;background:#f7fafc}.tag-suggestion-item{cursor:pointer;color:#2d3748;border-bottom:1px solid #f7fafc;padding:.75rem 1rem;font-size:.9375rem;transition:background-color .15s}.tag-suggestion-item:last-child{border-bottom:none}.tag-suggestion-item:hover,.tag-suggestion-item.selected{color:#667eea;background:#f7fafc}.btn-small{padding:.75rem 1rem!important;font-size:.875rem!important}@media (width<=640px){.user-manager-modal{border-radius:0;max-width:100%;max-height:100vh;margin:0}.modal-header{padding:1rem}.modal-header h2{font-size:1.25rem}.user-form{padding:1rem}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}.form-row{grid-template-columns:1fr}.tag-input-group{flex-direction:column}.tag-input-group button{width:100%}}@media (prefers-color-scheme:dark){.user-manager-modal{background:#2a2a2a}.modal-header{border-bottom-color:#3a3a3a}.modal-header h2{color:#ffffffde}.close-button{color:#fff9}.close-button:hover{background-color:#3a3a3a}.error-message{color:#fca5a5;background-color:#3a1e1e;border-color:#4a2a2a}.form-group label{color:#ffffffde}.form-group input,.form-group select{color:#ffffffde;background-color:#1e1e1e;border-color:#3a3a3a}.form-group input:focus,.form-group select:focus{background-color:#2a2a2a;border-color:#667eea}.form-hint{color:#fff6}.tags-container{background-color:#1e1e1e;border-color:#3a3a3a}.tag{color:#fff;background-color:#667eea}.tag-input{color:#ffffffde;background-color:#1e1e1e;border-color:#3a3a3a}.tag-input:focus{background-color:#2a2a2a;border-color:#667eea}.tag-suggestions-dropdown{background-color:#2a2a2a;border-color:#3a3a3a;box-shadow:0 4px 12px #00000080}.tag-suggestion-item{color:#ffffffde;border-bottom-color:#3a3a3a}.tag-suggestion-item:hover,.tag-suggestion-item.selected{background-color:#3a3a3a}.btn-secondary{color:#ffffffde;background-color:#1e1e1e}.btn-secondary:hover{background-color:#2a2a2a}}.bulk-upload-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.bulk-upload-modal{background:#fff;border-radius:8px;width:90%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 6px #0000001a}.bulk-upload-modal .modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.bulk-upload-modal .modal-header h2{color:#111827;margin:0;font-size:1.5rem}.bulk-upload-modal .close-button{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:1.5rem;transition:background-color .2s;display:flex}.bulk-upload-modal .close-button:hover{background-color:#f3f4f6}.bulk-upload-modal .modal-body{padding:1.5rem}.instructions{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;margin-bottom:1.5rem;padding:1rem}.instructions h3{color:#374151;margin:0 0 .75rem;font-size:1rem}.instructions ol{color:#6b7280;margin:0 0 1rem;padding-left:1.5rem}.instructions li{margin-bottom:.5rem}.upload-form{flex-direction:column;gap:1.25rem;display:flex}.form-group input[type=file],.form-group select{border:1px solid #d1d5db;border-radius:4px;padding:.5rem;font-size:.875rem}.form-group select{cursor:pointer;background-color:#fff}.form-hint{color:#6b7280;font-size:.75rem}.file-info{color:#059669;background-color:#d1fae5;border-radius:4px;padding:.5rem;font-size:.875rem}.upload-result{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:1rem}.upload-result h3{color:#374151;margin:0 0 1rem;font-size:1rem}.result-summary{gap:1rem;margin-bottom:1rem;display:flex}.result-stat{border-radius:4px;flex:1;justify-content:space-between;align-items:center;padding:.75rem;display:flex}.result-stat.success{background-color:#d1fae5;border:1px solid #a7f3d0}.result-stat.failed{background-color:#fee2e2;border:1px solid #fecaca}.stat-label{font-size:.875rem;font-weight:500}.result-stat.success .stat-label{color:#065f46}.result-stat.failed .stat-label{color:#991b1b}.stat-value{font-size:1.5rem;font-weight:700}.result-stat.success .stat-value{color:#059669}.result-stat.failed .stat-value{color:#dc2626}.error-details{margin-top:1rem}.error-details h4{color:#991b1b;margin:0 0 .5rem;font-size:.875rem}.error-list{background-color:#fff;border:1px solid #fecaca;border-radius:4px;max-height:200px;padding:.5rem;overflow-y:auto}.error-item{color:#991b1b;border-bottom:1px solid #fee2e2;padding:.5rem;font-size:.75rem}.error-item:last-child{border-bottom:none}.btn-primary,.btn-secondary,.btn-small{cursor:pointer;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.btn-secondary{color:#374151;background-color:#f3f4f6;border:1px solid #d1d5db}.btn-small{white-space:nowrap;padding:.5rem 1rem;font-size:.8125rem}@media (prefers-color-scheme:dark){.bulk-upload-modal{background:#2a2a2a}.bulk-upload-modal .modal-header{border-bottom-color:#3a3a3a}.bulk-upload-modal .modal-header h2{color:#ffffffde}.bulk-upload-modal .close-button{color:#fff9}.bulk-upload-modal .close-button:hover{background-color:#3a3a3a}.instructions{background-color:#1e1e1e;border-color:#3a3a3a}.instructions h3{color:#ffffffde}.instructions ol{color:#fff9}.form-group label{color:#ffffffde}.form-group input[type=file],.form-group select{color:#ffffffde;background-color:#1e1e1e;border-color:#3a3a3a}.form-group select{background-color:#1e1e1e}.form-hint{color:#fff6}.file-info{color:#86efac;background-color:#1e3a2a;border-color:#2a4a3a}.error-message{color:#fca5a5;background-color:#3a1e1e;border-color:#4a2a2a}.upload-result{background-color:#1e1e1e;border-color:#3a3a3a}.upload-result h3{color:#ffffffde}.result-stat.success{background-color:#1e3a2a;border-color:#2a4a3a}.result-stat.success .stat-label{color:#86efac}.result-stat.success .stat-value{color:#4ade80}.result-stat.failed{background-color:#3a1e1e;border-color:#4a2a2a}.result-stat.failed .stat-label{color:#fca5a5}.result-stat.failed .stat-value{color:#f87171}.error-details h4{color:#fca5a5}.error-list{background-color:#2a2a2a;border-color:#4a2a2a}.error-item{color:#fca5a5;border-bottom-color:#3a1e1e}.btn-secondary{color:#ffffffde;background-color:#1e1e1e;border-color:#3a3a3a}.btn-secondary:hover:not(:disabled){background-color:#2a2a2a}}.superadmin-dashboard{max-width:1400px;margin:0 auto;padding:2rem}.superadmin-header{background:#fff;border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem;display:flex;box-shadow:0 1px 3px #0000001a}.superadmin-header h1{color:#1a202c;margin:0;font-size:2rem;font-weight:600}.superadmin-header .header-buttons{flex-flow:wrap;align-items:center;gap:.75rem;display:flex}.superadmin-header .header-buttons .btn-secondary,.superadmin-header .header-buttons .btn-primary{white-space:nowrap;padding:.5rem 1rem;font-size:.875rem}.btn-add-user{white-space:nowrap;flex-shrink:0}.superadmin-error{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:400px;display:flex}.superadmin-error p{color:#e53e3e;font-size:1.125rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:3rem;display:grid}.stat-card{text-align:center;background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.stat-label{color:#718096;text-transform:uppercase;letter-spacing:.05em;font-size:.875rem}.users-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.section-header{margin-bottom:1.5rem}.filters-container{flex-wrap:nowrap;align-items:center;gap:1.5rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.search-section{margin-bottom:.75rem}.filter-group{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.filter-label{color:#4a5568;white-space:nowrap;margin:0;font-size:.875rem;font-weight:600}.segmented-control{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;gap:2px;padding:2px;display:inline-flex}.segmented-control .segment{color:#4a5568;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:6px;padding:.4rem .75rem;font-size:.8125rem;font-weight:500;line-height:1.5;transition:all .15s}.segmented-control .segment:hover{color:#2d3748;background:#edf2f7}.segmented-control .segment.active{color:#667eea;background:#fff;font-weight:600;box-shadow:0 1px 3px #0000001a}.search-filter{width:100%;position:relative}.search-input{color:#2d3748;background:#fff;border:1px solid #e2e8f0;border-radius:8px;width:100%;padding:.4rem 2.5rem .4rem 1rem;font-size:.875rem;line-height:1.5;transition:border-color .2s}.role-filter{align-items:center;gap:.5rem;display:flex}.role-filter label{color:#4a5568;white-space:nowrap;margin:0;padding:0;font-size:.875rem;font-weight:600;line-height:1.5}.role-select{color:#2d3748;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;min-width:200px;padding:.4rem 1rem;font-size:.875rem;line-height:1.5;transition:border-color .2s}.role-select:hover{border-color:#667eea}.role-select:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.filter-results-info{color:#4a5568;background:#f7fafc;border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500}.default-view-info{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500}.users-table-container{overflow-x:auto}.users-table{border-collapse:collapse;width:100%}.users-table thead{background:#f7fafc;border-bottom:2px solid #e2e8f0}.users-table th{text-align:left;color:#4a5568;text-transform:uppercase;letter-spacing:.05em;padding:1rem;font-size:.875rem;font-weight:600}.users-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.users-table tbody tr.clickable-row:hover,.users-table tbody tr:hover{background:#f7fafc}.users-table tbody tr.current-user-row{background:#fef5e7}.users-table tbody tr.current-user-row:hover{background:#fdebd0}.users-table td{color:#2d3748;padding:1rem;font-size:.9375rem}.current-user-badge{color:#fff;background:#667eea;border-radius:4px;margin-left:.5rem;padding:.25rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.action-buttons{gap:.5rem;display:flex}.btn-small{cursor:pointer;border:none;border-radius:6px;padding:.375rem .75rem;font-size:.875rem;font-weight:500;transition:all .2s}.btn-small.btn-secondary{color:#4a5568;background:#edf2f7}.btn-small.btn-secondary:hover{background:#e2e8f0}.btn-small.btn-danger{color:#c53030;background:#fed7d7}.btn-small.btn-danger:hover{color:#fff;background:#fc8181}.btn-small:disabled{opacity:.5;cursor:not-allowed}.btn-small:disabled:hover{color:#4a5568;background:#edf2f7;transform:none}.btn-small.btn-danger:disabled:hover{color:#c53030;background:#fed7d7}.pagination{border-top:1px solid #e2e8f0;justify-content:center;align-items:center;gap:1.5rem;margin-top:2rem;padding-top:2rem;display:flex}.pagination-button:hover:not(:disabled){background:#e9ecef;border-color:#adb5bd;transform:translateY(-1px)}@media (width<=768px){.superadmin-dashboard{padding:1rem}.superadmin-header{flex-direction:column;align-items:flex-start;gap:1rem}.superadmin-header .header-buttons{flex-direction:column;align-items:flex-end;width:100%}.stats-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.section-header{flex-direction:column;align-items:flex-start;gap:1rem}.filters-container{flex-direction:column;align-items:stretch;width:100%;overflow-x:visible}.filter-group{flex-direction:column;align-items:stretch;gap:.5rem}.segmented-control{width:100%;overflow-x:auto}.segmented-control .segment{flex:1;min-width:0;padding:.4rem .5rem;font-size:.75rem}.search-filter{width:100%;min-width:unset}.users-table{font-size:.875rem}.users-table th,.users-table td{padding:.75rem .5rem}.action-buttons{flex-direction:column}.btn-small{width:100%}.pagination{flex-direction:column;gap:1rem}.pagination-button{width:100%}}@media (width<=480px){.stats-grid{grid-template-columns:1fr}.stat-value{font-size:2rem}}.status-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:9999px;margin-right:.5rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-block}.status-pending{color:#856404;background:#fff3cd}.status-active{color:#155724;background:#d4edda}.status-suspended{color:#721c24;background:#f8d7da}.verification-badge{color:#856404;text-transform:uppercase;background:#ffc107;border-radius:4px;padding:.25rem .5rem;font-size:.7rem;font-weight:600;display:inline-block}.btn-small.btn-success{color:#155724;background:#d4edda}.btn-small.btn-success:hover{background:#c3e6cb}.btn-small.btn-warning{color:#856404;background:#fff3cd}.btn-small.btn-warning:hover{background:#ffeaa7}.action-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.btn-small.btn-admin{color:#6b46c1;background:#e9d5ff}.btn-small.btn-admin:hover{background:#ddd6fe}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:1.5rem 1.5rem 0;display:flex}.modal-header h2{color:#1a202c;margin:0;font-size:1.25rem;font-weight:600}.modal-close{color:#718096;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem;font-size:1.5rem;transition:all .2s}.modal-close:hover{color:#4a5568;background:#f7fafc}.modal-body{padding:0 1.5rem 1.5rem;overflow:visible}.warning-text{color:#744210;background:#fef5e7;border:1px solid #f6e05e;border-radius:8px;margin-bottom:1.5rem;padding:1rem;font-size:.875rem}.user-details{background:#f7fafc;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.user-details p{color:#4a5568;margin:.5rem 0;font-size:.875rem}.user-details p:first-child{margin-top:0}.user-details p:last-child{margin-bottom:0}.password-confirmation{margin-bottom:1.5rem}.password-confirmation label{color:#4a5568;margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.password-input{border:1px solid #e2e8f0;border-radius:8px;width:100%;padding:.75rem;font-size:.875rem;transition:border-color .2s}.password-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.modal-footer{border-top:1px solid #e2e8f0;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding:1.5rem;display:flex}.modal-footer button{cursor:pointer;border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;transition:all .2s}.action-bar{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;justify-content:space-between;align-items:center;min-height:60px;margin-bottom:1rem;padding:1rem;display:flex}.action-bar .selection-info{color:#4a5568;font-size:.875rem;font-weight:600}.current-user-warning{color:#d69e2e;font-size:.8rem;font-weight:500}.action-bar .action-buttons{flex-wrap:wrap;align-items:center;gap:.75rem;min-height:36px;display:flex}.action-bar .action-buttons button{cursor:pointer;text-align:center;white-space:nowrap;box-sizing:border-box;border:none;border-radius:6px;width:140px;font-size:.875rem;font-weight:600;transition:all .2s;min-width:140px!important;padding:.5rem 1rem!important}.action-bar .action-buttons .btn-warning,.action-bar .action-buttons .btn-success,.action-bar .action-buttons .btn-admin,.action-bar .action-buttons .btn-danger,.action-bar .action-buttons .btn-secondary{width:140px;min-width:140px!important;padding:.5rem 1rem!important}.btn-warning{color:#856404;background:#fff3cd}.btn-warning:hover{background:#ffeaa7}.btn-success{color:#155724;background:#d4edda}.btn-success:hover{background:#c3e6cb}.btn-admin{color:#6b46c1;background:#e9d5ff}.btn-admin:hover{background:#ddd6fe}.btn-admin:disabled{opacity:.5;cursor:not-allowed}.btn-danger:hover{color:#fff;background:#fc8181}.btn-danger:disabled:hover{color:#c53030;background:#fed7d7}.users-table tbody tr.selected{background:#ebf8ff}.users-table tbody tr.selected:hover{background:#bee3f8}.users-table tbody tr.selected.current-user-row{background:#fef5e7}.users-table tbody tr.selected.current-user-row:hover{background:#fdebd0}.clickable-cell{cursor:pointer}.info-text{color:#2c5282;background:#ebf8ff;border:1px solid #90cdf4;border-radius:8px;margin-bottom:1.5rem;padding:1rem;font-size:.875rem}.genre-tag-input-section{margin-bottom:1rem}.genre-tag-input-section label{color:#4a5568;margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.tag-input-container{position:relative}.tag-input-wrapper{gap:.5rem;display:flex}.tag-input{border:1px solid #e2e8f0;border-radius:8px;flex:1;padding:.75rem;font-size:.875rem;transition:border-color .2s}.tag-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.btn-add-tag{color:#fff;cursor:pointer;background:#667eea;border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;transition:all .2s}.btn-add-tag:hover:not(:disabled){background:#5568d3}.btn-add-tag:disabled{opacity:.5;cursor:not-allowed}.tag-suggestions-dropdown{z-index:10000;background:#fff;border:1px solid #e2e8f0;border-radius:8px;max-height:240px;position:absolute;bottom:calc(100% + .5rem);left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #00000026}.tag-suggestion-item{cursor:pointer;color:#2d3748;padding:.75rem 1rem;font-size:.875rem;transition:background-color .2s}.tag-suggestion-item:hover{background:#f7fafc}.tag-suggestion-item:active{background:#edf2f7}.selected-tags{background:#f7fafc;border-radius:8px;flex-wrap:wrap;gap:.5rem;min-height:3rem;margin-top:1rem;padding:1rem;display:flex}.tag-badge{color:#fff;background:#667eea;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.875rem;font-weight:500;display:inline-flex}.tag-remove{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:1rem;height:1rem;padding:0;font-size:1rem;transition:background-color .2s;display:flex}.tag-remove:hover{background:#fff3}.users-to-elevate{background:#f7fafc;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.users-to-elevate h3{color:#4a5568;margin:0 0 .75rem;font-size:1rem;font-weight:600}.users-to-elevate ul{margin:0;padding:0;list-style:none}.users-to-elevate li{color:#4a5568;border-bottom:1px solid #e2e8f0;padding:.5rem 0;font-size:.875rem}.users-to-elevate li:last-child{border-bottom:none}@media (prefers-color-scheme:dark){.superadmin-dashboard{background:#1a1a1a}.superadmin-header{background:#2a2a2a!important;box-shadow:0 1px 3px #0000004d!important}.superadmin-header h1{color:#ffffffde}.users-section{background:#2a2a2a}.section-header{border-bottom-color:#3a3a3a}.filter-results-info{color:#fff9;background:#1e1e1e}.default-view-info{color:#93c5fd;background:#1e2a3a;border-color:#2a4a6a}.action-bar{background:#1e1e1e;border-color:#3a3a3a}.selection-info{color:#ffffffde}.users-table{background:#2a2a2a}.users-table thead{background:#1e1e1e;border-bottom-color:#3a3a3a}.users-table th{color:#fff9}.users-table tbody tr{border-bottom-color:#3a3a3a}.users-table tbody tr:hover{background:#3a3a3a}.users-table tbody tr.current-user-row{background:#2a2a1e}.users-table tbody tr.current-user-row:hover{background:#3a3a2a}.users-table tbody tr.selected{background:#1e2a3a}.users-table tbody tr.selected:hover{background:#2a3a4a}.users-table td{color:#ffffffde}.search-input{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.search-input::placeholder{color:#fff6}.search-input:focus{background:#2a2a2a;border-color:#667eea}.clear-search{color:#fff9}.clear-search:hover{color:#ffffffde;background:#3a3a3a}.clear-search:active{background:#4a4a4a}.filter-label{color:#ffffffde}.segmented-control{background:#1e1e1e;border-color:#3a3a3a}.segmented-control .segment{color:#ffffffde}.segmented-control .segment:hover{color:#fffffff2;background:#2a2a2a}.segmented-control .segment.active{color:#93c5fd;background:#3a3a3a;box-shadow:0 1px 3px #00000080}.empty-state,.empty-state p{color:#fff9}.pagination{border-top-color:#3a3a3a}.pagination-button{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.pagination-button:hover:not(:disabled){background:#2a2a2a;border-color:#4a4a4a}.pagination-info{color:#ffffffde}.pagination-count{color:#fff9}.modal-overlay{background:#000c}.modal-content{background:#2a2a2a}.modal-header{border-bottom-color:#3a3a3a}.modal-header h2{color:#ffffffde}.modal-close{color:#fff9}.modal-close:hover{color:#ffffffde;background:#3a3a3a}.warning-text{color:#fbbf24;background:#3a2a1a;border-color:#5a4a2a}.user-details,.users-to-elevate{background:#1e1e1e}.users-to-elevate h3{color:#ffffffde}.users-to-elevate li{color:#ffffffde;border-bottom-color:#3a3a3a}.password-input{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.password-input:focus{background:#2a2a2a;border-color:#667eea}.modal-footer{border-top-color:#3a3a3a}.btn-secondary{color:#ffffffde;background:#1e1e1e}.btn-secondary:hover{background:#2a2a2a}.info-text{color:#93c5fd;background:#1e2a3a;border-color:#2a4a6a}.tag-input{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.tag-input:focus{background:#2a2a2a;border-color:#667eea}.tag-suggestions-dropdown{background:#2a2a2a;border-color:#3a3a3a}.tag-suggestion-item{color:#ffffffde}.tag-suggestion-item:hover{background:#3a3a3a}.tag-suggestion-item:active{background:#4a4a4a}.selected-tags{background:#1e1e1e}}@media (width<=768px){.signup-mode-options{grid-template-columns:1fr}}.maintenance-mode-section{background:#fff;border-radius:12px;margin-bottom:2rem;padding:2rem;box-shadow:0 1px 3px #0000001a}.maintenance-mode-btn{cursor:pointer;text-align:left;background:#fff;border:2px solid #e2e8f0;border-radius:12px;align-items:center;gap:1rem;padding:1.5rem;transition:all .2s;display:flex}@media (prefers-color-scheme:dark){.signup-mode-section{background:#2a2a2a}.signup-mode-header h2{color:#ffffffde}.signup-mode-description{color:#fff9}.signup-mode-btn{background:#1e1e1e;border-color:#3a3a3a}.signup-mode-btn:hover:not(:disabled){background:#2a2a2a;border-color:#667eea}.signup-mode-btn.active{background:#1e2a3a;border-color:#667eea}.mode-label{color:#ffffffde}.signup-mode-btn.active .mode-label{color:#93c5fd}.mode-description{color:#fff9}.maintenance-mode-section{background:#2a2a2a}.maintenance-mode-btn{background:#1e1e1e;border-color:#3a3a3a}.maintenance-mode-btn:hover:not(:disabled){background:#2a2a2a;border-color:#4a4a4a}.maintenance-mode-btn.active{background:#3a1e1e;border-color:#fc8181}.maintenance-mode-btn.active.danger{background:#3a1e1e;border-color:#fc8181;box-shadow:0 0 0 3px #fc818133}.maintenance-warning{color:#fc8181;background:#3a1e1e;border-color:#fc8181}}.confidentiality-editor{max-width:1200px;margin:0 auto;padding:2rem}.editor-header{background:#fff;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:2rem;padding:1.5rem;display:flex;box-shadow:0 1px 3px #0000001a}.editor-header h1{color:#1a202c;margin:0 0 .5rem;font-size:2rem;font-weight:600}.editor-subtitle{color:#718096;margin:0;font-size:.875rem}.header-actions{flex-wrap:wrap;gap:.75rem;display:flex}.header-actions .btn-secondary{white-space:nowrap;flex-shrink:0;padding:.5rem 1rem;font-size:.875rem}.editor-content{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.editor-info{background:#f7fafc;border-left:4px solid #667eea;border-radius:4px;margin-bottom:2rem;padding:1rem 1.5rem}.editor-info p{color:#4a5568;margin:.5rem 0;font-size:.875rem;line-height:1.5}.editor-info p:first-child{margin-top:0}.editor-info p:last-child{margin-bottom:0}.editor-form{margin-bottom:2rem}.editor-label{color:#2d3748;margin-bottom:.75rem;font-size:.9375rem;font-weight:600;display:block}.editor-textarea{resize:vertical;border:1px solid #e2e8f0;border-radius:8px;width:100%;padding:1rem;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875rem;line-height:1.6;transition:border-color .2s}.editor-textarea:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.editor-actions{justify-content:flex-start;gap:1rem;display:flex}.editor-actions .btn-primary,.editor-actions .btn-secondary{padding:.75rem 1.5rem;font-size:1rem}.error-container{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:400px;display:flex}.error-container p{color:#e53e3e;font-size:1.125rem}@media (width<=768px){.confidentiality-editor{padding:1rem}.editor-header{flex-direction:column;align-items:stretch}.header-actions{flex-direction:column}.editor-textarea{font-size:.8125rem}}@media (prefers-color-scheme:dark){.editor-header,.editor-content{background:#2a2a2a}.editor-header h1{color:#ffffffde}.editor-subtitle{color:#fff9}.editor-info{background:#1e1e1e;border-left-color:#93c5fd}.editor-info p,.editor-label{color:#ffffffde}.editor-textarea{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.editor-textarea:focus{background:#2a2a2a;border-color:#667eea}}.stats-page-container{max-width:1400px;margin:0 auto;padding:2rem}.stats-page-header{margin-bottom:2rem}.stats-page-header h1{color:#213547;margin-bottom:.5rem;font-size:2rem}.stats-subtitle{color:#6c757d;margin:0;font-size:1rem}.stats-search-filter{background:#fff;border-radius:12px;margin-bottom:2rem;padding:1.5rem;box-shadow:0 2px 8px #0000001a}.search-input-wrapper{align-items:center;max-width:600px;display:flex;position:relative}.search-icon{pointer-events:none;opacity:.5;z-index:1;font-size:1.25rem;position:absolute;left:1rem}.search-input{background:#fff;border:2px solid #e2e8f0;border-radius:8px;flex:1;width:100%;padding:.875rem 3rem .875rem 1rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}.search-input:hover{border-color:#cbd5e0}.clear-search{cursor:pointer;color:#4a5568;z-index:1;background:#e2e8f0;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.875rem;transition:background-color .2s;display:flex;position:absolute;right:.75rem}.clear-search:hover{background:#cbd5e0}.suggestions-dropdown{z-index:1000;background:#fff;border:1px solid #e2e8f0;border-radius:8px;max-height:320px;position:absolute;top:calc(100% + .5rem);left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #00000026}.suggestion-item{cursor:pointer;border-bottom:1px solid #f7fafc;align-items:center;gap:.75rem;padding:.75rem 1rem;transition:background-color .15s;display:flex}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover,.suggestion-item.selected{background:#f7fafc}.suggestion-icon{flex-shrink:0;font-size:1.125rem}.suggestion-text{color:#2d3748;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.9375rem;overflow:hidden}.suggestion-type{color:#718096;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;font-size:.75rem;font-weight:600}.search-results-info{color:#6c757d;margin-top:.75rem;font-size:.875rem;font-weight:500}.stats-error{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:400px;display:flex}.stats-error p{color:#dc3545;font-size:1.125rem}.stats-section{background:#fff;border-radius:12px;margin-bottom:2rem;padding:2rem;box-shadow:0 2px 8px #0000001a}.stats-section h2{color:#213547;border-bottom:2px solid #f0f0f0;margin-bottom:1.5rem;padding-bottom:1rem;font-size:1.5rem}.stats-section h3{color:#213547;margin-top:2rem;margin-bottom:1rem;font-size:1.25rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;display:grid}.stat-card{text-align:center;background:#f8f9fa;border:2px solid #0000;border-radius:12px;padding:1.5rem;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.stat-card-success{background:#d4edda;border-color:#c3e6cb}.stat-card-warning{background:#fff3cd;border-color:#ffeaa7}.stat-value{color:#646cff;margin-bottom:.5rem;font-size:2.5rem;font-weight:700}.stat-card-success .stat-value{color:#155724}.stat-card-warning .stat-value{color:#856404}.stat-label{color:#6c757d;text-transform:uppercase;letter-spacing:.5px;font-size:.875rem;font-weight:600}.author-breakdown{margin-top:2rem}.author-list{flex-direction:column;gap:.75rem;display:flex}.author-item{background:#f8f9fa;border-radius:8px;justify-content:space-between;align-items:center;padding:1rem;transition:background-color .2s;display:flex}.author-item:hover{background:#e9ecef}.author-email{color:#495057;font-size:.9375rem;font-weight:500}.author-count{color:#6c757d;background:#fff;border-radius:20px;padding:.25rem .75rem;font-size:.875rem;font-weight:600}.stats-actions{justify-content:center;margin-top:2rem;display:flex}.stats-info-box{text-align:center;background:#f0f7ff;border:1px solid #b3d9ff;border-radius:8px;margin-top:1.5rem;padding:1.5rem}.stats-info-box p{color:#2c5282;margin:0;font-size:.9375rem;line-height:1.5}@media (width<=768px){.stats-page-container{padding:1rem}.stats-section{padding:1.5rem}.stats-grid{grid-template-columns:1fr}.stat-value{font-size:2rem}.author-item{flex-direction:column;align-items:flex-start;gap:.5rem}}@media (prefers-color-scheme:dark){.stats-page-header h1,.stats-section h2,.stats-section h3{color:#ffffffde}.stats-search-filter{background:#2a2a2a}.search-input{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.search-input:hover{border-color:#4a4a4a}.search-input:focus{border-color:#646cff}.search-input::placeholder{color:#fff6}.clear-search{color:#ffffffde;background:#3a3a3a}.clear-search:hover{background:#4a4a4a}.suggestions-dropdown{background:#2a2a2a;border-color:#3a3a3a}.suggestion-item{border-bottom-color:#3a3a3a}.suggestion-item:hover,.suggestion-item.selected{background:#3a3a3a}.suggestion-text{color:#ffffffde}.suggestion-type{color:#fff9}.stats-section{background:#2a2a2a}.stats-section h2{border-bottom-color:#3a3a3a}.stat-card{background:#1e1e1e}.stat-card:hover{background:#2a2a2a}.stat-card-success{background:#1e3a1e;border-color:#2d5a2d}.stat-card-warning{background:#3a3a1e;border-color:#5a5a2d}.author-item{background:#1e1e1e}.author-item:hover{background:#2a2a2a}.author-email{color:#ffffffde}.author-count{color:#fff9;background:#2a2a2a}.stats-info-box{background:#1e3a4a;border-color:#2d5a6d}.stats-info-box p{color:#a0d4f0}}.find-readers-container{max-width:1400px;margin:0 auto;padding:2rem}.find-readers-header{margin-bottom:2rem}.find-readers-header h1{color:#1a202c;margin:0 0 .5rem;font-size:2rem;font-weight:600}.search-section{background:#fff;border-radius:12px;margin-bottom:2rem;padding:2rem;box-shadow:0 1px 3px #0000001a}.search-row{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem;display:grid}.search-field{flex-direction:column;gap:.5rem;display:flex}.search-field label{color:#4a5568;font-size:.875rem;font-weight:600}.search-input-wrapper,.genre-input-wrapper{position:relative}.search-input{border:1px solid #e2e8f0;border-radius:8px;width:100%;padding:.75rem 1rem;font-size:.9375rem;transition:border-color .2s,box-shadow .2s}.search-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.search-input::placeholder{color:#a0aec0}.clear-button{color:#a0aec0;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;padding:0;font-size:1.25rem;transition:all .2s;display:flex;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.clear-button:hover{color:#4a5568;background:#f7fafc}.clear-button:active{background:#edf2f7}.book-selection{border-bottom:1px solid #e2e8f0;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;padding-bottom:1.5rem;display:flex}.book-selection label{color:#4a5568;font-size:.875rem;font-weight:600}.book-select{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.75rem 1rem;font-size:.9375rem;transition:border-color .2s}.book-select:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.results-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.results-header{border-bottom:2px solid #f0f0f0;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.results-header h2{color:#1a202c;margin:0;font-size:1.5rem;font-weight:600}.results-count{color:#718096;font-size:.875rem;font-weight:500}.privacy-notice{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.25rem;display:flex}.privacy-icon{flex-shrink:0;font-size:1.25rem}.privacy-text{color:#4a5568;font-size:.875rem;line-height:1.5}.empty-state{text-align:center;color:#718096;padding:3rem}.empty-state .help-text{color:#a0aec0;font-size:.9375rem}.readers-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;display:grid}.reader-card{background:#f9fafb;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:1rem;padding:1.5rem;transition:all .2s;display:flex}.reader-card:hover{border-color:#cbd5e0;box-shadow:0 2px 8px #00000014}.reader-info{flex:1}.reader-header{align-items:center;gap:.75rem;margin-bottom:.25rem;display:flex}.role-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:12px;padding:.25rem .625rem;font-size:.7rem;font-weight:600;display:inline-block}.role-reader{color:#2c5282;background:#bee3f8}.role-author{color:#2f855a;background:#c6f6d5}.role-admin{color:#c53030;background:#fed7d7}.reader-genres{flex-wrap:wrap;gap:.5rem;display:flex}.genre-tag{color:#fff;background:#667eea;border-radius:20px;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-block}.genre-mismatch-notice{background:#fff3cd;border:1px solid #ffc107;border-radius:6px;align-items:center;gap:.5rem;margin-top:.75rem;padding:.75rem;display:flex}.mismatch-icon{flex-shrink:0;font-size:1rem}.mismatch-text{color:#856404;font-size:.8125rem;font-weight:500}.invite-button{width:100%;margin-top:.75rem;padding:.75rem 1.5rem;font-size:.9375rem}.invite-button:disabled{opacity:.6;cursor:not-allowed}.find-readers-gated{text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;align-items:center;padding:4rem 2rem;display:flex;box-shadow:0 1px 3px #0000001a}.gated-icon{margin-bottom:1.5rem;font-size:3rem}.gated-title{color:#1a202c;margin:0 0 .75rem;font-size:1.5rem;font-weight:600}.gated-description{color:#718096;max-width:420px;margin:0 0 2rem;font-size:1rem;line-height:1.6}.gated-upgrade-button{color:#fff;background:#667eea;border-radius:8px;padding:.75rem 2rem;font-size:1rem;font-weight:600;text-decoration:none;transition:background-color .2s;display:inline-block}.gated-upgrade-button:hover{background:#5a67d8}@media (width<=1024px){.search-row{grid-template-columns:1fr}}@media (width<=768px){.find-readers-container{padding:1rem}.search-section,.results-section{padding:1.5rem}.readers-grid{grid-template-columns:1fr}}@media (prefers-color-scheme:dark){.find-readers-header h1{color:#fffffff2!important}.subtitle{color:#ffffffb3!important}.search-section{background:#2a2a2a!important}.search-field label{color:#ffffffe6!important}.search-input{color:#ffffffe6!important;background:#1e1e1e!important;border-color:#3a3a3a!important}.search-input::placeholder{color:#ffffff80!important}.search-input:focus{border-color:#667eea!important}.book-selection label{color:#ffffffe6!important}.book-select{color:#ffffffe6!important;background:#1e1e1e!important;border-color:#3a3a3a!important}.book-select:focus{border-color:#667eea!important}.results-section{background:#2a2a2a!important}.results-header{border-bottom-color:#3a3a3a!important}.results-header h2{color:#fffffff2!important}.results-count{color:#ffffffb3!important}.privacy-notice{background:#1e1e1e!important;border-color:#3a3a3a!important}.privacy-text,.empty-state,.empty-state p{color:#ffffffb3!important}.empty-state .help-text{color:#ffffff80!important}.reader-card{background:#1e1e1e!important;border-color:#3a3a3a!important}.reader-card:hover{border-color:#4a4a4a!important}.reader-name{color:#fffffff2!important}.reader-email{color:#ffffffb3!important}.genre-mismatch-notice{background:#3a2f1a!important;border-color:#ffc107!important}.mismatch-text{color:#ffc107!important}.no-books-message{color:#ffc107!important;background:#3a2f1a!important;border-color:#ffc107!important}.find-readers-gated{background:#2a2a2a!important;border-color:#3a3a3a!important}.gated-title{color:#fffffff2!important}.gated-description{color:#ffffffb3!important}.gated-upgrade-button{background:#667eea!important}.gated-upgrade-button:hover{background:#5a67d8!important}}.genre-suggestions-dropdown{z-index:1000;background:#fff;border:1px solid #e2e8f0;border-radius:8px;max-height:240px;position:absolute;top:calc(100% + .25rem);left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #00000026}.genre-suggestion-item{cursor:pointer;color:#2d3748;border-bottom:1px solid #f7fafc;padding:.75rem 1rem;font-size:.9375rem;transition:background-color .15s}.genre-suggestion-item:last-child{border-bottom:none}.genre-suggestion-item:hover,.genre-suggestion-item.selected{color:#667eea;background:#f7fafc}@media (prefers-color-scheme:dark){.genre-suggestions-dropdown{background:#2a2a2a;border-color:#3a3a3a}.genre-suggestion-item{color:#ffffffde;border-bottom-color:#3a3a3a}.genre-suggestion-item:hover,.genre-suggestion-item.selected{color:#667eea;background:#3a3a3a}.clear-button{color:#fff9}.clear-button:hover{color:#ffffffde;background:#3a3a3a}.clear-button:active{background:#4a4a4a}.book-selection{border-bottom-color:#3a3a3a}}.no-books-message{color:#856404;background:#fff3cd;border:1px solid #ffc107;border-radius:6px;margin-top:.5rem;padding:.75rem;font-size:.875rem;line-height:1.4}@media (prefers-color-scheme:dark){.no-books-message{color:#ffc107;background:#3a2f1a;border-color:#ffc107}}.access-requests{padding:var(--spacing-2xl);max-width:1200px;margin:0 auto}.access-requests-header{margin-bottom:2rem}.access-requests-header h1{color:#1a202c;margin:0 0 .5rem;font-size:2rem}.subtitle{color:#718096;margin:0;font-size:1rem}@keyframes spin{to{transform:rotate(360deg)}}.error-message{padding:var(--spacing-lg);color:#c53030;border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);background-color:#fed7d7;border:1px solid #fc8181}.requests-list{flex-direction:column;gap:1rem;display:flex}.request-card{border-radius:var(--radius-lg);padding:var(--spacing-xl);transition:all var(--transition-base);background:#fff;border:1px solid #e2e8f0}.request-card:hover{box-shadow:0 4px 12px #0000001a}.request-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.request-info{flex:1}.reader-name{color:#1a202c;margin:0 0 .25rem;font-size:1.25rem;font-weight:600}.reader-email{color:#718096;margin:0;font-size:.875rem}.request-date{flex-direction:column;align-items:flex-end;gap:.25rem;display:flex}.date-label{color:#718096;text-transform:uppercase;letter-spacing:.5px;font-size:.75rem}.date-value{color:#2d3748;font-size:.875rem;font-weight:600}.request-body{padding:var(--spacing-lg);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);background:#f8fafc}.book-info{align-items:baseline;gap:.5rem;display:flex}.book-label{color:#718096;font-size:.875rem;font-weight:500}.book-title{color:#1a202c;font-size:1rem;font-weight:600}.request-footer{justify-content:flex-end;gap:1rem;display:flex}.btn-approve,.btn-deny{padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);border:none;min-width:120px;font-size:1rem;font-weight:600}.btn-approve{color:#fff;background-color:#10b981}.btn-approve:hover:not(:disabled){background-color:#059669;transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-deny{color:#fff;background-color:#ef4444}.btn-deny:hover:not(:disabled){background-color:#dc2626;transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}.btn-approve:disabled,.btn-deny:disabled{opacity:.5;cursor:not-allowed}@media (width<=768px){.access-requests{padding:var(--spacing-lg)}.access-requests-header h1{font-size:1.5rem}.request-header{flex-direction:column}.request-date{align-items:flex-start}.request-footer{flex-direction:column}.btn-approve,.btn-deny{width:100%}}@media (prefers-color-scheme:dark){.access-requests-header h1{color:#fffffff2!important}.subtitle,.loading-state{color:#ffffffb3!important}.spinner{border-color:#667eea #3a3a3a #3a3a3a!important}.error-message{color:#fca5a5!important;background-color:#3a1e1e!important;border-color:#4a2a2a!important}.empty-state{color:#ffffffb3!important;background:#2a2a2a!important}.empty-state h2{color:#fffffff2!important}.empty-state p{color:#ffffffb3!important}.request-card{background:#2a2a2a!important;border-color:#3a3a3a!important}.reader-name{color:#fffffff2!important}.reader-email,.date-label{color:#ffffffb3!important}.date-value{color:#ffffffe6!important}.request-body{background:#1e1e1e!important}.book-label{color:#ffffffb3!important}.book-title{color:#fffffff2!important}}.filters-section{border-radius:var(--radius-lg);padding:var(--spacing-xl);background:#fff;border:1px solid #e2e8f0;flex-direction:column;gap:1.5rem;margin-bottom:2rem;display:flex}.search-input-wrapper{align-items:center;display:flex;position:relative}.scope-buttons{gap:.5rem;display:flex}.scope-btn{border-radius:var(--radius-md);color:#4a5568;cursor:pointer;transition:all var(--transition-base);background:#fff;border:2px solid #e2e8f0;padding:.5rem 1.5rem;font-size:.875rem;font-weight:600}.scope-btn:hover{background:#f7fafc;border-color:#cbd5e0}.scope-btn.active{color:#fff;background:#6366f1;border-color:#6366f1}.search-input,.author-select{border-radius:var(--radius-md);color:#1a202c;transition:all var(--transition-base);background:#fff;border:1px solid #e2e8f0;width:100%;padding:.75rem 2.5rem .75rem 1rem;font-size:.875rem}.search-input:focus,.author-select:focus{border-color:#6366f1;outline:none;box-shadow:0 0 0 3px #6366f11a}.clear-search{color:#a0aec0;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;padding:0;font-size:1.25rem;transition:all .2s;display:flex;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.clear-search:hover{color:#4a5568;background:#f7fafc}.clear-search:active{background:#edf2f7}.author-info{align-items:baseline;gap:.5rem;margin-top:.5rem;display:flex}.author-label{color:#718096;font-size:.875rem;font-weight:500}.author-name{color:#6366f1;font-size:.875rem;font-weight:600}@media (width<=768px){.filters-section{padding:var(--spacing-lg)}.scope-buttons{flex-direction:column}.scope-btn{width:100%}}@media (prefers-color-scheme:dark){.filters-section{background:#2a2a2a!important;border-color:#3a3a3a!important}.filter-group label{color:#ffffffe6!important}.scope-btn{color:#ffffffb3!important;background:#1e1e1e!important;border-color:#3a3a3a!important}.scope-btn:hover{background:#2a2a2a!important;border-color:#4a4a4a!important}.scope-btn.active{color:#fff!important;background:#667eea!important;border-color:#667eea!important}.search-input,.author-select{color:#ffffffe6!important;background:#1e1e1e!important;border-color:#3a3a3a!important}.search-input:focus,.author-select:focus{border-color:#667eea!important;box-shadow:0 0 0 3px #667eea33!important}.clear-search{color:#ffffffb3!important;background:#3a3a3a!important}.clear-search:hover{background:#4a4a4a!important}.author-label{color:#ffffffb3!important}.author-name{color:#818cf8!important}}.rich-text-editor{background:#fff;border:1px solid #ccc;border-radius:4px}.rich-text-editor-toolbar{background:#f5f5f5;border-bottom:1px solid #ccc;flex-wrap:wrap;gap:4px;padding:8px;display:flex}.rich-text-editor-toolbar button{color:#333;cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:3px;min-width:40px;padding:6px 12px;font-size:14px;font-weight:500;transition:all .2s}.rich-text-editor-toolbar button:hover{color:#000;background:#e9e9e9;border-color:#999}.rich-text-editor-toolbar button.is-active{color:#fff;background:#007bff;border-color:#0056b3}.rich-text-editor-toolbar button:focus{outline-offset:2px;outline:2px solid #007bff}.rich-text-editor-toolbar button:disabled{opacity:.5;cursor:not-allowed}.toolbar-separator{background:#ddd;width:1px;margin:0 4px}.rich-text-editor-content{outline:none;min-height:200px;max-height:500px;padding:16px;overflow-y:auto}.rich-text-editor-content:focus{outline:none}.rich-text-editor-content h1{margin:.67em 0;font-size:2em;font-weight:700}.rich-text-editor-content h2{margin:.75em 0;font-size:1.5em;font-weight:700}.rich-text-editor-content h3{margin:.83em 0;font-size:1.17em;font-weight:700}.rich-text-editor-content p{margin:1em 0}.rich-text-editor-content ul,.rich-text-editor-content ol{margin:1em 0;padding-left:2em}.rich-text-editor-content li{margin:.5em 0}.rich-text-editor-content a{color:#007bff;text-decoration:underline}.rich-text-editor-content a:hover{color:#0056b3}.rich-text-editor-content strong{font-weight:700}.rich-text-editor-content em{font-style:italic}.rich-text-editor-content .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:#adb5bd;pointer-events:none;height:0}.help-management-container{max-width:1600px;min-height:100vh;margin:0 auto;padding:2rem}.help-management-header{margin-bottom:2rem}.help-management-header h1{color:#213547;margin-bottom:.5rem;font-size:2rem}.help-management-subtitle{color:#6c757d;margin:0;font-size:1rem}.help-management-error{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:400px;display:flex}.help-management-error p{color:#dc3545;font-size:1.125rem}.help-management-layout{grid-template-columns:300px 1fr;align-items:start;gap:2rem;display:grid}.page-context-list{background:#fff;border-radius:12px;max-height:calc(100vh - 4rem);padding:1.5rem;position:sticky;top:2rem;overflow-y:auto;box-shadow:0 2px 8px #0000001a}.page-context-list h2{color:#213547;border-bottom:2px solid #f0f0f0;margin-bottom:1rem;padding-bottom:.75rem;font-size:1.25rem}.context-list-items{flex-direction:column;gap:.5rem;display:flex}.context-item{cursor:pointer;text-align:left;background:#f8f9fa;border:2px solid #0000;border-radius:8px;flex-direction:column;align-items:stretch;width:100%;padding:.875rem;transition:all .2s;display:flex}.context-item:hover{background:#e9ecef;border-color:#dee2e6}.context-item.active{background:#e7f3ff;border-color:#646cff}.context-item.has-content{border-left:4px solid #28a745}.context-item.no-content{border-left:4px solid #ffc107}.context-item-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.context-name{color:#495057;flex:1;font-size:.9375rem;font-weight:500}.context-item.active .context-name{color:#213547;font-weight:600}.context-status{flex-shrink:0;font-size:1rem}.status-active{color:#28a745}.status-empty{color:#ffc107}.context-last-updated{color:#6c757d;margin-top:.25rem;font-size:.75rem}.help-content-editor{background:#fff;border-radius:12px;min-height:600px;padding:2rem;box-shadow:0 2px 8px #0000001a}.no-selection{color:#6c757d;text-align:center;justify-content:center;align-items:center;min-height:400px;font-size:1.125rem;display:flex}.editor-header{border-bottom:2px solid #f0f0f0;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.editor-header h2{color:#213547;margin:0;font-size:1.5rem}.editor-actions{align-items:center;gap:1rem;display:flex}.unsaved-indicator{color:#ffc107;font-size:.875rem;font-weight:500}.editor-error{color:#721c24;background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.editor-layout{grid-template-columns:1fr 1fr;gap:2rem;display:grid}.editor-panel,.preview-panel{flex-direction:column;display:flex}.editor-panel h3,.preview-panel h3{color:#495057;margin-bottom:1rem;font-size:1.125rem;font-weight:600}.preview-content{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;min-height:400px;padding:1.5rem;overflow-y:auto}.preview-rendered{color:#213547;line-height:1.6}.preview-rendered h1{color:#213547;margin-bottom:1rem;font-size:1.75rem}.preview-rendered h2{color:#213547;margin-bottom:.875rem;font-size:1.5rem}.preview-rendered h3{color:#213547;margin-bottom:.75rem;font-size:1.25rem}.preview-rendered p{margin-bottom:1rem}.preview-rendered ul,.preview-rendered ol{margin-bottom:1rem;padding-left:2rem}.preview-rendered li{margin-bottom:.5rem}.preview-rendered a{color:#646cff;text-decoration:underline}.preview-rendered a:hover{color:#535bf2}.preview-rendered strong{font-weight:600}.preview-rendered em{font-style:italic}.preview-empty{color:#6c757d;text-align:center;margin-top:2rem;font-style:italic}@media (width<=1200px){.help-management-layout{grid-template-columns:250px 1fr}.editor-layout{grid-template-columns:1fr}.preview-panel{margin-top:2rem}}@media (width<=768px){.help-management-container{padding:1rem}.help-management-layout{grid-template-columns:1fr}.page-context-list{max-height:none;margin-bottom:1.5rem;position:static}.editor-header{flex-direction:column;align-items:flex-start;gap:1rem}.editor-actions{justify-content:space-between;width:100%}}@media (prefers-color-scheme:dark){.help-management-header h1{color:#ffffffde}.help-management-subtitle{color:#fff9}.page-context-list,.help-content-editor{background:#2a2a2a}.page-context-list h2,.editor-header h2{color:#ffffffde;border-bottom-color:#3a3a3a}.context-item{background:#1e1e1e;border-color:#0000}.context-item:hover{background:#2a2a2a;border-color:#3a3a3a}.context-item.active{background:#1e3a4a;border-color:#646cff}.context-name{color:#ffffffde}.context-last-updated,.no-selection{color:#fff9}.editor-panel h3,.preview-panel h3{color:#ffffffde}.preview-content{background:#1e1e1e;border-color:#3a3a3a}.preview-rendered,.preview-rendered h1,.preview-rendered h2,.preview-rendered h3{color:#ffffffde}.preview-rendered a{color:#8b95ff}.preview-rendered a:hover{color:#a5aeff}.preview-empty{color:#fff9}.editor-error{color:#f8d7da;background:#3a1e1e;border-color:#5a2d2d}}.banner-management-page{background:#f7fafc;min-height:100vh;padding:2rem}.banner-management-container{max-width:900px;margin:0 auto}.banner-management-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem;display:flex}.banner-management-header h1{color:#1a202c;margin:0 0 .5rem;font-size:2rem}.banner-management-subtitle{color:#718096;margin:0;font-size:1rem}.banner-preview-section{background:#fff;border-radius:12px;margin-bottom:2rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.banner-preview-section h2{color:#2d3748;margin:0 0 1rem;font-size:1.25rem}.banner-preview{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:8px;padding:.75rem 1rem}.banner-preview-content{align-items:center;gap:1rem;display:flex}.banner-preview-icon{flex-shrink:0;font-size:1.25rem}.banner-preview-message{flex:1;font-size:.9375rem;font-weight:500;line-height:1.5}.banner-preview-dismiss{background:#fff3;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.25rem;display:flex}.banner-preview-empty{text-align:center;color:#a0aec0;background:#f7fafc;border:2px dashed #cbd5e0;border-radius:8px;padding:2rem;font-style:italic}.banner-form{background:#fff;border-radius:12px;margin-bottom:2rem;padding:2rem;box-shadow:0 1px 3px #0000001a}.checkbox-label{cursor:pointer;align-items:center;gap:.5rem;font-weight:500;display:flex}.form-textarea,.form-input{border:1px solid #e2e8f0;border-radius:8px;width:100%;padding:.75rem;font-family:inherit;font-size:1rem;transition:border-color .2s}.form-textarea{resize:vertical;min-height:100px}.form-textarea:focus,.form-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.banner-info{background:#f7fafc;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.banner-info p{color:#4a5568;margin:.5rem 0;font-size:.875rem}.form-actions{flex-wrap:wrap;gap:1rem;display:flex}.btn-primary,.btn-secondary,.btn-danger{cursor:pointer;border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:all .2s}.btn-primary:hover:not(:disabled){background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.btn-primary:disabled{cursor:not-allowed;opacity:.6;background:#cbd5e0}.btn-danger{color:#fff;background:#f56565}.btn-danger:hover:not(:disabled){background:#e53e3e;transform:translateY(-1px);box-shadow:0 4px 12px #f565654d}.btn-danger:disabled{cursor:not-allowed;opacity:.6;background:#cbd5e0}.banner-info-section{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.banner-info-section h3{color:#2d3748;margin:0 0 1rem;font-size:1.125rem}.banner-info-section ul{color:#4a5568;margin:0;padding-left:1.5rem}.banner-info-section li{margin-bottom:.5rem;line-height:1.6}@media (width<=768px){.banner-management-page{padding:1rem}.banner-management-header{flex-direction:column}.banner-management-header h1{font-size:1.5rem}.banner-form{padding:1.5rem}.form-actions{flex-direction:column}.btn-primary,.btn-secondary,.btn-danger{width:100%}}.oauth-signup-settings{background:#fff;border-radius:12px;flex-direction:column;gap:24px;padding:2rem;display:flex;box-shadow:0 1px 3px #0000001a}.oauth-settings-header{margin-bottom:8px}.oauth-settings-header h2{color:#333;margin:0 0 8px;font-size:24px;font-weight:600}.oauth-settings-description{color:#666;margin:0;font-size:14px;line-height:1.5}.oauth-settings-info{margin-bottom:8px}.info-box{background:#f0f7ff;border:1px solid #b3d9ff;border-radius:6px;gap:12px;padding:16px;display:flex}.info-icon{flex-shrink:0;font-size:20px}.info-content{flex:1}.info-content strong{color:#06c;margin-bottom:8px;font-size:14px;font-weight:600;display:block}.info-content ul{margin:0;padding-left:20px}.info-content li{color:#333;margin-bottom:4px;font-size:13px;line-height:1.5}.oauth-provider-settings{flex-direction:column;gap:16px;display:flex}.provider-setting{background:#fafafa;border:1px solid #e0e0e0;border-radius:8px;justify-content:space-between;align-items:center;padding:20px;transition:background-color .2s,border-color .2s;display:flex}.provider-setting:hover{background:#f5f5f5;border-color:#d0d0d0}.provider-info{flex:1;align-items:center;gap:16px;display:flex}.provider-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:24px;font-weight:600;display:flex}.google-icon{color:#fff;background:#4285f4}.apple-icon{content:"";background:#000}.apple-icon:before{content:"";font-size:28px}.provider-details{flex:1}.provider-details h3{color:#333;margin:0 0 4px;font-size:16px;font-weight:600}.provider-details p{color:#666;margin:0;font-size:13px}.toggle-switch{cursor:pointer;flex-shrink:0;width:52px;height:28px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0;position:absolute}.toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:22px;height:22px;transition:transform .3s;position:absolute;top:3px;left:3px}.toggle-switch input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}@media (width<=768px){.oauth-signup-settings{padding:16px}.provider-setting{flex-direction:column;align-items:flex-start;gap:16px}.toggle-switch{align-self:flex-end}}.tier-configuration{background:#fff;border-radius:12px;margin-bottom:2rem;padding:2rem;box-shadow:0 1px 3px #0000001a}.tier-configuration-header{margin-bottom:1.5rem}.tier-configuration-header h2{color:#1a202c;margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.tier-configuration-description{color:#718096;margin:0;font-size:.875rem}.tier-configuration-alert{border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem}.tier-configuration-alert.is-error{color:#c53030;background:#fff5f5;border:1px solid #feb2b2}.tier-configuration-alert.is-success{color:#276749;background:#f0fff4;border:1px solid #9ae6b4}.tier-configuration-loading{color:#718096;justify-content:center;align-items:center;padding:3rem;font-size:.9375rem;display:flex}.tier-configuration-tiers{flex-direction:column;gap:1.5rem;display:flex}.tier-card{background:#f8f9fa;border:1px solid #e2e8f0;border-radius:10px;padding:1.25rem}.tier-card-header{margin-bottom:1rem}.tier-card-header h3{color:#2d3748;margin:0;font-size:1.125rem;font-weight:600}.tier-card-fields{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;display:grid}.tier-field{flex-direction:column;gap:.375rem;display:flex}.tier-field-label{color:#4a5568;font-size:.8125rem;font-weight:500}.tier-field-input-wrapper{align-items:center;gap:.5rem;display:flex}.tier-field-input{color:#2d3748;background:#fff;border:1px solid #cbd5e0;border-radius:6px;width:100%;padding:.5rem .75rem;font-size:.875rem;transition:border-color .2s}.tier-field-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 2px #667eea26}.tier-field-input.is-invalid{border-color:#fc8181}.tier-field-input.is-invalid:focus{box-shadow:0 0 0 2px #fc818126}.tier-field-error{color:#c53030;font-size:.75rem}.tier-configuration-actions{align-items:center;gap:.75rem;margin-top:1.5rem;display:flex}.tier-configuration-save-btn{color:#fff;cursor:pointer;background:#667eea;border:none;border-radius:8px;padding:.625rem 1.5rem;font-size:.875rem;font-weight:600;transition:background-color .2s}.tier-configuration-save-btn:hover:not(:disabled){background:#5a67d8}.tier-configuration-save-btn:disabled{cursor:not-allowed;background:#a0aec0}@media (width<=768px){.tier-configuration{padding:1.25rem}.tier-card-fields{grid-template-columns:1fr}}@media (prefers-color-scheme:dark){.tier-configuration{background:#2a2a2a;box-shadow:0 1px 3px #0000004d}.tier-configuration-header h2{color:#ffffffde}.tier-configuration-description,.tier-configuration-loading{color:#fff9}.tier-configuration-alert.is-error{color:#fc8181;background:#c530301a;border-color:#c530304d}.tier-configuration-alert.is-success{color:#68d391;background:#2767491a;border-color:#2767494d}.tier-card{background:#1e1e1e;border-color:#3a3a3a}.tier-card-header h3{color:#ffffffde}.tier-field-label{color:#ffffffb3}.tier-field-input{color:#ffffffde;background:#2a2a2a;border-color:#4a4a4a}.tier-field-input:focus{border-color:#667eea}.tier-field-error{color:#fc8181}}.localized-pricing-config{background:#fff;border-radius:12px;margin-bottom:2rem;padding:2rem;box-shadow:0 1px 3px #0000001a}.localized-pricing-header{margin-bottom:1.5rem}.localized-pricing-header h2{color:#1a202c;margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.localized-pricing-description{color:#718096;margin:0;font-size:.875rem}.localized-pricing-alert{border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem}.localized-pricing-alert.is-error{color:#c53030;background:#fff5f5;border:1px solid #feb2b2}.localized-pricing-alert.is-success{color:#276749;background:#f0fff4;border:1px solid #9ae6b4}.localized-pricing-loading{color:#718096;justify-content:center;align-items:center;padding:3rem;font-size:.9375rem;display:flex}.localized-pricing-table-wrapper{margin-bottom:1.5rem;overflow-x:auto}.localized-pricing-table{border-collapse:collapse;width:100%}.localized-pricing-table th{color:#4a5568;text-align:left;text-transform:uppercase;letter-spacing:.05em;background:#f7fafc;border-bottom:2px solid #e2e8f0;padding:.625rem .75rem;font-size:.75rem;font-weight:600}.localized-pricing-table td{color:#2d3748;vertical-align:top;border-bottom:1px solid #edf2f7;padding:.5rem .75rem;font-size:.875rem}.localized-pricing-table tbody tr:hover{background:#f7fafc}.pricing-cell-input{color:#2d3748;background:#fff;border:1px solid #cbd5e0;border-radius:4px;width:100%;min-width:80px;padding:.375rem .5rem;font-size:.8125rem;transition:border-color .2s}.pricing-cell-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 2px #667eea26}.pricing-cell-input.is-invalid{border-color:#fc8181}.pricing-cell-input.is-invalid:focus{box-shadow:0 0 0 2px #fc818126}.pricing-cell-error{color:#c53030;margin-top:.25rem;font-size:.6875rem;display:block}.pricing-row-actions{gap:.375rem;display:flex}.pricing-save-row-btn{color:#fff;cursor:pointer;background:#667eea;border:none;border-radius:4px;padding:.375rem .625rem;font-size:.75rem;font-weight:500;transition:background-color .2s}.pricing-save-row-btn:hover:not(:disabled){background:#5a67d8}.pricing-save-row-btn:disabled{cursor:not-allowed;background:#a0aec0}.pricing-delete-row-btn{color:#c53030;cursor:pointer;background:0 0;border:1px solid #fc8181;border-radius:4px;padding:.375rem .625rem;font-size:.75rem;font-weight:500;transition:background-color .2s}.pricing-delete-row-btn:hover:not(:disabled){background:#fff5f5}.pricing-delete-row-btn:disabled{opacity:.5;cursor:not-allowed}.localized-pricing-add-section{align-items:center;gap:.75rem;display:flex}.pricing-add-btn{color:#667eea;cursor:pointer;background:0 0;border:1px dashed #667eea;border-radius:8px;padding:.5rem 1.25rem;font-size:.8125rem;font-weight:500;transition:background-color .2s}.pricing-add-btn:hover{background:#667eea0d}.localized-pricing-empty{color:#718096;text-align:center;padding:2rem;font-size:.875rem}@media (width<=768px){.localized-pricing-config{padding:1.25rem}.localized-pricing-table th,.localized-pricing-table td{padding:.375rem .5rem;font-size:.75rem}.pricing-cell-input{min-width:60px;font-size:.75rem}}@media (prefers-color-scheme:dark){.localized-pricing-config{background:#2a2a2a;box-shadow:0 1px 3px #0000004d}.localized-pricing-header h2{color:#ffffffde}.localized-pricing-description,.localized-pricing-loading{color:#fff9}.localized-pricing-alert.is-error{color:#fc8181;background:#c530301a;border-color:#c530304d}.localized-pricing-alert.is-success{color:#68d391;background:#2767491a;border-color:#2767494d}.localized-pricing-table th{color:#ffffffb3;background:#1e1e1e;border-bottom-color:#3a3a3a}.localized-pricing-table td{color:#ffffffde;border-bottom-color:#3a3a3a}.localized-pricing-table tbody tr:hover{background:#333}.pricing-cell-input{color:#ffffffde;background:#2a2a2a;border-color:#4a4a4a}.pricing-cell-input:focus{border-color:#667eea}.pricing-cell-error{color:#fc8181}.pricing-delete-row-btn{color:#fc8181;border-color:#fc8181}.pricing-delete-row-btn:hover:not(:disabled){background:#c530301a}.localized-pricing-empty{color:#fff9}}.site-admin{max-width:1400px;margin:0 auto;padding:2rem}.site-admin-header{background:#fff;border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem;display:flex;box-shadow:0 1px 3px #0000001a}.site-admin-header h1{color:#1a202c;margin:0;font-size:2rem;font-weight:600}.signup-mode-section{background:#fff;border-radius:12px;margin-bottom:2rem;padding:2rem;box-shadow:0 1px 3px #0000001a}.signup-mode-header{margin-bottom:1.5rem}.signup-mode-header h2{color:#1a202c;margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.signup-mode-description{color:#718096;margin:0;font-size:.875rem}.signup-mode-options{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;display:grid}.signup-mode-btn{text-align:center;cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:12px;flex-direction:column;align-items:center;padding:1.5rem;transition:all .2s;display:flex}.signup-mode-btn:hover:not(:disabled){background:#f7fafc;border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.signup-mode-btn.active{background:#ebf4ff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.signup-mode-btn:disabled{opacity:.6;cursor:not-allowed}.mode-icon{margin-bottom:.75rem;font-size:2.5rem}.mode-label{color:#2d3748;margin-bottom:.5rem;font-size:1rem;font-weight:600}.signup-mode-btn.active .mode-label{color:#667eea}.mode-description{color:#718096;font-size:.875rem;line-height:1.4}.maintenance-mode-toggle{flex-direction:column;gap:1rem;display:flex}.maintenance-mode-btn{text-align:left;cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:12px;align-items:center;gap:1rem;padding:1.5rem;transition:all .2s;display:flex}.maintenance-mode-btn:hover:not(:disabled){background:#f7fafc;border-color:#cbd5e0;transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.maintenance-mode-btn.active{background:#fff5f5;border-color:#f56565}.maintenance-mode-btn.active.danger{background:#fff5f5;border-color:#fc8181;box-shadow:0 0 0 3px #f565651a}.maintenance-mode-btn:disabled{opacity:.6;cursor:not-allowed}.mode-content{flex-direction:column;flex:1;gap:.25rem;display:flex}.mode-action{color:#fff;background:#667eea;border-radius:8px;padding:.5rem 1.5rem;font-size:.875rem;font-weight:600;transition:all .2s}.maintenance-mode-btn.active .mode-action{background:#e53e3e}.maintenance-mode-btn:hover:not(:disabled) .mode-action{background:#5568d3}.maintenance-mode-btn.active:hover:not(:disabled) .mode-action{background:#c53030}.maintenance-warning{color:#c53030;text-align:center;background:#fff5f5;border:1px solid #fc8181;border-radius:8px;padding:1rem;font-size:.875rem;font-weight:600}@media (width<=768px){.site-admin{padding:1rem}.site-admin-header{flex-direction:column;align-items:flex-start;gap:1rem}.signup-mode-options{grid-template-columns:1fr}}@media (prefers-color-scheme:dark){.site-admin-header{background:#2a2a2a;box-shadow:0 1px 3px #0000004d}.site-admin-header h1{color:#ffffffde}.signup-mode-section{background:#2a2a2a}.signup-mode-header h2{color:#ffffffde}.signup-mode-description{color:#fff9}.signup-mode-btn{background:#1e1e1e;border-color:#3a3a3a}.signup-mode-btn:hover:not(:disabled){background:#2a2a2a;border-color:#667eea}.signup-mode-btn.active{background:#1e2a3a;border-color:#667eea}.mode-label{color:#ffffffde}.signup-mode-btn.active .mode-label{color:#93c5fd}.mode-description{color:#fff9}.maintenance-mode-btn{background:#1e1e1e;border-color:#3a3a3a}.maintenance-mode-btn:hover:not(:disabled){background:#2a2a2a;border-color:#4a4a4a}.maintenance-mode-btn.active{background:#3a1e1e;border-color:#fc8181}.maintenance-mode-btn.active.danger{background:#3a1e1e;border-color:#fc8181;box-shadow:0 0 0 3px #fc818133}.maintenance-warning{color:#fc8181;background:#3a1e1e;border-color:#fc8181}}.admin-release-notes-page{background-color:var(--background-color,#f5f5f5);flex-direction:column;min-height:100vh;padding:24px;display:flex}.admin-release-notes-container{background-color:var(--card-background,#fff);border-radius:8px;width:100%;max-width:1200px;margin:0 auto;padding:32px;box-shadow:0 2px 4px #0000001a}.admin-release-notes-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:32px;display:flex}.admin-release-notes-header h1{color:var(--text-primary,#333);margin:0 0 8px;font-size:28px;font-weight:600}.admin-release-notes-subtitle{color:var(--text-secondary,#666);margin:0;font-size:14px}.release-notes-table-container{overflow-x:auto}.release-notes-table{border-collapse:collapse;border:1px solid var(--border-color,#e0e0e0);border-radius:4px;width:100%}.release-notes-table thead{background-color:var(--table-header-bg,#f9f9f9)}.release-notes-table th{color:var(--text-primary,#333);text-align:left;border-bottom:2px solid var(--border-color,#e0e0e0);padding:12px 16px;font-size:14px;font-weight:600}.release-notes-table td{color:var(--text-primary,#333);border-bottom:1px solid var(--border-color,#e0e0e0);padding:16px;font-size:14px}.release-notes-table tbody tr:last-child td{border-bottom:none}.release-notes-table tbody tr:hover{background-color:var(--table-row-hover,#f9f9f9)}.title-cell{font-weight:500}.date-cell{color:var(--text-secondary,#666);white-space:nowrap}.actions-cell{text-align:right;white-space:nowrap}.btn-primary{color:#fff;background-color:var(--primary-color,#007bff);cursor:pointer;border:none;border-radius:4px;padding:10px 20px;font-size:14px;font-weight:500;transition:background-color .2s}.btn-primary:disabled{background-color:var(--disabled-bg,#ccc);cursor:not-allowed}.btn-edit{color:var(--primary-color,#007bff);border:1px solid var(--primary-color,#007bff);cursor:pointer;background-color:#0000;border-radius:4px;padding:6px 16px;font-size:13px;font-weight:500;transition:all .2s}.btn-edit:hover{background-color:var(--primary-color,#007bff);color:#fff}@media (width<=768px){.admin-release-notes-page{padding:16px}.admin-release-notes-container{padding:20px}.admin-release-notes-header{flex-direction:column;align-items:stretch}.admin-release-notes-header h1{font-size:24px}.release-notes-table{font-size:13px}.release-notes-table th,.release-notes-table td{padding:12px 8px}.date-cell{font-size:12px}}.release-note-editor-page{background-color:#f5f5f5;min-height:100vh;padding:2rem;display:flex}.release-note-editor-container{background:#fff;border-radius:8px;width:100%;max-width:900px;margin:0 auto;padding:2rem;box-shadow:0 2px 4px #0000001a}.release-note-editor-header{margin-bottom:2rem}.release-note-editor-header h1{color:#333;margin:0 0 .5rem;font-size:2rem;font-weight:600}.release-note-editor-subtitle{color:#666;margin:0;font-size:1rem}.release-note-editor-form{flex-direction:column;gap:1.5rem;display:flex}.form-label{color:#333;font-size:.95rem;font-weight:600}.form-label .required{color:#dc3545}.form-input{background-color:#fff;border:1px solid #ddd;border-radius:4px;width:100%;padding:.75rem;font-family:inherit;font-size:1rem;transition:border-color .2s}.form-input.error{border-color:#dc3545}.form-input:disabled{opacity:.6;cursor:not-allowed;background-color:#f5f5f5}.content-toolbar{align-items:center;gap:1rem;padding:.5rem 0;display:flex}.btn-toolbar{color:#333;cursor:pointer;background-color:#f8f9fa;border:1px solid #ddd;border-radius:4px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-toolbar:hover:not(:disabled){background-color:#e9ecef;border-color:#ccc}.btn-toolbar:disabled{opacity:.6;cursor:not-allowed}.toolbar-hint{color:#666;font-size:.85rem;font-style:italic}.form-textarea{resize:vertical;background-color:#fff;border:1px solid #ddd;border-radius:4px;width:100%;min-height:400px;padding:.75rem;font-family:Courier New,monospace;font-size:1rem;line-height:1.6;transition:border-color .2s}.form-textarea:focus{border-color:#007bff;outline:none;box-shadow:0 0 0 3px #007bff1a}.form-textarea.error{border-color:#dc3545}.form-textarea:disabled{opacity:.6;cursor:not-allowed;background-color:#f5f5f5}.character-count{color:#666;text-align:right;font-size:.85rem}.markdown-hint{color:#666;font-size:.85rem;font-style:italic}.form-actions{border-top:1px solid #e9ecef;justify-content:flex-end;gap:1rem;margin-top:1rem;padding-top:1.5rem;display:flex}.btn-primary{color:#fff;cursor:pointer;background-color:#007bff;border:none;border-radius:4px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:background-color .2s}.btn-primary:disabled{opacity:.6;cursor:not-allowed;background-color:#6c757d}.btn-secondary{color:#333;cursor:pointer;background-color:#fff;border:1px solid #ddd;border-radius:4px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:all .2s}.btn-secondary:hover:not(:disabled){background-color:#f8f9fa;border-color:#ccc}@media (width<=768px){.release-note-editor-page{padding:1rem}.release-note-editor-container{padding:1.5rem}.release-note-editor-header h1{font-size:1.5rem}.form-textarea{min-height:300px}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}.content-toolbar{flex-direction:column;align-items:flex-start}.btn-toolbar{justify-content:center;width:100%}}.login-container{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.login-card{background:#fff;border-radius:12px;width:100%;max-width:420px;padding:3rem;box-shadow:0 10px 40px #0000001a}.login-title{color:#1a202c;text-align:center;margin:0 0 .5rem;font-size:2rem;font-weight:700}.login-subtitle{color:#718096;text-align:center;margin:0 0 2rem;font-size:1rem}.login-form{flex-direction:column;gap:1.5rem;display:flex}.form-group input{border:1px solid #e2e8f0;border-radius:6px;padding:.75rem 1rem;font-size:1rem;transition:all .2s}.form-group input:disabled{cursor:not-allowed;background-color:#f7fafc}.error-message{color:#c53030;background-color:#fed7d7;border:1px solid #fc8181;border-radius:6px;padding:.75rem 1rem;font-size:.875rem}.login-button{border-radius:6px;margin-top:.5rem;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s}.login-button:disabled{opacity:.6;cursor:not-allowed}@media (width<=480px){.login-card{padding:2rem 1.5rem}.login-title{font-size:1.5rem}.login-subtitle{font-size:.875rem}}.login-footer{text-align:center;border-top:1px solid #e2e8f0;margin-top:2rem;padding-top:2rem}.login-footer p{color:#6c757d;margin:0;font-size:.875rem}.toggle-mode-button{color:#667eea;cursor:pointer;background:0 0;border:none;padding:0;font-size:.875rem;font-weight:600;text-decoration:none}.toggle-mode-button:hover{text-decoration:underline}.role-selection{gap:1rem;margin-top:.5rem;display:flex}.role-option{cursor:pointer;border:2px solid #e2e8f0;border-radius:6px;flex:1;align-items:center;gap:.5rem;padding:.75rem 1rem;transition:all .2s;display:flex}.role-option:hover{background-color:#f7fafc;border-color:#cbd5e0}.role-option input[type=radio]{cursor:pointer;margin:0}.role-option input[type=radio]:checked+span{color:#667eea;font-weight:600}.role-option:has(input[type=radio]:checked){background-color:#667eea0d;border-color:#667eea}.role-option span{color:#2d3748;font-size:.875rem}.success-message{color:#22543d;background-color:#c6f6d5;border:1px solid #9ae6b4;border-radius:6px;padding:.75rem 1rem;font-size:.875rem}@media (prefers-color-scheme:dark){.login-container{background:linear-gradient(135deg,#4c1d95 0%,#5b21b6 100%)}.login-card{background:#2a2a2a;box-shadow:0 10px 40px #00000080}.login-title{color:#fffffff2}.login-subtitle{color:#fff9}.form-group label{color:#ffffffde}.form-group input{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.form-group input::placeholder{color:#fff6}.form-group input:focus{background:#2a2a2a;border-color:#667eea}.form-group input:disabled{background-color:#1a1a1a}.error-message{color:#fca5a5;background-color:#3a1e1e;border-color:#4a2a2a}.success-message{color:#86efac;background-color:#1e3a2a;border-color:#2a4a3a}.login-footer{border-top-color:#3a3a3a}.login-footer p{color:#fff9}.signup-link,.toggle-mode-button{color:#93c5fd}.role-option{background:#1e1e1e;border-color:#3a3a3a}.role-option:hover{background-color:#2a2a2a;border-color:#4a4a4a}.role-option:has(input[type=radio]:checked){background-color:#667eea26;border-color:#667eea}.role-option span{color:#ffffffde}.role-option input[type=radio]:checked+span{color:#93c5fd}.password-requirements{background:#1e1e1e;border-color:#3a3a3a}.requirements-title{color:#ffffffde}.password-requirements li{color:#fff9}}@media (prefers-color-scheme:dark){.login-divider:before,.login-divider:after{border-bottom-color:#3a3a3a}.login-divider span{color:#fff9}}.forgot-password-link-container{text-align:right;margin-top:.5rem}.forgot-password-link{color:#667eea;font-size:.875rem;font-weight:500;text-decoration:none;transition:color .2s}.forgot-password-link:hover{color:#5568d3;text-decoration:underline}@media (prefers-color-scheme:dark){.forgot-password-link{color:#93c5fd}.forgot-password-link:hover{color:#bfdbfe}}.oauth-buttons{flex-direction:column;gap:.75rem;display:flex}.passkey-button{color:#3c4043;background:#fff;border-color:#dadce0;width:100%;font-family:inherit}.passkey-button:hover:not(:disabled){background:#f8f9fa;border-color:#d2d4d8;transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.passkey-button:disabled{opacity:.6;cursor:not-allowed}@media (prefers-color-scheme:dark){.oauth-button{border-color:#3a3a3a}.google-button{color:#ffffffde;background:#2a2a2a;border-color:#3a3a3a}.google-button:hover{background:#333;border-color:#4a4a4a}.apple-button{color:#fff;background:#1a1a1a;border-color:#2a2a2a}.apple-button:hover{background:#2a2a2a;border-color:#3a3a3a}.passkey-button{color:#ffffffde;background:#2a2a2a;border-color:#3a3a3a}.passkey-button:hover:not(:disabled){background:#333;border-color:#4a4a4a}}.signup-container{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.signup-card{background:#fff;border-radius:16px;width:100%;max-width:500px;padding:3rem;box-shadow:0 20px 60px #0000004d}.signup-card h1{color:#213547;text-align:center;margin-bottom:.5rem;font-size:2rem}.signup-subtitle{text-align:center;color:#6c757d;margin-bottom:2rem}.info-message{background:#e7f3ff;border:1px solid #b3d9ff;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.info-message p{color:#004085;margin:0;font-size:.9rem;line-height:1.5}.form-help{color:#6c757d;font-size:.875rem}.signup-form{flex-direction:column;gap:1.5rem;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-group label{color:#495057;font-size:.875rem;font-weight:500}.form-input{border:1px solid #dee2e6;border-radius:8px;padding:.75rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.btn-full-width{width:100%;margin-top:.5rem}.signup-footer{text-align:center;border-top:1px solid #e2e8f0;margin-top:2rem;padding-top:2rem}.signup-footer p{color:#6c757d;margin:0}.signup-link{color:#667eea;font-weight:600;text-decoration:none}.signup-link:hover{text-decoration:underline}.verification-card{text-align:center;max-width:600px}.verification-icon{margin-bottom:1rem;font-size:4rem}.verification-message{color:#495057;margin-bottom:1rem;font-size:1.125rem}.verification-message strong{color:#667eea}.verification-instructions{color:#6c757d;margin-bottom:2rem;line-height:1.6}.verification-link{color:#667eea;word-break:break-all;font-weight:600;text-decoration:none;display:inline-block}.verification-link:hover{text-decoration:underline}.verification-actions{flex-direction:column;gap:1rem;display:flex}.verification-actions button,.verification-actions a{text-align:center;width:100%;text-decoration:none}@media (width<=768px){.signup-container{padding:1rem}.signup-card{padding:2rem}.signup-card h1{font-size:1.5rem}.form-row{grid-template-columns:1fr}}@media (prefers-color-scheme:dark){.signup-card{background:#2a2a2a}.signup-card h1{color:#ffffffde}.signup-subtitle,.verification-instructions{color:#fff9}.form-group label{color:#ffffffde}.form-input{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.signup-footer{border-top-color:#3a3a3a}.signup-footer p{color:#fff9}.verification-message{color:#ffffffde}}.password-requirements{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-top:.5rem;padding:1rem;font-size:.875rem}.requirements-title{color:#495057;margin:0 0 .5rem;font-weight:600}.password-requirements ul{margin:0;padding-left:1.5rem;list-style-type:disc}.password-requirements li{color:#6c757d;margin-bottom:.25rem;line-height:1.4}@media (prefers-color-scheme:dark){.password-requirements{background:#1e1e1e;border-color:#3a3a3a}.requirements-title{color:#ffffffde}.password-requirements li{color:#fff9}}.turnstile-container{justify-content:center;align-items:center;margin:1rem 0;display:flex}.turnstile-widget{justify-content:center;display:flex}@media (width<=768px){.turnstile-container{margin:.75rem 0}}.checkbox-label{cursor:pointer;align-items:flex-start;gap:.75rem;font-size:.9375rem;line-height:1.5;display:flex}.checkbox-input{cursor:pointer;flex-shrink:0;margin-top:.25rem}.terms-link{color:#667eea;font-weight:500;text-decoration:none;transition:color .2s}.terms-link:hover{color:#5a67d8;text-decoration:underline}.help-text{color:#6c757d;margin:.5rem 0 0;font-size:.8125rem;line-height:1.4}.oauth-buttons{flex-direction:column;gap:.75rem;margin-bottom:1rem;display:flex}.oauth-button{cursor:pointer;border:1px solid #e2e8f0;border-radius:6px;justify-content:center;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.oauth-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.oauth-icon{flex-shrink:0;width:20px;height:20px}.google-button{color:#3c4043;background:#fff;border-color:#dadce0}.google-button:hover{background:#f8f9fa;border-color:#d2d4d8}.apple-button{color:#fff;background:#000;border-color:#000}.apple-button:hover{background:#1a1a1a;border-color:#1a1a1a}.login-divider{text-align:center;align-items:center;margin:1rem 0;display:flex}.login-divider:before,.login-divider:after{content:"";border-bottom:1px solid #e2e8f0;flex:1}.login-divider span{color:#718096;padding:0 1rem;font-size:.875rem;font-weight:500}@media (prefers-color-scheme:dark){.oauth-button{border-color:#3a3a3a}.google-button{color:#ffffffde;background:#2a2a2a;border-color:#3a3a3a}.google-button:hover{background:#333;border-color:#4a4a4a}.apple-button{color:#fff;background:#1a1a1a;border-color:#2a2a2a}.apple-button:hover{background:#2a2a2a;border-color:#3a3a3a}.login-divider:before,.login-divider:after{border-bottom-color:#3a3a3a}.login-divider span{color:#fff9}}.signup-card-wide{max-width:800px}.signup-back-btn{color:#6c757d;text-align:center;cursor:pointer;background:0 0;border:1px solid #dee2e6;border-radius:8px;width:100%;margin-top:1.5rem;padding:.75rem;font-size:.9375rem;transition:background-color .2s,color .2s;display:block}.signup-back-btn:hover{color:#495057;background-color:#f8f9fa}.signup-back-btn:disabled{opacity:.5;cursor:not-allowed}.signup-loading-overlay{text-align:center;color:#6c757d;padding:1rem;font-size:.9375rem}@media (width<=768px){.signup-card-wide{max-width:100%}}@media (prefers-color-scheme:dark){.signup-back-btn{color:#fff9;border-color:#3a3a3a}.signup-back-btn:hover{color:#ffffffde;background-color:#333}.signup-loading-overlay{color:#fff9}}.forgot-password-form-container{width:100%;max-width:450px;margin:0 auto;padding:2rem}.forgot-password-form{background:var(--card-background,#fff);border-radius:8px;padding:2rem;box-shadow:0 2px 8px #0000001a}.forgot-password-form h2{color:var(--text-primary,#1a1a1a);text-align:center;margin:0 0 .5rem;font-size:1.75rem;font-weight:600}.forgot-password-form .form-description{color:var(--text-secondary,#666);text-align:center;margin:0 0 1.5rem;font-size:.95rem;line-height:1.5}.forgot-password-form .form-group{margin-bottom:1.5rem}.forgot-password-form label{color:var(--text-primary,#1a1a1a);margin-bottom:.5rem;font-size:.95rem;font-weight:500;display:block}.forgot-password-form input[type=email]{border:1px solid var(--border-color,#d1d5db);background:var(--input-background,#fff);width:100%;color:var(--text-primary,#1a1a1a);border-radius:6px;padding:.75rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}.forgot-password-form input[type=email]:focus{border-color:var(--primary-color,#3b82f6);outline:none;box-shadow:0 0 0 3px #3b82f61a}.forgot-password-form input[type=email]:disabled{background-color:var(--disabled-background,#f3f4f6);cursor:not-allowed;opacity:.6}.forgot-password-form .btn-primary{color:#fff;background-color:var(--primary-color,#3b82f6);cursor:pointer;border:none;border-radius:6px;width:100%;padding:.875rem;font-size:1rem;font-weight:600;transition:background-color .2s,transform .1s}.forgot-password-form .btn-primary:hover:not(:disabled){background-color:var(--primary-hover,#2563eb)}.forgot-password-form .btn-primary:active:not(:disabled){transform:scale(.98)}.forgot-password-form .btn-primary:disabled{background-color:var(--disabled-background,#9ca3af);cursor:not-allowed;opacity:.6}.forgot-password-form .error-message{color:#c33;background-color:#fee;border:1px solid #fcc;border-radius:6px;margin-bottom:1rem;padding:.75rem;font-size:.9rem;line-height:1.4}.forgot-password-form .success-message{color:#363;background-color:#efe;border:1px solid #cfc;border-radius:6px;margin-bottom:1rem;padding:.75rem;font-size:.9rem;line-height:1.4}@media (width<=640px){.forgot-password-form-container{padding:1rem}.forgot-password-form{padding:1.5rem}.forgot-password-form h2{font-size:1.5rem}}.forgot-password-page{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.forgot-password-content{width:100%;max-width:500px}.forgot-password-footer{text-align:center;margin-top:1.5rem}.forgot-password-footer p{color:#fff;margin:0;font-size:.95rem}.back-to-login-link{color:#fff;cursor:pointer;font-weight:600;text-decoration:underline;transition:opacity .2s}.back-to-login-link:hover{opacity:.8}@media (width<=640px){.forgot-password-page{padding:.5rem}.forgot-password-footer p{font-size:.9rem}}.reset-password-form-container{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.reset-password-form{background:#fff;border-radius:12px;width:100%;max-width:450px;padding:2.5rem;box-shadow:0 10px 40px #0000001a}.reset-password-form h2{color:#333;text-align:center;margin:0 0 .5rem;font-size:1.75rem}.reset-password-form .form-description{color:#666;text-align:center;margin:0 0 1.5rem;font-size:.95rem;line-height:1.5}.reset-password-form .form-group{margin-bottom:1.5rem}.reset-password-form label{color:#333;margin-bottom:.5rem;font-size:.95rem;font-weight:500;display:block}.reset-password-form input{box-sizing:border-box;border:1px solid #ddd;border-radius:6px;width:100%;padding:.75rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}.reset-password-form input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.reset-password-form input:disabled{cursor:not-allowed;background-color:#f5f5f5}.reset-password-form .password-requirements{margin-top:.5rem}.reset-password-form .password-requirements small{color:#666;font-size:.85rem;line-height:1.4}.reset-password-form .btn-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:6px;width:100%;margin-top:.5rem;padding:.875rem;font-size:1rem;font-weight:600;transition:transform .2s,box-shadow .2s}.reset-password-form .btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.reset-password-form .btn-primary:active:not(:disabled){transform:translateY(0)}.reset-password-form .btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.reset-password-form .error-message{color:#c33;background-color:#fee;border:1px solid #fcc;border-radius:6px;margin-bottom:1.5rem;padding:.875rem;font-size:.95rem;line-height:1.4}.reset-password-form .field-error{color:#c33;margin-top:.375rem;font-size:.875rem;display:block}.reset-password-form .success-message{color:#363;background-color:#efe;border:1px solid #cfc;border-radius:6px;margin-bottom:1.5rem;padding:.875rem;font-size:.95rem;line-height:1.4}@media (width<=768px){.reset-password-form-container{padding:1rem}.reset-password-form{padding:2rem 1.5rem}.reset-password-form h2{font-size:1.5rem}}.reset-password-page{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex}.reset-password-content{width:100%;max-width:500px;padding:2rem}.reset-password-footer{text-align:center;margin-top:1.5rem}.reset-password-footer p{color:#fff;margin:0;font-size:.95rem}.reset-password-footer .back-to-login-link{color:#fff;font-weight:600;text-decoration:underline;transition:opacity .2s}.reset-password-footer .back-to-login-link:hover{opacity:.8}@media (width<=768px){.reset-password-content{padding:1rem}}.email-confirmation-container{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.email-confirmation-card{text-align:center;background:#fff;border-radius:12px;width:100%;max-width:600px;padding:3rem;box-shadow:0 10px 40px #0000001a}.confirmation-icon{margin:0 auto 2rem;animation:.5s ease-out scaleIn}@keyframes scaleIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.confirmation-title{color:#1a202c;margin-bottom:1rem;font-size:2rem;font-weight:700}.confirmation-message{color:#4a5568;margin-bottom:.5rem;font-size:1.125rem}.confirmation-email{color:#667eea;word-break:break-word;margin-bottom:2rem;font-size:1.25rem;font-weight:600}.confirmation-instructions{text-align:left;background:#f7fafc;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.confirmation-instructions h2{color:#2d3748;margin-bottom:1rem;font-size:1.25rem;font-weight:600}.confirmation-instructions ol{margin:0;padding-left:1.5rem}.confirmation-instructions li{color:#4a5568;margin-bottom:.75rem;font-size:1rem;line-height:1.6}.confirmation-instructions li:last-child{margin-bottom:0}.confirmation-note{text-align:left;background:#fff5e6;border-left:4px solid #f59e0b;margin-bottom:2rem;padding:1rem}.confirmation-note p{color:#92400e;margin:0;font-size:.875rem}.confirmation-note strong{font-weight:600}.approval-notice{text-align:left;background:#e7f3ff;border-left:4px solid #2196f3;margin-bottom:2rem;padding:1rem}.dev-verification{background:#e0f2fe;border:2px dashed #0284c7;border-radius:8px;margin-bottom:2rem;padding:1rem}.dev-note{color:#0c4a6e;margin-bottom:.5rem;font-size:.875rem;font-weight:600}.verification-link{color:#0284c7;font-weight:500;text-decoration:underline;display:inline-block}.verification-link:hover{color:#0369a1}.confirmation-actions{gap:1rem;margin-bottom:1.5rem;display:flex}.confirmation-actions .btn-primary,.confirmation-actions .btn-secondary{cursor:pointer;text-align:center;border:none;border-radius:8px;flex:1;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-block}.confirmation-actions .btn-primary{color:#fff;background:#667eea}.confirmation-actions .btn-primary:hover{background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.confirmation-actions .btn-secondary{color:#667eea;background:#fff;border:2px solid #667eea}.confirmation-actions .btn-secondary:hover{background:#f7fafc;transform:translateY(-1px)}.confirmation-actions .btn-secondary:disabled,.confirmation-actions .btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.confirmation-help{border-top:1px solid #e2e8f0;padding-top:1.5rem}.confirmation-help p{color:#718096;margin:0;font-size:.875rem}.link-button{color:#667eea;cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:.875rem;text-decoration:underline}.link-button:hover{color:#5568d3}.link-button:disabled{opacity:.6;cursor:not-allowed}@media (width<=640px){.email-confirmation-container{padding:1rem}.email-confirmation-card{padding:2rem 1.5rem}.confirmation-title{font-size:1.5rem}.confirmation-message{font-size:1rem}.confirmation-email{font-size:1.125rem}.confirmation-actions{flex-direction:column}.confirmation-instructions{padding:1rem}.confirmation-instructions h2{font-size:1.125rem}.confirmation-instructions li{font-size:.9375rem}}.verify-email-container{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.verify-email-card{text-align:center;background:#fff;border-radius:16px;width:100%;max-width:500px;padding:3rem;box-shadow:0 20px 60px #0000004d}.status-icon{border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 1.5rem;font-size:3rem;font-weight:700;display:flex}.success-icon{color:#155724;background:#d4edda}.error-icon{color:#721c24;background:#f8d7da}.verify-email-card h1{color:#213547;margin-bottom:1rem;font-size:2rem}.status-message{color:#495057;margin-bottom:1.5rem;font-size:1.125rem;line-height:1.6}.redirect-message{color:#6c757d;margin-bottom:1.5rem;font-size:.875rem}.approval-notice{text-align:left;background:#e7f3ff;border:1px solid #b3d9ff;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.approval-notice p{color:#004085;margin:0;font-size:.9rem;line-height:1.5}.approval-notice strong{font-weight:600}.error-actions{flex-direction:column;gap:1rem;margin-top:2rem;display:flex}.error-actions a{width:100%;text-decoration:none}@media (width<=768px){.verify-email-container{padding:1rem}.verify-email-card{padding:2rem}.verify-email-card h1{font-size:1.5rem}.status-icon{width:60px;height:60px;font-size:2rem}}@media (prefers-color-scheme:dark){.verify-email-card{background:#2a2a2a}.verify-email-card h1,.status-message{color:#ffffffde}.redirect-message{color:#fff9}}.invitation-container{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.invitation-card{text-align:center;background:#fff;border-radius:16px;width:100%;max-width:500px;padding:3rem;box-shadow:0 20px 60px #0000004d}.invitation-card.error-card{max-width:400px}.invitation-icon,.error-icon{margin-bottom:1rem;font-size:4rem}.invitation-card h1{color:#213547;margin-bottom:1.5rem;font-size:2rem}.invitation-details{background:#f8f9fa;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.invitation-message{color:#6c757d;margin-bottom:1rem;font-size:1rem}.book-title{color:#646cff;margin:1rem 0;font-size:1.5rem;font-weight:600}.group-name{color:#6c757d;margin:0;font-size:.9rem}.invitation-form{text-align:left}.form-group input{border:2px solid #e2e8f0;border-radius:8px;width:100%;padding:.875rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus{border-color:#646cff;outline:none;box-shadow:0 0 0 3px #646cff1a}.form-group input:disabled{color:#6c757d;cursor:not-allowed;background:#f8f9fa}.email-display{font-weight:500;background:#f8f9fa!important}.info-text{color:#6c757d;text-align:center;margin-bottom:1.5rem;font-size:.9rem}.accept-button{width:100%;margin-top:1rem;padding:1rem;font-size:1.1rem}.decline-button{color:#666;background:#fff;border:2px solid #ddd;width:100%;margin-top:.75rem;padding:1rem;font-size:1rem}.decline-button:hover{color:#333;background:#f5f5f5;border-color:#999}.invitation-footer{border-top:1px solid #e2e8f0;margin-top:2rem;padding-top:1.5rem}.expires-text{color:#9ca3af;margin:0 0 .5rem;font-size:.85rem}.help-text{color:#9ca3af;margin:0;font-size:.8rem;font-style:italic}.error-message{color:#991b1b;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;margin-bottom:1.5rem;padding:1rem;font-size:.9rem}.error-text{color:#dc3545;margin:1.5rem 0;font-size:1.1rem}@media (width<=768px){.invitation-container{padding:1rem}.invitation-card{padding:2rem 1.5rem}.invitation-card h1{font-size:1.5rem}.book-title{font-size:1.25rem}}@media (prefers-color-scheme:dark){.invitation-card{background:#1e1e1e}.invitation-card h1{color:#ffffffde}.invitation-details{background:#2a2a2a}.form-group label{color:#ffffffde}.form-group input{color:#ffffffde;background:#2a2a2a;border-color:#3a3a3a}.form-group input:focus{border-color:#646cff}.form-group input:disabled{color:#ffffff80;background:#1e1e1e}}.reader-comment-viewer{background:#fff;border-radius:12px;flex-direction:column;height:100%;display:flex;overflow:hidden}.comment-viewer-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-bottom:2px solid #e2e8f0;flex-direction:row;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex;position:relative}.header-content{flex:1;min-width:0}.header-content h2{color:#fff;margin:0 0 .25rem;font-size:1.5rem;font-weight:700}.comment-count{opacity:.9;margin:0;font-size:.875rem}.btn-close{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;order:2;justify-content:center;align-items:center;width:40px;height:40px;margin-left:auto;padding:0;font-size:2rem;line-height:1;transition:background .2s;display:flex}.btn-close:hover{background:#fff3}.error-message{color:#c53030;background-color:#fed7d7;border:1px solid #fc8181;border-radius:6px;margin:1rem 2rem;padding:1rem}.empty-state{text-align:center;color:#718096;flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.empty-icon{opacity:.5;margin-bottom:1rem;font-size:4rem}.empty-state-hint{color:#a0aec0;font-size:.875rem}.comments-list{flex-direction:column;flex:1;gap:1rem;padding:1.5rem 2rem;display:flex;overflow-y:auto}.comment-card{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.25rem;transition:box-shadow .2s}.comment-card:hover{box-shadow:0 2px 8px #0000001a}.comment-header{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.comment-date{color:#718096;font-size:.875rem}.comment-edited{color:#a0aec0;font-size:.75rem;font-style:italic}.comment-context{background:#fff;border-left:3px solid #667eea;border-radius:4px;margin-bottom:.75rem;padding:.75rem}.context-label{color:#667eea;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem;font-size:.75rem;font-weight:600;display:block}.context-snippet{color:#4a5568;font-size:.9375rem;font-style:italic}.comment-text{color:#2d3748;white-space:pre-wrap;word-wrap:break-word;margin-bottom:.75rem;line-height:1.6}.comment-edit-form{margin-bottom:.75rem}.comment-edit-textarea{resize:vertical;border:2px solid #cbd5e0;border-radius:6px;width:100%;min-height:100px;margin-bottom:.75rem;padding:.75rem;font-family:inherit;font-size:1rem}.comment-edit-textarea:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.comment-edit-textarea:disabled{cursor:not-allowed;background:#f7fafc}.comment-edit-actions{gap:.5rem;display:flex}.comment-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.comment-location{color:#718096;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.location-icon{font-size:1rem}.location-text{font-size:.875rem}.comment-actions{gap:.5rem;display:flex}.btn-edit,.btn-delete{cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.btn-edit{color:#4a5568;background:#edf2f7}.btn-edit:hover:not(:disabled){color:#2d3748;background:#e2e8f0}.btn-delete{color:#c53030;background:#fed7d7}.btn-delete:hover:not(:disabled){color:#fff;background:#fc8181}.btn-edit:disabled,.btn-delete:disabled{opacity:.5;cursor:not-allowed}@media (width<=768px){.comment-viewer-header{padding:1rem 1.5rem}.header-content h2{font-size:1.25rem}.comments-list,.comment-card{padding:1rem}.comment-footer{flex-direction:column;align-items:flex-start}.comment-actions{justify-content:flex-end;width:100%}}.book-list-container{min-height:100vh;padding:2rem;overflow-x:hidden}.book-list-container :focus,.book-list-container :focus-visible{box-shadow:none!important;outline:none!important}.book-list-container::-webkit-scrollbar-x{display:none}.book-list-container{-ms-overflow-style:none;scrollbar-width:none}.book-list-header{margin-bottom:1.5rem}.header-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.book-list-title{color:#1a202c;margin:0;font-size:2.5rem;font-weight:700}.btn-upgrade-author{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:all .3s;box-shadow:0 2px 8px #667eea4d}.btn-upgrade-author:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.upgrade-panel-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;padding:1rem;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.upgrade-panel{background:#fff;border-radius:16px;width:100%;max-width:700px;max-height:90vh;animation:.3s slideUp;position:relative;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.upgrade-panel-close{color:#718096;cursor:pointer;z-index:1;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-size:2rem;line-height:1;transition:all .2s;display:flex;position:absolute;top:1rem;right:1rem}.upgrade-panel-close:hover{color:#2d3748;background:#f7fafc}.upgrade-panel-header{text-align:center;color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:16px 16px 0 0;padding:3rem 2rem 2rem}.upgrade-icon{margin-bottom:1rem;font-size:4rem}.upgrade-panel-header h2{margin:0 0 .5rem;font-size:2rem;font-weight:700}.upgrade-subtitle{opacity:.95;margin:0;font-size:1.125rem}.upgrade-benefits{gap:1.5rem;padding:2rem;display:grid}.benefit-item{align-items:start;gap:1rem;display:flex}.benefit-icon{background:#f7fafc;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:2rem;display:flex}.benefit-content h3{color:#1a202c;margin:0 0 .25rem;font-size:1.125rem;font-weight:600}.benefit-content p{color:#718096;margin:0;font-size:.9375rem;line-height:1.5}.upgrade-panel-footer{background:#f7fafc;border-top:1px solid #e2e8f0;border-radius:0 0 16px 16px;padding:2rem}.upgrade-note{text-align:center;color:#718096;margin:0 0 1.5rem;font-size:.875rem}.upgrade-actions{justify-content:center;gap:1rem;display:flex}.btn-upgrade{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;padding:1rem 2rem;font-size:1.125rem}.btn-upgrade:hover{background:linear-gradient(135deg,#5568d3 0%,#653a8b 100%)}.btn-upgrade:disabled{opacity:.6;cursor:not-allowed}.book-list-subtitle{color:#718096;margin:.5rem 0 0;font-size:1.125rem}.book-filters{flex-wrap:wrap;gap:1rem;margin-bottom:2rem;display:flex}.filter-button{cursor:pointer;color:#666;background:#fff;border:2px solid #e0e0e0;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:all .2s}.filter-button:hover{color:#667eea;background:#f8f9ff;border-color:#667eea}.filter-button.active{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-color:#667eea}.filter-button.active:hover{background:linear-gradient(135deg,#5568d3 0%,#653a8b 100%)}.loading-spinner{color:#4a5568;justify-content:center;align-items:center;min-height:50vh;font-size:1.25rem;display:flex}.book-card{background:#fff;border-radius:12px;flex-direction:column;min-width:0;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden;box-shadow:0 2px 8px #0000001a}.book-card-header{border-bottom:1px solid #e2e8f0;border-radius:12px 12px 0 0;align-items:center;min-height:140px;max-height:140px;padding:1.5rem 1.5rem 1rem;display:flex;overflow:hidden}.book-title{color:#1a202c;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;text-align:left;-webkit-line-clamp:4;text-overflow:ellipsis;-webkit-box-orient:vertical;margin:0;font-size:1.25rem;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.book-card-body{flex-direction:column;flex:1;gap:1rem;padding:1rem 1.5rem;display:flex;overflow:hidden}.book-metadata{flex-direction:column;align-items:center;gap:.5rem;min-width:0;display:flex}.metadata-item{justify-content:center;gap:.5rem;min-width:0;font-size:.875rem;display:flex}.metadata-label{color:#718096;flex-shrink:0;font-weight:500}.metadata-value{color:#2d3748;word-wrap:break-word;overflow-wrap:break-word;text-align:center;min-width:0;font-weight:600}.progress-section{flex-direction:column;gap:.5rem;display:flex}.progress-header{justify-content:space-between;align-items:center;display:flex}.progress-label{color:#4a5568;font-size:.875rem;font-weight:600}.progress-percentage{color:#667eea;font-size:.875rem;font-weight:700}.progress-bar{background-color:#e2e8f0;border-radius:4px;height:8px;display:none;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#667eea 0%,#764ba2 100%);border-radius:4px;height:100%;transition:width .3s;display:none}.status-archived{color:#4a5568;background-color:#e2e8f0}.book-card-footer{flex-wrap:wrap;justify-content:center;gap:.75rem;padding:1rem 1.5rem 1.5rem;display:flex}.read-button{border:none;border-radius:8px;outline:none;flex:1;min-width:120px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600}.read-button:focus,.read-button:focus-visible{box-shadow:none;outline:none}.archive-button{color:#666;cursor:pointer;white-space:nowrap;background:#fff;border:2px solid #e0e0e0;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s}.archive-button:hover{color:#333;background:#f5f5f5;border-color:#999}.archive-button:disabled{opacity:.5;cursor:not-allowed}@media (width<=768px){.book-list-container{padding:1rem}.book-list-title{font-size:2rem}.book-list-subtitle{font-size:1rem}.books-grid{grid-template-columns:1fr}.header-content{flex-direction:column;align-items:stretch}.btn-upgrade-author{width:100%}.upgrade-panel-header{padding:2.5rem 1.5rem 1.5rem}.upgrade-panel-header h2{font-size:1.5rem}.upgrade-subtitle{font-size:1rem}.upgrade-benefits,.upgrade-panel-footer{padding:1.5rem}.upgrade-actions{flex-direction:column}.upgrade-actions button{width:100%}}@media (width<=480px){.book-list-container{padding:1rem}.book-list-title{font-size:2rem}.upgrade-icon{font-size:3rem}.benefit-item{gap:.75rem}.benefit-icon{width:40px;height:40px;font-size:1.5rem}}.invitations-banner{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px;margin-bottom:2rem;padding:2rem;box-shadow:0 4px 12px #667eea4d}.invitations-header h2{color:#fff;margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.invitations-header p{color:#ffffffe6;margin:0;font-size:.9375rem}.invitations-list{gap:1rem;display:grid}.invitation-card{background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.5rem;display:flex;box-shadow:0 2px 8px #0000001a}.invitation-info{flex:1}.invitation-info h3{color:#1a202c;margin:0 0 .5rem;font-size:1.125rem;font-weight:600}.invitation-from{color:#718096;margin:0 0 .25rem;font-size:.875rem}.invitation-expires{color:#a0aec0;margin:0;font-size:.8125rem}.accept-button{white-space:nowrap;padding:.75rem 1.5rem;font-size:.9375rem}@media (width<=640px){.invitation-card{flex-direction:column;align-items:stretch}.accept-button{width:100%}}.modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;padding:1rem;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:900px;max-height:90vh;animation:.3s slideUp;overflow:hidden;box-shadow:0 20px 60px #0000004d}.comment-viewer-modal{flex-direction:column;display:flex}.view-comments-button{white-space:nowrap}.pagination-button{color:#4a5568;cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:8px;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:600;transition:all .2s}.pagination-button:hover:not(:disabled){color:#667eea;background:#f7fafc;border-color:#667eea;transform:translateY(-1px)}.pagination-button:disabled{opacity:.4;cursor:not-allowed}.pagination-info{color:#2d3748;flex-direction:column;align-items:center;gap:.25rem;font-size:.9375rem;font-weight:600;display:flex}.pagination-count{color:#718096;font-size:.8125rem;font-weight:400}@media (width<=768px){.pagination{gap:1rem}.pagination-button{padding:.5rem 1rem;font-size:.875rem}.pagination-info{font-size:.875rem}}.find-books{max-width:1400px;margin:0 auto;padding:2rem}.find-books-header{margin-bottom:2rem}.find-books-header h1{color:#1a202c;margin:0 0 .5rem;font-size:2rem}.privacy-notice{color:#92400e;background-color:#fef3c7;border:1px solid #fbbf24;border-radius:8px;margin:1rem 0;padding:.75rem 1rem;font-size:.875rem}.search-filters{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:2rem;padding:1.5rem;display:grid}.filter-group{flex-direction:column;gap:.5rem;display:flex}.genre-filter-group,.autocomplete-wrapper{position:relative}.autocomplete-dropdown{z-index:1000;background:#fff;border:1px solid #cbd5e0;border-top:none;border-radius:0 0 8px 8px;max-height:200px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 6px #0000001a}.autocomplete-item{cursor:pointer;padding:.75rem;transition:background-color .2s}.autocomplete-item:hover{background-color:#f7fafc}.autocomplete-item:active{background-color:#edf2f7}.clear-button{color:#718096;cursor:pointer;z-index:10;background:0 0;border:none;padding:.25rem;font-size:1.25rem;line-height:1;transition:color .2s;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.clear-button:hover{color:#2d3748}.clear-button:focus{outline-offset:2px;border-radius:4px;outline:2px solid #6366f1}.filter-group label{color:#4a5568;font-size:.875rem;font-weight:600}.filter-input{appearance:none;background-color:#fff;background-image:none;border:1px solid #cbd5e0;border-radius:8px;width:100%;padding:.75rem 2.5rem .75rem 1rem;font-size:1rem;transition:all .2s}.filter-input::-webkit-search-decoration{display:none}.filter-input::-webkit-search-cancel-button{display:none}.filter-input::-webkit-search-results-button{display:none}.filter-input::-webkit-search-results-decoration{display:none}.filter-input::placeholder{padding-left:0}.filter-input:focus{border-color:#6366f1;outline:none;box-shadow:0 0 0 3px #6366f11a}.loading-state{color:#4a5568;flex-direction:column;justify-content:center;align-items:center;min-height:50vh;font-size:1.25rem;display:flex}.empty-state{text-align:center;color:#718096;flex-direction:column;justify-content:center;align-items:center;min-height:50vh;display:flex}.empty-state p{margin:0;font-size:1rem}.books-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;display:grid}.book-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;transition:all .2s;display:flex;overflow:hidden}.book-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.book-card-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px 12px 0 0;align-items:center;min-height:140px;max-height:140px;padding:1.5rem;display:flex;overflow:hidden}.book-title{word-wrap:break-word;overflow-wrap:break-word;text-align:left;-webkit-line-clamp:4;text-overflow:ellipsis;-webkit-box-orient:vertical;margin:0;font-size:1.25rem;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.book-card-body{flex-direction:column;flex:1;gap:1rem;padding:1.5rem;display:flex}.book-author{color:#718096;margin:0;font-size:.875rem;font-weight:500}.book-genres{flex-wrap:wrap;gap:.5rem;display:flex}.genre-tag{color:#4338ca;background-color:#e0e7ff;border-radius:6px;padding:.375rem .75rem;font-size:.75rem;font-weight:600}.feedback-deadline{justify-content:center;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.deadline-label{color:#718096;font-weight:500}.deadline-value{color:#2d3748;font-weight:600}.book-status{justify-content:center;gap:.5rem;display:flex}.status-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:6px;padding:.375rem .75rem;font-size:.75rem;font-weight:600}.status-open{color:#22543d;background-color:#c6f6d5}.status-closed{color:#742a2a;background-color:#fed7d7}.book-card-footer{justify-content:center;padding:1rem 1.5rem 1.5rem;display:flex}.btn-primary,.btn-secondary,.btn-success{cursor:pointer;border:none;border-radius:8px;width:100%;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{color:#4a5568;cursor:default;background-color:#e2e8f0}.btn-success{color:#fff;cursor:default;background-color:#10b981}@media (width<=768px){.find-books{padding:1rem}.find-books-header h1{font-size:1.5rem}.search-filters,.books-grid{grid-template-columns:1fr}}@media (prefers-color-scheme:dark){.find-books-header h1{color:#fffffff2!important}.privacy-notice{color:#ffc107!important;background-color:#3a2f1a!important;border-color:#ffc107!important}.search-filters{background:#2a2a2a!important;border-color:#3a3a3a!important}.filter-group label{color:#ffffffe6!important}.filter-input{color:#ffffffe6!important;background:#1e1e1e!important;border-color:#3a3a3a!important}.filter-input::placeholder{color:#ffffff80!important}.filter-input:focus{background:#2a2a2a!important;border-color:#667eea!important}.autocomplete-dropdown{background:#2a2a2a!important;border-color:#3a3a3a!important}.autocomplete-item{color:#ffffffde!important}.autocomplete-item:hover{background-color:#3a3a3a!important}.autocomplete-item:active{background-color:#4a4a4a!important}.clear-button{color:#fff9!important}.clear-button:hover{color:#ffffffde!important}.loading-state{color:#ffffffb3!important}.spinner{border-color:#667eea #3a3a3a #3a3a3a!important}.error-message{color:#fca5a5!important;background-color:#3a1e1e!important;border-color:#4a2a2a!important}.empty-state{color:#ffffffb3!important;background:#2a2a2a!important}.empty-state h2{color:#fffffff2!important}.empty-state p{color:#ffffffb3!important}.book-card{background:#2a2a2a!important;border-color:#3a3a3a!important}.book-card-body{background:#2a2a2a!important}.book-author,.deadline-label{color:#ffffffb3!important}.deadline-value{color:#ffffffe6!important}}.invitations-container{max-width:1200px;margin:0 auto;padding:2rem}.invitations-header{margin-bottom:2rem}.invitations-title{color:#1a1a1a;margin:0 0 .5rem;font-size:2rem;font-weight:600}.invitations-subtitle{color:#666;margin:0;font-size:1rem}.error-message{color:#c33;background-color:#fee;border:1px solid #fcc;border-radius:8px;margin-bottom:1rem;padding:1rem}.empty-state{text-align:center;background:#f9f9f9;border-radius:12px;margin-top:2rem;padding:4rem 2rem}.empty-state h2{color:#333;margin:0 0 .5rem;font-size:1.5rem}.empty-state p{color:#666;margin:.5rem 0;font-size:1rem}.empty-state .help-text{color:#999;margin-top:1rem;font-size:.9rem}.invitations-content{margin-top:2rem}.invitations-count{color:#666;margin-bottom:1.5rem;font-size:.9rem;font-weight:500}.invitations-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;display:grid}.invitation-card{background:#fff;border:1px solid #e0e0e0;border-radius:12px;flex-direction:column;transition:all .2s;display:flex;overflow:hidden;box-shadow:0 2px 4px #0000000d}.invitation-card.declined{opacity:.8;border-color:#ccc}.invitation-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.invitation-card.declined:hover{opacity:1}.invitation-card-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.invitation-card.declined .invitation-card-header{background:linear-gradient(135deg,#999 0%,#666 100%)}.invitation-badge{text-transform:uppercase;letter-spacing:.5px;background:#ffffff4d;border-radius:12px;padding:.25rem .75rem;font-size:.75rem;font-weight:600}.invitation-time{opacity:.9;background:#ffffff4d;border-radius:12px;padding:.25rem .75rem;font-size:.85rem;font-weight:600}.invitation-card-body{padding:1.25rem;overflow:hidden}.invitation-book-title{color:#1a1a1a;word-wrap:break-word;overflow-wrap:break-word;margin:0 0 1.25rem;font-size:1.25rem;font-weight:600;line-height:1.4}.invitation-details{flex-direction:column;gap:1rem;display:flex}.invitation-detail-item{align-items:flex-start;gap:.75rem;display:flex}.detail-icon{margin-top:.1rem;font-size:1.25rem;line-height:1}.detail-content{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex;overflow:hidden}.detail-label{color:#999;text-transform:uppercase;letter-spacing:.5px;font-size:.75rem;font-weight:600}.detail-value{color:#333;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;font-size:.95rem;font-weight:500}.declined-notice{color:#856404;word-wrap:break-word;overflow-wrap:break-word;background:#fff3cd;border:1px solid #ffc107;border-radius:6px;margin-top:1rem;padding:.75rem;font-size:.9rem}.invitation-card-footer{background:#f9f9f9;border-top:1px solid #e0e0e0;gap:.75rem;padding:1.25rem;display:flex}.accept-invitation-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;flex:1;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s}.accept-invitation-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.accept-invitation-button:active{transform:translateY(0)}.decline-invitation-button{color:#666;cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s}.decline-invitation-button:hover{color:#333;background:#f5f5f5;border-color:#999}@media (width<=768px){.invitations-container{padding:1rem}.invitations-title{font-size:1.5rem}.invitations-grid{grid-template-columns:1fr;gap:1rem}.empty-state{padding:3rem 1.5rem}.empty-state-icon{font-size:3rem}}@media (prefers-color-scheme:dark){.invitations-title{color:#fffffff2!important}.invitations-subtitle{color:#ffffffb3!important}.error-message{color:#fca5a5!important;background-color:#3a1e1e!important;border-color:#4a2a2a!important}.empty-state{background:#2a2a2a!important}.empty-state h2{color:#fffffff2!important}.empty-state p{color:#ffffffb3!important}.empty-state .help-text{color:#ffffff80!important}.invitations-count{color:#ffffffb3!important}.invitation-card{background:#2a2a2a!important;border-color:#3a3a3a!important}.invitation-card.declined{border-color:#4a4a4a!important}.invitation-book-title{color:#fffffff2!important}.detail-label{color:#ffffff80!important}.detail-value{color:#ffffffe6!important}.declined-notice{color:#ffc107!important;background:#3a2f1a!important;border-color:#ffc107!important}.invitation-card-footer{background:#1e1e1e!important;border-top-color:#3a3a3a!important}.decline-invitation-button{color:#ffffffde!important;background:#1e1e1e!important;border-color:#3a3a3a!important}.decline-invitation-button:hover{color:#fffffff2!important;background:#2a2a2a!important;border-color:#4a4a4a!important}}.reading-preferences-container{max-width:900px;margin:0 auto;padding:2rem}.reading-preferences{background:#fff;border-radius:12px;padding:2.5rem;box-shadow:0 2px 8px #0000001a}.reading-preferences h1{color:#333;margin:0 0 .5rem;font-size:2rem}.preferences-description{color:#666;margin:0 0 2rem;font-size:1rem;line-height:1.5}.preferences-form{flex-direction:column;gap:2rem;display:flex}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{font-size:.95rem;font-weight:600;color:#333!important}.form-group select,.form-group input[type=text]{border:1px solid #ddd;border-radius:4px;padding:.75rem;font-size:1rem;transition:border-color .2s}.form-group select:focus,.form-group input[type=text]:focus{border-color:#3498db;outline:none}.form-group select:disabled,.form-group input[type=text]:disabled{cursor:not-allowed;background-color:#f5f5f5}.help-text{color:#666;margin:0;font-size:.85rem}.section-heading{color:#333;border-bottom:1px solid #e9ecef;margin:1.5rem 0 1rem;padding-bottom:.5rem;font-size:1.1rem;font-weight:600}.section-heading:first-of-type{margin-top:0}.form-actions{gap:1rem;margin-top:1rem;display:flex}.btn-primary,.btn-secondary{cursor:pointer;border:none;border-radius:4px;padding:.875rem 1.75rem;font-size:1rem;font-weight:600;transition:all .2s}.btn-primary:disabled{cursor:not-allowed;background-color:#95a5a6}@media (width<=768px){.reading-preferences-container{padding:1rem}.reading-preferences{padding:1.5rem}.reading-preferences h1{font-size:1.5rem}.form-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.checkbox-label{cursor:pointer;align-items:center;gap:.75rem;display:flex}.checkbox-label input[type=checkbox]{cursor:pointer;width:20px;height:20px}.checkbox-label input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}.checkbox-label span{color:#333;font-size:.95rem;font-weight:500}.settings-panel.dark .form-group label,.settings-panel.dark .checkbox-label span{color:#fff!important}.settings-panel.dark .help-text{color:#ccc!important}.settings-panel.dark .section-heading{border-bottom-color:#444;color:#fff!important}.comment-panel-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.comment-panel{background:#fff;border-radius:8px;width:100%;max-width:600px;max-height:90vh;animation:.3s ease-out slideUp;overflow-y:auto;box-shadow:0 4px 20px #00000026}.comment-panel.dark-mode{box-shadow:0 4px 20px #00000080;background:#2d3748!important}.comment-panel-overlay.dark-mode{background-color:#000000b3}.comment-panel-header{border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.comment-panel-header.dark-mode{border-bottom-color:#ffffff1a}.comment-panel-header h3{color:#333;margin:0;font-size:1.25rem;font-weight:600}.comment-panel.dark-mode .comment-panel-header h3{color:#fffffff2}.close-button{color:#666;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;min-width:44px;height:32px;min-height:44px;padding:0;font-size:2rem;line-height:1;transition:background-color .2s,color .2s;display:flex}.comment-panel.dark-mode .close-button{color:#ffffffb3}.close-button:hover{color:#333;background-color:#f5f5f5}.comment-panel.dark-mode .close-button:hover{color:#fffffff2;background-color:#ffffff1a}.close-button:focus{outline-offset:2px;outline:2px solid #007bff}.comment-panel-content{padding:1.5rem}.selected-text-preview{margin-bottom:1.5rem}.selected-text-preview label{color:#555;margin-bottom:.5rem;font-size:.9rem;font-weight:600;display:block}.selected-text{color:#333;background-color:#f8f9fa;border-left:4px solid #007bff;border-radius:4px;max-height:150px;margin:0;padding:1rem;font-style:italic;line-height:1.6;overflow-y:auto}.comment-textarea{resize:vertical;border:1px solid #ddd;border-radius:4px;width:100%;padding:.75rem;font-family:inherit;font-size:1rem;line-height:1.5;transition:border-color .2s}.comment-textarea:focus{border-color:#007bff;outline:none;box-shadow:0 0 0 3px #007bff1a}.comment-textarea:disabled{cursor:not-allowed;background-color:#f5f5f5}.error-message{color:#c33;background-color:#fee;border-left:4px solid #c33;border-radius:4px;margin-bottom:1rem;padding:.75rem;font-size:.9rem}.success-message{color:#3c3;background-color:#efe;border-left:4px solid #3c3;border-radius:4px;margin-bottom:1rem;padding:.75rem;font-size:.9rem}.comment-panel-actions{justify-content:flex-end;gap:1rem;margin-top:1.5rem;display:flex}.btn-primary,.btn-secondary{cursor:pointer;border:none;border-radius:4px;min-height:44px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:background-color .2s,transform .1s}.btn-primary{color:#fff;background-color:#007bff}.btn-primary:hover:not(:disabled){background-color:#0056b3}.btn-primary:focus:not(:disabled){outline-offset:2px;outline:2px solid #007bff}.btn-primary:disabled{cursor:not-allowed;opacity:.6;background-color:#ccc}.btn-secondary{color:#fff;background-color:#6c757d}.btn-secondary:hover:not(:disabled){background-color:#545b62}.btn-secondary:active:not(:disabled){transform:scale(.98)}.btn-secondary:focus:not(:disabled){outline-offset:2px;outline:2px solid #6c757d}.btn-secondary:disabled{cursor:not-allowed;opacity:.6;background-color:#ccc}@media (width<=768px){.comment-panel-overlay{align-items:flex-end;padding:0}.comment-panel{border-radius:8px 8px 0 0;max-width:100%;max-height:85vh}.comment-panel-header,.comment-panel-content{padding:1rem}.comment-panel-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}}.comment-panel.dark-mode .comment-panel-content{color:#ffffffde}.comment-panel.dark-mode .selected-text-preview label,.comment-panel.dark-mode label{color:#ffffffe6}.comment-panel.dark-mode .selected-text,.comment-panel.dark-mode textarea{color:#ffffffde;background:#1a1a1a;border-color:#ffffff1a}.comment-panel.dark-mode textarea:focus{background:#1a1a1a;border-color:#6366f1}.comment-panel.dark-mode .error-message{color:#fca5a5;background:#3a1a1a;border-color:#4a2a2a}.comment-panel.dark-mode .success-message{color:#86efac;background:#1a3a2a;border-color:#2a4a3a}.paginated-content-wrapper{background-color:#faf8f5;flex-direction:column;width:100%;height:calc(100vh - 60px);margin-top:60px;transition:background-color .3s,color .3s;display:flex}.paginated-content-wrapper.dark-mode{background-color:#1a1a1a}.paginated-content-viewport{scroll-behavior:smooth;-webkit-user-select:text;user-select:text;cursor:text;-webkit-overflow-scrolling:touch;flex:1;padding:2rem;transition:background-color .3s,color .3s;position:relative;overflow:hidden;color:#1a202c!important;background-color:#faf8f5!important}.paginated-content-viewport.scroll-mode{overflow:hidden scroll}.paginated-content-viewport.dark-mode{color:#e0e0e0!important;background-color:#1a1a1a!important}.paginated-content{-webkit-user-select:text;user-select:text;cursor:text;min-height:100%;color:#1a202c!important;background-color:#faf8f5!important}.paginated-content-viewport.scroll-mode .paginated-content{min-height:auto}.paginated-content.dark-mode{color:#e0e0e0!important;background-color:#1a1a1a!important}.html-content{max-width:800px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:18px;line-height:1.7}.txt-content{white-space:pre-line;word-wrap:break-word;overflow-wrap:break-word;max-width:900px;margin:0 auto;font-family:Courier New,Courier,monospace;font-size:16px;line-height:1.6}.paginated-content h1{margin-top:.67em;margin-bottom:.67em;font-size:2em;font-weight:700;color:#1a202c!important}.paginated-content.dark-mode h1{color:#e0e0e0!important}.paginated-content h2{margin-top:.83em;margin-bottom:.83em;font-size:1.5em;font-weight:700;color:#1a202c!important}.paginated-content.dark-mode h2{color:#e0e0e0!important}.paginated-content h3{margin-top:1em;margin-bottom:1em;font-size:1.17em;font-weight:700;color:#1a202c!important}.paginated-content.dark-mode h3{color:#e0e0e0!important}.paginated-content p{margin-bottom:1em;color:#1a202c!important}.paginated-content.dark-mode p{color:#e0e0e0!important}.paginated-content ul,.paginated-content ol{margin-bottom:1em;padding-left:2.5em;color:#1a202c!important}.paginated-content.dark-mode ul,.paginated-content.dark-mode ol{color:#e0e0e0!important}.paginated-content li{margin-bottom:.5em;color:#1a202c!important}.paginated-content.dark-mode li{color:#e0e0e0!important}.paginated-content a{color:#646cff;text-decoration:underline}.paginated-content a:hover{color:#535bf2}.pagination-footer{background:#f5f5f5;border-top:1px solid #ddd;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 2rem;display:flex}.pagination-footer.dark-mode{background:#2d3748;border-top:1px solid #ffffff1a}.pagination-info-bar{text-align:center;color:#666;background:#fafafa;border-top:1px solid #e0e0e0;padding:.5rem;font-size:.875rem;font-weight:500;transition:background-color .3s,color .3s,border-color .3s}.pagination-info-bar.dark-mode{color:#ffffffde;background:#2d3748;border-top-color:#ffffff1a}.pagination-button{cursor:pointer;white-space:nowrap;border-radius:6px;flex:1;max-width:150px;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:500;transition:all .2s;color:#fff!important;background:#646cff!important;border:none!important}.pagination-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #646cff4d;background:#535bf2!important}.pagination-button:disabled{cursor:not-allowed;opacity:.5;background:#ccc!important}.pagination-button:active:not(:disabled){transform:translateY(0)}@media (width<=768px){.paginated-content-viewport{padding:1rem}.html-content{font-size:16px}.txt-content{font-size:14px}.pagination-footer{padding:.75rem 1rem}.pagination-button{max-width:120px;padding:.5rem 1rem;font-size:.875rem}.add-comment-button{max-width:150px;padding:.5rem 1rem;font-size:.875rem}}.theme-mode-control{background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:16px}.theme-mode-control.dark{background-color:#252525;border-color:#3a3a3a}.control-label{margin-bottom:12px;font-size:14px;font-weight:600;display:block;color:#333!important}.theme-mode-control.dark .control-label{color:#fff!important}.theme-mode-options{gap:12px;display:flex}.theme-option{cursor:pointer;background-color:#fff;border:2px solid #e0e0e0;border-radius:8px;flex-direction:column;flex:1;align-items:center;padding:12px;transition:all .2s;display:flex}.theme-mode-control.dark .theme-option{background-color:#2a2a2a;border-color:#444}.theme-option:hover{border-color:#007bff}.theme-option.selected{background-color:#e7f3ff;border-color:#007bff}.theme-mode-control.dark .theme-option.selected{background-color:#1a3a52}.theme-option input[type=radio]{opacity:0;pointer-events:none;position:absolute}.option-icon{margin-bottom:4px;font-size:24px}.option-label{font-size:12px;font-weight:500;color:#666!important}.theme-mode-control.dark .option-label{color:#ccc!important}.theme-option.selected .option-label{font-weight:600;color:#007bff!important}.color-customization{background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:16px}.color-customization.dark{background-color:#252525;border-color:#3a3a3a}.color-section{background-color:#fff;border:1px solid #e8e8e8;border-radius:6px;margin-bottom:12px;padding:12px}.color-customization.dark .color-section{background-color:#2a2a2a;border-color:#3a3a3a}.color-section:last-child{margin-bottom:0}.section-label{margin-bottom:12px;font-size:14px;font-weight:600;display:block;color:#333!important}.color-customization.dark .section-label{color:#fff!important}.color-controls{gap:16px;display:flex}.color-control{flex:1}.color-label{margin-bottom:8px;font-size:12px;font-weight:500;display:block;color:#666!important}.color-customization.dark .color-label{color:#ccc!important}.color-input-wrapper{background-color:#f5f5f5;border:1px solid #e0e0e0;border-radius:6px;align-items:center;gap:8px;padding:8px;display:flex}.color-customization.dark .color-input-wrapper{background-color:#2a2a2a;border-color:#444}.color-picker{cursor:pointer;border:none;border-radius:4px;width:40px;height:40px}.color-value{color:#666;font-family:monospace;font-size:12px}.color-customization.dark .color-value{color:#ccc}.color-error{color:#d32f2f;margin-top:4px;font-size:11px;display:block}.color-customization.dark .color-error{color:#f44336}.font-selector{background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:16px}.font-selector.dark{background-color:#252525;border-color:#3a3a3a}.font-select{cursor:pointer;background-color:#fff;border:1px solid #e0e0e0;border-radius:6px;width:100%;padding:10px 12px;font-size:14px;transition:border-color .2s}.font-selector.dark .font-select{color:#fff;background-color:#2a2a2a;border-color:#444}.font-select:hover{border-color:#007bff}.font-select:focus{border-color:#007bff;outline:none;box-shadow:0 0 0 3px #007bff1a}.font-select option{padding:8px}.font-size-control{background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:16px}.font-size-control.dark{background-color:#252525;border-color:#3a3a3a}.font-size-buttons{align-items:center;gap:12px;display:flex}.size-button{cursor:pointer;color:#333;background-color:#fff;border:2px solid #e0e0e0;border-radius:8px;flex:none;width:48px;height:48px;font-size:16px;font-weight:600;transition:all .2s}.font-size-control.dark .size-button{color:#fff;background-color:#2a2a2a;border-color:#444}.size-button:hover:not(:disabled){background-color:#e7f3ff;border-color:#007bff}.font-size-control.dark .size-button:hover:not(:disabled){background-color:#1a3a52}.size-button:disabled{opacity:.4;cursor:not-allowed}.size-indicator{background-color:#f5f5f5;border:1px solid #e0e0e0;border-radius:6px;flex-direction:column;flex:1;align-items:center;padding:8px;display:flex}.font-size-control.dark .size-indicator{background-color:#2a2a2a;border-color:#444}.size-label{margin-bottom:2px;font-size:11px;font-weight:500;color:#666!important}.font-size-control.dark .size-label{color:#999!important}.size-value{color:#333;font-size:14px;font-weight:600}.font-size-control.dark .size-value{color:#fff}.settings-panel{z-index:1000;background-color:#fff;border-top:1px solid #e0e0e0;border-top-left-radius:12px;border-top-right-radius:12px;max-height:70vh;transition:transform .3s cubic-bezier(.4,0,.2,1);position:fixed;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(100%);box-shadow:0 -2px 10px #0000001a}.settings-panel.open{transform:translateY(0)}.settings-panel.dark{background-color:#1e1e1e;border-top-color:#333;box-shadow:0 -2px 10px #0000004d}.settings-panel-backdrop{z-index:999;opacity:0;pointer-events:none;background-color:#00000080;transition:opacity .3s cubic-bezier(.4,0,.2,1);position:fixed;inset:0}.settings-panel-backdrop.open{opacity:1;pointer-events:auto}.settings-panel-header{border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;padding:16px;display:flex}.settings-panel.dark .settings-panel-header{border-bottom-color:#333}.settings-panel-header h2{color:#333;margin:0;font-size:18px;font-weight:600}.settings-panel.dark .settings-panel-header h2{color:#fff}.settings-panel .close-button{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:28px;transition:color .2s;display:flex;color:#666!important}.settings-panel.dark .close-button{color:#999!important}.settings-panel .close-button:hover{color:#333!important}.settings-panel.dark .close-button:hover{color:#fff!important}.settings-panel-content{flex-direction:column;gap:20px;padding:16px;display:flex}@media (width<=768px){.settings-panel{border-top-left-radius:16px;border-top-right-radius:16px;max-height:80vh}.settings-panel-header{padding:20px 16px}.settings-panel-header h2{font-size:20px}.close-button{width:36px;height:36px;font-size:32px}.settings-panel-content{padding:20px 16px}}@media (width<=480px){.settings-panel{max-height:85vh}.settings-panel-header,.settings-panel-content{padding:16px 12px}}@media (width>=1024px){.settings-panel{border-top:none;border-left:1px solid #e0e0e0;border-top-left-radius:0;border-top-right-radius:0;width:360px;max-height:100vh;inset:0 0 0 auto;transform:translate(100%);box-shadow:-2px 0 10px #0000001a}.settings-panel.dark{border-left-color:#333;box-shadow:-2px 0 10px #0000004d}.settings-panel.open{transform:translate(0)}}.mobile-reader{background:#faf8f5;flex-direction:column;font-family:Georgia,Times New Roman,serif;transition:background-color .3s;display:flex;position:fixed;inset:0;overflow:hidden}.mobile-reader.dark-mode{background:#1a1a1a}.mobile-reader-loading,.mobile-reader-error,.mobile-reader-epub-notice{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100vh;padding:2rem;display:flex}.mobile-reader-loading.dark-mode,.mobile-reader-error.dark-mode{background:#1a1a1a}.spinner{border:4px solid #e2e8f0;border-top-color:#6366f1;border-radius:50%;width:40px;height:40px;margin-bottom:1rem;animation:1s linear infinite spin}.mobile-reader-loading.dark-mode .spinner{border-color:#8b95ff #3a3a3a #3a3a3a}.mobile-reader-loading p,.mobile-reader-error p{color:#4a5568;margin:.5rem 0;font-size:1rem}.mobile-reader-loading.dark-mode p,.mobile-reader-error.dark-mode p{color:#ffffffde}.mobile-reader-epub-notice h2{color:#1a202c;margin-bottom:1rem}.mobile-reader-epub-notice p{color:#4a5568;margin:.5rem 0}.mobile-reader-epub-notice .btn-primary,.mobile-reader-epub-notice .btn-secondary{margin:.5rem}.mobile-reader-header{z-index:100;background:#fff;border-bottom:1px solid #0000001a;align-items:center;gap:1rem;height:60px;padding:0 1rem;transition:background-color .3s,border-color .3s;display:flex;position:fixed;top:0;left:0;right:0}.mobile-reader-header.dark-mode{background:#2d3748;border-bottom:1px solid #ffffff1a}.mobile-reader-header .book-title{text-align:center;text-overflow:ellipsis;white-space:nowrap;color:#333;flex:1;margin:0;font-size:1rem;font-weight:600;overflow:hidden}.mobile-reader-header.dark-mode .book-title{color:#fffffff2}.back-button{color:#495057;cursor:pointer;white-space:nowrap;background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:.5rem 1rem;font-size:.9rem;transition:all .2s;display:flex}.back-button.dark-mode{color:#e2e8f0;background:#4a5568;border:1px solid #718096}.back-button:hover{background:#e9ecef}.back-button.dark-mode:hover{background:#5a6778}.back-button:focus{outline-offset:2px;outline:2px solid #6366f1}.theme-toggle-button,.settings-toggle-button{color:#495057;cursor:pointer;background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;justify-content:center;align-items:center;min-width:44px;min-height:44px;margin-left:auto;padding:.5rem;font-size:1.3rem;transition:all .2s;display:flex}.chapter-list-button{color:#495057;cursor:pointer;background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:.5rem;font-size:1.3rem;transition:all .2s;display:flex}.chapter-list-button.dark-mode{color:#e2e8f0;background:#4a5568;border:1px solid #718096}.chapter-list-button:hover{background:#e9ecef;transform:scale(1.05)}.chapter-list-button.dark-mode:hover{background:#5a6778}.chapter-list-button:active{transform:scale(.95)}.chapter-list-button:focus{outline-offset:2px;outline:2px solid #6366f1}.theme-toggle-button.dark-mode,.settings-toggle-button.dark-mode{color:#e2e8f0;background:#4a5568;border:1px solid #718096}.theme-toggle-button:hover,.settings-toggle-button:hover{background:#e9ecef;transform:scale(1.05)}.theme-toggle-button.dark-mode:hover,.settings-toggle-button.dark-mode:hover{background:#5a6778}.theme-toggle-button:active,.settings-toggle-button:active{transform:scale(.95)}.theme-toggle-button:focus,.settings-toggle-button:focus{outline-offset:2px;outline:2px solid #6366f1}.mobile-reader-content{cursor:pointer;-webkit-user-select:text;user-select:text;justify-content:center;align-items:flex-start;padding:2rem 1.5rem;transition:background-color .3s,color .3s;display:flex;position:fixed;inset:60px 0 70px;overflow:hidden}.mobile-reader-content.dark-mode{color:#e0e0e0;background:#1a1a1a}.page-content{width:100%;max-width:700px;color:inherit;font-size:1.1rem;line-height:1.8;overflow:hidden}.page-content h1{color:inherit;margin:2rem 0 1rem;font-size:2rem;font-weight:700;line-height:1.3}.page-content h2{color:inherit;margin:1.5rem 0 1rem;font-size:1.6rem;font-weight:600;line-height:1.3}.page-content h3{color:inherit;margin:1.5rem 0 .75rem;font-size:1.3rem;font-weight:600;line-height:1.3}.page-content p{text-align:justify;margin:1rem 0}.page-content blockquote{opacity:.7;border-left:4px solid;margin:1.5rem 0;padding-left:1rem;font-style:italic}.page-content code{background:#edf2f7;border-radius:3px;padding:.2rem .4rem;font-family:Courier New,monospace;font-size:.9em}.page-content pre{color:#e2e8f0;background:#2d3748;border-radius:6px;margin:1.5rem 0;padding:1rem;overflow-x:auto}.page-content pre code{color:inherit;background:0 0;padding:0}.page-content ul,.page-content ol{margin:1rem 0;padding-left:2rem}.page-content li{margin:.5rem 0}.page-content img{border-radius:6px;max-width:100%;height:auto;margin:1.5rem 0}.mobile-reader-footer{z-index:100;background:#fff;border-top:1px solid #0000001a;justify-content:space-between;align-items:center;height:70px;padding:0 1rem;transition:background-color .3s,border-color .3s;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 4px #0000000d}.mobile-reader-footer.dark-mode{background:#2d3748;border-top:1px solid #ffffff1a;box-shadow:0 -2px 4px #0000004d}.nav-button{color:#fff;cursor:pointer;background:#6366f1;border:none;border-radius:8px;justify-content:center;align-items:center;width:50px;min-width:44px;height:50px;min-height:44px;font-size:1.5rem;transition:all .2s;display:flex}.nav-button:hover:not(:disabled){background:#4f46e5;transform:scale(1.05)}.nav-button.dark-mode:hover:not(:disabled){background:#5a67d8}.nav-button:active:not(:disabled){transform:scale(.95)}.nav-button:focus:not(:disabled){outline-offset:2px;outline:2px solid #6366f1}.nav-button:disabled{cursor:not-allowed;opacity:.6;background:#cbd5e0}.nav-button.dark-mode:disabled{background:#4a5568}.add-comment-button-footer{color:#fff;cursor:pointer;white-space:nowrap;background:#10b981;border:none;border-radius:8px;min-height:44px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:all .2s}.add-comment-button-footer:hover:not(:disabled){background:#059669;transform:scale(1.05)}.add-comment-button-footer.dark-mode:hover:not(:disabled){background:#0d9f6e}.add-comment-button-footer:active:not(:disabled){transform:scale(.95)}.add-comment-button-footer:focus:not(:disabled){outline-offset:2px;outline:2px solid #10b981}.add-comment-button-footer:disabled{color:#718096;cursor:not-allowed;opacity:.6;background:#cbd5e0}.add-comment-button-footer.dark-mode:disabled{color:#a0aec0;background:#4a5568}.return-to-furthest-button{color:#fff;cursor:pointer;white-space:nowrap;background:#f59e0b;border:none;border-radius:6px;align-items:center;gap:.25rem;min-height:44px;padding:.5rem .75rem;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.return-to-furthest-button.dark-mode{background:#d97706}.return-to-furthest-button:hover{background:#d97706;transform:scale(1.05)}.return-to-furthest-button.dark-mode:hover{background:#b45309}.return-to-furthest-button:active{transform:scale(.95)}.return-to-furthest-button:focus{outline-offset:2px;outline:2px solid #f59e0b}.btn-primary,.btn-secondary{cursor:pointer;border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-block}.btn-secondary{color:#4a5568;background:#e2e8f0}.btn-secondary:hover{background:#cbd5e0}@media (width<=768px){.mobile-reader-content{padding:1.5rem 1rem}.page-content{font-size:1rem}.page-content h1{font-size:1.75rem}.page-content h2{font-size:1.4rem}.page-content h3{font-size:1.2rem}.nav-button{padding:.6rem 1rem;font-size:.9rem}.book-title{font-size:.9rem}}@media (width<=480px){.mobile-reader-content{padding:1rem .75rem}.page-content{font-size:.95rem}.nav-button{padding:.5rem .75rem;font-size:.85rem}.page-indicator{font-size:.9rem}}.chapter-list-modal{z-index:10000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.chapter-list-content{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:600px;max-height:80vh;animation:.3s ease-out slideUp;display:flex;box-shadow:0 10px 40px #0000004d}.chapter-list-content.dark-mode{color:#e2e8f0;background:#2d3748}.chapter-list-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.chapter-list-content.dark-mode .chapter-list-header{border-bottom:1px solid #4a5568}.chapter-list-header h2{color:#1a202c;margin:0;font-size:1.5rem;font-weight:600}.chapter-list-content.dark-mode .chapter-list-header h2{color:#e2e8f0}.chapter-list-header .close-button{color:#718096;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:.25rem;font-size:1.5rem;transition:all .2s;display:flex}.chapter-list-header .close-button:hover{color:#2d3748;background:#f7fafc}.chapter-list-content.dark-mode .chapter-list-header .close-button{color:#a0aec0}.chapter-list-content.dark-mode .chapter-list-header .close-button:hover{color:#e2e8f0;background:#4a5568}.chapter-list-items{flex:1;padding:.5rem;overflow-y:auto}.chapter-item{cursor:pointer;text-align:left;color:#1a202c;background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:1rem;width:100%;margin-bottom:.5rem;padding:1rem;font-size:1rem;transition:all .2s;display:flex}.chapter-list-content.dark-mode .chapter-item{color:#e2e8f0;background:#1a202c;border:1px solid #4a5568}.chapter-item:hover{background:#f7fafc;border-color:#cbd5e0;transform:translate(4px)}.chapter-list-content.dark-mode .chapter-item:hover{background:#2d3748;border-color:#718096}.chapter-item.active{background:#eef2ff;border-color:#6366f1;font-weight:600}.chapter-list-content.dark-mode .chapter-item.active{color:#fff;background:#4c51bf;border-color:#6366f1}.chapter-number{color:#4a5568;background:#e2e8f0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9rem;font-weight:600;display:flex}.chapter-list-content.dark-mode .chapter-number{color:#e2e8f0;background:#4a5568}.chapter-item.active .chapter-number{color:#fff;background:#6366f1}.chapter-title{text-overflow:ellipsis;white-space:nowrap;color:inherit;flex:1;overflow:hidden}.current-indicator{color:#6366f1;flex-shrink:0;font-size:1.2rem}.chapter-list-content.dark-mode .current-indicator{color:#a5b4fc}@media (width<=768px){.chapter-list-modal{padding:.5rem}.chapter-list-content{max-height:90vh}.chapter-list-header{padding:1rem}.chapter-list-header h2{font-size:1.25rem}.chapter-item{padding:.75rem;font-size:.95rem}.chapter-number{width:28px;height:28px;font-size:.85rem}}.preference-error-banner{z-index:99;background:#fef2f2;border-bottom:1px solid #fca5a5;align-items:center;gap:12px;padding:12px 16px;transition:background-color .3s,border-color .3s;display:flex;position:fixed;top:60px;left:0;right:0}.preference-error-banner.dark-mode{background:#7f1d1d;border-bottom-color:#991b1b}.preference-error-icon{flex-shrink:0;font-size:20px}.preference-error-text{color:#991b1b;flex:1;font-size:14px;line-height:1.4}.preference-error-banner.dark-mode .preference-error-text{color:#fecaca}.preference-error-close{color:#991b1b;cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:18px;transition:opacity .2s;display:flex}.preference-error-banner.dark-mode .preference-error-close{color:#fecaca}.preference-error-close:hover{opacity:.7}.preference-error-close:focus{outline-offset:2px;border-radius:4px;outline:2px solid #991b1b}.preference-error-banner.dark-mode .preference-error-close:focus{outline-color:#fecaca}.preference-success-banner{z-index:99;background:#f0fdf4;border-bottom:1px solid #86efac;align-items:center;gap:12px;padding:12px 16px;transition:background-color .3s,border-color .3s;display:flex;position:fixed;top:60px;left:0;right:0}.preference-success-banner.dark-mode{background:#14532d;border-bottom-color:#166534}.preference-success-icon{color:#16a34a;flex-shrink:0;font-size:20px}.preference-success-banner.dark-mode .preference-success-icon{color:#86efac}.preference-success-text{color:#166534;flex:1;font-size:14px;line-height:1.4}.preference-success-banner.dark-mode .preference-success-text{color:#bbf7d0}.preference-success-close{color:#166534;cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:18px;transition:opacity .2s;display:flex}.preference-success-banner.dark-mode .preference-success-close{color:#bbf7d0}.preference-success-close:hover{opacity:.7}.preference-success-close:focus{outline-offset:2px;border-radius:4px;outline:2px solid #166534}.preference-success-banner.dark-mode .preference-success-close:focus{outline-color:#bbf7d0}@media (prefers-reduced-motion:no-preference){.mobile-reader,.desktop-reader{transition:all .3s ease-in-out}.mobile-reader-header,.mobile-reader-footer,.desktop-reader-header,.desktop-reader-sidebar{transition:transform .3s ease-in-out,opacity .3s ease-in-out}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-contrast:high){.mobile-reader,.desktop-reader,.nav-button,.back-button,.comment-digest-button,.add-comment-button{border:2px solid}}:focus-visible{outline-offset:2px;outline:2px solid #6366f1}.skip-to-content{color:#fff;z-index:10000;background:#6366f1;padding:8px;text-decoration:none;position:absolute;top:-40px;left:0}.skip-to-content:focus{top:0}@media (width>=768px) and (width<=1024px){.mobile-reader .page-content,.desktop-reader .chapter-content{font-size:1.0625rem}.desktop-reader-sidebar{width:240px}.desktop-reader-content{margin-left:240px}}@media (width>=1440px){.desktop-reader-content{max-width:1000px}.chapter-content{font-size:1.1875rem}}@media (height<=500px) and (orientation:landscape){.mobile-reader-header,.mobile-reader-footer{height:50px}.mobile-reader-content{padding:1rem}.page-content{font-size:.95rem}}@media print{.mobile-reader-header,.mobile-reader-footer,.desktop-reader-header,.desktop-reader-sidebar,.scroll-to-top,.comment-digest-button,.add-comment-button,.back-button{display:none!important}.mobile-reader-content,.desktop-reader-content{margin:0;padding:0}.page-content,.chapter-content{font-size:12pt;line-height:1.5}}@media (hover:none) and (pointer:coarse){button,a,.chapter-nav-item{min-width:48px;min-height:48px}.nav-button:hover,.back-button:hover,.comment-digest-button:hover,.add-comment-button:hover{transform:none}}@media (hover:hover) and (pointer:fine){button,a{transition:all .2s}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.modal-open{overflow:hidden}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.loading-spinner[role=status]{position:relative}.loading-spinner[role=status]:after{content:"Loading...";position:absolute;left:-9999px}.error-message[role=alert],.success-message[role=status]{position:relative}.reader-container{background:#f7fafc;justify-content:center;align-items:center;min-height:100vh;display:flex}@media (prefers-color-scheme:dark){.reader-container{background:#1a1a1a}.reader-placeholder,.reader-loading,.reader-error{box-shadow:0 2px 8px #0000004d;background:#2a2a2a!important}.reader-placeholder h1,.reader-error h1,.reader-placeholder h2,.reader-error h2{color:#fffffff2}.reader-placeholder p,.reader-loading p,.reader-error p{color:#ffffffb3}.spinner{border-color:#8b95ff #3a3a3a #3a3a3a}}.reader-placeholder,.reader-loading,.reader-error{text-align:center;background:#fff;border-radius:12px;max-width:500px;padding:3rem;box-shadow:0 2px 8px #0000001a}.reader-placeholder h1,.reader-error h1{color:#1a202c;margin:0 0 1rem;font-size:2rem}.reader-placeholder p,.reader-loading p,.reader-error p{color:#718096;margin:.5rem 0;font-size:1rem}.reader-placeholder button,.reader-error button{margin-top:2rem}.spinner{border:4px solid #e2e8f0;border-top-color:#6366f1;border-radius:50%;width:40px;height:40px;margin:0 auto 1rem;animation:1s linear infinite spin}.btn-primary{color:#fff;cursor:pointer;background:#6366f1;border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:all .2s}.btn-primary:hover{background:#4f46e5;transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.feedback-page{background:#f9fafb;min-height:100vh;padding:40px 20px}.feedback-container{background:#fff;border-radius:8px;max-width:800px;margin:0 auto;padding:40px;box-shadow:0 1px 3px #0000001a}.feedback-header{margin-bottom:32px}.feedback-header h1{color:#111827;margin:0 0 12px;font-size:32px;font-weight:700}.feedback-subtitle{color:#6b7280;margin:0;font-size:16px;line-height:1.5}.feedback-form{margin-bottom:32px}.form-group{margin-bottom:24px}.form-group label{color:#374151;margin-bottom:8px;font-size:14px;font-weight:600;display:block}.required{color:#ef4444}.form-input,.form-select,.form-textarea{border:1px solid #d1d5db;border-radius:6px;width:100%;padding:12px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{cursor:not-allowed;opacity:.6;background-color:#f3f4f6}.form-select{cursor:pointer;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 8px center;background-repeat:no-repeat;background-size:20px;padding-right:40px}.form-textarea{resize:vertical;min-height:200px;line-height:1.5}.form-help{color:#6b7280;margin-top:6px;font-size:13px;display:block}.form-actions{justify-content:flex-end;gap:12px;margin-top:32px;display:flex}.btn-primary,.btn-secondary{cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{color:#fff;background:#3b82f6}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-primary:disabled{cursor:not-allowed;background:#9ca3af}.btn-secondary{color:#374151;background:#fff;border:1px solid #d1d5db}.btn-secondary:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.feedback-info{background:#f0f9ff;border:1px solid #bfdbfe;border-radius:6px;margin-top:24px;padding:16px}.feedback-info p{color:#1e40af;margin:0;font-size:14px;line-height:1.5}.feedback-info strong{font-weight:600}.btn-primary .loading-spinner{border-width:2px;width:16px;height:16px}@media (width<=640px){.feedback-page{padding:20px 16px}.feedback-container{padding:24px 20px}.feedback-header h1{font-size:24px}.feedback-subtitle{font-size:14px}.form-actions{flex-direction:column-reverse}.form-actions button{justify-content:center;width:100%}}.donate-page{background:#f9fafb;min-height:100vh;padding:40px 20px}.donate-container{background:#fff;border-radius:8px;max-width:700px;margin:0 auto;padding:40px;box-shadow:0 1px 3px #0000001a}.donate-header{margin-bottom:32px}.donate-header h1{color:#111827;margin:0 0 12px;font-size:32px;font-weight:700}.donate-subtitle{color:#6b7280;margin:0;font-size:16px;line-height:1.5}.donate-form{margin-bottom:40px}.donate-label{color:#374151;margin-bottom:10px;font-size:14px;font-weight:600;display:block}.preset-amounts{flex-wrap:wrap;gap:12px;margin-bottom:24px;display:flex}.preset-btn{color:#374151;cursor:pointer;background:#fff;border:2px solid #d1d5db;border-radius:8px;padding:12px 24px;font-size:16px;font-weight:600;transition:all .2s}.preset-btn:hover:not(:disabled){color:#3b82f6;border-color:#3b82f6}.preset-btn.is-active{color:#fff;background:#3b82f6;border-color:#3b82f6}.preset-btn:disabled{opacity:.5;cursor:not-allowed}.custom-amount-wrapper{border:1px solid #d1d5db;border-radius:6px;align-items:center;margin-bottom:8px;transition:border-color .2s,box-shadow .2s;display:flex}.custom-amount-wrapper:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.currency-symbol{color:#6b7280;padding:12px 4px 12px 12px;font-size:16px;font-weight:600}.custom-amount-input{background:0 0;border:none;flex:1;width:100%;padding:12px;font-family:inherit;font-size:16px}.custom-amount-input:focus{outline:none}.custom-amount-input:disabled{opacity:.6;cursor:not-allowed}.validation-error{color:#ef4444;margin:4px 0 0;font-size:13px}.donate-btn{color:#fff;cursor:pointer;background:#3b82f6;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:20px;padding:14px 24px;font-size:16px;font-weight:600;transition:background .2s;display:inline-flex}.donate-btn:hover:not(:disabled){background:#2563eb}.donate-btn:disabled{cursor:not-allowed;background:#9ca3af}.donate-btn .loading-spinner{border-width:2px;width:16px;height:16px}.donate-history{border-top:1px solid #e5e7eb;padding-top:32px}.donate-history h2{color:#111827;margin:0 0 16px;font-size:20px;font-weight:600}.history-empty,.history-error{color:#6b7280;font-size:14px}.history-error{color:#ef4444}.history-table{border-collapse:collapse;width:100%}.history-table th,.history-table td{text-align:left;padding:12px 16px;font-size:14px}.history-table th{color:#6b7280;border-bottom:2px solid #e5e7eb;font-weight:600}.history-table td{color:#374151;border-bottom:1px solid #f3f4f6}.donate-page.dark .donate-container{background:#1f2937;box-shadow:0 1px 3px #0000004d}.donate-page.dark .donate-header h1,.donate-page.dark .donate-history h2{color:#f9fafb}.donate-page.dark .donate-subtitle{color:#9ca3af}.donate-page.dark .donate-label{color:#d1d5db}.donate-page.dark .preset-btn{color:#d1d5db;background:#374151;border-color:#4b5563}.donate-page.dark .preset-btn:hover:not(:disabled){color:#60a5fa;border-color:#60a5fa}.donate-page.dark .preset-btn.is-active{color:#fff;background:#3b82f6;border-color:#3b82f6}.donate-page.dark .custom-amount-wrapper{border-color:#4b5563}.donate-page.dark .custom-amount-input{color:#f9fafb}.donate-page.dark .currency-symbol{color:#9ca3af}.donate-page.dark .history-table th{color:#9ca3af;border-bottom-color:#4b5563}.donate-page.dark .history-table td{color:#d1d5db;border-bottom-color:#374151}.donate-page.dark .history-empty{color:#9ca3af}.donate-page.dark .donate-history{border-top-color:#4b5563}.donate-page.dark{background:#111827}@media (width<=640px){.donate-page{padding:20px 16px}.donate-container{padding:24px 20px}.donate-header h1{font-size:24px}.preset-amounts{flex-direction:column}.preset-btn{width:100%}}.donation-confirmation-page{background:#f9fafb;justify-content:center;align-items:center;min-height:100vh;padding:40px 20px;display:flex}.donation-confirmation-container{text-align:center;background:#fff;border-radius:8px;width:100%;max-width:500px;padding:48px 40px;box-shadow:0 1px 3px #0000001a}.confirmation-icon{margin-bottom:16px;font-size:48px}.donation-confirmation-container h1{color:#111827;margin:0 0 16px;font-size:28px;font-weight:700}.confirmation-message{color:#6b7280;margin:0 0 32px;font-size:16px;line-height:1.5}.back-btn{color:#fff;cursor:pointer;background:#3b82f6;border:none;border-radius:8px;justify-content:center;align-items:center;padding:12px 32px;font-size:14px;font-weight:600;text-decoration:none;transition:background .2s;display:inline-flex}.back-btn:hover{background:#2563eb}.donation-confirmation-page.dark{background:#111827}.donation-confirmation-page.dark .donation-confirmation-container{background:#1f2937;box-shadow:0 1px 3px #0000004d}.donation-confirmation-page.dark h1{color:#f9fafb}.donation-confirmation-page.dark .confirmation-message{color:#9ca3af}@media (width<=640px){.donation-confirmation-container{padding:32px 24px}.donation-confirmation-container h1{font-size:24px}}.cookie-consent-banner{z-index:9999;background-color:#1a1a1a;border-top:1px solid #333;width:100%;padding:16px 24px;position:fixed;bottom:0;left:0;box-shadow:0 -2px 10px #0000001a}.cookie-consent-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;max-width:1200px;margin:0 auto;display:flex}.cookie-consent-text{flex:1;min-width:300px}.cookie-consent-text p{color:#e0e0e0;margin:0;font-size:14px;line-height:1.5}.cookie-consent-link{color:#4a9eff;cursor:pointer;text-decoration:underline}.cookie-consent-link:hover{color:#6bb3ff}.cookie-consent-actions{flex-shrink:0;gap:12px;display:flex}.cookie-consent-btn{text-align:center;cursor:pointer;border:none;border-radius:4px;padding:10px 20px;font-size:14px;font-weight:500;text-decoration:none;transition:background-color .2s,transform .1s;display:inline-block}.cookie-consent-btn:hover{transform:translateY(-1px)}.cookie-consent-btn:active{transform:translateY(0)}.cookie-consent-manage{color:#4a9eff;background-color:#0000;border:1px solid #4a9eff}.cookie-consent-manage:hover{color:#6bb3ff;background-color:#4a9eff1a;border-color:#6bb3ff}.cookie-consent-accept{color:#fff;background-color:#4a9eff}.cookie-consent-accept:hover{background-color:#3a8eef}.cookie-consent-decline{color:#e0e0e0;background-color:#0000;border:1px solid #666}.cookie-consent-decline:hover{background-color:#2a2a2a;border-color:#888}@media (width<=768px){.cookie-consent-content{flex-direction:column;align-items:stretch;gap:16px}.cookie-consent-text{min-width:100%}.cookie-consent-actions{justify-content:stretch;width:100%}.cookie-consent-btn{flex:1}}.pricing-section{flex-direction:column;align-items:center;gap:2rem;width:100%;padding:4rem 1rem;display:flex}.pricing-section-title{color:#213547;text-align:center;margin:0;font-size:2rem;font-weight:700}.pricing-section-subtitle{color:#6c757d;text-align:center;max-width:600px;margin:0;font-size:1rem}.pricing-billing-toggle{background:#f1f3f5;border-radius:8px;align-items:center;gap:.75rem;padding:.25rem;display:flex}.pricing-billing-toggle-btn{color:#6c757d;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.5rem 1.25rem;font-size:.875rem;font-weight:500;transition:background-color .2s,color .2s}.pricing-billing-toggle-btn.is-active{color:#213547;background:#fff;font-weight:600;box-shadow:0 1px 3px #0000001a}.pricing-tier-cards{grid-template-columns:repeat(3,1fr);gap:1.5rem;width:100%;max-width:960px;display:grid}.pricing-tier-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;flex-direction:column;padding:1.5rem;transition:border-color .2s,box-shadow .2s;display:flex}.pricing-tier-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26}.pricing-tier-card-header{flex-direction:column;gap:.25rem;margin-bottom:1rem;display:flex}.pricing-tier-card-name{color:#213547;margin:0;font-size:1.25rem;font-weight:700}.pricing-tier-card-price{align-items:baseline;gap:.25rem;margin-bottom:1rem;display:flex}.pricing-tier-card-amount{color:#213547;font-size:2rem;font-weight:700}.pricing-tier-card-frequency{color:#6c757d;font-size:.875rem}.pricing-trial-badge{color:#06c;background:#e7f3ff;border-radius:20px;align-self:flex-start;margin-bottom:1rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-block}.pricing-benefits-list{flex-direction:column;flex:1;gap:.5rem;margin-bottom:1.5rem;padding:0;list-style:none;display:flex}.pricing-benefit-item{color:#213547;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.pricing-benefit-icon{color:#38a169;flex-shrink:0;font-size:.875rem}.pricing-benefit-icon.is-disabled{color:#a0aec0}.pricing-cta-btn{color:#fff;text-align:center;cursor:pointer;background:#667eea;border:none;border-radius:8px;width:100%;margin-top:auto;padding:.75rem;font-size:.9375rem;font-weight:600;text-decoration:none;transition:background-color .2s}.pricing-cta-btn:hover{background:#5a67d8}.pricing-free-reader-callout{text-align:center;color:#276749;background:#f0fff4;border:1px solid #c6f6d5;border-radius:8px;max-width:600px;padding:1rem 1.5rem;font-size:.9375rem}.pricing-free-reader-callout a{color:#276749;font-weight:600;text-decoration:underline}.pricing-section-loading{color:#6c757d;justify-content:center;align-items:center;padding:3rem;font-size:1rem;display:flex}.pricing-section-error{color:#c53030;text-align:center;background:#fff5f5;border:1px solid #feb2b2;border-radius:8px;padding:.75rem 1rem;font-size:.875rem}@media (width<=768px){.pricing-tier-cards{grid-template-columns:1fr;max-width:400px}.pricing-section-title{font-size:1.5rem}}@media (prefers-color-scheme:dark){.pricing-section-title{color:#ffffffde}.pricing-section-subtitle{color:#fff9}.pricing-billing-toggle{background:#2a2a2a}.pricing-billing-toggle-btn{color:#fff9}.pricing-billing-toggle-btn.is-active{color:#ffffffde;background:#3a3a3a}.pricing-tier-card{background:#2a2a2a;border-color:#3a3a3a}.pricing-tier-card:hover{border-color:#667eea}.pricing-tier-card-name,.pricing-tier-card-amount{color:#ffffffde}.pricing-tier-card-frequency{color:#fff9}.pricing-trial-badge{color:#8da2fb;background:#667eea26}.pricing-benefit-item{color:#ffffffde}.pricing-benefit-icon.is-disabled{color:#ffffff4d}.pricing-free-reader-callout{color:#68d391;background:#2767491a;border-color:#2767494d}.pricing-free-reader-callout a{color:#68d391}.pricing-section-loading{color:#fff9}.pricing-section-error{color:#fc8181;background:#c530301a;border-color:#c530304d}}.landing-page{background:#fff;min-height:100vh}.landing-nav{z-index:100;background:#fff;border-bottom:1px solid #e2e8f0;padding:1rem 0;position:sticky;top:0;box-shadow:0 1px 3px #0000000d}.landing-nav-content{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 2rem;display:flex}.landing-nav-actions{align-items:center;gap:1rem;display:flex}.landing-nav-language{align-items:center;display:flex}.landing-nav-language .language-selector-button{color:#4a5568;background:0 0;border:1px solid #e2e8f0;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;transition:all .2s}.landing-nav-language .language-selector-button:hover{background:#f7fafc;border-color:#cbd5e0}.landing-nav-language .language-selector-dropdown{background:#fff;border:1px solid #e2e8f0;margin-top:.5rem;box-shadow:0 10px 25px #0000001a}.landing-nav-language .language-selector-option-button{color:#4a5568}.landing-nav-language .language-selector-option-button:hover{background:#f7fafc}.landing-nav-language .language-selector-option.active .language-selector-option-button{color:#667eea;background:#edf2f7}.landing-nav-brand{color:#667eea;font-size:1.5rem;font-weight:700}.landing-nav-login{color:#667eea;cursor:pointer;background:0 0;border:2px solid #667eea;border-radius:6px;padding:.5rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s}.landing-nav-login:hover{color:#fff;background:#667eea}.login-modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;padding:1rem;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.login-modal-content{background:#fff;border-radius:12px;width:100%;max-width:420px;animation:.3s slideUp;position:relative;box-shadow:0 20px 60px #0000004d}.login-modal-close{color:#718096;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:2rem;line-height:1;transition:all .2s;display:flex;position:absolute;top:1rem;right:1rem}.login-modal-close:hover{color:#2d3748;background:#f7fafc}.login-modal-card{padding:3rem}.login-modal-title{color:#1a202c;text-align:center;margin:0 0 .5rem;font-size:1.75rem;font-weight:700}.login-modal-subtitle{color:#718096;text-align:center;margin:0 0 2rem;font-size:1rem}.login-modal-form{flex-direction:column;gap:1.5rem;display:flex}.login-modal-form .form-group{flex-direction:column;gap:.5rem;display:flex}.login-modal-form .form-group label{color:#2d3748;font-size:.875rem;font-weight:600}.login-modal-form .form-group input{border:1px solid #e2e8f0;border-radius:6px;padding:.75rem 1rem;font-size:1rem;transition:all .2s}.login-modal-form .form-group input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.login-modal-form .form-group input:disabled{cursor:not-allowed;background-color:#f7fafc}.login-modal-form .error-message{color:#c53030;background-color:#fed7d7;border:1px solid #fc8181;border-radius:6px;padding:.75rem 1rem;font-size:.875rem}.login-modal-form .login-button{color:#fff;cursor:pointer;background:#667eea;border:none;border-radius:6px;margin-top:.5rem;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s}.login-modal-form .login-button:hover{background:#5568d3}.login-modal-form .login-button:disabled{opacity:.6;cursor:not-allowed}.login-modal-footer{text-align:center;border-top:1px solid #e2e8f0;margin-top:2rem;padding-top:2rem}.login-modal-footer p{color:#6c757d;margin:0;font-size:.875rem}.login-modal-footer .toggle-mode-button{color:#667eea;cursor:pointer;background:0 0;border:none;padding:0;font-size:.875rem;font-weight:600;text-decoration:none}.login-modal-footer .toggle-mode-button:hover{text-decoration:underline}.hero{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);grid-template-columns:1fr 1.2fr;align-items:center;gap:4rem;min-height:600px;padding:4rem 2rem;display:grid}.hero-logo-container{justify-content:center;align-items:center;display:flex}.hero-logo{width:100%;max-width:100%;height:auto;display:block}.hero-content{max-width:600px}.hero-title{margin:0 0 1.5rem;font-size:3.5rem;font-weight:800;line-height:1.1}.hero-subtitle{opacity:.95;margin:0 0 2rem;font-size:1.25rem;line-height:1.6}.cta-buttons{flex-wrap:wrap;gap:1rem;display:flex}.cta-button{color:#667eea;cursor:pointer;background:#fff;border:none;border-radius:8px;flex:1;min-width:200px;padding:1rem 2.5rem;font-size:1.125rem;font-weight:700;transition:all .3s;box-shadow:0 4px 14px #00000026}.cta-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0003}.cta-button.cta-author{color:#667eea;background:#fff}.cta-button.cta-author:hover{background:#f7fafc}.cta-button.cta-reader{color:#fff;background:#48bb78}.cta-button.cta-reader:hover{background:#38a169}.cta-button.large{padding:var(--spacing-xl) var(--spacing-3xl);font-size:1.25rem}.hero-note{opacity:.9;margin-top:1rem;font-size:.875rem}.hero-image{justify-content:center;align-items:center;display:flex}.hero-image img{border-radius:var(--radius-lg);max-width:100%;height:auto;box-shadow:0 20px 60px #0000004d}.screenshot-placeholder{background:linear-gradient(135deg,#f7fafc 0%,#e2e8f0 100%);border:2px dashed #cbd5e0;border-radius:8px;justify-content:center;align-items:center;min-height:300px;display:flex;position:relative;overflow:hidden}.screenshot-placeholder:before{content:"";background:linear-gradient(90deg,#0000 0%,#ffffff4d 50%,#0000 100%);animation:2s infinite shimmer;position:absolute;inset:0}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.hero-screenshot{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;min-height:400px}.hero-screenshot .placeholder-content{color:#fff}.placeholder-content{text-align:center;z-index:1;position:relative}.placeholder-icon{opacity:.8;margin-bottom:1rem;font-size:4rem}.placeholder-content p{color:#4a5568;margin:0;font-size:1.125rem;font-weight:600}.hero-screenshot .placeholder-content p{color:#fff;opacity:.9}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.section-title{text-align:center;color:#1a202c;margin:0 0 1rem;font-size:2.5rem;font-weight:700}.section-subtitle{text-align:center;color:#718096;margin:0 0 3rem;font-size:1.125rem}.features{background:#f7fafc;padding:5rem 0}.features-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;display:grid}.feature-card{background:#fff;border-radius:12px;padding:2rem;transition:transform .3s,box-shadow .3s;box-shadow:0 2px 8px #00000014}.feature-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.feature-icon{margin-bottom:1rem;font-size:3rem}.feature-card h3{color:#2d3748;margin:0 0 .75rem;font-size:1.25rem;font-weight:700}.feature-card p{color:#718096;margin:0;line-height:1.6}.how-it-works{background:#fff;padding:5rem 0}.steps{flex-direction:column;gap:4rem;display:flex}.step{grid-template-columns:auto 1fr;align-items:start;gap:2rem;display:grid}.step:nth-child(2n){direction:rtl}.step:nth-child(2n) .step-content{direction:ltr}.step-number{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:60px;height:60px;font-size:1.5rem;font-weight:700;display:flex}.step-content h3{color:#2d3748;margin:0 0 .75rem;font-size:1.75rem;font-weight:700}.step-content p{color:#718096;margin:0 0 1.5rem;font-size:1.125rem;line-height:1.6}.step-image{background:#f7fafc;border-radius:12px;justify-content:center;align-items:center;min-height:300px;display:flex;overflow:hidden;box-shadow:0 8px 24px #0000001f}.step-image img{max-width:100%;height:auto;display:block}.step-image .screenshot{object-fit:cover;border-radius:8px;width:100%;height:auto}.benefits{background:#f7fafc;padding:5rem 0}.benefits-split{grid-template-columns:1fr 1fr;gap:4rem;display:grid}.benefits-content h2{color:#2d3748;margin:0 0 2rem;font-size:2rem;font-weight:700}.benefits-list{flex-direction:column;gap:1.5rem;margin:0;padding:0;list-style:none;display:flex}.benefits-list li{align-items:start;gap:1rem;display:flex}.check{color:#fff;background:#48bb78;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:1rem;font-weight:700;display:flex}.benefits-list strong{color:#2d3748;margin-bottom:.25rem;font-size:1.125rem;display:block}.benefits-list p{color:#718096;margin:0;line-height:1.5}.cta-section{color:#fff;text-align:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);padding:5rem 0}.cta-section h2{margin:0 0 1rem;font-size:2.5rem;font-weight:700}.cta-section>.container>p{opacity:.95;margin:0 0 2rem;font-size:1.25rem}.cta-section .cta-buttons{justify-content:center;max-width:600px;margin:0 auto}.cta-note{opacity:.9;margin-top:1rem;font-size:.875rem}.footer{color:#fff;background:#2d3748;padding:3rem 0 1.5rem}.footer-content{grid-template-columns:2fr 1fr 1fr;gap:3rem;margin-bottom:2rem;display:grid}.footer-brand h3{margin:0 0 .5rem;font-size:1.5rem}.footer-brand p{color:#a0aec0;margin:0}.footer-links h4{margin:0 0 1rem;font-size:1rem;font-weight:700}.footer-links ul{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.footer-links a{color:#a0aec0;text-decoration:none;transition:color .2s}.footer-links a:hover{color:#fff}.footer-bottom{text-align:center;border-top:1px solid #4a5568;padding-top:1.5rem}.footer-bottom p{color:#a0aec0;margin:0;font-size:.875rem}.footer-company-link{color:#a0aec0;text-decoration:none;transition:color .2s}.footer-company-link:hover{color:#fff;text-decoration:underline}@media (width<=1024px){.hero{text-align:center;grid-template-columns:1fr;gap:2rem}.hero-logo-container{order:-1}.hero-logo{max-width:350px;margin:0 auto}.hero-content{max-width:100%}.hero-title{font-size:2.5rem}.benefits-split{grid-template-columns:1fr;gap:3rem}.footer-content{grid-template-columns:1fr;gap:2rem}}@media (width<=768px){.landing-nav-content{padding:0 1rem}.landing-nav-actions{gap:.5rem}.landing-nav-language .language-selector-button{padding:.5rem .75rem;font-size:.8125rem}.landing-nav-language .language-selector-current{display:none}.landing-nav-language .language-selector-icon{margin-right:0}.landing-nav-login{padding:.5rem 1rem;font-size:.875rem}.hero{padding:3rem 1.5rem}.hero-logo{max-width:280px}.hero-title{font-size:2rem}.hero-subtitle{font-size:1.125rem}.section-title{font-size:2rem}.features-grid{grid-template-columns:1fr}.step{grid-template-columns:1fr;gap:1rem}.step:nth-child(2n){direction:ltr}.step-number{width:50px;height:50px;font-size:1.25rem}.step-content h3{font-size:1.5rem}.cta-section h2{font-size:2rem}.login-modal-card{padding:2rem 1.5rem}.login-modal-title{font-size:1.5rem}}@media (width<=480px){.hero-logo{max-width:220px}.hero-title{font-size:1.75rem}.cta-button{width:100%;padding:1rem 1.5rem}.cta-buttons{flex-direction:column}.cta-button.large{padding:1.125rem 2rem;font-size:1.125rem}.landing-nav-content{padding:0 1rem}.landing-nav-brand{font-size:1.25rem}.landing-nav-login{padding:var(--spacing-sm) var(--spacing-lg);font-size:.875rem}}@media (prefers-color-scheme:dark){.landing-page{background:#1a1a1a}.landing-nav{background:#2a2a2a;border-bottom-color:#3a3a3a;box-shadow:0 1px 3px #0000004d}.landing-nav-brand{color:#93c5fd}.landing-nav-login{color:#93c5fd;border-color:#93c5fd}.landing-nav-login:hover{color:#1a1a1a;background:#93c5fd}.login-modal-overlay{background:#000c}.login-modal-content{background:#2a2a2a}.login-modal-close{color:#fff9}.login-modal-close:hover{color:#ffffffde;background:#3a3a3a}.login-modal-title{color:#ffffffde}.login-modal-subtitle{color:#fff9}.login-modal-form .form-group label{color:#fffffff2}.login-modal-form .form-group input{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.login-modal-form .form-group input:focus{background:#2a2a2a;border-color:#93c5fd}.login-modal-form .form-group input:disabled{background-color:#1e1e1e}.login-modal-form .error-message{color:#fca5a5;background-color:#3a1e1e;border-color:#4a2a2a}.login-modal-footer{border-top-color:#3a3a3a}.login-modal-footer p{color:#fff9}.login-modal-footer .toggle-mode-button{color:#93c5fd}.section-title{color:#ffffffde}.section-subtitle{color:#fff9}.features{background:#1e1e1e}.feature-card{background:#2a2a2a;border-color:#3a3a3a}.feature-card:hover{box-shadow:0 8px 24px #00000080}.feature-card h3{color:#ffffffde}.feature-card p{color:#fff9}.feature-title{color:#ffffffde}.feature-description{color:#fff9}.how-it-works{background:#2a2a2a}.step-card{background:#1e1e1e;border-color:#3a3a3a}.step-number{color:#1a1a1a;background:linear-gradient(135deg,#93c5fd 0%,#a78bfa 100%)}.step-content h3{color:#fffffff2}.step-content p{color:#fffc}.step-image{background:#1e1e1e}.step-title{color:#fffffff2}.step-description{color:#fffc}.benefits{background:#1e1e1e}.benefits-content h2,.benefits-list strong{color:#ffffffde}.benefits-list p{color:#fff9}.benefit-card{background:#2a2a2a;border-color:#3a3a3a}.benefit-title{color:#ffffffde}.benefit-description{color:#fff9}.cta-section{background:linear-gradient(135deg,#4c1d95 0%,#5b21b6 100%)}.landing-footer{background:#2a2a2a;border-top-color:#3a3a3a}.footer-content p,.footer-links a{color:#fff9}.footer-links a:hover{color:#ffffffde}.screenshot-placeholder{background:linear-gradient(135deg,#2a2a2a 0%,#3a3a3a 100%);border-color:#4a4a4a}.placeholder-content p{color:#fff9}}.legal-page{min-height:100vh;padding:var(--spacing-2xl) var(--spacing-lg);background:#f7fafc}.legal-container{border-radius:var(--radius-lg);background:#fff;max-width:900px;margin:0 auto;overflow:hidden;box-shadow:0 2px 8px #00000014}.legal-header{color:#fff;padding:var(--spacing-3xl) var(--spacing-2xl);background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.back-link{color:#fff;opacity:.9;margin-bottom:1rem;font-size:.9375rem;text-decoration:none;transition:opacity .2s;display:inline-block}.back-link:hover{opacity:1}.legal-header h1{margin:0 0 .5rem;font-size:2.5rem;font-weight:700}.last-updated{opacity:.9;margin:0;font-size:.9375rem}.legal-content{padding:var(--spacing-3xl) var(--spacing-2xl)}.legal-content section{margin-bottom:2.5rem}.legal-content section:last-child{margin-bottom:0}.legal-content h2{color:#2d3748;border-bottom:2px solid #e2e8f0;margin:0 0 1rem;padding-bottom:.5rem;font-size:1.75rem;font-weight:700}.legal-content h3{color:#4a5568;margin:1.5rem 0 .75rem;font-size:1.25rem;font-weight:600}.legal-content p{color:#4a5568;margin:0 0 1rem;line-height:1.7}.legal-content p:last-child{margin-bottom:0}.legal-content ul{color:#4a5568;margin:0 0 1rem;padding-left:1.5rem;line-height:1.7}.legal-content li{margin-bottom:.5rem}.legal-content li:last-child{margin-bottom:0}.legal-content strong{color:#2d3748;font-weight:600}.legal-content a{color:#667eea;font-weight:600;text-decoration:none;transition:color .2s}.legal-content a:hover{color:#764ba2;text-decoration:underline}.legal-footer{padding:var(--spacing-2xl);gap:var(--spacing-lg);background:#f7fafc;border-top:1px solid #e2e8f0;justify-content:center;display:flex}.btn-secondary{padding:var(--spacing-md) var(--spacing-xl);color:#4a5568;border-radius:var(--radius-sm);transition:all var(--transition-base);background:#fff;border:1px solid #e2e8f0;font-weight:600;text-decoration:none;display:inline-block}.btn-secondary:hover{color:#2d3748;background:#f7fafc;border-color:#cbd5e0}@media (width<=768px){.legal-page{padding:var(--spacing-lg) var(--spacing-sm)}.legal-header{padding:var(--spacing-2xl) var(--spacing-xl)}.legal-header h1{font-size:2rem}.legal-content{padding:var(--spacing-2xl) var(--spacing-xl)}.legal-content h2{font-size:1.5rem}.legal-content h3{font-size:1.125rem}.legal-footer{flex-direction:column}.btn-secondary{text-align:center;width:100%}}@media (width<=480px){.legal-header h1{font-size:1.75rem}.legal-content,.legal-footer{padding:var(--spacing-xl) var(--spacing-lg)}}@media (prefers-color-scheme:dark){.legal-page{background:#1a1a1a}.legal-container{background:#2a2a2a;box-shadow:0 2px 8px #0000004d}.legal-content h2{color:#ffffffde;border-bottom-color:#3a3a3a}.legal-content h3{color:#ffffffb3}.legal-content p,.legal-content ul,.legal-content li{color:#fff9}.legal-content strong{color:#ffffffde}.legal-content a{color:#93c5fd}.legal-content a:hover{color:#bfdbfe}.legal-footer{background:#1e1e1e;border-top-color:#3a3a3a}.legal-footer p{color:#fff9}.legal-subtitle{color:#ffffffe6}.btn-secondary{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.btn-secondary:hover{color:#fffffff2;background:#2a2a2a;border-color:#4a4a4a}}.cookie-category{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:24px;padding:24px}.cookie-category-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:16px;display:flex}.cookie-category-header h3{color:#333;margin:0 0 8px;font-size:18px}.cookie-category-description{color:#666;margin:0;font-size:14px;line-height:1.5}.cookie-toggle{flex-shrink:0}.cookie-status{border-radius:4px;padding:6px 12px;font-size:14px;font-weight:500;display:inline-block}.cookie-status-required{color:#1976d2;background:#e3f2fd}.toggle-switch{width:52px;height:28px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{cursor:pointer;background-color:#ccc;border-radius:28px;transition:background-color .3s;position:absolute;inset:0}.toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:20px;height:20px;transition:transform .3s;position:absolute;bottom:4px;left:4px}.toggle-switch input:checked+.toggle-slider{background-color:#4caf50}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 3px #4caf5033}.cookie-details{border-top:1px solid #e0e0e0;padding-top:16px}.cookie-details p{color:#333;margin:12px 0 8px;font-size:14px}.cookie-details ul{margin:8px 0;padding-left:24px}.cookie-details li{color:#666;margin:4px 0;font-size:14px;line-height:1.5}.cookie-provider{color:#666;background:#fff;border-radius:4px;margin-top:16px;padding:12px;font-size:13px}.cookie-current-status{background:#fff3cd;border:1px solid #ffc107;border-radius:8px;margin-bottom:24px;padding:16px}.cookie-current-status h3{color:#856404;margin:0 0 8px;font-size:16px}.cookie-current-status p{color:#856404;margin:0;font-size:14px}.cookie-preferences-actions{border-top:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0;justify-content:center;gap:12px;margin-bottom:24px;padding:24px 0;display:flex}.cookie-preferences-actions .btn-primary,.cookie-preferences-actions .btn-secondary{cursor:pointer;border:none;border-radius:6px;padding:12px 24px;font-size:16px;font-weight:500;transition:all .2s}.cookie-preferences-actions .btn-primary{color:#fff;background:#4caf50}.cookie-preferences-actions .btn-primary:hover{background:#45a049}.cookie-preferences-actions .btn-secondary{color:#333;background:#f5f5f5;border:1px solid #ddd}.cookie-preferences-actions .btn-secondary:hover{background:#e0e0e0}.cookie-saved-notification{color:#fff;z-index:1000;background:#4caf50;border-radius:8px;padding:16px 24px;font-size:16px;font-weight:500;animation:.3s ease-out slideIn;position:fixed;top:20px;right:20px;box-shadow:0 4px 12px #00000026}@media (width<=768px){.cookie-category-header{flex-direction:column;gap:16px}.cookie-preferences-actions{flex-direction:column}.cookie-preferences-actions .btn-primary,.cookie-preferences-actions .btn-secondary{width:100%}.cookie-saved-notification{left:20px;right:20px}}@media (prefers-color-scheme:dark){.cookie-category{background:#2a2a2a;border-color:#3a3a3a}.cookie-category-header h3{color:#fffffff2}.cookie-category-description{color:#fff9}.cookie-status-required{color:#7dd3fc;background:#1e3a4a}.toggle-slider{background-color:#3a3a3a}.toggle-switch input:checked+.toggle-slider{background-color:#4caf50}.cookie-details{border-top-color:#3a3a3a}.cookie-details p{color:#ffffffde}.cookie-details li{color:#ffffffb3}.cookie-provider{color:#ffffffb3;background:#1e1e1e}.cookie-current-status{background:#3a3a1e;border-color:#5a5a2d}.cookie-current-status h3,.cookie-current-status p{color:#ffc107}.cookie-preferences-actions{border-top-color:#3a3a3a;border-bottom-color:#3a3a3a}.cookie-preferences-actions .btn-secondary{color:#ffffffde;background:#2a2a2a;border-color:#3a3a3a}.cookie-preferences-actions .btn-secondary:hover{background:#3a3a3a}}.dashboard-dark-mode .cookie-category{background:#2a2a2a;border-color:#3a3a3a}.dashboard-dark-mode .cookie-category-header h3{color:#fffffff2}.dashboard-dark-mode .cookie-category-description{color:#fff9}.dashboard-dark-mode .cookie-status-required{color:#7dd3fc;background:#1e3a4a}.dashboard-dark-mode .toggle-slider{background-color:#3a3a3a}.dashboard-dark-mode .toggle-switch input:checked+.toggle-slider{background-color:#4caf50}.dashboard-dark-mode .cookie-details{border-top-color:#3a3a3a}.dashboard-dark-mode .cookie-details p{color:#ffffffde}.dashboard-dark-mode .cookie-details li{color:#ffffffb3}.dashboard-dark-mode .cookie-provider{color:#ffffffb3;background:#1e1e1e}.dashboard-dark-mode .cookie-current-status{background:#3a3a1e;border-color:#5a5a2d}.dashboard-dark-mode .cookie-current-status h3,.dashboard-dark-mode .cookie-current-status p{color:#ffc107}.dashboard-dark-mode .cookie-preferences-actions{border-top-color:#3a3a3a;border-bottom-color:#3a3a3a}.dashboard-dark-mode .cookie-preferences-actions .btn-secondary{color:#ffffffde;background:#2a2a2a;border-color:#3a3a3a}.dashboard-dark-mode .cookie-preferences-actions .btn-secondary:hover{background:#3a3a3a}.markdown-renderer{color:#333;word-wrap:break-word;width:100%;max-width:100%;line-height:1.6}.markdown-renderer h1{color:#1a1a1a;border-bottom:1px solid #e1e4e8;margin-top:24px;margin-bottom:16px;padding-bottom:8px;font-size:2em;font-weight:600;line-height:1.25}.markdown-renderer h2{color:#1a1a1a;border-bottom:1px solid #e1e4e8;margin-top:24px;margin-bottom:16px;padding-bottom:8px;font-size:1.5em;font-weight:600;line-height:1.25}.markdown-renderer h3{color:#1a1a1a;margin-top:24px;margin-bottom:16px;font-size:1.25em;font-weight:600;line-height:1.25}.markdown-renderer h4{color:#1a1a1a;margin-top:16px;margin-bottom:16px;font-size:1em;font-weight:600;line-height:1.25}.markdown-renderer h5{color:#1a1a1a;margin-top:16px;margin-bottom:16px;font-size:.875em;font-weight:600;line-height:1.25}.markdown-renderer h6{color:#6a737d;margin-top:16px;margin-bottom:16px;font-size:.85em;font-weight:600;line-height:1.25}.markdown-renderer p{margin-top:0;margin-bottom:16px;line-height:1.6}.markdown-renderer strong,.markdown-renderer b{font-weight:600}.markdown-renderer em,.markdown-renderer i{font-style:italic}.markdown-renderer ul,.markdown-renderer ol{margin-top:0;margin-bottom:16px;padding-left:32px;line-height:1.6}.markdown-renderer ul{list-style-type:disc}.markdown-renderer ol{list-style-type:decimal}.markdown-renderer li{margin-top:4px;margin-bottom:4px}.markdown-renderer li>p{margin-bottom:8px}.markdown-renderer ul ul,.markdown-renderer ul ol,.markdown-renderer ol ul,.markdown-renderer ol ol{margin-top:4px;margin-bottom:4px}.markdown-renderer a{color:#0366d6;cursor:pointer;text-decoration:none}.markdown-renderer a:hover{text-decoration:underline}.markdown-renderer a:visited{color:#6f42c1}.markdown-renderer img{border-radius:4px;max-width:100%;height:auto;margin-top:16px;margin-bottom:16px;display:block;box-shadow:0 1px 3px #0000001a}.markdown-renderer code{background-color:#1b1f230d;border-radius:3px;padding:2px 6px;font-family:Courier New,Courier,monospace;font-size:.9em}.markdown-renderer pre{background-color:#f6f8fa;border-radius:6px;margin-top:0;margin-bottom:16px;padding:16px;font-family:Courier New,Courier,monospace;font-size:.9em;line-height:1.45;overflow:auto}.markdown-renderer pre code{background-color:#0000;padding:0;font-size:1em}.markdown-renderer blockquote{color:#6a737d;border-left:4px solid #dfe2e5;margin:0 0 16px;padding:0 16px}.markdown-renderer blockquote>:first-child{margin-top:0}.markdown-renderer blockquote>:last-child{margin-bottom:0}@media (prefers-color-scheme:dark){.markdown-renderer{color:#e1e4e8}.markdown-renderer h1,.markdown-renderer h2,.markdown-renderer h3,.markdown-renderer h4,.markdown-renderer h5{color:#f0f6fc}.markdown-renderer h6{color:#8b949e}.markdown-renderer h1,.markdown-renderer h2{border-bottom-color:#30363d}.markdown-renderer a{color:#58a6ff}.markdown-renderer a:visited{color:#bc8cff}.markdown-renderer code{background-color:#f0f6fc26}.markdown-renderer pre{background-color:#161b22}.markdown-renderer blockquote{color:#8b949e;border-left-color:#3b434b}}.release-notes-container{background-color:var(--background-color,#fff);max-width:900px;margin:0 auto;padding:32px 24px}.release-notes-header{text-align:center;margin-bottom:48px}.release-notes-title{color:var(--text-primary,#1a1a1a);margin:0 0 12px;font-size:36px;font-weight:700;line-height:1.2}.release-notes-subtitle{color:var(--text-secondary,#666);margin:0;font-size:18px;line-height:1.5}.release-notes-list{flex-direction:column;gap:32px;margin-bottom:48px;display:flex}.release-note-card{background-color:var(--card-background,#fff);border:1px solid var(--border-color,#e0e0e0);border-radius:8px;padding:32px;transition:box-shadow .2s;box-shadow:0 2px 4px #0000000d}.release-note-card:hover{box-shadow:0 4px 8px #0000001a}.release-note-header{border-bottom:1px solid var(--border-color,#e0e0e0);justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;padding-bottom:16px;display:flex}.release-note-title{color:var(--text-primary,#1a1a1a);flex:1;margin:0;font-size:24px;font-weight:600;line-height:1.3}.release-note-date{color:var(--text-secondary,#666);white-space:nowrap;flex-shrink:0;font-size:14px}.release-note-content{color:var(--text-primary,#1a1a1a);font-size:16px;line-height:1.6}.pagination{justify-content:center;align-items:center;gap:24px;margin-top:48px;padding:24px 0;display:flex}.pagination-button{background-color:var(--button-primary,#007bff);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:background-color .2s,opacity .2s}.pagination-button:hover:not(:disabled){background-color:var(--button-primary-hover,#0056b3)}.pagination-button:disabled{background-color:var(--button-disabled,#ccc);opacity:.6;cursor:not-allowed}.pagination-info{color:var(--text-primary,#1a1a1a);font-size:14px;font-weight:500}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:80px 24px;display:flex}.empty-state-icon{margin-bottom:24px;font-size:64px}.empty-state h2{color:var(--text-primary,#1a1a1a);margin:0 0 12px;font-size:24px;font-weight:600}.empty-state p{color:var(--text-secondary,#666);margin:0;font-size:16px;line-height:1.5}.error-message{color:#c33;background-color:#fee;border:1px solid #fcc;border-radius:6px;margin-bottom:24px;padding:16px 20px;font-size:14px;line-height:1.5}.btn-primary{background-color:var(--button-primary,#007bff);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:12px 24px;font-size:16px;font-weight:500;transition:background-color .2s}.btn-primary:hover{background-color:var(--button-primary-hover,#0056b3)}@media (width<=768px){.release-notes-container{padding:24px 16px}.release-notes-title{font-size:28px}.release-notes-subtitle{font-size:16px}.release-note-card{padding:24px 16px}.release-note-header{flex-direction:column;align-items:flex-start;gap:8px}.release-note-title{font-size:20px}.release-note-date{font-size:13px}.pagination{gap:16px}.pagination-button{padding:8px 16px;font-size:13px}.pagination-info{font-size:13px}}@media (prefers-color-scheme:dark){.release-notes-container{background-color:var(--background-color,#1a1a1a)}.release-notes-title{color:var(--text-primary,#fff)}.release-notes-subtitle{color:var(--text-secondary,#b0b0b0)}.release-note-card{background-color:var(--card-background,#2a2a2a);border-color:var(--border-color,#404040)}.release-note-title{color:var(--text-primary,#fff)}.release-note-date{color:var(--text-secondary,#b0b0b0)}.release-note-content{color:var(--text-primary,#e0e0e0)}.pagination-info,.empty-state h2{color:var(--text-primary,#fff)}.empty-state p{color:var(--text-secondary,#b0b0b0)}}.oauth-callback-container{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.oauth-callback-card{text-align:center;background:#fff;border-radius:12px;width:100%;max-width:480px;padding:3rem;box-shadow:0 10px 40px #0000001a}.oauth-callback-error-icon{color:#e53e3e;justify-content:center;margin-bottom:1.5rem;display:flex}.oauth-callback-title{color:#1a202c;margin:0 0 .5rem;font-size:1.75rem;font-weight:700}.oauth-callback-provider{color:#718096;margin:0 0 1.5rem;font-size:1rem}.oauth-callback-error-message{color:#c53030;background-color:#fed7d7;border:1px solid #fc8181;border-radius:8px;margin-bottom:2rem;padding:1rem;font-size:.875rem;line-height:1.5}.oauth-callback-actions{flex-direction:column;gap:.75rem;margin-bottom:2rem;display:flex}.oauth-callback-button{border-radius:6px;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s}.oauth-callback-fallback{border-top:1px solid #e2e8f0;padding-top:2rem}.oauth-callback-fallback-text{color:#718096;margin:0 0 .5rem;font-size:.875rem}.oauth-callback-fallback-link{color:#667eea;font-size:.875rem;font-weight:600;text-decoration:none;transition:color .2s}.oauth-callback-fallback-link:hover{color:#5568d3;text-decoration:underline}@media (width<=480px){.oauth-callback-card{padding:2rem 1.5rem}.oauth-callback-title{font-size:1.5rem}}@media (prefers-color-scheme:dark){.oauth-callback-container{background:linear-gradient(135deg,#4c1d95 0%,#5b21b6 100%)}.oauth-callback-card{background:#2a2a2a;box-shadow:0 10px 40px #00000080}.oauth-callback-error-icon{color:#fc8181}.oauth-callback-title{color:#fffffff2}.oauth-callback-provider{color:#fff9}.oauth-callback-error-message{color:#fca5a5;background-color:#3a1e1e;border-color:#4a2a2a}.oauth-callback-fallback{border-top-color:#3a3a3a}.oauth-callback-fallback-text{color:#fff9}.oauth-callback-fallback-link{color:#93c5fd}.oauth-callback-fallback-link:hover{color:#bfdbfe}}.error-boundary{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.error-boundary-content{text-align:center;background:#fff;border-radius:12px;width:100%;max-width:600px;padding:3rem;box-shadow:0 20px 60px #0000004d}.error-icon{margin-bottom:1rem;font-size:4rem}.error-title{color:#1a202c;margin-bottom:1rem;font-size:2rem;font-weight:700}.error-message{color:#4a5568;margin-bottom:2rem;font-size:1.125rem;line-height:1.6}.error-details{text-align:left;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;margin:2rem 0;padding:1rem}.error-details summary{cursor:pointer;color:#2d3748;margin-bottom:.5rem;font-weight:600}.error-stack{color:#f7fafc;white-space:pre-wrap;word-break:break-word;background:#2d3748;border-radius:4px;margin-top:1rem;padding:1rem;font-size:.875rem;line-height:1.5;overflow-x:auto}.error-actions{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.error-actions .btn-primary,.error-actions .btn-secondary{min-width:140px}@media (width<=640px){.error-boundary-content{padding:2rem 1.5rem}.error-title{font-size:1.5rem}.error-message{font-size:1rem}.error-actions{flex-direction:column}.error-actions .btn-primary,.error-actions .btn-secondary{width:100%}}.help-modal-overlay{z-index:9998;background-color:#00000080;animation:.2s ease-out fadeIn;position:fixed;inset:0}.help-modal-content{z-index:9999;background-color:#fff;border-radius:8px;flex-direction:column;width:90%;max-width:600px;max-height:80vh;animation:.2s ease-out slideIn;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 10px 40px #0003}.help-modal-title{color:#111827;border-bottom:1px solid #e5e7eb;margin:0;padding:1.5rem 1.5rem 1rem;font-size:1.5rem;font-weight:600}.help-modal-body{color:#374151;flex:1;padding:1.5rem;line-height:1.6;overflow-y:auto}.help-modal-loading{flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:2rem;display:flex}.loading-spinner{border:4px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}.help-modal-loading p{color:#6b7280;margin:0}.help-modal-error{text-align:center;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:1rem}.error-message{color:#991b1b;margin:0 0 1rem}.retry-button{color:#fff;cursor:pointer;background-color:#dc2626;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .2s}.retry-button:hover{background-color:#b91c1c}.retry-button:focus{outline-offset:2px;outline:2px solid #dc2626}.help-modal-default{text-align:center;background-color:#f3f4f6;border-radius:6px;padding:1rem}.help-modal-default p{color:#4b5563;margin:0 0 1rem}.help-modal-create-link{color:#fff;background-color:#3b82f6;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:background-color .2s;display:inline-block}.help-modal-create-link:hover{background-color:#2563eb}.help-modal-create-link:focus{outline-offset:2px;outline:2px solid #3b82f6}.help-modal-content-body h1,.help-modal-content-body h2,.help-modal-content-body h3,.help-modal-content-body h4,.help-modal-content-body h5,.help-modal-content-body h6{color:#111827;margin-top:1.5rem;margin-bottom:.75rem;font-weight:600;line-height:1.3}.help-modal-content-body h1{font-size:1.5rem}.help-modal-content-body h2{font-size:1.25rem}.help-modal-content-body h3{font-size:1.125rem}.help-modal-content-body h1:first-child,.help-modal-content-body h2:first-child,.help-modal-content-body h3:first-child{margin-top:0}.help-modal-content-body p{margin:.75rem 0}.help-modal-content-body ul,.help-modal-content-body ol{margin:.75rem 0;padding-left:1.5rem}.help-modal-content-body li{margin:.25rem 0}.help-modal-content-body a{color:#3b82f6;text-decoration:underline}.help-modal-content-body a:hover{color:#2563eb}.help-modal-content-body a:focus{outline-offset:2px;border-radius:2px;outline:2px solid #3b82f6}.help-modal-content-body strong{color:#111827;font-weight:600}.help-modal-content-body em{font-style:italic}.help-modal-content-body code{background-color:#f3f4f6;border-radius:3px;padding:.125rem .25rem;font-family:monospace;font-size:.875em}.help-modal-content-body pre{background-color:#f3f4f6;border-radius:6px;margin:.75rem 0;padding:1rem;overflow-x:auto}.help-modal-content-body pre code{background-color:#0000;padding:0}.help-modal-close{cursor:pointer;color:#6b7280;background-color:#0000;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.5rem;line-height:1;transition:background-color .2s,color .2s;display:flex;position:absolute;top:1rem;right:1rem}.help-modal-close:hover{color:#111827;background-color:#f3f4f6}.help-modal-close:focus{outline-offset:2px;outline:2px solid #3b82f6}@media (prefers-color-scheme:dark){.help-modal-content{color:#f3f4f6;background-color:#1f2937}.help-modal-title{color:#f9fafb;border-bottom-color:#374151}.help-modal-body{color:#d1d5db}.help-modal-default{background-color:#374151}.help-modal-default p{color:#d1d5db}.help-modal-content-body h1,.help-modal-content-body h2,.help-modal-content-body h3,.help-modal-content-body h4,.help-modal-content-body h5,.help-modal-content-body h6,.help-modal-content-body strong{color:#f9fafb}.help-modal-content-body code,.help-modal-content-body pre{background-color:#374151}.help-modal-close{color:#9ca3af}.help-modal-close:hover{color:#f3f4f6;background-color:#374151}.loading-spinner{border-color:#60a5fa #374151 #374151}}@media (width<=640px){.help-modal-content{width:95%;max-height:90vh}.help-modal-title{padding:1rem 1rem .75rem;font-size:1.25rem}.help-modal-body{padding:1rem}.help-modal-close{top:.75rem;right:.75rem}}.help-button{top:var(--spacing-lg,1rem);right:var(--spacing-lg,1rem);z-index:1000;border-radius:var(--radius-full,50%);border:2px solid var(--primary-color,#646cff);background-color:var(--bg-primary,#fff);width:48px;height:48px;color:var(--primary-color,#646cff);cursor:pointer;transition:all var(--transition-base,.2s ease);justify-content:center;align-items:center;font-family:inherit;font-size:1.5rem;display:flex;position:fixed;box-shadow:0 2px 8px #0000001a}.help-button:hover{background-color:var(--primary-color,#646cff);color:var(--bg-primary,#fff);transform:scale(1.05);box-shadow:0 4px 12px #00000026}.help-button:active{transform:scale(.98)}.help-button:focus{outline:3px solid var(--primary-color,#646cff);outline-offset:2px}.help-button:focus:not(:focus-visible){outline:none}.help-button:focus-visible{outline:3px solid var(--primary-color,#646cff);outline-offset:2px}.help-icon{-webkit-user-select:none;user-select:none;line-height:1;display:inline-block}@media (width<=768px){.help-button{width:44px;height:44px;top:var(--spacing-md,.75rem);right:var(--spacing-md,.75rem);font-size:1.25rem}}@media (prefers-color-scheme:dark){.help-button{background-color:var(--bg-dark,#242424);color:var(--primary-color,#646cff);border-color:var(--primary-color,#646cff);box-shadow:0 2px 8px #0000004d}.help-button:hover{background-color:var(--primary-color,#646cff);color:var(--bg-primary,#fff);box-shadow:0 4px 12px #0006}}[data-theme=dark] .help-button{background-color:var(--bg-dark,#242424);color:var(--primary-color,#646cff);border-color:var(--primary-color,#646cff);box-shadow:0 2px 8px #0000004d}[data-theme=dark] .help-button:hover{background-color:var(--primary-color,#646cff);color:var(--bg-primary,#fff);box-shadow:0 4px 12px #0006}[data-theme=light] .help-button{background-color:var(--bg-primary,#fff);color:var(--primary-color,#646cff);border-color:var(--primary-color,#646cff);box-shadow:0 2px 8px #0000001a}[data-theme=light] .help-button:hover{background-color:var(--primary-color,#646cff);color:var(--bg-primary,#fff);box-shadow:0 4px 12px #00000026}@media (prefers-contrast:high){.help-button{border-width:3px}.help-button:focus-visible{outline-width:4px}}@media (prefers-reduced-motion:reduce){.help-button{transition:none}.help-button:hover,.help-button:active{transform:none}}#root{width:100%;min-height:100vh;margin:0;padding:0}.dashboard-dark-mode,.dashboard-dark-mode .dashboard-main{color:#ffffffde;background-color:#0f0f0f}.dashboard-dark-mode .dashboard-container{background:#1a1a1a}.dashboard-dark-mode .dashboard-header{background:#2a2a2a!important;box-shadow:0 1px 3px #0000004d!important}.dashboard-dark-mode .dashboard-header h1,.dashboard-dark-mode .section-header h2,.dashboard-dark-mode .book-title,.dashboard-dark-mode .info-value{color:#ffffffde}.dashboard-dark-mode .dashboard-subtitle{color:#fff9}.dashboard-dark-mode .superadmin-header{background:#2a2a2a!important;box-shadow:0 1px 3px #0000004d!important}.dashboard-dark-mode .superadmin-header h1{color:#ffffffde}.dashboard-dark-mode .superadmin-dashboard{background:#1a1a1a}.dashboard-dark-mode .books-section{background:#2a2a2a;box-shadow:0 2px 8px #0000004d}.dashboard-dark-mode .book-card{border-color:#3a3a3a;background:#1e1e1e!important}.dashboard-dark-mode .book-card-header,.dashboard-dark-mode .book-card-body,.dashboard-dark-mode .book-card-actions{background:#1e1e1e}.dashboard-dark-mode .section-header,.dashboard-dark-mode .book-info{border-bottom-color:#3a3a3a}.dashboard-dark-mode .info-label{color:#fff9}.dashboard-dark-mode .search-input{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .search-input::placeholder{color:#fff6}.dashboard-dark-mode .search-input:focus{background:#2a2a2a;border-color:#667eea}.dashboard-dark-mode .clear-search{color:#fff9}.dashboard-dark-mode .clear-search:hover{color:#ffffffde;background:#3a3a3a}.dashboard-dark-mode .clear-search:active{background:#4a4a4a}.dashboard-dark-mode .suggestions-dropdown{background:#2a2a2a;border-color:#3a3a3a;box-shadow:0 4px 12px #00000080}.dashboard-dark-mode .suggestion-item{color:#ffffffde;border-bottom-color:#3a3a3a}.dashboard-dark-mode .suggestion-item:hover,.dashboard-dark-mode .suggestion-item.selected{background:#3a3a3a}.dashboard-dark-mode .suggestion-type{color:#fff6}.dashboard-dark-mode .search-results-info{color:#fff9;background:#2a2a2a}.dashboard-dark-mode .admin-dashboard,.dashboard-dark-mode .book-list-container,.dashboard-dark-mode .find-books-container,.dashboard-dark-mode .invitations-container,.dashboard-dark-mode .preferences-container,.dashboard-dark-mode .stats-container,.dashboard-dark-mode .access-requests-container,.dashboard-dark-mode .find-readers-container,.dashboard-dark-mode .user-manager-container,.dashboard-dark-mode .help-management-container,.dashboard-dark-mode .feedback-container,.dashboard-dark-mode .users-section,.dashboard-dark-mode .signup-mode-section,.dashboard-dark-mode .stat-card,.dashboard-dark-mode .book-editor,.dashboard-dark-mode .invitations-page,.dashboard-dark-mode .find-books-page,.dashboard-dark-mode .preferences-page,.dashboard-dark-mode .stats-page-container,.dashboard-dark-mode .feedback-page{color:#ffffffde;background-color:#1a1a1a}.dashboard-dark-mode .search-section,.dashboard-dark-mode .results-section,.dashboard-dark-mode .stats-section,.dashboard-dark-mode .stats-search-filter{box-shadow:0 2px 8px #0000004d;background:#2a2a2a!important}.dashboard-dark-mode .search-filters,.dashboard-dark-mode .search-filter{background:#2a2a2a!important;border-color:#3a3a3a!important}.dashboard-dark-mode .filter-group{background:0 0}.dashboard-dark-mode .filter-group label{color:#ffffffde}.dashboard-dark-mode .filter-controls{background:0 0}.dashboard-dark-mode .editor-actions,.dashboard-dark-mode .profile-actions{background:#1e1e1e;border-top-color:#3a3a3a}.dashboard-dark-mode .passkey-setup-content{background:#2a2a2a;border-color:#3a3a3a}.dashboard-dark-mode .signup-mode-btn{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .signup-mode-btn:hover{background:#2a2a2a;border-color:#4a4a4a}.dashboard-dark-mode .signup-mode-btn.active{color:#fff;background:#667eea;border-color:#667eea}.dashboard-dark-mode .book-card,.dashboard-dark-mode .reader-card,.dashboard-dark-mode .invitation-card,.dashboard-dark-mode .access-request-card,.dashboard-dark-mode .stats-card,.dashboard-dark-mode .user-card,.dashboard-dark-mode .context-item,.dashboard-dark-mode .help-content-editor,.dashboard-dark-mode .page-context-list,.dashboard-dark-mode .stat-card,.dashboard-dark-mode .author-item{color:#ffffffde;background-color:#242424;border-color:#3a3a3a}.dashboard-dark-mode .stat-card:hover,.dashboard-dark-mode .author-item:hover{background-color:#2a2a2a}.dashboard-dark-mode .stat-card-success{background:#1e3a1e!important;border-color:#2d5a2d!important}.dashboard-dark-mode .stat-card-warning{background:#3a3a1e!important;border-color:#5a5a2d!important}.dashboard-dark-mode .stat-card-success .stat-value{color:#86efac!important}.dashboard-dark-mode .stat-card-warning .stat-value{color:#ffc107!important}.dashboard-dark-mode .dashboard-layout .form-input,.dashboard-dark-mode .dashboard-layout .form-select,.dashboard-dark-mode .dashboard-layout .form-textarea,.dashboard-dark-mode .dashboard-layout input[type=text],.dashboard-dark-mode .dashboard-layout input[type=email],.dashboard-dark-mode .dashboard-layout input[type=password],.dashboard-dark-mode .dashboard-layout input[type=url],.dashboard-dark-mode .dashboard-layout input[type=number],.dashboard-dark-mode .dashboard-layout input[type=search],.dashboard-dark-mode .dashboard-layout select,.dashboard-dark-mode .dashboard-layout textarea{color:#ffffffde;background-color:#2a2a2a;border-color:#3a3a3a}.dashboard-dark-mode .dashboard-layout .form-input:focus,.dashboard-dark-mode .dashboard-layout .form-select:focus,.dashboard-dark-mode .dashboard-layout .form-textarea:focus,.dashboard-dark-mode .dashboard-layout input:focus,.dashboard-dark-mode .dashboard-layout select:focus,.dashboard-dark-mode .dashboard-layout textarea:focus{background-color:#2a2a2a;border-color:#646cff}.dashboard-dark-mode .dashboard-layout .form-input:disabled,.dashboard-dark-mode .dashboard-layout .form-select:disabled,.dashboard-dark-mode .dashboard-layout .form-textarea:disabled,.dashboard-dark-mode .dashboard-layout input:disabled,.dashboard-dark-mode .dashboard-layout select:disabled,.dashboard-dark-mode .dashboard-layout textarea:disabled{opacity:.6;background-color:#1a1a1a}.dashboard-dark-mode .dashboard-layout label,.dashboard-dark-mode .form-help,.dashboard-dark-mode .section-description,.dashboard-dark-mode .help-text{color:#ffffffb3}.dashboard-dark-mode .dashboard-layout h1,.dashboard-dark-mode .dashboard-layout h2,.dashboard-dark-mode .dashboard-layout h3,.dashboard-dark-mode .dashboard-layout h4,.dashboard-dark-mode .dashboard-layout h5,.dashboard-dark-mode .dashboard-layout h6,.dashboard-dark-mode .find-readers-header h1,.dashboard-dark-mode .stats-page-header h1,.dashboard-dark-mode .results-header h2,.dashboard-dark-mode .feedback-header h1,.dashboard-dark-mode .reader-name,.dashboard-dark-mode .author-email{color:#fffffff2}.dashboard-dark-mode .subtitle,.dashboard-dark-mode .feedback-subtitle,.dashboard-dark-mode .help-management-subtitle,.dashboard-dark-mode .stats-subtitle,.dashboard-dark-mode .results-count,.dashboard-dark-mode .reader-email,.dashboard-dark-mode .author-count{color:#fff9}.dashboard-dark-mode .profile-section,.dashboard-dark-mode .security-section,.dashboard-dark-mode .form-group,.dashboard-dark-mode .editor-header,.dashboard-dark-mode .feedback-header,.dashboard-dark-mode .results-header,.dashboard-dark-mode .book-selection{border-color:#3a3a3a}.dashboard-dark-mode .toolbar-separator,.dashboard-dark-mode .passkey-divider,.dashboard-dark-mode hr{background-color:#3a3a3a;border-color:#3a3a3a}.dashboard-dark-mode .profile-editor-modal,.dashboard-dark-mode .security-modal,.dashboard-dark-mode .help-modal-content{color:#ffffffde;background-color:#1a1a1a;border-color:#3a3a3a}.dashboard-dark-mode .profile-editor-header,.dashboard-dark-mode .security-modal-header,.dashboard-dark-mode .help-modal-title{color:#fffffff2;border-bottom-color:#3a3a3a}.dashboard-dark-mode .profile-actions,.dashboard-dark-mode .security-modal-actions{border-top-color:#3a3a3a}.dashboard-dark-mode .modal-content{color:#ffffffde;background:#2a2a2a!important}.dashboard-dark-mode .modal-overlay{background:#000c}.dashboard-dark-mode .rich-text-editor{background-color:#1a1a1a;border-color:#3a3a3a}.dashboard-dark-mode .rich-text-editor-toolbar{background-color:#242424;border-bottom-color:#3a3a3a}.dashboard-dark-mode .rich-text-editor-toolbar button{color:#ffffffde;background-color:#2a2a2a;border-color:#3a3a3a}.dashboard-dark-mode .rich-text-editor-toolbar button:hover{background-color:#3a3a3a;border-color:#4a4a4a}.dashboard-dark-mode .rich-text-editor-toolbar button.is-active{color:#fff;background-color:#646cff;border-color:#535bf2}.dashboard-dark-mode .rich-text-editor-content{color:#ffffffde;background-color:#1a1a1a}.dashboard-dark-mode .preview-panel,.dashboard-dark-mode .preview-content{background-color:#1a1a1a;border-color:#3a3a3a}.dashboard-dark-mode .preview-rendered{color:#ffffffde}.dashboard-dark-mode .preview-empty{color:#ffffff80}.dashboard-dark-mode .feedback-info{background-color:#1a2a3a;border-color:#2a3a4a}.dashboard-dark-mode .feedback-info p{color:#7dd3fc}.dashboard-dark-mode .stats-info-box{background:#1e3a4a!important;border-color:#2d5a6d!important}.dashboard-dark-mode .stats-info-box p{color:#a0d4f0!important}.dashboard-dark-mode .privacy-notice{background:#1e1e1e!important;border-color:#3a3a3a!important}.dashboard-dark-mode .privacy-text{color:#ffffffb3!important}.dashboard-dark-mode .genre-mismatch-notice,.dashboard-dark-mode .no-books-message{background:#3a2f1a!important;border-color:#ffc107!important}.dashboard-dark-mode .mismatch-text,.dashboard-dark-mode .no-books-message{color:#ffc107!important}.dashboard-dark-mode .btn-filter,.dashboard-dark-mode .btn-toggle-archived{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .btn-filter:hover,.dashboard-dark-mode .btn-toggle-archived:hover{background:#2a2a2a;border-color:#4a4a4a}.dashboard-dark-mode .btn-filter.active{color:#fff;background:#667eea;border-color:#667eea}.dashboard-dark-mode .btn-filter.active:hover{background:#535bf2;border-color:#535bf2}.dashboard-dark-mode .btn-primary{color:#fff;background:#646cff;border-color:#646cff}.dashboard-dark-mode .btn-primary:hover:not(:disabled){background:#535bf2;border-color:#535bf2}.dashboard-dark-mode .btn-primary:disabled{color:#ffffff80;background:#4a4a4a;border-color:#4a4a4a}.dashboard-dark-mode .btn-secondary{color:#ffffffde;background:#2a2a2a;border-color:#3a3a3a}.dashboard-dark-mode .btn-secondary:hover:not(:disabled){background:#3a3a3a;border-color:#4a4a4a}.dashboard-dark-mode .btn-secondary:disabled{color:#ffffff4d;background:#1a1a1a;border-color:#2a2a2a}.dashboard-dark-mode .help-button{color:#646cff;background-color:#2a2a2a;border-color:#646cff}.dashboard-dark-mode .help-button:hover{color:#fff;background-color:#646cff}.dashboard-dark-mode .help-modal-overlay{background:#000000b3}.dashboard-dark-mode .help-modal-body{color:#ffffffde!important}.dashboard-dark-mode .help-modal-body p,.dashboard-dark-mode .help-modal-body li,.dashboard-dark-mode .help-modal-body span{color:#ffffffde}.dashboard-dark-mode .help-modal-body h1,.dashboard-dark-mode .help-modal-body h2,.dashboard-dark-mode .help-modal-body h3,.dashboard-dark-mode .help-modal-body h4{color:#fffffff2}.dashboard-dark-mode table{background-color:#1a1a1a;border-color:#3a3a3a}.dashboard-dark-mode th,.dashboard-dark-mode td{color:#ffffffde;border-color:#3a3a3a}.dashboard-dark-mode thead{background-color:#242424}.dashboard-dark-mode tbody tr:hover{background-color:#2a2a2a!important}.dashboard-dark-mode .users-table tbody tr:hover{background:#2a2a2a!important}.dashboard-dark-mode .dashboard-layout .checkbox-input,.dashboard-dark-mode .dashboard-layout input[type=checkbox],.dashboard-dark-mode .dashboard-layout input[type=radio]{background-color:#2a2a2a;border-color:#3a3a3a}.dashboard-dark-mode .tag{color:#ffffffde;background-color:#2a2a2a;border-color:#3a3a3a}.dashboard-dark-mode .genre-tag{color:#fff;background:#667eea}.dashboard-dark-mode .tag-suggestions-dropdown{background-color:#242424;border-color:#3a3a3a;box-shadow:0 4px 12px #00000080}.dashboard-dark-mode .tag-suggestion-item{color:#ffffffde}.dashboard-dark-mode .tag-suggestion-item:hover,.dashboard-dark-mode .tag-suggestion-item.selected{background-color:#3a3a3a}.dashboard-dark-mode .genre-suggestions-dropdown{background:#2a2a2a;border-color:#3a3a3a}.dashboard-dark-mode .genre-suggestion-item{color:#ffffffde;border-bottom-color:#3a3a3a}.dashboard-dark-mode .genre-suggestion-item:hover,.dashboard-dark-mode .genre-suggestion-item.selected{color:#667eea;background:#3a3a3a}.dashboard-dark-mode .empty-state{color:#fff9;background:0 0}.dashboard-dark-mode .empty-state p,.dashboard-dark-mode .empty-state .help-text{color:#ffffff80}.dashboard-dark-mode .empty-state h3,.dashboard-dark-mode .empty-state h4{color:#ffffffb3}.dashboard-dark-mode .empty-state .empty-icon{opacity:.5}.dashboard-dark-mode .book-uploader{color:#ffffffde!important;background:#2a2a2a!important}.dashboard-dark-mode .book-uploader h2,.dashboard-dark-mode .book-uploader h3{color:#ffffffde}.dashboard-dark-mode .book-uploader .help-text,.dashboard-dark-mode .book-uploader .section-description{color:#fff9}.dashboard-dark-mode .selected-files{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .files-label,.dashboard-dark-mode .selected-files ul{color:#ffffffde}.dashboard-dark-mode .selected-files li{color:#ffffffb3}.dashboard-dark-mode .author-suggestions-dropdown{background:#1e1e1e;border-color:#3a3a3a;box-shadow:0 4px 12px #00000080}.dashboard-dark-mode .author-suggestion-item{color:#ffffffde;border-bottom-color:#3a3a3a}.dashboard-dark-mode .author-suggestion-item:hover,.dashboard-dark-mode .author-suggestion-item.selected{background:#3a3a3a}.dashboard-dark-mode .author-email{color:#ffffffde}.dashboard-dark-mode .dashboard-layout input[type=file]{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .dashboard-layout input[type=file]::file-selector-button{color:#ffffffde;background:#3a3a3a;border-color:#4a4a4a}.dashboard-dark-mode .dashboard-layout input[type=file]::file-selector-button:hover{background:#4a4a4a}.dashboard-dark-mode .upload-form,.dashboard-dark-mode .dashboard-layout .form-group{background:0 0}.dashboard-dark-mode .form-row,.dashboard-dark-mode .color-input-group{background:0 0}.dashboard-dark-mode .color-input-group input[type=color]{background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .color-input-group input[type=text]{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .display-config-section{background:0 0;border-top-color:#3a3a3a}.dashboard-dark-mode .display-config-section h3{color:#ffffffde}.dashboard-dark-mode .search-field label,.dashboard-dark-mode .book-selection label{color:#ffffffe6!important}.dashboard-dark-mode .book-select{color:#ffffffe6!important;background:#1e1e1e!important;border-color:#3a3a3a!important}.dashboard-dark-mode .book-select:focus{border-color:#667eea!important}.dashboard-dark-mode .clear-button{color:#fff9}.dashboard-dark-mode .clear-button:hover{color:#ffffffde;background:#3a3a3a}.dashboard-dark-mode .clear-button:active{background:#4a4a4a}.dashboard-dark-mode .book-info-section{border-color:#3a3a3a;background-color:#1e1e1e!important}.dashboard-dark-mode .display-config-section{border-top-color:#3a3a3a}.dashboard-dark-mode .tags-container{background-color:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .photo-upload-section,.dashboard-dark-mode .current-photo,.dashboard-dark-mode .no-photo{background-color:#1a1a1a;border-color:#3a3a3a}.dashboard-dark-mode .photo-placeholder{color:#ffffff80;background-color:#2a2a2a}.dashboard-dark-mode .loading-spinner{border-color:#646cff #3a3a3a #3a3a3a}.dashboard-dark-mode .spinner-overlay{background:#0f0f0ff2!important}.dashboard-dark-mode .error-message,.dashboard-dark-mode .editor-error{color:#fca5a5;background-color:#3a1a1a;border-color:#4a2a2a}.dashboard-dark-mode .success-message{color:#86efac;background-color:#1a3a2a;border-color:#2a4a3a}.dashboard-dark-mode .passkey-item{background-color:#242424;border-color:#3a3a3a}.dashboard-dark-mode .passkey-item:hover{background-color:#2a2a2a}.dashboard-dark-mode .dashboard-layout input[type=search]{color:#ffffffde;background-color:#2a2a2a;border-color:#3a3a3a}.dashboard-dark-mode .dashboard-layout ::placeholder{color:#fff6}.dashboard-dark-mode .dashboard-layout a{color:#7dd3fc}.dashboard-dark-mode .dashboard-layout a:hover{color:#38bdf8}.dashboard-dark-mode code,.dashboard-dark-mode pre{color:#86efac;background-color:#242424;border-color:#3a3a3a}.dashboard-dark-mode ::-webkit-scrollbar{background-color:#1a1a1a}.dashboard-dark-mode ::-webkit-scrollbar-thumb{background-color:#3a3a3a}.dashboard-dark-mode ::-webkit-scrollbar-thumb:hover{background-color:#4a4a4a}.dashboard-dark-mode .feedback-window-control{background:#2a2a2a;border-color:#3a3a3a}.dashboard-dark-mode .feedback-window-control h3{color:#ffffffde;border-bottom-color:#3a3a3a}.dashboard-dark-mode .feedback-status{background-color:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .status-header,.dashboard-dark-mode .status-label{color:#ffffffde}.dashboard-dark-mode .status-description{color:#fff9}.dashboard-dark-mode .status-badge.status-open{color:#86efac;background-color:#1e3a1e}.dashboard-dark-mode .status-badge.status-closed{color:#ffc107;background-color:#3a3a1e}.dashboard-dark-mode .status-badge.status-archived{color:#fca5a5;background-color:#3a1e1e}.dashboard-dark-mode .danger-zone{background:0 0!important;border-color:#4a2a2a!important}.dashboard-dark-mode .danger-zone h3,.dashboard-dark-mode .danger-zone p{color:#ffffffde}.dashboard-dark-mode .reader-group-manager{color:#ffffffde;background:#2a2a2a}.dashboard-dark-mode .manager-header{border-bottom-color:#3a3a3a}.dashboard-dark-mode .manager-header h2{color:#ffffffde}.dashboard-dark-mode .manager-content{background:0 0}.dashboard-dark-mode .groups-panel,.dashboard-dark-mode .members-panel{background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .panel-header h3{color:#ffffffde}.dashboard-dark-mode .create-group-form,.dashboard-dark-mode .add-reader-form{background:#2a2a2a;border-color:#3a3a3a}.dashboard-dark-mode .group-item{color:#ffffffde;border-color:#3a3a3a;background:#1e1e1e!important}.dashboard-dark-mode .group-item:hover{border-color:#4a4a4a;background:#2a2a2a!important}.dashboard-dark-mode .group-item-selected,.dashboard-dark-mode .group-item.selected{color:#fff;border-color:#667eea;background:#667eea!important}.dashboard-dark-mode .access-type-control,.dashboard-dark-mode .access-type-selector{background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .access-type-control label{color:#ffffffde}.dashboard-dark-mode .add-reader-modal{background:#2a2a2a}.dashboard-dark-mode .add-reader-modal .modal-header{border-bottom-color:#3a3a3a}.dashboard-dark-mode .add-reader-modal .modal-header h3{color:#ffffffde}.dashboard-dark-mode .comment-viewer{color:#ffffffde;background:#2a2a2a}.dashboard-dark-mode .comment-viewer-header{border-bottom-color:#3a3a3a}.dashboard-dark-mode .comment-viewer-header h2{color:#ffffffde}.dashboard-dark-mode .comment-count{color:#fff9}.dashboard-dark-mode .comment-card{background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .comment-card:hover{box-shadow:0 2px 8px #00000080}.dashboard-dark-mode .comment-header{border-bottom-color:#3a3a3a}.dashboard-dark-mode .comment-item{border-color:#3a3a3a;background:#2a2a2a!important}.dashboard-dark-mode .comment-content{color:#ffffffde}.dashboard-dark-mode .comment-meta{color:#fff9}.dashboard-dark-mode .comment-author,.dashboard-dark-mode .comment-text{color:#ffffffde}.dashboard-dark-mode .empty-state-hint{color:#fff6}.dashboard-dark-mode .autocomplete-dropdown{box-shadow:0 4px 12px #00000080;background:#2a2a2a!important;border-color:#3a3a3a!important}.dashboard-dark-mode .autocomplete-dropdown .suggestion-item{color:#ffffffde;border-bottom-color:#3a3a3a}.dashboard-dark-mode .autocomplete-dropdown .suggestion-item:hover{background:#3a3a3a}.dashboard-dark-mode .segmented-control{background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .segmented-control button{color:#ffffffde;background:0 0}.dashboard-dark-mode .segmented-control button:hover{background:#2a2a2a}.dashboard-dark-mode .segmented-control button.active{color:#fff;background:#667eea}.dashboard-dark-mode .link-group{background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .passkey-instructions{color:#ffffffde;background:#1a1a1a;border-color:#3a3a3a}.dashboard-dark-mode .passkey-manager{background:#2a2a2a;border-color:#3a3a3a}.dashboard-dark-mode .passkey-manager h3{color:#ffffffde}.dashboard-dark-mode .passkey-empty{color:#fff9}.dashboard-dark-mode .passkey-empty p{color:#ffffff80}.dashboard-dark-mode .danger-action{background:#2a2a2a!important;border-color:#3a3a3a!important}.dashboard-dark-mode .danger-info,.dashboard-dark-mode .danger-info h4{color:#ffffffde}.dashboard-dark-mode .danger-info p{color:#fff9}.dashboard-dark-mode .filter-results-info{color:#fff9;background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .user-manager-modal{color:#ffffffde;background:#2a2a2a}.dashboard-dark-mode .user-manager-modal h2,.dashboard-dark-mode .user-manager-modal h3{color:#ffffffde}.dashboard-dark-mode .bulk-upload-modal{color:#ffffffde;background:#2a2a2a}.dashboard-dark-mode .bulk-upload-modal h2,.dashboard-dark-mode .bulk-upload-modal h3{color:#ffffffde}.dashboard-dark-mode .modal-header{color:#ffffffde;background:#2a2a2a;border-bottom-color:#3a3a3a}.dashboard-dark-mode .modal-body{color:#ffffffde;background:#2a2a2a}.dashboard-dark-mode .instructions{color:#ffffffde;background-color:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .editor-header{color:#ffffffde;background:#2a2a2a;border-bottom-color:#3a3a3a}.dashboard-dark-mode .editor-content{color:#ffffffde;background:#2a2a2a}.dashboard-dark-mode .editor-info{color:#ffffffde;background:#1e1e1e;border-left-color:#93c5fd}.dashboard-dark-mode .editor-form{background:0 0}.dashboard-dark-mode .confidentiality-editor,.dashboard-dark-mode .legal-page{color:#ffffffde;background:#1a1a1a}.dashboard-dark-mode .legal-container{color:#ffffffde;background:#2a2a2a;box-shadow:0 2px 8px #0000004d}.dashboard-dark-mode .legal-container h1,.dashboard-dark-mode .legal-container h2,.dashboard-dark-mode .legal-container h3{color:#fffffff2}.dashboard-dark-mode .legal-container p,.dashboard-dark-mode .legal-container li{color:#ffffffde}.dashboard-dark-mode .dashboard-layout input#feedbackEndDate,.dashboard-dark-mode .dashboard-layout input[type=date],.dashboard-dark-mode .dashboard-layout input[type=datetime-local]{color:#ffffffde;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .dashboard-layout input#feedbackEndDate:focus,.dashboard-dark-mode .dashboard-layout input[type=date]:focus,.dashboard-dark-mode .dashboard-layout input[type=datetime-local]:focus{background:#2a2a2a;border-color:#646cff}.dashboard-dark-mode .pagination-info-bar{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .reader-loading-overlay,.dashboard-dark-mode .loading-overlay{background:#0f0f0ff2!important}.dashboard-dark-mode .toast{background:#2d3748;box-shadow:0 4px 12px #00000080}.dashboard-dark-mode .toast-message{color:#ffffffde}.dashboard-dark-mode .toast-close{color:#fff9}.dashboard-dark-mode .toast-close:hover{color:#fffffff2}.dashboard-dark-mode .toast-success .toast-icon{background:#48bb7833}.dashboard-dark-mode .toast-error .toast-icon{background:#f5656533}.dashboard-dark-mode .toast-warning .toast-icon{background:#ed893633}.dashboard-dark-mode .toast-info .toast-icon{background:#4299e133}.dashboard-dark-mode .banner-management-page{background:#1a1a1a}.dashboard-dark-mode .banner-management-header h1{color:#fffffff2}.dashboard-dark-mode .banner-management-subtitle{color:#fff9}.dashboard-dark-mode .banner-preview-section,.dashboard-dark-mode .banner-form,.dashboard-dark-mode .banner-info-section{background:#2a2a2a;box-shadow:0 1px 3px #0000004d}.dashboard-dark-mode .banner-preview-section h2,.dashboard-dark-mode .banner-info-section h3{color:#fffffff2}.dashboard-dark-mode .banner-preview-empty{color:#fff6;background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .dashboard-layout .form-group label,.dashboard-dark-mode .checkbox-label{color:#ffffffde}.dashboard-dark-mode .form-textarea,.dashboard-dark-mode .form-input{color:#ffffffde;background:#1e1e1e;border-color:#3a3a3a}.dashboard-dark-mode .form-textarea:focus,.dashboard-dark-mode .form-input:focus{background:#1e1e1e;border-color:#667eea}.dashboard-dark-mode .form-help{color:#fff9}.dashboard-dark-mode .banner-info{background:#1e1e1e}.dashboard-dark-mode .banner-info p,.dashboard-dark-mode .banner-info-section ul,.dashboard-dark-mode .banner-info-section li{color:#ffffffb3}.dashboard-dark-mode .banner-container{background:linear-gradient(135deg,#5568d3 0%,#6b4a9a 100%)}.dashboard-dark-mode .banner-message{color:#fffffff2}.dashboard-dark-mode .banner-dismiss{background:#ffffff26}.dashboard-dark-mode .banner-dismiss:hover{background:#ffffff40}.dashboard-dark-mode .pagination-button{color:#ffffffde;background:#2a2a2a;border-color:#3a3a3a}.dashboard-dark-mode .pagination-button:hover:not(:disabled){color:#93c5fd;background:#3a3a3a;border-color:#667eea}.dashboard-dark-mode .pagination-count{color:#fff9}.dashboard-dark-mode .email-confirmation-container{background:linear-gradient(135deg,#5568d3 0%,#6b4a9a 100%)}.dashboard-dark-mode .email-confirmation-card{background:#2a2a2a;box-shadow:0 10px 40px #00000080}.dashboard-dark-mode .confirmation-title{color:#fffffff2!important}.dashboard-dark-mode .confirmation-message{color:#ffffffde!important}.dashboard-dark-mode .confirmation-email{color:#93c5fd!important}.dashboard-dark-mode .confirmation-instructions{background:#1e1e1e}.dashboard-dark-mode .confirmation-instructions h2{color:#fffffff2!important}.dashboard-dark-mode .confirmation-instructions li{color:#ffffffde!important}.dashboard-dark-mode .confirmation-note{background:#3a2f1a;border-left-color:#f59e0b}.dashboard-dark-mode .confirmation-note p{color:#ffc107!important}.dashboard-dark-mode .approval-notice{background:#1a2a3a;border-left-color:#2196f3}.dashboard-dark-mode .approval-notice p{color:#7dd3fc!important}.dashboard-dark-mode .confirmation-help p{color:#fff9!important}.dashboard-dark-mode .link-button{color:#93c5fd!important}.dashboard-dark-mode .link-button:hover{color:#7dd3fc!important}.dashboard-dark-mode .admin-release-notes-page{background-color:#0f0f0f}.dashboard-dark-mode .admin-release-notes-container{background-color:#1a1a1a;box-shadow:0 2px 4px #0000004d}.dashboard-dark-mode .admin-release-notes-header h1{color:#fffffff2}.dashboard-dark-mode .admin-release-notes-subtitle{color:#fff9}.dashboard-dark-mode .release-note-editor-page{background-color:#0f0f0f}.dashboard-dark-mode .release-note-editor-container{background:#1a1a1a;box-shadow:0 2px 4px #0000004d}.dashboard-dark-mode .release-note-editor-header h1{color:#fffffff2}.dashboard-dark-mode .release-note-editor-subtitle{color:#fff9}.dashboard-dark-mode .release-note-editor-form,.dashboard-dark-mode .dashboard-layout .form-group{background:0 0}.dashboard-dark-mode .dashboard-layout .form-group label{color:#ffffffde}.dashboard-dark-mode .form-actions{background:0 0;border-top-color:#3a3a3a}.dashboard-dark-mode .release-notes-container{background-color:#1a1a1a}.dashboard-dark-mode .release-notes-header{background:0 0}.dashboard-dark-mode .release-notes-title{color:#fffffff2}.dashboard-dark-mode .release-notes-subtitle{color:#fff9}.dashboard-dark-mode .release-note-card{background-color:#242424;border-color:#3a3a3a;box-shadow:0 2px 4px #0000004d}.dashboard-dark-mode .release-note-card:hover{box-shadow:0 4px 8px #00000080}.dashboard-dark-mode .release-note-header{border-bottom-color:#3a3a3a}.dashboard-dark-mode .release-note-title{color:#fffffff2}.dashboard-dark-mode .release-note-date{color:#fff9}.dashboard-dark-mode .release-note-content{color:#ffffffde}.dashboard-dark-mode .pagination{background:0 0}.dashboard-dark-mode .pagination-button{background-color:#646cff;border:none}.dashboard-dark-mode .pagination-button:hover:not(:disabled){background-color:#535bf2}.dashboard-dark-mode .pagination-button:disabled{opacity:.6;background-color:#4a4a4a}.dashboard-dark-mode .pagination-info{color:#ffffffde}.dashboard-dark-mode .empty-state{background:0 0}.dashboard-dark-mode .empty-state h2{color:#fffffff2}.dashboard-dark-mode .empty-state p{color:#fff9}.dashboard-dark-mode .error-message{color:#fca5a5;background-color:#3a1a1a;border-color:#4a2a2a}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:#ffffffde;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--primary-color:#646cff;--primary-hover:#535bf2;--secondary-color:#6c757d;--success-color:#28a745;--danger-color:#dc3545;--warning-color:#ffc107;--info-color:#17a2b8;--bg-primary:#fff;--bg-secondary:#f8f9fa;--bg-dark:#242424;--text-primary:#213547;--text-secondary:#6c757d;--border-color:#dee2e6;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:.75rem;--spacing-lg:1rem;--spacing-xl:1.5rem;--spacing-2xl:2rem;--spacing-3xl:3rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-full:9999px;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.3s ease;background-color:#242424;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (prefers-color-scheme:light){:root{color:#213547;background-color:#fff}}*{box-sizing:border-box;margin:0;padding:0}body{min-width:320px;min-height:100vh;margin:0;display:flex;position:relative;overflow-x:hidden}body:after{content:none!important;display:none!important}body::-webkit-scrollbar-x{display:none}html{position:relative;overflow-x:hidden}html:after{content:none!important;display:none!important}html::-webkit-scrollbar-x{display:none}:before,:after{border-bottom:none!important}progress,[style*="bottom: 0"],[style*=bottom\:0]{display:none!important}#root{width:100%;min-height:100vh}h1{font-size:2em;line-height:1.1}button{border-radius:var(--radius-md);padding:var(--spacing-md) var(--spacing-xl);background-color:var(--primary-color);color:#fff;cursor:pointer;transition:all var(--transition-base);border:1px solid #0000;font-family:inherit;font-size:1em;font-weight:500}button:hover{background-color:var(--primary-hover)}button:focus,button:focus-visible{outline:none}button::-moz-focus-inner{border:0}button:disabled{opacity:.6;cursor:not-allowed}:focus,:focus-visible{outline:none}.btn-primary{color:#fff;padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;font-size:1rem;font-weight:600}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{color:#4a5568;padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);background:#edf2f7;border:none;font-size:1rem;font-weight:600}.btn-secondary:hover:not(:disabled){background:#e2e8f0}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-danger{color:#c53030;padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);background-color:#fed7d7;border:none;font-size:1rem;font-weight:600}.btn-danger:hover:not(:disabled){color:#fff;background:#fc8181}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.btn-success{color:#155724;padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);background:#d4edda;border:none;font-size:1rem;font-weight:600}.btn-success:hover:not(:disabled){background:#c3e6cb}.btn-success:disabled{opacity:.6;cursor:not-allowed}.btn-warning{color:#856404;padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);background:#fff3cd;border:none;font-size:1rem;font-weight:600}.btn-warning:hover:not(:disabled){background:#ffeaa7}.btn-warning:disabled{opacity:.6;cursor:not-allowed}@media (prefers-color-scheme:dark){.btn-secondary{color:#ffffffde;background:#2a2a2a;border:1px solid #3a3a3a}.btn-secondary:hover:not(:disabled){background:#3a3a3a}.btn-danger{color:#fca5a5;background:#3a1e1e;border:1px solid #4a2a2a}.btn-danger:hover:not(:disabled){color:#fca5a5;background:#4a2a2a}.btn-success{color:#86efac;background:#1e3a2a;border:1px solid #2a4a3a}.btn-success:hover:not(:disabled){background:#2a4a3a}.btn-warning{color:#ffc107;background:#3a2f1a;border:1px solid #4a3a2a}.btn-warning:hover:not(:disabled){background:#4a3a2a}}.loading{min-height:200px;color:var(--text-secondary);justify-content:center;align-items:center;font-size:1.2em;display:flex}.error{color:var(--danger-color);flex-direction:column;align-items:center;gap:1rem;padding:2rem;display:flex}
