.chapter-picker{padding:16px 0;text-align:start}.chapter-picker .chapter-grid,.shared-options .chapter-grid{max-height:285px;overflow:auto;padding:4px;grid-template-columns:repeat(10,minmax(0,1fr));gap:8px}.chapter-picker .chapter,.shared-options .chapter{aspect-ratio:1;min-height:40px}.chapter[aria-pressed=true]{background:#0887ff;color:white;border-color:#0887ff}.chapter-picker p{font-size:14px;color:#61738c}.chapter-picker #selection-count{margin-top:12px}.shared-options{margin-top:20px}.shared-options summary{cursor:pointer;color:#3175b8;font-size:14px;padding:12px 0}.shared-options .section-heading{font-size:14px;margin-top:12px}.shared-order-label{display:flex;justify-content:space-between;align-items:center;font-size:14px;gap:10px;margin:0 0 15px;color:#586f8b}select{font:inherit;padding:8px 12px;border:1px solid #cddcec;border-radius:12px;color:#23466d;background:#f4f9ff;max-width:100%}.personal-font{font-size:12px;color:#5d6f87;display:flex;align-items:center;gap:8px}.personal-progress{text-align:center;font-size:14px;color:#51657f;margin-bottom:15px}.personal-progress strong{color:#047fed}.invite-context{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;margin-bottom:12px}.invite-context span{color:#56718b;overflow-wrap:anywhere}.invite-context a{font-size:13px;white-space:nowrap}footer a{display:inline-block;padding:8px}.form-card .book-note img{width:45px;height:45px}

.memorial-form{text-align:start;margin:20px 0;padding:20px;background:#eff5fcaa;border-radius:18px}.memorial-form h3{font-size:22px}.memorial-form p,.memorial-form small{color:#51657f;font-size:14px}.memorial-form label{display:block;margin:14px 0 6px;font-weight:600}.memorial-form input:not([type=checkbox]){width:100%;padding:12px;border:1px solid #cddcec;border-radius:12px;font:inherit;background:white}.memorial-form details{margin-top:16px}.memorial-form summary{color:var(--blue);cursor:pointer}.memorial-form .memorial-check{display:flex;align-items:center;gap:10px}.memorial-check input{width:20px;height:20px}.memorial-sources{margin-top:16px}#memorial-reference{margin-bottom:24px;font:14px var(--ui-font)}#memorial-dedication{overflow-wrap:anywhere}@media(max-width:650px){.reading-options{grid-template-columns:repeat(2,minmax(0,1fr))}.reading-options label{flex-direction:row;font-size:14px;min-height:62px;padding:10px 6px}.memorial-form{padding:15px}}


/* Shared design tokens: Hallelu's blue, soft light surfaces, Hebrew UI type. */
:root { --ui-font: HalleluUI, -apple-system, BlinkMacSystemFont, sans-serif; --ink:#152748; --blue:#0787ff; --muted:#66768d; --radius:28px; --space-section:88px; }
body { background:radial-gradient(ellipse at 95% 8%,#e8f3ff 0,transparent 45%),radial-gradient(ellipse at 8% 35%,#edf0ff 0,transparent 40%),radial-gradient(ellipse at 40% 95%,#e9f8f5 0,transparent 45%),#f7fbff; }
h3 { margin:0; } :focus-visible { outline:3px solid #1675cc; outline-offset:4px; }
.sr-only { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap; }
.shell { max-width:1220px;padding:28px 30px max(24px,env(safe-area-inset-bottom)); }
.topbar { gap:24px;margin-bottom:16px;min-height:64px; }
.brand { white-space:nowrap;gap:12px;font-size:22px;letter-spacing:-.5px; }
.brand img { width:52px;height:52px;border-radius:16px; }
.web-nav { display:flex;gap:32px;margin:auto; }
.web-nav a { color:#4c607d;font-size:16px;font-weight:650;padding:12px 0; }
.web-nav a:hover { color:var(--blue); }
.home-view .header-open-app,body:not(.home-view) .home-download,body:not(.home-view) .web-nav { display:none; }
body:not(.home-view) main { max-width:700px;margin-inline:auto; }
body:not(.home-view) .topbar { max-width:760px;margin-inline:auto;margin-bottom:32px;gap:14px;flex-wrap:wrap; }
body:not(.home-view) .topbar .brand { margin-inline-end:auto; }
body[data-view=reader] .header-open-app { display:none; }
.surface { border:1px solid #fff;box-shadow:0 9px 32px #355b8b05,0 0 0 1px #375c9406; }
.button { border-radius:18px; }
.compact { border-radius:28px; }
.primary { background:linear-gradient(115deg,#078fff,#217bff);box-shadow:0 8px 22px #1789ff16; }
.home-intro { display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:50px;padding:52px 0 56px; }
.hero-copy h1 { font-size:clamp(40px,4.5vw,62px);line-height:1.23;letter-spacing:-2px;font-weight:800; }
.hero-copy h1 span,.together-section h2 span { color:var(--blue); }
.hero-copy>p { font-size:20px;color:#5c6e88;max-width:510px;margin-top:22px;line-height:1.8; }
.hero-actions { display:flex;gap:12px;margin-top:30px;flex-wrap:wrap; }
.hero-actions .button { min-height:56px;padding-inline:25px; }
.hero-copy .hero-note { font-size:13px;margin-top:17px;color:#718199; }
.hero-art { display:flex;justify-content:center; }
.hero-art img { width:100%;max-width:420px;height:auto;aspect-ratio:1;border-radius:28%;filter:drop-shadow(0 20px 35px #9da2ec19); }
.start-panel { padding:30px 32px;scroll-margin-top:25px; }
.start-panel h2 { font-size:29px;margin-bottom:24px;letter-spacing:-.8px; }
.reading-options { border:0;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px; }
.reading-options label { display:flex;align-items:center;gap:12px;min-height:66px;padding:14px 18px;border:1px solid #dbe5f2;border-radius:16px;background:#f8fbff;color:#526783;cursor:pointer;font-size:17px;font-weight:600; }
.reading-options label:has(:checked) { border-color:#55a6ff;background:#e9f3ff;color:#1452a2;box-shadow:inset 0 0 0 1px #55a6ff24; }
.reading-options input { width:21px;height:21px;accent-color:var(--blue);margin:0;flex-shrink:0; }
.start-action { display:flex;align-items:center;gap:22px;margin-top:24px; }
.start-action .button { min-width:238px; }
.start-note { font-size:14px;color:var(--muted); }
.home-recent { margin-bottom:28px; }
.home-recent h2 { font-size:22px; }
.home-recent .recent-list { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:5px 22px; }
.home-recent .recent-list li+li { border-top:0; }
.recent-list a { display:flex;align-items:center;justify-content:space-between;gap:16px;overflow-wrap:anywhere; }
.recent-list a:hover { color:#1356a2; }
.recent-list a span { flex-shrink:0; }
.together-section { text-align:center;padding-block:var(--space-section) 64px; }
.together-section h2 { font-size:43px;letter-spacing:-1.3px; }
.section-lead { color:#5c6e88;font-size:19px;margin-top:12px; }
.together-steps { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px;padding:0;margin:42px 0 30px;list-style:none;text-align:start; }
.together-steps li { display:flex;align-items:flex-start;gap:18px; }
.step-number { display:grid;place-items:center;width:52px;height:52px;flex-shrink:0;border-radius:50%;background:linear-gradient(130deg,#139fff,#087eff);color:white;font-size:24px;font-weight:700;box-shadow:0 7px 20px #0787ff16; }
.together-steps h3 { font-size:23px;line-height:1.6; }
.together-steps p { font-size:16px;color:#62738c;margin-top:7px; }
.together-section>.button { display:inline-flex;min-width:275px; }
.app-promotion { display:flex;align-items:center;justify-content:space-between;padding:44px 66px;gap:36px;background:radial-gradient(ellipse at 0 60%,#e7e8ff8c,transparent 65%),#ffffffc9;scroll-margin-top:24px; }
.app-promotion h2 { font-size:40px;letter-spacing:-1.2px; }
.app-promotion p { font-size:19px;color:#62738c;margin-top:10px; }
.app-promotion-icon { width:180px;height:180px;border-radius:40px;box-shadow:0 12px 30px #268dff12; }
.app-store-link { display:inline-block;margin-top:23px;padding:14px; margin-inline-start:-14px; }
.app-store-link img { width:166px;height:55px; }
body:not(.home-view) .app-promotion { max-width:700px;margin:44px auto 0;padding:26px 30px;gap:18px; }
body:not(.home-view) .app-promotion h2 { font-size:25px;letter-spacing:-.5px; }
body:not(.home-view) .app-promotion p { font-size:15px; }
body:not(.home-view) .app-promotion-icon { width:90px;height:90px;border-radius:23px; }
body:not(.home-view) .app-store-link { margin-top:8px; }
.site-footer { padding:30px 0 12px;border-top:1px solid #dce5f0;margin-top:38px; }
.site-dedication { font-size:14px;color:#647590;max-width:800px;margin:auto;line-height:1.9; }
.site-footer nav { display:flex;justify-content:center;align-items:center;gap:10px;margin-top:12px; }
.site-footer a { font-size:13px;color:#667b96;padding:8px; }
.site-footer a:hover { color:var(--blue);text-decoration:underline; }
.invite-panel { display:flex;align-items:center;gap:18px;justify-content:space-between;padding:22px;margin-top:20px;background:#edf5ff; }
.invite-panel h2 { font-size:20px; }
.invite-panel p { font-size:14px;color:#61738c;margin-top:5px; }
.invite-panel .button { flex-shrink:0; }
.back-home { display:inline-block;margin-bottom:16px; }
#app-dialog { text-align:center; } #app-dialog img { margin:14px auto 24px;border-radius:23px; } #app-dialog-close { display:block;margin-inline-start:auto; }
@media(max-width:900px) {
  .home-intro { gap:22px; } .hero-copy h1 { font-size:45px; }.hero-copy>p { font-size:18px; }
  .hero-actions .button { padding-inline:18px;font-size:15px; }
  .web-nav { gap:20px; }.brand { font-size:20px; }
  .reading-options label { font-size:15px;padding-inline:10px;gap:8px; }
  .together-steps { gap:20px; }.together-steps li { gap:12px; }.together-steps h3 { font-size:20px; }
  .app-promotion { padding:36px; }.app-promotion h2 { font-size:34px; }
}
@media(max-width:650px) {
  :root { --space-section:54px; }
  .shell { padding:16px 18px 24px; }.topbar { gap:10px;min-height:46px;margin-bottom:8px; }
  .brand { font-size:17px;gap:8px; }.brand img { width:40px;height:40px;border-radius:12px; }
  .web-nav { display:none; }.home-download { font-size:12px;padding:9px 12px;min-height:40px;gap:6px; }.home-download svg { width:17px;height:17px; }
  .home-intro { display:flex;flex-direction:column;gap:24px;padding:30px 0 28px;text-align:center; }
  .hero-copy h1 { font-size:42px;letter-spacing:-1.5px; }.hero-copy>p { font-size:16px;max-width:340px;margin:15px auto 0;line-height:1.8; }
  .hero-actions { justify-content:center;gap:9px;margin-top:23px; }.hero-actions .button { min-height:50px;padding:12px 16px;font-size:14px;border-radius:16px;gap:8px; }
  .hero-copy .hero-note { font-size:11px;margin-top:14px; }.hero-art img { width:170px;border-radius:26%; }
  .start-panel { padding:23px 18px;border-radius:25px; }.start-panel h2 { font-size:22px;letter-spacing:-.7px;margin-bottom:19px; }
  .reading-options { grid-template-columns:repeat(2,minmax(0,1fr));gap:9px; }.reading-options label { min-height:57px;font-size:13px;padding:11px 9px;gap:8px;border-radius:13px; }.reading-options input { width:18px;height:18px; }
  .start-action { display:flex;flex-direction:column;gap:12px;margin-top:20px; }.start-action .button { width:100%;min-width:0; }.start-note { font-size:12px; }
  .home-recent .section-heading { align-items:start;flex-direction:column;gap:4px; }.home-recent h2 { font-size:20px; }
  .home-recent .recent-list { grid-template-columns:1fr;gap:0; }.home-recent .recent-list li+li { border-top:1px solid var(--line); }
  .together-section { padding-bottom:36px; }.together-section h2 { font-size:31px;letter-spacing:-1px; }.section-lead { font-size:15px;max-width:310px;margin:12px auto 0; }
  .together-steps { grid-template-columns:1fr;gap:24px;margin:28px auto;max-width:330px; }.together-steps li { gap:16px; }.step-number { width:44px;height:44px;font-size:21px; }.together-steps h3 { font-size:20px; }.together-steps p { font-size:14px;margin-top:3px; }
  .together-section>.button { width:100%;min-width:0; }
  .app-promotion { padding:28px 22px;text-align:center;flex-direction:column-reverse;gap:20px;border-radius:25px; }.app-promotion h2 { font-size:27px;letter-spacing:-.8px; }.app-promotion p { font-size:15px; }.app-promotion-icon { width:92px;height:92px;border-radius:24px; }.app-store-link { margin:14px 0 0; }
  body:not(.home-view) .topbar { gap:10px;margin-bottom:22px; } .header-open-app { font-size:12px;padding:9px 12px; } #share { font-size:13px;gap:8px; }
  body:not(.home-view) .app-promotion { padding:26px 20px; }.site-footer { margin-top:28px;padding-top:24px; }.site-dedication { font-size:12px;max-width:340px; }
  .chapter-picker .chapter-grid,.shared-options .chapter-grid { grid-template-columns:repeat(5,minmax(0,1fr)); }
  .reader-toolbar { gap:8px; }.personal-font { flex-direction:column;gap:3px; }.personal-font select { padding:6px 9px; }
  .invite-context { align-items:start; }.invite-context a { font-size:12px; }.intro h1 { font-size:30px; }.invite-panel { flex-direction:column;align-items:stretch; }
}
@media(max-width:360px) {
  .shell { padding-inline:12px; }.brand { font-size:15px; }.brand img { width:34px;height:34px; }.home-download { font-size:11px; }.home-download svg { display:none; }
  .hero-copy h1 { font-size:37px; }.hero-actions { flex-direction:column; }.hero-art img { width:145px; }.reading-options label { font-size:12px; }.app-promotion h2 { font-size:24px; }
}
@media(prefers-reduced-motion:no-preference) {
  .hero-copy,.hero-art { animation:home-appear .6s ease-out both; }.hero-art { animation-delay:.1s; }
  .hero-art img { animation:book-float 7s ease-in-out infinite; }
  @keyframes home-appear { from { opacity:0;transform:translateY(12px); } to { opacity:1;transform:none; } }
  @keyframes book-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-7px); } }
}

/* Reading-first introduction: compact brand, clear purpose, no decorative hero icon. */
.topbar { min-height:48px; }
.brand img { width:38px;height:38px;border-radius:12px; }
.brand { font-size:20px; }
.home-intro { grid-template-columns:1.3fr 1fr;gap:64px;padding:32px 0 36px; }
.hero-copy h1 { font-size:clamp(36px,3.6vw,49px);letter-spacing:-1.4px; }
.hero-copy>p { font-size:18px;max-width:570px;margin-top:16px;line-height:1.85; }
.hero-actions { margin-top:22px;gap:10px; }
.hero-actions .button { padding-inline:19px;font-size:16px;min-height:52px; }
.hero-copy .hero-note { margin-top:14px;font-size:12px; }
.together-guide { padding-inline-start:30px;border-inline-start:1px solid #dbe6f3; }
.together-guide h2 { font-size:22px;letter-spacing:-.4px; }
.together-guide .together-steps { display:grid;grid-template-columns:1fr;gap:18px;margin:20px 0 0; }
.together-guide .together-steps li { gap:13px; }
.together-guide .step-number { width:30px;height:30px;font-size:16px;box-shadow:none; }
.together-guide .together-steps h3 { font-size:17px;line-height:1.6; }
.together-guide .together-steps p { font-size:14px;line-height:1.75;margin-top:3px; }
.start-panel h2 { font-size:25px;margin-bottom:8px; }
.reading-choice-description { font-size:15px;color:var(--muted);margin-bottom:22px; }
.home-view .app-promotion { margin-top:36px; }
#create .intro { padding-top:4px; }
#create .intro h1 { font-size:34px; }
@media(max-width:900px) {
 .home-intro { gap:28px;grid-template-columns:1.2fr 1fr; }
 .together-guide { padding-inline-start:22px; }
 .hero-actions .button { font-size:14px;padding-inline:15px; }
}
@media(max-width:650px) {
 .shell { padding-top:14px; }
 .topbar { min-height:42px; }
 .brand { font-size:16px; }.brand img { width:32px;height:32px;border-radius:10px; }
 .home-intro { display:block;text-align:start;padding:24px 0 26px; }
 .hero-copy h1 { font-size:36px;letter-spacing:-1px; }
 .hero-copy>p { margin:13px 0 0;max-width:none;font-size:16px;line-height:1.8; }
 .hero-actions { justify-content:flex-start;margin-top:19px; }
 .hero-actions .primary { width:100%; }.hero-actions .quiet { width:100%; }
 .hero-copy .hero-note { font-size:12px;line-height:1.7;margin-top:12px; }
 .together-guide { margin-top:26px;padding:22px 0 0;border-inline-start:0;border-top:1px solid #dbe6f3; }
 .together-guide h2 { font-size:20px; }
 .together-guide .together-steps { gap:15px;margin:16px 0 0;max-width:none; }
 .together-guide .together-steps h3 { font-size:16px; }.together-guide .together-steps p { font-size:13px; }
 .start-panel h2 { font-size:21px; }.reading-choice-description { font-size:14px;line-height:1.75;margin-bottom:18px; }
 .start-note { text-align:center;line-height:1.7; }
 #create .intro h1 { font-size:28px; }
}
