:root,:root[data-tone=spiritual]{--sky-top: #eef0fa;--sky-bottom: #fcefe6;--ink: #26274a;--muted: #54567a;--line: #c9cbe6;--accent: #3b3d8f;--accent-ink: #ffffff;--glow: rgba(244, 196, 98, .55);--glow-size: 22rem;--note-bg: rgba(255, 255, 255, .6);--err: #8a1c1c;--msg-font: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--rule: transparent}:root[data-tone=secular]{--sky-top: #f3f4f6;--sky-bottom: #f3f4f6;--ink: #1b1f24;--muted: #555d67;--line: #cfd4da;--accent: #1f5f5b;--accent-ink: #ffffff;--glow: transparent;--glow-size: 0;--note-bg: #ffffff;--err: #8a1c1c;--msg-font: "Avenir Next", "Segoe UI", system-ui, -apple-system, Roboto, sans-serif;--rule: #1f5f5b}body:not(.user){margin:0;font-family:Georgia,Times New Roman,serif;background:#f6f1e7;color:#2d2a24}body.user{margin:0;min-height:100vh;min-height:100dvh;color:var(--ink);background:linear-gradient(180deg,var(--sky-top) 0%,var(--sky-bottom) 100%) fixed;font:1.125rem/1.55 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-text-size-adjust:100%}.shell *,.shell *:before,.shell *:after{box-sizing:border-box}.shell{max-width:34rem;margin:0 auto;padding:1.25rem 1.25rem calc(5.5rem + env(safe-area-inset-bottom))}.shell.bare{padding-bottom:2rem}.shell h1{font-size:1.5rem;line-height:1.25;margin:.25rem 0 .75rem;font-weight:650}.shell h2{font-size:1.25rem;line-height:1.3;margin:1.75rem 0 .5rem;font-weight:650}.shell p{margin:0 0 .9rem;max-width:62ch}.shell a{color:var(--accent);text-underline-offset:3px}.shell .muted{color:var(--muted)}.shell .small{font-size:1rem}.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:#fff;padding:.75rem 1rem;z-index:50}.skip:focus{left:.5rem;top:.5rem}.shell :is(a,button,input,select,textarea,summary):focus-visible,.tabbar a:focus-visible{outline:3px solid #1a56db;outline-offset:3px;border-radius:6px}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:10;display:flex;justify-content:center;background:color-mix(in srgb,var(--sky-top) 88%,white);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.tabbar ul{display:flex;width:100%;max-width:34rem;margin:0;padding:0;list-style:none}.tabbar li{flex:1}.tabbar a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;min-height:3.75rem;color:var(--muted);text-decoration:none;font-size:1rem;font-weight:600}.tabbar a[aria-current=page]{color:var(--accent);box-shadow:inset 0 3px 0 var(--accent)}.tabbar svg{width:1.5rem;height:1.5rem}.shell .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:3rem;min-width:3rem;padding:.55rem 1.25rem;font:inherit;font-weight:650;text-decoration:none;cursor:pointer;color:var(--ink);background:transparent;border:2px solid var(--ink);border-radius:.5rem}.shell .btn.primary{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}.shell .btn.quiet{border-color:transparent;color:var(--accent);text-decoration:underline;text-underline-offset:3px}.shell .btn.danger{color:var(--err);border-color:var(--err)}.shell .btn.block{display:flex;width:100%}.shell .btn[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.shell .btn:disabled{opacity:.55;cursor:not-allowed}.shell .row{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}.shell .stack>*+*{margin-top:.9rem}.shell .choice{display:flex;gap:.9rem;align-items:flex-start;width:100%;min-height:3.5rem;padding:.9rem 1rem;text-align:left;cursor:pointer;font:inherit;color:var(--ink);background:var(--note-bg);border:2px solid var(--muted);border-radius:.75rem}.shell .choice[aria-checked=true],.choice:has(input:checked){border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.shell .choice strong{display:block;font-weight:650}.shell .choice .muted{display:block;font-size:1rem}.shell .choice input{margin-top:.3rem;width:1.4rem;height:1.4rem;accent-color:var(--accent);flex:none}.shell .field{display:block;margin:0 0 1rem}.shell .field>span{display:block;font-weight:650;margin-bottom:.35rem}.shell .field :is(input,select,textarea){width:100%;min-height:3rem;padding:.55rem .8rem;font:inherit;color:var(--ink);background:#fff;border:2px solid var(--muted);border-radius:.5rem}.shell .field textarea{min-height:6rem;resize:vertical}.shell .check{display:flex;gap:.75rem;align-items:flex-start;min-height:3rem;padding:.4rem 0}.shell .check input{width:1.5rem;height:1.5rem;margin-top:.2rem;accent-color:var(--accent);flex:none}.shell .note{margin:1rem 0;padding:.75rem 1rem;background:var(--note-bg);border-left:4px solid var(--accent);border-radius:0 .5rem .5rem 0}.shell .note.error{border-left-color:var(--err)}.shell .note p:last-child{margin-bottom:0}.shell .note h2{margin-top:0;font-size:1.0625rem}.shell .today{position:relative;padding-top:2.5rem}.shell .today:before{content:"";position:absolute;left:50%;top:0;width:var(--glow-size);height:var(--glow-size);transform:translate(-50%,-18%);border-radius:50%;background:radial-gradient(circle,var(--glow) 0%,rgba(244,196,98,0) 68%);pointer-events:none;z-index:0}.shell .today>*{position:relative;z-index:1}.shell .when{color:var(--muted);font-size:1rem;margin:0 0 1.25rem;text-align:center}.shell .message{margin:0 0 1.5rem;font-family:var(--msg-font);font-size:clamp(1.55rem,6vw,2.1rem);line-height:1.42;font-weight:500;text-wrap:balance;max-width:26ch;margin-inline:auto;text-align:center;border-left:0}:root[data-tone=secular] .shell .message{text-align:left;margin-inline:0;max-width:28ch;padding-left:1rem;border-left:4px solid var(--rule)}.shell .author{display:block;margin-top:.75rem;font-size:1rem;color:var(--muted);font-family:system-ui,sans-serif}.shell .actions{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-bottom:1rem}:root[data-tone=secular] .shell .actions{justify-content:flex-start}.shell .tools{display:flex;gap:.4rem;justify-content:center;flex-wrap:wrap}:root[data-tone=secular] .shell .tools{justify-content:flex-start}.shell .status{min-height:1.6rem;text-align:center;color:var(--muted);font-size:1rem}:root[data-tone=secular] .shell .status{text-align:left}.shell .plan-badge{position:absolute;right:0;top:0;z-index:2}.shell .plan-badge a{display:inline-flex;align-items:center;min-height:2.75rem;padding:0 .6rem;color:var(--muted);font-size:1rem;text-decoration:none;border-radius:.5rem}@media(prefers-reduced-motion:no-preference){.shell .today:before{animation:dawn 1.6s ease-out both}@keyframes dawn{0%{opacity:0;transform:translate(-50%,4%) scale(.85)}to{opacity:1;transform:translate(-50%,-18%) scale(1)}}}.shell .list{list-style:none;margin:0;padding:0}.shell .list>li{padding:1rem 0;border-bottom:1px solid var(--line)}.shell .list .day{color:var(--muted);font-size:1rem;margin-bottom:.25rem}.shell .list .text{font-family:var(--msg-font);font-size:1.25rem;line-height:1.45;margin:0 0 .5rem}.shell .seg{display:flex;gap:.5rem;margin:.5rem 0 1rem}.shell .seg .btn{flex:1}.shell .plan{padding:1rem 1.1rem;border:2px solid var(--line);border-radius:.75rem;background:var(--note-bg)}.shell .plan.best{border-color:var(--accent)}.shell .plan h2{margin:0 0 .15rem}.shell .plan .price{font-size:1.5rem;font-weight:700;margin:0 0 .25rem}.shell .bullets{margin:.5rem 0 1rem;padding-left:1.25rem}.shell .bullets li{margin:.25rem 0}.shell .code{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:1.5rem;letter-spacing:.12em;margin:.25rem 0 .75rem;word-break:break-all}.shell .terms{max-height:50vh;overflow-y:auto;padding:.25rem .9rem .25rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:1rem 0}.shell .terms ol{padding-left:1.25rem}.shell .terms li{margin-bottom:.75rem}.shell dialog.sheet{width:min(32rem,calc(100vw - 1.5rem));margin:auto;max-height:calc(100vh - 2rem);max-height:calc(100dvh - 2rem);overflow-y:auto;overscroll-behavior:contain;padding:1.25rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom,0px));color:var(--ink);background:var(--sky-top);border:2px solid var(--ink);border-radius:.75rem}.shell dialog.sheet::backdrop{background:#14142880}.shell dialog.sheet h2{margin-top:0}.offline-badge{position:fixed;top:.5rem;left:50%;transform:translate(-50%);z-index:50;display:inline-flex;align-items:center;gap:.5rem;min-height:2rem;padding:.25rem .85rem;font:600 .9rem/1 system-ui,sans-serif;color:#fff;background:#3a1d1d;border-radius:999px}.offline-badge .dot{width:.7rem;height:.7rem;border-radius:50%;background:#ff4d4d}.offline-badge .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
