/* Abide Garden — grounded olive, timber, stone, and brushed brass. */
:root { --paper:#19241f; --white:#e8e5da; --ink:#203027; --muted:#b5bcb1; --line:#506056; --green:#244b38; --green2:#527355; --sage:#d9dfd1; --gold:#c3a15e; --stone:#e5e3da; }
body { background:#131b17; color:#edf0e9; font-size:15px; }
.app-shell { background:#18231e; }
.sidebar { width:244px; padding:25px 16px 18px; color:#edf0e9; background:#17241e linear-gradient(180deg,#20352a,#15211b); border-right:1px solid #485545; box-shadow:inset -1px 0 #a78a4a33; }
.brand { color:#f0eee4; font-size:28px; }.brand-dot { color:#d0af68; }
.brand-mark { width:34px; height:34px; border:0; border-radius:0; background:transparent; overflow:hidden; }
.brand-mark .abide-atlas-icon { width:34px; height:34px; background-size:340px 1700px; background-position:-136px 0; }
.side-label { padding:38px 13px 13px; color:#a7b09f; }
.primary-nav { gap:9px; }
.nav-item { min-height:58px; height:auto; gap:12px; padding:6px 8px; border:1px solid transparent; border-radius:5px; color:#e0e5dc; font-size:13px; }
.nav-item:hover,.nav-item.active { background:#344438; border-color:#9d844f; color:#fffaf0; }
.nav-item.active { box-shadow:inset 3px 0 #d1ae60; }
.nav-icon-frame { --icon-size:44px; --icon-frame-border:6px; display:inline-grid; width:44px; height:44px; flex:0 0 44px; padding:0; border-radius:0; background-color:transparent; }
.nav-icon-frame .abide-atlas-icon,.mobile-icon-frame .abide-atlas-icon { display:block; width:32px; height:32px; background-repeat:no-repeat; background-size:320px 1600px; }
.nav-item[data-page="home"] .nav-icon-frame .abide-atlas-icon { background-position:-128px 0; }
.nav-item[data-page="lessons"] .nav-icon-frame .abide-atlas-icon { background-position:-160px 0; }
.nav-item[data-page="journal"] .nav-icon-frame .abide-atlas-icon { background-position:-96px 0; }
.maker-nav-frame { display:grid; place-items:center; }
.maker-nav-symbol { color:#d8bd78; font:400 26px/1 var(--serif); }
.nav-count { color:#c7cbbc; font-size:11px; }
.verse-card { margin:0 2px 15px; padding:15px 13px; color:#ecede2; background:#273a2e; border:1px solid #6e765a; border-left:3px solid #c5a15c; border-radius:3px; }
.verse-card .verse-label { color:#c1c8b7; }.verse-card p { color:#f1e7cb; font-size:21px; }.verse-card>span:last-of-type { color:#c8b984; }.verse-leaf { display:none; }
.profile-button { border-color:#586456; color:#e7e8df; padding-top:13px; }.avatar { background:#3e523f; color:#f3e7c6; }.profile-copy small,.more { color:#b4bdb1; }
.main-content { max-width:1600px; min-height:100vh; padding:0 clamp(28px,4vw,64px) 44px; background:#19251f; }
.topbar { height:66px; border-color:#596358; color:#e8eadf; background:#1c211e; box-shadow:0 2px 0 #080d0b55; }
.breadcrumb { color:#c0c6ba; font-size:12px; }.breadcrumb span:last-child { color:#f1f0e8; }.crumb-slash { color:#7b857a; }
.save-status { color:#c0c8bd; font-size:11px; }.save-status i { background:#a2b27e; }.icon-button { width:30px; height:30px; color:#f0e7cf; border-color:#8e7844; }
.mobile-brand { color:#f2f0e6; font:600 22px var(--serif); letter-spacing:-.6px; align-items:center; gap:5px; }
.page-view { padding-top:25px; }
.eyebrow,.side-label,.verse-label,.reading-label,.detail-panel label,.journal-editor label,.commit-verse span { color:#778475; font-size:10px; letter-spacing:1.4px; }
.welcome-row { min-height:282px; align-items:center; overflow:hidden; padding:32px 38px; margin:0 -12px 18px; border-bottom:1px solid #65705b; background-color:#1b2a22; --surface-texture-color:#d3c99f; --surface-texture-opacity:.08; --surface-gradient:linear-gradient(100deg,#182820 0%,#182820eb 36%,#18282055 69%,#1828202b 100%); }
.welcome-copy { position:relative; z-index:2; max-width:660px; }
.welcome-row h1,.page-title-row h1,.detail-head h1 { color:#f2efe4; font:400 clamp(34px,3.5vw,54px)/1.08 var(--serif); letter-spacing:-.7px; margin:15px 0 13px; }
.welcome-row h1 em { color:#d6bd7d; font-style:normal; }.welcome-row .eyebrow { color:#c6b978; }.welcome-row .intro { max-width:430px; color:#d0d4ca; font-size:15px; }.sun-icon { color:#d2b369; }
.welcome-art { position:absolute; right:-1.5%; top:-35%; width:min(70%,860px); height:150%; opacity:.95; transform:none; overflow:visible; z-index:1; }
.welcome-art img { width:100%; height:100%; object-fit:contain; object-position:right center; }
.stats-row { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:14px 0 28px; }
.stat-card { height:72px; padding:0 14px; gap:12px; color:#edf0e8; border:1px solid #586355; border-left:3px solid #af985a; border-radius:2px; background:#24332b; }
.stat-icon { color:#e0c27e; font-size:21px; }.stat-card strong { color:#f2efe5; font-size:16px; }.stat-card span:not(.stat-icon) { color:#b8c1b3; font-size:11px; }
.mini-progress { background:#53614d; }.mini-progress i,.progress-line i { background:#d0ae64; }
.home-content-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr); gap:24px; align-items:stretch; }.home-primary { min-width:0; }
.section-heading { margin:0 4px 12px; }.section-heading h2,.week-panel-heading h2 { margin:7px 0 0; color:#f2f0e7; font:400 25px/1.15 var(--serif); }.text-link { color:#e0c27b; font-size:11px; }
.lesson-card { grid-template-columns:112px minmax(0,1fr); gap:16px; align-items:center; min-height:325px; padding:20px; overflow:hidden; border-radius:2px; box-shadow:0 10px 28px #0004; color:#203027; --surface-color:#e4e2d9; --surface-texture-color:#59604c; --surface-texture-opacity:.055; --surface-gradient:linear-gradient(135deg,#f4f1e7a8,transparent 54%,#9b9a8755); }
.lesson-art { min-height:0; display:grid; place-items:center; background:transparent; overflow:visible; }.lesson-art .icon-frame-brushed-brass-circle { --icon-size:94px; }
.lesson-info { padding:8px; }.lesson-meta { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }.pill { color:#42563f; background:#cdd4c4; border:1px solid #aeb8a3; font-size:9px; }.lesson-number { color:#667161; }
.lesson-info h3 { color:#21352a; font:500 32px/1.1 var(--serif); margin:18px 0 8px; }.lesson-verse { color:#43544a; font:italic 18px/1.45 var(--serif); }.verse-ref { color:#68725e; letter-spacing:1.4px; font-size:10px; }
.lesson-progress { margin:20px 0 15px; color:#586554; }.progress-line { background:#c7c9bc; }
.button.primary { min-height:46px; padding:0 19px; color:#f6f2e8; background:#244632; border:1px solid #b09253; border-radius:3px; box-shadow:inset 0 1px #ffffff21,0 2px 4px #17221a33; font-size:13px; }.button.primary:hover { background:#31583b; }
.week-panel { min-width:0; padding:23px 20px; border-radius:2px; box-shadow:0 10px 28px #0004; color:#243128; --surface-color:#e4e2d9; --surface-texture-color:#59604c; --surface-texture-opacity:.055; --surface-gradient:linear-gradient(135deg,#f4f1e7a8,transparent 54%,#9b9a8755); }
.week-panel-heading { margin:0 0 15px; }.week-panel-heading .eyebrow { color:#687360; }.week-panel-heading h2 { color:#24372c; font-size:24px; margin:7px 0 4px; }.week-panel-heading p { color:#667164; font-size:12px; margin:0; }
.week-strip { grid-template-columns:1fr; gap:4px; }.day-card { position:relative; min-height:44px; padding:7px 8px; display:grid; grid-template-columns:43px minmax(0,1fr) 14px; align-items:center; gap:8px; text-align:left; background:#eeece3; border:1px solid #c4c5b8; border-radius:2px; color:#26342b; }
.day-card:hover,.day-card.complete { background:#d3d8c8; border-color:#889274; }.day-num { color:#e7e8de; background:#59634a; border-radius:2px; text-align:center; padding:5px 2px; font-size:9px; letter-spacing:.5px; }.day-title { color:#28382d; font:500 15px var(--serif); }.day-topic { display:none; }.day-check { color:#3e603e; }
.home-footer { min-height:94px; margin:24px auto 0; width:min(560px,100%); display:grid; align-content:center; justify-items:center; gap:4px; padding:14px 40px; color:#24362a; text-align:center; font:italic 22px var(--serif); --frame-width:23px; }
.home-footer span:last-child { font:700 9px var(--sans); letter-spacing:1.6px; }
.icon-frame-brushed-brass-square { --icon-size:64px; --icon-frame-border:8px; }
.mobile-icon-frame { --icon-size:38px; --icon-frame-border:5px; width:38px; height:38px; flex-basis:38px; }
.mobile-icon-frame .abide-atlas-icon { width:28px; height:28px; background-size:280px 1400px; }
.mobile-nav button[data-page="home"] .abide-atlas-icon { background-position:-112px 0; }.mobile-nav button[data-page="lessons"] .abide-atlas-icon { background-position:-140px 0; }.mobile-nav button[data-page="journal"] .abide-atlas-icon { background-position:-84px 0; }
.mobile-nav button { color:#e0e3d9; }.mobile-nav button.active { color:#e2c77e; }.mobile-nav { background:#17231d; border-top:1px solid #887447; }

/* Shared treatment for lesson, library, and journal screens. */
.page-title-row h1,.detail-head h1 { color:#f2efe4; }.page-title-row .intro,.detail-head .lesson-verse { color:#c3cabf; }
.count-badge,.privacy-note { color:#e4d6aa; background:#2b3c30; border-color:#697457; }.filter-bar { background:#26352c; border-color:#64705f; }
.search-box,.filter-bar select { color:#e5e9e0; background:#1d2b23; border-color:#69715f; }.search-box input { color:#edf0e8; }
.library-card,.journal-editor,.journal-prompt,.detail-panel,.daily-item,.notes-box,.commit-verse,.reflection-entry { background-color:#e4e2d9; color:#26352b; border-color:#a7a690; box-shadow:0 5px 18px #0003; }
.library-card h3,.journal-prompt h2,.detail-panel h2 { color:#253a2d; }.library-card p,.journal-prompt p,.detail-panel p { color:#536055; }
.library-card footer,.library-card footer span,.journal-editor label,.detail-panel label,.reading-label { color:#68725f; }.library-note { color:#d4d9ce; background:#26372d; border-color:#64705f; }
.detail-tabs { border-color:#71806d; }.detail-tab { color:#bec7b9; }.detail-tab.active { color:#e5cf8e; border-color:#d0b36d; }
.scripture-card { background:#263a2d; border-color:#b39656; color:#eee9d9; }.scripture-card p { color:#f2e7c7; }.reflection-question { background:#d9dfd1; color:#29372d; }
.journal-editor textarea,.notes-box textarea,.commit-input { color:#25352e; background:#f1f0e9; border-color:#b5b6a9; }.journal-editor { background:#e4e2d9; }
.journal-prompt { background:#293b2e; color:#eff0e8; border-color:#a98b4d; }.journal-prompt h2,.journal-prompt p,.journal-prompt span { color:#f0efe6; }.journal-prompt .eyebrow { color:#d4bf80; }
.journal-flower { color:#9ca77f; }.empty-state { color:#bcc5b8; background:#24342a; border-color:#61705e; }.toast { background:#233a2d; border-color:#b29659; color:#f5f0df; }
dialog { background:#e4e2d9; color:#28372d; border:2px solid #b29351; }

/* Phone portrait */
body[data-preview="phone"] .app-shell { background:#19251f; border-color:#c5b176; }
body[data-preview="phone"] .main-content { padding:0 15px 80px; }
body[data-preview="phone"] .topbar { background:#1c211e; border-color:#697262; }
body[data-preview="phone"] .page-view { padding-top:13px; }
body[data-preview="phone"] .welcome-row { min-height:210px; margin:0 -15px 12px; padding:22px 20px; align-items:flex-start; }
body[data-preview="phone"] .welcome-row h1 { font-size:29px; max-width:280px; margin:14px 0 8px; }
body[data-preview="phone"] .welcome-row .intro { max-width:240px; font-size:12px; }
body[data-preview="phone"] .welcome-art { width:370px; height:230px; top:8px; right:-126px; opacity:.48; }
body[data-preview="phone"] .stats-row { grid-template-columns:1fr 1fr; gap:7px; margin:10px 0 18px; }
body[data-preview="phone"] .stat-card { height:58px; padding:0 8px; gap:7px; } body[data-preview="phone"] .stat-card:last-child { display:none; }
body[data-preview="phone"] .stat-card strong { font-size:12px; } body[data-preview="phone"] .stat-card span:not(.stat-icon) { font-size:8px; }
body[data-preview="phone"] .home-content-grid { grid-template-columns:1fr; gap:13px; }
body[data-preview="phone"] .section-heading { margin:0 2px 8px; } body[data-preview="phone"] .section-heading h2 { font-size:20px; }
body[data-preview="phone"] .lesson-card { grid-template-columns:62px minmax(0,1fr); gap:7px; min-height:0; padding:14px; }
body[data-preview="phone"] .lesson-art .icon-frame-brushed-brass-circle { --icon-size:58px; }
body[data-preview="phone"] .lesson-info { padding:2px; } body[data-preview="phone"] .lesson-info h3 { font-size:24px; margin:11px 0 6px; }
body[data-preview="phone"] .lesson-verse { font-size:14px; } body[data-preview="phone"] .lesson-progress { margin:12px 0; }
body[data-preview="phone"] .button.primary { font-size:12px; padding:0 12px; }
body[data-preview="phone"] .week-panel { padding:17px 14px; } body[data-preview="phone"] .week-panel-heading h2 { font-size:22px; } body[data-preview="phone"] .day-card { min-height:40px; }
body[data-preview="phone"] .home-footer { margin-top:15px; min-height:80px; font-size:19px; }
body[data-preview="phone"] .mobile-nav { position:absolute; height:70px; padding-bottom:env(safe-area-inset-bottom); }
body[data-preview="phone"] .mobile-nav button { gap:1px; font-size:9px; min-width:66px; }
body[data-preview="phone"] .mobile-icon-frame { --icon-size:34px; width:34px; height:34px; flex-basis:34px; --icon-frame-border:4px; }
body[data-preview="phone"] .mobile-icon-frame .abide-atlas-icon { width:26px; height:26px; background-size:260px 1300px; }
body[data-preview="phone"] .mobile-nav button[data-page="home"] .abide-atlas-icon { background-position:-104px 0; }
body[data-preview="phone"] .mobile-nav button[data-page="lessons"] .abide-atlas-icon { background-position:-130px 0; }
body[data-preview="phone"] .mobile-nav button[data-page="journal"] .abide-atlas-icon { background-position:-78px 0; }

/* Phone landscape */
body[data-preview="phone"][data-orientation="landscape"] .app-shell { width:min(844px,calc(100vw - 32px)); height:min(390px,calc(100vh - 32px)); }
body[data-preview="phone"][data-orientation="landscape"] .main-content { padding:0 16px 72px; }
body[data-preview="phone"][data-orientation="landscape"] .page-view { padding-top:9px; }
body[data-preview="phone"][data-orientation="landscape"] .welcome-row { min-height:130px; margin:0 -16px 8px; padding:12px 22px; }
body[data-preview="phone"][data-orientation="landscape"] .welcome-row h1 { font-size:25px; margin:7px 0 5px; }
body[data-preview="phone"][data-orientation="landscape"] .welcome-row .intro { font-size:11px; }
body[data-preview="phone"][data-orientation="landscape"] .welcome-art { width:400px; height:240px; top:-16px; right:-18px; opacity:.62; }
body[data-preview="phone"][data-orientation="landscape"] .stats-row { margin:6px 0 10px; }
body[data-preview="phone"][data-orientation="landscape"] .stat-card { height:48px; }
body[data-preview="phone"][data-orientation="landscape"] .stat-card:last-child { display:flex; }
body[data-preview="phone"][data-orientation="landscape"] .home-content-grid { grid-template-columns:minmax(0,1.08fr) minmax(260px,.92fr); gap:12px; }
body[data-preview="phone"][data-orientation="landscape"] .lesson-card { grid-template-columns:52px minmax(0,1fr); padding:11px; }
body[data-preview="phone"][data-orientation="landscape"] .lesson-art .icon-frame-brushed-brass-circle { --icon-size:50px; }
body[data-preview="phone"][data-orientation="landscape"] .lesson-info h3 { font-size:20px; }
body[data-preview="phone"][data-orientation="landscape"] .lesson-verse { font-size:12px; }
body[data-preview="phone"][data-orientation="landscape"] .week-panel { padding:12px; }
body[data-preview="phone"][data-orientation="landscape"] .week-panel-heading { margin-bottom:8px; }
body[data-preview="phone"][data-orientation="landscape"] .week-panel-heading h2 { font-size:18px; }
body[data-preview="phone"][data-orientation="landscape"] .week-panel-heading p { font-size:10px; }
body[data-preview="phone"][data-orientation="landscape"] .day-card { min-height:34px; padding:4px 6px; }
body[data-preview="phone"][data-orientation="landscape"] .home-footer { margin-top:10px; }

/* Tablet portrait */
body[data-preview="tablet"] .app-shell { background:#19251f; border-color:#c5b176; }
body[data-preview="tablet"] .sidebar { width:190px; padding:22px 11px 14px; }
body[data-preview="tablet"] .main-content { padding:0 24px 40px; }
body[data-preview="tablet"] .welcome-row { min-height:240px; margin:0 -8px 15px; padding:26px; }
body[data-preview="tablet"] .welcome-row h1 { font-size:39px; }
body[data-preview="tablet"] .welcome-art { width:68%; height:145%; right:-3%; top:-24%; }
body[data-preview="tablet"] .home-content-grid { grid-template-columns:1fr; gap:16px; }
body[data-preview="tablet"] .lesson-card { grid-template-columns:100px minmax(0,1fr); }
body[data-preview="tablet"] .week-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
body[data-preview="tablet"] .week-panel { padding:18px; }
body[data-preview="tablet"] .mobile-nav { display:none; }

/* Tablet landscape */
body[data-preview="tablet"][data-orientation="landscape"] .app-shell { width:min(1024px,calc(100vw - 32px)); height:min(768px,calc(100vh - 32px)); }
body[data-preview="tablet"][data-orientation="landscape"] .main-content { padding:0 25px 32px; }
body[data-preview="tablet"][data-orientation="landscape"] .welcome-row { min-height:205px; padding:22px; }
body[data-preview="tablet"][data-orientation="landscape"] .welcome-row h1 { font-size:34px; }
body[data-preview="tablet"][data-orientation="landscape"] .welcome-art { width:64%; height:145%; top:-22%; right:-2%; }
body[data-preview="tablet"][data-orientation="landscape"] .stats-row { margin:10px 0 17px; }
body[data-preview="tablet"][data-orientation="landscape"] .stat-card { height:61px; padding:0 8px; gap:7px; }
body[data-preview="tablet"][data-orientation="landscape"] .stat-card strong { font-size:12px; }
body[data-preview="tablet"][data-orientation="landscape"] .stat-card span:not(.stat-icon) { font-size:9px; }
body[data-preview="tablet"][data-orientation="landscape"] .home-content-grid { grid-template-columns:minmax(0,1.1fr) minmax(265px,.9fr); gap:14px; }
body[data-preview="tablet"][data-orientation="landscape"] .lesson-card { grid-template-columns:76px minmax(0,1fr); padding:13px; gap:9px; }
body[data-preview="tablet"][data-orientation="landscape"] .lesson-art .icon-frame-brushed-brass-circle { --icon-size:65px; }
body[data-preview="tablet"][data-orientation="landscape"] .lesson-info h3 { font-size:25px; }
body[data-preview="tablet"][data-orientation="landscape"] .lesson-verse { font-size:14px; }
body[data-preview="tablet"][data-orientation="landscape"] .week-panel { padding:15px; }
body[data-preview="tablet"][data-orientation="landscape"] .week-panel-heading h2 { font-size:21px; }
body[data-preview="tablet"][data-orientation="landscape"] .day-card { min-height:38px; }

/* Natural responsive layout outside the device preview switch. */
@media (max-width:760px) {
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .sidebar { display:none; }
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .main-content { margin:0; padding:0 16px 78px; }
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .mobile-brand { display:flex; }
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .breadcrumb { display:none; }
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .mobile-nav { display:flex; position:fixed; inset:auto 0 0; height:70px; z-index:8; }
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .welcome-row { min-height:220px; margin:0 -16px 12px; padding:22px 20px; }
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .welcome-row h1 { font-size:30px; }
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .welcome-art { width:380px; height:230px; right:-130px; top:5px; opacity:.5; }
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .home-content-grid { grid-template-columns:1fr; }
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .lesson-card { grid-template-columns:64px minmax(0,1fr); }
}
@media (min-width:761px) and (max-width:1050px) and (orientation:portrait) {
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .home-content-grid { grid-template-columns:1fr; }
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .week-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (orientation:landscape) and (max-height:520px) and (max-width:950px) and (pointer:coarse) {
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .sidebar { display:none; }
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .main-content { margin:0; padding:0 16px 72px; }
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .mobile-brand { display:flex; }
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .breadcrumb { display:none; }
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .welcome-row { min-height:125px; }
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .welcome-row h1 { font-size:25px; }
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .home-content-grid { grid-template-columns:minmax(0,1.08fr) minmax(260px,.92fr); }
  body:not([data-preview="phone"]):not([data-preview="tablet"]) .mobile-nav { display:flex; position:fixed; inset:auto 0 0; height:60px; }
}

/* Finishing adjustments for compact preview chrome. */
body[data-preview="phone"] .mobile-nav,
body[data-preview="phone"][data-orientation="landscape"] .mobile-nav { background:#17231d; border-top:1px solid #887447; }
body[data-preview="phone"][data-orientation="landscape"] .topbar { display:grid; grid-template-columns:1fr auto auto; grid-template-rows:1fr; min-height:54px; height:54px; padding:3px 0; gap:5px; }
body[data-preview="phone"][data-orientation="landscape"] .mobile-brand { grid-column:1; grid-row:1; }
body[data-preview="phone"][data-orientation="landscape"] .layout-switch { grid-column:2; grid-row:1; transform:scale(.72); transform-origin:right center; justify-self:end; }
body[data-preview="phone"][data-orientation="landscape"] .top-actions { grid-column:3; grid-row:1; gap:4px; }
body[data-preview="phone"][data-orientation="landscape"] .stats-row { display:none; }
body[data-preview="phone"][data-orientation="landscape"] .page-view { padding-top:5px; }
body[data-preview="phone"][data-orientation="landscape"] .welcome-row { min-height:108px; margin:0 -16px 6px; padding:9px 20px; }
body[data-preview="phone"][data-orientation="landscape"] .welcome-row h1 { font-size:23px; margin:4px 0 3px; }
body[data-preview="phone"][data-orientation="landscape"] .welcome-row .intro { font-size:10px; }
body[data-preview="phone"][data-orientation="landscape"] .welcome-art { width:330px; height:200px; top:-20px; right:-12px; opacity:.58; }
body[data-preview="phone"][data-orientation="landscape"] .main-content { padding-bottom:62px; }
body[data-preview="phone"][data-orientation="landscape"] .welcome-row { min-height:86px; padding:7px 18px; }
body[data-preview="phone"][data-orientation="landscape"] .welcome-row h1 { font-size:21px; margin:3px 0; }
body[data-preview="phone"][data-orientation="landscape"] .welcome-row .intro { display:none; }
body[data-preview="phone"][data-orientation="landscape"] .welcome-art { width:290px; height:175px; top:-19px; }
body[data-preview="phone"][data-orientation="landscape"] .lesson-card { min-height:0; padding:8px; }
body[data-preview="phone"][data-orientation="landscape"] .lesson-art .icon-frame-brushed-brass-circle { --icon-size:42px; }
body[data-preview="phone"][data-orientation="landscape"] .lesson-info h3 { font-size:18px; margin:6px 0 4px; }
body[data-preview="phone"][data-orientation="landscape"] .lesson-verse { font-size:11px; margin-bottom:5px; }
body[data-preview="phone"][data-orientation="landscape"] .lesson-progress { margin:7px 0; }
body[data-preview="phone"][data-orientation="landscape"] .button.primary { min-height:34px; }
body[data-preview="phone"][data-orientation="landscape"] .mobile-nav { height:58px; }
body[data-preview="phone"][data-orientation="landscape"] .week-strip { grid-template-columns:repeat(2,minmax(0,1fr)); gap:5px; }
body[data-preview="phone"][data-orientation="landscape"] .day-card { grid-template-columns:40px minmax(0,1fr) 12px; gap:5px; }

/* Curriculum hierarchy: series → expandable parts → lesson cards. */
.curriculum-series { margin:18px 0 28px; padding:20px; border:1px solid #5a6658; background:#202d25; box-shadow:0 8px 22px #0002; }
#lessonGrid { display:block; }
body[data-preview="phone"] .part-lessons { grid-template-columns:1fr; }
.series-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:16px; padding:2px 4px 18px; border-bottom:1px solid #64705f; }
.series-heading .eyebrow { color:#d6bd78; }
.series-heading h2 { margin:7px 0 4px; color:#f0eee5; font:400 28px/1.1 var(--serif); }
.series-heading p { margin:0; color:#c4cabc; font-size:12px; }
.curriculum-part { border-bottom:1px solid #4d5a4e; }
.curriculum-part summary { display:grid; grid-template-columns:80px minmax(0,1fr) auto 20px; align-items:center; gap:12px; min-height:58px; cursor:pointer; list-style:none; color:#e9e7dd; }
.curriculum-part summary::-webkit-details-marker { display:none; }
.curriculum-part summary::after { content:"＋"; color:#d0ad5f; text-align:center; }
.curriculum-part[open] summary::after { content:"−"; }
.part-number { color:#d5bd7b; font-size:9px; letter-spacing:1.2px; }
.part-title { font:400 19px/1.15 var(--serif); }
.part-count { color:#b4bcac; font-size:10px; }
.part-lessons { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:0 0 16px 92px; }
.part-lessons .library-card { min-height:155px; }
.my-series-section { margin:4px 0 27px; }
.journey-empty,.journey-series-card { min-height:114px; display:flex; align-items:center; gap:20px; padding:18px 22px; border:1px solid #64705f; background:#202d25; box-shadow:0 7px 20px #0002; }
.journey-empty { justify-content:space-between; border-left:3px solid #b99a55; }
.journey-empty h3,.journey-series-copy h3 { margin:6px 0 4px; color:#f0eee5; font:400 21px/1.1 var(--serif); }
.journey-empty p,.journey-series-copy p { margin:0; max-width:540px; color:#c1c9bb; font-size:11px; line-height:1.55; }
.journey-series-card { margin-bottom:10px; }
.journey-series-actions { display:flex; flex:none; flex-direction:column; align-items:center; gap:9px; }
.journey-remove { padding:3px 7px; color:#aeb8a7; border:0; background:transparent; font:500 9px/1.4 var(--sans); cursor:pointer; text-decoration:underline; text-decoration-color:#758071; text-underline-offset:3px; }
.journey-remove:hover,.journey-remove:focus-visible { color:#e4cd8e; text-decoration-color:#e4cd8e; }
.journey-remove:focus-visible { outline:2px solid #d4bc79; outline-offset:3px; }
.day-card.is-active { border:2px solid #637c4d; box-shadow:inset 0 0 0 1px #e5d79e; }
.daily-item.is-active { border-left:4px solid #b99a55; }
.journal-howto { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:12px; }
.journal-howto h2 { margin:0; color:#25362c; font:400 26px/1.15 var(--serif); }
.reflection-day-label { display:block; margin:13px 0 6px; color:#69745f; font-size:9px; font-weight:700; letter-spacing:1px; }
.reflection-day-select { width:min(100%,380px); min-height:40px; margin-bottom:12px; padding:8px 10px; color:#26342b; border:1px solid #aaa993; background:#f0eee5; }
.series-outline { display:grid; gap:17px; margin:20px 0; }
.outline-part { overflow:hidden; border:1px solid #62705f; border-left:3px solid #b99a55; background:#202d25; box-shadow:0 7px 20px #0003; }
.outline-part-heading { display:grid; grid-template-columns:58px minmax(0,1fr) auto; align-items:center; gap:14px; padding:17px 20px; border-bottom:1px solid #586555; background:linear-gradient(110deg,#2b3a2e,#222e26); }
.outline-part-heading .part-index { color:#d5bd7b; font-size:9px; letter-spacing:1px; }
.outline-part-heading h2 { margin:0 0 4px; color:#f0eee5; font:400 22px/1.15 var(--serif); }
.outline-part-heading p { margin:0; color:#bac3b5; font-size:11px; line-height:1.5; }
.outline-part-count { color:#b8c0b3; font-size:9px; white-space:nowrap; }
.outline-lessons { padding:0 20px 4px 78px; }
.outline-lesson { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:16px 0; border-bottom:1px solid #475348; }
.outline-lesson:last-child { border-bottom:0; }
.outline-lesson.is-active { margin:0 -12px; padding-right:12px; padding-left:12px; background:#34443866; }
.outline-lesson-copy { min-width:0; }
.outline-lesson-copy .eyebrow { margin-bottom:6px; color:#c4b578; font-size:8px; }
.outline-lesson h3 { margin:0 0 5px; color:#f0eee5; font:400 19px/1.2 var(--serif); }
.outline-lesson-copy p { margin:0; color:#bdc4b8; font-size:11px; line-height:1.5; }
.active-lesson-badge { display:inline-block; margin-left:10px; padding:4px 7px; color:#f0e3b9; border:1px solid #a88d51; font:700 7px var(--sans); letter-spacing:.8px; vertical-align:middle; }
.outline-lesson .button { flex:none; min-width:125px; }
.reflection-series-group { margin:0 0 22px; padding:20px; border:1px solid #64705f; background:#202d25; }
.reflection-series-group > h2 { margin:0 0 14px; color:#edebdf; font:400 24px var(--serif); }
.reflection-lesson-group { margin-top:15px; padding-top:15px; border-top:1px solid #586455; }
.reflection-lesson-group > h3 { margin:0 0 12px; color:#d7c78f; font:400 18px var(--serif); }
.reflection-day-group h4 { margin:12px 0 8px; color:#d1d7ca; font:500 12px var(--sans); }
.reflection-entry { margin:8px 0; padding:13px 15px; border:1px solid #a7a690; background:#e4e2d9; color:#26352b; }
.reflection-entry small { color:#69745f; font-size:8px; letter-spacing:.5px; }
.reflection-entry p { margin:8px 0 0; color:#26352b; font-size:13px; line-height:1.6; white-space:pre-wrap; }
.maker-welcome { display:flex; align-items:center; gap:24px; min-height:170px; margin:20px 0; padding:28px; --surface-color:#e4e2d9; --surface-texture-color:#59604c; --surface-texture-opacity:.055; --surface-gradient:linear-gradient(135deg,#f4f1e7a8,transparent 54%,#9b9a8755); }
.maker-symbol { width:70px; height:70px; flex:none; display:grid; place-items:center; color:#35503d; font:400 38px var(--serif); }
.maker-welcome .eyebrow { color:#687360; }
.maker-welcome h2 { margin:8px 0; color:#24372c; font:400 27px/1.15 var(--serif); }
.maker-welcome p { max-width:760px; margin:0; color:#566357; font-size:13px; line-height:1.65; }
.maker-structure-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; }
.maker-structure-card,.maker-next-step { padding:22px; border:1px solid #64705f; background:#202d25; box-shadow:0 7px 20px #0003; }
.maker-structure-card .eyebrow,.maker-next-step .eyebrow { color:#d4bc79; }
.maker-structure-card h2,.maker-next-step h2 { margin:10px 0 7px; color:#f0eee5; font:400 22px/1.2 var(--serif); }
.maker-structure-card p,.maker-next-step p { margin:0; color:#c1c9bb; font-size:12px; line-height:1.65; }
.maker-next-step { margin-top:16px; border-left:3px solid #b99a55; }
.maker-tabs { display:flex; gap:6px; margin:8px 0 20px; border-bottom:1px solid #66715f; }
.maker-tabs button,.maker-library-filters button { padding:11px 16px; color:#bdc5b8; border:0; border-bottom:2px solid transparent; background:transparent; font:600 11px var(--sans); cursor:pointer; }
.maker-tabs button.active { color:#f0d899; border-bottom-color:#c8a95e; }
.maker-library-toolbar,.maker-editor-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.maker-library-toolbar h2 { margin:5px 0; color:#f0eee5; font:400 26px/1.1 var(--serif); }
.maker-library-toolbar p { margin:0; color:#bac3b6; font-size:11px; }
.maker-library-filters { display:flex; gap:6px; margin:20px 0 13px; border-bottom:1px solid #536051; }
.maker-library-filters button { padding:10px 13px; font-size:10px; }
.maker-library-filters button.active { color:#e4cd8e; border-bottom-color:#7e94a4; }
.maker-series-list { display:grid; gap:12px; }
.maker-series-card { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:20px; border:1px solid #68715f; border-left:3px solid #b99a55; background:linear-gradient(125deg,#26372c,#1c2921 70%); }
.maker-series-card-copy { min-width:0; }
.maker-series-card h3 { margin:5px 0 4px; color:#f0eee5; font:400 23px/1.1 var(--serif); }
.maker-series-card p { margin:0 0 8px; color:#c1c9bb; font-size:11px; line-height:1.5; }
.maker-series-card small { color:#d4bc79; font-size:9px; letter-spacing:.4px; }
.maker-series-card-actions { display:flex; flex-wrap:wrap; gap:8px; flex:none; }
.maker-series-card-actions .maker-remove { padding:8px 10px; border:1px solid #566252; text-decoration:none; }
.maker-preview-dialog { position:relative; width:min(1120px,calc(100vw - 32px)); max-width:1120px; max-height:calc(100vh - 32px); overflow:auto; padding:28px; border:2px solid #b29351; background:#202d25; color:#f0eee5; box-shadow:0 22px 70px #0009; }
.maker-preview-dialog::backdrop { background:#101913c7; backdrop-filter:blur(3px); }
.maker-preview-dialog .dialog-close { position:sticky; z-index:2; float:right; top:0; margin:-12px -12px 0 8px; color:#e4cd8e; }
.maker-preview-topline { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:0 32px 12px 0; color:#d4bc79; font-size:8px; letter-spacing:1px; }
.maker-preview-topline > div:first-child { display:grid; gap:3px; }
.maker-preview-controls { display:flex; align-items:center; justify-content:flex-end; gap:7px; }
.maker-preview-devices,.maker-preview-orientations { display:flex; gap:4px; padding:3px; border:1px solid #536051; background:#17231b; }
.maker-preview-devices button,.maker-preview-orientations button { padding:6px 9px; color:#c8d0c4; border:1px solid transparent; background:transparent; font:600 9px var(--sans); cursor:pointer; }
.maker-preview-devices button[aria-pressed="true"],.maker-preview-orientations button[aria-pressed="true"] { color:#17231b; border-color:#d4bc79; background:#d4bc79; }
.maker-preview-devices button:focus-visible,.maker-preview-orientations button:focus-visible { outline:2px solid #f0d899; outline-offset:2px; }
.maker-preview-canvas { box-sizing:border-box; width:100%; margin:0 auto; container-name:maker-preview; container-type:inline-size; }
.maker-preview-canvas[data-device="phone"] { width:min(390px,100%); height:min(760px,72vh); overflow:auto; padding:12px; border:8px solid #111a14; border-radius:26px; background:#202d25; box-shadow:0 12px 30px #0008; }
.maker-preview-canvas[data-device="tablet"] { width:min(840px,100%); height:min(760px,72vh); overflow:auto; padding:16px; border:8px solid #111a14; border-radius:21px; background:#202d25; box-shadow:0 12px 30px #0008; }
.maker-preview-canvas[data-device="desktop"] { max-width:100%; }
.maker-preview-canvas[data-device="phone"][data-orientation="landscape"] { width:min(760px,100%); height:min(390px,72vh); }
.maker-preview-canvas[data-device="tablet"][data-orientation="landscape"] { width:min(1040px,100%); height:min(640px,72vh); }
.maker-preview-hero { padding:20px 0 24px; border-bottom:1px solid #596455; }
.maker-preview-hero .eyebrow,.maker-preview-reading .eyebrow { color:#d4bc79; }
.maker-preview-hero h1 { margin:6px 0; color:#f0eee5; font:400 clamp(30px,5vw,48px)/1.05 var(--serif); }
.maker-preview-hero p { max-width:720px; margin:0; color:#c5cbbf; font-size:12px; line-height:1.6; }
.maker-preview-layout { display:grid; grid-template-columns:minmax(205px, .7fr) minmax(0,2fr); gap:20px; padding-top:20px; }
.maker-preview-outline { align-self:start; padding:15px; border:1px solid #536051; background:#1a271f; }
.maker-preview-outline > .eyebrow { color:#d4bc79; }
.maker-preview-outline section { margin-top:15px; padding-top:12px; border-top:1px solid #4b584b; }
.maker-preview-outline section > span { color:#d4bc79; font-size:8px; font-weight:700; letter-spacing:.8px; }
.maker-preview-outline h3 { margin:4px 0; color:#f0eee5; font:400 17px/1.2 var(--serif); }
.maker-preview-outline p { margin:0 0 8px; color:#aeb8aa; font-size:10px; line-height:1.45; }
.maker-preview-outline section > button { display:block; width:100%; padding:8px 9px; color:#d6dbd0; border:0; border-left:2px solid transparent; background:transparent; font:400 11px/1.35 var(--sans); text-align:left; cursor:pointer; }
.maker-preview-outline section > button:hover,.maker-preview-outline section > button.active { color:#f0d899; border-left-color:#c6a65d; background:#2a392e; }
.maker-preview-lesson { min-width:0; }
.maker-preview-lesson-head { padding:2px 0 12px; border-bottom:1px solid #536051; }
.maker-preview-lesson-head .eyebrow { color:#d4bc79; }
.maker-preview-lesson-head h2 { margin:5px 0 13px; color:#f0eee5; font:400 29px/1.1 var(--serif); }
.maker-preview-lesson-head nav { display:flex; flex-wrap:wrap; gap:6px; }
.maker-preview-lesson-head nav button,.maker-preview-days button { padding:8px 10px; color:#cbd2c5; border:1px solid #566252; background:#1b2820; font:600 9px var(--sans); cursor:pointer; }
.maker-preview-lesson-head nav button.active,.maker-preview-days button.active { color:#17231b; border-color:#d4bc79; background:#d4bc79; }
.maker-preview-scriptures { display:grid; gap:10px; padding-top:14px; }
.maker-preview-scriptures > section,.maker-preview-reading,.maker-preview-media { margin-top:12px; padding:16px; border:1px solid #536051; background:#233128; }
.maker-preview-scriptures > section > h3 { margin:0 0 8px; color:#d4bc79; font:600 10px var(--sans); }
.maker-preview-reading { color:#e6e4db; font:400 15px/1.75 var(--serif); }
.maker-preview-reading > p { margin:0 0 12px; }
.maker-preview-reading h3 { margin:0 0 8px; font:400 21px/1.2 var(--serif); }
.maker-preview-question { margin-top:18px; padding:14px; border-left:2px solid #c3a45d; background:#1b2921; }
.maker-preview-question b { color:#d4bc79; font:700 8px var(--sans); letter-spacing:.8px; }
.maker-preview-question p { margin:6px 0 0; }
.maker-preview-days { display:flex; flex-wrap:wrap; gap:6px; margin:14px 0; }
.maker-preview-media { color:#e8e7dc; }
.maker-media-title { display:block; margin:0 0 10px; color:#f0eee5; font:400 17px/1.3 var(--serif); text-align:center; }
.maker-preview-media figcaption { margin-top:10px; color:#cbd2c5; font:italic 12px/1.5 var(--serif); text-align:center; }
.maker-preview-media p { margin:8px 0 0; font-size:11px; }
.maker-preview-media small { margin-left:8px; color:#aeb8aa; text-transform:uppercase; }
.maker-preview-empty { padding:24px 10px; color:#c5cbbf; }
.maker-preview-empty h2 { color:#f0eee5; font:400 25px var(--serif); }
.maker-preview-empty-copy { color:#aeb8aa; font:400 12px/1.5 var(--sans); }
@container maker-preview (max-width:650px) {
  .maker-preview-layout { grid-template-columns:minmax(0,1fr); gap:12px; }
  .maker-preview-outline { order:2; }
  .maker-preview-lesson { order:1; }
  .maker-preview-lesson-head h2 { font-size:24px; }
  .maker-preview-lesson-head nav button { flex:1; padding:8px 6px; font-size:8px; }
}
.maker-editor-toolbar { margin:8px 0 2px; }
.maker-back-link { padding:8px 0; color:#e1cd91; border:0; background:transparent; font:600 11px var(--sans); cursor:pointer; }
.maker-editor-actions { display:flex; align-items:center; justify-content:flex-end; gap:9px; }
.maker-editor-actions > span { margin-right:4px; color:#bbc4b7; font-size:10px; }
.maker-scripture-section { margin-bottom:14px; }
.maker-scripture-list { display:grid; gap:10px; }
.maker-scripture-row { display:grid; gap:10px; padding:13px; border:1px solid #68715f; background:#1b2820; }
.maker-scripture-row-head { display:flex; align-items:center; justify-content:space-between; color:#e6dfcb; font-size:10px; letter-spacing:.35px; }
.maker-scripture-selects { display:grid; grid-template-columns:minmax(130px,1.5fr) minmax(76px,.65fr) minmax(76px,.65fr) auto minmax(76px,.65fr) minmax(76px,.65fr); align-items:end; gap:8px; }
.maker-scripture-selects label { display:grid; gap:5px; color:#d4bc79; font-size:9px; font-weight:700; letter-spacing:.5px; }
.maker-scripture-selects select { width:100%; min-width:0; padding:9px; color:#29382f; border:1px solid #b7b5a5; border-radius:1px; background:#ebe9df; font:400 11px var(--sans); }
.maker-scripture-selects select:disabled { opacity:.55; }
.maker-scripture-range-separator { padding:0 0 10px; color:#bdc5b8; font-size:10px; }
.maker-scripture-reference-label { color:#e0c987; font:500 13px var(--serif); }
.maker-get-scripture { justify-self:start; }
.maker-scripture-row > small { color:#bac3b6; font-size:9px; }
.maker-scripture-text { min-height:40px; padding:12px; color:#e5e2d7; border-left:2px solid #8c9c7b; background:#25342b; font:400 12px/1.7 var(--serif); white-space:pre-line; }
.maker-scripture-chapter + .maker-scripture-chapter { margin-top:18px; padding-top:13px; border-top:1px solid #536051; }
.maker-scripture-chapter h4 { margin:0 0 8px; color:#f0eee5; font:500 20px/1.2 var(--serif); }
.maker-scripture-verses { display:grid; gap:6px; }
.maker-scripture-verse { display:grid; grid-template-columns:24px minmax(0,1fr); gap:8px; margin:0; color:#e5e2d7; font:400 13px/1.7 var(--serif); white-space:normal; }
.maker-scripture-verse > span:first-child { padding-top:2px; color:#d4bc79; font:700 10px/1.6 var(--sans); text-align:right; }
.maker-scripture-copy { min-width:0; }
.maker-notation-marker { display:inline-flex; flex:0 0 auto; align-items:center; justify-content:center; width:1.55em; height:1.55em; margin:0 .35em 0 .08em; padding:0; vertical-align:middle; color:#14241b; border:1px solid #e0c987; border-radius:50%; background:#d4bc79; box-shadow:0 1px 3px #0005; font:700 9px/1 var(--sans); cursor:pointer; }
.maker-notation-marker::before { content:attr(data-number); }
.maker-notation-marker:hover,.maker-notation-marker:focus-visible { outline:2px solid #f2dfa4; outline-offset:2px; }
.maker-notation-menu { position:fixed; z-index:10001; width:270px; max-width:calc(100vw - 24px); padding:12px; border:1px solid #b99a55; background:#1c2921; box-shadow:0 10px 30px #0008; color:#f0eee5; }
.maker-notation-menu[hidden] { display:none; }
.maker-notation-menu label { display:block; margin-bottom:7px; color:#e0c987; font:700 9px var(--sans); letter-spacing:.6px; }
.maker-notation-menu textarea { width:100%; min-height:70px; padding:8px; color:#29382f; border:1px solid #b7b5a5; background:#ebe9df; font:400 12px/1.5 var(--sans); resize:vertical; }
.maker-notation-menu > div { display:flex; justify-content:flex-end; gap:8px; margin-top:9px; }
.maker-notation-menu .button { min-height:30px; padding:6px 9px; font-size:9px; }
.maker-notation-actions-menu { position:fixed; z-index:10002; min-width:155px; padding:5px; border:1px solid #b99a55; background:#1c2921; box-shadow:0 10px 28px #0008; }
.maker-notation-actions-menu[hidden] { display:none; }
.maker-notation-actions-menu button { width:100%; padding:9px 11px; color:#edc2b7; border:0; background:transparent; font:600 10px var(--sans); text-align:left; cursor:pointer; }
.maker-notation-actions-menu button:hover,.maker-notation-actions-menu button:focus-visible { color:#fff0e9; background:#4a302b; outline:1px solid #a96859; }
.maker-notation-sheet { position:fixed; inset:auto 0 0; width:min(620px,100vw); max-width:620px; max-height:min(65vh,560px); overflow:auto; margin:0 auto; padding:27px 28px 30px; border:1px solid #b99a55; border-bottom:0; border-radius:16px 16px 0 0; background:linear-gradient(145deg,#26372c,#1c2921 72%); color:#f0eee5; box-shadow:0 -16px 50px #0008; }
.maker-notation-sheet[open] { animation:maker-notation-rise .28s cubic-bezier(.2,.75,.25,1) both; }
.maker-notation-sheet::backdrop { background:#1019139c; backdrop-filter:blur(2px); animation:maker-notation-dim .22s ease-out both; }
.maker-notation-sheet-handle { position:absolute; top:9px; left:calc(50% - 20px); width:40px; height:4px; border-radius:4px; background:#879181; }
.maker-notation-sheet .dialog-close { position:absolute; top:14px; right:16px; color:#e4cd8e; }
.maker-notation-sheet .eyebrow { color:#d4bc79; }
.maker-notation-sheet h2 { margin:7px 38px 13px 0; color:#f0eee5; font:400 27px/1.1 var(--serif); }
.maker-notation-sheet blockquote { margin:0 0 14px; padding:10px 13px; color:#e6e4db; border-left:2px solid #b99a55; background:#17241c; font:italic 15px/1.6 var(--serif); }
.maker-notation-sheet p { margin:0; color:#e6e4db; font:400 15px/1.7 var(--serif); white-space:pre-wrap; }
.maker-notation-edit-button { margin-top:18px; }
.maker-notation-edit-form { margin-top:12px; }
.maker-notation-edit-form label { display:block; margin-bottom:7px; color:#d4bc79; font:700 9px var(--sans); letter-spacing:.6px; }
.maker-notation-edit-form textarea { display:block; width:100%; padding:10px; color:#29382f; border:1px solid #b7b5a5; background:#ebe9df; font:400 13px/1.5 var(--sans); resize:vertical; }
.maker-notation-edit-form > div { display:flex; justify-content:flex-end; gap:8px; margin-top:10px; }
@keyframes maker-notation-rise { from { transform:translateY(100%); } to { transform:translateY(0); } }
@keyframes maker-notation-dim { from { opacity:0; } to { opacity:1; } }
.maker-scripture-legacy-text,.maker-scripture-placeholder { margin:0; color:#c6cbbf; font:400 11px/1.6 var(--sans); white-space:pre-line; }
.maker-drag-handle,.maker-node-drag { position:relative; display:inline-flex; width:28px; height:34px; flex:0 0 auto; align-items:center; justify-content:center; margin:0; padding:0; color:transparent; border:0; background:transparent; font-size:0; cursor:grab; user-select:none; touch-action:none; }
.maker-drag-handle::before,.maker-node-drag::before { content:""; width:12px; height:18px; background-image:radial-gradient(circle,#e0c987 1.5px,transparent 1.7px); background-size:6px 6px; }
.maker-drag-handle:active,.maker-node-drag:active { cursor:grabbing; }
.maker-lesson > summary .maker-drag-handle { margin-left:auto; }
.maker-part.is-dragging { position:relative; z-index:2; opacity:.82; transform:scale(.995); box-shadow:0 10px 24px #090f0b55; transition:opacity 170ms ease,transform 200ms cubic-bezier(.2,.75,.25,1),box-shadow 200ms ease; }
.maker-lesson.is-dragging { opacity:.4; }
.maker-library-panel[hidden],.maker-editor-panel[hidden] { display:none; }
.maker-series-fields { display:grid; grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr); gap:14px; margin:18px 0 24px; padding:20px; border:1px solid #66715f; background:#202d25; }
.maker-series-fields label,.maker-part-fields label,.maker-lesson-fields label,.maker-section label,.maker-day-fields label,.maker-media-row label { display:grid; gap:6px; color:#d4bc79; font-size:9px; font-weight:700; letter-spacing:.6px; }
.maker-series-fields input,.maker-series-fields textarea,.maker-part-fields input,.maker-part-fields textarea,.maker-lesson-fields input,.maker-lesson-fields textarea,.maker-section textarea,.maker-day-fields input,.maker-day-fields textarea,.maker-media-row input:not([type="file"]),.maker-media-row select { width:100%; min-width:0; padding:10px 11px; color:#29382f; border:1px solid #b7b5a5; border-radius:1px; background:#ebe9df; font:400 12px/1.5 var(--sans); letter-spacing:0; }
.maker-rich-field { width:100%; min-width:0; min-height:145px; padding:11px; color:#29382f; border:1px solid #b7b5a5; border-radius:1px; background:#ebe9df; font:400 12px/1.65 var(--sans); letter-spacing:0; white-space:pre-wrap; overflow-wrap:anywhere; cursor:text; }
.maker-rich-field.maker-rich-compact { min-height:66px; }
.maker-rich-field:focus { outline:2px solid #b99a55; outline-offset:2px; }
.maker-rich-field:empty::before { content:attr(data-placeholder); color:#788276; pointer-events:none; }
.maker-rich-field mark { color:inherit; padding:0 .06em; border-radius:2px; }
.maker-rich-field mark[data-highlight-color="gold"] { background:#f0d987; }
.maker-rich-field mark[data-highlight-color="green"] { background:#a9c79b; }
.maker-rich-field mark[data-highlight-color="blue"] { background:#a8c9df; }
.maker-rich-field mark[data-highlight-color="purple"] { background:#c5b0dc; }
.maker-rich-field mark[data-highlight-color="rose"] { background:#e5b5aa; }
.maker-highlight-menu { position:fixed; z-index:10000; width:max-content; max-width:calc(100vw - 24px); padding:11px; border:1px solid #b99a55; background:#1c2921; box-shadow:0 10px 30px #0008; color:#f0eee5; }
.maker-highlight-menu[hidden] { display:none; }
.maker-highlight-title { display:block; margin:0 0 8px; color:#e0c987; font:700 9px var(--sans); letter-spacing:.9px; text-transform:uppercase; }
.maker-highlight-swatches { display:flex; gap:7px; }
.maker-highlight-swatches button { width:30px; height:30px; padding:0; border:2px solid #eee9d9; border-radius:50%; cursor:pointer; }
.maker-highlight-swatches button:hover,.maker-highlight-swatches button:focus-visible { outline:2px solid #fff; outline-offset:2px; }
.maker-highlight-swatches [data-highlight-color="gold"] { background:#f0d987; }
.maker-highlight-swatches [data-highlight-color="green"] { background:#a9c79b; }
.maker-highlight-swatches [data-highlight-color="blue"] { background:#a8c9df; }
.maker-highlight-swatches [data-highlight-color="purple"] { background:#c5b0dc; }
.maker-highlight-swatches [data-highlight-color="rose"] { background:#e5b5aa; }
.maker-highlight-remove { display:block; margin-top:9px; padding:5px 0 0; color:#d5d8cd; border:0; border-top:1px solid #536051; background:transparent; font:500 10px var(--sans); cursor:pointer; }
.maker-highlight-remove:hover,.maker-highlight-remove:focus-visible { color:#f0d899; }
.maker-toolbar { display:flex; align-items:center; justify-content:space-between; gap:15px; margin:0 0 13px; }
.maker-toolbar p { margin:5px 0 0; color:#b9c2b4; font-size:11px; }
.maker-parts { display:grid; gap:18px; }
.maker-part { border:1px solid #7a704f; border-left:4px solid #b99a55; background:linear-gradient(145deg,#26372c,#1c2921 72%); box-shadow:0 8px 22px #0003; }
.maker-part > summary { list-style:none; }
.maker-part > summary::-webkit-details-marker { display:none; }
.maker-part-header { position:relative; display:flex; align-items:center; gap:12px; min-height:64px; padding:14px 20px 14px 62px; cursor:pointer; }
.maker-part-drag { position:absolute; inset:0 auto 0 0; display:flex; width:46px; height:auto; align-items:center; justify-content:center; color:transparent; border:0; background:transparent; cursor:grab; user-select:none; font-size:0; }
.maker-part-drag::before { width:12px; height:18px; background-image:radial-gradient(circle,#e0c987 1.5px,transparent 1.7px); background-size:6px 6px; }
.maker-part-drag:active { cursor:grabbing; }
.maker-part-title { min-width:0; overflow:hidden; color:#f0eee5; font:600 14px/1.35 var(--serif); text-overflow:ellipsis; }
.maker-part-actions { display:flex; align-items:center; gap:14px; margin-left:auto; }
.maker-part-toggle { display:grid; width:24px; height:24px; flex:0 0 auto; place-items:center; color:#d4bc79; border:1px solid #756c4c; border-radius:50%; }
.maker-part-toggle::before { content:"＋"; font:400 13px/1 var(--sans); }
.maker-part[open] > .maker-part-header .maker-part-toggle::before { content:"−"; }
.maker-part-content { padding:0 20px 20px; }
.maker-part-number { color:#e0c987; font-size:10px; font-weight:700; letter-spacing:1.2px; }
.maker-remove { color:#bec5b9; border:0; background:transparent; font:500 10px var(--sans); cursor:pointer; text-decoration:underline; text-underline-offset:3px; }
.maker-remove:hover,.maker-remove:focus-visible { color:#f0d899; }
.maker-remove:focus-visible { outline:2px solid #d4bc79; outline-offset:3px; }
.maker-part-fields { display:grid; grid-template-columns:minmax(180px,.8fr) minmax(240px,1.2fr); gap:12px; }
.maker-lessons { display:grid; gap:12px; margin:16px 0; }
.maker-lesson { border:1px solid #596656; background:#1c2921; }
.maker-lesson > summary { display:flex; align-items:center; gap:12px; padding:13px 15px; color:#f0eee5; cursor:pointer; list-style:none; }
.maker-lesson > summary::-webkit-details-marker,.maker-day > summary::-webkit-details-marker { display:none; }
.maker-lesson > summary::after,.maker-day > summary::after { content:"＋"; margin-left:auto; color:#d4bc79; }
.maker-lesson[open] > summary::after,.maker-day[open] > summary::after { content:"−"; }
.maker-lesson > summary span { color:#d4bc79; font-size:8px; letter-spacing:1px; }
.maker-lesson > summary b { font:400 18px var(--serif); }
.maker-lesson-body { padding:0 16px 16px; }
.maker-lesson-fields { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:14px 0; border-top:1px solid #4a564a; }
.maker-lesson-fields .maker-wide { grid-column:1/-1; }
.maker-section { margin-top:12px; padding:16px; border:1px solid #536051; background:#233128; }
.maker-prepare-section { padding:0; }
.maker-main-section { padding:0; }
.maker-main-section > summary { list-style:none; }
.maker-main-section > summary::-webkit-details-marker { display:none; }
.maker-main-section-heading { display:flex; align-items:center; gap:12px; padding:15px 16px; color:#f0eee5; cursor:pointer; }
.maker-main-section-heading::after { content:"＋"; margin-left:auto; color:#d4bc79; }
.maker-main-section[open] > .maker-main-section-heading::after { content:"−"; }
.maker-main-section-heading b { font:400 19px var(--serif); }
.maker-main-section-heading small { margin-left:8px; color:#d4bc79; font:700 8px var(--sans); letter-spacing:.8px; }
.maker-main-section-heading span { color:#bbc4b7; font-size:10px; }
.maker-main-section-content { padding:0 16px 16px; }
.maker-main-section-content > p { margin:0 0 12px; color:#bbc4b7; font-size:10px; line-height:1.5; }
.maker-main-section-content > label + label { margin-top:12px; }
.maker-prepare-heading { display:flex; align-items:center; gap:12px; padding:15px 16px; color:#f0eee5; cursor:pointer; list-style:none; }
.maker-prepare-heading::-webkit-details-marker { display:none; }
.maker-prepare-heading::after { content:"＋"; margin-left:auto; color:#d4bc79; }
.maker-prepare-section[open] > .maker-prepare-heading::after { content:"−"; }
.maker-prepare-heading b { font:400 19px var(--serif); }
.maker-prepare-heading span { color:#bbc4b7; font-size:10px; }
.maker-prepare-body { padding:0 14px 14px; }
.maker-prepare-node-list { display:grid; gap:9px; }
.maker-node { border:1px solid #68715f; background:#1b2820; }
.maker-node-heading { display:flex; align-items:center; gap:9px; padding:9px 11px; color:#e9e7dc; cursor:pointer; list-style:none; }
.maker-node-heading::-webkit-details-marker,.maker-new-node-menu > summary::-webkit-details-marker { display:none; }
.maker-node-heading::after { content:"＋"; order:5; margin-left:auto; color:#d4bc79; }
.maker-node[open] > .maker-node-heading::after { content:"−"; }
.maker-node-heading > span:nth-child(2) { color:#d4bc79; font-size:9px; letter-spacing:.8px; }
.maker-node-heading b { font:400 15px var(--serif); }
.maker-node-heading button { order:4; }
.maker-node-body { display:grid; gap:10px; padding:12px; border-top:1px solid #465347; }
.maker-node-media-fields { display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:10px; }
.maker-node-media-fields label { display:grid; gap:6px; color:#d4bc79; font-size:9px; font-weight:700; }
.maker-node-media-fields input:not([type="file"]) { width:100%; padding:10px; color:#29382f; border:1px solid #b7b5a5; background:#ebe9df; font:12px var(--sans); }
.maker-node-media-fields small { color:#bbc4b7; font-size:9px; }
.maker-youtube-embed,.maker-youtube-embed-placeholder { width:100%; aspect-ratio:16/9; margin-top:10px; overflow:hidden; border:1px solid #68715f; background:#101713; }
.maker-youtube-embed iframe { display:block; width:100%; height:100%; border:0; }
.maker-youtube-embed-placeholder { display:grid; place-items:center; padding:14px; color:#bbc4b7; font-size:10px; text-align:center; }
.maker-image-preview-slot { display:grid; place-items:center; width:100%; min-height:90px; max-height:360px; margin-top:10px; overflow:hidden; border:1px solid #68715f; background:#101713; }
.maker-image-preview-content { display:grid; justify-items:center; width:100%; }
.maker-image-preview-content img { display:block; max-width:100%; max-height:320px; object-fit:contain; }
.maker-image-preview-caption { margin:8px 12px 0; color:#cbd2c5; font:italic 11px/1.5 var(--serif); text-align:center; }
.maker-youtube-embed-slot .maker-media-title { margin-top:12px; }
.maker-preview-media > img,.maker-preview-media .maker-preview-local-image img { display:block; width:auto; max-width:100%; max-height:420px; margin:8px auto 0; object-fit:contain; }
.maker-preview-local-image { display:grid; place-items:center; min-height:90px; padding:12px; color:#bbc4b7; font-size:10px; }
.maker-node.is-dragging { position:relative; z-index:2; opacity:.82; transform:scale(.995); box-shadow:0 10px 24px #090f0b55; transition:opacity 170ms ease,transform 200ms cubic-bezier(.2,.75,.25,1),box-shadow 200ms ease; }
@media (prefers-reduced-motion: reduce) {
  .maker-part.is-dragging,.maker-node.is-dragging,.maker-day-grid,.maker-day,.maker-day > summary::after,.maker-day-fields { transition:none !important; }
  @supports selector(details::details-content) { .maker-day::details-content { transition:none !important; } }
}
.maker-new-node-menu { border:1px dashed #71806c; background:#202d25; }
.maker-new-node-menu > summary { padding:11px 13px; color:#e4cc87; cursor:pointer; list-style:none; font-size:10px; font-weight:700; }
.maker-new-node-menu > div { display:flex; flex-wrap:wrap; gap:7px; padding:0 10px 10px; }
.maker-new-node-menu .button { font-size:9px; padding:8px 10px; }
.maker-section > h3 { margin:0 0 6px; color:#f0eee5; font:400 19px var(--serif); }
.maker-section > h3 small { margin-left:8px; color:#d4bc79; font:700 8px var(--sans); letter-spacing:.8px; }
.maker-section > p { margin:0 0 12px; color:#bbc4b7; font-size:10px; line-height:1.5; }
.maker-section > label + label { margin-top:12px; }
.maker-day-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:10px; transition:gap 440ms cubic-bezier(.2,.75,.25,1); }
.maker-day { align-self:start; border:1px solid #566252; background:#1b2820; transition:border-color 420ms ease,background-color 420ms ease,box-shadow 420ms ease; }
.maker-day[open] { border-color:#879071; background:#202f26; box-shadow:0 6px 18px #0c140f35; }
.maker-day-grid > .maker-day { width:100%; }
.maker-day > summary { display:flex; align-items:center; padding:11px; color:#e9e7dc; cursor:pointer; font-size:9px; font-weight:700; letter-spacing:.5px; list-style:none; }
.maker-day > summary::-webkit-details-marker { display:none; }
.maker-day > summary::after { content:"＋"; margin-left:auto; color:#d4bc79; font-size:12px; transition:transform 420ms cubic-bezier(.2,.75,.25,1),color 420ms ease; }
.maker-day[open] > summary::after { content:"−"; color:#f0d899; }
.maker-day-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding:0 11px 12px; transition:grid-template-columns 480ms cubic-bezier(.2,.75,.25,1),gap 440ms cubic-bezier(.2,.75,.25,1); }
.maker-day-fields > label:nth-child(-n+2) { grid-column:1/-1; }
@supports (interpolate-size:allow-keywords) {
  .maker-day { interpolate-size:allow-keywords; }
  .maker-day::details-content { display:block; block-size:0; overflow:clip; opacity:0; transition:block-size 520ms cubic-bezier(.2,.75,.25,1),opacity 340ms ease,content-visibility 520ms allow-discrete; }
  .maker-day[open]::details-content { block-size:auto; opacity:1; }
}
.maker-section-title { display:flex; align-items:center; justify-content:space-between; gap:15px; }
.maker-section-title h3 { margin:0 0 4px; color:#f0eee5; font:400 19px var(--serif); }
.maker-section-title p { margin:0; color:#bbc4b7; font-size:10px; }
.maker-media-row { display:grid; grid-template-columns:130px minmax(100px,1fr) 170px minmax(150px,1.3fr) minmax(170px,1fr) auto; gap:10px; align-items:end; margin-top:12px; padding:12px; border:1px solid #586455; background:#1c2921; }
.maker-media-file input[type="file"] { max-width:100%; color:#d3d9ce; font-size:9px; }
.maker-media-row small { color:#b5bfb1; font-size:8px; font-weight:400; letter-spacing:0; line-height:1.4; }
.maker-lesson-footer { display:flex; justify-content:flex-end; margin-top:12px; }
.maker-add-lesson { width:100%; }
.maker-empty { padding:28px; border:1px dashed #77816f; background:#202d25; text-align:center; }
.maker-empty .eyebrow { justify-content:center; color:#d4bc79; }
.maker-empty p { margin:9px 0 0; color:#bdc5b9; font-size:11px; }
.maker-editor-note { display:grid; gap:5px; margin-top:18px; padding:14px 18px; border-left:3px solid #b99a55; background:#202d25; color:#dce0d5; font-size:11px; }
.maker-editor-note small { color:#aeb8a7; }
body[data-preview="phone"] .desktop-only-nav,body[data-preview="tablet"] .desktop-only-nav { display:none; }
.journey-series-icon { --icon-size:64px; width:64px; height:64px; flex:none; }
.journey-series-copy { flex:1; min-width:0; }
.journey-series-copy .eyebrow { color:#d5bd7b; }
.journey-part-icons { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin:10px 0 9px; }
.journey-part-icon { position:relative; display:grid; width:40px; height:40px; flex:none; place-items:center; border:1px solid #798073; border-radius:50%; background:radial-gradient(circle at 35% 28%,#384238,#1b251e 72%); box-shadow:inset 0 1px 3px #d2d1b322,0 2px 5px #0004; cursor:help; transition:filter .2s,transform .2s,border-color .2s,box-shadow .2s; }
.journey-part-icon > .abide-atlas-icon { display:block; width:28px; height:28px; background-repeat:no-repeat; background-size:280px 1400px; background-position:calc(var(--icon-col) * -28px) 0; filter:grayscale(1) opacity(.5); transition:filter .2s; }
.journey-part-icon.is-complete { border-color:color-mix(in srgb,hsl(var(--part-hue) 62% 62%) 78%,#d3bc7a); background:radial-gradient(circle at 38% 30%,hsl(var(--part-hue) 30% 33%),#1b251e 76%); box-shadow:inset 0 0 0 2px hsl(var(--part-hue) 45% 50% / .2),0 0 12px hsl(var(--part-hue) 55% 52% / .22); }
.journey-part-icon.is-complete > .abide-atlas-icon { filter:saturate(1.55) hue-rotate(calc(var(--part-hue) * 1deg)) drop-shadow(0 0 3px hsl(var(--part-hue) 60% 65% / .65)); }
.journey-part-icon:hover,.journey-part-icon:focus-visible { z-index:5; transform:translateY(-2px); border-color:#e4cd8e; outline:none; }
.journey-part-tooltip { position:absolute; z-index:8; left:50%; bottom:calc(100% + 13px); width:max-content; max-width:min(330px,42vw); padding:13px 16px; color:#f3eee1; border:1px solid #b89a56; background:linear-gradient(145deg,#344337,#1b261e); box-shadow:0 10px 28px #0009; font:500 12px/1.5 var(--sans); letter-spacing:.1px; text-align:left; white-space:normal; opacity:0; visibility:hidden; transform:translate(-50%,5px); transition:opacity .16s,transform .16s,visibility .16s; pointer-events:none; }
.journey-part-tooltip::after { position:absolute; left:50%; top:100%; width:9px; height:9px; content:""; border-right:1px solid #b89a56; border-bottom:1px solid #b89a56; background:#263429; transform:translate(-50%,-5px) rotate(45deg); }
.journey-part-icon:hover .journey-part-tooltip,.journey-part-icon:focus-visible .journey-part-tooltip { opacity:1; visibility:visible; transform:translate(-50%,0); }
.journey-series-card .button { flex:none; }
.global-progress { margin-top:11px; max-width:480px; }
.series-progress-label { display:flex; justify-content:space-between; gap:12px; margin-bottom:6px; color:#aeb8a7; font-size:8px; letter-spacing:.7px; }
.series-progress-label b { color:#eadba9; font-size:9px; font-weight:500; letter-spacing:0; }
.global-progress-track { height:7px; overflow:hidden; border:1px solid #625486; background:#191d29; }
.global-progress-track i { display:block; height:100%; background:linear-gradient(90deg,#7960bd,#ac92ed); transition:width .25s ease; }
.button.secondary { color:#f0ead9; background:#29392e; border:1px solid #9b8550; }
.button.secondary:hover { background:#354a39; }
.series-store-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr)); gap:16px; align-items:stretch; }
.series-store-card { position:relative; display:grid; grid-template-columns:78px minmax(0,1fr) auto; align-items:center; gap:18px; width:100%; min-height:188px; padding:22px; text-align:left; color:#f0eee5; border:1px solid #68715f; border-left:3px solid #b99a55; background:linear-gradient(145deg,#28372d,#1d2a22 76%); box-shadow:0 9px 25px #0003; cursor:pointer; transition:transform .16s,border-color .16s,box-shadow .16s; }
.series-store-card:hover { transform:translateY(-3px); border-color:#d0b66e; box-shadow:0 14px 32px #0004; }
.series-store-card:focus-visible { outline:2px solid #d4b86c; outline-offset:3px; }
.store-icon { --icon-size:70px; width:70px; height:70px; flex:none; }
.store-icon img,.series-dialog-icon img { width:100%; height:100%; object-fit:cover; border-radius:50%; }
.store-copy { display:flex; flex-direction:column; gap:7px; min-width:0; }
.store-copy .eyebrow { color:#d5bd7b; font-size:8px; }
.store-copy strong { font:400 25px/1.1 var(--serif); }
.store-description { max-width:380px; color:#c5cbbf; font-size:11px; line-height:1.55; }
.store-meta { margin-top:3px; color:#99a48f; font-size:8px; letter-spacing:1px; }
.store-action { display:flex; align-items:center; gap:8px; color:#e4cd8e; white-space:nowrap; font-size:10px; }
.store-action b { font-size:18px; font-weight:400; }
.series-dialog { width:min(560px,calc(100vw - 32px)); max-width:560px; padding:28px; border:2px solid #b29351; background:#202d25; color:#f0eee5; box-shadow:0 22px 70px #0008; }
.series-dialog::backdrop { background:#101913ba; backdrop-filter:blur(3px); }
.series-dialog .dialog-close { color:#e4cd8e; }
.series-dialog-head { display:flex; align-items:center; gap:18px; padding:5px 24px 21px 0; border-bottom:1px solid #606b59; }
.series-dialog-head-content { flex:1; min-width:0; }
.series-dialog-icon { --icon-size:72px; width:72px; height:72px; flex:none; }
.series-dialog .eyebrow,.series-dialog-body .eyebrow { color:#d4bc79; }
.series-dialog h2 { margin:7px 0 5px; color:#f0eee5; font:400 29px/1.1 var(--serif); }
.series-dialog-head p { margin:0; color:#c5cbbf; font-size:11px; line-height:1.5; }
.modal-series-progress { max-width:none; margin-top:14px; }
.series-dialog-body { padding:19px 0; }
.series-dialog-parts { margin:10px 0 0; padding:0; list-style:none; border-top:1px solid #596455; }
.series-dialog-parts li { display:grid; grid-template-columns:65px 40px minmax(0,1fr) 62px; gap:10px; align-items:center; min-height:61px; padding:7px 0; border-bottom:1px solid #455247; }
.series-dialog-parts .part-index { color:#d4bc79; font-size:8px; letter-spacing:.7px; }
.series-dialog-parts .part-icon { --icon-size:40px; width:40px; height:40px; flex:none; }
.series-dialog-parts .part-atlas-icon { width:28px; height:28px; flex:none; background-size:280px 1400px; background-position:calc(var(--icon-col) * -28px) 0; clip-path:circle(43% at 50% 50%); }
.part-progress-info { min-width:0; }
.part-progress-label { display:flex; justify-content:space-between; align-items:baseline; gap:8px; margin-bottom:5px; }
.part-progress-label b { overflow:hidden; color:#e8e7dc; font:400 15px/1.15 var(--serif); text-overflow:ellipsis; }
.part-progress-label span { flex:none; color:#aab3a4; font-size:8px; }
.part-progress-track { height:5px; overflow:hidden; border:1px solid #42617a; background:#18232d; }
.part-progress-track i { display:block; height:100%; background:linear-gradient(90deg,#3784c7,#66b6f1); transition:width .25s ease; }
.series-dialog-parts .part-total { color:#aab3a4; font-size:8px; text-align:right; }
.series-dialog .button { width:100%; }
.series-dialog button[hidden] { display:none; }
.series-dialog-note { margin:10px 0 0; text-align:center; color:#aeb7a8; font-size:9px; }
@media(max-width:760px) {
  .curriculum-series { margin:14px -6px 24px; padding:14px; }
  .series-heading h2 { font-size:24px; }
  .curriculum-part summary { grid-template-columns:55px minmax(0,1fr) auto 18px; gap:7px; min-height:54px; }
  .part-title { font-size:16px; }
  .part-count { font-size:9px; }
  .part-lessons { grid-template-columns:1fr; gap:8px; padding:0 0 12px 0; }
  .part-lessons .library-card { min-height:130px; }
  .journey-empty,.journey-series-card { align-items:flex-start; flex-direction:column; gap:12px; padding:16px; }
  .journey-series-actions { width:100%; align-items:stretch; }
  .journey-remove { align-self:center; padding:8px; }
  .journey-part-icon { width:36px; height:36px; }
  .journey-part-icon > .abide-atlas-icon { width:26px; height:26px; background-size:260px 1300px; background-position:calc(var(--icon-col) * -26px) 0; }
  .journey-part-tooltip { display:none; }
  .journey-empty .button,.journey-series-card .button { width:100%; }
  .series-store-card { grid-template-columns:54px minmax(0,1fr); gap:12px; min-height:0; padding:16px; }
  .store-icon { --icon-size:50px; width:50px; height:50px; }
  .store-copy strong { font-size:21px; }
  .store-action { grid-column:2; }
  .series-dialog { padding:22px 18px; }
  .maker-welcome { align-items:flex-start; flex-direction:column; gap:14px; padding:20px; }
  .maker-structure-grid { grid-template-columns:1fr; }
  .maker-series-fields,.maker-part-fields,.maker-lesson-fields,.maker-day-grid { grid-template-columns:1fr; }
  .maker-part-header { gap:8px; padding:12px 12px 12px 52px; }
  .maker-part-drag { width:38px; }
  .maker-part-number { font-size:8px; }
  .maker-part-title { font-size:12px; }
  .maker-part-actions { gap:7px; }
  .maker-part-content { padding:0 12px 14px; }
  .maker-day-fields { grid-template-columns:1fr; }
  .maker-day-fields > label { grid-column:1/-1; }
  .maker-media-row { grid-template-columns:1fr; }
  .maker-toolbar,.maker-section-title { align-items:stretch; flex-direction:column; }
  .maker-library-toolbar,.maker-editor-toolbar,.maker-series-card { align-items:stretch; flex-direction:column; }
  .maker-editor-actions { align-items:stretch; flex-wrap:wrap; }
  .maker-editor-actions > span { width:100%; }
  .maker-series-card .button { width:100%; }
  .maker-series-card-actions { width:100%; flex-direction:column; }
  .maker-preview-dialog { width:calc(100vw - 20px); max-height:calc(100vh - 20px); padding:18px 14px; }
  .maker-preview-layout { grid-template-columns:1fr; gap:12px; }
  .maker-preview-outline { order:2; }
  .maker-preview-lesson { order:1; }
  .maker-preview-topline { font-size:7px; }
  .maker-preview-controls { flex-wrap:wrap; }
  .maker-preview-lesson-head nav button { flex:1; }
  .maker-notation-sheet { width:100vw; max-width:none; max-height:72vh; padding:26px 19px 24px; }
  .maker-scripture-selects { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .maker-scripture-range-separator { display:none; }
  .maker-get-scripture { width:100%; }
  .maker-lesson-fields .maker-wide { grid-column:auto; }
  .outline-part-heading { grid-template-columns:46px minmax(0,1fr); gap:9px; padding:14px; }
  .outline-part-count { grid-column:2; }
  .outline-lessons { padding:0 14px 3px; }
  .outline-lesson { align-items:stretch; flex-direction:column; gap:11px; }
  .outline-lesson .button { width:100%; }
  .outline-lesson.is-active { margin:0 -8px; padding-right:8px; padding-left:8px; }
  .reflection-series-group { padding:15px; }
  .journal-howto h2 { font-size:22px; }
  .series-dialog-parts li { grid-template-columns:47px 34px minmax(0,1fr) 44px; gap:6px; }
  .series-dialog-parts .part-icon { --icon-size:34px; width:34px; height:34px; }
  .series-dialog-parts .part-atlas-icon { width:24px; height:24px; background-size:240px 1200px; background-position:calc(var(--icon-col) * -24px) 0; }
}
body[data-preview="phone"] .series-store-card { grid-template-columns:54px minmax(0,1fr); gap:12px; min-height:0; padding:15px; }
body[data-preview="phone"] .store-icon { --icon-size:50px; width:50px; height:50px; }
body[data-preview="phone"] .store-copy strong { font-size:20px; }
body[data-preview="phone"] .store-action { grid-column:2; }
body[data-preview="phone"] .journey-empty,body[data-preview="phone"] .journey-series-card { align-items:flex-start; flex-direction:column; gap:11px; }
body[data-preview="phone"] .journey-series-actions { width:100%; align-items:stretch; }
body[data-preview="phone"] .journey-remove { align-self:center; padding:8px; }
body[data-preview="phone"] .journey-part-icon { width:36px; height:36px; }
body[data-preview="phone"] .journey-part-icon > .abide-atlas-icon { width:26px; height:26px; background-size:260px 1300px; background-position:calc(var(--icon-col) * -26px) 0; }
body[data-preview="phone"] .journey-part-tooltip { display:none; }
body[data-preview="phone"] .journey-empty .button,body[data-preview="phone"] .journey-series-card .button { width:100%; }
body[data-preview="phone"] .series-dialog { width:min(360px,calc(100vw - 48px)); max-height:calc(100vh - 36px); overflow:auto; }
body[data-preview="phone"] .maker-structure-grid,body[data-preview="tablet"] .maker-structure-grid { grid-template-columns:1fr; }
body[data-preview="phone"] .maker-welcome,body[data-preview="tablet"] .maker-welcome { align-items:flex-start; flex-direction:column; gap:14px; padding:20px; }
body[data-preview="phone"] .maker-series-fields,body[data-preview="tablet"] .maker-series-fields,body[data-preview="phone"] .maker-part-fields,body[data-preview="tablet"] .maker-part-fields,body[data-preview="phone"] .maker-lesson-fields,body[data-preview="tablet"] .maker-lesson-fields,body[data-preview="phone"] .maker-day-grid,body[data-preview="tablet"] .maker-day-grid { grid-template-columns:1fr; }
body[data-preview="phone"] .maker-day-fields,body[data-preview="tablet"] .maker-day-fields { grid-template-columns:1fr; }
body[data-preview="phone"] .maker-day-fields > label,body[data-preview="tablet"] .maker-day-fields > label { grid-column:1/-1; }
body[data-preview="tablet"][data-orientation="landscape"] .maker-day-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
body[data-preview="tablet"][data-orientation="landscape"] .maker-day-fields > label:nth-child(n+3) { grid-column:auto; }
body[data-preview="phone"] .maker-media-row,body[data-preview="tablet"] .maker-media-row { grid-template-columns:1fr; }
body[data-preview="phone"] .maker-preview-dialog,body[data-preview="tablet"] .maker-preview-dialog { width:calc(100vw - 24px); max-height:calc(100vh - 24px); }
body[data-preview="phone"] .maker-preview-layout,body[data-preview="tablet"] .maker-preview-layout { grid-template-columns:1fr; gap:12px; }
body[data-preview="phone"] .maker-preview-outline,body[data-preview="tablet"] .maker-preview-outline { order:2; }
body[data-preview="phone"] .maker-preview-lesson,body[data-preview="tablet"] .maker-preview-lesson { order:1; }
body[data-preview="phone"] .maker-lesson-fields .maker-wide,body[data-preview="tablet"] .maker-lesson-fields .maker-wide { grid-column:auto; }
body[data-preview="phone"] .maker-scripture-selects,body[data-preview="tablet"] .maker-scripture-selects { grid-template-columns:repeat(2,minmax(0,1fr)); }
body[data-preview="phone"] .maker-scripture-range-separator,body[data-preview="tablet"] .maker-scripture-range-separator { display:none; }
body[data-preview="phone"] .outline-part-heading { grid-template-columns:46px minmax(0,1fr); gap:9px; padding:14px; }
body[data-preview="phone"] .outline-part-count { grid-column:2; }
body[data-preview="phone"] .outline-lessons { padding:0 14px 3px; }
body[data-preview="phone"] .outline-lesson { align-items:stretch; flex-direction:column; gap:11px; }
body[data-preview="phone"] .outline-lesson .button { width:100%; }
body[data-preview="phone"] .reflection-series-group { padding:15px; }
body[data-preview="phone"] .series-dialog-parts li { grid-template-columns:45px 34px minmax(0,1fr) 42px; gap:6px; }
body[data-preview="phone"] .series-dialog-parts .part-icon { --icon-size:34px; width:34px; height:34px; }
body[data-preview="phone"] .series-dialog-parts .part-atlas-icon { width:24px; height:24px; background-size:240px 1200px; background-position:calc(var(--icon-col) * -24px) 0; }
/* Public welcome page and account entry */
body:not(.preview-entered) .app-shell{display:none}
body.preview-entered .public-home{display:none}
.public-home{min-height:100vh;color:#eef0e7;background:#17241d;overflow:hidden;--public-gold:#d2b36d;--public-muted:#c1c9bc}
.public-home[hidden]{display:none}
.public-header{height:82px;max-width:1440px;margin:0 auto;padding:0 clamp(22px,6vw,88px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #75806b55;position:relative;z-index:2}
.public-brand{display:inline-flex;align-items:center;gap:9px;color:#f3f0e5;text-decoration:none;font:500 29px/1 var(--serif);letter-spacing:-.7px}
.public-brand-mark{width:34px;height:34px;display:grid;place-items:center;color:var(--public-gold);font:24px/1 var(--serif)}
.public-nav{display:flex;align-items:center;gap:13px}.public-nav>a{margin-right:12px;color:#c8d0c3;text-decoration:none;font-size:12px}.public-nav .button{min-height:40px}
.public-home .button.secondary{background:#24352a;color:#eeeade;border:1px solid #68755f;border-radius:3px}
.public-hero{min-height:610px;max-width:1440px;margin:0 auto;padding:58px clamp(22px,6vw,88px) 42px;display:grid;grid-template-columns:minmax(0,.94fr) minmax(360px,1.06fr);align-items:center;gap:20px;position:relative}
.public-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 79% 48%,#344836 0,transparent 47%);pointer-events:none}
.public-hero-copy{position:relative;z-index:1;max-width:630px}.public-hero-copy>.eyebrow,.public-section-heading>.eyebrow,.public-invitation .eyebrow{color:var(--public-gold);font-weight:700;font-size:10px;letter-spacing:2px}
.public-hero h1{margin:22px 0 18px;color:#f1eee2;font:400 clamp(42px,5vw,68px)/1.03 var(--serif);letter-spacing:-1.3px}.public-hero h1 em{color:#d9c58f;font-style:normal}
.public-hero-copy>p{max-width:485px;color:#c3cbbf;font:16px/1.8 var(--sans)}.public-hero-actions{display:flex;align-items:center;gap:24px;margin:26px 0 30px}.public-hero-actions .button{min-height:48px;font-size:13px}
.public-text-button{border:0;background:transparent;color:#dfd7bd;font:500 12px var(--sans);cursor:pointer}.public-text-button span{color:var(--public-gold);margin-left:5px}
.public-scripture{display:grid;gap:7px;padding-left:14px;border-left:2px solid #b99954;color:#e3decf;font:italic 17px/1.4 var(--serif)}.public-scripture b{color:#c4b27c;font:700 9px var(--sans);letter-spacing:1.6px}
.public-hero-art{position:relative;z-index:1;min-height:440px;display:grid;place-items:center}.public-hero-art img{width:min(112%,720px);height:500px;object-fit:contain;filter:drop-shadow(0 20px 26px #070c0880)}
.public-art-caption{position:absolute;right:2%;bottom:30px;display:grid;gap:6px;padding:13px 17px;border-left:2px solid var(--public-gold);background:#1c2d23dd;box-shadow:0 8px 28px #0004}.public-art-caption span{color:#c8b57a;font-size:8px;letter-spacing:1.5px}.public-art-caption b{color:#ece9de;font:500 15px var(--serif)}
.public-journey{padding:74px clamp(22px,6vw,88px) 88px;background:#202e25;border-top:1px solid #68745d66;border-bottom:1px solid #68745d66}.public-section-heading{text-align:center;max-width:650px;margin:0 auto 38px}.public-section-heading h2,.public-invitation h2{font:400 clamp(30px,3vw,42px)/1.15 var(--serif);color:#f0eee3;margin:12px 0}.public-section-heading p{color:#bdc6b9;font-size:14px;line-height:1.7;margin:0}
.public-steps{max-width:1080px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.public-steps article{min-height:220px;padding:23px 24px;background:#26382c;border:1px solid #66715a;border-top:2px solid #b59854;position:relative}.public-step-number{position:absolute;right:17px;top:17px;color:#aeb9a7;font-size:9px;letter-spacing:1px}.public-step-icon{width:40px;height:40px;display:grid;place-items:center;color:#e0c982;border:1px solid #9b8550;border-radius:50%;font:22px var(--serif)}.public-steps h3{margin:16px 0 7px;color:#f1eee4;font:500 23px var(--serif)}.public-steps p{margin:0;color:#c0c8bb;font-size:12px;line-height:1.7}
.public-invitation{max-width:1080px;margin:0 auto;padding:56px 22px;display:flex;justify-content:space-between;align-items:center;gap:24px}.public-invitation h2{max-width:630px;font-size:clamp(28px,3vw,40px);margin-bottom:0}.public-invitation .button{flex:none;min-height:48px}
.public-footer{min-height:88px;padding:17px clamp(22px,6vw,88px);display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid #74806a55;color:#aeb8aa;font-size:10px}.public-footer .public-brand{font-size:21px}.public-footer .public-brand-mark{width:27px;height:27px;font-size:20px}
.auth-dialog{width:min(440px,calc(100vw - 28px));max-width:none;max-height:calc(100dvh - 32px);overflow:auto;padding:29px 32px 25px;background:#e7e4da;color:#26362b;border:2px solid #ad9150;border-radius:5px}.auth-dialog .dialog-close{color:#596655}.auth-brand{display:flex;align-items:center;gap:5px;margin:0 0 23px;color:#294332;font:500 23px var(--serif)}.auth-brand .public-brand-mark{width:25px;height:25px;font-size:20px}.auth-dialog>.eyebrow{color:#72806d}.auth-dialog h2{margin:8px 0;font-size:31px;color:#26392d}.auth-dialog>p{color:#59675c}.auth-provider-note{display:grid;gap:4px;margin:17px 0;padding:12px 14px;background:#d9ddcf;border-left:3px solid #b59953;color:#465445;font-size:11px;line-height:1.5}.auth-provider-note b{color:#344734}.auth-google{width:100%;min-height:44px;display:flex;justify-content:center;align-items:center;gap:10px;background:#fbfaf5;border:1px solid #a9ad9f;border-radius:3px;color:#303b33;font:600 12px var(--sans);cursor:pointer}.google-g{font:bold 16px Arial;color:#4285f4}.auth-divider{display:flex;align-items:center;gap:11px;margin:18px 0;color:#7d887b;font-size:8px;letter-spacing:1.2px}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:#c2c3b7}.auth-dialog form{display:grid;gap:8px}.auth-dialog form label{margin-top:3px;color:#455448;font-size:10px;font-weight:700}.auth-dialog form input{width:100%;height:43px;padding:0 12px;color:#26372b;background:#f8f7f0;border:1px solid #b9bdaf;border-radius:3px;font:13px var(--sans)}.auth-submit{width:100%;margin-top:10px}.auth-switch{text-align:center;margin:18px 0 7px!important;font-size:11px!important}.auth-switch button{padding:0;border:0;background:transparent;color:#426344;font:700 11px var(--sans);cursor:pointer}.auth-privacy{margin:13px 0 0!important;text-align:center;font-size:9px!important;line-height:1.5!important;color:#758074!important}
@media(max-width:850px){.public-hero{min-height:540px;grid-template-columns:1fr .85fr;padding-top:45px}.public-hero h1{font-size:clamp(38px,6vw,54px)}.public-hero-art{min-height:360px}.public-hero-art img{height:390px}.public-steps{gap:10px}.public-steps article{padding:19px 17px}}
@media(max-width:620px){.public-header{height:67px;padding:0 19px}.public-brand{font-size:25px}.public-brand-mark{width:28px;height:28px}.public-nav{gap:8px}.public-nav>a{display:none}.public-nav .button{min-height:37px;padding:0 11px;font-size:11px}.public-hero{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:51px 21px 28px;min-height:0}.public-hero-copy{order:1}.public-hero h1{font-size:43px;letter-spacing:-.8px;margin:16px 0 13px}.public-hero-copy>p{font-size:14px;line-height:1.7}.public-hero-actions{gap:15px;margin:21px 0;flex-wrap:wrap}.public-hero-actions .button{min-height:44px}.public-scripture{font-size:15px}.public-hero-art{order:2;min-height:275px;margin-top:3px}.public-hero-art img{height:300px;width:110%}.public-art-caption{right:0;bottom:12px;padding:10px 13px}.public-art-caption b{font-size:13px}.public-journey{padding:53px 20px 56px}.public-section-heading{margin-bottom:26px}.public-section-heading h2{font-size:31px}.public-section-heading p{font-size:12px}.public-steps{grid-template-columns:1fr;gap:10px}.public-steps article{min-height:0;padding:17px 18px}.public-step-icon{width:34px;height:34px;font-size:19px}.public-steps h3{margin:11px 0 4px;font-size:21px}.public-steps p{font-size:11px}.public-invitation{padding:39px 21px;align-items:flex-start;flex-direction:column}.public-invitation h2{font-size:30px}.public-footer{padding:18px 20px;display:grid;grid-template-columns:1fr auto}.public-footer>span:last-child{grid-column:1/-1}.auth-dialog{padding:26px 22px 22px}}
.auth-forgot{justify-self:end;padding:2px 0;border:0;background:transparent;color:#4a684b;font:600 10px var(--sans);cursor:pointer}.auth-signout{width:100%;margin-top:8px}
.auth-dialog [hidden]{display:none!important}
