:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--screen-bg:#edeae3;--on-surface:#1c1c1c;--on-surface-variant:#6f6a5e;--on-card-body:#3a3a3a;--accent-surface:#fff;--cta-bg:#9c7339;--on-cta:#edeae3;--text-disabled:#777;--surface-mix-b:#6f6a5e;--surface-container-low:color-mix(in srgb, var(--screen-bg) 88%, var(--surface-mix-b) 12%);--surface-container:color-mix(in srgb, var(--screen-bg) 78%, var(--surface-mix-b) 22%);--surface-container-high:color-mix(in srgb, var(--screen-bg) 68%, var(--surface-mix-b) 32%);--surface-container-highest:color-mix(in srgb, var(--screen-bg) 58%, var(--surface-mix-b) 42%);--border-subtle:color-mix(in srgb, var(--on-surface-variant) 28%, transparent);--overlay-scrim:#00000073;--shadow-elevated:0 8px 32px #1c1c1c1f;--input-bg:#fff;--input-text:var(--on-surface);--input-placeholder:var(--on-surface-variant);--font-serif:"Lora", Georgia, "Times New Roman", serif;--fs-h1:34px;--lh-h1:calc(42 / 34);--fs-h2:26px;--lh-h2:calc(34 / 26);--fs-h3:21px;--lh-h3:calc(29 / 21);--fs-body:16px;--lh-body:calc(24 / 16);--fs-caption:13px;--lh-caption:calc(18 / 13);--fs-ui:15px;--lh-ui:calc(20 / 15);--text:var(--on-surface-variant);--text-h:var(--on-surface);--bg:var(--screen-bg);--border:var(--border-subtle);--code-bg:var(--surface-container);--accent:var(--cta-bg);--accent-bg:color-mix(in srgb, var(--cta-bg) 14%, transparent);--accent-border:color-mix(in srgb, var(--cta-bg) 45%, transparent);--social-bg:var(--surface-container-low);--shadow:var(--shadow-elevated);--sans:var(--font-serif);--heading:var(--font-serif)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--screen-bg:#1c1c1c;--on-surface:#edeae3;--on-surface-variant:#b8b3a7;--on-card-body:#edeae3;--accent-surface:#fff;--cta-bg:#d4a356;--on-cta:#1c1c1c;--text-disabled:#777;--surface-mix-b:#edeae3;--shadow-elevated:0 8px 32px #00000073;--input-bg:var(--surface-container-high);--input-text:var(--on-surface);--input-placeholder:var(--on-surface-variant)}}*,:before,:after{box-sizing:border-box}html{overflow-x:hidden}body{font-family:var(--font-serif);font-size:var(--fs-body);font-weight:400;line-height:var(--lh-body);color:var(--on-surface);background:var(--screen-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}#root{border-inline:1px solid var(--border-subtle);box-sizing:border-box;flex-direction:column;width:100%;max-width:min(1126px,100%);min-height:100dvh;margin:0 auto;display:flex}@media (width<=480px){#root{border-inline:none}}.app-root-inner,.protected-route-outlet{flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.protected-route-outlet--centered{justify-content:center;align-items:center}h1{font-family:var(--font-serif);font-size:var(--fs-h1);font-weight:700;line-height:var(--lh-h1);color:var(--on-surface);letter-spacing:0;margin:0 0 1rem}h2{font-family:var(--font-serif);font-size:var(--fs-h2);font-weight:600;line-height:var(--lh-h2);color:var(--on-surface);letter-spacing:0;margin:0 0 .5rem}h3{font-family:var(--font-serif);font-size:var(--fs-h3);font-weight:500;line-height:var(--lh-h3);color:var(--on-surface);margin:0 0 .5rem}p{color:var(--on-surface);margin:0}.text-caption{font-size:var(--fs-caption);line-height:var(--lh-caption);color:var(--on-surface-variant);font-weight:400}.text-card-body{color:var(--on-card-body)}.text-error{color:#b00020}@media (prefers-color-scheme:dark){.text-error{color:#ff8a80}}.text-disabled{color:var(--text-disabled)}.input{width:100%;max-width:min(28rem,100%);font:inherit;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--input-text);background:var(--input-bg);border:1px solid var(--border-subtle);caret-color:var(--input-text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;border-radius:8px;margin-bottom:1rem;padding:.5rem .75rem;display:block}@media (prefers-color-scheme:dark){.input{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}.input::placeholder{color:var(--input-placeholder);opacity:1}.input:focus-visible{outline:2px solid var(--cta-bg);outline-offset:2px}.input:disabled{color:var(--text-disabled);background:var(--input-bg);opacity:.85}select.input--select{cursor:pointer;appearance:auto;margin-bottom:1rem}.member-edit-form select.input--select{margin-bottom:0}.btn{font-family:var(--font-serif);font-size:var(--fs-ui);font-weight:500;line-height:var(--lh-ui);cursor:pointer;border:none;border-radius:9999px;padding:.55rem 1.25rem;transition:background .15s,color .15s,opacity .15s}.btn:disabled{cursor:not-allowed;color:var(--text-disabled);opacity:.7}.btn--primary{background:var(--cta-bg);color:var(--on-cta)}.btn--primary:hover:not(:disabled){filter:brightness(1.06)}.btn--primary:focus-visible{outline:2px solid var(--on-surface);outline-offset:2px}.btn--text{color:var(--on-surface);background:0 0;border-radius:8px;padding:.35rem .65rem}.btn--text:hover:not(:disabled){background:var(--surface-container-low)}.btn--text:focus-visible{outline:2px solid var(--cta-bg);outline-offset:2px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-page{text-align:center;box-sizing:border-box;flex-direction:column;flex:0 auto;align-items:center;width:100%;max-width:min(48rem,100%);margin-left:auto;margin-right:auto;padding:0;display:flex}.app-shell{flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.app-shell__header{padding:max(.5rem, env(safe-area-inset-top,0px)) max(1rem, env(safe-area-inset-right,0px)) max(.5rem, env(safe-area-inset-bottom,0px)) max(1rem, env(safe-area-inset-left,0px));border-bottom:1px solid var(--border-subtle);flex-shrink:0;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.app-shell__header-start{flex-shrink:0;align-items:center;gap:.35rem;display:flex}.app-shell__icon-btn{color:var(--on-surface);cursor:pointer;font:inherit;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;margin:0;padding:.4rem;display:flex}.app-shell__icon-btn:hover{background:var(--surface-container-low)}.app-shell__icon-btn:focus-visible{outline:2px solid var(--cta-bg);outline-offset:2px}.app-shell__logo-btn{cursor:pointer;font:inherit;background:0 0;border:none;border-radius:8px;align-items:center;margin:0;padding:.15rem .25rem;display:flex}.app-shell__logo-btn:hover{background:var(--surface-container-low)}.app-shell__logo-btn:focus-visible{outline:2px solid var(--cta-bg);outline-offset:2px}.app-shell__header-logo{object-fit:contain;width:auto;max-width:min(160px,38vw);height:36px;display:block}.app-shell__header-spacer{flex:1}.app-shell__logout{flex-shrink:0}.app-shell__main{padding:1.5rem max(1.25rem, env(safe-area-inset-right,0px)) max(2rem, env(safe-area-inset-bottom,0px)) max(1.25rem, env(safe-area-inset-left,0px));box-sizing:border-box;flex-direction:column;flex:1;justify-content:flex-start;align-items:center;width:100%;display:flex;overflow:hidden auto}.app-shell__main .input{margin-left:auto;margin-right:auto}.app-shell__main>.home-page{text-align:left;align-self:stretch;align-items:flex-start;width:100%;max-width:none;margin:0;padding:.35rem 0 0}.app-shell__main>.home-page h1{text-align:left;width:100%;margin:0}.dashboard-panel__title{text-align:left;width:100%;color:var(--on-surface);margin:.85rem 0 .65rem;font-size:1.35rem;font-weight:600;line-height:1.25}.home-page__members-block{width:100%;margin-top:2rem}.members-section{text-align:left;flex-direction:column;align-items:stretch;width:100%;max-width:min(40rem,100%);margin-left:auto;margin-right:auto;display:flex}.home-page__nav{flex-flow:wrap;align-items:center;gap:.75rem;width:100%;margin-top:1.25rem;display:flex}.home-page__nav-btn{justify-content:center;align-items:center;gap:.45rem;text-decoration:none;display:inline-flex}.home-page__nav-icon{flex-shrink:0}.sign-in-route-root{flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.sign-in-page{padding:max(1.5rem, env(safe-area-inset-top,0px)) max(1.25rem, env(safe-area-inset-right,0px)) max(1.5rem, env(safe-area-inset-bottom,0px)) max(1.25rem, env(safe-area-inset-left,0px));text-align:center;box-sizing:border-box;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.sign-in-page__logo{object-fit:contain;width:auto;max-width:min(280px,85vw);height:auto;max-height:120px;margin-bottom:1.5rem;display:block}.sign-in-page__message{max-width:min(22rem,100%);margin-top:1rem}@media (width<=1024px){.app-shell__main{padding:1.25rem max(1rem, env(safe-area-inset-right,0px)) 1.5rem max(1rem, env(safe-area-inset-left,0px))}h1{font-size:28px;line-height:1.28571}h2{font-size:22px;line-height:1.36364}}@media (width<=480px){.app-shell__main{padding:1rem max(.75rem, env(safe-area-inset-right,0px)) max(1.25rem, env(safe-area-inset-bottom,0px)) max(.75rem, env(safe-area-inset-left,0px))}h1{font-size:1.5rem;line-height:1.28}h2{font-size:1.25rem;line-height:1.35}.members-filters{flex-direction:column;align-items:stretch}.members-filters__field{width:100%;min-width:0;max-width:none}.home-page__nav{flex-direction:column;align-items:stretch}.home-page__nav-btn{justify-content:center;width:100%}}@media (hover:none) and (pointer:coarse){.btn{min-height:44px}.app-shell__icon-btn{min-width:44px;min-height:44px}}.members-page{width:100%;max-width:min(40rem,100%)}.members-filters{text-align:start;box-sizing:border-box;flex-flow:wrap;justify-content:center;align-self:stretch;align-items:flex-end;gap:.5rem .65rem;width:100%;max-width:100%;margin:.25rem 0 .35rem;display:flex}.members-filters__field{flex-direction:column;flex:auto;min-width:min(7.5rem,42%);max-width:100%;display:flex}.members-filters__label{font-size:var(--fs-caption);line-height:var(--lh-caption);text-transform:uppercase;letter-spacing:.04em;color:var(--on-surface-variant);margin-bottom:.25rem;font-weight:500}.members-filters .input.input--select{width:100%;min-width:0;max-width:none;margin-bottom:0}.members-filters-reset-wrap{justify-content:center;width:100%;margin:.4rem 0 0;display:flex}.members-filters__reset{margin:0}.members-record-count{text-align:center;width:100%;margin:0 0 .85rem}.members-list-wrap{width:100%;height:min(55dvh,480px);min-height:min(220px,40dvh)}.members-list__row{box-sizing:border-box;padding:5px 0}.member-card.member-card--virtual{box-sizing:border-box;height:100%;margin:0}.member-card--split{cursor:default;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:.55rem;display:flex}.member-card--split .member-card__meta{margin-bottom:.35rem}.member-card--split .member-card__payment{margin-top:.2rem}.member-card__main{text-align:start;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;margin:0;padding:0;display:block}.member-card__main:focus-visible{outline:2px solid var(--cta-bg);outline-offset:2px;border-radius:6px}.member-card__payment{align-self:flex-start}.member-card{text-align:start;border:1px solid var(--border-subtle);cursor:pointer;background:var(--surface-container-highest);width:100%;font:inherit;color:inherit;box-shadow:none;border-radius:8px;margin:.65rem 0;padding:.75rem 1rem;transition:background .15s,box-shadow .15s;display:block}.member-card:hover{box-shadow:var(--shadow-elevated)}.member-card:focus-visible{outline:2px solid var(--cta-bg);outline-offset:2px}.member-card__title{color:var(--on-surface);overflow-wrap:anywhere;margin:0 0 .35rem;font-size:1.1rem;font-weight:600;line-height:1.3}.member-card__meta{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--on-card-body);overflow-wrap:anywhere;margin:0}.modal-backdrop{background:var(--overlay-scrim);padding:max(1rem, env(safe-area-inset-top,0px)) max(1rem, env(safe-area-inset-right,0px)) max(1rem, env(safe-area-inset-bottom,0px)) max(1rem, env(safe-area-inset-left,0px));z-index:1000;box-sizing:border-box;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-panel{background:var(--surface-container-highest);color:var(--on-surface);width:100%;max-width:min(32rem,100%);max-height:min(90vh,90dvh);box-shadow:var(--shadow-elevated);border:1px solid var(--border-subtle);-webkit-overflow-scrolling:touch;border-radius:8px;padding:1.25rem;overflow:auto}.modal-panel__header{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1rem;display:flex}.modal-panel__title{margin:0;font-size:1.25rem;font-weight:600;line-height:1.35}.modal-panel__close{flex-shrink:0}.modal-panel--wide{max-width:min(40rem,100%)}.payment-modal__member-name{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--on-card-body);margin:0 0 1rem}.payment-modal__section{border-bottom:1px solid var(--border-subtle);margin-bottom:1.15rem;padding-bottom:1rem}.payment-modal__section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.payment-modal__section-title{margin:0 0 .65rem;font-size:.95rem;font-weight:600;line-height:1.3}.payment-modal__section--record{padding-top:.25rem}.payment-modal__amount-row{margin-top:.75rem}.payment-modal__amount-controls{flex-wrap:wrap;align-items:center;gap:.65rem;margin-bottom:.35rem;display:flex}.payment-modal__amount-controls .input{max-width:10rem;margin-bottom:0}.payment-history-list{margin:0;padding:0;list-style:none}.payment-history-list__item{border-bottom:1px solid var(--border-subtle);font-size:var(--fs-body);line-height:var(--lh-body);grid-template-columns:minmax(0,1fr) auto auto;align-items:baseline;gap:.5rem .85rem;padding:.55rem 0;display:grid}.payment-history-list__item:last-child{border-bottom:none}.payment-history-list__when{color:var(--on-card-body);word-break:break-word}.payment-history-list__amount{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.payment-history-list__status{font-size:var(--fs-caption);color:var(--on-surface-variant);text-align:right;white-space:nowrap}.member-edit-form .input{max-width:none;margin-bottom:0}.member-edit-form__field{margin-bottom:.85rem}.member-edit-form__label{font-size:var(--fs-caption);line-height:var(--lh-caption);text-transform:uppercase;letter-spacing:.04em;color:var(--on-surface-variant);margin-bottom:.25rem;font-weight:500;display:block}.member-edit-form__readonly{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--on-card-body);margin:0}.member-edit-form__actions{border-top:1px solid var(--border-subtle);flex-wrap:wrap;gap:.5rem;margin-top:1.15rem;padding-top:1rem;display:flex}.detail-dl{margin:0}.detail-row{margin-bottom:.65rem}.detail-dt{font-size:var(--fs-caption);line-height:var(--lh-caption);text-transform:uppercase;letter-spacing:.04em;color:var(--on-surface-variant);margin-bottom:.15rem;font-weight:500}.detail-dd{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--on-card-body);word-break:break-word;margin:0}.sign-in-form{flex-direction:column;align-items:stretch;width:100%;max-width:min(22rem,100%);margin:0 auto;display:flex}.sign-in-form__field{flex-direction:column;align-items:stretch;gap:.2rem;width:100%;margin-bottom:.5rem;display:flex}.sign-in-form .input{max-width:none}.sign-in-form .btn--primary{align-self:center;margin-top:.75rem}.sign-in-form__forgot{text-underline-offset:2px;align-self:center;margin-top:.35rem;text-decoration:underline}.sign-in-form__reset-notice{align-self:center;max-width:min(20rem,100%);margin-top:.5rem}code,.counter{color:var(--on-surface);border-radius:4px;font-family:ui-monospace,Consolas,monospace;display:inline-flex}code{background:var(--surface-container);padding:4px 8px;font-size:15px;line-height:135%}.registration-form{max-width:32rem;margin:0 auto;padding:1.25rem 1rem 1.5rem}.registration-form__title{letter-spacing:.02em;color:#1a7a7a;margin:0 0 .85rem;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:1.35rem;font-weight:700}.registration-form__intro{font-size:var(--fs-body);color:var(--on-card-body);margin:0 0 1.25rem;line-height:1.5}.registration-form__field{margin-bottom:.9rem}.registration-form__label{font-size:var(--fs-caption);line-height:var(--lh-caption);color:var(--on-surface-variant);margin-bottom:.3rem;font-weight:500;display:block}.registration-form__hint{max-width:100%;margin:0 0 .4rem}.registration-form__form .input{box-sizing:border-box;width:100%;max-width:none}.registration-form__message{font-size:var(--fs-body);margin:.75rem 0 0}.registration-form__message--ok{color:var(--on-card-body)}.registration-form__actions{justify-content:flex-end;margin-top:1.25rem;padding-top:.5rem;display:flex}.registration-page__header{max-width:32rem;margin:0 auto .5rem;padding:0 1rem}.registration-page__back{padding:.25rem 0}@media (prefers-color-scheme:dark){#social .button-icon{filter:invert()brightness(2)}.registration-form__title{color:#5ec4bc}}.counter{color:var(--accent);background:var(--accent-bg);border:2px solid #0000;border-radius:5px;margin-bottom:24px;padding:5px 10px;font-size:16px;transition:border-color .3s}.counter:hover{border-color:var(--accent-border)}.counter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero{position:relative}.hero .base,.hero .framework,.hero .vite{margin:0 auto;inset-inline:0}.hero .base{z-index:0;width:170px;position:relative}.hero .framework,.hero .vite{position:absolute}.hero .framework{z-index:1;height:28px;top:34px;transform:perspective(2000px)rotate(300deg)rotateX(44deg)rotateY(39deg)scale(1.4)}.hero .vite{z-index:0;width:auto;height:26px;top:107px;transform:perspective(2000px)rotate(300deg)rotateX(40deg)rotateY(39deg)scale(.8)}#center{flex-direction:column;flex-grow:1;place-content:center;place-items:center;gap:25px;display:flex}@media (width<=1024px){#center{gap:18px;padding:32px 20px 24px}}#next-steps{border-top:1px solid var(--border);text-align:left;display:flex}#next-steps>div{flex:1 1 0;padding:32px}@media (width<=1024px){#next-steps>div{padding:24px 20px}}#next-steps .icon{width:22px;height:22px;margin-bottom:16px}@media (width<=1024px){#next-steps{text-align:center;flex-direction:column}}#docs{border-right:1px solid var(--border)}@media (width<=1024px){#docs{border-right:none;border-bottom:1px solid var(--border)}}#next-steps ul{gap:8px;margin:32px 0 0;padding:0;list-style:none;display:flex}#next-steps ul .logo{height:18px}#next-steps ul a{color:var(--text-h);background:var(--social-bg);border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:16px;text-decoration:none;transition:box-shadow .3s;display:flex}#next-steps ul a:hover{box-shadow:var(--shadow)}#next-steps ul a .button-icon{width:18px;height:18px}@media (width<=1024px){#next-steps ul{flex-wrap:wrap;justify-content:center;margin-top:20px}#next-steps ul li{flex:calc(50% - 8px)}#next-steps ul a{box-sizing:border-box;justify-content:center;width:100%}}#spacer{border-top:1px solid var(--border);height:88px}@media (width<=1024px){#spacer{height:48px}}.ticks{width:100%;position:relative}.ticks:before,.ticks:after{content:"";border:5px solid #0000;position:absolute;top:-4.5px}.ticks:before{border-left-color:var(--border);left:0}.ticks:after{border-right-color:var(--border);right:0}
