:root{
  --text: #1d1d1f;
  --text-2: #6e6e73;
  --bg: #ffffff;
  --gray: #f5f5f7;
  --line: #d2d2d7;
  --blue: #0071e3;
  --link: #0066cc;
  --link-dark: #2997ff;
  --night: #0b1226;
  --amber: #b86a12;         
  --amber-soft: #f3c77e;
  --cream: #fbf6ee;
  --cream-2: #f4ebdc;
  --serif: "Noto Serif TC", "Songti TC", "PMingLiU", serif;
  --font: -apple-system, BlinkMacSystemFont, "PingFang TC", "Microsoft JhengHei", "Noto Sans TC", "Noto Sans CJK TC", "Helvetica Neue", Arial, sans-serif; 
}
*{ box-sizing: border-box; }
html[data-lang="en"] .t-zh,
html:not([data-lang="en"]) .t-en{ display: none !important; }
[hidden]{ display: none !important; }
body{
  margin: 0;
  font-family: var(--font);
  font-size: 19px;
  line-height: 1.7;
  letter-spacing: 0.01em;
  color: var(--text);
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
}
a{ color: var(--link); text-decoration: none; }
a:hover{ text-decoration: underline; }
img{ max-width: 100%; height: auto; }
.globalnav{ position: sticky; top: 0; z-index: 100; background: rgba(20, 33, 61, 0.97); box-shadow: inset 0 -1px 0 rgba(243, 199, 126, 0.35);
  display: flex; align-items: center; gap: 16px; min-height: 68px; padding: 0 max(22px, calc((100% - 1240px) / 2)); }
.globalnav-bar{ display: flex; align-items: center; gap: 14px; flex: none; }
.globalnav-logo{ display: flex; align-items: center; gap: 10px; color: #fff; min-width: 0; }
.globalnav-logo img{ display: block; width: 38px; height: 38px; border-radius: 50%; }
.globalnav-name{ font-family: var(--serif); font-size: 22px; font-weight: 600; letter-spacing: 0.04em; color: #fff; white-space: nowrap; }
.globalnav a{ color: rgba(255, 255, 255, 0.88); white-space: nowrap; }
.globalnav a:hover{ color: #fff; text-decoration: none; }
.globalnav-inner{ display: flex; align-items: center; gap: 2px; flex: 1; justify-content: flex-end; flex-wrap: wrap; }
.globalnav-inner a{ font-size: 18px; padding: 10px 12px; border-radius: 8px; min-height: 44px; display: inline-flex; align-items: center; }
.globalnav-inner a:hover{ background: rgba(255, 255, 255, 0.08); }
.globalnav-inner a[aria-current="page"]{ color: #fff; box-shadow: inset 0 -2px 0 var(--amber-soft); border-radius: 0; }
.globalnav-sep{ width: 1px; height: 26px; background: rgba(255, 255, 255, 0.22); margin: 0 8px; }
.globalnav-inner .nav-account{ font-size: 17px; color: rgba(255, 255, 255, 0.78); }
.globalnav-inner .nav-join{ margin-left: 6px; border: 1px solid rgba(243, 199, 126, 0.7); color: var(--amber-soft); border-radius: 999px; padding: 8px 16px; }
.globalnav-tools{ display: flex; align-items: center; gap: 8px; order: 3; }
.nav-lang{ display: inline-flex; border: 1px solid rgba(255, 255, 255, 0.35); border-radius: 999px; overflow: hidden; }
.nav-lang button{ font: inherit; font-size: 16px; color: rgba(255, 255, 255, 0.8); background: none; border: 0; min-width: 44px; min-height: 40px; padding: 0 10px; cursor: pointer; }
.nav-lang button[aria-pressed="true"]{ background: rgba(255, 255, 255, 0.92); color: var(--navy, #14213d); font-weight: 700; }
.nav-big{ font: inherit; font-size: 16px; display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 0 12px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, 0.35); background: none; color: rgba(255, 255, 255, 0.9); cursor: pointer; }
.nav-big sup{ font-size: 0.7em; }
.nav-big[aria-pressed="true"]{ background: var(--amber-soft); border-color: var(--amber-soft); color: #14213d; font-weight: 700; }
.globalnav button:focus-visible, .globalnav a:focus-visible{ outline: 2px solid var(--amber-soft); outline-offset: 2px; }
@media (min-width: 1069px){.globalnav-bar{ display: contents; }
.globalnav-logo{ order: 0; }
.globalnav-inner{ order: 1; }
.globalnav-tools{ order: 2; margin-left: 6px; }
}
html[data-big="1"] body{ zoom: 1.15; }
.nav-menu, .more-sheet{ display: none; }
@media (max-width: 1068px){.globalnav{ min-height: 60px; padding: 0 12px 0 14px; padding-top: env(safe-area-inset-top, 0px); }
.globalnav-bar{ flex: 1; justify-content: space-between; min-width: 0; }
.globalnav-name{ overflow: hidden; text-overflow: ellipsis; font-size: 21px; }
.globalnav-inner{ display: none; }
.nav-big-label{ display: none; }
.nav-menu{ display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 12px; font: inherit; font-size: 17px; color: #fff; background: none; border: 1px solid rgba(255, 255, 255, 0.35); border-radius: 999px; cursor: pointer; }
.nav-menu span{ white-space: nowrap; }
.nav-menu[aria-expanded="true"]{ background: var(--amber-soft); border-color: var(--amber-soft); color: #14213d; }
.more-sheet:not([hidden]){ display: block; position: fixed; inset: 0; z-index: 90; background: rgba(10, 16, 32, 0.45); }
.more-panel{ position: absolute; left: 0; right: 0; top: calc(60px + env(safe-area-inset-top, 0px)); max-height: calc(100vh - 80px); max-height: calc(100dvh - 72px - env(safe-area-inset-top, 0px)); overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; background: #fbfaf7; border-radius: 0 0 18px 18px; padding: 14px 18px calc(18px + env(safe-area-inset-bottom, 0px)); }
.more-head{ display: flex; justify-content: space-between; align-items: center; font-family: var(--serif); font-size: 21px; color: #14213d; }
.more-head button{ font: inherit; font-size: 20px; width: 44px; height: 44px; border: 0; background: none; cursor: pointer; color: #4a4f5c; }
.more-groups{ display: grid; gap: 14px; }
.more-h{ margin: 6px 0 2px; font-size: 15px; letter-spacing: 0.1em; color: #8a6430; }
.more-groups a{ display: flex; align-items: center; min-height: 50px; padding: 0 4px; font-size: 19px; color: #23262e; border-bottom: 1px solid #ece6da; }
.more-groups a:hover{ text-decoration: none; background: #f3efe6; }
body.is-sheet-open{ overflow: hidden; }
}
@media (max-width: 560px){.globalnav-tools{ gap: 6px; }
.nav-menu{ padding: 0 10px; }
.nav-menu span, .globalnav-tools .nav-search{ display: none; }
}
.hero2{ position: relative; isolation: isolate; overflow: hidden; background: #14213d; }
.hero2-bg{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.hero2::after{ content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(12, 20, 40, 0.78) 0%, rgba(12, 20, 40, 0.5) 34%, rgba(12, 20, 40, 0) 62%); }
.hero2-card{ text-shadow: 0 1px 3px rgba(0, 0, 0, 0.45); }
.hero2-act.is-main{ text-shadow: none; }
.hero2-inner{ max-width: 1240px; margin: 0 auto; padding: 48px max(22px, 4vw) 56px; }
.hero2-card{ max-width: 560px; color: #fff; }
.hero2-eyebrow{ display: flex; align-items: center; gap: 10px; margin: 0 0 10px; font-family: var(--serif); font-size: 19px; letter-spacing: 0.08em; color: var(--amber-soft); }
.hero2-eyebrow img{ border-radius: 50%; }
.hero2-title{ font-family: var(--serif); font-size: clamp(34px, 5vw, 48px); line-height: 1.2; margin: 0 0 4px; letter-spacing: 0.04em; }
.hero2-addr{ display: flex; flex-wrap: wrap; gap: 4px 14px; align-items: baseline; margin: 0 0 22px; font-size: 18px; color: rgba(255, 255, 255, 0.86); }
.hero2-addr a{ color: var(--amber-soft); font-weight: 500; }
.hero2-acts{ display: grid; grid-template-columns: repeat(4, auto); gap: 10px; justify-content: start; }
.hero2-act{ display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 0 20px; border-radius: 12px; font-size: 18px; color: #fff; border: 1px solid rgba(255, 255, 255, 0.55); background: rgba(255, 255, 255, 0.06); }
.hero2-act:hover{ text-decoration: none; background: rgba(255, 255, 255, 0.16); }
.hero2-act.is-main{ background: var(--amber-soft); border-color: var(--amber-soft); color: #14213d; font-weight: 700; }
@media (max-width: 760px){.hero2-inner{ padding: 26px 18px 28px; }
.hero2::after{ background: linear-gradient(180deg, rgba(12, 20, 40, 0.72) 0%, rgba(12, 20, 40, 0.6) 100%); }
.hero2-card{ min-width: 0; }
.hero2-title{ font-size: 32px; }
.hero2-acts{ grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.hero2-act{ padding: 0 6px; font-size: 17px; min-width: 0; }
.hero2-addr span{ min-width: 0; overflow-wrap: anywhere; }
.hero2-act.is-main{ grid-column: 1 / -1; }
}
.tile{
  position: relative;
  isolation: isolate;
  overflow: hidden;
  text-align: center;
  padding: 56px 22px 0;
}
.tile + .tile, .tile + .tile-grid, .tw + .tile,
.tw + .ministry-split, .ministry-split + .tile{ margin-top: 12px; }
.tile-copy{ position: relative; max-width: 980px; margin: 0 auto; }
.tile-white{ background: var(--bg); }
.headline{
  font-size: 56px;
  line-height: 1.07;
  font-weight: 600;
  letter-spacing: -0.005em;
  margin: 0;
}
.subhead{
  font-size: 30px;
  line-height: 1.14;
  font-weight: 400;
  letter-spacing: 0.007em;
  margin: 8px 0 0;
}
.kicker{ font-size: 19px; font-weight: 600; color: var(--text-2); margin: 0 0 8px; }
.ctas{ display: flex; justify-content: center; align-items: center; gap: 18px; flex-wrap: wrap; margin-top: 18px; }
.pill{
  display: inline-block;
  padding: 11px 21px;
  border-radius: 980px;
  background: var(--blue);
  border: 1px solid var(--blue);
  color: #fff;
  font-size: 19px;
  line-height: 1.18;
  transition: background 0.2s;
}
.pill:hover{ background: #0077ed; text-decoration: none; }
.pill.is-off, .pill.is-off:hover{ background: #dedad2; border-color: #dedad2; color: #6f695f; cursor: not-allowed; }
.link-more{ font-size: 19px; }
.link-more::after{ content: " ›"; }
.tag{
  display: inline-block;
  padding: 4px 12px;
  border-radius: 980px;
  background: var(--amber);
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.08em;
}
.verse{
  position: relative;
  margin: 0 auto;
  max-width: 460px;
  padding: 18px 0 0;
  background: none;
  border-radius: 0;
}
.verse::before{
  content: "“";
  position: absolute;
  top: -22px;
  left: 50%;
  transform: translateX(-50%);
  font-family: Georgia, var(--serif);
  font-size: 72px;
  line-height: 1;
  color: var(--amber);
  opacity: 0.35;
}
.verse p{
  font-family: var(--serif);
  font-size: 25px;
  line-height: 1.75;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: #2b2118;
  margin: 0;
}
.verse cite{
  display: block;
  margin-top: 12px;
  font-family: var(--serif);
  font-style: normal;
  font-size: 17px;
  letter-spacing: 0.1em;
  color: var(--amber);
}
.verse cite::before{ content: "— "; }
.news-alt{ margin: 28px 0 0; font-size: 17px; }
.news-alt .link-more{ font-size: 17px; }
.past{ list-style: none; max-width: 360px; margin: 28px auto 14px; padding: 0; text-align: left; }
.past li{ border-top: 1px solid rgba(184, 106, 18, 0.18); }
.past li:last-child{ border-bottom: 1px solid rgba(184, 106, 18, 0.18); }
.past a{ display: flex; justify-content: space-between; padding: 10px 2px; color: var(--text); font-size: 17px; }
.past a:hover{ color: var(--amber); text-decoration: none; }
.past a::after{ content: "›"; color: var(--text-2); margin-left: 8px; }
.video{
  position: relative;
  margin: 24px auto 0;
  aspect-ratio: 16 / 9;
  background: #111;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4);
}
.ministry-split{
  display: flex;
  min-height: min(620px, 80vh);
  background: #fff;
}
.ms-panel{
  position: relative;
  flex: 1 1 50%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 40px 44px 44px;
  color: #fff;
  text-decoration: none;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.78) 0%, rgba(0, 0, 0, 0.25) 38%, rgba(0, 0, 0, 0) 60%);
  transition: background 0.3s;
}
.ms-panel + .ms-panel{ border-left: 1px solid rgba(255, 255, 255, 0.25); }
.ms-panel:hover{ text-decoration: none; background: linear-gradient(0deg, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.4) 50%, rgba(0, 0, 0, 0.1) 100%); }
html[data-lang="en"] .ms-en{ order: -1; }
html[data-lang="en"] .ms-en + .ms-zh{ border-left: 1px solid rgba(255, 255, 255, 0.25); }
html[data-lang="en"] .ms-zh + .ms-en{ border-left: 0; }
.ms-kicker{ font-size: 16px; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: var(--amber-soft); }
.ms-name{ font-size: 48px; line-height: 1.1; font-weight: 600; margin-top: 4px; }
.ms-zh .ms-name{ font-family: var(--serif); letter-spacing: 0.06em; }
.ms-go{ margin-top: 18px; font-size: 19px; color: #fff; }
.ms-go::after{ content: " ›"; transition: margin 0.2s; }
.ms-panel:hover .ms-go::after{ margin-left: 4px; }
.video iframe{ position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.tile-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; padding: 0 12px; }
.tile-grid .tile{ margin-top: 0; }
.tile-grid-2{ grid-template-columns: 1fr 1fr; }
.tile-pair{ margin-top: 12px; }
.tile-live, .tile-welcome{ background: var(--night); padding: 22px 14px 18px; text-align: left; display: flex; flex-direction: column; }
.pair-head{ display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 14px; padding: 0 6px 14px; }
.pair-head .kicker{ margin: 0; font-size: 16px; color: var(--amber-soft); }
.pair-head h2{ margin: 0; font-size: 28px; line-height: 1.2; font-weight: 600; }
.tile-pair .video{ margin: 0; width: 100%; border-radius: 12px; box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.1); }
.welcome-video{ background: #000; }
.welcome-video video{ display: block; width: 100%; height: 100%; object-fit: cover; }
.pair-strip{ list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px 16px; margin: 14px 6px 0; padding: 0; font-size: 16px; line-height: 1.5; color: #d2d2d7; }
.pair-strip li{ min-width: 0; padding-left: 12px; border-left: 2px solid rgba(243, 199, 126, 0.35); }
.pair-strip li > strong, .pair-strip li > span, .pair-strip li > a{ display: block; }
.pair-strip strong{ color: #f5f5f7; font-weight: 600; }
.pair-strip a{ color: var(--link-dark); overflow-wrap: anywhere; }
.pair-strip .pair-wide{ grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 12px; }
.pair-wide > a{ margin-left: auto; }
.tile-calendar{ padding-bottom: 64px; }
.tile-calendar .kicker{ color: var(--amber); text-transform: uppercase; letter-spacing: 0.12em; font-size: 15px; }
.sample-badge{ display: inline-block; margin: 14px 0 0; padding: 4px 12px; border-radius: 980px; background: var(--cream); color: var(--amber); font-size: 15px; }
.cal{ max-width: 1040px; margin: 36px auto 0; text-align: left; }
.cal-bar{ display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.cal-title{ flex: 1; margin: 0; font-size: 28px; font-weight: 600; }
.cal-nav, .cal-today{
  border: 1px solid var(--line);
  background: #fff;
  color: var(--text);
  border-radius: 980px;
  font: inherit;
  cursor: pointer;
}
.cal-nav{ width: 36px; height: 36px; font-size: 22px; line-height: 1; order: 2; }
.cal-today{ padding: 7px 16px; font-size: 16px; order: 3; }
.cal-nav:hover, .cal-today:hover{ background: var(--gray); }
.cal-legend{ display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }
.cal-chip{
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 6px 12px 6px 10px;
  border: 1px solid var(--line);
  border-radius: 980px;
  background: #fff;
  font: inherit;
  font-size: 15px;
  color: var(--text);
  cursor: pointer;
}
.cal-chip .sw{ width: 10px; height: 10px; border-radius: 50%; background: var(--m); }
.cal-chip[aria-pressed="false"]{ color: var(--text-2); background: var(--gray); border-color: transparent; }
.cal-chip[aria-pressed="false"] .sw{ background: transparent; box-shadow: inset 0 0 0 1.5px var(--m); }
.cal-head, .cal-grid{ display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.cal-head span{ padding: 0 8px 8px; font-size: 15px; font-weight: 600; color: var(--text-2); }
.cal-grid{ border-top: 1px solid var(--line); border-left: 1px solid var(--line); border-radius: 14px; overflow: hidden; }
.cal-cell{
  position: relative;
  min-height: 118px;
  padding: 6px 6px 8px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: #fff;
  cursor: pointer;
}
.cal-cell.is-out{ background: #fafafc; }
.cal-cell.is-out .cal-day{ color: #b0b0b5; }
.cal-cell.is-sel{ box-shadow: inset 0 0 0 2px var(--blue); }
.cal-day{
  display: inline-grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 50%;
  background: none;
  font: inherit;
  font-size: 16px;
  font-weight: 600;
  color: var(--text);
  cursor: pointer;
}
.cal-cell.is-today .cal-day{ background: #e8590c; color: #fff; }
.cal-evs{ display: flex; flex-direction: column; gap: 3px; margin-top: 2px; }
.cal-ev{
  display: block;
  padding: 2px 6px 2px 7px;
  border-left: 3px solid var(--m);
  border-radius: 5px;
  background: color-mix(in srgb, var(--m) 12%, white);
  color: var(--text);
  font-size: 15px;
  line-height: 1.35;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.cal-ev:hover{ text-decoration: none; background: color-mix(in srgb, var(--m) 22%, white); }
.cal-ev-time{ color: color-mix(in srgb, var(--m) 70%, black); font-weight: 600; font-variant-numeric: tabular-nums; }
.cal-more{ align-self: flex-start; border: 0; background: none; padding: 0 6px; font: inherit; font-size: 15px; color: var(--link); cursor: pointer; }
.cal-dots{ display: none; }
.cal-agenda{ margin-top: 20px; padding: 20px 24px; border-radius: 18px; background: var(--gray); }
.cal-agenda h4{ margin: 0 0 10px; font-size: 21px; }
.cal-agenda ul{ list-style: none; margin: 0; padding: 0; }
.cal-agenda li a{
  display: grid;
  grid-template-columns: 150px 1fr auto;
  gap: 12px;
  align-items: baseline;
  padding: 10px 0 10px 14px;
  border-left: 4px solid var(--m);
  margin-bottom: 8px;
  background: #fff;
  border-radius: 8px;
  color: var(--text);
}
.cal-agenda li a:hover{ text-decoration: none; box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06); }
.ag-time{ font-size: 16px; color: var(--text-2); font-variant-numeric: tabular-nums; }
.ag-title{ font-size: 19px; font-weight: 500; }
.ag-m{ font-size: 15px; color: var(--m); padding-right: 14px; white-space: nowrap; }
.ag-empty{ color: var(--text-2); padding: 6px 0; }
html[data-lang="en"] .ss-en{ order: -1; }
.ss-classes{ list-style: none; margin: 0 0 18px; padding: 0; flex: 1; }
.ss-classes li{ display: flex; flex-direction: column; padding: 10px 12px; margin-bottom: 8px; border: 1px dashed var(--line); border-radius: 10px; }
.ph{ font-weight: 600; color: #b0b0b5; }
.bp-sslist{ margin: 4px 0 0; padding-left: 1.4em; color: #2b2118; font-family: var(--serif); font-size: 18px; line-height: 1.55; }
.bp-sslist li::marker{ color: #a31d1d; font-size: 16px; }
.mp-hero{
  padding: 72px 22px 64px;
  text-align: center;
  color: #fff;
  background: linear-gradient(160deg, var(--m) 0%, color-mix(in srgb, var(--m) 55%, black) 100%);
}
.mp-hero-inner{ max-width: 760px; margin: 0 auto; }
.mp-hero .kicker a{ color: rgba(255, 255, 255, 0.8); }
.mp-hero .subhead{ color: rgba(255, 255, 255, 0.85); }
.mp-summary{ font-size: 21px; line-height: 1.6; margin: 20px auto 0; max-width: 600px; color: rgba(255, 255, 255, 0.92); }
.mp-h2{ font-size: 30px; margin: 40px 0 12px; }
.mp-back{ margin-top: 48px; }
.mp-subnav{ display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; padding: 12px 16px; border-bottom: 1px solid var(--line); background: #fff; }
.mp-subnav a{ padding: 6px 16px; border-radius: 980px; color: var(--text); font-size: 17px; }
.mp-subnav a:hover{ text-decoration: none; background: var(--gray); }
.mp-subnav a[aria-current="page"]{ background: var(--m); color: #fff; font-weight: 600; }
.mp-hero-sm{ padding: 48px 22px 44px; }
.mp-summary small{ font-size: 17px; opacity: 0.8; }
.sg-section .container{ max-width: 1100px; }
.sg-hint{ text-align: center; margin: 0 0 14px; font-size: 17px; }
.sg-tree{ position: relative; margin: 0; border-radius: 14px; overflow: hidden; box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12); background: #dcecf6; }
.sg-swipe{ display: none; }
@media (max-width: 760px){.sg-swipe{ display: inline; }
}
.sg-scroll{ overflow-x: auto; -webkit-overflow-scrolling: touch; }
.sg-grown svg.ft{ display: block; width: 100%; min-width: 760px; height: auto; font-family: "LXGW WenKai TC", var(--serif); }
.ft .ft-sign{ font-family: "Dancing Script", cursive; }
.ft-tag{ cursor: pointer; }
.ft-tag rect{ fill: #fbf5df; stroke-width: 3.5; transition: fill 0.15s, stroke-width 0.15s; }
.ft-tag text{ fill: #2b1a0e; }
.ft-now rect{ stroke: #c4243f; }
.ft-past rect{ stroke: #7a4ea3; }
.ft-special rect{ stroke: #2d57a8; }
.ft-tag:hover rect, .ft-tag:focus-visible rect{ fill: #fff; stroke-width: 5; }
.ft-tag:focus{ outline: none; }
.ft-tag.is-on rect{ fill: #ffe9a8; stroke-width: 6; }
.ft-line{ transition: opacity .2s; }
.ft.ft-focus .ft-line:not(.is-lit){ opacity: .12; }
.ft.ft-focus .ft-line.is-lit path:last-child{ stroke-width: 7.5; }
.ft.ft-focus .ft-tag:not(.is-kin){ opacity: .45; }
.sg-legend{ display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 18px; padding: 10px 14px; background: #fff; font-size: 16px; color: var(--text-2); }
.sg-key::before{ content: ""; display: inline-block; width: 18px; height: 12px; margin-right: 6px; vertical-align: -1px; border: 3px solid; border-radius: 2px; background: #fbf5df; }
.sg-key-now::before{ border-color: #c4243f; }
.sg-key-past::before{ border-color: #7a4ea3; }
.sg-key-special::before{ border-color: #2d57a8; }
.sg-key-arrow::before{ content: "➜"; color: #e8590c; margin-right: 6px; }
.sg-original{ margin: 28px 0 0; }
.sg-original summary{ cursor: pointer; font-size: 19px; font-weight: 600; padding: 8px 0; }
.sg-photo img{ display: block; width: 100%; height: auto; }
.sg-photo svg{ position: absolute; inset: 0; width: 100%; height: 100%; }
.sg-photo rect{ fill: transparent; stroke: transparent; stroke-width: 5; cursor: pointer; transition: fill 0.15s, stroke 0.15s; }
.sg-photo a:hover rect, .sg-photo a:focus-visible rect{ fill: rgba(255, 255, 255, 0.25); stroke: var(--m); }
.sg-photo a:focus{ outline: none; }
.sg-photo a.is-on rect{ fill: rgba(255, 214, 102, 0.35); stroke: var(--m); stroke-width: 7; }
.sg-panel{ position: relative; margin: 18px auto 0; max-width: 640px; padding: 22px 26px; border-radius: 18px; background: #fff; border-top: 5px solid var(--m, var(--amber)); box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); }
.sg-close{ position: absolute; top: 10px; right: 12px; width: 36px; height: 36px; border: 0; border-radius: 50%; background: var(--gray); font-size: 24px; line-height: 1; cursor: pointer; color: var(--text); }
.sg-kicker{ margin: 0; font-size: 15px; color: var(--text-2); }
.sg-now{ color: #2b8a3e; font-weight: 600; }
.sg-past{ color: var(--text-2); }
.sg-panel h3{ margin: 4px 0 2px; font-size: 28px; }
.sg-span{ margin: 0 0 12px; color: var(--text-2); }
.sg-dl{ display: grid; grid-template-columns: auto 1fr; gap: 6px 16px; margin: 0 0 12px; }
.sg-dl dt{ color: var(--text-2); }
.sg-dl dd{ margin: 0; }
.sg-desc{ line-height: 1.6; }
.sg-rel{ margin: 8px 0 0; font-size: 17px; }
.sg-verse{ margin: 32px auto 0; max-width: 760px; text-align: center; font-family: var(--serif); font-size: 21px; line-height: 1.7; }
.sg-verse cite{ display: block; margin-top: 6px; font-family: var(--font); font-style: normal; font-size: 16px; color: var(--text-2); }
.sg-lists{ display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 0 32px; }
.sg-count{ display: inline-block; min-width: 26px; padding: 2px 8px; border-radius: 980px; background: var(--gray); font-size: 16px; text-align: center; vertical-align: middle; color: var(--text-2); }
.sg-list{ list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 8px; }
.sg-list a{ display: flex; justify-content: space-between; gap: 8px; padding: 10px 12px; border-radius: 10px; background: var(--gray); color: var(--text); font-size: 17px; border-left: 4px solid var(--m, var(--amber)); }
.sg-list a:hover{ text-decoration: none; background: #ececf0; }
.sg-leads{ display: block; font-size: 15px; color: var(--muted, #6e6e73); margin-top: 2px; white-space: nowrap; }
.sg-list:not(.sg-list-past){ grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); }
.sg-list-past a{ border-left-color: var(--line); color: var(--text-2); }
.sg-years{ font-size: 15px; color: var(--text-2); font-variant-numeric: tabular-nums; }
.tw{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: 1fr auto; grid-template-areas: "verse ann" "links ann"; gap: 0; margin: 12px 0 0; background: linear-gradient(170deg, var(--cream) 0%, var(--cream-2) 100%); }
.tw .verse{ max-width: 520px; }
.tw .verse p{ font-size: clamp(23px, 2vw, 30px); line-height: 1.6; }
.tw .verse cite{ font-size: 18px; }
.tw .an-board{ grid-area: ann; display: flex; flex-direction: column; padding: 26px 28px 22px; background: transparent; border-left: 1px solid var(--line); }
.tw .an-cards{ gap: 0; }
.tw .anc{ padding: 14px 10px; border: 0; border-bottom: 1px solid rgba(184, 106, 18, 0.22); border-radius: 0; background: transparent; box-shadow: none; }
.tw .anc:last-child{ border-bottom: 0; }
.tw .anc:hover{ background: rgba(184, 106, 18, 0.06); box-shadow: none; }
.tw .anc-title a::after{ border-radius: 0; }
.an-board-head{ display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 14px; padding-bottom: 10px; border-bottom: 2px solid var(--amber); }
.an-board-head h2{ margin: 0; font-family: var(--serif); font-size: 26px; letter-spacing: 0.06em; color: #231a10; }
.an-cards{ display: grid; gap: 12px; }
.an-board .an-empty{ flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 40px 10px; text-align: center; }
.an-board.has-items .an-empty{ display: none; }
.an-empty-title{ margin: 0; font-family: var(--serif); font-size: 26px; color: #231a10; }
.an-empty-text{ margin: 8px 0 12px; max-width: 360px; font-size: 17px; color: var(--text-2); }
.anc{ position: relative; display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 14px 16px; border-radius: 16px; background: var(--ivory); border: 1px solid #ece3d2; transition: box-shadow 0.2s, background 0.2s; }
.anc:hover{ background: #fff; box-shadow: 0 10px 26px rgba(35, 26, 16, 0.1); }
.anc-date{ display: flex; flex-direction: column; align-items: center; justify-content: center; width: 64px; height: 64px; border-radius: 14px; background: var(--amber); color: #fff; line-height: 1.1; }
.anc-date small{ font-size: 15px; opacity: 0.9; }
.anc-date b{ font-family: var(--serif); font-size: 28px; }
.anc-date-none{ background: var(--navy); font-family: var(--serif); font-size: 17px; letter-spacing: 0.1em; }
.anc-title{ margin: 0; font-family: var(--serif); font-size: 22px; line-height: 1.35; }
.anc-title a{ color: #231a10; }
.anc-title a::after{ content: ""; position: absolute; inset: 0; border-radius: 16px; }
.anc-title a:hover{ text-decoration: none; }
.anc-meta{ margin: 2px 0 0; font-size: 16px; font-weight: 600; color: var(--amber); }
.anc-sum{ margin: 4px 0 0; font-size: 17px; line-height: 1.55; color: var(--text-2); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.anc-side{ display: flex; flex-direction: column; align-items: flex-end; gap: 8px; }
.anc-side img{ display: block; width: 92px; height: 70px; object-fit: contain; border-radius: 10px; background: #fff; }
.an-cards-page .anc.is-wide .anc-side{ grid-column: 1 / -1; flex-direction: column; align-items: stretch; }
.an-cards-page .anc.is-wide .anc-side img{ width: 100%; height: auto; max-height: 560px; object-fit: contain; }
.an-cards-page .anc.is-wide .anc-go{ align-self: flex-end; }
.an-cards-page .anc.is-tall .anc-side img{ width: 130px; height: auto; max-height: 190px; }
.anc-go{ position: relative; z-index: 1; padding: 6px 14px; border-radius: 980px; background: var(--blue); color: #fff; font-size: 15px; font-weight: 600; white-space: nowrap; }
.anc-go:hover{ text-decoration: none; background: #173d70; }
.anc-off{ display: inline-block; padding: 6px 14px; border-radius: 980px; background: #e8e6e1; color: #6e6e73; font-size: 15px; font-weight: 600; white-space: nowrap; cursor: not-allowed; }
.anc-go.anc-off, .anc-go.anc-off:hover{ background: #e8e6e1; color: #6e6e73; }
.an-cards-page{ grid-template-columns: repeat(auto-fill, minmax(420px, 1fr)); gap: 16px; }
.an-cards-page .anc-sum{ -webkit-line-clamp: 4; }
.an-board .anc-sum{ -webkit-line-clamp: 1; }
@media (max-width: 1180px) and (min-width: 735px){.tw{ grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: auto auto; grid-template-areas: "verse links" "ann ann"; }
}
.an-page-hero{ padding-bottom: 40px; }
.an-detail{ padding: 56px 22px 80px; background: var(--ivory); }
.an-detail-inner{ max-width: 760px; margin: 0 auto; }
.an-detail-title{ margin: 0; font-family: var(--serif); font-size: clamp(32px, 5vw, 46px); line-height: 1.25; color: #231a10; }
.an-detail-meta{ margin: 10px 0 14px; font-size: 19px; font-weight: 600; color: var(--amber); }
.an-detail-sum{ margin: 0 0 22px; font-size: 21px; line-height: 1.8; color: #3a2d20; }
.an-detail-figure{ margin: 0 0 26px; }
.an-detail-figure img{ width: 100%; border-radius: 18px; box-shadow: 0 20px 44px rgba(35, 26, 16, 0.15); }
.an-detail-body{ font-size: 20px; line-height: 1.9; color: #2b2118; }
.an-detail-body img{ max-width: 100%; height: auto; border-radius: 12px; }
.an-detail-body table{ border-collapse: collapse; width: 100%; }
.an-detail-body td, .an-detail-body th{ border: 1px solid #e7dcc7; padding: 8px 10px; }
.am-form{ display: grid; gap: 14px; padding: 22px; border-radius: 18px; background: var(--gray); }
.am-form label{ display: grid; gap: 6px; font-size: 16px; font-weight: 600; color: var(--text); }
.am-form input, .am-form textarea{ font: inherit; font-weight: 400; font-size: 17px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.am-form textarea{ font-family: inherit; line-height: 1.6; }
.am-buttons{ display: flex; gap: 10px; align-items: center; }
.am-row{ display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; }
.am-form .pill{ justify-self: start; cursor: pointer; }
.am-status{ margin: 0; color: var(--amber); }
.ministry-split + .tile-grid, .tile-grid + .tile-grid{ margin-top: 12px; }
.ss-more{ padding-top: 40px; }
.ss-links{ display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.ecc-review{ display: grid; grid-template-columns: 150px 1fr 1.4fr auto; gap: 8px; margin-top: 12px; padding-top: 12px; border-top: 1px solid #e8e8ed; }
.ecc-review select, .ecc-review input{ font: inherit; font-size: 16px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 10px; min-width: 0; }
.ecc-review .pill{ padding: 8px 16px; font-size: 16px; cursor: pointer; }
.bible-wrap{ margin-top: 12px; padding: 44px 16px 36px; background: radial-gradient(120% 120% at 50% 0%, #f7f1e6 0%, #efe5d3 60%, #e7dbc4 100%); }
.bible{
  position: relative; max-width: 1120px; margin: 0 auto; padding: 16px 18px 20px; border-radius: 22px; outline: none;
  background:
    radial-gradient(140% 90% at 30% 10%, rgba(255, 255, 255, 0.07) 0%, rgba(255, 255, 255, 0) 45%),
    repeating-linear-gradient(45deg, rgba(0, 0, 0, 0.035) 0 2px, rgba(0, 0, 0, 0) 2px 5px),
    linear-gradient(160deg, #5a3520 0%, #3d2214 55%, #2a170c 100%);
  box-shadow: 0 30px 70px rgba(43, 23, 12, 0.35), 0 4px 10px rgba(43, 23, 12, 0.25), inset 0 0 0 2px rgba(212, 169, 78, 0.35), inset 0 0 0 7px rgba(0, 0, 0, 0.15);
}
.bible:focus-visible{ box-shadow: 0 0 0 3px var(--blue), 0 30px 70px rgba(43, 23, 12, 0.35); }
.bible-spread{ position: relative; display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 100%; min-height: 580px; perspective: 2600px; }
.bible-page{ position: relative; isolation: isolate; padding: 38px 46px 58px; color: #2b2118; overflow: hidden; }
.bp-bg{ position: absolute; inset: 74px 40px 48px; z-index: -1; padding: 0; overflow: hidden; pointer-events: none; user-select: none;
  column-count: 2; column-gap: 28px; column-rule: 1px solid rgba(90, 53, 32, 0.25);
  font-family: var(--serif); font-size: 15px; line-height: 2; text-align: justify; color: #6b4a2b; opacity: 0.05; }
.bible-page::before{ content: ""; position: absolute; left: 50%; top: 50%; z-index: -1; width: min(300px, 70%); aspect-ratio: 1; transform: translate(-50%, -50%);
  background: url("/assets/logo.jpg") center / contain no-repeat; filter: sepia(1) saturate(0.8); mix-blend-mode: multiply; opacity: 0.09; pointer-events: none; }
.bp-bg p{ margin: 0 0 10px; }
.bp-bg sup{ font-size: 15px; color: #a31d1d; margin: 0 2px; }
.bible-left{
  border-radius: 12px 3px 3px 12px;
  background: linear-gradient(to right, #fbf6ea 0%, #fbf6ea 84%, #efe3c9 95%, #e2d2ad 100%);
  box-shadow: -2px 0 0 #f1e8d4, -4px 0 0 #e4d6b6, -6px 0 0 #d8c69c, -7px 0 0 #b8914a;
}
.bible-right{
  border-radius: 3px 12px 12px 3px;
  background: linear-gradient(to left, #fbf6ea 0%, #fbf6ea 84%, #efe3c9 95%, #e2d2ad 100%);
  box-shadow: 2px 0 0 #f1e8d4, 4px 0 0 #e4d6b6, 6px 0 0 #d8c69c, 7px 0 0 #b8914a;
}
.bible-spread.is-single{ grid-template-columns: 1fr; }
.bible-spread.is-single .bible-right[data-right]{ display: none; }
.bible-spread.is-single .bible-left{ border-radius: 12px; background: linear-gradient(to right, #e9dcbf 0%, #fbf6ea 7%, #fbf6ea 100%); box-shadow: 2px 0 0 #f1e8d4, 4px 0 0 #e4d6b6, 5px 0 0 #b8914a; }
.bible-leaf{ position: absolute; top: 0; bottom: 0; width: 50%; z-index: 5; transform-style: preserve-3d; transition: transform 0.85s cubic-bezier(0.33, 0.08, 0.2, 1), opacity 0.85s ease; }
.leaf-face{ position: absolute; inset: 0; backface-visibility: hidden; -webkit-backface-visibility: hidden; }
.leaf-back{ transform: rotateY(180deg); }
.leaf-right{ left: 50%; transform-origin: left center; }
.leaf-right.turn-next{ transform: rotateY(-180deg); }
.leaf-left{ left: 0; transform-origin: right center; }
.leaf-left.turn-prev{ transform: rotateY(180deg); }
.leaf-full{ left: 0; width: 100%; transform-origin: left center; }
.leaf-full.turn-next{ transform: rotateY(-160deg); opacity: 0; }
.leaf-full.back-in{ transform: rotateY(-160deg); opacity: 0; }
.leaf-full.back-in.turn-back{ transform: none; opacity: 1; }
.leaf-face::after{ content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(to right, rgba(0, 0, 0, 0.08), rgba(0, 0, 0, 0) 30%); }
.bible-ribbon{ position: absolute; top: -10px; left: calc(50% + 10px); z-index: 4; width: 16px; height: calc(100% + 58px); background: linear-gradient(90deg, #8e1a18 0%, #b32622 50%, #8e1a18 100%); clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 94%, 0 100%); box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3); pointer-events: none; }
.bible-spread.is-single .bible-ribbon{ left: auto; right: 34px; }
.bible-corner{ position: absolute; bottom: 0; z-index: 6; width: 56px; height: 56px; border: 0; padding: 0; cursor: pointer; background: transparent; transition: width 0.2s, height 0.2s; }
.bible-corner-next{ right: 0; border-radius: 0 0 12px 0; background: linear-gradient(135deg, rgba(0, 0, 0, 0) 50%, #e3d4b2 50%, #fffaf0 78%); }
.bible-corner-prev{ left: 0; border-radius: 0 0 0 12px; background: linear-gradient(225deg, rgba(0, 0, 0, 0) 50%, #e3d4b2 50%, #fffaf0 78%); }
.bible-corner:hover, .bible-corner:focus-visible{ width: 72px; height: 72px; }
.bible-corner:disabled{ display: none; }
.bp-head{ margin: 0 0 18px; padding-bottom: 8px; border-bottom: 1px solid #d9c89f; text-align: center; font-size: 15px; letter-spacing: 0.28em; color: #8a6a3a; text-transform: uppercase; }
.bp-title{ margin: 0 0 14px; font-family: var(--serif); font-size: 32px; font-weight: 700; color: #2b2118; }
.bp-title::first-letter{ color: #a31d1d; font-size: 1.25em; }
.bp-list{ list-style: none; margin: 0; padding: 0; }
.bp-list li{ display: grid; grid-template-columns: 150px 1fr; gap: 12px; padding: 7px 0; border-bottom: 1px dotted #e0d2b2; }
.bp-events li{ grid-template-columns: 130px 1fr; }
html[data-lang="en"] .bp-ss .bp-ss-en{ order: -1; }
.bp-ss{ display: flex; flex-direction: column; }
.bp-note{ margin: 16px 0 0; font-family: var(--serif); color: #5a4630; }
.bp-classes{ margin: 0; }
.bp-classes dt{ margin-top: 12px; font-family: var(--serif); font-weight: 700; font-size: 20px; }
.bp-classes dd{ margin: 2px 0 0; color: #8a6a3a; }
.bp-link{ display: inline-block; margin-top: 20px; font-family: var(--serif); color: #8e1a18; font-weight: 600; }
.bp-verse{ margin: 40px 0 26px; padding: 0; background: none; text-align: center; }
.bp-verse p{ font-family: var(--serif); font-size: 28px; line-height: 1.8; color: #2b2118; margin: 0; }
.bp-verse p::before, .bp-verse p::after{ color: #b8914a; }
.bp-verse cite{ display: block; margin-top: 12px; font-family: var(--serif); font-style: normal; color: #a31d1d; letter-spacing: 0.08em; }
.bp-links{ list-style: none; margin: 0 auto; padding: 0; max-width: 300px; }
.bp-links li{ text-align: center; padding: 8px 0; border-top: 1px dotted #e0d2b2; }
.bp-links a{ font-family: var(--serif); color: #5a3520; }
.bp-num{ position: absolute; left: 0; right: 0; bottom: 18px; margin: 0; text-align: center; font-family: var(--serif); font-size: 15px; color: #b8914a; }
.bp-blank{ height: 100%; }
.bp-psalm{ margin: 56px 0 0; }
.bp-psalm p{ font-size: 25px; line-height: 2; text-align: justify; text-indent: 0; }
.bp-psalm sup{ font-size: 0.55em; color: #a31d1d; margin: 0 3px 0 6px; vertical-align: super; }
.bp-psalm p::before, .bp-psalm p::after{ content: none; }
html[data-lang="en"] .bp-psalm{ margin-top: 30px; }
html[data-lang="en"] .bp-psalm p{ font-size: 20px; line-height: 1.75; text-align: left; }
.bp-sign{ margin: 34px 0 0; text-align: center; font-family: var(--serif); font-size: 22px; letter-spacing: 0.3em; color: #8a6a3a; }
.bp-title-2{ margin-top: 34px; padding-top: 22px; border-top: 1px solid #d9c89f; }
.bp-title-2 small{ display: block; margin-top: 4px; font-size: 16px; font-weight: 400; color: #8a6a3a; }
.bp-title-2::first-letter{ font-size: 1.25em; }
.news-links{ display: grid; grid-template-columns: 1fr 1fr; gap: 10px; max-width: 460px; margin: 22px auto 0; }
.news-link{ display: flex; flex-direction: column; align-items: flex-start; gap: 2px; padding: 14px 16px; border-radius: 14px; background: rgba(255, 255, 255, 0.75); border: 1px solid rgba(184, 106, 18, 0.2); color: var(--text); text-align: left; position: relative; transition: background 0.2s, box-shadow 0.2s; }
.news-link::after{ content: "›"; position: absolute; right: 14px; top: 50%; transform: translateY(-50%); color: var(--amber); font-size: 22px; }
.news-link:hover{ text-decoration: none; background: #fff; box-shadow: 0 8px 22px rgba(0, 0, 0, 0.06); }
.nl-label{ font-weight: 600; font-size: 18px; }
.nl-sub{ font-size: 15px; color: var(--text-2); }
:root{ --ivory: #fbf8f2; --gold: #b8914a; }
.ab-hero{ padding: 88px 22px 56px; text-align: center; background: radial-gradient(120% 90% at 50% 0%, #ffffff 0%, var(--ivory) 60%, #f4ecdc 100%); }
.ab-hero-inner{ max-width: 820px; margin: 0 auto; }
.ab-eyebrow{ margin: 0 0 14px; font-size: 15px; font-weight: 600; letter-spacing: 0.32em; text-transform: uppercase; color: var(--gold); }
.ab-title{ margin: 0; font-family: var(--serif); font-weight: 700; font-size: clamp(38px, 6vw, 64px); line-height: 1.15; letter-spacing: 0.08em; color: #231a10; }
.ab-sub{ margin: 14px 0 0; font-size: 19px; color: var(--text-2); letter-spacing: 0.02em; }
.ab-rule{ display: block; width: 64px; height: 1px; margin: 28px auto 0; background: var(--gold); position: relative; }
.ab-rule::after{ content: ""; position: absolute; left: 50%; top: -3px; width: 7px; height: 7px; background: var(--gold); transform: translateX(-50%) rotate(45deg); }
.ab-section{ padding: 88px 22px; scroll-margin-top: 100px; }
.ab-wrap{ max-width: 1080px; margin: 0 auto; }
.ab-narrow{ max-width: 760px; }
.ab-label{ margin: 0 0 14px; font-size: 15px; font-weight: 600; letter-spacing: 0.24em; text-transform: uppercase; color: var(--gold); }
.ab-faith{ background: var(--ivory); text-align: center; }
.ab-faith-title{ margin: 0; font-family: var(--serif); font-size: 42px; letter-spacing: 0.12em; color: #231a10; }
.ab-articles{ list-style: none; margin: 44px 0 20px; padding: 0; text-align: left; }
.ab-articles li{ display: grid; grid-template-columns: 64px 1fr; gap: 12px; padding: 22px 0; border-top: 1px solid #e7dcc7; }
.ab-articles li:last-child{ border-bottom: 1px solid #e7dcc7; }
.ab-num{ font-family: Georgia, var(--serif); font-size: 30px; line-height: 1.2; color: var(--gold); font-variant-numeric: lining-nums; }
.ab-articles p{ margin: 0; font-family: var(--serif); font-size: 20px; line-height: 1.95; color: #2b2118; }
.ab-articles li.ab-group{ display: block; padding: 28px 0 6px; border-top: 0; }
.ab-articles li.ab-group h4{ margin: 0; font-size: 13px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--text-2); }
.ab-articles li.ab-group + li{ border-top: 0; }
.ab-refs{ display: block; margin-top: 6px; font-family: var(--font); font-size: 15px; letter-spacing: 0.02em; color: var(--text-2); }
.m-btn:disabled{ opacity: 0.4; cursor: not-allowed; }
.pt-hero{ padding: 64px 22px 48px; text-align: center; background: linear-gradient(170deg, #16213f 0%, var(--night) 100%); color: #fff; }
.pt-hero-sm{ padding: 52px 22px 40px; }
.pt-hero-inner{ max-width: 760px; margin: 0 auto; }
.pt-hero .kicker, .pt-hero .kicker a{ color: var(--amber-soft); }
.pt-hero .subhead{ color: #d8dbe3; }
.pw-todo{ display: block; max-width: 640px; margin: 0 auto 16px; padding: 12px 18px; border-radius: 14px; background: rgba(243, 199, 126, 0.16); border: 1px solid rgba(243, 199, 126, 0.5); color: #f3c77e; text-align: center; font-size: 18px; }
.pw-todo:hover{ text-decoration: none; background: rgba(243, 199, 126, 0.26); }
.section{ padding: 64px 22px 80px; }
.container{ max-width: 980px; margin: 0 auto; }
.narrow{ max-width: 692px; }
.section h1{ font-size: 48px; line-height: 1.08; font-weight: 600; letter-spacing: -0.003em; margin: 0 0 8px; }
.muted{ color: var(--text-2); }
.small{ font-size: 16px; }
.eyebrow-sm{ margin: 0 0 12px; font-size: 16px; }
blockquote{
  margin: 28px 0 32px;
  padding: 28px 32px;
  background: var(--cream);
  border-radius: 18px;
}
blockquote p{ font-family: var(--serif); font-size: 23px; line-height: 1.7; font-weight: 500; letter-spacing: 0.03em; margin: 0 0 10px; }
blockquote cite{ color: var(--amber); font-family: var(--serif); font-style: normal; font-size: 16px; letter-spacing: 0.08em; }
.prose{ overflow-wrap: anywhere; }
.prose li{ margin-bottom: 10px; }
.news-list{ list-style: none; padding: 0; margin: 24px 0 0; }
.news-list li{ display: flex; justify-content: space-between; gap: 12px; padding: 14px 0; border-top: 1px solid var(--line); }
.globalfooter{ background: var(--gray); color: var(--text-2); font-size: 15px; line-height: 1.33; letter-spacing: -0.01em; margin-top: 12px; }
.footer-inner{ max-width: 980px; margin: 0 auto; padding: 24px 22px 20px; }
.footer-mission{ padding-bottom: 14px; border-bottom: 1px solid var(--line); margin: 0; }
.footer-cols{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; padding: 20px 0; }
.footer-cols h3{ font-size: 15px; font-weight: 600; color: var(--text); margin: 0 0 8px; }
.footer-cols p{ margin: 0; line-height: 1.8; }
.footer-cols a{ color: #424245; }
.footer-legal{ border-top: 1px solid var(--line); padding-top: 14px; margin: 0; }
@media (max-width: 1068px){.headline{ font-size: 48px; }
.subhead{ font-size: 26px; }
}
@media (max-width: 1068px) and (min-width: 735px){.tile-grid{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 734px){.tile{ padding: 44px 16px 0; }
.tile-live, .tile-welcome{ padding: 22px 10px 20px; }
.pair-head h2{ font-size: 24px; }
.pair-strip{ grid-template-columns: 1fr; gap: 8px; font-size: 16px; }
.pair-strip li{ display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 12px; }
.pair-strip li > strong{ min-width: 6em; }
.pair-strip li{ padding-left: 9px; }
.headline{ font-size: 42px; }
.subhead{ font-size: 23px; }
.tile-grid{ grid-template-columns: 1fr; padding: 0; }
.tw{ grid-template-columns: 1fr; grid-template-rows: auto; grid-template-areas: "verse" "ann" "links"; margin: 12px 0 0; }
.tw .an-board{ padding: 22px 14px 18px; border-left: 0; border-top: 1px solid var(--line); }
.anc{ grid-template-columns: 54px minmax(0, 1fr); gap: 12px; padding: 12px; }
.anc-date{ width: 54px; height: 54px; }
.anc-side{ grid-column: 2; flex-direction: row; align-items: center; justify-content: flex-start; flex-wrap: wrap; }
.an-cards-page{ grid-template-columns: 1fr; }
.verse p{ font-size: 22px; }
.ministry-split{ flex-direction: column; min-height: 0; background-position: center 40%; }
.ms-panel{ min-height: 260px; padding: 28px 24px; }
.ms-panel + .ms-panel, html[data-lang="en"] .ms-en + .ms-zh{ border-left: 0; border-top: 1px solid rgba(255, 255, 255, 0.25); }
html[data-lang="en"] .ms-zh + .ms-en{ border-top: 0; }
.ms-name{ font-size: 38px; }
.cal-title{ font-size: 23px; }
.cal-cell{ min-height: 56px; padding: 4px; text-align: center; }
.cal-day{ width: 30px; height: 30px; }
.cal-evs{ display: none; }
.cal-dots{ display: flex; justify-content: center; gap: 3px; margin-top: 2px; }
.cal-dots i{ width: 6px; height: 6px; border-radius: 50%; }
.cal-head span{ text-align: center; padding: 0 0 6px; }
.cal-agenda{ padding: 16px; }
.cal-agenda li a{ grid-template-columns: 1fr; gap: 2px; }
.tile-grid-2{ grid-template-columns: 1fr; }
.bible-wrap{ padding: 28px 10px 26px; }
.bible{ padding: 10px 10px 14px; border-radius: 16px; }
.bible-spread{ min-height: 520px; }
.bible-page{ padding: 26px 24px 54px; }
.bp-list li{ grid-template-columns: 1fr; gap: 0; }
.bp-title{ font-size: 28px; }
.bp-verse p{ font-size: 23px; }
.bp-bg{ inset: 60px 18px 40px; column-gap: 16px; font-size: 15px; }
.ecc-review{ grid-template-columns: 1fr; }
.ss-links{ grid-template-columns: 1fr; }
.am-row{ grid-template-columns: 1fr; }
.ab-section, .ab-mission{ padding: 60px 18px; }
.ab-intro-text p, .ab-articles p{ font-size: 19px; text-align: left; }
.ab-faith-title{ font-size: 32px; }
.ab-articles li{ grid-template-columns: 44px 1fr; }
.ab-num{ font-size: 24px; }
.section h1{ font-size: 38px; }
.footer-cols{ grid-template-columns: 1fr 1fr; }
}
.lu-app{ max-width: 640px; margin: 22px auto 0; text-align: left; }
.lu-lede{ text-align: center; font-size: 21px; margin: 0 0 18px; }
.lu-app .ctas{ justify-content: center; }
.lu-meta{ display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-bottom: 18px; }
.lu-meta span{ padding: 5px 12px; border-radius: 980px; background: #fff; border: 1px solid #e8e8ed; font-size: 16px; }
.lu-date{ font-weight: 600; }
.lu-deadline{ color: var(--amber); }
.lu-deadline.is-closed{ color: var(--text-2); }
.lu-note{ font-size: 17px; line-height: 1.6; color: var(--text-2); background: var(--cream); border-radius: 14px; padding: 12px 16px; margin: 0 0 18px; }
.lu-form{ display: grid; gap: 14px; }
.lu-menu{ list-style: none; margin: 0; padding: 0; background: #fff; border-radius: 18px; border: 1px solid #e8e8ed; }
.lu-dish{ display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 16px; }
.lu-dish + .lu-dish{ border-top: 1px solid #f0f0f2; }
.lu-dish-name{ font-size: 19px; }
.lu-dish-name small{ display: block; font-size: 15px; color: var(--text-2); }
.lu-dish.has-img .lu-dish-name{ flex: 1; min-width: 0; }
.lu-menu-view .lu-dish{ justify-content: flex-start; }
.lu-signin{ margin: 14px 0 6px; text-align: center; }
.la-photo{ width: 76px; white-space: nowrap; }
.la-photo img{ width: 48px; height: 48px; object-fit: cover; border-radius: 8px; vertical-align: middle; }
.la-photo-add{ cursor: pointer; font-size: 15px; }
.la-link{ margin: 0 0 18px; padding: 14px 16px; border-radius: 14px; background: #fff; border: 1px solid #e8e8ed; }
.la-link-row{ display: flex; gap: 8px; }
.la-link-row input{ flex: 1; min-width: 0; font-size: 15px; }
.la-link-actions{ display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 10px 0 0; }
.lu-signin .pill{ display: inline-block; }
.lu-signin p{ margin: 8px 0 0; }
.lu-step{ display: inline-flex; align-items: center; gap: 4px; flex: none; }
.lu-step button{ width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--line); background: #fff; font-size: 24px; line-height: 1; color: var(--blue); cursor: pointer; }
.lu-step button:disabled{ color: #c7c7cc; cursor: default; }
.lu-step output{ min-width: 32px; text-align: center; font-size: 21px; font-weight: 600; font-variant-numeric: tabular-nums; }
.lu-name{ display: grid; gap: 6px; font-size: 16px; font-weight: 600; }
.lu-name input{ font: inherit; font-weight: 400; font-size: 19px; padding: 11px 14px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.lu-hp{ position: absolute !important; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.lu-actions{ display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.lu-actions .pill{ cursor: pointer; }
.lu-count{ color: var(--text-2); font-size: 17px; }
.lu-status{ margin: 0; min-height: 1.4em; font-size: 17px; color: #c9341f; }
.link-btn{ border: 0; background: none; padding: 0; font: inherit; color: var(--link); cursor: pointer; }
.link-btn:hover{ text-decoration: underline; }
.lu-score{ background: #fff7e6; border: 1px solid #f3d9a4; border-radius: 16px; padding: 14px 18px; margin-bottom: 16px; }
.lu-score h3{ margin: 0 0 2px; font-size: 20px; }
.lu-score-list{ list-style: none; margin: 8px 0 0; padding: 0; }
.lu-score-list > li{ display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 6px 0; border-top: 1px dashed #f0dcb4; }
.lu-score-list > li:first-child{ border-top: 0; }
.lu-score-who{ font-weight: 600; justify-content: flex-start !important; }
.lu-score-name{ font-size: 18px; }
.lu-stars{ display: inline-flex; flex: none; }
.lu-stars button{ border: 0; background: none; padding: 2px 3px; font-size: 28px; line-height: 1; color: #e3d6bd; cursor: pointer; }
.lu-stars button.is-on{ color: #f2a516; }
.lu-score-brief{ margin: 0 0 8px; font-size: 16px; }
.lu-mine{ background: #e9f6ec; border-radius: 16px; padding: 14px 18px; margin-bottom: 14px; }
.lu-mine p{ margin: 4px 0; }
.lu-mine-actions{ display: flex; gap: 18px; }
.lu-mine-one + .lu-mine-one{ border-top: 1px solid #cfe8d5; margin-top: 6px; padding-top: 6px; }
.lu-editing{ margin: 0 0 8px; font-weight: 600; }
.lu-summary{ margin-top: 22px; }
.lu-summary h3, .lu-h3{ font-size: 17px; font-weight: 600; color: var(--text-2); margin: 0 0 8px; }
.lu-h3{ margin-top: 26px; }
.lu-totals{ list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 8px; }
.lu-totals li{ display: flex; justify-content: space-between; align-items: baseline; gap: 8px; background: #fff; border-radius: 12px; padding: 8px 12px; font-size: 16px; }
.lu-totals strong{ font-size: 21px; font-variant-numeric: tabular-nums; }
.lu-totals .lu-total-all{ background: var(--night); color: #fff; }
.lu-table-wrap{ overflow-x: auto; background: #fff; border-radius: 14px; border: 1px solid #e8e8ed; }
.lu-table{ width: 100%; border-collapse: collapse; font-size: 16px; }
.lu-table th, .lu-table td{ padding: 8px 10px; border-bottom: 1px solid #f0f0f2; text-align: center; white-space: nowrap; }
.lu-table th:first-child, .lu-table td:first-child{ text-align: left; }
.lu-table tfoot td{ font-weight: 600; border-bottom: 0; }
.lu-foot{ text-align: center; margin-top: 22px; }
.tile-lunch-page{ margin-top: 0; }
.lu-brief{ margin: 12px 0 0; font-size: 16px; color: #5a4630; line-height: 1.6; }
.la-weeks{ display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 16px; }
.la-weeks button{ border: 1px solid var(--line); background: #fff; border-radius: 980px; padding: 6px 14px; font: inherit; font-size: 16px; cursor: pointer; }
.la-weeks button.is-on{ background: var(--text); border-color: var(--text); color: #fff; }
.la-menu{ width: 100%; border-collapse: collapse; font-size: 16px; }
.la-pick{ margin: 10px 0 16px; padding: 14px; border: 1px solid var(--line); border-radius: 16px; background: #fffaf2; }
.la-pick-top{ display: flex; gap: 8px; }
.la-pick-top input, .la-lib input[type=search]{ flex: 1; min-width: 0; font: inherit; padding: 9px 12px; border: 1px solid var(--line); border-radius: 980px; background: #fff; }
.la-cats{ display: flex; gap: 6px; flex-wrap: wrap; margin: 10px 0; }
.la-cats button{ border: 1px solid var(--line); background: #fff; border-radius: 980px; padding: 4px 12px; font: inherit; font-size: 15px; cursor: pointer; }
.la-cats button[aria-pressed=true]{ background: var(--text); border-color: var(--text); color: #fff; }
.la-pick-list{ display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 8px; max-height: 420px; overflow-y: auto; }
.la-dish{ display: flex; flex-direction: column; align-items: flex-start; gap: 2px; text-align: left; border: 1px solid var(--line); background: #fff; border-radius: 12px; padding: 8px 12px; font: inherit; cursor: pointer; }
.la-dish > b{ font-size: 17px; }
.la-dish > small{ color: var(--text-2); font-size: 13px; }
.la-dish > i{ font-style: normal; font-size: 13px; color: var(--text-2); }
.la-rate{ color: #b7791f; font-style: normal; }
.la-rate.is-low{ color: #c53030; font-weight: 600; }
.la-dish[aria-pressed=true]{ border-color: var(--amber); background: #fff1dc; box-shadow: inset 0 0 0 1px var(--amber); }
.la-dish[aria-pressed=true] > b::before{ content: "✓ "; color: var(--amber); }
.la-lib > summary{ cursor: pointer; font-size: 17px; margin: 4px 0 10px; }
.la-lib-table{ min-width: 860px; }
.la-lib-table td:nth-child(2) input{ width: 64px; }
.la-lib-table td:nth-child(3) input{ min-width: 130px; }
.la-lib-table td:nth-child(4) input{ min-width: 200px; }
.la-lib-table th{ white-space: nowrap; }
.la-lib-rate{ white-space: nowrap; font-size: 14px; }
.la-lib-table td:nth-child(6) input{ width: 76px; }
.la-lib-table select{ font: inherit; padding: 7px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.la-menu th{ text-align: left; font-weight: 600; padding: 4px; }
.la-menu td{ padding: 4px; }
.la-menu input{ width: 100%; box-sizing: border-box; font: inherit; padding: 8px 10px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.la-menu input[type=number]{ width: 70px; }
.la-check{ display: flex !important; grid-template-columns: none; align-items: center; gap: 8px; }
.la-tools{ display: flex; gap: 14px; flex-wrap: wrap; align-items: center; margin: 10px 0; }
.lu-table .is-cancelled td{ color: #aeaeb2; text-decoration: line-through; }
@media (max-width: 734px){.lu-dish{ padding: 10px 12px; }
.lu-dish-name{ font-size: 18px; }
.la-menu, .la-menu tbody, .la-menu tr, .la-menu td{ display: block; }
.la-menu thead{ display: none; }
.la-menu tr{ display: grid; grid-template-columns: 1fr 1fr; gap: 4px; padding: 8px 0; border-bottom: 1px solid var(--line); }
}
.ssc-tone-0{ background: linear-gradient(135deg, #2f5d8a, #7fb2d9); }
.ssc-tone-1{ background: linear-gradient(135deg, #7a4b1e, #e0a85c); }
.ssc-tone-2{ background: linear-gradient(135deg, #3b6b3f, #9cc98a); }
.ssc-tone-3{ background: linear-gradient(135deg, #6b2d4f, #d48bb0); }
.ssc-tone-4{ background: linear-gradient(135deg, #4b3f8a, #a99be0); }
.ssc-tone-5{ background: linear-gradient(135deg, #8a2b22, #e2876a); }
.ssd-lfiles{ grid-column: 2 / -1; display: flex; flex-wrap: wrap; gap: 6px; margin-top: 2px; }
.ssd-file{ display: inline-flex; align-items: center; gap: 6px; max-width: 100%; padding: 6px 14px; border-radius: 980px; background: var(--gray); color: var(--text); font-size: 18px; }
.ssd-file:hover{ background: #e8e8ed; text-decoration: none; }
.ssd-fname{ overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 280px; color: var(--link); }
.ssd-file small{ color: var(--text-2); }
.ssd-general{ margin-top: 18px; }
.ssd-teacher{ margin-top: 20px; font-size: 18px; }
.ssd-login{ color: var(--text-2); font-size: 17px; }
.ssd-tools{ display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; padding: 12px 16px; border-radius: 14px; background: #fff8eb; border: 1px solid #f3d9a4; }
.ssd-tools .pill{ padding: 6px 16px; font-size: 16px; }
.ssd-staff{ display: flex; align-items: center; gap: 6px; }
.ssd-hint{ margin: 8px 2px 0; font-size: 15px; }
.ssd-status{ margin: 6px 2px 0; font-size: 15px; color: var(--amber); }
.ssd-status.is-warn{ color: #b35c00; font-weight: 600; }
.ssd-attach{ display: inline-grid; place-items: center; width: 36px; height: 36px; margin-left: 10px; border-radius: 50%; border: 1px solid var(--line); background: #fff; cursor: pointer; font-size: 19px; vertical-align: middle; }
.ssd-attach:hover{ background: var(--gray); }
.ssd-attach input{ display: none; }
.ssd-file.is-staff{ background: #fff4e5; }
.ssd-file a{ display: inline-flex; align-items: center; gap: 6px; color: inherit; min-width: 0; }
.ssd-file a:hover{ text-decoration: none; }
.ssd-fdel{ border: 0; background: none; color: var(--text-2); cursor: pointer; font-size: 15px; padding: 0 2px; }
.ssd-general h3{ margin: 0 0 10px; font-family: var(--serif); font-size: 24px; }
.ssd-files{ list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.sr-only{ position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.container.narrow:has(#ss-app){ max-width: 1040px; }
.ss-btn{ font: inherit; font-size: 17px; padding: 8px 16px; border: 1px solid var(--line); border-radius: 980px; background: #fff; color: var(--text); cursor: pointer; }
.ss-btn:hover{ border-color: #b0b0b6; }
.ss-btn-sm{ font-size: 16px; padding: 5px 12px; }
.ss-icon-btn{ width: 40px; height: 40px; flex: none; border: 1px solid var(--line); border-radius: 50%; background: #fff; font-size: 24px; line-height: 1; color: var(--text); cursor: pointer; }
.ss-icon-btn:hover{ background: var(--soft); }
.ss-toolbar{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.ss-toolbar h3{ margin: 0; font-size: 21px; }
.ss-app select, .ss-form input, .ss-form select, .ss-form textarea, .ss-paste textarea{
  font: inherit; font-size: 17px; padding: 9px 12px; border: 1px solid var(--line); border-radius: 10px; background: #fff; color: var(--text); width: 100%; box-sizing: border-box; }
.ss-chipbar{ display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 6px; }
.ss-chipbar button{ font: inherit; font-size: 16px; padding: 6px 14px; border-radius: 980px; border: 1px solid var(--line); background: #fff; color: var(--text); cursor: pointer; }
.ss-chipbar button[aria-pressed="true"]{ background: var(--m, var(--text)); border-color: var(--m, var(--text)); color: #fff; font-weight: 600; }
.ss-dialog{ width: min(720px, calc(100vw - 32px)); max-height: calc(100vh - 48px); padding: 0; border: 0; border-radius: 20px; box-shadow: 0 24px 80px rgba(0, 0, 0, 0.25); color: var(--text); }
.ss-dialog-wide{ width: min(980px, calc(100vw - 32px)); }
.ss-dialog::backdrop{ background: rgba(20, 20, 30, 0.45); backdrop-filter: blur(3px); }
.ss-dialog[open]{ display: flex; }
.ss-form{ display: flex; flex-direction: column; width: 100%; max-height: calc(100vh - 48px); }
.ss-dialog-head, .ss-dialog-foot{ display: flex; align-items: center; gap: 12px; padding: 14px 20px; }
.ss-dialog-head{ border-bottom: 1px solid #ececf0; }
.ss-dialog-head h2{ flex: 1; margin: 0; font-size: 22px; }
.ss-dialog-head .ss-icon-btn{ width: 34px; height: 34px; font-size: 17px; border: 0; background: var(--soft); }
.ss-dialog-body{ flex: 1; overflow-y: auto; padding: 6px 20px 16px; background: #fafafc; }
.ss-dialog-foot{ justify-content: flex-end; border-top: 1px solid #ececf0; }
.ss-dialog-foot .am-status{ margin-right: auto; font-size: 16px; }
.ss-dialog-foot .am-status.is-warn{ color: #b35c00; font-weight: 600; }
.ss-dialog-foot .pill{ cursor: pointer; }
.ss-form label{ display: grid; gap: 6px; font-size: 15px; font-weight: 600; color: var(--text-2); }
.ss-grid2{ display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.ss-hint{ font-weight: 400; font-size: 15px; color: var(--text-2); }
.ss-hint{ margin: 0 0 8px; font-size: 15px; color: var(--text-2); }
.ss-upload{ display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.ss-upload select{ width: auto; max-width: 100%; font-size: 16px; padding: 6px 10px; }
@media (max-width: 734px){.ss-grid2, .ss-grid3{ grid-template-columns: 1fr; }
.ss-dialog, .ss-dialog-wide{ width: 100vw; max-width: 100vw; height: 100dvh; max-height: 100dvh; border-radius: 0; margin: 0; }
.ss-form{ max-height: 100dvh; }
.ss-dialog-body{ padding: 4px 14px 14px; }
}
.ssc-wrap, .ssd{ --mc: #8a6420; --mc-soft: #f6efe1; }
.m-en{ --mc: #2f6a8a; --mc-soft: #e8f1f6; }
.m-kids{ --mc: #c2652a; --mc-soft: #fbeee4; }
.m-zh{ --mc: #8a6420; --mc-soft: #f6efe1; }
.ssc-wrap{ max-width: 1080px; margin: 0 auto; padding: 0 22px 48px; }
.ssc-intro{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 16px; margin: -28px 0 36px; position: relative; }
.ssc-season-card{ padding: 22px 24px; border-radius: 22px; background: #231a10; color: #f5efe3; box-shadow: 0 18px 40px rgba(35, 26, 16, 0.18); }
.ssc-season-name{ margin: 0; font-family: var(--serif); font-size: 34px; font-weight: 700; letter-spacing: 0.06em; }
.ssc-season-dates{ margin: 6px 0 18px; font-size: 19px; color: #cdbf9f; }
.ssc-season-bar{ height: 8px; border-radius: 4px; background: rgba(255, 255, 255, 0.14); overflow: hidden; }
.ssc-season-bar i{ display: block; height: 100%; border-radius: 3px; background: linear-gradient(90deg, #d8b26a, #f3d79c); }
.ssc-season-week{ margin: 10px 0 0; font-size: 18px; color: #cdbf9f; }
.ssc-ministries{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.ssc-min{ display: flex; flex-direction: column; gap: 4px; padding: 18px 18px 16px; border-radius: 18px; background: #fff; border: 1px solid #ece3d2; border-top: 4px solid var(--mc); color: var(--text); box-shadow: 0 8px 24px rgba(35, 26, 16, 0.06); transition: transform 0.2s, box-shadow 0.2s; }
.ssc-min:hover{ text-decoration: none; transform: translateY(-2px); box-shadow: 0 14px 30px rgba(35, 26, 16, 0.1); }
.ssc-min-name{ font-family: var(--serif); font-size: 24px; font-weight: 700; color: #231a10; }
.ssc-min-time{ font-size: 18px; color: var(--text-2); }
.ssc-min-count{ margin-top: 8px; font-size: 18px; font-weight: 600; color: var(--mc); }
.ssc-block{ margin-bottom: 44px; scroll-margin-top: 80px; }
.ssc-head{ display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 18px; padding-bottom: 12px; border-bottom: 1px solid #ece3d2; }
.ssc-head h2{ margin: 0; font-family: var(--serif); font-size: 38px; color: #231a10; display: flex; align-items: center; gap: 12px; }
.ssc-head h2::before{ content: ""; width: 6px; height: 32px; border-radius: 3px; background: var(--mc); }
.ssc-head p{ margin: 0; font-size: 20px; color: var(--text-2); }
.ssc-empty{ padding: 28px; font-size: 20px; text-align: center; color: var(--text-2); border: 1px dashed #e0d5bf; border-radius: 18px; background: var(--ivory); }
.ssc-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.ssc-card{ display: flex; flex-direction: column; border-radius: 18px; overflow: hidden; background: #fff; color: var(--text); border: 1px solid #ece3d2; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03); transition: transform 0.2s, box-shadow 0.2s; }
.ssc-card:hover{ text-decoration: none; transform: translateY(-3px); box-shadow: 0 16px 34px rgba(35, 26, 16, 0.12); }
.ssc-cover{ position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; }
.ssc-gen{ position: relative; display: flex; width: 100%; height: 100%; align-items: center; justify-content: center; overflow: hidden; }
.ssc-gen::after{ content: ""; position: absolute; inset: 0; background: radial-gradient(120% 90% at 0% 0%, rgba(255, 255, 255, 0.28), transparent 60%); }
.ssc-mark{ font-family: var(--serif); font-size: 96px; font-weight: 700; line-height: 1; color: rgba(255, 255, 255, 0.92); text-shadow: 0 6px 24px rgba(0, 0, 0, 0.18); }
.ssc-tone-0{ background: linear-gradient(135deg, #24476b, #6d9ec7); }
.ssc-tone-1{ background: linear-gradient(135deg, #6b4219, #d39a52); }
.ssc-tone-2{ background: linear-gradient(135deg, #2f5a33, #8dbb7c); }
.ssc-tone-3{ background: linear-gradient(135deg, #5c2744, #c47ea3); }
.ssc-tone-4{ background: linear-gradient(135deg, #3d3375, #9a8cd4); }
.ssc-tone-5{ background: linear-gradient(135deg, #7a2620, #d6785c); }
.ssc-progress{ position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: rgba(255, 255, 255, 0.35); }
.ssc-progress i{ display: block; height: 100%; background: #fff; }
.ssc-body{ display: flex; flex-direction: column; gap: 8px; padding: 16px 18px 18px; flex: 1; }
.ssc-name{ font-family: var(--serif); font-weight: 700; font-size: 25px; line-height: 1.35; color: #231a10; }
.ssc-en{ margin-top: -4px; font-size: 18px; color: var(--text-2); }
.ssc-room{ align-self: flex-start; padding: 3px 12px; border-radius: 8px; background: var(--mc-soft); font-size: 18px; color: #3a3128; }
.ssc-room b{ font-weight: 700; }
.ssc-meta{ display: flex; flex-wrap: wrap; gap: 4px 14px; font-size: 18px; color: var(--text-2); }
.ssc-next{ margin-top: auto; padding: 10px 12px; border-radius: 12px; background: var(--mc-soft); font-size: 18px; line-height: 1.45; color: #3a3128; }
.ssc-next b{ margin-right: 6px; color: var(--mc); }
.ssc-all{ text-align: center; margin-top: 4px; }
.ssc-list{ list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; }
.ssc-list li{ background: #fff; border: 1px solid #ece3d2; border-radius: 12px; padding: 14px 18px; font-size: 20px; }
.ssd{ max-width: 1080px; margin: 0 auto; padding: 22px 22px 56px; }
.ssd-crumbs{ font-size: 18px; color: var(--text-2); margin-bottom: 14px; }
.ssd-banner{ position: relative; display: flex; align-items: flex-end; min-height: 320px; border-radius: 26px; overflow: hidden; color: #fff; background-color: #231a10; }
.ssd-banner::after{ content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, 0.55) 100%); }
.ssd-banner-mark{ position: absolute; right: 4%; top: 50%; transform: translateY(-50%); font-family: var(--serif); font-size: clamp(160px, 26vw, 280px); font-weight: 700; line-height: 1; color: rgba(255, 255, 255, 0.16); }
.ssd-banner-text{ position: relative; z-index: 1; padding: 28px 32px; }
.ssd-banner h1{ margin: 0; font-family: var(--serif); font-size: clamp(36px, 5.2vw, 58px); line-height: 1.25; letter-spacing: 0.03em; text-shadow: 0 2px 12px rgba(0, 0, 0, 0.25); }
.ssd-en{ margin: 8px 0 0; font-size: 23px; opacity: 0.85; }
.ssd-tags{ display: flex; gap: 8px; flex-wrap: wrap; margin: 0 0 12px; }
.ssd-tags > span{ padding: 4px 14px; border-radius: 980px; background: rgba(255, 255, 255, 0.18); border: 1px solid rgba(255, 255, 255, 0.3); font-size: 17px; backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
.ssd-tags .is-next{ background: #fff; color: #231a10; }
.ssd-facts{ display: grid; grid-template-columns: 1fr 1fr 1.35fr 1.35fr; gap: 0; margin: 18px 0 0; border: 1px solid #ece3d2; border-radius: 18px; background: #fff; overflow: hidden; }
.ssd-facts div{ padding: 18px 22px; }
.ssd-facts div + div{ border-left: 1px solid #ece3d2; }
.ssd-facts dt{ display: flex; gap: 6px; align-items: center; font-size: 17px; letter-spacing: 0.08em; color: var(--text-2); }
.ssd-facts dd{ margin: 6px 0 0; font-size: 22px; font-weight: 600; color: #231a10; }
.ssd-next{ display: grid; grid-template-columns: auto 1fr; gap: 26px; align-items: center; margin-top: 20px; padding: 24px 28px; border-radius: 20px; background: var(--mc-soft); border: 1px solid color-mix(in srgb, var(--mc) 25%, white); }
.ssd-next-when{ display: flex; flex-direction: column; align-items: center; justify-content: center; min-width: 120px; padding: 14px 18px; border-radius: 16px; background: var(--mc); color: #fff; }
.ssd-next-when span{ font-size: 17px; letter-spacing: 0.1em; opacity: 0.85; }
.ssd-next-when strong{ font-family: Georgia, var(--serif); font-size: 42px; line-height: 1.15; }
.ssd-next-what p{ margin: 0; }
.ssd-next-n{ font-size: 18px; color: var(--mc); font-weight: 600; }
.ssd-next-topic{ font-family: var(--serif); font-size: 30px; font-weight: 700; color: #231a10; line-height: 1.4; }
.ssd-next-by{ font-size: 19px; color: var(--text-2); }
.ssd-next-by:empty{ display: none; }
.ssd-next-files{ display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.ssd-next-files:empty{ display: none; }
.ssd-next .ssd-file{ background: #fff; }
.ssd-cols{ display: grid; grid-template-columns: 1fr; gap: 20px; margin-top: 20px; }
.ssd-cols:has(> .ssd-plan[hidden]){ grid-template-columns: 1fr; }
.ssd-card{ border: 1px solid #ece3d2; border-radius: 24px; padding: 28px 32px 30px; background: #fff; }
.ssd-card h2{ margin: 0 0 18px; font-family: var(--serif); font-size: 32px; color: #231a10; }
.ssd-about{ }
.ssd-brief{ font-size: 21px; line-height: 1.9; color: #3a3128; }
.ssd-brief p{ margin: 0 0 10px; }
.ssd-brief ul{ padding-left: 1.3em; margin: 0 0 10px; }
.ssd-back{ margin-top: 28px; text-align: center; }
.ssd-lessons{ list-style: none; margin: 0; padding: 0; position: relative; }
.ssd-lessons::before{ content: ""; position: absolute; left: 33px; top: 30px; bottom: 30px; width: 2px; background: #ece3d2; }
.ssd-lessons li{ position: relative; display: grid; grid-template-columns: 44px 72px minmax(0, 1fr) auto; gap: 6px 18px; align-items: center; padding: 16px 16px 16px 12px; border-radius: 16px; }
.ssd-lessons li + li{ margin-top: 2px; }
.ssd-ln{ position: relative; z-index: 1; width: 44px; height: 44px; display: grid; place-items: center; border-radius: 50%; background: #fff; border: 2px solid #e0d5bf; font-size: 19px; font-weight: 700; color: var(--text-2); }
.ssd-ld{ font-family: Georgia, var(--serif); font-size: 22px; color: var(--text-2); font-variant-numeric: tabular-nums; }
.ssd-lt{ font-family: var(--serif); font-size: 23px; color: #231a10; line-height: 1.45; }
.ssd-ls{ font-size: 19px; color: var(--text-2); text-align: right; white-space: nowrap; }
.ssd-lessons .is-past .ssd-ln{ background: var(--mc); border-color: var(--mc); color: transparent; }
.ssd-lessons .is-past .ssd-ln::after{ content: "✓"; position: absolute; color: #fff; font-size: 21px; }
.ssd-lessons .is-past .ssd-lt{ color: var(--text-2); }
.ssd-lessons .is-next{ background: var(--mc-soft); border-radius: 14px; }
.ssd-lessons .is-next .ssd-ln{ border-color: var(--mc); color: var(--mc); box-shadow: 0 0 0 5px color-mix(in srgb, var(--mc) 18%, transparent); }
.ssd-lessons .is-next .ssd-lt{ font-weight: 700; }
.ssd-lt em{ margin-left: 8px; padding: 2px 10px; border-radius: 980px; background: var(--mc); color: #fff; font-family: var(--font); font-size: 16px; vertical-align: middle; font-style: normal; font-weight: 600; }
.ssd-lessons .ssd-lfiles{ grid-column: 3 / -1; }
@media (max-width: 1068px){.ssc-grid{ grid-template-columns: 1fr 1fr; }
.ssc-intro{ grid-template-columns: 1fr; }
}
@media (max-width: 734px){.ssc-wrap, .ssd{ padding-left: 16px; padding-right: 16px; }
.ssc-intro{ margin-top: -20px; }
.ssc-ministries{ grid-template-columns: 1fr; }
.ssc-min{ flex-direction: row; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; padding: 14px 16px; }
.ssc-min-count{ margin: 0 0 0 auto; }
.ssc-head h2{ font-size: 30px; }
.ssc-grid{ grid-template-columns: 1fr; gap: 12px; }
.ssc-card{ flex-direction: row; }
.ssc-cover{ flex: none; width: 104px; aspect-ratio: auto; min-height: 104px; }
.ssc-mark{ font-size: 46px; }
.ssc-body{ padding: 12px 14px; }
.ssc-name{ font-size: 22px; }
.ssc-list{ grid-template-columns: 1fr; }
.ssd-banner{ min-height: 240px; border-radius: 20px; }
.ssd-card{ padding: 22px 18px 24px; }
.ssd-card h2{ font-size: 28px; }
.ssd-facts dd{ font-size: 20px; }
.ssd-banner-text{ padding: 20px 20px; }
.ssd-facts{ grid-template-columns: 1fr 1fr; }
.ssd-facts div:nth-child(3){ border-left: 0; }
.ssd-facts div:nth-child(n + 3){ border-top: 1px solid #ece3d2; }
.ssd-cols{ grid-template-columns: 1fr; }
.ssd-about{ position: static; }
.ssd-next{ grid-template-columns: 1fr; gap: 12px; }
.ssd-next-when{ flex-direction: row; gap: 10px; justify-content: flex-start; min-width: 0; width: fit-content; }
.ssd-lessons::before{ left: 27px; }
.ssd-lessons li{ grid-template-columns: 40px minmax(0, 1fr); gap: 4px 14px; padding: 14px 10px 14px 6px; }
.ssd-ln{ width: 40px; height: 40px; }
.ssd-ld{ font-size: 20px; }
.ssd-lt{ font-size: 22px; }
.ssd-ld, .ssd-lt, .ssd-ls, .ssd-lessons .ssd-lfiles{ grid-column: 2; text-align: left; }
.ssd-ln{ grid-row: span 3; align-self: start; }
}
.bl{ margin-top: 28px; font-size: 20px; line-height: 1.85; color: #2b2118; }
.bl-block{ margin: 0 0 30px; }
.bl-h{ display: flex; align-items: center; gap: 10px; margin: 0 0 12px; font-family: var(--serif); font-size: 26px; font-weight: 700; color: #231a10; }
.bl-h::before{ content: ""; width: 5px; height: 22px; border-radius: 3px; background: var(--gold); }
.bl-title{ margin: 0 0 8px; font-family: var(--serif); font-size: 22px; color: #231a10; }
.bl p{ margin: 0 0 10px; }
.bl a{ overflow-wrap: anywhere; }
.bl-verse blockquote{ margin: 0; padding: 22px 26px; border-radius: 18px; background: var(--ivory); border-left: 4px solid var(--gold); font-family: var(--serif); font-size: 23px; line-height: 1.8; }
.bl-verse blockquote p{ margin: 0; }
.bl-verse cite{ display: block; margin-top: 8px; font-family: var(--font); font-size: 17px; font-style: normal; color: var(--amber); text-align: right; }
.bl-list{ margin: 0; padding-left: 1.6em; }
.bl-list li{ margin: 0 0 12px; padding-left: 4px; }
.bl-list li::marker{ font-weight: 700; color: var(--gold); }
.bl-list li p:last-child{ margin-bottom: 0; }
.bl-table{ width: 100%; border-collapse: collapse; font-size: 19px; }
.bl-table th, .bl-table td{ padding: 10px 12px; border-bottom: 1px solid #ece3d2; text-align: left; vertical-align: top; }
.bl-table th{ width: 42%; font-weight: 500; color: var(--text-2); }
.bl-table tr:last-child th, .bl-table tr:last-child td{ border-bottom: 0; }
.bl-serve-list{ list-style: none; margin: 0; padding: 0; background: #fff; border: 1px solid #ece3d2; border-radius: 14px; overflow: hidden; }
.bl-serve-list li{ display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr); gap: 4px 16px; padding: 10px 14px; border-bottom: 1px solid #ece3d2; font-size: 19px; }
.bl-serve-list.has-next li{ grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr) minmax(0, 1fr); }
.bl-serve-list li:last-child{ border-bottom: 0; }
.bl-serve-role{ color: var(--text-2); font-weight: 500; }
.bl-serve-week small{ display: block; font-size: 15px; letter-spacing: 0.06em; color: var(--text-2); }
@media (max-width: 734px){.bl-serve-list li, .bl-serve-list.has-next li{ grid-template-columns: 1fr 1fr; font-size: 17px; }
.bl-serve-role{ grid-column: 1 / -1; color: #7a4e14; font-weight: 600; }
}
.bl-order .bl-table, .bl-serve .bl-table{ background: #fff; border: 1px solid #ece3d2; border-radius: 14px; overflow: hidden; border-collapse: separate; border-spacing: 0; }
.an-em-h{ margin: 0 0 4px; font-family: var(--serif); font-size: 26px; }
.an-em-grid{ display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: 14px; margin-top: 14px; }
.an-em-grid img{ display: block; width: 100%; height: auto; border-radius: 10px; border: 1px solid var(--line); }
.bl-fold{ margin-top: 14px; padding: 12px 16px; border: 1px solid #ece3d2; border-radius: 14px; background: #fff; }
.bl-fold > summary{ cursor: pointer; font-weight: 600; }
.bl-fold[open] > summary{ margin-bottom: 14px; }
.bl-fold .bl-block:last-child{ margin-bottom: 0; }
.bl-mission{ padding: 20px 22px; border-radius: 18px; background: #f3f7f2; }
.bl-mission .bl-h::before{ background: #4f7d52; }
.container.narrow:has(#bl-app){ max-width: 1240px; }
@media (max-width: 734px){.bl{ font-size: 19px; }
.bl-h{ font-size: 24px; }
.bl-verse blockquote{ padding: 18px 18px; font-size: 21px; }
}
:root{
  --text: #1f1a14;          
  --text-2: #5f574d;        
  --gray: #f6f2ea;          
  --line: #e2d8c6;
  --navy: #14213d;
  --blue: #1f4e8c;          
  --link: #1f4e8c;
  --link-dark: #9cc2ff;
  --gold: #b8914a;
  --ivory: #fbf8f2;
}
body{ background: #fff; }
.globalfooter{ background: var(--navy); color: #c9cfdb; margin-top: 12px; }
.globalfooter a, .footer-cols a{ color: #e8ecf4; }
.footer-cols h3{ color: var(--amber-soft); font-family: var(--serif); letter-spacing: 0.04em; }
.footer-mission{ color: #e8ecf4; font-family: var(--serif); letter-spacing: 0.03em; border-bottom-color: rgba(255, 255, 255, 0.15); }
.footer-legal{ border-top-color: rgba(255, 255, 255, 0.15); }
.headline, .headline-sm, .section h1, .mp-h2, .pair-head h2, .ssc-head h2, .mx-text h2, .an-detail-title{
  font-family: var(--serif); font-weight: 700; letter-spacing: 0.03em;
}
.headline{ line-height: 1.2; }
.kicker{ letter-spacing: 0.08em; }
.mp-h2{ padding-bottom: 8px; border-bottom: 1px solid var(--line); }
.pill{ background: var(--blue); border-color: var(--blue); }
.pill:hover{ background: #173d70; border-color: #173d70; }
.section p, .section li{ line-height: 1.8; }
.muted{ color: var(--text-2); }
.mp-hero{ background: radial-gradient(120% 90% at 50% -10%, rgba(255, 255, 255, 0.16) 0%, rgba(255, 255, 255, 0) 60%), linear-gradient(160deg, var(--m) 0%, color-mix(in srgb, var(--m) 55%, black) 100%); }
.mp-subnav{ background: var(--ivory); border-bottom-color: var(--line); }
.mp-subnav a{ font-size: 17px; }
.bible-wrap{ position: relative; isolation: isolate; overflow: hidden; background: #2a1b10; }
.bible-wrap::before{ content: ""; position: absolute; inset: -24px; z-index: -2; background: url("/assets/sanctuary-pano-blur.webp") center 40% / cover no-repeat; filter: blur(5px) saturate(1.05); }
.bible-wrap::after{ content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(ellipse 70% 80% at 50% 45%, rgba(42, 27, 16, 0.18) 0%, rgba(30, 18, 9, 0.62) 70%, rgba(22, 13, 6, 0.8) 100%); }
@media (min-width: 735px){.bible-wrap{ padding: 22px 12px 16px; }
.bible{ max-width: 1320px; }
.bible-page{ padding: 44px 58px 62px; }
.bp-head{ font-size: 15px; margin-bottom: 22px; }
.bp-title{ font-size: 40px; margin-bottom: 18px; }
.bp-list li{ padding: 11px 0; }
.bp-link, .bp-note{ font-size: 21px; }
.bp-sslist{ font-size: 22px; }
.bp-classes dt{ font-size: 24px; }
.bp-classes dd{ font-size: 18px; }
.bp-verse p{ font-size: 32px; }
.bp-links a{ font-size: 21px; }
}
.tw, .tile-hero + .tw, .tw + .ministry-split, .ministry-split + .bible-wrap, .bible-wrap + .tile-pair{ margin-top: 0; }
.tile-pair{ margin-top: 0; padding: 0; gap: 0; border-top: 1px solid rgba(243, 199, 126, 0.35); }
.tile-pair .tile-live{ border-right: 1px solid rgba(255, 255, 255, 0.12); }
.ministry-split + .bible-wrap{ box-shadow: inset 0 1px 0 rgba(243, 199, 126, 0.35); }
.globalfooter{ margin-top: 0; border-top: 1px solid rgba(243, 199, 126, 0.35); }
@media (max-width: 734px){.tile-pair .tile-live{ border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, 0.12); }
}
.bp-list li{ grid-template-columns: 210px 1fr; }
.tw .verse p{ font-size: clamp(21px, 1.8vw, 30px); line-height: 1.55; }
@media (max-width: 734px){body{ font-size: 18px; }
.bp-list li{ grid-template-columns: 1fr; }
.bible-spread.is-single .bible-page{ padding-right: 60px; }
}
.bible .bp-head{ font-size: 18px; letter-spacing: 0.22em; }
.bible .bp-title{ font-size: 46px; }
.bible .bp-psalm p{ font-size: 31px; line-height: 1.9; }
html[data-lang="en"] .bible .bp-psalm p{ font-size: 25px; line-height: 1.7; }
.bible .bp-psalm cite, .bible .bp-verse cite{ font-size: 19px; }
@media (min-width: 735px){.bible-page{ padding: 34px 46px 52px; }
.bible .bp-head{ margin-bottom: 14px; }
.bible .bp-title{ margin-bottom: 12px; }
}
.bible .bp-link, .bible .bp-note{ font-size: 23px; }
.bible .bp-title-2 small{ font-size: 19px; }
.bible .bp-sign{ font-size: 26px; }
.bible .bp-num{ font-size: 17px; }
@media (max-width: 734px){.bible .bp-title{ font-size: 36px; }
.bible .bp-psalm p{ font-size: 27px; }
html[data-lang="en"] .bible .bp-psalm p{ font-size: 22px; }
}
.cs-search{ width: 100%; margin: 10px 0; font: inherit; font-size: 16px; padding: 9px 14px; border: 1px solid var(--line); border-radius: 980px; }
.cs-badge{ display: inline-block; padding: 2px 10px; border-radius: 980px; font-size: 15px; font-weight: 600; white-space: nowrap; background: var(--gray); color: var(--text-2); }
.cs-badge.is-ok{ background: #e6f4ea; color: #1e6b34; }
.cs-badge.is-soon{ background: #fff4e5; color: #b35c00; }
.cs-badge.is-bad{ background: #fdecec; color: #c92a2a; }
.acct-pick{ position: relative; font-weight: 400; }
.acct-pick input{ width: 100%; font: inherit; font-size: 16px; padding: 8px 12px; border: 1px solid var(--line); border-radius: 10px; }
.acct-chip{ display: inline-flex; align-items: center; gap: 6px; max-width: 100%; padding: 6px 6px 6px 12px; border-radius: 12px; background: #eef4ff; }
.acct-chip > span{ display: grid; min-width: 0; }
.acct-chip small{ color: var(--text-2); font-size: 15px; overflow-wrap: anywhere; }
.acct-chip .link-btn{ width: 28px; height: 28px; border-radius: 50%; }
.acct-list:empty{ display: none; }
.acct-list ul{ margin: 6px 0 0; padding: 4px; list-style: none; background: #fff; border: 1px solid var(--line); border-radius: 12px; box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12); max-height: 260px; overflow-y: auto; }
.acct-list button{ display: flex; flex-direction: column; align-items: flex-start; width: 100%; padding: 8px 10px; border: 0; border-radius: 8px; background: none; font: inherit; text-align: left; cursor: pointer; }
.acct-list button:hover, .acct-list button:focus-visible{ background: var(--gray); }
.acct-list button span{ font-size: 15px; color: var(--text-2); }
.acct-note{ margin: 6px 0; font-size: 15px; color: var(--text-2); }
.kreg-hp{ position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.kreg .ss-btn{ justify-self: start; }
.kreg-done{ padding: 22px; border-radius: 18px; background: #ebfbee; }
[data-ma-filter] [data-count]:not([data-count=""])::after{ content: attr(data-count); margin-left: 6px; padding: 0 7px; border-radius: 980px; background: var(--gray); font-size: 15px; font-weight: 700; }
.bp-pr-ok{ font-size: 15px; font-weight: 600; color: #2b8a3e; }
[data-pr-filter] [data-count]:not([data-count=""])::after{ content: attr(data-count); margin-left: 6px; padding: 0 7px; border-radius: 980px; background: #b35c00; color: #fff; font-size: 15px; font-weight: 700; }
.bp-pr-page{ height: calc(100% - 60px); display: flex; flex-direction: column; justify-content: flex-start; padding-top: clamp(18px, 7%, 70px); }
.bp-pr-orn{ display: flex; align-items: center; gap: 16px; margin: 4px 0 10px; color: #a31d1d; font-size: 24px; line-height: 1; }
.bp-pr-orn::before, .bp-pr-orn::after{ content: ""; flex: 1; max-width: 9em; height: 0; border-top: 1px solid #b8925a; }
.bp-pr-orn{ justify-content: center; }
.bp-pr-title-big{ margin: 0; font-family: var(--serif); font-size: 46px; font-weight: 700; text-align: center; color: #a31d1d; letter-spacing: 0.12em; line-height: 1.25; }
.bp-pr-sub{ margin: 6px 0 26px; text-align: center; font-family: var(--serif); font-size: 15px; letter-spacing: 0.32em; color: #8a6a3a; }
html[data-lang="en"] .bp-pr-invite{ text-align: left; }
.bp-pr-invite{ margin: 0 0 6px; text-align: justify; font-family: var(--serif); font-size: 23px; line-height: 1.85; color: #2b2118; }
.bp-pr-invite::first-letter{ float: left; margin: 4px 10px 0 0; font-size: 2.95em; line-height: 1.05; font-weight: 700; color: #a31d1d; }
.bp-pr-actions{ display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; margin: 30px 0 0; }
.bp-pr-btn{ display: inline-block; min-width: 13em; box-sizing: border-box; text-align: center; padding: 13px 24px; border-radius: 3px; border: 1.5px solid #a31d1d; color: #a31d1d; background: #fffaf0; font-family: var(--serif); font-size: 21px; font-weight: 700; letter-spacing: 0.08em; text-decoration: none; line-height: 1.2; }
.bp-pr-btn.is-primary{ background: #a31d1d; color: #fff8ec; box-shadow: inset 0 0 0 3px #a31d1d, inset 0 0 0 4px rgba(255, 248, 236, 0.55); }
.bp-pr-btn:hover{ text-decoration: none; filter: brightness(1.08); }
@media (max-width: 734px){.bp-pr-title-big{ font-size: 36px; }
.bp-pr-invite{ font-size: 19px; }
.bp-pr-actions{ flex-direction: column; align-items: stretch; margin-top: 22px; gap: 12px; }
.bp-pr-btn{ min-width: 0; font-size: 19px; padding: 12px 16px; }
}
.bp-pr-btn:focus-visible{ outline: 3px solid #d9a441; outline-offset: 2px; }
.bp-pr-verse{ margin: auto 0 0; padding: 0; border: 0; border-radius: 0; background: none; font-family: var(--serif); font-size: 15px; line-height: 1.6; color: #8a7560; text-align: left; }
.bp-pr-verse::before{ content: ""; display: block; width: 5em; margin-bottom: 8px; border-top: 1px solid #c9a46a; }
.bible .bp-pr-verse p{ margin: 0; font-size: 15px; line-height: 1.6; font-weight: 400; letter-spacing: 0.02em; color: inherit; }
.bp-pr-verse cite{ display: block; margin-top: 2px; font-style: normal; font-size: 15px; color: #8a6a3a; }
.nc-list{ display: grid; gap: 8px; }
.cs-badge.is-new{ background: #fff4e5; color: #b35c00; }
.cs-badge.is-off{ background: var(--gray); color: var(--text-2); }
[data-nc-filter] [data-count]:not([data-count=""])::after{ content: attr(data-count); margin-left: 6px; padding: 0 7px; border-radius: 980px; background: #b35c00; color: #fff; font-size: 15px; font-weight: 700; }
body.kiosk .globalnav, body.kiosk .globalfooter, body.kiosk .more-sheet{ display: none !important; }
body.kiosk{ padding-bottom: 0; }
.is-sg-helper [data-sg-panel="fam"] > .la-check, .is-sg-helper [data-sg-loose-wrap] > p{ display: none !important; }
.sg-label{ font-weight: 600; color: var(--text-2); }
#sg-app [data-sg-group]{ font: inherit; font-size: 17px; font-weight: 600; padding: 8px 12px; border-radius: 10px; border: 1px solid var(--line); background: #fff; }
.ag-lang{ margin-left: 6px; padding: 1px 7px; border-radius: 980px; background: #f2efe7; color: #6b5a3e; font-size: 15px; font-weight: 600; vertical-align: 2px; }
.bl-songs{ list-style: none; margin: 0; padding: 0; }
.bl-songs li + li{ margin-top: 4px; }
.bl-songs a{ color: inherit; text-decoration: none; border-bottom: 1px solid #e2c89a; }
.bl-songs a:hover{ color: #a35d0f; }
.bl-play{ display: inline-grid; place-items: center; width: 18px; height: 18px; margin-right: 6px; border-radius: 50%; background: #c4302b; color: #fff; font-size: 15px; vertical-align: 2px; }
.ble-members h3 small, .bl-members .bl-h small{ font-size: 15px; font-weight: 500; color: var(--text-2); }
.bl-vol{ margin: 0 0 6px; font-size: 15px; color: var(--text-2); letter-spacing: 0.04em; }
.bl-meta{ display: flex; flex-wrap: wrap; gap: 4px 22px; margin: 4px 0 8px; }
.bl-meta div{ display: flex; gap: 8px; }
.bl-meta dt{ color: var(--text-2); }
.bl-meta dd{ margin: 0; font-weight: 600; }
.bl-sub{ margin: 10px 0 4px; font-size: 15px; color: var(--text-2); }
.bl-table-3 thead th{ font-size: 15px; color: var(--text-2); font-weight: 600; text-align: left; }
.bl-members{ margin-top: 18px; padding: 12px 14px; border: 1px dashed var(--line); border-radius: 12px; background: #fbfbfd; }
.ma-ss{ margin-top: 12px; }
.ro-tabs{ display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 8px; }
.ro-tabs button{ padding: 6px 14px; border-radius: 980px; border: 1px solid #e2d3b3; background: #fff; font-size: 16px; cursor: pointer; }
.ro-tabs button[aria-selected="true"]{ background: #a35d0f; border-color: #a35d0f; color: #fff; }
#ro-form .la-check{ display: flex; flex-direction: row; align-items: center; justify-content: flex-start; gap: 8px; text-align: left; }
#ro-form .la-check input{ width: auto; flex: none; margin: 0; }
#ro-form .la-check small{ margin-left: 4px; }
.rs-weeks{ display: grid; gap: 14px; }
.rs-week{ padding: 20px 22px; border-radius: 18px; background: #fff; border: 1px solid #ece3d2; box-shadow: 0 10px 30px rgba(35, 26, 16, 0.06); }
.rs-week:first-child{ border-color: #d9b77a; background: #fffaf0; }
.rs-label{ margin: 0 0 6px; font-size: 15px; font-weight: 700; letter-spacing: 0.1em; color: #a35d0f; }
.rs-group{ margin: 0; font-family: var(--serif); font-size: 30px; font-weight: 700; color: #231a10; }
.rs-leaders{ margin: 4px 0 0; font-size: 18px; color: #3a3128; }
.rs-none{ margin: 0; color: var(--text-2); font-size: 20px; }
.rs-note{ margin: 8px 0 0; color: #7a4e14; }
.rs-foot{ margin-top: 18px; text-align: center; }
.ro-warn{ color: #b02a2a; }
@media (max-width: 734px){.bible-wrap{ padding: 12px 8px 12px; }
.bible{ padding: 8px 8px 10px; }
.bible-page{ padding: 16px 18px 38px; }
.bp-head{ margin-bottom: 10px; padding-bottom: 6px; font-size: 15px; }
.bible .bp-title{ font-size: 27px; margin-bottom: 8px; }
.bp-num{ bottom: 10px; font-size: 15px; }
.bible .bp-psalm{ margin-top: 18px; }
.bible .bp-psalm p{ font-size: 22px; line-height: 1.85; }
html[data-lang="en"] .bible .bp-psalm p{ font-size: 18px; }
.bp-verse{ margin: 18px 0 14px; }
.bp-link{ margin-top: 12px; }
.bp-pr-page{ padding-top: 4px; }
.bp-pr-sub{ display: none; }
.bp-pr-invite{ font-size: 18px; line-height: 1.7; }
.bp-pr-actions{ margin-top: 16px; }
.bible .bp-pr-verse p, .bp-pr-verse cite{ font-size: 14px; line-height: 1.5; }
}
.rb-list{ display: grid; gap: 10px; margin: 10px 0; }
.rb-card{ padding: 12px 14px; border: 1px solid #e8e8ed; border-left: 4px solid #a35d0f; border-radius: 12px; background: #fff; }
.rb-card header{ display: flex; justify-content: space-between; gap: 10px; }
.rb-card p{ margin: 6px 0 0; }
.rb-card.is-paid{ border-left-color: #2e8b57; }
.rb-card.is-declined, .rb-card.is-withdrawn{ border-left-color: #aaa; opacity: 0.8; }
.rb-amount{ font-weight: 700; white-space: nowrap; }
.eb-card.is-due{ border-left-color: #c77d12; }
.eb-card.is-late{ border-left-color: #b02a2a; }
ul.rb-list{ list-style: none; padding: 0; }
.es-instructions{ white-space: pre-wrap; padding: 14px 16px; border-radius: 12px; background: #fbf6ec; border: 1px solid #ecdcb9; }
.es-total{ font-size: 20px; font-weight: 700; }
.bl-en .bl-theme{ font-size: 1.15em; font-style: italic; color: var(--text-2); }
.bl-schedule{ list-style: none; margin: 0; padding: 0; }
.bl-schedule li{ display: grid; grid-template-columns: 1fr auto; gap: 0 1em; padding: 0.3em 0; border-bottom: 1px solid var(--line, #e8e8ed); }
.bl-sch-item{ font-weight: 600; }
.bl-sch-who{ text-align: right; color: var(--text-2); }
.bl-sch-line{ grid-column: 1 / -1; display: flex; justify-content: space-between; gap: 1em; padding-left: 1.5em; }
.bl-passage{ font-style: italic; }
.bl-bullets{ list-style: "♦  "; padding-left: 1.4em; }
.bl-song{ break-inside: avoid; margin-bottom: 1em; }
.bl-lyrics p{ margin: 0 0 0.8em; font-style: italic; }
.bl-lyrics .bl-part{ color: var(--text-2); }
.bl-closing{ text-align: center; font-size: 1.15em; margin-top: 1.5em; }
@media (max-width: 734px){.ministry-split{ min-height: 0; }
.ms-panel{ min-height: 210px; padding: 24px 22px 22px; }
.ms-name{ font-size: 38px; }
.ms-go{ margin-top: 10px; }
.pair-strip .pair-dup{ display: none; }
.tile-live, .tile-welcome{ padding-bottom: 14px; }
.bible .bp-list li{ padding: 7px 0; }
.bp-pr-sub{ font-size: 16px; letter-spacing: 0.24em; }
.bp-pr-invite{ font-size: 21px; line-height: 1.75; }
.bp-pr-verse{ font-size: 18px; line-height: 1.65; }
.bp-pr-verse cite{ font-size: 17px; }
}
:root{ --primary: #1d3461; --primary-hover: #2b4a80; --link: #1a5a96; }
h1, h2, h3, .headline, .headline-sm{ font-family: var(--serif); }
.headline{ font-size: 40px; line-height: 1.25; font-weight: 700; letter-spacing: 0.04em; }
.subhead{ font-size: 21px; line-height: 1.6; }
.pill{ min-height: 44px; background: var(--primary); border-color: var(--primary); }
.pill:hover{ background: var(--primary-hover); }
.ab-hero{ padding: 64px 22px 44px; }
.pt-hero{ padding: 44px 22px 36px; }
.pt-hero-sm{ padding: 36px 22px 30px; }
.pt-hero .headline{ font-size: 36px; }
.mp-hero{ padding: 56px 22px 48px; }
.mp-hero-sm{ padding: 40px 22px 34px; }
.mp-h2{ font-size: 30px; }
@media (max-width: 734px){.headline{ font-size: 32px; }
.subhead{ font-size: 19px; }
.ab-hero{ padding: 30px 18px 22px; }
.ab-eyebrow{ margin-bottom: 6px; }
.ab-title{ font-size: 34px; }
.ab-sub{ margin-top: 8px; font-size: 17px; line-height: 1.6; }
.ab-rule{ margin-top: 16px; }
.pt-hero, .pt-hero-sm{ padding: 26px 18px 22px; }
.pt-hero .headline{ font-size: 30px; }
.mp-hero{ padding: 30px 18px 26px; }
.mp-hero-sm{ padding: 26px 18px 22px; }
.mp-summary{ margin-top: 10px; font-size: 18px; }
.mp-h2{ font-size: 26px; margin-top: 30px; }
.section{ padding: 28px 16px 44px; }
.ab-section, .ab-mission{ padding: 40px 16px; }
}
.vs-sec{ padding: 56px 22px; scroll-margin-top: 110px; }
.vs-wrap{ max-width: 980px; margin: 0 auto; }
.vs-sec p{ line-height: 1.75; }
@media (max-width: 734px){.vs-sec{ padding: 34px 16px; }
}
.hi-tree-h{ margin: 0 0 8px; font-family: var(--serif); font-size: 28px; color: #231a10; }
@media (max-width: 734px){.hi-tree-h{ font-size: 24px; }
}
.nav-search{ display: inline-grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, 0.35); color: rgba(255, 255, 255, 0.9); }
.nav-search:hover{ background: rgba(255, 255, 255, 0.1); text-decoration: none; }
.more-search{ display: flex; gap: 8px; margin: 0 0 16px; }
.more-search input, .sr-form input{ flex: 1; min-width: 0; font: inherit; font-size: 18px; padding: 10px 14px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.more-search .pill, .sr-form .pill{ cursor: pointer; }
.sr-hero{ padding-bottom: 32px; }
.sr-form{ display: flex; gap: 10px; max-width: 620px; margin: 18px auto 0; }
.sr-sec{ padding-top: 24px; min-height: 50vh; }
.sr-wrap{ max-width: 760px; }
.sr-status{ margin: 0 0 8px; color: var(--text-2); }
.sr-results{ list-style: none; margin: 0; padding: 0; }
.sr-results li{ border-bottom: 1px solid var(--line); }
.sr-results a{ display: flex; flex-direction: column; gap: 4px; padding: 16px 4px; color: var(--text); }
.sr-results a:hover{ text-decoration: none; background: var(--ivory); }
.sr-title{ font-family: var(--serif); font-size: 21px; font-weight: 700; color: #231a10; }
.sr-where{ font-weight: 400; color: var(--amber); }
.sr-snip{ font-size: 17px; line-height: 1.65; color: #3a3128; }
.sr-snip mark{ background: #f7e3b5; color: inherit; padding: 0 1px; border-radius: 2px; }
.sr-url{ font-size: 15px; color: var(--text-2); }
.sr-start-h{ margin: 18px 0 10px; font-weight: 600; color: var(--text-2); }
.sr-chips{ display: flex; flex-wrap: wrap; gap: 8px; }
.sr-chips a{ padding: 8px 16px; border: 1px solid var(--line); border-radius: 980px; color: var(--text); }
.sr-chips a:hover{ border-color: var(--gold); text-decoration: none; }
@media (max-width: 734px){.nav-search{ width: 36px; height: 36px; }
.sr-form{ margin-top: 12px; }
}
.sr-tip a{ padding: 12px 14px; margin: 6px 0; border-radius: 12px; background: var(--ivory); border: 1px solid #ecdfc6; }
.sr-kind{ display: inline-block; margin-right: 8px; padding: 1px 9px; border-radius: 980px; background: var(--navy); color: #fff; font-family: var(--font); font-size: 15px; font-weight: 600; vertical-align: 3px; }
.la-phone{ margin: 10px 0 16px; padding: 14px 16px; border-radius: 14px; background: var(--ivory); }
.la-phone h3{ margin: 0; }
.la-phone-dishes{ display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px 12px; }
.la-phone-dishes input{ width: 100%; }
.yt-facade{ position: absolute; inset: 0; width: 100%; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; border: 0; padding: 0; cursor: pointer; color: #fff; font: inherit;
  background: radial-gradient(120% 90% at 50% 40%, #4a3524 0%, #2f2116 70%, #24190f 100%); }
.yt-play{ width: 76px; height: 54px; border-radius: 14px; background: #e62117; position: relative; box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35); }
.yt-play::after{ content: ""; position: absolute; left: 50%; top: 50%; transform: translate(-35%, -50%); border-style: solid; border-width: 11px 0 11px 19px; border-color: transparent transparent transparent #fff; }
.yt-facade:hover .yt-play, .yt-facade:focus-visible .yt-play{ background: #ff0000; }
.yt-label{ font-size: 18px; font-weight: 600; text-shadow: 0 1px 4px rgba(0, 0, 0, 0.5); }
.sv-row{ display: grid; grid-template-columns: 11em minmax(0, 1fr); gap: 4px 12px; align-items: baseline; }
.sv-row dt{ color: var(--text-2); font-size: 16px; }
.sv-row dd{ margin: 0; display: flex; flex-wrap: wrap; gap: 4px 6px; align-items: baseline; }
@media (max-width: 734px){.sv-row{ grid-template-columns: 1fr; gap: 2px; }
}
.an-board-links{ display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 0; }
.ms-verse{ display: flex; flex-direction: column; gap: 6px; margin-bottom: auto; padding-bottom: 24px; max-width: 520px; color: #fff; }
.ms-verse[hidden]{ display: none; }
.ms-verse-text{ font-family: var(--serif); font-size: clamp(21px, 2.2vw, 28px); line-height: 1.55; text-shadow: 0 1px 2px rgba(0, 0, 0, 0.55); }
.ms-verse-ref{ font-size: 17px; color: rgba(255, 255, 255, 0.9); text-shadow: 0 1px 2px rgba(0, 0, 0, 0.55); }
@media (max-width: 734px){.ms-verse-text{ font-size: 19px; }
}
.bp-card-top{ display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 10px; }
.bp-stage{ margin-left: auto; padding: 2px 10px; border-radius: 980px; font-size: 14px; font-weight: 600; background: var(--gray); color: var(--text-2); }
.bp-stage.bp-applied{ background: #fdf0dc; color: #8a5a12; }
.bp-stage.bp-scheduled{ background: #e3efff; color: #0b4a9c; }
.bp-stage.bp-baptized{ background: #e2f4e6; color: #1d6b34; }
.bp-dl{ display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: 4px 14px; margin: 0 0 14px; padding: 12px 14px; border-radius: 12px; background: var(--gray); font-size: 16px; }
.bp-dl dt{ color: var(--text-2); }
.bp-dl dd{ margin: 0; }
.bp-testimony{ white-space: pre-wrap; }
.bp-log{ white-space: pre-wrap; font: inherit; font-size: 15px; color: var(--text-2); margin: 4px 0 0; }
.bc-sheet{ display: none; }
@media print{@page{ size: letter landscape; margin: 0; }
body.bc-printing > :not(.bc-sheet){ display: none !important; }
body.bc-printing{ padding: 0 !important; background: #fff !important; zoom: 1 !important; }
body.bc-printing .bc-sheet{ display: block; }
}
.bc-page{ box-sizing: border-box; width: 11in; height: 8.5in; padding: 1.15in 1in 1in; overflow: hidden; display: flex; flex-direction: column; align-items: center; justify-content: space-between; text-align: center; color: #000; font-family: "Times New Roman", Times, serif; }
.bc-page p{ margin: 0; line-height: 1.15; }
.bc-sheet .bc-page{ break-after: page; }
.bc-sheet .bc-page:last-child{ break-after: auto; }
.bc-church{ font-family: "UnifrakturMaguntia", "Old English Text MT", serif; font-size: 30pt; }
.bc-place{ font-size: 18pt; margin-top: -10pt !important; }
.bc-script{ font-family: "Pinyon Script", "French Script MT", cursive; font-size: 25pt; }
.bc-certifies{ font-size: 27pt; }
.bc-name{ font-size: 28pt; font-weight: 600; font-family: "Times New Roman", "Songti SC", "SimSun", serif; }
.bc-fact{ font-size: 15pt; }
.bc-triune{ font-size: 14pt; margin-top: -8pt !important; }
.bc-title{ font-family: "UnifrakturMaguntia", "Old English Text MT", serif; font-size: 40pt; }
.bc-on{ font-family: "UnifrakturMaguntia", "Old English Text MT", serif; font-size: 16pt; }
.bc-sign{ display: grid; justify-items: center; gap: 2pt; }
.bc-sign span{ display: block; width: 4.6in; border-bottom: 1px solid #000; height: 0.3in; }
.bc-sign small{ font-size: 11pt; }
.bc-sample{ position: relative; width: 100%; max-width: 660px; aspect-ratio: 11 / 8.5; margin: 16px auto; overflow: hidden; border: 1px solid var(--line); background: #fff; color: #000; text-align: center; }
.bc-sample .bc-page{ position: absolute; top: 0; left: 0; transform-origin: 0 0; }
.bc-sample::after{ content: "樣本 SAMPLE"; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) rotate(-22deg); font-size: clamp(32px, 9vw, 64px); font-weight: 700; color: rgba(150, 40, 40, .16); white-space: nowrap; pointer-events: none; }
.bp-links-box{ margin: 0 0 20px; }
.bp-link-form{ display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 10px; align-items: end; margin: 10px 0 14px; }
.bp-link-form label{ display: grid; gap: 4px; }
.bp-link-form input{ padding: 8px 10px; border: 1px solid var(--line); border-radius: 8px; font: inherit; min-width: 0; }
.bp-batch{ border-top: 1px solid var(--line); padding: 10px 0; }
.bp-batch p{ margin: 0 0 6px; }
.bp-batch-acts{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.bp-old p{ margin: 0 0 6px; }
.bp-steps{ list-style: none; counter-reset: bp; display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 10px; margin: 0 0 28px; padding: 0; }
.bp-steps li{ counter-increment: bp; display: grid; gap: 2px; padding: 14px 16px; border-radius: 14px; background: linear-gradient(170deg, var(--cream) 0%, var(--cream-2) 100%); }
.bp-steps li::before{ content: counter(bp); font-family: var(--serif); font-size: 22px; color: var(--amber); }
.bp-steps span{ font-size: 16px; color: var(--text-2); }
.bp-mine{ margin-bottom: 24px; }
.bp-mine-list{ margin: 0; padding-left: 20px; }
.bp-qs{ margin: 0 0 18px; padding-left: 22px; display: grid; gap: 14px; }
.bp-qs label > span{ display: block; font-weight: 600; }
.bp-q-other{ display: block; font-weight: 400; font-size: 15px; color: var(--text-2); }
.bp-qa{ margin: 0 0 14px; padding: 0 0 0 20px; }
.bp-qa li{ margin-bottom: 10px; }
.bp-qa p{ margin: 2px 0 0; white-space: pre-wrap; }
.bp-card{ display: flex; align-items: center; gap: 10px; }
.bp-card-main{ flex: 1; min-width: 0; display: grid; gap: 4px; text-align: left; font: inherit; color: inherit; background: none; border: 0; padding: 0; cursor: pointer; }
.bp-card-print{ flex: none; }
.bp-mine-list > li{ margin-bottom: 10px; }
.bp-mine-detail{ margin-top: 6px; }
.fb-btn{ position: fixed; right: 16px; bottom: calc(16px + env(safe-area-inset-bottom, 0px)); z-index: 80; display: inline-flex; align-items: center; gap: 6px; padding: 10px 16px; border: 0; border-radius: 999px; background: #14213d; color: #fff; font: inherit; font-size: 16px; box-shadow: 0 6px 18px rgba(20, 33, 61, 0.3); cursor: pointer; }
.fb-btn[hidden]{ display: none; }
.fb-btn:hover{ background: #1f3260; }
@media (max-width: 734px){.fb-btn{ padding: 10px 13px; }
.fb-btn span{ display: none; }
}
@media print{.fb-btn{ display: none !important; }
}
.fb-dlg{ width: min(520px, calc(100vw - 32px)); border: 0; border-radius: 16px; padding: 20px 20px 16px; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25); }
.fb-dlg::backdrop{ background: rgba(10, 16, 32, 0.45); }
.fb-dlg h2{ margin: 0 0 4px; font-family: var(--serif); font-size: 22px; }
.fb-page{ margin: 0 0 12px; }
.fb-kinds{ display: flex; flex-wrap: wrap; gap: 6px 16px; margin-bottom: 10px; font-size: 16px; }
.fb-dlg textarea{ width: 100%; box-sizing: border-box; font: inherit; font-size: 17px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; }
.fb-actions{ display: flex; justify-content: flex-end; gap: 10px; margin-top: 8px; }
.fb-quote{ margin: 0 0 10px; padding: 6px 12px; border-left: 3px solid #b8914a; background: #fbf6ea; font-size: 15px; color: #5a3520; }
.fb-quote[hidden]{ display: none; }
.pw{ position: relative; isolation: isolate; overflow: hidden; color: #f5ecd8; padding: 0 0 56px;
  background: radial-gradient(120% 60% at 50% 105%, rgba(243, 179, 92, 0.38) 0%, rgba(243, 179, 92, 0.08) 45%, rgba(0, 0, 0, 0) 70%),
    linear-gradient(180deg, #070c1d 0%, #0d1631 38%, #1a2140 70%, #2a2238 100%); }
.pw-head{ max-width: 760px; margin: 0 auto; padding: 72px 22px 28px; text-align: center; }
.pw-h1{ margin: 0; font-family: var(--serif); font-size: clamp(32px, 5vw, 50px); font-weight: 700; letter-spacing: 0.08em; color: #fff7e6; text-shadow: 0 0 24px rgba(243, 199, 126, 0.25); }
.pw-verse{ margin: 18px auto 26px; max-width: 560px; font-family: var(--serif); font-size: clamp(18px, 2vw, 21px); line-height: 1.8; color: #e8dcc2; }
.pw-verse p{ margin: 0; }
.pw-verse cite{ display: block; margin-top: 4px; font-style: normal; font-size: 15px; color: #c9b48d; }
.pw-pour{ font: inherit; font-size: 19px; font-weight: 600; padding: 12px 30px; border: 0; border-radius: 999px; cursor: pointer; color: #2a1a06;
  background: linear-gradient(180deg, #ffe2a8, #f3b75c); box-shadow: 0 0 0 1px rgba(255, 226, 168, 0.4), 0 8px 30px rgba(243, 183, 92, 0.35); }
.pw-pour:hover{ filter: brightness(1.05); }
.pw-body{ max-width: 1180px; margin: 0 auto; padding: 0 16px; }
.pw-tabs{ display: flex; justify-content: center; gap: 8px; margin: 6px 0 18px; }
.pw-tabs button{ font: inherit; font-size: 16px; padding: 7px 16px; border-radius: 999px; border: 1px solid rgba(243, 199, 126, 0.35); background: rgba(255, 255, 255, 0.04); color: #e8dcc2; cursor: pointer; }
.pw-tabs button[aria-pressed="true"]{ background: rgba(243, 199, 126, 0.18); border-color: #f3c77e; color: #fff7e6; }
.pw-status{ text-align: center; color: #c9b48d; min-height: 1em; }
.pw-wall{ column-count: 3; column-gap: 16px; }
@media (max-width: 1000px){.pw-wall{ column-count: 2; }
}
@media (max-width: 640px){.pw-wall{ column-count: 1; }
.pw-head{ padding-top: 48px; }
}
.pw-card{ break-inside: avoid; margin: 0 0 16px; padding: 16px 18px 12px; border-radius: 14px; color: #2b2118;
  background: linear-gradient(180deg, #fffaf0, #f8eedb); box-shadow: 0 0 0 1px rgba(255, 236, 200, 0.5), 0 10px 30px rgba(0, 0, 0, 0.35), 0 0 40px rgba(243, 183, 92, 0.08); }
.pw-card.pw-k-praise{ background: linear-gradient(180deg, #f7fbf2, #e6f1db); box-shadow: 0 0 0 1px #c9dfb8, 0 10px 30px rgba(0, 0, 0, 0.35); }
.pw-card.is-answered, .pw-card.pw-k-answered{ background: linear-gradient(180deg, #fff8e1, #f6e2ae); box-shadow: 0 0 0 1px #e8c56a, 0 10px 30px rgba(0, 0, 0, 0.35), 0 0 46px rgba(243, 199, 126, 0.3); }
.pw-meta{ font-size: 13px; color: #8a7560; margin-left: auto; }
.pw-title{ margin: 0 0 4px; font-family: var(--serif); font-size: 19px; }
.pw-text{ margin: 0; font-family: var(--serif); font-size: 18px; line-height: 1.75; white-space: pre-wrap; }
.pw-praise{ margin: 10px 0 0; padding: 8px 10px; border-radius: 10px; background: rgba(232, 197, 106, 0.25); font-size: 16px; }
.pw-acts{ display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; margin-top: 10px; padding-top: 8px; border-top: 1px dashed #e3d3b2; }
.pw-pray, .pw-open{ font: inherit; font-size: 15px; padding: 5px 12px; border-radius: 999px; border: 1px solid #e3cfa5; background: #fff; color: #5a4220; cursor: pointer; }
.pw-pray[aria-pressed="true"]{ background: #f3b75c; border-color: #f3b75c; color: #2a1a06; font-weight: 600; }
.pw-count{ font-size: 13px; color: #8a7560; }
.pw-thread{ margin-top: 10px; }
.pw-replies{ list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.pw-r{ position: relative; padding: 8px 12px; border-radius: 14px 14px 14px 4px; background: #fff; box-shadow: 0 1px 0 #ecdcbc; font-size: 15px; }
.pw-r p{ margin: 0; white-space: pre-wrap; }
.pw-r-update{ background: #fff4d6; border-radius: 14px 14px 4px 14px; box-shadow: 0 0 0 1px #ecc76c; }
.pw-r-tag{ display: inline-block; margin-bottom: 2px; padding: 0 8px; border-radius: 999px; background: #f3b75c; color: #2a1a06; font-size: 12px; font-weight: 700; }
.pw-r-verse blockquote{ margin: 0; padding: 6px 10px; border-left: 3px solid #c9a46a; font-family: var(--serif); background: #fdf6e7; }
.pw-r-verse cite{ display: block; font-style: normal; font-size: 13px; color: #8a6a3a; }
.pw-r-by{ display: block; margin-top: 3px; font-size: 12px; color: #9a8466; text-align: right; }
.pw-r-empty{ color: #9a8466; font-size: 14px; }
.pw-del{ border: 0; background: none; color: #b3261e; cursor: pointer; font-size: 14px; }
.pw-quick{ display: flex; flex-wrap: wrap; gap: 6px; margin: 10px 0 6px; }
.pw-quick button, .pw-verses button{ font: inherit; font-size: 14px; padding: 4px 10px; border-radius: 999px; border: 1px solid #e3cfa5; background: #fffdf8; color: #5a4220; cursor: pointer; }
.pw-verses{ display: grid; gap: 6px; margin: 4px 0 8px; }
.pw-verses button{ border-radius: 10px; text-align: left; }
.pw-write{ display: flex; gap: 6px; }
.pw-write input{ flex: 1; min-width: 0; font: inherit; font-size: 15px; padding: 7px 10px; border: 1px solid #e3cfa5; border-radius: 999px; }
.pw-signin-note{ font-size: 14px; color: #6b5a3a; }
.pw-dlg{ width: min(600px, calc(100vw - 24px)); max-height: calc(100vh - 24px); border: 0; border-radius: 18px; padding: 0; color: #2b2118; background: linear-gradient(180deg, #fffaf0, #f6ead2); box-shadow: 0 30px 80px rgba(0, 0, 0, 0.5); }
.pw-dlg::backdrop{ background: rgba(5, 9, 22, 0.72); }
.pw-form{ padding: 18px 20px 20px; display: grid; gap: 12px; }
.pw-dlg-head{ display: flex; align-items: center; justify-content: space-between; }
.pw-dlg-head h2{ margin: 0; font-family: var(--serif); font-size: 24px; }
.pw-kinds, .pw-for{ display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.pw-kinds label, .pw-for label{ position: relative; }
.pw-kinds input, .pw-for input, .pw-vis input{ position: absolute; opacity: 0; pointer-events: none; }
.pw-kinds label > span, .pw-for label > span{ display: inline-block; padding: 6px 12px; border-radius: 999px; border: 1px solid #e3cfa5; background: #fff; cursor: pointer; font-size: 15px; }
.pw-kinds input:checked + span, .pw-for input:checked + span{ background: #f3b75c; border-color: #f3b75c; color: #2a1a06; font-weight: 600; }
.pw-kinds input:focus-visible + span, .pw-for input:focus-visible + span, .pw-vis input:focus-visible + span{ outline: 2px solid #b8914a; outline-offset: 2px; }
.pw-label{ font-size: 14px; color: #8a7560; margin-right: 4px; }
.pw-form textarea{ width: 100%; box-sizing: border-box; font: inherit; font-family: var(--serif); font-size: 18px; line-height: 1.7; padding: 12px 14px; border: 1px solid #e3cfa5; border-radius: 12px; background: #fffdf8; resize: vertical; }
.pw-vis{ border: 0; margin: 0; padding: 0; display: grid; gap: 6px; }
.pw-vis legend{ font-size: 14px; color: #8a7560; margin-bottom: 4px; }
.pw-vis label{ position: relative; }
.pw-vis label > span{ display: grid; gap: 1px; padding: 9px 12px; border-radius: 12px; border: 1px solid #e3cfa5; background: #fff; cursor: pointer; }
.pw-vis small{ color: #8a7560; font-size: 13px; }
.pw-vis input:checked + span{ border-color: #f3b75c; box-shadow: 0 0 0 2px rgba(243, 183, 92, 0.45); background: #fff8e8; }
.pw-pastors{ display: grid; gap: 4px; padding: 8px 12px; border-radius: 12px; background: #fff; border: 1px dashed #e3cfa5; }
.pw-pastors[hidden], .pw-dlg [hidden]{ display: none !important; }
.pw-name{ display: flex; flex-wrap: wrap; align-items: end; gap: 8px 14px; }
.pw-name label:first-child{ display: grid; gap: 2px; font-size: 14px; color: #8a7560; }
.pw-name input[name="name"]{ font: inherit; font-size: 16px; padding: 6px 10px; border: 1px solid #e3cfa5; border-radius: 8px; }
.pw-send{ display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.pw-signin{ text-align: center; display: grid; gap: 10px; justify-items: center; }
.pw-done{ text-align: center; font-family: var(--serif); }
.pw-done-flame{ font-size: 40px; margin: 0; }
.pw .pw-verse{ background: none; border: 0; box-shadow: none; padding: 0; border-radius: 0; color: #e8dcc2; }
.pw .pw-verse::before, .pw-replies .pw-r-verse blockquote::before{ display: none; content: none; }
.pw .pw-verse p{ font-size: inherit; color: inherit; line-height: 1.8; }
.pw-replies .pw-r-verse blockquote{ max-width: none; margin: 0; box-shadow: none; border-radius: 0 8px 8px 0; font-size: 15px; line-height: 1.6; }
.pw-replies .pw-r-verse blockquote p{ font-size: 15px; line-height: 1.6; margin: 0; color: #3a2a18; }
.pw .pw-verse cite, .pw-replies .pw-r-verse cite{ font-family: inherit; letter-spacing: 0; }
.pw .pw-verse cite{ color: #c9b48d; font-size: 15px; }
.pw .pw-verse p{ font-weight: 400; letter-spacing: 0.04em; margin: 0; }
.pr-cards{ column-count: 2; column-gap: 16px; margin-top: 12px; }
@media (max-width: 760px){.pr-cards{ column-count: 1; }
}
.pr-state{ margin: 8px 0 0; display: flex; flex-wrap: wrap; gap: 6px; }
.pr-chip{ padding: 2px 10px; border-radius: 999px; background: #efe6d2; color: #5a4220; font-size: 13px; }
.pr-chip.is-warn{ background: #fde3c2; color: #8a4a0c; font-weight: 600; }
.pr-own{ display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.pr-wording{ display: grid; gap: 4px; margin-top: 8px; font-size: 14px; color: #8a7560; }
.pr-wording textarea{ font: inherit; font-size: 15px; padding: 8px 10px; border: 1px solid #e3cfa5; border-radius: 10px; }
.pw-vis legend, .pw-label{ padding: 0; border: 0; background: none; }
.pw-vis label > span b, .pw-vis label > span small{ display: block; }
.tile-lunch-page{ background: linear-gradient(180deg, #fff7ec 0%, #fffaf3 40%, #fff 100%); }
.tile-lunch-page .lu-meta span{ background: #fff; border-color: #f0d9b8; color: #7a3d14; font-weight: 600; }
.tile-lunch-page .lu-note{ background: #fff3e2; border: 1px solid #f3dcbc; border-radius: 14px; padding: 12px 16px; color: #6b4a2a; }
.lu-menu.lu-cards{ display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 16px; background: none; border: 0; border-radius: 0; }
.lu-cards .lu-card{ display: flex; flex-direction: column; align-items: stretch; gap: 0; padding: 0; border: 0; border-radius: 18px; overflow: hidden; background: #fff;
  box-shadow: 0 1px 0 #f0dcc0, 0 10px 26px rgba(150, 80, 20, 0.12); transition: transform 0.2s, box-shadow 0.2s; }
.lu-cards .lu-card + .lu-card{ border-top: 0; }
.lu-cards .lu-card:hover{ transform: translateY(-2px); box-shadow: 0 1px 0 #f0dcc0, 0 16px 32px rgba(150, 80, 20, 0.18); }
.lu-cards .lu-card.is-picked{ box-shadow: 0 0 0 3px #e8902f, 0 16px 32px rgba(232, 144, 47, 0.3); }
.lu-photo{ position: relative; aspect-ratio: 4 / 3; background: #f6e7d2; overflow: hidden; }
.lu-photo img{ display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s; }
.lu-card:hover .lu-photo img{ transform: scale(1.04); }
.lu-photo-ph{ display: grid; place-items: center; background: radial-gradient(circle at 50% 45%, hsl(var(--h) 90% 88%) 0%, hsl(var(--h) 75% 72%) 70%, hsl(var(--h) 60% 60%) 100%); }
@keyframes lu-steam{ 0% { transform: translateY(14px) scaleX(1); opacity: 0; } 30% { opacity: 0.9; } 100% { transform: translateY(-18px) scaleX(1.6); opacity: 0; } }
@media (prefers-reduced-motion: reduce){.lu-cards .lu-card, .lu-photo img{ transition: none; }
}
.lu-card-body{ display: grid; gap: 6px; padding: 12px 14px 14px; }
.lu-cards .lu-dish-name{ font-family: var(--serif); font-size: 21px; font-weight: 700; color: #3a1f0b; }
.lu-cards .lu-dish-name small{ font-family: var(--font); font-weight: 400; font-size: 14px; color: #8a6a4a; }
.lu-pop{ justify-self: start; padding: 2px 10px; border-radius: 999px; background: #fff1de; color: #9a4c12; font-size: 13px; font-weight: 600; }
.lu-pop.is-fav{ background: #ffe0c2; color: #b5421a; }
.lu-cards .lu-step{ justify-self: end; margin-top: 2px; }
.lu-cards .lu-step button{ width: 44px; height: 44px; border-color: #f0c99a; color: #c4561a; font-size: 26px; background: #fff; }
.lu-cards .lu-step button[data-inc]:not(:disabled){ background: #e8902f; border-color: #e8902f; color: #fff; }
.lu-cards .lu-step output{ font-size: 22px; color: #3a1f0b; }
.lu-menu-view.lu-cards .lu-card{ cursor: default; }
.tile-lunch-page .lu-actions .pill{ background: linear-gradient(180deg, #ef9a3c, #d9702a); border: 0; color: #fff; font-size: 18px; padding: 12px 28px; box-shadow: 0 8px 20px rgba(217, 112, 42, 0.35); }
.tile-lunch-page .lu-count{ font-weight: 700; color: #b5421a; font-size: 18px; }
@media (max-width: 734px){.lu-menu.lu-cards{ grid-template-columns: 1fr 1fr; gap: 12px; }
.lu-cards .lu-dish-name{ font-size: 18px; }
.lu-card-body{ padding: 10px 10px 12px; }
.lu-cards .lu-step button{ width: 40px; height: 40px; }
.tile-lunch-page .lu-actions{ position: sticky; bottom: 0; z-index: 5; margin: 12px -16px 0; padding: 10px 16px calc(10px + env(safe-area-inset-bottom, 0px));
    background: rgba(255, 250, 243, 0.96); backdrop-filter: blur(8px); box-shadow: 0 -6px 18px rgba(150, 80, 20, 0.12); }
}
.tile-lunch-page .lu-meta > span{ background: #fff; }
.tile-lunch-page .lu-meta span span{ padding: 0; border: 0; background: none; border-radius: 0; font-size: inherit; }
.lu-cards .lu-card.is-picked{ outline: 3px solid #e8902f; outline-offset: -3px; }
.lu-cards .lu-card.is-picked .lu-photo::after{ content: "✓"; position: absolute; top: 10px; right: 10px; width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center;
  background: #e8902f; color: #fff; font-size: 20px; font-weight: 700; box-shadow: 0 4px 10px rgba(150, 70, 10, 0.35); }
.lu-no{ display: inline-block; padding: 1px 10px; border-radius: 999px; background: #e8902f; color: #fff; font-weight: 700; letter-spacing: 0.04em; }
.lu-ownlink{ font-size: 14px; color: #6b4a2a; }
.lu-ownlink-row{ display: flex; gap: 6px; margin-top: 4px; }
.lu-ownlink-row input{ flex: 1; min-width: 0; font: inherit; font-size: 13px; padding: 6px 8px; border: 1px solid #f0d9b8; border-radius: 8px; background: #fffaf3; }
.bx-tabs{ display: flex; justify-content: center; gap: 6px; margin: 22px auto 0; }
.bx-tabs button{ padding: 8px 18px; font: inherit; color: #5a4630; background: none; border: 0; border-bottom: 2px solid transparent; cursor: pointer; }
.bx-tabs button[aria-pressed="true"]{ color: #2b2118; font-weight: 600; border-bottom-color: #a8742a; }
.bx-manage{ padding: 22px 16px 56px; }
.bx-manage .container{ max-width: 980px; margin: 0 auto; padding: 0; }
.kreg.bj-form{ background: none; border: 0; box-shadow: none; }
.bj-body{ padding: 34px 0 60px; }
.bj-path{ list-style: none; margin: 0 0 34px; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; position: relative; }
.bj-path::before{ content: ""; position: absolute; left: 12%; right: 12%; top: 7px; border-top: 1px solid #d9c9ad; }
.bj-path li{ position: relative; display: grid; justify-items: center; align-content: start; gap: 4px; text-align: center; padding-top: 24px; }
.bj-path li::before{ content: ""; position: absolute; top: 0; width: 15px; height: 15px; border-radius: 50%; background: #fff; border: 1px solid #b89a6a; }
.bj-path li.is-done::before{ background: #a8742a; border-color: #a8742a; }
.bj-path li.is-now::before{ background: #7a2a1e; border-color: #7a2a1e; box-shadow: 0 0 0 4px #f1e4d2; }
.bj-path strong{ font-family: var(--serif); font-size: 18px; color: #2b2118; }
.bj-path span{ font-size: 15px; line-height: 1.5; color: #6b5a48; }
@media (max-width: 640px){.bj-path{ grid-template-columns: minmax(0, 1fr); gap: 12px; }
.bj-path::before{ left: 7px; right: auto; top: 8px; bottom: 8px; border-top: 0; border-left: 1px solid #d9c9ad; }
.bj-path li{ justify-items: start; text-align: left; padding: 0 0 0 28px; }
.bj-path li::before{ left: 0; top: 4px; }
}
.bj-joy{ margin: 0 0 34px; text-align: center; }
.bj-joy blockquote{ margin: 0; padding: 0; background: none; border: 0; }
.bj-joy blockquote p{ margin: 0; font-family: var(--serif); font-size: clamp(19px, 2.2vw, 22px); line-height: 1.8; color: #4a3a28; }
.bj-joy cite{ display: block; margin-top: 4px; font-style: normal; font-size: 14px; color: #8a6420; }
.bp-mine{ margin-bottom: 30px; padding: 20px 22px; background: #fbf7ef; border-top: 1px solid #e4d7bf; border-bottom: 1px solid #e4d7bf; }
.bj-form{ padding: 0; background: none; }
.bj-form-title{ margin: 0; font-family: var(--serif); font-size: 26px; color: #2b2118; }
.bj-form-lede{ margin: 6px 0 8px; color: #6b5a48; line-height: 1.8; }
.bj-sec{ margin: 26px 0 4px; padding-bottom: 6px; border-bottom: 1px solid #e4d7bf; font-size: 16px; font-weight: 600; letter-spacing: .12em; color: #8a6420; }
.bj-form .bp-qs li::marker{ color: #8a6420; font-weight: 600; }
.bj-done{ text-align: center; padding: 30px 22px; background: #fbf7ef; border-top: 1px solid #e4d7bf; border-bottom: 1px solid #e4d7bf; }
.bj-done h2{ margin: 0 0 8px; font-family: var(--serif); font-size: 28px; }
.bj-done blockquote{ margin: 16px auto 8px; max-width: 520px; padding: 0; background: none; border: 0; }
.bj-done blockquote p{ font-family: var(--serif); font-size: 18px; color: #4a3a28; margin: 0; }
.bj-done blockquote cite{ font-size: 14px; color: #8a6420; }
.bj-form select{ font: inherit; font-size: 17px; height: 50px; padding: 0 12px; border: 1px solid var(--line); border-radius: 12px; background: #fff; width: 100%; box-sizing: border-box; }
.wt-track{ list-style: none; display: flex; margin: 10px 0 8px; padding: 0; font-size: 13px; color: var(--text-2); }
.wt-track > li{ flex: 1; position: relative; padding-top: 22px; text-align: center; min-width: 0; }
.wt-track > li::before{ content: ""; position: absolute; top: 4px; left: 50%; width: 14px; height: 14px; margin-left: -7px; border-radius: 50%; background: #fff; border: 2px solid #d9d2c3; box-sizing: border-box; z-index: 1; }
.wt-track > li + li::after{ content: ""; position: absolute; top: 10px; right: 50%; width: 100%; height: 2px; background: #e6dfd0; }
.wt-track > li.is-done{ color: #2f7a4b; }
.wt-track > li.is-done::before{ background: #2f9e5b; border-color: #2f9e5b; }
.wt-track > li.is-done::after, .wt-track > li.is-now::after{ background: #2f9e5b; }
.wt-track > li.is-now{ color: #b26a00; font-weight: 600; }
.wt-track > li.is-now::before{ border-color: #f0a020; background: #ffe3a8; box-shadow: 0 0 0 4px rgba(240, 160, 32, 0.18); }
.wt-h{ margin: 6px 0 10px; font-family: var(--serif); font-size: 22px; }
#ecc-app[data-mode="mine"] [data-ecc-request] > h2{ display: none; }
.wt-more{ margin: 18px 0; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.wt-more > summary{ padding: 12px 16px; cursor: pointer; font-size: 17px; }
.wt-more[open] > summary{ border-bottom: 1px solid var(--line); }
.wt-more > figure{ margin: 12px; }
@media (max-width: 560px){.sv-row{ grid-template-columns: 6.5em minmax(0, 1fr); }
}
.kreg{ background: #fff; border: 1px solid #e3ece5; box-shadow: 0 8px 24px rgba(30, 80, 50, 0.06); }
.kreg .mp-h2{ font-size: 24px; }
.kreg .pill[type="submit"]{ font-size: 19px; padding: 12px 34px; background: #2f7a4b; }
.kreg-done{ text-align: center; padding: 30px 22px; }
.wt-stats{ display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 10px; margin: 0 0 18px; }
.wt-stat{ display: flex; flex-direction: column; align-items: flex-start; gap: 0; padding: 14px 16px; border: 1px solid var(--line); border-radius: 16px; background: #fff; color: var(--text); font: inherit; text-align: left; cursor: pointer; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03), 0 6px 18px rgba(60, 40, 10, 0.04); transition: border-color 0.15s, transform 0.15s; }
.wt-stat:hover{ border-color: var(--amber); transform: translateY(-1px); }
.wt-stat > b{ font-family: var(--serif); font-size: 32px; line-height: 1.1; font-variant-numeric: tabular-nums; }
.wt-stat > span{ font-size: 15px; color: var(--text-2); }
.wt-stat.is-alert > b{ color: #c2410c; }
.wt-stat.is-zero > b{ color: #b9b3a8; }
.wt-stat[aria-pressed="true"]{ border-color: var(--text); box-shadow: inset 0 0 0 1px var(--text); }
@media (max-width: 560px){.wt-stats{ grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.wt-stat{ padding: 10px 10px; }
.wt-stat > b{ font-size: 26px; }
.wt-stat > span{ font-size: 13px; }
}
.nc-card{ padding: 14px 16px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.bp-card .wt-track{ margin: 6px 0 4px; max-width: 520px; }
.ro-tabs button{ border-color: var(--line); color: var(--text); padding: 7px 15px; }
.ro-tabs button[aria-selected="true"]{ background: var(--text); border-color: var(--text); color: #fff; }
.sd-app{ counter-reset: sd; }
.sd-top{ position: sticky; top: 64px; z-index: 5; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; padding: 10px 0; background: var(--bg, #fff); }
.sd-top .wt-h{ margin: 0; }
.sd-progress{ display: flex; align-items: center; gap: 10px; font-size: 16px; }
.sd-bar{ width: 140px; height: 10px; border-radius: 980px; background: #eee7da; overflow: hidden; }
.sd-bar > i{ display: block; height: 100%; width: 0; background: #2f9e5b; transition: width 0.3s; }
.sd-phase{ margin: 18px 0 8px; }
.sd-phase-h{ margin: 0 0 10px; padding: 6px 14px; display: inline-block; border-radius: 980px; font-size: 16px; font-weight: 600; background: #fff3d6; color: #8a5a00; }
.sd-during .sd-phase-h{ background: #e1ecfd; color: #1f4e8c; }
.sd-after .sd-phase-h{ background: #e6f4ea; color: #1f6b3d; }
.sd-steps{ list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.sd-step{ counter-increment: sd; display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 12px; padding: 14px 16px; border: 1px solid var(--line); border-radius: 16px; background: #fff; transition: background 0.2s, border-color 0.2s; }
.sd-check{ position: relative; display: block; cursor: pointer; }
.sd-check > input{ position: absolute; opacity: 0; width: 44px; height: 44px; margin: 0; cursor: pointer; }
.sd-num{ display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; border: 2px solid #d9cfbd; background: #fff; font-family: var(--serif); font-size: 20px; font-weight: 600; color: var(--text); }
.sd-num::before{ content: counter(sd); }
.sd-check > input:focus-visible + .sd-num{ outline: 2px solid var(--amber); outline-offset: 2px; }
.sd-step.is-done{ background: #f3faf5; border-color: #cfe8d7; }
.sd-step.is-done .sd-num{ background: #2f9e5b; border-color: #2f9e5b; color: #fff; }
.sd-step.is-done .sd-num::before{ content: "✓"; }
.sd-step.is-done h4{ color: #2f7a4b; }
.sd-body h4{ margin: 8px 0 4px; font-family: var(--serif); font-size: 20px; }
.sd-do{ margin: 0; padding-left: 1.2em; font-size: 17px; line-height: 1.6; }
.sd-warn{ margin: 8px 0 0; padding: 8px 12px; border-radius: 10px; background: #fff1e6; color: #9a3412; font-size: 16px; }
.sd-photos{ display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px; margin-top: 10px; }
.sd-photos > a{ display: flex; flex-direction: column; gap: 4px; color: var(--text-2); font-size: 13px; text-decoration: none; }
.sd-photos img{ width: 100%; height: 190px; object-fit: cover; border-radius: 10px; border: 1px solid var(--line); background: #f6f3ee; }
@media (max-width: 560px){.sd-step{ grid-template-columns: 44px minmax(0, 1fr); padding: 12px; }
.sd-num{ width: 38px; height: 38px; font-size: 17px; }
.sd-check > input{ width: 38px; height: 38px; }
.sd-bar{ width: 90px; }
.sd-photos{ grid-template-columns: 1fr 1fr; }
.sd-photos img{ height: 120px; }
}
div.wt-stat{ cursor: default; }
div.wt-stat:hover{ transform: none; border-color: var(--line); }
.ss-toolbar:has(> .wt-statbar){ flex-wrap: wrap; }
.la-hero{ margin: 4px 0 14px; }
.la-hero-card{ display: grid; gap: 10px; padding: 16px 18px; border-radius: 18px; border: 1px solid var(--line); background: #faf8f4; }
.la-hero-card.is-open{ background: #fbf6ec; border-color: #e3cfa5; }
.la-hero-card.is-new{ background: #fff8ec; border-color: #f0d9a8; }
.la-hero-card.is-new > b{ font-family: var(--serif); font-size: 22px; }
.la-hero-top{ display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 14px; }
.la-hero-status{ font-weight: 700; font-size: 17px; }
.la-hero-nums{ display: flex; gap: 22px; }
.la-hero-nums > div{ display: flex; align-items: baseline; gap: 6px; }
.la-hero-nums b{ font-family: var(--serif); font-size: 34px; line-height: 1; }
.la-hero-nums span{ color: var(--text-2); }
.la-hero-dishes{ display: flex; flex-wrap: wrap; gap: 6px; }
.la-dish-n{ padding: 5px 12px; border-radius: 980px; background: #fff; border: 1px solid var(--line); font-size: 15px; }
.la-dish-n > b{ margin-left: 4px; color: #b45309; }
.la-dish-n.is-zero > b{ color: #b9b3a8; }
.la-tabs{ margin: 0 0 14px; }
.eb-card.is-late{ border-left-color: #c2410c; }
.na-print{ margin-left: 8px; font-size: .88em; }
.au-hero{ position: relative; overflow: hidden; min-height: 520px; display: grid; place-items: end center; color: #fff; text-align: center; }
.au-hero::after{ content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(14, 22, 44, 0.15) 0%, rgba(14, 22, 44, 0.45) 45%, rgba(14, 22, 44, 0.88) 100%); }
.au-hero-inner{ position: relative; z-index: 1; max-width: 820px; padding: 120px 22px 54px; }
.au-eyebrow{ margin: 0 0 8px; font-size: 15px; letter-spacing: 0.24em; color: #f3c77e; }
.au-title{ margin: 0; font-family: var(--serif); font-size: 52px; line-height: 1.2; font-weight: 700; text-shadow: 0 2px 18px rgba(0, 0, 0, 0.35); }
.au-sub{ margin: 14px auto 0; max-width: 640px; font-size: 19px; line-height: 1.65; color: rgba(255, 255, 255, 0.92); }
.au-ctas{ display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 24px 0 0; }
.au-ghost{ display: inline-flex; align-items: center; padding: 10px 20px; border-radius: 980px; border: 1px solid rgba(255, 255, 255, 0.6); color: #fff; text-decoration: none; }
.au-ghost:hover{ background: rgba(255, 255, 255, 0.12); text-decoration: none; }
.au-ghost-dark{ color: var(--text); border-color: var(--line); background: #fff; }
.au-ghost-dark:hover{ background: #f6f1e7; }
.au-sec{ padding: 64px 22px; }
.au-h{ margin: 0 0 16px; font-family: var(--serif); font-size: 32px; line-height: 1.35; color: #231a10; }
.au-center{ text-align: center; margin-bottom: 26px; }
.au-believe{ list-style: none; margin: 0 0 18px; padding: 0; display: grid; gap: 10px; }
.au-believe li{ position: relative; padding: 14px 18px 14px 46px; border-radius: 14px; background: #fff; border: 1px solid #ece3d2; font-size: 18px; line-height: 1.6; }
.au-believe li::before{ content: "✝"; position: absolute; left: 18px; top: 13px; color: var(--gold); }
.au-faith-full{ border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.au-faith-full > summary{ padding: 14px 18px; cursor: pointer; font-weight: 600; }
.au-faith-full[open] > summary{ border-bottom: 1px solid var(--line); }
.au-faith-full > :not(summary){ padding: 0 18px; }
.au-faith-title{ margin: 18px 0 6px; font-family: var(--serif); font-size: 22px; }
.au-come{ padding: 72px 22px; text-align: center; background: radial-gradient(120% 90% at 50% 0%, #fff 0%, #fbf3e4 70%); }
.au-come-h{ margin: 0; font-family: var(--serif); font-size: 36px; color: #231a10; }
.au-ctas-center{ margin-top: 26px; }
@media (max-width: 560px){.au-hero{ min-height: 480px; }
.au-title{ font-size: 38px; }
.au-sub{ font-size: 17px; }
.au-h{ font-size: 26px; }
.au-sec{ padding: 46px 18px; }
}
.cl-jump{ display: flex; justify-content: center; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
.cl-jump a{ padding: 8px 18px; border-radius: 980px; border: 1px solid #e2d3b3; background: #fff; color: var(--text); text-decoration: none; font-size: 16px; }
.cl-jump a:hover{ border-color: var(--text); }
.cl-sec{ padding: 40px 22px; scroll-margin-top: 70px; }
.cl-h{ margin: 0 0 14px; font-family: var(--serif); font-size: 28px; color: #231a10; }
.cl-lede{ margin: -6px 0 16px; color: var(--text-2); }
.cl-day{ min-width: 0; padding: 10px 10px 12px; border-radius: 16px; background: #fff; border: 1px solid #ece3d2; }
.cl-day.is-today{ border-color: #8e1a18; box-shadow: 0 8px 22px rgba(142, 26, 24, 0.1); }
.cl-day.is-empty{ background: #faf8f4; }
.cl-day-head{ display: flex; align-items: baseline; gap: 6px; margin-bottom: 6px; }
.cl-day-head > b{ font-family: var(--serif); font-size: 24px; }
.cl-day-head > span{ font-size: 14px; color: var(--text-2); }
.cl-day.is-today .cl-day-head > b, .cl-day.is-today .cl-day-head > span{ color: #8e1a18; font-weight: 700; }
.cl-day ul{ list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.cl-day li a{ display: flex; flex-direction: column; padding: 5px 7px; border-radius: 8px; border-left: 3px solid var(--m); background: color-mix(in srgb, var(--m) 8%, #fff); color: var(--text); text-decoration: none; }
.cl-day li a:hover{ background: color-mix(in srgb, var(--m) 16%, #fff); }
.cl-t{ font-size: 12px; color: var(--text-2); }
.cl-n{ font-size: 14px; line-height: 1.35; overflow-wrap: anywhere; }
.cl-none{ color: #c4bcae; font-size: 14px; }
.cl-month{ scroll-margin-top: 70px; }
.cl-regular{ background: var(--ivory); }
.cl-tables{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.cl-table{ padding: 16px 18px; border-radius: 18px; background: #fff; border: 1px solid #ece3d2; border-top: 4px solid var(--m); }
.cl-table h3{ display: flex; align-items: center; gap: 8px; margin: 0 0 8px; font-family: var(--serif); font-size: 21px; }
.cl-dot{ width: 12px; height: 12px; border-radius: 50%; background: var(--m); }
.cl-table table{ width: 100%; border-collapse: collapse; font-size: 16px; }
.cl-table th{ text-align: left; font-size: 13px; font-weight: 600; color: var(--text-2); padding: 4px 6px; border-bottom: 1px solid var(--line); }
.cl-table td{ padding: 8px 6px; border-bottom: 1px solid #f1ead9; vertical-align: top; }
.cl-table tr:last-child td{ border-bottom: 0; }
.cl-table td a{ font-weight: 600; }
.cl-table td:nth-child(2){ white-space: nowrap; color: #3a3128; }
.cl-table td:nth-child(3){ color: var(--text-2); }
@media (max-width: 900px){.cl-tables{ grid-template-columns: 1fr; }
}
@media (max-width: 560px){.cl-day{ display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 8px; align-items: start; }
.cl-day.is-empty{ display: none; }
.cl-day.is-empty.is-today{ display: grid; }
.cl-day-head{ flex-direction: column; gap: 0; margin: 0; }
.cl-table td:nth-child(2){ white-space: normal; }
}
@keyframes lx-steam{ 0% { transform: translateY(40px) scaleX(0.7); opacity: 0; } 30% { opacity: 0.85; } 100% { transform: translateY(-120px) scaleX(1.3); opacity: 0; } }
.lx-menu{ position: relative; padding: 48px 22px 56px; scroll-margin-top: 60px; }
.lx-menu::before{ content: ""; position: absolute; right: -120px; top: 40px; width: 380px; height: 380px; border-radius: 50%; background: url("/assets/lunch-photos/box2.jpg") center / cover; opacity: 0.1; pointer-events: none; }
.lx-wrap{ position: relative; max-width: 980px; margin: 0 auto; }
@media (max-width: 700px){.lx-menu::before{ display: none; }
}
.au-hero::after{ background: linear-gradient(180deg, rgba(40, 24, 10, 0.05) 0%, rgba(40, 24, 10, 0.35) 45%, rgba(30, 18, 8, 0.82) 100%); }
.au-sunday{ background: #fff; }
.au-day{ list-style: none; margin: 0 auto; padding: 0; max-width: 940px; display: grid; gap: 26px; }
.au-day-step{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 28px; align-items: center; }
.au-day-step:nth-child(even) > figure{ order: 2; }
.au-day-step > figure{ margin: 0; border-radius: 20px; overflow: hidden; aspect-ratio: 4 / 3; box-shadow: 0 14px 34px rgba(60, 40, 10, 0.12); }
.au-day-step > figure img{ width: 100%; height: 100%; object-fit: cover; display: block; }
.au-day-step.is-text{ grid-template-columns: 1fr; text-align: center; padding: 26px 30px; border-radius: 22px; background: #fbf3e4; }
.au-day-step h3{ margin: 6px 0 6px; font-family: var(--serif); font-size: 26px; color: #231a10; }
.au-day-step p{ margin: 0; font-size: 18px; line-height: 1.8; color: #4a4036; }
.au-day-n{ display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #f3e3c4; color: #8a5a00; font-family: var(--serif); font-weight: 700; }
.au-believe li{ padding-left: 18px; }
.au-believe li::before{ content: none; }
@media (max-width: 760px){.au-note-wrap, .au-day-step{ grid-template-columns: 1fr; gap: 16px; }
.au-day-step:nth-child(even) > figure{ order: 0; }
}
.lx-menu{ background: #f7efe2; padding-top: 56px; }
.lx-menu::before{ content: none; }
.lx-menu-head{ text-align: center; margin: 0 0 18px; }
.lx-menu-k{ margin: 0; font-size: 14px; letter-spacing: 0.3em; color: #a0703a; }
.lx-menu-h{ margin: 4px 0 6px; font-family: var(--serif); font-size: 40px; color: #3a1f0b; }
.lx-menu-h::after{ content: ""; display: block; width: 64px; height: 2px; margin: 10px auto 0; background: #c99a5b; }
.lx-menu-how{ margin: 0; color: #8a6a4a; font-size: 15px; letter-spacing: 0.05em; }
.lx-menu .lu-menu.lu-cards{ display: block; max-width: 760px; margin: 0 auto; padding: 10px 28px; border-radius: 22px; background: #fffdf8; border: 1px solid #ead9bb; box-shadow: 0 18px 44px rgba(90, 50, 15, 0.1); }
.lx-menu .lu-cards .lu-card{ flex-direction: row; align-items: center; gap: 18px; padding: 16px 4px; border-radius: 0; background: none; box-shadow: none; border-bottom: 1px dashed #e3cfa8; overflow: visible; outline: 0; }
.lx-menu .lu-cards .lu-card:last-child{ border-bottom: 0; }
.lx-menu .lu-cards .lu-card:hover{ transform: none; box-shadow: none; }
.lx-menu .lu-cards .lu-card.is-picked{ background: linear-gradient(90deg, rgba(232, 144, 47, 0.08), rgba(232, 144, 47, 0)); outline: 0; }
.lx-menu .lu-photo{ flex: none; width: 76px; height: 76px; aspect-ratio: 1; border-radius: 50%; box-shadow: 0 0 0 3px #fff, 0 0 0 4px #ead9bb; }
.lx-menu .lu-cards .lu-card.is-picked .lu-photo::after{ top: -4px; right: -4px; width: 26px; height: 26px; font-size: 14px; }
.lx-menu .lu-card-body{ flex: 1; min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 2px 14px; padding: 0; }
.lx-menu .lu-card-body .lu-dish-name{ grid-column: 1; }
.lx-menu .lu-card-body .lu-pop{ grid-column: 1; justify-self: start; }
.lx-menu .lu-card-body .lu-step{ grid-column: 2; grid-row: 1 / span 2; margin: 0; }
.lx-menu .lu-cards .lu-dish-name{ font-size: 22px; }
.lu-photo-ph{ background: radial-gradient(circle at 35% 30%, hsl(var(--h) 85% 92%) 0%, hsl(var(--h) 70% 80%) 100%); }
.lu-mono{ font-family: var(--serif); font-weight: 700; font-size: clamp(40px, 6vw, 64px); color: hsl(var(--h) 55% 32%); line-height: 1; }
.lx-menu .lu-mono{ font-size: 34px; }
.lx-menu .lu-meta{ margin-bottom: 14px; }
.lx-menu .lu-note{ max-width: 760px; margin: 0 auto 16px; }
.lx-menu .lu-form, .lx-menu .lu-mine, .lx-menu .lu-summary, .lx-menu .lu-score{ max-width: 760px; margin-left: auto; margin-right: auto; }
.lx-menu .lu-summary{ margin-top: 26px; padding: 16px 20px; border-radius: 18px; background: #fffdf8; border: 1px solid #ead9bb; }
.lx-menu .lu-summary h3{ margin: 0 0 8px; font-family: var(--serif); font-size: 18px; color: #3a1f0b; }
.lx-grace{ padding: 64px 22px 72px; background: linear-gradient(180deg, #f7efe2 0%, #efe0c6 100%); }
.lx-grace-card{ position: relative; max-width: 640px; margin: 0 auto; padding: 40px 36px 34px; border-radius: 26px; background: #fffdf8; text-align: center; box-shadow: 0 24px 60px rgba(90, 50, 15, 0.14); }
.lx-grace-card::before{ content: "🙏"; position: absolute; top: -24px; left: 50%; transform: translateX(-50%); display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: #fff4e3; box-shadow: 0 6px 16px rgba(90, 50, 15, 0.15); font-size: 24px; }
.lx-grace-k{ margin: 0 0 12px; font-size: 14px; letter-spacing: 0.3em; color: #a0703a; }
.lx-grace-text{ margin: 0; font-family: var(--serif); font-size: 21px; line-height: 2; color: #3a1f0b; }
.lx-grace-verse{ margin: 22px 0 0; padding-top: 18px; border-top: 1px dashed #e3cfa8; font-size: 15px; line-height: 1.8; color: #8a6a4a; }
.lx-grace-verse > small{ display: block; font-size: 13px; }
@media (max-width: 700px){.lx-menu-h{ font-size: 32px; }
.lx-menu .lu-menu.lu-cards{ padding: 4px 14px; }
.lx-menu .lu-cards .lu-card{ gap: 12px; padding: 12px 0; }
.lx-menu .lu-photo{ width: 58px; height: 58px; }
.lx-menu .lu-mono{ font-size: 26px; }
.lx-menu .lu-cards .lu-dish-name{ font-size: 19px; }
.lx-grace-card{ padding: 34px 20px 26px; }
.lx-grace-text{ font-size: 18px; }
}
.lx-menu .lu-form{ display: grid; gap: 14px; }
.lx-menu .lu-form > .lu-menu.lu-cards{ width: 100%; max-width: none; box-sizing: border-box; }
.lx-menu .lu-total-all{ white-space: nowrap; }
.lx-menu .lu-totals{ grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
.cl-month{ position: relative; z-index: 2; max-width: 1080px; margin: -70px auto 0; border-radius: 26px; box-shadow: 0 24px 60px rgba(40, 24, 50, 0.16); padding-top: 34px; }
.cl-regular{ padding-top: 48px; }
@media (max-width: 700px){.cl-month{ margin: -50px 10px 0; border-radius: 20px; }
}
.more-account{ display: flex; gap: 8px; margin: 0 0 14px; }
.more-account a{ display: flex; align-items: center; justify-content: center; min-height: 48px; border-radius: 14px; font-size: 18px; font-weight: 600; text-decoration: none; }
.more-account a[hidden]{ display: none; }
.more-portal{ flex: 2; background: var(--text); color: #fff; }
.more-portal:hover{ text-decoration: none; opacity: 0.92; }
.more-join{ flex: 1; border: 1px solid var(--line); color: var(--text); background: #fff; }
.an-upcoming{ width: 100%; max-width: 640px; }
.an-up-h{ margin: 0 0 10px; font-family: var(--serif); font-size: 22px; color: #231a10; }
.an-upcoming ul{ list-style: none; margin: 0 0 12px; padding: 0; display: grid; gap: 8px; text-align: left; }
.an-upcoming li{ display: flex; align-items: center; gap: 14px; padding: 10px 14px; border-radius: 14px; background: #fff; border: 1px solid #ece3d2; }
.an-up-date{ flex: none; display: flex; flex-direction: column; align-items: center; width: 52px; padding: 4px 0; border-radius: 10px; background: #fbeee0; color: #b5542a; font-size: 12px; line-height: 1.1; }
.an-up-date > b{ font-family: var(--serif); font-size: 22px; }
.an-up-main{ display: flex; flex-direction: column; min-width: 0; }
.an-up-main strong{ font-size: 17px; }
.an-up-main small{ color: var(--text-2); font-size: 14px; }
.tile-welcome .hw-photo{ margin: 0; border-radius: 18px; overflow: hidden; }
.tile-welcome .hw-photo img{ display: block; width: 100%; height: auto; }
.hw-links{ display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 12px; }
.hw-links a{ display: flex; flex-direction: column; gap: 2px; padding: 14px 16px; border-radius: 16px; background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(243, 199, 126, 0.35); color: #fff; text-decoration: none; }
.hw-links a:hover{ background: rgba(255, 255, 255, 0.14); text-decoration: none; }
.hw-links b{ font-family: var(--serif); font-size: 20px; color: #f3c77e; }
.hw-links span{ font-size: 14px; color: rgba(255, 255, 255, 0.8); }
.hw-addr{ margin: 12px 0 0; font-size: 15px; color: rgba(255, 255, 255, 0.8); }
.hw-addr a{ color: #f3c77e; }
.vt-hero .cl-jump{ margin-top: 20px; }
.vt-hero .cl-jump a{ background: rgba(255, 255, 255, 0.14); border-color: rgba(255, 255, 255, 0.45); color: #fff; }
.vt-times{ background: var(--ivory); scroll-margin-top: 70px; }
.vt-services{ display: grid; grid-template-columns: 1fr 1fr; gap: 16px; max-width: 900px; margin: 0 auto; }
.vt-service{ display: flex; flex-direction: column; gap: 6px; padding: 26px 26px 22px; border-radius: 22px; background: #fff; border: 1px solid #ece3d2; box-shadow: 0 14px 34px rgba(60, 40, 10, 0.07); }
.vt-lang{ margin: 0; font-size: 14px; letter-spacing: 0.2em; color: #8a5a00; }
.vt-service h3{ margin: 0; font-family: var(--serif); font-size: 26px; color: #231a10; }
.vt-time{ margin: 0; font-family: var(--serif); font-size: 22px; color: #8e1a18; }
.vt-who, .vt-flow{ margin: 0; color: #4a4036; line-height: 1.7; }
.vt-flow{ font-size: 15px; color: var(--text-2); }
.vt-service > a{ margin-top: auto; padding-top: 6px; font-weight: 600; }
.vt-all{ max-width: 900px; margin: 16px auto 0; }
.vt-all ul{ list-style: none; margin: 0; padding: 6px 18px 14px; }
.vt-all li{ display: grid; grid-template-columns: 170px 1fr; gap: 10px; padding: 6px 0; border-bottom: 1px dashed #eadfcb; }
#where, #kids, #online{ scroll-margin-top: 70px; }
.vt-addr{ font-family: var(--serif); font-size: 20px !important; color: #231a10 !important; }
.vt-acts{ display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 10px 0 !important; }
.vt-kids{ list-style: none; margin: 10px 0; padding: 0; display: grid; gap: 4px; }
.vt-kids b{ display: inline-block; min-width: 150px; color: #2f7a4b; }
.vt-links a{ margin-right: 14px; font-weight: 600; }
.vt-online{ background: var(--ivory); }
.vt-two{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 32px; align-items: center; }
.vt-two p{ font-size: 18px; line-height: 1.8; color: #4a4036; }
.vt-video{ border-radius: 20px; overflow: hidden; box-shadow: 0 14px 34px rgba(60, 40, 10, 0.14); }
.vt-contacts{ list-style: none; margin: 18px auto 0; padding: 0; max-width: 760px; display: grid; gap: 8px; text-align: left; }
.vt-contacts li{ display: flex; flex-wrap: wrap; gap: 4px 14px; padding: 12px 16px; border-radius: 14px; background: #fff; border: 1px solid #ece3d2; }
.vt-contacts b{ min-width: 120px; font-family: var(--serif); }
@media (max-width: 760px){.vt-services, .vt-two, .vt-teaser{ grid-template-columns: 1fr; }
.vt-all li{ grid-template-columns: 1fr; gap: 0; }
}
.mz-hero{ position: relative; overflow: hidden; min-height: 520px; display: flex; align-items: flex-end; color: #fff8ec; background: #3a2414; }
.mz-hero-img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.mz-hero::after{ content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(60, 30, 8, 0.25) 0%, rgba(60, 30, 8, 0.55) 50%, rgba(45, 22, 6, 0.92) 100%); }
.mz-hero-inner{ position: relative; z-index: 1; width: 100%; max-width: 1080px; margin: 0 auto; padding: 120px 24px 50px; }
.mz-eyebrow{ margin: 0 0 8px; font-size: 15px; letter-spacing: 0.2em; color: #f3c77e; }
.mz-eyebrow a{ color: inherit; }
.mz-title{ margin: 0; font-family: var(--serif); font-size: 58px; line-height: 1.15; letter-spacing: 0.08em; }
.mz-verse{ margin: 14px 0 0; max-width: 640px; font-family: var(--serif); font-size: 18px; line-height: 1.8; color: #ffe9c7; }
.mz-verse > small{ display: block; font-family: var(--font); font-size: 13px; letter-spacing: 0.08em; opacity: 0.85; }
.mz-chips{ display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 0; }
.mz-chips span{ padding: 6px 14px; border-radius: 980px; background: rgba(255, 248, 236, 0.14); border: 1px solid rgba(243, 199, 126, 0.5); font-size: 15px; }
.mz-ctas{ display: flex; flex-wrap: wrap; gap: 10px; margin: 20px 0 0; }
.mz-ghost{ display: inline-flex; align-items: center; padding: 10px 20px; border-radius: 980px; border: 1px solid rgba(255, 248, 236, 0.6); color: #fff8ec; text-decoration: none; }
.mz-ghost:hover{ background: rgba(255, 255, 255, 0.12); text-decoration: none; }
.mz-ghost-dark{ color: var(--text); border-color: var(--line); background: #fff; }
.mz-sec{ padding: 56px 22px; }
.mz-h{ margin: 0 0 18px; font-family: var(--serif); font-size: 28px; color: #231a10; }
.mz-areas{ list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 12px; }
.mz-areas a{ position: relative; display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 2px 14px; padding: 18px 40px 18px 18px; border-radius: 18px; background: #fff; border: 1px solid #ece3d2; color: var(--text); text-decoration: none; height: 100%; box-sizing: border-box; }
.mz-areas a:hover{ border-color: #c99a5b; box-shadow: 0 10px 26px rgba(90, 50, 15, 0.08); text-decoration: none; }
.mz-areas strong{ font-family: var(--serif); font-size: 20px; color: #231a10; }
.mz-areas small{ font-size: 14px; line-height: 1.65; color: #6b5a44; }
.mz-go{ position: absolute; right: 16px; top: 50%; transform: translateY(-50%); color: #c99a5b; font-size: 22px; }
.mz-week{ background: var(--ivory); }
.mz-two{ display: grid; grid-template-columns: 1fr 1fr; gap: 36px; }
.mz-contact{ padding: 60px 22px 70px; background: linear-gradient(180deg, var(--ivory), #efe0c6); }
.mz-card{ max-width: 620px; margin: 0 auto; padding: 32px; border-radius: 24px; background: #fffdf8; text-align: center; box-shadow: 0 20px 50px rgba(90, 50, 15, 0.12); }
.mz-k{ margin: 0; letter-spacing: 0.25em; font-size: 14px; color: #a0703a; }
.mz-who{ margin: 8px 0 0; font-family: var(--serif); font-size: 22px; }
.mz-card .mz-ctas{ justify-content: center; }
@media (max-width: 760px){.mz-title{ font-size: 42px; }
.mz-two, .mz-vine{ grid-template-columns: 1fr; }
}
.za-tag{ margin: 8px 0 0; font-family: var(--serif); font-size: 22px; color: #ffe9c7; }
.sg-card-img{ display: block; width: calc(100% + 52px); max-width: none; margin: -22px -26px 16px; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 13px 13px 0 0; }
.sg-join{ margin: 18px 0 0; padding-top: 16px; border-top: 1px solid var(--line, #e5e0d6); }
.sg-join-form{ display: grid; gap: 10px; }
.sg-join-form[hidden], .sg-join .pill[hidden]{ display: none; }
.sg-join-lede{ margin: 0; color: var(--text-2); font-size: 16px; }
.sg-join-form label{ display: grid; gap: 3px; font-size: 15px; }
.sg-join-form input:not([type=checkbox]), .sg-join-form textarea{ width: 100%; box-sizing: border-box; padding: 9px 11px; border: 1px solid var(--line, #d9d4ca); border-radius: 10px; font: inherit; }
.sg-join-form .sg-consent{ display: flex; align-items: flex-start; gap: 8px; }
.sg-join-form .sg-consent input{ margin-top: 4px; }
.sg-hp{ position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.sg-join-acts{ display: flex; align-items: center; gap: 12px; margin: 0; }
.sg-join-status{ color: var(--text-2); font-size: 15px; }
.sg-join-done{ margin: 0; padding: 12px 14px; border-radius: 10px; background: var(--cream); font-size: 16px; }
.en-hero, .en-sec, .en-hero-home{ --en-ink: #17324d; --en-text: #3d5166; --en-blue: #1f74c9; --en-sky: #eef6ff; --en-sun: #f4a62a; --en-line: #dbe8f5; }
.en-hero{ background: linear-gradient(160deg, #e6f2ff 0%, #f6fbff 55%, #fff8ec 100%); color: var(--en-ink); }
.en-hero-inner{ max-width: 1120px; margin: 0 auto; padding: 56px 24px 48px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 44px; align-items: center; }
.en-hero-img{ display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 26px; box-shadow: 0 24px 50px rgba(31, 116, 201, 0.18); }
.en-eyebrow{ margin: 0 0 12px; font-size: 14px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--en-blue); }
.en-eyebrow a{ color: inherit; }
.en-title{ margin: 0; font-family: var(--font); font-size: 56px; line-height: 1.05; font-weight: 800; letter-spacing: -0.02em; color: var(--en-ink); }
.en-sub{ margin: 16px 0 0; max-width: 520px; font-size: 19px; line-height: 1.6; color: var(--en-text); }
.en-chips{ display: flex; flex-wrap: wrap; gap: 8px; margin: 20px 0 0; }
.en-chips > span{ padding: 6px 14px; border-radius: 980px; background: #fff; border: 1px solid var(--en-line); font-size: 15px; font-weight: 600; color: var(--en-ink); }
.en-ctas{ display: flex; flex-wrap: wrap; gap: 10px; margin: 24px 0 0; }
.en-btn{ display: inline-flex; align-items: center; padding: 12px 22px; border-radius: 980px; background: var(--en-blue); color: #fff; font-weight: 700; text-decoration: none; }
.en-btn:hover{ text-decoration: none; background: #1863ad; }
.en-btn-line{ background: #fff; color: var(--en-blue); border: 1.5px solid #bcd6f0; }
.en-btn-line:hover{ background: var(--en-sky); }
.en-sec{ padding: 56px 22px; background: #fff; }
.en-cards{ display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 14px; margin: 0 0 30px; }
.en-card{ display: flex; flex-direction: column; padding: 22px; border-radius: 18px; background: #fff; border: 1px solid var(--en-line); }
.en-card h3{ margin: 0 0 4px; font-size: 21px; color: var(--en-ink); }
.en-card p{ margin: 0 0 10px; line-height: 1.6; color: var(--en-text); }
.en-card .en-when{ color: var(--en-blue); font-weight: 600; }
.en-card-links{ margin-top: auto !important; display: flex; flex-wrap: wrap; gap: 14px; font-weight: 600; }
.en-next{ background: linear-gradient(180deg, #fff 0%, #fff8ec 100%); }
.en-ask{ max-width: 620px; margin: 0 auto; padding: 30px; border-radius: 22px; background: #fff; border: 1px solid #f1e2c4; text-align: center; box-shadow: 0 14px 34px rgba(244, 166, 42, 0.12); }
.en-k{ margin: 0; font-size: 14px; font-weight: 700; letter-spacing: 0.15em; text-transform: uppercase; color: #c47a0a; }
.en-who{ margin: 8px 0 0; font-size: 22px; font-weight: 700; color: var(--en-ink); }
.en-ask .en-ctas{ justify-content: center; }
@media (max-width: 860px){.en-hero-inner{ grid-template-columns: 1fr; gap: 24px; padding: 28px 16px 36px; }
.en-hero-img{ order: -1; aspect-ratio: 16 / 10; border-radius: 20px; }
.en-title{ font-size: 40px; }
}
@media (max-width: 480px){.en-sec{ padding: 40px 16px; }
}
.gv-page{ max-width: 700px; margin: 0 auto; padding: 52px 22px 72px; color: #3a3128; }
.gv-lede{ margin: 0 0 40px; font-family: var(--serif); font-size: 21px; line-height: 1.9; }
.gv-h{ margin: 44px 0 6px; padding-bottom: 10px; border-bottom: 2px solid #3a2a1a; font-family: var(--serif); font-size: 28px; color: #2a1d10; }
.gv-way{ padding: 22px 0; border-bottom: 1px solid #e4d9c6; }
.gv-way h3{ margin: 0 0 6px; font-family: var(--serif); font-size: 22px; color: #2a1d10; }
.gv-way p{ margin: 0 0 8px; line-height: 1.8; }
.app-steps{ margin: 0; padding-left: 1.4em; line-height: 1.9; font-size: 17px; }
.gv-copy{ display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 14px; }
.gv-copy b{ font-size: 20px; word-break: break-all; color: #2a1d10; }
.gv-addr{ margin: 4px 0 10px; padding-left: 14px; border-left: 3px solid #c9b48f; font-style: normal; line-height: 1.7; }
.gv-note{ font-size: 15px; color: #7a6a58; }
.gv-uses{ margin: 0; display: grid; grid-template-columns: 8em minmax(0, 1fr); }
.gv-uses dt, .gv-uses dd{ margin: 0; padding: 16px 0; border-bottom: 1px solid #e4d9c6; line-height: 1.7; }
.gv-uses dt{ font-family: var(--serif); font-size: 19px; color: #2a1d10; }
.gv-prayer{ margin: 48px 0 0; padding: 0; background: none; border-radius: 0; text-align: center; }
.gv-prayer p{ margin: 0; font-family: var(--serif); font-size: 20px; line-height: 2; color: #3a2a1a; }
.gv-help{ margin: 36px 0 0; text-align: center; font-size: 15px; color: #7a6a58; }
@media (max-width: 600px){.gv-uses{ grid-template-columns: 1fr; }
.gv-uses dt{ padding-bottom: 0; border-bottom: 0; }
.gv-uses dd{ padding-top: 4px; }
}
.bp-pray-list{ display: flex; flex-direction: column; }
.bp-pray{ padding: 14px 0; border-bottom: 1px solid #e3d4b4; }
.bp-pray:first-child{ padding-top: 0; }
.bp-pray:last-child{ border-bottom: 0; }
.bp-pray h4{ margin: 0 0 4px; font-family: var(--serif); font-size: 22px; line-height: 1.4; color: #8e1a18; }
.bp-pray p{ margin: 0; font-family: var(--serif); font-size: 19px; line-height: 1.75; color: #2b2118; overflow-wrap: anywhere; }
.bp-pray .bp-pray-meta{ margin-top: 6px; font-family: var(--font); font-size: 14px; color: #8a6a3a; }
.bp-pray-foot{ display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 22px; margin: 18px 0 0; padding-top: 12px; border-top: 1px solid #d9c89f; font-family: var(--serif); font-size: 17px; }
.bp-pray-foot a{ color: #8e1a18; font-weight: 600; }
@media (max-width: 600px){.bp-pray h4{ font-size: 20px; }
.bp-pray p{ font-size: 17px; line-height: 1.65; }
}
.pw{ background: #f7f3ea; color: #2b2118; padding-bottom: 64px; }
.pw::before, .pw::after{ content: none; }
.pw-hero{ max-width: 1180px; margin: 0 auto; padding: 18px 16px 0; }
.pw-hero img{ display: block; width: 100%; height: clamp(220px, 34vw, 400px); object-fit: cover; object-position: center; border-radius: 4px; }
.pw-head{ position: relative; max-width: 820px; margin: -84px auto 0; padding: 28px 30px 26px; background: #fff; text-align: center; box-shadow: 0 2px 14px rgba(43, 33, 24, 0.10); }
.pw-h1{ margin: 0; font-family: var(--serif); font-size: clamp(30px, 4vw, 40px); font-weight: 700; letter-spacing: 0.06em; color: #2b2118; text-shadow: none; }
.pw .pw-verse{ margin: 10px auto 0; max-width: 640px; color: #5a4a3a; font-style: italic; font-size: clamp(17px, 1.8vw, 19px); }
.pw .pw-verse cite{ color: #8a6a3a; font-style: normal; font-size: 14px; }
.pw-pour{ border: 0; border-radius: 4px; padding: 12px 30px; background: #a31d1d; color: #fff; font: inherit; font-family: var(--serif); font-size: 18px; letter-spacing: 0.06em; cursor: pointer; box-shadow: none; }
.pw-pour:hover{ background: #8e1a18; filter: none; }
.pw-pour-sm{ padding: 9px 20px; font-size: 16px; }
.pw-church{ max-width: 1040px; margin: 44px auto 0; padding: 38px 48px 30px; background: #fbf7ef; border-top: 1px solid #e4d7bf; border-bottom: 1px solid #e4d7bf; }
.pw-church-top{ text-align: center; margin-bottom: 26px; }
.pw-church-h{ margin: 0; font-family: var(--serif); font-size: 32px; font-weight: 600; letter-spacing: .08em; }
.pw-church-date{ margin: 6px 0 12px; color: #7a6a55; font-size: 15px; letter-spacing: .04em; }
.pw-church-cols{ display: grid; grid-template-columns: 1fr 1fr; gap: 0 56px; }
.pw-church.is-one .pw-church-cols{ grid-template-columns: minmax(0, 680px); justify-content: center; }
.pw-church-col h3{ margin: 0 0 10px; font-size: 15px; font-weight: 600; letter-spacing: .18em; color: #8a6420; }
.pw-church-col p{ margin: 0; padding: 14px 0; font-family: var(--serif); font-size: 18.5px; line-height: 1.95; color: #2f2a24; }
.pw-church-col p + p{ border-top: 1px solid #ece3d2; }
.pw-church-col h3 + div p:first-child, .pw-church-sub + div p:first-child{ padding-top: 2px; }
.pw-church-col .pw-church-sub{ padding: 0 0 8px; font-size: 20px; font-weight: 600; line-height: 1.5; }
.pw-church-none{ text-align: center; color: #7a6a55; }
.pw-church-past{ display: flex; align-items: center; justify-content: center; gap: 16px; margin-top: 22px; padding-top: 16px; border-top: 1px solid #ece3d2; font-size: 15px; }
.pw-church-past select{ font: inherit; padding: 5px 8px; border: 1px solid #d9ccb5; border-radius: 6px; background: #fffdf8; }
.pw-church-past button:disabled{ opacity: .35; cursor: default; }
.pw-church-login{ margin: 18px 0 0; text-align: center; font-size: 15px; }
.pw-gate{ max-width: 620px; margin: 0 auto; padding: 8px 0 24px; text-align: center; }
.pw-gate p{ margin: 10px 0; }
@media (max-width: 760px){.pw-church{ margin: 28px 0 0; padding: 28px 18px 22px; }
.pw-church-cols{ grid-template-columns: minmax(0, 1fr); gap: 18px; }
.pw-church-col p{ font-size: 17.5px; line-height: 1.85; }
}
.pw-listhead{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; }
.pw-note{ margin: 10px 16px 0; text-align: center; font-size: 15px; color: #6b5a48; }
.pw-about{ max-width: 820px; margin: 48px auto 0; padding: 0 22px; }
.pw-about h2, .pw-listh{ margin: 0 0 8px; font-family: var(--font); font-size: 15px; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: #6b5a48; }
.pw-about p{ margin: 0; font-size: 17px; line-height: 1.8; color: #3a2e22; }
.pw-body{ max-width: 820px; margin: 40px auto 0; padding: 0 16px; }
.pw-listhead{ display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 2px 12px; border-bottom: 1px solid #e3d8c4; }
.pw-listh{ margin: 0; }
.pw-filters{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 16px; margin: 14px 0 16px; }
.pw-tabs{ justify-content: flex-start; gap: 4px 18px; margin: 0; }
.pw-tabs button{ padding: 6px 2px; border: 0; border-bottom: 2px solid transparent; border-radius: 0; background: none; color: #5a4a3a; font: inherit; font-size: 17px; cursor: pointer; }
.pw-tabs button[aria-pressed="true"]{ background: none; border-bottom-color: #a31d1d; color: #2b2118; font-weight: 600; }
.pw-search{ display: block; margin: 0; flex: 0 1 260px; }
.pw-tools{ display: flex; gap: 8px; flex: 0 1 440px; }
.pw-tools[hidden]{ display: none; }
.pw-tools .pw-search{ flex: 1 1 auto; }
.pw .pw-status .pw-empty-go{ margin-top: 14px; }
@media (min-width: 1000px){.pw-body.is-many{ max-width: 1120px; }
.pw-body.is-many .pw-wall{ grid-template-columns: 1fr 1fr; gap: 16px; }
.pw-body.is-many .pw-card{ margin: 0; }
}
.pw-search input{ width: 100%; box-sizing: border-box; padding: 8px 12px; border: 1px solid #d9ccb6; border-radius: 4px; background: #fff; color: #2b2118; font: inherit; font-size: 16px; }
.pw .pw-status{ color: #6b5a48; text-align: center; font-family: inherit; }
.pw .pw-status:empty{ display: none; }
.pw .pw-wall{ column-count: 1; display: grid; gap: 0; }
.pw .pw-card{ margin: 0 0 -1px; padding: 22px 26px 18px; border: 1px solid #e3d8c4; border-left: 4px solid #a31d1d; border-radius: 0; background: #fff; box-shadow: none; }
.pw .pw-card.is-answered{ border-left-color: #c9a046; background: #fff; }
.pw .pw-card.pw-k-praise, .pw .pw-card.pw-k-answered{ border-left-color: #4f7a3a; background: #fff; }
.pw-card-h{ margin: 0 0 6px; font-family: var(--serif); font-size: 21px; font-weight: 700; line-height: 1.35; color: #2b2118; }
.pw-card-h span{ font-weight: 400; color: #5a4a3a; }
.pw .pw-text{ font-family: inherit; font-size: 17px; line-height: 1.75; color: #2b2118; }
.pw .pw-expand{ color: #1f4e9a; font-size: 16px; }
.pw .pw-meta{ display: block; margin: 12px 0 0; font-size: 13px; color: #7a6a58; }
.pw .pw-praise{ margin: 10px 0 0; padding: 2px 0 2px 12px; border-left: 3px solid #c9a046; border-radius: 0; background: none; font-size: 16px; color: #3a2e22; }
.pw .pw-acts{ margin-top: 12px; padding-top: 0; border-top: 0; }
.pw .pw-pray, .pw .pw-open{ border-radius: 4px; border: 1px solid #d9ccb6; background: #fff; color: #8e1a18; font: inherit; font-size: 15px; padding: 5px 14px; cursor: pointer; }
.pw .pw-pray[aria-pressed="true"]{ background: #a31d1d; border-color: #a31d1d; color: #fff; font-weight: 400; }
.pw .pw-count{ color: #7a6a58; }
.pw .pw-r{ border-radius: 4px; background: #faf6ee; box-shadow: none; border: 1px solid #ece2d0; }
.pw .pw-r-update{ background: #fbf1dc; border-color: #e3c98c; }
.pw .pw-quick button, .pw .pw-verses button{ border-radius: 4px; border-color: #d9ccb6; background: #fff; }
.pw .pw-write input{ border-radius: 4px; border-color: #d9ccb6; }
.pw .pw-write .pill{ border-radius: 4px; background: #a31d1d; color: #fff; }
.pw .pw-todo{ display: block; margin: 0 0 18px; padding: 10px 14px; border: 1px solid #e3c98c; border-radius: 4px; background: #fbf1dc; color: #7a4a0c; font-weight: 600; text-align: center; text-decoration: none; }
.pw .pw-todo[hidden]{ display: none; }
.pw-more-wrap{ margin: 18px 0 0; text-align: center; }
.pw-more{ padding: 10px 26px; border: 1px solid #d9ccb6; border-radius: 4px; background: #fff; color: #8e1a18; font: inherit; font-size: 16px; cursor: pointer; }
.pw-more:hover{ background: #faf6ee; }
.pw-more[hidden]{ display: none; }
.pw-done-flame{ color: #a31d1d; font-size: 30px; }
@media (max-width: 640px){.pw-hero{ padding: 0; }
.pw-hero img{ border-radius: 0; height: 220px; }
.pw-head{ margin: -48px 12px 0; padding: 20px 18px; }
.pw .pw-card{ padding: 18px 16px 14px; }
.pw-card-h{ font-size: 19px; }
.pw-search{ flex-basis: 100%; }
.pw-tools{ flex-basis: 100%; }
}
.en-card.has-img{ padding-top: 0; overflow: hidden; }
.en-card-img{ display: block; width: calc(100% + 44px); max-width: none; margin: 0 -22px 16px; aspect-ratio: 16 / 10; object-fit: cover; }
.en-card.is-paused .en-card-img{ filter: saturate(0.6); }
.rt-card{ margin: 0 0 18px; padding: 18px 20px; border-radius: 16px; background: #fff; border: 1px solid var(--line); }
.rt-card .wt-h{ margin-top: 0; }
.rt-ev{ display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 8px 14px; padding: 10px 0; border-bottom: 1px solid var(--line); }
.rt-ev:last-child{ border-bottom: 0; }
.rt-ev.is-past{ opacity: 0.6; }
.rt-ev-main{ display: grid; gap: 2px; flex: 1 1 300px; }
.rt-ev-main small{ color: var(--text-2); font-size: 14px; }
.rt-ev-acts{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.rn-form{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px 12px; background: none; padding: 0; }
.rn-form label{ display: grid; gap: 4px; font-size: 14px; color: var(--text-2); }
.rn-form input:not([type=checkbox]){ font: inherit; font-size: 16px; padding: 7px 10px; border: 1px solid var(--line); border-radius: 8px; width: 100%; box-sizing: border-box; }
.rn-form .rn-what, .rn-form .rn-rooms, .rn-form .rn-send{ grid-column: 1 / -1; }
.rn-send{ margin: 0; }
@media (max-width: 700px){.rn-form{ grid-template-columns: 1fr 1fr; }
}
.rt-ev-main .cs-badge, .rt-ev-main > b{ justify-self: start; }
.rn-check{ list-style: none; margin: 0 0 14px; padding: 0; display: grid; gap: 6px; }
.rn-check li{ display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; padding: 8px 12px; border-radius: 10px; background: var(--gray, #f5f5f7); }
.rn-check li > span:first-child{ flex: 1 1 220px; }
.rn-check small{ color: var(--text-2); }
.rn-docform{ margin: 0 0 14px; }
.rn-form select{ font: inherit; font-size: 16px; padding: 7px 10px; border: 1px solid var(--line); border-radius: 8px; width: 100%; }
.es-paid{ margin-top: 6px; }
.es-paid > summary{ cursor: pointer; color: var(--blue); font-weight: 600; font-size: 15px; }
.es-paid form{ margin-top: 8px; }
.es-paid input{ font: inherit; font-size: 15px; padding: 6px 10px; border: 1px solid var(--line); border-radius: 8px; }
.es-wait{ color: #9a4b00; }
.eb-card.is-reported{ border-left: 4px solid #f0b54a; }
#fa-costs select[data-fa-year]{ font: inherit; font-size: 15px; padding: 5px 8px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
[data-ro-paste]{ width: 100%; box-sizing: border-box; font: 14px/1.4 ui-monospace, Menlo, monospace; padding: 8px; border: 1px solid var(--line); border-radius: 8px; }
.rc-me{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 14px; }
.rc-me select{ font: inherit; font-size: 17px; padding: 8px 12px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.rc-day{ padding: 14px 16px; border-radius: 14px; border: 1px solid var(--line); background: #fff; margin: 0 0 10px; }
.rc-day.is-special{ border-color: #e2c48a; background: #fffaf0; }
.rc-day h2{ margin: 0 0 8px; font-size: 19px; }
.rc-role{ display: grid; gap: 6px; margin: 6px 0 0; }
.rc-role > span{ font-size: 13px; color: var(--text-2); }
.rc-person{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.rc-person.is-me{ padding: 8px 10px; border-radius: 10px; background: #f3f7fc; }
.rc-person b{ font-size: 17px; }
.rc-person textarea{ flex-basis: 100%; font: inherit; font-size: 15px; padding: 6px 8px; border: 1px solid var(--line); border-radius: 8px; }
.ss-form .la-check input[type=checkbox], .ss-form .la-check input[type=radio]{ width: auto; flex: none; margin: 0; }
.rs{ list-style: none; }
.rs-none{ color: #b0b0b5; }
.rs-note{ font-size: 14px; color: var(--text-2); }
@media (max-width: 640px){.rs-cell, .rs-note{ grid-column: 1 / -1; display: flex; gap: 8px; align-items: baseline; }
.rs-note:empty{ display: none; }
}
.rl{ margin: 0 0 16px; }
.rl h3{ font-size: 17px; margin: 6px 0; }
.rl h3 small{ color: var(--text-2); font-weight: 400; font-size: 14px; }
.rm-week{ display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 6px; margin: 10px 0; }
.rm-week > .ss-icon-btn{ width: 34px; height: 44px; font-size: 20px; }
.rm-week > .ss-icon-btn:disabled, .wt-days > button:disabled{ opacity: 0.35; cursor: default; }
.rv-range{ margin: 6px 0 0; color: inherit; opacity: .85; font-size: 16px; }
.rv-tools{ margin: 0 0 10px; text-align: right; }
.rv-table{ width: 100%; border-collapse: collapse; font-size: 16px; }
.rv-table th, .rv-table td{ padding: 10px 8px; border-bottom: 1px solid var(--line); text-align: left; }
.rv-table th{ font-size: 13px; color: var(--text-2); font-weight: 600; }
.rv-table tr.is-past td{ opacity: .45; }
.rv-table tr.is-special td{ background: #fffaf0; }
.rv-d{ white-space: nowrap; }
.rv-d small, .rv-n{ color: var(--text-2); font-size: 14px; }
@media print{.globalnav, .globalfooter, .fb-btn, .rv-tools, .rv-foot, .ab-rule{ display: none !important; }
.rv-hero{ background: none !important; color: #000 !important; padding: 0 0 8px !important; min-height: 0 !important; }
.rv-hero .ab-title, .rv-hero .ab-eyebrow, .rv-range{ color: #000 !important; }
.rv-section{ padding: 0 !important; }
.rv-table tr.is-past td{ opacity: 1; }
.rv-table th, .rv-table td{ padding: 6px 8px; }
}
.pw-expand{ margin: 2px 0 6px; font-size: 15px; }
.pw-card.is-target{ box-shadow: 0 0 0 3px #e9c46a; }
.bp-pray-more{ white-space: nowrap; font-size: .9em; }
.rd{ max-width: 760px; margin: 0 auto; padding: 40px 20px 64px; }
.rd h1{ font-family: var(--serif); font-size: clamp(30px, 4.5vw, 40px); letter-spacing: 0.06em; margin: 0 0 6px; color: var(--navy, #14213d); }
.rd-head{ text-align: center; margin-bottom: 18px; }
.rd-verse{ font-family: var(--serif); color: var(--text-2); font-size: 17px; margin: 0 0 18px; }
.rd-plans{ display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-bottom: 10px; }
.rd-plans button{ font: inherit; font-size: 16px; padding: 6px 14px; border-radius: 980px; border: 1px solid var(--line); background: #fff; cursor: pointer; }
.rd-plans button[aria-pressed="true"]{ background: var(--navy, #14213d); border-color: var(--navy, #14213d); color: #fff; }
.rd-plan-info{ color: var(--text-2); font-size: 16px; margin: 0 0 6px; }
.rd-guest{ background: var(--cream, #fbf6ee); border: 1px solid var(--line); border-radius: 10px; padding: 10px 14px; font-size: 16px; color: var(--text-2); }
.rd-status{ text-align: center; color: var(--text-2); }
.rd-next{ text-align: center; color: var(--text-2); font-size: 16px; margin: 0 0 14px; }
.rd-day{ background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 20px 22px; margin-bottom: 18px; }
.rd-day header{ border-bottom: 1px solid var(--line); padding-bottom: 12px; margin-bottom: 14px; }
.rd-date{ margin: 0; color: var(--gold, #b8914a); font-size: 15px; font-weight: 500; }
.rd-day h2{ font-family: var(--serif); font-size: 26px; margin: 2px 0 8px; letter-spacing: 0.04em; }
.rd-links{ display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 0; font-size: 16px; }
.rd-links a{ font-weight: 500; }
.rd-file{ display: inline-flex; align-items: center; gap: 4px; }
.rd-file .link-btn{ color: var(--text-2); font-size: 14px; }
.rd-two{ display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 16px; }
.rd-big{ display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 18px; border-radius: 12px; border: 1px solid var(--gold, #b8914a); background: var(--cream, #fbf6ee); color: var(--navy, #14213d); font-size: 17px; font-weight: 600; flex: 1 1 200px; text-align: center; }
.rd-big:hover{ text-decoration: none; background: #f6ecd9; }
.rd-big-pdf{ border-color: var(--navy, #14213d); }
.rd-scripture{ border-bottom: 1px solid var(--line); padding-bottom: 8px; margin-bottom: 14px; }
.rd-oneday header{ margin-bottom: 12px; }
.rd-sharelink{ font: inherit; display: inline-flex; align-items: center; min-height: 34px; padding: 0 14px; border-radius: 980px; border: 0; background: var(--navy, #14213d); color: #fff; font-size: 15px; font-weight: 500; cursor: pointer; }
.rd-sharelink:disabled{ opacity: 0.6; }
.rd-upload{ display: inline-flex; align-items: center; min-height: 34px; padding: 0 12px; border-radius: 980px; border: 1px dashed var(--link); color: var(--link); font-size: 15px; font-weight: 500; cursor: pointer; }
.rd-upload:focus-within{ outline: 2px solid var(--link); outline-offset: 2px; }
.rd-who{ margin: 0 0 6px; color: var(--text-2); font-size: 15px; }
.rd-who b{ color: var(--text); }
.rd-text p{ margin: 0 0 0.7em; line-height: 1.75; font-size: 17px; }
.rd-share{ margin-bottom: 8px; }
.rd-share-form textarea, .rd-reply-form textarea, .rd-form input:not([type="checkbox"]), .rd-form select, .rd-form textarea{ font: inherit; font-size: 16px; width: 100%; box-sizing: border-box; padding: 8px 10px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.rd-replies{ border-top: 1px dashed var(--line); padding-top: 10px; }
.rd-replies h3{ font-size: 15px; color: var(--text-2); margin: 0 0 8px; font-weight: 600; }
.rd-reply{ padding: 8px 0; border-bottom: 1px solid var(--gray, #f6f2ea); }
.rd-reply .rd-text p{ font-size: 16px; line-height: 1.65; margin-bottom: 0.4em; }
.rd-r-who{ margin: 0 0 2px; font-size: 14px; color: var(--text-2); }
.rd-reply-form{ display: flex; gap: 8px; align-items: flex-end; margin-top: 10px; }
.rd-reply-form textarea{ flex: 1; }
.rd-primary{ background: var(--navy, #14213d); border-color: var(--navy, #14213d); color: #fff; }
.rd-primary:hover{ background: #22345c; }
.rd-more-wrap{ text-align: center; }
.rd-back{ margin: 0 0 8px; }
.rd-badge{ display: inline-block; font-size: 13px; padding: 1px 8px; border-radius: 980px; background: var(--gray, #f6f2ea); color: var(--text-2); vertical-align: middle; }
.rd-mplan{ border: 1px solid var(--line); border-radius: 12px; padding: 14px 18px; margin-bottom: 14px; background: #fff; }
.rd-mplan.is-archived{ opacity: 0.7; }
.rd-macts{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; }
.rd-del{ margin-left: auto; color: #b00020; }
.rd-mplan h2{ font-size: 21px; margin: 0 0 6px; }
.rd-mplan p{ margin: 0 0 6px; font-size: 16px; color: var(--text-2); }
.rd-form{ border: 1px solid var(--line); border-radius: 14px; padding: 18px 20px; background: #fff; margin-top: 10px; }
.rd-form h2{ margin: 0 0 12px; font-size: 22px; }
.rd-field{ display: block; margin-bottom: 12px; }
.rd-field > span{ display: block; font-size: 15px; color: var(--text-2); margin-bottom: 4px; }
.rd-row{ display: flex; flex-wrap: wrap; gap: 0 12px; }
.rd-row .rd-field{ flex: 1 1 180px; }
.rd-row .rd-narrow, .rd-narrow{ flex: 0 1 140px; max-width: 220px; }
.rd-leaders{ list-style: none; margin: 0 0 8px; padding: 0; display: grid; gap: 6px; }
.rd-leaders li{ display: grid; grid-template-columns: 26px 1fr auto; grid-template-areas: "n name acts" "n email acts"; gap: 0 8px; align-items: center; padding: 6px 8px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.rd-leaders li.rd-l-none{ display: block; border-style: dashed; }
.rd-l-n{ grid-area: n; font-weight: 700; color: var(--gold, #b8914a); text-align: center; }
.rd-leaders .rd-l-name{ grid-area: name; font: inherit; font-size: 16px; padding: 4px 6px; border: 1px solid transparent; border-radius: 6px; width: 100%; box-sizing: border-box; }
.rd-leaders .rd-l-name:hover, .rd-leaders .rd-l-name:focus{ border-color: var(--line); }
.rd-leaders small{ grid-area: email; color: var(--text-2); font-size: 13px; padding-left: 7px; overflow-wrap: anywhere; }
.rd-l-acts{ grid-area: acts; display: inline-flex; gap: 2px; }
.rd-l-acts .ss-icon-btn{ width: 32px; height: 32px; min-width: 0; padding: 0; font-size: 15px; }
.rd-l-acts .ss-icon-btn:disabled{ opacity: 0.3; }
.rd-check input{ width: auto; margin-right: 6px; }
.rd-hint{ color: #b00020; font-size: 15px; margin: -4px 0 8px; }
.rd-started{ margin: -4px 0 12px; padding: 10px 14px; border: 1px dashed var(--line); border-radius: 10px; }
.rd-started > summary{ cursor: pointer; font-size: 15px; color: var(--link); }
.rd-started[open] > summary{ margin-bottom: 10px; }
.rd-hint-ok{ color: var(--navy, #14213d); font-size: 15px; font-weight: 600; margin: 0 0 4px; }
.rd-check{ display: block; margin: 0 0 12px; font-size: 16px; }
.rd-form-acts{ display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: center; margin: 4px 0 0; }
@media (max-width: 600px){.rd{ padding: 24px 14px 48px; }
.rd-day{ padding: 16px; }
.rd-day h2{ font-size: 23px; }
.rd-reply-form{ flex-direction: column; align-items: stretch; }
}
.rc{ --rc-step: 0; max-width: 680px; margin: 0 auto; padding: 18px 20px 56px; }
.rc-top{ display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 14px; }
.rc-back{ font-size: 17px; }
.rc-size{ display: inline-flex; border: 1px solid var(--line); border-radius: 980px; overflow: hidden; }
.rc-size button{ font: inherit; font-size: 16px; min-width: 48px; min-height: 40px; border: 0; background: #fff; cursor: pointer; color: var(--text); }
.rc-size button + button{ border-left: 1px solid var(--line); }
.rc-plan{ margin: 0; color: var(--gold, #b8914a); font-size: 15px; font-weight: 500; }
.rc-title{ font-family: var(--serif); font-size: calc(30px + var(--rc-step) * 2px); margin: 2px 0 12px; letter-spacing: 0.05em; color: var(--navy, #14213d); }
.rc-notes{ margin: 0 0 18px; display: flex; flex-wrap: wrap; gap: 8px; }
.rc-notes-btn{ display: inline-flex; align-items: center; min-height: 42px; padding: 0 16px; border-radius: 10px; border: 1px solid var(--line); background: var(--cream, #fbf6ee); font-size: 16px; font-weight: 500; }
button.rc-notes-btn{ font: inherit; font-size: 16px; font-weight: 500; color: var(--link); cursor: pointer; }
.rc-notes-btn:hover{ text-decoration: none; border-color: var(--gold, #b8914a); }
.rc-text{ font-family: var(--serif); font-size: calc(19px + var(--rc-step, 0) * 2px); line-height: 1.95; color: var(--text); }
.rc-text p{ margin: 0 0 0.9em; text-align: justify; }
.rc-text .rc-q{ text-align: left; padding-left: 1.2em; }
.rc-h{ font-family: var(--font); font-size: calc(17px + var(--rc-step, 0) * 1px); font-weight: 700; color: var(--navy, #14213d); margin: 1.4em 0 0.5em; letter-spacing: 0.04em; }
.rc-text > .rc-h:first-child{ margin-top: 0.4em; }
.rc-d{ font-size: 0.88em; color: var(--text-2); font-style: italic; }
.rc-v sup{ font-family: var(--font); font-size: 0.58em; color: var(--gold, #b8914a); font-weight: 600; margin: 0 0.15em 0 0.25em; vertical-align: 0.55em; line-height: 0; }
.rc-v:target{ background: rgba(243, 199, 126, 0.3); border-radius: 4px; }
.rc-lang{ display: inline-flex; border: 1px solid var(--line); border-radius: 980px; overflow: hidden; margin: 0 0 14px; }
.rc-lang button{ font: inherit; font-size: 15px; padding: 7px 14px; border: 0; background: #fff; cursor: pointer; color: var(--text); }
.rc-lang button + button{ border-left: 1px solid var(--line); }
.rc-lang button[aria-pressed="true"]{ background: var(--navy, #14213d); color: #fff; }
.rc-pair{ margin: 0 0 0.9em; }
.rc-pair p{ margin: 0; text-align: left; }
.rc-en{ font-family: Georgia, "Times New Roman", serif; font-size: 0.86em; line-height: 1.6; color: #3d3a35; margin-top: 0.15em !important; }
.rc-en sup, .rc-zh sup{ font-family: var(--font); font-size: 0.6em; color: var(--gold, #b8914a); font-weight: 600; margin-right: 0.25em; vertical-align: 0.5em; line-height: 0; }
.rc-body[data-mode="both"] .rc-en sup{ display: none; }
.rc-body[data-mode="en"] .rc-zh, .rc-body[data-mode="en"] .rc-h, .rc-body[data-mode="en"] .rc-d{ display: none; }
.rc-body[data-mode="en"] .rc-en{ font-size: 1em; line-height: 1.75; color: var(--text); }
.rc-pair:target{ background: rgba(243, 199, 126, 0.3); border-radius: 4px; }
.rc-pager{ display: flex; justify-content: space-between; gap: 12px; margin: 28px 0 0; padding-top: 16px; border-top: 1px solid var(--line); font-size: 16px; }
.rc-pager a[data-rc-next]{ margin-left: auto; text-align: right; }
.rc-source{ margin: 22px 0 0; font-size: 13px; color: var(--text-2); text-align: center; }
@media (max-width: 600px){.rc{ padding: 12px 16px 48px; }
}
.rd-lib{ padding-top: 8px; }
.rd-lib h2{ font-size: 24px; margin: 0 0 6px; }
.rd-lib-table{ width: 100%; border-collapse: collapse; font-size: 15px; margin: 6px 0; }
.rd-lib-table th{ text-align: left; font-weight: 600; color: var(--text-2); padding: 4px; border-bottom: 1px solid var(--line); }
.rd-lib-table td{ padding: 4px; border-bottom: 1px solid var(--gray, #f6f2ea); vertical-align: middle; }
.rd-lib-table select, .rd-lib-table input{ font: inherit; font-size: 15px; padding: 4px 6px; border: 1px solid var(--line); border-radius: 6px; background: #fff; max-width: 9em; }
.rd-lib-table input{ width: 4.5em; }
.rd-lib-table tr.is-done{ color: var(--text-2); }
.rd-q-name{ overflow-wrap: anywhere; }
.rd-lib-book{ border: 1px solid var(--line); border-radius: 10px; padding: 8px 12px; margin-bottom: 8px; background: #fff; }
.rd-lib-book summary{ cursor: pointer; font-weight: 600; }
.rd-lib-book ul{ list-style: none; margin: 8px 0 0; padding: 0; display: grid; gap: 4px; font-size: 15px; }
.rd-lib-book .rd-del{ margin-left: 0; }
.sd-share{ display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; margin: 0 0 16px; padding: 10px 14px; border: 1px dashed var(--line); border-radius: 12px; font-size: 15px; }
.sd-share [data-sd-share-body]{ display: inline-flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; flex: 1 1 260px; }
.sd-share input{ flex: 1 1 220px; font: inherit; font-size: 14px; padding: 6px 8px; border: 1px solid var(--line); border-radius: 8px; background: var(--gray, #f6f2ea); }
.sd-public{ max-width: 820px; margin: 0 auto; padding: 28px 18px 56px; }
.sd-status{ text-align: center; color: var(--text-2); }
.rm-slot{ font: inherit; font-size: 14px; padding: 5px 12px; border-radius: 980px; border: 1px solid #2f7d4f; background: #eef7f1; color: #1f5c39; cursor: pointer; }
.rm-slot:hover{ background: #dff0e6; }
.rm-slot:disabled{ cursor: default; }
.dt{ max-width: 760px; margin: 0 auto; padding: 28px 18px 56px; }
.dt h1{ font-family: var(--serif); font-size: clamp(28px, 4vw, 36px); margin: 4px 0 4px; color: var(--navy, #14213d); }
.ab-eyebrow a[data-es-back], .ab-eyebrow a[data-rn-back]{ color: inherit; }
#sg-app.is-sg-readonly button:not([data-sg-tab]):not([data-sg-edit]):not(.sg-will button), #sg-app.is-sg-readonly .sg-addlead{ display: none; }
#sg-app.is-sg-readonly [data-sg-edit], #sg-app.is-sg-readonly .sg-will button{ pointer-events: none; }
.kreg-invite{ margin: 0 0 18px; padding: 12px 16px; border-radius: 12px; background: #fffaf0; border: 1px solid #e3c98c; color: #5a3d0c; font-size: 17px; line-height: 1.7; }
.kreg-invite.is-warn{ background: #fde2e2; border-color: #f0b4b4; color: #a31d1d; }
.pw-main{ display: flex; justify-content: center; gap: 36px; max-width: 760px; margin: 34px auto 0; padding: 0 16px; border-bottom: 1px solid var(--rule); }
.pw-main button, .pw-main a{ position: relative; padding: 10px 2px 12px; border: 0; background: none; color: var(--ink-2); font: inherit; font-family: var(--serif); font-size: 21px; letter-spacing: .06em; cursor: pointer; text-decoration: none; }
.pw-main a[hidden]{ display: none; }
.pw-main button[aria-selected="true"]{ color: var(--ink); font-weight: 700; }
.pw-main button[aria-selected="true"]::after{ content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 3px; background: var(--primary); }
.pw-main-n{ display: inline-block; min-width: 20px; margin-left: 6px; padding: 0 6px; border-radius: 999px; background: var(--primary); color: #fff; font-family: inherit; font-size: 13px; font-weight: 600; line-height: 20px; letter-spacing: 0; text-align: center; vertical-align: 2px; }
.pw-main-n[hidden]{ display: none; }
.pw-panel{ padding-top: 22px; }
.pw-panel[hidden]{ display: none; }
.pw-panel .pw-church{ margin-top: 0; }
.pw-panel .pw-body{ margin-top: 0 !important; padding-top: 0 !important; }
.pw-panel .pw-church-date{ font-family: var(--serif); font-size: 19px; color: var(--ink); }
.pw-panel .pw-listhead .pw-note{ margin: 0; }
.pw-admin{ display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 10px; max-width: 760px; margin: 0 auto 18px; padding: 0 16px; font-size: 15px; }
.pw-admin[hidden], .pw-admin a[hidden]{ display: none; }
.pw-admin a{ color: var(--link); text-decoration: none; }
.pw-admin a:hover{ text-decoration: underline; }
.pw-review{ margin: 0 0 18px; text-align: center; font-size: 15px; }
.pw-review > summary{ display: inline-block; color: var(--link); cursor: pointer; list-style: none; }
.pw-review > summary::-webkit-details-marker{ display: none; }
.pw-review > summary:hover{ text-decoration: underline; }
.pw-review[open]{ padding: 14px 16px 18px; border: 1px solid var(--rule); border-radius: 14px; background: #fff; text-align: left; }
.pw-review[open] > summary{ margin-bottom: 12px; }
@media (max-width: 480px){.pw-main{ gap: 18px; margin-top: 24px; }
.pw-main button, .pw-main a{ font-size: 18px; letter-spacing: .02em; }
}
.rd-switch{ display: flex; justify-content: center; gap: 36px; max-width: 760px; margin: 18px auto 0; padding: 0 16px; border-bottom: 1px solid var(--rule); }
.rd-switch[hidden]{ display: none; }
.rd-switch a{ position: relative; padding: 8px 2px 10px; color: var(--ink-2); font-family: var(--serif); font-size: 19px; letter-spacing: .06em; text-decoration: none; }
.rd-switch a[aria-current="page"]{ color: var(--ink); font-weight: 700; }
.rd-switch a[aria-current="page"]::after{ content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 3px; background: var(--primary); }
.mz-hero.lx-slim{ grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 36px; padding: 28px 24px 24px; }
.lx-slim .mz-title{ font-size: clamp(32px, 4.4vw, 46px); margin-bottom: 4px; }
.lx-slim .mz-hero-img{ aspect-ratio: 16 / 9; max-height: 210px; border-radius: 12px; }
.lx-slim .mz-verse{ margin-bottom: 0; }
.pw-main.lx-tabs{ max-width: none; margin: 0; padding: 16px 16px 0; align-items: center; gap: 22px; border-bottom: 0; background: #f7efe2; }
.pw-main.lx-tabs[hidden]{ display: none; }
.lx-tabs button.pub-manage, .pw-main.lx-tabs a.pub-manage{ margin: 0; font-family: inherit; font-size: 16px; letter-spacing: 0; }
.lx-tabs button.pub-manage[hidden]{ display: none; }
.lx-tabs button.pub-manage[aria-selected="true"]{ background: #fff; color: var(--primary); }
.lx-tabs button.pub-manage[aria-selected="true"]::after{ content: none; }
.lx-tabs:not([hidden]) ~ .lx-menu .lx-menu-head{ display: none; }
.lx-menu[hidden], .lx-grace[hidden], .lx-manage[hidden]{ display: none; }
.lx-tabs:not([hidden]) ~ .lx-menu{ padding-top: 24px; }
.lx-manage{ padding: 22px 16px 56px; background: #f7efe2; }
.lx-manage-in{ max-width: 980px; margin: 0 auto; padding: 22px 24px 26px; border-radius: 18px; border: 1px solid #ead9bb; background: #fffdf8; }
.lu-empty{ max-width: 560px; margin: 8px auto 22px; padding: 26px 22px; border-radius: 18px; border: 1px solid #ead9bb; background: #fffdf8; text-align: center; }
.lu-empty .lu-lede{ margin-bottom: 6px; font-family: var(--serif); font-size: 23px; color: #3a1f0b; }
.lu-empty .muted{ margin: 0; }
.lx-menu .lu-score{ margin-top: 22px; }
.lx-menu{ padding-bottom: 36px; }
@media (max-width: 760px){.mz-hero.lx-slim{ grid-template-columns: minmax(0, 1fr); gap: 14px; padding: 22px 20px 18px; }
.lx-slim .mz-hero-img{ grid-row: 2; max-height: 170px; }
.pw-main.lx-tabs{ flex-wrap: wrap; gap: 10px 14px; }
.lx-manage-in{ padding: 16px 12px 20px; }
}
.sv-type-list{ list-style: none; margin: 8px 0 12px; padding: 0; display: grid; gap: 6px; }
.sv-type-list li{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; padding: 6px 0; border-bottom: 1px solid #efe4cd; }
.sv-type-list li > span{ min-width: 7em; font-weight: 600; }
.sv-look{ display: grid; gap: 4px; max-width: 420px; margin-bottom: 4px; }
.sv-h4{ margin: 16px 0 6px; font-size: 16px; }
.sv-pics{ margin: 4px 0 8px; padding: 10px 14px 12px; border: 1px solid #ead9bb; border-radius: 14px; }
.sv-pics legend{ padding: 0 6px; font-weight: 600; }
.sv-pics-grid{ display: flex; flex-wrap: wrap; gap: 10px; }
.sv-pic{ position: relative; display: grid; justify-items: center; gap: 4px; width: 88px; cursor: pointer; font-size: 13px; color: var(--ink-2); }
.sv-pic input{ position: absolute; opacity: 0; }
.sv-pic img, .sv-pic-none{ display: block; width: 76px; height: 76px; border-radius: 50%; object-fit: cover; border: 3px solid transparent; box-shadow: 0 0 0 1px #e2d3b6; }
.sv-pic-none{ background: linear-gradient(135deg, transparent 48.5%, #c9b48a 49% 51%, transparent 51.5%), #f6f1e7; }
.sv-pic.is-on img, .sv-pic.is-on .sv-pic-none{ border-color: var(--primary); }
.sv-pic.is-on small{ color: var(--primary); font-weight: 600; }
.sv-pic:focus-within img, .sv-pic:focus-within .sv-pic-none{ outline: 2px solid var(--primary); outline-offset: 2px; }
.sv-pics-own{ display: grid; gap: 4px; margin-top: 10px; max-width: 420px; }
.sv-type-list select{ padding: 6px 10px; border: 1px solid var(--line); border-radius: 8px; font: inherit; font-size: 15px; background: #fff; color: var(--ink); }
.sv-body{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 380px); gap: 26px; align-items: start; }
.sv-side .sv-manage{ margin-top: 0; position: sticky; top: 76px; }
.sv-plan{ list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--rule); }
.sv-plan li{ display: grid; grid-template-columns: 10em minmax(0, 1fr); gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--rule); }
.sv-plan b{ color: var(--primary); }
.sv-groups{ margin: 2px 0 0; font-size: 15px; color: #7a4e14; }
.sv-ended{ margin: 0 0 14px; padding: 10px 14px; border-radius: 10px; background: #f3ece0; color: var(--ink-2); }
.sv-editor[hidden], .sv-page[hidden]{ display: none; }
.sv-form{ max-height: none; }
.sv-form .ss-grid2{ margin-bottom: 10px; }
.sv-form-body > label{ display: grid; gap: 4px; margin-bottom: 10px; }
.sv-form-foot{ position: sticky; bottom: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 18px 0 0; padding: 12px 0; border-top: 1px solid var(--rule); background: var(--paper); }
@media (max-width: 860px){.sv-body{ grid-template-columns: minmax(0, 1fr); }
.sv-side .sv-manage{ position: static; }
}
@media (max-width: 560px){.sv-plan li{ grid-template-columns: 7.5em minmax(0, 1fr); }
}
.sv-manage{ margin: 18px 0 8px; padding: 6px 20px 18px; border: 1px solid #ead9bb; border-radius: 16px; background: #fffdf8; }
.sv-link{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; padding: 12px 0; border-top: 1px solid #efe4cd; }
.sv-link > div:first-child{ display: grid; gap: 2px; min-width: 0; flex: 1 1 280px; }
.sv-link code{ font-size: 13px; color: var(--ink-2); overflow-wrap: anywhere; }
.sv-link-acts{ display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.sj-page{ --sj-bg: var(--paper); --sj-ink: var(--ink); --sj-soft: var(--ink-2); --sj-gold: #a0703a; --sj-line: var(--rule); --sj-card: #fffdf8; background: var(--sj-bg); color: var(--sj-ink); }
.is-plum{ --sj-bg: #34122b; --sj-bgi: radial-gradient(120% 90% at 30% 0%, #4a1a3d 0%, #34122b 55%, #26091f 100%); --sj-ink: #f6ecdc; --sj-soft: #e6d6c2;
  --sj-gold: #e3b24c; --sj-title: #e3b24c; --sj-line: rgba(227, 178, 76, .35); --sj-card: rgba(255, 255, 255, .06); --sj-btn: #e3b24c; --sj-btn-ink: #34122b; }
.is-xmas{ --sj-bg: #10392b; --sj-bgi: radial-gradient(120% 90% at 30% 0%, #1d5a43 0%, #10392b 55%, #0a281e 100%); --sj-ink: #f7f0e3; --sj-soft: #dfe5da;
  --sj-gold: #e2b85a; --sj-title: #f1d38a; --sj-line: rgba(226, 184, 90, .38); --sj-card: rgba(255, 255, 255, .06); --sj-btn: #b8322f; --sj-btn-ink: #fff; }
.is-easter{ --sj-bg: #fffdf8; --sj-bgi: linear-gradient(180deg, #ffffff 0%, #fbf5e6 100%); --sj-ink: #2e2618; --sj-soft: #5e513d;
  --sj-gold: #b38a35; --sj-title: #8c6a22; --sj-line: rgba(179, 138, 53, .38); --sj-card: #fff; --sj-btn: #b38a35; --sj-btn-ink: #fff; }
.is-outdoor{ --sj-bg: #e9f3f0; --sj-bgi: linear-gradient(180deg, #f3f9f7 0%, #dcebe6 100%); --sj-ink: #15332d; --sj-soft: #3b5a53;
  --sj-gold: #2f7d6d; --sj-title: #1f5d50; --sj-line: rgba(47, 125, 109, .3); --sj-card: #fff; --sj-btn: #2f7d6d; --sj-btn-ink: #fff; }
.is-solemn{ --sj-bg: #f4f3f0; --sj-bgi: #f4f3f0; --sj-ink: #262624; --sj-soft: #4f4e4a;
  --sj-gold: #6d6a63; --sj-title: #2f2e2b; --sj-line: #d3cfc7; --sj-card: #fff; --sj-btn: #45433f; --sj-btn-ink: #fff; }
.is-spring{ --sj-bg: #7e1416; --sj-bgi: radial-gradient(120% 90% at 30% 0%, #9b1c1f 0%, #7e1416 55%, #5c0c0f 100%); --sj-ink: #fff4e0; --sj-soft: #f6dcc0;
  --sj-gold: #f0c25a; --sj-title: #f6d27a; --sj-line: rgba(240, 194, 90, .45); --sj-card: rgba(255, 255, 255, .07); --sj-btn: #f0c25a; --sj-btn-ink: #6a0f12; }
.is-moon{ --sj-bg: #121c36; --sj-bgi: radial-gradient(120% 90% at 30% 0%, #1d2a4d 0%, #121c36 55%, #0b1226 100%);
  --sj-ink: #eef1f8; --sj-soft: #c9d2e6; --sj-gold: #f2d58a; --sj-title: #f6e3a8; --sj-line: rgba(242, 213, 138, .32); --sj-card: rgba(255, 255, 255, .06); --sj-btn: #f2d58a; --sj-btn-ink: #121c36; }
.is-dawn{ --sj-bg: #fff7ef; --sj-bgi: linear-gradient(180deg, #fde2c8 0%, #fff1e2 40%, #fffaf4 100%); --sj-ink: #3a2414; --sj-soft: #6b4a33;
  --sj-gold: #c8692b; --sj-title: #8a3f12; --sj-line: rgba(200, 105, 43, .3); --sj-card: #fff; --sj-btn: #c8692b; --sj-btn-ink: #fff; }
.is-newyear{ --sj-bg: #0d1630; --sj-bgi: radial-gradient(120% 90% at 50% 0%, #1b2a52 0%, #0d1630 60%, #070c1c 100%); --sj-ink: #f2efe8; --sj-soft: #cfd3de;
  --sj-gold: #e9c46a; --sj-title: #f1d58f; --sj-line: rgba(233, 196, 106, .32); --sj-card: rgba(255, 255, 255, .06); --sj-btn: #e9c46a; --sj-btn-ink: #0d1630; }
.sj-page.has-look{ background: var(--sj-bgi); }
.sj-page.is-spring .sj{ box-shadow: inset 0 0 0 5px transparent, inset 0 0 0 6px rgba(240, 194, 90, .55); }
.sj-page.is-moon .sj{ background: radial-gradient(circle at 92% 64px, rgba(246, 227, 168, .9) 0 26px, rgba(246, 227, 168, .14) 27px 58px, transparent 59px); }
.sj-page.is-dawn .sj{ border-top: 6px solid #e9a066; }
.sj-page.is-newyear .sj{ border-top: 2px solid #e9c46a; border-bottom: 2px solid #e9c46a; }
.sj-page.is-xmas .sj{ border-top: 6px solid #b8322f; }
.sj-page.is-easter .sj{ box-shadow: inset 0 0 0 6px #fff, inset 0 0 0 7px rgba(179, 138, 53, .45); }
.sj-preview-bar{ position: sticky; top: 0; z-index: 5; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; max-width: 1040px; margin: 0 auto 12px; padding: 10px 16px; border-radius: 12px; background: #fff3d6; color: #3b2a12; border: 1px solid #e3c98a; }
.sj-preview-bar p{ margin: 0; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.sj-preview-bar [aria-pressed="true"]{ outline: 3px solid #3b2a12; outline-offset: 1px; }
.sj{ max-width: 1040px; margin: 0 auto; padding: 40px 22px 56px; }
.sj-page.has-look{ padding: 22px 16px; }
.has-look .sj{ border: 1px solid var(--sj-line); border-radius: 6px; }
.sj-head{ text-align: center; }
.sj-church{ display: flex; align-items: center; justify-content: center; gap: 16px; margin: 0; font-family: "Cormorant Garamond", var(--serif); font-size: 15px; letter-spacing: .32em; text-transform: uppercase; color: var(--sj-gold); }
.sj-church::before, .sj-church::after{ content: ""; width: 56px; height: 1px; background: var(--sj-gold); opacity: .7; }
.sj-head h1{ margin: 10px 0 2px; font-family: var(--serif); font-weight: 700; font-size: clamp(32px, 6vw, 58px); letter-spacing: .04em; color: var(--sj-ink); }
.has-look .sj-head h1{ color: var(--sj-title); }
.sj-sub{ margin: 0; font-family: "Cormorant Garamond", serif; font-style: italic; font-size: clamp(19px, 2.6vw, 26px); color: var(--sj-gold); }
.sj-sub[hidden]{ display: none; }
.sj-hero{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 34px; align-items: center; margin: 30px 0 0; }
.sj-hero:has(.sj-right[hidden]){ grid-template-columns: minmax(0, 1fr); max-width: 640px; margin-left: auto; margin-right: auto; }
.sj-date{ display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 16px; margin: 0; padding-bottom: 14px; border-bottom: 1px solid var(--sj-line); }
.sj-date b{ font-family: var(--serif); font-size: clamp(28px, 4vw, 40px); color: var(--sj-ink); }
.sj-date span{ font-size: 18px; color: var(--sj-gold); font-weight: 600; }
.sj-plan{ list-style: none; margin: 0; padding: 0; }
.sj-plan[hidden]{ display: none; }
.sj-plan li{ display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 16px; padding: 16px 0; border-bottom: 1px solid var(--sj-line); }
.sj-plan-what{ display: grid; }
.sj-plan-what b{ font-family: var(--serif); font-size: clamp(21px, 2.6vw, 28px); color: var(--sj-ink); }
.sj-plan-what i{ font-family: "Cormorant Garamond", serif; font-size: 18px; color: var(--sj-soft); }
.sj-plan-time{ font-family: "Cormorant Garamond", serif; font-weight: 600; font-size: clamp(24px, 3.4vw, 38px); color: var(--sj-gold); white-space: nowrap; }
.sj-right{ position: relative; display: flex; align-items: center; justify-content: center; }
.sj-right[hidden], .sj-photo[hidden], .sj-verse[hidden]{ display: none; }
.sj-photo{ margin: 0; width: min(60%, 300px); aspect-ratio: 1; border-radius: 50%; padding: 6px; border: 2px solid var(--sj-gold); flex: none; }
.sj-photo img{ display: block; width: 100%; height: 100%; border-radius: 50%; object-fit: cover; }
.sj-verse{ flex: 1 1 0; min-width: 0; margin: 0 0 0 -40px; padding: 18px 22px 16px 54px; border: 1px solid var(--sj-line); border-radius: 0 999px 999px 0; background: var(--sj-card); }
.sj-photo[hidden] + .sj-verse{ margin: 0; border-radius: 16px; padding-left: 22px; max-width: 360px; }
.sj-verse p{ margin: 0; font-family: var(--serif); font-size: 18px; line-height: 1.7; color: var(--sj-ink); }
.sj-verse cite{ display: block; margin-top: 6px; font-style: normal; font-size: 15px; color: var(--sj-gold); }
.sj-about{ max-width: 760px; margin: 26px auto 0; font-size: 18px; line-height: 1.8; color: var(--sj-soft); }
.sj-about p{ margin: 0 0 8px; }
.sj-form{ display: grid; gap: 14px; max-width: 640px; margin: 28px auto 0; padding: 22px 22px 24px; border: 1px solid var(--sj-line); border-radius: 18px; background: var(--sj-card); }
.sj-kicker{ margin: 0 0 -8px; font-size: 14px; letter-spacing: .24em; color: var(--sj-gold); }
.sj-form[hidden], .sj-done[hidden], .sj-roles[hidden], .sj-row[hidden], .sj-form label[hidden]{ display: none; }
.sj-form h2, .sj-done h2{ margin: 0; font-family: var(--serif); font-size: 26px; color: var(--sj-ink); }
.sj-row{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.sj-form > label, .sj-row label{ display: grid; gap: 4px; font-size: 16px; color: var(--sj-soft); }
.sj-form input:not([type=radio]){ padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; font: inherit; min-width: 0; background: #fff; color: #2b2118; }
.has-look .sj-form .pill{ background: var(--sj-btn); color: var(--sj-btn-ink); }
.has-look .sj-form .am-status{ color: var(--sj-soft); }
.sj-roles{ display: grid; gap: 8px; }
.sj-role{ position: relative; display: block; cursor: pointer; }
.sj-role input{ position: absolute; opacity: 0; }
.sj-role-in{ display: grid; gap: 2px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 12px; background: #fff; color: #2b2118; }
.sj-role-in small{ color: var(--primary); font-size: 14px; }
.sj-role-about{ display: none; margin-top: 4px; font-size: 15px; line-height: 1.6; color: var(--ink-2); }
.sj-role input:checked + .sj-role-in{ border-color: var(--primary); box-shadow: 0 0 0 2px var(--sj-gold); }
.sj-role input:checked + .sj-role-in .sj-role-about{ display: block; }
.sj-role input:focus-visible + .sj-role-in{ outline: 2px solid var(--sj-gold); outline-offset: 2px; }
.sj-role.is-full{ opacity: .5; cursor: default; }
.sj-send{ display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.sj-done{ max-width: 640px; margin: 28px auto 0; padding: 26px 22px; border: 1px solid var(--sj-line); border-radius: 18px; background: var(--sj-card); text-align: center; }
.sj-done p{ margin: 8px 0 0; font-size: 18px; color: var(--sj-soft); }
.sj-foot{ margin: 34px 0 0; padding-top: 18px; border-top: 1px solid var(--sj-line); text-align: right; }
.sj-foot p{ margin: 0; color: var(--sj-soft); font-size: 16px; }
.sj-foot .sj-foot-name{ font-family: "Cormorant Garamond", serif; font-size: 24px; color: var(--sj-gold); }
.sj-foot .sj-foot-en{ font-family: "Cormorant Garamond", serif; font-style: italic; font-size: 18px; }
@media (max-width: 760px){.sj{ padding: 28px 16px 40px; }
.sj-page.has-look{ padding: 10px; }
.sj-hero{ grid-template-columns: minmax(0, 1fr); gap: 22px; }
.sj-right{ flex-direction: column; }
.sj-photo{ width: min(78%, 280px); }
.sj-verse, .sj-photo[hidden] + .sj-verse{ flex: none; margin: -26px 0 0; padding: 30px 20px 16px; border-radius: 18px; max-width: 100%; text-align: center; }
.sj-row{ grid-template-columns: minmax(0, 1fr); }
.sj-foot{ text-align: center; }
.sj-church{ font-size: 12px; letter-spacing: .16em; }
.sj-church::before, .sj-church::after{ width: 16px; }
}
.phx-grid.is-flow{ --h: 170px; display: flex; flex-wrap: wrap; gap: 4px; }
.phx-grid.is-flow::after{ content: ""; flex: 999 1 0; }
.phx-grid.is-flow > li{ flex: var(--r) 1 calc(var(--r) * var(--h)); height: var(--h); max-width: calc(var(--r) * var(--h) * 1.7); min-width: 0; }
.phx-grid.is-flow .phx-cell{ height: 100%; aspect-ratio: auto; border-radius: 3px; }
@media (min-width: 1100px){.phx-grid.is-flow{ --h: 190px; }
}
@media (max-width: 640px){.phx-grid.is-flow{ --h: 110px; gap: 2px; }
}
.alu-gallery{ margin: 24px 0 0; }
.alu.is-album{ max-width: 1100px; }
.alu-view{ width: 100vw; height: 100dvh; max-width: none; max-height: none; margin: 0; padding: 0; border: 0; background: #000; color: #fff; }
.alu-view[open]{ display: grid; grid-template-rows: auto 1fr; }
.alu-view-top{ display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 14px; }
.alu-view-top button, .alu-view-top a{ border: 0; background: none; color: #fff; font: inherit; cursor: pointer; text-decoration: none; }
.alu-stage{ position: relative; min-height: 0; display: grid; place-items: center; }
.alu-stage img, .alu-stage video{ max-width: 100%; max-height: 100%; object-fit: contain; }
.alu-nav{ position: absolute; top: 50%; transform: translateY(-50%); width: 44px; height: 64px; border: 0; background: rgba(255, 255, 255, .12); color: #fff; font-size: 24px; cursor: pointer; }
.alu-prev{ left: 8px; }
.alu-next{ right: 8px; }
@media (hover: none){.alu-nav{ display: none; }
}
.bp-give-ways{ list-style: none; margin: 10px auto; padding: 0; text-align: center; font-size: 17px; line-height: 1.9; }
.bp-give-ways b{ margin-right: 8px; }
.kc-class{ border: 1px solid var(--line); border-radius: 14px; padding: 12px 16px; background: #fff; }
.kc-class.is-off{ opacity: .6; }
.kc-class > header{ display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; margin: 0 0 6px; }
.kc-class > header h3{ margin: 0; font-size: 20px; }
.kc-class > header .ss-btn{ margin-left: auto; }
.ka-private{ padding: 10px 14px; border-radius: 12px; background: #f3f6fb; border: 1px solid #d8e2f0; }
.ka-wants{ display: flex; flex-wrap: wrap; gap: 4px 16px; }
.ka-q{ border: 0; padding: 0; margin: 0 0 14px; }
.ka-q legend{ font-weight: 600; margin: 0 0 6px; }
.ka-q textarea{ width: 100%; margin-top: 6px; }
.ss-dialog-foot .link-btn{ margin-right: auto; }
.kr-rules{ display: grid; gap: 12px; margin: 0 0 14px; }
.kr-body p{ margin: 0 0 8px; }
.kr-body ul, .kr-body ol{ margin: 0 0 8px; padding-left: 1.4em; }
.kr-body li{ margin: 2px 0; }
.kp-rules .kr-rule{ padding: 16px 20px; }
.hero2 ~ .bible-wrap, .bible-wrap + .ministry-split, .ministry-split + .tile-pair{ margin-top: 0; }
.tile-pair{ border-top: 0; background: #f6efe2; }
.tile-live, .tile-welcome{ background: #f6efe2; color: #2b2118; }
.tile-pair .tile-live{ border-right-color: #e3d4b4; }
.pair-head .kicker{ color: #8a6a3a; }
.pair-head h2{ color: #2b2118; }
.tile-pair .video{ box-shadow: 0 6px 18px rgba(43, 23, 12, 0.18); }
.pair-strip{ color: #4a3b2c; }
.pair-strip li{ border-left-color: #d4a94e; }
.pair-strip strong{ color: #2b2118; }
.pair-strip a, .hw-addr a{ color: #8e1a18; }
.tile-welcome .hw-photo{ box-shadow: 0 6px 18px rgba(43, 23, 12, 0.18); }
.hw-links a{ background: #fffaf0; border-color: #e3d4b4; color: #2b2118; }
.hw-links a:hover{ background: #fff; }
.hw-links b{ color: #8e1a18; }
.hw-links span{ color: #6b5a48; }
.hw-addr{ color: #4a3b2c; }
@media (max-width: 734px){.tile-pair .tile-live{ border-bottom-color: #e3d4b4; }
}
.bible-page:has(.bp-pray, .bp-pr-page:not(.bp-give)) .bp-bg{ display: none; }
.bible-page:has(.bp-pray, .bp-pr-page:not(.bp-give))::before{ opacity: 0.05; }
.ms-panel::before{ content: ""; position: absolute; inset: 0 0 auto; height: 45%; z-index: 0; pointer-events: none; background: linear-gradient(180deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%); }
.ms-panel > *{ position: relative; z-index: 1; }
.ms-panel:has(.ms-verse[hidden])::before{ display: none; }
.ms-verse{ padding-top: 8px; }
.bible-corner-next{ background: linear-gradient(135deg, rgba(0, 0, 0, 0) 50%, #d6c194 50%, #efe2c4 58%, #fffaf0 74%, #f1e5c9 100%); filter: drop-shadow(-3px -3px 5px rgba(70, 40, 15, 0.3)); }
.bible-corner-next.is-hint{ animation: bible-curl 4.5s ease-in-out 0.6s infinite; }
@keyframes bible-curl{
  0%, 46%, 100% { width: 56px; height: 56px; filter: drop-shadow(-3px -3px 5px rgba(70, 40, 15, 0.3)); }
  14%, 24% { width: 120px; height: 120px; filter: drop-shadow(-8px -8px 12px rgba(70, 40, 15, 0.4)); }
  34% { width: 50px; height: 50px; }
  40% { width: 64px; height: 64px; }
}
.pw .pw-cat-link{ padding: 0; font-size: 13px; color: #1f4e9a; }
.pr-cat{ display: flex; align-items: center; gap: 8px; margin-top: 8px; font-size: 14px; color: #8a7560; }
.pr-cat select{ font: inherit; font-size: 15px; padding: 4px 8px; border: 1px solid #e3cfa5; border-radius: 8px; background: #fff; }
.au-day-map > figure a{ display: block; height: 100%; }
.vt-map-credit{ margin-top: 8px !important; font-size: 13px !important; color: #7a6a58 !important; }
.vt-map-credit a{ color: inherit; }
.rd-check{ display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; margin: 10px 0 0; }
.rd-done{ padding: 7px 18px; border: 1px solid #c9a46a; border-radius: 999px; background: #fff; color: #8e1a18; font: inherit; font-size: 16px; font-weight: 600; cursor: pointer; }
.rd-done[aria-pressed="true"]{ background: #a31d1d; border-color: #a31d1d; color: #fff; }
.rd-done:disabled{ opacity: 0.6; cursor: default; }
.rd-done-n{ font-size: 14px; color: #7a6a58; }
.rc-done{ margin: 28px 0 8px; text-align: center; }
.rd-me{ max-width: 760px; margin: 0 auto 22px; padding: 18px 20px 16px; border: 1px solid #e3d8c4; border-radius: 14px; background: #fff; }
.rd-me[hidden]{ display: none; }
.rd-me-head{ display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 4px 12px; }
.rd-me-head h2{ margin: 0; font-family: var(--serif); font-size: 22px; }
.rd-me-stats{ display: flex; flex-wrap: wrap; gap: 4px 18px; margin: 8px 0 12px; font-size: 15px; color: #4a4036; }
.rd-me-stats b{ font-size: 20px; color: #8e1a18; }
.rd-hm{ display: grid; grid-template-rows: repeat(7, 1fr); grid-auto-flow: column; grid-auto-columns: 1fr; gap: 3px; }
.rd-hm-c{ display: block; aspect-ratio: 1; border-radius: 3px; background: #efe6d2; }
.rd-hm-c.l1{ background: #e8c98a; }
.rd-hm-c.l2{ background: #d9a441; }
.rd-hm-c.l3{ background: #a31d1d; }
.rd-hm-c.is-today{ outline: 2px solid #5a4a3a; outline-offset: 1px; }
.rd-hm-c.is-future{ background: transparent; }
.rd-hm-key{ display: flex; align-items: center; justify-content: flex-end; gap: 4px; margin: 8px 0 0; font-size: 12px; color: #7a6a58; }
.rd-hm-key .rd-hm-c{ width: 11px; }
@media (max-width: 640px){.rd-hm{ gap: 2px; }
.rd-me{ padding: 14px 14px 12px; }
}
.rc-tools{ display: inline-flex; flex-wrap: wrap; gap: 6px; margin-left: auto; }
.rc-tools button{ font: inherit; font-size: 15px; min-height: 40px; padding: 0 14px; border: 1px solid var(--line); border-radius: 980px; background: #fff; color: var(--text); cursor: pointer; }
.rc-top{ flex-wrap: wrap; }
[data-rc-title][role="button"]{ cursor: pointer; }
[data-rc-title][role="button"]::after{ content: " ▾"; font-size: 0.6em; color: #b8914a; }
.rc-v, .rc-pair{ cursor: pointer; border-radius: 4px; transition: background 0.15s; }
.rc-v.hl-y, .rc-pair.hl-y, .rt-notes li.hl-y{ background: #fbefb8; }
.rc-v.hl-g, .rc-pair.hl-g, .rt-notes li.hl-g{ background: #dcefd0; }
.rc-v.hl-b, .rc-pair.hl-b, .rt-notes li.hl-b{ background: #d8e6f5; }
.rc-v.is-chosen, .rc-pair.is-chosen{ text-decoration: underline dotted #a31d1d; text-decoration-thickness: 2px; text-underline-offset: 5px; }
.rc-pair.is-chosen{ outline: 2px dashed #c9a46a; outline-offset: 2px; text-decoration: none; }
.rc-v.has-note sup::after, .rc-pair.has-note sup::after{ content: "•"; color: #a31d1d; margin-left: 1px; }
.rc-v.is-flash, .rc-pair.is-flash{ animation: rt-flash 2.4s ease-out; }
@keyframes rt-flash{ 0%, 40% { background: #f3d58a; } 100% { background: transparent; } }
.rt-bar{ position: sticky; bottom: 10px; z-index: 20; margin: 16px auto 0; max-width: 720px; padding: 12px 14px; border: 1px solid #e3d8c4; border-radius: 14px; background: #fffdf8; box-shadow: 0 8px 24px rgba(43, 33, 24, 0.16); }
.rt-bar[hidden]{ display: none; }
.rt-bar p{ margin: 0 0 8px; }
.rt-bar-note{ padding: 6px 10px; border-left: 3px solid #c9a46a; background: #faf6ee; font-size: 15px; white-space: pre-wrap; }
.rt-bar-note[hidden]{ display: none; }
.rt-bar-acts{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.rt-bar-acts > button, .rt-bar-acts > a{ font: inherit; font-size: 15px; padding: 7px 14px; border: 1px solid #d9ccb6; border-radius: 999px; background: #fff; color: #8e1a18; cursor: pointer; text-decoration: none; }
.rt-bar-acts > button[hidden]{ display: none; }
.rt-colors{ display: inline-flex; gap: 6px; margin-right: 4px; }
.rt-colors button{ width: 30px; height: 30px; border-radius: 50%; border: 1px solid #c9b48a; cursor: pointer; font-size: 12px; color: #7a6a58; background: #fff; }
.rt-colors .sw-y{ background: #f6dd74; }
.rt-colors .sw-g{ background: #a9d48e; }
.rt-colors .sw-b{ background: #9fc2ea; }
.rt-bar-msg{ margin: 6px 0 0 !important; font-size: 14px; color: #6b5a48; }
.rt-bar-msg:empty{ display: none; }
.rt-dlg{ width: min(720px, calc(100vw - 20px)); max-height: calc(100vh - 30px); border: 0; border-radius: 16px; padding: 0; box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35); }
.rt-dlg::backdrop{ background: rgba(20, 16, 10, 0.45); }
.rt-head{ position: sticky; top: 0; z-index: 1; display: flex; justify-content: space-between; align-items: center; padding: 14px 18px; background: #fff; border-bottom: 1px solid var(--line); }
.rt-head h2{ margin: 0; font-family: var(--serif); font-size: 22px; }
.rt-search{ padding: 12px 18px 0; }
.rt-search input{ width: 100%; box-sizing: border-box; padding: 11px 14px; border: 1px solid #d9ccb6; border-radius: 10px; font: inherit; font-size: 17px; }
.rt-body{ padding: 10px 18px 18px; }
.rt-sec h3{ margin: 14px 0 6px; font-size: 14px; letter-spacing: 0.1em; color: #8a6a3a; }
.rt-pills{ display: flex; flex-wrap: wrap; gap: 6px; }
.rt-pills button{ font: inherit; font-size: 16px; padding: 6px 12px; border: 1px solid #e3d8c4; border-radius: 999px; background: #fff; cursor: pointer; }
.rt-pills button[aria-current], .rt-chs a[aria-current]{ background: #a31d1d; border-color: #a31d1d; color: #fff; }
.rt-bookname{ margin: 4px 0 10px; font-family: var(--serif); font-size: 22px; }
.rt-chs{ display: grid; grid-template-columns: repeat(auto-fill, minmax(48px, 1fr)); gap: 6px; }
.rt-chs a{ display: grid; place-items: center; min-height: 44px; border: 1px solid #e3d8c4; border-radius: 8px; color: var(--text); text-decoration: none; font-variant-numeric: tabular-nums; }
.rt-ref{ display: block; margin: 4px 0 10px; padding: 12px 14px; border-radius: 10px; background: #fbf1dc; color: #7a2a12; text-decoration: none; font-size: 17px; }
.rt-count{ margin: 6px 0; font-size: 14px; color: #7a6a58; }
.rt-hits{ list-style: none; margin: 0; padding: 0; }
.rt-hits li{ border-top: 1px solid #f0e9dc; }
.rt-hits a{ display: block; padding: 10px 4px; color: #2b2118; text-decoration: none; font-family: var(--serif); font-size: 17px; line-height: 1.7; }
.rt-hits a b{ font-family: var(--font); font-size: 14px; color: #a31d1d; margin-right: 6px; }
.rt-hits mark{ background: #f6dd74; color: inherit; }
.rt-notes li{ padding: 0 8px; border-radius: 8px; margin-bottom: 4px; border-top: 0; }
.rt-note-text{ margin: 0 0 10px; padding-left: 10px; border-left: 3px solid #c9a46a; font-size: 15px; white-space: pre-wrap; }
.rt-noteform{ padding: 14px 18px 18px; display: grid; gap: 10px; }
.rt-noteform blockquote{ margin: 0; font-family: var(--serif); color: #4a4036; }
.rt-noteform textarea{ width: 100%; box-sizing: border-box; padding: 10px 12px; border: 1px solid #d9ccb6; border-radius: 10px; font: inherit; font-size: 16px; }
.rt-card{ padding: 14px 18px 18px; text-align: center; }
.rt-card img{ display: block; width: min(100%, 420px); margin: 0 auto 12px; border-radius: 8px; box-shadow: 0 6px 20px rgba(43, 33, 24, 0.18); }
.rd-tools{ display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 18px; }
.rd-bible{ margin-top: 16px; padding-top: 12px; border-top: 1px solid #efe6d2; }
.rd-bible-h{ margin: 0 0 6px; font-size: 15px; color: #4a4036; }
.rd-bible-h b{ font-family: var(--serif); font-size: 18px; margin-right: 6px; color: #2b2118; }
.rd-bible-t{ margin: 8px 0 4px; font-size: 12px; letter-spacing: 0.12em; color: #8a6a3a; }
.rd-bks{ display: grid; grid-template-columns: repeat(auto-fill, minmax(38px, 1fr)); gap: 3px; }
.rd-bk{ display: grid; place-items: center; min-height: 32px; border-radius: 4px; font-size: 13px; text-decoration: none; color: #3a2e22;
  background: color-mix(in srgb, #d9a441 calc(var(--f, 0) * 100%), #f2ebdd); }
.rd-bk.is-all{ background: #a31d1d; color: #fff; }
.rm{ max-width: 760px; margin: 0 auto; padding: 24px 18px 60px; }
.rm-ref{ margin: 0 0 14px; color: #8a6a3a; }
.rm-verse{ font-family: var(--serif); font-size: 22px; line-height: 1.9; color: #2b2118; }
.rm-acts{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; margin-top: 14px; }
.rm-help{ margin: 0 0 8px; color: #6b5a48; }
.rm-answer{ display: flex; flex-wrap: wrap; gap: 6px; min-height: 52px; padding: 10px; border: 1px dashed #d9ccb6; border-radius: 12px; background: #fffdf8; }
.rm-slot{ min-width: 34px; min-height: 34px; padding: 4px 8px; border-bottom: 2px solid #e3d8c4; font-family: var(--serif); font-size: 19px; }
.rm-slot.is-on{ border-bottom-color: #a31d1d; }
.rm-pool{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.rm-chip{ font: inherit; font-family: var(--serif); font-size: 19px; padding: 9px 14px; border: 1px solid #d9ccb6; border-radius: 10px; background: #fff; color: #2b2118; cursor: pointer; }
.rm-chip[disabled]{ visibility: hidden; }
.rm-chip.is-hint{ border-color: #a31d1d; box-shadow: 0 0 0 3px rgba(163, 29, 29, 0.25); }
.rm-chip.is-wrong{ animation: rm-shake 0.4s; border-color: #c9774a; }
@keyframes rm-shake{ 20%, 60% { transform: translateX(-5px); } 40%, 80% { transform: translateX(5px); } }
.rm-miss{ font-size: 14px; color: #7a6a58; }
.rm-done-h{ margin: 6px 0; font-family: var(--serif); font-size: 26px; color: #a31d1d; }
@media (prefers-reduced-motion: reduce){.rm-chip.is-wrong, .rc-v.is-flash, .rc-pair.is-flash{ animation: none; }
}
.hero2.is-paper{ background: #f7f1e6; color: #2b2118; }
.hero2.is-paper::after{ content: none; }
.hero2.is-paper .hero2-inner{ display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: 32px 52px; align-items: center; padding-top: 52px; padding-bottom: 56px; }
.hero2.is-paper .hero2-card{ max-width: none; color: #2b2118; text-shadow: none; }
.hero2.is-paper .hero2-title{ color: #2b2118; }
.hero2.is-paper .hero2-date, .hero2.is-paper .hero2-addr, .hero2.is-paper .hero2-times li, .hero2.is-paper .hero2-more{ color: #5a4a3a; }
.hero2.is-paper .hero2-addr a{ color: #8e1a18; }
.hero2.is-paper .hero2-act{ color: #2b2118; border-color: #d9ccb6; background: #fff; }
.hero2.is-paper .hero2-act:hover{ background: #fbf7ef; }
.hero2.is-paper .hero2-act.is-main{ background: #a31d1d; border-color: #a31d1d; color: #fff; }
@media (max-width: 760px){.hero2.is-paper .hero2-inner{ grid-template-columns: 1fr; padding-top: 26px; padding-bottom: 28px; }
}
.au-hero.is-paper{ min-height: 0; display: block; color: #2b2118; background: #f7f1e6; }
.au-hero.is-paper::after{ content: none; }
.au-hero.is-paper .au-hero-inner{ margin: 0 auto; padding: 64px 22px 48px; text-align: center; }
.au-hero.is-paper .au-title{ color: #2b2118; text-shadow: none; }
.au-hero.is-paper .au-sub{ color: #5a4a3a; }
.au-hero.is-paper .au-eyebrow{ color: #8a6a3a; }
.au-hero.is-paper .au-ghost{ color: #2b2118; border-color: #d9ccb6; background: #fff; }
.au-hero.is-paper .au-ghost:hover{ background: #fbf7ef; }
.au-hero.is-paper .cl-jump a{ background: #fff; border-color: #e2d3b3; color: #2b2118; backdrop-filter: none; }
@media (max-width: 760px){.au-hero.is-paper .au-hero-inner{ padding-top: 34px; padding-bottom: 30px; }
}
.ministry-split{ min-height: 0; background: #fff; border-top: 1px solid #efe6d2; border-bottom: 1px solid #efe6d2; }
.ms-panel{ padding: 56px 44px 52px; background: none; color: #2b2118; justify-content: flex-start; }
.ms-panel + .ms-panel, html[data-lang="en"] .ms-en + .ms-zh{ border-left: 1px solid #e3d4b4; }
.ms-kicker{ color: #8a6a3a; }
.ms-name{ color: #2b2118; }
.ms-go{ color: #8e1a18; }
.ms-verse{ margin-bottom: 22px; color: #3a2e22; }
.ms-verse-text, .ms-verse-ref{ text-shadow: none; color: inherit; }
.ms-verse-text{ font-size: clamp(19px, 1.8vw, 23px); }
.ms-verse-ref{ color: #8a6a3a; font-size: 15px; }
.ms-panel::before{ content: none !important; }
@media (max-width: 734px){.ms-panel{ min-height: 0; padding: 32px 22px 30px; }
.ms-panel + .ms-panel, html[data-lang="en"] .ms-en + .ms-zh{ border-left: 0; border-top: 1px solid #e3d4b4; }
}
.mz-hero-img{ object-position: center 45%; }
.ms-name{ font-size: clamp(40px, 4.4vw, 56px); }
.hero2.is-warm::after{ background: linear-gradient(90deg, rgba(34, 22, 12, 0.82) 0%, rgba(34, 22, 12, 0.6) 36%, rgba(34, 22, 12, 0.1) 66%, rgba(34, 22, 12, 0) 100%); }
.hero2.is-warm .hero2-bg{ object-position: center 38%; }
.hero2.is-warm .hero2-act.is-main{ background: #f3c77e; border-color: #f3c77e; color: #2b2118; }
@media (max-width: 760px){.hero2.is-warm::after{ background: linear-gradient(180deg, rgba(34, 22, 12, 0.78) 0%, rgba(34, 22, 12, 0.66) 100%); }
}
.bible-wrap{ background: radial-gradient(120% 90% at 50% 30%, #f6efe2 0%, #ece2cf 70%, #e3d6bd 100%); }
.bible-wrap::before, .bible-wrap::after{ content: none; }
.bible-wrap .bible{ box-shadow: 0 26px 50px rgba(70, 45, 20, 0.28), 0 4px 10px rgba(70, 45, 20, 0.18), inset 0 0 0 2px rgba(212, 169, 78, 0.35), inset 0 0 0 7px rgba(0, 0, 0, 0.15); }
.ministry-split{ border: 0; background: #2b1d14; }
.ms-panel{ position: relative; overflow: hidden; padding: 60px 48px 56px; min-height: 360px; color: #fbf3e2; }
.ms-zh{ background: linear-gradient(150deg, #7a2420 0%, #5c1814 100%); }
.ms-en{ background: linear-gradient(150deg, #3b3028 0%, #241b15 100%); }
.ms-zh:hover, .ms-zh:focus-visible{ background: linear-gradient(150deg, #8a2a24 0%, #661b16 100%); }
.ms-en:hover, .ms-en:focus-visible{ background: linear-gradient(150deg, #47392f 0%, #2c211a 100%); }
.ms-panel::after{ content: ""; position: absolute; left: 48px; right: 48px; bottom: 0; height: 3px; z-index: 1; background: #f3c77e; transform: scaleX(0); transform-origin: left; transition: transform 0.35s ease; }
.ms-panel:hover::after, .ms-panel:focus-visible::after{ transform: scaleX(1); }
.ms-mark{ transition: color 0.35s ease, transform 0.35s ease; }
.ms-panel:hover .ms-mark, .ms-panel:focus-visible .ms-mark{ color: rgba(243, 199, 126, 0.18); transform: translateY(-6px); }
.ms-go{ transition: letter-spacing 0.25s ease; }
.ms-panel:hover .ms-go, .ms-panel:focus-visible .ms-go{ letter-spacing: 0.02em; text-decoration: underline; text-underline-offset: 5px; text-decoration-thickness: 1px; }
@media (prefers-reduced-motion: reduce){.ms-panel::after, .ms-mark, .ms-go{ transition: none; }
}
.ms-panel + .ms-panel, html[data-lang="en"] .ms-en + .ms-zh{ border-left: 0; }
.ms-mark{ position: absolute; right: 24px; bottom: -40px; z-index: 0; font-family: var(--serif); font-size: 240px; line-height: 1; font-weight: 700; color: rgba(243, 199, 126, 0.10); pointer-events: none; }
.ms-panel > :not(.ms-mark){ position: relative; z-index: 1; }
.ms-kicker{ color: #f3c77e; }
.ms-name{ color: #fff8ec; }
.ms-go{ color: #f3c77e; }
.ms-verse{ color: #fbf3e2; }
.ms-verse-ref{ color: #f3c77e; }
@media (max-width: 734px){.ms-panel{ padding: 36px 24px 32px; min-height: 0; }
.ms-panel + .ms-panel, html[data-lang="en"] .ms-en + .ms-zh{ border-top: 0; }
.ms-mark{ font-size: 170px; bottom: -30px; }
.ms-panel::after{ left: 24px; right: 24px; }
}
.bp-find{ display: grid; gap: 10px; justify-items: center; text-align: center; }
.bp-find-map{ display: block; width: 100%; max-width: 460px; padding: 6px; border: 1px solid #d9c49a; border-radius: 6px; background: #fffaf0; }
.bp-find-map img{ display: block; width: 100%; height: auto; border-radius: 3px; }
.bp-find-addr{ margin: 2px 0 0; font-family: var(--serif); font-size: 19px; line-height: 1.6; color: #2b2118; }
.bp-find-credit{ margin: 0; font-size: 11px; color: #9a8466; }
.bible-page:has(.bp-find) .bp-bg{ display: none; }
.bible-page:has(.bp-one){ display: flex; flex-direction: column; }
.bp-one{ flex: 1; margin: 0 0 24px; display: flex; flex-direction: column; justify-content: center; text-align: center; }
.bp-one p{ text-align: center !important; font-size: clamp(22px, 2.2vw, 30px) !important; line-height: 1.9 !important; }
.bible-page:has(.bp-one) .bp-bg{ display: none; }
.bp-sun-list{ list-style: none; margin: 8px 0 18px; padding: 0; display: grid; gap: 10px; }
.bp-sun-list li{ display: grid; grid-template-columns: 6.5em 1fr; gap: 4px 14px; align-items: baseline; padding-bottom: 10px; border-bottom: 1px solid #e3d4b4; font-family: var(--serif); font-size: 20px; color: #2b2118; text-align: left; }
.bp-sun-list b{ color: #a31d1d; font-weight: 600; font-variant-numeric: tabular-nums; }
.bp-sun-list small{ grid-column: 2; font-family: var(--font); font-size: 14px; color: #8a6a3a; }
.bp-col{ flex-direction: column; align-items: center; }
.bible-page:has(.bp-sunday) .bp-bg, .bible-page:has(.bp-col) .bp-bg{ display: none; }
:root{
  --primary: #7a2420; --primary-hover: #8e2d27; --blue: #7a2420; --link: #8a3a1c; --link-dark: #8a3a1c;
  --ink: #2b2118; --ink-2: #5a4a3a; --paper: #fbf7ef; --linen: #f4ecdf; --rule: #e3d4b4; --gold: #b8914a; --gold-soft: #f3c77e; --coffee: #3b3028;
}
a{ color: var(--link); }
.pill, .en-btn{ background: var(--primary); border-color: var(--primary); color: #fff8ec; }
.pill:hover, .en-btn:hover{ background: var(--primary-hover); border-color: var(--primary-hover); color: #fff8ec; }
.pill-outline, .en-btn-line, .mz-ghost, .mz-ghost-dark{ background: #fff; color: var(--ink); border: 1px solid #d9c6a0; }
.pill-outline:hover, .en-btn-line:hover, .mz-ghost:hover, .mz-ghost-dark:hover{ background: var(--linen); color: var(--ink); border-color: #c9ad78; }
.link-more{ color: var(--link); }
.ab-hero{ background: linear-gradient(180deg, var(--paper) 0%, var(--linen) 100%); border-bottom: 1px solid #ecdfc6; }
.ab-eyebrow{ color: #9a7432; }
.ab-title{ color: var(--ink); }
.ab-sub{ color: var(--ink-2); }
.ph-verse{ max-width: 640px; margin: 18px auto 0; font-family: var(--serif); font-size: 19px; line-height: 1.85; color: #4a3a2a; }
.ph-verse cite{ display: block; margin-top: 4px; font-family: var(--font); font-size: 14px; font-style: normal; letter-spacing: 0.06em; color: #9a7432; }
.ph-actions{ display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 22px 0 0; }
.mz-hero{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 44px; align-items: center; min-height: 0; max-width: 1120px; margin: 0 auto; padding: 52px 24px 44px; overflow: visible; color: var(--ink); background: var(--paper); }
.mz-hero::after{ content: none; }
.mz-hero:has(> .mz-hero-img){ box-shadow: 0 0 0 100vmax var(--paper); clip-path: inset(0 -100vmax); }
.mz-hero:not(:has(> .mz-hero-img)){ grid-template-columns: minmax(0, 1fr); text-align: center; box-shadow: 0 0 0 100vmax var(--paper); clip-path: inset(0 -100vmax); }
.mz-hero-img{ position: static; grid-column: 2; grid-row: 1; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 14px; box-shadow: 0 18px 40px rgba(70, 45, 20, 0.16); }
.mz-hero-inner{ grid-column: 1; grid-row: 1; padding: 0; max-width: none; margin: 0; }
.mz-eyebrow{ color: #9a7432; letter-spacing: 0.16em; font-weight: 600; }
.mz-title{ color: var(--ink); font-size: clamp(38px, 5vw, 54px); }
.za-tag{ color: var(--primary); font-size: 22px; }
.mz-verse{ color: #4a3a2a; font-size: 18px; }
.mz-verse > small{ color: #9a7432; opacity: 1; margin-top: 4px; }
.mz-hero:not(:has(> .mz-hero-img)) .mz-verse{ margin-left: auto; margin-right: auto; }
.mz-hero:not(:has(> .mz-hero-img)) .mz-chips, .mz-hero:not(:has(> .mz-hero-img)) .mz-ctas{ justify-content: center; }
.mz-chips span{ background: #fff; border: 1px solid var(--rule); color: var(--ink); }
.en-hero, .en-sec, .en-hero-home{ --en-ink: #2b2118; --en-text: #5a4a3a; --en-blue: #7a2420; --en-sky: #f4ecdf; --en-sun: #b8914a; --en-line: #e3d4b4; }
.en-hero{ background: var(--paper); border-bottom: 1px solid #ecdfc6; }
.en-hero-img{ border-radius: 14px; box-shadow: 0 18px 40px rgba(70, 45, 20, 0.16); }
.en-hero-inner:not(:has(.en-hero-img)){ grid-template-columns: minmax(0, 1fr); text-align: center; max-width: 820px; }
.en-eyebrow{ color: #9a7432; letter-spacing: 0.16em; }
.en-title{ font-family: var(--serif); font-weight: 700; letter-spacing: 0.02em; }
.en-h, .mz-h{ font-family: var(--serif); font-weight: 700; color: var(--ink); letter-spacing: 0.02em; }
.en-sec{ background: #fff; }
.en-next{ background: linear-gradient(180deg, #fff 0%, var(--paper) 100%); }
.en-ask, .mz-card{ border-radius: 14px; border: 1px solid var(--rule); box-shadow: 0 10px 28px rgba(70, 45, 20, 0.07); }
.en-k, .mz-k{ color: #9a7432; }
@media (max-width: 860px){.mz-hero{ grid-template-columns: minmax(0, 1fr); gap: 22px; padding: 28px 20px 30px; }
.mz-hero-img{ grid-column: 1; grid-row: 2; aspect-ratio: 16 / 9; }
}
.mp-subnav, .ab-subnav{ background: rgba(251, 247, 239, 0.94); border-bottom: 1px solid #ecdfc6; }
.mp-subnav a, .ab-subnav a{ color: var(--ink); }
.mp-subnav a:hover, .ab-subnav a:hover{ background: var(--linen); }
.mp-subnav a[aria-current="page"], .ab-subnav a[aria-current="page"], .mp-subnav[class*="mc-"] a[aria-current="page"]{ background: var(--primary); color: #fff8ec; font-weight: 600; }
.mz-areas a{ border-radius: 12px; border: 1px solid var(--rule); }
.mz-areas a:hover{ border-color: #c9ad78; box-shadow: 0 10px 24px rgba(70, 45, 20, 0.08); }
.mz-areas small{ color: var(--ink-2); }
.section input[type="text"], .section input[type="email"], .section input[type="tel"], .section input[type="date"], .section input[type="number"], .section input[type="search"], .section select, .section textarea,
.am-form input:not([type="checkbox"]):not([type="radio"]), .am-form select, .am-form textarea, .bj-form input:not([type="checkbox"]):not([type="radio"]), .bj-form select, .bj-form textarea{
  font: inherit; font-size: 17px; color: var(--ink); background: #fff; border: 1px solid #d9c6a0; border-radius: 8px; padding: 10px 12px; min-height: 44px; box-sizing: border-box; }
.section select, .am-form select, .bj-form select{ appearance: none; -webkit-appearance: none; padding-right: 34px;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%237a6a55' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 12px center; }
.section input:focus, .section select:focus, .section textarea:focus, .am-form :is(input, select, textarea):focus, .bj-form :is(input, select, textarea):focus{ outline: 2px solid rgba(122, 36, 32, 0.35); outline-offset: 1px; border-color: var(--primary); }
.section button[type="submit"], .am-form button[type="submit"], .bj-form button[type="submit"]{ background: var(--primary); border-color: var(--primary); color: #fff8ec; }
.section button[type="submit"]:hover, .am-form button[type="submit"]:hover, .bj-form button[type="submit"]:hover{ background: var(--primary-hover); }
.mz-areas.is-labeled a, .mz-areas a:not(:has(.mz-num)){ grid-template-columns: minmax(0, 1fr); }
.ds-two{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.ds-card{ padding: 26px 26px 22px; border-radius: 12px; background: #fff; border: 1px solid var(--rule); color: var(--ink); }
.ds-card > p{ color: #4a3a2a; line-height: 1.8; }
.ds-card .mz-h{ font-size: 26px; margin: 4px 0 10px; }
.ds-note{ margin: 14px 0 0; padding: 10px 14px; border-radius: 8px; background: var(--linen); font-size: 17px; }
.ds-links{ display: flex; flex-wrap: wrap; gap: 6px 20px; margin: 16px 0 0; font-weight: 600; }
.ab-hero .mz-chips{ justify-content: center; }
@media (max-width: 760px){.ds-two{ grid-template-columns: minmax(0, 1fr); }
}
.mp-hero, .pt-hero{ background: linear-gradient(180deg, var(--paper) 0%, var(--linen) 100%); color: var(--ink); text-align: center; border-bottom: 1px solid #ecdfc6; }
.mp-hero .kicker, .mp-hero .kicker a, .pt-hero .kicker, .pt-hero .kicker a{ color: #9a7432; letter-spacing: 0.16em; font-size: 15px; }
.mp-hero .headline, .pt-hero .headline{ color: var(--ink); }
.mp-hero .subhead, .mp-hero .mp-summary, .pt-hero .subhead{ color: var(--ink-2); }
.bj-form .pill{ background: var(--primary); border: 1px solid var(--primary); }
.bj-form .pill:hover{ background: var(--primary-hover); }
.lx-grace-card::before, .kreg-kid legend::before{ content: none; }
.lx-grace-card{ border-radius: 12px; border: 1px solid var(--rule); box-shadow: 0 10px 28px rgba(70, 45, 20, 0.07); }
.lx-split .mz-hero-img{ aspect-ratio: 3 / 2; }
.sg-key-arrow::before{ color: #9a7432; }
.ssc-gen::after{ content: none; }
.ssc-mark{ color: #fff8ec; text-shadow: none; font-size: 84px; }
.ssc-tone-0{ background: #7a2420; }
.ssc-tone-1{ background: #5a4130; }
.ssc-tone-2{ background: #8a6a2e; }
.ssc-tone-3{ background: #5c6a48; }
.ssc-tone-4{ background: #4a5560; }
.ssc-tone-5{ background: #9a5a3a; }
.ssc-card{ border-radius: 12px; border-color: var(--rule); }
.ssc-wrap, .ssd, .m-en, .m-kids, .m-zh{ --mc: #9a7432; --mc-soft: #f4ecdf; }
.ssc-head h2::before{ width: 3px; }
.ab-hero .ph-verse{ padding: 0; border: 0; background: none; box-shadow: none; border-radius: 0; }
.cl-month{ margin-top: 28px; }
@media (max-width: 734px){.cl-month{ margin-top: 18px; }
}
@media (max-width: 640px){.bj-path, .kreg-steps{ grid-template-columns: minmax(0, 1fr); }
}
.kreg .pill[type="submit"], .am-form .pill[type="submit"]{ background: var(--primary); border-color: var(--primary); }
.kreg .pill[type="submit"]:hover, .am-form .pill[type="submit"]:hover{ background: var(--primary-hover); }
.am-row > label{ min-width: 0; }
.am-row > label > :is(input, select, textarea){ width: 100%; max-width: 100%; }
@media (max-width: 860px){.en-hero-inner{ display: flex; flex-direction: column; align-items: stretch; }
.en-hero-img{ order: 2; aspect-ratio: 16 / 9; }
}
.kreg{ border-color: var(--rule); border-radius: 12px; box-shadow: 0 10px 28px rgba(70, 45, 20, 0.07); }
.mz-chips span span, .en-chips span span{ padding: 0; border: 0; background: none; border-radius: 0; font: inherit; }
.tile-welcome .hw-video video{ display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; background: #2b2118; object-fit: cover; }
.bible-spread, .bible-spread.is-single{ height: 700px; min-height: 0; }
@media (max-width: 734px){.bible-spread, .bible-spread.is-single{ height: 600px; }
}
@media (max-width: 360px){.bible-spread, .bible-spread.is-single{ height: 580px; }
}
.bible-page{ display: flex; flex-direction: column; padding: 30px 50px 54px; }
.bible-page::before, .bp-bg{ display: none; }
@media (max-width: 734px){.bible-page{ padding: 22px 26px 46px; }
.bible-spread.is-single .bible-page{ padding-right: 46px; }
}
.bible .bp-head{ flex: none; margin: 0 0 16px; padding-bottom: 6px; border-bottom: 1px solid #ddcca6; font-family: var(--serif); font-size: 14px; letter-spacing: 0.3em; color: #9a7432; text-align: center; }
.bible .bp-num{ bottom: 16px; font-size: 14px; color: #9a7432; letter-spacing: 0.1em; }
.bk-ch{ flex: none; text-align: center; }
.bk-ch-no{ margin: 6px 0 0; font-size: 13px; letter-spacing: 0.42em; color: #9a7432; }
.bk-ch-title{ margin: 4px 0 0; font-family: var(--serif); font-size: 34px; font-weight: 700; line-height: 1.3; letter-spacing: 0.12em; color: var(--ink); }
.bk-ch-title::after{ content: ""; display: block; width: 72px; height: 1px; margin: 12px auto 0; background: linear-gradient(90deg, transparent, #b8914a 20%, #b8914a 80%, transparent); }
.bk-epi{ margin: 14px auto 0; padding: 0; max-width: 86%; border: 0; background: none; text-align: center; }
.bk-epi p{ margin: 0; font-family: var(--serif); font-size: 17px; line-height: 1.75; color: #5a4a3a;
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.bk-epi cite{ display: block; margin-top: 4px; font-style: normal; font-size: 14px; letter-spacing: 0.06em; color: #8e2d27; }
.bk-body{ flex: 1; min-height: 0; overflow: hidden; margin-top: 18px; display: flex; flex-direction: column; }
.bk-text{ margin: 0; font-family: var(--serif); font-size: 20px; line-height: 1.9; color: #2b2118; text-align: justify;
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 8; overflow: hidden; }
.bk-drop::first-letter{ float: left; margin: 6px 8px 0 0; font-size: 3.1em; line-height: 0.9; font-weight: 700; color: #8e2d27; }
.bk-links{ flex: none; display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 22px; margin: auto 0 0; padding-top: 14px; font-size: 17px; font-weight: 600; }
.bk-links a{ color: #8e2d27; }
.bk-an{ flex: none; padding: 12px 0 10px; border-top: 1px solid #e6d8b8; }
.bk-an:first-child{ border-top: 0; padding-top: 2px; }
.bk-an-when{ margin: 0; font-size: 14px; letter-spacing: 0.04em; color: #9a7432; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bk-an-title{ margin: 2px 0 0; font-family: var(--serif); font-size: 21px; line-height: 1.45; font-weight: 700;
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.bk-an-title a{ color: var(--ink); }
.bk-an-sum{ margin: 4px 0 0; font-size: 17px; line-height: 1.7; color: #4a3a2a;
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.bk-an-more{ display: flex; gap: 16px; margin: 4px 0 0; font-size: 15px; font-weight: 600; }
.bk-an-more a{ color: #8e2d27; }
.bk-title{ flex: 1; display: flex; flex-direction: column; align-items: center; text-align: center; padding-top: 8px; }
.bk-orn{ margin: 0; font-size: 24px; color: #b8914a; line-height: 1; }
.bk-name{ margin: 10px 0 0; font-family: var(--serif); font-size: 46px; font-weight: 700; letter-spacing: 0.3em; text-indent: 0.3em; color: var(--ink); line-height: 1.2; }
.bk-name-2{ margin: 4px 0 0; font-size: 13px; letter-spacing: 0.3em; text-transform: uppercase; color: #9a7432; }
.bk-epi-title{ margin-top: 18px; }
.bk-toc{ width: 100%; max-width: 360px; margin: auto 0 0; padding-top: 16px; }
.bk-toc-h{ margin: 0 0 8px; font-family: var(--serif); font-size: 18px; letter-spacing: 0.3em; color: #9a7432; }
.bk-toc ol{ list-style: none; margin: 0; padding: 0; }
.bk-toc a{ display: flex; align-items: baseline; gap: 8px; padding: 5px 0; font-family: var(--serif); font-size: 18px; color: var(--ink); text-decoration: none; }
.bk-toc a:hover span{ color: #8e2d27; }
.bk-toc i{ flex: 1; border-bottom: 1px dotted #b8a37a; transform: translateY(-5px); }
.bk-toc b{ min-width: 1.4em; text-align: right; font-weight: 600; color: #9a7432; font-variant-numeric: tabular-nums; }
.bk-plate{ flex: 1; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; padding: 0 4%; }
.bk-plate-v{ margin: 0; font-family: var(--serif); font-size: 30px; line-height: 1.8; color: var(--ink);
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 7; overflow: hidden; }
.bk-plate-ref{ margin: 16px 0 0; font-family: var(--serif); font-size: 17px; letter-spacing: 0.08em; color: #8e2d27; }
.bk-end .bk-plate-v{ font-size: 24px; }
.bk-sign{ margin: 22px 0 0; font-family: var(--serif); font-size: 20px; letter-spacing: 0.3em; color: #5a4a3a; }
@media (max-width: 734px){.bible .bp-head{ font-size: 13px; margin-bottom: 10px; }
.bk-ch-title{ font-size: 27px; }
.bk-ch-title::after{ margin-top: 8px; }
.bk-epi{ max-width: 100%; margin-top: 10px; }
.bk-epi p{ font-size: 15.5px; line-height: 1.65; -webkit-line-clamp: 2; }
.bk-body{ margin-top: 12px; }
.bk-text{ font-size: 18px; line-height: 1.8; }
.bk-an{ padding: 9px 0 8px; }
.bk-an-title{ font-size: 19px; }
.bk-an-sum{ font-size: 16px; line-height: 1.6; -webkit-line-clamp: 2; }
.bk-name{ font-size: 36px; }
.bk-toc a{ font-size: 17px; padding: 4px 0; }
.bk-plate-v{ font-size: 24px; }
.bk-end .bk-plate-v{ font-size: 20px; }
.bk-links{ font-size: 16px; gap: 4px 16px; }
}
.bible-wrap{
  background-color: #eee3cf;
  background-image:
    radial-gradient(ellipse 62% 70% at 50% 46%, rgba(255, 251, 242, 0.85) 0%, rgba(255, 251, 242, 0) 72%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cg fill='none' stroke='%23b99d68' stroke-opacity='.28' stroke-width='1'%3E%3Cpath d='M32 14c5 0 8 4 8 9 5 0 9 3 9 9s-4 9-9 9c0 5-3 9-8 9s-8-4-8-9c-5 0-9-3-9-9s4-9 9-9c0-5 3-9 8-9z'/%3E%3Cpath d='M32 26v12M26 32h12'/%3E%3C/g%3E%3Cg fill='%23b99d68' fill-opacity='.3'%3E%3Ccircle cx='0' cy='0' r='1.6'/%3E%3Ccircle cx='64' cy='0' r='1.6'/%3E%3Ccircle cx='0' cy='64' r='1.6'/%3E%3Ccircle cx='64' cy='64' r='1.6'/%3E%3C/g%3E%3C/svg%3E");
  background-size: auto, 64px 64px;
}
@media (max-width: 1279px){.bible-spread.is-single .bible-ribbon{ top: -6px; right: 22px; left: auto; height: 74px; }
}
@media (max-width: 734px){.bible-spread.is-single .bible-page{ padding-right: 26px; }
.bk-an-more a:first-child{ display: none; }
.bk-an-more:not(:has(a + a)){ display: none; }
.bk-an-more{ margin-top: 2px; }
.bk-an-title{ font-size: 18px; }
.bk-an-sum{ font-size: 15.5px; }
.bk-links{ padding-top: 10px; }
}
@media (min-width: 735px) and (max-width: 900px){.ssd-facts{ grid-template-columns: 1fr 1fr; }
.ssd-facts div:nth-child(3){ border-left: 0; }
.ssd-facts div:nth-child(n + 3){ border-top: 1px solid #ece3d2; }
}
@media (max-width: 560px){.hero2-acts{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
.hero2-acts .is-main{ grid-column: 1 / -1; }
}
:focus-visible{ outline: 3px solid #9a7432; outline-offset: 3px; }
.cal-nav, .cal-today, .cal-chip{ border-color: var(--rule); }
.cal-nav, .cal-today, .cal-chip{ color: var(--ink); }
.cal-cell.is-sel{ box-shadow: inset 0 0 0 2px var(--primary); }
.cal-cell.is-today .cal-day{ background: var(--primary); }
.cal-agenda{ background: var(--paper); border: 1px solid var(--rule); border-radius: 12px; }
.cal-agenda li a{ border-radius: 8px; box-shadow: 0 1px 3px rgba(43, 33, 24, 0.04); }
.cal-agenda li a:focus-visible{ outline-offset: 1px; }
.cal-month-day{ padding: 10px 0 4px; border-top: 1px solid var(--rule); }
.cal-month-day:first-of-type{ border-top: 0; padding-top: 0; }
.cal-month-day h4{ margin: 0 0 8px; font-family: var(--serif); font-size: 18px; color: var(--ink); }
.cal-month-day.is-today h4{ color: var(--primary); }
.cal-agenda-month > h3{ margin: 0 0 8px; color: var(--ink-2); font-size: 14px; font-weight: 600; letter-spacing: 0.1em; }
@media (max-width: 734px){.cal-head, .cal-grid{ display: none; }
.cal{ margin-top: 22px; }
.cal-agenda{ margin-top: 0; padding: 15px; }
.cal-month-day ul{ margin: 0; }
.cal-month-day li a{ grid-template-columns: minmax(0, 1fr) auto; gap: 3px 8px; padding: 11px 12px; }
.cal-month-day .ag-time{ grid-column: 1 / -1; font-size: 14px; }
.cal-month-day .ag-title{ font-size: 17px; }
.cal-month-day .ag-m{ padding-right: 0; font-size: 13px; }
}
.bl-toc{ margin: 0 0 24px; border: 1px solid var(--rule); border-radius: 10px; background: #fffdf9; color: var(--ink); }
.bl-toc summary{ display: flex; align-items: center; min-height: 48px; padding: 8px 14px; font-family: var(--serif); font-size: 17px; font-weight: 700; cursor: pointer; }
.bl-toc summary::after{ content: "+"; margin-left: auto; color: var(--primary); font: 22px/1 var(--font); }
.bl-toc[open] summary{ border-bottom: 1px solid #efe5d4; }
.bl-toc[open] summary::after{ content: "−"; }
.bl-toc nav{ padding: 6px 14px 12px; }
.bl-toc ol{ margin: 0; padding-left: 1.4em; }
.bl-toc li{ margin: 4px 0; color: #9a7432; }
.bl-toc li.bl-toc-sub{ margin-left: 1em; list-style-type: circle; }
.bl-toc a{ color: var(--link); }
.prose :is(h2, h3){ scroll-margin-top: 86px; }
.bl-toc a:focus-visible{ outline-offset: 2px; }
.phx-album.is-hidden, .phx-cell.is-hidden{ opacity: 0.5; }
.phx-grid{ list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 6px; }
.phx-cell{ position: relative; display: block; width: 100%; aspect-ratio: 1; padding: 0; border: 0; border-radius: 6px; overflow: hidden; background: var(--linen); cursor: zoom-in; }
.phx-cell img{ width: 100%; height: 100%; object-fit: cover; display: block; }
.phx-play{ position: absolute; left: 6px; bottom: 6px; padding: 2px 8px; border-radius: 999px; background: rgba(43, 33, 24, 0.75); color: #fff8ec; font-size: 13px; }
.phx-field :is(input, select){ font: inherit; font-size: 17px; color: var(--ink); padding: 9px 12px; border: 1px solid #d9c6a0; border-radius: 8px; background: #fff; }
.phx-view-stage :is(img, video){ max-width: 100%; max-height: 100%; object-fit: contain; border-radius: 4px; }
@media (max-width: 640px){.phx-grid{ grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3px; }
}
.phx-grid.is-selecting .phx-cell{ cursor: pointer; }
.phx-cell.is-picked{ outline: 3px solid var(--primary); outline-offset: -3px; }
@keyframes phx-spin{ to { transform: rotate(360deg); } }
@keyframes phx-slide{ 0% { transform: translateX(-100%); } 100% { transform: translateX(300%); } }
.rx{ display: grid; grid-template-columns: 1fr; gap: 14px; }
@container (min-width: 760px){.rx{ grid-template-columns: 210px 1fr; gap: 24px; align-items: start; }
}
.container.narrow:has(> #res-app), .container.narrow:has(> .res-app){ max-width: 1100px; }
.pt-perm-btn{ border: 1px solid var(--line); border-radius: 980px; background: rgba(255, 255, 255, 0.7); font: inherit; font-size: 14px; color: var(--text-2); padding: 4px 12px; cursor: pointer; }
.pt-perm-btn:hover, .pt-perm-pop.is-open .pt-perm-btn{ color: var(--text); border-color: var(--text-2); }
.lscc-auth-mismatch{ position: relative; max-width: 960px; margin: 14px auto; padding: 12px 44px 12px 16px; border: 1px solid #e6b8a8; border-radius: 12px; background: #fdf1ec; color: #6b2a15; font-size: 15px; line-height: 1.5; }
.lscc-auth-mismatch button{ position: absolute; top: 8px; right: 10px; border: 0; background: none; font-size: 16px; color: inherit; cursor: pointer; }
.lc{ max-width: 1040px; margin: 0 auto; padding: 24px 20px 64px; }
.lc h1{ margin: 4px 0 16px; font-size: 32px; }
.lc-top{ margin: 0; color: var(--text-2); font-size: 15px; display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: center; }
.lc-top select{ font: inherit; font-size: 15px; }
.lc-status{ min-height: 1.4em; margin: 0 0 8px; color: var(--text-2); }
.lc-status.is-bad, .lc-dlg-status{ color: #b3261e; }
.lc-x{ border: 0; background: none; font-size: 18px; cursor: pointer; color: var(--text-2); padding: 4px 8px; }
.lc-steps{ list-style: none; margin: 0; padding: 0; }
.lc-steps > li{ border-top: 1px solid var(--line); padding: 12px 0 4px; }
.lc-steps h3, .lc-h3{ margin: 0 0 8px; font-size: 17px; }
.lc-hint{ margin: 0 0 8px; font-size: 14px; color: var(--text-2); }
.lc-thumbs, .lc-receipts{ display: flex; flex-wrap: wrap; gap: 10px; margin: 10px 0; }
.lc-thumb, .lc-receipts a{ position: relative; width: 112px; display: flex; flex-direction: column; gap: 4px; color: var(--text); text-decoration: none; }
.lc-thumb img, .lc-receipts img{ width: 112px; height: 112px; object-fit: cover; border-radius: 8px; border: 1px solid var(--line); }
.lc-thumb small, .lc-receipts small{ font-size: 12px; color: var(--text-2); overflow-wrap: anywhere; }
.lc-thumb .lc-x{ position: absolute; top: 2px; right: 2px; background: #fff; border-radius: 50%; padding: 0 6px; }
.lc-pdf{ width: 112px; height: 112px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 8px; background: #f7f7f8; font-weight: 600; color: var(--text-2); }
.lc-table{ width: 100%; border-collapse: collapse; font-size: 15px; margin: 6px 0 12px; }
.lc-table th, .lc-table td{ text-align: left; padding: 6px 8px; border-bottom: 1px solid var(--line); vertical-align: top; }
.lc-table th{ font-weight: 600; font-size: 13px; color: var(--text-2); }
.lc-table .n{ text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.lc-table .is-out{ color: #8a2a1a; }
.lc-table .is-in{ color: #1d6b31; }
.lc-lines input{ margin: 0; }
.lc-lines td:nth-child(1){ width: 150px; }
.lc-lines td:nth-child(3){ width: 110px; }
.lc-lines td:nth-child(4){ width: 32px; }
.lc-dl{ display: grid; grid-template-columns: max-content 1fr; gap: 6px 14px; margin: 0 0 12px; }
.lc-dl dt{ color: var(--text-2); }
.lc-dl dd{ margin: 0; }
.lc-hist{ margin: 0 0 12px; padding-left: 20px; font-size: 14px; }
.lc-hist small{ color: var(--text-2); }
.lcp-sponsors h3{ margin: 18px 0 6px; font-size: 17px; }
.lcp-sponsors ul{ margin: 0; padding-left: 1.2em; line-height: 1.9; }
@media (max-width: 640px){.lc-lines thead{ display: none; }
.lc-lines tr{ display: grid; grid-template-columns: 1fr 100px 32px; gap: 4px; padding: 6px 0; border-bottom: 1px solid var(--line); }
.lc-lines td{ border: 0; padding: 0; width: auto !important; }
.lc-lines td:nth-child(2){ grid-column: 1 / -1; grid-row: 2; }
}
.lcp{ max-width: 760px; margin: 0 auto; padding: 24px 22px 72px; }
.lcp section{ padding: 28px 0; border-bottom: 1px solid #e7dcc7; }
.lcp-h{ margin: 0 0 14px; font-family: var(--serif); font-size: 28px; color: #231a10; }
.lcp-h3{ margin: 22px 0 10px; font-size: 19px; }
.lcp-list{ margin: 0; padding-left: 1.2em; line-height: 1.9; }
.lcp-note{ color: var(--text-2); margin: 14px 0 0; }
.lcp-form label{ display: block; margin: 0 0 12px; font-size: 15px; color: var(--text-2); }
.lcp-form input:not([type=checkbox]), .lcp-form select, .lcp-form textarea{ display: block; width: 100%; box-sizing: border-box; margin-top: 4px; font: inherit; font-size: 17px; color: var(--text); padding: 9px 12px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.lcp-grid{ display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 0 16px; }
.lcp-form fieldset{ border: 0; padding: 0; margin: 4px 0 14px; }
.lcp-form legend{ font-size: 15px; color: var(--text-2); margin-bottom: 6px; }
.lcp-checks{ display: flex; flex-wrap: wrap; gap: 8px 18px; }
.lcp-checks label, .lcp-form label.lcp-check{ display: inline-flex; gap: 6px; align-items: center; margin: 0; color: var(--text); font-size: 17px; }
.lcp-form label.lcp-check{ margin: 0 0 12px; }
.lcp-checks small{ color: var(--text-2); }
.lcp-trap{ position: absolute !important; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.lcp-status{ color: #b3261e; min-height: 1.4em; }
.lcp-done{ font-size: 18px; color: #1d6b31; }
@media (max-width: 640px){.lcp-h{ font-size: 24px; }
}
.lu-price{ color: var(--text-2); font-variant-numeric: tabular-nums; }
.lu-cost{ font-weight: 600; font-variant-numeric: tabular-nums; }
.lu-acct{ display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: baseline; margin: 10px 0; padding: 10px 14px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.lu-acct b{ font-size: 19px; font-variant-numeric: tabular-nums; }
.lu-acct a{ margin-left: auto; }
.lu-acct.is-low b, .lu-after.is-over{ color: #b3261e; }
.lu-after{ color: var(--text-2); }
.la2, .la3{ max-width: 880px; margin: 0 auto; padding: 24px 20px 64px; }
.la2 h1, .la3 h1{ margin: 6px 0 16px; font-size: 30px; }
.la2 h2, .la3-h{ font-size: 20px; margin: 24px 0 8px; }
.la2-back a{ color: var(--text-2); }
.la2-status.is-bad, .la3-status.is-bad{ color: #b3261e; }
.la2-code{ font-family: ui-monospace, Menlo, monospace; letter-spacing: 0.04em; }
.la2-form, .la3-direct, .la3-confirm{ display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: flex-end; }
.la2-form label, .la3-direct label, .la3-confirm label{ display: grid; gap: 4px; font-size: 14px; color: var(--text-2); }
.la3-direct select, .la2-form input, .la3-direct input, .la3-confirm input, .la3 .lc-bar input[type=search], .la3 .lc-bar input[type=date]{ font: inherit; font-size: 16px; padding: 7px 10px; border: 1px solid var(--line); border-radius: 8px; background: #fff; color: var(--text); }
.la2-form input[name=amount], .la3 input[name=amount], .la3 input[name=dAmount]{ width: 110px; }
.la2-msg{ flex-basis: 100%; margin: 0; color: var(--text-2); }
.la2-tag{ font-size: 13px; padding: 1px 9px; border-radius: 980px; background: #f0f0f2; }
.la2-tag.is-pending{ background: #fdf0db; color: #8a4f0a; }
.la2-tag.is-done{ background: #e3f3e6; color: #1d6b31; }
.la2-tag.is-rejected{ color: #b3261e; }
.la2-table, .la3 .lc-table{ width: 100%; border-collapse: collapse; font-size: 15px; }
.la2-table th, .la2-table td{ text-align: left; padding: 6px 8px; border-bottom: 1px solid var(--line); }
.la2-table .n, .la3 .n{ text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.la2-table .is-out, .la3 .is-out{ color: #8a2a1a; }
.la2-table .is-in, .la3 .is-in{ color: #1d6b31; }
.la2-sums{ display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 10px; }
.la2-sum{ display: grid; gap: 2px; align-content: start; padding: 14px 16px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.la2-sum small{ color: var(--text-2); font-size: 13px; }
.la2-sum b{ font-size: 22px; font-variant-numeric: tabular-nums; }
.la2-sum.is-main b{ font-size: 32px; }
.la2-sum.is-low b{ color: #b3261e; }
.la2-buttons{ display: flex; gap: 10px; margin: 16px 0 8px; }
.la2-buttons .pill, .la2-buttons .ss-btn{ font-size: 18px; padding: 10px 26px; }
.la2-zelle{ margin: 6px 0 14px; color: var(--text-2); }
.la2-zelle b{ color: var(--text); }
.la2-zelle .is-missing{ color: #8a4f0a; }
.la2-note{ margin: 0 0 14px; padding: 10px 12px; border-radius: 8px; background: var(--surface-2, #f4f1ec); color: var(--text-2); }
.la2-panel{ margin: 8px 0 18px; padding: 18px 20px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.la2-panel h2{ margin: 6px 0 10px; font-size: 21px; }
.la2-hint{ color: var(--text-2); font-size: 15px; margin: 6px 0 12px; }
.la2-actions{ display: flex; flex-wrap: wrap; gap: 10px 14px; align-items: center; margin: 14px 0 0; }
.la2-steps, .la2-track{ list-style: none; display: flex; gap: 0; margin: 0 0 6px; padding: 0; counter-reset: s; }
.la2-steps li, .la2-track li{ flex: 1; position: relative; padding-top: 22px; font-size: 13px; color: var(--text-2); text-align: center; counter-increment: s; }
.la2-steps li::before, .la2-track li::before{ content: counter(s); position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 18px; height: 18px; border-radius: 50%; border: 1.5px solid var(--line); background: #fff; font-size: 11px; line-height: 16px; }
.la2-steps li::after, .la2-track li::after{ content: ""; position: absolute; top: 9px; left: calc(50% + 12px); right: calc(-50% + 12px); height: 1.5px; background: var(--line); }
.la2-steps li:last-child::after, .la2-track li:last-child::after{ display: none; }
.la2-steps li.is-done, .la2-track li.is-done{ color: #1d6b31; }
.la2-steps li.is-done::before, .la2-track li.is-done::before{ content: "✓"; border-color: #1d6b31; color: #1d6b31; }
.la2-steps li.is-now, .la2-track li.is-now{ color: var(--text); font-weight: 600; }
.la2-steps li.is-now::before, .la2-track li.is-now::before{ border-color: var(--text); background: var(--text); color: #fff; }
.la2-track{ min-width: 240px; max-width: 320px; margin: 0; }
.la2-chips{ display: grid; grid-template-columns: repeat(5, 1fr); gap: 8px; }
.la2-chip{ font: inherit; font-size: 17px; padding: 12px 0; border: 1px solid var(--line); border-radius: 10px; background: #fff; color: var(--text); cursor: pointer; font-variant-numeric: tabular-nums; }
.la2-chip[aria-pressed="true"]{ border-color: var(--text); background: var(--text); color: #fff; }
.la2-chip:disabled{ opacity: 0.35; cursor: not-allowed; }
.la2-pay{ display: grid; grid-template-columns: max-content 1fr; gap: 12px 18px; margin: 10px 0; align-items: baseline; }
.la2-pay dt{ color: var(--text-2); }
.la2-pay dd{ margin: 0; min-width: 0; overflow-wrap: anywhere; }
.la2-pay dd small{ display: block; color: var(--text-2); font-size: 13px; }
.la2-pay b{ font-size: 19px; }
.la2-big{ font-size: 26px; font-variant-numeric: tabular-nums; }
.la2-progress{ list-style: none; padding: 0; margin: 0; }
.la2-progress li{ display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px 16px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.la2-progress li > span:first-child{ display: grid; }
.la2-progress li small{ color: var(--text-2); }
.la2-progress li.is-past{ opacity: 0.7; }
.la2-tag.is-submitted{ background: #eef2f7; color: #34506e; }
@media (max-width: 640px){.la2-sums{ grid-template-columns: 1fr 1fr; }
.la2-sum.is-main{ grid-column: 1 / -1; }
.la2-chips{ grid-template-columns: repeat(3, 1fr); }
.la2-buttons .pill, .la2-buttons .ss-btn{ flex: 1; }
.la2-pay{ grid-template-columns: 1fr; gap: 2px; }
.la2-pay dt{ margin-top: 8px; font-size: 14px; }
.la2-pay b{ font-size: 17px; }
.la2-actions .pill{ flex: 1 1 100%; text-align: center; }
.la2-panel{ padding: 14px; }
}
.la2-paycode{ font-size: 24px !important; letter-spacing: 0.08em; background: #fdf7ec; padding: 2px 8px; border-radius: 6px; }
.la2-warn{ margin: 10px 0; padding: 10px 14px; border: 1px solid var(--amber-soft); background: #fdf7ec; border-radius: 10px; font-size: 15px; }
.la2-form label.la2-check{ display: flex; gap: 8px; align-items: center; color: var(--text); font-size: 16px; }
.mu-chip{ font: inherit; font-size: 15px; padding: 5px 12px; border: 1px solid var(--line); border-radius: 980px; background: #fff; color: var(--text); cursor: pointer; }
.mu-chip small{ color: var(--text-2); margin-left: 2px; }
.mu-chip[aria-pressed="true"]{ background: var(--navy); border-color: var(--navy); color: #fff; }
.mu-chip[aria-pressed="true"] small{ color: #d6dbe6; }
@media (max-width: 760px){.hero2.is-warm{ display: flex; flex-direction: column; justify-content: flex-end; min-height: min(78svh, 620px); background: #2a1f14; }
.hero2.is-warm .hero2-bg{ object-position: 58% 38%; }
.hero2.is-warm::after{ background: linear-gradient(180deg, rgba(20, 14, 8, 0) 0%, rgba(20, 14, 8, 0) 34%, rgba(20, 14, 8, 0.55) 62%, rgba(20, 14, 8, 0.86) 100%); }
.hero2.is-warm .hero2-inner{ width: 100%; box-sizing: border-box; padding: 0 18px 24px; }
.hero2.is-warm .hero2-card{ color: #fff; text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5); }
.hero2.is-warm .hero2-title{ font-size: 30px; margin-bottom: 6px; }
.hero2.is-warm .hero2-addr{ font-size: 15px; color: rgba(255, 255, 255, 0.88); margin-bottom: 16px; }
.hero2.is-warm .hero2-addr a{ color: #f3c77e; }
.hero2.is-warm .hero2-acts{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.hero2.is-warm .hero2-act{ min-height: 46px; font-size: 16px; color: #fff; border-color: rgba(255, 255, 255, 0.6); background: rgba(20, 14, 8, 0.28); text-shadow: none; }
.hero2.is-warm .hero2-act.is-main{ grid-column: 1 / -1; background: #f3c77e; border-color: #f3c77e; color: #2b2118; font-weight: 700; }
}
.globalnav-name-short{ display: none; }
html[data-lang="en"] .globalnav-name:not(.globalnav-name-short){ display: none; }
html[data-lang="en"] .globalnav-name-short{ display: inline; }
@media (min-width: 1069px){html[data-lang="en"] .globalnav-inner a{ font-size: 16px; padding: 10px 8px; }
html[data-lang="en"] .globalnav-inner .nav-join{ padding: 7px 12px; }
html[data-lang="en"] .nav-big-label{ display: none; }
}
@media (min-width: 1069px) and (max-width: 1240px){.globalnav-inner a{ font-size: 16px; padding: 10px 8px; }
.globalnav-inner .nav-account{ font-size: 16px; }
.globalnav-inner .nav-join{ padding: 7px 12px; }
.nav-big-label{ display: none; }
}
@media (min-width: 761px){.hero2-acts{ grid-template-columns: repeat(3, auto); }
.hero2-act{ white-space: nowrap; }
}
@media (max-width: 760px){.mp-subnav{ flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; padding: 10px 14px; }
.mp-subnav::-webkit-scrollbar{ display: none; }
.mp-subnav a{ flex: none; white-space: nowrap; padding: 6px 14px; font-size: 16px; }
}
@media (max-width: 560px){.ssd-facts{ grid-template-columns: 1fr; }
.ssd-facts div + div{ border-left: 0; border-top: 1px solid #ece3d2; }
.ssd-facts div{ padding: 14px 18px; }
}
@media (min-width: 1069px) and (max-width: 1240px){html[data-lang="en"] .globalnav-inner a{ font-size: 15px; padding: 10px 6px; }
html[data-lang="en"] .globalnav-inner .nav-join{ margin-left: 2px; padding: 6px 10px; }
html[data-lang="en"] .globalnav-sep{ margin: 0 2px; }
}
@media (min-width: 1069px) and (max-width: 1120px){html[data-lang="en"] .globalnav-name-short{ display: none; }
}
@media (max-width: 400px){.globalnav-name{ font-size: 18px; letter-spacing: 0.02em; }
html[data-lang="en"] .globalnav-name-short{ font-size: 15px; line-height: 1.05; white-space: normal; width: min-content; overflow: visible; letter-spacing: 0.01em; }
}
@media (min-width: 401px) and (max-width: 440px){html[data-lang="en"] .globalnav-name-short{ font-size: 18px; letter-spacing: 0.01em; }
}
@media (max-width: 760px){.ms-mark{ display: none; }
.ms-panel{ padding-top: 26px; padding-bottom: 26px; }
.footer-quick{ display: none; }
.footer-cols{ gap: 18px 20px; padding: 18px 0 8px; }
.footer-cols p{ line-height: 1.7; }
.footer-mission{ font-size: 15px; }
}
.bp-back{ margin: 10px 0 0; text-align: center; font-size: 15px; }
.bp-back a{ color: #8e1a18; text-decoration: none; border-bottom: 1px solid rgba(142, 26, 24, 0.35); }
.bp-back a:hover{ border-bottom-color: #8e1a18; }
.tile-welcome .hw-map a{ display: block; }
.tile-welcome .hw-map img{ display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.bk-an1{ display: flex; flex-direction: column; min-height: 0; overflow: hidden; }
.bk-an1-no{ margin: 4px 0 6px; text-align: center; font-size: 13px; letter-spacing: 0.14em; color: #9a7b46; }
.bk-an1-title{ margin: 0 0 6px; text-align: center; font-family: var(--serif); font-size: 22px; line-height: 1.35; }
.bk-an1-title a{ color: #2b2118; text-decoration: none; }
.bk-an1-when{ margin: 0 0 10px; text-align: center; font-size: 15px; color: #8e1a18; }
.bk-an1-pic{ display: block; margin: 0 auto 10px; width: 100%; height: 170px; }
.bk-an1-pic img{ display: block; width: 100%; height: 100%; margin: 0 auto; border-radius: 4px; object-fit: contain; }
.bk-an1-sum{ margin: 0; font-size: 16px; line-height: 1.75; color: #3a2e22; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 7; overflow: hidden; }
.bk-an1-more{ display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 16px; margin: auto 0 0; padding-top: 10px; font-size: 15px; }
.bk-an1-more a{ color: #8e1a18; font-weight: 600; }
@media (max-width: 760px){.bk-an1-title{ font-size: 20px; }
.bk-an1-pic{ height: 130px; }
.bk-an1-sum{ -webkit-line-clamp: 6; font-size: 15px; }
}
.bk-toc a span{ min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bk-toc .bk-toc-main a{ font-weight: 600; }
.bk-ans{ display: flex; flex-direction: column; min-height: 0; overflow: hidden; }
.bk-ans .bk-an1{ display: block; }
.bk-slides{ gap: 12px; }
.bk-slides > a{ display: flex; flex: 0 1 auto; min-height: 0; justify-content: center; }
.bk-slides > a img{ display: block; max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; border-radius: 10px; }
.bk-ans:not(.is-solo) .bk-an1-title{ font-size: 19px; margin-bottom: 2px; }
.bk-ans:not(.is-solo) .bk-an1-when{ margin-bottom: 6px; }
.bk-ans:not(.is-solo) .bk-an1-sum{ display: block; -webkit-line-clamp: unset; }
.bk-ans:not(.is-solo) .bk-an1-more{ margin: 6px 0 0; padding-top: 0; }
.bk-ans.is-solo .bk-an1{ flex: 1; display: flex; flex-direction: column; min-height: 0; overflow: hidden; }
.bk-ans.is-solo .bk-an1-more{ margin-top: auto; }
.bk-an-sep{ border: 0; border-top: 1px dotted #c9b48a; margin: 12px 8% ; }
.bk-an-all{ margin: 10px 0 0; text-align: center; }
.bk-ans:not(.is-solo) > *{ flex: 0 0 auto; }
.bk-an1.is-brief .bk-an1-title{ margin-bottom: 2px; text-align: left; font-size: 17px; line-height: 1.4; }
.bk-an1.is-brief .bk-an1-sum{ font-size: 15px; line-height: 1.6; }
.bk-ans:has(.is-brief) .bk-an-sep{ margin: 9px 0; }
.bk-ans .bk-an-all{ margin-top: auto; padding-top: 8px; }
.bk-ans:not(.is-solo) .bk-an1:has(.bk-an1-pic){ display: grid; grid-template-columns: 34% minmax(0, 1fr); column-gap: 12px; }
.bk-ans:not(.is-solo) .bk-an1:has(.bk-an1-pic) > *{ grid-column: 2; }
.bk-ans:not(.is-solo) .bk-an1:has(.bk-an1-pic) .bk-an1-pic{ grid-column: 1; grid-row: 1 / span 4; width: 100%; height: 110px; margin: 0; }
.bk-ans:not(.is-solo) .bk-an1:has(.bk-an1-pic) .bk-an1-title, .bk-ans:not(.is-solo) .bk-an1:has(.bk-an1-pic) .bk-an1-when{ text-align: left; }
.bk-ans:not(.is-solo) .bk-an1:has(.bk-an1-pic) .bk-an1-title{ font-size: 17px; }
.bk-ans:not(.is-solo) .bk-an1:has(.bk-an1-pic) .bk-an1-when{ margin-bottom: 2px; font-size: 14px; }
.bk-ans:not(.is-solo) .bk-an1:has(.bk-an1-pic) .bk-an1-sum{ font-size: 15px; line-height: 1.6; }
.tile-welcome .hw-map img{ aspect-ratio: 16 / 9; object-position: 50% 52%; }
.hero2-eyebrow{ font-size: 16px; letter-spacing: 0.06em; margin-bottom: 8px; }
.hero2-eyebrow img{ width: 44px; height: 44px; box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.85), 0 2px 8px rgba(0, 0, 0, 0.35); }
@media (max-width: 760px){.hero2.is-warm .hero2-eyebrow{ font-size: 14px; margin-bottom: 6px; color: #f3c77e; }
.hero2.is-warm .hero2-eyebrow img{ width: 38px; height: 38px; }
}
@media (max-width: 760px){.hero2.is-warm::after{ background: linear-gradient(180deg, rgba(20, 14, 8, 0) 0%, rgba(20, 14, 8, 0) 24%, rgba(20, 14, 8, 0.5) 44%, rgba(20, 14, 8, 0.84) 72%, rgba(20, 14, 8, 0.9) 100%); }
}
@media (max-width: 760px){.hero2.is-warm .hero2-eyebrow-name{ display: none; }
}
.na-search input{ width: 100%; font: inherit; font-size: 17px; padding: 10px 14px; border: 1px solid var(--line); border-radius: 12px; background: #fff; color: var(--text); box-sizing: border-box; }
.na-years{ display: flex; flex-wrap: wrap; gap: 6px; margin: 12px 0 0; }
.na-list{ margin-top: 12px; }
.na-list li > span:first-child{ min-width: 0; }
.na-sum{ font-size: 15px; display: inline-block; margin-top: 2px; }
.na-old{ margin-top: 32px; }
.na-h{ font-size: 20px; margin: 0 0 12px; }
.na-list li > .muted:last-child{ white-space: nowrap; }
.bk-toc .bk-toc-note{ margin-left: 0.6em; font-size: 0.82em; color: #7a6a52; font-weight: 400; }
.cal.is-week .cal-head, .cal.is-week .cal-grid{ display: none; }
.cal-agenda-week .cal-month-day.is-empty h4{ color: var(--ink-2); }
.cal-agenda-week .ag-empty{ margin: 0 0 6px; font-size: 14px; color: var(--ink-2); }
.bible-page::before{ display: block; width: min(260px, 62%); opacity: 0.07; }
.cal-agenda li .ag-row{ display: grid; grid-template-columns: 150px 1fr auto; gap: 12px; align-items: baseline; width: 100%; padding: 10px 0 10px 14px;
  border: 0; border-left: 4px solid var(--m); margin-bottom: 8px; background: #fff; border-radius: 8px; box-shadow: 0 1px 3px rgba(43, 33, 24, 0.04);
  font: inherit; color: var(--text); text-align: left; cursor: pointer; }
.cal-agenda li .ag-row:hover{ box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06); }
.ag-place{ display: block; margin-top: 2px; font-size: 14px; font-weight: 400; color: var(--text-2); }
.cal-ev{ font-family: inherit; border: 0; text-align: left; cursor: pointer; width: 100%; }
.cl-day li .cl-row{ display: flex; flex-direction: column; width: 100%; padding: 5px 7px; border: 0; border-radius: 8px; border-left: 3px solid var(--m);
  background: color-mix(in srgb, var(--m) 8%, #fff); color: var(--text); font: inherit; text-align: left; cursor: pointer; }
@media (max-width: 734px){.cal-agenda li .ag-row{ grid-template-columns: minmax(0, 1fr) auto; gap: 3px 8px; padding: 11px 12px; }
.cal-agenda li .ag-row .ag-time{ grid-column: 1 / -1; font-size: 14px; }
.cal-agenda li .ag-row .ag-title{ font-size: 17px; }
.cal-agenda li .ag-row .ag-m{ padding-right: 0; font-size: 13px; }
}
.cal-dlg{ width: min(460px, calc(100vw - 32px)); }
.cal-dlg h2{ display: flex; align-items: center; gap: 10px; }
.cal-dlg-sw{ flex: none; width: 12px; height: 12px; border-radius: 50%; background: var(--m); }
.cal-dlg-other{ margin: 0 0 12px; color: var(--text-2); }
.cal-dlg-dl{ margin: 0 0 14px; }
.cal-dlg-dl div{ display: grid; grid-template-columns: 4.5em 1fr; gap: 10px; padding: 7px 0; border-top: 1px solid var(--line); }
.cal-dlg-dl dt{ color: var(--text-2); }
.cal-dlg-dl dd{ margin: 0; }
@media (max-width: 734px){.ss-dialog.cal-dlg{ width: calc(100vw - 32px); max-width: 460px; height: fit-content; max-height: calc(100dvh - 64px); margin: auto; border-radius: 16px; }
.cal-dlg .ss-dialog-body{ padding: 8px 16px 16px; }
}
.ss-dialog.cal-dlg[open]{ display: block; }
.la2-howto{ margin: 6px 0 8px; padding-left: 1.4em; line-height: 1.7; }
.la2-envelope{ max-width: 380px; margin: 4px 0 12px; padding: 14px 18px; border: 1.5px dashed #b8a37a; border-radius: 6px; background: #fffdf6; }
.la2-env-h{ margin: 0 0 8px; font-weight: 700; letter-spacing: 0.1em; }
.la2-envelope dl{ display: grid; grid-template-columns: auto 1fr; gap: 6px 14px; margin: 0; }
.la2-envelope dt{ color: var(--text-2); }
.la2-envelope dd{ margin: 0; }
.la2-withdraw{ display: block; margin-top: 4px; font-size: 14px; }
.st-top{ margin: 0 0 12px; }
.st-plans{ margin: 0 0 16px; flex-wrap: wrap; }
.st-plan-head h2{ margin: 0 0 4px; font-size: 24px; }
.st-about{ margin: 8px 0; }
.st-tools{ display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; margin: 8px 0 0; }
.st-share{ margin: 12px 0 4px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 12px; background: #fafafc; font-size: 15px; }
.st-share p{ margin: 4px 0; }
.st-link{ display: flex; gap: 8px; }
.st-link input{ flex: 1; min-width: 0; font: inherit; font-size: 14px; padding: 6px 8px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.st-lessons{ list-style: none; margin: 18px 0 12px; padding: 0; }
.st-lesson{ padding: 14px 16px; margin-bottom: 12px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.st-lesson.is-next{ border-color: var(--navy); box-shadow: inset 4px 0 0 var(--navy); }
.st-lesson.is-past{ opacity: 0.85; }
.st-date{ margin: 0; font-size: 14px; color: var(--text-2); }
.st-next{ display: inline-block; margin-left: 6px; padding: 0 8px; border-radius: 999px; background: var(--navy); color: #fff; font-size: 12px; }
.st-title{ margin: 2px 0 2px; font-size: 19px; }
.st-scripture{ margin: 0 0 6px; color: #8e2d27; font-weight: 600; }
.st-h{ margin: 8px 0 2px; font-size: 13px; color: var(--text-2); letter-spacing: 0.05em; }
.st-questions p{ margin: 0 0 6px; }
.st-files{ list-style: none; margin: 8px 0 0; padding: 0; }
.st-files li{ padding: 4px 0; }
.st-files small{ color: var(--text-2); }
.st-x{ font-size: 13px; color: var(--text-2); }
.st-up{ cursor: pointer; }
.st-form label{ display: block; margin: 0 0 10px; font-size: 15px; color: var(--text-2); }
.st-form input:not([type=checkbox]), .st-form textarea{ display: block; width: 100%; box-sizing: border-box; margin-top: 4px; font: inherit; font-size: 16px; color: var(--text); padding: 8px 10px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.st-grid{ display: grid; grid-template-columns: 170px 1fr 1fr; gap: 0 12px; }
.st-plan-form{ padding: 16px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.st-plan-form h2{ margin: 0 0 12px; font-size: 20px; }
.st-groups{ display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 0 0 12px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; }
.st-groups legend{ font-size: 14px; color: var(--text-2); padding: 0 4px; }
.st-groups label, .st-check{ display: inline-flex; gap: 6px; align-items: center; margin: 0; color: var(--text); }
.st-btns{ display: flex; gap: 8px; margin: 6px 0 0; }
@media (max-width: 734px){.st-grid{ grid-template-columns: 1fr; }
}
.lu-qr-row{ margin: 6px 0 0; }
.lu-qr-dlg{ width: min(380px, calc(100vw - 32px)); height: fit-content; margin: auto; border-radius: 18px; }
.ss-dialog.lu-qr-dlg[open]{ display: block; }
.lu-qr-card{ position: relative; padding: 18px 18px 16px; text-align: center; border: 6px solid #fff; border-radius: 18px; background: #fff; }
.lu-qr-card.is-owes{ border-color: #c0392b; }
.lu-qr-x{ position: absolute; top: 8px; right: 8px; }
.lu-qr-h{ margin: 0 0 6px; color: var(--text-2); font-size: 14px; }
.lu-qr-owes{ margin: 0 0 8px; padding: 6px 10px; border-radius: 10px; background: #c0392b; color: #fff; font-weight: 700; }
.lu-qr-code svg{ width: min(260px, 70vw); height: auto; display: block; margin: 0 auto; }
.lu-qr-who{ margin: 8px 0 2px; font-size: 18px; }
.lu-qr-items{ margin: 0; color: var(--text-2); font-size: 15px; }
.lu-qr-cash{ margin: 8px 0 0; font-weight: 700; color: #a0522d; }
.lu-qr-note{ margin: 10px 0 0; font-size: 13px; color: var(--text-2); }
.lp-scan{ display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin: 12px 0; }
.lp-find{ display: flex; gap: 6px; }
.lp-find input{ width: 110px; font: inherit; font-size: 17px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 10px; }
.lp-camera{ position: relative; margin: 0 0 12px; }
.lp-camera video{ width: 100%; max-height: 50vh; object-fit: cover; border-radius: 14px; background: #000; }
.lp-stop{ position: absolute; right: 10px; bottom: 10px; }
.lp-card{ padding: 16px 18px; margin: 0 0 14px; border-radius: 14px; border: 2px solid var(--line); background: #fff; }
.lp-card.is-ok{ border-color: #2e7d32; background: #f1f8f1; }
.lp-card.is-warn{ border-color: #c77700; background: #fff7e8; }
.lp-card.is-bad{ border-color: #c0392b; background: #fdf0ee; }
.lp-big{ margin: 0 0 6px; font-size: 22px; font-weight: 700; }
.lp-who{ margin: 0; font-size: 18px; }
.lp-dishes{ margin: 4px 0 10px; color: var(--text-2); }
.lp-check{ display: grid; grid-template-columns: 1fr 1fr; gap: 8px 12px; margin: 0 0 10px; }
.lp-check label{ display: block; font-size: 14px; color: var(--text-2); }
.lp-check input{ display: block; width: 100%; box-sizing: border-box; margin-top: 4px; font: inherit; font-size: 17px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 10px; }
.lp-skip{ grid-column: 1 / -1; }
.lp-ok{ font-size: 18px; padding: 12px 22px; }
.lp-list ul{ list-style: none; margin: 8px 0 0; padding: 0; }
.lp-list li{ display: flex; gap: 8px; padding: 6px 0; border-top: 1px solid var(--line); }
.lp-list li span{ margin-left: auto; color: var(--text-2); font-size: 14px; }
.lp-list li.is-done{ color: var(--text-2); }
.vg-wrap{ overflow-x: auto; margin: 10px 0 16px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.vg{ border-collapse: collapse; min-width: 100%; font-size: 15px; }
.vg th, .vg td{ border: 1px solid var(--line); padding: 0; text-align: center; white-space: nowrap; }
.vg thead th{ position: sticky; top: 0; background: #faf3dc; font-weight: 600; padding: 6px 8px; }
.vg thead th small{ display: block; font-weight: 400; font-size: 11px; color: #6b5a48; white-space: normal; max-width: 6em; margin: 0 auto; }
.vg tbody th{ position: sticky; left: 0; z-index: 1; background: #f6f1e7; padding: 6px 10px; text-align: left; font-weight: 600; }
.vg td{ min-width: 96px; max-width: 150px; height: 38px; white-space: normal; line-height: 1.3; }
.vg .vg-name{ display: block; }
.vg td.is-off, .vg th.is-off{ background: #d9d6cf; }
.vg td.is-past{ background: #fbfaf7; color: #6b5a48; }
.vg th.is-today{ outline: 2px solid #a31d1d; outline-offset: -2px; }
.vg .vg-cell, .vg .vg-day{ display: block; width: 100%; height: 100%; min-height: 38px; padding: 4px 6px; border: 0; background: none; font: inherit; color: inherit; cursor: pointer; }
.vg .vg-cell:hover, .vg .vg-day:hover{ background: #fff4dc; }
.vg .vg-done{ color: #2e7d32; font-weight: 700; }
.vg td.is-conflict{ background: #fde2e2; color: #a31d1d; font-weight: 600; }
.vg td.is-no{ background: #f1ece2; color: #8a6a3a; }
.vg-app [data-vg-title]{ font-size: clamp(24px, 5vw, 32px); }
.fv-pick{ display: grid; gap: 4px; margin: 6px 0 18px; max-width: 360px; }
.fv-pick select{ padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; background: #fff; font: inherit; font-size: 17px; }
.fv-next{ padding: 18px 20px; border-radius: 14px; background: #fffaf0; border: 1px solid #e3c98c; margin: 0 0 18px; }
.fv-label{ margin: 0; font-size: 15px; color: #7a4a0c; }
.fv-when{ margin: 4px 0 0; font-family: var(--serif); font-size: 26px; font-weight: 700; }
.fv-who{ margin: 4px 0 0; font-size: 19px; }
.fv-h{ margin: 18px 0 6px; font-size: 17px; }
.fv-list{ list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--line); }
.fv-list li{ display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 16px; padding: 10px 2px; border-bottom: 1px solid var(--line); font-size: 17px; }
.fv-list.is-off{ color: #6b5a48; }
.fv-d{ font-weight: 600; }
.fv-fris{ display: grid; gap: 12px; }
.fv-fri{ padding: 14px 16px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.fv-fri.is-today{ border-color: #a31d1d; }
.fv-fri.is-off{ background: #f4f1ea; color: #6b5a48; }
.fv-fri h3{ margin: 0 0 6px; font-size: 19px; }
.fv-fri ul{ list-style: none; margin: 0; padding: 0; }
.fv-fri li{ display: flex; justify-content: space-between; gap: 12px; padding: 6px 0; border-top: 1px dashed var(--line); font-size: 17px; }
.fv-fri li:first-child{ border-top: 0; }
.fv-past{ margin: 20px 0 0; }
.fv-past summary{ cursor: pointer; font-size: 16px; color: #6b5a48; margin-bottom: 10px; }
.fv-notes p{ line-height: 1.8; }
.eg-list{ list-style: none; margin: 0 0 10px; padding: 0; }
.eg-list li{ display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; padding: 6px 0; border-bottom: 1px solid #f1ece2; }
.ks-chip{ display: inline-block; padding: 2px 10px; border-radius: 999px; background: #f1ece2; font-size: 14px; }
.ks-chip.is-in{ background: #e3f1e4; color: #2e7d32; }
@media print{body *{ visibility: hidden; }
}
.su-desc{ margin: 0 0 12px; line-height: 1.7; }
.su-fee{ padding: 10px 14px; border-radius: 10px; background: #fffaf0; border: 1px solid #f3e2bd; }
.su-closed, .su-state{ padding: 10px 14px; border-radius: 10px; background: #f1ece2; font-weight: 600; }
.su-person{ margin: 12px 0; padding: 12px 14px; border: 1px solid var(--line); border-radius: 12px; }
.su-q{ border: 0; padding: 0; margin: 10px 0; }
.su-q legend{ font-weight: 600; margin-bottom: 4px; }
.kf-how li{ margin: 0 0 10px; line-height: 1.7; }
.kf-person{ align-items: end; }
.kf-sign{ margin-top: 8px; padding: 8px 10px; border-radius: 8px; background: #fffaf0; }
.en-join-btn{ margin-right: 10px; }
.en-cc{ font-size: 13px; }
.lcp-form label.lcp-file{ display: inline-block; width: auto; margin: 0; cursor: pointer; color: #fff; }
.lcp-claim .lc-lines input{ padding: 6px 8px; font-size: 16px; }
.lcp-claim .lc-status.is-bad{ color: #8a2a1a; }
@media (max-width: 600px){.lcp-claim .lc-lines thead{ display: none; }
.lcp-claim .lc-lines tbody tr{ display: grid; grid-template-columns: 1fr 110px 32px; grid-template-areas: "d a x" "w w w"; gap: 6px; padding: 8px 0; border-bottom: 1px solid var(--line); }
.lcp-claim .lc-lines tbody td{ padding: 0; border: 0; width: auto !important; }
.lcp-claim .lc-lines tbody td:nth-child(1){ grid-area: d; }
.lcp-claim .lc-lines tbody td:nth-child(2){ grid-area: w; }
.lcp-claim .lc-lines tbody td:nth-child(3){ grid-area: a; }
.lcp-claim .lc-lines tbody td:nth-child(4){ grid-area: x; }
.lcp-claim .lc-lines tfoot tr{ display: flex; align-items: center; gap: 10px; }
.lcp-claim .lc-lines tfoot td{ border: 0; padding: 8px 0; }
.lcp-claim .lc-lines tfoot td:nth-child(2){ margin-left: auto; }
}
.ytm-more{ display: grid; gap: 14px; }
.yt-vm{ display: grid; gap: 22px; grid-template-columns: 1fr 1fr; padding-bottom: 8px; }
.yt-vm p{ margin: 4px 0 0; line-height: 1.7; }
.yt-big{ font-family: var(--serif); font-size: 21px; color: #4a3a2a; }
.yt-acts{ list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.yt-acts li{ padding: 6px 14px; border: 1px solid var(--rule); border-radius: 999px; background: #fff; font-size: 15px; }
.ytm-verse{ margin: 10px 0 0; padding: 0; border: 0; background: none; box-shadow: none; border-radius: 0; max-width: 760px; font-family: var(--serif); font-size: 18px; line-height: 1.85; color: #4a3a2a; }
.ytm-verse cite{ display: block; margin-top: 4px; font-family: var(--font); font-size: 14px; font-style: normal; color: #9a7432; }
.yt-contact{ margin: 6px 0 0; }
@media (max-width: 700px){.yt-vm{ grid-template-columns: 1fr; }
}
.live-next{ margin: 8px 0 0; font-size: 14px; color: var(--muted, #6b6b6b); }
.lccd-site{ --lcx-red: #9e2529; --lcx-deep: #7a181e; --lcx-gold: #e2b652; --lcx-gold-ink: #8a6416; }
.lccd-site .globalnav{ background: var(--lcx-deep); box-shadow: inset 0 -1px 0 rgba(226, 182, 82, 0.5); }
.lccd-site .globalnav-bar{ display: flex; flex: 1; justify-content: space-between; min-width: 0; }
.lccd-site .globalnav-tools{ margin-left: auto; }
.lccd-site .globalnav-logo img{ width: 40px; height: 40px; }
.lccd-site .globalnav-name{ font-family: "Avenir Next", "Segoe UI", system-ui, sans-serif; font-size: 19px; letter-spacing: 0.01em; }
.lccd-site .globalnav-name:not(.globalnav-name-short){ display: inline; }
.lccd-site .globalnav-name-short{ display: none; }
@media (max-width: 560px){.lccd-site .globalnav-name:not(.globalnav-name-short){ display: none; }
.lccd-site .globalnav-name-short{ display: inline; font-weight: 700; letter-spacing: 0.08em; }
}
.lccd-footer{ background: var(--lcx-deep); }
.lccd-foot-name{ display: flex; gap: 12px; align-items: center; margin: 0 0 10px; color: #fff; line-height: 1.5; }
.lccd-foot-name img{ width: 40px; height: 40px; flex: none; }
.lccd-foot-orgs{ color: rgba(255, 255, 255, 0.78); margin: 0 0 14px; line-height: 1.7; }
.lcx-hero{ background: var(--lcx-red); color: #fff; padding: 48px 22px 56px; }
.lcx-hero-inner{ max-width: 1080px; margin: 0 auto; display: grid; grid-template-columns: 1fr minmax(260px, 380px); gap: 48px; align-items: center; }
.lcx-eyebrow{ margin: 0 0 12px; color: var(--lcx-gold); font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; font-size: 15px; }
.lcx-title{ margin: 0; font-family: "Avenir Next", "Segoe UI", system-ui, sans-serif; font-weight: 700; font-size: clamp(36px, 5.4vw, 58px); line-height: 1.05; letter-spacing: -0.01em; }
.lcx-date{ margin: 0; font-size: clamp(21px, 2.4vw, 26px); font-weight: 700; padding-top: 20px; border-top: 3px solid var(--lcx-gold); display: inline-block; }
.lcx-place{ margin: 6px 0 16px; color: #f6e2c8; font-size: 17px; }
.lcx-place a{ color: #f6e2c8; text-decoration: underline; text-decoration-color: rgba(246, 226, 200, 0.5); text-underline-offset: 3px; }
.lcx-times{ list-style: none; margin: 0 0 26px; padding: 0; line-height: 1.9; font-size: 17px; color: #f6e2c8; }
.lcx-times b{ color: #fff; display: inline-block; min-width: 128px; font-variant-numeric: tabular-nums; }
.lcx-free{ color: var(--lcx-gold); font-weight: 600; }
.lcx-actions{ display: flex; flex-wrap: wrap; gap: 10px; margin: 0; }
.lcx-btn{ display: inline-flex; align-items: center; min-height: 46px; padding: 0 22px; border-radius: 999px; border: 1.5px solid rgba(255, 255, 255, 0.7); color: #fff; font-weight: 600; font-size: 16px; }
.lcx-btn:hover{ background: rgba(255, 255, 255, 0.1); text-decoration: none; color: #fff; }
.lcx-btn-gold{ background: var(--lcx-gold); border-color: var(--lcx-gold); color: #3a1608; }
.lcx-btn-gold:hover{ background: #ecc672; color: #3a1608; }
.lcx-poster{ margin: 0; }
.lcx-poster img{ display: block; width: 100%; border-radius: 6px; box-shadow: 0 18px 40px rgba(40, 6, 8, 0.45); }
.lcx .lcp-h{ position: relative; padding-bottom: 10px; }
.lcx .lcp-h::after{ content: ""; position: absolute; left: 0; bottom: 0; width: 44px; height: 3px; background: var(--lcx-red); }
.lcx-parts{ display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.lcx-part{ border: 1px solid #ecdcc4; border-top: 4px solid var(--lcx-red); border-radius: 10px; padding: 18px 20px; background: #fffaf2; }
.lcx-part-time{ margin: 0; font-size: 22px; font-weight: 700; color: var(--lcx-red); font-variant-numeric: tabular-nums; }
.lcx-part h3{ margin: 4px 0 2px; font-size: 20px; }
.lcx-part-place{ margin: 0 0 10px; color: var(--text-2); font-size: 15px; }
.lcx-part-note{ margin: 0 0 2px; color: var(--text-2); font-size: 15px; }
.lcx-part ul{ margin: 0; padding-left: 1.2em; line-height: 1.8; }
.lcx-tag{ display: inline-block; vertical-align: 2px; margin-left: 6px; padding: 1px 9px; border-radius: 999px; font-size: 13px; font-weight: 600; background: #f1e4cf; color: #6b4b1a; }
.lcx-tag.is-free{ background: var(--lcx-red); color: #fff; }
.lcx-tier{ border: 1px solid #ecdcc4; border-radius: 10px; padding: 14px 16px; background: #fff; }
.lcx-tier.is-full{ opacity: 0.6; }
.lcx-tier-price{ margin: 0; font-size: 24px; font-weight: 700; color: var(--lcx-gold-ink); font-variant-numeric: tabular-nums; }
.lcx-tier h3{ margin: 2px 0 6px; font-size: 17px; }
.lcx-cta{ margin: 14px 0 0; }
@media (max-width: 760px){.lcx-hero{ padding: 30px 18px 36px; }
.lcx-hero-inner{ grid-template-columns: 1fr; gap: 28px; }
.lcx-poster{ max-width: 340px; }
.lcx-parts{ grid-template-columns: 1fr; }
.lcx-times b{ min-width: 0; margin-right: 6px; }
}
.lcx-hero-sm{ padding: 36px 22px 40px; }
.lcx-hero-one{ grid-template-columns: 1fr; max-width: 760px; }
.lcx-sub{ margin: 0; color: #f6e2c8; font-size: 17px; line-height: 1.7; max-width: 640px; }
.lcx-tier-pick .lcx-tier{ position: relative; cursor: pointer; display: block; }
.lcx-tier-pick .lcx-tier input{ position: absolute; top: 14px; right: 14px; width: 20px; height: 20px; accent-color: var(--lcx-red); }
.lcx-tier-pick .lcx-tier:has(input:checked){ border-color: var(--lcx-red); box-shadow: 0 0 0 2px var(--lcx-red); background: #fffaf2; }
.lcx-tier-pick .lcx-tier.is-full{ cursor: not-allowed; }
.lcx-signup section{ padding: 22px 0 6px; border-bottom: 0; }
.lcx-next{ color: var(--text-2); margin: 18px 0 12px; }
.lcx-btn-big{ min-height: 52px; font-size: 18px; padding: 0 28px; border: 0; cursor: pointer; font-family: inherit; }
.lcx-btn-red{ background: var(--lcx-red); border-color: var(--lcx-red); color: #fff; }
.lcx-done{ padding: 28px 0; }
a.lcx-tier{ color: inherit; display: block; }
a.lcx-tier:hover{ text-decoration: none; border-color: var(--lcx-red); }
.lcx-sp-actions{ margin: 6px 0 0; }
.lcx-sp-actions .lcx-btn{ border: 0; }
.shr{ max-width: 1000px; margin: 0 auto; padding: 24px 16px 48px; text-align: center; }
.shr-top{ margin: 0 0 14px; color: var(--text-2); font-size: 15px; }
.shr-stage{ display: grid; place-items: center; min-height: 240px; background: #17110c; border-radius: 12px; overflow: hidden; }
.shr-stage :is(video, img){ display: block; max-width: 100%; max-height: 78vh; max-height: 78dvh; }
.shr-stage video{ width: 100%; background: #000; }
.shr-gone{ color: #f4ecdf; padding: 40px 20px; }
.an-manage{ margin: 0 0 16px; text-align: right; }
.an-manage summary{ display: inline-block; cursor: pointer; list-style: none; }
.an-manage summary::-webkit-details-marker{ display: none; }
.an-manage[open]{ padding: 14px 16px 16px; border: 1px solid #ead9bb; border-radius: 16px; background: #fffdf8; }
.an-manage .am-app{ margin-top: 12px; text-align: left; }
.an-links{ display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 12px; }
.an-tools{ margin-top: 16px; text-align: left; }
.an-manage summary, .an-links .ss-btn, .pw-admin a, .pw-review > summary, a.pub-manage, button.pub-manage, .pw-main a.pub-manage, .bx-tabs button.pub-manage{ padding: 9px 20px; border: 1px solid var(--primary); border-radius: 999px; background: var(--primary); color: #fff; font-size: 16px; font-weight: 600; text-decoration: none; box-shadow: 0 3px 10px rgba(90, 30, 20, .18); }
a.pub-manage{ display: inline-flex; align-items: center; justify-content: center; }
a.pub-manage[hidden]{ display: none; }
.pw-main a.pub-manage{ align-self: center; margin: 0 0 6px; letter-spacing: 0; font-family: inherit; }
.an-manage summary:hover, .an-links .ss-btn:hover, .pw-admin a:hover, .pw-review > summary:hover, a.pub-manage:hover, button.pub-manage:hover{ background: var(--primary-hover); color: #fff; text-decoration: none; }
.sv-types{ margin-bottom: 16px; }
.sv-card small, .sv-kind{ color: #8a6420; letter-spacing: .08em; font-size: 14px; }
.sv-back{ margin: 0 0 14px; }
.sv-kind{ margin: 0; }
.sv-title{ margin: 2px 0 4px; font-family: var(--serif); font-size: 30px; }
.sv-when{ margin: 0 0 14px; color: #6b5a48; }
.sv-about p{ margin: 0 0 10px; line-height: 1.85; }
.sv-acts{ display: flex; gap: 8px; margin: 12px 0 22px; }
.sv-h{ margin: 22px 0 8px; font-family: var(--serif); font-size: 21px; }
.sv-roles{ list-style: none; margin: 0; padding: 0; border-top: 1px solid #ece3d2; }
.sv-role{ display: flex; justify-content: space-between; gap: 14px; padding: 12px 0; border-bottom: 1px solid #ece3d2; }
.sv-role p{ margin: 4px 0; }
.sv-people{ display: flex; flex-wrap: wrap; gap: 6px; }
.sv-table{ width: 100%; border-collapse: collapse; }
.sv-table th, .sv-table td{ padding: 8px 10px; text-align: left; border-bottom: 1px solid #ece3d2; vertical-align: top; }
.sv-table th{ font-weight: 600; color: #6b5a48; font-size: 15px; }
.sv-job{ margin: 4px 0; font-size: 15.5px; }
.sv-job summary{ cursor: pointer; color: #7a4e14; }
.sv-job p{ margin: 4px 0; line-height: 1.7; }
.sv-duties{ margin-bottom: 20px; }
.sv-rowacts{ display: flex; gap: 10px; flex: none; }
.sv-dutyform{ margin-top: 12px; padding: 12px 14px; background: #fbf7ef; border-radius: 8px; }
.sv-dutyform h4{ margin: 0 0 8px; }
.sv-pickline{ display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.sv-pickline select, .sv-row select{ padding: 6px 8px; font: inherit; border: 1px solid #cfc7b8; border-radius: 6px; width: auto; }
.sv-row textarea{ flex: 1 1 100%; padding: 6px 8px; font: inherit; border: 1px solid #cfc7b8; border-radius: 6px; }
.sv-row{ display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin: 0 0 6px; }
.sv-row input{ flex: 1 1 120px; min-width: 0; padding: 6px 8px; font: inherit; border: 1px solid #cfc7b8; border-radius: 6px; }
.bp-invite{ margin: 10px 0 14px; }
.bp-invite textarea{ width: 100%; font: inherit; margin: 6px 0; }
#la-form .la-check{ justify-content: flex-start; }
#la-form .la-check input{ width: auto; flex: none; margin: 0; }
.alu{ max-width: 640px; margin: 0 auto; padding: 32px 16px 56px; }
.alu h1{ margin: 0 0 4px; }
.alu-form{ display: grid; gap: 14px; margin-top: 20px; }
.alu-form label{ display: grid; gap: 4px; }
.alu-form input[type=text]{ padding: 8px 10px; font: inherit; border: 1px solid #cfc7b8; border-radius: 6px; max-width: 320px; }
.alu-list{ list-style: none; margin: 16px 0 0; padding: 0; }
.alu-list li{ display: flex; justify-content: space-between; gap: 12px; padding: 6px 0; border-bottom: 1px solid #eee7da; font-size: .92rem; overflow-wrap: anywhere; }
.alu-list span:last-child{ flex: none; color: #6b6355; }
.shr-meta{ margin: 12px 0 6px; color: var(--text-2); font-size: 15px; }
.shr-acts{ margin: 0 0 18px; }
.shr-more{ margin: 0; }
.lcx-hero{ position: relative; overflow: hidden; padding: 28px 22px 52px;
  background-color: var(--lcx-red);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cpath d='M4 4h40v40H4zM12 12h24v24H12zM20 20h8v8h-8z' fill='none' stroke='%23e2b652' stroke-opacity='.10' stroke-width='2'/%3E%3C/svg%3E"); }
.lcx-frame{ position: relative; max-width: 1180px; margin: 0 auto; padding: 18px 28px 30px; border: 2px solid rgba(226, 182, 82, 0.75); outline: 1px solid rgba(226, 182, 82, 0.4); outline-offset: 6px; border-radius: 4px; }
.lcx-hengpi{ margin: -36px auto 18px; width: max-content; padding: 6px 26px; background: var(--lcx-deep); border: 2px solid var(--lcx-gold); color: var(--lcx-gold); font-family: var(--serif); font-size: 26px; font-weight: 700; letter-spacing: 0.5em; text-indent: 0.5em; }
.lcx-hero .lcx-hero-inner:not(.lcx-hero-one){ grid-template-columns: 54px 1fr minmax(240px, 360px) 54px; gap: 36px; }
.lcx-couplet{ margin: 0; align-self: stretch; writing-mode: vertical-rl; text-orientation: upright; display: flex; align-items: center; justify-content: center; padding: 18px 0; background: #b51f27; border: 2px solid var(--lcx-gold); color: var(--lcx-gold); font-family: var(--serif); font-size: 30px; font-weight: 700; letter-spacing: 0.35em; box-shadow: 0 8px 20px rgba(40, 6, 8, 0.35); }
.lcx-sub-zh{ margin: 12px 0 22px; font-family: var(--serif); color: var(--lcx-gold); font-size: clamp(20px, 2.4vw, 26px); letter-spacing: 0.12em; }
.lcx-lantern{ position: absolute; top: -4px; width: 56px; height: 112px; z-index: 1; filter: drop-shadow(0 6px 10px rgba(40, 6, 8, 0.4)); }
.lcx-lantern-l{ left: 3%; }
.lcx-lantern-r{ right: 3%; }
.lcx-band{ height: 14px; background: var(--lcx-gold) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='14' viewBox='0 0 28 14'%3E%3Cpath d='M0 7h6V3h8v8h8V7h6' fill='none' stroke='%237a181e' stroke-width='2'/%3E%3C/svg%3E") repeat-x center; }
.lcx .lcp-h::after{ background: var(--lcx-gold); height: 4px; }
.lcx .lcp-h::before{ content: ""; display: inline-block; width: 12px; height: 12px; margin-right: 10px; vertical-align: 4px; background: var(--lcx-red); transform: rotate(45deg); }
.lcx-part{ background: #fff7ec; border: 1px solid #e9cfa4; border-top: 6px solid var(--lcx-red); box-shadow: inset 0 0 0 4px #fff7ec, inset 0 0 0 5px rgba(158, 37, 41, 0.18); }
.lcx-orgs{ list-style: none; margin: 16px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 12px; }
.lcx-org{ display: flex; align-items: center; gap: 12px; height: 100%; box-sizing: border-box; padding: 14px; border: 1px solid #e9cfa4; border-radius: 10px; background: #fff; color: inherit; }
a.lcx-org:hover{ border-color: var(--lcx-red); text-decoration: none; }
.lcx-org-logo{ flex: none; width: 56px; height: 56px; display: grid; place-items: center; }
.lcx-org-logo img{ max-width: 56px; max-height: 56px; object-fit: contain; border-radius: 6px; }
.lcx-org-name{ display: flex; flex-direction: column; line-height: 1.35; }
.lcx-org-name small{ color: var(--text-2); font-size: 14px; }
@media (max-width: 960px){.lcx-hero .lcx-hero-inner:not(.lcx-hero-one){ grid-template-columns: 1fr minmax(220px, 320px); gap: 28px; }
.lcx-couplet, .lcx-lantern{ display: none; }
}
@media (max-width: 760px){.lcx-hero{ padding: 30px 12px 30px; }
.lcx-frame{ padding: 14px 16px 22px; }
.lcx-hengpi{ font-size: 21px; margin-top: -30px; }
.lcx-hero .lcx-hero-inner:not(.lcx-hero-one){ grid-template-columns: 1fr; }
.lcx-hero .lcx-actions .lcx-btn{ padding: 0 16px; }
}
.pw-cats{ flex: 1 1 100%; order: 3; display: flex; flex-wrap: wrap; gap: 8px; }
.pw-cats button{ font: inherit; font-size: 15px; padding: 6px 14px; border-radius: 999px; border: 1px solid #d9ccb6; background: #fff; color: #5a4a3a; cursor: pointer; }
.pw-cats button:hover{ border-color: #a31d1d; }
.pw-cats button[aria-pressed="true"]{ background: #a31d1d; border-color: #a31d1d; color: #fff; }
.lcx-invite{ margin: 24px 0 0; padding: 22px 24px; border-radius: 12px; color: #fff; background: var(--lcx-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cpath d='M4 4h40v40H4zM12 12h24v24H12zM20 20h8v8h-8z' fill='none' stroke='%23e2b652' stroke-opacity='.12' stroke-width='2'/%3E%3C/svg%3E"); border: 2px solid var(--lcx-gold); }
.lcx-invite p{ margin: 0 0 12px; color: #f6e2c8; }
.lcx-invite .lcx-invite-h{ font-family: var(--serif); font-size: 24px; font-weight: 700; color: var(--lcx-gold); }
.lcx-invite .lcx-actions{ margin: 4px 0 0; }
.lcx-invite .lcx-btn-line{ color: #fff; }
.lcx-part-tix{ display: flex; align-items: center; flex-wrap: wrap; gap: 6px 12px; margin: 14px 0 0; }
.lcx-part-tix .lcx-btn{ border: 0; }
.lcx-part-tix small{ color: var(--text-2); font-size: 14px; }
.hc-link{ padding: 14px 16px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.hc-link h3{ margin: 0 0 4px; font-size: 18px; }
.hc-link-url{ padding: 8px 10px; border-radius: 8px; background: #f6f1e7; font-size: 14px; word-break: break-all; -webkit-user-select: all; user-select: all; }
.hc-link-acts{ display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.cnt{ max-width: 640px; margin: 0 auto; padding: 24px 16px 56px; }
.cnt-text{ white-space: pre-wrap; line-height: 1.8; font-size: 17px; padding: 16px 18px; border-radius: 12px; background: #fffaf2; border: 1px solid #ecdcc4; margin: 0 0 22px; }
.cnt-row{ padding: 12px 0; border-top: 1px solid var(--line); }
.cnt-row b{ display: block; margin-bottom: 6px; }
.cnt-ins{ display: flex; flex-wrap: wrap; gap: 10px; }
.cnt-ins label{ display: flex; flex-direction: column; font-size: 14px; color: var(--text-2); }
.cnt-ins input{ width: 130px; font: inherit; font-size: 20px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 10px; }
.cnt-sum{ font-size: 18px; margin: 8px 0 0; }
.cnt-done{ font-size: 18px; color: #1d6b31; }
.cnt-name{ display: block; margin: 16px 0 12px; font-size: 14px; color: var(--text-2); }
.cnt-name input{ display: block; width: 100%; max-width: 280px; box-sizing: border-box; margin-top: 4px; font: inherit; font-size: 17px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 10px; }
.lu-parts{ display: block; color: #6b4b1a; }
.mz-hero-tree{ display: block; aspect-ratio: auto; box-shadow: none; border-radius: 0; color: var(--ink); text-decoration: none; }
.mz-hero-tree img{ display: block; width: 100%; height: auto; border-radius: 14px; box-shadow: 0 18px 40px rgba(70, 45, 20, 0.16); }
.mz-hero-tree span{ display: block; margin-top: 10px; font-size: 15px; color: #6b5a48; }
.mz-hero-tree:hover{ text-decoration: none; }
.mz-hero-tree:hover span{ color: #a36312; }
.zs-jump{ position: sticky; top: 68px; z-index: 50; background: rgba(251, 247, 239, 0.96); backdrop-filter: blur(6px); border-bottom: 1px solid #ece3d2; }
.zs-jump-in{ max-width: 1120px; margin: 0 auto; padding: 8px 16px; display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; }
.zs-jump-in::-webkit-scrollbar{ display: none; }
.zs-jump a{ flex: none; padding: 7px 14px; border-radius: 999px; color: #4a4036; font-size: 15px; white-space: nowrap; border: 1px solid transparent; }
.zs-jump a:hover{ text-decoration: none; border-color: #d9c7a6; background: #fff; }
.zs-jump a.is-here{ background: var(--wine, #7a2e2a); color: #fff; }
.zs{ padding: 36px 0 8px; border-top: 1px solid #ece3d2; }
.zs .mz-sec{ padding-top: 18px; padding-bottom: 18px; }
@media (max-width: 760px){.zs-jump{ top: 60px; }
}
.mh-congs{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.mh-cong{ display: flex; flex-direction: column; gap: 8px; padding: 24px 26px; border: 1px solid #e5d9c5; border-top: 4px solid #7a2420; border-radius: 14px; background: #fffdf9; color: var(--ink); }
.mh-cong-en{ border-top-color: #5b4636; }
.mh-cong:hover{ text-decoration: none; border-color: #c99a5b; }
.mh-kicker{ color: #8d6a32; font-size: 13px; font-weight: 700; letter-spacing: 0.1em; }
.mh-cong-name{ font-family: var(--serif); font-size: clamp(26px, 3vw, 34px); }
.mh-cong-intro{ color: var(--ink-2); line-height: 1.7; }
.mh-times, .mh-day ul{ list-style: none; margin: 6px 0 0; padding: 0; display: grid; gap: 6px; }
.mh-times li{ display: flex; justify-content: space-between; gap: 12px; padding: 9px 12px; border-radius: 9px; background: #f5efe5; }
.mh-times span, .mh-day span{ color: #6c5c48; font-size: 14px; font-variant-numeric: tabular-nums; }
.mh-go{ margin-top: auto; padding-top: 10px; color: #7a2420; font-weight: 700; }
@media (max-width: 700px){.mh-congs{ grid-template-columns: 1fr; }
.mh-times li{ flex-direction: column; gap: 2px; }
}
.zm{ max-width: 1120px; margin: 0 auto; padding: 8px 24px 24px; }
.zm-item{ display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px 48px; align-items: center; padding: 48px 0; border-top: 1px solid #ece3d2; }
.zm-item:first-child{ border-top: 0; }
.zm-item.has-photo{ grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr); }
.zm-item.has-photo:nth-child(odd) .zm-photo{ order: -1; }
.zm-item:not(.has-photo) .zm-text{ max-width: 760px; }
.zm-photo{ margin: 0; }
.zm-photo img{ display: block; width: 100%; height: auto; border-radius: 14px; box-shadow: 0 14px 34px rgba(70, 45, 20, 0.14); }
.zm-num{ margin: 0; color: #a36312; font-size: 14px; font-weight: 600; letter-spacing: 0.14em; }
.zm-title{ margin: 4px 0 4px; font-family: var(--serif); font-size: clamp(28px, 3.2vw, 38px); color: #231a10; }
.zm-tag{ margin: 0 0 14px; font-size: 18px; color: #7a2e2a; }
.zm-body{ margin: 0 0 16px; font-size: 18px; line-height: 1.85; color: #3b3027; }
.zm-times{ list-style: none; margin: 0 0 16px; padding: 0; display: grid; gap: 6px; }
.zm-times li{ display: flex; flex-wrap: wrap; justify-content: space-between; gap: 2px 14px; padding: 9px 14px; border-radius: 10px; background: #f6efe3; }
.zm-times b{ font-weight: 600; color: #2b2118; }
.zm-times span{ color: #6b5a48; font-variant-numeric: tabular-nums; }
.zm-points{ margin: 0 0 16px; display: grid; grid-template-columns: max-content 1fr; gap: 8px 16px; }
.zm-points dt{ font-weight: 600; color: #2b2118; }
.zm-points dd{ margin: 0; color: #4a4036; line-height: 1.7; }
.zm-note{ margin: 0 0 16px; color: #4a4036; }
.zm-verse{ margin: 0 0 14px; padding: 0 0 0 14px; border-left: 3px solid #e2c48d; color: #6b5a48; }
.zm-verse p{ margin: 0; font-family: var(--serif); font-size: 16px; line-height: 1.7; }
.zm-verse cite{ font-style: normal; font-size: 13px; color: #a36312; }
.zm-links{ display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 0; }
.zm-links a{ font-weight: 600; }
.zm-tree{ grid-column: 1 / -1; }
.zm-intro{ margin: 0 0 12px; font-size: 19px; line-height: 1.8; color: #3b3027; }
@media (max-width: 820px){.zm{ padding: 0 18px 16px; }
.zm-item, .zm-item.has-photo{ grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 36px 0; }
.zm-item.has-photo .zm-photo, .zm-item.has-photo:nth-child(even) .zm-photo{ order: -1; }
.zm-item.has-photo:first-child .zm-photo{ order: 1; }
.zm-points{ grid-template-columns: 1fr; gap: 2px; }
.zm-points dd{ margin-bottom: 8px; }
}
.en-hero-img.en-hero-real{ aspect-ratio: auto; height: auto; object-fit: initial; }
.en-card-img.zm-keep{ aspect-ratio: auto; height: auto; object-fit: initial; }
.zm-wide{ grid-column: 1 / -1; }
.zm-sub{ margin: 4px 0 6px; font-weight: 600; color: #2b2118; }
@media (max-width: 820px){.en-hero-img.en-hero-real{ aspect-ratio: auto; }
}
.ms-sched{ display: grid; margin: 14px 0 4px; width: 100%; max-width: 460px; }
.ms-sched{ grid-template-columns: max-content max-content 1fr; column-gap: 14px; }
.ms-row{ display: grid; grid-template-columns: subgrid; grid-column: 1 / -1; gap: 0 14px; padding: 6px 0; border-bottom: 1px solid color-mix(in srgb, currentColor 22%, transparent); font-size: 15px; text-align: left; }
.ms-day, .ms-t{ opacity: 0.78; font-variant-numeric: tabular-nums; }
.ms-n{ font-weight: 600; }
.ms-t{ white-space: nowrap; }
@media (max-width: 560px){.ms-sched{ column-gap: 9px; }
.ms-row{ font-size: 13.5px; gap: 0 9px; }
}
.ms-kids{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 40px; padding: 28px max(24px, calc((100% - 1120px) / 2)); background: #efe4cf; color: #2b2118; }
.ms-kids:hover{ text-decoration: none; color: #2b2118; }
.ms-kids-head{ display: flex; flex-direction: column; gap: 2px; }
.ms-kids .ms-kicker{ color: #80602a; font-size: 13px; letter-spacing: 0.1em; }
.ms-kids-name{ font-family: var(--serif); font-size: 30px; font-weight: 700; }
.ms-kids-sched{ flex: 1 1 340px; margin: 0; }
.ms-kids .ms-go{ margin: 0; color: #7a2e2a; }
.zm .ssc-head h2, .zm .ssc-head > p{ display: none; }
.zm .ssc-head{ justify-content: flex-start; }
.mz-who a, .zm-note a{ overflow-wrap: anywhere; }
.ms-pair{ display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 460px), 1fr)); background: #efe4cf; border-top: 1px solid #c9a868; border-bottom: 1px solid #c9a868; }
.ms-pair .ms-kids{ flex-direction: column; align-items: flex-start; justify-content: flex-start; padding: 28px 32px; }
.ms-pair .ms-kids-sched{ flex: none; width: 100%; max-width: none; }
.ms-pair .ms-special{ border-top: 1px solid #dcc9a3; }
@media (min-width: 921px){.ms-pair .ms-special{ border-top: 0; border-left: 1px solid #dcc9a3; }
}
.au2-hero figure.mz-hero-tree{ margin: 0; }
.zm-item .zm-text.au2-wide{ max-width: 940px; }
.au2-cares{ list-style: none; margin: 8px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr)); gap: 0 40px; }
.au2-cares li{ padding: 14px 0; border-bottom: 1px solid #ece3d2; }
.au2-cares b{ display: block; margin-bottom: 4px; font-size: 18px; color: #231a10; }
.au2-cares span{ color: #4a4036; line-height: 1.75; }
.au2-cares a, .au2-people a{ color: #7a2e2a; overflow-wrap: anywhere; }
.au2-strives{ margin: 0 0 18px; padding-left: 1.2em; color: #3b3027; font-size: 17px; line-height: 1.9; }
.au2-strives li::marker{ color: #b8914a; }
.au2-people dt small{ margin-left: 6px; font-weight: 400; color: #8a6a3a; }
.au2-cap{ margin-top: 10px; font-size: 14px; color: #6b5a48; }
.au2-years{ list-style: none; margin: 8px 0 24px; padding: 0; }
.au2-years li{ display: grid; grid-template-columns: 64px 1fr; gap: 16px; padding: 12px 0; border-bottom: 1px solid #ece3d2; }
.au2-years span{ font-family: var(--serif); font-size: 20px; font-weight: 700; color: #a36312; }
.au2-years b{ display: block; color: #231a10; font-size: 17px; }
.au2-years small{ display: block; margin-top: 2px; color: #6b5a48; font-size: 15px; line-height: 1.6; }
.mz-who.au2-invite{ font-family: inherit; font-size: 17px; line-height: 1.8; color: #4a4036; }
#faith .au-believe{ gap: 0; max-width: 720px; margin-left: auto; margin-right: auto; }
#faith .au-believe li{ padding: 14px 0; border: 0; border-bottom: 1px solid #ece3d2; border-radius: 0; background: none; }
#faith .au-believe li::before{ content: none; }
.sw{ position: relative; }
.sw-track{ display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; border-radius: 14px; background: #f6efe3; box-shadow: 0 14px 34px rgba(70, 45, 20, 0.14); outline-offset: 4px; }
.sw-track::-webkit-scrollbar{ display: none; }
.mh-cong-children{ border-top-color: #b8914a; }
.mh-cong-special{ border-top-color: #8a6a3a; }
.hi2-title{ font-size: clamp(32px, 4.6vw, 50px); }
.hi2-closing{ margin: 8px 0 18px; font-size: 17px; line-height: 1.9; color: #3b3027; }
.hi2-poem{ margin: 18px 0; padding: 4px 0 4px 16px; border-left: 3px solid #e2c48d; font-family: var(--serif); font-size: 19px; color: #231a10; }
.en-chips > .en-chip-ya{ padding: 6px 14px; border-radius: 980px; background: var(--en-ink, #2b2118); border: 1px solid var(--en-ink, #2b2118); color: #fff; font-size: 15px; font-weight: 600; }
.en-chips > .en-chip-ya:hover{ text-decoration: none; opacity: 0.9; }
.su-agree{ margin: 18px 0; padding: 14px 16px; border: 1px solid #e3d4b4; border-radius: 12px; background: #fffdf8; }
.su-agree-text{ max-height: 320px; overflow-y: auto; margin: 6px 0 12px; padding: 12px 14px; border-radius: 8px; background: #f6efe3; color: #3b3027; line-height: 1.8; }
.su-signed{ color: #4f6b2f; }
.rs-count, .rs-notes{ margin-top: 28px; }
.rs-job{ padding: 12px 0; border-top: 1px solid var(--line); }
.rs-job h3{ margin: 0 0 4px; font-size: 17px; }
.rs-job p{ margin: 0; white-space: pre-wrap; line-height: 1.7; }
.ministry-split .ms-panel .ms-go, .ms-pair .ms-kids .ms-go{ margin-top: auto; padding-top: 18px; }
.ms-pair .ms-kids{ flex-wrap: nowrap; }
.ms-panel, .ms-pair .ms-kids{ container-type: inline-size; }
@container (max-width: 400px){.ms-sched{ grid-template-columns: max-content 1fr; }
.ms-n{ grid-column: 2; padding-bottom: 2px; }
}
.ms-week{ display: grid; grid-template-columns: max-content 1fr; column-gap: 14px; margin: 12px 0 0; max-width: 460px; width: 100%; font-size: 15px; line-height: 1.7; text-align: left; }
.ms-week-k{ opacity: 0.78; }
.ms-week-n{ white-space: nowrap; }
.ms-week-sep{ opacity: 0.6; }
.ms-pair{ background: #1f2a24; border-top: 0; border-bottom: 0; }
.ms-pair .ms-kids{ position: relative; overflow: hidden; padding: 40px 48px 40px; color: #fbf3e2; background: linear-gradient(150deg, #2f4a37 0%, #1d3326 100%); transition: background 0.3s; }
.ms-pair .ms-special{ background: linear-gradient(150deg, #2e3c52 0%, #1c2638 100%); }
.ms-pair .ms-kids:hover, .ms-pair .ms-kids:focus-visible{ color: #fbf3e2; background: linear-gradient(150deg, #36553f 0%, #223b2c 100%); }
.ms-pair .ms-special:hover, .ms-pair .ms-special:focus-visible{ background: linear-gradient(150deg, #36465e 0%, #212d42 100%); }
.ms-pair .ms-kids > :not(.ms-mark){ position: relative; z-index: 1; }
.ms-pair .ms-mark{ font-size: 200px; bottom: -34px; }
.ms-pair .ms-kids:hover .ms-mark, .ms-pair .ms-kids:focus-visible .ms-mark{ color: rgba(243, 199, 126, 0.18); transform: translateY(-6px); }
.ms-pair .ms-kids::after{ content: ""; position: absolute; left: 48px; right: 48px; bottom: 0; height: 3px; z-index: 1; background: #f3c77e; transform: scaleX(0); transform-origin: left; transition: transform 0.35s ease; }
.ms-pair .ms-kids:hover::after, .ms-pair .ms-kids:focus-visible::after{ transform: scaleX(1); }
.ms-pair .ms-kids .ms-kicker{ color: #f3c77e; }
.ms-pair .ms-kids-name{ color: #fff8ec; }
.ms-pair .ms-kids .ms-go{ color: #f3c77e; }
.ms-pair .ms-kids:hover .ms-go{ text-decoration: underline; text-underline-offset: 5px; text-decoration-thickness: 1px; }
.ms-pair .ms-special{ border-top: 0; }
@media (min-width: 921px){.ms-pair .ms-special{ border-left: 0; }
}
@media (max-width: 734px){.ms-pair .ms-kids{ padding: 32px 24px 30px; }
.ms-pair .ms-kids::after{ left: 24px; right: 24px; }
.ms-pair .ms-mark{ font-size: 150px; bottom: -26px; }
}
@media (prefers-reduced-motion: reduce){.ms-pair .ms-kids, .ms-pair .ms-kids::after{ transition: none; }
}
.zm-signup{ margin: 14px 0 0; }
html[data-lang-fixed] .nav-lang{ display: none; }
.mz-other, .en-other{ margin: 6px 0 0; font-size: 15px; opacity: 0.9; }
.mz-other a, .en-other a{ color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.yt-facade[style*="background-image"]{ background-size: cover; background-position: center; box-shadow: inset 0 0 0 2000px rgba(20, 14, 8, 0.35); }
a.yt-facade, a.yt-facade:hover{ text-decoration: none; color: #fff; }
.live-now{ margin-left: 6px; font-weight: 600; }
.ms-go-out::after{ content: " ↗"; }
[data-ph-open], .ph-open-title{ display: none; }
[data-ph-open-en]{ display: none; }
[data-ph-open-kids]{ display: none; }
.gsp-f{ display: block; margin: 0 0 14px; font-size: 14px; color: var(--text-2); }
.gsp-f input, .gsp-f textarea{ display: block; width: 100%; box-sizing: border-box; margin-top: 4px; font: inherit; font-size: 17px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 10px; color: var(--text); }
.gsp-f textarea{ line-height: 1.6; resize: vertical; }
.gsp-prev{ display: grid; grid-template-columns: 2em 1fr; padding: 14px 16px; border-radius: 12px; background: #fffaf2; border: 1px solid #ecdcc4; line-height: 1.8; font-size: 16px; }
.gsp-prev .muted{ grid-column: 1 / -1; margin: 0; }
.gd-wrap{ max-width: 760px; }
.gd{ max-width: 760px; }
.gd-intro{ font-size: 17px; line-height: 1.8; margin: 0 0 18px; }
.gd-sec{ padding: 20px 0 8px; border-top: 1px solid var(--line); scroll-margin-top: 80px; }
.gd-h{ margin: 0 0 8px; font-size: 22px; }
.gd-meta{ display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 0 0 12px; color: var(--text-2); font-size: 14px; }
.gd-meta b{ margin-right: 6px; color: var(--text); }
.gd-steps{ margin: 0 0 12px; padding-left: 1.6em; line-height: 1.8; font-size: 16px; }
.gd-steps li{ margin: 0 0 8px; }
.gd-steps img{ display: block; max-width: min(100%, 560px); margin: 8px 0 4px; border: 1px solid var(--line); border-radius: 10px; }
.gd-tips{ background: #fffaf2; border: 1px solid #ecdcc4; border-radius: 12px; padding: 10px 16px; margin: 0 0 12px; }
.gd-tips-h{ margin: 0 0 4px; font-weight: 700; font-size: 14px; }
.gd-tips ul{ margin: 0; padding-left: 1.2em; line-height: 1.7; font-size: 15px; }
.gd-go{ display: flex; flex-wrap: wrap; gap: 8px; }
.gd-upd{ margin-top: 24px; }
.gd-pick-h{ margin: 0 0 8px; font-weight: 700; font-size: 15px; }
.gd-pick-sub{ margin-top: 14px; color: var(--text-2); font-weight: 400; font-size: 14px; }
.gd-chips{ display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 6px; }
.gd-chip{ font: inherit; font-size: 15px; padding: 6px 14px; border-radius: 999px; border: 1px solid var(--line); background: #fff; color: var(--text); cursor: pointer; }
.gd-chip[aria-pressed="true"]{ background: #8a4b16; border-color: #8a4b16; color: #fff; }
.gd-body{ margin-top: 18px; scroll-margin-top: 80px; }
.gd-body .gd-sec:first-child{ border-top: 0; }
.gd-area{ margin: 22px 0 10px; font-size: 16px; color: var(--text-2); font-weight: 600; }
.gd-cards{ display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 12px; }
.gd-card{ display: flex; flex-direction: column; gap: 6px; text-align: left; font: inherit; padding: 16px; border: 1px solid var(--line); border-radius: 12px; background: #fff; color: var(--text); cursor: pointer; }
.gd-card b{ font-size: 18px; }
.gd-card-d{ font-size: 14px; color: var(--text-2); line-height: 1.6; }
.gd-mine{ align-self: flex-start; font-size: 12px; padding: 2px 8px; border-radius: 999px; background: #f3e6d6; color: #7a3f0f; }
.gd-crumb{ margin: 0 0 6px; font-size: 14px; }
.gd-title{ margin: 0 0 14px; font-size: 26px; }
.gd-h3{ margin: 18px 0 8px; font-size: 18px; }
.gd-scroll{ overflow-x: auto; margin: 0 0 14px; }
.gd-parts{ width: 100%; border-collapse: collapse; font-size: 15px; line-height: 1.6; }
.gd-parts th, .gd-parts td{ text-align: left; vertical-align: top; padding: 7px 10px; border-bottom: 1px solid var(--line); }
.gd-parts th{ font-size: 13px; color: var(--text-2); font-weight: 600; background: #faf6ef; white-space: nowrap; }
.gd-parts td:first-child{ font-weight: 600; min-width: 7em; }
.gd-parts td:last-child{ white-space: nowrap; }
.gd-sec .gd-go{ margin: 0 0 12px; }
.ssc-row{ display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.ssc-row b{ margin: 0; }
.ssc-row input{ width: 110px; font: inherit; font-size: 20px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 10px; }
.ssc-total{ font-weight: 700; }
.bk-k{ margin: 18px 0 8px; font-size: 13px; letter-spacing: .08em; color: var(--text-2); font-weight: 600; }
.bk-now{ margin-top: 14px; }
.bk-row{ display: flex; gap: 14px; align-items: flex-start; padding: 14px 16px; border-radius: 12px; background: #fffaf2; border: 1px solid #ecdcc4; }
.bk-row img{ width: 72px; border-radius: 4px; box-shadow: 0 1px 4px rgba(0,0,0,.15); }
.bk-t{ margin: 0; font-weight: 700; font-size: 17px; }
.bk-s{ margin: 2px 0 0; font-size: 14px; color: var(--text-2); }
.bk-a{ margin: 4px 0 0; font-size: 13px; color: var(--text-2); }
.bk-list{ list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 16px; }
.bk-list img{ display: block; width: 100%; height: auto; border-radius: 4px; box-shadow: 0 1px 4px rgba(0,0,0,.15); margin-bottom: 6px; }
.bk-list li{ display: flex; flex-direction: column; justify-content: flex-start; }
.bk-list .bk-t{ font-size: 14px; }
.bk-list .bk-s, .bk-list .bk-a{ font-size: 12px; }
.news-hub-inner{ max-width: 760px; }
.news-hub-bar{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin: 0 0 14px; }
.news-hub-tabs{ display: inline-flex; gap: 2px; padding: 3px; border: 1px solid #e3d3b3; border-radius: 999px; background: #f1e7d3; }
.news-hub-tabs button{ padding: 7px 18px; border: 0; border-radius: 999px; background: none; color: #6b5a44; font: inherit; font-size: 15px; cursor: pointer; }
.news-hub-tabs button[aria-selected="true"]{ background: #fff; color: var(--ink); font-weight: 600; box-shadow: 0 1px 3px rgba(60, 40, 10, .15); }
.news-hub-tabs button[hidden]{ display: none; }
.news-hub-sermon{ font-weight: 600; }
.news-hub-list{ margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--rule); }
.news-hub-list > li{ display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 16px; padding: 14px 4px; border-bottom: 1px solid var(--rule); }
.news-hub-list > li > a:first-child{ margin-right: auto; color: var(--ink); font-family: var(--serif); font-size: 19px; font-weight: 600; text-decoration: none; }
.news-hub-list > li > a:first-child:hover{ color: var(--primary); }
.news-hub-list > li[data-date] > .muted{ display: none; }
.news-hub-list > li[data-date]:first-child > a:first-child::after{ content: "最新"; margin-left: 10px; padding: 1px 9px; border-radius: 999px; background: #f6e7cf; color: #8a5a14; font-family: var(--font); font-size: 13px; font-weight: 600; vertical-align: middle; }
.news-hub-list[data-list="en"] > li[data-date]:first-child > a:first-child::after{ content: "Latest"; }
.news-hub-list .na-print{ font-size: 15px; }
.news-hub-list > li:not([data-date]){ display: block; color: var(--ink-2); }
.news-hub-old{ margin-top: 34px; }
.news-hub-old .na-h{ margin: 0 0 12px; font: 600 21px/1.4 var(--serif); }
.bl-hero .ab-eyebrow a{ color: inherit; text-decoration: none; }
.bl-hero .ab-eyebrow a:hover{ text-decoration: underline; }
.bl-hero-date{ margin: 8px 0 0; color: var(--ink-2); font-size: 18px; }
.bl-reader-paper{ box-sizing: border-box; max-width: 780px; margin: 0 auto; padding: 28px 20px 64px; }
.bl-reader-content .bl{ font-size: 18px; line-height: 1.8; }
.bl-reader-content h2{ scroll-margin-top: 84px; }
.bl-jump{ display: flex; flex-wrap: wrap; gap: 6px 8px; margin: 0 0 24px; padding: 0 0 16px; border-bottom: 1px solid var(--rule); }
.bl-jump a{ padding: 4px 12px; border: 1px solid #e3d3b3; border-radius: 999px; background: #fffdf8; color: var(--ink-2); font-size: 15px; text-decoration: none; white-space: nowrap; }
.bl-jump a:hover{ border-color: var(--primary); color: var(--primary); }
.bl-reader-verse{ margin: 0 0 22px; padding: 18px 22px; border-left: 3px solid #c9a86a; background: #fbf6ec; }
.bl-reader-verse p{ margin: 0; font: 500 20px/1.8 var(--serif); }
.bl-reader-verse cite{ display: block; margin-top: 6px; color: #8d6124; font-size: 15px; font-style: normal; text-align: right; }
.bl-reader-sr{ position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
@media (max-width: 560px){.bl-reader-paper{ padding: 20px 14px 48px; }
.bl-reader-content .bl{ font-size: 17px; }
.news-hub-list > li > a:first-child{ font-size: 17px; }
}
.bl-groups-when{ margin: 0 0 6px; }
.bl-groups-link{ margin: 0; }
.bl-groups-link a{ font-weight: 600; }
.bl-preview-title{ margin: 6px 0 0; font: 700 34px/1.3 var(--serif); }
.bl-reader-preview .ab-eyebrow a{ color: var(--primary); text-decoration: none; }
.hw-hero{ background: #f5f4f1; }
.hw-hero-in{ box-sizing: border-box; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); align-items: center; gap: 40px; max-width: 1080px; margin: 0 auto; padding: 48px 22px; }
.hw-eyebrow{ margin: 0 0 10px; color: #6e6e73; font-size: 15px; font-weight: 600; }
.hw-title{ margin: 0; font: 700 clamp(44px, 7vw, 72px)/1.1 var(--serif); color: #1d1d1f; letter-spacing: .04em; }
.hw-title span{ color: var(--primary); }
.hw-hero-verse{ margin: 22px 0 0; }
.hw-hero-verse p{ margin: 0; font: 500 clamp(19px, 2.4vw, 23px)/1.75 var(--serif); color: #1d1d1f; }
.hw-hero-verse cite{ display: block; margin-top: 6px; color: #6e6e73; font-size: 15px; font-style: normal; }
.hw-hero-sub{ margin: 18px 0 0; font-size: 17px; line-height: 1.75; color: #424245; }
.hw-hero-pic{ display: block; width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; border-radius: 20px; }
.hw{ box-sizing: border-box; max-width: 1040px; margin: 0 auto; padding: 36px 20px 64px; }
.hw-letter{ max-width: 720px; margin: 0 auto 44px; font-size: 17px; line-height: 1.85; color: #1d1d1f; }
.hw-letter p{ margin: 0 0 12px; }
.hw-sign{ margin: 18px 0 0 !important; text-align: right; color: #6e6e73; }
.hw-overview{ max-width: 820px; margin: 0 auto 52px; }
.hw-h{ margin: 0 0 10px; font: 700 clamp(26px, 3.4vw, 32px)/1.3 var(--serif); color: #1d1d1f; }
.hw-h3{ margin: 30px 0 10px; font: 700 20px/1.4 var(--serif); color: #1d1d1f; }
.hw-lead{ margin: 0 0 18px; font-size: 17px; line-height: 1.8; color: #424245; }
.hw-parts{ display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.hw-parts a{ display: grid; grid-template-columns: 36px minmax(0, 1fr) auto; align-items: center; gap: 4px 14px; padding: 14px 18px; border-radius: 16px; background: #f5f4f1; color: #1d1d1f; text-decoration: none; }
.hw-parts a:hover{ background: #ecebe7; }
.hw-n{ display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: #1d1d1f; color: #fff; font-weight: 700; font-size: 15px; }
.hw-part b{ display: block; font-size: 17px; }
.hw-part small{ display: block; margin-top: 2px; color: #6e6e73; font-size: 14px; line-height: 1.5; }
.hw-part-when{ color: #424245; font-size: 14px; text-align: right; }
.hw-rhythm{ display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr)); gap: 8px; margin: 0; }
.hw-rhythm > div{ padding: 14px 16px; border-radius: 14px; background: #f5f4f1; }
.hw-rhythm dt{ font-weight: 700; color: #1d1d1f; }
.hw-rhythm dd{ margin: 2px 0 0; color: #424245; font-size: 15px; line-height: 1.6; }
.hw-note{ margin: 16px 0 0; color: #6e6e73; font-size: 15px; }
.hw-sec{ max-width: 920px; margin: 0 auto 26px; padding: 28px; border-radius: 22px; background: #f5f4f1; scroll-margin-top: 80px; }
.hw-sec-head{ margin: 0 0 18px; }
.hw-sec-n{ margin: 0; color: var(--primary); font-size: 14px; font-weight: 700; }
.hw-sec-head h3{ margin: 4px 0 0; font: 700 clamp(24px, 3vw, 28px)/1.3 var(--serif); color: #1d1d1f; }
.hw-who{ margin: 6px 0 0; color: #424245; font-size: 15px; font-weight: 600; }
.hw-desc{ margin: 6px 0 0; color: #424245; font-size: 16px; line-height: 1.7; }
.hw-sec-body{ display: grid; grid-template-columns: minmax(0, 300px) minmax(0, 1fr); gap: 28px; align-items: start; }
.hw-text{ min-width: 0; }
.hw-meta{ display: grid; gap: 6px; margin: 0 0 16px; padding: 14px 16px; border-radius: 14px; background: #fff; }
.hw-meta > div{ display: grid; grid-template-columns: 5em minmax(0, 1fr); gap: 8px; }
.hw-meta dt{ color: #6e6e73; font-size: 14px; }
.hw-meta dd{ margin: 0; color: #1d1d1f; font-size: 15px; font-weight: 600; }
.hw-steps{ margin: 0; padding: 0; list-style: none; counter-reset: hw; }
.hw-steps li{ position: relative; margin: 0 0 12px; padding-left: 34px; font-size: 16px; line-height: 1.75; color: #1d1d1f; counter-increment: hw; }
.hw-steps li::before{ content: counter(hw); position: absolute; left: 0; top: 2px; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: #fff; color: #1d1d1f; font-size: 13px; font-weight: 700; }
.hw-tip{ margin: 6px 0 0; padding: 12px 14px; border-radius: 12px; background: #fff; color: #424245; font-size: 15px; line-height: 1.7; }
.hw-acts{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 16px 0 0; }
.hw-status{ font-size: 13px; color: #6e6e73; word-break: break-all; }
.hw-foot{ margin: 10px 0 0; text-align: center; font-weight: 600; }
.hw-vbox{ position: relative; }
.hw-vbox .hw-video{ cursor: pointer; }
.hw-video{ display: block; width: 100%; aspect-ratio: 390 / 760; border-radius: 18px; background: #fff; }
.hw-video:fullscreen{ aspect-ratio: auto; width: 100%; height: 100%; border-radius: 0; background: #000; object-fit: contain; }
.hw-video:-webkit-full-screen{ aspect-ratio: auto; width: 100%; height: 100%; border-radius: 0; background: #000; object-fit: contain; }
.hw-play{ position: absolute; left: 50%; top: 74%; width: 72px; height: 72px; margin: -36px 0 0 -36px; border: 0; border-radius: 50%; background: rgba(29, 29, 31, .78); cursor: pointer; transition: transform .2s; }
.hw-play::after{ content: ""; position: absolute; left: 28px; top: 21px; border-style: solid; border-width: 15px 0 15px 24px; border-color: transparent transparent transparent #fff; }
.hw-play:hover{ transform: scale(1.06); }
.hw-vbox.is-on .hw-play{ display: none; }
.hw-shared{ display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 340px)); justify-content: center; gap: 24px; margin: 0 0 40px; }
.hw-shared[hidden]{ display: none; }
.hw-card{ display: grid; align-content: start; gap: 10px; padding: 20px; border-radius: 22px; background: #f5f4f1; }
.hw-card-big h2{ margin: 0; font: 700 24px/1.4 var(--serif); }
.hw-card-big p{ margin: 0; font-size: 16px; line-height: 1.6; color: #424245; }
.hw-kicker{ color: var(--primary) !important; font-weight: 700; font-size: 14px !important; }
.hw-more{ grid-column: 1 / -1; margin: 0; text-align: center; font-weight: 600; }
.hw-link{ margin: 0 0 20px; }
.hw-link-in{ text-align: left; margin-top: 12px; }
.hw-link-in h2{ margin: 0 0 4px; font-size: 18px; }
.hw-link-url{ margin: 8px 0; padding: 8px 10px; border-radius: 8px; background: #f5f4f1; font-size: 14px; overflow-wrap: anywhere; }
.hw-link-acts{ display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
@media (max-width: 760px){.hw-hero-in{ grid-template-columns: minmax(0, 1fr); gap: 22px; padding: 22px 16px 30px; }
.hw-hero-pic{ order: -1; aspect-ratio: 16 / 9; border-radius: 14px; }
.hw{ padding: 26px 16px 50px; }
.hw-sec{ padding: 20px 16px; border-radius: 18px; }
.hw-sec-body{ grid-template-columns: minmax(0, 1fr); gap: 20px; }
.hw-vbox{ max-width: 300px; margin: 0 auto; width: 100%; }
.hw-parts a{ grid-template-columns: 32px minmax(0, 1fr); }
.hw-part-when{ grid-column: 2; text-align: left; }
}
.hw-gate, .hw-load{ max-width: 640px; margin: 32px auto; text-align: center; font-size: 17px; }
.lcx-btn.is-off{ opacity: .45; filter: grayscale(.6); cursor: default; pointer-events: none; box-shadow: none; }
.lccd-login{ text-decoration: none; font-weight: 600; white-space: nowrap; }
.lcx-cmp-wrap{ overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 14px 0 8px; border: 1px solid #ecdcc4; border-radius: 12px; background: #fff; }
.lcx-cmp{ border-collapse: separate; border-spacing: 0; width: 100%; min-width: 680px; font-size: 15px; line-height: 1.45; }
.lcx-cmp th, .lcx-cmp td{ padding: 10px 12px; border-bottom: 1px solid #f1e6d3; text-align: left; vertical-align: top; }
.lcx-cmp tbody tr:last-child th, .lcx-cmp tbody tr:last-child td{ border-bottom: 0; }
.lcx-cmp-k{ position: sticky; left: 0; z-index: 1; width: 128px; min-width: 112px; background: #fbf6ec; color: var(--lcx-gold-ink); font-weight: 700; font-size: 14px; border-right: 1px solid #ecdcc4; }
.lcx-cmp thead th{ background: #fffaf2; border-bottom: 2px solid var(--lcx-red); vertical-align: bottom; }
.lcx-cmp thead .lcx-cmp-k{ background: #fbf6ec; }
.lcx-cmp-lv{ min-width: 136px; }
.lcx-cmp-lv .lcx-pkg-name, .lcx-cmp-lv .lcx-tier-price{ display: block; }
.lcx-pkg-name{ font-family: "Noto Serif TC", serif; font-size: 19px; font-weight: 700; color: var(--lcx-red); }
.lcx-cmp-lv .lcx-tier-price{ margin: 2px 0 8px; font-size: 22px; }
.lcx-cmp-lv.is-full{ opacity: .6; }
.lcx-cmp-go{ display: inline-block; padding: 5px 12px; border-radius: 999px; background: var(--lcx-red); color: #fff; font-size: 14px; font-weight: 600; text-decoration: none; white-space: nowrap; }
.lcx-cmp-go:hover{ color: #fff; text-decoration: none; filter: brightness(1.08); }
.lcx-cmp-pick{ display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 600; cursor: pointer; white-space: nowrap; }
.lcx-cmp-pick input{ width: 18px; height: 18px; accent-color: var(--lcx-red); }
.lcx-cmp-no{ color: #c9b89a; }
.lcx-cmp-hint{ display: none; font-weight: 500; font-size: 13px; color: var(--text-2); }
@media (max-width: 760px){.lcx-cmp-hint{ display: inline; }
}
.lcx-opts-h{ margin: 22px 0 8px; font-size: 18px; }
.lcx-opts{ display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; margin: 0 0 8px; }
.lcx-opt{ text-align: center; }
.lcx-opt-name{ margin: 0 0 4px; font-size: 15px; font-weight: 600; line-height: 1.4; }
.lcx-cmp-lv:has(input:checked){ background: #fdecea; box-shadow: inset 0 3px 0 var(--lcx-red); }
@media (max-width: 520px){.lcx-cmp-k{ width: 96px; min-width: 92px; font-size: 13px; padding: 10px 8px; }
.lcx-cmp{ font-size: 14px; min-width: 620px; }
.lcx-cmp th, .lcx-cmp td{ padding: 9px 10px; }
}
.mh-cong-zh{ --c: var(--c-zh); }
.mh-cong-en{ --c: var(--c-en); }
.mh-cong-children{ --c: var(--c-kids); }
.mh-cong-special{ --c: var(--c-special); }
.mh-cong{ border-top: 4px solid var(--c, #6e1f1c); background: #fff; }
.mh-cong:hover{ border-color: #d9c9ad; border-top-color: var(--c, #6e1f1c); box-shadow: 0 10px 26px rgba(35, 26, 16, 0.08); }
.mh-kicker, .mh-go{ color: var(--c, #6e1f1c); }
.mh-times li{ background: color-mix(in srgb, var(--c, #6e1f1c) 5%, #faf6ef); border-left: 2px solid var(--c, #6e1f1c); border-radius: 4px 9px 9px 4px; }
.mh-band{ padding: 44px 22px; background: #4a1715; color: #f6ece0; text-align: center; }
.mh-band-k{ margin: 0 0 6px; font-family: var(--serif); font-size: clamp(24px, 3vw, 30px); font-weight: 700; color: #f6ece0; }
.mh-band-t{ margin: 0 0 18px; font-size: 18px; color: #e3cfc0; }
.mh-band-btn{ display: inline-block; padding: 10px 26px; border-radius: 999px; border: 1px solid #d9b98a; color: #f6ece0; font-weight: 600; }
.mh-band-btn:hover{ text-decoration: none; background: rgba(255, 255, 255, 0.08); color: #fff; }
.m-zh{ --mc: var(--c-zh); --mc-soft: #f6efea; }
.m-en{ --mc: var(--c-en); --mc-soft: #eef1f4; }
.m-kids{ --mc: var(--c-kids); --mc-soft: #eff2ec; }
.ssc-wrap .ssc-block{ padding: 22px 22px 26px; border-radius: 14px; background: var(--mc-soft); }
.ssc-wrap .ssc-block .ssc-head{ border-bottom-color: rgba(0, 0, 0, 0.08); }
.ssc-wrap .ssc-block .ssc-card{ border-top: 3px solid var(--mc); }
.ssc-tone-0{ background: #243b57; }
.ssc-tone-1{ background: #6e4a22; }
.ssc-tone-2{ background: #3f5a3c; }
.ssc-tone-3{ background: #5b3a3a; }
.ssc-tone-4{ background: #3f5550; }
.ssc-tone-5{ background: #6e1f1c; }
.ssc-gen::after{ background: none; }
.ssc-mark{ color: rgba(255, 248, 236, 0.9); text-shadow: none; }
@media (max-width: 640px){.ssc-wrap .ssc-block{ padding: 16px 12px 18px; margin-left: -4px; margin-right: -4px; }
}
.photo-note{ max-width: 980px; margin: 14px auto; padding: 10px 14px; border: 1px dashed #b3261e; border-radius: 10px; background: #fff7f5; color: #5a1a14; font-size: 16px; }
.photo-note b{ display: inline-block; margin-right: 8px; padding: 1px 10px; border-radius: 999px; background: #b3261e; color: #fff; font-size: 13px; }
@media (max-width: 1020px){.photo-note{ margin-left: 16px; margin-right: 16px; }
}
.v2{ --v-ink: #1d1d1f; --v-grey: #6e6e73; --v-surface: #f5f4f1;
  --v-zh: #8c3a2e; --v-zh-bg: #f4e9e5; --v-en: #2f5476; --v-en-bg: #e7edf3; --v-kids: #46683f; --v-kids-bg: #e8efe4; --v-sp: #86652e; --v-sp-bg: #f3ecdf;
  background: #fff; }
.v2 main, .v2 .ab-section, .v2 .mz-sec{ background: transparent; }
.v2 .ab-hero{ background: #fff; border: 0; padding: 56px 22px 28px; }
.v2 .ab-eyebrow:not(:has(a)), .v2 .ab-rule{ display: none; }
.v2 .ab-eyebrow a{ color: var(--v-grey); letter-spacing: 0; font-size: 16px; }
.v2 .ab-title{ font-size: clamp(34px, 7vw, 56px); font-weight: 700; line-height: 1.15; letter-spacing: 0; color: var(--v-ink); }
.v2 .ab-sub{ max-width: 640px; margin: 14px auto 0; font-size: clamp(18px, 2.4vw, 22px); line-height: 1.55; color: var(--v-grey); }
.v2 .mz-h{ font-size: clamp(28px, 5vw, 40px); font-weight: 700; color: var(--v-ink); margin-bottom: 22px; }
.v2{ --acc: var(--m, #8c3a2e); --acc-bg: var(--v-surface); --amber: #86652e; }
.v2[class*="mc-"]{ --acc-bg: color-mix(in srgb, var(--acc) 9%, #fff); }
.v2 :is(.mp-hero, .pt-hero, .en-hero){ background: #fff; border: 0; }
.v2 .mz-hero{ background: #fff; box-shadow: 0 0 0 100vmax #fff; }
.v2 :is(.mz-eyebrow, .en-eyebrow, .mp-hero .kicker, .mp-hero .kicker a, .pt-hero .kicker, .pt-hero .kicker a){ color: var(--acc); letter-spacing: 0; font-size: 15px; font-weight: 600; text-transform: none; }
.v2 :is(.mz-title, .en-title, .mp-hero .headline, .pt-hero .headline){ color: var(--v-ink); font-weight: 700; letter-spacing: 0; }
.v2 :is(.za-tag, .en-tag){ color: var(--v-grey); font-family: var(--font); font-weight: 400; }
.v2 :is(.mz-verse, .ph-verse, .zm-verse p, .en-verse p){ font-family: var(--serif); color: #3a3a3c; }
.v2 :is(.mz-verse > small, .ph-verse cite, .zm-verse cite, .en-verse cite){ color: var(--v-grey); }
.v2 :is(.en-verse, .zm-verse){ border-left: 0; padding-left: 0; }
.v2 .mz-chips span{ border: 0; background: var(--v-surface); }
.v2 :is(.mz-h, .en-h, .au-h){ color: var(--v-ink); font-weight: 700; letter-spacing: 0; }
.v2 :is(.mz-num, .mz-k, .en-k, .zm-num, .zm-tag, .mx-kicker){ color: var(--acc); letter-spacing: 0; }
.v2 .zm-title{ color: var(--v-ink); }
.v2 :is(.mp-subnav, .ab-subnav, .zs-jump){ background: rgba(255, 255, 255, 0.94); border: 0; }
.v2 :is(.mp-subnav, .ab-subnav, .zs-jump) a{ border: 0; background: var(--v-surface); color: var(--v-ink); }
.v2 :is(.mp-subnav, .ab-subnav) a[aria-current="page"], .v2 .zs-jump a.is-here{ background: var(--acc); color: #fff; }
.v2 :is(.mz-areas a, .ds-card, .mz-card, .kreg-steps > li, .en-ask, .vt-service, .pr-card, .rt-card, .wt-choice, .anc, .tile, .cw-facts div){ border: 0; border-radius: 22px; box-shadow: none; background: var(--acc-bg); }
.v2 :is(.mz-areas a, .vt-service, .wt-choice, .anc, .tile):hover{ border: 0; box-shadow: none; transform: none; filter: brightness(0.98); }
.v2 :is(.zm-times li, .mz-times li, .mh-times li){ border: 0; }
.v2 .zm-times li{ background: var(--acc-bg); border-radius: 12px; }
.v2 .news-link{ border: 0; border-radius: 18px; background: var(--v-surface); }
.v2 .news-link::after{ color: var(--v-grey); }
.v2 .anc-date{ background: var(--acc); }
.v2 .anc-meta{ color: var(--acc); }
.v2 :is(.mz-closing, .en-own, .en-next, .ss-more){ background: var(--v-surface); border: 0; box-shadow: 0 0 0 100vmax var(--v-surface); clip-path: inset(0 -100vmax); }
.v2 :is(.mz-closing, .en-own, .en-next) :is(.mz-card, .ds-card, .en-ask, .news-link){ background: #fff; }
.v2 .zm-item{ border-top-color: #eeece8; }
.v2 .mh-sec{ padding-top: 8px; }
.v2 .mh-sec .mz-h{ display: none; }
.v2 .mh-congs{ gap: 14px; }
.v2 .mh-cong{ gap: 6px; padding: 30px 28px 26px; border: 0; border-radius: 26px; box-shadow: none; background: var(--bg); }
.v2 .mh-cong:hover{ box-shadow: none; transform: none; filter: brightness(0.985); }
.v2 .mh-cong-zh{ --fg: var(--v-zh); --bg: var(--v-zh-bg); }
.v2 .mh-cong-en{ --fg: var(--v-en); --bg: var(--v-en-bg); }
.v2 .mh-cong-children{ --fg: var(--v-kids); --bg: var(--v-kids-bg); }
.v2 .mh-cong-special{ --fg: var(--v-sp); --bg: var(--v-sp-bg); }
.v2 .mh-kicker{ color: var(--fg); font-size: 15px; font-weight: 600; letter-spacing: 0; }
.v2 .mh-cong-name{ color: var(--fg); font-size: clamp(30px, 5vw, 38px); font-weight: 700; }
.v2 .mh-cong-intro{ color: #3a3a3c; font-size: 18px; line-height: 1.6; }
.v2 .mh-times{ gap: 0; margin-top: 10px; }
.v2 .mh-times li{ flex-direction: row; justify-content: flex-start; gap: 12px; padding: 7px 0; border: 0; border-radius: 0; background: none; }
.v2 .mh-times li + li{ border-top: 1px solid rgba(0, 0, 0, 0.06); }
.v2 .mh-times span{ order: 2; color: var(--v-grey); font-size: 16px; }
.v2 .mh-times b{ order: 1; min-width: 7.5em; color: var(--v-ink); font-weight: 600; font-size: 16px; }
.v2 .mh-go{ color: var(--fg); font-weight: 600; padding-top: 14px; }
.v2 .mh-band{ margin-top: 48px; padding: 56px 22px 60px; background: var(--v-surface); color: var(--v-ink); }
.v2 .mh-band-k{ color: var(--v-ink); font-size: clamp(30px, 6vw, 44px); }
.v2 .mh-band-t{ color: var(--v-grey); font-size: 19px; }
.v2 .mh-band-btn{ border: 0; background: var(--primary); color: #fff; padding: 12px 28px; font-size: 17px; }
.v2 .mh-band-btn:hover{ background: var(--primary-hover); color: #fff; }
.v2 .ssc-wrap{ max-width: none; padding: 0 0 48px; }
.v2 .ssc-intro{ max-width: 1080px; margin: 0 auto 40px; padding: 0 22px; }
.v2 .ssc-season-card{ background: var(--v-surface); color: var(--v-ink); box-shadow: none; border-radius: 26px; }
.v2 .ssc-season-name{ letter-spacing: 0; }
.v2 :is(.ssc-season-dates, .ssc-season-week){ color: var(--v-grey); }
.v2 .ssc-season-bar{ background: rgba(0, 0, 0, 0.08); }
.v2 .ssc-season-bar i{ background: var(--v-ink); }
.v2 .ssc-min{ border: 0; border-radius: 22px; box-shadow: none; background: var(--mc-soft); }
.v2 .ssc-min:hover{ transform: none; box-shadow: none; filter: brightness(0.985); }
.v2 .ssc-min-name{ color: var(--mc); }
.v2 .m-zh{ --mc: var(--v-zh); --mc-soft: var(--v-zh-bg); }
.v2 .m-en{ --mc: var(--v-en); --mc-soft: var(--v-en-bg); }
.v2 .m-kids{ --mc: var(--v-kids); --mc-soft: var(--v-kids-bg); }
.v2 .ssc-wrap .ssc-block{ margin: 0; padding: 48px max(22px, calc((100% - 1036px) / 2)) 52px; border-radius: 0; background: var(--mc-soft); }
.v2 .ssc-wrap .ssc-block .ssc-head{ border: 0; padding: 0; margin-bottom: 22px; }
.v2 .ssc-head h2{ color: var(--mc); font-size: clamp(28px, 5vw, 40px); }
.v2 .ssc-head h2::before{ content: none; }
.v2 .ssc-head p{ color: var(--v-grey); }
.v2 .ssc-wrap .ssc-block .ssc-card{ border: 0; border-radius: 20px; box-shadow: none; }
.v2 .ssc-card:hover{ transform: none; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06); }
.v2 .ssc-name{ color: var(--v-ink); }
.v2 .ssc-room, .v2 .ssc-next{ background: var(--v-surface); }
.v2 .ssc-next b{ color: var(--mc); }
.v2 .ssc-tone-0{ background: var(--v-en); }
.v2 .ssc-tone-1{ background: var(--v-sp); }
.v2 .ssc-tone-2{ background: var(--v-kids); }
.v2 .ssc-tone-3{ background: var(--v-zh); }
.v2 .ssc-tone-4{ background: #4d5a6a; }
.v2 .ssc-tone-5{ background: #6b4a3a; }
.v2 .ssc-all{ margin-top: 28px; }
.v2 .ss-more{ background: var(--v-surface); padding: 48px 0; }
.v2 .news-link{ border: 0; border-radius: 18px; background: #fff; }
.v2 .news-link::after{ color: var(--v-grey); }
.v2 .photo-note{ margin-top: 0; }
@media (max-width: 640px){.v2 .ab-hero{ padding: 36px 20px 20px; }
.v2 .mh-cong{ padding: 26px 22px 22px; border-radius: 22px; }
.v2 .ssc-intro{ padding: 0 16px; }
.v2 .ssc-wrap .ssc-block{ padding: 36px 16px 40px; }
}
.v2 .ssc-block .ssc-gen{ background: var(--mc); }
.v2 .ssc-block .ssc-card:nth-child(even) .ssc-gen{ background: color-mix(in srgb, var(--mc) 78%, #1d1d1f); }
.v2 .ssc-empty{ border: 0; border-radius: 20px; background: #fff; color: var(--v-grey); }
.v2 .bl-hero{ padding-bottom: 20px; }
.v2 .bl-hero .ab-eyebrow{ display: block; margin-bottom: 10px; letter-spacing: 0; font-size: 16px; }
.v2 .bl-hero .ab-eyebrow a{ color: var(--v-grey); }
.v2 .bl-hero-date{ margin: 8px 0 0; font-size: 19px; color: var(--v-grey); }
.v2 .bl-reader-paper{ padding-top: 0; }
.v2 .bl-jump{ position: sticky; top: 60px; z-index: 5; flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin: 0; padding: 10px 0 12px; border: 0; background: rgba(255, 255, 255, 0.94); backdrop-filter: blur(8px); box-shadow: 0 0 0 100vmax rgba(255, 255, 255, 0.94); clip-path: inset(0 -100vmax); }
.v2 .bl-jump::-webkit-scrollbar{ display: none; }
.v2 .bl-jump a{ border: 0; background: var(--v-surface); color: var(--v-ink); font-size: 15px; padding: 7px 14px; }
.v2 .bl-jump a:hover{ background: #ebe9e4; color: var(--v-ink); }
.v2 .bl{ margin-top: 0; color: var(--v-ink); }
.v2 .bl-vol{ margin: 18px 0 0; color: var(--v-grey); letter-spacing: 0; }
.v2 .bl > .bl-block{ --band: #fff; --hd: var(--v-ink); margin: 0; padding: 44px 0 40px; background: var(--band); box-shadow: 0 0 0 100vmax var(--band); clip-path: inset(0 -100vmax); }
.v2 .bl-h{ font-size: clamp(26px, 5vw, 32px); color: var(--hd); margin-bottom: 18px; }
.v2 .bl-h::before{ content: none; }
.v2 .bl > .bl-verse{ --band: #1f2933; --hd: #c9cdd2; padding: 52px 0 50px; }
.v2 .bl-verse .bl-h{ font-size: 16px; font-family: var(--font); font-weight: 600; color: #9aa3ad; }
.v2 .bl-verse blockquote{ padding: 0; border: 0; background: none; color: #f5f5f7; font-size: clamp(24px, 4.6vw, 30px); line-height: 1.7; }
.v2 .bl-verse cite{ margin-top: 18px; text-align: left; color: #9aa3ad; font-size: 17px; }
.v2 .bl-title{ font-size: clamp(24px, 4.4vw, 28px); color: var(--v-ink); }
.v2 .bl-meta dt, .v2 .bl-sub{ color: var(--v-grey); }
.v2 .bl > .bl-order, .v2 .bl > .bl-more{ --band: var(--v-surface); }
.v2 .bl-order .bl-table{ border: 0; border-radius: 20px; background: #fff; }
.v2 .bl-table th, .v2 .bl-table td{ border-bottom-color: #eeece8; padding: 13px 16px; }
.v2 .bl-table th{ color: var(--v-grey); }
.v2 .bl-songs a{ border-bottom: 0; color: var(--v-ink); }
.v2 .bl-songs a:hover{ color: var(--v-zh); }
.v2 .bl-play{ width: 20px; height: 20px; background: var(--v-zh); font-size: 10px; }
.v2 .bl-list li::marker{ color: var(--v-zh); }
.v2 .bl-list li{ margin-bottom: 16px; }
.v2 .bl > .bl-prayer{ --band: var(--v-kids-bg); --hd: var(--v-kids); }
.v2 .bl-prayer .bl-list li::marker{ color: var(--v-kids); }
.v2 .bl > .bl-mission{ --band: var(--v-sp-bg); --hd: var(--v-sp); border-radius: 0; }
.v2 .bl > .bl-groups{ --band: #fff; --hd: var(--v-ink); }
.v2 .bl-groups a{ color: var(--v-sp); font-weight: 600; }
.v2 .bl-more .news-link{ border: 0; border-radius: 18px; background: #fff; }
.v2 .bl-more .news-link::after{ color: var(--v-grey); }
.v2 .bl-fold{ margin-top: 16px; border: 0; border-radius: 18px; background: #fff; padding: 14px 18px; }
.v2 .bl-fold .bl-block{ margin: 18px 0 0; padding: 0; background: none; box-shadow: none; clip-path: none; }
.v2 .bl-fold .bl-h{ font-size: 22px; }
.v2 .bl-serve-list{ border: 0; background: var(--v-surface); border-radius: 16px; }
.v2 .bl-serve-list li{ border-bottom-color: #e9e6e0; }
@media (max-width: 560px){.v2 .bl > .bl-block{ padding: 36px 0 32px; }
.v2 .bl-jump{ top: 56px; }
}
.v2 .bl-list{ list-style: none; padding-left: 0; }
.v2 .bl-list li{ margin: 0; padding: 16px 0; padding-left: 0; }
.v2 .bl-list li + li{ border-top: 1px solid rgba(0, 0, 0, 0.08); }
.v2 .bl-list li:first-child{ padding-top: 0; }
.v2 .bl-list li:last-child{ padding-bottom: 0; }
.bl-today-title{ display: block; font-weight: 700; }
.bl-today-by{ display: block; margin-top: 2px; font-size: 0.85em; color: var(--text-2); }
.bl-outline{ margin-top: 12px; }
.bl-outline > summary{ cursor: pointer; font-weight: 600; color: var(--link); }
.bl-outline[open] > summary{ margin-bottom: 8px; }
.bl-events{ list-style: none; margin: 0; padding: 0; }
.bl-ev{ display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 16px; align-items: start; padding: 0 0 18px; }
.bl-ev-date{ display: flex; flex-direction: column; align-items: center; padding: 8px 0 9px; border-radius: 14px; line-height: 1.1; background: #f4e9e5; color: #8c3a2e; }
.bl-ev-m1 .bl-ev-date{ background: #e7edf3; color: #2f5476; }
.bl-ev-m2 .bl-ev-date{ background: #e8efe4; color: #46683f; }
.bl-ev-m3 .bl-ev-date{ background: #f3ecdf; color: #86652e; }
.bl-ev-date small{ font-size: 13px; }
.bl-ev-date b{ font-size: 26px; font-weight: 700; }
.bl-ev-h{ margin: 2px 0 4px; font-size: 1.05em; font-weight: 700; line-height: 1.45; }
.bl-ev-text p{ margin: 0 0 6px; }
.v2 .bl > .bl-verse{ --band: #fff; --hd: var(--v-grey); padding: 36px 0 36px; }
.v2 .bl-verse .bl-h{ color: var(--v-grey); font-size: 15px; }
.v2 .bl-verse blockquote{ color: var(--v-ink); font-family: var(--serif); font-weight: 700; font-size: clamp(26px, 5.4vw, 36px); line-height: 1.55; }
.v2 .bl-verse cite{ color: var(--v-grey); font-family: var(--font); font-weight: 400; }
.v2 .bl > .bl-today{ --band: #fff; border-top: 1px solid #eeece8; }
.v2 .bl-today-list{ border: 0; background: none; font-size: 17px; }
.v2 .bl-today-list th{ width: 5.5em; padding-left: 0; font-size: 15px; font-weight: 400; color: var(--v-grey); }
.v2 .bl-today-list td{ padding-right: 0; }
.v2 .bl-today-list tr + tr :is(th, td){ border-top: 1px solid #eeece8; }
.v2 .bl-today-list :is(th, td){ border-bottom: 0; }
.v2 .bl-today-title{ font-size: 18px; }
.v2 .bl-today-by{ color: var(--v-grey); font-size: 15px; }
.v2 .bl-outline{ margin-top: 18px; padding: 14px 18px; border-radius: 16px; background: var(--v-surface); }
.v2 .bl-outline > summary{ color: var(--v-ink); }
.v2 .bl > .bl-upcoming{ --band: var(--v-surface); }
.v2 .bl-ev{ gap: 16px; padding: 0 0 22px; font-size: 17px; }
.v2 .bl-ev-text p{ color: #55555a; line-height: 1.65; }
.v2 .bl-ev-h{ color: var(--v-ink); font-size: 18px; }
.v2 .bl-ev-text a{ color: var(--v-en); }
.v2 .bl > .bl-announcements:not(.bl-upcoming){ --band: #fff; }
.bl-cover{ margin: 0; }
.bl-cover img{ display: block; width: 100%; height: clamp(220px, 42vw, 420px); object-fit: cover; }
@media (min-width: 840px){.bl-cover{ max-width: 1080px; margin: 24px auto 0; padding: 0 22px; }
.bl-cover img{ border-radius: 24px; }
}
.v2 .bl-cover + .bl-hero{ padding-top: 28px; }
.v2 .bl > .bl-gospel{ --band: var(--v-en-bg); --hd: var(--v-en); }
.v2 .bl-gospel .bl-title{ color: var(--v-ink); font-size: clamp(22px, 4.4vw, 26px); }
.v2 .bl-gospel p{ color: #3a3a3c; }
.bl-notes{ font-size: 1em; }
.bl-note{ margin: 0 0 16px; line-height: 1.75; }
.bl-note-h{ font-family: var(--serif); font-weight: 700; font-size: 1.05em; }
.bl-note-h i{ font-style: normal; color: #8c3a2e; margin-right: 8px; }
.bl-note-end{ margin: 6px 0 0; padding-top: 16px; border-top: 1px solid #eeece8; font-family: var(--serif); line-height: 1.75; }
.v2 .bl > .bl-outline{ --band: #fff; padding-top: 8px; }
.v2 .bl-outline .bl-h{ font-size: 20px; color: var(--v-grey); font-family: var(--font); font-weight: 600; }
.v2 .bl-note{ font-size: 17px; color: #3a3a3c; }
.v2 .bl-note-h{ color: var(--v-ink); font-size: 18px; }
.v2 .bl-note-end{ color: var(--v-ink); font-size: 17px; }
.v2 .bl-mission .bl-list li + li{ border-top-color: rgba(0, 0, 0, 0.08); }
.v2{ --paper: #fff; --linen: var(--v-surface); --ivory: #fff; --cream: var(--v-surface); --gray: var(--v-surface); --rule: #eeece8; }
.v2 .au-hero.is-paper{ background: #fff; }
.v2 .au-hero.is-paper .au-eyebrow{ color: var(--acc); letter-spacing: 0; font-weight: 600; }
.v2 .au-hero.is-paper .au-title{ color: var(--v-ink); text-shadow: none; }
.v2 .au-hero.is-paper :is(.cl-jump a){ background: var(--v-surface); border: 0; color: var(--v-ink); }
.v2 .gv-h{ border-bottom: 0; padding-bottom: 0; color: var(--v-ink); }
.v2 .gv-way{ border-bottom-color: #eeece8; }
.v2 :is(.gv-way h3, .vt-service h3){ color: var(--v-ink); }
.v2 .ab-eyebrow{ color: var(--v-grey); letter-spacing: 0; font-size: 16px; }
.v2 .cal-ev, .v2 .ag-ev{ border-left: 0; border-radius: 14px; background: color-mix(in srgb, var(--m) 9%, #fff); }
.v2 .cal-ev:hover{ background: color-mix(in srgb, var(--m) 15%, #fff); }
.v2 :is(.pair-strip li, .mp-list li, .mx-list li, .cw-facts div, .sg-list a, .cal-agenda li a, .cl-day li a, .cl-day li .cl-row, .ce-daylist li, .ce-wday li, .yt-list li, .pw .pw-card, .pw .pw-praise, .pr-replies, .ma-terms div, .hi-toc, .gv-addr, .give-address){ border-left: 0; border-radius: 14px; }
.v2 :is(.mp-list li, .mx-list li, .yt-list li, .sg-list a, .cl-day li a, .cal-agenda li a){ background: var(--acc-bg); padding-left: 14px; }
.v2 :is(.give-address, .gv-addr){ background: var(--v-surface); }
.v2 :is(.fb-quote, .pw-r-verse blockquote, .hi2-poem, .bl-reader-verse, .hw-hero-verse){ border-left: 0; padding-left: 0; background: none; font-family: var(--serif); }
.v2 .cal-agenda li .ag-row{ border-left: 0; border-radius: 14px; background: color-mix(in srgb, var(--m) 8%, #fff); }
.v2 .cal-agenda li .ag-row:hover{ box-shadow: none; background: color-mix(in srgb, var(--m) 14%, #fff); }
.v2 :is(.lx-menu, .lx-manage){ background: var(--v-surface); }
.v2 :is(.lx-grace-card, .lx-manage-in){ border: 0; box-shadow: none; background: #fff; }
.v2 .bj-path{ counter-reset: bj; gap: 10px; }
.v2 .bj-path::before{ content: none; }
.v2 .bj-path li{ counter-increment: bj; justify-items: start; text-align: left; padding: 18px 18px 16px; border-radius: 20px; background: var(--v-surface); }
.v2 .bj-path li::before{ content: counter(bj); position: static; width: auto; height: auto; border: 0; border-radius: 0; background: none; box-shadow: none; font-family: var(--serif); font-size: 26px; font-weight: 700; line-height: 1; color: var(--acc); margin-bottom: 6px; }
.v2 .bj-path li.is-done::before{ background: none; color: var(--v-grey); }
.v2 .bj-path li.is-now{ background: color-mix(in srgb, var(--acc) 10%, #fff); }
.v2 .bj-path li.is-now::before{ background: none; box-shadow: none; }
.v2 .bj-path strong{ color: var(--v-ink); }
.v2 .bj-path span{ color: var(--v-grey); }
@media (max-width: 640px){.v2 .bj-path{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
.v2 .bj-path li{ padding: 16px 14px 14px; }
}
.v2 .au2-years{ display: grid; gap: 8px; }
.v2 .au2-years li{ border: 0; padding: 14px 16px; border-radius: 16px; background: var(--v-surface); grid-template-columns: 58px 1fr; }
.v2 .au2-years li > span{ color: var(--acc); }
.v2 .au2-years li > div span{ font: inherit; color: inherit; }
.v2 .au2-years b{ color: var(--v-ink); }
.v2 .au2-years small{ color: var(--v-grey); }
.v2 .zm-points dt{ color: var(--v-ink); }
.v2 .zm-points dd, .v2 .hi2-closing{ color: #3a3a3c; }
.v2 .hi2-poem{ color: var(--v-ink); }
.sv-bulletin{ margin: 18px 0; padding: 18px 20px 16px; border: 0; border-radius: 18px; background: #f5f4f1; }
.sv-bulletin legend{ padding: 0; font-family: var(--serif); font-size: 20px; font-weight: 700; }
.sv-bulletin-rule{ margin: 6px 0 14px; padding: 12px 14px; border-radius: 12px; background: #fff; color: #3a3a3c; font-size: 16px; line-height: 1.6; }
.sv-bulletin-preview{ margin-top: 10px; padding: 12px 14px; border-radius: 12px; background: #fff; }
.sv-bulletin-preview small{ display: block; color: #6e6e73; font-size: 14px; margin-bottom: 4px; }
.sv-bulletin-preview p{ margin: 0; line-height: 1.7; }
.sv-kind-pick{ border: 0; padding: 0; margin: 0 0 12px; }
.sv-kind-pick legend{ font-weight: 600; margin-bottom: 4px; }
.an-manage-note{ padding: 14px 16px; border-radius: 16px; background: #f5f4f1; }
.an-manage-note p{ margin: 0 0 10px; line-height: 1.65; }
.an-manage-note .an-links{ display: flex; gap: 8px; flex-wrap: wrap; margin: 0; }
.sv-head{ display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 20px; align-items: start; margin: 0 0 16px; }
.sv-head .sv-kind{ color: #8c3a2e; font-weight: 600; font-size: 15px; }
.sv-head .sv-kind.is-pastoral{ color: #2f5476; }
.sv-head .sv-title{ font-size: clamp(26px, 5vw, 36px); line-height: 1.3; }
.sv-head .sv-when{ color: #6e6e73; margin: 4px 0 0; }
.sv-verse{ margin: 12px 0 0; font-family: var(--serif); color: #3a3a3c; line-height: 1.7; }
.sv-verse small{ display: block; font-family: var(--font); color: #6e6e73; font-size: 14px; }
.sv-acts{ display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 0; }
.sv-head-pic{ width: 120px; height: 120px; border-radius: 50%; object-fit: cover; }
.sv-blk{ margin: 0 0 12px; padding: 16px 18px; border-radius: 20px; background: #f5f4f1; }
.sv-blk > h3{ margin: 0 0 10px; font-size: 17px; font-family: var(--font); font-weight: 600; }
.sv-blk .sv-about p{ margin: 0 0 8px; line-height: 1.75; }
.sv-blk .sv-plan{ border: 0; }
.sv-blk .sv-roles{ border: 0; }
.sv-qrrow{ display: flex; gap: 16px; align-items: center; }
.sv-qr{ flex: none; width: 112px; height: 112px; padding: 8px; border-radius: 12px; background: #fff; }
.sv-qr svg{ display: block; width: 100%; height: 100%; }
.sv-qrrow p{ margin: 0; line-height: 1.7; }
.sv-tasks{ width: 100%; border-collapse: collapse; }
.sv-tasks td{ padding: 9px 0; border-top: 1px solid #e8e5df; vertical-align: top; }
.sv-tasks tr:first-child td{ border-top: 0; }
.sv-tasks td:last-child{ text-align: right; color: #46683f; font-weight: 600; padding-left: 12px; }
.sv-tasks small{ display: block; color: #6e6e73; font-weight: 400; }
.sv-none{ color: #8c3a2e; }
.sv-task input[data-k="item"]{ flex: 2 1 180px; }
.sv-task input[data-k="groups"]{ flex: 1 1 140px; }
@media (max-width: 640px){.sv-head{ grid-template-columns: minmax(0, 1fr); }
.sv-head-pic{ width: 88px; height: 88px; grid-row: 1; }
.sv-qr{ width: 96px; height: 96px; }
}
.sv-blk .sv-plan li{ display: grid; grid-template-columns: minmax(7em, auto) minmax(0, 1fr); gap: 4px 14px; padding: 8px 0; border-top: 1px solid #e8e5df; border-bottom: 0; }
.sv-blk .sv-plan li:first-child{ border-top: 0; }
.sv-blk .sv-plan li > b{ color: #1d1d1f; font-weight: 600; white-space: nowrap; }
.hc-tabs{ display: flex; flex-wrap: wrap; gap: 6px; margin: 4px 0 14px; }
.hc-tabs button{ padding: 7px 14px; border: 0; border-radius: 999px; background: #f5f4f1; color: #1d1d1f; font: inherit; font-size: 15px; cursor: pointer; }
.hc-tabs button[aria-selected="true"]{ background: #1d1d1f; color: #fff; }
.svx-page, .svx-editor{ padding-top: 26px; }
.svx-status:empty{ display: none; }
.an-page-hero[hidden]{ display: none; }
.svx-bar{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 14px; margin: 0 0 8px; }
.svx-seg{ display: inline-flex; padding: 3px; border-radius: 999px; background: #f5f4f1; }
.svx-seg button{ padding: 7px 16px; border: 0; border-radius: 999px; background: none; color: #424245; font: inherit; font-size: 15px; cursor: pointer; }
.svx-seg button[aria-pressed="true"]{ background: #fff; color: #1d1d1f; font-weight: 600; box-shadow: 0 1px 3px rgba(0, 0, 0, .12); }
.svx-menus{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.svx-menu select{ appearance: none; -webkit-appearance: none; min-height: 0; padding: 8px 32px 8px 14px; border: 0; border-radius: 999px; font: inherit; font-size: 15px; color: #1d1d1f; cursor: pointer;
  background: #f5f4f1 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%236e6e73' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 13px center; }
.svx-menu.is-on select{ background-color: #1d1d1f; color: #fff; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23ffffff' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.svx-gear{ padding: 8px 14px; border: 0; border-radius: 999px; background: none; color: #6e6e73; font: inherit; font-size: 15px; cursor: pointer; }
.svx-gear::before{ content: "⚙"; margin-right: 5px; }
.svx-gear:hover{ background: #f5f4f1; color: #1d1d1f; }
.svx-sec{ margin: 26px 0 12px; font: 700 21px/1.3 var(--font); color: #1d1d1f; }
.svx-sec small{ margin-left: 4px; color: #86868b; font-weight: 400; font-size: 17px; }
.svx-empty{ margin: 4px 0 0; color: #6e6e73; }
.svx-grid{ display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: 14px; }
.svx-tile{ position: relative; display: flex; flex-direction: column; border-radius: 22px; background: #f5f4f1; color: #1d1d1f; overflow: hidden; }
.svx-tile-main{ flex: 1; display: flex; flex-direction: column; gap: 4px; padding: 18px 20px 16px; color: inherit; text-decoration: none; }
.svx-tile-main:hover{ text-decoration: none; }
.svx-tile:hover{ background: #efeeea; }
.svx-tile-top{ display: flex; flex-wrap: wrap; gap: 2px 10px; font-size: 13.5px; }
.svx-day{ color: #86652e; font-weight: 700; }
.svx-tile.is-pastoral .svx-day{ color: #2f5476; }
.svx-type{ color: #6e6e73; }
.svx-name{ margin: 2px 0 0; font-size: 19px; line-height: 1.35; font-weight: 700; }
.svx-tile:has(.svx-pic) .svx-tile-top, .svx-tile:has(.svx-pic) .svx-name{ padding-right: 62px; }
.svx-where{ color: #424245; font-size: 15px; line-height: 1.5; }
.svx-pic{ position: absolute; top: 16px; right: 16px; width: 54px; height: 54px; border-radius: 50%; object-fit: cover; }
.svx-tags{ display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.svx-tag{ padding: 3px 10px; border-radius: 999px; background: #fff; color: #424245; font-size: 13px; }
.svx-tag.is-draft{ background: #1d1d1f; color: #fff; }
.svx-tile.is-draft{ background: #fbfbfa; box-shadow: inset 0 0 0 1.5px #e3e1dc; }
.svx-acts{ display: flex; gap: 2px; padding: 0 12px 12px; }
.svx-acts button{ padding: 6px 10px; border: 0; border-radius: 10px; background: none; color: #424245; font: inherit; font-size: 14px; cursor: pointer; }
.svx-acts button:hover{ background: #fff; color: #1d1d1f; }
.svx-acts .is-del{ margin-left: auto; color: #8c3a2e; }
.svx-add{ align-items: center; justify-content: center; gap: 6px; min-height: 168px; padding: 20px; border: 0; background: #fff; box-shadow: inset 0 0 0 1.5px #e3e1dc; font: inherit; cursor: pointer; }
.svx-add:hover{ background: #f5f4f1; box-shadow: none; }
.svx-plus{ position: relative; width: 52px; height: 52px; margin-bottom: 4px; border-radius: 50%; background: #1d1d1f; }
.svx-plus::before, .svx-plus::after{ content: ""; position: absolute; left: 50%; top: 50%; width: 22px; height: 2.5px; margin: -1.25px 0 0 -11px; border-radius: 2px; background: #fff; }
.svx-plus::after{ transform: rotate(90deg); }
.svx-add b{ font-size: 17px; }
.svx-add small{ color: #6e6e73; font-size: 14px; }
.svx-yr{ margin: 0 0 10px; padding: 2px 18px; border-radius: 20px; background: #f5f4f1; }
.svx-yr > summary{ padding: 12px 0; font-weight: 700; cursor: pointer; }
.svx-yr > summary small{ margin-left: 6px; color: #86868b; font-weight: 400; }
.svx-yr ul{ margin: 0 0 10px; padding: 0; list-style: none; }
.svx-yr li{ display: flex; align-items: center; gap: 10px; padding: 4px 0; }
.svx-yr li + li{ box-shadow: 0 -1px 0 #e8e6e1; }
.svx-yr li a{ flex: 1; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 2px 12px; min-width: 0; padding: 8px 0; color: #1d1d1f; text-decoration: none; }
.svx-yr li a span{ color: #6e6e73; font-size: 14px; }
.svx-copy{ flex: none; padding: 5px 10px; border: 0; border-radius: 10px; background: #fff; color: #424245; font: inherit; font-size: 13.5px; cursor: pointer; }
.svx-h2{ margin: 0 0 6px; font: 700 clamp(26px, 4vw, 32px)/1.3 var(--serif); color: #1d1d1f; }
.svx-h3{ margin: 0 0 8px; font: 700 18px/1.4 var(--font); color: #1d1d1f; }
.svx-settings .svx-panel{ margin: 14px 0; padding: 18px 20px; border-radius: 20px; background: #f5f4f1; }
.svx-settings[hidden], .svx-page [data-sv-main][hidden]{ display: none; }
.svx-settings .sv-type-list li{ border-bottom: 0; box-shadow: 0 1px 0 #e8e6e1; }
.svx-kindnote{ margin: 0 0 4px; color: #6e6e73; font-size: 15px; }
.svx-tabs{ position: sticky; top: 64px; z-index: 6; display: flex; gap: 4px; margin: 14px -4px 18px; padding: 8px 4px; overflow-x: auto; scrollbar-width: none; background: #fff; }
.svx-tabs::-webkit-scrollbar{ display: none; }
.svx-tabs button{ flex: none; display: inline-flex; align-items: center; gap: 6px; padding: 8px 15px; border: 0; border-radius: 999px; background: #f5f4f1; color: #424245; font: inherit; font-size: 15px; cursor: pointer; white-space: nowrap; }
.svx-tabs button[aria-selected="true"]{ background: #1d1d1f; color: #fff; font-weight: 600; }
.svx-count:empty{ display: none; }
.svx-count{ min-width: 20px; padding: 0 6px; border-radius: 999px; background: #fff; color: #1d1d1f; font-size: 12px; font-weight: 700; line-height: 20px; text-align: center; }
.svx-tabs button[aria-selected="true"] .svx-count{ background: rgba(255, 255, 255, .22); color: #fff; }
.svx-pane[hidden]{ display: none; }
.svx-form:not([data-tab="look"]) [data-sv-preview]{ display: none; }
.svx-form input:not([type=checkbox]):not([type=radio]):not([type=file]), .svx-form select, .svx-form textarea{ border: 1px solid #d2d2d7; border-radius: 12px; background: #fff; }
.svx-form input:focus, .svx-form select:focus, .svx-form textarea:focus{ border-color: #1d1d1f; outline: 0; box-shadow: 0 0 0 3px rgba(29, 29, 31, .08); }
.svx-pane{ min-height: 46vh; }
.svx-help{ margin: 0 0 14px; color: #6e6e73; font-size: 15px; line-height: 1.65; }
.svx-form .sv-bulletin{ margin: 0 0 14px; }
.svx-form .sv-bulletin > label{ display: grid; gap: 4px; margin-bottom: 10px; }
.svx-wide{ display: grid; gap: 4px; margin: 4px 0 14px; }
.svx-kind{ display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 10px; margin: 0 0 16px; padding: 0; border: 0; }
.svx-kind legend{ margin-bottom: 8px; font-weight: 600; }
.svx-kind label{ position: relative; display: flex; gap: 10px; align-items: flex-start; padding: 14px 16px; border-radius: 16px; background: #f5f4f1; cursor: pointer; font-weight: 400; }
.svx-kind label:has(input:checked){ background: #1d1d1f; color: #fff; }
.svx-kind label:has(input:checked) small{ color: rgba(255, 255, 255, .75); }
.svx-kind input{ flex: none; width: auto !important; min-height: 0; margin: 4px 0 0; padding: 0; accent-color: #fff; }
.svx-kind label > span{ flex: 1; min-width: 0; }
.svx-kind b{ display: block; font-size: 16px; }
.svx-kind small{ display: block; margin-top: 2px; color: #6e6e73; font-size: 13.5px; line-height: 1.5; }
.svx-switch{ display: flex !important; gap: 10px; align-items: flex-start; margin: 6px 0 0; padding: 14px 16px; border-radius: 16px; background: #f5f4f1; font-weight: 400 !important; cursor: pointer; }
.svx-switch input{ width: 20px; height: 20px; margin-top: 2px; accent-color: #1d1d1f; flex: none; }
.svx-switch b{ display: block; color: #1d1d1f; }
.svx-switch small{ display: block; color: #6e6e73; font-size: 14px; line-height: 1.5; }
.svx-form .sv-row{ padding: 12px; border-radius: 14px; background: #f5f4f1; margin: 0 0 8px; }
.svx-form .sv-row input, .svx-form .sv-row select, .svx-form .sv-row textarea{ border-color: #e3e1dc; background: #fff; }
.svx-form .sv-row[data-sv-r], .svx-form .sv-row[data-sv-t], .svx-form .sv-row[data-sv-s]{ display: grid; gap: 8px; align-items: center; }
.svx-form .sv-row [data-sv-del-row]{ grid-area: del; justify-self: end; width: 32px; height: 32px; border-radius: 50%; color: #8c3a2e; }
.svx-form .sv-row [data-sv-del-row]:hover{ background: #fff; }
.svx-form .sv-row[data-sv-r]{ grid-template-columns: minmax(0, 2fr) 88px 76px minmax(0, 1.3fr) 32px; grid-template-areas: "name need unit arrive del" "groups groups groups groups groups" "about about about about about"; }
.svx-form .sv-row[data-sv-r] [data-k="name"]{ grid-area: name; font-weight: 600; }
.svx-form .sv-row[data-sv-r] [data-k="need"]{ grid-area: need; }
.svx-form .sv-row[data-sv-r] [data-k="unit"]{ grid-area: unit; }
.svx-form .sv-row[data-sv-r] [data-k="arrive"]{ grid-area: arrive; }
.svx-form .sv-row[data-sv-r] [data-k="groups"]{ grid-area: groups; }
.svx-form .sv-row[data-sv-r] [data-k="about"]{ grid-area: about; }
.svx-form .sv-row[data-sv-t]{ grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) 32px; grid-template-areas: "item groups del" "note note note"; }
.svx-form .sv-row[data-sv-t] [data-k="item"]{ grid-area: item; font-weight: 600; }
.svx-form .sv-row[data-sv-t] [data-k="groups"]{ grid-area: groups; }
.svx-form .sv-row[data-sv-t] [data-k="note"]{ grid-area: note; }
.svx-form .sv-row[data-sv-s]{ grid-template-columns: 170px minmax(0, 1fr) 32px; grid-template-areas: "date time del" "what what what" "whatEn who who"; }
.svx-form .sv-row[data-sv-s] [data-k="date"]{ grid-area: date; }
.svx-form .sv-row[data-sv-s] [data-k="time"]{ grid-area: time; }
.svx-form .sv-row[data-sv-s] [data-k="what"]{ grid-area: what; font-weight: 600; }
.svx-form .sv-row[data-sv-s] [data-k="whatEn"]{ grid-area: whatEn; }
.svx-form .sv-row[data-sv-s] [data-k="who"]{ grid-area: who; }
.svx-form .sv-row input, .svx-form .sv-row select, .svx-form .sv-row textarea{ width: 100%; min-width: 0; box-sizing: border-box; padding: 9px 12px; font-size: 15px; }
.svx-form .sv-pics{ margin: 6px 0 12px; padding: 14px 16px; border: 0; border-radius: 16px; background: #f5f4f1; }
.svx-form .sv-pics legend{ padding: 0; font-weight: 600; }
.svx-form .sv-pics-grid{ margin-top: 8px; }
.svx-form .sv-pic img, .svx-form .sv-pic-none{ box-shadow: none; }
.svx-form .sv-pickline{ margin: 0 0 12px; }
.svx-form .sv-pickline select{ padding: 8px 12px; border-radius: 12px; }
.svx-foot{ z-index: 6; margin: 22px 0 0; padding: 12px 0; border-top: 0; background: rgba(255, 255, 255, .94); box-shadow: 0 -1px 0 #ecebe7; }
@media (max-width: 640px){.svx-bar{ align-items: stretch; }
.svx-seg{ width: 100%; }
.svx-seg button{ flex: 1; padding: 8px 6px; }
.svx-menus{ width: 100%; }
.svx-gear{ margin-left: auto; }
.svx-grid{ gap: 10px; }
.svx-add{ flex-direction: row; flex-wrap: wrap; justify-content: flex-start; align-content: center; column-gap: 14px; row-gap: 0; min-height: 0; padding: 16px 20px; text-align: left; }
.svx-add .svx-plus{ width: 40px; height: 40px; margin: 0; }
.svx-add .svx-plus::before, .svx-add .svx-plus::after{ width: 18px; margin-left: -9px; }
.svx-add small{ flex-basis: 100%; padding-left: 54px; margin-top: -10px; }
.svx-tabs{ top: 56px; }
.svx-form .sv-row[data-sv-r]{ grid-template-columns: minmax(0, 1fr) 72px 64px 32px; grid-template-areas: "name name name del" "need unit arrive arrive" "groups groups groups groups" "about about about about"; }
.svx-form .sv-row[data-sv-t]{ grid-template-columns: minmax(0, 1fr) 32px; grid-template-areas: "item del" "groups groups" "note note"; }
.svx-form .sv-row[data-sv-s]{ grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 32px; grid-template-areas: "date time del" "what what what" "whatEn whatEn whatEn" "who who who"; }
}
.rsn{ display: grid; gap: 4px; }
.rsn[hidden]{ display: none; }
.rsn p{ margin: 0; line-height: 1.8; }
.rsn ol{ margin: 6px 0 0; padding-left: 1.4em; line-height: 1.75; }
.rsn ol li + li{ margin-top: 4px; }
.rsn strong{ color: #8c3a2e; font-weight: 700; }
.rsn-kicker{ color: #6e6e73; font-size: 14px; font-weight: 600; }
.rsn-lead{ font-size: 17px; color: #1d1d1f; }
.rsn-lead p + p{ margin-top: 8px; }
.rsn-h{ margin: 22px 0 8px; font: 700 18px/1.4 var(--font); color: #1d1d1f; }
.rsn-cards{ display: grid; gap: 8px; }
.rsn-card{ padding: 14px 16px; border-radius: 16px; background: #f5f4f1; font-size: 16px; color: #1d1d1f; }
.rsn-card h4{ margin: 0 0 4px; font-size: 16px; }
.rsn-card ol{ margin-top: 4px; }
.rsn-thanks{ margin: 18px 0 0 !important; color: #6e6e73; text-align: center; font-size: 15px; }
.rs-notes [data-rs-jobs] .rsn-h{ margin-top: 26px; }
.rsn-card.rs-job{ padding: 14px 16px; border-top: 0; }
.rsn-card.rs-job p{ white-space: normal; }
.fil-when{ margin: 0 0 16px; padding: 10px 14px; border-radius: 12px; background: #f5f4f1; color: #1d1d1f; font-weight: 600; }
.fil-note{ margin: 0 0 12px; color: #6e6e73; }
.fil-items{ display: grid; gap: 8px; margin: 0 0 8px; }
.fil-item{ display: grid; grid-template-columns: 26px minmax(0, 1fr) 28px; gap: 6px; align-items: start; }
.fil-item textarea{ width: 100%; box-sizing: border-box; }
.fil-n{ padding-top: 10px; font-weight: 700; color: #6e6e73; }
.fil-row{ display: grid; gap: 6px; margin: 0 0 14px; }
.fil-row textarea, .fil-row input{ width: 100%; box-sizing: border-box; }
.fil-row textarea, .fil-row input, .fil-item textarea{ padding: 10px 12px; border: 1px solid #d2d2d7; border-radius: 12px; background: #fff; font: inherit; font-size: 16px; line-height: 1.6; color: #1d1d1f; }
.fil-row > b{ font-size: 16px; }
.hw-deadline{ margin: 0 0 22px; padding: 18px 20px; border-radius: 18px; background: #1d1d1f; color: #fff; }
.hw-deadline p{ margin: 0; line-height: 1.7; color: rgba(255, 255, 255, .85); }
.hw-deadline strong{ color: #fff; }
.hw-deadline .hw-deadline-big{ margin: 0 0 4px; font: 700 clamp(22px, 3vw, 26px)/1.3 var(--serif); color: #fff; }
.hw-ways{ display: grid; gap: 8px; margin: 0 0 8px; padding: 0; list-style: none; counter-reset: way; }
.hw-ways li{ position: relative; display: grid; gap: 2px; padding: 14px 16px 14px 56px; border-radius: 16px; background: #f5f4f1; counter-increment: way; }
.hw-ways li::before{ content: counter(way); position: absolute; left: 16px; top: 14px; display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #1d1d1f; color: #fff; font-weight: 700; font-size: 14px; }
.hw-ways b{ font-size: 17px; color: #1d1d1f; }
.hw-way-tag{ display: inline-block; margin-left: 6px; padding: 1px 10px; border-radius: 999px; background: #e8e6e1; color: #424245; font-size: 13px; font-weight: 600; font-style: normal; vertical-align: 2px; }
.hw-way-best{ background: #1d1d1f; color: #fff; }
.hw-ways span{ color: #424245; font-size: 15px; line-height: 1.7; }
.sj-task-no{ display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: #1d1d1f; color: #fff; font-weight: 700; font-size: 14px; }
.sj-claim-sum{ margin: 0 0 8px; color: #6e6e73; font-size: 14px; }
.sv-copyrow{ display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; margin: 6px 0 0; }
.sj-nums{ display: grid; grid-template-columns: repeat(auto-fill, minmax(84px, 1fr)); gap: 8px; }
.sj-num{ position: relative; display: grid; justify-items: center; gap: 2px; padding: 12px 6px; border-radius: 14px; background: #fff; box-shadow: inset 0 0 0 1px #d2d2d7; cursor: pointer; text-align: center; }
.sj-num input{ position: absolute; opacity: 0; }
.sj-num b{ font-size: 24px; line-height: 1.1; color: #1d1d1f; }
.sj-num small{ font-size: 12px; color: #6e6e73; line-height: 1.3; }
.sj-num:has(input:checked){ background: #1d1d1f; box-shadow: none; }
.sj-num:has(input:checked) b, .sj-num:has(input:checked) small{ color: #fff; }
.sj-num:has(input:focus-visible){ outline: 2px solid #1d1d1f; outline-offset: 2px; }
.sj-num.is-taken{ background: #f5f4f1; box-shadow: none; cursor: default; }
.sj-num.is-taken b{ color: #aeaeb2; }
.sj-num.is-taken small{ color: #46683f; font-weight: 600; }
.sj-results[hidden]{ display: none; }
.sj-result{ display: grid; gap: 8px; margin: 10px 0 0; padding: 0; list-style: none; }
.sj-result li{ display: grid; grid-template-columns: 32px minmax(0, 1fr); gap: 2px 10px; padding: 12px 14px; border-radius: 14px; background: #fff; box-shadow: inset 0 0 0 1px #e3e1dc; }
.sj-result .sj-task-no{ grid-row: 1 / span 2; }
.sj-result-in{ display: grid; gap: 2px; }
.sj-result-in b{ font-size: 16px; color: #1d1d1f; }
.sj-result-in small{ color: #6e6e73; font-size: 14px; }
.sj-result-who{ grid-column: 2; font-weight: 700; color: #46683f; }
.sj-result-who.is-open{ color: #aeaeb2; font-weight: 400; }
[data-sj-claimgroup]{ display: grid; gap: 6px; margin: 4px 0 14px; font-weight: 600; }
[data-sj-claimgroup][hidden]{ display: none; }
[data-sj-claimgroup] select{ width: 100%; padding: 12px 14px; border: 1px solid #d2d2d7; border-radius: 14px; background: #fff; font: inherit; font-size: 17px; font-weight: 400; color: #1d1d1f; }
.gd-note, .hw-nolink{ display: grid; gap: 2px; margin: 0 0 14px; padding: 12px 16px; border-radius: 14px; background: #f7ecd9; color: #5c3f12; font-size: 15px; line-height: 1.7; }
.gd-note b, .hw-nolink b{ color: #86652e; font-size: 14px; }
