:root{color:#1f2933;--page-padding-x:clamp(12px, 3vw, 32px);--page-padding-top:clamp(14px, 2vw, 22px);--page-padding-bottom:clamp(24px, 4vw, 44px);--shell-max-width:1160px;--section-gap:clamp(14px, 1.6vw, 22px);--card-padding:clamp(16px, 2vw, 22px);--panel-gap:clamp(10px, 1.4vw, 16px);--action-radius:999px;--action-padding-y:12px;--action-padding-x:16px;--action-font-size:.96rem;--action-font-weight:700;--action-chip-font-size:.93rem;--action-chip-font-weight:600;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f7f7f5;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}@keyframes fade-up-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in-soft{0%{opacity:0}to{opacity:1}}@keyframes hero-image-settle{0%{transform:scale(1.04)}to{transform:scale(1)}}*{box-sizing:border-box}body{min-width:320px;margin:0}a{color:inherit}button,input,select,textarea{font:inherit}#root{min-height:100vh}.home-page{min-height:100vh;padding:var(--page-padding-top) var(--page-padding-x) var(--page-padding-bottom);background:linear-gradient(#f7f4ed 0%,#f3efe5 42%,#ece6d9 100%)}.home-hero{max-width:var(--shell-max-width);margin:0 auto clamp(20px,3vw,32px);animation:.42s both fade-up-in}.home-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#7a5c2e;margin:0 0 8px;font-size:.78rem;font-weight:700}.home-title{color:#1b1a17;max-width:10ch;margin:0 0 10px;font-size:clamp(3rem,6vw,5.5rem);line-height:.94}.home-description{color:#4e4a42;max-width:60ch;margin:0;font-size:clamp(1.02rem,1.3vw,1.14rem)}.home-jump-bar{display:none}.home-jump-link{color:#43534d;min-height:38px;font-size:var(--action-chip-font-size);font-weight:var(--action-chip-font-weight);letter-spacing:.01em;border-radius:999px;justify-content:center;align-items:center;padding:0 14px;line-height:1;text-decoration:none;transition:transform .16s,background-color .16s,box-shadow .16s;display:inline-flex}.home-jump-link:hover{background:#dfece5e6;transform:translateY(-1px);box-shadow:0 10px 20px #2c4f4514}.home-jump-link:focus-visible{outline-offset:3px;outline:3px solid #2f5d5047}.home-sections{max-width:var(--shell-max-width);gap:var(--section-gap);align-items:flex-start;margin:0 auto;display:flex}.home-section{margin:0}.home-section-learn{flex:1 1 0}.home-section-plan{flex:0 clamp(280px,30vw,360px)}.plan-card-list{flex-direction:column;gap:clamp(10px,1.4vw,14px);display:flex}.section-heading{margin-bottom:clamp(10px,1.4vw,14px)}.section-kicker{letter-spacing:.1em;text-transform:uppercase;color:#86652d;margin:0 0 8px;font-size:.78rem;font-weight:700}.section-title{color:#201c14;margin:0;font-size:1.5rem}.lesson-grid{gap:var(--section-gap);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.lesson-card{gap:var(--panel-gap);padding:var(--card-padding);background-color:#fffcf5f5;border:1px solid #5f4a1f1f;border-radius:20px;flex-direction:column;animation:.42s both fade-up-in;display:flex;box-shadow:0 16px 40px #523e1814}.lesson-card:nth-child(2){animation-delay:60ms}.lesson-card:nth-child(3){animation-delay:.12s}.lesson-card:nth-child(4){animation-delay:.18s}.lesson-card-label{letter-spacing:.08em;text-transform:uppercase;color:#86652d;margin:0;font-size:.8rem;font-weight:700}.lesson-card-title{color:#201c14;margin:0;font-size:1.25rem;line-height:1.15}.lesson-card-description{color:#50483a;flex-grow:1;margin:0;font-size:.98rem}.lesson-card-meta{color:#6b6458;margin:0;font-size:.9rem}.lesson-card-link{padding:var(--action-padding-y) var(--action-padding-x);border-radius:var(--action-radius);color:#fffdf7;font-size:var(--action-font-size);font-weight:var(--action-font-weight);letter-spacing:.01em;background:linear-gradient(#2f5d50 0%,#274f44 100%);align-self:flex-start;align-items:center;gap:8px;line-height:1;text-decoration:none;transition:transform .16s,box-shadow .16s,filter .16s;display:inline-flex;box-shadow:0 12px 26px #274f442e}.lesson-card-link:hover{filter:brightness(1.03);transform:translateY(-1px);box-shadow:0 16px 30px #274f4438}.lesson-card-link:focus-visible,.saved-plan-link:focus-visible,.detail-back-link:focus-visible,.reference-scripture-button:focus-visible,.scripture-panel-close:focus-visible,.planner-button:focus-visible,.planner-scripture-link:focus-visible{outline-offset:3px;outline:3px solid #2f5d5047}.plan-card{gap:var(--panel-gap);padding:var(--card-padding);background:#f6faf7f0;border:1px solid #2f5d502e;border-radius:20px;flex-direction:column;animation:.42s both fade-up-in;display:flex;box-shadow:0 16px 40px #2c4f4514}.plan-card:nth-child(2){animation-delay:90ms}.plan-card-label{letter-spacing:.08em;text-transform:uppercase;color:#2f5d50;margin:0;font-size:.8rem;font-weight:700}.plan-card-title{color:#183028;margin:0;font-size:1.25rem;line-height:1.15}.plan-card-description{color:#426056;margin:0;font-size:.98rem}.plan-card-muted{box-shadow:none;background:#f5f6f4eb;border-color:#63706929}.plan-card-note{color:#41534c;background:#dde5df;border-radius:999px;align-self:flex-start;padding:6px 12px;font-size:.9rem;font-weight:600;display:inline-flex}.saved-plan-list{flex-direction:column;gap:clamp(8px,1.4vw,12px);display:flex}.saved-plan-link{color:#27443a;background:#edf3ef;border:1px solid #2f5d501a;border-radius:14px;flex-direction:column;gap:4px;padding:10px 12px;text-decoration:none;transition:transform .16s,box-shadow .16s,background-color .16s;animation:.36s both fade-up-in;display:flex}.saved-plan-link:hover{background:#e5ede7;transform:translateY(-1px);box-shadow:0 12px 24px #2c4f4514}.saved-plan-name{font-weight:700}.saved-plan-meta{color:#4d655d;font-size:.85rem}.detail-page{min-height:100vh;padding:var(--page-padding-top) var(--page-padding-x) var(--page-padding-bottom);background:linear-gradient(#f5f1e9 0%,#efe7d7 100%)}.detail-shell{max-width:var(--shell-max-width);margin:0 auto}.detail-back-link{border-radius:var(--action-radius);color:#43534d;font-size:var(--action-chip-font-size);font-weight:var(--action-chip-font-weight);letter-spacing:.01em;background:#fffbf2d1;border:1px solid #5f4a1f24;align-items:center;gap:8px;margin-bottom:clamp(12px,2vw,18px);padding:11px 15px;line-height:1;text-decoration:none;transition:background-color .16s,border-color .16s,transform .16s,box-shadow .16s;display:inline-flex;box-shadow:0 10px 24px #523e180f}.detail-back-link:before{content:"←";font-size:.95rem}.detail-back-link:hover{background:#f6efe1f5;border-color:#5f4a1f38;transform:translateY(-1px);box-shadow:0 14px 28px #523e1817}.detail-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:#7a5c2e;margin:0 0 6px;font-size:.8rem;font-weight:700}.detail-title{color:#1e1a13;margin:0 0 10px;font-size:clamp(2rem,4vw,3.4rem);line-height:1.08}.detail-description{color:#50483a;max-width:60ch;margin:0 0 clamp(14px,2vw,20px);font-size:1.05rem}.detail-header-row{justify-content:space-between;align-items:flex-start;gap:clamp(14px,1.8vw,22px);margin-bottom:clamp(12px,1.8vw,18px);display:flex}.detail-header-copy{flex-direction:column;flex:auto;gap:0;min-width:0;max-width:760px;display:flex}.detail-header-action{flex:none;justify-content:flex-end;align-items:flex-start;padding-top:4px;display:flex}.lesson-hero{width:100%;min-height:clamp(340px,52vw,560px);margin-bottom:clamp(10px,1.6vw,16px);position:relative;overflow:hidden}.lesson-hero-image{object-fit:cover;width:100%;height:100%;animation:.36s both fade-in-soft,.72s both hero-image-settle;position:absolute;inset:0}.lesson-hero-overlay{min-height:inherit;background:linear-gradient(#0c0a0785 0%,#0c0a0738 26%,#0c0a07c2 100%);position:relative}.lesson-hero-content{max-width:var(--shell-max-width);min-height:inherit;padding:clamp(14px, 2vw, 20px) var(--page-padding-x) clamp(16px, 2.4vw, 24px);flex-direction:column;justify-content:space-between;margin:0 auto;animation:.42s both fade-up-in;display:flex}.lesson-hero-row{justify-content:space-between;align-items:flex-end;gap:clamp(12px,1.8vw,20px);display:flex}.lesson-hero-copy{max-width:760px}.lesson-hero-eyebrow,.lesson-hero-title,.lesson-hero-description{color:#fff9ef;text-shadow:0 2px 14px #00000061}.lesson-hero-title{text-wrap:balance;margin-bottom:8px}.lesson-hero-description{color:#fff9efeb;max-width:58ch;margin-bottom:0}.detail-back-link-hero{color:#fff9ef;box-shadow:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#12100c3d;border-color:#fff9ef42;align-self:flex-start}.detail-back-link-hero:hover{box-shadow:none;background:#12100c52;border-color:#fff9ef5c}.lesson-hero-action .lesson-card-link{box-shadow:0 18px 34px #12241f42}.detail-panel-list{gap:var(--section-gap);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.detail-panel{gap:var(--panel-gap);padding:var(--card-padding);background:#fffcf5f2;border:1px solid #5f4a1f1f;border-radius:20px;flex-direction:column;display:flex;box-shadow:0 16px 40px #523e1814}.detail-panel-title{color:#201c14;margin:0;font-size:1.2rem}.detail-panel-copy{color:#4e4a42;margin:0}.reference-point-list{gap:clamp(12px,1.6vw,18px);display:grid}.reference-point-card{padding:var(--card-padding);background:#fffcf5f2;border:1px solid #5f4a1f1f;border-radius:20px;grid-template-columns:minmax(0,1.6fr) minmax(240px,.95fr);gap:clamp(10px,1.4vw,16px) clamp(14px,1.8vw,20px);animation:.38s both fade-up-in;display:grid;box-shadow:0 16px 40px #523e1814}.reference-point-card:nth-child(2){animation-delay:50ms}.reference-point-card:nth-child(3){animation-delay:.1s}.reference-point-card:nth-child(4){animation-delay:.15s}.reference-point-card:nth-child(5){animation-delay:.2s}.reference-point-main{flex-direction:column;gap:8px;min-width:0;display:flex}.reference-point-label{letter-spacing:.08em;text-transform:uppercase;color:#86652d;margin:0;font-size:.8rem;font-weight:700}.reference-point-title{color:#201c14;margin:0;font-size:1.3rem;line-height:1.15}.reference-point-summary{color:#4e4a42;margin:0;font-size:.98rem}.reference-scripture-block{background:#f4eee2b8;border-radius:16px;flex-direction:column;align-self:start;gap:8px;padding:10px 12px;display:flex}.reference-scripture-heading{color:#5e564a;margin:0;font-size:.9rem}.reference-scripture-list{color:#3e4e48;flex-direction:column;gap:5px;margin:0;padding-left:0;list-style:none;display:flex}.reference-scripture-button{color:#2f5d50;width:100%;font:inherit;font-size:var(--action-chip-font-size);font-weight:var(--action-chip-font-weight);letter-spacing:.01em;text-align:left;cursor:pointer;background:#e8f1ecc7;border:1px solid #2f5d501f;border-radius:999px;justify-content:flex-start;align-items:center;gap:6px;padding:6px 10px;line-height:1.1;text-decoration:none;transition:transform .16s,background-color .16s,border-color .16s,box-shadow .16s;display:inline-flex}.reference-scripture-button:hover{color:#274f44;background:#dfece5f5;border-color:#2f5d5033;transform:translateY(-1px);box-shadow:0 10px 22px #2c4f4514}.scripture-panel{opacity:0;pointer-events:none;background:#fffaf0;border-left:1px solid #5f4a1f1f;width:min(460px,100%);height:100vh;padding:clamp(20px,3vw,28px);transition:transform .22s,opacity .22s;position:fixed;top:0;right:0;overflow-y:auto;transform:translate(100%);box-shadow:-20px 0 40px #32260f1f}.scripture-panel-open{opacity:1;pointer-events:auto;transform:translate(0)}.scripture-panel-header{justify-content:space-between;align-items:flex-start;gap:clamp(12px,2vw,18px);margin-bottom:clamp(12px,2vw,18px);display:flex}.scripture-panel-label{letter-spacing:.08em;text-transform:uppercase;color:#86652d;margin:0 0 6px;font-size:.78rem;font-weight:700}.scripture-panel-title{color:#201c14;margin:0;font-size:1.25rem}.scripture-panel-close{border-radius:var(--action-radius);color:#4f4635;font:inherit;font-size:var(--action-chip-font-size);font-weight:var(--action-chip-font-weight);letter-spacing:.01em;cursor:pointer;background:#f2ebdb;border:1px solid #5f4a1f29;padding:10px 14px;line-height:1;transition:transform .16s,background-color .16s,border-color .16s}.scripture-panel-close:hover{background:#ece2cd;border-color:#5f4a1f3d;transform:translateY(-1px)}.scripture-panel-message,.scripture-panel-error,.scripture-panel-pretty,.scripture-panel-verse-text{margin:0}.scripture-panel-error{color:#8a2d2d}.scripture-panel-content{flex-direction:column;gap:clamp(12px,2vw,18px);animation:.24s both fade-up-in;display:flex}.scripture-panel-pretty{color:#3d3427;font-weight:700}.scripture-panel-verse{background:#f7f0e1;border-radius:16px;flex-direction:column;gap:8px;padding:clamp(14px,2vw,18px);display:flex}.scripture-panel-verse-reference{color:#2a241a;margin:0;font-size:1rem}.scripture-panel-verse-text{color:#4d473b}.planner-shell{gap:var(--section-gap);grid-template-columns:minmax(300px,380px) minmax(0,1fr);align-items:start;display:grid}.planner-sidebar{position:sticky;top:clamp(16px,3vw,24px)}.planner-main{min-width:0}.planner-toolbar{padding:var(--card-padding);background:#fffcf5f2;border:1px solid #5f4a1f1f;border-radius:20px;flex-direction:column;gap:clamp(12px,1.2vw,16px);display:flex;box-shadow:0 16px 40px #523e1814}.planner-field{flex-direction:column;gap:6px;display:flex}.planner-field-label{letter-spacing:.05em;text-transform:uppercase;color:#6d5a35;font-size:.85rem;font-weight:700}.planner-select,.planner-notes{width:100%;font:inherit;color:#2b2821;background:#fffdf8;border:1px solid #cfc3aa;border-radius:14px;padding:12px 14px}.planner-select:focus-visible,.planner-notes:focus-visible{outline-offset:2px;border-color:#2f5d5061;outline:3px solid #2f5d5033}.planner-notes{resize:vertical;min-height:120px}.planner-plan-note{flex-direction:column;gap:4px;min-width:220px;display:flex}.planner-plan-copy{color:#4e4a42;margin:0}.planner-actions{flex-wrap:wrap;gap:clamp(8px,1vw,10px);display:flex}.planner-button{border-radius:var(--action-radius);padding:var(--action-padding-y) var(--action-padding-x);font:inherit;font-size:var(--action-font-size);font-weight:var(--action-font-weight);letter-spacing:.01em;color:#fffdf7;cursor:pointer;background:linear-gradient(#2f5d50 0%,#274f44 100%);border:none;line-height:1;transition:transform .16s,box-shadow .16s,filter .16s;box-shadow:0 12px 26px #274f442e}.button-icon{flex:none;width:1.05rem;height:1.05rem}.planner-button-icon-only{justify-content:center;width:44px;height:44px;padding:0}.planner-button-muted{color:#3d4f47;box-shadow:none;background:linear-gradient(#dfe5e1 0%,#d5dcd7 100%);border:1px solid #3d4f471a}.planner-button:hover:not(:disabled){filter:brightness(1.03);transform:translateY(-1px);box-shadow:0 16px 30px #274f4438}.planner-button-muted:hover:not(:disabled){box-shadow:0 10px 20px #3d4f4714}.planner-button:disabled{opacity:.5;cursor:not-allowed}.planner-point-list{gap:var(--section-gap);display:grid}.planner-point-card{padding:var(--card-padding);background:#fffcf5f2;border:1px solid #5f4a1f1f;border-radius:20px;grid-template-columns:minmax(0,1.6fr) minmax(250px,.95fr);gap:clamp(10px,1.4vw,16px) clamp(14px,1.8vw,20px);animation:.38s both fade-up-in;display:grid;box-shadow:0 16px 40px #523e1814}.planner-point-card:nth-child(2){animation-delay:50ms}.planner-point-card:nth-child(3){animation-delay:.1s}.planner-point-card:nth-child(4){animation-delay:.15s}.planner-point-card:nth-child(5){animation-delay:.2s}.planner-point-main{flex-direction:column;gap:10px;min-width:0;display:flex}.planner-scripture-group{background:#f4eee2b8;border-radius:16px;flex-direction:column;align-self:start;gap:8px;padding:8px 10px;display:flex}.planner-custom-scripture{flex-direction:column;gap:8px;display:flex}.planner-custom-scripture-row{flex-wrap:wrap;align-items:center;gap:clamp(8px,1.5vw,12px);display:flex}.planner-custom-scripture-row .planner-select{flex:auto}.planner-custom-scripture-error{color:#8a2d2d;margin:0}.planner-custom-scripture-list{flex-direction:column;gap:8px;display:flex}.planner-custom-scripture-actions{gap:8px;display:inline-flex}.planner-scripture-list{flex-direction:column;gap:4px;display:flex}.planner-scripture-option{color:#3f433c;background:#f6f2e8;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px;padding:7px 8px;display:grid}.planner-scripture-toggle{align-items:flex-start;gap:8px;min-width:0;font-size:.95rem;display:inline-flex}.planner-scripture-toggle input:focus-visible{outline-offset:2px;outline:3px solid #2f5d5038}.planner-scripture-link{color:#2f5d50;font:inherit;font-size:var(--action-chip-font-size);font-weight:var(--action-chip-font-weight);letter-spacing:.01em;cursor:pointer;background:#e8f1ecd1;border:1px solid #2f5d501f;border-radius:999px;align-items:center;gap:6px;padding:8px 12px;line-height:1;text-decoration:none;transition:transform .16s,background-color .16s,border-color .16s,box-shadow .16s;display:inline-flex}.planner-scripture-link-icon-only{justify-content:center;align-self:start;width:30px;height:30px;padding:0}.planner-scripture-link:hover{color:#274f44;background:#dfece5f5;border-color:#2f5d5033;transform:translateY(-1px);box-shadow:0 10px 22px #2c4f4514}@media (width<=640px){.home-jump-bar{z-index:10;max-width:var(--shell-max-width);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffbf2d6;border:1px solid #5f4a1f1f;border-radius:999px;gap:8px;width:100%;margin:0 auto clamp(16px,2vw,22px);padding:8px;display:flex;position:sticky;top:8px;box-shadow:0 12px 28px #523e1814}.home-jump-link{flex:1 1 0}.home-sections{flex-direction:column}.home-section-plan{flex-basis:auto;width:100%}.detail-header-row{flex-direction:column}.detail-header-action{padding-top:0}.lesson-hero{min-height:clamp(300px,78vw,420px)}.lesson-hero-row{flex-direction:column;align-items:flex-start}.reference-point-card,.planner-shell{grid-template-columns:1fr}.planner-sidebar{position:static}.planner-toolbar{padding:20px}.lesson-grid{grid-template-columns:1fr}.planner-custom-scripture-actions{justify-content:flex-end;width:100%}.planner-point-card{grid-template-columns:1fr}}@media (width>=1440px){:root{--shell-max-width:1220px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation:none!important}}
