/* Worship pages and their portaled dialogs share the same design tokens. */
.worship-page{color:var(--idigis-text);min-width:0}
.worship-page .button,.worship-form .button{gap:7px;min-height:40px;font-size:var(--idigis-ui-label)}
.worship-back{display:inline-flex;align-items:center;gap:8px;margin-bottom:18px;color:var(--idigis-text-soft);font-size:var(--idigis-ui-label);min-height:32px}
.worship-toolbar,.worship-period{display:flex;align-items:center;gap:12px}
.worship-toolbar{justify-content:space-between;flex-wrap:wrap;margin-bottom:20px}
.worship-period h2{font-size:var(--idigis-ui-body);font-weight:600;text-transform:capitalize;min-width:165px;text-align:center;line-height:1.5}
.worship-period>.button{width:40px;padding:0}
.worship-search{position:relative;width:min(100%,340px)}
.worship-search>i{position:absolute;left:12px;top:10px;color:var(--idigis-text-soft)}
.worship-search .input{padding-left:38px}
.worship-list{list-style:none;margin:0;padding:0;border:1px solid var(--idigis-border);border-radius:14px;overflow:hidden;background:var(--idigis-surface)}
.worship-list-row{display:flex;align-items:center;gap:18px;padding:18px 20px;color:var(--idigis-text);border-bottom:1px solid var(--idigis-border);transition:background-color 150ms ease}
.worship-list>li:last-child>.worship-list-row{border-bottom:0}
.worship-list-row:hover{background:var(--idigis-surface-muted);color:var(--idigis-text)}
.worship-date{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:52px;border-radius:10px;padding:6px;background:var(--idigis-primary-soft);color:var(--idigis-primary)}
.worship-date strong{font-size:24px;line-height:1.2;color:inherit}.worship-date span{font-size:var(--idigis-ui-small)}
.worship-list-copy{flex:1;min-width:0}.worship-list-copy h2{font-size:var(--idigis-ui-body);font-weight:600;line-height:1.5;overflow-wrap:anywhere}
.worship-list-copy p{font-size:var(--idigis-ui-label);color:var(--idigis-text-soft);margin-top:4px}.worship-list-copy p>i{margin-right:5px}
.worship-empty{text-align:center;padding:48px 20px;background:var(--idigis-surface);border:1px dashed var(--idigis-border);border-radius:12px}
.worship-empty>i{font-size:32px;color:var(--idigis-primary);display:block;margin-bottom:14px}.worship-empty h2,.worship-empty h3{font-size:var(--idigis-ui-section);font-weight:600;margin-bottom:8px}.worship-empty p{font-size:var(--idigis-ui-body);color:var(--idigis-text-soft);max-width:430px;margin:0 auto 14px;line-height:1.6}
.worship-feedback{background:var(--idigis-warning-bg);color:var(--idigis-text);padding:14px 16px;border-radius:10px;margin-bottom:18px;font-size:var(--idigis-ui-body);display:flex;gap:12px;align-items:center;flex-wrap:wrap}.worship-success{color:var(--idigis-success);padding:12px 0;font-size:var(--idigis-ui-body)}
.worship-overview{display:flex;align-items:center;flex-wrap:wrap;gap:24px;padding:18px 0 22px;border-bottom:1px solid var(--idigis-border);margin-bottom:24px}.worship-overview>.tag{margin-left:auto}
.worship-summary{display:flex;align-items:center;gap:12px}.worship-summary>i{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--idigis-primary-soft);color:var(--idigis-primary);font-size:23px}.worship-summary small{display:block;color:var(--idigis-text-soft);font-size:var(--idigis-ui-caption)}.worship-summary strong{display:block;font-size:22px;line-height:1.5;font-weight:600;color:var(--idigis-text)}
.worship-director{max-width:560px;margin-bottom:28px}.worship-director h2{font-size:var(--idigis-ui-label);color:var(--idigis-text-soft);margin-bottom:6px}.worship-director p{font-size:var(--idigis-ui-body)}
.worship-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.worship-section-heading h2{font-size:var(--idigis-ui-section);font-weight:600;line-height:1.4}.worship-section-heading p{color:var(--idigis-text-soft);font-size:var(--idigis-ui-label);margin-top:5px}
.worship-timeline{list-style:none;margin:0;padding:0;border:1px solid var(--idigis-border);border-radius:14px;overflow:hidden;background:var(--idigis-surface)}
.worship-timeline li{display:flex;align-items:center;gap:16px;padding:20px;border-bottom:1px solid var(--idigis-border)}.worship-timeline li:last-child{border:0}
.worship-order{width:30px;height:30px;display:grid;place-items:center;flex-shrink:0;background:var(--idigis-primary-soft);color:var(--idigis-primary);border-radius:50%;font-size:var(--idigis-ui-label);font-variant-numeric:tabular-nums}
.worship-opportunity{flex:1;min-width:0}.worship-opportunity-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.worship-opportunity-title h3{font-size:var(--idigis-ui-body);font-weight:600;line-height:1.5;overflow-wrap:anywhere}.worship-opportunity p{display:flex;align-items:center;gap:6px;margin-top:5px;font-size:var(--idigis-ui-body);overflow-wrap:anywhere}.worship-opportunity small{display:block;color:var(--idigis-text-soft);font-size:var(--idigis-ui-caption);line-height:1.6;margin-top:5px;overflow-wrap:anywhere;white-space:pre-wrap}
.worship-row-actions{display:flex;align-items:center;gap:6px}.worship-row-actions>.button{padding:0;width:36px;min-height:36px}
.worship-total{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:18px 0;font-size:var(--idigis-ui-body)}.worship-total>i{color:var(--idigis-primary);font-size:21px}.worship-total strong{color:var(--idigis-text);margin-left:5px}.worship-total small{font-size:var(--idigis-ui-caption);color:var(--idigis-text-soft);margin-left:auto}
.worship-help,.worship-form>small{font-size:var(--idigis-ui-caption);color:var(--idigis-text-soft);line-height:1.6}.worship-help{margin-top:18px}.worship-optional{font-size:var(--idigis-ui-small);color:var(--idigis-text-soft);font-weight:400;margin-left:5px}
.worship-form{display:flex;flex-direction:column;gap:10px}.worship-form>.label{margin:10px 0 0}.worship-form .label{font-size:var(--idigis-ui-label);font-weight:500}.worship-form .input,.worship-participant .input{font-size:var(--idigis-ui-body)}.worship-form .checkbox{display:flex;align-items:center;gap:9px;min-height:36px;font-size:var(--idigis-ui-label);line-height:1.5}.worship-form .checkbox input{width:17px;height:17px;accent-color:var(--idigis-primary)}
.worship-suggestions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:6px}.worship-suggestions .button{min-height:32px;font-size:var(--idigis-ui-caption);padding:4px 10px}
.worship-duration-input{margin:10px 0}.worship-duration-input span{font-size:var(--idigis-ui-label)}.worship-duration-input small{display:block;font-size:var(--idigis-ui-caption);color:var(--idigis-text-soft);margin-top:6px}
.worship-person{display:flex;align-items:center;gap:10px;padding:7px 10px;border:1px solid var(--idigis-border);border-radius:8px;background:var(--idigis-surface);min-height:48px}.worship-person>i{font-size:22px;color:var(--idigis-primary)}.worship-person>span{flex:1;min-width:0;overflow-wrap:anywhere;font-size:var(--idigis-ui-body)}.worship-person small{display:block;font-size:var(--idigis-ui-small);color:var(--idigis-text-soft)}.worship-person .button{width:32px;min-height:32px;padding:0}
.worship-options{padding:6px;max-height:280px;overflow:auto}.worship-options>button{display:flex;align-items:center;gap:10px;width:100%;padding:10px;border:0;background:transparent;text-align:left;color:var(--idigis-text);font:inherit;border-radius:6px;cursor:pointer;font-size:var(--idigis-ui-label)}.worship-options button[aria-selected="true"],.worship-options button:hover,.worship-options button:focus-visible{background:var(--idigis-primary-soft)}.worship-options span{min-width:0;overflow-wrap:anywhere}.worship-options small{display:block;color:var(--idigis-text-soft);font-size:var(--idigis-ui-caption)}.worship-options p{padding:10px;color:var(--idigis-text-soft);font-size:var(--idigis-ui-label);line-height:1.5}
.worship-public{width:100%;max-width:920px;margin:0 auto;padding:24px 24px 40px}.worship-public-brand{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--idigis-border);padding-bottom:20px;margin-bottom:28px}.worship-public-caption{font-size:var(--idigis-ui-caption);color:var(--idigis-text-soft)}.worship-public-gate{max-width:420px;margin:60px auto;padding:24px}.worship-public-gate>i{font-size:34px;color:var(--idigis-primary)}.worship-public-gate h1{font-size:var(--idigis-ui-title);font-weight:600;margin:12px 0}.worship-public-gate p{color:var(--idigis-text-soft);line-height:1.6;margin-bottom:20px}.worship-public-gate .button{margin-top:16px}.worship-public-footer{border-top:1px solid var(--idigis-border);margin-top:32px;padding-top:20px;color:var(--idigis-text-soft);font-size:var(--idigis-ui-caption)}
@media(max-width:640px){.worship-toolbar{gap:16px}.worship-search{width:100%}.worship-period{justify-content:space-between;width:100%}.worship-list-row{padding:16px 12px;gap:12px}.worship-list-row>.tag{display:none}.worship-list-copy h2{font-size:var(--idigis-ui-body)}.worship-overview{gap:16px}.worship-overview>.tag{margin-left:0}.worship-summary{gap:9px}.worship-summary strong{font-size:20px}.worship-timeline li{padding:16px 12px;gap:10px;flex-wrap:wrap}.worship-opportunity{flex-basis:calc(100% - 42px)}.worship-row-actions{width:100%;justify-content:flex-end;padding-left:40px}.worship-row-actions>.button{width:40px;min-height:40px}.worship-total small{width:100%;margin-left:0}.worship-section-heading{align-items:flex-start}.worship-section-heading>.button{white-space:nowrap}.worship-public{padding:12px 0}.worship-public-caption{display:none}.worship-public-gate{padding:16px;margin:24px auto}.worship-form .input,.worship-form .textarea,.worship-participant .input{font-size:max(16px,var(--idigis-ui-body))}}
@media(prefers-reduced-motion:reduce){.worship-list-row{transition:none}}

