:root{--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--amber:#fcb442;--gold:#e6ac3d;--peach:#f9b189;--coral:#f87966;--lavender:#a39cd4;--cream:#f5f1ea;--page-bg:#f7f3ec;--page-fg:#1c0d06;--muted:#675b54;--surface:#f8f4efcc;--surface-strong:#fefbf8;--border:#d1c1b466;--shadow:#775d4f14;--accent:var(--coral);--accent-soft:#ffdfd9;--accent-glow:#f8796624;--logo-color:var(--coral);--ornament-a:#f9b18959;--ornament-b:#a39cd440;--ornament-c:#f9b64f4d}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@supports (color:color(display-p3 0 0 0)){:root{--amber:color(display-p3 .946942 .719426 .347346);--gold:color(display-p3 .866978 .684443 .324483);--peach:color(display-p3 .935093 .706852 .562479);--coral:color(display-p3 .910524 .501259 .42506);--lavender:color(display-p3 .636007 .614348 .814511);--cream:color(display-p3 .957646 .947034 .921885);--page-bg:color(display-p3 .967187 .952073 .928953);--page-fg:color(display-p3 .102161 .05516 .0265395);--muted:color(display-p3 .397192 .357052 .331845);--surface:color(display-p3 .971121 .95902 .940503/.8);--surface-strong:color(display-p3 .993454 .985857 .974228);--border:color(display-p3 .808165 .757997 .713039/.4);--shadow:color(display-p3 .449028 .368272 .317431/.08);--accent-soft:color(display-p3 1.00705 .870165 .839224);--accent-glow:color(display-p3 .910524 .501259 .42506/.14);--ornament-a:color(display-p3 .935093 .706852 .562479/.35);--ornament-b:color(display-p3 .636007 .614348 .814511/.25);--ornament-c:color(display-p3 .935618 .724049 .38387/.3)}}@supports (color:lab(0% 0 0)){:root{--amber:lab(79.0006% 19.667 65.9588);--gold:lab(74.5248% 14.3487 62.5064);--peach:lab(78.6026% 23.6549 31.4978);--coral:lab(66.0604% 48.7909 34.3904);--lavender:lab(66.6342% 11.4713 -27.5318);--cream:lab(95.4001% .287116 3.81355);--page-bg:lab(95.957% .868917 3.70325);--page-fg:lab(5.14244% 5.89646 5.4969);--muted:lab(39.5916% 4.45317 5.98648);--surface:lab(96.5339% .690222 2.95945/.8);--surface-strong:lab(98.8489% .426769 1.8467);--border:lab(79.0681% 4.33353 8.40474/.4);--shadow:lab(41.8086% 9.18187 12.2341/.08);--accent-soft:lab(91.4574% 14.7558 9.83691);--accent-glow:lab(66.0604% 48.7909 34.3904/.14);--ornament-a:lab(78.6026% 23.6549 31.4978/.35);--ornament-b:lab(66.6342% 11.4713 -27.5318/.25);--ornament-c:lab(79.0314% 17.97 60.1869/.3)}}:root[data-theme=dark]{--page-bg:#03060d;--page-fg:#e0e5eb;--muted:#747b83;--surface:#0a1018cc;--surface-strong:#10171f;--border:#22293399;--shadow:#00000180;--accent:var(--coral);--accent-soft:#39150f;--accent-glow:#f8796633;--logo-color:var(--coral);--ornament-a:#34486833;--ornament-b:#47426626;--ornament-c:#6f4e1a26}@supports (color:color(display-p3 0 0 0)){:root[data-theme=dark]{--page-bg:color(display-p3 .0131684 .0221146 .0484345);--page-fg:color(display-p3 .881108 .898071 .919618);--muted:color(display-p3 .459505 .482165 .510971);--surface:color(display-p3 .0444007 .0603966 .0919766/.8);--surface-strong:color(display-p3 .0674949 .0875367 .118882);--border:color(display-p3 .139917 .161792 .195769/.6);--shadow:color(display-p3 .000835342 .00157453 .00402983/.5);--accent-soft:color(display-p3 .207347 .0890707 .0677147);--accent-glow:color(display-p3 .910524 .501259 .42506/.2);--ornament-a:color(display-p3 .221345 .280121 .39814/.2);--ornament-b:color(display-p3 .275483 .259381 .389735/.15);--ornament-c:color(display-p3 .415996 .311721 .142496/.15)}}@supports (color:lab(0% 0 0)){:root[data-theme=dark]{--page-bg:lab(1.52065% -.00759214 -3.13168);--page-fg:lab(90.7116% -1.09041 -3.56942);--muted:lab(51.2639% -1.57028 -5.31992);--surface:lab(4.36941% -.237331 -5.91022/.8);--surface-strong:lab(7.16059% -.970602 -7.04916);--border:lab(16.4192% -1.24091 -7.16396/.6);--shadow:lab(.109045% .00604242 -.283226/.5);--accent-soft:lab(12.4485% 18.348 12.398);--accent-glow:lab(66.0604% 48.7909 34.3904/.2);--ornament-a:lab(30.0574% -.413626 -21.4485/.2);--ornament-b:lab(29.6947% 9.12175 -20.4804/.15);--ornament-c:lab(36.1418% 10.3965 34.8301/.15)}}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{font-optical-sizing:auto;background:var(--page-bg);color:var(--page-fg);-webkit-font-smoothing:antialiased;margin:0;font-family:DM Sans,Segoe UI Variable,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}svg{width:1.25rem;height:1.25rem;display:block}.app-shell{min-height:100vh;padding:max(1.5rem,min(4vw,2rem)) max(2rem,min(6vw,3rem))}.page-frame{gap:max(1rem,min(3vw,2rem));width:min(1120px,100%);margin:0 auto;display:grid}.topbar{justify-content:space-between;align-items:center;padding:max(.6rem,min(1.5vw,1rem)) 0;display:flex}.brand{align-items:center;gap:.6rem;display:inline-flex}.brand-logo{color:var(--logo-color);place-items:center;transition:transform .4s cubic-bezier(.34,1.56,.64,1);display:inline-grid}.brand-logo svg{width:2.2rem;height:2.2rem}.brand:hover .brand-logo{transform:scale(1.15)rotate(-8deg)}.brand-mark{font-optical-sizing:auto;letter-spacing:-.03em;font-family:Fraunces,Georgia,serif;font-size:1.6rem;font-weight:900;line-height:1}.control-row{align-items:center;gap:.25rem;display:flex}.control-button{height:2.2rem;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.3rem;padding:0 .65rem;transition:color .2s,background-color .2s;display:inline-flex}.control-button:hover{color:var(--page-fg);background:var(--surface)}.control-label{letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:700}.user-menu{margin-left:10.4px;position:relative}.user-avatar{background:var(--accent);width:2.2rem;height:2.2rem;color:var(--page-bg);letter-spacing:.04em;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.72rem;font-weight:800;transition:transform .2s,box-shadow .2s;display:inline-flex}.user-avatar:hover{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent)30%,transparent);transform:scale(1.08)}.user-dropdown{border:1px solid var(--border);background:var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:100;border-radius:12px;min-width:220px;padding:.5rem 0;animation:.15s dropdown-enter;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 8px 24px #00000026}@keyframes dropdown-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.user-dropdown-info{gap:.15rem;padding:.6rem 1rem;display:grid}.user-dropdown-name{color:var(--page-fg);font-size:.9rem;font-weight:700}.user-dropdown-email{color:var(--muted);font-size:.78rem}.user-dropdown-divider{border:none;border-top:1px solid var(--border);margin:.25rem 0}.user-dropdown-item{width:100%;color:var(--page-fg);text-align:left;cursor:pointer;background:0 0;border:none;padding:.55rem 1rem;font-size:.85rem;transition:background-color .15s;display:block}.user-dropdown-item:hover{background:color-mix(in srgb,var(--page-fg)8%,transparent)}.hero{padding:max(4rem,min(10vw,8rem)) 0 max(2rem,min(5vw,4rem));position:relative;overflow:hidden}.badge{background:var(--accent-soft);color:var(--accent);letter-spacing:.04em;border-radius:6px;padding:.35rem .9rem;font-size:.78rem;font-weight:700;display:inline-block}.hero-title{font-optical-sizing:auto;letter-spacing:-.045em;max-width:100%;margin:1.8rem 0 0;font-family:Fraunces,Georgia,serif;font-size:max(3.2rem,min(8vw,6.5rem));font-weight:900;line-height:.92}.hero-accent{color:var(--accent);font-style:italic}.hero-lead{max-width:72ch;color:var(--muted);margin:1.8rem 0 0;font-size:max(1rem,min(1.5vw,1.15rem));line-height:1.75}.cta-row{flex-wrap:wrap;gap:.75rem;margin-top:2.5rem;display:flex}.button{letter-spacing:.01em;cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:.45rem;min-height:3rem;padding:.8rem 1.5rem;font-size:.9rem;font-weight:700;transition:transform .2s,box-shadow .2s,background-color .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--accent);color:var(--cream);box-shadow:0 4px 20px var(--accent-glow),0 1px 4px var(--accent-glow)}.button-primary:hover{box-shadow:0 8px 32px var(--accent-glow),0 2px 8px var(--accent-glow)}.button-ghost{border-color:var(--border);color:var(--page-fg);background:0 0}.button-ghost:hover{background:var(--surface)}.cta-arrow{font-size:.85em;transition:transform .2s;display:inline-block}.button-ghost:hover .cta-arrow{transform:translateY(2px)}.hero-ornaments{pointer-events:none;z-index:-1;position:absolute;top:0;bottom:0;left:0;right:0}.ornament{filter:blur(70px);border-radius:50%;position:absolute}.ornament-1{aspect-ratio:1;background:var(--ornament-a);opacity:.6;width:max(200px,min(35vw,450px));animation:20s ease-in-out infinite drift;top:-15%;right:-8%}.ornament-2{aspect-ratio:1;background:var(--ornament-b);opacity:.45;width:max(140px,min(22vw,300px));animation:26s ease-in-out infinite reverse drift;top:45%;right:8%}.ornament-3{aspect-ratio:1;background:var(--ornament-c);opacity:.5;width:max(100px,min(16vw,220px));animation:16s ease-in-out infinite drift;bottom:0;right:28%}@keyframes drift{0%,to{transform:translate(0)scale(1)}25%{transform:translate(15px,-20px)scale(1.04)}50%{transform:translate(-5px,8px)scale(.97)}75%{transform:translate(10px,-5px)scale(1.02)}}.steps-section{gap:max(2.5rem,min(5vw,4rem));padding-top:max(1rem,min(3vw,2rem));display:grid}.steps-header{max-width:100%}.steps-heading{letter-spacing:-.04em;margin:0;font-family:Fraunces,Georgia,serif;font-size:max(2.2rem,min(4.5vw,3.4rem));font-weight:900;line-height:.95}.steps-subheading{color:var(--muted);margin:.8rem 0 0;font-size:1rem;line-height:1.65}.steps-track{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.step-item{border:1px solid var(--border);background:var(--surface);border-radius:16px;grid-template-columns:auto 1fr;align-items:start;gap:1.5rem;padding:max(1.4rem,min(3vw,2.2rem));transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s;display:grid}.step-item:hover{box-shadow:0 20px 50px var(--shadow);transform:translateY(-4px)}.step-number{color:var(--accent);opacity:.3;font-family:Fraunces,Georgia,serif;font-size:max(2.8rem,min(5.5vw,4.2rem));font-weight:200;line-height:1}.step-content{align-content:start;gap:.35rem;display:grid}.step-title{letter-spacing:-.015em;align-items:center;gap:.45rem;margin:0;font-family:Fraunces,Georgia,serif;font-size:1.25rem;font-weight:700;display:inline-flex}.step-icon{flex-shrink:0;font-size:1.3rem;line-height:1}.step-body{color:var(--muted);max-width:46ch;margin:0;line-height:1.65}@media (min-width:640px){.step-item:nth-child(2){margin-left:max(1.5rem,min(5vw,4rem))}.step-item:nth-child(3){margin-left:max(3rem,min(10vw,8rem))}}.trust-section{gap:max(2rem,min(4vw,3rem));padding:max(3rem,min(6vw,5rem)) 0 max(1rem,min(2vw,2rem));display:grid}.trust-text{max-width:100%}.trust-heading{letter-spacing:-.04em;margin:0;font-family:Fraunces,Georgia,serif;font-size:max(2rem,min(4vw,3rem));font-weight:900;line-height:.95}.trust-body{color:var(--muted);margin:.75rem 0 0;font-size:1rem;line-height:1.65}.trust-stats{grid-template-columns:repeat(3,1fr);gap:.75rem;margin:0;padding:0;display:grid}.stat-item{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:max(1.2rem,min(2.5vw,1.8rem))}.stat-value{letter-spacing:-.04em;color:var(--accent);font-family:Fraunces,Georgia,serif;font-size:max(2.2rem,min(4.5vw,3.2rem));font-weight:900;line-height:1}.stat-label{color:var(--muted);margin:.5rem 0 0;font-size:.85rem;line-height:1.5}.site-footer{text-align:center;border-top:1px solid var(--border);justify-items:center;gap:1rem;padding:max(3rem,min(6vw,5rem)) 0 max(1.5rem,min(3vw,2rem));display:grid}.footer-brand{align-items:center;gap:.5rem;display:inline-flex}.footer-icon{width:1.6rem;height:1.6rem;color:var(--accent);place-items:center;display:inline-grid}.footer-tagline{max-width:100%;color:var(--muted);margin:0;font-size:.9rem;line-height:1.6}.footer-links{gap:1.5rem;display:flex}.footer-link{color:var(--muted);letter-spacing:.03em;text-transform:uppercase;font-size:.8rem;font-weight:600;transition:color .2s}.footer-link:hover{color:var(--accent)}.footer-made-with{color:var(--muted);opacity:.7;align-items:center;gap:.3rem;margin:0;font-size:.75rem;display:inline-flex}.footer-made-with svg{width:.85rem;height:.85rem;color:var(--coral)}.footer-author{color:var(--accent);font-weight:600;transition:opacity .2s}.footer-author:hover{opacity:.75}@media (max-width:900px){.trust-stats{grid-template-columns:1fr}}@media (max-width:640px){.brand-logo svg{width:1.8rem;height:1.8rem}.brand-mark{font-size:1.3rem}.hero{padding:max(2rem,min(5vw,3rem)) 0 max(1rem,min(3vw,2rem))}.hero-title{max-width:100%}.step-item{grid-template-columns:1fr;gap:.4rem}.step-number{font-size:1.6rem}.step-item:nth-child(2),.step-item:nth-child(3){margin-left:0}}@media (prefers-reduced-motion:no-preference){.hero,.steps-section,.trust-section,.site-footer{animation:.7s cubic-bezier(.25,.46,.45,.94) both reveal}.steps-section{animation-delay:.12s}.trust-section{animation-delay:.24s}.site-footer{animation-delay:.36s}}@keyframes reveal{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.auth-page{border:1px solid var(--border);background:var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:24px;width:100%;max-width:540px;margin:2rem auto;padding:max(1.5rem,min(3vw,2.5rem))}.auth-page--centered{text-align:center;justify-items:center;gap:.75rem;display:grid}.auth-title{letter-spacing:-.03em;margin:0 0 1.25rem;font-family:Fraunces,Georgia,serif;font-size:max(1.6rem,min(3.5vw,2rem));font-weight:800;line-height:1.1}.auth-body{color:var(--muted);max-width:36ch;margin:0;font-size:1rem;line-height:1.6}.auth-form{gap:1rem;display:grid}.auth-field{gap:.35rem;display:grid}.auth-label{color:var(--page-fg);font-size:.85rem;font-weight:600}.auth-input{border:1px solid var(--border);background:var(--surface-strong);width:100%;color:var(--page-fg);border-radius:12px;padding:.7rem .9rem;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.auth-input::placeholder{color:var(--muted);opacity:.6}.auth-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.auth-password-wrapper{position:relative}.auth-password-wrapper .auth-input{padding-right:2.8rem}.auth-eye-toggle{width:2rem;height:2rem;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:color .2s;display:inline-flex;position:absolute;top:50%;right:.6rem;transform:translateY(-50%)}.auth-eye-toggle:hover{color:var(--page-fg)}.auth-eye-toggle svg{width:1.1rem;height:1.1rem}.auth-field-error{color:var(--coral);font-size:.8rem;line-height:1.3}.checkbox-field{cursor:pointer;color:var(--page-fg);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.checkbox-field input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--accent);cursor:pointer}.auth-banner{border-radius:12px;margin-bottom:1rem;padding:.65rem 1rem;font-size:.88rem;font-weight:500;line-height:1.5}.auth-banner--error{color:var(--coral);background:#65201e33;background:color(display-p3 .36387 .143128 .129405/.2);background:lab(23.6033% 31.5073 18.7032/.2);border:1px solid #ad524d66;border:1px solid color(display-p3 .631878 .340959 .314296/.4);border:1px solid lab(46.6267% 37.5876 21.4741/.4)}.auth-banner--success{color:var(--mint);background:#1c543426;background:color(display-p3 .173236 .325166 .21504/.15);background:lab(31.4406% -25.484 13.1366/.15);border:1px solid #497f5d59;border:1px solid color(display-p3 .336123 .494622 .374924/.35);border:1px solid lab(48.8534% -25.2241 12.9698/.35)}.auth-forgot-link{text-align:right;margin:-.25rem 0 .25rem;font-size:.84rem}.auth-submit{width:100%;margin-top:.5rem}.form-actions{gap:.5rem;margin-top:.5rem;display:flex}.auth-submit:disabled{opacity:.65;cursor:not-allowed;transform:none}.auth-footer-text{text-align:center;color:var(--muted);margin:1.25rem 0 0;font-size:.88rem}.auth-link{color:var(--accent);font-weight:600;transition:opacity .2s}.auth-link:hover{opacity:.8}.auth-icon-large{background:var(--accent-soft);width:3.5rem;height:3.5rem;color:var(--accent);border-radius:50%;place-items:center;margin-bottom:.5rem;display:inline-grid}.auth-icon-large svg{width:1.8rem;height:1.8rem}.auth-icon-large--success{color:var(--mint);background:#1c543426;background:color(display-p3 .173236 .325166 .21504/.15);background:lab(31.4406% -25.484 13.1366/.15)}.auth-back-link{margin-top:.75rem}@media (prefers-reduced-motion:no-preference){.auth-page{animation:.5s both fade-up}}.groups-page{gap:max(1.25rem,min(3vw,2rem));display:grid}.groups-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.groups-title{letter-spacing:-.03em;margin:0;font-family:Fraunces,Georgia,serif;font-size:max(1.8rem,min(4vw,2.5rem));font-weight:900;line-height:1.1}.groups-loading{color:var(--muted);text-align:center;padding:3rem 0}.groups-empty{text-align:center;border:1px dashed var(--border);background:var(--surface);border-radius:20px;padding:max(3rem,min(6vw,5rem)) 1rem}.groups-empty-title{letter-spacing:-.02em;margin:0;font-family:Fraunces,Georgia,serif;font-size:1.5rem;font-weight:800}.groups-empty-body{color:var(--muted);margin:.5rem 0 0;line-height:1.6}.groups-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;display:grid}.group-card{border:1px solid var(--border);background:var(--surface);color:inherit;border-radius:16px;gap:.5rem;padding:max(1.2rem,min(2.5vw,1.8rem));text-decoration:none;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s,border-color .2s;display:grid}.group-card:hover{box-shadow:0 16px 40px var(--shadow);border-color:var(--accent);transform:translateY(-4px)}.group-card-name{letter-spacing:-.015em;margin:0;font-family:Fraunces,Georgia,serif;font-size:1.2rem;font-weight:700}.group-card-event{color:var(--muted);margin:0;font-size:.9rem}.group-card-meta{color:var(--muted);align-items:center;gap:1rem;margin-top:.25rem;font-size:.8rem;display:flex}.group-card-date{opacity:.8}.group-card-members{color:var(--accent);font-weight:600}.group-back-link{color:var(--muted);align-items:center;gap:.3rem;font-size:.85rem;font-weight:600;transition:color .2s;display:inline-flex}.group-back-link:hover{color:var(--accent)}.group-detail-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.group-detail-event{color:var(--muted);margin:.25rem 0 0;font-size:1rem}.group-detail-actions{flex-wrap:wrap;gap:.5rem;display:flex}.group-detail-meta{border:1px solid var(--border);background:var(--surface);border-radius:16px;gap:.75rem;padding:max(1rem,min(2vw,1.5rem));display:grid}.group-meta-item{gap:.15rem;display:grid}.group-meta-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.78rem;font-weight:700}.group-members-section{gap:1rem;display:grid}.group-section-title{letter-spacing:-.02em;margin:0;font-family:Fraunces,Georgia,serif;font-size:1.3rem;font-weight:800}.members-empty{color:var(--muted);margin:0;padding:1rem 0;font-size:.9rem}.member-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.member-row{border:1px solid var(--border);background:var(--surface);border-radius:12px;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.member-row--editing{padding:1rem}.member-info{gap:.1rem;min-width:0;display:grid}.member-name{align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;display:flex}.member-admin-badge{text-transform:uppercase;letter-spacing:.04em;color:#00490c;color:color(display-p3 .0930734 .282276 .0731072);color:lab(25.9874% -33.9172 30.3241);background:#d1eed1;background:color(display-p3 .840571 .929889 .827099);background:lab(91.3707% -13.9721 10.9239);border:1px solid #9ecc9e80;border:1px solid color(display-p3 .655838 .794442 .63574/.5);border:1px solid lab(77.821% -22.3637 17.7101/.5);border-radius:4px;padding:.15rem .5rem;font-size:.7rem;font-weight:700}:root[data-theme=dark] .member-admin-badge{color:#85cc87;color:color(display-p3 .58319 .791837 .554549);color:lab(75.9772% -33.5817 27.0639);background:#0b290e;background:color(display-p3 .0767586 .157599 .0668011);border-color:#29532b80;border-color:color(display-p3 .201496 .320785 .185993/.5);background:lab(13.7226% -16.8454 13.6618);border-color:lab(31.3792% -22.4212 18.3946/.5)}.member-email{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.member-actions{flex-shrink:0;gap:.35rem;display:flex}.member-edit-form{grid-template-columns:1fr 1fr;gap:.5rem;width:100%;display:grid}.member-edit-form .member-actions{grid-column:1/-1}.member-edit-input{min-width:0}.member-draw-status{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.button-sm{border-radius:8px;min-height:2rem;padding:.35rem .75rem;font-size:.8rem}.button-danger{color:var(--coral)}.button-danger:hover{background:#65201e26;background:color(display-p3 .36387 .143128 .129405/.15);background:lab(23.6033% 31.5073 18.7032/.15)}.add-member-form{gap:.5rem;display:grid}.add-member-fields{grid-template-columns:1fr 1fr auto;align-items:start;gap:.5rem;display:grid}@media (max-width:640px){.add-member-fields{grid-template-columns:1fr}}.group-textarea{resize:vertical;min-height:4rem}.modal-backdrop{z-index:9999;background:#00000040;background:color(display-p3 .001615 .001615 .001615/.25);background:lab(.112911% 0 0/.25);place-items:center;padding:1rem;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.modal-card{border:1px solid var(--border);background:var(--surface-strong);border-radius:24px;gap:1rem;width:min(440px,100%);padding:max(1.5rem,min(3vw,2.5rem));display:grid}.modal-title{letter-spacing:-.02em;margin:0;font-family:Fraunces,Georgia,serif;font-size:1.4rem;font-weight:800}.modal-close{justify-self:center}.confirm-modal-body{color:var(--muted);margin:0;line-height:1.5}.confirm-modal-actions{gap:.5rem;margin-top:.5rem;display:flex}.button-primary.button-danger{background:var(--coral);color:var(--cream)}.button-primary.button-danger:hover{background:#e06351;background:color(display-p3 .816809 .415671 .344048);background:lab(57.9256% 48.9743 35.0349)}@media (prefers-reduced-motion:no-preference){.groups-page{animation:.5s both fade-up}}@keyframes fade-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.draw-confirm-body{color:var(--page-fg);margin:0;line-height:1.6}.draw-confirm-warning{color:var(--amber);background:#fcb4421f;background:color(display-p3 .946942 .719426 .347346/.12);background:lab(79.0006% 19.667 65.9588/.12);border-radius:10px;margin:0;padding:.6rem .9rem;font-size:.88rem;font-weight:500;line-height:1.5}.draw-confirm-actions{gap:.5rem;margin-top:.25rem;display:flex}.draw-active-banner{background:#1c54341f;background:color(display-p3 .173236 .325166 .21504/.12);background:lab(31.4406% -25.484 13.1366/.12);border:1px solid #497f5d4d;border:1px solid color(display-p3 .336123 .494622 .374924/.3);border:1px solid lab(48.8534% -25.2241 12.9698/.3);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem 1.2rem;display:flex}.draw-active-text{color:#6fb789;color:color(display-p3 .500578 .711746 .5516);color:lab(68.8387% -31.4937 16.1892);margin:0;font-size:.92rem;font-weight:600}.group-members-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.draw-min-warning{color:var(--muted);margin:0;font-size:.85rem;font-style:italic}.draw-dashboard{border:1px solid var(--border);background:var(--surface);border-radius:16px;gap:.75rem;padding:max(1rem,min(2vw,1.5rem));display:grid}.draw-dashboard-title{letter-spacing:-.015em;margin:0;font-family:Fraunces,Georgia,serif;font-size:1.15rem;font-weight:700}.draw-dashboard-list{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.draw-dashboard-row{border:1px solid var(--border);background:var(--surface-strong);border-radius:10px;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem .85rem;display:flex}.draw-dashboard-member{gap:.05rem;min-width:0;display:grid}.draw-dashboard-name{font-size:.92rem;font-weight:600}.draw-dashboard-email{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.draw-dashboard-status{flex-shrink:0}.draw-status-badge{letter-spacing:.03em;border-radius:6px;align-items:center;gap:.3rem;padding:.2rem .6rem;font-size:.75rem;font-weight:700;display:inline-flex}.draw-status-badge--seen{color:#6fb789;color:color(display-p3 .500578 .711746 .5516);color:lab(68.8387% -31.4937 16.1892);background:#1c543426;background:color(display-p3 .173236 .325166 .21504/.15);background:lab(31.4406% -25.484 13.1366/.15)}.draw-status-badge--pending{color:var(--amber);background:#fcb4421f;background:color(display-p3 .946942 .719426 .347346/.12);background:lab(79.0006% 19.667 65.9588/.12)}.draw-dashboard-action{flex-shrink:0;align-items:center;gap:.4rem;display:flex}.draw-resend-feedback{color:var(--muted);white-space:nowrap;font-size:.75rem}.draw-result-page{place-items:center;min-height:70vh;padding:max(2rem,min(4vw,4rem)) 1rem;display:grid;position:relative;overflow:hidden}.draw-result-loading{color:var(--muted);text-align:center;font-size:1rem}.draw-result-card{z-index:1;border:1px solid var(--border);background:var(--surface);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);text-align:center;border-radius:28px;justify-items:center;gap:.75rem;width:min(520px,100%);padding:max(2rem,min(4vw,3.5rem));display:grid;position:relative}.draw-result-card--error{gap:.5rem}.draw-result-card:before{content:"";border-radius:inherit;background:linear-gradient(135deg,var(--accent-glow)0%,transparent 40%,transparent 60%,var(--accent-glow)100%);z-index:-1;opacity:.6;position:absolute;top:-1px;bottom:-1px;left:-1px;right:-1px}.draw-result-greeting{color:var(--muted);margin:0;font-size:1.1rem}.draw-result-label{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:.5rem 0 0;font-size:.85rem;font-weight:700}.draw-result-receiver{letter-spacing:-.04em;color:var(--accent);text-shadow:0 0 40px var(--accent-glow);margin:0;font-family:Fraunces,Georgia,serif;font-size:max(2.6rem,min(7vw,4.5rem));font-style:italic;font-weight:900;line-height:1}.draw-result-divider{background:var(--border);border-radius:1px;width:3rem;height:2px;margin:.5rem 0}.draw-result-details{text-align:left;gap:.5rem;width:100%;display:grid}.draw-result-detail{gap:.1rem;display:grid}.draw-result-detail-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.72rem;font-weight:700}.draw-result-detail-value{font-size:.95rem}.draw-result-error-title{letter-spacing:-.03em;margin:0;font-family:Fraunces,Georgia,serif;font-size:max(1.6rem,min(3.5vw,2.2rem));font-weight:800}.draw-result-error-body{color:var(--muted);max-width:36ch;margin:0;font-size:1rem;line-height:1.6}.draw-result-ornaments{pointer-events:none;z-index:0;position:absolute;top:0;bottom:0;left:0;right:0}.draw-ornament-1{aspect-ratio:1;background:var(--ornament-a);opacity:.5;width:max(180px,min(30vw,380px));animation:18s ease-in-out infinite drift;top:5%;left:-10%}.draw-ornament-2{aspect-ratio:1;background:var(--ornament-b);opacity:.4;width:max(120px,min(20vw,260px));animation:24s ease-in-out infinite reverse drift;bottom:10%;right:-5%}.draw-ornament-3{aspect-ratio:1;background:var(--ornament-c);opacity:.35;width:max(80px,min(14vw,180px));animation:14s ease-in-out infinite drift;top:40%;right:15%}@media (prefers-reduced-motion:no-preference){.draw-result-card{animation:.8s cubic-bezier(.25,.46,.45,.94) both draw-reveal}.draw-result-receiver{animation:.6s cubic-bezier(.34,1.56,.64,1) .4s both draw-name-pop}}@keyframes draw-reveal{0%{opacity:0;transform:translateY(32px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes draw-name-pop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@media (max-width:640px){.group-detail-header{flex-direction:column}.group-detail-actions{width:100%}.group-detail-actions .button{text-align:center;flex:1}.member-row{flex-direction:column;align-items:stretch}.member-actions{justify-content:flex-end}.member-draw-status{flex-wrap:wrap;justify-content:flex-end}.member-edit-form{grid-template-columns:1fr}.draw-dashboard-row{flex-direction:column;align-items:stretch;gap:.5rem}.draw-active-banner{text-align:center;flex-direction:column}}