@import "https://fonts.googleapis.com/css2?family=Cinzel:wght@500;700&family=Inter:wght@400;500;600;700&family=Lora:ital,wght@0,400;0,600;1,400&family=Merriweather:ital,wght@0,300;0,400;0,700;1,300&family=Montserrat:wght@400;600;700&family=Nunito:wght@400;600;700&family=Outfit:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,600;1,400&display=swap";:root{--font-sans:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-serif:"Playfair Display", Georgia, Cambria, serif;--font-title:var(--font-sans);--font-body:var(--font-serif);--font-ui:var(--font-sans);--font-scale:1;--border-radius-sm:8px;--border-radius-md:16px;--border-radius-lg:24px;--transition-fast:.2s ease;--transition-normal:.3s cubic-bezier(.4, 0, .2, 1);--bg-app:#f4f6fa;--bg-card:#ffffffb3;--bg-card-hover:#ffffffd9;--bg-glass-nav:#fffc;--border-glass:#e2e8f0cc;--text-main:#1e293b;--text-muted:#64748b;--text-on-primary:#fff;--primary:#4b7767;--primary-light:#e9f1ee;--primary-hover:#3b5e51;--accent:#af926a;--success:#20ac53;--danger:#f43e5c;--warning:#f59f0a;--shadow-sm:0 2px 8px -2px #0000000d;--shadow-md:0 12px 24px -4px #00000014;--shadow-lg:0 24px 48px -12px #0000001f;--blur-glass:16px}[data-theme=dark]{--bg-app:#0b0f19;--bg-card:#11182799;--bg-card-hover:#111827cc;--bg-glass-nav:#0b0f19cc;--border-glass:#ffffff14;--text-main:#f1f5f9;--text-muted:#94a3b8;--text-on-primary:#fff;--primary:#74b49c;--primary-light:#72b19726;--primary-hover:#95c6b4;--accent:#cab291;--success:#24db67;--danger:#fb516d;--warning:#fab338;--shadow-sm:0 2px 8px -2px #0003;--shadow-md:0 12px 32px -8px #0006;--shadow-lg:0 32px 64px -16px #0009}*{box-sizing:border-box;margin:0;padding:0}html{font-size:calc(100% * var(--font-scale))}.size-small{--font-scale:.85}.size-medium{--font-scale:1}.size-large{--font-scale:1.15}.size-xl{--font-scale:1.3}.theme-font-modern{--font-sans:"Outfit", sans-serif;--font-serif:"Playfair Display", serif;--font-title:var(--font-sans);--font-body:var(--font-serif);--font-ui:var(--font-sans)}.theme-font-editorial{--font-sans:"Inter", sans-serif;--font-serif:"Lora", serif;--font-title:var(--font-serif);--font-body:var(--font-serif);--font-ui:var(--font-sans)}.theme-font-warm{--font-sans:"Nunito", sans-serif;--font-serif:"Merriweather", serif;--font-title:var(--font-serif);--font-body:var(--font-serif);--font-ui:var(--font-sans)}.theme-font-majestic{--font-sans:"Montserrat", sans-serif;--font-serif:"Cinzel", serif;--font-title:var(--font-serif);--font-body:var(--font-serif);--font-ui:var(--font-sans)}body{font-family:var(--font-ui);background-color:var(--bg-app);color:var(--text-main);-webkit-font-smoothing:antialiased;transition:background-color var(--transition-normal), color var(--transition-normal);background-image:radial-gradient(circle at 10% 20%, var(--primary-light) 0%, transparent 40%), radial-gradient(circle at 90% 80%, #f973160d 0%, transparent 40%);background-attachment:fixed;min-height:100vh;line-height:1.6}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-glass);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.app-container{max-width:760px;margin:0 auto;padding:16px 12px 100px}@media (width>=600px){.app-container{padding:24px 16px}}.header-glass{background:var(--bg-card);-webkit-backdrop-filter:blur(var(--blur-glass));backdrop-filter:blur(var(--blur-glass));border:1px solid var(--border-glass);border-radius:var(--border-radius-md);text-align:left;box-shadow:var(--shadow-md);flex-direction:row;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:10px 16px;display:flex}@media (width>=600px){.header-glass{margin-bottom:20px;padding:14px 20px}}.brand-section h1{font-family:var(--font-title);background:linear-gradient(135deg, var(--primary), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;justify-content:center;align-items:center;gap:8px;font-size:1.5rem;font-weight:700;display:inline-flex}@media (width>=600px){.brand-section h1{justify-content:flex-start;font-size:1.8rem}}.brand-section p{color:var(--text-muted);font-size:.8rem;font-weight:400}.header-controls{justify-content:center;align-items:center;gap:12px;display:flex}@media (width>=600px){.header-controls{justify-content:flex-end}}.active-plan-banner-wrapper{background:var(--bg-card);-webkit-backdrop-filter:blur(var(--blur-glass));backdrop-filter:blur(var(--blur-glass));border:1px solid var(--border-glass);border-radius:var(--border-radius-md);text-align:left;box-shadow:var(--shadow-sm);transition:all var(--transition-normal);flex-direction:row;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;display:flex}@media (width>=600px){.active-plan-banner-wrapper{margin-bottom:20px;padding:16px 20px}}.active-plan-info h2{color:var(--text-main);font-size:1.1rem;font-weight:600}@media (width>=600px){.active-plan-info h2{font-size:1.2rem}}.active-plan-info p{color:var(--text-muted);font-size:.8rem}.progress-bar-container{background:var(--border-glass);border-radius:4px;width:100%;max-width:200px;height:8px;margin:8px auto 0;overflow:hidden}@media (width>=600px){.progress-bar-container{width:150px;margin:8px 0 0}}.progress-bar-fill{background:linear-gradient(90deg, var(--primary), var(--accent));border-radius:4px;height:100%;transition:width .4s}.tabs-navigation{z-index:100;background:var(--bg-glass-nav);-webkit-backdrop-filter:blur(var(--blur-glass));backdrop-filter:blur(var(--blur-glass));border:1px solid var(--border-glass);border-radius:var(--border-radius-lg);gap:4px;margin-bottom:0;padding:8px;display:flex;position:fixed;bottom:12px;left:12px;right:12px;box-shadow:0 -4px 20px #00000026}@media (width>=600px){.tabs-navigation{box-shadow:var(--shadow-md);margin-bottom:24px;position:static}}.tab-btn{color:var(--text-muted);font-family:var(--font-ui);border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;padding:10px;font-size:.85rem;font-weight:500;display:flex}@media (width>=600px){.tab-btn{flex-direction:row;gap:8px;padding:12px;font-size:.95rem}}.tab-btn:hover{color:var(--text-main);background:#ffffff0d}.tab-btn.active{color:var(--text-on-primary);background:var(--primary);box-shadow:0 4px 14px -3px #8b5cf680}.content-grid{flex-direction:column;gap:20px;width:100%;max-width:760px;margin:0 auto;display:flex}@media (width>=768px){.content-grid{gap:24px}}.sidebar-card{background:var(--bg-card);-webkit-backdrop-filter:blur(var(--blur-glass));backdrop-filter:blur(var(--blur-glass));border:1px solid var(--border-glass);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);flex-direction:column;padding:16px;display:flex}@media (width>=768px){.sidebar-card{max-height:80vh;padding:20px}}.sidebar-title{color:var(--text-main);justify-content:space-between;align-items:center;margin-bottom:12px;font-size:.95rem;font-weight:600;display:flex}.items-grid{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}@media (width>=768px){.items-grid{flex:1;grid-template-columns:repeat(5,1fr);gap:8px;padding-right:4px;overflow-y:auto}}.item-selector-trigger:hover{background:var(--primary-light)!important}.item-circle{aspect-ratio:1;border:1px solid var(--border-glass);width:38px;height:38px;color:var(--text-main);font-family:var(--font-ui);cursor:pointer;transition:all var(--transition-fast);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:500;display:flex}.item-circle:hover{background:var(--border-glass);transform:scale(1.05)}.item-circle.active{border-color:var(--primary);background:var(--primary-light);color:var(--primary);box-shadow:0 0 0 1px var(--primary);font-weight:700}.item-circle.completed{background:var(--success);border-color:var(--success);color:#fff}.item-circle.completed.active{box-shadow:0 0 0 3px var(--bg-app), 0 0 0 5px var(--success)}.main-content-card{background:var(--bg-card);-webkit-backdrop-filter:blur(var(--blur-glass));backdrop-filter:blur(var(--blur-glass));border:1px solid var(--border-glass);border-radius:var(--border-radius-md);box-shadow:var(--shadow-md);transition:background var(--transition-normal);flex-direction:column;gap:20px;padding:20px 16px;display:flex}@media (width>=600px){.main-content-card{gap:24px;padding:32px}}.item-view-header{border-bottom:1px solid var(--border-glass);flex-direction:column;align-items:stretch;gap:16px;padding-bottom:16px;display:flex}@media (width>=600px){.item-view-header{flex-direction:row;justify-content:space-between;align-items:center;padding-bottom:20px}}.item-view-title h2{font-family:var(--font-title);margin-bottom:4px;font-size:1.4rem;font-weight:600}@media (width>=600px){.item-view-title h2{font-size:1.8rem}}.item-view-subtitle{color:var(--text-muted);font-size:.85rem;font-weight:500}.btn{font-family:var(--font-ui);border-radius:var(--border-radius-sm);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:.85rem;font-weight:500;display:inline-flex}@media (width>=600px){.btn{padding:8px 16px;font-size:.9rem}}.btn-primary{background-color:var(--primary);color:var(--text-on-primary);box-shadow:0 4px 12px -2px #8b5cf64d}.btn-primary:hover{background-color:var(--primary-hover);transform:translateY(-1px);box-shadow:0 6px 16px -2px #8b5cf666}.btn-secondary{background-color:var(--border-glass);color:var(--text-main);border:1px solid var(--border-glass)}.btn-secondary:hover{background-color:var(--bg-card-hover);border-color:var(--text-muted)}.btn-danger{background-color:var(--danger);color:var(--text-on-primary)}.icon-btn{border:1px solid var(--border-glass);color:var(--text-main);border-radius:var(--border-radius-sm);cursor:pointer;width:36px;height:36px;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;font-size:1rem;display:flex}.icon-btn:hover{background:var(--border-glass)}.complete-btn-container{align-items:center;display:flex}.complete-checkbox-label{cursor:pointer;border-radius:var(--border-radius-sm);background:var(--border-glass);width:100%;transition:all var(--transition-fast);justify-content:center;align-items:center;gap:10px;padding:10px 16px;font-size:.9rem;font-weight:600;display:inline-flex}@media (width>=600px){.complete-checkbox-label{width:auto;padding:8px 16px;font-size:.95rem}}.complete-checkbox-label.completed{background:var(--success);color:#fff}.complete-checkbox-label input,.form-group-checkbox input{opacity:0;cursor:pointer;width:0;height:0;position:absolute}.checkmark{border:2px solid var(--text-muted);width:18px;height:18px;transition:all var(--transition-fast);border-radius:4px;justify-content:center;align-items:center;display:inline-flex}.complete-checkbox-label.completed .checkmark{background:#fff;border-color:#fff}.checkmark:after{content:"✓";color:#0000;transition:color var(--transition-fast);font-size:.75rem;font-weight:700}.complete-checkbox-label.completed .checkmark:after{color:var(--success)}.form-group-checkbox input:checked~.checkmark{background:var(--success);border-color:var(--success)}.form-group-checkbox input:checked~.checkmark:after{color:#fff}.passage-section{flex-direction:column;gap:12px;display:flex}.section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);border-bottom:1px dashed var(--border-glass);margin-top:16px;margin-bottom:8px;padding-bottom:6px;font-size:.8rem;font-weight:700}.passage-list{flex-direction:column;gap:10px;display:flex}.passage-row{background:var(--border-glass);border-radius:var(--border-radius-sm);flex-direction:column;align-items:stretch;gap:10px;padding:10px 12px;display:flex}@media (width>=600px){.passage-row{flex-direction:row;justify-content:space-between;align-items:center;padding:12px 16px}}.passage-title{font-size:1rem;font-weight:600}.passage-actions{gap:8px;display:flex}.passage-actions a,.passage-actions button{flex:1}.bible-text-panel{border-left:3px solid var(--primary);border-radius:0 var(--border-radius-sm) var(--border-radius-sm) 0;font-family:var(--font-body);color:var(--text-main);text-align:justify;background:#00000008;margin-top:8px;padding:12px 16px;font-size:1rem;line-height:1.6}[data-theme=dark] .bible-text-panel{background:#ffffff05}.devotional-section{flex-direction:column;gap:10px;display:flex}.devotional-title{font-family:var(--font-title);font-size:1.3rem;font-weight:600}@media (width>=600px){.devotional-title{font-size:1.5rem}}.devotional-author{color:var(--text-muted);margin-top:-6px;font-size:.8rem;font-weight:500}.devotional-content{color:var(--text-main);white-space:pre-line;font-size:.95rem;line-height:1.6}@media (width>=600px){.devotional-content{font-size:1.05rem}}.devotional-media-container{flex-direction:column;gap:12px;margin:12px 0;display:flex}.media-image-wrapper img{object-fit:cover;border-radius:var(--border-radius-sm);border:1px solid var(--border-glass);width:100%;max-height:250px}@media (width>=600px){.media-image-wrapper img{max-height:380px}}.media-image-caption{color:var(--text-muted);text-align:center;margin-top:4px;font-size:.75rem;font-style:italic}.media-video-wrapper iframe{aspect-ratio:16/9;border-radius:var(--border-radius-sm);border:1px solid var(--border-glass);width:100%}.media-audio-wrapper{background:var(--border-glass);border-radius:var(--border-radius-sm);flex-direction:column;gap:6px;padding:10px 12px;display:flex}.audio-title{font-size:.8rem;font-weight:600}.media-audio-wrapper audio{width:100%;height:32px}.prayers-list{flex-direction:column;gap:12px;display:flex}.prayer-item-card{background:var(--border-glass);border-radius:var(--border-radius-sm);border-left:4px solid var(--accent);padding:12px}.prayer-topic{color:var(--accent);margin-bottom:4px;font-size:.95rem;font-weight:700}.prayer-desc{color:var(--text-main);font-size:.95rem;line-height:1.6}@media (width>=600px){.prayer-desc{font-size:1.05rem}}.questions-list,.action-steps-list{flex-direction:column;gap:10px;padding-left:20px;display:flex}.questions-list li,.action-steps-list li{color:var(--text-main);margin-bottom:4px;font-size:.95rem;line-height:1.6}@media (width>=600px){.questions-list li,.action-steps-list li{font-size:1.05rem}}.journal-panel{flex-direction:column;gap:12px;display:flex}.journal-header{justify-content:space-between;align-items:center;display:flex}.journal-status{color:var(--text-muted);font-size:.75rem}.journal-textarea{border-radius:var(--border-radius-sm);border:1px solid var(--border-glass);background:var(--bg-app);width:100%;min-height:200px;color:var(--text-main);font-family:var(--font-ui);resize:vertical;transition:border-color var(--transition-fast);outline:none;padding:12px;font-size:.95rem;line-height:1.5}.journal-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.timer-card{background:var(--border-glass);border-radius:var(--border-radius-sm);flex-direction:column;align-items:center;gap:12px;margin-top:8px;padding:16px;display:flex}.timer-title{text-transform:uppercase;color:var(--text-muted);font-size:.85rem;font-weight:700}.timer-modes{border-radius:var(--border-radius-sm);background:#0000000d;gap:4px;padding:4px;display:flex}[data-theme=dark] .timer-modes{background:#ffffff08}.mode-btn{color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:4px;padding:4px 6px;font-size:.75rem;font-weight:600}.mode-btn.active{background:var(--bg-card);color:var(--text-main);box-shadow:var(--shadow-sm)}.timer-display-container{justify-content:center;align-items:center;width:120px;height:120px;display:flex;position:relative}.timer-svg{width:100%;height:100%;position:absolute;top:0;left:0;transform:rotate(-90deg)}.timer-ring-bg{stroke:var(--border-glass);stroke-width:4px;fill:#0000}.timer-ring-fg{stroke:var(--primary);stroke-width:4px;fill:#0000;stroke-linecap:round;transition:stroke-dashoffset .3s linear}.timer-time{z-index:1;font-family:monospace;font-size:1.6rem;font-weight:700}.timer-controls{gap:8px;width:100%;display:flex}.timer-controls button{flex:1}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;width:100vw;height:100vh;animation:fadeIn var(--transition-fast);background:#00000080;justify-content:center;align-items:flex-end;display:flex;position:fixed;top:0;left:0}@media (width>=600px){.modal-backdrop{align-items:center}}.modal-content{background:var(--bg-app);border:1px solid var(--border-glass);border-radius:var(--border-radius-md) var(--border-radius-md) 0 0;width:100%;max-width:550px;max-height:80vh;box-shadow:var(--shadow-lg);animation:slideUp var(--transition-normal);flex-direction:column;display:flex}@media (width>=600px){.modal-content{border-radius:var(--border-radius-md)}}.modal-header{border-bottom:1px solid var(--border-glass);justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.modal-header h2{font-size:1.15rem;font-weight:600}@media (width>=600px){.modal-header h2{font-size:1.3rem}}.close-btn{cursor:pointer;color:var(--text-muted);transition:color var(--transition-fast);background:0 0;border:none;font-size:1.8rem;line-height:1}.modal-body{flex:1;padding:16px;overflow-y:auto}@media (width>=600px){.modal-body{padding:24px}}.form-group{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.form-group label{color:var(--text-muted);font-size:.85rem;font-weight:600}.form-group select,.form-group input{border-radius:var(--border-radius-sm);border:1px solid var(--border-glass);background:var(--bg-card);color:var(--text-main);font-family:var(--font-ui);outline:none;padding:8px 10px;font-size:.9rem}.plans-list{flex-direction:column;gap:12px;display:flex}.plan-card{background:var(--bg-card);border:1px solid var(--border-glass);border-radius:var(--border-radius-sm);transition:all var(--transition-fast);flex-direction:column;gap:10px;padding:12px;display:flex}.plan-card.active{border-color:var(--primary);background:var(--primary-light)}.plan-card-header{justify-content:space-between;align-items:center;display:flex}.plan-badge{background:var(--border-glass);border-radius:10px;padding:2px 6px;font-size:.7rem;font-weight:700}.plan-badge.reading_plan{color:var(--primary);background:var(--primary-light)}.plan-badge.prayer_guide{color:var(--accent);background:#f9731626}.active-badge{color:var(--success);background:#10b98126;border-radius:10px;padding:2px 6px;font-size:.7rem;font-weight:700}.plan-card-title{font-size:1rem;font-weight:600}.plan-card-desc{color:var(--text-muted);font-size:.85rem}.plan-card-meta{color:var(--text-muted);flex-wrap:wrap;gap:12px;font-size:.75rem;display:flex}.plan-card-actions{gap:8px;display:flex}.plan-card-actions button{flex:1}.scheduling-form{flex-direction:column;gap:12px;display:flex}.schedule-plan-name{font-size:1rem;font-weight:700}.scheduling-actions{gap:8px;display:flex}.scheduling-actions button{flex:1}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:1.2s linear infinite spin}.empty-view{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:300px;padding:20px;display:flex}.empty-view-icon{font-size:3rem}.footer-text{text-align:center;color:var(--text-muted);margin-top:30px;font-size:.75rem}.plan-card-body{align-items:flex-start;gap:16px;margin:12px 0;display:flex}.plan-card-icon{border-radius:var(--border-radius-sm);object-fit:cover;border:1px solid var(--border-glass);flex-shrink:0;width:64px;height:64px}.plan-card-icon-fallback{border-radius:var(--border-radius-sm);background:var(--border-glass);flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;font-size:1.8rem;display:flex}.share-session-trigger{opacity:.85}.share-session-trigger:hover{opacity:1;color:var(--primary)!important;background:var(--primary-light)!important}.session-selector-row{box-shadow:0 1px 2px #0000000d}.session-selector-row:hover{transform:translateY(-1px);background:var(--border-glass)!important}.session-selector-row.active{border-color:var(--primary)!important;background:var(--primary-light)!important}.session-selector-row.active:hover{opacity:.95;background:var(--primary-light)!important}.session-selector-row.completed .circle-indicator{border-color:#0000!important}
