:root{--slate-blue:#3d6b87;--deep-navy:#2a4a5e;--pale-blue:#bcd4e2;--light-blue:#dce9f1;--tint-blue:#e2ecf2;--tint-blue-2:#eaf1f5;--app-bg:#f5f8fa;--frame-bg:#3d6b87;--hairline:#dae3e9;--row-hover:#f2f7fa;--gold:#f3d77b;--gold-ink:#8a6210;--gold-ink-deep:#6b5108;--body:#4e5a63;--muted:#6b7a85;--faint:#8b98a2;--icon-inactive:#94a3ad;--chevron:#b4c2cb;--label:#7c96a6;--field-label:#3e4a52;--error:#9c463c;--white:#fff;--display:Newsreader, Georgia, "Times New Roman", serif;--ui:"Public Sans", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--r-input:11px;--r-button:12px;--r-card:14px;--r-event:16px;--r-hero:18px;--r-pill:999px}*{box-sizing:border-box}html,body,#root{height:100%}h1,h2,h3,p,fieldset,legend{margin:0}body{background:var(--frame-bg);font-family:var(--ui);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0}a{color:var(--gold-ink)}input,textarea,button,select{font-family:var(--ui);font-size:inherit;color:inherit}::placeholder{color:var(--faint)}.shell{background:var(--app-bg);max-width:402px;height:100dvh;padding-top:env(safe-area-inset-top);flex-direction:column;margin:0 auto;display:flex;overflow:hidden}@media (width>=460px) and (height>=900px){.shell{border-radius:28px;height:874px;margin:calc(50dvh - 437px) auto;box-shadow:0 24px 60px #14283a59}}.header{background:var(--slate-blue);color:var(--app-bg);flex-shrink:0;align-items:center;gap:14px;padding:8px 22px 18px;display:flex}.header__mark{flex-shrink:0;width:55px;height:55px}.header__title{font-family:var(--display);margin-top:2px;font-size:26px;font-weight:500;line-height:1.15}.header__eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--pale-blue);font-size:9px;font-weight:600}.content{-webkit-overflow-scrolling:touch;flex:1;overflow:hidden auto}.screen{padding:18px 22px 34px}.screen--home{flex-direction:column;gap:18px;padding:22px 22px 34px;display:flex}.screen--gate{flex-direction:column;gap:18px;padding:28px 22px 34px;display:flex}.screen--calendar{flex-direction:column;gap:22px;display:flex}.screen--signup{flex-direction:column;gap:14px;min-height:100%;display:flex}.tabbar{background:var(--white);border-top:1px solid var(--hairline);padding:8px 6px 30px;padding-bottom:max(30px, env(safe-area-inset-bottom));flex-shrink:0;display:flex}.tab{cursor:pointer;min-height:48px;color:var(--icon-inactive);background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;padding:0;display:flex}.tab--active{color:var(--slate-blue)}.tab__label{font-size:11px;font-weight:600}.hairline-list{background:var(--hairline);border:1px solid var(--hairline);border-radius:var(--r-card);flex-direction:column;gap:1px;display:flex;overflow:hidden}.hairline-list>*{background:var(--white)}.card{background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-card);padding:20px}.quiet-card{background:var(--tint-blue-2);border:1px solid var(--hairline);border-radius:var(--r-card);color:var(--body);padding:20px;font-size:16px;line-height:1.55}.section-label{letter-spacing:.12em;text-transform:uppercase;color:var(--label);font-size:12px;font-weight:700}.row-label{letter-spacing:.1em;text-transform:uppercase;color:var(--label);font-size:13px;font-weight:700}.pressable{cursor:pointer;background:var(--white);text-align:left;width:100%;font:inherit;color:inherit;border:none}@media (hover:hover){.pressable:hover{background:var(--row-hover)}}.pressable:active{background:var(--row-hover)}.link-button{font-family:var(--ui);color:var(--gold-ink);cursor:pointer;background:0 0;border:none;padding:0;font-size:16px;font-weight:600}.back-link{color:var(--gold-ink);cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:7px;padding:6px 0;font-size:16px;font-weight:600;display:inline-flex}.field-label{color:var(--field-label);margin-bottom:6px;font-size:14px;font-weight:600}.field-help{color:var(--faint);margin-top:2px;font-size:14px}.input{border:1px solid var(--hairline);border-radius:var(--r-input);background:var(--white);width:100%;color:var(--deep-navy);outline:none;padding:14px 15px;font-size:17px}.input:focus{border-color:var(--slate-blue)}.input--auth{padding:15px}.input--textarea{resize:none;line-height:1.5}.submit{border-radius:var(--r-button);text-align:center;color:var(--white);background:var(--chevron);cursor:default;border:none;width:100%;min-height:48px;padding:17px;font-size:18px;font-weight:700}.submit--ready{background:var(--slate-blue);cursor:pointer}.confirmation{background:var(--tint-blue);border-radius:var(--r-card);text-align:center;padding:24px}.confirmation__title{font-family:var(--display);color:var(--deep-navy);font-size:24px}.confirmation__body{color:#43606f;margin-top:8px;font-size:16px;line-height:1.5}.confirmation__action{margin-top:16px;padding:8px 4px}.footnote{color:var(--faint);font-size:14px;line-height:1.5}.placeholder-card{border:1px dashed var(--chevron);border-radius:var(--r-card);background:var(--tint-blue-2);text-align:center;padding:24px}.placeholder-card__title{color:var(--deep-navy);font-size:17px;font-weight:600}.placeholder-card__body{color:var(--muted);margin-top:6px;font-size:16px;line-height:1.55}.sunday__headline{font-family:var(--display);color:var(--deep-navy);margin-top:8px;font-size:26px;line-height:1.25}.sunday__sub{color:var(--body);margin-top:6px;font-size:17px;line-height:1.5}.livestream{background:var(--gold);color:var(--deep-navy);border-radius:var(--r-card);align-items:center;gap:14px;padding:20px;text-decoration:none;display:flex}.livestream__well{background:#2a4a5e24;border-radius:23px;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.livestream__title{font-size:20px;font-weight:700}.livestream__sub{opacity:.8;margin-top:2px;font-size:15px}.shortcuts{grid-template-columns:1fr 1fr;gap:14px;display:grid}.shortcut{background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-card);cursor:pointer;text-align:left;min-height:96px;font:inherit;flex-direction:column;justify-content:space-between;padding:18px;display:flex}@media (hover:hover){.shortcut:hover{background:var(--row-hover)}}.shortcut:active{background:var(--row-hover)}.shortcut__label{color:var(--deep-navy);font-size:18px;font-weight:600}.upcoming__row{align-items:baseline;gap:16px;padding:16px 18px;display:flex}.upcoming__date{color:var(--gold-ink);flex-shrink:0;width:62px;font-size:14px;font-weight:700}.upcoming__title{color:var(--deep-navy);font-size:17px;font-weight:500}.upcoming__meta{color:var(--muted);margin-top:2px;font-size:15px}.upcoming__state{color:var(--faint);padding:16px 18px;font-size:16px}.upcoming__state--error{color:var(--muted)}.closing-line{color:var(--muted);padding-top:4px;font-size:15px;line-height:1.6}.masthead{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.masthead__mark{width:76px;height:76px}.masthead__heading{font-family:var(--display);color:var(--deep-navy);font-size:27px;line-height:1.25}.masthead__blurb{color:var(--muted);font-size:16px;line-height:1.55}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-error{color:var(--error);margin-top:8px;font-size:15px;line-height:1.5}.auth-toggle{text-align:center;width:100%;min-height:48px;padding:10px 4px}.search{background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-button);align-items:center;gap:10px;padding:13px 15px;display:flex}.search__input{width:100%;color:var(--deep-navy);background:0 0;border:none;outline:none;font-size:17px}.count{color:var(--muted);margin:16px 0 10px;font-size:14px}.member-row{align-items:center;gap:14px;min-height:48px;padding:14px 16px;display:flex}.avatar{background:var(--tint-blue);color:var(--slate-blue);font-family:var(--display);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.avatar--row{width:48px;height:48px;font-size:19px}.avatar--detail{width:104px;height:104px;font-size:38px}.member-row__name{color:var(--deep-navy);font-size:18px;font-weight:600}.member-row__role{color:var(--muted);margin-top:1px;font-size:15px}.you-pill{letter-spacing:.08em;text-transform:uppercase;color:var(--gold-ink-deep);background:var(--gold);border-radius:var(--r-pill);padding:3px 8px;font-size:11px;font-weight:700}.fallback-notice{background:var(--tint-blue-2);border:1px solid var(--hairline);border-radius:var(--r-button);color:var(--body);margin-top:14px;padding:14px 16px;font-size:14px;line-height:1.5}.signout{text-align:center;width:100%;padding:18px 8px 4px;display:block}.identity{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.identity__name{font-family:var(--display);color:var(--deep-navy);font-size:30px;line-height:1.2}.identity__role{color:var(--muted);font-size:16px}.detail-rows{margin-top:22px}.detail-row{padding:16px 18px;text-decoration:none;display:block}.detail-row__value{color:var(--deep-navy);margin-top:3px;font-size:19px}.detail-row__value--link{color:var(--gold-ink)}.detail-row__value--email{word-break:break-all}.detail-row__value--address{white-space:pre-line;line-height:1.4}.hero{background:var(--slate-blue);border-radius:var(--r-hero);color:var(--app-bg);padding:22px;text-decoration:none;display:block}.hero__eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--pale-blue);font-size:11px;font-weight:700}.hero__title{font-family:var(--display);text-wrap:pretty;margin-top:10px;font-size:30px;line-height:1.15}.hero__date{color:var(--light-blue);margin-top:10px;font-size:17px}.hero__footer{border-top:1px solid #ffffff38;align-items:baseline;gap:10px;margin-top:14px;padding-top:14px;display:flex}.hero__time{font-size:20px;font-weight:700}.hero__location{color:var(--pale-blue);font-size:16px}.month-rule{align-items:center;gap:12px;margin-bottom:14px;display:flex}.month-rule__label{letter-spacing:.14em;text-transform:uppercase;color:var(--label);white-space:nowrap;font-size:12px;font-weight:700}.month-rule__line{background:var(--hairline);flex:1;height:1px}.event-list{flex-direction:column;gap:10px;display:flex}.event{background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-event);gap:14px;min-height:48px;padding:14px 16px 14px 14px;text-decoration:none;display:flex}@media (hover:hover){.event:hover{border-color:var(--chevron)}}.event__date{border-radius:var(--r-button);text-align:center;flex-shrink:0;width:54px;padding:8px 0}.event__dow{letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:700}.event__day{font-family:var(--display);font-size:26px;line-height:1.05}.event__body{flex:1;min-width:0;padding-top:2px}.event__title{color:var(--deep-navy);text-wrap:pretty;font-size:17px;font-weight:600;line-height:1.3}.event__time{color:var(--muted);margin-top:3px;font-size:15px}.event__location{color:var(--faint);margin-top:1px;font-size:15px}.cal-loading{color:var(--faint);padding:8px 2px;font-size:16px}.cal-footer{background:var(--tint-blue-2);border:1px solid var(--hairline);border-radius:var(--r-card);justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:16px 18px;text-decoration:none;display:flex}.cal-footer__label{color:var(--deep-navy);font-size:16px;font-weight:600}.signups__intro{color:var(--muted);margin-bottom:16px;font-size:16px;line-height:1.55}.signup-row{align-items:center;gap:14px;min-height:48px;padding:16px 18px;display:flex}.signup-row__title{color:var(--deep-navy);font-size:18px;font-weight:600;line-height:1.3}.signup-row__detail{color:var(--muted);margin-top:2px;font-size:15px}.signup-row__status{letter-spacing:.06em;text-transform:uppercase;color:var(--faint);margin-top:6px;font-size:13px;font-weight:700}.signup-row__status--open{color:var(--gold-ink)}.signup__title{font-family:var(--display);color:var(--deep-navy);font-size:26px;line-height:1.25}.signup__detail{color:var(--muted);margin-top:4px;font-size:16px}.signup-form{flex-direction:column;gap:16px;display:flex}.control{margin-top:6px}.control--datetime{grid-template-columns:1.4fr 1fr;gap:10px;display:grid}.input--date{width:190px}.input--time{width:160px}.choices{flex-direction:column;gap:8px;margin-top:8px;display:flex}.choice{background:var(--white);color:var(--field-label);border:1px solid var(--hairline);border-radius:var(--r-input);cursor:pointer;text-align:left;align-items:center;width:100%;min-height:48px;padding:13px 15px;font-size:16px;font-weight:500;line-height:1.35;display:flex}.choice--on{background:var(--slate-blue);color:var(--white);border-color:var(--slate-blue)}.omits{background:var(--tint-blue-2);border:1px solid var(--hairline);border-radius:var(--r-button);padding:16px}.omits__body{color:var(--body);font-size:15px;line-height:1.55}.omits__link{color:var(--gold-ink);margin-top:10px;font-size:16px;font-weight:600;display:inline-block}.form-frame{border:1px solid var(--hairline);border-radius:var(--r-card);background:var(--white);flex:1;min-height:420px;overflow:hidden}.form-frame iframe{border:none;width:100%;height:100%;min-height:420px;display:block}.quick-links{margin-bottom:22px}.quick-link{justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:15px 18px;text-decoration:none;display:flex}.quick-link__label{color:var(--deep-navy);font-size:17px}.quick-link__value{color:var(--gold-ink);text-align:right;font-size:17px}.contact-form{flex-direction:column;gap:16px;display:flex}.contact__intro{color:var(--muted);font-size:16px;line-height:1.55}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--white);color:var(--field-label);border:1px solid var(--hairline);border-radius:var(--r-pill);cursor:pointer;min-height:48px;padding:10px 16px;font-size:15px;font-weight:500}.chip--on{background:var(--slate-blue);color:var(--app-bg);border-color:var(--slate-blue)}.board{flex-direction:column;gap:14px;padding:18px 22px 34px;display:flex}.board__intro{color:var(--muted);font-size:16px;line-height:1.55}.board__add{border-radius:var(--r-button);background:var(--slate-blue);color:var(--white);cursor:pointer;border:none;width:100%;min-height:48px;padding:15px;font-size:17px;font-weight:700}.board__add--open{background:var(--white);color:var(--gold-ink);border:1px solid var(--hairline)}.board__chips{scrollbar-width:none;gap:8px;margin:0 -22px;padding-bottom:2px;padding-left:22px;padding-right:22px;display:flex;overflow-x:auto}.board__chips::-webkit-scrollbar{display:none}.board-chip{border:1px solid var(--hairline);background:var(--white);color:var(--field-label);border-radius:var(--r-pill);cursor:pointer;white-space:nowrap;flex-shrink:0;padding:9px 15px;font-size:15px;font-weight:500}.board-chip--on{background:var(--slate-blue);color:var(--white);border-color:var(--slate-blue)}.board__composer{background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-card);flex-direction:column;gap:12px;padding:18px;display:flex}.board__composer-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.board__composer-title{font-family:var(--display);color:var(--deep-navy);font-size:22px}.board__composer-note{color:var(--faint);font-size:14px}.board__composer-cats{flex-wrap:wrap;gap:8px;display:flex}.board__composer-actions{gap:10px;display:flex}.board__composer-actions>*{flex:1}.board__cancel{border:1px solid var(--hairline);background:var(--white);color:var(--field-label);border-radius:var(--r-button);cursor:pointer;min-height:48px;padding:15px;font-size:16px;font-weight:600}.board__error{color:var(--error);font-size:15px;line-height:1.5}.board__notes{flex-direction:column;gap:12px;display:flex}.note{background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-card);padding:16px 18px;position:relative}.note__head{align-items:center;gap:10px;display:flex}.note__tag{letter-spacing:.09em;text-transform:uppercase;border-radius:var(--r-pill);padding:4px 10px;font-size:11px;font-weight:700}.note__remove{width:48px;height:48px;color:var(--chevron);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;margin-top:-12px;margin-left:auto;margin-right:-14px;font-size:22px;line-height:1}@media (hover:hover){.note__remove:hover{color:var(--error)}}.note__title{font-family:var(--display);color:var(--deep-navy);margin-top:8px;font-size:22px;line-height:1.25}.note__body{color:var(--body);white-space:pre-wrap;margin-top:6px;font-size:16px;line-height:1.55}.note__foot{border-top:1px solid var(--hairline);justify-content:space-between;align-items:baseline;gap:10px;margin-top:14px;padding-top:12px;display:flex}.note__author{color:var(--muted);font-size:15px}.note__date{color:var(--faint);white-space:nowrap;font-size:14px}.board__empty{text-align:center;color:var(--faint);padding:40px 20px;font-size:16px;line-height:1.55}.board__count{text-align:center;color:var(--faint);font-size:14px;line-height:1.5}
