:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--bg: #f7f6f0;--vellum: #fffdf8;--panel: #ffffff;--panel-soft: #f3f6f5;--ink: #152233;--muted: #60717e;--faint: #d9dfdc;--line: #cfd8d8;--blue: #0f4b63;--blue-dark: #123e51;--blue-soft: #e7f0f2;--gold: #b98b3f;--gold-dark: #8d6728;--gold-soft: #f6eddc;--danger: #7b352f;--shadow: 0 22px 56px rgba(32, 47, 57, .1)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(90deg,rgba(15,75,99,.04) 1px,transparent 1px),radial-gradient(circle at 18% 0%,rgba(185,139,63,.12),transparent 30rem),linear-gradient(135deg,#fbfaf5 0%,var(--bg) 52%,#edf4f4 100%);background-size:44px 44px,auto,auto;color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(185,139,63,.34);outline-offset:2px}.app-shell{min-height:100vh}.topbar{position:relative;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:64px;padding:10px 28px;border-bottom:1px solid rgba(255,255,255,.22);background:linear-gradient(180deg,#0c465d,#0b3f54);color:#fffdf8;box-shadow:0 14px 30px #0f4b632e}.brand,.topbar-actions,.list-heading,.panel-heading,.write-in-actions,.nav-actions,.entry-controls{display:flex;align-items:center}.brand{min-width:0;gap:13px}.brand-mark{display:grid;flex:0 0 auto;width:38px;height:38px;place-items:center}.brand-mark svg{display:block;width:38px;height:38px}.seal-halo{fill:#fffdf80d;stroke:#b98b3f61;stroke-width:1}.seal-ring{fill:none;stroke:var(--gold);stroke-width:1.7}.seal-cross{fill:none;stroke:var(--gold);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5}.brand h1,.list-heading h2,.exam-panel h2{margin:0;font-family:Georgia,Times New Roman,serif;letter-spacing:0}.brand h1{font-size:1.22rem;letter-spacing:.16em;text-transform:uppercase}.brand p{margin:2px 0 0;color:#fffdf8b8;font-size:.82rem}.topbar-actions{gap:12px}.privacy-pill{padding:8px 12px;border:1px solid rgba(255,253,248,.22);border-radius:999px;background:#ffffff14;color:#fffdf8;font-size:.82rem;font-weight:800}.ghost-button,.secondary-button,.primary-button,.menu-button,.drawer-close{min-height:40px;border-radius:8px;border:1px solid transparent;padding:0 14px;font-size:.9rem;font-weight:800}.ghost-button,.menu-button{border-color:#fffdf833;background:#ffffff14;color:#fffdf8}.secondary-button,.drawer-close{border-color:#0f4b633d;background:#fff;color:var(--blue-dark)}.menu-button{min-width:64px}.primary-button{background:linear-gradient(180deg,#145a73,var(--blue));color:#fff;box-shadow:0 12px 28px #0f4b632e}.app-layout{display:grid;grid-template-columns:minmax(330px,380px) minmax(0,1fr);gap:28px;width:min(1480px,calc(100% - 48px));margin:0 auto;padding:30px 0}.desktop-rail{position:sticky;top:30px;display:flex;flex-direction:column;align-self:start;max-height:calc(100vh - 118px);overflow:auto;padding-right:6px}.workspace{min-width:0}.exam-panel,.list-panel,.depth-card{border:1px solid rgba(207,216,216,.92);border-radius:8px;background:#fffdf8f0;box-shadow:var(--shadow)}.drawer-layer{position:fixed;inset:0;z-index:50;pointer-events:none;visibility:hidden}.drawer-layer.open{pointer-events:auto;visibility:visible}.drawer-backdrop{position:absolute;inset:0;border:0;background:#15223300;cursor:default;transition:background .16s ease}.drawer-layer.open .drawer-backdrop{background:#1522334d}.drawer-panel{position:relative;display:flex;flex-direction:column;gap:14px;width:min(420px,calc(100vw - 28px));height:100%;overflow:auto;padding:18px 16px;border-right:1px solid rgba(207,216,216,.92);background:#fffdf8fc;box-shadow:22px 0 54px #15223333;transform:translate(-104%);transition:transform .18s ease}.drawer-layer.open .drawer-panel{transform:translate(0)}.desktop-rail .drawer-heading{display:block;margin:6px 0 12px}.drawer-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.drawer-heading span,.panel-heading span,.list-heading span,.final-statement-heading span{color:var(--gold-dark);font-size:.78rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.drawer-heading h2{margin:3px 0 0;font-family:Georgia,Times New Roman,serif;font-size:1.5rem}.drawer-close{min-height:34px;padding:0 11px;font-size:.8rem}.depth-card{padding:14px;box-shadow:none}.depth-card h2,.entry-group h3{margin:0 0 10px;color:var(--blue-dark);font-size:.84rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.depth-card p{margin:11px 0 0;color:var(--muted);font-size:.88rem;line-height:1.48}.depth-options{display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;border:1px solid rgba(15,75,99,.18);border-radius:8px;background:#fff}.depth{min-height:40px;border:0;border-right:1px solid rgba(15,75,99,.14);background:transparent;color:var(--blue-dark);font-size:.86rem;font-weight:800}.depth:last-child{border-right:0}.depth.active{background:linear-gradient(180deg,#145a73,var(--blue));color:#fff}.journey{position:relative;display:grid;gap:10px;margin:22px 0 18px;padding-left:6px}.journey:before{content:"";position:absolute;top:12px;bottom:12px;left:14px;width:1px;background:var(--line)}.journey-step{position:relative;display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:start;color:var(--muted)}.journey-step strong{display:block;color:var(--ink);font-size:.92rem}.journey-step span:last-child{display:block;margin-top:2px;font-size:.8rem}.step-dot{position:relative;z-index:1;width:13px;height:13px;margin-top:5px;border:2px solid #9baab0;border-radius:999px;background:var(--vellum)}.journey-step.active .step-dot{border-color:var(--gold);background:var(--gold);box-shadow:0 0 0 5px #b98b3f24}.section-list{display:grid;gap:5px;max-height:290px;overflow:auto;padding-right:2px}.section-link{display:grid;grid-template-columns:32px 1fr;gap:8px;align-items:center;width:100%;min-height:38px;padding:8px 9px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);text-align:left;font-size:.86rem}.section-link span{color:var(--gold-dark);font-size:.74rem;font-weight:900}.section-link.active{border-color:#b98b3f2e;background:linear-gradient(90deg,#f6eddceb,#fffdf8b3);color:var(--ink)}.exam-panel{position:relative;min-height:calc(100vh - 124px);overflow:hidden;padding:34px}.exam-panel:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(15,75,99,.035) 1px,transparent 1px),linear-gradient(180deg,rgba(15,75,99,.025) 1px,transparent 1px);background-size:42px 42px;-webkit-mask-image:linear-gradient(135deg,rgba(0,0,0,.32),transparent 44%);mask-image:linear-gradient(135deg,rgba(0,0,0,.32),transparent 44%)}.exam-panel>*{position:relative}.panel-heading{justify-content:space-between;gap:12px;margin-bottom:18px}.panel-heading strong{color:var(--blue-dark);font-size:.8rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.exam-panel h2{max-width:880px;color:var(--ink);font-size:clamp(2rem,3.1vw,3.15rem);line-height:1.02}.start-panel{display:grid;align-content:center}.start-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(270px,.85fr);gap:28px;align-items:end}.start-copy{display:grid;gap:18px;max-width:720px}.start-copy .brand-mark,.start-copy .brand-mark svg{width:62px;height:62px}.start-copy h2{max-width:720px;font-size:clamp(2.4rem,5.4vw,5.2rem)}.start-copy p{max-width:640px;margin:0;color:var(--muted);font-size:1.13rem;line-height:1.62}.start-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:8px}.start-actions .primary-button{min-width:190px}.start-actions span{color:var(--blue-dark);font-size:.9rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.start-depth-card{padding:18px;border:1px solid rgba(185,139,63,.28);border-radius:8px;background:linear-gradient(180deg,#fffdf8f5,#f6eddca3);box-shadow:0 16px 34px #202f3914}.start-depth-card h3{margin:0 0 12px;color:var(--blue-dark);font-size:.9rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.start-depth-card p{margin:12px 0 0;color:var(--muted);font-size:.88rem;line-height:1.48}.scripture-card{display:grid;gap:7px;max-width:780px;margin:18px 0;padding:14px 16px;border:1px solid rgba(185,139,63,.24);border-left:4px solid var(--gold);border-radius:8px;background:#fffdf8db;box-shadow:0 10px 26px #202f390f}.scripture-card figcaption{color:var(--gold-dark);font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.scripture-card blockquote{margin:0;color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:1.02rem;line-height:1.46}.scripture-card p{margin:0;color:var(--muted);font-size:.86rem;font-weight:750}.intro{margin:0 0 24px;max-width:820px;color:var(--muted);font-size:1.04rem;line-height:1.62}.prep-note{margin:-4px 0 20px;padding:15px 17px;border:1px solid rgba(15,75,99,.16);border-radius:8px;background:#f3f6f5db;color:var(--blue-dark)}.prep-note h3{margin:0 0 6px;font-size:.98rem}.prep-note p{margin:0;color:var(--muted);font-size:.93rem;line-height:1.5}.criteria-list{display:grid;gap:0;overflow:hidden;border:1px solid rgba(207,216,216,.92);border-radius:8px;background:#ffffffbd}.criteria-row{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:start;padding:15px 17px;border-bottom:1px solid rgba(207,216,216,.9);line-height:1.46}.criteria-row:last-child{border-bottom:0}.criteria-row span{width:9px;height:9px;margin-top:8px;border-radius:2px;background:var(--gold);transform:rotate(45deg)}.criteria-row p{margin:0}.note-list .criteria-row{background:#f3f6f5b3}.note-list .criteria-row span{background:var(--blue)}.write-in-row,.final-statement,.guidance,.nav-actions{margin-top:20px}.write-in-row{padding:18px;border:1px solid rgba(185,139,63,.26);border-radius:8px;background:linear-gradient(180deg,#fffdf8f5,#f6eddcb8)}.write-in-actions{align-items:end;justify-content:space-between;gap:14px;margin-top:12px}.category-picker{display:grid;flex:1;gap:8px;min-width:0;margin:0;padding:0;border:0}.category-picker legend,.field-label{color:var(--blue-dark);font-size:.84rem;font-weight:900}.category-picker legend{margin-bottom:7px}.category-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.category-choice{display:grid;place-items:center;gap:2px;min-height:44px;padding:8px;border:1px solid rgba(15,75,99,.2);border-radius:8px;background:#ffffffe6;color:var(--blue-dark);font-size:.84rem;font-weight:800;line-height:1.15}.category-choice small{color:inherit;font-size:.68rem;font-weight:750;opacity:.82}.category-choice.recommended{border-color:#0f4b6357;background:var(--blue-soft)}.category-choice.active{border-color:#0f4b637a;background:linear-gradient(180deg,#145a73,var(--blue));color:#fff;box-shadow:0 10px 24px #0f4b632e}.category-picker p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.36}.field-label{display:grid;gap:8px}.final-statement{padding:18px;border:1px solid rgba(15,75,99,.18);border-radius:8px;background:#fff}.final-statement-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.final-statement-heading h3{margin:3px 0 0;font-family:Georgia,Times New Roman,serif;font-size:1.4rem}.final-statement textarea{min-height:320px}.final-statement p{margin:12px 0 0;color:var(--muted);font-size:.9rem;line-height:1.45}input,select,textarea{width:100%;border:1px solid rgba(15,75,99,.22);border-radius:8px;background:#fff;color:var(--ink);font-weight:500}input,select{min-height:40px;padding:0 11px}textarea{resize:vertical;padding:12px;line-height:1.48}.last-confession{margin-bottom:20px;max-width:420px}.guidance{display:grid;gap:8px;padding:14px 16px;border:1px solid rgba(207,216,216,.92);border-left:4px solid var(--gold);border-radius:8px;background:#fffdf8d1}.guidance p{margin:0;color:var(--muted);font-size:.91rem;line-height:1.45}.nav-actions{justify-content:space-between;gap:12px;margin-top:28px}.nav-actions button{min-width:150px}.list-panel{margin-top:18px;max-height:none;overflow:auto;padding:16px;box-shadow:none}.list-heading{justify-content:space-between;gap:14px}.list-heading h2{margin-top:3px;font-size:1.45rem}.list-heading strong{display:grid;width:42px;height:42px;place-items:center;border-radius:8px;background:linear-gradient(180deg,#145a73,var(--blue));color:#fff}.list-helper{margin:14px 0 16px;color:var(--muted);font-size:.9rem;line-height:1.48}.entry-group{padding:12px 0;border-top:1px solid rgba(207,216,216,.92)}.entry-group h3{margin-bottom:8px}.empty{margin:0;color:var(--muted);font-size:.86rem}.entry-stack{display:grid;gap:10px}.entry-card{padding:11px;border:1px solid rgba(207,216,216,.92);border-radius:8px;background:#fff}.entry-card p{margin:0 0 10px;font-size:.9rem;line-height:1.45}.entry-controls{display:grid;grid-template-columns:1fr;gap:7px}.entry-controls button{min-height:34px;border:1px solid rgba(123,53,47,.22);border-radius:8px;background:#fff8f6;color:var(--danger);font-size:.82rem;font-weight:850}.closing-line{margin-top:14px;padding:14px;border-radius:8px;background:var(--panel-soft);color:var(--blue-dark);font-family:Georgia,Times New Roman,serif;line-height:1.36}@media(max-width:1180px){.app-layout{grid-template-columns:minmax(300px,340px) minmax(0,1fr);gap:20px;width:min(100% - 32px,1180px)}.exam-panel{padding:28px}.entry-controls{grid-template-columns:1fr 1fr auto}.desktop-rail .entry-controls{grid-template-columns:1fr}}@media(max-width:920px){.topbar{padding:10px 14px}.brand h1{font-size:1rem;letter-spacing:.08em}.brand p{display:none}.topbar-actions{gap:8px}.privacy-pill{display:none}.app-layout{display:block;width:auto;padding:14px 12px 24px}.desktop-rail{display:none}.exam-panel{min-height:auto;padding:20px}.exam-panel h2{font-size:clamp(1.85rem,8vw,2.45rem)}.start-panel{align-content:start}.start-layout{grid-template-columns:1fr;gap:22px}.start-copy .brand-mark,.start-copy .brand-mark svg{width:52px;height:52px}.start-copy h2{font-size:clamp(2.2rem,11vw,3.5rem)}.intro{font-size:.98rem}.section-list{max-height:260px}.category-options{grid-template-columns:repeat(2,minmax(0,1fr))}.write-in-actions,.final-statement-heading,.entry-controls,.nav-actions{display:grid;grid-template-columns:1fr}.nav-actions button{width:100%}}@media(max-width:520px){.brand-mark,.brand-mark svg{width:34px;height:34px}.brand h1{font-size:.92rem}.scripture-card{gap:6px;margin:14px 0 16px;padding:12px 13px}.scripture-card blockquote{font-size:.94rem;line-height:1.42}.start-actions{display:grid;grid-template-columns:1fr}.ghost-button,.menu-button{min-height:36px;padding:0 10px;font-size:.82rem}.drawer-panel{width:min(390px,calc(100vw - 18px))}}
