:root{--bg: #fcfcfc;--bg-panel: #ffffff;--bg-elev: #f3f3f4;--text: #18181b;--text-soft: #52525b;--text-faint: #a1a1aa;--line: #ececee;--accent: #44576a;--accent-hover: #35485a;--accent-soft: #eef1f4;--on-accent: #ffffff;--verse-num: #bfc2c8;--hl-yellow: #fdf1b8;--hl-green: #d7efc9;--hl-blue: #d0e6f7;--hl-pink: #f8d6e3;--hl-purple: #e7ddf5;--shadow: 0 1px 2px rgba(0, 0, 0, .04), 0 8px 24px rgba(0, 0, 0, .05);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04), 0 2px 8px rgba(0, 0, 0, .04);--reading-size: 1.15rem;--reading-leading: 1.8;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-serif: "Iowan Old Style", "Palatino Linotype", "Palatino", "Georgia", "Times New Roman", serif;--reading-family: var(--font-serif);color-scheme:light}:root[data-theme=dark]{--bg: #141416;--bg-panel: #1d1d20;--bg-elev: #26262a;--text: #e8e6e1;--text-soft: #a1a1a6;--text-faint: #6b6b70;--line: #2a2a2e;--accent: #8aa0b3;--accent-hover: #9db1c2;--accent-soft: #262f38;--on-accent: #15171a;--verse-num: #55565b;--hl-yellow: #574d24;--hl-green: #33482c;--hl-blue: #26414f;--hl-pink: #4c2b3a;--hl-purple: #3b3350;--shadow: 0 2px 8px rgba(0, 0, 0, .35), 0 16px 48px rgba(0, 0, 0, .45);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);color-scheme:dark}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #141416;--bg-panel: #1d1d20;--bg-elev: #26262a;--text: #e8e6e1;--text-soft: #a1a1a6;--text-faint: #6b6b70;--line: #2a2a2e;--accent: #8aa0b3;--accent-hover: #9db1c2;--accent-soft: #262f38;--on-accent: #15171a;--verse-num: #55565b;--hl-yellow: #574d24;--hl-green: #33482c;--hl-blue: #26414f;--hl-pink: #4c2b3a;--hl-purple: #3b3350;--shadow: 0 2px 8px rgba(0, 0, 0, .35), 0 16px 48px rgba(0, 0, 0, .45);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);color-scheme:dark}}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button{font:inherit;color:inherit;cursor:pointer}input{font:inherit}::selection{background:var(--accent-soft)}.app{display:flex;flex-direction:column;height:100%;max-width:720px;margin:0 auto;background:var(--bg);--tabbar-h: calc(56px + env(safe-area-inset-bottom)) }.screen{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--bg)}.topbar{display:flex;align-items:center;gap:4px;padding:8px;padding-top:max(8px,env(safe-area-inset-top));border-bottom:1px solid var(--line);background:var(--bg-panel);position:sticky;top:0;z-index:5}.topbar-right{margin-left:auto;display:flex;gap:2px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:10px;background:transparent;color:var(--text-soft)}.icon-btn:hover{background:var(--bg-elev);color:var(--text)}.icon-btn-spacer{width:40px;height:40px}.aa{font-size:.95rem;font-weight:600;letter-spacing:.5px}.ref-btn{flex:0 1 auto;border:none;background:transparent;font-size:1.05rem;font-weight:600;color:var(--text);padding:8px 10px;border-radius:10px}.ref-btn:hover{background:var(--bg-elev)}.reader{flex:1;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.chapter{padding:34px 24px 8px;margin:0 auto;max-width:none}.plan-banner{position:sticky;top:0;z-index:4;display:flex;align-items:center;gap:10px;padding:10px 16px;background:var(--bg-elev);color:var(--text-soft);font-size:.85rem;font-weight:600}.plan-banner.is-done{background:var(--accent-soft);color:var(--accent)}.plan-banner-text{flex:1;min-width:0;display:inline-flex;align-items:center;gap:6px}.plan-banner-text svg{width:16px;height:16px;flex:0 0 auto}.plan-banner-next{flex:0 0 auto;display:inline-flex;align-items:center;gap:2px;border:none;border-radius:999px;padding:6px 12px;background:var(--accent);color:var(--on-accent);font-weight:600;font-size:.8rem}.plan-banner-next svg{width:15px;height:15px}.plan-banner-x{flex:0 0 auto;border:none;background:transparent;color:inherit;display:inline-flex;padding:2px}.plan-banner-x svg{width:16px;height:16px}.reader[data-width=narrow] .chapter{max-width:32rem}.reader[data-width=normal] .chapter{max-width:40rem}.reader[data-selecting=true]{padding-bottom:240px}.reader[data-audio=true]{padding-bottom:130px}.chapter-sub-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.chapter-sub-row .chapter-sub{margin:0}.listen-btn{display:inline-flex;align-items:center;gap:6px;border:none;border-radius:999px;background:var(--bg-elev);color:var(--text-soft);padding:7px 15px;font-size:.85rem;font-weight:600;flex:0 0 auto}.listen-btn:hover{color:var(--text)}.listen-btn svg{width:14px;height:14px}.verse.is-reading{background:var(--accent-soft)}.audio-bar{position:fixed;left:0;right:0;bottom:var(--tabbar-h, 0px);z-index:25;max-width:720px;margin:0 auto;display:flex;align-items:center;gap:10px;padding:10px 14px calc(12px + env(safe-area-inset-bottom));background:var(--bg-panel);border-top:1px solid var(--line);border-radius:16px 16px 0 0;box-shadow:var(--shadow);animation:slide-up .2s ease}.audio-main{flex:0 0 auto;width:42px;height:42px;border-radius:50%;border:none;background:var(--accent);color:var(--on-accent);display:inline-flex;align-items:center;justify-content:center}.audio-main svg{width:20px;height:20px}.audio-label{flex:1;min-width:0;font-weight:700;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audio-rate{flex:0 0 auto;width:140px;margin:0}.chapter-title{margin:8px 0 2px;font-size:1.75rem;font-weight:600;letter-spacing:-.02em}.chapter-sub{margin:0 0 20px;color:var(--text-faint);font-size:.78rem;text-transform:uppercase;letter-spacing:.1em}.verse{margin:0 0 .7em;font-size:var(--reading-size, 1.15rem);line-height:var(--reading-leading, 1.8);font-family:var(--reading-family, var(--font-serif));color:var(--text);text-align:left}.vnum{color:var(--verse-num);font-family:var(--font-sans);font-size:.64em;font-weight:600;vertical-align:baseline;margin-right:.4em;line-height:0}.daily{display:flex;align-items:flex-start;gap:8px;margin:16px 16px 0;padding:16px;border-radius:14px;background:var(--bg-elev)}.daily-body{flex:1;min-width:0}.daily-tag{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--text-faint)}.daily-text{margin:6px 0 8px;font-family:var(--font-serif);line-height:1.55;color:var(--text)}.daily-ref{border:none;background:transparent;padding:0;font-weight:700;color:var(--accent)}.daily-x{flex:0 0 auto;border:none;background:transparent;color:var(--text-faint);width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center}.daily-x svg{width:18px;height:18px}.chapter-nav{display:flex;gap:10px;padding:12px 22px;padding-bottom:max(16px,env(safe-area-inset-bottom))}.nav-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:13px 10px;border:none;border-radius:12px;background:var(--bg-elev);color:var(--text-soft);font-weight:600}.nav-btn:hover:not(:disabled){color:var(--text)}.nav-btn:disabled{opacity:.35;cursor:default}.state-screen{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--text-soft);padding:24px;text-align:center}.spinner{width:34px;height:34px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.btn{border:none;border-radius:10px;background:var(--bg-elev);color:var(--text);padding:10px 16px;font-weight:600}.btn:hover{background:var(--line)}.btn.block{width:100%;padding:13px;background:var(--accent);color:var(--on-accent)}.btn.block:hover{background:var(--accent-hover)}.btn.block.ghost{background:var(--bg-elev);color:var(--text)}.btn.block.ghost:hover{background:var(--line)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:var(--bg);display:flex;flex-direction:column;max-width:720px;margin:0 auto}.overlay-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px;padding-top:max(8px,env(safe-area-inset-top));border-bottom:1px solid var(--line);background:var(--bg-panel)}.overlay-head strong{font-size:1.05rem}.overlay-body{flex:1;overflow-y:auto;padding:16px 18px 40px}.section{margin-bottom:26px}.section-title{margin:0 0 12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--text-faint)}.book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.book-cell{text-align:left;padding:13px 14px;border:none;border-radius:12px;background:var(--bg-elev);color:var(--text);font-size:.95rem}.book-cell:hover{background:var(--line)}.book-cell.is-current{background:var(--accent);color:var(--on-accent);font-weight:600}.chapter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:8px}.chapter-cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border:none;border-radius:12px;background:var(--bg-elev);color:var(--text);font-weight:600;font-size:1rem}.chapter-cell:hover{background:var(--line)}.chapter-cell.is-current{background:var(--accent);color:var(--on-accent)}.search-field{display:flex;align-items:center;gap:8px;margin:12px 16px 4px;padding:11px 14px;border:none;border-radius:12px;background:var(--bg-elev);color:var(--text-soft)}.search-field input{flex:1;border:none;outline:none;background:transparent;color:var(--text);font-size:1rem}.search-count{margin:12px 0;color:var(--text-faint);font-size:.85rem}.goto{display:flex;align-items:center;gap:8px;width:100%;margin-bottom:12px;padding:13px 16px;border:none;border-radius:12px;background:var(--accent);color:var(--on-accent);font-weight:600}.goto:hover{background:var(--accent-hover)}.segmented.sm{margin-bottom:4px}.segmented.sm .seg{padding:7px 6px;font-size:.85rem}.result-text mark{background:var(--hl-yellow);color:inherit;border-radius:3px;padding:0 1px}.result-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.result{width:100%;text-align:left;border:none;background:transparent;color:var(--text);padding:13px 12px;border-radius:12px;display:flex;flex-direction:column;gap:4px}.result:hover{background:var(--bg-elev)}.result-ref{font-size:.78rem;font-weight:600;color:var(--accent)}.result-text{font-family:var(--font-serif);line-height:1.55;color:var(--text-soft)}.segmented{display:flex;gap:4px;padding:3px;border-radius:12px;background:var(--bg-elev)}.seg{flex:1;border:none;border-radius:9px;background:transparent;color:var(--text-soft);padding:9px 8px;font-weight:600}.seg.is-on{background:var(--bg-panel);color:var(--text);box-shadow:var(--shadow-sm)}.stepper{display:flex;align-items:center;gap:14px}.stepper-value{min-width:56px;text-align:center;font-weight:700}.preview{margin:14px 0 0;padding:16px;border-radius:12px;background:var(--bg-elev);font-family:var(--font-serif);line-height:1.7;color:var(--text-soft)}.about{line-height:1.7;color:var(--text-soft);font-size:.9rem}.about a{color:var(--accent);word-break:break-all}.about code{background:var(--bg-elev);padding:1px 5px;border-radius:4px;font-size:.85em}.profile-top{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:8px}.profile-avatar{position:relative;border:none;background:transparent;padding:0;border-radius:50%}.profile-avatar-edit{position:absolute;right:-2px;bottom:-2px;width:30px;height:30px;border-radius:50%;background:var(--accent);color:var(--on-accent);border:3px solid var(--bg);display:inline-flex;align-items:center;justify-content:center}.profile-avatar-edit svg{width:15px;height:15px}.link-btn{border:none;background:transparent;color:var(--accent);font-weight:600;font-size:.88rem;padding:6px 2px}.link-btn:disabled{opacity:.5}.danger-text{color:var(--text-soft)}.btn.block.danger{background:#c0392b;color:#fff}.btn.block.danger:hover{background:#a93226}.btn.ghost.danger{background:transparent}.account{display:flex;flex-direction:column;gap:10px}.account-email{margin:0;font-weight:700}.account-sync{margin:0;font-size:.85rem;color:var(--text-faint)}.account-actions{display:flex;gap:10px}.account-actions .btn{flex:1;margin-bottom:0}.field{width:100%;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--text);padding:11px 12px;outline:none}.field:focus{border-color:var(--accent)}.field-err{margin:0;color:#c0392b;font-size:.85rem}.field-ok{margin:0;color:var(--accent);font-size:.85rem}:root[data-theme=dark] .field-err{color:#e8776a}.btn:disabled{opacity:.45;cursor:default}.verse{cursor:pointer;border-radius:6px;padding:2px 4px;margin-left:-4px;margin-right:-4px;transition:background-color .15s ease}.verse.is-hl{box-decoration-break:clone;-webkit-box-decoration-break:clone}.verse.is-selected{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}.verse.flash{animation:flash 1.8s ease}@keyframes flash{0%,15%{background-color:var(--accent-soft)}to{background-color:transparent}}.verse-badge{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:1.15em;height:1.15em;margin-left:.3em;border:none;background:transparent;color:var(--accent)}.verse-badge svg{width:1em;height:1em}.verse-badge.note{color:var(--text-faint);cursor:pointer}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#0f0f1152;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:flex-end;justify-content:center;animation:fade .15s ease}@keyframes fade{0%{opacity:0}}.sheet{width:100%;max-width:720px;background:var(--bg-panel);border-radius:18px 18px 0 0;padding:8px 18px calc(18px + env(safe-area-inset-bottom));box-shadow:var(--shadow);animation:slide-up .2s ease}@keyframes slide-up{0%{transform:translateY(100%)}}.sheet-grabber{width:38px;height:4px;border-radius:2px;background:var(--line);margin:4px auto 12px}.sheet-ref{margin:0 0 14px;font-weight:700;color:var(--accent)}.selection-sheet{position:fixed;left:0;right:0;bottom:0;z-index:25;max-width:720px;margin:0 auto;background:var(--bg-panel);border-top:1px solid var(--line);border-radius:16px 16px 0 0;box-shadow:var(--shadow);padding:12px 18px calc(14px + env(safe-area-inset-bottom));animation:slide-up .2s ease}.selection-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.selection-head .sheet-ref{margin:0}.sheet-count{font-weight:600;color:var(--text-faint)}.swatches{display:flex;gap:10px;margin-bottom:18px}.swatch{width:38px;height:38px;border-radius:50%;border:2px solid transparent;display:inline-flex;align-items:center;justify-content:center;color:var(--text-faint)}.swatch.is-on{border-color:var(--text)}.swatch.clear{background:var(--bg-elev)}.sheet-actions{display:flex;flex-direction:column}.sheet-action{display:flex;align-items:center;gap:12px;padding:14px 4px;border:none;border-top:1px solid var(--line);background:transparent;color:var(--text);font-size:1rem;text-align:left}.sheet-action:hover{color:var(--accent)}.avatar{border-radius:50%;object-fit:cover;flex:0 0 auto;display:inline-block}.avatar-initials{display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700;letter-spacing:.02em}.menu-account{display:flex;align-items:center;gap:14px;width:calc(100% - 12px);margin:6px 6px 0;padding:12px;border:none;border-radius:14px;background:var(--bg-elev);color:var(--text);text-align:left}.menu-account:hover{background:var(--line)}.menu-account>svg:last-child{color:var(--text-faint);flex:0 0 auto}.menu-panel{width:100%;max-width:720px;background:var(--bg-panel);border-radius:18px 18px 0 0;padding-bottom:calc(12px + env(safe-area-inset-bottom));animation:slide-up .2s ease}.menu-panel .overlay-head{border-bottom:1px solid var(--line);border-radius:18px 18px 0 0}.menu-list{list-style:none;margin:0;padding:6px}.menu-item{width:100%;display:flex;align-items:center;gap:14px;padding:14px 12px;border:none;background:transparent;color:var(--text);text-align:left;border-radius:12px}.menu-item:hover{background:var(--bg-elev)}.menu-item>svg:last-child{color:var(--text-faint);flex:0 0 auto}.menu-icon{flex:0 0 auto;width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--accent);display:inline-flex;align-items:center;justify-content:center}.menu-icon .aa{font-weight:700;font-size:.95rem}.menu-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.menu-label{font-weight:600}.menu-desc{font-size:.82rem;color:var(--text-faint)}.note-modal{width:100%;max-width:720px;max-height:88vh;display:flex;flex-direction:column;background:var(--bg-panel);border-radius:18px 18px 0 0;animation:slide-up .2s ease}.note-modal .overlay-head{border-bottom:1px solid var(--line);border-radius:18px 18px 0 0}.note-body{padding:16px 18px calc(18px + env(safe-area-inset-bottom));overflow-y:auto}.note-verse{margin:0 0 14px;font-family:var(--font-serif);line-height:1.6;color:var(--text-soft)}.note-area{width:100%;resize:vertical;border:1px solid var(--line);border-radius:12px;background:var(--bg);color:var(--text);padding:12px;font-size:1rem;line-height:1.6;outline:none}.note-area:focus{border-color:var(--accent)}.btn.ghost{border-color:transparent;background:transparent;color:var(--text-soft)}.share-preview{display:flex;justify-content:center}.share-canvas{width:auto;height:auto;max-width:100%;max-height:46vh;border-radius:10px;box-shadow:var(--shadow)}.share-styles{margin:16px 0 4px}.share-actions{display:flex;flex-direction:column;gap:8px;margin-top:14px}.share-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin:0}.share-actions .btn svg{width:18px;height:18px}.btn.danger{color:#c0392b;margin-top:14px}:root[data-theme=dark] .btn.danger{color:#e8776a}.tag-field{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;padding:10px 12px;border-radius:12px;background:var(--bg-elev)}.tag-input{flex:1;min-width:120px;border:none;outline:none;background:transparent;color:var(--text);padding:4px 2px}.tag{display:inline-flex;align-items:center;gap:4px;padding:5px 11px;border-radius:999px;border:none;background:var(--accent);color:var(--on-accent);font-size:.8rem;font-weight:600}.tag button{display:inline-flex;border:none;background:transparent;color:inherit;padding:0}.tag button svg{width:13px;height:13px}.tag.ghost{background:var(--bg-elev);color:var(--text-soft)}.tag.mini{padding:3px 9px;font-size:.72rem;background:var(--accent-soft);color:var(--accent)}.tag-suggest{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.tag-suggest.filter{margin:0 0 14px}.result-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.tabs{display:flex;gap:4px;padding:8px 12px 0;background:var(--bg)}.tab{flex:1;border:none;border-radius:9px;background:transparent;color:var(--text-faint);padding:10px 6px;font-weight:600;font-size:.9rem}.tab.is-on{color:var(--text);background:var(--bg-elev)}.tab-count{display:inline-block;min-width:18px;padding:0 5px;border-radius:9px;background:var(--bg-elev);color:var(--text-faint);font-size:.75rem;line-height:18px;vertical-align:middle}.empty{color:var(--text-faint);text-align:center;padding:40px 0}.mini-swatch{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:middle;border:1px solid var(--line)}.streak-card{padding:18px;margin-bottom:14px;border-radius:16px;background:var(--bg-panel);box-shadow:var(--shadow-sm)}.streak-num{display:flex;align-items:baseline;gap:8px}.streak-flame{font-size:1.3rem}.streak-num strong{font-size:2rem;font-weight:700;line-height:1;letter-spacing:-.02em}.streak-label{color:var(--text-soft);font-size:.9rem}.streak-week{display:flex;gap:6px;margin-top:14px}.streak-day{flex:1;aspect-ratio:1;max-width:42px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--bg-elev);color:var(--text-faint);font-size:.78rem;font-weight:600}.streak-day.is-read{background:var(--accent);color:var(--on-accent)}.streak-day.is-today{box-shadow:0 0 0 2px var(--accent)}.streak-best{margin:12px 0 0;font-size:.8rem;color:var(--text-faint)}.plan-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.plan-card{width:100%;text-align:left;display:flex;flex-direction:column;gap:6px;padding:18px;border:none;border-radius:16px;background:var(--bg-panel);color:var(--text);box-shadow:var(--shadow-sm)}.plan-card:hover{background:var(--bg-elev)}.plan-title{font-size:1.05rem;font-weight:600}.plan-desc{font-size:.88rem;color:var(--text-soft);line-height:1.45}.plan-cta{margin-top:4px;align-self:flex-start;font-size:.85rem;font-weight:600;color:var(--accent)}.plan-meta{font-size:.8rem;color:var(--text-faint)}.pbar{display:block;height:6px;border-radius:3px;background:var(--bg-elev);overflow:hidden}.pbar-fill{display:block;height:100%;background:var(--accent);transition:width .25s ease}.plan-detail{display:flex;flex-direction:column}.plan-progress{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.plan-done{text-align:center;color:var(--text-soft);font-weight:600;padding:10px 0}.plan-hint{margin:12px 0 0;font-size:.82rem;color:var(--text-faint);line-height:1.5}.plan-chip{font-weight:600}.plan-chip.is-ok{color:var(--accent)}.plan-chip.is-behind{color:#c0392b}:root[data-theme=dark] .plan-chip.is-behind{color:#e8776a}.plan-flow{padding:8px 22px 24px;padding-bottom:max(24px,env(safe-area-inset-bottom))}.plan-flow-hint{margin:0;text-align:center;color:var(--text-faint);font-size:.85rem;line-height:1.5}.plan-flow-btn{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:15px;border:none;border-radius:14px;background:var(--accent);color:var(--on-accent);font-weight:600;font-size:1rem}.plan-flow-btn:hover{background:var(--accent-hover)}.plan-flow-ref{font-weight:400;opacity:.85}.plan-done-card{display:flex;flex-direction:column;align-items:center;gap:10px;padding:24px 18px;border-radius:16px;background:var(--bg-panel);box-shadow:var(--shadow-sm);text-align:center}.plan-done-check{width:44px;height:44px;border-radius:50%;background:var(--accent);color:var(--on-accent);display:inline-flex;align-items:center;justify-content:center}.plan-done-check svg{width:24px;height:24px}.plan-done-title{font-size:1.15rem;font-weight:600}.plan-done-card .pbar{width:100%;margin-top:4px}.plan-done-msg{margin:4px 0 8px;color:var(--text-soft);font-size:.9rem;line-height:1.5}.plan-done-card .btn.block{margin:0}.plan-done-card .btn.block+.btn.block{margin-top:8px}.plan-detail .btn.block{margin-bottom:8px}.day-list{list-style:none;margin:14px 0 0;padding:0}.day-row{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line)}.day-row.is-current{background:var(--accent-soft);border-bottom-color:transparent;border-radius:12px;margin:4px 0}.day-mark{flex:0 0 auto;width:24px;height:24px;margin-left:4px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-faint)}.day-mark svg{width:18px;height:18px}.day-row.is-done .day-mark{color:var(--accent)}.day-row.is-locked .day-mark{opacity:.4}.day-dot{width:12px;height:12px;border-radius:50%;border:3px solid var(--accent)}.day-open{flex:1;min-width:0;text-align:left;border:none;background:transparent;color:var(--text);padding:13px 4px;display:flex;flex-direction:column;gap:3px}.day-open.is-locked{color:var(--text-faint);cursor:default}.day-n{font-size:.72rem;font-weight:600;color:var(--text-faint);text-transform:uppercase;letter-spacing:.07em}.day-row.is-current .day-n{color:var(--accent)}.day-refs{font-size:.98rem}.day-row.is-done .day-open .day-refs{color:var(--text-soft)}.day-row.is-locked .day-refs{color:var(--text-faint)}.day-action{flex:0 0 auto;margin-right:4px;padding:7px 14px;border:none;border-radius:999px;background:var(--accent);color:var(--on-accent);font-size:.82rem;font-weight:600}.day-action:hover{background:var(--accent-hover)}.day-action.ghost{background:transparent;color:var(--text-faint);padding:7px 8px}.day-action.ghost:hover{color:var(--text-soft)}.toast{position:fixed;left:50%;bottom:calc(var(--tabbar-h, 0px) + 20px);transform:translate(-50%);z-index:40;background:var(--text);color:var(--bg);padding:10px 18px;border-radius:999px;font-size:.9rem;font-weight:600;box-shadow:var(--shadow);animation:fade .15s ease}.tabbar{display:flex;flex:0 0 auto;border-top:1px solid var(--line);background:var(--bg-panel);padding-bottom:env(safe-area-inset-bottom)}.tabbar-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;border:none;background:transparent;color:var(--text-faint);padding:8px 2px 6px}.tabbar-btn.is-on{color:var(--accent)}.tabbar-ico{position:relative;display:inline-flex}.tabbar-label{font-size:.68rem;font-weight:600;letter-spacing:.01em}.tabbar-badge{position:absolute;top:-5px;right:-9px;min-width:15px;height:15px;padding:0 3px;border-radius:999px;background:var(--accent);color:var(--on-accent);font-size:.6rem;font-weight:700;line-height:15px;text-align:center}.home-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:14px 18px 10px;padding-top:max(14px,env(safe-area-inset-top))}.home-hi{margin:0;font-size:1.4rem;font-weight:700;letter-spacing:-.01em}.home-date{margin:2px 0 0;font-size:.85rem;color:var(--text-faint)}.home-body{flex:1;overflow-y:auto;padding:6px 18px 28px;display:flex;flex-direction:column;gap:14px}.home-verse{display:flex;flex-direction:column;gap:8px;text-align:left;border:none;border-radius:16px;padding:18px;background:var(--accent-soft);color:var(--text)}.home-verse-tag{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}.home-verse-text{font-family:var(--font-serif);font-size:1.1rem;line-height:1.55}.home-verse-ref{display:inline-flex;align-items:center;gap:2px;font-weight:600;font-size:.9rem;color:var(--accent)}.home-verse-ref svg{width:16px;height:16px}.home-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.home-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;border:none;border-radius:14px;padding:14px;background:var(--bg-panel);box-shadow:var(--shadow-sm);min-height:104px}.home-card-ico{display:inline-flex;color:var(--accent)}.home-card-ico svg{width:20px;height:20px}.home-card-label{font-weight:600;font-size:.9rem;color:var(--text-soft)}.home-card-value{font-weight:700;font-size:1rem;margin-top:auto}.home-card-chip{margin-top:4px;font-size:.72rem;font-weight:700;color:#b4531f}:root[data-theme=dark] .home-card-chip{color:#e8955f}.home-prayer{display:flex;flex-direction:column;gap:10px;text-align:left;border:none;border-radius:14px;padding:16px;background:var(--bg-panel);box-shadow:var(--shadow-sm)}.home-prayer-head{display:flex;align-items:center;gap:8px}.home-prayer-head>svg:last-child{margin-left:auto;color:var(--text-faint)}.home-prayer-count{min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:.75rem;font-weight:700;line-height:20px;text-align:center}.home-prayer-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px;color:var(--text-soft);font-size:.9rem}.home-prayer-list li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-prayer-empty{font-size:.88rem;color:var(--text-faint)}.prayer-add{display:flex;gap:8px;margin-bottom:18px}.prayer-add .field{flex:1}.prayer-add .btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;padding:10px}.prayer-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.prayer-item{border-radius:14px;padding:14px;background:var(--bg-panel);box-shadow:var(--shadow-sm)}.prayer-item.is-answered .prayer-text{color:var(--text-soft)}.prayer-text{margin:0;font-size:1rem;line-height:1.5;white-space:pre-wrap}.prayer-meta{margin:6px 0 0;font-size:.78rem;color:var(--text-faint)}.prayer-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px}.prayer-btn{display:inline-flex;align-items:center;gap:5px;border:none;border-radius:9px;background:var(--bg-elev);color:var(--text-soft);padding:7px 11px;font-size:.82rem;font-weight:600}.prayer-btn:hover{background:var(--line);color:var(--text)}.prayer-btn svg{width:15px;height:15px}.prayer-btn.danger{color:#b4241f}:root[data-theme=dark] .prayer-btn.danger{color:#e8756f}.prayer-confirm{font-size:.82rem;font-weight:600;color:var(--text-soft);margin-right:2px}.prayer-edit .field{width:100%;resize:vertical}.prayer-answered{margin-top:22px}.prayer-answered-toggle{display:flex;align-items:center;gap:6px;border:none;background:transparent;color:var(--text-soft);font-weight:600;font-size:.85rem;padding:6px 0;margin-bottom:8px}.prayer-answered-toggle svg{width:16px;height:16px}.notif .btn.block{margin-top:4px}.notif-opts{margin-top:14px;display:flex;flex-direction:column;gap:12px}.notif-row{display:flex;align-items:center;gap:10px;font-size:.95rem}.notif-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);flex:0 0 auto}.notif-row select.field{margin-left:auto;width:auto;padding:8px 10px}