.wizard-weekdays{display:flex;flex-wrap:wrap;gap:8px}.wizard-weekdays button{min-height:40px;min-width:44px;padding:6px 10px;border:1px solid var(--idigis-border);border-radius:8px;color:var(--idigis-text-soft);background:var(--idigis-surface);font:inherit;font-size:var(--idigis-ui-label);cursor:pointer}.wizard-weekdays button.is-selected{color:var(--idigis-primary);border-color:var(--idigis-primary);background:var(--idigis-primary-soft)}

@media(max-width:640px){.worship-page .ui-page-header .subtitle{display:block;font-size:var(--idigis-ui-label);line-height:1.5;margin-top:6px}}

/* Native popovers remain in the top layer; menu options share the app's control scale. */
.worship-export-menu{width:284px;max-width:calc(100vw - 16px);padding:6px;font-family:var(--idigis-font-family)}
.worship-context-menu{min-width:200px;font-family:var(--idigis-font-family)}
.worship-export-group+.worship-export-group{border-top:1px solid var(--idigis-border);margin-top:6px;padding-top:6px}
.worship-menu-heading{padding:7px 10px 5px;margin:0;color:var(--idigis-text-soft);font-size:var(--idigis-ui-caption);font-weight:500;line-height:1.5}
:is(.worship-export-menu,.worship-context-menu) .button{display:flex;align-items:center;justify-content:flex-start;width:100%;height:auto;min-height:44px;gap:10px;padding:10px;border:0;border-radius:7px;background:transparent;color:var(--idigis-text);font-family:inherit;font-size:var(--idigis-ui-label);font-weight:400;text-decoration:none;white-space:normal;box-shadow:none;text-align:left;line-height:1.4}
.worship-export-menu .worship-menu-option{min-height:58px}
:is(.worship-export-menu,.worship-context-menu) .button>i{display:inline-grid;place-items:center;flex:none;width:22px;font-size:20px;line-height:1;color:var(--idigis-primary)}
.worship-menu-option>span{flex:1;min-width:0}
.worship-menu-option strong{display:block;color:inherit;font-size:var(--idigis-ui-label);font-weight:500;line-height:1.4}
.worship-menu-option small{display:block;color:var(--idigis-text-soft);font-size:var(--idigis-ui-caption);line-height:1.5;margin-top:2px}
.worship-export-menu .button>.worship-menu-download{font-size:17px;color:var(--idigis-text-soft)}
:is(.worship-export-menu,.worship-context-menu) .button:not(:disabled):is(:hover,:focus-visible){background:var(--idigis-primary-soft);color:var(--idigis-primary)}
:is(.worship-export-menu,.worship-context-menu) .button:focus-visible{outline:2px solid var(--idigis-primary);outline-offset:-2px}
:is(.worship-export-menu,.worship-context-menu) .button:disabled{opacity:.55;cursor:not-allowed;background:transparent;border:0}
.worship-context-menu .button.has-text-danger,.worship-context-menu .button.has-text-danger>i{color:var(--idigis-danger)!important}
.worship-context-menu .button.has-text-danger:not(:disabled):is(:hover,:focus-visible){background:var(--idigis-danger-bg)}

