.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{content:"";border:3px solid #ccc;border-width:3px 3px 0 0;width:9px;height:9px;display:block;position:absolute;top:6px}.react-datepicker__sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.react-datepicker-wrapper{border:0;padding:0;display:inline-block}.react-datepicker{color:#000;font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;line-height:initial;background-color:#fff;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-right-radius:.375em;border-bottom-left-radius:.375em}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle,.react-datepicker-popper--header-middle[data-placement^=bottom] .react-datepicker__triangle,.react-datepicker-popper--header-bottom[data-placement^=bottom] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker-popper--header-bottom[data-placement^=top] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select,.react-datepicker__header--middle,.react-datepicker__header--bottom){border-top-right-radius:.3rem}.react-datepicker__header--middle{border-top:1px solid #aeaeae;border-radius:0;margin-top:4px}.react-datepicker__header--bottom{border-top:1px solid #aeaeae;border-bottom:none;border-radius:0 0 .3rem .3rem}.react-datepicker__header-wrapper{position:relative}.react-datepicker__header-wrapper .react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:2px}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{margin:0 15px;display:inline-block}.react-datepicker__month-select,.react-datepicker__year-select,.react-datepicker__month-year-select{color:inherit;cursor:pointer;font-family:inherit;font-size:inherit;background-color:#0000;border:1px solid #aeaeae;border-radius:.3rem;margin-top:5px;padding:2px 5px}.react-datepicker__month-select:focus-visible,.react-datepicker__year-select:focus-visible,.react-datepicker__month-year-select:focus-visible{outline:1px auto}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{color:#000;margin-top:0;font-size:.944rem;font-weight:700}h2.react-datepicker__current-month{margin:0;padding:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{text-align:center;cursor:pointer;z-index:1;text-indent:-999em;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex;position:absolute;top:2px;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{margin-left:auto;margin-right:auto;display:block;position:relative;top:0}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation-icon{width:0;font-size:20px;position:relative;top:-1px}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{left:-7px;transform:rotate(45deg)}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{right:-7px;transform:rotate(225deg)}.react-datepicker__month-container{float:left}.react-datepicker__year{text-align:center;margin:.5em}.react-datepicker__year-wrapper{flex-wrap:wrap;max-width:180px;display:flex}.react-datepicker__year .react-datepicker__year-text{width:5em;margin:2px;display:inline-block}.react-datepicker__month{text-align:center;margin:.5em}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{width:5em;margin:2px;display:inline-block}.react-datepicker__input-time-container{clear:both;float:left;text-align:left;width:100%;margin:5px 0 10px 15px}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{margin-left:10px;display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{border:1px solid #aeaeae;border-radius:.375em;display:inline;position:absolute;top:0;right:-87px}.react-datepicker__time-container .react-datepicker__time{background:#fff;border-bottom-right-radius:.375em;position:relative}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{text-align:center;border-bottom-right-radius:.375em;width:85px;margin:0 auto;overflow-x:hidden}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{box-sizing:content-box;width:100%;height:calc(195px + 1.0625em);margin:0;padding-left:0;padding-right:0;list-style:none;overflow-y:scroll}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{white-space:nowrap;height:30px;padding:5px 10px}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{color:#fff;background-color:#216ba5;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:#0000}.react-datepicker__week-number{color:#ccc;text-align:center;width:2.125em;margin:.208em;line-height:2.125em;display:inline-block}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__week-number--selected{color:#fff;background-color:#216ba5;border-radius:.3rem}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{text-align:center;white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;text-align:center;width:2.125em;margin:.208em;line-height:2.125em;display:inline-block}.react-datepicker__day-name--disabled,.react-datepicker__day--disabled,.react-datepicker__time-name--disabled{cursor:default;color:#ccc}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{color:#fff;background-color:#3dcc4a;border-radius:.3rem}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{color:#fff;background-color:#ff6803;border-radius:.3rem;position:relative}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{color:#fff;white-space:nowrap;visibility:hidden;opacity:0;background-color:#333;border-radius:4px;padding:4px;transition:visibility,opacity .3s ease-in-out;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{color:#fff;background-color:#216ba5;border-radius:.3rem}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{color:#000;background-color:#bad9f1;border-radius:.3rem}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{color:#fff;background-color:#1d5d90}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){color:#000;background-color:#f0f0f0}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{color:#fff;white-space:nowrap;visibility:hidden;opacity:0;background-color:#333;border-radius:4px;padding:4px;transition:visibility,opacity .3s ease-in-out;position:absolute;bottom:70%;left:50%;transform:translate(-50%)}.react-datepicker__input-container{width:100%;display:inline-block;position:relative}.react-datepicker__input-container .react-datepicker__calendar-icon{box-sizing:content-box;padding:.625em;position:absolute}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid #0000;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{top:0;right:-16px;transform:rotate(135deg)}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{z-index:1;text-align:center;background-color:#f0f0f0;border:1px solid #aeaeae;border-radius:.3rem;width:50%;position:absolute;top:30px;left:25%}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{width:100%;margin-left:auto;margin-right:auto;line-height:20px;display:block}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;user-select:none;border-bottom-right-radius:.3rem;border-bottom-left-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;vertical-align:middle;background-color:#0000;border:0;outline:0;height:100%;padding:0 6px 0 0;display:table-cell;position:absolute;top:0;right:0}.react-datepicker__close-icon:after{cursor:pointer;color:#fff;text-align:center;vertical-align:middle;content:"×";background-color:#216ba5;border-radius:50%;width:16px;height:16px;padding:2px;font-size:12px;line-height:1;display:table-cell}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{cursor:pointer;text-align:center;clear:left;background:#f0f0f0;border-top:1px solid #aeaeae;padding:5px 0;font-weight:700}.react-datepicker__portal{z-index:2147483647;background-color:#000c;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.react-datepicker__children-container{width:17.25em;height:auto;margin:.5em;padding-left:.25em;padding-right:.25em}.react-datepicker__aria-live{clip-path:circle(0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.react-datepicker__calendar-icon{vertical-align:-.125em;width:1em;height:1em}.react-datepicker-popper-offset{margin-top:-.7em}:root{--color-bg-primary:#fff;--color-bg-secondary:#f5f5f5;--color-bg-tertiary:#e8e8e8;--color-text-primary:#1a1a1a;--color-text-secondary:#555;--color-text-tertiary:#636363;--color-border:#d4d4d4;--color-accent:#2563eb;--color-accent-hover:#1d4ed8;--color-accent-text:#fff;--color-error:#dc2626;--color-error-text:#fff;--color-success:#16a34a;--color-success-text:#fff;--color-warning:#a16207;--color-warning-text:#fff;--color-season-advent:#5b21b6;--color-season-advent-light:#ddd6fe;--color-season-christmas:#b45309;--color-season-christmas-light:#fef3c7;--color-season-lent:#7c3aed;--color-season-lent-light:#ede9fe;--color-season-easter:#ca8a04;--color-season-easter-light:#fefce8;--color-season-ordinary:#15803d;--color-season-ordinary-light:#dcfce7;--color-season-rose:#db2777;--color-season-rose-light:#fce7f3;--color-season-red:#dc2626;--color-season-red-light:#fee2e2;--color-season-accent:var(--color-season-ordinary);--color-season-accent-light:var(--color-season-ordinary-light);--color-safety-green:#16a34a;--color-safety-green-bg:#f0fdf4;--color-safety-yellow:#a16207;--color-safety-yellow-bg:#fefce8;--color-safety-red:#dc2626;--color-safety-red-bg:#fef2f2;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--page-gutter:.75rem;--font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:2rem;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-full:9999px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px #00000012;--shadow-lg:0 10px 15px #0000001a;--transition-fast:.15s ease;--transition-normal:.25s ease;--z-dropdown:100;--z-modal:200;--z-toast:300;accent-color:var(--color-season-accent)}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg-primary:#1a1a1a;--color-bg-secondary:#262626;--color-bg-tertiary:#333;--color-text-primary:#f0f0f0;--color-text-secondary:#aaa;--color-text-tertiary:#9e9e9e;--color-border:#404040;--color-accent:#3b82f6;--color-accent-hover:#60a5fa;--color-accent-text:#fff;--color-error:#ef4444;--color-error-text:#fff;--color-success:#22c55e;--color-success-text:#fff;--color-warning:#ca8a04;--color-warning-text:#1a1a1a;--color-season-advent:#a78bfa;--color-season-advent-light:#2e1065;--color-season-christmas:#fbbf24;--color-season-christmas-light:#451a03;--color-season-lent:#a78bfa;--color-season-lent-light:#2e1065;--color-season-easter:#facc15;--color-season-easter-light:#422006;--color-season-ordinary:#4ade80;--color-season-ordinary-light:#052e16;--color-season-rose:#f472b6;--color-season-rose-light:#500724;--color-season-red:#ef4444;--color-season-red-light:#450a0a;--color-safety-green:#22c55e;--color-safety-green-bg:#052e16;--color-safety-yellow:#eab308;--color-safety-yellow-bg:#422006;--color-safety-red:#ef4444;--color-safety-red-bg:#450a0a;--shadow-sm:0 1px 2px #0003;--shadow-md:0 4px 6px #0000004d;--shadow-lg:0 10px 15px #0006}*,:before,:after{box-sizing:border-box;margin:0;padding:0}dialog[open]{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);max-width:min(28rem, calc(100vw - 2 * var(--space-lg)));background:var(--color-bg-primary);width:100%;color:var(--color-text-primary);box-shadow:var(--shadow-lg);margin:auto}dialog::backdrop{background:#00000080}dialog h2,dialog .form-field{margin-bottom:var(--space-md)}html{font-size:100%}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);transition:color var(--transition-normal), background-color var(--transition-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}button,input:not([type=hidden]),select,textarea{min-height:2.75rem}.avatar{border-radius:var(--radius-full);color:#fff;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;line-height:1;display:inline-flex}.avatar--sm{width:1.5rem;height:1.5rem;font-size:var(--font-size-xs)}.avatar--md{width:2rem;height:2rem;font-size:var(--font-size-sm)}.avatar--lg{width:3rem;height:3rem;font-size:var(--font-size-base)}.avatar--xl{width:4rem;height:4rem;font-size:var(--font-size-xl)}.avatar-label{align-items:center;gap:var(--space-sm);display:inline-flex}.button{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:500;line-height:var(--line-height-tight);cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast);border:1px solid #0000;text-decoration:none;display:inline-flex}.button:disabled,.button[aria-disabled=true]{opacity:.6;cursor:not-allowed}.button--primary{background-color:var(--color-accent);color:var(--color-accent-text);border-color:var(--color-accent-text)}.button--primary:hover:not(:disabled):not([aria-disabled=true]){background-color:var(--color-accent-hover);box-shadow:var(--shadow-sm)}.button--secondary{background-color:var(--color-bg-primary);color:var(--color-text-primary);border-color:var(--color-border)}.button--secondary:hover:not(:disabled):not([aria-disabled=true]){background-color:var(--color-bg-secondary);border-color:var(--color-text-tertiary)}.button--danger{background-color:var(--color-bg-primary);color:var(--color-error);border-color:var(--color-error)}.button--danger:hover:not(:disabled):not([aria-disabled=true]){background-color:var(--color-error);color:var(--color-accent-text)}.button--ghost{color:var(--color-text-secondary);background-color:#0000}.button--ghost:hover:not(:disabled):not([aria-disabled=true]){background-color:var(--color-bg-secondary);color:var(--color-text-primary)}.button--seasonal{background-color:var(--color-season-accent);color:var(--color-accent-text);border-color:var(--color-accent-text)}.button--seasonal:hover:not(:disabled):not([aria-disabled=true]){opacity:.9;box-shadow:var(--shadow-sm)}.button--sm{padding:var(--space-xs) var(--space-md);min-height:2.75rem}.button--md{padding:var(--space-sm) var(--space-md)}.button--lg{padding:var(--space-sm) var(--space-lg);font-size:var(--font-size-base)}.form-field{gap:var(--space-xs);margin-bottom:var(--space-md);flex-direction:column;display:flex}.form-field__label{font-size:var(--font-size-sm);color:var(--color-text-primary);font-weight:500}.form-field__input{width:100%;padding:var(--space-sm) var(--space-md);font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast)}.form-field__input:focus-visible{border-color:var(--color-accent);outline:2px solid var(--color-accent);outline-offset:2px}.form-field__input:focus:not(:focus-visible){border-color:var(--color-accent);outline:none}.form-field__input--error{border-color:var(--color-error)}.form-field__input:disabled,fieldset:disabled .form-field__input{background-color:var(--color-bg-secondary);color:var(--color-text-secondary);cursor:not-allowed}fieldset:disabled .form-field__label{color:var(--color-text-secondary)}.form-field__error{font-size:var(--font-size-sm);color:var(--color-error)}.form-field__warning{padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-md);background-color:var(--color-warning);color:var(--color-warning-text);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.form-field__warning-list{padding-left:var(--space-md);margin:0}.form-field__warning-list>li+li{margin-top:var(--space-xs)}.form-field__help{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.member-name{align-items:center;gap:var(--space-xs);display:inline-flex}.icon-button{padding:var(--space-xs);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{background-color:var(--color-bg-secondary)}.icon-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.icon-button--success{color:var(--color-success)}.icon-button--danger{color:var(--color-error)}.member-name__guardian--guardian{color:var(--color-success)}.member-name__guardian--minor,.member-name__guardian--both{color:var(--color-warning)}.dob-approvals__expiry--urgent{color:var(--color-warning);font-weight:500}.form-field__group{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);margin-bottom:var(--space-md)}.form-field__group>legend{padding:0 var(--space-xs)}.form-field__checkbox{align-items:center;gap:var(--space-sm);cursor:pointer;font-size:var(--font-size-sm);margin-bottom:var(--space-md);display:flex}.form-field__checkbox input[type=checkbox]{flex-shrink:0;width:1.125rem;height:1.125rem;min-height:auto}.badge{padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-xs);border-radius:var(--radius-full);align-items:center;font-weight:500;line-height:1;display:inline-flex}button.badge{cursor:pointer;transition:filter var(--transition-fast);border:none;font-family:inherit}button.badge:hover{filter:brightness(.92)}button.badge:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.badge--default{background-color:var(--color-bg-tertiary);color:var(--color-text-primary)}.badge--success{background-color:var(--color-success);color:var(--color-success-text)}.badge--warning{background-color:var(--color-warning);color:var(--color-warning-text)}.badge--error{background-color:var(--color-error);color:var(--color-error-text)}.invite-status-badge{border-radius:var(--radius-sm);font-size:var(--font-size-xs);white-space:nowrap;padding:.125rem .5rem;font-weight:600;display:inline-block}.invite-status-badge--active{background-color:var(--color-success);color:var(--color-success-text)}.invite-status-badge--expired{background-color:var(--color-warning);color:var(--color-warning-text)}.invite-status-badge--fully_used{background-color:var(--color-bg-tertiary);color:var(--color-text-secondary)}.spinner{color:var(--color-accent)}.seasonal-logo{object-fit:contain;height:auto;display:block}.seasonal-logo--sm{width:6rem}.seasonal-logo--md{width:10rem}.seasonal-logo--lg{width:14rem}.topbar{--topbar-icon-size:2rem;--topbar-tap-target:2.75rem;z-index:20;align-items:center;gap:var(--space-md);padding-block:var(--space-sm);padding-left:max(var(--page-gutter), env(safe-area-inset-left,0px));padding-right:max(var(--page-gutter), env(safe-area-inset-right,0px));background-color:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);grid-template-columns:1fr auto 1fr;min-height:3.25rem;display:grid;position:sticky;top:0}.topbar__start{justify-content:flex-start;align-items:center;display:flex}.topbar__center{justify-content:center;align-items:center;min-width:0;display:flex}.topbar__end{justify-content:flex-end;align-items:center;gap:var(--space-sm);display:flex}.topbar__brand{color:var(--color-accent);min-width:var(--topbar-tap-target,2.75rem);min-height:var(--topbar-tap-target,2.75rem);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.topbar__brand:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}.topbar__brand .seasonal-logo{width:var(--topbar-icon-size);height:var(--topbar-icon-size)}.topbar__church-name{font-size:var(--font-size-base);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-weight:600;overflow:hidden}.church-switcher{min-width:0;max-width:100%;display:inline-flex;position:relative}.church-switcher__trigger{justify-content:center;align-items:center;gap:var(--space-xs);cursor:pointer;min-height:var(--topbar-tap-target,2.75rem);padding:var(--space-xs) var(--space-sm);color:var(--color-text-primary);font:inherit;font-size:var(--font-size-base);border-radius:var(--radius-md);background:0 0;border:none;min-width:0;max-width:100%;font-weight:600;display:inline-flex}.church-switcher__trigger:hover,.church-switcher__trigger:focus-visible{background-color:color-mix(in srgb, var(--color-text-primary) 8%, transparent)}.church-switcher__trigger:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.church-switcher__label{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.church-switcher__chevron{color:var(--color-text-tertiary);flex:none}.topbar-popover{background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);z-index:var(--z-dropdown);padding:var(--space-xs);flex-direction:column;gap:2px;display:flex;box-shadow:0 4px 12px #00000026}.church-switcher__menu{min-width:14rem;max-width:min(20rem, calc(100vw - 2 * var(--page-gutter)))}.church-switcher__menuitem{justify-content:space-between;align-items:center;gap:var(--space-sm);width:100%;min-height:2.75rem;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:var(--color-text-primary);font:inherit;font-size:var(--font-size-sm);text-align:start;cursor:pointer;background:0 0;border:none;text-decoration:none;display:flex}.church-switcher__menuitem:hover,.church-switcher__menuitem:focus-visible{background-color:var(--color-bg-secondary);outline:none}.church-switcher__menuitem:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.church-switcher__menuitem--current{color:var(--color-accent);font-weight:600}.church-switcher__menuitem-name{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.church-switcher__menuitem-check{color:var(--color-accent);flex:none}.church-switcher__divider{height:1px;margin:var(--space-xs) 0;background-color:var(--color-border)}.church-switcher__menuitem--manage{color:var(--color-text-secondary);font-weight:500}.avatar-button{cursor:pointer;border-radius:var(--radius-full);min-width:var(--topbar-tap-target,2.75rem);min-height:var(--topbar-tap-target,2.75rem);background:0 0;border:none;justify-content:center;align-items:center;padding:0;line-height:0;display:inline-flex}.avatar-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-full)}.topbar__end .avatar-button .avatar{width:var(--topbar-icon-size);height:var(--topbar-icon-size)}.avatar-menu{display:inline-flex;position:relative}.avatar-menu__popover{min-width:12rem}.avatar-menu__item{min-height:2.75rem;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:var(--color-text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;width:100%;text-decoration:none;display:flex}.avatar-menu__item:hover{background-color:var(--color-bg-tertiary,var(--color-bg-primary));outline:none}.avatar-menu__item:focus-visible{background-color:var(--color-bg-tertiary,var(--color-bg-primary));outline:2px solid var(--color-accent);outline-offset:-2px}.connection-status{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:600;line-height:1;display:inline-flex}.connection-status__dot{border-radius:var(--radius-full);background-color:currentColor;width:.5rem;height:.5rem;display:inline-block}.connection-status--connecting,.connection-status--reconnecting{background-color:var(--color-safety-yellow-bg);color:var(--color-safety-yellow)}.connection-status--reconnecting .connection-status__dot{animation:1.2s ease-in-out infinite connection-pulse}.connection-status--disconnected{background-color:var(--color-safety-red-bg);color:var(--color-safety-red)}@keyframes connection-pulse{0%,to{opacity:1}50%{opacity:.35}}.bottom-tab-bar{left:0;right:0;bottom:var(--bottom-tab-bar-bottom-offset,0px);z-index:20;background-color:var(--color-bg-secondary);border-top:1px solid var(--color-border);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px);padding-bottom:env(safe-area-inset-bottom,0);transition:bottom .12s ease-out;position:fixed}.bottom-tab-bar__list{justify-content:space-around;align-items:stretch;margin:0;padding:0;list-style:none;display:flex}.bottom-tab-bar__item{flex:1 1 0;min-width:0;display:flex}.bottom-tab-bar__link{justify-content:center;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-xs);color:var(--color-text-secondary);transition:color var(--transition-fast);flex-direction:column;flex:auto;min-height:3.25rem;text-decoration:none;display:flex;position:relative}.bottom-tab-bar__link:hover{color:var(--color-text-primary)}.bottom-tab-bar__link.active{color:var(--color-accent);font-weight:600}.bottom-tab-bar__icon{justify-content:center;align-items:center;display:inline-flex}.bottom-tab-bar__label{font-size:var(--font-size-xs);white-space:nowrap;text-overflow:ellipsis;max-width:100%;line-height:1;overflow:hidden}.authenticated-layout{flex-direction:column;height:100vh;display:flex}@supports (height:100dvh){.authenticated-layout{height:100dvh}}.authenticated-layout__content{padding-block:var(--space-lg) calc(var(--space-lg) + var(--bottom-tab-bar-height,3.5rem));padding-left:max(var(--page-gutter), env(safe-area-inset-left,0px));padding-right:max(var(--page-gutter), env(safe-area-inset-right,0px));flex-direction:column;flex:1;min-height:0;display:flex}.authenticated-layout__content--scrollable{overscroll-behavior:contain;scroll-padding-bottom:calc(var(--composer-bottom-offset,0px) + var(--bottom-tab-bar-height,0px));overflow-y:auto}.page-layout{max-width:64rem;padding:var(--space-lg);margin:0 auto}.page-layout__title{margin-bottom:var(--space-lg);font-size:var(--font-size-2xl)}.auth-page{min-height:100vh;padding:var(--space-lg);justify-content:center;align-items:center;display:flex}.auth-page__card{width:100%;max-width:28rem;padding:var(--space-2xl);background-color:var(--color-bg-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.auth-page__logo{margin-bottom:var(--space-lg);justify-content:center;display:flex}.auth-page__card h1{margin-bottom:var(--space-lg);font-size:var(--font-size-2xl)}.auth-page__error{margin-bottom:var(--space-md);color:var(--color-error);font-size:var(--font-size-sm)}.auth-page__footer{margin-top:var(--space-lg);text-align:center;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.auth-page__footer a{color:var(--color-accent)}.auth-page__oauth{gap:var(--space-sm);margin-bottom:var(--space-md);flex-direction:column;display:flex}.auth-page__oauth-btn{justify-content:center;align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-family);font-size:var(--font-size-sm);cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast);font-weight:500;display:flex}.auth-page__oauth-btn:disabled{opacity:.6;cursor:not-allowed}.auth-page__oauth-btn--google{color:#3c4043;background-color:#fff;border-color:#dadce0}.auth-page__oauth-btn--google:hover:not(:disabled):not([aria-disabled=true]){background-color:#f8f9fa}.auth-page__oauth-btn--microsoft{color:#5e5e5e;background-color:#fff;border-color:#8c8c8c}.auth-page__oauth-btn--microsoft:hover:not(:disabled):not([aria-disabled=true]){background-color:#f3f3f3}.auth-page__oauth-btn svg{flex-shrink:0}.auth-page__divider{align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);color:var(--color-text-secondary);font-size:var(--font-size-sm);display:flex}.auth-page__divider:before,.auth-page__divider:after{content:"";background-color:var(--color-border);flex:1;height:1px}.interstitial-page{min-height:100vh;padding-top:var(--space-lg);padding-bottom:var(--space-lg);padding-left:max(var(--space-lg), env(safe-area-inset-left,0px));padding-right:max(var(--space-lg), env(safe-area-inset-right,0px));justify-content:center;align-items:center;display:flex}.interstitial-page__card{width:100%;max-width:32rem;padding:var(--space-2xl);background-color:var(--color-bg-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center}.interstitial-page__card h1{margin-bottom:var(--space-md);font-size:var(--font-size-2xl)}.interstitial-page__card p{margin-bottom:var(--space-lg);color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.interstitial-page__error{margin-top:var(--space-md);color:var(--color-error);font-size:var(--font-size-sm)}.interstitial-page__self-tos{gap:var(--space-md);text-align:left;margin-bottom:var(--space-lg);flex-direction:column;display:flex}.interstitial-page__self-tos-heading{font-size:var(--font-size-lg);margin:0;font-weight:600}.interstitial-page__self-tos-document{max-height:18rem;padding:var(--space-md);background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);line-height:var(--line-height-relaxed);overflow-y:auto}.interstitial-page__self-tos-document:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.interstitial-page__self-tos-paragraph{margin:0 0 var(--space-sm);color:var(--color-text-primary)}.interstitial-page__self-tos-paragraph:last-child{margin-bottom:0}.interstitial-page__self-tos-status{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0}.interstitial-page__self-tos-consent{color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);margin:0}.interstitial-page__self-tos-link{margin:0}.church-selector{min-height:100vh;padding:var(--space-lg);flex-direction:column;justify-content:center;align-items:center;display:flex}.church-selector h1{margin-bottom:var(--space-sm);font-size:var(--font-size-2xl)}.church-selector p{margin-bottom:var(--space-lg);color:var(--color-text-secondary)}.church-selector__list{gap:var(--space-md);flex-direction:column;width:100%;max-width:24rem;list-style:none;display:flex}.church-selector__item{width:100%;padding:var(--space-lg);background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;font-family:var(--font-family);font-size:var(--font-size-lg);text-align:left;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);display:block}.church-selector__item:hover{border-color:var(--color-accent);box-shadow:var(--shadow-md)}.conduct__text{text-align:left;margin-bottom:var(--space-lg);padding:var(--space-md);background-color:var(--color-bg-primary);border-radius:var(--radius-md);border:1px solid var(--color-border)}.group-list{gap:var(--space-sm);flex-direction:column;list-style:none;display:flex}.group-list__item{border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast)}.group-list__item:hover{border-color:var(--color-accent)}.group-list__link{gap:var(--space-xs);padding:var(--space-md);color:var(--color-text-primary);flex-direction:column;text-decoration:none;display:flex}.group-list__name{font-weight:500}.group-list__description{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.group-list__member-count{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.group-list--nested{padding-left:var(--space-md);margin:0;list-style:none}.group-list__item--subgroup{border-style:dashed}.group-list__item--subgroup .group-list__name:before{content:"└ ";color:var(--color-text-tertiary)}.breadcrumb{margin-bottom:var(--space-md);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.breadcrumb a{color:var(--color-accent);text-decoration:none}.group-detail>h1{font-size:var(--font-size-2xl);line-height:var(--line-height-tight);margin:0}.group-detail__description{margin-top:var(--space-md);margin-bottom:var(--space-lg);color:var(--color-text-secondary)}.group-detail__tabs{margin-top:var(--space-lg)}.group-detail--fill{flex-direction:column;flex:1 1 0;min-height:0;display:flex}.group-detail--fill>.breadcrumb,.group-detail--fill>h1,.group-detail--fill>.group-detail__description{flex-shrink:0}.group-detail--fill>.group-detail__tabs{min-height:0;margin-top:var(--space-md);flex-direction:column;flex:1 1 0;display:flex}.group-detail__placeholder{padding:var(--space-xl);text-align:center;color:var(--color-text-tertiary);background-color:var(--color-bg-secondary);border-radius:var(--radius-md)}.admin-hub__intro{color:var(--color-text-secondary);margin:0 0 var(--space-lg)}.admin-hub__list{gap:var(--space-lg);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.admin-hub__item{margin:0}.parish-settings__section{gap:var(--space-md);flex-direction:column;display:flex}.parish-settings__explainer{color:var(--color-text-secondary);margin:0}.parish-settings__status{align-items:center;gap:var(--space-sm);display:flex}.parish-settings__status-label{color:var(--color-text-secondary);font-weight:600}.parish-settings__toggle{align-items:center;gap:var(--space-sm);display:flex}.card{padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-primary);color:var(--color-text-primary)}.admin-hub__card{align-items:flex-start;gap:var(--space-md);transition:border-color var(--transition-fast), background-color var(--transition-fast);text-decoration:none;display:flex}.admin-hub__card:hover{border-color:var(--color-accent);background:var(--color-bg-secondary)}.admin-hub__card:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.admin-hub__card-icon{border-radius:var(--radius-md);background:var(--color-bg-secondary);width:2.5rem;height:2.5rem;color:var(--color-accent);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.admin-hub__card-body{gap:var(--space-xs);flex-direction:column;min-width:0;display:flex}.admin-hub__card-title{font-size:var(--font-size-lg);font-weight:600}.admin-hub__card-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.4}.admin-hub__version{margin:var(--space-lg) 0 0;font-size:var(--font-size-xs);color:var(--color-text-tertiary);text-align:center}.admin-header{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);display:flex}.admin-header h1{font-size:var(--font-size-2xl);line-height:var(--line-height-tight);margin:0}.admin-header__actions{align-items:center;gap:var(--space-sm);display:flex}.admin-invites-badge{padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-bg-secondary);color:var(--color-text-secondary);font-size:var(--font-size-xs);cursor:pointer;transition:border-color var(--transition-fast), color var(--transition-fast);align-items:center;min-height:2.75rem;display:inline-flex}.admin-invites-badge:hover{border-color:var(--color-accent);color:var(--color-text-primary)}.invite-list{gap:var(--space-md);max-height:60vh;margin-bottom:var(--space-md);flex-direction:column;display:flex;overflow-y:auto}.invite-list__card{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);background:var(--color-bg-secondary)}.invite-list__header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);flex-wrap:wrap;display:flex}.invite-list__meta{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.invite-list__code{padding:var(--space-xs) var(--space-sm);background:var(--color-bg-tertiary);border-radius:var(--radius-sm);font-size:var(--font-size-sm);word-break:break-all;margin-bottom:var(--space-sm)}.invite-list__actions{justify-content:flex-end;gap:var(--space-sm);margin-top:var(--space-sm);display:flex}.data-table{border-collapse:collapse;width:100%;margin-top:var(--space-md)}.data-table th,.data-table td{text-align:left;padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-border)}.data-table th{font-size:var(--font-size-sm);color:var(--color-text-secondary);background-color:var(--color-bg-secondary);font-weight:600}.data-table td{font-size:var(--font-size-base)}.pending-review-list{gap:var(--space-md);margin-top:var(--space-md);flex-direction:column;list-style:none;display:flex}.pending-review-list__item{padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);justify-content:space-between;align-items:center;display:flex}.pending-review-list__info{gap:var(--space-xs);flex-direction:column;display:flex}.pending-review-list__name{font-weight:500}.pending-review-list__date{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.pending-review-list__actions{gap:var(--space-sm);display:flex}.home-page h1{margin:0 0 var(--space-lg);font-size:var(--font-size-2xl);line-height:var(--line-height-tight)}.settings-page{max-width:40rem}.settings-page h1{margin-bottom:var(--space-lg);font-size:var(--font-size-2xl);line-height:var(--line-height-tight)}.settings-page__card{margin-bottom:var(--space-lg)}.settings-page__card>*+*{margin-top:var(--space-md)}.settings-page__card-header{justify-content:space-between;align-items:center;gap:var(--space-md);display:flex}.settings-page__card-title{font-size:var(--font-size-xl);margin:0}.settings-page__card-actions{align-items:center;gap:var(--space-sm);flex-shrink:0;display:flex}.settings-page__card-help{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;line-height:1.4}.settings-page__card-body{gap:var(--space-md);flex-direction:column;display:flex}.settings-page__definition-list{align-items:center;column-gap:var(--space-lg);row-gap:var(--space-sm);grid-template-columns:max-content 1fr;margin:0;display:grid}.settings-page__definition-list dt{color:var(--color-text-secondary);font-weight:600}.settings-page__definition-list dd{color:var(--color-text-primary);word-break:break-word;margin:0}@media (width<=30rem){.settings-page__definition-list{row-gap:var(--space-xs);grid-template-columns:1fr}.settings-page__definition-list dd{margin-bottom:var(--space-sm)}}.settings-page__radio{align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;cursor:pointer;display:flex}.settings-page__appearance-group{gap:var(--space-md);flex-wrap:wrap;display:flex}.settings-page__success{margin-top:var(--space-sm);color:var(--color-success);font-size:var(--font-size-sm)}.settings-page__error{margin-top:var(--space-sm);color:var(--color-error);font-size:var(--font-size-sm)}.settings-page__email-display,.settings-page__password-display{gap:var(--space-sm);flex-direction:column;display:flex}.settings-page__email-row,.settings-page__password-row{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.settings-page__email-value,.settings-page__password-mask{word-break:break-word;min-width:0}.settings-page__password-success{font-size:var(--font-size-sm);color:var(--color-success);margin:0}.settings-page__pending-banner{align-items:flex-start;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-secondary);flex-direction:column;display:flex}.settings-page__pending-banner-message{font-size:var(--font-size-sm);color:var(--color-text-primary);margin:0}.settings-page__pending-banner-error{font-size:var(--font-size-sm);color:var(--color-error);margin:0}.settings-page__inline-form{gap:var(--space-sm);padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-secondary);flex-direction:column;display:flex}.settings-page__inline-form-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:600}.settings-page__inline-form-input{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-bg-primary);color:var(--color-text-primary);font-family:var(--font-family);font-size:var(--font-size-base)}.settings-page__inline-form-input:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.settings-page__inline-form-help{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.settings-page__inline-form-error{color:var(--color-error);font-size:var(--font-size-sm);margin:0}.settings-page__inline-form-actions{gap:var(--space-sm);margin-top:var(--space-sm);flex-wrap:wrap;display:flex}.guardianship-section__list{gap:var(--space-md);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.guardianship-section__row{justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.guardianship-section__row-main{align-items:flex-start;gap:var(--space-xs);flex-direction:column;flex:auto;min-width:0;display:flex}.guardianship-section__row-meta{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.guardianship-section__confirm{gap:var(--space-sm);padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-secondary);flex-direction:column;flex-basis:100%;display:flex}.guardianship-section__confirm-actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.guardianship-section__error{color:var(--color-error);font-size:var(--font-size-sm);margin:0}.page-loading{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-2xl);color:var(--color-text-secondary);display:flex}.page-loading__message{font-size:var(--font-size-sm)}.page-error{justify-content:center;align-items:center;gap:var(--space-md);padding:var(--space-lg);text-align:center;color:var(--color-error);flex-direction:column;display:flex}.page-error__message{margin:0}.page-empty{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-2xl);text-align:center;color:var(--color-text-secondary);flex-direction:column;display:flex}.page-empty__title{font-size:var(--font-size-lg);color:var(--color-text-primary);margin:0;font-weight:600}.page-empty__message{font-size:var(--font-size-base);margin:0}.page-empty__action{margin-top:var(--space-sm)}.global-procedures-gate{justify-content:center;align-items:center;gap:var(--space-md);min-height:100dvh;padding:var(--space-lg);background:var(--color-bg-primary);color:var(--color-text-secondary);text-align:center;flex-direction:column;display:flex}.global-procedures-gate__message{font-size:var(--font-size-sm);margin:0}.global-procedures-gate__error-message{max-width:28rem;color:var(--color-text-primary);font-size:var(--font-size-base);margin:0}.message-bubble{gap:var(--space-xs);max-width:90%;padding:var(--space-sm) var(--space-md);background-color:var(--color-bg-secondary);border-radius:var(--radius-lg);flex-direction:column;align-self:flex-start;display:flex;position:relative}.message-bubble--own{background-color:var(--color-accent);color:var(--color-accent-text);align-self:flex-end}.message-bubble__author{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:600}.message-bubble--own .message-bubble__author{color:color-mix(in srgb, var(--color-accent-text) 92%, transparent)}.message-bubble__content{word-break:break-word;white-space:pre-wrap}.message-bubble__content--deleted{color:var(--color-text-tertiary);font-style:italic}.message-bubble__meta{align-items:baseline;gap:var(--space-xs);font-size:var(--font-size-xs);color:var(--color-text-tertiary);flex-wrap:wrap;display:flex}.message-bubble--own .message-bubble__meta{color:inherit;opacity:.7}.message-bubble__edited{font-style:italic}.message-bubble__actions{top:0;position:absolute;inset-inline-end:0}.message-bubble:has(.message-bubble__actions) .message-bubble__meta{padding-inline-end:2.75rem}.message-bubble__edit{gap:var(--space-xs);flex-direction:column;display:flex}.message-bubble__edit-input{width:100%;padding:var(--space-sm);font-family:var(--font-family);font-size:var(--font-size-base);border:1px solid var(--color-border);border-radius:var(--radius-md);resize:none;min-height:2.75rem}.message-bubble__edit-actions{gap:var(--space-xs);display:flex}.compose-bar{align-items:flex-end;gap:var(--space-xs);padding-block:var(--space-xs);border-top:1px solid var(--color-border);background-color:var(--color-bg-primary);padding-inline:0;display:flex}.compose-bar__input{padding:var(--space-xs) var(--space-sm);font-family:var(--font-family);font-size:var(--font-size-base);resize:none;max-height:min(10rem,30dvh);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:#0000;border:none;border-radius:0;flex:1}.compose-bar__input:focus{outline:none}.compose-bar__input:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}.compose-bar__send{padding-block:var(--space-xs);min-width:2.75rem;min-height:2.75rem;color:var(--color-accent);cursor:pointer;transition:color var(--transition-fast);background-color:#0000;border:none;flex-shrink:0;justify-content:flex-end;align-items:center;margin-inline-start:.125rem;padding-inline:0;display:inline-flex}.compose-bar__send:hover:not(:disabled){color:var(--color-accent-hover)}.compose-bar__send:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}.compose-bar__send:disabled{color:var(--color-text-tertiary);cursor:not-allowed}.compose-bar__send svg{width:1.5rem;height:1.5rem}.safety-icon{vertical-align:middle;margin-right:var(--space-xs);justify-content:center;align-items:center;line-height:1;display:inline-flex}.safety-icon--compliant{color:var(--color-safety-green)}.safety-icon--guardian{color:var(--color-safety-yellow)}.safety-icon--locked{color:var(--color-safety-red)}.breadcrumb--with-icon{flex-wrap:wrap;align-items:center;gap:0;display:flex}.typing-indicator{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-md);font-size:var(--font-size-sm);color:var(--color-text-tertiary);display:flex}.typing-indicator__dots{gap:3px;display:flex}.typing-indicator__dot{border-radius:var(--radius-full);background-color:var(--color-text-tertiary);width:6px;height:6px;animation:1.4s infinite typing-dot}.typing-indicator__dot:nth-child(2){animation-delay:.2s}.typing-indicator__dot:nth-child(3){animation-delay:.4s}@keyframes typing-dot{0%,60%,to{opacity:.3}30%{opacity:1}}.unread-badge{min-width:1.25rem;height:1.25rem;padding:0 var(--space-xs);font-size:var(--font-size-xs);color:var(--color-accent-text);background-color:var(--color-error);border-radius:var(--radius-full);justify-content:center;align-items:center;font-weight:600;line-height:1;display:inline-flex}.locked-overlay{align-items:center;gap:var(--space-sm);padding:var(--space-lg);text-align:center;background-color:var(--color-safety-red-bg);border-top:1px solid var(--color-safety-red);flex-direction:column;display:flex}.locked-overlay__message{color:var(--color-safety-red);font-weight:600}.locked-overlay__reason{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.locked-overlay__help{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.message-timestamp{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.message-bubble--own .message-timestamp{color:inherit}.message-thread{gap:var(--space-sm);overscroll-behavior:contain;max-height:60vh;padding-block:var(--space-md);flex-direction:column;padding-inline:0;display:flex;overflow-y:scroll}.message-thread>:first-child{margin-top:auto}.message-thread__sentinel{flex-shrink:0;height:1px}.message-thread__loading{text-align:center;padding:var(--space-sm);font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.message-thread__date-separator{padding:var(--space-sm) 0;justify-content:center;align-items:center;display:flex}.message-thread__date-separator span{font-size:var(--font-size-xs);color:var(--color-text-tertiary);background-color:var(--color-bg-primary);padding:0 var(--space-sm)}.group-message-tab{gap:var(--space-md);min-height:0;padding-bottom:max(env(safe-area-inset-bottom,0px), calc(var(--composer-bottom-offset,0px) - var(--bottom-tab-bar-height,0px)));flex-direction:column;flex:1 1 0;transition:padding-bottom .12s ease-out;display:flex}.group-message-tab__empty{padding:var(--space-xl);text-align:center;color:var(--color-text-tertiary);flex:1 1 0;min-height:0}.group-message-tab .message-thread{min-height:0;max-height:none;padding-bottom:calc(var(--space-md) + var(--composer-height,3.5rem));flex:1 1 0;transition:padding-bottom .12s ease-out}.group-message-tab .compose-bar{left:0;right:0;bottom:calc(var(--bottom-tab-bar-bottom-offset,0px) + var(--bottom-tab-bar-height,3.5rem));padding-left:max(var(--page-gutter), env(safe-area-inset-left,0px));padding-right:max(var(--page-gutter), env(safe-area-inset-right,0px));padding-bottom:var(--space-xs);z-index:30;background-color:var(--color-bg-primary);transition:bottom .12s ease-out;position:fixed}.conversation-list__header{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);display:flex}.conversation-list__header h1{font-size:var(--font-size-2xl);line-height:var(--line-height-tight);margin:0}.conversation-list{gap:var(--space-sm);flex-direction:column;list-style:none;display:flex}.conversation-list__empty{padding:var(--space-xl);text-align:center;color:var(--color-text-tertiary)}.conversation-list__load-more{text-align:center;padding:var(--space-sm)}.conversation-list-item{border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast)}.conversation-list-item:hover{border-color:var(--color-accent)}.conversation-list-item__link{padding:var(--space-md);color:var(--color-text-primary);justify-content:space-between;align-items:center;text-decoration:none;display:flex}.conversation-list-item__info{gap:var(--space-xs);flex-direction:column;display:flex}.conversation-list-item__id{font-weight:500}.conversation-list-item__time{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.conversation-list-item__locked{font-size:var(--font-size-sm);color:var(--color-safety-red);font-weight:500}.conversation-list-item__badge{margin-left:var(--space-xs);padding:0 var(--space-xs);font-size:var(--font-size-xs);color:var(--color-text-muted);background:var(--color-surface-raised);border-radius:var(--radius-sm);vertical-align:middle;font-weight:500;display:inline-block}.new-conversation-dialog__search{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);background:var(--color-bg-primary);color:var(--color-text-primary);margin-bottom:var(--space-sm)}.new-conversation-dialog__list{margin:0 0 var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);max-height:16rem;padding:0;list-style:none;overflow-y:auto}.new-conversation-dialog__member{padding:var(--space-sm) var(--space-md);cursor:pointer;justify-content:space-between;align-items:center;display:flex}.new-conversation-dialog__member:hover{background:var(--color-bg-secondary)}.new-conversation-dialog__member--selected{background:var(--color-bg-tertiary)}.new-conversation-dialog__empty{padding:var(--space-md);text-align:center;color:var(--color-text-secondary)}.new-conversation-dialog__safety-hint{padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-sm);font-size:var(--font-size-sm);background-color:var(--color-safety-yellow-bg);color:var(--color-safety-yellow);border:1px solid var(--color-safety-yellow);border-radius:var(--radius-md)}.new-conversation-dialog__actions{justify-content:flex-end;gap:var(--space-sm);display:flex}.conversation-detail{gap:var(--space-md);min-height:0;padding-bottom:max(env(safe-area-inset-bottom,0px), calc(var(--composer-bottom-offset,0px) - var(--bottom-tab-bar-height,0px)));flex-direction:column;flex:1 1 0;transition:padding-bottom .12s ease-out;display:flex}.conversation-detail .message-thread{min-height:0;max-height:none;padding-bottom:calc(var(--space-md) + var(--composer-height,3.5rem));flex:1 1 0;transition:padding-bottom .12s ease-out}.conversation-detail .compose-bar,.conversation-detail .locked-overlay,.group-message-tab .locked-overlay,.event-detail__messages .locked-overlay{left:0;right:0;bottom:calc(var(--bottom-tab-bar-bottom-offset,0px) + var(--bottom-tab-bar-height,3.5rem));padding-left:max(var(--page-gutter), env(safe-area-inset-left,0px));padding-right:max(var(--page-gutter), env(safe-area-inset-right,0px));padding-bottom:var(--space-xs);z-index:30;background-color:var(--color-bg-primary);transition:bottom .12s ease-out;position:fixed}.conversation-detail .locked-overlay,.group-message-tab .locked-overlay,.event-detail__messages .locked-overlay{padding-bottom:var(--space-lg)}.conversation-detail>.breadcrumb{flex-shrink:0}.birthday-modal__body{margin-bottom:var(--space-lg);color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.guardian-acceptance-modal__intro{color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin:0}.guardian-acceptance-modal__list{gap:var(--space-md);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.guardian-acceptance-modal__row{gap:var(--space-sm);padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;display:flex}.guardian-acceptance-modal__row-summary{gap:var(--space-xs);flex-direction:column;display:flex}.guardian-acceptance-modal__row-headline{font-weight:var(--font-weight-medium);margin:0}.guardian-acceptance-modal__row-meta{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0}.guardian-acceptance-modal__actions{gap:var(--space-sm);flex-wrap:wrap;justify-content:flex-end;display:flex}.guardian-acceptance-modal__confirmation{padding:var(--space-sm) 0 0;gap:var(--space-sm);border:0;flex-direction:column;margin:0;display:flex}.guardian-acceptance-modal__confirmation-body{color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin:0}.guardian-acceptance-modal__phase{gap:var(--space-sm);padding:var(--space-sm) 0 0;flex-direction:column;display:flex}.guardian-acceptance-modal__phase-heading{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);margin:0}.guardian-acceptance-modal__phase-heading:focus{outline:2px solid var(--color-focus,var(--color-primary));outline-offset:2px;border-radius:var(--radius-sm)}.guardian-acceptance-modal__phase-body{color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin:0}.guardian-acceptance-modal__error{color:var(--color-danger);font-size:var(--font-size-sm);margin:0}.tabs__list{gap:var(--space-xs);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-md);display:flex}.tabs__tab{padding:var(--space-sm) var(--space-md);cursor:pointer;font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text-secondary);transition:color var(--transition-fast), border-color var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;font-weight:500}.tabs__tab:hover{color:var(--color-text-primary)}.tabs__tab--active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.tabs__panel{padding:var(--space-md) 0}.tabs--fill{flex-direction:column;flex:1 1 0;min-height:0;display:flex}.tabs--fill>.tabs__list{flex-shrink:0}.tabs--fill>.tabs__panel{min-height:0;padding:var(--space-md) 0 0;flex-direction:column;flex:1 1 0;display:flex}.group-members__header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);display:flex}.group-members__empty{padding:var(--space-xl);text-align:center;color:var(--color-text-tertiary)}.group-members__list{gap:var(--space-xs);flex-direction:column;list-style:none;display:flex}.group-members__item{justify-content:space-between;align-items:center;gap:var(--space-sm);min-height:3.5rem;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex}.group-members__info{align-items:center;gap:var(--space-sm);flex:1;min-width:0;display:flex}.group-members__name{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.group-members__actions{gap:var(--space-xs);flex-shrink:0;display:flex}.group-members__icon-button{min-width:44px;min-height:44px;padding:var(--space-xs);justify-content:center;align-items:center;display:inline-flex}.group-members__load-more{text-align:center;padding:var(--space-sm)}.group-members__bulk-summary{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);margin-bottom:var(--space-sm);display:flex}.group-members__bulk-summary-message{font-size:var(--font-size-sm);color:var(--color-text-primary);margin:0}.group-members__admin-badge{color:var(--color-accent);flex-shrink:0;align-items:center;line-height:1;display:inline-flex}.parish-admin-procedures-modal__version{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0 0 var(--space-sm)}.parish-admin-procedures-modal__intro{margin:0 0 var(--space-sm)}.parish-admin-procedures-modal__summary{margin:0 0 var(--space-md);padding-left:var(--space-lg);gap:var(--space-xs);flex-direction:column;display:flex}.parish-admin-procedures-modal__placeholder-note{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0 0 var(--space-md)}.parish-admin-procedures-modal__acknowledge{align-items:flex-start;gap:var(--space-sm);min-height:2.75rem;padding:var(--space-xs) 0;cursor:pointer;display:flex}.parish-admin-procedures-modal__acknowledge input[type=checkbox]{cursor:pointer;min-width:1.5rem;min-height:1.5rem;margin-top:2px}.parish-admin-procedures-modal__error{color:var(--color-error);margin:var(--space-sm) 0 0}.parish-admin-procedures-modal__actions{justify-content:flex-start;gap:var(--space-sm);margin-top:var(--space-md);flex-direction:row-reverse;display:flex}.parish-admin-procedures-modal{max-height:80vh;overflow-y:auto}.add-member-dialog__search{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);background:var(--color-bg-primary);color:var(--color-text-primary);margin-bottom:var(--space-sm)}.add-member-dialog__toolbar{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-xs) 0 var(--space-sm);flex-wrap:wrap;display:flex}.add-member-dialog__select-all{align-items:center;gap:var(--space-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;display:inline-flex}.add-member-dialog__counter{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.add-member-dialog__list{margin:0 0 var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);max-height:16rem;padding:0;list-style:none;overflow-y:auto}.add-member-dialog__item{padding:0}.add-member-dialog__member{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);cursor:pointer;width:100%;font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text-primary);background:0 0;border:none;display:flex}.add-member-dialog__member:hover{background:var(--color-bg-secondary)}.add-member-dialog__member:has(input:focus-visible){outline:2px solid var(--color-accent);outline-offset:2px}.add-member-dialog__member--selected{background:var(--color-bg-tertiary)}.add-member-dialog__empty{padding:var(--space-md);text-align:center;color:var(--color-text-secondary)}.add-member-dialog__role-picker{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-md)}.add-member-dialog__role-picker legend{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:500}.add-member-dialog__role-option{align-items:center;gap:var(--space-sm);padding:var(--space-xs) 0;cursor:pointer;display:flex}.add-member-dialog__actions{justify-content:flex-end;gap:var(--space-sm);display:flex}.guardian-search{gap:var(--space-xs);margin-bottom:var(--space-md);flex-direction:column;display:flex}.guardian-search__label{font-size:var(--font-size-sm);color:var(--color-text-primary);font-weight:600}.guardian-search__input-row{align-items:center;display:flex;position:relative}.guardian-search__input{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);background:var(--color-bg-primary);color:var(--color-text-primary);flex:auto}.guardian-search__clear{right:var(--space-xs);border-radius:var(--radius-sm);width:2rem;height:2rem;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute}.guardian-search__clear:hover{color:var(--color-text-primary);background:var(--color-bg-secondary)}.guardian-dialog__explainer{color:var(--color-text-secondary);margin:0 0 var(--space-md)}.family-link-dialog__note-label{margin-top:var(--space-sm);margin-bottom:var(--space-xs);color:var(--color-text-secondary);display:block}.family-link-dialog__note-input{resize:vertical;width:100%;min-height:3rem;margin-bottom:var(--space-sm)}.guardian-search__results{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-primary);max-height:14rem;margin:0;padding:0;list-style:none;overflow-y:auto}.guardian-search__option{padding:var(--space-sm) var(--space-md);cursor:pointer;color:var(--color-text-primary)}.guardian-search__option:hover,.guardian-search__option--active{background:var(--color-bg-secondary)}.guardian-search__option--selected{background:var(--color-bg-tertiary);font-weight:600}.guardian-search__empty{padding:var(--space-sm) var(--space-md);text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.guardian-search__error{font-size:var(--font-size-sm);color:var(--color-danger);margin:0}.guardian-dialog__modal-close,.confirm-dialog__actions{justify-content:flex-end;gap:var(--space-sm);margin-top:var(--space-md);display:flex}.confirm-dialog__reason{gap:var(--space-xs);margin-top:var(--space-sm);flex-direction:column;display:flex}.confirm-dialog__reason-label{font-size:var(--font-size-sm);font-weight:600}.confirm-dialog__reason-presets{gap:var(--space-xs);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.confirm-dialog__reason-preset{appearance:none;background:var(--color-surface-2);border:1px solid var(--color-border);padding:var(--space-xxs) var(--space-sm);font-size:var(--font-size-sm);cursor:pointer;border-radius:9999px;min-height:32px}.confirm-dialog__reason-preset:hover{background:var(--color-surface-3)}.confirm-dialog__reason-input{resize:vertical;width:100%;min-height:4.5rem;padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font:inherit}.confirm-dialog__reason-help{font-size:var(--font-size-xs);color:var(--color-text-muted);margin:0}.modal--sm{max-width:min(20rem, calc(100vw - 2 * var(--space-lg)))}.modal--md{max-width:min(32rem, calc(100vw - 2 * var(--space-lg)))}.modal--lg{max-width:min(48rem, calc(100vw - 2 * var(--space-lg)))}.modal__title{margin:0 0 var(--space-md)}.modal__body{gap:var(--space-md);flex-direction:column;display:flex}.item-actions{display:inline-block;position:relative}.item-actions__trigger{cursor:pointer;min-width:2.75rem;min-height:2.75rem;padding:var(--space-xs);color:var(--color-text-tertiary);border-radius:var(--radius-md);background:0 0;border:none;justify-content:center;align-items:center;line-height:1;display:inline-flex}.item-actions__trigger:hover,.item-actions__trigger:focus-visible{color:var(--color-text-primary);background-color:color-mix(in srgb, var(--color-text-primary) 8%, transparent)}.item-actions__menu{background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:var(--z-dropdown);min-width:8rem}.item-actions__menuitem{width:100%;padding:var(--space-sm) var(--space-md);cursor:pointer;text-align:start;font-size:var(--font-size-sm);color:var(--color-text-primary);background:0 0;border:none;min-height:2.75rem;display:block}.item-actions__menuitem:hover,.item-actions__menuitem:focus-visible{background-color:var(--color-bg-secondary)}.item-actions__menuitem--danger{color:var(--color-error)}.item-actions__menuitem--danger:hover,.item-actions__menuitem--danger:focus-visible{background-color:color-mix(in srgb, var(--color-error) 12%, transparent)}.message-bubble--own .message-bubble__actions .item-actions__trigger{color:color-mix(in srgb, var(--color-accent-text) 80%, transparent)}.message-bubble--own .message-bubble__actions .item-actions__trigger:hover,.message-bubble--own .message-bubble__actions .item-actions__trigger:focus-visible{color:var(--color-accent-text);background-color:color-mix(in srgb, var(--color-accent-text) 16%, transparent)}.toast-container{bottom:var(--space-lg);right:var(--space-lg);gap:var(--space-sm);z-index:var(--z-toast);flex-direction:column;max-width:24rem;display:flex;position:fixed}.toast{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-size:var(--font-size-sm);animation:toast-slide-in var(--transition-normal) ease;display:flex}.toast--error{background-color:var(--color-error);color:var(--color-error-text)}.toast--success{background-color:var(--color-success);color:var(--color-success-text)}.toast--info{background-color:var(--color-accent);color:var(--color-accent-text)}.toast__message{flex:1}.toast__dismiss{cursor:pointer;color:inherit;font-size:var(--font-size-sm);min-width:2.75rem;min-height:2.75rem;padding:var(--space-xs);opacity:.8;background:0 0;border:none;justify-content:center;align-items:center;font-weight:500;display:inline-flex}.toast__dismiss:hover{opacity:1}@keyframes toast-slide-in{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}.data-table__row--clickable{cursor:pointer;transition:background-color var(--transition-fast)}.data-table__row--clickable:hover{background-color:var(--color-bg-secondary)}.data-table__row--clickable:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.data-table__cell--truncate{text-overflow:ellipsis;white-space:nowrap;max-width:16rem;overflow:hidden}.data-table__row-link{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-accent);cursor:pointer;text-align:left;background:0 0;border:none;min-height:2.75rem;padding:0;font-weight:500}.data-table__row-link:hover{text-decoration:underline}.data-table__load-more{text-align:center;padding:var(--space-md)}.report-detail-dialog{max-width:36rem;z-index:var(--z-modal);position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.report-detail__fields{gap:var(--space-xs) var(--space-md);margin-bottom:var(--space-md);grid-template-columns:auto 1fr;display:grid}.report-detail__fields dt{font-weight:600;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.report-detail__fields dd{margin:0}.report-detail__form{margin-top:var(--space-md);border-top:1px solid var(--color-border);padding-top:var(--space-md)}.report-detail__actions{gap:var(--space-sm);justify-content:flex-end;display:flex}.report-detail__close{margin-top:var(--space-md);text-align:right}.audit-log__header{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);display:flex}.audit-log__header h1{font-size:var(--font-size-2xl);line-height:var(--line-height-tight);margin:0}.audit-log__filters{align-items:flex-end;gap:var(--space-md);margin-bottom:var(--space-lg);display:flex}.audit-log__filters .form-field{flex:1;max-width:20rem;margin-bottom:0}.audit-log__expanded-row td{background-color:var(--color-bg-secondary);padding:var(--space-md)}.audit-log__details-pre{font-size:var(--font-size-sm);white-space:pre-wrap;word-break:break-word;margin:0;font-family:monospace}.event-list__header{margin-bottom:var(--space-md);justify-content:flex-end;display:flex}.event-list__items{gap:var(--space-sm);flex-direction:column;list-style:none;display:flex}.event-card{border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast)}.event-card:hover{border-color:var(--color-accent)}.event-card__button{align-items:center;gap:var(--space-md);width:100%;padding:var(--space-md);cursor:pointer;text-align:left;font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text-primary);background:0 0;border:none;min-height:2.75rem;display:flex}.event-card__date-badge{min-width:3rem;padding:var(--space-xs) var(--space-sm);background-color:var(--color-bg-secondary);border-radius:var(--radius-md);flex-direction:column;align-items:center;display:flex}.event-card__month{font-size:var(--font-size-xs);color:var(--color-accent);text-transform:uppercase;font-weight:600}.event-card__day{font-size:var(--font-size-xl);font-weight:700;line-height:1}.event-card__info{gap:var(--space-xs);flex-direction:column;flex:1;display:flex}.event-card__title{font-size:var(--font-size-base);margin:0;font-weight:500}.event-card__time{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.event-card__location{font-size:var(--font-size-sm);color:var(--color-text-tertiary);margin:0}.event-card__rsvp-count{flex-shrink:0}.event-card__title-row{align-items:baseline;gap:var(--space-sm);flex-wrap:wrap;display:flex}.event-card__past-badge{flex-shrink:0}.event-card--past .event-card__title{color:var(--color-text-secondary)}.event-card--past .event-card__month{color:var(--color-text-tertiary)}.event-card--past .event-card__date-badge{border:1px solid var(--color-border);background-color:#0000}.event-detail{gap:var(--space-md);flex-direction:column;display:flex}.event-detail__header{justify-content:space-between;align-items:center;display:flex}.event-detail__fields{gap:var(--space-xs) var(--space-md);grid-template-columns:auto 1fr;display:grid}.event-detail__fields dt{font-weight:600;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.event-detail__fields dd{margin:0}.event-detail__description{white-space:pre-wrap}.event-detail__messages{border-top:1px solid var(--color-border);padding-top:var(--space-md);min-height:18rem;max-height:70dvh;padding-bottom:max(env(safe-area-inset-bottom,0px), calc(var(--composer-bottom-offset,0px) - var(--bottom-tab-bar-height,0px)));flex-direction:column;transition:padding-bottom .12s ease-out;display:flex}.event-detail__messages h3{margin-bottom:var(--space-md);flex-shrink:0}.event-detail__messages>.page-empty{flex:1 1 0;min-height:0}.event-detail__messages .message-thread{min-height:0;max-height:none;padding-bottom:calc(var(--space-md) + var(--composer-height,3.5rem));flex:1 1 0;transition:padding-bottom .12s ease-out}.event-detail__messages .compose-bar{left:0;right:0;bottom:calc(var(--bottom-tab-bar-bottom-offset,0px) + var(--bottom-tab-bar-height,3.5rem));padding-left:max(var(--page-gutter), env(safe-area-inset-left,0px));padding-right:max(var(--page-gutter), env(safe-area-inset-right,0px));padding-bottom:var(--space-xs);z-index:30;background-color:var(--color-bg-primary);transition:bottom .12s ease-out;position:fixed}.rsvp-controls{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.rsvp-controls__summary{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.create-event-dialog__actions{justify-content:flex-end;gap:var(--space-sm);margin-top:var(--space-md);display:flex}.group-list__header{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);display:flex}.group-list__header h1{font-size:var(--font-size-2xl);line-height:var(--line-height-tight);margin:0}.group-list__new-button{min-height:2.75rem}.create-group-dialog__actions{justify-content:flex-end;gap:var(--space-sm);margin-top:var(--space-md);display:flex}.create-group-dialog__error{font-size:var(--font-size-sm);color:var(--color-error);margin-bottom:var(--space-sm)}.react-datepicker-popper{z-index:var(--z-toast)}.react-datepicker{font-family:var(--font-family);font-size:var(--font-size-sm);background-color:var(--color-bg-primary);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.react-datepicker__header{background-color:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);padding-top:var(--space-sm)}.react-datepicker__current-month,.react-datepicker-time__header{color:var(--color-text-primary);font-weight:600;font-size:var(--font-size-base)}.react-datepicker__day-name{color:var(--color-text-secondary);font-weight:500}.react-datepicker__day{color:var(--color-text-primary);border-radius:var(--radius-sm)}.react-datepicker__day:hover{background-color:var(--color-bg-tertiary);border-radius:var(--radius-sm)}.react-datepicker__day--selected,.react-datepicker__day--keyboard-selected{background-color:var(--color-accent);color:var(--color-accent-text);border-radius:var(--radius-sm)}.react-datepicker__day--selected:hover{background-color:var(--color-accent-hover)}.react-datepicker__day--today{font-weight:700}.react-datepicker__day--outside-month{color:var(--color-text-tertiary)}.react-datepicker__day--disabled{color:var(--color-text-tertiary);opacity:.5}.react-datepicker__navigation-icon:before{border-color:var(--color-text-secondary)}.react-datepicker__navigation:hover :before{border-color:var(--color-text-primary)}.react-datepicker__time-container{border-left:1px solid var(--color-border);background-color:var(--color-bg-primary)}.react-datepicker__header--time{background-color:var(--color-bg-secondary);border-bottom:1px solid var(--color-border)}.react-datepicker__time,.react-datepicker__time-box{background-color:var(--color-bg-primary)}.react-datepicker__time-list{background-color:var(--color-bg-primary);color:var(--color-text-primary)}.react-datepicker__time-list-item{color:var(--color-text-primary)}.react-datepicker__time-list-item.react-datepicker__time-list-item:hover{background-color:var(--color-bg-tertiary)}.react-datepicker__time-list-item--selected.react-datepicker__time-list-item--selected{background-color:var(--color-accent);color:var(--color-accent-text)}.react-datepicker__time-list-item--disabled{color:var(--color-text-tertiary);opacity:.5}.react-datepicker__triangle{display:none}.react-datepicker__input-container input{background-color:var(--color-bg-secondary);width:100%;color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-sm)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.prayer-list{gap:var(--space-md);flex-direction:column;display:flex}.prayer-list__header{margin-bottom:var(--space-sm);justify-content:flex-end;display:flex}.events-aggregate__header,.prayers-aggregate__header{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);display:flex}.events-aggregate__title,.prayers-aggregate__title{font-size:var(--font-size-2xl);line-height:var(--line-height-tight);margin:0}.group-picker__form{gap:var(--space-md);flex-direction:column;display:flex}.group-picker__empty{margin:0 0 var(--space-md);color:var(--color-text-muted)}.group-picker__actions{justify-content:flex-end;gap:var(--space-sm);display:flex}.prayer-list__items{gap:var(--space-md);flex-direction:column;display:flex}.prayer-day-card{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md)}.prayer-day-card__header{font-size:var(--font-size-lg);color:var(--color-text);margin:0 0 var(--space-md);padding-bottom:var(--space-sm);border-bottom:2px solid var(--color-primary-subtle);font-weight:600}.prayer-day-card__intentions{flex-direction:column;display:flex}.prayer-card{padding:var(--space-md) 0;border-bottom:1px solid var(--color-border)}.prayer-card--highlight{border-radius:var(--radius-sm);animation:2.5s ease-out prayer-card-highlight}@keyframes prayer-card-highlight{0%{background-color:#0000;box-shadow:0 0 #0000}10%{background-color:color-mix(in srgb, var(--color-accent) 12%, transparent);box-shadow:0 0 0 3px var(--color-accent)}60%{background-color:color-mix(in srgb, var(--color-accent) 12%, transparent);box-shadow:0 0 0 3px var(--color-accent)}to{background-color:#0000;box-shadow:0 0 #0000}}@media (prefers-reduced-motion:reduce){.prayer-card--highlight{animation-duration:1ms}}.prayer-card:last-child{border-bottom:none;padding-bottom:0}.prayer-card:first-child{padding-top:0}.prayer-card__header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);display:flex}.prayer-card__author{color:var(--color-text);font-weight:600}.prayer-card__private-badge{font-size:var(--font-size-xs);color:var(--color-text-muted);background-color:var(--color-surface-raised);border-radius:var(--radius-sm);padding:.125rem .375rem;font-weight:500}.prayer-card__content{margin:0 0 var(--space-md);white-space:pre-wrap;line-height:1.5}.prayer-card__actions{gap:var(--space-sm);align-items:center;display:flex}.prayer-card__react-btn{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;font-size:var(--font-size-sm);background:0 0;transition:background-color .15s,color .15s;display:inline-flex}.prayer-card__react-btn:hover{background:var(--color-bg-tertiary)}.prayer-card__react-btn--active{background:var(--color-primary-subtle);color:var(--color-primary);border-color:var(--color-primary)}.prayer-dialog__form{gap:var(--space-md);flex-direction:column;display:flex}.prayer-dialog__field{gap:var(--space-xs);flex-direction:column;display:flex}.prayer-dialog__label{font-weight:500;font-size:var(--font-size-sm)}.prayer-dialog__textarea{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-sm);font-family:inherit;font-size:var(--font-size-base);resize:vertical;min-height:6rem}.prayer-dialog__select{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-sm);font-family:inherit;font-size:var(--font-size-base)}.prayer-dialog__checkbox-label{align-items:center;gap:var(--space-sm);cursor:pointer;display:flex}.prayer-dialog__actions{justify-content:flex-end;gap:var(--space-sm);display:flex}.pwa-update-banner{padding:var(--space-sm) var(--space-md);padding-top:calc(var(--space-sm) + env(safe-area-inset-top,0px));background:var(--color-accent);color:var(--color-accent-text);justify-content:space-between;align-items:center;gap:var(--space-sm);z-index:var(--z-toast,1000);pointer-events:none;display:flex;position:fixed;top:0;left:0;right:0}.pwa-update-banner__message{pointer-events:auto;margin:0}.pwa-update-banner__actions{gap:var(--space-sm);pointer-events:auto;display:flex}.offline-banner{background:var(--color-warning);color:var(--color-warning-text);text-align:center;padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-sm)}.landing{max-width:40rem;padding:var(--space-xl) var(--space-lg);gap:var(--space-xl);flex-direction:column;min-height:100vh;margin:0 auto;display:flex}.landing__header{text-align:center;align-items:center;gap:var(--space-sm);flex-direction:column;display:flex}.landing__title{font-size:var(--font-size-3xl);margin:0}.landing__tagline{color:var(--color-text-secondary);font-size:var(--font-size-lg);margin:0}.landing__body{gap:var(--space-md);flex-direction:column;display:flex}.landing__body ul{padding-left:var(--space-lg);gap:var(--space-xs);flex-direction:column;display:flex}.landing__access-note{padding:var(--space-md);background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.landing__footer{align-items:center;gap:var(--space-md);padding-top:var(--space-lg);border-top:1px solid var(--color-border);flex-direction:column;display:flex}.landing__cta{padding:var(--space-sm) var(--space-xl);background-color:var(--color-accent);color:var(--color-accent-text);border-radius:var(--radius-md);font-size:var(--font-size-lg);transition:background-color var(--transition-fast);font-weight:600;text-decoration:none;display:inline-block}.landing__cta:hover{background-color:var(--color-accent-hover)}.landing__links{gap:var(--space-md);font-size:var(--font-size-sm);display:flex}.privacy{max-width:44rem;padding:var(--space-xl) var(--space-lg);gap:var(--space-xl);flex-direction:column;margin:0 auto;display:flex}.privacy__header{align-items:flex-start;gap:var(--space-sm);flex-direction:column;display:flex}.privacy__brand{align-items:center;gap:var(--space-sm);color:inherit;text-decoration:none;display:flex}.privacy__brand-name{font-size:var(--font-size-lg);font-weight:600}.privacy__effective{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0}.privacy__body{gap:var(--space-lg);flex-direction:column;display:flex}.privacy__body section{gap:var(--space-sm);flex-direction:column;display:flex}.privacy__body h2{font-size:var(--font-size-xl);margin:0}.privacy__body ul{padding-left:var(--space-lg);gap:var(--space-xs);flex-direction:column;display:flex}.privacy__footer{padding-top:var(--space-lg);border-top:1px solid var(--color-border)}.install-banner{gap:var(--space-sm);padding:var(--space-md);margin:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-secondary);color:var(--color-text-primary);flex-direction:column;display:flex}.install-banner__message{font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:0}.install-banner__actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.install-banner__primary,.install-banner__dismiss{min-width:44px;min-height:44px}.install-ios-dialog__description{margin:0 0 var(--space-md);color:var(--color-text-secondary)}.install-ios-dialog__steps{margin:0 0 var(--space-lg);gap:var(--space-md);flex-direction:column;padding:0;list-style:none;display:flex}.install-ios-dialog__step{align-items:center;gap:var(--space-md);font-size:var(--font-size-base);line-height:var(--line-height-normal);display:flex}.install-ios-dialog__glyph{border:1px solid var(--color-border);border-radius:var(--radius-md);width:2.5rem;height:2.5rem;color:var(--color-accent);background-color:var(--color-bg-secondary);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.install-ios-dialog__glyph--text{font-size:var(--font-size-sm);font-weight:600}.install-ios-dialog__actions{justify-content:flex-end;gap:var(--space-sm);display:flex}.install-manual-steps{margin:var(--space-sm) 0 0;padding-left:var(--space-lg);gap:var(--space-xs);font-size:var(--font-size-base);line-height:var(--line-height-normal);flex-direction:column;display:flex}
