:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:#333;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-weight:400;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}body{min-height:100vh;margin:0}#root{width:100%;min-height:100vh}:root{--primary-color:#18181b;--primary-hover:#2f3a32;--primary-light:#e7e5df;--secondary-color:#f4efe3;--accent-color:#b18435;--danger-color:#b91c1c;--success-color:#047857;--text-primary:#18181b;--text-secondary:#52525b;--text-muted:#71717a;--bg-light:#fff;--bg-cream:#f6f2e8;--bg-dark:#111318;--border-color:#18181b1f;--border-light:#18181b14;--shadow-sm:0 1px 2px #18181b0f;--shadow-md:0 8px 20px #18181b14;--shadow-lg:0 18px 42px #18181b1a;--shadow-xl:0 24px 60px #18181b29;--transition-fast:.2s ease;--transition-normal:.3s ease;--transition-slow:.4s ease;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--sidebar-width:240px;--sidebar-collapsed-width:60px;--control-bg:#f6f2e8f2;--control-text:#18181b;--control-border:#18181b1f;--control-hover:#18181b0f}[data-theme=dark]{--control-bg:#1a202cf2;--control-text:#e2e8f0;--control-border:rgba(var(--control-color-rgb,74, 137, 220), .2);--control-hover:rgba(var(--control-color-rgb,74, 137, 220), .1)}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-cream);color:var(--text-primary);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.5}.app{background:var(--bg-cream);min-height:100vh;position:relative;overflow:hidden}.reader-auth-page{background:var(--bg-cream);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.reader-auth-panel{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-light);width:min(100%,420px);box-shadow:var(--shadow-lg);padding:24px}.reader-auth-kicker{color:var(--text-muted);text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:700}.reader-auth-panel h1{margin-bottom:20px;font-size:24px;display:block}.reader-auth-form{gap:14px;display:grid}.reader-auth-form label{color:var(--text-primary);gap:7px;font-weight:600;display:grid}.reader-auth-form input{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-cream);width:100%;min-height:44px;color:var(--text-primary);padding:0 12px}.reader-auth-message{border-radius:var(--radius-sm);color:var(--danger-color);background:#e74c3c14;border:1px solid #e74c3c47;padding:10px 12px}.reader-auth-submit,.reader-auth-switch,.reader-auth-bar button{border-radius:var(--radius-sm);min-height:40px;font-weight:700}.reader-auth-submit{border:1px solid var(--primary-color);background:var(--primary-color);color:#fff}.reader-auth-switch{border:1px solid var(--border-color);background:var(--bg-light);width:100%;color:var(--primary-color);margin-top:12px}.reader-auth-bar{z-index:300;border-bottom:1px solid var(--border-color);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;justify-content:flex-end;align-items:center;gap:8px;min-height:44px;padding:6px 16px;display:flex;position:sticky;top:0}.reader-auth-bar span{text-overflow:ellipsis;white-space:nowrap;max-width:160px;color:var(--text-primary);font-weight:700;overflow:hidden}.reader-auth-bar button{border:1px solid var(--border-color);background:var(--bg-light);color:var(--text-primary);padding:0 12px}.bookshelf-layout{background:var(--bg-light);min-height:100vh;box-shadow:var(--shadow-lg);display:flex}.sidebar{background:var(--bg-light);border-right:1px solid var(--border-color);transition:var(--transition-normal);z-index:100;flex-direction:column;display:flex;position:relative}.sidebar-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:16px;display:flex}.sidebar-title{color:var(--text-primary);align-items:center;gap:12px;margin:0;font-size:18px;font-weight:600;display:flex}.logo{font-size:24px;line-height:1}.title-text{transition:var(--transition-fast)}.sidebar-toggle{background:var(--bg-cream);border-radius:var(--radius-sm);cursor:pointer;width:32px;height:32px;color:var(--text-secondary);transition:var(--transition-fast);border:none;justify-content:center;align-items:center;font-size:16px;display:flex}.sidebar-toggle:hover{background:var(--primary-light);color:var(--primary-color)}.sidebar-actions{border-bottom:1px solid var(--border-light);padding:12px 16px}.sidebar-btn{border:1px solid var(--primary-color);background:var(--bg-light);width:100%;color:var(--primary-color);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);align-items:center;gap:12px;margin-bottom:8px;padding:10px 12px;font-size:14px;font-weight:500;display:flex}.btn-icon{min-width:16px;font-size:16px;font-weight:700}.btn-text{text-align:left;transition:var(--transition-fast);flex:1}.new-group-btn{border-color:var(--text-muted);color:var(--text-secondary)}.new-group-btn:hover{background:var(--text-secondary);color:#fff}.sidebar-nav{flex:1;padding:16px 0;overflow-y:auto}.nav-section{margin-bottom:24px}.nav-section-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin:0;padding:0 16px 8px;font-size:12px;font-weight:600}.nav-item{width:100%;color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast);text-align:left;border-radius:0 var(--radius-md) var(--radius-md) 0;background:0 0;border:none;align-items:center;gap:12px;padding:10px 16px;display:flex}.nav-item:hover{background:var(--bg-cream);color:var(--text-primary)}.nav-item.active{background:var(--primary-light);color:var(--primary-color);font-weight:500}.nav-icon{min-width:16px;font-size:16px}.nav-text{transition:var(--transition-fast);flex:1}.sidebar-stats{border-top:1px solid var(--border-light);background:var(--bg-cream);padding:16px}.stats-title{color:var(--text-primary);margin:0 0 12px;font-size:14px;font-weight:600}.stats-grid{grid-template-columns:1fr;gap:12px;margin-bottom:16px;display:grid}.stat-item{text-align:center;background:var(--bg-light);border-radius:var(--radius-md);border:1px solid var(--border-light);padding:12px}.stat-label{color:var(--text-muted);margin-bottom:4px;font-size:12px}.stat-value{color:var(--text-primary);font-size:16px;font-weight:600}.stats-footer{color:var(--text-muted);text-align:center;border-top:1px solid var(--border-light);padding-top:12px;font-size:12px}.main-content{transition:var(--transition-normal);flex-direction:column;flex:1;display:flex;overflow:hidden}.main-content.sidebar-expanded{margin-left:0}.main-header{background:var(--bg-light);border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;display:flex}.header-search{flex:1;max-width:400px}.search-input{border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;transition:var(--transition-fast);background:var(--bg-cream);outline:none;padding:10px 16px;font-size:14px}.search-input:focus{border-color:var(--primary-color);background:var(--bg-light);box-shadow:0 0 0 3px #4a89dc1a}.header-controls{align-items:center;gap:12px;display:flex}.toggle-view-btn{border:1px solid var(--border-color);background:var(--bg-light);color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);padding:8px 16px;font-size:14px}.toggle-view-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.sort-select{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-light);color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast);outline:none;padding:8px 12px;font-size:14px}.sort-select:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #4a89dc1a}.books-container{flex:1;padding:24px;overflow-y:auto}.books-container.grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px;display:grid}.books-container.list{flex-direction:column;gap:12px;display:flex}.book-item{background:var(--bg-light);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);overflow:hidden}.book-item.grid-view{text-align:center;flex-direction:column;align-items:center;min-height:280px;padding:16px;display:flex}.book-cover{background:linear-gradient(135deg, var(--primary-color), var(--primary-light));border-radius:var(--radius-sm);width:120px;height:160px;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;margin-bottom:12px;display:flex;position:relative}.book-icon{color:#fff;filter:drop-shadow(0 2px 4px #0003);font-size:32px}.book-info{text-align:center;width:100%}.book-title{color:var(--text-primary);-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;margin-bottom:8px;font-size:14px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.book-meta{color:var(--text-muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.book-item.list-view{align-items:center;gap:16px;min-height:80px;padding:16px;display:flex}.book-icon-small{color:var(--primary-color);flex-shrink:0;font-size:24px}.book-details{flex:1;min-width:0}.book-stats{color:var(--text-muted);gap:16px;margin-top:4px;font-size:12px;display:flex}.selected-indicator{background:var(--primary-color);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;font-weight:700;display:flex}.empty-shelf{text-align:center;background:var(--bg-cream);border:2px dashed var(--border-color);border-radius:var(--radius-lg);flex-direction:column;flex:1;justify-content:center;align-items:center;margin:24px;padding:48px 24px;display:flex}.empty-icon{color:var(--text-muted);opacity:.6;margin-bottom:24px;font-size:64px}.empty-shelf h2{color:var(--text-primary);margin-bottom:12px;font-size:18px;font-weight:600}.empty-shelf p{color:var(--text-secondary);max-width:300px;margin-bottom:32px;font-size:14px;line-height:1.5}.empty-shelf button{background:var(--primary-color);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);box-shadow:var(--shadow-sm);border:none;padding:12px 24px;font-size:14px;font-weight:500}.empty-shelf button:hover{background:var(--primary-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%,-50%)scale(.9)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.modal-content{background:var(--bg-light);border-radius:var(--radius-lg);width:90%;max-width:400px;box-shadow:var(--shadow-xl);border:1px solid var(--border-color);padding:24px;animation:.3s modalSlideIn}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-content h3{color:var(--text-primary);margin-bottom:16px;font-size:16px;font-weight:600}.modal-content p{color:var(--text-secondary);margin-bottom:12px;font-size:14px;line-height:1.5}.modal-content .warning{color:var(--danger-color);font-size:14px;font-weight:500}.modal-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.modal-actions button{border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-fast);padding:8px 16px;font-size:14px;font-weight:500}.cancel-btn{background:var(--bg-light);color:var(--text-secondary)}.cancel-btn:hover{background:var(--bg-cream);border-color:var(--text-muted)}.confirm-btn{background:var(--danger-color);color:#fff;border-color:var(--danger-color)}@media (width<=768px){.sidebar.expanded{width:200px}.main-header{flex-direction:column;align-items:stretch;gap:12px;padding:12px 16px}.header-search{max-width:none}.header-controls{justify-content:space-between}.books-container.grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px}.book-cover{width:100px;height:140px}.book-icon{font-size:24px}.main-content.sidebar-collapsed{margin-left:0}.sidebar.collapsed{z-index:1000;height:100vh;box-shadow:var(--shadow-lg);position:fixed;top:0;left:0}.sidebar-switch{display:none}.toggle-view-btn{padding:6px 12px;font-size:12px}.sort-select{padding:6px 10px;font-size:12px}.search-input{padding:8px 12px;font-size:12px}.book-item.grid-view{min-height:240px;padding:12px}.book-item.list-view{gap:12px;padding:12px}.book-title{font-size:12px}.book-stats{gap:12px;font-size:11px}.empty-shelf{margin:16px;padding:32px 16px}.empty-icon{font-size:48px}.empty-shelf h2{font-size:16px}.empty-shelf p{font-size:12px}.empty-shelf button{padding:10px 20px;font-size:12px}.modal-content{max-width:320px;padding:20px}.modal-content h3{font-size:14px}.modal-content p{font-size:12px}.modal-actions button{padding:6px 12px;font-size:12px}}.reader-layout{transition:var(--transition-normal);background:var(--bg-cream);flex-direction:column;display:flex;position:fixed;inset:0}.reader-scroll-area{-webkit-overflow-scrolling:touch;transition:var(--transition-normal);flex:1;overflow:hidden auto}.reader-scroll-area::-webkit-scrollbar{width:10px}.reader-scroll-area::-webkit-scrollbar-track{background:#8b45130d}.reader-scroll-area::-webkit-scrollbar-thumb{background:linear-gradient(180deg, var(--secondary-color), var(--primary-color));background-clip:padding-box;border:2px solid #0000;border-radius:5px}.reader-scroll-area::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg, var(--primary-color), var(--primary-hover))}.reader-content{word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;text-align:left;white-space:pre-wrap;max-width:800px;margin:0 auto;padding:120px 40px;font-size:1.125rem;line-height:1.8}.chapter-title{text-align:center;color:var(--text-primary);word-wrap:break-word;overflow-wrap:break-word;white-space:normal;margin-bottom:32px;font-size:1.4em;font-weight:700}.chapter-content{word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap;line-height:1.8}.chapter-content p{word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap;margin-bottom:0;line-height:1.8}.reader-header{background:linear-gradient(to bottom, var(--control-bg) 0%, rgba(var(--control-bg-rgb,245, 247, 250), .95) 100%);z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--control-border);color:var(--control-text);justify-content:space-between;align-items:center;padding:24px 40px;animation:.4s cubic-bezier(.4,0,.2,1) slideDown;display:flex;position:fixed;top:0;left:0;right:0}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.back-btn{border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;transition:var(--transition-fast);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff9;padding:12px 24px;font-family:Crimson Text,serif;font-size:1rem;font-weight:600}.back-btn:hover{box-shadow:var(--shadow-md);background:#ffffffe6;transform:translateY(-2px)}.reader-header .book-title{text-align:center;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary);border:none;flex:1;margin:0;padding:0;font-family:Playfair Display,Georgia,serif;font-size:1.3rem;font-weight:700;overflow:hidden}.reader-header .header-actions{gap:12px;display:flex}.reader-header .header-actions button{border:1px solid var(--border-color);border-radius:var(--radius-md);width:48px;height:48px;color:var(--text-primary);cursor:pointer;transition:var(--transition-fast);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff9;justify-content:center;align-items:center;font-size:1.4rem;display:flex}.reader-header .header-actions button:hover{box-shadow:var(--shadow-md);background:#ffffffe6;transform:scale(1.08)}.reader-footer{background:linear-gradient(to top, var(--control-bg) 0%, rgba(var(--control-bg-rgb,245, 247, 250), .95) 100%);z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--control-border);color:var(--control-text);justify-content:space-between;align-items:center;gap:20px;padding:24px 40px;animation:.4s cubic-bezier(.4,0,.2,1) slideUp;display:flex;position:fixed;bottom:0;left:0;right:0}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.reader-footer button{background:var(--control-hover);border:1px solid var(--control-border);border-radius:var(--radius-md);color:var(--control-text);cursor:pointer;transition:var(--transition-fast);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-align:center;min-width:100px;padding:14px 28px;font-family:Crimson Text,serif;font-size:1rem;font-weight:600}.reader-footer button:hover:not(:disabled){background:var(--control-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.reader-footer button:disabled{opacity:.4;cursor:not-allowed}.chapter-indicator{opacity:.8;color:var(--control-text);background:var(--control-hover);border-radius:var(--radius-full);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--control-border);text-align:center;white-space:nowrap;min-width:120px;padding:10px 20px;font-size:1.1rem;font-weight:600}.lock-indicator{color:#fff;border-radius:var(--radius-full);cursor:pointer;z-index:200;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-lg);background:#2c2416e6;border:1px solid #ffffff1a;padding:16px 32px;font-size:1rem;animation:2.5s ease-in-out infinite gentlePulse;position:fixed;bottom:100px;left:50%;transform:translate(-50%)}.chapter-scroll-indicator{z-index:190;animation:.3s fadeIn;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.chapter-scroll-content{border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-xl);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);background:#fffffff2;min-width:280px;padding:32px 48px}.chapter-scroll-content h3{color:var(--text-primary);margin-bottom:8px;font-size:1.5rem;font-weight:700;line-height:1.3}.chapter-scroll-content p{color:var(--text-secondary);margin:0;font-size:1rem;font-weight:500}.chapter-progress-indicator{z-index:180;opacity:.8;transition:all .3s;position:fixed;bottom:20px;right:20px}.chapter-progress-indicator.with-controls{bottom:120px}.chapter-progress-indicator:hover{opacity:1}.progress-content{color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0000004d;border:1px solid #ffffff1a;border-radius:50px;align-items:center;gap:16px;padding:12px 20px;font-size:12px;font-weight:500;transition:all .3s;display:flex;box-shadow:0 4px 16px #0000001a}.chapter-progress-indicator:hover .progress-content{background:#000000b3;transform:translateY(-2px);box-shadow:0 6px 20px #0003}.chapter-info{font-size:12px}.progress-percentage{background:#ffffff1a;border-radius:20px;padding:4px 12px;font-size:12px;font-weight:600;transition:all .3s}.chapter-progress-indicator:hover .progress-percentage{background:#ffffff4d}.next-chapter-indicator{text-align:center;margin-top:60px;margin-bottom:40px;animation:.5s fadeIn}.next-chapter-content{color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0000004d;border:1px solid #ffffff1a;border-radius:50px;padding:16px 32px;font-size:14px;transition:all .3s;display:inline-block;box-shadow:0 4px 16px #0000001a}.next-chapter-content button{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.next-chapter-indicator:hover .next-chapter-content{background:#000000b3;transform:translateY(-2px);box-shadow:0 6px 20px #0003}.load-more-indicator{text-align:center;margin-top:40px;margin-bottom:40px;animation:.5s fadeIn}.load-more-content{color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0000004d;border:1px solid #ffffff1a;border-radius:50px;padding:16px 32px;font-size:14px;transition:all .3s;display:inline-block;box-shadow:0 4px 16px #0000001a}.load-more-indicator:hover .load-more-content{background:#000000b3;transform:translateY(-2px);box-shadow:0 6px 20px #0003}.sidebar-overlay{z-index:150;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#2c241699;animation:.25s fadeIn;position:fixed;inset:0}.sidebar-container{background:var(--control-bg);width:420px;max-width:90vw;height:100vh;box-shadow:var(--shadow-xl);border-left:1px solid var(--control-border);animation:.35s cubic-bezier(.4,0,.2,1) slideInRight;position:fixed;top:0;right:0;overflow-y:auto}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.chapter-list,.settings-panel{background:var(--control-bg);height:100%}.chapter-list-header,.settings-header{border-bottom:2px solid var(--control-border);background:var(--control-bg);z-index:10;color:var(--control-text);justify-content:space-between;align-items:center;padding:28px 32px;display:flex;position:sticky;top:0}.chapter-list-header h2,.settings-header h2{color:var(--text-primary);margin:0;font-family:Playfair Display,Georgia,serif;font-size:1.7rem;font-weight:700}.close-btn{border-radius:var(--radius-md);background:var(--bg-light);width:44px;height:44px;color:var(--text-primary);cursor:pointer;transition:var(--transition-fast);border:none;justify-content:center;align-items:center;font-size:1.6rem;display:flex}.close-btn:hover{background:var(--bg-cream);box-shadow:var(--shadow-sm);transform:scale(1.1)}.chapter-list-content{padding:24px}.chapter-item{border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);background:#fff;border:2px solid #0000;align-items:center;gap:16px;margin-bottom:12px;padding:20px;display:flex}.chapter-item:before{content:"";background:linear-gradient(180deg, var(--primary-color), var(--accent-color));width:4px;transition:var(--transition-fast);transform-origin:50%;border-radius:0 2px 2px 0;position:absolute;top:0;bottom:0;left:0;transform:scaleY(0)}.chapter-item:hover{background:var(--bg-light);box-shadow:var(--shadow-md);border-color:#8b45131a;transform:translate(8px)}.chapter-item:hover:before{transform:scaleY(1)}.chapter-item.current{border-left:4px solid var(--primary-color);background:#8b45130d;box-shadow:0 0 0 3px #8b451314}.chapter-number{background:var(--bg-light);border-radius:var(--radius-sm);width:40px;height:40px;color:var(--text-secondary);transition:var(--transition-fast);border:1px solid var(--border-color);flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex}.chapter-item:hover .chapter-number{background:var(--primary-color);color:#fff;box-shadow:var(--shadow-sm);border-color:var(--primary-color);transform:scale(1.1)}.chapter-item.current .chapter-number{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.chapter-item .chapter-title{color:var(--text-primary);text-align:left;border:none;flex:1;margin:0;padding:0;font-family:Crimson Text,serif;font-size:1.05rem;font-weight:500}.current-indicator{color:var(--primary-color);transition:var(--transition-fast);font-size:1rem;font-weight:700}.chapter-item:hover .current-indicator{transform:translate(4px)}.settings-content{padding:32px}.settings-section{margin-bottom:40px;position:relative}.settings-section:before{content:"";background:var(--border-color);height:1px;position:absolute;top:-20px;left:0;right:0}.settings-section:first-child:before{display:none}.settings-section h3{color:var(--text-primary);border-bottom:2px solid var(--primary-color);margin-bottom:20px;padding-bottom:12px;font-family:Playfair Display,Georgia,serif;font-size:1.2rem;font-weight:700;display:inline-block}.setting-item label{color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:12px;font-size:1rem;font-weight:600;display:flex}.color-input-wrapper{align-items:center;gap:12px;display:flex}.color-input-wrapper input[type=color]{border:2px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;background:#fff;width:48px;height:48px;padding:4px}.color-input-wrapper input[type=color]:hover{border-color:var(--primary-color)}.color-input-wrapper .color-text-input{border:2px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);background:#fff;flex:1;padding:12px 16px;font-family:Courier New,monospace;font-size:.9rem}.color-input-wrapper .color-text-input:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 3px #4a89dc1a}.setting-item label:before{content:"";background:var(--primary-color);border-radius:50%;width:6px;height:6px}.setting-item select{border:2px solid var(--border-color);border-radius:var(--radius-md);width:100%;color:var(--text-primary);cursor:pointer;transition:var(--transition-fast);background:#fff;padding:12px 16px;font-family:Crimson Text,serif;font-size:1rem}.setting-item select:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 3px #8b45131a}.setting-item input[type=range]{border-radius:var(--radius-full);background:var(--bg-light);-webkit-appearance:none;border:1px solid var(--border-color);outline:none;width:calc(100% - 80px);height:8px;margin-right:16px}.setting-item input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:linear-gradient(135deg, var(--primary-color), var(--primary-hover));cursor:pointer;width:24px;height:24px;box-shadow:var(--shadow-md);transition:var(--transition-fast);border:2px solid #fff;border-radius:50%}.value-display{width:70px;color:var(--text-secondary);text-align:right;background:var(--bg-light);border-radius:var(--radius-sm);border:1px solid var(--border-color);padding:8px 12px;font-family:JetBrains Mono,monospace;font-size:.95rem;font-weight:600;display:inline-block}.theme-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px;display:grid}.theme-btn{border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);text-align:center;box-shadow:var(--shadow-sm);border:3px solid #0000;padding:20px;font-family:Crimson Text,serif;font-size:1rem;font-weight:600}.theme-btn:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.theme-btn.active{border-color:var(--primary-color);transform:translateY(-2px);box-shadow:0 0 0 4px #8b451326}.color-pickers{flex-direction:column;gap:20px;margin-bottom:24px;display:flex}.color-picker-item{align-items:center;gap:16px;display:flex}.color-picker-item label{width:90px;color:var(--text-secondary);margin:0;font-size:1rem;font-weight:600}.color-picker-item input[type=color]{border-radius:var(--radius-md);cursor:pointer;width:60px;height:60px;box-shadow:var(--shadow-md);transition:var(--transition-fast);border:none;padding:0}.color-picker-item input[type=color]:hover{box-shadow:var(--shadow-lg);transform:scale(1.1)}.color-picker-item input[type=text]{border:2px solid var(--border-color);border-radius:var(--radius-md);transition:var(--transition-fast);flex:1;padding:12px 16px;font-family:JetBrains Mono,monospace;font-size:.95rem}.color-picker-item input[type=text]:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 3px #8b45131a}.apply-colors-btn{background:linear-gradient(135deg, var(--primary-color), var(--primary-hover));color:#fff;border-radius:var(--radius-md);cursor:pointer;width:100%;transition:var(--transition-fast);box-shadow:var(--shadow-md);letter-spacing:.02em;border:none;padding:16px;font-family:Crimson Text,serif;font-size:1.1rem;font-weight:600}.apply-colors-btn:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}@media (width<=768px){.bookshelf{padding:30px 20px}.bookshelf-header{text-align:center;flex-direction:column;gap:24px;padding:28px}.bookshelf-header h1{font-size:2.2rem}.header-actions{flex-wrap:wrap;justify-content:center;gap:12px}.books-container{padding:24px}.books-container.grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:20px}.book-item.grid-view{padding:20px 16px}.book-cover{aspect-ratio:2/3}.book-icon{font-size:3.5rem}.book-item.list-view{gap:16px;padding:16px 20px}.book-icon-small{font-size:2.2rem}.book-title{font-size:1.1rem}.reader-content{padding:100px 24px;font-size:1rem}.chapter-title{font-size:1.8rem}.reader-header,.reader-footer{padding:20px 24px}.reader-header .header-actions button{width:44px;height:44px}.sidebar-container{width:100%}.settings-content{padding:24px}.theme-grid{grid-template-columns:1fr}.color-picker-item{flex-direction:column;align-items:stretch;gap:12px}.color-picker-item label{width:auto}.empty-shelf{padding:60px 40px}.empty-icon{font-size:7rem}}.loading-overlay{z-index:9999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#0003;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.loading-spinner{border:3px solid #ffffff4d;border-top:3px solid var(--control-color,#4a89dc);border-radius:50%;width:40px;height:40px;margin-bottom:15px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-overlay p{color:#fffc;font-size:14px;font-weight:400}body,.app,.reader-auth-page{background:linear-gradient(90deg, transparent 0, transparent calc(100% - 1px), #18181b09 calc(100% - 1px)), var(--bg-cream);background-size:32px 100%,auto}.reader-auth-panel{border-color:var(--border-color);box-shadow:var(--shadow-lg);border-radius:8px}.reader-auth-kicker{color:var(--text-muted);font-weight:800}.reader-auth-panel h1{color:var(--text-primary);font-size:1.5rem;font-weight:800}.reader-auth-form input,.search-input,.sort-select{border-color:var(--border-color);background:#fafafa;border-radius:6px;min-height:40px}.reader-auth-form input:focus,.search-input:focus,.sort-select:focus{border-color:#18181b57;box-shadow:0 0 0 3px #18181b14}.reader-auth-submit,.empty-shelf button{background:var(--primary-color);border-color:var(--primary-color);color:#fff;box-shadow:none;border-radius:6px}.reader-auth-switch,.reader-auth-bar button,.toggle-view-btn,.cancel-btn,.reader-footer button,.back-btn,.reader-header .header-actions button{border:1px solid var(--border-color);color:var(--text-primary);box-shadow:none;background:#fff;border-radius:6px}.reader-auth-bar{border-color:var(--border-color);background:#f6f2e8f0;min-height:48px}.bookshelf-layout{width:min(100%,1120px);min-height:calc(100vh - 48px);box-shadow:none;background:0 0;gap:16px;margin:0 auto;padding:16px}.sidebar{border:1px solid var(--border-color);box-shadow:var(--shadow-sm);background:#ffffffe6;border-radius:8px;flex:none;overflow:hidden}.sidebar.expanded{width:232px}.sidebar.collapsed{width:60px}.sidebar-header,.sidebar-actions,.sidebar-stats{border-color:var(--border-light)}.sidebar-title{gap:10px;font-size:1rem;font-weight:800}.logo,.nav-icon,.book-icon-small{border:1px solid var(--border-color);color:var(--text-primary);background:#fafafa;border-radius:6px;justify-content:center;align-items:center;font-size:.72rem;font-weight:900;display:inline-flex}.logo{width:32px;height:32px}.nav-icon{width:24px;height:24px}.sidebar-toggle{border:1px solid var(--border-color);background:#fff}.sidebar-toggle:hover,.toggle-view-btn:hover,.reader-auth-switch:hover,.reader-auth-bar button:hover,.reader-footer button:hover:not(:disabled),.back-btn:hover,.reader-header .header-actions button:hover{color:var(--text-primary);background:#f4f4f5;transform:translateY(-1px)}.sidebar-btn{border-color:var(--border-color);min-height:40px;color:var(--text-primary);background:#fff;border-radius:6px;font-weight:750}.sidebar-btn:hover{background:var(--primary-color);color:#fff}.nav-section-title{color:var(--text-muted);letter-spacing:0;text-transform:none;font-size:.72rem;font-weight:800}.nav-item{color:var(--text-secondary);border-right:3px solid #0000;border-radius:0;font-weight:700}.nav-item:hover{background:#fafafa}.nav-item.active{border-right-color:var(--accent-color);color:var(--text-primary);background:#f4f4f5;font-weight:800}.sidebar-stats{background:#fafafa}.stats-grid{gap:8px}.stat-item{background:#fff;border-radius:6px;padding:10px}.main-content{border:1px solid var(--border-color);min-width:0;box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:8px;overflow:hidden}.main-content.sidebar-collapsed{margin-left:0}.main-header{border-color:var(--border-color);background:#fffffff0;padding:14px 16px}.header-controls{flex-wrap:wrap}.toggle-view-btn,.sort-select{min-height:40px;font-weight:700}.delete-btn,.confirm-btn{border:1px solid var(--danger-color);background:var(--danger-color);color:#fff;border-radius:6px;min-height:40px;padding:0 14px;font-weight:750}.books-container{padding:18px}.books-container.grid{grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:14px}.books-container.list{gap:10px}.book-item{border-color:var(--border-color);box-shadow:none;background:#fff;border-radius:8px}.book-item:hover{box-shadow:var(--shadow-md);border-color:#18181b3d;transform:translateY(-1px)}.book-item.selected{border-color:var(--accent-color);background:#fffdf7;box-shadow:0 0 0 3px #b1843529}.book-item.grid-view{min-height:246px;padding:14px}.book-cover{background:linear-gradient(90deg,#0000 18px,#b184354d 19px,#0000 20px),linear-gradient(135deg,#faf7ef,#e9dfcc);border:1px solid #18181b24;border-radius:4px;width:104px;height:144px;box-shadow:0 8px 18px #18181b1a}.book-cover:after{content:"";background:#18181b2e;height:1px;position:absolute;top:24px;left:16px;right:14px;box-shadow:0 16px #18181b1f,0 32px #18181b1a}.book-icon{z-index:1;color:var(--text-primary);filter:none;font-size:.78rem;font-weight:900;position:relative}.book-title{color:var(--text-primary);font-weight:800}.book-meta,.book-stats,.stat-label,.stats-footer{color:var(--text-muted)}.book-icon-small{flex-shrink:0;width:42px;height:42px}.selected-indicator{background:var(--accent-color);border-radius:6px}.empty-shelf{background:#fafafa;border:1px dashed #18181b38;border-radius:8px;margin:18px}.empty-icon{border:1px solid var(--border-color);width:72px;height:72px;color:var(--text-primary);opacity:1;background:#fff;border-radius:8px;justify-content:center;align-items:center;margin-bottom:18px;font-size:.9rem;font-weight:900;display:inline-flex}.empty-shelf h2{font-size:1.25rem;font-weight:800}.modal-overlay,.sidebar-overlay{background:#18181b6b;top:48px}.modal-content,.sidebar-container{border-color:var(--border-color);box-shadow:var(--shadow-xl);background:#fff;border-radius:8px}.reader-layout{background:linear-gradient(90deg, transparent 0, transparent calc(100% - 1px), #18181b09 calc(100% - 1px)), var(--bg-cream);background-size:32px 100%,auto;top:48px}.reader-header,.reader-footer{border-color:var(--border-color);color:var(--text-primary);box-shadow:var(--shadow-sm);background:#f6f2e8f0;padding:12px 18px}.reader-header{top:48px}.reader-header .book-title{color:var(--text-primary);font-family:inherit;font-size:1rem;font-weight:800}.back-btn{min-height:40px;padding:0 14px;font-family:inherit;font-size:.92rem}.reader-header .header-actions{gap:8px}.reader-header .header-actions button{width:40px;height:40px;font-size:.92rem}.reader-footer{justify-content:center}.reader-footer button{min-width:92px;min-height:40px;padding:0 18px;font-family:inherit;font-size:.92rem}.reader-scroll-area::-webkit-scrollbar-thumb{background:#18181b57}.reader-content{max-width:760px;padding:112px 40px}.chapter-title{color:var(--text-primary);font-weight:850}.chapter-progress-indicator{bottom:18px;right:18px}.progress-content,.next-chapter-content,.load-more-content{color:var(--text-primary);box-shadow:var(--shadow-sm);background:#ffffffe6;border:1px solid #18181b24;border-radius:8px}.chapter-progress-indicator:hover .progress-content,.next-chapter-indicator:hover .next-chapter-content,.load-more-indicator:hover .load-more-content{box-shadow:var(--shadow-md);background:#fff}.progress-percentage{background:#f4f4f5;border-radius:6px}.lock-indicator{background:#18181be0;border-radius:8px}.chapter-list,.settings-panel,.chapter-list-header,.settings-header{background:#fff}.chapter-list-header,.settings-header{border-bottom:1px solid var(--border-color);padding:18px 20px}.chapter-list-header h2,.settings-header h2,.settings-section h3{color:var(--text-primary);font-family:inherit;font-weight:850}.chapter-list-header h2,.settings-header h2{font-size:1.25rem}.close-btn,.reverse-btn{border:1px solid var(--border-color);min-height:40px;color:var(--text-primary);background:#fff;border-radius:6px;font-weight:800}.close-btn:hover,.reverse-btn:hover{background:#f4f4f5;transform:translateY(-1px)}.chapter-list-content,.settings-content{padding:18px}.chapter-search{padding:14px 18px 0}.chapter-search input{border:1px solid var(--border-color);width:100%;min-height:40px;color:var(--text-primary);font:inherit;background:#fafafa;border-radius:6px;padding:0 12px}.chapter-search input:focus{border-color:#18181b57;outline:none;box-shadow:0 0 0 3px #18181b14}.chapter-empty{border:1px dashed var(--border-color);color:var(--text-muted);text-align:center;background:#fafafa;border-radius:8px;padding:22px;font-weight:700}.chapter-item{padding:12px;padding-left:calc(12px + var(--chapter-depth,0) * 16px);border:1px solid var(--border-color);background:#fff;border-radius:8px;gap:12px;margin-bottom:8px;position:relative}.chapter-item:before{display:none}.chapter-item:hover{box-shadow:none;background:#fafafa;border-color:#18181b3d;transform:translate(2px)}.chapter-item.current{border-left:3px solid var(--accent-color);box-shadow:none;background:#fffdf7}.chapter-number{border-radius:6px;width:34px;height:34px}.chapter-item:hover .chapter-number,.chapter-item.current .chapter-number{background:var(--text-primary);border-color:var(--text-primary);color:#fff;transform:none}.chapter-item .chapter-title{font-family:inherit;font-size:.94rem;font-weight:750}.markdown-rendered{color:inherit;line-height:inherit;white-space:normal}.markdown-rendered>div{gap:.85em;display:grid}.markdown-rendered h1,.markdown-rendered h2,.markdown-rendered h3,.markdown-rendered h4,.markdown-rendered h5,.markdown-rendered h6{color:inherit;margin:.65em 0 .15em;font-weight:850;line-height:1.3}.markdown-rendered h1{font-size:1.9em}.markdown-rendered h2{border-bottom:1px solid #18181b1f;padding-bottom:.35em;font-size:1.45em}.markdown-rendered h3{font-size:1.18em}.markdown-rendered p{margin:0}.markdown-rendered ul,.markdown-rendered ol{gap:.45em;margin:.15em 0 .15em 1.35em;padding:0;display:grid}.markdown-rendered li{padding-left:.25em}.markdown-rendered li::marker{color:var(--accent-color)}.markdown-rendered blockquote{border-left:3px solid var(--accent-color);color:#18181bb8;margin:.35em 0;padding:.2em 0 .2em 1em}.markdown-rendered code{background:#18181b0d;border:1px solid #18181b1a;border-radius:4px;padding:.1em .28em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em}.markdown-rendered pre{background:#f4f4f5;border:1px solid #18181b1a;border-radius:8px;padding:1em;overflow-x:auto}.markdown-rendered pre code{background:0 0;border:0;padding:0}.markdown-rendered table{border-collapse:collapse;width:100%;font-size:.92em}.markdown-rendered th,.markdown-rendered td{border:1px solid #18181b1f;padding:.55em .7em}.markdown-rendered th{background:#18181b0a;font-weight:800}.markdown-rendered input[type=checkbox]{margin-right:.45em}.markdown-editor-shell{border:1px solid var(--border-color);min-height:calc(100vh - 220px);box-shadow:var(--shadow-sm);background:#fff;border-radius:8px;grid-template-rows:auto 1fr;display:grid;overflow:hidden}.markdown-editor-toolbar{border-bottom:1px solid var(--border-color);background:#fafafa;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.markdown-editor-toolbar>div{gap:8px;display:flex}.markdown-editor{resize:vertical;width:100%;min-height:520px;color:var(--text-primary);background:#fff;border:0;outline:none;padding:18px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.95rem;line-height:1.7}.inline-preview-editor{box-shadow:var(--shadow-sm);background:#fff;border:1px solid #18181b24;border-radius:8px;gap:0;display:grid;overflow:hidden}.inline-preview-toolbar{border-bottom:1px solid var(--border-color);background:#fafafa;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.inline-preview-toolbar strong{color:var(--text-primary);font-size:.9rem}.inline-preview-toolbar>div{gap:8px;display:flex}.inline-preview-textarea{resize:vertical;width:100%;min-height:280px;color:var(--text-primary);background:#fff;border:0;outline:none;padding:18px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.95rem;line-height:1.7}.outline-editor-shell{border:1px solid var(--border-color);min-height:calc(100vh - 220px);box-shadow:var(--shadow-sm);background:#fff;border-radius:8px;grid-template-rows:auto 1fr;display:grid;position:relative;overflow:hidden}.outline-editor-toolbar{border-bottom:1px solid var(--border-color);background:#fafafa;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.outline-editor-toolbar>div:first-child{align-items:baseline;gap:10px;display:flex}.outline-editor-toolbar strong{color:var(--text-primary)}.outline-editor-toolbar span{color:var(--text-muted);font-size:.78rem;font-weight:800}.outline-editor-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.outline-editor-list{background:#f7f7f8;align-content:start;gap:8px;max-height:calc(100vh - 275px);padding:12px;display:grid;overflow:auto}.outline-floating-panel{z-index:4;background:#fffffff5;border:1px solid #18181b24;border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;width:max-content;max-width:calc(100% - 24px);margin:10px auto -2px;padding:6px;display:flex;position:sticky;top:8px;box-shadow:0 10px 30px #18181b1f}.outline-floating-panel span{color:var(--text-muted);padding:0 6px;font-size:.76rem;font-weight:850}.outline-floating-panel button{border:1px solid var(--border-color);min-width:30px;height:30px;color:var(--text-primary);font:inherit;background:#fff;border-radius:6px;padding:0 8px;font-size:.78rem;font-weight:900}.outline-floating-panel button:hover{background:#f4f4f5;border-color:#18181b47}.floating-divider{background:var(--border-color);width:1px;height:22px}.color-swatch-group{align-items:center;gap:4px;display:flex}.color-swatch,.text-color-swatch{width:26px;min-width:26px;padding:0;position:relative}.color-swatch:before,.text-color-swatch:before{background:var(--swatch-color);content:"";border:1px solid #18181b29;border-radius:4px;position:absolute;inset:6px}.text-color-swatch:before{border-radius:50%}.outline-node{margin-left:calc(var(--outline-depth,0) * 22px);background:#fff;border:1px solid #18181b1a;border-radius:8px;gap:8px;padding:10px;display:grid}.outline-node-row{grid-template-columns:18px 14px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.outline-select-input{width:16px;height:16px;accent-color:var(--text-primary)}.outline-node-bullet{border:2px solid var(--text-primary);cursor:pointer;background:#fff;border-radius:50%;width:8px;height:8px}.outline-node.selected{box-shadow:inset 3px 0 0 var(--text-primary);border-color:#18181b47}.outline-title-input,.outline-body-input{width:100%;color:var(--text-primary);font:inherit;background:0 0;border:1px solid #0000;border-radius:6px;outline:none}.outline-title-input{min-height:36px;padding:6px 8px;font-size:1rem;font-weight:850}.outline-body-input{resize:vertical;min-height:74px;color:var(--text-secondary);background:#fafafa;padding:8px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88rem;line-height:1.6}.outline-title-input:focus,.outline-body-input:focus{background:#fff;border-color:#18181b47;box-shadow:0 0 0 3px #18181b12}.outline-node-controls{gap:4px;display:flex}.outline-node-controls button{border:1px solid var(--border-color);width:30px;height:30px;color:var(--text-primary);font:inherit;background:#fff;border-radius:6px;font-weight:850}.outline-node-controls button:hover:not(:disabled){background:#f4f4f5;border-color:#18181b3d}.outline-node-controls button:disabled{cursor:not-allowed;opacity:.38}.ghost-editor-action,.primary-editor-action{min-height:36px;font:inherit;border-radius:6px;padding:0 12px;font-weight:800}.ghost-editor-action{border:1px solid var(--border-color);color:var(--text-primary);background:#fff}.primary-editor-action{border:1px solid var(--primary-color);background:var(--primary-color);color:#fff}@media (width<=720px){.outline-editor-toolbar{flex-direction:column;align-items:stretch}.outline-editor-actions{justify-content:flex-start}.outline-node{margin-left:calc(var(--outline-depth,0) * 12px)}.outline-node-row{grid-template-columns:18px 14px minmax(0,1fr)}.outline-node-controls{grid-column:1/-1;padding-left:40px}.outline-floating-panel{justify-content:center;width:calc(100% - 24px)}}.current-indicator{color:var(--text-secondary);background:#f4f4f5;border-radius:6px;padding:4px 8px;font-size:.75rem}.settings-section{margin-bottom:28px}.settings-section h3{border-bottom:2px solid var(--accent-color);margin-bottom:14px;font-size:1rem}.setting-item{margin-bottom:18px}.segmented-control{grid-template-columns:1fr 1fr;gap:10px;display:grid}.segmented-control .theme-btn{min-height:44px;padding:0 12px}.setting-item label{color:var(--text-secondary);font-size:.92rem;font-weight:750}.setting-item label:before{background:var(--accent-color)}.setting-item select,.setting-item input[type=text],.color-input-wrapper .color-text-input,.color-picker-item input[type=text]{border:1px solid var(--border-color);color:var(--text-primary);background:#fafafa;border-radius:6px;font-family:inherit}.setting-item select:focus,.setting-item input[type=text]:focus,.color-input-wrapper .color-text-input:focus,.color-picker-item input[type=text]:focus{border-color:#18181b57;box-shadow:0 0 0 3px #18181b14}.setting-item input[type=range]{border:1px solid var(--border-color);background:#f4f4f5;border-radius:999px}.setting-item input[type=range]::-webkit-slider-thumb{background:var(--text-primary);box-shadow:none}.setting-item input[type=range]::-webkit-slider-thumb:hover{transform:none;box-shadow:0 0 0 5px #18181b1f}.value-display{color:var(--text-secondary);background:#fafafa;border-radius:6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.theme-btn,.apply-colors-btn{box-shadow:none;border-radius:6px;font-family:inherit;font-weight:750}.theme-btn:hover,.apply-colors-btn:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.theme-btn.active{border-color:var(--accent-color);box-shadow:0 0 0 3px #b1843529}.apply-colors-btn{background:var(--primary-color);color:#fff;letter-spacing:0}@media (width<=768px){.bookshelf-layout{flex-direction:column;padding:10px}.sidebar,.sidebar.expanded,.sidebar.collapsed{width:100%;height:auto;position:static}.sidebar.collapsed .sidebar-nav,.sidebar.collapsed .sidebar-actions,.sidebar.collapsed .sidebar-stats{display:none}.main-header{align-items:stretch}.header-controls{grid-template-columns:1fr 1fr;display:grid}.sort-select,.toggle-view-btn,.delete-btn{width:100%}.books-container.grid{grid-template-columns:repeat(auto-fill,minmax(142px,1fr))}.book-item.grid-view{min-height:218px}.book-cover{width:88px;height:124px}.reader-header,.reader-footer{padding:10px}.reader-header .book-title{max-width:34vw}.reader-header .header-actions{gap:6px}.reader-header .header-actions button{width:36px;height:36px}.reader-footer{gap:8px}.reader-footer button{flex:1;min-width:0;padding:0 8px}.reader-content{padding:96px 22px}}
