:root{--primary-color: #2c3e50;--secondary-color: #3498db;--accent-color: #e74c3c;--bg-color: #ffffff;--card-bg: #f8f9fa;--text-color: #2c3e50;--border-color: #dee2e6;--hover-color: #e9ecef;--shadow: 0 2px 10px rgba(0, 0, 0, .1)}[data-theme=dark]{--primary-color: #ecf0f1;--secondary-color: #3498db;--accent-color: #e74c3c;--bg-color: #1a1a1a;--card-bg: #2d2d2d;--text-color: #ecf0f1;--border-color: #404040;--hover-color: #3d3d3d;--shadow: 0 2px 10px rgba(0, 0, 0, .3)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:var(--bg-color);color:var(--text-color);line-height:1.6;transition:background-color .3s ease,color .3s ease}.app-header{background-color:var(--card-bg);padding:.3rem .5rem;box-shadow:var(--shadow);position:sticky;top:0;z-index:100}.header-main-controls{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;max-width:1200px;margin:0 auto}.selection-btn,#theme-toggle,.search-btn{padding:.35rem .6rem;border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-color);border-radius:6px;cursor:pointer;font-size:.8rem;transition:all .2s ease;white-space:nowrap;height:auto}.selection-btn:hover,#theme-toggle:hover,.search-btn:hover{background:var(--hover-color);border-color:var(--secondary-color)}select,textarea,input[type=text]{padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:6px;background-color:var(--bg-color);color:var(--text-color);font-size:1rem;min-width:150px}select:focus,textarea:focus,input[type=text]:focus{outline:none;border-color:var(--secondary-color);box-shadow:0 0 0 2px #3498db33}button{padding:.5rem 1rem;border:1px solid var(--border-color);background-color:var(--bg-color);color:var(--text-color);border-radius:6px;cursor:pointer;font-size:1rem;transition:all .2s ease}button:hover{background-color:var(--hover-color);border-color:var(--secondary-color)}.display-mode-container{display:flex;align-items:center;gap:.25rem;margin:0 .25rem;padding:.25rem .4rem;background:var(--card-bg);border-radius:8px;border:1px solid var(--border-color)}.mode-label{font-size:.8rem;color:var(--text-color);font-weight:500;white-space:nowrap}.display-mode-btn{padding:.25rem .5rem;border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-color);border-radius:6px;cursor:pointer;font-size:.8rem;transition:all .2s ease;white-space:nowrap}.display-mode-btn:hover{background:var(--hover-color);border-color:var(--secondary-color)}.display-mode-btn.active{background:var(--secondary-color);color:#fff;border-color:var(--secondary-color)}.auth-section{display:flex;align-items:center;gap:.5rem;margin-left:auto}.auth-buttons{display:flex;gap:.5rem}.auth-btn{padding:.35rem .6rem;border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-color);border-radius:6px;cursor:pointer;font-size:.8rem;transition:all .2s ease;white-space:nowrap}.auth-btn:hover{background:var(--hover-color);border-color:var(--secondary-color)}.user-menu{display:flex;align-items:center;gap:.5rem}.user-menu-toggle{position:relative;padding-right:1.5rem}.user-menu-toggle:after{content:"▼";position:absolute;right:.5rem;font-size:.7rem;transition:transform .2s}.user-menu-toggle.active:after{transform:rotate(180deg)}.user-email{font-size:.8rem;color:inherit}.icon-btn{padding:.4rem;min-width:auto;display:flex;align-items:center;justify-content:center}.icon-btn svg{display:block}.icon-btn:hover{background:var(--hover-color);border-color:var(--accent-color)}.icon-btn:hover svg{stroke:var(--accent-color)}.dropdown{position:relative;display:inline-block}.dropdown-content{display:none;position:absolute;right:0;background-color:var(--card-bg);min-width:220px;box-shadow:0 8px 16px #0003;z-index:1000;border-radius:8px;border:1px solid var(--border-color);padding:.5rem 0}.dropdown-content.show{display:block}.dropdown-item{padding:.75rem 1rem;text-decoration:none;display:block;color:var(--text-color);background:none;border:none;width:100%;text-align:left;cursor:pointer;font-size:.9rem;transition:background-color .2s}.dropdown-item:hover{background-color:var(--hover-color)}.dropdown-section{padding:.5rem 1rem}.dropdown-label{display:block;font-size:.8rem;color:var(--text-color);opacity:.8;margin-bottom:.5rem}.dropdown-divider{height:1px;background-color:var(--border-color);margin:.5rem 0}.font-size-controls{display:flex;align-items:center;justify-content:space-between;background:var(--bg-color);border:1px solid var(--border-color);border-radius:6px;padding:.25rem}.font-control-btn{background:none;border:none;color:var(--text-color);font-size:1.2rem;padding:0 .5rem;cursor:pointer}.font-control-btn:hover{color:var(--secondary-color)}#current-font-size{font-size:.9rem;font-weight:500}.contextual-menu{position:fixed;z-index:10000;background:rgba(30,41,59,.95);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 10px 25px -5px #0000004d,0 8px 10px -6px #0000004d;padding:.75rem;min-width:180px;animation:fadeIn .2s cubic-bezier(.16,1,.3,1);color:#fff}[data-theme=light] .contextual-menu{background:rgba(255,255,255,.95);border:1px solid rgba(0,0,0,.05);color:#1e293b}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.contextual-menu-content{display:flex;flex-direction:column;gap:.5rem}.color-actions{display:flex;justify-content:space-between;gap:.5rem;padding-bottom:.25rem}.color-btn{width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .2s;padding:0}.color-btn:hover{transform:scale(1.1)}.color-btn.blue{background-color:#3b82f6}.color-btn.red{background-color:#ef4444}.color-btn.green{background-color:#22c55e}.color-btn.clear{background-color:transparent;border:1px solid var(--text-color);color:var(--text-color);display:flex;align-items:center;justify-content:center;font-size:12px}.ctx-action-btn{background:none;border:none;color:var(--text-color);padding:.5rem;text-align:left;cursor:pointer;border-radius:4px;font-size:.9rem;display:flex;align-items:center;gap:.5rem}.ctx-action-btn:hover{background-color:var(--hover-color)}.navigation-controls{display:flex;align-items:center;gap:.5rem}.nav-btn{padding:.35rem .6rem;border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-color);border-radius:6px;cursor:pointer;font-size:.8rem;transition:all .2s ease;white-space:nowrap}.nav-btn:hover:not(:disabled){background:var(--hover-color);border-color:var(--secondary-color)}.nav-btn:disabled{opacity:.5;cursor:not-allowed}.column-nav-btn{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);color:#fff;padding:.2rem .4rem;font-size:.9rem;font-weight:700;min-width:28px;border-radius:4px}.column-nav-btn:hover:not(:disabled){background:rgba(255,255,255,.3);border-color:#ffffff80;transform:scale(1.05)}.column-nav-btn:disabled{opacity:.3;cursor:not-allowed}.bible-container:not(.single-column) #malagasy-column .next-btn-mg{display:none}.bible-container:not(.single-column) #french-column .prev-btn-fr{display:none}.current-selection{min-width:140px;text-align:center;display:flex;align-items:center;justify-content:center}#current-book-display{font-weight:500;color:var(--text-color);min-width:100px;display:inline-block;font-size:.85rem}.bible-container{display:flex;max-width:1400px;margin:0 auto;padding:.75rem;gap:.75rem;height:calc(100vh - 80px);transition:all .3s ease}.bible-container.single-column{flex-direction:column}.bible-container.single-column .bible-column{width:100%!important;display:none}.bible-container.single-column .bible-column.active{display:flex!important}.bible-column{display:flex;flex-direction:column;background-color:var(--card-bg);border-radius:8px;box-shadow:var(--shadow);overflow:hidden;transition:all .3s ease;flex:1}.bible-column.hidden{display:none!important}.bible-column.full-width{flex:1;width:100%}.column-header{display:flex;justify-content:space-between;align-items:center;padding:.4rem .8rem;background-color:#2c3e50;color:#fff;border-bottom:1px solid var(--border-color);position:relative}.column-header h3{font-size:.9rem;font-weight:500;flex:1;text-align:center;margin:0}.clickable-title{cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.clickable-title:hover{opacity:.9;transform:scale(1.02)}.clickable-title:active{transform:scale(.98)}.bible-column.full-width .column-header{justify-content:space-between}.bible-column.full-width .column-header h3{flex:1;text-align:center}.verses-container{flex:1;overflow-y:auto;padding:1rem;height:100%}.verse{margin-bottom:1rem;padding:.75rem;background-color:var(--bg-color);border-radius:6px;border-left:3px solid transparent;transition:all .2s ease}.verse:hover{background-color:var(--hover-color);border-left-color:var(--secondary-color)}.verse-number{font-weight:700;color:var(--secondary-color);margin-right:.5rem;font-size:.9rem}.verse-text{line-height:1.6}.verse.highlighted-blue{background-color:#dbeafe!important;border-left-color:#2563eb!important}.verse.highlighted-red{background-color:#fee2e2!important;border-left-color:#dc2626!important}.verse.highlighted-green{background-color:#dcfce7!important;border-left-color:#16a34a!important}[data-theme=dark] .verse.highlighted-blue{background-color:#1e3a5f!important;border-left-color:#3b82f6!important}[data-theme=dark] .verse.highlighted-red{background-color:#5c1a1a!important;border-left-color:#ef4444!important}[data-theme=dark] .verse.highlighted-green{background-color:#14532d!important;border-left-color:#22c55e!important}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#00000080}.modal-content{background-color:var(--bg-color);margin:10% auto;padding:2rem;border-radius:8px;width:90%;max-width:500px;box-shadow:var(--shadow)}.selection-modal-content{max-width:95vw;max-height:95vh;width:95vw;height:95vh;margin:2.5vh auto;display:flex;flex-direction:column}.close{color:#aaa;float:right;font-size:1.5rem;font-weight:700;cursor:pointer}.close:hover{color:var(--text-color)}.btn-primary{background:var(--secondary-color);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;cursor:pointer;font-size:1rem}.btn-primary:hover{background:var(--primary-color)}.btn-secondary{background:var(--card-bg);color:var(--text-color);border:1px solid var(--border-color);padding:.75rem 1.5rem;border-radius:6px;cursor:pointer;font-size:1rem}.btn-secondary:hover{background:var(--hover-color)}.btn-small{padding:.4rem .8rem;font-size:.85rem;border:none;border-radius:4px;cursor:pointer}.btn-danger{background:#dc2626;color:#fff}.btn-danger:hover{background:#b91c1c}.annotations-modal-content{max-width:95vw;width:95vw;max-height:90vh;height:90vh;display:flex;flex-direction:column}.annotations-tabs{display:flex;border-bottom:1px solid var(--border-color);background:var(--card-bg);flex-shrink:0}.annotation-tab{padding:12px 24px;border:none;background:none;cursor:pointer;border-bottom:3px solid transparent;font-weight:500;transition:all .3s ease}.annotation-tab.active{border-bottom-color:var(--secondary-color);background:var(--bg-color);color:var(--secondary-color)}.annotation-tab:hover{background:var(--hover-color)}.annotations-content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.annotation-tab-content{flex:1;display:none;flex-direction:column;overflow:hidden;min-height:0}.annotation-tab-content.active{display:flex}.annotations-list{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.color-tabs{display:flex;gap:10px;padding:15px;background:var(--card-bg);border-bottom:1px solid var(--border-color);flex-shrink:0}.color-tab{flex:1;display:flex;align-items:center;gap:10px;padding:15px;border:none;border-radius:8px;background:var(--bg-color);cursor:pointer;transition:all .3s ease;border:2px solid transparent;min-height:60px}.color-tab:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.color-tab.active{border-color:currentColor}.color-tab.blue{color:#3b82f6}.color-tab.red{color:#ef4444}.color-tab.green{color:#22c55e}.color-tab-indicator{width:20px;height:20px;border-radius:50%;border:2px solid var(--bg-color);box-shadow:0 0 0 2px currentColor}.color-tab-text{display:flex;flex-direction:column;align-items:flex-start;flex:1}.color-name{font-weight:600;font-size:.9em}.color-meaning{font-size:.8em;opacity:.8;margin-top:2px}.color-count{background:currentColor;color:#fff;padding:2px 6px;border-radius:10px;font-size:.75em;font-weight:600;margin-top:4px}.color-contents{flex:1;overflow:hidden;display:flex;flex-direction:column}.color-content{display:none;flex:1;flex-direction:column;overflow:hidden}.color-content.active{display:flex}.color-content-header{padding:15px 20px;background:var(--bg-color);border-bottom:1px solid var(--border-color);flex-shrink:0}.color-content-header h4{margin:0;display:flex;align-items:center;gap:10px;color:var(--text-color)}.color-total{font-size:.8em;color:var(--text-color);opacity:.7;font-weight:400}.highlights-grid{flex:1;overflow-y:auto;padding:20px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));align-content:flex-start}#comments-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:15px;padding:20px;overflow-y:auto;align-content:flex-start}.annotation-item{border:1px solid var(--border-color);border-radius:8px;padding:15px;background:var(--bg-color);transition:all .3s ease}.annotation-item:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.annotation-content{display:flex;flex-direction:column;gap:10px}.annotation-header{display:flex;justify-content:space-between;align-items:center}.verse-reference{font-weight:600;color:var(--secondary-color);font-size:1em}.highlight-color-badge{padding:4px 8px;border-radius:12px;font-size:.75em;font-weight:600;color:#fff}.highlight-color-badge.blue{background-color:#3b82f6}.highlight-color-badge.red{background-color:#ef4444}.highlight-color-badge.green{background-color:#22c55e}.comment-date{font-size:.8em;color:var(--text-color);opacity:.7;background:var(--card-bg);padding:2px 6px;border-radius:4px}.comment-preview{line-height:1.4;color:var(--text-color)}.annotation-actions{display:flex;gap:8px;flex-wrap:wrap}.no-annotations{text-align:center;padding:40px;color:var(--text-color);opacity:.7;font-style:italic;grid-column:1 / -1}.book-selection-section,.chapter-selection-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:1rem;margin-bottom:1rem}.selection-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.testament-filters{display:flex;gap:.5rem}.testament-filter{padding:.5rem 1rem;border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-color);border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.testament-filter.active{background:var(--secondary-color);color:#fff;border-color:var(--secondary-color)}.books-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem;padding:.5rem;overflow-y:auto;max-height:calc(95vh - 200px);align-content:start}.chapters-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:.5rem;padding:.5rem;overflow-y:auto;max-height:calc(95vh - 200px);align-content:start}.book-btn,.chapter-btn{padding:.75rem .5rem;border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-color);border-radius:6px;cursor:pointer;text-align:center;transition:all .2s ease;font-size:.9rem;font-weight:500;display:flex;align-items:center;justify-content:center;flex-shrink:0}.book-btn{min-height:60px}.book-btn:hover,.chapter-btn:hover{background:var(--hover-color);border-color:var(--secondary-color);transform:translateY(-1px)}.book-btn.active,.chapter-btn.active{background:var(--secondary-color);color:#fff;border-color:var(--secondary-color)}.book-name-bilingual{display:flex;flex-direction:column;gap:.25rem}.book-name-malagasy{font-size:.75rem;font-weight:600;color:var(--text-color)}.book-name-french{font-size:.7rem;color:var(--text-color);opacity:.8;border-top:1px solid var(--border-color);padding-top:.25rem}.book-name-single{font-size:.8rem;font-weight:500}.book-btn.old-testament{border-left:4px solid #8B4513}.book-btn.new-testament{border-left:4px solid #DC2626}.color-settings-form{display:flex;flex-direction:column;gap:20px}.color-setting-item{display:flex;align-items:center;gap:15px;padding:15px;background:var(--card-bg);border-radius:8px}.color-preview{width:40px;height:40px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-weight:700}.color-input{flex:1}.color-input label{display:block;font-weight:600;margin-bottom:5px;color:var(--text-color)}.color-input input{width:100%;padding:8px 12px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;background:var(--bg-color);color:var(--text-color)}.highlights-grid::-webkit-scrollbar,#comments-list::-webkit-scrollbar,.books-grid::-webkit-scrollbar,.chapters-grid::-webkit-scrollbar{width:8px}.highlights-grid::-webkit-scrollbar-track,#comments-list::-webkit-scrollbar-track,.books-grid::-webkit-scrollbar-track,.chapters-grid::-webkit-scrollbar-track{background:var(--card-bg);border-radius:4px}.highlights-grid::-webkit-scrollbar-thumb,#comments-list::-webkit-scrollbar-thumb,.books-grid::-webkit-scrollbar-thumb,.chapters-grid::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.highlights-grid::-webkit-scrollbar-thumb:hover,#comments-list::-webkit-scrollbar-thumb:hover,.books-grid::-webkit-scrollbar-thumb:hover,.chapters-grid::-webkit-scrollbar-thumb:hover{background:var(--text-color);opacity:.5}@media (max-width: 768px){.header-main-controls{flex-direction:column;align-items:stretch}.display-mode-container{justify-content:center;order:3;margin-top:.5rem}.auth-section{margin-left:0;justify-content:center;order:4}.bible-container{flex-direction:column;height:auto;padding:.5rem}.toolbar-fixed{flex-direction:column;gap:.5rem;top:140px}.color-tabs{flex-direction:column}.highlights-grid,#comments-list{grid-template-columns:1fr;padding:10px}.books-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.chapters-grid{grid-template-columns:repeat(auto-fill,minmax(70px,1fr))}.annotations-modal-content{max-width:98vw;width:98vw;max-height:95vh;height:95vh}}@media (max-width: 480px){.header-main-controls{gap:.5rem}.navigation-controls{flex-direction:column;gap:.25rem}.nav-btn{width:100%}.books-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.chapters-grid{grid-template-columns:repeat(auto-fill,minmax(65px,1fr))}.book-name-bilingual .book-name-malagasy,.book-name-bilingual .book-name-french{font-size:.75rem}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-spinner{border:3px solid var(--card-bg);border-top:3px solid var(--secondary-color);border-radius:50%;width:30px;height:30px;animation:spin 1s linear infinite;margin:0 auto 10px}.user-actions-list{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.action-btn{display:flex;align-items:center;padding:1rem;background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:left;width:100%}.action-btn:hover{background-color:var(--hover-color);border-color:var(--secondary-color);transform:translateY(-2px);box-shadow:var(--shadow)}.action-icon{font-size:1.5rem;margin-right:1rem}.action-text{font-weight:600;font-size:1rem;color:var(--text-color);flex:1}.action-desc{font-size:.8rem;color:var(--text-color);opacity:.7;display:none}@media (min-width: 480px){.action-desc{display:block}}.user-profile-btn{display:flex;align-items:center;gap:.5rem;font-weight:500}.user-profile-btn:hover{background-color:var(--hover-color)}@media (max-width: 1024px){.bible-container{padding:.75rem;gap:.75rem;height:calc(100vh - 180px)}}@media (max-width: 768px){.app-header{padding:.5rem}.header-row{flex-direction:column;gap:.5rem;align-items:stretch;min-height:auto}.user-row{flex-direction:row;align-items:center}.user-controls{width:100%;justify-content:space-between}.theme-toggle{margin-left:0}.tools-row{order:3}.display-row{order:2}.selection-row{order:4}.tools-container{flex-direction:column;gap:.5rem;width:100%}.tools-group{justify-content:center;flex-wrap:wrap}.display-mode-container{flex-direction:column;gap:.5rem;width:100%}.display-mode-group{justify-content:center}.book-selection{flex-direction:column;gap:.5rem;width:100%}select{min-width:auto;width:100%}.bible-container{flex-direction:column;height:auto;min-height:calc(100vh - 250px)}.bible-column{min-height:400px}.verses-container{max-height:500px}.auth-buttons{flex-direction:column;gap:.25rem}.auth-btn{justify-content:center;font-size:.8rem;padding:.4rem .8rem}.user-menu{flex-direction:column;gap:.5rem;align-items:flex-start}.navigation-controls{flex-direction:row;justify-content:center}.nav-btn{flex:1;max-width:120px}}@media (max-width: 480px){.app-header{padding:.25rem}.header-row{padding:.5rem 0}select,button{font-size:.85rem;padding:.4rem .6rem}.icon-btn,.tool-btn,.display-mode-btn{width:2.25rem;height:2.25rem;font-size:.9rem}.column-header{padding:.75rem}.column-header h3{font-size:1.1rem}.verses-container{padding:.75rem}.verse{padding:.6rem;margin-bottom:.75rem}.chapter-title{font-size:1.1rem;margin-bottom:1rem}.user-email{font-size:.8rem}.navigation-controls{flex-direction:column;gap:.25rem}.nav-btn{width:100%;max-width:none}#current-book-display{font-size:.9rem;padding:.25rem 0}}@media (max-height: 500px) and (orientation: landscape){.app-header{padding:.25rem;position:static}.header-row{flex-direction:row;min-height:2rem}.bible-container{height:auto;min-height:calc(100vh - 150px)}.verses-container{max-height:300px}.navigation-controls{flex-direction:row}.nav-btn{flex:0 1 auto}}@media (min-width: 1600px){.bible-container{max-width:1600px}.verses-container{font-size:1.1rem}.verse-text{line-height:1.8}.nav-btn{padding:.75rem 1rem;font-size:1rem}}@media (max-width: 360px){.tools-group{gap:.25rem}.display-mode-group{gap:.1rem}.icon-btn,.tool-btn,.display-mode-btn{width:2rem;height:2rem;font-size:.8rem}.auth-btn{font-size:.75rem;padding:.3rem .6rem}.nav-btn{font-size:.75rem;padding:.4rem .5rem}#current-book-display{font-size:.8rem}.books-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.chapters-grid{grid-template-columns:repeat(auto-fill,minmax(60px,1fr))}}
