:root{--primary-color: #BC5A45;--primary-color-hover: #A54E3C;--secondary-color: #4E342E;--accent-color: #5E6651;--background-color: #FBF9F6;--text-color: #423531;--card-bg: #FFFFFF;--drawer-bg: #FFFFFF;--border-color: #EAE6E1;--shadow-color: rgba(90, 90, 90, .12);--hover-bg: #F5F2EF;--book-item-bg: #FDFBFA;--book-item-border: #EAE6E1;--delete-color: #c62828;--delete-color-hover: #b71c1c;--disabled-bg-color: #cccccc;--font-serif: "Merriweather", serif;--font-sans: "Lato", sans-serif;--persona-bg: #F5F2EF;--persona-text: #5D4037;--persona-header: #4E342E;--persona-border: #D7CCC8;--chat-bg: #EAE6E1;--matthew-color: #c62828;--matthew-bg: #ffebee;--mark-color: #1565c0;--mark-bg: #e3f2fd;--luke-color: #2e7d32;--luke-bg: #e8f5e9;--john-color: #6a1b9a;--john-bg: #f3e5f5;--button-bg-color: var(--primary-color);--button-hover-bg-color: var(--primary-color-hover);--delete-button-bg-color: var(--delete-color);--delete-button-hover-bg-color: var(--delete-color-hover)}body.dark{--primary-color: #f2795f;--primary-color-hover: #e86a4f;--secondary-color: #fff3f0;--accent-color: #d1c7c4;--background-color: #151210;--text-color: #fff3f0;--card-bg: #211d1b;--drawer-bg: #211d1b;--border-color: #443c39;--shadow-color: rgba(0,0,0,.4);--hover-bg: #3a3330;--book-item-bg: #251f1d;--book-item-border: #443c39;--delete-color: #EF4444;--delete-color-hover: #F87171;--disabled-bg-color: #555555;--persona-bg: #251f1d;--persona-text: #fff3f0;--persona-header: var(--primary-color);--persona-border: #443c39;--chat-bg: var(--background-color);--matthew-color: #f29e8c;--matthew-bg: #4a3c39;--mark-color: #f2795f;--mark-bg: #4a3c39;--luke-color: #f2b2a2;--luke-bg: #4a4539;--john-color: #f28c75;--john-bg: #4a3c39;--button-bg-color: #D15B43;--button-hover-bg-color: #B94F3A;--delete-button-bg-color: #c53030;--delete-button-hover-bg-color: #9b2c2c}.initial-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background-color:#fbf9f6;color:#423531;font-family:Lato,sans-serif;transition:opacity .5s ease-out}.initial-loading-spinner{width:50px;height:50px;border:5px solid #EAE6E1;border-top-color:#bc5a45;border-radius:50%;animation:initial-spin 1s linear infinite;margin-bottom:1rem}@keyframes initial-spin{to{transform:rotate(360deg)}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-sans);background-color:var(--background-color);color:var(--text-color);line-height:1.65;overscroll-behavior-y:contain;transition:background-color .3s,color .3s}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:700}button{cursor:pointer;border:none;background:none;font-family:inherit;color:inherit}*:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px;border-radius:4px}#root{display:flex;flex-direction:column;min-height:100vh}.app-header{background-color:var(--card-bg);padding:.75rem 1.25rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px var(--shadow-color);position:sticky;top:0;z-index:1000}.main-content{flex-grow:1;padding:.75rem;overflow-y:auto;padding-bottom:70px;overflow-x:hidden}.app-footer{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;text-align:center;padding:1.5rem 1rem 1rem;font-size:.85rem;color:var(--accent-color);background-color:var(--background-color);border-top:1px solid var(--border-color);transition:background-color .3s,color .3s,border-color .3s}.card{background-color:var(--card-bg);border-radius:12px;padding:1.25rem;box-shadow:0 2px 8px var(--shadow-color);margin-bottom:1.5rem}.card h2{margin-bottom:1rem;color:var(--primary-color);font-size:1.5rem}.card p{margin-bottom:1rem;color:var(--text-color);opacity:.9;font-size:1.1rem}.view-container-fade-in{animation:fadeIn .4s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.header-title-btn{background:none;border:none;padding:0;margin:0;cursor:pointer;color:inherit;font:inherit;text-align:left}.header-title{font-size:1.5rem;font-family:var(--font-serif);color:var(--secondary-color);display:flex;align-items:center;gap:.5rem}.logo-icon{color:var(--primary-color);font-size:3rem}.header-nav{display:none}.header-actions{display:flex;align-items:center;gap:.5rem}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;width:100%;background-color:var(--card-bg);box-shadow:0 -1px 3px var(--shadow-color);z-index:1000}.nav-button{flex-grow:1;padding:.4rem 0;color:var(--accent-color);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:.7rem;transition:color .2s}.nav-button .material-icons{font-size:1.4rem}.nav-button.active{color:var(--primary-color)}.nav-button.active .nav-label{font-weight:700}.drawer-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:1001;transition:opacity .3s ease}.side-drawer{position:fixed;top:0;left:0;width:280px;height:100%;background-color:var(--drawer-bg);z-index:1002;box-shadow:2px 0 8px var(--shadow-color);transform:translate(-100%);transition:transform .3s ease;display:flex;flex-direction:column}.side-drawer.open{transform:translate(0)}.drawer-header{padding:1.25rem 1.5rem;background-color:var(--primary-color);color:#fff;font-family:var(--font-serif);font-size:1.1rem}body.dark .drawer-header{color:var(--text-color)}.drawer-nav{list-style:none;padding:.75rem 0}.drawer-nav li button{display:flex;align-items:center;padding:.9rem 1.5rem;text-decoration:none;color:var(--text-color);font-size:.95rem;transition:background-color .2s;width:100%;text-align:left}.drawer-nav li button:hover{background-color:var(--hover-bg)}.drawer-nav .material-icons{margin-right:1.25rem;color:var(--secondary-color)}.drawer-footer{margin-top:auto;padding:1rem 1.5rem;font-size:.8rem;color:var(--accent-color);border-top:1px solid var(--border-color);text-align:center;line-height:1.5}.drawer-footer a{color:var(--primary-color);text-decoration:none;font-weight:700}.drawer-footer a:hover{text-decoration:underline}.back-button,.action-button,.delete-button{display:inline-flex;align-items:center;gap:6px;margin-bottom:1rem;color:var(--primary-color);font-weight:700;font-size:.9rem}.back-button .material-icons{font-size:1.1rem}.action-button,.delete-button{background-color:var(--button-bg-color);color:#fff;padding:.8rem 1.5rem;border-radius:50px;font-size:1rem;font-weight:700;transition:background-color .2s,box-shadow .2s,transform .2s;margin-bottom:0;box-shadow:0 2px 6px var(--shadow-color)}.action-button:hover{background-color:var(--button-hover-bg-color);box-shadow:0 4px 10px var(--shadow-color);transform:translateY(-2px)}.delete-button{background-color:var(--delete-button-bg-color)}.delete-button:hover{background-color:var(--delete-button-hover-bg-color);box-shadow:0 4px 10px var(--shadow-color);transform:translateY(-2px)}body.dark .action-button,body.dark .delete-button,body.dark .home-btn,body.dark .chat-input-form button,body.dark .fab,body.dark .create-plan-btn,body.dark .add-plan-btn,body.dark .quick-note-save-btn{color:var(--text-color)}.theme-toggle-btn,.menu-toggle-btn,.ko-fi-button-header{background:transparent;border:none;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;cursor:pointer;transition:background-color .2s ease}.theme-toggle-btn:hover,.menu-toggle-btn:hover,.ko-fi-button-header:hover{background-color:var(--hover-bg)}.theme-toggle-btn .material-icons,.ko-fi-button-header .material-icons{font-size:1.5rem;color:var(--secondary-color)}.menu-toggle-btn .material-icons{font-size:1.75rem;color:var(--secondary-color)}.ko-fi-button-header{display:none}.language-toggle-wrapper{position:relative}.language-toggle-btn{background:transparent;border:1px solid var(--border-color);padding:.4rem .7rem;min-width:40px;display:flex;align-items:center;justify-content:center;border-radius:50px;cursor:pointer;transition:background-color .2s ease;font-weight:700;font-size:.75rem;color:var(--secondary-color)}.language-toggle-btn:hover{background-color:var(--hover-bg)}.language-dropdown{position:absolute;top:calc(100% + 8px);right:0;background-color:var(--card-bg);border-radius:8px;box-shadow:0 4px 12px var(--shadow-color);border:1px solid var(--border-color);z-index:1100;overflow:hidden;display:flex;flex-direction:column;min-width:160px}.language-option{padding:.75rem 1.5rem;text-align:left;font-size:.9rem;width:100%;transition:background-color .2s}.language-option:hover{background-color:var(--hover-bg)}.language-option.active{font-weight:700;color:var(--primary-color)}.fab{position:fixed;bottom:70px;right:20px;width:52px;height:52px;border-radius:50%;background-color:var(--button-bg-color);color:#fff;box-shadow:0 4px 8px var(--shadow-color);display:flex;align-items:center;justify-content:center;z-index:999;transition:background-color .2s,transform .2s}.fab:hover{background-color:var(--button-hover-bg-color);transform:scale(1.05)}.fab .material-icons{font-size:22px}.landing-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:2rem 1.5rem;background-color:var(--background-color);text-align:center;position:relative}.landing-content{display:flex;flex-direction:column;align-items:center;max-width:600px;width:100%}.landing-hero-icon-wrapper{margin-bottom:1.5rem}.landing-logo-icon{font-size:5rem;color:var(--primary-color);display:block}.breathing-icon{animation:breathing 4s ease-in-out infinite}@keyframes breathing{0%{transform:scale(1);opacity:.9}50%{transform:scale(1.1);opacity:1;text-shadow:0 0 10px rgba(188,90,69,.3)}to{transform:scale(1);opacity:.9}}.landing-title{font-size:2.5rem;color:var(--secondary-color);margin-bottom:1rem;line-height:1.2;font-weight:700}.landing-subtitle{font-size:1.2rem;color:var(--text-color);opacity:.85;margin-bottom:3rem;font-family:var(--font-sans);font-weight:300}.landing-notify-form{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:400px}.notify-input{padding:1rem 1.5rem;border-radius:50px;border:1px solid var(--border-color);background-color:var(--card-bg);font-size:1rem;color:var(--text-color);box-shadow:0 2px 8px var(--shadow-color);transition:border-color .2s}.notify-input:focus{outline:none;border-color:var(--primary-color)}.notify-button{padding:1rem;border-radius:50px;background-color:var(--primary-color);color:#fff;font-weight:700;font-size:1.1rem;box-shadow:0 4px 12px #bc5a454d;transition:transform .2s,background-color .2s}.notify-button:hover{background-color:var(--primary-color-hover);transform:translateY(-2px)}.landing-footer-actions{position:absolute;bottom:2rem;right:2rem}.alpha-access-btn{background:transparent;border:none;color:var(--accent-color);font-size:.85rem;opacity:.7;transition:opacity .2s,color .2s;cursor:pointer}.alpha-access-btn:hover{opacity:1;color:var(--primary-color);text-decoration:underline}@media(min-width:768px){.landing-title{font-size:3.5rem}.landing-notify-form{flex-direction:row}.notify-button{width:auto;padding:0 2rem}.landing-logo-icon{font-size:6rem}}.home-container{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1.5rem}.home-intro{text-align:center;display:flex;flex-direction:column;align-items:center;gap:.75rem}.home-icon{font-size:4rem;color:var(--primary-color);margin-bottom:0}.home-container h2{font-family:var(--font-serif);color:var(--secondary-color);font-size:1.75rem;margin-bottom:0}.home-tagline{font-size:1.2rem;line-height:1.7;max-width:400px;margin-bottom:1rem}.home-actions{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:280px}.home-btn{padding:.9rem;background-color:var(--button-bg-color);color:#fff;border-radius:50px;font-size:1rem;font-weight:700;transition:background-color .2s,transform .2s;box-shadow:0 2px 6px var(--shadow-color);display:flex;align-items:center;justify-content:center;gap:.5rem}.home-btn:hover{background-color:var(--button-hover-bg-color);transform:translateY(-2px)}.verse-of-the-day-card{width:100%;max-width:600px;margin:1.5rem auto 1rem;padding:1.5rem;border-radius:12px;background-color:var(--persona-bg);border:1px solid var(--persona-border);box-shadow:0 2px 6px var(--shadow-color);display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem}.verse-of-the-day-card>*{margin:0}.verse-of-the-day-card h4{font-family:var(--font-serif);color:var(--persona-header);font-size:1.2rem}.verse-of-the-day-card .verse-text{font-family:var(--font-serif);font-size:1.2rem;font-style:italic;color:var(--persona-text);line-height:1.7;margin-top:.25rem}.verse-of-the-day-card .verse-ref{font-weight:700;color:var(--persona-header);font-size:1.1rem}.verse-of-the-day-card .verse-reflection{font-size:1rem;color:var(--persona-text);opacity:.9;line-height:1.6;margin-top:.5rem;max-width:90%}.continue-reading-card{width:100%;max-width:600px;margin:1rem auto 0;padding:1.25rem;border-radius:12px;background-color:var(--persona-bg);border:1px solid var(--primary-color);box-shadow:0 2px 8px #bc5a4533;text-align:center}.continue-reading-card h4{font-family:var(--font-serif);color:var(--persona-header);margin-bottom:.5rem;font-size:1.2rem}.continue-reading-card p{font-size:1.1rem;color:var(--persona-text);margin:0 0 1rem}.book-section-title{font-family:var(--font-serif);font-size:1.2rem;color:var(--secondary-color);margin-top:1.75rem;margin-bottom:1.25rem;padding-bottom:.5rem;border-bottom:1px solid var(--primary-color);font-weight:600}.book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem}.book-card{background-color:var(--book-item-bg);border:1px solid var(--book-item-border);border-radius:8px;display:flex;align-items:stretch;transition:all .2s ease-in-out}.book-card:hover{border-color:var(--accent-color);box-shadow:0 2px 6px var(--shadow-color)}.book-card-content-btn{flex-grow:1;padding:.75rem 1rem;text-align:left;display:flex;flex-direction:column;justify-content:center;gap:2px}.book-card-name{font-size:1rem;font-weight:600;transition:color .2s}.book-card-content-btn:hover .book-card-name{color:var(--primary-color)}.book-card-chapters{font-size:.8rem;color:var(--accent-color);font-weight:400}.book-card-add-btn{flex-shrink:0;width:44px;display:flex;align-items:center;justify-content:center;border-left:1px solid var(--book-item-border);color:var(--accent-color);transition:all .2s}.book-card-add-btn:hover{background-color:var(--button-bg-color);color:#fff;border-color:var(--button-hover-bg-color)}body.dark .book-card-add-btn:hover{color:var(--text-color)}.book-card-add-btn .material-icons{font-size:1.2rem}.deuterocanonical-section .book-section-title{color:var(--secondary-color);border-bottom:1px solid var(--secondary-color)}.deuterocanonical-section .book-card{background-color:#efebe9;border-color:var(--accent-color)}.deuterocanonical-section .book-card-name{color:var(--secondary-color);font-weight:700}.deuterocanonical-section .book-card-content-btn:hover .book-card-name{color:var(--primary-color)}.deuterocanonical-section .book-card-add-btn{border-left-color:var(--accent-color)}body.dark .deuterocanonical-section .book-card{background-color:#4a4539;border-color:var(--accent-color)}body.dark .deuterocanonical-section .book-card-name{color:var(--text-color)}body.dark .deuterocanonical-section .book-card-content-btn:hover .book-card-name{color:var(--primary-color)}body.dark .deuterocanonical-section .book-card-add-btn{border-left-color:var(--accent-color)}.chapter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:.8rem;margin-top:1.5rem;justify-content:center;width:100%}.chapter-item{aspect-ratio:1 / 1;border:1px solid var(--border-color);border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;transition:all .2s;background-color:var(--card-bg);box-shadow:0 2px 4px var(--shadow-color);color:var(--text-color)}.chapter-item:hover{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-color)}.chapter-item.highlighted{animation:highlight-chapter 1.5s ease-out}@keyframes highlight-chapter{0%{background-color:var(--primary-color);color:#fff;transform:scale(1.1)}to{background-color:transparent;color:var(--text-color);transform:scale(1)}}.chapter-jump-form{display:flex;gap:.5rem;margin-bottom:1rem}.chapter-jump-form input{flex-grow:1;padding:.6rem;border-radius:6px;border:1px solid var(--border-color);background-color:var(--background-color);color:var(--text-color)}.chapter-jump-form button{padding:.6rem 1.2rem;background-color:var(--button-bg-color);color:#fff;border-radius:6px;font-weight:700}body.dark .chapter-jump-form button{color:var(--background-color)}.reading-view-header{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;position:sticky;top:0;background-color:var(--background-color);padding:.75rem .5rem;z-index:998;border-bottom:1px solid var(--border-color);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#fbf9f6f2}body.dark .reading-view-header{background-color:#151210f2}.reading-header-top{display:flex;align-items:center;justify-content:space-between;width:100%;gap:.5rem}.back-button-reading{display:flex;align-items:center;justify-content:center;padding:.5rem;border-radius:50%;flex-shrink:0}.back-button-reading:hover{background-color:var(--hover-bg)}.reading-view-title{text-align:center;display:flex;flex-direction:column;align-items:center;gap:0;flex-grow:1;overflow:hidden}.chapter-subtitle{font-size:.9rem;color:var(--secondary-color);white-space:nowrap}.book-selector-dropdown{font-family:var(--font-serif);font-size:1.2rem;font-weight:700;border:none;background:none;color:var(--primary-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:1rem;text-align:center;text-overflow:ellipsis;max-width:100%}body.dark .book-selector-dropdown{color:var(--primary-color)}.reading-controls{display:flex;align-items:center;gap:.25rem}.font-controls{display:flex;gap:.25rem;margin-right:.25rem;background-color:var(--hover-bg);padding:2px;border-radius:20px}.font-control-btn{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-weight:700;color:var(--text-color)}.font-control-btn:hover{background-color:var(--border-color)}.audio-player-btn{background-color:transparent;border:none;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--primary-color);cursor:pointer;transition:all .2s;flex-shrink:0}.audio-player-btn:not(:disabled):hover{background-color:var(--hover-bg)}.audio-player-btn:disabled{color:var(--accent-color);opacity:.6;cursor:not-allowed}.audio-player-btn .material-icons{font-size:26px}.audio-player-btn.loading .material-icons{animation:spin 1.5s linear infinite}.chapter-nav{display:flex;justify-content:space-between;width:100%;padding-top:.5rem}.chapter-nav-btn{display:flex;align-items:center;gap:4px;padding:.4rem .8rem;border-radius:50px;background-color:var(--hover-bg);color:var(--primary-color);font-weight:700;font-size:.85rem}.chapter-nav-btn:disabled{opacity:.5;cursor:default;background:transparent}.reading-view-content{font-family:var(--font-serif);line-height:1.8;padding:.5rem .25rem 4rem;max-width:960px;margin:0 auto}.verse-item{display:grid;grid-template-columns:28px 1fr;gap:.2rem;margin-bottom:.5rem;position:relative;padding:.25rem;border-radius:6px;transition:background-color .2s;align-items:baseline}.verse-item:hover{background-color:var(--hover-bg)}.verse-item.highlighted{background-color:#bc5a4526;animation:highlight-verse 2s ease-out}@keyframes highlight-verse{0%{background-color:#bc5a454d}to{background-color:#bc5a4526}}.verse-number{font-size:.65em;font-weight:700;color:var(--primary-color);-webkit-user-select:none;user-select:none;text-align:right;font-family:var(--font-sans);opacity:.7;padding-right:2px}.verse-text{margin:0}.verse-actions{position:absolute;top:50%;right:.5rem;transform:translateY(-50%);display:flex;gap:.25rem;background-color:var(--hover-bg);border:1px solid var(--border-color);border-radius:50px;padding:2px;opacity:0;transition:opacity .2s}.verse-item:hover .verse-actions{opacity:1}.verse-action-btn{padding:.3rem;display:flex;align-items:center;justify-content:center;border-radius:50%}.verse-action-btn:hover{background-color:var(--border-color)}.verse-action-btn .material-icons{font-size:1.1rem;color:var(--accent-color)}.verse-action-btn .material-icons.bookmark{color:var(--primary-color)}.reading-view-footer-nav{position:fixed;bottom:50px;left:0;width:100%;display:flex;justify-content:space-between;align-items:center;background-color:var(--card-bg);padding:.5rem 1rem;box-shadow:0 -1px 3px var(--shadow-color);z-index:999}.reading-view-footer-nav button{display:flex;align-items:center;gap:4px;padding:.5rem 1rem;border-radius:50px;background-color:var(--hover-bg);color:var(--primary-color);font-weight:700}.reading-view-footer-nav button:disabled{opacity:.5;cursor:not-allowed}.search-container{width:100%;max-width:600px;margin:1rem auto 0}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-input-wrapper .material-icons{position:absolute;left:1rem;color:var(--accent-color)}.search-input{width:100%;padding:.8rem 1rem .8rem 3rem;font-size:1rem;border-radius:50px;border:1px solid var(--border-color);background-color:var(--background-color);color:var(--text-color)}.search-results-container{margin-top:1rem;border-top:1px solid var(--border-color);padding-top:1rem}.search-result-item{display:block;width:100%;text-align:left;padding:1rem;border-radius:8px;transition:background-color .2s}.search-result-item:hover{background-color:var(--hover-bg)}.search-result-ref{font-weight:700;color:var(--primary-color);margin-bottom:.25rem}.search-loading,.search-empty{text-align:center;padding:2rem 0;color:var(--accent-color)}.search-loading{display:flex;flex-direction:column;align-items:center;gap:1rem}.directory-card-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:2rem}.directory-card{background-color:var(--persona-bg);border-radius:12px;border:1px solid var(--persona-border);padding:1.25rem;display:flex;flex-direction:column}.directory-card__header{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}.directory-card__icon{font-size:2rem;color:var(--primary-color)}.directory-card__title{font-family:var(--font-serif);font-size:1.2rem;color:var(--persona-header);margin:0}.directory-card__description{font-size:1rem;color:var(--persona-text);margin:0 0 1rem;flex-grow:1}.directory-card__actions{display:flex;justify-content:flex-end;align-items:center;gap:.5rem;margin-top:auto}.directory-card__action-primary,.directory-card__action-secondary{display:flex;align-items:center;gap:.25rem;padding:.4rem .8rem;border-radius:50px;font-size:.85rem;font-weight:700;transition:background-color .2s,color .2s,border-color .2s}.directory-card__action-primary{background-color:var(--button-bg-color);color:#fff}body.dark .directory-card__action-primary{color:var(--background-color)}.directory-card__action-secondary{border:1px solid var(--accent-color);color:var(--accent-color)}.directory-card__action-primary:hover{background-color:var(--primary-color-hover)}.directory-card__action-secondary:hover{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}body.dark .directory-card__action-primary:hover,body.dark .directory-card__action-secondary:hover{color:var(--text-color)}.harmony-event,.thematic-item{border-bottom:1px solid var(--border-color);padding:1rem 0}.harmony-event__title,.thematic-item-header{font-family:var(--font-serif);font-size:1.1rem;margin-bottom:.75rem}.harmony-event__passages{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.passage-card{border-radius:6px;overflow:hidden;font-size:.9rem;border-left:4px solid}.passage-card__header{padding:.25rem .6rem;font-weight:700;background-color:var(--hover-bg)}.passage-card__body{padding:.5rem .6rem;background-color:var(--background-color)}.passage-card__link{color:var(--primary-color);font-weight:700}.passage-card__empty{color:var(--accent-color)}.gospel-matthew{border-color:var(--matthew-color)}.gospel-matthew .passage-card__header{background-color:var(--matthew-bg)}.gospel-mark{border-color:var(--mark-color)}.gospel-mark .passage-card__header{background-color:var(--mark-bg)}.gospel-luke{border-color:var(--luke-color)}.gospel-luke .passage-card__header{background-color:var(--luke-bg)}.gospel-john{border-color:var(--john-color)}.gospel-john .passage-card__header{background-color:var(--john-bg)}.thematic-item-header-wrapper{display:flex;align-items:center;gap:.5rem}.thematic-item-header{flex-grow:1;display:flex;justify-content:space-between;align-items:center;padding:.5rem;border-radius:6px;transition:background-color .2s}.thematic-item-header:hover{background-color:var(--hover-bg)}.add-item-plan-btn{width:32px;height:32px;border-radius:50%;border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;color:var(--accent-color);font-size:1.2rem}.add-item-plan-btn:hover{background-color:var(--accent-color);color:#fff}body.dark .add-item-plan-btn:hover{color:var(--background-color)}.thematic-item-references{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease-in-out;overflow:hidden}.thematic-item-references.expanded{grid-template-rows:1fr}.thematic-item-references>div{padding-left:1.5rem}.thematic-reference-link{display:inline-block;background-color:var(--hover-bg);padding:.4rem .8rem;border-radius:50px;margin:.25rem;color:var(--primary-color);font-weight:500}.harmony-event__notes{font-size:.85rem;color:var(--accent-color);margin-top:.75rem;padding:.5rem;background-color:var(--hover-bg);border-left:3px solid var(--accent-color)}.archaeology-category{margin-bottom:2rem}.archaeology-category-title{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.archaeology-items-grid{display:grid;grid-template-columns:1fr;gap:.75rem}.archaeology-item{background-color:var(--hover-bg);border-radius:8px;padding:1rem}.archaeology-item-title{font-size:1.1rem;margin-bottom:.5rem}.archaeology-item-description{font-size:.9rem;color:var(--accent-color);margin:0}.setting-item{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid var(--border-color)}.switch{position:relative;display:inline-block;width:44px;height:24px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.4s;border-radius:34px}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s;border-radius:50%}input:checked+.slider{background-color:var(--primary-color)}input:checked+.slider:before{transform:translate(20px)}.language-select,.time-input{background-color:var(--hover-bg);border:1px solid var(--border-color);border-radius:6px;padding:.5rem;color:var(--text-color)}.bookmarks-page-content{display:flex;flex-direction:column;height:100%}.bookmarks-header{padding:1.25rem}.bookmarks-header p{font-size:1rem}.bookmarks-list{list-style:none;overflow-y:auto;flex-grow:1}.bookmark-item{display:flex;align-items:stretch;border-bottom:1px solid var(--border-color)}.bookmark-item__button{flex-grow:1;padding:1rem 1.25rem;text-align:left}.bookmark-item__button:hover{background-color:var(--hover-bg)}.bookmark-item__ref{font-weight:700;color:var(--primary-color);margin-bottom:.25rem}.bookmark-item__text{color:var(--text-color);opacity:.9;margin:0}.bookmark-item__remove-btn{flex-shrink:0;width:50px;display:flex;align-items:center;justify-content:center;color:var(--delete-color)}.bookmark-item__remove-btn:hover{background-color:var(--delete-button-hover-bg-color);color:#fff}.bookmarks-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem;color:var(--accent-color);flex-grow:1}.bookmarks-empty-state .material-icons{font-size:3rem;margin-bottom:1rem}.my-plans-section,.suggested-plans-section{margin-bottom:2.5rem}.section-title{font-size:1.4rem;color:var(--secondary-color);margin-bottom:1.25rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.my-plans-empty-state{text-align:center;padding:2rem;background-color:var(--hover-bg);border-radius:12px;color:var(--accent-color)}.my-plans-empty-state .material-icons{font-size:3rem;margin-bottom:1rem}.create-plan-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.9rem;background-color:var(--button-bg-color);color:#fff;font-weight:700;font-size:1rem;border-radius:8px;margin:1.5rem 0}body.dark .create-plan-btn{color:var(--text-color)}.plan-list{display:flex;flex-direction:column;gap:1rem}.plan-item{display:flex;gap:1rem;background-color:var(--card-bg);border-radius:12px;padding:1rem;box-shadow:0 2px 6px var(--shadow-color)}.plan-item-content{flex-grow:1}.plan-item h3{font-size:1.1rem;margin-bottom:.5rem}.plan-item-description{font-size:.9rem;margin-bottom:1rem}.plan-item-details{display:flex;flex-direction:column;gap:.75rem;font-size:.85rem}.plan-item-audience,.plan-item-benefit{display:flex;align-items:flex-start;gap:.5rem;color:var(--accent-color)}.plan-item-details .material-icons{font-size:1rem;position:relative;top:2px}.add-plan-btn{width:44px;height:44px;border-radius:50%;background-color:var(--button-bg-color);color:#fff;flex-shrink:0;align-self:center}body.dark .add-plan-btn{color:var(--text-color)}.my-plan-card{background-color:var(--card-bg);border-radius:12px;box-shadow:0 2px 6px var(--shadow-color);margin-bottom:1rem;overflow:hidden}.my-plan-card__header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;width:100%}.my-plan-card__header h3{margin:0}.my-plan-card__header-actions{display:flex;align-items:center;gap:.5rem}.my-plan-card__remove-btn{padding:.25rem}.my-plan-card__remove-btn .material-icons{font-size:1.2rem;color:var(--delete-color)}.my-plan-card__expand-icon{transition:transform .3s ease}.my-plan-card.expanded .my-plan-card__expand-icon{transform:rotate(180deg)}.my-plan-card__content-wrapper{max-height:0;overflow:hidden;transition:max-height .5s ease-in-out;padding:0 1.25rem}.my-plan-card.expanded .my-plan-card__content-wrapper{max-height:5000px;padding:0 1.25rem 1.25rem}.plan-progress-container{padding-top:.5rem;border-top:1px solid var(--border-color)}.progress-bar-info{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.85rem}.progress-bar-label{font-weight:700}.progress-bar-bg{width:100%;height:8px;background-color:var(--border-color);border-radius:50px}.progress-bar-fill{height:100%;background-color:var(--primary-color);border-radius:50px;transition:width .5s ease}.plan-checklist-container{margin-top:1.5rem}.checklist-category-section{border-bottom:1px solid var(--border-color)}.checklist-category-header{font-weight:700;padding:.5rem 0}.plan-checklist{list-style:none}.checklist-item-wrapper{padding:.5rem 0;border-bottom:1px solid var(--border-color)}.checklist-item-wrapper:last-child{border-bottom:none}.checklist-item{display:flex;align-items:center;justify-content:space-between}.checklist-item label{display:flex;align-items:center;flex-grow:1}.checklist-item input[type=checkbox]{margin-right:.75rem}.checklist-item .item-text{font-size:.95rem}.checklist-item input:checked+.item-text{text-decoration:line-through;opacity:.7}.add-note-for-item-btn .material-icons{color:var(--accent-color)}.quick-note-display{font-size:.85rem;padding:.5rem;background-color:var(--hover-bg);border-left:3px solid var(--primary-color);margin-top:.5rem;border-radius:4px}.quick-note-editor{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.quick-note-editor textarea{width:100%;padding:.5rem;border:1px solid var(--border-color);border-radius:6px;background:var(--background-color);color:var(--text-color)}.quick-note-editor-actions{display:flex;gap:.5rem;justify-content:flex-end}.quick-note-save-btn{background:var(--button-bg-color);color:#fff;padding:.4rem .8rem;border-radius:4px;font-size:.8rem}.quick-note-cancel-btn{background:var(--border-color);padding:.4rem .8rem;border-radius:4px;font-size:.8rem}.show-all-btn{display:block;width:100%;text-align:center;padding:.75rem;color:var(--primary-color);font-weight:700;margin-top:.5rem}.plan-generator-form{display:flex;flex-direction:column;gap:1rem}.generated-plan-view ul{list-style:none;margin-top:1rem}.generated-plan-view li{border-bottom:1px solid var(--border-color);padding:.75rem 0}.form-actions{display:flex;justify-content:flex-end;margin-top:1.5rem}.action-button .spinner{width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;margin-right:.5rem}.notes-list{display:grid;grid-template-columns:1fr;gap:1rem}.note-card{display:block;width:100%;text-align:left;background-color:var(--hover-bg);border:1px solid var(--border-color);padding:1rem;border-radius:8px;transition:box-shadow .2s}.note-card:hover{box-shadow:0 2px 8px var(--shadow-color)}.note-card-plan-title{font-size:.8rem;font-weight:700;color:var(--primary-color);margin-bottom:.25rem}.note-card h3{font-size:1.1rem;margin-bottom:.5rem}.note-card-content{font-size:.95rem;margin-bottom:1rem}.note-card-footer{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:var(--accent-color)}.note-card-footer-right{display:flex;align-items:center;gap:.5rem}.note-card-tags{background-color:var(--border-color);padding:2px 6px;border-radius:4px}.note-card-action-btn .material-icons{font-size:1.1rem;color:var(--accent-color)}.note-editor-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:700;font-size:.9rem}.form-group input,.form-group textarea,.form-group select{padding:.75rem;border:1px solid var(--border-color);border-radius:6px;font-size:1rem;background-color:var(--background-color);color:var(--text-color)}.references-list{display:flex;flex-direction:column;gap:.75rem}.reference-item{display:grid;grid-template-columns:auto 1fr auto auto auto auto;gap:.5rem;align-items:center}.reference-item input[type=number]{width:70px}.add-reference-btn{align-self:flex-start;display:flex;align-items:center;gap:.25rem;color:var(--primary-color)}.remove-reference-btn{color:var(--delete-color)}.note-editor-actions{display:flex;justify-content:space-between;align-items:center;margin-top:1rem}.chat-view-container{display:flex;flex-direction:column;height:100%;max-height:75vh;max-width:800px;margin:0 auto;background-color:var(--card-bg);border-radius:12px;box-shadow:0 2px 8px var(--shadow-color);overflow:hidden;transition:all .3s ease-in-out}.chat-view-container.expanded{position:fixed;top:0;left:0;width:100%;height:100%;max-height:100vh;max-width:100vw;z-index:2000;border-radius:0;margin:0}.chat-header{padding:.75rem 1.25rem;border-bottom:1px solid var(--border-color);text-align:center;flex-shrink:0;display:flex;justify-content:center;align-items:center;position:relative}.chat-header h3{margin:0;font-size:1.1rem;color:var(--secondary-color)}.expand-chat-btn{position:absolute;right:1rem;background:transparent;border:none;color:var(--secondary-color);cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.expand-chat-btn:hover{background-color:var(--hover-bg)}.chat-messages{flex-grow:1;overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:1rem;background-color:var(--chat-bg)}.chat-message-wrapper{display:flex;max-width:80%;align-items:flex-end;gap:.5rem}.chat-message-wrapper.user{justify-content:flex-end;align-self:flex-end}.chat-message-wrapper.model{justify-content:flex-start;align-self:flex-start;flex-direction:column;align-items:flex-start;gap:.25rem}.chat-bubble-container{display:flex;flex-direction:column}.chat-message-wrapper.user .chat-bubble-container{align-items:flex-end}.chat-message-wrapper.model .chat-bubble-container{align-items:flex-start}.chat-avatar{width:32px;height:32px;border-radius:50%;background-color:var(--hover-bg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.chat-avatar .material-icons{color:var(--primary-color);font-size:1.2rem}.chat-bubble{padding:.75rem 1rem;border-radius:18px;line-height:1.5;box-shadow:0 1px 2px var(--shadow-color);word-wrap:break-word}.chat-bubble p{margin:0;white-space:pre-wrap}.chat-bubble.user{background-color:var(--primary-color);color:#fff;border-bottom-right-radius:4px}body.dark .chat-bubble.user{color:var(--text-color)}.chat-bubble.model{background-color:var(--hover-bg);border-top-left-radius:4px}.chat-bubble-header{font-size:.8rem;font-weight:700;margin-bottom:.25rem;color:var(--accent-color)}.chat-message-meta{display:flex;align-items:center;gap:.5rem;margin-top:4px;padding:0 .75rem}.chat-timestamp{font-size:.7rem;color:var(--accent-color);opacity:.8}.copy-chat-btn{background:transparent;border:none;cursor:pointer;padding:2px;color:var(--accent-color);display:flex;align-items:center;justify-content:center}.copy-chat-btn .material-icons{font-size:.9rem}.copy-chat-btn:hover{color:var(--primary-color)}.typing-indicator{display:flex;align-items:center;padding:.25rem 0}.typing-indicator span{height:8px;width:8px;background-color:var(--accent-color);border-radius:50%;display:inline-block;margin:0 2px;animation:typing-bounce 1.4s infinite ease-in-out both}.typing-indicator span:nth-of-type(1){animation-delay:-.32s}.typing-indicator span:nth-of-type(2){animation-delay:-.16s}@keyframes typing-bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.chat-input-form{display:flex;padding:.75rem;border-top:1px solid var(--border-color)}.chat-input-form input{flex-grow:1;border:none;background:transparent;padding:.5rem;font-size:1rem;color:var(--text-color)}.chat-input-form input:focus{outline:none}.chat-input-form button{background-color:var(--button-bg-color);color:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center}.chat-input-form button:disabled{background-color:var(--disabled-bg-color)}body.dark .chat-input-form button{color:var(--text-color)}.blog-post-list{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:1.5rem}.blog-post-card{display:block;width:100%;text-align:left;background-color:var(--hover-bg);border:1px solid var(--border-color);padding:1.25rem;border-radius:12px;transition:box-shadow .2s,border-color .2s,transform .2s;cursor:pointer}.blog-post-card:hover{box-shadow:0 4px 12px var(--shadow-color);border-color:var(--primary-color);transform:translateY(-4px)}.blog-post-card h3{font-family:var(--font-serif);font-size:1.2rem;color:var(--secondary-color);margin-bottom:.75rem}.blog-post-card p{font-size:1rem;color:var(--text-color);opacity:.9;margin-bottom:1rem}.blog-post-card__read-more{font-weight:700;color:var(--primary-color)}.blog-post-view h2{font-size:1.8rem;margin-bottom:1.5rem;line-height:1.3}.blog-post-view-content{font-family:var(--font-serif);font-size:1.15rem;line-height:1.8}.blog-post-view-content p{margin-bottom:1.5rem}.purposes-list-view .section-title{margin-top:2rem}.purposes-empty-state{text-align:center;padding:2rem;background-color:var(--hover-bg);border-radius:12px;color:var(--accent-color)}.purposes-empty-state .material-icons{font-size:3rem;margin-bottom:1rem}.my-purpose-list,.purpose-template-list{display:grid;grid-template-columns:1fr;gap:1rem}.my-purpose-card,.purpose-template-card{background-color:var(--card-bg);border-radius:12px;padding:1rem;box-shadow:0 2px 6px var(--shadow-color);text-align:left;width:100%}.my-purpose-card{border-left:4px solid var(--primary-color)}.my-purpose-card:hover{background-color:var(--hover-bg)}.my-purpose-card h3,.purpose-template-card h3{font-size:1.1rem;margin-bottom:.25rem}.my-purpose-card p,.purpose-template-card p{font-size:.9rem;margin:0}.add-purpose-from-template-btn{margin-top:1rem;font-weight:700;color:var(--primary-color)}.purpose-editor .form-group-row{display:flex;gap:1rem}.purpose-editor .form-group-row .form-group{flex:1}.activity-chooser{display:flex;flex-wrap:wrap;gap:.5rem}.activity-chooser button{padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:50px;display:flex;align-items:center;gap:.5rem;transition:all .2s}.activity-chooser button.active{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}body.dark .activity-chooser button.active{color:var(--text-color)}.purpose-detail-view .progress-bar-info{display:flex;justify-content:space-between;margin:1rem 0 .5rem;font-size:.9rem}.progress-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:1rem;margin-top:1.5rem}.progress-day{background-color:var(--hover-bg);border-radius:8px;padding:.75rem}.progress-day-header{display:flex;justify-content:space-between;font-weight:700;margin-bottom:.75rem}.progress-day-activities{display:flex;gap:.5rem;justify-content:space-around}.progress-activity-btn{width:36px;height:36px;border-radius:50%;border:2px solid var(--border-color);display:flex;align-items:center;justify-content:center;color:var(--accent-color);transition:all .2s}.progress-activity-btn.completed{background-color:var(--accent-color);color:#fff;border-color:var(--accent-color)}body.dark .progress-activity-btn.completed{color:var(--background-color)}.spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px}.spinner{width:32px;height:32px;border:4px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toast-notification{position:fixed;bottom:80px;left:50%;transform:translate(-50%);background-color:var(--secondary-color);color:var(--background-color);padding:1rem 1.5rem;border-radius:8px;box-shadow:0 4px 12px var(--shadow-color);z-index:2000;font-weight:500;animation:toast-fade-in-out 3s ease-in-out}@keyframes toast-fade-in-out{0%,to{opacity:0;transform:translate(-50%,10px)}10%,90%{opacity:1;transform:translate(-50%)}}.footer-flow-button{background-color:var(--primary-color);color:#fff;text-decoration:none;padding:.75rem 1.5rem;border-radius:50px;font-weight:700;box-shadow:0 2px 6px var(--shadow-color);transition:all .2s ease}.footer-flow-button:hover{background-color:var(--primary-color-hover);transform:translateY(-2px);box-shadow:0 4px 10px var(--shadow-color)}body.dark .footer-flow-button{color:var(--text-color)}.footer-credits a{color:var(--secondary-color);text-decoration:none;font-weight:700}.footer-credits a:hover{text-decoration:underline}.error-boundary-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem;margin:1.5rem auto;background-color:var(--hover-bg);border:1px solid var(--delete-color);border-radius:12px;color:var(--text-color);max-width:600px}.error-boundary-fallback .material-icons{font-size:3rem;color:var(--delete-color);margin-bottom:1rem}.error-boundary-fallback h2{color:var(--secondary-color);margin-bottom:.75rem}.error-boundary-fallback p{margin-bottom:1.5rem;opacity:.9}.error-boundary-fallback button{background-color:var(--button-bg-color);color:#fff;padding:.7rem 1.5rem;border-radius:50px;font-weight:700;transition:background-color .2s}.error-boundary-fallback button:hover{background-color:var(--button-hover-bg-color)}body.dark .error-boundary-fallback button{color:var(--text-color)}@media(min-width:768px){.main-content{padding:2rem;max-width:1800px;margin:0 auto}.app-header{padding:.75rem 2rem}.header-nav{display:flex;gap:.5rem}.header-nav-button{padding:.6rem 1rem;border-radius:6px;font-size:.9rem;font-weight:500;transition:background-color .2s,color .2s;color:var(--accent-color)}.header-nav-button:hover{background-color:var(--hover-bg);color:var(--text-color)}.header-nav-button.active{background-color:var(--primary-color);color:#fff}body.dark .header-nav-button.active{color:var(--text-color)}.bottom-nav,.fab,.reading-view-footer-nav,.menu-toggle-btn{display:none}.ko-fi-button-header{display:flex}.book-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.home-actions{flex-direction:row;max-width:none}.home-btn{min-width:180px}.directory-card-grid,.notes-list{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.archaeology-items-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.chapter-nav{display:flex;align-items:center;gap:.5rem}.chapter-nav-btn{display:flex;align-items:center;gap:4px;padding:.5rem 1rem;border-radius:50px;background-color:var(--hover-bg);color:var(--primary-color);font-weight:700}.chat-message-wrapper.model{flex-direction:row;align-items:flex-end;gap:.5rem}.chat-bubble.model{border-top-left-radius:18px;border-bottom-left-radius:4px}.my-purpose-list,.purpose-template-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.verse-item{grid-template-columns:40px 1fr}.reading-view-content{padding:1rem}.landing-features{grid-template-columns:repeat(2,1fr)}.landing-hero h1{font-size:3rem}}