.worship-timeline>li.worship-moment{display:block;padding:0}
.worship-moment-action{display:flex;align-items:center;gap:16px;padding:20px;min-width:0}
.worship-moment-action+.worship-moment-action{border-top:1px solid var(--idigis-border)}
.worship-moment-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:var(--idigis-primary-soft);color:var(--idigis-primary);padding:10px 20px;font-size:var(--idigis-ui-caption);font-weight:500;line-height:1.5}
.worship-moment-heading>span:first-child{display:flex;align-items:center;gap:7px}
.worship-moment-heading i{font-size:17px}
.worship-moment.is-parallel .worship-order{width:38px;border-radius:8px;font-size:var(--idigis-ui-caption)}
.worship-form .worship-parallel-toggle{margin-top:4px}
.worship-form .worship-parallel-help{margin:0 0 6px;padding:10px 12px;background:var(--idigis-primary-soft);border-radius:8px;color:var(--idigis-text-soft)}
@media(max-width:640px){.worship-moment-action{padding:16px 12px;gap:10px;flex-wrap:wrap}.worship-moment-heading{padding:10px 12px}.worship-moment.is-parallel .worship-opportunity{flex-basis:calc(100% - 48px)}}

/* A compact upcoming service, independent of the month/search used for history. */
.worship-next{padding:0 0 22px;margin-bottom:24px;border-bottom:1px solid var(--idigis-border)}
.worship-next>h2{display:flex;align-items:center;gap:8px;font-size:var(--idigis-ui-label);font-weight:500;line-height:1.5;color:var(--idigis-text-soft);margin-bottom:12px}.worship-next>h2 i{font-size:20px;color:var(--idigis-primary)}
.worship-next-link{display:flex;align-items:center;gap:14px;max-width:720px;min-width:0;padding:10px;border-radius:10px;color:var(--idigis-text);margin-left:-10px;transition:background-color .15s ease}
.worship-next-link:hover{background:var(--idigis-surface-muted);color:var(--idigis-text)}.worship-next-copy{flex:1;min-width:0}.worship-next-copy>strong{display:block;font-size:var(--idigis-ui-section);font-weight:600;line-height:1.5;overflow-wrap:anywhere}.worship-next-copy>span{display:block;color:var(--idigis-text-soft);font-size:var(--idigis-ui-label);line-height:1.6;margin-top:3px}.worship-next-location{display:block;overflow-wrap:anywhere}.worship-next-link>i{font-size:22px;color:var(--idigis-primary);flex:none}
.worship-next-note,.worship-next-feedback{font-size:var(--idigis-ui-label);line-height:1.6;color:var(--idigis-text-soft)}.worship-next-feedback{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.worship-list-row.is-past,.worship-list-row.is-past:hover{color:var(--idigis-text-soft)}.worship-list-row.is-past .worship-date,.worship-list-row.is-past>.tag{background:var(--idigis-surface-muted);color:var(--idigis-text-soft)}.worship-list-row.is-past h2{font-weight:500}.worship-past-label{font-size:var(--idigis-ui-caption);font-weight:500}
.worship-next-link:focus-visible,.worship-list-row:focus-visible{outline:2px solid var(--idigis-primary);outline-offset:-2px}
.worship-search>i{z-index:1}
@media(max-width:640px){.worship-next{padding-bottom:18px;margin-bottom:20px}.worship-next-link{gap:12px}.worship-next-copy>strong{font-size:16px}}
@media(prefers-reduced-motion:reduce){.worship-next-link{transition:none}}

/* Simultaneous actions form one continuous moment, with a shared heading and duration. */
.worship-timeline>.worship-moment.is-parallel{margin:12px;border:1px solid var(--idigis-border-strong);border-left:3px solid var(--idigis-primary);border-radius:11px;overflow:hidden;background:var(--idigis-surface-muted)}
.worship-moment.is-parallel .worship-moment-heading{background:var(--idigis-primary-soft);padding:12px 16px}
.worship-moment.is-parallel .worship-moment-action{padding:16px;background:transparent}
.worship-moment.is-parallel .worship-moment-action+.worship-moment-action{border-top:1px dashed var(--idigis-border-strong)}
.worship-moment.is-parallel .worship-order{background:var(--idigis-surface);color:var(--idigis-primary)}
.worship-form>fieldset{display:flex;flex-direction:column;gap:10px;border:0;padding:0;margin:0;min-width:0}
.worship-form>fieldset>.label{margin:10px 0 0}
.worship-share-link{display:flex;align-items:flex-start;gap:24px;min-width:0;padding:18px 0}
.worship-share-qr{display:block;width:176px;height:176px;object-fit:contain;flex:none;background:#fff;padding:10px;border:1px solid var(--idigis-border);border-radius:12px;image-rendering:pixelated}
.worship-share-address{flex:1;min-width:0}.worship-share-address>strong{display:block;font-size:var(--idigis-ui-body);font-weight:600;line-height:1.5}.worship-share-address>p{color:var(--idigis-text-soft);font-size:var(--idigis-ui-caption);line-height:1.6;margin:6px 0 12px}
.worship-copy-link{display:flex;align-items:center;gap:9px;width:100%;min-width:0;min-height:44px;border:1px solid var(--idigis-border-strong);border-radius:8px;background:var(--idigis-surface);color:var(--idigis-primary);font:inherit;font-size:var(--idigis-ui-label);padding:10px 12px;text-align:left;cursor:pointer}.worship-copy-link span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.worship-copy-link i{font-size:19px;flex:none}.worship-copy-link:hover{background:var(--idigis-primary-soft)}.worship-copy-link:focus-visible{outline:2px solid var(--idigis-primary);outline-offset:2px}
.worship-share-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.worship-share-actions .button{min-height:44px;font-size:var(--idigis-ui-label);gap:7px}.worship-share-fallback[hidden]{display:none!important}.worship-share-fallback{margin-top:10px}.worship-share-address .worship-share-status{margin:10px 0 0;color:var(--idigis-primary);min-height:20px}.worship-public-share{margin-top:32px;border-top:1px solid var(--idigis-border);padding-top:12px}
.worship-live{margin-top:26px;border-top:1px solid var(--idigis-border);padding-top:24px}
.worship-live-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.worship-live-header h2{font-size:var(--idigis-ui-section);font-weight:600;line-height:1.5;margin:0 0 7px}.worship-live-connection{display:flex;align-items:center;gap:6px;font-size:var(--idigis-ui-caption);color:var(--idigis-text-soft)}.worship-live-connection.is-connected{color:var(--idigis-success)}.worship-live-clock{text-align:right;flex:none}.worship-live-clock small{display:block;color:var(--idigis-text-soft);font-size:var(--idigis-ui-caption);margin-bottom:3px}.worship-live-clock time{font-size:24px;line-height:1.3;font-weight:500;font-variant-numeric:tabular-nums;color:var(--idigis-text)}
.worship-live-summary{display:flex;align-items:flex-start;flex-wrap:wrap;gap:18px 32px;margin:16px 0 22px}.worship-live-summary small{display:block;color:var(--idigis-text-soft);font-size:var(--idigis-ui-caption);line-height:1.5}.worship-live-summary strong{display:block;font-size:20px;font-weight:600;line-height:1.5;font-variant-numeric:tabular-nums}
.worship-live-current{padding:20px;border:1px solid var(--idigis-primary);border-radius:12px;background:var(--idigis-surface)}.worship-live-current-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:14px;font-size:var(--idigis-ui-caption);color:var(--idigis-text-soft);font-variant-numeric:tabular-nums}.worship-live-current-action+.worship-live-current-action{border-top:1px dashed var(--idigis-border-strong);margin-top:12px;padding-top:12px}.worship-live-current-action strong{display:block;font-size:18px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}.worship-live-current-action>span{display:block;font-size:var(--idigis-ui-body);line-height:1.5;color:var(--idigis-text-soft);margin-top:5px;overflow-wrap:anywhere}.worship-live-parallel{display:flex;align-items:center;gap:5px;color:var(--idigis-primary);font-size:var(--idigis-ui-caption);line-height:1.5;margin-top:12px}.worship-live-progress{height:5px;border-radius:4px;overflow:hidden;background:var(--idigis-primary-soft);margin:18px 0 10px}.worship-live-progress span{display:block;height:100%;background:var(--idigis-primary)}
.worship-live-controls{display:flex;align-items:stretch;flex-wrap:wrap;gap:10px;margin:18px 0 22px}.worship-live-controls>.button{min-height:44px;justify-content:center}.worship-live-controls>.is-primary{flex:0 1 auto;min-width:190px}.worship-live-secondary{display:flex;gap:8px;flex-wrap:wrap;width:100%}.worship-live-secondary .button{font-size:var(--idigis-ui-caption);min-height:40px}.worship-live-enter{margin-top:4px;min-height:44px!important}.worship-live-offline{font-size:var(--idigis-ui-label);line-height:1.6;color:var(--idigis-text-soft);margin-bottom:12px}
.worship-live-finished{padding:20px;border-radius:12px;background:var(--idigis-success-bg);color:var(--idigis-text);margin-bottom:20px}.worship-live-finished>i{font-size:24px;color:var(--idigis-success);margin-right:8px}.worship-live-finished>strong{font-size:var(--idigis-ui-section);font-weight:600}.worship-live-finished p{font-size:var(--idigis-ui-label);line-height:1.6;margin-top:8px}
.worship-live-moments{list-style:none;margin:24px 0 0;padding:0;border:1px solid var(--idigis-border);border-radius:12px;overflow:hidden;background:var(--idigis-surface)}.worship-live-moments>li{display:flex;align-items:flex-start;gap:16px;padding:18px;border-bottom:1px solid var(--idigis-border)}.worship-live-moments>li:last-child{border-bottom:0}.worship-live-moments>li.is-current{background:var(--idigis-primary-soft)}.worship-live-moments>li.is-finished{color:var(--idigis-text-soft)}.worship-live-moment-time{flex:none;width:46px;font-variant-numeric:tabular-nums;text-align:center;color:var(--idigis-primary);font-size:var(--idigis-ui-caption)}.worship-live-moment-time>i{display:block;font-size:21px;margin-top:7px}.is-finished .worship-live-moment-time{color:var(--idigis-text-soft)}.worship-live-moment-content{flex:1;min-width:0}.worship-live-moment-label{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:var(--idigis-ui-caption);line-height:1.5;color:var(--idigis-text-soft);margin-bottom:8px}.worship-live-moment-content>div+div{margin-top:10px}.worship-live-moment-content>div+div+div{border-top:1px dashed var(--idigis-border-strong);padding-top:10px}.worship-live-moment-content strong{display:block;font-size:var(--idigis-ui-body);line-height:1.5;font-weight:500;overflow-wrap:anywhere}.worship-live-moment-content p,.worship-live-moment-content small{display:block;font-size:var(--idigis-ui-label);line-height:1.6;color:var(--idigis-text-soft);margin-top:3px;overflow-wrap:anywhere;white-space:pre-wrap}
@media(max-width:640px){.worship-timeline>.worship-moment.is-parallel{margin:8px}.worship-moment.is-parallel .worship-moment-action{padding:14px 10px}.worship-moment.is-parallel .worship-moment-heading{padding:10px}.worship-share-link{flex-direction:column;align-items:center;gap:18px}.worship-share-address{width:100%}.worship-share-actions .button{flex:1;justify-content:center}.worship-live-header{gap:12px}.worship-live-clock time{font-size:22px}.worship-live-current{padding:16px}.worship-live-controls>.button{min-height:46px}.worship-live-controls>.is-primary{flex:1;min-width:0}.worship-live-secondary .button{min-height:44px}.worship-live-moments>li{padding:16px 12px;gap:10px}.worship-live-summary{gap:14px 24px}.worship-live-summary strong{font-size:18px}}
.worship-share-code{margin:0;flex:none;width:176px}.worship-share-code figcaption a{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;font-size:var(--idigis-ui-caption);color:var(--idigis-primary);border-radius:7px}.worship-share-code figcaption a:focus-visible{outline:2px solid var(--idigis-primary);outline-offset:1px}
@media(max-width:640px){.worship-share-fallback{font-size:16px}.worship-row-actions>.button{width:44px;min-height:44px}}
@media(pointer:coarse){.worship-row-actions>.button{min-width:44px;min-height:44px}}
.worship-copy-link:disabled{color:var(--idigis-text-soft);cursor:default;background:var(--idigis-surface-muted)}
.worship-sharing-pending{font-size:var(--idigis-ui-body);line-height:1.6;color:var(--idigis-text-soft);padding:12px 0}.worship-sharing-pending .button{margin-top:14px}.worship-disable-link{align-self:flex-start;margin-top:12px;min-height:44px!important}.worship-disable-confirm{padding:14px;background:var(--idigis-danger-bg);border:1px solid var(--idigis-border);border-radius:10px;margin-top:12px;font-size:var(--idigis-ui-label);line-height:1.6;color:var(--idigis-text)}.worship-disable-confirm>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.worship-disable-confirm .button{min-height:44px}

/* Worship dialogs: compose the same compact sections and control scale as Agenda. */
.worship-dialog-switch{display:flex;gap:8px;padding:10px var(--idigis-dialog-inset);margin:calc(-1 * var(--idigis-dialog-inset)) calc(-1 * var(--idigis-dialog-inset)) 20px;background:var(--idigis-surface-muted);border-bottom:1px solid var(--idigis-border)}
.worship-dialog-switch button{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;min-height:var(--idigis-control-height);border:1px solid transparent;border-radius:8px;background:transparent;color:var(--idigis-text-soft);font:inherit;font-size:var(--idigis-ui-label);cursor:pointer}
.worship-dialog-switch button[aria-pressed=true]{background:var(--idigis-surface);border-color:var(--idigis-border);color:var(--idigis-primary);font-weight:500}
.worship-dialog-switch button:focus-visible{outline:2px solid var(--idigis-primary);outline-offset:2px}.worship-dialog-switch button:disabled{opacity:.5;cursor:default}
.worship-share-panel[hidden]{display:none!important}
.worship-sharing-modal .worship-share-link{flex-direction:column;align-items:center;gap:16px;padding:0}
.worship-sharing-modal .worship-share-code{width:160px}.worship-sharing-modal .worship-share-qr{width:160px;height:160px;border-radius:10px}
.worship-sharing-modal .worship-share-address{width:100%;text-align:center}.worship-sharing-modal .worship-share-address>strong{font-size:var(--idigis-ui-section)}
.worship-sharing-modal .worship-share-address>p{max-width:340px;margin:6px auto 16px}
.worship-sharing-modal .worship-copy-link{height:var(--idigis-control-height);min-height:var(--idigis-control-height);padding:0 12px;font-size:var(--idigis-ui-label)}
.worship-sharing-modal .worship-share-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.worship-sharing-modal .worship-share-actions .button{justify-content:center;height:var(--idigis-control-height);min-height:var(--idigis-control-height)}
.worship-sharing-modal .worship-share-status:empty{display:none}.worship-sharing-modal .worship-share-code figcaption a{min-height:var(--idigis-control-height)}
.worship-share-security small{font-size:var(--idigis-ui-caption);color:var(--idigis-text-soft);line-height:1.5}
.worship-share-security .worship-field-error{color:var(--idigis-danger)}
.worship-share-security .label{margin:0 0 6px}.worship-share-security .worship-editor-field>small{display:block;margin-top:6px}
.worship-share-danger{border-top:1px solid var(--idigis-border);margin-top:20px;padding-top:12px}.worship-share-danger>.button{padding-inline:0;background:transparent}
.worship-editor-grid{display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:start;gap:16px}.worship-editor-grid:has(> :only-child){grid-template-columns:1fr}
.worship-opportunity-modal .worship-form{gap:0}.worship-opportunity-modal .worship-duration-input{margin:0}
.worship-opportunity-modal .worship-suggestions{margin:0;gap:6px}.worship-opportunity-modal .worship-suggestions .button{height:32px;min-height:32px;border:1px solid var(--idigis-border);background:var(--idigis-surface);border-radius:8px}
.worship-opportunity-modal .worship-suggestions .button.is-selected{background:var(--idigis-primary-soft);border-color:var(--idigis-primary);color:var(--idigis-primary)}
.worship-opportunity-modal .worship-editor-field .label{margin-bottom:6px}.worship-opportunity-modal .textarea{min-height:80px;resize:vertical}
.ui-editor-host .ui-modal:is(.worship-sharing-modal,.worship-opportunity-modal) .ui-modal__head{box-shadow:none}
@media(min-width:769px){.ui-editor-host .ui-modal.worship-sharing-modal .modal-card{width:480px}.ui-editor-host .ui-modal.worship-opportunity-modal .modal-card{width:620px}.worship-opportunity-modal .input,.worship-opportunity-modal .textarea,.worship-share-security .input{font-size:var(--idigis-ui-label)}}
@media(max-width:768px){.worship-editor-grid{grid-template-columns:1fr}.worship-opportunity-modal .worship-suggestions .button{height:44px;min-height:44px}.worship-sharing-modal .worship-share-address>p{margin-bottom:16px}.worship-opportunity-modal .input,.worship-opportunity-modal .textarea,.worship-share-security .input{font-size:16px}.worship-opportunity-modal .worship-person .button{width:44px;min-height:44px}}

/* Short access forms use a compact dialog, never an empty full-screen form. */
@media(min-width:769px){.ui-editor-host .ui-modal.worship-access-modal .modal-card{width:420px}}
.ui-editor-host .ui-modal.worship-access-modal .ui-modal__head{box-shadow:none}
.worship-password-control{display:flex;align-items:center;gap:8px}.worship-password-control>.input{flex:1;min-width:0}.worship-password-control>.button{width:var(--idigis-control-height);height:var(--idigis-control-height);min-height:var(--idigis-control-height);padding:0;flex:none;font-size:18px}
.worship-access-modal .worship-editor-field .label{margin:0 0 6px}
@media(max-width:768px){.worship-access-modal .input{font-size:16px}}
