@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-ext-400-normal-Drx2k2n9.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-400-normal-uvC0WHQr.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-400-normal-B-1hWBU7.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-400-normal-B7YtguxJ.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-ext-500-normal-CH1kM7og.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-500-normal-DYeaGGzO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-500-normal-BsRWmXhO.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-500-normal-zIXX3Q-H.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-ext-600-normal-DaBc-lu7.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-600-normal-Dk3-quAP.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-600-normal-Co1r35X9.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-600-normal-2CBVLo0M.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-ext-400-italic-BdEzgT7i.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-400-italic-CQvLaSWn.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-400-italic-Dc_OZ8oc.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-400-italic-BLh7T8o8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-ext-500-italic-CE7zdTnu.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-500-italic-CalKM9tT.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-500-italic-Y14P-dkT.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-500-italic-DhNIfkTX.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.app-check-banner{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-2-5) var(--space-4);background-color:var(--bg-calendar);border-bottom:1px solid var(--border);color:var(--text-secondary);font-size:var(--text-90)}.app-check-banner p{flex:1 1 260px;margin:0}.app-check-banner-actions{display:flex;align-items:center;gap:var(--space-2)}.app-check-banner-close{display:inline-flex;padding:var(--space-1-5);background:none;border:none;color:inherit;cursor:pointer}.network-banner{display:flex;align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-2) var(--space-4);background-color:var(--bg-calendar);border-bottom:1px solid var(--border);color:var(--text-secondary);font-size:var(--text-90)}.network-banner svg{flex-shrink:0}.network-banner p{flex:1 1 auto;margin:0}.network-banner-close{display:inline-flex;padding:var(--space-1-5);background:none;border:none;color:inherit;cursor:pointer}.avatar-zoom{display:inline-block;overflow:hidden;box-sizing:border-box}.avatar-zoom>img{display:block;width:100%;height:100%;object-fit:cover}.file-drop-zone.is-dragover{background-color:var(--bg-calendar);outline:2px dashed var(--accent-primary);outline-offset:2px}.focal-point-picker{display:flex;flex-direction:column;gap:var(--space-2-5);width:100%;max-width:520px}.focal-point-picker-info{display:flex;align-items:flex-start;gap:var(--space-2);margin:0;padding:var(--space-2-5) var(--space-3);background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-85);line-height:1.4}.focal-point-picker-info svg{flex-shrink:0;margin-top:var(--space-0-5);color:var(--accent-primary)}.focal-point-picker-body{display:flex;gap:var(--space-3);align-items:flex-start;flex-wrap:wrap}.focal-point-picker-canvas{position:relative;flex:1 1 280px;min-width:0;max-width:min(360px,calc(320px * var(--image-aspect, 1.333)));background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none}.focal-point-picker-image{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}.focal-point-picker-crop-frame{position:absolute;pointer-events:none;border:2px solid var(--accent-primary);box-shadow:0 0 0 9999px #00000059;border-radius:2px}.focal-point-picker-handle{position:absolute;width:28px;height:28px;margin-left:-14px;margin-top:-14px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-primary);color:var(--accent-primary);border:2px solid var(--accent-primary);border-radius:50%;box-shadow:var(--shadow-md);cursor:grab;touch-action:none;transition:transform .1s ease,box-shadow .15s ease}.focal-point-picker-handle:hover{transform:scale(1.06);box-shadow:var(--shadow-lg, var(--shadow-md))}.focal-point-picker-handle:active{cursor:grabbing;transform:scale(1.1)}.focal-point-picker-handle:focus-visible{outline:none;box-shadow:0 0 0 3px var(--bg-primary),0 0 0 5px var(--accent-primary)}.focal-point-picker-preview-wrapper{display:flex;flex-direction:column;gap:var(--space-1-5);flex:0 0 auto;max-width:220px;min-width:140px}.focal-point-picker-preview-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-1-5)}.focal-point-picker-preview-label{font-size:var(--text-75);font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.focal-point-picker-remove{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;background:transparent;border:1px solid var(--border);border-radius:50%;color:#d32f2f;cursor:pointer;transition:all .15s ease}.focal-point-picker-remove:hover{background:var(--bg-secondary);color:#b71c1c;border-color:#d32f2f}.focal-point-picker-remove:focus-visible{outline:none;border-color:#d32f2f;box-shadow:0 0 0 2px var(--bg-primary),0 0 0 4px #d32f2f}.focal-point-picker-preview{position:relative;width:100%;aspect-ratio:16 / 9;background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.focal-point-picker-preview-image{display:block;width:100%;height:100%;object-fit:cover}.focal-point-picker-readout{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-80);color:var(--text-secondary);flex-wrap:wrap}.focal-point-picker-readout-label{font-weight:500;color:var(--text-primary)}.focal-point-picker-readout-value{font-variant-numeric:tabular-nums;color:var(--text-secondary);background-color:var(--bg-secondary);padding:var(--space-0-5) var(--space-2);border-radius:var(--radius-sm)}.focal-point-picker-reset{display:inline-flex;align-items:center;gap:var(--space-1);margin-left:auto;padding:var(--space-1) var(--space-2-5);background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--text-80);cursor:pointer;transition:all .15s ease}.focal-point-picker-reset:hover{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--accent-primary)}.focal-point-picker-reset:focus-visible{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--bg-primary),0 0 0 4px var(--accent-primary)}@media(max-width:480px){.focal-point-picker-body{flex-direction:column}.focal-point-picker-canvas{flex:1 1 auto;max-width:100%;align-self:stretch}.focal-point-picker-preview-wrapper{max-width:100%;width:100%}}@media(prefers-reduced-motion:reduce){.focal-point-picker-handle,.focal-point-picker-reset{transition:none}}.focal-point-picker--round .focal-point-picker-preview{aspect-ratio:1 / 1;border-radius:50%;max-width:140px}.focal-point-picker--round .focal-point-picker-crop-frame{border-radius:50%}.focal-point-picker-zoom{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);font-size:var(--text-90)}.focal-point-picker-zoom input[type=range]{flex:1;min-width:0}.focal-point-picker-zoom output{min-width:3.5em;text-align:right;font-variant-numeric:tabular-nums}.photo-adjust-dialog{width:min(480px,calc(100vw - 32px));max-height:calc(100vh - 32px);padding:0;border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--bg-primary);color:var(--text-primary);overflow:hidden}.photo-adjust-dialog[open]{display:flex;flex-direction:column}.photo-adjust-dialog::backdrop{background-color:#00000073}.photo-adjust-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border)}.photo-adjust-header h3{margin:0;font-size:var(--text-115)}.photo-adjust-close{background:transparent;border:0;padding:var(--space-1-5);cursor:pointer;color:var(--text-secondary);border-radius:var(--radius-sm)}.photo-adjust-close:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.photo-adjust-body{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4) var(--space-5);overflow-y:auto}.photo-adjust-hint{margin:0;font-size:var(--text-90);color:var(--text-secondary)}.photo-adjust-zoom{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-90)}.photo-adjust-zoom input[type=range]{flex:1;min-width:0}.photo-adjust-zoom output{min-width:3.5em;text-align:right;font-variant-numeric:tabular-nums}.photo-adjust-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-top:1px solid var(--border)}.photo-adjust-dialog .focal-point-picker{max-width:none;align-items:center}.photo-adjust-dialog .focal-point-picker-info{display:none}.photo-adjust-dialog .focal-point-picker-body{flex-direction:column;align-items:center;width:100%}.photo-adjust-dialog .focal-point-picker-canvas{flex:0 0 auto;width:100%;max-width:min(320px,calc(50vh * var(--image-aspect, 1.333)))}.photo-adjust-dialog .focal-point-picker-preview-wrapper{align-items:center;max-width:none;min-width:0}.member-badge{position:absolute;right:0;bottom:0;z-index:1;box-sizing:border-box;--member-badge-size: clamp(var(--space-2-5), 38%, var(--space-6));width:var(--member-badge-size);height:var(--member-badge-size);min-width:var(--space-2-5);min-height:var(--space-2-5);flex:none;aspect-ratio:1;display:inline-flex;align-items:center;justify-content:center;padding:3%;border-radius:50%;background:var(--accent-create-event);color:var(--bg-calendar);box-shadow:0 0 0 var(--space-0-5) var(--bg-calendar);cursor:help;line-height:0}.club-member-icon{display:block;width:100%;height:100%}.club-member-icon-petal{fill:currentColor}.club-member-icon-center{fill:var(--accent-create-event-hover)}.member-badge-frame{position:relative;display:inline-flex;flex-shrink:0;vertical-align:middle}.member-badge~.online-dot.online-dot{top:0;bottom:auto}.member-badge-tip{position:fixed;z-index:1000;max-width:min(240px,calc(100vw - var(--space-8)));transform:translate(-50%,calc(-100% - var(--space-1-5)));padding:var(--space-1-5) var(--space-2-5);border-radius:var(--radius-sm);background:var(--text-primary);color:var(--bg-calendar);font-size:var(--text-81);line-height:1.35;text-align:center;box-shadow:var(--shadow-md);pointer-events:none}.member-badge-tip--below{transform:translate(-50%,var(--space-1-5))}.member-badge--static{pointer-events:none}.member-badge--static{box-shadow:0 0 0 calc(var(--space-0-5) / 2) var(--bg-calendar)}.profile-card-title{font-family:Cormorant Garamond,Georgia,serif;font-size:var(--text-125);font-weight:500;color:var(--text-primary);margin:0 0 var(--space-1)}.profile-card-hint{color:var(--text-secondary);font-size:var(--text-85);margin:0 0 var(--space-5)}.profile-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.profile-card-header-text{min-width:0}.profile-card-header .profile-card-title{margin:0}.profile-card-header .profile-card-hint{margin:var(--space-1) 0 0}.profile-form{display:flex;flex-direction:column;gap:var(--space-4)}.profile-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.profile-form .form-group{display:flex;flex-direction:column;gap:var(--space-1-5)}.profile-form label{font-size:var(--text-90);font-weight:500;color:var(--text-primary)}.profile-form input,.profile-form textarea{width:100%;padding:var(--space-2-5) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--bg-primary);color:var(--text-primary);font-size:var(--text-95);font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease}.profile-form input:focus,.profile-form textarea:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #c48e6a1f}.profile-form textarea{resize:vertical;min-height:100px}.profile-form .input-error{border-color:var(--error)}.profile-form .error-text{color:var(--error);font-size:var(--text-85)}.profile-form .field-counter{font-size:var(--text-80);color:var(--text-light);align-self:flex-end}.profile-form .field-counter.over-limit{color:var(--error)}.profile-username-hint{margin:0;font-size:var(--text-85);color:var(--text-secondary);line-height:1.4}.profile-username-status{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1-5);font-size:var(--text-85);margin-top:var(--space-0-5);min-height:1.4em}.profile-username-status--muted{color:var(--text-light)}.profile-username-status--success{color:var(--free-text)}.profile-username-status--error{color:var(--error)}.profile-username-preview{font-family:SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--text-80);padding:var(--space-0-5) var(--space-1-5);border-radius:var(--radius-sm);background-color:var(--bg-secondary)}.profile-username-message{flex:1 1 auto}.profile-form .form-actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-2);width:100%}.profile-form .form-actions .btn-primary{flex:1;min-width:0}.profile-form .success-text{color:var(--free-text);font-size:var(--text-90);margin:0}.profile-form .submit-error{color:var(--error);font-size:var(--text-90);margin:0}.profile-social-media{display:flex;flex-direction:column;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--border);margin-top:var(--space-1)}.profile-social-media-title{font-family:Cormorant Garamond,Georgia,serif;font-size:var(--text-110);font-weight:500;color:var(--text-primary);margin:0}.profile-social-media-hint{font-size:var(--text-85);color:var(--text-secondary);margin:0;line-height:1.4}.profile-social-media .form-group label{display:inline-flex;align-items:center;gap:var(--space-1-5)}.profile-social-media-checkbox{display:flex;align-items:flex-start;gap:var(--space-2-5);cursor:pointer;padding:var(--space-2-5) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--bg-primary);font-size:var(--text-90);color:var(--text-primary);transition:border-color .15s ease}.profile-social-media-checkbox:hover{border-color:var(--accent-primary)}.profile-social-media-checkbox input[type=checkbox]{margin-top:3px;width:18px;height:18px;accent-color:var(--accent-primary);cursor:pointer;flex-shrink:0}.profile-danger-card{border:1px solid rgba(191,91,78,.2)}.profile-danger-card .profile-card-title{color:var(--error)}.danger-accordion{margin:0}.danger-accordion-summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none;padding:0;margin:0}.danger-accordion-summary::-webkit-details-marker{display:none}.danger-accordion-summary::marker{content:""}.danger-accordion-summary .profile-card-title{margin:0;color:var(--error)}.danger-accordion-icon{color:var(--error);transition:transform .2s ease;flex-shrink:0}.danger-accordion[open]>.danger-accordion-summary .danger-accordion-icon{transform:rotate(180deg)}.danger-accordion-body{padding-top:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.danger-accordion-body .profile-card-hint{margin:0}.profile-danger-zone{background-color:#bf5b4e0a;border:1px solid rgba(191,91,78,.2);border-radius:var(--radius-md);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3)}.profile-danger-zone .form-actions{display:flex;justify-content:flex-end;width:100%}.profile-danger-zone .form-actions .btn-subtle-danger{flex:0 0 auto;width:auto;padding:var(--space-2)}.profile-danger-zone .danger-title{font-weight:600;color:var(--error);margin:0}.profile-danger-zone .danger-text{color:var(--text-secondary);font-size:var(--text-90);margin:0}.profile-photo-upload{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-5)}.profile-photo-preview{width:96px;height:96px;border-radius:50%;background-color:var(--bg-secondary);border:1px solid var(--border);overflow:hidden;display:flex;align-items:center;justify-content:center;color:var(--text-light);flex-shrink:0}.profile-photo-preview img{width:100%;height:100%;object-fit:cover}.profile-photo-controls{display:flex;flex-direction:column;gap:var(--space-2)}.profile-photo-controls .photo-error{color:var(--error);font-size:var(--text-85);margin:0}.profile-photo-controls input[type=file]{display:none}.profile-photo-controls .photo-progress{font-size:var(--text-85);color:var(--text-secondary)}.btn-danger:hover:not(:disabled){background-color:var(--error-hover)}.btn-link{background:none;border:none;color:var(--accent-primary);cursor:pointer;padding:0;font-size:inherit;text-decoration:underline}.btn-link:hover{color:var(--accent-primary)}@media(max-width:640px){.profile-card{padding:var(--space-6)}.profile-form .form-row{grid-template-columns:1fr}.profile-photo-upload{flex-direction:column;align-items:flex-start}}.notification-preferences-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-4)}.notification-preference-item{margin:0}.notification-preference-label{display:flex;align-items:flex-start;gap:var(--space-3);cursor:pointer;padding:var(--space-3) var(--space-3-5);border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--bg-primary);transition:border-color .15s ease,background-color .15s ease}.notification-preference-label:hover{border-color:var(--accent-primary)}.notification-preference-label input[type=checkbox]{margin-top:3px;width:18px;height:18px;accent-color:var(--accent-primary);cursor:pointer;flex-shrink:0}.notification-preference-label input[type=checkbox]:disabled{cursor:not-allowed;opacity:.7}.notification-preference-text{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.notification-preference-name{font-size:var(--text-95);font-weight:500;color:var(--text-primary)}.notification-preference-description{font-size:var(--text-85);color:var(--text-secondary);line-height:1.4}.notification-preference-saved{font-size:var(--text-80);color:var(--free-text);margin-top:var(--space-0-5)}.profile-form .form-actions .btn-wobble{animation:profile-btn-wobble .8s ease-in-out}@keyframes profile-btn-wobble{0%,to{transform:translate(0)}15%{transform:translate(-8px) rotate(-2deg)}30%{transform:translate(7px) rotate(1.5deg)}45%{transform:translate(-5px) rotate(-1deg)}60%{transform:translate(3px) rotate(.8deg)}75%{transform:translate(-2px) rotate(-.3deg)}}@media(prefers-reduced-motion:reduce){.profile-form .form-actions .btn-wobble{animation:none}}.place-search{position:relative;max-width:520px;margin:var(--space-4) auto 0;text-align:left}.place-search-label{display:block;margin-bottom:var(--space-1-5);font-size:var(--text-90);font-weight:600;color:var(--text-secondary)}.place-search-field{position:relative;display:flex;align-items:center}.place-search-icon{position:absolute;left:14px;color:var(--text-secondary);pointer-events:none}.place-search-field .place-search-input{width:100%;min-height:48px;padding:0 44px 0 42px;border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--bg-secondary);color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-100)}.place-search-field .place-search-input:focus-visible{outline:2px solid var(--accent-primary);outline-offset:1px}.place-search-clear{position:absolute;right:4px;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer}.place-search-clear:focus-visible{outline:2px solid var(--accent-primary)}.place-search-list{position:absolute;z-index:5;left:0;right:0;margin:var(--space-1) 0 0;padding:var(--space-1);list-style:none;max-height:340px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--bg-primary);box-shadow:0 8px 24px #0000002e}.place-search-list[hidden]{display:none}.place-search-option{display:flex;flex-direction:column;gap:var(--space-0-5);min-height:48px;padding:var(--space-2) var(--space-3);justify-content:center;border-radius:var(--radius-sm);cursor:pointer}.place-search-option:hover,.place-search-option--active{background-color:var(--bg-secondary)}.place-search-option--active{outline:2px solid var(--accent-primary);outline-offset:-2px}.place-search-option-label{color:var(--text-primary);font-weight:600}.place-search-option-detail{color:var(--text-secondary);font-size:var(--text-85)}.place-search-empty{margin:var(--space-2) 0 0;color:var(--text-secondary);font-size:var(--text-90)}.place-search-status{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.city-combobox{position:relative}.directory-fields{display:flex;flex-direction:column;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--border);margin-top:var(--space-1)}.directory-fields-title{font-family:var(--font-heading);font-size:var(--text-110);font-weight:500;color:var(--text-primary);margin:0}.directory-fields-hint{font-size:var(--text-85);color:var(--text-secondary);margin:0;line-height:1.4}.directory-fields-toggle{display:flex;align-items:flex-start;gap:var(--space-2-5);cursor:pointer;padding:var(--space-2-5) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--bg-primary);font-size:var(--text-90);color:var(--text-primary);transition:border-color .15s ease}.directory-fields-toggle:hover{border-color:var(--accent-primary)}.directory-fields-toggle input[type=checkbox]{margin-top:3px;width:18px;height:18px;accent-color:var(--accent-primary);cursor:pointer;flex-shrink:0}.directory-fields-group{border:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.directory-fields-group legend{padding:0;margin-bottom:var(--space-2);font-weight:500;color:var(--text-primary)}.directory-fields-group legend span{font-weight:400;color:var(--text-light);font-size:var(--text-85)}.directory-chip-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.directory-chip{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-1-5) var(--space-3-5);border-radius:999px;border:1px solid var(--border);background-color:var(--bg-calendar);color:var(--text-secondary);font-family:var(--font-body);font-size:var(--fs-badge);font-weight:500;cursor:pointer;transition:all .15s ease}.directory-chip:hover:not(:disabled){border-color:var(--accent-primary);color:var(--accent-primary-strong)}.directory-chip:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft);border-color:var(--accent-primary)}.directory-chip--selected,.directory-chip--selected:hover:not(:disabled){background-color:var(--accent-primary-hover);border-color:var(--accent-primary-hover);color:#fff}.directory-chip--selected .directory-chip-count{color:#ffffffd9}.directory-chip:disabled{opacity:.45;cursor:not-allowed}.directory-chip-count{font-size:var(--fs-eyebrow);color:var(--text-light)}.fireplace-field{display:flex;flex-direction:column;gap:var(--space-2)}.fireplace-field-title{display:inline-flex;align-items:center;gap:var(--space-1-5);margin:0;font-size:var(--text-110);font-weight:500;color:var(--text-primary)}.fireplace-field-hint{margin:0;font-size:var(--text-85);line-height:1.4;color:var(--text-secondary)}.fireplace-field-chosen{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2);margin:0;padding:var(--space-2-5) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--text-primary)}.fireplace-field-actions{display:inline-flex;gap:var(--space-3)}.fireplace-field-link{padding:0;border:0;background:none;font:inherit;font-size:var(--text-90);color:var(--accent-primary);text-decoration:underline;cursor:pointer}.fireplace-field-error{margin:0;font-size:var(--text-90);color:var(--error, #b3261e)}.confirm-dialog{background-color:var(--bg-calendar);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-8);max-width:400px;width:100%;position:relative;animation:modalIn .2s ease-out}.confirm-close{position:absolute;top:12px;right:12px;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-light);transition:all .15s ease;background:none;border:none;cursor:pointer}.confirm-close:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.confirm-dialog h2{font-family:Cormorant Garamond,Georgia,serif;font-size:var(--text-135);font-weight:500;color:var(--text-primary);margin-bottom:var(--space-3);padding-right:var(--space-6)}.confirm-dialog p{color:var(--text-secondary);line-height:1.6;margin-bottom:var(--space-6)}.confirm-dialog-body p:last-child{margin-bottom:0}.confirm-actions{display:flex;gap:var(--space-3);justify-content:flex-end;flex-wrap:wrap}.confirm-confirm{min-width:120px;white-space:nowrap;transition:none}.confirm-confirm .spin{flex:none;animation:spin .8s linear infinite}.confirm-overlay:has(.onboarding-dialog){padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom));padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right))}.onboarding-dialog{max-width:520px;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.onboarding-dialog:focus{outline:none}.onboarding-dialog h2:focus{outline:none}@media(max-width:480px){.confirm-overlay:has(.onboarding-dialog){padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));padding-top:max(12px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom))}.onboarding-dialog{padding:var(--space-6) var(--space-4) var(--space-4);max-height:calc(100dvh - 24px)}.onboarding-steps{gap:var(--space-2-5);flex-wrap:wrap}.onboarding-dialog .confirm-actions{flex-direction:column-reverse}.onboarding-dialog .confirm-actions .btn{width:100%}}.onboarding-progress{margin:var(--space-1) var(--space-8) var(--space-4) 0}.onboarding-progress-track{height:8px;border-radius:999px;background-color:var(--border-color, #e5e5e5);overflow:hidden}.onboarding-progress-bar{height:100%;border-radius:999px;background-color:var(--primary-color, #6b4ea0);transition:width .4s ease-out}.onboarding-progress-label{display:block;margin-top:var(--space-1-5);font-size:var(--text-85);color:var(--text-secondary)}.onboarding-steps{display:flex;gap:var(--space-4);list-style:none;margin:0 0 var(--space-5);padding:0;font-size:var(--text-85);color:var(--text-secondary)}.onboarding-step{display:flex;align-items:center;gap:var(--space-1-5)}.onboarding-step--current{color:var(--text-primary);font-weight:600}.onboarding-step-dot{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:1px solid var(--border-color, #ccc);font-size:var(--text-75)}.onboarding-step--current .onboarding-step-dot{border-color:var(--primary-color, #6b4ea0)}.onboarding-step--done .onboarding-step-dot{background-color:var(--primary-color, #6b4ea0);border-color:var(--primary-color, #6b4ea0);color:#fff}.onboarding-body textarea{width:100%;box-sizing:border-box}.onboarding-starters{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-2-5);font-size:var(--text-85);color:var(--text-secondary)}.onboarding-hint{margin-top:-12px;font-size:var(--text-90);font-style:italic}.onboarding-gain{display:inline-block;margin-left:var(--space-2);color:var(--primary-color, #6b4ea0);font-weight:600;animation:onboardingGain 2.5s ease-out forwards}@keyframes onboardingGain{0%{opacity:0;transform:translateY(4px)}15%{opacity:1;transform:translateY(0)}80%{opacity:1}to{opacity:0}}.onboarding-progress-bar--full{animation:onboardingGlow 1.2s ease-out 1}@keyframes onboardingGlow{0%{box-shadow:0 0 #6b4ea066}to{box-shadow:0 0 0 8px #6b4ea000}}.onboarding-badge{display:inline-flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);padding:var(--space-1-5) var(--space-3-5);border-radius:999px;border:1px solid var(--primary-color, #6b4ea0);color:var(--primary-color, #6b4ea0);font-weight:600;font-size:var(--text-90);animation:onboardingPop .6s ease-out}.onboarding-bio-inline{margin-bottom:var(--space-4)}.onboarding-bio-inline label{display:block;margin-bottom:var(--space-1-5);font-size:var(--text-90)}.onboarding-finish{text-align:center}.onboarding-sparkle{color:var(--primary-color, #6b4ea0);animation:onboardingPop .6s ease-out}@keyframes onboardingPop{0%{transform:scale(.3) rotate(-30deg);opacity:0}70%{transform:scale(1.25) rotate(8deg);opacity:1}to{transform:scale(1) rotate(0)}}@media(prefers-reduced-motion:reduce){.onboarding-sparkle,.onboarding-badge,.onboarding-gain,.onboarding-progress-bar{animation:none;transition:none}}.onboarding-banner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);background-color:var(--bg-calendar);border-bottom:1px solid var(--border-color, #e5e5e5);color:var(--text-primary)}@media(max-width:800px){.onboarding-banner{display:grid;grid-template-columns:auto 1fr auto;align-items:start}.onboarding-banner-text{grid-column:2}.onboarding-banner-close{grid-column:3;grid-row:1}.onboarding-banner .btn{grid-column:1 / -1;justify-content:center}}@media(min-width:801px){.onboarding-banner{position:fixed;top:calc(72px + var(--space-3));right:var(--space-5);z-index:90;width:min(26rem,calc(100vw - 2 * var(--space-5)));display:grid;grid-template-columns:auto 1fr auto;align-items:start;border:1px solid var(--border-color, #e5e5e5);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.onboarding-banner-text{grid-column:2}.onboarding-banner-close{grid-column:3;grid-row:1}.onboarding-banner .btn{grid-column:1 / -1;justify-self:start}}.onboarding-banner-text{flex:1;min-width:0;margin:0;font-size:var(--text-95)}.onboarding-banner-close{background:none;border:none;cursor:pointer;color:var(--text-secondary);display:inline-flex}.email-verification-modal{max-width:520px;padding:var(--space-8) var(--space-8) var(--space-6)}.email-verification-modal-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);padding-right:var(--space-10)}.email-verification-modal-header h2{margin:0;font-family:var(--font-heading);font-size:var(--text-135);font-weight:500;color:var(--text-primary);line-height:1.3}.email-verification-modal-icon{color:var(--accent-primary);flex-shrink:0}.email-verification-modal-intro{color:var(--text-secondary);font-size:var(--text-95);margin:0 0 var(--space-5) 0;line-height:1.5}.email-verification-modal-intro strong{word-break:break-all;color:var(--text-primary)}.email-verification-modal-feedback{margin:0 0 var(--space-4) 0;font-size:var(--text-90);line-height:1.4;padding:var(--space-2-5) var(--space-3-5);border-radius:8px}.email-verification-modal-feedback--success{color:#2e7d32;background-color:#e8f5e9}.email-verification-modal-feedback--error{color:var(--error, #c17a7a);background-color:#c17a7a14}.email-verification-modal-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.email-verification-modal-actions .btn{padding:var(--space-2-5) var(--space-4);font-size:var(--text-92)}@media(max-width:480px){.email-verification-modal{padding:var(--space-6) var(--space-5) var(--space-5)}.email-verification-modal-header h2{font-size:var(--text-120)}.email-verification-modal-actions .btn{width:100%;justify-content:center}}.locate-region{display:flex;flex-direction:column;align-items:center;gap:var(--space-1-5);margin-top:var(--space-3)}.locate-region-consent{max-width:560px;padding:var(--space-3) var(--space-3-5);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--accent-soft);text-align:left}.locate-region-info{margin:0 0 var(--space-2-5);font-size:var(--text-95);color:var(--text-primary)}.locate-region-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.locate-region-button{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-3-5);border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-95);cursor:pointer}.locate-region-button:hover:not(:disabled){border-color:var(--accent-primary)}.locate-region-button:disabled{opacity:.6;cursor:progress}.locate-region-button--primary{border-color:var(--accent-primary-hover);background:var(--accent-primary-hover);color:#fff}.locate-region-status{margin:0;max-width:560px;font-size:var(--text-90);color:var(--text-secondary)}.locate-region--start{align-items:flex-start}.place-picker{display:flex;flex-direction:column;gap:var(--space-1);width:100%;max-width:520px;margin:0 auto;text-align:left}.place-picker-error{margin:var(--space-2) 0 0;font-size:var(--text-90);color:var(--error, #b3261e)}.place-picker-chosen{display:flex;align-items:center;gap:var(--space-2);margin:var(--space-3) 0 0;padding:var(--space-2-5) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--text-primary)}.place-picker-region{color:var(--text-secondary)}.place-picker-radius{margin:var(--space-3-5) 0 0;padding:0;border:0}.place-picker-radius legend{margin-bottom:var(--space-1-5);padding:0;font-size:var(--text-90);font-weight:600;color:var(--text-secondary)}.place-picker-radius-options{display:flex;flex-wrap:wrap;gap:var(--space-2)}.place-picker-radius-option{display:inline-flex;align-items:center;justify-content:center;min-width:72px;min-height:44px;padding:0 var(--space-3-5);border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);font-size:var(--text-95);cursor:pointer}.place-picker-radius-option input{position:absolute;opacity:0;pointer-events:none}.place-picker-radius-option:focus-within{outline:2px solid var(--accent-primary);outline-offset:1px}.place-picker-radius-option--on{border-color:var(--accent-primary-hover);background:var(--accent-primary-hover);color:#fff}.place-picker-radius:disabled .place-picker-radius-option{opacity:.5;cursor:not-allowed}.place-picker-apply{min-height:48px;margin-top:var(--space-4);border:1px solid var(--accent-primary-hover);border-radius:var(--radius-sm);background:var(--accent-primary-hover);color:#fff;font-family:var(--font-body);font-size:var(--text-100);font-weight:600;cursor:pointer}.place-picker-apply:disabled{opacity:.5;cursor:not-allowed}.place-picker .place-search{max-width:none;margin:var(--space-2) 0 0}.region-picker-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2100;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background-color:#1618198c}.region-picker{display:flex;flex-direction:column;width:min(720px,100%);max-height:min(86vh,100%);border:1px solid var(--border);border-radius:var(--radius-md, 12px);background-color:var(--bg-primary);box-shadow:0 12px 32px #16181938}.region-picker:focus{outline:none}.region-picker-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5) var(--space-2)}.region-picker-title{margin:0;font-family:var(--font-heading);font-size:var(--text-130);color:var(--text-primary)}.region-picker-close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer}.region-picker-close:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.region-picker-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:var(--space-1) var(--space-5) var(--space-3);display:flex;flex-direction:column;gap:var(--space-4-5)}.region-picker-close:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}@media(max-width:640px){.region-picker-backdrop{align-items:flex-end;padding:0}.region-picker{width:100%;max-height:92vh;border-radius:var(--radius-md, 12px) var(--radius-md, 12px) 0 0}}.region-switcher{position:relative;flex-shrink:0;margin-right:var(--space-2)}.region-switcher-trigger{display:inline-flex;align-items:center;gap:var(--space-1-5);min-height:44px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-95);font-weight:500;cursor:pointer;white-space:nowrap}.region-switcher-trigger:hover{background-color:var(--bg-secondary)}.region-switcher-trigger:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.region-menu-list{display:none}@media(max-width:800px){.region-switcher{display:none}.region-menu-list{display:block;padding:var(--space-2) 0;border-bottom:1px solid var(--border);margin-bottom:var(--space-1)}.region-menu-list-button{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:48px;padding:0 var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--bg-secondary);color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-100);font-weight:500;text-align:left;cursor:pointer}.region-menu-list-label{flex:1}.region-menu-list-button:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}}.region-pick-button{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3-5);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-calendar);color:var(--text);font:inherit;cursor:pointer}.region-pick-button:hover{border-color:var(--primary)}.region-pick-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.region-pick-button--footer{padding:0;border:0;background:none;font-size:var(--text-90);color:var(--text-light)}.mention-bell{position:relative}.mention-bell-button{background:none;border:none;cursor:pointer;font:inherit}.mention-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:60;width:min(360px,calc(100vw - 32px));max-height:min(70vh,480px);overflow-y:auto;background:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:0 8px 24px #00000024;padding:var(--space-2)}.mention-bell--row .mention-panel{position:static;width:100%;margin-top:var(--space-1);box-shadow:none}.mention-panel-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-1) var(--space-2) var(--space-2)}.mention-read-all{background:none;border:none;color:var(--accent-primary-strong);cursor:pointer;font:inherit;font-size:var(--text-85);text-decoration:underline}.mention-empty{margin:0;padding:var(--space-2);color:var(--text-secondary);font-size:var(--text-90)}.mention-list{list-style:none;margin:0;padding:0}.mention-item{display:flex;flex-direction:column;gap:var(--space-0-5);padding:var(--space-2);border-radius:var(--radius-sm);color:var(--text-primary);text-decoration:none}.mention-item:hover,.mention-item:focus-visible{background:var(--accent-soft)}.mention-item--unread{box-shadow:inset 3px 0 0 var(--accent-primary);font-weight:600}.mention-item-excerpt{color:var(--text-secondary);font-size:var(--text-85);font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mention-item-time{color:var(--text-secondary);font-size:var(--text-75);font-weight:400}.header{position:sticky;top:0;z-index:100;background-color:#f6f1ece6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);overflow-x:clip}@media(max-width:800px){.header{transition:transform .25s ease;will-change:transform}.header--hidden{transform:translateY(-100%);pointer-events:none}}@media(prefers-reduced-motion:reduce){.header{transition:none}}.header-container{max-width:var(--page-max-width);margin:0 auto;padding:0 var(--page-gutter);padding-left:0;height:72px;display:flex;flex-wrap:nowrap;align-items:center;gap:var(--space-2)}@media(max-width:1300px){.header-container{padding-left:var(--space-5)}}.logo{display:flex;align-items:center;gap:var(--space-3);color:var(--text-primary);text-decoration:none;flex-shrink:0;margin-right:auto}.logo-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.logo-icon img,.logo-icon svg{width:100%;height:100%;object-fit:contain;display:block}.logo-text{display:flex;flex-direction:column;line-height:1.15}.logo-title{font-family:var(--font-heading);font-size:var(--text-105);font-weight:600;line-height:1.15;color:var(--text-primary)}.logo-subtitle{font-family:var(--font-heading);font-size:var(--text-105);font-weight:500;font-style:italic;line-height:1.15;color:var(--accent-secondary)}.nav-desktop{display:flex;align-items:center;gap:var(--space-4);flex-wrap:nowrap}.nav-group{display:flex;align-items:center;gap:var(--space-1)}.nav-group--actions{gap:var(--space-1-5);padding-left:var(--space-4);border-left:1px solid var(--border)}.nav-link{display:flex;align-items:center;gap:var(--space-1-5);padding:var(--nav-link-padding-y) var(--nav-link-padding-x);border-radius:var(--radius-sm);font-size:var(--text-95);font-weight:500;color:var(--text-secondary);text-decoration:none;transition:all .15s ease;background:none;border:none;cursor:pointer;white-space:nowrap;flex-shrink:0}.nav-link span{white-space:nowrap}.nav-link:hover{color:var(--text-primary);background-color:var(--bg-secondary)}.nav-link--active{color:var(--text-primary);background-color:transparent;font-weight:600;box-shadow:inset 0 -2px 0 0 var(--accent-primary)}.nav-link--active:hover{color:var(--text-primary);background-color:var(--bg-secondary)}.nav-link--logout{color:var(--text-light)}.nav-link--logout:hover{color:var(--error);background-color:#bf5b4e1a}.nav-link-admin-icon{position:relative;display:inline-flex;align-items:center;justify-content:center}.nav-link-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;border:1px solid var(--border);flex-shrink:0;display:block}.nav-link-badge{position:absolute;top:-6px;right:-8px;display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 var(--space-1);border-radius:999px;background:var(--error);color:#fff;font-size:.65rem;font-weight:700;line-height:1;box-shadow:0 0 0 2px var(--bg-primary)}.menu-toggle,.header-profile-button{display:none}.header-profile-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;border:1px solid var(--border);display:block}.nav-mobile{display:none}@media(max-width:800px){.header-container{height:64px;padding:0 var(--space-4);gap:0}.nav-desktop{display:none}.header-profile-button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:44px;border-radius:var(--radius-sm);color:var(--text-primary);text-decoration:none;flex-shrink:0;transition:background-color .15s ease}.header-profile-button:hover{background-color:var(--bg-secondary)}.header-profile-button:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.menu-toggle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-sm);background:none;border:none;color:var(--text-primary);cursor:pointer;flex-shrink:0;transition:background-color .15s ease}.menu-toggle:hover{background-color:var(--bg-secondary)}.menu-toggle{position:relative}.menu-toggle .menu-toggle-badge{top:var(--space-1);right:var(--space-1)}.menu-toggle:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.nav-mobile{display:flex;flex-direction:column;gap:var(--space-1);position:absolute;top:100%;left:0;right:0;padding:var(--space-3) var(--space-4) var(--space-5);background-color:#f6f1ecfa;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);box-shadow:0 12px 24px -12px #1618192e;opacity:0;transform:translateY(-8px);pointer-events:none;visibility:hidden;transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s}.nav-mobile--open{opacity:1;transform:translateY(0);pointer-events:auto;visibility:visible;transition:opacity .2s ease,transform .2s ease,visibility 0s linear 0s}.nav-mobile .nav-link{width:100%;justify-content:flex-start;padding:var(--space-3-5) var(--space-4);font-size:var(--text-100)}}@media(max-width:640px){.header-container{padding:0 var(--space-2);gap:var(--space-1-5)}.logo-title,.logo-subtitle{font-size:var(--text-90);line-height:1.15}}@media(max-width:379px){.header-directory-button{display:none}.logo-title,.logo-subtitle{font-size:var(--text-80)}}.nav-link-badge--presence{background:var(--accent-secondary)}.nav-link--create{background:var(--accent-primary);color:#fff;padding:9px 16px}.nav-link--create:hover{background:var(--accent-primary-hover);color:#fff}.nav-link--create.nav-link--active{background:var(--accent-primary-hover);color:#fff;box-shadow:none}.nav-link--create.nav-link--disabled,.nav-link--create.nav-link--disabled:hover{background:var(--accent-primary);color:#fff;opacity:.75}.nav-link--icon{padding:var(--space-2-5)}.nav-link--icon>span:not(.nav-link-admin-icon){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.nav-link--icon.nav-link--active{box-shadow:none;background-color:var(--accent-soft)}.account-menu{position:relative}.account-menu-toggle{display:inline-flex;align-items:center;gap:var(--space-1);min-height:44px;padding:var(--space-1-5) var(--space-2);border:0;border-radius:var(--radius-sm);background:none;color:var(--text-secondary);cursor:pointer;transition:background-color .15s ease}.account-menu-toggle:hover,.account-menu-toggle[aria-expanded=true]{background-color:var(--bg-secondary);color:var(--text-primary)}.account-menu-toggle--active{box-shadow:inset 0 -2px 0 0 var(--accent-primary)}.account-menu-toggle:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.account-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;border:1px solid var(--border);display:block;overflow:hidden}.account-menu-chevron{transition:transform .15s ease}.account-menu-toggle[aria-expanded=true] .account-menu-chevron{transform:rotate(180deg)}.account-menu-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:110;display:flex;flex-direction:column;gap:var(--space-0-5);min-width:240px;padding:var(--space-1-5);background:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.account-menu-panel[hidden]{display:none}.account-menu-panel .nav-link{width:100%;justify-content:flex-start;padding:var(--space-3) var(--space-3-5)}.account-menu-panel .nav-link--active{box-shadow:none;background-color:var(--accent-soft)}.account-menu-divider{height:1px;margin:var(--space-1) var(--space-1-5);background:var(--border)}@media(max-width:1100px){.nav-desktop{gap:var(--space-2)}.nav-group--actions{padding-left:var(--space-2)}.nav-desktop .nav-group--primary .nav-link{padding:var(--space-2-5) var(--space-2-5)}.nav-desktop .nav-link--create{padding:var(--space-2-5)}.nav-desktop .nav-link--create>span:not(.nav-link-admin-icon){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}.account-menu-panel .nav-link-admin-icon{margin-right:var(--space-1-5)}.pwa-install-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#16181973;z-index:1100;display:flex;align-items:flex-end;justify-content:center;padding:0;animation:pwa-install-fade-in .18s ease-out}.pwa-install-sheet{position:relative;width:100%;max-width:420px;background-color:var(--bg-primary);border-top-left-radius:20px;border-top-right-radius:20px;padding:var(--space-7) var(--space-6) var(--space-8);box-shadow:0 -4px 24px #1618192e,0 -12px 40px #1618191f;animation:pwa-install-slide-up .28s cubic-bezier(.22,1,.36,1)}.pwa-install-close{position:absolute;top:12px;right:12px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:none;background-color:transparent;border-radius:50%;color:var(--text-secondary, #555);cursor:pointer;transition:background-color .15s ease,color .15s ease}.pwa-install-close:hover{background-color:#1618190f;color:var(--text-primary, #1a1a1a)}.pwa-install-close:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.pwa-install-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:16px;background-color:var(--accent-primary);color:#fff;margin-bottom:var(--space-4)}.pwa-install-title{margin:0 0 var(--space-2) 0;font-family:var(--font-heading, var(--font-body));font-size:var(--text-135);font-weight:600;line-height:1.3;color:var(--text-primary, #1a1a1a)}.pwa-install-description{margin:0 0 var(--space-5) 0;font-size:var(--text-95);line-height:1.5;color:var(--text-secondary, #555)}.pwa-install-actions{display:flex;flex-direction:column;gap:var(--space-2)}.pwa-install-install{width:100%;padding:var(--space-3) var(--space-5);font-size:var(--text-100);font-weight:500}.pwa-install-later{width:100%;padding:var(--space-2-5) var(--space-5);background-color:transparent;border:none;color:var(--text-secondary, #555);font-family:var(--font-body);font-size:var(--text-90);font-weight:500;cursor:pointer;border-radius:999px;transition:background-color .15s ease}.pwa-install-later:hover{background-color:#1618190d}.pwa-install-later:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}@keyframes pwa-install-fade-in{0%{opacity:0}to{opacity:1}}@keyframes pwa-install-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media(min-width:801px){.pwa-install-overlay{align-items:center}.pwa-install-sheet{border-radius:20px;margin:0 var(--space-6)}}@media(prefers-reduced-motion:reduce){.pwa-install-overlay,.pwa-install-sheet{animation:none}}.donate-link.donate-link{display:inline-block;padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg);background-color:var(--accent-primary);color:#fff;font-weight:500;text-decoration:none;transition:background-color .15s ease}.donate-link.donate-link:hover{background-color:var(--accent-primary-hover);color:#fff}.donate-link.donate-link:focus-visible{outline:2px solid var(--accent-primary);outline-offset:3px}.footer{border-top:1px solid var(--border);background-color:var(--bg-primary);padding:var(--footer-padding-y) 0;margin-top:auto}.footer-container{max-width:var(--page-max-width);margin:0 auto;padding:0 var(--page-gutter);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-3)}.footer-copy{font-size:var(--text-85);color:var(--text-light)}.footer-nav{display:flex;flex-wrap:wrap;gap:var(--space-4) var(--space-6);align-items:center}.footer-nav a,.footer-install-link,.footer-cookie-link{font-size:var(--text-85);color:var(--text-secondary);background:none;border:none;padding:0;cursor:pointer;font-family:inherit;text-decoration:none}.footer-nav a:hover,.footer-install-link:hover,.footer-cookie-link:hover{color:var(--accent-primary)}.footer-install-link:focus-visible,.footer-cookie-link:focus-visible{outline:2px solid var(--accent-primary);outline-offset:3px;border-radius:4px}@media(min-width:801px){.footer-install-link{display:none}}@media(max-width:480px){.footer-container{flex-direction:column;text-align:center}.footer-nav{justify-content:center}}.cancelled-badge{display:inline-flex;align-items:center;flex-shrink:0;width:fit-content;padding:var(--space-0-5) var(--space-2);border-radius:999px;background:#b42318;color:#fff;font-size:var(--text-75);font-weight:700;letter-spacing:.02em;line-height:1.4;text-transform:uppercase}.calendar{display:none;width:100%;background-color:var(--bg-calendar);border-radius:var(--radius-md);box-shadow:var(--shadow-md);overflow:hidden}@media(min-width:900px){.calendar{display:block}}.calendar-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-5) var(--space-6) var(--space-4)}.calendar-title{display:flex;align-items:center;justify-content:center;gap:var(--space-3);flex:1}.calendar-title h2{font-family:Cormorant Garamond,Georgia,serif;font-size:var(--text-150);font-weight:500;color:var(--text-primary);white-space:nowrap}.calendar-header-spacer{width:30px}.calendar-divider{height:1px;background-color:var(--border);margin:var(--space-2) var(--space-6) 0}.calendar-legend{list-style:none;display:flex;flex-flow:row wrap;gap:var(--space-2-5) var(--space-5);padding:var(--space-4) var(--space-6) var(--space-5)}.calendar-legend li{display:flex;align-items:center;gap:var(--space-2-5);font-size:var(--fs-eventinfo);color:var(--text-secondary)}.calendar-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.btn-today,.btn-nav{display:flex;align-items:center;justify-content:center;padding:0;width:30px;height:30px;border:none;background:none;color:var(--text-light);border-radius:50%;cursor:pointer;transition:all .15s ease}.btn-today:hover,.btn-nav:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.btn-nav:disabled{color:var(--text-light);opacity:.4;cursor:not-allowed}.btn-nav:disabled:hover{background-color:transparent;color:var(--text-light)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);padding:0 var(--space-2)}.weekday{padding:var(--space-2) var(--space-1) var(--space-3);text-align:center;font-size:var(--text-75);font-weight:500;text-transform:uppercase;letter-spacing:.03em;color:var(--text-light)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(6,minmax(56px,1fr));padding:0 var(--space-2) var(--space-2)}.calendar-cell{padding:var(--space-1-5) var(--space-1);min-height:56px;min-width:0;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);border:none;background:none;border-radius:var(--radius-sm);cursor:default;transition:background-color .15s ease}.calendar-cell.has-events{cursor:pointer}.calendar-cell.has-events:hover{background-color:var(--bg-secondary)}.calendar-cell.other-month .day-number{color:var(--text-light);opacity:.6}.calendar-cell.past .day-number{color:var(--text-light)}.calendar-cell.today .day-number{background-color:var(--accent-primary);color:#fff;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center}.day-number{font-size:var(--text-90);font-weight:500;color:var(--text-secondary);width:28px;height:28px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cell-dots{display:flex;gap:3px;justify-content:center;min-height:6px}.cell-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.desktop-calendar{position:relative;display:block;width:100%}.day-popover-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:100;border-radius:var(--radius-md)}.day-popover{background:var(--bg-calendar);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);width:340px;max-height:80%;overflow:hidden;display:flex;flex-direction:column}.day-popover-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);background:var(--bg-secondary)}.day-popover-title{font-size:var(--text-95);font-weight:600;color:var(--text-primary)}.day-popover-close{background:none;border:none;font-size:var(--text-150);color:var(--text-light);cursor:pointer;padding:0;line-height:1}.day-popover-close:hover{color:var(--text-primary)}.day-popover-events{padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);overflow-y:auto}.day-popover-event{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2-5) var(--space-3-5);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;width:100%;text-align:left;transition:all .15s ease}.day-popover-event:hover{border-color:var(--accent-primary);box-shadow:var(--shadow-sm)}.day-popover-event-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.day-popover-event-info{display:flex;flex-direction:column;gap:var(--space-0-5);flex:1;min-width:0}.day-popover-event-time{font-size:var(--text-75);font-weight:600;color:var(--accent-primary)}.day-popover-event-name{font-size:var(--text-85);font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.day-popover-event-badge{padding:3px 8px;border-radius:10px;font-size:var(--text-70);font-weight:600;flex-shrink:0}.day-popover-event-badge.free{background-color:#7a8a5f26;color:var(--free-text)}.day-popover-event-badge.fee{background-color:#c48e6a1f;color:var(--fee-text)}.day-popover-event-badge.donation{background-color:#8c78b426;color:var(--donation-text)}.mobile-agenda{display:none;flex-direction:column}.agenda-day{padding:0 var(--space-4);border-bottom:1px solid var(--border)}.agenda-day.other-month{opacity:.5}.agenda-day-header{display:flex;align-items:center;gap:var(--space-2-5);padding:var(--space-3) 0 var(--space-2);position:sticky;top:0;background:var(--bg-calendar);z-index:1}.agenda-day-weekday{font-size:var(--text-75);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-light)}.agenda-day-number{font-size:var(--text-100);font-weight:600;color:var(--text-secondary)}.agenda-day-number.today{background-color:var(--accent-primary);color:#fff;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:var(--text-90)}.agenda-day-empty{height:8px}.agenda-events{display:flex;flex-direction:column;gap:var(--space-2);padding-bottom:var(--space-3)}.agenda-event-row{display:flex;flex-direction:column;gap:var(--space-1-5);padding:var(--space-3);background-color:var(--bg-secondary);border-radius:var(--radius-sm);border:1px solid var(--border);cursor:pointer;transition:all .15s ease;text-align:left;width:100%}.agenda-event-row:hover{border-color:var(--accent-primary);box-shadow:var(--shadow-sm)}.agenda-event-main{display:flex;align-items:center;gap:var(--space-2-5)}.agenda-event-time{font-size:var(--text-80);font-weight:600;color:var(--accent-primary);min-width:44px}.agenda-event-title{font-size:var(--text-90);font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agenda-event-meta{display:flex;align-items:center;justify-content:space-between;padding-left:54px}.agenda-event-place{display:flex;align-items:center;gap:3px;font-size:var(--text-75);color:var(--text-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60%}.agenda-event-place svg{flex-shrink:0}.agenda-event-badge{padding:3px 8px;border-radius:10px;font-size:var(--text-70);font-weight:600;flex-shrink:0}.agenda-event-badge.free{background-color:#7a8a5f26;color:var(--free-text)}.agenda-event-badge.fee{background-color:#c48e6a1f;color:var(--fee-text)}.agenda-event-badge.donation{background-color:#8c78b426;color:var(--donation-text)}.desktop-calendar{display:block}@media(max-width:768px){.calendar-header{padding:var(--space-4) var(--space-5)}.calendar-title h2{font-size:var(--text-130)}.day-number{font-size:var(--text-80)}}@media(max-width:639px){.desktop-calendar{display:none}.mobile-agenda{display:flex}.calendar-header{display:none}}.login-prompt-modal{max-width:460px;padding:var(--space-8) var(--space-8) var(--space-6)}.login-prompt-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);padding-right:var(--space-10)}.login-prompt-header h2{margin:0;font-family:var(--font-heading);font-size:var(--text-135);font-weight:500;color:var(--text-primary);line-height:1.3}.login-prompt-icon{color:var(--accent-primary);flex-shrink:0}.login-prompt-text{color:var(--text-secondary);font-size:var(--text-95);line-height:1.5;margin:0 0 var(--space-5)}.login-prompt-actions{display:flex;flex-direction:column;gap:var(--space-2-5)}.favorite-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:50%;background-color:#ffffffeb;color:var(--text-secondary);box-shadow:var(--shadow-sm);cursor:pointer;transition:color .15s ease,transform .15s ease}.favorite-button:hover{color:var(--accent-primary);transform:scale(1.08)}.favorite-button--active{color:var(--accent-primary)}.event-tile-image-wrapper>.favorite-button{position:absolute;top:8px;right:8px}.event-row{position:relative}.event-row>.favorite-button{position:absolute;top:8px;right:8px;width:30px;height:30px}.candle-room{margin:var(--space-8) auto 0;max-width:820px;width:100%;box-sizing:border-box}.candle-room-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.candle-room-header h2{margin:0;font-family:var(--font-heading);display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.candle-room-header p{margin:var(--space-0-5) 0 0;color:var(--text-secondary);font-size:var(--text-90)}.candle-room-new-label{font-family:inherit;font-size:var(--text-75);font-weight:600;padding:var(--space-0-5) var(--space-2);border-radius:999px;background:var(--accent-primary);color:#fff}.candle-room-list.chat-list{height:min(45vh,420px);min-height:200px}.candle-room-hint a{color:var(--accent-primary);font-weight:600}.candle-flame{display:inline-block;font-size:var(--text-175);line-height:1;flex-shrink:0;transform-origin:50% 90%}.candle-flame--lit{animation:candle-flicker 1.6s ease-in-out infinite;filter:drop-shadow(0 0 6px rgba(255,170,60,.85))}@keyframes candle-flicker{0%,to{transform:rotate(-2deg) scale(1);filter:drop-shadow(0 0 4px rgba(255,170,60,.7))}25%{transform:rotate(2deg) scale(1.06);filter:drop-shadow(0 0 9px rgba(255,190,80,.95))}50%{transform:rotate(-1deg) scale(.97);filter:drop-shadow(0 0 5px rgba(255,160,50,.75))}75%{transform:rotate(1deg) scale(1.04);filter:drop-shadow(0 0 8px rgba(255,185,70,.9))}}@media(prefers-reduced-motion:reduce){.candle-flame--lit{animation:none}}.candle-room-toggle{display:flex;align-items:center;gap:var(--space-2-5);width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--border-color, rgba(0, 0, 0, .12));border-radius:12px;background:var(--bg-secondary, transparent);color:inherit;font:inherit;font-weight:600;cursor:pointer}.candle-room-toggle-label{flex:1;text-align:left}.candle-room-chevron{transition:transform .2s}.candle-room-chevron--open{transform:rotate(180deg)}.candle-room-panel{margin-top:var(--space-3)}.candle-badge{position:absolute;bottom:8px;right:8px;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background-color:#ffffffeb;box-shadow:var(--shadow-sm);font-size:var(--text-105);line-height:1}.candle-badge .candle-flame{font-size:inherit}.candle-badge:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);right:0;width:max-content;max-width:220px;padding:var(--space-1-5) var(--space-2-5);border-radius:var(--radius-sm, 6px);background:#1e1e1eeb;color:#fff;font-size:var(--text-75);line-height:1.35;white-space:normal;opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .15s ease,transform .15s ease;z-index:2}.candle-badge:hover:after,.event-tile:focus-visible .candle-badge:after{opacity:1;transform:translateY(0)}.event-tile{display:flex;flex-direction:column;background-color:var(--bg-calendar);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden;text-decoration:none;color:inherit;transition:box-shadow .15s ease,transform .15s ease}.event-tile:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.event-tile-image-wrapper{position:relative;overflow:hidden;width:100%;aspect-ratio:16 / 9;min-height:var(--card-image-height);max-height:var(--card-image-height);background-color:var(--bg-secondary)}.event-tile-image{width:100%;height:100%;object-fit:cover}.event-tile-category{position:absolute;top:12px;left:12px;padding:var(--space-1) var(--space-2-5);border-radius:12px;font-size:var(--text-70);font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:#fff}.event-tile-body{display:flex;flex-direction:column;gap:var(--card-gap);padding:var(--card-padding)}.event-tile-date{font-size:var(--text-80);color:var(--text-secondary)}.event-tile-title{font-family:var(--font-heading);font-size:var(--text-110);font-weight:500;color:var(--text-primary)}.event-tile-location{flex-wrap:wrap;display:inline-flex;align-items:center;gap:var(--space-1-5);font-size:var(--text-85);color:var(--text-secondary)}.event-tile-location svg{color:var(--accent-primary);flex-shrink:0}.event-tile-organizer{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-1);font-size:var(--text-85);color:var(--text-secondary)}.event-tile-organizer-avatar{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background-color:var(--accent-soft);color:var(--accent-primary-strong);font-size:var(--text-75);font-weight:600;flex-shrink:0}.event-tile-organizer-photo{width:24px;height:24px;border-radius:50%;object-fit:cover;border:1px solid var(--border);flex-shrink:0}.event-row{display:grid;grid-template-columns:56px 96px minmax(0,1fr) auto;align-items:center;gap:var(--row-gap);padding:var(--row-padding);background-color:var(--bg-calendar);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);text-decoration:none;color:inherit;transition:box-shadow .15s ease}.event-row:hover{box-shadow:var(--shadow-md)}.event-row-date{display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--text-secondary)}.event-row-weekday{font-size:var(--text-70);text-transform:uppercase;letter-spacing:.03em}.event-row-day{font-family:var(--font-heading);font-size:var(--text-160);font-weight:600;color:var(--text-primary);line-height:1.1}.event-row-month{font-size:var(--text-70);text-transform:uppercase;letter-spacing:.03em}.event-row-image-wrapper{width:96px;height:72px;border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0;background-color:var(--bg-secondary)}.event-row-image{width:100%;height:100%;object-fit:cover}.event-row-body{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.event-row-category{align-self:flex-start;padding:3px 10px;border-radius:12px;font-size:var(--text-70);font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:#fff}.event-row-title{font-family:var(--font-heading);font-size:var(--text-115);font-weight:500;color:var(--text-primary)}.event-row-location{flex-wrap:wrap;display:inline-flex;align-items:center;gap:var(--space-1-5);font-size:var(--text-85);color:var(--text-secondary)}.event-row-location svg{color:var(--accent-primary);flex-shrink:0}.event-row-organizer{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-85);color:var(--text-secondary)}.event-row-organizer-avatar{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background-color:var(--accent-soft);color:var(--accent-primary-strong);font-size:var(--text-70);font-weight:600;flex-shrink:0}.event-row-organizer-photo{width:22px;height:22px;border-radius:50%;object-fit:cover;border:1px solid var(--border);flex-shrink:0}.event-row-time{font-size:var(--text-90);font-weight:500;color:var(--text-primary);white-space:nowrap}@media(max-width:640px){.event-row{grid-template-columns:44px minmax(0,1fr)}.event-row-image-wrapper{display:none}.event-row-time{grid-column:2}}.events-section-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-5)}.events-section-month{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.events-section-month h2{font-family:var(--font-heading);font-size:var(--text-150);font-weight:500;color:var(--text-primary);min-width:13ch;flex-shrink:0}.events-section-month-nav{display:flex;gap:var(--space-1)}.events-section-month-nav button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);color:var(--text-secondary);transition:background-color .15s ease}.events-section-month-nav button:hover{background-color:var(--bg-secondary)}.events-section-month-nav button:disabled{color:var(--text-light);opacity:.4;cursor:not-allowed}.events-section-month-nav button:disabled:hover{background-color:transparent}.events-section-count{padding:var(--space-1) var(--space-2-5);background-color:var(--bg-secondary);border-radius:12px;font-size:var(--text-80);color:var(--text-secondary)}.events-section-filter-link{background:none;border:none;padding:0;font:inherit;color:var(--accent-primary-hover);text-decoration:underline;cursor:pointer}.events-section-filter-link:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:var(--radius-sm)}.events-section-view-toggle{display:inline-flex;background-color:var(--bg-secondary);border-radius:var(--radius-sm);padding:var(--space-1);gap:var(--space-1)}.events-section-view-toggle button{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-2) var(--space-3-5);border-radius:6px;font-size:var(--text-85);font-weight:500;color:var(--text-secondary);transition:all .15s ease}.events-section-view-toggle button.active{background-color:var(--bg-calendar);color:var(--text-primary);box-shadow:var(--shadow-sm)}.events-section-list{display:flex;flex-direction:column;gap:var(--space-3)}.events-section-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--grid-gap)}.events-section-empty{background-color:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-12) var(--space-6);text-align:center;color:var(--text-secondary)}@media(max-width:640px){.events-section-view-toggle button span{display:none}}@media(max-width:767px){.events-section-view-toggle .view-toggle-list{display:none}}.events-section-reset{margin-top:var(--space-3);background:none;border:none;padding:0;color:var(--accent-primary-hover);font-weight:600;text-decoration:underline;cursor:pointer}.events-section-more{display:flex;justify-content:center;margin-top:var(--space-6)}.delete-reason-field{display:flex;flex-direction:column;gap:var(--space-1-5);margin-bottom:var(--space-5)}.delete-reason-field label{font-size:var(--text-90);font-weight:600;color:var(--text-primary)}.delete-reason-field textarea{width:100%;padding:var(--space-2-5) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font:inherit;resize:vertical}.confirm-dialog .delete-reason-field .delete-reason-hint,.delete-reason-field .delete-reason-hint{font-size:var(--text-80);color:var(--text-light);margin:0}.calendar-page{min-height:calc(100vh - 72px);width:100%;background-color:var(--bg-primary);overflow-x:hidden}.hero{position:relative;isolation:isolate;display:flex;align-items:center;width:100%;margin:var(--space-8) 0;padding:var(--space-8) var(--space-12);padding-left:0;overflow:hidden;border-radius:var(--radius-lg);max-width:var(--page-max-width);margin:0 auto}.hero-content{position:relative;z-index:2;width:100%}.hero-title{font-size:var(--fs-hero-title);font-weight:500;line-height:1.2;color:var(--text-primary);margin-bottom:var(--space-3-5)}.hero-title em{color:var(--accent-secondary);font-style:normal}.hero-subtitle{font-size:var(--fs-intro);color:var(--text-secondary);max-width:56ch;margin-bottom:var(--space-5)}.hero-feature-title{font-size:var(--fs-body);font-weight:600;color:var(--text-primary)}.hero-feature-description{font-size:var(--text-88);color:var(--text-secondary)}.hero-features-slider{position:relative;display:flex;align-items:center;gap:var(--space-4);max-width:776px;min-height:56px;padding:var(--space-3-5) var(--space-4-5);background-color:var(--accent-secondary);border-radius:var(--radius-md);color:var(--bg-primary)}.hero-feature-slide{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);width:100%;min-width:0;position:absolute;top:14px;right:18px;bottom:14px;left:18px;opacity:0;visibility:hidden;transform:translate(8px);transition:opacity .4s ease,transform .4s ease,visibility 0s linear .4s}.hero-feature-slide.is-active{position:relative;inset:auto;opacity:1;visibility:visible;transform:translate(0);transition:opacity .4s ease,transform .4s ease,visibility 0s linear 0s}@media(max-width:767px){.hero-feature-slide .hero-feature-item:nth-child(n+2){display:none}}.hero-feature-item{display:flex;align-items:center;gap:var(--space-3);min-width:0}.hero-feature-item svg{flex-shrink:0;color:var(--bg-primary)}.hero-feature-item>div{display:flex;flex-direction:column;min-width:0}.hero-feature-item .hero-feature-title{color:var(--bg-primary)}.hero-feature-item .hero-feature-description{color:var(--bg-primary);opacity:.85}@media(prefers-reduced-motion:reduce){.hero-feature-slide,.hero-feature-slide.is-active{transition:none;transform:none}}.page-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:var(--layout-column-gap);width:100%;max-width:var(--page-max-width);margin:0 auto;padding:0 var(--space-8) var(--page-bottom-space);padding-left:0}@media(max-width:1300px){.page-layout,.hero{padding-left:var(--space-5)}}.page-main{min-width:0}.page-sidebar{display:flex;flex-direction:column;gap:var(--sidebar-gap);position:sticky;top:88px}.filter-panel:focus,.filter-section-title:focus{outline:none}.filter-panel{scroll-margin-top:calc(var(--space-16) + var(--space-4));background-color:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--filter-panel-padding);margin-bottom:var(--space-5);box-shadow:var(--shadow-sm)}.create-event-cta{display:none;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-5);background-color:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.create-event-cta-text{display:flex;flex-direction:column;gap:var(--space-0-5);min-width:0}.create-event-cta-text strong{font-family:var(--font-heading);font-size:var(--text-110);font-weight:600;color:var(--text-primary);line-height:1.2}.create-event-cta-text span{font-size:var(--text-85);color:var(--text-secondary);line-height:1.3}.create-event-cta-button{flex-shrink:0;padding:var(--space-2-5) var(--space-4-5);font-size:var(--text-90)}.create-event-cta-button.btn-disabled{opacity:.65;cursor:pointer;transform:none}@media(max-width:800px){.create-event-cta{display:flex}}@media(max-width:480px){.create-event-cta{flex-direction:column;align-items:stretch;padding:var(--space-3-5) var(--space-4)}.create-event-cta-button{width:100%}}.filter-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.filter-header--title,.filter-header--section{margin-bottom:var(--space-4)}.filter-header--section~.filter-header--section{margin-top:var(--space-4);padding-top:var(--space-2);border-top:1px solid var(--border)}.filter-header--section .filter-label,.filter-label{font-size:var(--text-75);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-light)}.filter-section-title{font-family:var(--font-heading);font-size:var(--text-125);font-weight:600;color:var(--text-primary);margin:0}.filter-quick-actions{display:flex;gap:var(--space-2);padding-top:var(--space-2)}.filter-quick-actions button{font-size:var(--text-80);font-weight:500;color:var(--text-secondary);background-color:transparent;border:1px solid var(--border);border-radius:999px;padding:var(--space-1) var(--space-3);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.filter-quick-actions button:hover{background-color:var(--bg-secondary);border-color:var(--accent-primary);color:var(--accent-primary)}.filter-quick-actions button:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.filter-options{display:flex;flex-wrap:wrap;gap:var(--space-2)}.filter-chip{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-1-5) var(--space-3-5);font-size:var(--text-88);font-weight:500;line-height:1.2;color:var(--text-secondary);background-color:transparent;border:1px solid var(--border);border-radius:999px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}.filter-chip:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.filter-chip:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.filter-chip-icon{width:0;height:14px;flex-shrink:0;opacity:0;transform:scale(.6);transition:width .18s ease,opacity .18s ease,transform .18s ease}.filter-chip[aria-pressed=true]{background-color:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.filter-chip[aria-pressed=true]:hover{filter:brightness(.92);color:#fff}.filter-chip[aria-pressed=true] .filter-chip-icon{width:14px;opacity:1;transform:scale(1)}.filter-chip--category{border-color:var(--category-color)}.filter-chip--category:hover{border-color:var(--category-color);color:var(--category-color)}.filter-chip--category[aria-pressed=true],.filter-chip--category[aria-pressed=true]:hover{background-color:var(--category-color);border-color:var(--category-color)}.filter-chip--ort{border-color:var(--district-color, var(--border))}.filter-chip--ort:hover{border-color:var(--district-color, var(--accent-primary));color:var(--district-color, var(--accent-primary))}.filter-chip--ort[aria-pressed=true],.filter-chip--ort[aria-pressed=true]:hover{background-color:var(--district-color, var(--accent-primary));border-color:var(--district-color, var(--accent-primary));color:#fff}.filter-accordion{margin-top:var(--space-4)}.filter-accordion-summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);cursor:pointer;list-style:none;font-size:var(--text-85);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-light);-webkit-user-select:none;user-select:none;padding:var(--space-1) 0}.filter-accordion-summary::-webkit-details-marker{display:none}.filter-accordion-summary::marker{content:""}.filter-accordion-label{display:inline-flex;align-items:center;gap:var(--space-2)}.filter-accordion-filter-icon{color:var(--text-light)}.filter-accordion-icon{transition:transform .2s ease}.filter-accordion[open]>.filter-accordion-summary .filter-accordion-icon{transform:rotate(180deg)}.filter-accordion-body{padding-top:var(--space-4);animation:fadeIn .15s ease-out}.calendar-error{background-color:var(--bg-calendar);border-radius:var(--radius-md);padding:var(--space-12) var(--space-8);text-align:center;box-shadow:var(--shadow-sm)}.calendar-error h3{font-family:Cormorant Garamond,Georgia,serif;font-size:var(--text-135);color:var(--error);margin-bottom:var(--space-3)}.calendar-error p{color:var(--text-secondary);margin-bottom:var(--space-2)}.error-detail{font-size:var(--text-85);color:var(--text-light);font-family:monospace;background:var(--bg-secondary);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);display:inline-block}@media(max-width:900px){.hero{flex-direction:column;padding:var(--space-6) var(--space-5);margin:var(--space-4) 0;max-width:100%}.hero-content{max-width:100%;padding:0}.hero-title{margin-bottom:var(--space-2-5)}.hero-subtitle{margin-bottom:var(--space-3-5)}.page-layout{grid-template-columns:1fr}.page-sidebar{display:none}}@media(max-width:640px){.page-layout{padding:0 var(--space-2) var(--space-8)}.hero{display:none}}@media(max-width:640px){.filter-header.filter-header--title,.filter-header.filter-header--section,.filter-quick-actions,.create-event-cta{display:none}.filter-accordion-body .filter-header .filter-quick-actions{display:flex}.filter-panel{margin-top:1rem;padding:1rem}.filter-options+.filter-options{margin-top:1rem}.filter-options{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;padding-bottom:var(--space-1);margin-right:-8px;margin-left:-8px;padding-left:var(--space-2);padding-right:var(--space-2);scroll-padding-inline:var(--space-2);scrollbar-width:none}.filter-options::-webkit-scrollbar{display:none}.filter-options .filter-chip{flex-shrink:0;scroll-snap-align:start}}.filter-chip-count{font-size:var(--text-75);font-weight:600;opacity:.7;font-variant-numeric:tabular-nums}.filter-chip-count:before{content:"("}.filter-chip-count:after{content:")"}.filter-chip[aria-pressed=false]:has(.filter-chip-count[data-empty=true]){opacity:.5}.calendar-export{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2);margin-top:var(--space-3)}.calendar-export-summary{display:inline-flex;align-items:center;gap:var(--space-1-5);cursor:pointer;color:var(--text-secondary);font-size:var(--text-85);list-style:none}.calendar-export-summary::-webkit-details-marker{display:none}.calendar-export-panel{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-2)}.calendar-export-panel .btn{display:inline-flex;align-items:center;gap:var(--space-1-5);text-decoration:none}.calendar-subscribe-url{flex-basis:100%;text-align:right;max-width:100%;overflow-wrap:anywhere;color:var(--text-secondary);font-size:var(--text-80)}.calendar-subscribe-hint{flex-basis:100%;margin:0;text-align:right;color:var(--text-secondary);font-size:var(--text-80)}.auth-page{min-height:calc(100vh - 72px);display:flex;align-items:center;justify-content:center;padding:var(--space-12) var(--space-6);background:linear-gradient(180deg,var(--bg-primary) 0%,var(--bg-secondary) 100%)}.auth-container{background-color:var(--bg-calendar);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-12);width:100%;max-width:420px}.auth-header{text-align:center;margin-bottom:var(--space-8)}.auth-icon{width:80px;height:80px;margin:0 auto var(--space-5);display:flex;align-items:center;justify-content:center}.auth-icon img,.auth-icon svg{width:100%;height:100%;object-fit:contain;display:block}.auth-header h1{font-family:Cormorant Garamond,Georgia,serif;font-size:var(--text-175);font-weight:500;color:var(--text-primary);margin-bottom:var(--space-2)}.auth-header p{color:var(--text-secondary);font-size:var(--text-95)}.auth-form{display:flex;flex-direction:column;gap:var(--space-1)}.input-wrapper{position:relative}.input-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-light);pointer-events:none}.auth-form .input-wrapper input{padding-left:52px}.btn-submit{width:100%;padding:var(--space-3-5) var(--space-6);margin-top:var(--space-3);font-size:var(--text-100)}.loading-dots{display:flex;gap:var(--space-1)}.loading-dots span{width:6px;height:6px;background-color:#fff;border-radius:50%;animation:bounce 1.4s ease-in-out infinite both}.loading-dots span:nth-child(1){animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.auth-footer{margin-top:var(--space-6);text-align:center;color:var(--text-secondary)}.auth-footer p{font-size:var(--text-90)}.link-btn{color:var(--accent-primary);font-weight:500;margin-left:var(--space-1);background:none;border:none;cursor:pointer;transition:color .15s ease}.link-btn:hover{color:var(--accent-primary)}.auth-tabs{display:flex;gap:var(--space-1);padding:var(--space-1);background-color:var(--bg-primary);border-radius:var(--radius-md);margin-bottom:var(--space-6)}.auth-tab{flex:1;padding:var(--space-2-5) var(--space-4);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-size:var(--text-95);font-weight:500;cursor:pointer;transition:background-color .15s ease,color .15s ease,box-shadow .15s ease}.auth-tab:hover{color:var(--text-primary)}.auth-tab.is-active{background-color:var(--bg-calendar);color:var(--text-primary);box-shadow:var(--shadow-sm)}.auth-create-cta{margin-top:var(--space-5);padding:var(--space-4);background-color:var(--bg-primary);border-radius:var(--radius-md);border:1px solid var(--accent-primary)}.auth-create-cta p{margin:0 0 var(--space-3);font-size:var(--text-90);color:var(--text-secondary);line-height:1.4}.auth-create-cta strong{color:var(--text-primary);font-weight:600;word-break:break-all}.auth-create-cta .btn-submit{margin-top:0;padding:var(--space-2-5) var(--space-4);font-size:var(--text-95)}.legal-checkboxes{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-2);padding:var(--space-4);background-color:var(--bg-primary);border-radius:var(--radius-md)}.auth-divider{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-5) 0 var(--space-3);color:var(--text-light);font-size:var(--text-85);text-transform:uppercase;letter-spacing:.08em}.auth-form .btn-submit.btn-wobble{animation:auth-btn-wobble .8s ease-in-out}@keyframes auth-btn-wobble{0%,to{transform:translate(0)}15%{transform:translate(-8px) rotate(-2deg)}30%{transform:translate(7px) rotate(1.5deg)}45%{transform:translate(-5px) rotate(-1deg)}60%{transform:translate(3px) rotate(.8deg)}75%{transform:translate(-2px) rotate(-.3deg)}}@media(prefers-reduced-motion:reduce){.auth-form .btn-submit.btn-wobble{animation:none}}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background-color:var(--bg-primary)}.btn-google{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);background-color:var(--bg-calendar);color:var(--text-primary);border:1px solid var(--bg-primary);font-weight:500;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.btn-google:hover:not(:disabled){background-color:var(--bg-primary);border-color:var(--text-light)}.btn-google:focus-visible{outline:none;box-shadow:0 0 0 3px #4285f459}.btn-google:disabled{opacity:.7;cursor:not-allowed}.google-icon{flex-shrink:0;display:block}.checkbox-label{display:flex;align-items:flex-start;gap:var(--space-2-5);cursor:pointer;font-size:var(--text-88);color:var(--text-secondary);line-height:1.4}.checkbox-label input[type=checkbox]{margin-top:var(--space-0-5);width:16px;height:16px;accent-color:var(--accent-primary);cursor:pointer;flex-shrink:0}.checkbox-label a{color:var(--accent-primary);text-decoration:underline;text-underline-offset:2px}.checkbox-label a:hover{color:var(--accent-primary)}@media(max-width:640px){.auth-page{padding:var(--space-12) var(--space-2)}}@media(max-width:480px){.auth-container{padding:var(--space-8) var(--space-6)}.auth-header h1{font-size:var(--text-150)}}.password-input{position:relative;width:100%}.password-input .password-input__field{padding-right:44px}.password-input__toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:6px;background:transparent;color:var(--text-light, #777);cursor:pointer}.password-input__toggle:hover{color:var(--text-primary, #222)}.password-input__toggle:focus-visible{outline:2px solid #4a5d23;outline-offset:1px}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:var(--modal-overlay);display:flex;align-items:center;justify-content:center;padding:var(--space-6);z-index:1100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.recurring-delete-dialog{background-color:var(--bg-calendar);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-8);max-width:480px;width:100%;position:relative;animation:modalIn .2s ease-out}.dialog-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.dialog-header h2{font-family:Cormorant Garamond,Georgia,serif;font-size:var(--text-135);font-weight:500;color:var(--text-primary);margin:0}.warning-icon{color:var(--color-warning, #f59e0b)}.dialog-message{color:var(--text-secondary);line-height:1.6;margin-bottom:var(--space-4)}.occurrence-info{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);background-color:var(--bg-secondary);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--text-88);margin-bottom:var(--space-5);flex-wrap:wrap}.occurrence-change-btn{margin-left:auto;background:none;border:none;color:var(--color-primary);font-size:var(--text-80);cursor:pointer;text-decoration:underline;padding:var(--space-0-5) var(--space-1)}.occurrence-change-btn:hover{opacity:.8}.delete-options{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-6)}.delete-option-btn{display:block;width:100%;text-align:left;padding:var(--space-4);background-color:var(--bg-secondary);border:1px solid var(--border-color, #e5e7eb);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.delete-option-btn:hover:not(:disabled){border-color:var(--color-primary);background-color:var(--bg-hover)}.delete-option-btn:disabled{opacity:.6;cursor:not-allowed}.delete-option-btn--danger{border-color:var(--color-danger, #ef4444)}.delete-option-btn--danger:hover:not(:disabled){border-color:var(--color-danger, #ef4444);background-color:#ef44441a}.option-title{font-weight:500;color:var(--text-primary);margin-bottom:var(--space-1)}.option-desc{font-size:var(--text-80);color:var(--text-light);line-height:1.4}.dialog-actions{display:flex;justify-content:flex-end}.occurrence-picker-dialog{background-color:var(--bg-calendar);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-8);max-width:440px;width:100%;position:relative;animation:modalIn .2s ease-out;max-height:80vh;display:flex;flex-direction:column}@keyframes modalIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.occurrence-picker-dialog .dialog-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.occurrence-picker-dialog .dialog-header h2{font-family:Cormorant Garamond,Georgia,serif;font-size:var(--text-135);font-weight:500;color:var(--text-primary);margin:0}.occurrence-picker-dialog .dialog-message{color:var(--text-secondary);line-height:1.6;margin-bottom:var(--space-5)}.occurrence-list{display:flex;flex-direction:column;gap:var(--space-2);overflow-y:auto;max-height:320px;margin-bottom:var(--space-6);padding-right:var(--space-1)}.occurrence-option{display:flex;align-items:center;gap:var(--space-3);width:100%;text-align:left;padding:var(--space-3) var(--space-4);background-color:var(--bg-secondary);border:1px solid var(--border-color, #e5e7eb);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.occurrence-option:hover{border-color:var(--color-primary);background-color:var(--bg-hover)}.occurrence-option--selected{border-color:var(--color-primary);background-color:#8b5cf61a}.occurrence-date{font-weight:500;color:var(--text-primary);flex:1}.occurrence-time{color:var(--text-secondary);font-size:var(--text-88)}.occurrence-check{color:var(--color-primary);font-weight:600}.no-occurrences{color:var(--text-secondary);text-align:center;padding:var(--space-6)}.success-dialog{text-align:center}.success-dialog-icon{display:block;margin:0 auto var(--space-4);color:var(--free-text)}.success-dialog-message{color:var(--text-secondary);line-height:1.6;margin-bottom:var(--space-4)}.success-dialog-details{background-color:var(--bg-secondary);border-radius:var(--radius-sm);padding:var(--space-3-5) var(--space-4-5);font-size:var(--text-92);color:var(--text-secondary);line-height:1.5;text-align:left;margin:0 0 var(--space-6);border-left:3px solid var(--accent-secondary)}.success-dialog-cta{background-color:var(--bg-secondary);border-radius:var(--radius-sm);padding:var(--space-3-5) var(--space-4-5);margin:0 0 var(--space-6);border-left:3px solid var(--accent-primary);display:flex;flex-direction:column;align-items:center;gap:var(--space-3);text-align:center}.success-dialog-cta-text{margin:0;font-size:var(--text-95);color:var(--text-primary);line-height:1.5}.success-dialog-cta-button{width:auto}.status-badge{display:inline-flex;align-items:center;gap:5px;padding:var(--space-1) var(--space-2-5);border-radius:12px;font-size:var(--text-75);font-weight:600}.status-badge--approved{background-color:#7a8a5f26;color:var(--free-text)}.status-badge--pending{background-color:#c6a05c26;color:var(--pending-text)}.status-badge--draft{background-color:#7a7a7a1f;color:var(--text-secondary)}.status-badge--trashed{background-color:#c17a7a26;color:var(--error)}.event-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background-color:var(--bg-calendar);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:box-shadow .15s ease}.event-card:hover{box-shadow:var(--shadow-md)}.event-card--has-unread{box-shadow:0 0 0 2px var(--error),var(--shadow-sm)}.event-card--has-conversation{box-shadow:0 0 0 4px var(--accent-primary),var(--shadow-sm)}.event-card--has-unread.event-card--has-conversation{box-shadow:0 0 0 2px var(--error),0 0 0 6px var(--accent-primary),var(--shadow-sm)}.event-card-unread-indicator{display:inline-block;width:12px;height:12px;border-radius:50%;background-color:var(--error);margin-left:var(--space-2);vertical-align:middle;flex-shrink:0}.event-card-conversation-bubble{display:inline-block;margin-left:var(--space-2);padding:var(--space-1) var(--space-3);font-size:var(--text-75);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#fff;background-color:var(--accent-primary);border:2px solid var(--accent-primary);border-radius:999px;flex-shrink:0;vertical-align:middle}.event-card-clarification-ribbon{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin:-12px -16px 12px;padding:var(--space-1-5) var(--space-4);background-color:var(--accent-primary);color:#fff;font-size:var(--text-75);font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md)}.event-card-clarification-ribbon svg{flex-shrink:0}.event-card-content{display:grid;grid-template-columns:56px 88px minmax(0,1fr);align-items:center;gap:var(--space-3-5);text-decoration:none;color:inherit;min-width:0;padding:var(--space-1) 0}.event-card-content:hover{background-color:var(--bg-secondary);border-radius:var(--radius-sm)}.event-card-date{display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--text-secondary)}.event-card-weekday{font-size:var(--text-70);text-transform:uppercase;letter-spacing:.03em}.event-card-day{font-family:var(--font-heading);font-size:var(--text-140);font-weight:600;color:var(--text-primary);line-height:1.1}.event-card-month{font-size:var(--text-70);text-transform:uppercase;letter-spacing:.03em}.event-card-image-wrapper{width:88px;height:66px;border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0;background-color:var(--bg-secondary)}.event-card-image{width:100%;height:100%;object-fit:cover;display:block}.event-card-body{display:flex;flex-direction:column;gap:var(--space-1-5);min-width:0}.event-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.event-card-header h3{font-family:Cormorant Garamond,Georgia,serif;font-size:var(--text-110);font-weight:500;color:var(--text-primary);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-card-badges{display:flex;gap:var(--space-1-5);align-items:center;flex-shrink:0;flex-wrap:wrap}.event-card-meta{display:flex;flex-wrap:wrap;gap:var(--space-3-5);font-size:var(--text-80);color:var(--text-secondary)}.event-card-meta-item{display:inline-flex;align-items:center;gap:var(--space-1)}.event-card-meta-item--email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:240px}.event-card-actions{display:flex;gap:var(--space-1);align-items:center;flex-shrink:0}.event-card-action{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-2);width:36px;height:36px}.event-card-action.btn-sm{padding:var(--space-2)}.event-card-actions .btn-subtle-danger{margin-left:0}@media(max-width:768px){.event-card-content{grid-template-columns:44px minmax(0,1fr);gap:var(--space-2-5)}.event-card-image-wrapper{display:none}.event-card-header h3{font-size:var(--text-100)}.event-card-actions{grid-column:1 / -1;flex-wrap:wrap;padding-top:var(--space-2);border-top:1px solid var(--border);justify-content:flex-end}}.event-card-revision-hint{font-weight:600}.event-card-revision-hint--edited{color:var(--pending-text)}.event-list-page{max-width:1000px;margin:0 auto;padding:var(--space-12) var(--space-6)}.event-list-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-8)}.event-list-header h1{font-family:Cormorant Garamond,Georgia,serif;font-size:var(--text-200);font-weight:500;color:var(--text-primary)}.event-list-header p{color:var(--text-secondary);margin-top:var(--space-1)}.event-list-section{margin-bottom:var(--space-12)}.event-list-section-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.event-list-section-header h2{font-family:Cormorant Garamond,Georgia,serif;font-size:var(--text-135);font-weight:500;color:var(--text-primary);margin:0}.event-list-section h2{font-family:Cormorant Garamond,Georgia,serif;font-size:var(--text-135);font-weight:500;color:var(--text-primary);margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.event-list-filters{display:flex;align-items:center;gap:var(--space-2)}.event-list-filter-label{font-size:var(--text-85);color:var(--text-secondary);font-weight:500}.event-list-filter-select{padding:var(--space-1-5) var(--space-3);border-radius:8px;border:1px solid var(--border);background-color:var(--bg-calendar);font-size:var(--text-85);color:var(--text-primary);cursor:pointer}.event-list-filter-select:focus{outline:2px solid var(--accent-primary);outline-offset:1px}.event-list-empty{background-color:var(--bg-calendar);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-16) var(--space-8);text-align:center}.empty-icon{width:80px;height:80px;margin:0 auto var(--space-6);display:flex;align-items:center;justify-content:center;background-color:var(--bg-secondary);border-radius:50%;color:var(--text-light)}.event-list-empty h2{font-family:Cormorant Garamond,Georgia,serif;font-size:var(--text-150);font-weight:500;color:var(--text-primary);margin-bottom:var(--space-2)}.event-list-empty p{color:var(--text-secondary);margin-bottom:var(--space-6);max-width:360px;margin-left:auto;margin-right:auto}.event-list-rows{display:flex;flex-direction:column;gap:var(--space-2-5)}.event-list-empty-small{background-color:var(--bg-calendar);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-8);text-align:center}.event-list-empty-small p{color:var(--text-secondary);margin:0}.btn-sm{padding:var(--space-2) var(--space-3-5);font-size:var(--text-85)}.btn-success{background-color:#7a8a5f26;color:var(--free-text);border:none}.btn-success:hover:not(:disabled){background-color:#7a8a5f40}.btn-success:disabled{opacity:.6;cursor:not-allowed}.badge{flex-shrink:0;padding:var(--space-1) var(--space-2-5);border-radius:12px;font-size:var(--text-75);font-weight:600}.badge--region{background-color:#10b9811a;color:#047857}.badge--recurring{display:inline-flex;align-items:center;gap:var(--space-1);background-color:#3b82f61a;color:#3b82f6}@media(max-width:640px){.event-list-header{flex-direction:column;gap:var(--space-5)}.event-list-header .btn{width:100%;justify-content:center}}.event-list-accordion{margin-bottom:var(--space-4, 1rem)}.event-list-accordion>summary{cursor:pointer;font-weight:600;font-size:var(--text-110);padding:.5rem 0}.event-list-retention-note{margin:.25rem 0 .75rem;font-size:var(--text-90);opacity:.75}.review-section{margin-bottom:var(--space-10)}.review-section-header{margin-bottom:var(--space-4)}.review-section-title{display:flex;align-items:center;gap:var(--space-2-5);margin:0 0 var(--space-1);font-family:var(--font-heading);font-size:var(--text-140);font-weight:600;color:var(--text-primary)}.review-section-count{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 var(--space-2-5);border-radius:999px;background-color:var(--bg-secondary);color:var(--text-primary);font-size:var(--text-85);font-weight:700}.review-section--pending .review-section-count{background-color:var(--pending-bg);color:var(--pending-text)}.review-section--approved .review-section-count{background-color:var(--free-bg);color:var(--free-text)}.review-section-hint{margin:0;color:var(--text-secondary);font-size:var(--text-90)}.review-subsection{margin-top:var(--space-4)}.review-subsection-title{display:inline-flex;align-items:center;gap:var(--space-2);margin:0 0 var(--space-3);font-family:var(--font-heading);font-size:var(--text-105);font-weight:600;color:var(--text-primary)}.review-subsection-title--klaerung{color:var(--accent-primary)}.review-subsection-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 var(--space-2);border-radius:999px;background-color:var(--bg-secondary);color:var(--text-secondary);font-size:var(--text-80);font-weight:700}.review-subsection-title--klaerung .review-subsection-count{background-color:var(--accent-primary);color:#fff}.review-subsection-hint{margin:-4px 0 12px;color:var(--text-secondary);font-size:var(--text-85)}.review-subsection-empty{margin:0 0 var(--space-3);padding:var(--space-3) var(--space-4);border:1px dashed var(--border);border-radius:var(--radius-md);background-color:var(--bg-secondary);color:var(--text-secondary);font-size:var(--text-90)}@media(max-width:600px){.review-section-title{font-size:var(--text-120)}}.review-toggle{display:inline-flex;align-items:center;gap:inherit;padding:0;border:none;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.review-toggle:focus-visible{outline:2px solid var(--accent-primary);outline-offset:4px;border-radius:var(--radius-md)}.review-toggle-chevron{transition:transform .15s ease;transform:rotate(-90deg)}.review-toggle-chevron.is-open{transform:rotate(0)}.review-section [hidden]{display:none}.review-region-filter{display:flex;align-items:center;gap:.5rem;margin:0 0 1rem}.review-region-filter select{padding:.4rem .6rem;border:1px solid var(--border-color, #d1d5db);border-radius:8px;background:var(--bg-card, #fff);color:inherit}.review-image-check{margin:var(--space-2) 0 var(--space-1);padding-left:var(--space-1)}.review-image-check-toggle{display:inline-flex;align-items:center;gap:var(--space-1-5)}.review-reject-reason{margin:0 0 var(--space-6) 0;padding:var(--space-3) var(--space-4);border-left:3px solid var(--accent-primary);background:var(--bg-secondary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--text-primary);font-size:var(--text-90);line-height:1.5;white-space:pre-wrap;max-height:40vh;overflow-y:auto}.messages-tab-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:var(--space-3);padding:var(--space-12) var(--space-4);background:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary)}.messages-tab-empty svg{color:var(--text-light)}.messages-tab-empty h2{margin:0;font-size:var(--text-125);font-weight:600;color:var(--text-primary)}.messages-tab-empty p{margin:0;max-width:420px}.messages-tab-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.messages-tab-item{position:relative;display:flex;align-items:center;gap:var(--space-3-5);padding:var(--space-3) var(--space-5);background:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);text-decoration:none;color:inherit;transition:all .15s ease}.messages-tab-item:hover,.messages-tab-item:focus-visible{background:var(--bg-secondary);border-color:var(--accent-primary);outline:none}.messages-tab-item-image-wrapper{flex-shrink:0;width:64px;height:64px;border-radius:8px;overflow:hidden;background-color:var(--bg-secondary)}.messages-tab-item-image{width:100%;height:100%;object-fit:cover;display:block}.messages-tab-item-body{display:flex;flex-direction:column;gap:var(--space-1);min-width:0;flex:1;padding-right:56px}.messages-tab-item-title{font-weight:500;font-size:var(--text-100);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.messages-tab-item-meta{font-size:var(--text-85);color:var(--text-secondary)}.messages-tab-item-badge{position:absolute;top:14px;right:16px;display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;padding:0 var(--space-2);border-radius:999px;background:var(--error);color:#fff;font-size:var(--text-75);font-weight:700;line-height:1}.messages-tab-item--unread .messages-tab-item-title{font-weight:600}.feedback-tab-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-4)}.feedback-item{background-color:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5) var(--space-6);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:var(--space-3)}.feedback-item--new{border-left:4px solid var(--accent-secondary)}.feedback-item--read{border-left:4px solid var(--text-light);opacity:.85}.feedback-item--archived{border-left:4px solid var(--border);opacity:.6}.feedback-item-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.feedback-item-meta{display:flex;align-items:center;gap:var(--space-2-5);flex-wrap:wrap}.feedback-item-status{display:inline-block;padding:3px 10px;border-radius:999px;font-size:var(--text-75);font-weight:600;text-transform:uppercase;letter-spacing:.04em;background-color:var(--accent-secondary);color:#fff}.feedback-item--read .feedback-item-status{background-color:var(--text-light)}.feedback-item--archived .feedback-item-status{background-color:var(--border);color:var(--text-secondary)}.feedback-item-time{font-size:var(--text-85);color:var(--text-secondary)}.feedback-item-actions{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}.feedback-item-action{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-1-5) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--bg-secondary);color:var(--text-primary);cursor:pointer;font-size:var(--text-85);font-weight:500;transition:all .15s ease}.feedback-item-action:hover:not(:disabled){background-color:var(--border)}.feedback-item-action:disabled{opacity:.5;cursor:not-allowed}.feedback-item-action--danger{color:var(--error);background-color:transparent;border-color:transparent}.feedback-item-action--danger:hover:not(:disabled){background-color:#bf5b4e1f}.feedback-item-description{margin:0;white-space:pre-wrap;word-wrap:break-word;font-size:var(--text-100);line-height:1.5;color:var(--text-primary)}.feedback-item-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-3) var(--space-6);margin:0}.feedback-item-details>div{display:flex;flex-direction:column;gap:var(--space-0-5)}.feedback-item-details dt{font-size:var(--text-70);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-light)}.feedback-item-details dd{margin:0;font-size:var(--text-90);color:var(--text-primary);word-break:break-word}.feedback-item-details a{color:var(--accent-primary)}.feedback-item-useragent{font-size:var(--text-75)!important;color:var(--text-secondary)!important;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.feedback-item-screenshot-thumb{display:inline-flex;flex-direction:column;align-items:flex-start;gap:var(--space-1-5);padding:0;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;overflow:hidden;max-width:280px;transition:border-color .15s ease,transform .15s ease}.feedback-item-screenshot-thumb:hover:not(:disabled){border-color:var(--accent-primary);transform:translateY(-1px)}.feedback-item-screenshot-thumb:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.feedback-item-screenshot-thumb img{display:block;max-width:100%;max-height:140px;object-fit:contain;background-color:var(--bg-secondary)}.feedback-item-screenshot-missing{display:inline-block;padding:var(--space-2) var(--space-3);font-size:var(--text-85);color:var(--error);background-color:#bf5b4e14;border:1px dashed var(--error);border-radius:var(--radius-sm)}.feedback-item-screenshot-hint{font-size:var(--text-80);font-weight:500;color:var(--accent-primary);padding:var(--space-1-5) var(--space-2-5);width:100%;text-align:left}.feedback-lightbox{max-width:960px;padding:var(--space-6);display:flex;flex-direction:column;align-items:stretch;gap:var(--space-4)}.feedback-lightbox-image{display:block;width:100%;max-height:75vh;object-fit:contain;background-color:var(--bg-secondary);border-radius:var(--radius-sm)}.feedback-lightbox-download{align-self:flex-end}.feedback-tab-summary{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-4);font-size:var(--text-85);color:var(--text-secondary)}.feedback-tab-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-12) var(--space-6);color:var(--text-secondary);background-color:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md)}.feedback-tab-empty h2{font-family:var(--font-heading);font-size:var(--text-140);font-weight:500;margin:var(--space-3) 0 var(--space-2);color:var(--text-primary)}.feedback-tab-empty p{margin:0}.feedback-tab-error{background-color:#bf5b4e1a;color:var(--error);padding:var(--space-4);border-radius:var(--radius-md)}@media(max-width:600px){.feedback-item{padding:var(--space-4)}.feedback-item-header{flex-direction:column;align-items:stretch}.feedback-item-actions{justify-content:flex-end}}.color-picker{display:flex;flex-direction:column;gap:var(--space-2)}.color-picker-preview-row{display:flex;align-items:flex-start;gap:var(--space-4)}.color-picker-native-wrap{position:relative;display:inline-block;width:72px;height:72px;cursor:pointer;flex-shrink:0}.color-picker-native{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:none;background:transparent;cursor:pointer;opacity:0}.color-picker-preview{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid var(--border);box-shadow:var(--shadow-sm);transition:border-color .15s ease}.color-picker-native-wrap:hover .color-picker-preview,.color-picker-native:focus-visible+.color-picker-preview{border-color:var(--text-primary)}.color-picker-hex-wrap{flex:1;display:flex;flex-direction:column;gap:var(--space-1)}.color-picker-hex-label{font-size:var(--text-85);font-weight:500;color:var(--text-secondary);margin:0}.color-picker-hex{width:100%;padding:var(--space-2-5) var(--space-3-5);border-radius:var(--radius-sm);border:1px solid var(--border);background-color:var(--bg-calendar);color:var(--text-primary);font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:var(--text-95);text-transform:uppercase;transition:border-color .15s ease,box-shadow .15s ease}.color-picker-hex:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-soft)}.color-picker-hex--invalid{border-color:var(--error)}.color-picker-hex--invalid:focus{border-color:var(--error);box-shadow:0 0 0 3px #bf5b4e2e}.color-picker-hint{font-size:var(--fs-eyebrow);color:var(--text-light);margin:0}.color-picker-hex--invalid+.color-picker-hint{color:var(--error)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.category-edit-dialog{max-width:520px;padding:var(--space-8) var(--space-8) var(--space-6)}.category-edit-dialog-header{margin-bottom:var(--space-5);padding-right:var(--space-8)}.category-edit-dialog-header h2{font-family:var(--font-heading);font-size:var(--fs-section);color:var(--heading-color);line-height:1.15;margin:0}.category-edit-dialog-body{display:flex;flex-direction:column;gap:var(--space-5);margin-bottom:var(--space-6)}.category-edit-dialog-label{display:block;margin-bottom:var(--space-1-5);font-size:var(--text-90);font-weight:500;color:var(--text-secondary)}.category-edit-dialog-error{margin-top:var(--space-1-5);color:var(--error);font-size:var(--text-85)}.category-edit-dialog-actions{display:flex;justify-content:flex-end;gap:var(--space-3)}.categories-tab{display:flex;flex-direction:column;gap:var(--space-5)}.categories-tab-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-6);flex-wrap:wrap}.categories-tab-description{margin:0;max-width:60ch;color:var(--text-secondary);font-size:var(--text-95);line-height:1.5}.categories-tab-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.category-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3-5) var(--space-4-5);border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--bg-calendar);transition:border-color .15s ease;position:relative}.category-row:hover{border-color:var(--text-light)}.category-row--busy{cursor:progress;opacity:.7}.category-row[data-drop-before]{box-shadow:0 -3px 0 0 var(--accent-primary)}.category-row[data-drop-after]{box-shadow:0 3px 0 0 var(--accent-primary)}.category-row-drag-handle{display:inline-flex;align-items:center;justify-content:center;color:var(--text-light);cursor:grab;flex-shrink:0;-webkit-user-select:none;user-select:none;touch-action:none}.category-row-drag-handle:active{cursor:grabbing}.category-row-swatch{width:36px;height:36px;border-radius:50%;flex-shrink:0;box-shadow:inset 0 0 0 2px #fff6}.category-row-info{flex:1;display:flex;flex-direction:column;gap:var(--space-0-5);min-width:0}.category-row-name{display:inline-flex;align-items:center;gap:var(--space-1-5);font-weight:600;color:var(--text-primary);font-size:var(--text-100)}.category-row-meta{font-size:var(--fs-eyebrow);color:var(--text-light);letter-spacing:.02em}.category-row-actions{display:flex;gap:var(--space-2);flex-shrink:0}.category-row-reorder{display:flex;flex-direction:column;gap:var(--space-0-5);flex-shrink:0}.category-row-reorder-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:22px;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background-color:transparent;color:var(--text-secondary);cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.category-row-reorder-btn:hover:not(:disabled){background-color:var(--bg-secondary);color:var(--text-primary);border-color:var(--text-light)}.category-row-reorder-btn:disabled{opacity:.35;cursor:not-allowed}.category-row-action{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-85);font-weight:500;color:var(--text-secondary);background-color:transparent;transition:background-color .15s ease,color .15s ease;cursor:pointer}.category-row-action:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.category-row-action--danger{color:var(--error)}.category-row-action--danger:hover{background-color:#bf5b4e1a;color:var(--error)}.categories-tab-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-12) var(--space-6);text-align:center;color:var(--text-secondary);background-color:var(--bg-calendar);border:1px dashed var(--border);border-radius:var(--radius-md)}.categories-tab-empty h2{margin:var(--space-2) 0 0;font-family:var(--font-heading);font-size:var(--text-150);color:var(--heading-color)}.categories-tab-empty p{margin:0;max-width:40ch}.categories-tab-error{padding:var(--space-4);border-radius:var(--radius-md);background-color:#bf5b4e14;color:var(--error)}@media(max-width:640px){.category-row{flex-wrap:wrap;padding:var(--space-3) var(--space-3-5)}.category-row-info{flex-basis:calc(100% - 96px)}.category-row-actions{flex-basis:100%;justify-content:flex-end}}.theme-info-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:var(--modal-overlay);display:flex;align-items:center;justify-content:center;padding:var(--space-6);z-index:1100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.theme-info-dialog{background-color:var(--bg-calendar);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:560px;width:100%;max-height:90vh;overflow-y:auto;position:relative;padding:var(--space-8) var(--space-7) var(--space-6)}.theme-info-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-light);background:none;border:none;cursor:pointer;transition:background-color .15s ease,color .15s ease}.theme-info-close:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.theme-info-header{display:flex;align-items:center;gap:var(--space-2-5);margin-bottom:var(--space-5);color:var(--accent-primary)}.theme-info-header h2{margin:0;font-family:var(--font-heading);font-size:var(--text-160);color:var(--heading-color)}.theme-info-meta{display:grid;grid-template-columns:max-content 1fr;column-gap:var(--space-4);row-gap:var(--space-2-5);margin:0 0 var(--space-5);padding:var(--space-4);background-color:var(--bg-secondary);border-radius:var(--radius-md);align-items:center}.theme-info-meta dt{font-size:var(--text-85);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.theme-info-meta dd{margin:0;display:flex;align-items:center;gap:var(--space-2-5);flex-wrap:wrap;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--text-90);color:var(--text-primary);word-break:break-all}.theme-info-swatch{display:inline-block;width:24px;height:24px;border-radius:50%;border:1px solid var(--border);flex-shrink:0;box-shadow:inset 0 0 0 2px #ffffff4d}.theme-info-usage h3{margin:0 0 var(--space-2-5);font-family:var(--font-heading);font-size:var(--text-120);color:var(--heading-color)}.theme-info-usage ul{margin:0;padding-left:var(--space-5);display:flex;flex-direction:column;gap:var(--space-1-5);color:var(--text-secondary);line-height:1.5}.theme-info-usage p{margin:0;color:var(--text-secondary);line-height:1.5}.theme-info-usage code{background-color:var(--bg-secondary);padding:1px 6px;border-radius:4px;font-size:.85em}@media(max-width:480px){.theme-info-dialog{padding:var(--space-6) var(--space-5) var(--space-5)}.theme-info-meta{grid-template-columns:1fr;row-gap:var(--space-1)}}.save-theme-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#16181973;z-index:1100;display:flex;align-items:center;justify-content:center;padding:var(--space-6)}.save-theme-dialog{position:relative;background-color:var(--bg-calendar);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:520px;padding:var(--space-7);display:flex;flex-direction:column;gap:var(--space-4-5)}.save-theme-close{position:absolute;top:12px;right:12px;background:transparent;border:none;color:var(--text-light);cursor:pointer;padding:var(--space-1-5);border-radius:var(--radius-sm);transition:background-color .15s ease,color .15s ease}.save-theme-close:hover:not(:disabled){background-color:var(--bg-secondary);color:var(--text-primary)}.save-theme-close:disabled{opacity:.4;cursor:not-allowed}.save-theme-header h2{margin:0 0 var(--space-1-5);font-family:var(--font-heading);font-size:var(--text-140);color:var(--heading-color)}.save-theme-header p{margin:0;color:var(--text-secondary);font-size:var(--text-90);line-height:1.5}.save-theme-body{display:flex;flex-direction:column;gap:var(--space-4)}.save-theme-field{display:flex;flex-direction:column;gap:var(--space-1)}.save-theme-label{font-size:var(--text-85);font-weight:600;color:var(--text-primary)}.save-theme-required{color:var(--error);margin-left:var(--space-0-5)}.save-theme-field input,.save-theme-field textarea{width:100%;padding:var(--space-2-5) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--bg-calendar);color:var(--text-primary);font-size:var(--text-95);font-family:inherit;transition:border-color .15s ease;resize:vertical}.save-theme-field textarea{min-height:80px}.save-theme-field input:focus,.save-theme-field textarea:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-soft)}.save-theme-field input:disabled,.save-theme-field textarea:disabled{background-color:var(--bg-secondary);cursor:not-allowed}.save-theme-hint{font-size:var(--text-80);color:var(--text-light)}.save-theme-error{padding:var(--space-2-5) var(--space-3);border-radius:var(--radius-sm);background-color:#bf5b4e14;color:var(--error);font-size:var(--text-90)}.save-theme-actions{display:flex;justify-content:flex-end;gap:var(--space-2-5)}.theme-tab{display:flex;flex-direction:column;gap:var(--space-6)}.theme-tab-toolbar-text{flex:1;min-width:280px}.theme-tab-active-row{display:inline-flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background-color:var(--bg-secondary);border:1px solid var(--border);font-size:var(--text-90);flex-wrap:wrap}.theme-tab-active-label{display:inline-flex;align-items:center;gap:var(--space-1-5);color:var(--text-secondary);font-weight:500}.theme-tab-active-name{font-weight:600;color:var(--text-primary)}.theme-tab-active-name--placeholder{color:var(--text-light);font-style:italic;font-weight:500}.theme-tab-editor-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);background-color:var(--bg-calendar);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.theme-tab-editor-source{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.theme-tab-editor-source-label{font-size:var(--text-85);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.theme-tab-editor-source-value{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-1) var(--space-2-5);border-radius:var(--radius-sm);background-color:var(--accent-soft);color:var(--accent-primary-strong);font-size:var(--text-90);font-weight:600}.theme-tab-editor-source-value--active{background-color:#667c6224;color:#4a5d46}.theme-tab-editor-source-tag{font-size:var(--text-70);font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:var(--space-0-5) var(--space-1-5);border-radius:999px;background-color:#667c6229;color:#3f523c}.theme-tab-editor-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.theme-tab-success{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2-5) var(--space-3-5);border-radius:var(--radius-md);background-color:#7a8a5f24;color:#3f523c;font-size:var(--text-90);font-weight:500}.theme-tab-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-6);flex-wrap:wrap}.theme-tab-description{margin:0;max-width:60ch;color:var(--text-secondary);font-size:var(--text-95);line-height:1.5}.theme-tab-toolbar-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.theme-tab-modified-badge{display:inline-flex;align-items:center;padding:var(--space-1-5) var(--space-3);border-radius:var(--radius-sm);background-color:var(--accent-soft);color:var(--accent-primary-strong);font-size:var(--text-85);font-weight:500}.theme-tab-readonly{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background-color:var(--bg-secondary);color:var(--text-secondary);font-size:var(--text-90)}.theme-tab-error{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background-color:#bf5b4e14;color:var(--error);font-size:var(--text-90)}.theme-tab-groups{display:flex;flex-direction:column;gap:var(--space-6)}.theme-tab-group{background-color:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5)}.theme-tab-group-title{margin:0 0 var(--space-3);font-family:var(--font-heading);font-size:var(--text-125);color:var(--heading-color)}.theme-tab-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.theme-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto auto;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-3-5);border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--bg-secondary);transition:border-color .15s ease}.theme-row:hover{border-color:var(--text-light)}.theme-row--modified{border-color:var(--accent-primary);background-color:var(--accent-soft)}.theme-row-swatch{width:36px;height:36px;border-radius:50%;flex-shrink:0;box-shadow:inset 0 0 0 2px #fff6}.theme-row-info{display:flex;flex-direction:column;gap:var(--space-0-5);min-width:0}.theme-row-label{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:600;color:var(--text-primary);font-size:var(--text-95)}.theme-row-unused-badge{display:inline-block;padding:var(--space-0-5) var(--space-2);border-radius:999px;background-color:var(--bg-calendar);border:1px solid var(--border);color:var(--text-light);font-size:var(--text-70);font-weight:500;text-transform:uppercase;letter-spacing:.04em}.theme-row-name{font-size:var(--fs-eyebrow);color:var(--text-light)}.theme-row-name code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85em}.theme-row-picker{min-width:220px}.theme-row-readonly-value{display:inline-block;padding:var(--space-1-5) var(--space-2-5);border-radius:6px;background-color:var(--bg-calendar);border:1px solid var(--border);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--text-85);color:var(--text-secondary)}.theme-row-actions{display:flex;gap:var(--space-1-5);flex-shrink:0}.theme-row-action{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-85);font-weight:500;color:var(--text-secondary);background-color:transparent;transition:background-color .15s ease,color .15s ease;cursor:pointer}.theme-row-action:hover:not(:disabled){background-color:var(--bg-calendar);color:var(--text-primary)}.theme-row-action:disabled{opacity:.4;cursor:not-allowed}.theme-tab-preview{margin-top:var(--space-2)}.theme-tab-preview-card{padding:var(--space-6);border-radius:var(--radius-lg);background-color:var(--bg-calendar);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.theme-tab-preview-eyebrow{display:inline-block;font-size:var(--fs-eyebrow);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-light);margin-bottom:var(--space-1-5)}.theme-tab-preview-card h3{margin:0 0 var(--space-3);font-family:var(--font-heading);font-size:var(--text-150);color:var(--heading-color)}.theme-tab-preview-card p{margin:0 0 var(--space-4-5);color:var(--text-secondary)}.theme-tab-preview-row{display:flex;gap:var(--space-2-5);flex-wrap:wrap;margin-bottom:var(--space-4-5)}.theme-tab-preview-badges{display:flex;gap:var(--space-2);flex-wrap:wrap}.theme-tab-preview-badge{display:inline-flex;align-items:center;padding:var(--space-1-5) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-85);font-weight:500}.theme-tab-preview-badge--free{color:var(--free-text);background-color:#7a8a5f29}.theme-tab-preview-badge--fee{color:var(--fee-text);background-color:#c48e6a29}.theme-tab-preview-badge--donation{color:var(--donation-text);background-color:#8c78b429}.theme-tab-preview-badge--pending{color:var(--pending-text);background-color:#c6a05c2e}@media(max-width:900px){.theme-row{grid-template-columns:36px minmax(0,1fr);row-gap:var(--space-2-5)}.theme-row-picker{grid-column:1 / -1;min-width:0}.theme-row-actions{grid-column:1 / -1;justify-content:flex-end}.theme-tab-editor-bar{flex-direction:column}.theme-library-row{grid-template-columns:64px minmax(0,1fr);row-gap:var(--space-3)}.theme-library-row-actions{grid-column:1 / -1;justify-content:flex-end}}.theme-tab-library{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-2)}.theme-tab-library-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.theme-tab-library-title{display:inline-flex;align-items:center;gap:var(--space-2-5);margin:0;font-family:var(--font-heading);font-size:var(--text-125);color:var(--heading-color)}.theme-tab-library-count{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:24px;padding:0 var(--space-2);border-radius:999px;background-color:var(--accent-soft);color:var(--accent-primary-strong);font-family:inherit;font-size:var(--text-80);font-weight:600}.theme-tab-library-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-3);padding:var(--space-8) var(--space-5);border-radius:var(--radius-md);border:1px dashed var(--border);color:var(--text-secondary)}.theme-tab-library-empty p{max-width:48ch;margin:0;line-height:1.5}.theme-tab-library-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2-5)}.theme-library-row{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:var(--space-4);padding:var(--space-3-5) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--bg-calendar);transition:border-color .15s ease}.theme-library-row:hover{border-color:var(--text-light)}.theme-library-row--active{border-color:var(--accent-primary);background-color:var(--accent-soft)}.theme-library-row-swatch{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-1);width:56px;height:56px;flex-shrink:0;padding:var(--space-1);border-radius:var(--radius-sm);border:1px solid var(--border);background-color:var(--bg-secondary)}.theme-library-row-swatch-dot{border-radius:3px;box-shadow:inset 0 0 0 1px #fff6}.theme-library-row-info{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.theme-library-row-name-row{display:flex;align-items:center;gap:var(--space-2-5);flex-wrap:wrap}.theme-library-row-name{font-weight:600;color:var(--text-primary);font-size:var(--text-100);word-break:break-word}.theme-library-row-active-badge{display:inline-flex;align-items:center;padding:var(--space-0-5) var(--space-2);border-radius:999px;background-color:#667c622e;color:#3f523c;font-size:var(--text-70);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.theme-library-row-description{font-size:var(--text-90);color:var(--text-secondary);line-height:1.4}.theme-library-row-rename{display:flex;align-items:center;gap:var(--space-1-5)}.theme-library-row-rename input{flex:1;min-width:0;padding:var(--space-2) var(--space-2-5);border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--bg-calendar);color:var(--text-primary);font-size:var(--text-95);font-family:inherit}.theme-library-row-rename input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-soft)}.theme-library-row-rename-confirm,.theme-library-row-rename-cancel{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-sm);border:1px solid var(--border);background-color:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:background-color .15s ease,color .15s ease}.theme-library-row-rename-confirm{background-color:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.theme-library-row-rename-confirm:hover:not(:disabled),.theme-library-row-rename-cancel:hover:not(:disabled){filter:brightness(.96)}.theme-library-row-rename-confirm:disabled,.theme-library-row-rename-cancel:disabled{opacity:.4;cursor:not-allowed}.theme-library-row-rename-error{font-size:var(--text-85);color:var(--error)}.theme-library-row-actions{display:flex;gap:var(--space-1-5);flex-wrap:wrap;flex-shrink:0}.theme-library-row-action{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-85);font-weight:500;color:var(--text-secondary);background-color:transparent;transition:background-color .15s ease,color .15s ease;cursor:pointer}.theme-library-row-action:hover:not(:disabled){background-color:var(--bg-secondary);color:var(--text-primary)}.theme-library-row-action:disabled{opacity:.4;cursor:not-allowed}.theme-library-row-action--danger:hover:not(:disabled){background-color:#bf5b4e1f;color:var(--error)}.district-colors-intro{margin:0 0 var(--space-4);color:var(--text-secondary);font-size:var(--text-90)}.district-colors-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-4);margin:0;padding:0;list-style:none}.district-colors-field{display:flex;flex-direction:column;gap:var(--space-2)}.district-colors-field-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.district-colors-sample{display:inline-flex;padding:var(--space-0-5) var(--space-2);border-radius:999px;background:var(--district-color);color:#fff;font-size:var(--text-80);font-weight:600}.district-colors-reset{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-size:var(--text-80);cursor:pointer}.district-colors-more{margin-top:var(--space-4)}.district-colors-more summary{margin-bottom:var(--space-3);font-weight:600;cursor:pointer}.district-colors-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-top:var(--space-4)}.district-colors-saved,.district-colors-error{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-90)}.district-colors-error{color:var(--error)}.helper-edit-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-6)}.helper-edit-dialog{background-color:var(--bg-primary);border-radius:var(--radius-md);border:1px solid var(--border);width:100%;max-width:540px;max-height:calc(100vh - 48px);overflow-y:auto;display:flex;flex-direction:column}.helper-edit-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6) var(--space-3);border-bottom:1px solid var(--border)}.helper-edit-dialog-title{margin:0;font-size:var(--text-125);color:var(--text-primary);font-weight:600}.helper-edit-dialog-close{background:transparent;border:0;padding:var(--space-1-5);cursor:pointer;color:var(--text-secondary);border-radius:var(--radius-sm)}.helper-edit-dialog-close:hover:not(:disabled){background-color:var(--bg-secondary);color:var(--text-primary)}.helper-edit-dialog-form{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5) var(--space-6) var(--space-6)}.helper-edit-dialog-field{display:flex;flex-direction:column;gap:var(--space-1-5)}.helper-edit-dialog-label{font-size:var(--fs-eyebrow);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-light)}.helper-edit-dialog-field input,.helper-edit-dialog-field textarea{padding:var(--space-2-5) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--bg-primary);color:var(--text-primary);font:inherit;resize:vertical}.helper-edit-dialog-field input:focus,.helper-edit-dialog-field textarea:focus{outline:2px solid var(--accent-primary);outline-offset:2px}.helper-edit-dialog-hint{font-size:var(--text-80);color:var(--text-light)}.helper-edit-dialog-hint code{background-color:var(--bg-secondary);padding:1px 4px;border-radius:3px}.helper-edit-dialog-error{color:var(--error);font-size:var(--text-90);margin:0}.helper-edit-dialog-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-2)}@media(max-width:480px){.helper-edit-dialog-backdrop{padding:var(--space-3)}.helper-edit-dialog-form,.helper-edit-dialog-header{padding-left:var(--space-4);padding-right:var(--space-4)}}.helper-user-search{position:relative}.helper-user-search input{padding:var(--space-2-5) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--bg-primary);color:var(--text-primary);font:inherit;width:100%;box-sizing:border-box}.helper-user-search input:focus{outline:2px solid var(--accent-primary);outline-offset:2px}.helper-user-search-results{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:5;margin:0;padding:var(--space-1) 0;list-style:none;background-color:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 8px 20px #00000014;max-height:240px;overflow-y:auto}.helper-user-search-option{display:flex;align-items:center;gap:var(--space-2-5);padding:var(--space-2) var(--space-3);cursor:pointer}.helper-user-search-option--active,.helper-user-search-option:hover{background-color:var(--bg-secondary)}.helper-user-search-avatar{width:36px;height:36px;border-radius:50%;overflow:hidden;background-color:var(--bg-secondary);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);flex-shrink:0}.helper-user-search-avatar img{width:100%;height:100%;object-fit:cover}.helper-user-search-meta{display:flex;flex-direction:column;min-width:0}.helper-user-search-display-name{font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.helper-user-search-username{font-size:var(--text-85);color:var(--text-light)}.helper-user-search-empty{padding:var(--space-2-5) var(--space-3);color:var(--text-light);font-style:italic}.helper-edit-dialog-photo-url{display:flex;flex-direction:column;gap:var(--space-1-5);margin-top:var(--space-2)}.helper-edit-dialog-photo-url-label{font-size:var(--text-80);color:var(--text-light)}.helper-user-search-row{display:flex;gap:var(--space-2)}.helper-user-search-row input{flex:1;min-width:0}.helper-user-search-apply{white-space:nowrap;padding:0 var(--space-3);cursor:pointer}.helper-user-search-apply:disabled{cursor:not-allowed;opacity:.5}.helpers-tab{display:flex;flex-direction:column;gap:var(--space-6)}.helpers-tab-region{display:flex;flex-direction:column;align-self:flex-start;gap:var(--space-1)}.helpers-tab-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.helpers-tab-description{color:var(--text-secondary);font-size:var(--text-95);line-height:1.6;margin:0;flex:1 1 320px;max-width:720px}.helpers-tab-error{background-color:var(--bg-secondary);border:1px solid var(--error);border-radius:var(--radius-md);padding:var(--space-4);color:var(--error)}.helpers-tab-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-12) var(--space-6);background-color:var(--bg-secondary);border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--text-secondary);text-align:center}.helpers-tab-empty h2{margin:0;font-size:var(--text-115);color:var(--text-primary);font-weight:600}.helpers-tab-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.helper-row{display:grid;grid-template-columns:24px 64px 1fr auto auto;gap:var(--space-4);align-items:center;padding:var(--space-3) var(--space-4);background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md)}.helper-row--busy{opacity:.7}.helper-row-drag-handle{color:var(--text-light);display:flex;align-items:center;justify-content:center;cursor:grab}.helper-row-photo-wrap{width:56px;height:56px;border-radius:var(--radius-md);overflow:hidden;background-color:var(--bg-primary);border:1px solid var(--border);display:flex;align-items:center;justify-content:center}.helper-row-photo{width:100%;height:100%;object-fit:cover}.helper-row-photo-placeholder{font-size:var(--text-150);color:var(--text-light);font-weight:600}.helper-row-info{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.helper-row-name{display:inline-flex;align-items:center;gap:var(--space-1-5);color:var(--text-primary);font-weight:600;font-size:var(--text-105)}.helper-row-description{color:var(--text-secondary);font-size:var(--text-90);line-height:1.5}.helper-row-meta{display:flex;flex-wrap:wrap;gap:var(--space-1-5);font-size:var(--text-85)}.helper-row-meta-pill{display:inline-flex;align-items:center;gap:var(--space-1);background-color:var(--bg-primary);border:1px solid var(--border);border-radius:999px;padding:var(--space-0-5) var(--space-2-5);color:var(--text-secondary)}.helper-row-reorder{display:flex;flex-direction:column;gap:var(--space-1)}.helper-row-reorder-btn{background-color:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-1);cursor:pointer;color:var(--text-secondary)}.helper-row-reorder-btn:hover:not(:disabled){color:var(--accent-primary);border-color:var(--accent-primary)}.helper-row-reorder-btn:disabled{opacity:.4;cursor:not-allowed}.helper-row-actions{display:flex;gap:var(--space-2)}.helper-row-action{display:inline-flex;align-items:center;gap:var(--space-1);background-color:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-1-5) var(--space-2-5);color:var(--text-secondary);cursor:pointer;font-size:var(--text-85)}.helper-row-action:hover:not(:disabled){color:var(--accent-primary);border-color:var(--accent-primary)}.helper-row-action--danger:hover:not(:disabled){color:var(--error);border-color:var(--error)}@media(max-width:720px){.helper-row{grid-template-columns:56px 1fr;grid-template-areas:"photo info" "reorder actions";align-items:start}.helper-row-drag-handle{display:none}.helper-row-photo-wrap{grid-area:photo}.helper-row-info{grid-area:info}.helper-row-reorder{grid-area:reorder;flex-direction:row}.helper-row-actions{grid-area:actions;justify-content:flex-end}}.donor-edit-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#00000073;display:flex;align-items:center;justify-content:center;z-index:60;padding:var(--space-6)}.donor-edit-dialog{background-color:var(--bg-primary);border-radius:var(--radius-md);border:1px solid var(--border);width:100%;max-width:540px;max-height:calc(100vh - 48px);overflow-y:auto;display:flex;flex-direction:column}.donor-edit-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6) var(--space-3);border-bottom:1px solid var(--border)}.donor-edit-dialog-source-note{margin:var(--space-4) var(--space-6) 0;padding:var(--space-3) var(--space-3-5);background-color:var(--bg-calendar);border:1px dashed var(--border);border-radius:var(--radius-sm);font-size:var(--text-85);color:var(--text-secondary);line-height:1.4}.donor-edit-dialog-source-meta{display:inline-block;margin-top:var(--space-1);color:var(--text-light);word-break:break-all}.donor-edit-dialog-source-meta code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-80)}.donor-edit-dialog-title{margin:0;font-size:var(--text-125);color:var(--text-primary);font-weight:600}.donor-edit-dialog-close{background:transparent;border:0;padding:var(--space-1-5);cursor:pointer;color:var(--text-secondary);border-radius:var(--radius-sm)}.donor-edit-dialog-close:hover:not(:disabled){background-color:var(--bg-secondary);color:var(--text-primary)}.donor-edit-dialog-form{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5) var(--space-6) var(--space-6)}.donor-edit-dialog-field{display:flex;flex-direction:column;gap:var(--space-1-5)}.donor-edit-dialog-field--checkbox{flex-direction:row;align-items:center;gap:var(--space-2);background-color:var(--bg-secondary);padding:var(--space-2-5) var(--space-3);border-radius:var(--radius-sm)}.donor-edit-dialog-field--checkbox input[type=checkbox]{width:18px;height:18px}.donor-edit-dialog-label{font-size:var(--fs-eyebrow);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-light)}.donor-edit-dialog-field input[type=text],.donor-edit-dialog-field select,.donor-edit-dialog-field textarea{padding:var(--space-2-5) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--bg-primary);color:var(--text-primary);font:inherit;resize:vertical}.donor-edit-dialog-field input:disabled,.donor-edit-dialog-field select:disabled,.donor-edit-dialog-field textarea:disabled{opacity:.6;cursor:not-allowed}.donor-edit-dialog-field input:focus,.donor-edit-dialog-field select:focus,.donor-edit-dialog-field textarea:focus{outline:2px solid var(--accent-primary);outline-offset:2px}.donor-edit-dialog-amount-wrapper{position:relative}.donor-edit-dialog-amount-wrapper input{width:100%;padding-right:var(--space-9)}.donor-edit-dialog-amount-suffix{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--text-light);font-weight:600;pointer-events:none}.donor-edit-dialog-frequency-row{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.donor-edit-dialog-frequency-option{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-1-5) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background-color:var(--bg-primary);color:var(--text-secondary);font-size:var(--text-95)}.donor-edit-dialog-frequency-option.is-selected{border-color:var(--accent-primary);color:var(--accent-primary-strong);background-color:var(--bg-secondary)}.donor-edit-dialog-frequency-clear{background:transparent;border:0;color:var(--text-light);text-decoration:underline;cursor:pointer;font:inherit;font-size:var(--text-90)}.donor-edit-dialog-hint{font-size:var(--text-80);color:var(--text-light)}.donor-edit-dialog-error{color:var(--error);font-size:var(--text-90);margin:0}.donor-edit-dialog-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-2)}@media(max-width:480px){.donor-edit-dialog-backdrop{padding:var(--space-3)}.donor-edit-dialog-form,.donor-edit-dialog-header{padding-left:var(--space-4);padding-right:var(--space-4)}}.donors-tab{display:flex;flex-direction:column;gap:var(--space-6)}.donors-tab-region{display:flex;flex-direction:column;align-self:flex-start;gap:var(--space-1)}.donors-tab-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.donors-tab-description{color:var(--text-secondary);font-size:var(--text-95);line-height:1.6;margin:0;flex:1 1 320px;max-width:720px}.donors-tab-error{background-color:var(--bg-secondary);border:1px solid var(--error);border-radius:var(--radius-md);padding:var(--space-4);color:var(--error)}.donors-tab-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-12) var(--space-6);background-color:var(--bg-secondary);border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--text-secondary);text-align:center}.donors-tab-empty h2{margin:0;font-size:var(--text-115);color:var(--text-primary);font-weight:600}.donors-tab-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.donor-row{display:grid;grid-template-columns:24px 1fr auto auto;gap:var(--space-4);align-items:center;padding:var(--space-3) var(--space-4);background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md)}.donor-row--busy{opacity:.7}.donor-row-drag-handle{color:var(--text-light);display:flex;align-items:center;justify-content:center;cursor:grab}.donor-row-info{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.donor-row-name{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--text-primary);font-weight:600;font-size:var(--text-105)}.donor-row-tag{background-color:var(--bg-primary);border:1px solid var(--border);border-radius:999px;padding:var(--space-0-5) var(--space-2-5);color:var(--text-light);font-size:var(--text-75);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.donor-row-meta{color:var(--text-secondary);font-size:var(--text-90)}.donor-row-reorder{display:flex;flex-direction:column;gap:var(--space-1)}.donor-row-reorder-btn{background-color:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-1);cursor:pointer;color:var(--text-secondary)}.donor-row-reorder-btn:hover:not(:disabled){color:var(--accent-primary);border-color:var(--accent-primary)}.donor-row-reorder-btn:disabled{opacity:.4;cursor:not-allowed}.donor-row-actions{display:flex;gap:var(--space-2)}.donor-row-action{display:inline-flex;align-items:center;gap:var(--space-1);background-color:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-1-5) var(--space-2-5);color:var(--text-secondary);cursor:pointer;font-size:var(--text-85)}.donor-row-action:hover:not(:disabled){color:var(--accent-primary);border-color:var(--accent-primary)}.donor-row-action--danger:hover:not(:disabled){color:var(--error);border-color:var(--error)}@media(max-width:720px){.donor-row{grid-template-columns:1fr;grid-template-areas:"info" "reorder" "actions";align-items:start}.donor-row-drag-handle{display:none}.donor-row-info{grid-area:info}.donor-row-reorder{grid-area:reorder;flex-direction:row}.donor-row-actions{grid-area:actions;justify-content:flex-end}}.members-tab{display:flex;flex-direction:column;gap:var(--space-4)}.members-tab-description,.members-count{color:var(--text-secondary);margin:0}.members-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.members-toolbar select,.members-search{padding:var(--space-2) var(--space-2-5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary)}.members-search{display:flex;align-items:center;gap:var(--space-2);flex:1 1 260px}.members-search input{flex:1;border:0;background:transparent;color:inherit;outline:none;min-width:0}.members-toolbar-spacer{flex:1}.members-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-md)}.members-table{width:100%;border-collapse:collapse;font-size:var(--text-90)}.members-table th,.members-table td{padding:var(--space-2) var(--space-2-5);text-align:left;vertical-align:top;border-bottom:1px solid var(--border)}.members-sort{background:none;border:0;padding:0;font:inherit;font-weight:600;color:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:var(--space-1)}.members-verified{color:var(--success, #2e7d32);margin-left:var(--space-1);vertical-align:middle}.members-actions{white-space:nowrap}.members-error{color:var(--error);margin:0}.members-empty{padding:var(--space-8);text-align:center;background:var(--bg-secondary);border:1px dashed var(--border);border-radius:var(--radius-md)}.members-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:1000}.members-dialog{background:var(--bg-primary);color:var(--text-primary);border-radius:var(--radius-md);padding:var(--space-6);width:min(520px,100%);max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-3)}.members-dialog label:not(.members-check){display:flex;flex-direction:column;gap:var(--space-1)}.members-dialog fieldset{border:1px solid var(--border);border-radius:var(--radius-md);display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-4)}.members-check{display:inline-flex;align-items:center;gap:var(--space-1-5)}.members-dialog-actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.members-events{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.members-events-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border)}.members-events-main{flex:1;min-width:0;display:flex;flex-direction:column}.members-club-filter{display:inline-flex;align-items:center;gap:var(--space-1-5);font-size:var(--text-90);white-space:nowrap}.instagram-tab{display:flex;flex-direction:column;gap:var(--space-4)}.instagram-description,.instagram-muted{color:var(--text-secondary);margin:0}.instagram-card{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);background:var(--bg-primary)}.instagram-card h2{margin:0 0 var(--space-2);font-size:var(--text-105)}.instagram-error,.instagram-post-error{color:var(--error);margin:0;overflow-wrap:anywhere}.instagram-info{color:var(--text-secondary);margin:0}.instagram-warning{display:flex;align-items:center;gap:var(--space-2);margin:0 0 var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--accent-soft);color:var(--accent-primary-strong);font-weight:600}.instagram-switch-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.instagram-state{margin:0;font-weight:600}.instagram-state--on{color:var(--free-text)}.instagram-state--off{color:var(--text-secondary)}.instagram-switch{position:relative;flex:none;width:48px;height:28px;border:0;border-radius:14px;background:var(--border);cursor:pointer;transition:background .15s}.instagram-switch--on{background:var(--accent-primary)}.instagram-switch:disabled{opacity:.6;cursor:default}.instagram-switch-knob{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .15s}.instagram-switch--on .instagram-switch-knob{transform:translate(20px)}.instagram-facts{display:grid;grid-template-columns:max-content 1fr;gap:var(--space-1) var(--space-4);margin:0}.instagram-facts dt{color:var(--text-secondary)}.instagram-facts dd{margin:0;overflow-wrap:anywhere}.instagram-posts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.instagram-post{padding:var(--space-3) 0;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:var(--space-2)}.instagram-post:last-child{border-bottom:0}.instagram-post-main{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3)}.instagram-post-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.instagram-badge{padding:var(--space-0-5) var(--space-2-5);border-radius:999px;font-size:var(--fs-badge);font-weight:600;background:var(--chip-bg);color:var(--chip-text)}.instagram-badge--published{background:var(--free-bg);color:var(--free-text)}.instagram-badge--failed{background:#bf5b4e29;color:var(--error-hover)}.instagram-badge--skipped{background:var(--border);color:var(--text-secondary)}.instagram-carousel-slides{margin:var(--space-2) 0;padding-left:var(--space-5);color:var(--text-secondary);font-size:var(--text-90)}.instagram-caption{margin:var(--space-2) 0 0;padding:var(--space-3);white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:var(--text-85);background:var(--bg-secondary);border-radius:var(--radius-md)}.instagram-collapsible-heading{margin:0}.instagram-collapsible-toggle{display:flex;align-items:center;gap:var(--space-1-5);width:100%;padding:0;border:none;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.instagram-collapsible-panel{margin-top:var(--space-3)}.instagram-count-pill{display:inline-block;min-width:1.6em;padding:1px 8px;border:1px solid var(--border);border-radius:999px;background:var(--bg-secondary, transparent);color:var(--text-secondary);font-size:var(--text-80);font-weight:600;line-height:1.5;text-align:center}.instagram-toast{position:fixed;left:50%;bottom:var(--space-4);transform:translate(-50%);z-index:1000;display:flex;align-items:flex-start;gap:var(--space-2);width:min(90vw,36rem);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-left-width:4px;border-radius:var(--radius-md);background:var(--bg-primary);box-shadow:0 4px 16px #00000026}.instagram-toast p{margin:0;flex:1}.instagram-toast--success{border-left-color:var(--accent-primary)}.instagram-toast--error{border-left-color:var(--error);color:var(--error)}.instagram-toast-close{background:none;border:none;padding:0;cursor:pointer;color:inherit}.analytics-tab{display:flex;flex-direction:column;gap:var(--space-5)}.analytics-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.analytics-ranges{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.analytics-range{padding:var(--space-2) var(--space-4);background:var(--bg-secondary);color:var(--text-secondary);border:none;cursor:pointer;font:inherit;font-size:var(--text-90)}.analytics-range+.analytics-range{border-left:1px solid var(--border)}.analytics-range--active{background:var(--accent-primary);color:#fff}.analytics-range:focus-visible{outline:2px solid var(--accent-primary);outline-offset:-2px}.analytics-hint{margin:0;color:var(--text-secondary);font-size:var(--text-90);line-height:1.5;max-width:760px}.analytics-error{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3-5) var(--space-4);background:var(--bg-secondary);border:1px solid var(--error);border-radius:var(--radius-md);color:var(--error)}.analytics-empty{margin:0;color:var(--text-secondary);font-size:var(--text-90)}.analytics-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-3)}.analytics-kpi{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md)}.analytics-kpi-value{font-size:var(--text-180);font-weight:600;color:var(--text-primary)}.analytics-kpi-label{font-size:var(--text-85);color:var(--text-secondary)}.analytics-card{padding:var(--space-4);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);min-width:0}.analytics-card h2{margin:0 0 var(--space-3);font-size:var(--text-100);font-weight:600;color:var(--text-primary)}.analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--space-4)}.analytics-daily{display:flex;align-items:flex-end;gap:3px;height:160px}.analytics-daily-col{flex:1 1 0;min-width:0;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:var(--space-1)}.analytics-daily-bar{display:block;width:100%;background:var(--accent-primary);border-radius:3px 3px 0 0;min-height:0}.analytics-daily-day{font-size:.65rem;color:var(--text-secondary);white-space:nowrap}@media(max-width:700px){.analytics-daily-col:not(:nth-child(5n+1)) .analytics-daily-day{visibility:hidden}}.analytics-bars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.analytics-bar-row{display:grid;grid-template-columns:minmax(90px,40%) 1fr auto;align-items:center;gap:var(--space-2-5);font-size:var(--text-90)}.analytics-bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.analytics-bar-track{height:8px;background:var(--bg-primary, rgba(0, 0, 0, .06));border-radius:4px;overflow:hidden}.analytics-bar-fill{display:block;height:100%;background:var(--accent-primary);border-radius:4px}.analytics-bar-value{font-variant-numeric:tabular-nums;color:var(--text-secondary)}.analytics-region-select{padding:var(--space-2) var(--space-3);background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-md);font:inherit;font-size:var(--text-90)}.analytics-table{width:100%;border-collapse:collapse;font-size:var(--text-90)}.analytics-table th,.analytics-table td{padding:var(--space-1-5) var(--space-2);text-align:right;border-bottom:1px solid var(--border);color:var(--text-primary)}.analytics-table th:first-child{text-align:left;font-weight:500}.analytics-table thead th{font-weight:600;color:var(--text-secondary)}.analytics-card>.analytics-hint{margin-bottom:var(--space-3)}.analytics-top-events{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.analytics-event{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-primary)}.analytics-event summary{display:flex;align-items:baseline;gap:var(--space-2);padding:var(--space-2-5) var(--space-3);cursor:pointer;flex-wrap:wrap}.analytics-event summary:focus-visible{outline:2px solid var(--accent-primary);outline-offset:-2px}.analytics-event-rank{font-weight:600;color:var(--text-secondary)}.analytics-event-title{flex:1 1 200px;min-width:0;font-weight:600;color:var(--text-primary);overflow-wrap:anywhere}.analytics-event-meta{font-size:var(--text-85);color:var(--text-secondary);white-space:nowrap}.analytics-event-details{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-1) var(--space-3) var(--space-3-5)}.analytics-event-details h3{margin:0 0 var(--space-2);font-size:var(--text-90);font-weight:600;color:var(--text-primary)}.analytics-minis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-2)}.analytics-mini{display:flex;flex-direction:column;gap:var(--space-0-5);padding:var(--space-2-5) var(--space-3);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md)}.analytics-mini-value{font-size:var(--text-120);font-weight:600;color:var(--text-primary)}.analytics-mini-label{font-size:var(--text-80);color:var(--text-secondary)}.analytics-mini-note{font-size:var(--text-75);color:var(--text-secondary);opacity:.85}.analytics-event-link{display:inline-flex;align-items:center;gap:var(--space-1-5);align-self:flex-start;font-size:var(--text-90);color:var(--accent-primary)}.analytics-event-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--space-4)}.mailgun-quota-figures{margin:0 0 var(--space-2-5);font-size:var(--text-100);color:var(--text-primary)}.mailgun-quota-track{height:10px;margin-bottom:var(--space-2-5);background:var(--border);border-radius:999px;overflow:hidden}.mailgun-quota-fill{display:block;height:100%;border-radius:999px}.mailgun-quota-fill--ok{background:var(--accent-primary)}.mailgun-quota-fill--warn{background:var(--warning, #d98e04)}.mailgun-quota-fill--danger{background:var(--error)}.ledger-tab{display:flex;flex-direction:column;gap:var(--space-6)}.ledger-tab-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.ledger-tab-year{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--text-90);color:var(--text-secondary)}.ledger-tab-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.ledger-tab-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-3)}.ledger-tab-card{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4);background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md)}.ledger-tab-card-label{font-size:var(--text-80);text-transform:uppercase;letter-spacing:.06em;color:var(--text-light);font-weight:600}.ledger-tab-card strong{font-size:var(--text-125)}.ledger-tab-income{color:var(--success, var(--text-primary))}.ledger-tab-expense{color:var(--error)}.ledger-tab-error{display:flex;align-items:center;gap:var(--space-2);background-color:var(--bg-secondary);border:1px solid var(--error);border-radius:var(--radius-md);padding:var(--space-4);color:var(--error)}.ledger-tab-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-12) var(--space-6);background-color:var(--bg-secondary);border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--text-secondary);text-align:center}.ledger-tab-empty h2{margin:0;font-size:var(--text-115);color:var(--text-primary);font-weight:600}.ledger-tab-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.ledger-row{display:grid;grid-template-columns:1fr auto auto;gap:var(--space-4);align-items:center;padding:var(--space-3) var(--space-4);background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md)}.ledger-row-info{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.ledger-row-title{color:var(--text-primary);font-weight:600;overflow-wrap:anywhere}.ledger-row-meta{color:var(--text-secondary);font-size:var(--text-90)}.ledger-row-amount{font-weight:600;white-space:nowrap}.ledger-row-buttons{display:flex;gap:var(--space-2)}.ledger-row-action{display:inline-flex;align-items:center;background-color:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-1-5);cursor:pointer;color:var(--text-secondary)}.ledger-row-action:hover{color:var(--accent-primary);border-color:var(--accent-primary)}@media(max-width:480px){.ledger-row{grid-template-columns:1fr auto}.ledger-row-buttons{grid-column:1 / -1;justify-content:flex-end}}.ledger-row-attachments{display:flex;flex-wrap:wrap;gap:var(--space-1-5)}.ledger-attachment{display:inline-flex;align-items:center;gap:var(--space-1);max-width:100%;padding:var(--space-0-5) var(--space-2);background-color:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--text-85);cursor:pointer}.ledger-attachment span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ledger-attachment:hover{color:var(--accent-primary);border-color:var(--accent-primary)}.ledger-attachment.is-failed{color:var(--error);border-color:currentColor}.ledger-edit-attachments{display:flex;flex-direction:column;gap:var(--space-1-5);margin:0 0 var(--space-2);padding:0;list-style:none}.ledger-edit-attachments li{display:flex;align-items:center;gap:var(--space-2)}.ledger-edit-attachment-remove{display:inline-flex;padding:var(--space-1);background:none;border:none;color:var(--text-secondary);cursor:pointer}.ledger-edit-attachment-remove:hover{color:var(--error)}.ledger-edit-dropzone{padding:var(--space-3);border:1px dashed var(--border);border-radius:var(--radius-sm)}.email-verification-banner{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-5) var(--space-6);margin-bottom:var(--space-6);border-radius:12px;background-color:#fff8e6;border:1px solid #f0d68a;color:var(--text-primary);box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .04))}.email-verification-banner-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background-color:#f5b800;color:#fff}.email-verification-banner-body{flex:1;min-width:0}.email-verification-banner-title{margin:0 0 var(--space-1-5) 0;font-weight:600;font-size:var(--text-100);line-height:1.3;color:#5a3d00}.email-verification-banner-text{margin:0 0 var(--space-3) 0;font-size:var(--text-92);line-height:1.5;color:#6b4f12}.email-verification-banner-text strong{word-break:break-all}.email-verification-banner-feedback{margin:0 0 var(--space-3) 0;font-size:var(--text-90);line-height:1.4}.email-verification-banner-feedback--success{color:#2e7d32}.email-verification-banner-feedback--error{color:var(--error, #c17a7a)}.email-verification-banner-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.email-verification-banner-actions .btn{padding:var(--space-2) var(--space-3-5);font-size:.88rem}.nav-link--disabled{opacity:.65;cursor:pointer;border:0;background:transparent;text-align:left}.btn-disabled{opacity:.65;cursor:pointer}.event-status-mismatch-banner{position:relative;display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-5) var(--space-12) var(--space-5) var(--space-6);margin-bottom:var(--space-6);border-radius:12px;background-color:#f3f0ea;border:1px solid #e2dcd2;color:var(--text-primary);box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .04))}.event-status-mismatch-banner--approved{background-color:#eaf3ec;border-color:#b8d8bf}.event-status-mismatch-banner--trashed{background-color:#fbeae6;border-color:#e6b8ad}.event-status-mismatch-banner--draft{background-color:#f3f0ea;border-color:#e2dcd2}.event-status-mismatch-banner--missing{background-color:#f7f5f1;border-color:#e2dcd2}.event-status-mismatch-banner-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background-color:var(--bg-primary, #fdfbf7);color:var(--accent-primary, #8b7355)}.event-status-mismatch-banner--approved .event-status-mismatch-banner-icon{background-color:#2e7d32;color:#fff}.event-status-mismatch-banner--trashed .event-status-mismatch-banner-icon{background-color:#c17a7a;color:#fff}.event-status-mismatch-banner-body{flex:1;min-width:0}.event-status-mismatch-banner-title{margin:0 0 var(--space-1-5) 0;font-weight:600;font-size:var(--text-100);line-height:1.3;color:var(--text-primary)}.event-status-mismatch-banner-text{margin:0 0 var(--space-3) 0;font-size:var(--text-92);line-height:1.5;color:var(--text-secondary)}.event-status-mismatch-banner-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.event-status-mismatch-banner-actions .btn{padding:var(--space-2) var(--space-3-5);font-size:.88rem}.event-status-mismatch-banner-dismiss{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:0;border-radius:6px;color:var(--text-secondary);cursor:pointer;transition:background-color .15s ease,color .15s ease}.event-status-mismatch-banner-dismiss:hover{background-color:#0000000f;color:var(--text-primary)}.event-status-mismatch-banner-dismiss:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}@media(max-width:600px){.event-status-mismatch-banner{padding:16px 44px 16px 18px;gap:var(--space-3)}.event-status-mismatch-banner-icon{width:32px;height:32px}}.moderation-tab{display:flex;flex-direction:column;gap:var(--space-4)}.moderation-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.moderation-intro,.moderation-hint{color:var(--text-secondary);margin:0}.moderation-intro{flex:1 1 320px}.moderation-notice{margin:0;padding:var(--space-2-5) var(--space-3);border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border)}.moderation-error{color:var(--error);margin:0}.moderation-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center;background:var(--bg-secondary);border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--text-secondary)}.moderation-empty p{margin:0}.moderation-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.moderation-card{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-4);padding:var(--space-3-5) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-primary)}.moderation-card-person{display:flex;flex-direction:column;gap:var(--space-0-5);flex:1 1 200px;min-width:0}.moderation-card-name{font-weight:600}.moderation-card-email,.moderation-result-email{color:var(--text-secondary);font-size:var(--text-88);overflow-wrap:anywhere}.moderation-card-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.moderation-card-actions .btn{display:inline-flex;align-items:center;gap:var(--space-1-5)}.moderation-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-1-5);flex:1 1 160px}.moderation-chip,.moderation-result-tag{display:inline-block;padding:var(--space-0-5) var(--space-2-5);border-radius:999px;border:1px solid var(--border);background:var(--bg-secondary);font-size:var(--text-81);white-space:nowrap}.moderation-result-tag{align-self:flex-start}.moderation-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:1000}.moderation-dialog{background:var(--bg-primary);color:var(--text-primary);border-radius:var(--radius-md);padding:var(--space-6);width:min(560px,100%);max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-3)}.moderation-dialog h2{margin:0}.moderation-person-picker{display:flex;flex-direction:column;gap:var(--space-2)}.moderation-search{display:flex;flex-direction:column;gap:var(--space-1)}.moderation-search-field{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2-5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-primary)}.moderation-search-field input{flex:1;min-width:0;border:0;background:transparent;color:inherit;font:inherit;outline:none}.moderation-search-field:focus-within{outline:2px solid var(--primary, currentColor);outline-offset:1px}.moderation-results{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.moderation-results li+li{border-top:1px solid var(--border)}.moderation-result{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-2-5);width:100%;padding:var(--space-2-5) var(--space-3);border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.moderation-result:hover:not(:disabled),.moderation-result:focus-visible{background:var(--bg-secondary)}.moderation-result:disabled{cursor:not-allowed;opacity:.65}.moderation-result-name{font-weight:600}.moderation-selected{margin:0}.moderation-regions{border:1px solid var(--border);border-radius:var(--radius-md);display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:var(--space-1-5) var(--space-4);margin:0;padding:var(--space-3)}.moderation-check{display:inline-flex;align-items:center;gap:var(--space-2);min-height:32px}.moderation-inactive{color:var(--text-secondary);font-size:var(--text-81)}.moderation-dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2)}.moderation-country{grid-column:1 / -1;margin-top:var(--space-1-5);color:var(--text-secondary);font-size:var(--text-81);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.moderation-country:first-child{margin-top:0}.moderation-header-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.moderation-email-input{padding:var(--space-2) var(--space-2-5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-primary);color:inherit;font:inherit}.moderation-invites{display:flex;flex-direction:column;gap:var(--space-2)}.moderation-invites-title{margin:var(--space-4) 0 0;font-size:var(--text-100);font-weight:600}.regions-status{align-self:flex-start;padding:var(--space-0-5) var(--space-2-5);border-radius:999px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--text-81);white-space:nowrap}.regions-status--active{color:var(--text-primary);font-weight:600}.regions-facts{flex:2 1 320px;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-2) var(--space-4);margin:0;min-width:0}.regions-facts dt{color:var(--text-secondary);font-size:var(--text-81)}.regions-facts dd{margin:0;overflow-wrap:anywhere}.regions-groups{display:flex;flex-direction:column;gap:var(--space-3)}.regions-group-heading{margin:0;font-size:inherit}.regions-group-toggle{display:flex;align-items:center;gap:var(--space-2-5);width:100%;min-height:48px;padding:0 var(--space-3-5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-100);text-align:left;cursor:pointer}.regions-group-toggle:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.regions-group-name{font-weight:600}.regions-group-count{margin-left:auto;color:var(--text-secondary);font-size:var(--text-81)}.regions-group-chevron{flex-shrink:0;transition:transform .15s ease;transform:rotate(-90deg)}.regions-group-chevron--open{transform:rotate(0)}.regions-group .moderation-list{margin-top:var(--space-2-5)}@media(prefers-reduced-motion:reduce){.regions-group-chevron{transition:none}}.regions-tab>.moderation-intro{flex:0 0 auto}.region-about-field{display:flex;flex-direction:column;gap:var(--space-1);max-width:320px;margin-bottom:var(--space-4)}.region-about-section{margin-bottom:var(--space-5)}.region-about-header{max-width:480px;margin-bottom:var(--space-2)}.region-about-header img{display:block;width:100%;max-height:200px;object-fit:cover;border-radius:8px}.region-about-header-empty{color:var(--text-light)}.region-about-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.region-about-fixed-note{color:var(--text-light);margin:0 0 var(--space-2)}.region-about-reset{margin-top:var(--space-2)}.region-about-fixed{margin:0;padding-left:var(--space-5);color:var(--text-light)}.admin-page{max-width:1200px;margin:0 auto;padding:var(--space-8) var(--space-6) var(--space-16)}.admin-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap}.admin-page-header h1{margin:0;font-family:var(--font-heading);font-size:var(--fs-section);color:var(--text-primary);line-height:1.1}.admin-page-header p{margin:var(--space-1-5) 0 0;color:var(--text-secondary)}.admin-page-tabs{display:flex;align-items:center;gap:var(--space-1);border-bottom:1px solid var(--border);margin-bottom:var(--space-6);flex-wrap:wrap}.admin-page-group{position:relative}.admin-page-group-menu{position:fixed;top:var(--menu-top, 0);left:var(--menu-left, 0);z-index:20;min-width:220px;padding:var(--space-1-5);display:flex;flex-direction:column;background:var(--bg-card, #fff);border:1px solid var(--border);border-radius:var(--radius-md, 8px);box-shadow:0 8px 24px #0000001f}.admin-page-group-menu[hidden]{display:none}.admin-page-group-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2-5) var(--space-3);background:transparent;border:0;border-radius:var(--radius-sm, 6px);cursor:pointer;color:var(--text-secondary);font:inherit;text-align:left;white-space:nowrap}.admin-page-group-item>span:not(.admin-page-tab-badge){flex:1}.admin-page-group-item:hover{background:var(--bg-hover, rgba(0, 0, 0, .05));color:var(--text-primary)}.admin-page-group-item--active{color:var(--text-primary);font-weight:600}.admin-page-group-item:focus-visible{outline:2px solid var(--accent-primary);outline-offset:-2px}.admin-page-tab{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:transparent;border:0;border-bottom:2px solid transparent;cursor:pointer;color:var(--text-secondary);font:inherit;font-weight:500;font-size:var(--text-95);white-space:nowrap;transition:color .15s ease,border-color .15s ease}.admin-page-tab:hover{color:var(--text-primary)}.admin-page-tab--active{color:var(--text-primary);border-bottom-color:var(--accent-primary);font-weight:600}.admin-page-tab:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:var(--radius-sm)}.admin-page-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--error);color:#fff;font-size:var(--text-70);font-weight:700;line-height:1}@media(max-width:600px){.admin-page{padding:var(--space-5) var(--space-2) var(--space-12)}.admin-page-header{flex-direction:column;align-items:stretch}.admin-page-tab{padding:var(--space-2-5) var(--space-3);font-size:var(--text-90)}.admin-page-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.admin-page-tabs::-webkit-scrollbar{display:none}.admin-page-group,.admin-page-tab{flex-shrink:0}}.instagram-consent{margin-top:var(--space-6);padding:var(--space-4);background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md)}.instagram-consent .checkbox-label{display:flex;align-items:flex-start;gap:var(--space-2-5);cursor:pointer;font-size:var(--text-90);color:var(--text-primary);line-height:1.5}.instagram-consent .checkbox-label input[type=checkbox]{margin-top:3px;width:18px;height:18px;accent-color:var(--accent-primary);cursor:pointer;flex-shrink:0}.instagram-consent .checkbox-label span{font-weight:400}.instagram-consent-hint{margin:var(--space-2) 0 0 var(--space-7);font-size:var(--text-80);color:var(--text-secondary);line-height:1.4}.instagram-consent-handle-edit{border:none;background:none;padding:0 var(--space-1);color:var(--accent-primary);cursor:pointer;font:inherit}.instagram-consent-handle-input{font:inherit;padding:0 var(--space-0-5);border:none;border-bottom:1px solid var(--accent-primary);background:transparent;color:inherit;min-width:6ch}.instagram-image-accordion{margin-top:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-4);background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md)}.instagram-image-accordion>summary{cursor:pointer;font-weight:600;font-size:var(--text-95);color:var(--text-primary)}.instagram-image-picker{display:flex;flex-direction:column;gap:var(--space-3-5);margin-top:var(--space-3)}.instagram-image-picker-warning{display:flex;align-items:flex-start;gap:var(--space-2);margin:0;padding:var(--space-2-5) var(--space-3);font-size:var(--text-85);line-height:1.45;color:var(--text-primary);background-color:var(--bg-primary);border:1px solid var(--accent-primary);border-radius:var(--radius-sm)}.instagram-image-picker-warning svg{flex-shrink:0;margin-top:var(--space-0-5);color:var(--accent-primary)}.instagram-image-picker-choices{margin:0;padding:0;border:0}.instagram-image-picker-choices legend{margin-bottom:var(--space-2);font-size:var(--text-90);font-weight:500}.instagram-image-picker-options{display:flex;flex-wrap:wrap;gap:var(--space-2)}.instagram-image-picker-option{width:72px;height:72px;padding:0;overflow:hidden;cursor:pointer;background:var(--bg-primary);border:2px solid var(--border);border-radius:var(--radius-sm)}.instagram-image-picker-option img{display:block;width:100%;height:100%;object-fit:cover}.instagram-image-picker-option.is-selected{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-primary)}.instagram-image-picker-option:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.instagram-image-picker-zoom{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-90)}.instagram-image-picker-zoom input[type=range]{flex:1;min-width:0}.instagram-image-picker-zoom output{min-width:3.5em;text-align:right;font-variant-numeric:tabular-nums}.instagram-image-picker-empty{margin:var(--space-3) 0 0;font-size:var(--text-85);color:var(--text-secondary)}.instagram-image-picker-upload{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.instagram-image-picker-upload .btn{display:inline-flex;align-items:center;gap:var(--space-1-5)}.instagram-image-picker-hint{flex-basis:100%;margin:0;font-size:var(--text-85);color:var(--text-secondary)}.instagram-image-picker-upload .error-text{flex-basis:100%;margin:0}.instagram-post-preview{display:flex;flex-direction:column;gap:var(--space-2-5);margin-top:var(--space-3);max-width:220px}.instagram-preview-notes{display:flex;flex-direction:column;gap:var(--space-1-5);margin-top:var(--space-2)}.instagram-preview-notes .instagram-image-picker-hint{margin:0}.instagram-preview-mode{display:flex;gap:var(--space-1)}.instagram-preview-mode-btn{flex:1 1 0;padding:var(--space-1) var(--space-1-5);border:1px solid var(--border);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--text-70);cursor:pointer}.instagram-preview-mode-btn.is-active{background:var(--text-primary);border-color:var(--text-primary);color:var(--bg-primary)}.instagram-post-preview-tile{position:relative;aspect-ratio:4 / 5;overflow:hidden;border-radius:var(--radius-md);background:#1d1a1a}.instagram-post-preview-tile img{width:100%;height:100%;object-fit:cover;display:block}.instagram-post-preview-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:space-between;padding:8%;color:#fff;font-size:var(--text-70);background:linear-gradient(180deg,#00000073,#0000000d 35%,#000c)}.instagram-post-preview-overlay--post{justify-content:flex-end;background:linear-gradient(180deg,#0000 50%,#000c)}.instagram-post-preview-chip{align-self:flex-start;padding:var(--space-0-5) var(--space-2);border:1px solid rgba(255,255,255,.75);border-radius:999px;font-size:.55rem;letter-spacing:.08em;text-transform:uppercase}.instagram-post-preview-text{display:flex;flex-direction:column;gap:var(--space-0-5)}.instagram-post-preview-text strong{font-family:Cormorant Garamond,serif;font-size:var(--text-115);line-height:1.05;margin-bottom:var(--space-1)}.instagram-post-preview--editing{max-width:320px}.admin-cover-preview{display:flex;flex-direction:column;gap:var(--space-2-5);margin-top:var(--space-3);max-width:480px}.admin-cover-preview-tile{position:relative;overflow:hidden;width:100%;aspect-ratio:16 / 9;border-radius:var(--radius-md);background-color:var(--bg-secondary)}.admin-cover-preview-tile img{width:100%;height:100%;object-fit:cover}.admin-cover-preview-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.admin-cover-preview-unsaved{margin:0;font-size:var(--text-85);color:var(--text-secondary)}.event-form-container{max-width:640px;min-width:0;margin:0 auto;background-color:var(--bg-calendar);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-10)}.event-form{display:flex;flex-direction:column;min-width:0}@media(min-width:641px){.form-row.fee-row{grid-template-columns:110px 110px minmax(0,1fr) minmax(0,1fr);gap:var(--space-2) var(--space-3)}}.recurring-info-banner{display:flex;align-items:flex-start;gap:var(--space-2-5);padding:var(--space-3) var(--space-4);background-color:#3b82f614;border:1px solid rgba(59,130,246,.2);border-radius:var(--radius-sm);color:#3b82f6;font-size:var(--text-90);margin-bottom:var(--space-5)}.recurring-info-banner svg{flex-shrink:0;margin-top:1px}.form-section-header{margin-bottom:var(--space-4)}.input-hint{display:block;font-size:var(--text-75);color:var(--text-secondary);margin-top:var(--space-1)}input:disabled{opacity:.6;cursor:not-allowed;background-color:var(--bg-secondary)}.form-actions-error{display:flex;align-items:center;justify-content:center;gap:var(--space-1-5);color:var(--error);font-size:var(--text-85);text-align:center;margin:0 0 var(--space-3)}.form-actions .btn-wobble{animation:form-btn-wobble .8s ease-in-out}@keyframes form-btn-wobble{0%,to{transform:translate(0)}15%{transform:translate(-8px) rotate(-2deg)}30%{transform:translate(7px) rotate(1.5deg)}45%{transform:translate(-5px) rotate(-1deg)}60%{transform:translate(3px) rotate(.8deg)}75%{transform:translate(-2px) rotate(-.3deg)}}@media(prefers-reduced-motion:reduce){.form-actions .btn-wobble{animation:none}}.resubmit-warning{background-color:#c6a05c1f;border:1px solid rgba(198,160,92,.3);border-radius:var(--radius-sm);padding:var(--space-4);margin-bottom:var(--space-4);color:var(--text-primary)}.resubmit-warning p{margin:0;font-size:var(--text-90);line-height:1.5}.form-actions{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-2);width:100%}.form-actions .btn-subtle-danger{flex:0 0 auto;width:auto;padding:var(--space-2)}.form-actions .btn-secondary{flex:0 0 auto;width:auto}.form-actions .btn-primary{flex:1;min-width:0}.uploading-text{display:block;font-size:var(--text-80);color:var(--text-secondary);margin-top:var(--space-2)}.custom-dates-list{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-2)}.custom-date-row{display:flex;align-items:center;gap:var(--space-2)}.custom-date-row input[type=date]{flex:1;min-width:0}.custom-date-remove-btn{display:flex;align-items:center;justify-content:center;padding:var(--space-2);background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;color:var(--text-secondary);flex-shrink:0}.custom-date-remove-btn:hover{background:var(--error);color:#fff;border-color:var(--error)}.custom-date-add-btn{margin-top:var(--space-1)}@media(max-width:640px){.event-form-page{padding:var(--space-12) var(--space-2)}.event-form-container{padding:var(--space-6) var(--space-5)}.form-row{grid-template-columns:minmax(0,1fr)}.form-actions{flex-direction:column}.form-actions .btn-secondary,.form-actions .btn-primary{width:100%}.form-actions .btn-danger{width:auto;align-self:center}}.field-hint{display:block;margin-top:var(--space-1);font-size:var(--text-85);color:var(--text-muted, #6b7280)}.link-button{display:block;margin-top:var(--space-1-5);padding:0;background:none;border:none;color:var(--color-primary, #5c6b3f);font-size:var(--text-85);text-decoration:underline;cursor:pointer}.city-select--error .kategorie__control{border-color:var(--error, #c0392b)}.city-option-bezirk{color:var(--text-light);font-size:.85em}.rich-text-view{color:var(--text-secondary);line-height:1.7;white-space:pre-wrap}.rich-text-view>p{margin:0 0 var(--space-3)}.rich-text-view>p:last-child{margin-bottom:0}.rich-text-view strong{font-weight:600;color:var(--text-primary)}.rich-text-view em,.rich-text-view i{font-style:italic}.rich-text-view ul,.rich-text-view ol{margin:0 0 var(--space-3);padding-left:var(--space-6)}.rich-text-view ul{list-style:disc}.rich-text-view ol{list-style:decimal}.rich-text-view li{margin-bottom:var(--space-1)}.rich-text-view li:last-child{margin-bottom:0}.rich-text-view a{color:var(--accent-primary);text-decoration:underline;text-decoration-color:var(--accent-soft);text-underline-offset:3px}.rich-text-view a:hover{color:var(--accent-primary-hover);text-decoration-color:currentColor}.rich-text-view img{display:block;max-width:100%;height:auto;margin:var(--space-3) 0;border-radius:var(--radius-sm)}.rich-text-view--truncated{white-space:pre-wrap}.event-form-page{min-height:calc(100vh - 72px);padding:var(--space-12) var(--space-6);background:linear-gradient(180deg,var(--bg-primary) 0%,var(--bg-secondary) 100%)}.event-form-container{max-width:640px;min-width:0;margin:0 auto;background-color:var(--bg-calendar);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-10);scroll-margin-top:80px}.event-form-header{margin-bottom:var(--space-8)}.event-form-header h1{font-family:Cormorant Garamond,Georgia,serif;font-size:var(--text-175);font-weight:500;color:var(--text-primary);margin-top:var(--space-4)}.back-btn{padding:var(--space-2) var(--space-4);font-size:var(--text-90)}.wizard-step-indicator{display:flex;justify-content:space-between;margin-bottom:var(--space-8);padding:0 var(--space-2)}.wizard-step{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);flex:1;position:relative}.wizard-step:not(:last-child):after{content:"";position:absolute;top:16px;left:calc(50% + 20px);width:calc(100% - 40px);height:2px;background-color:var(--border)}.wizard-step.completed:not(:last-child):after{background-color:var(--accent-primary)}.wizard-step-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background-color:var(--bg-secondary);border:2px solid var(--border);color:var(--text-secondary);transition:all .2s ease;z-index:1}.wizard-step.active .wizard-step-icon,.wizard-step.completed .wizard-step-icon{background-color:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.wizard-step-title{font-size:var(--text-75);color:var(--text-secondary);text-align:center;max-width:80px}.wizard-step.active .wizard-step-title{color:var(--accent-primary);font-weight:600}.wizard-step.completed .wizard-step-title{color:var(--text-primary)}.wizard-step-content{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-4)}.form-row>.form-group{min-width:0}.fee-section{display:flex;flex-direction:column;gap:var(--space-7);margin-bottom:var(--space-6)}.fee-section .form-group{margin-bottom:0}.fee-section input,.fee-section select{width:100%;min-height:56px;padding:0 var(--space-4);font-size:var(--text-105);border:1.5px solid var(--border);border-radius:var(--radius-md);background-color:#fff;transition:border-color .15s ease,box-shadow .15s ease}.fee-section input:hover,.fee-section select:hover{border-color:var(--accent-primary)}.fee-section input:focus,.fee-section select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #c48e6a40}.fee-section label{font-weight:500}.fee-amount-row,.fee-unit-row{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.fee-hint{margin:0;font-size:var(--text-95);line-height:1.4;color:var(--text-secondary)}.fee-unit-block .input-info{margin-bottom:var(--space-3);font-size:var(--text-95)}@media(min-width:641px){.fee-amount-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:var(--space-6);align-items:end}.fee-hint{padding-bottom:var(--space-3-5)}.fee-unit-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-6)}}.form-section-divider{margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--border)}.form-section-header{margin-bottom:var(--space-5)}.form-section-title{font-family:Cormorant Garamond,Georgia,serif;font-size:var(--text-125);font-weight:500;color:var(--text-primary);margin:0 0 var(--space-1)}.form-section-hint{font-size:var(--text-85);color:var(--text-secondary);margin:0}.radio-group{display:flex;flex-flow:row wrap;gap:var(--space-3)}.radio-label{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease;flex:1;justify-content:center}.radio-label input{display:none}.radio-label span{font-weight:500;color:var(--text-secondary)}.radio-label.active{border-color:var(--accent-primary);background-color:#c48e6a14}.radio-label.active span{color:var(--accent-primary)}.radio-label:hover:not(.active){background-color:var(--bg-secondary)}textarea{resize:vertical;min-height:120px}.input-error{border-color:var(--error)!important}.input-label-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-1) var(--space-2);min-width:0}.input-label-row label{margin-bottom:0}.input-info{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-80);color:var(--text-secondary);min-width:0}.submit-error{text-align:center;margin-bottom:var(--space-4)}.wizard-actions-error{display:flex;align-items:center;justify-content:center;gap:var(--space-1-5);color:var(--error);font-size:var(--text-85);text-align:center;margin:0 0 var(--space-3)}.wizard-actions{display:flex;gap:var(--space-3);justify-content:space-between;margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--border)}.wizard-actions .btn-wobble{animation:wizard-btn-wobble .8s ease-in-out}@keyframes wizard-btn-wobble{0%,to{transform:translate(0)}15%{transform:translate(-8px) rotate(-2deg)}30%{transform:translate(7px) rotate(1.5deg)}45%{transform:translate(-5px) rotate(-1deg)}60%{transform:translate(3px) rotate(.8deg)}75%{transform:translate(-2px) rotate(-.3deg)}}@media(prefers-reduced-motion:reduce){.wizard-actions .btn-wobble{animation:none}}.wizard-actions .btn-secondary{flex:0 0 auto;width:auto}.wizard-actions .btn-primary{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.btn-greyed-out{opacity:.6;cursor:not-allowed}.btn-greyed-out:hover{transform:none;box-shadow:none}.wizard-actions .btn-primary.btn-greyed-out:hover{background-color:var(--accent-primary);color:#fff}.wizard-actions .btn-secondary.btn-greyed-out:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.image-upload-area{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8);border:2px dashed var(--border);border-radius:var(--radius-md);cursor:pointer;color:var(--text-secondary);transition:all .15s ease}.image-upload-area:hover{border-color:var(--accent-primary);background-color:#c48e6a0d}.image-upload-area.drag-over{border-color:var(--accent-primary);background-color:#c48e6a1f;border-style:solid}.image-hint{margin:var(--space-2) 0 0;padding:var(--space-2-5) var(--space-3);background-color:var(--bg-secondary);border-left:3px solid var(--accent-primary);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--text-85);line-height:1.5}.image-upload-area span{font-size:var(--text-88)}.image-preview-container{position:relative;display:block;max-width:fit-content}.image-preview{max-width:100%;max-height:200px;border-radius:var(--radius-md);object-fit:cover}.upload-progress{margin-top:var(--space-2-5)}.upload-progress-bar{width:100%;height:6px;background:var(--border);border-radius:999px;overflow:hidden}.upload-progress-fill{height:100%;background:var(--accent-primary);transition:width .2s ease-out}.upload-progress-text{display:block;font-size:var(--text-80);color:var(--text-secondary);margin-top:var(--space-1-5)}:is(.kategorie-select,.city-select){min-height:44px}:is(.kategorie-select,.city-select) .kategorie__control{border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--bg-calendar);min-height:44px}:is(.kategorie-select,.city-select) .kategorie__control:focus,:is(.kategorie-select,.city-select) .kategorie__control--is-focused{border-color:var(--accent-primary);box-shadow:0 0 0 3px #c48e6a26}:is(.kategorie-select,.city-select) .kategorie__placeholder{color:var(--text-light)}:is(.kategorie-select,.city-select) .kategorie__input{color:var(--text-primary)}:is(.kategorie-select,.city-select) .kategorie__single-value{color:var(--accent-primary);font-size:var(--text-95)}:is(.kategorie-select,.city-select) .kategorie__dropdown-indicator{color:var(--text-light)}:is(.kategorie-select,.city-select) .kategorie__clear-indicator{color:var(--text-light)}:is(.kategorie-select,.city-select) .kategorie__menu{background-color:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);z-index:100}:is(.kategorie-select,.city-select) .kategorie__menu-list{padding:var(--space-1)}:is(.kategorie-select,.city-select) .kategorie__option{border-radius:6px;padding:var(--space-2) var(--space-3);color:var(--text-primary)}:is(.kategorie-select,.city-select) .kategorie__option--is-selected{background-color:#c48e6a1f;color:var(--accent-primary)}:is(.kategorie-select,.city-select) .kategorie__option--is-focused{background-color:var(--bg-secondary)}.summary-card{background-color:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--space-5)}.summary-section{padding:var(--space-4) 0;border-bottom:1px solid var(--border)}.summary-section:first-child{padding-top:0}.summary-section:last-child{border-bottom:none;padding-bottom:0}.summary-section h4{font-size:var(--text-85);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0 0 var(--space-2)}.summary-section p{margin:var(--space-1) 0;color:var(--text-primary)}.summary-section p strong{font-size:var(--text-110)}.summary-description{font-size:var(--text-90);color:var(--text-secondary)}.summary-image{margin-top:var(--space-3)}.summary-image-label{margin:0 0 var(--space-2);font-size:var(--text-85);color:var(--text-secondary)}.summary-image .event-tile{max-width:320px}.summary-focal-actions{margin-top:var(--space-3);display:flex;justify-content:flex-start}.summary-focal-picker{margin-top:var(--space-3)}.rights-confirmation{margin-top:var(--space-6);padding:var(--space-4);background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md)}.rights-confirmation .checkbox-label{display:flex;align-items:flex-start;gap:var(--space-2-5);cursor:pointer;font-size:var(--text-90);color:var(--text-primary);line-height:1.5}.rights-confirmation .checkbox-label input[type=checkbox]{margin-top:3px;width:18px;height:18px;accent-color:var(--accent-primary);cursor:pointer;flex-shrink:0}.rights-confirmation .checkbox-label span{font-weight:400}@media(max-width:640px){.event-form-page{padding:var(--space-12) var(--space-2)}.event-form-container{padding:var(--space-6) var(--space-5)}.wizard-step-indicator{padding:0}.wizard-step-title{display:none}.wizard-step:not(:last-child):after{left:calc(50% + 16px);width:calc(100% - 32px)}.form-row{grid-template-columns:minmax(0,1fr)}.wizard-actions{flex-direction:column-reverse}.wizard-actions .btn-secondary,.wizard-actions .btn-primary{width:100%}.radio-group{flex-direction:column}.radio-label{justify-content:flex-start}}.legal-page{max-width:720px;margin:0 auto;padding:48px 24px 80px}.legal-updated{font-size:var(--text-85);color:var(--text-light);margin-bottom:var(--space-2)}.legal-title{font-size:var(--text-250);color:var(--text-primary);margin-bottom:var(--space-8);font-weight:500}.legal-content{background:var(--bg-calendar);border-radius:var(--radius-md);padding:var(--space-10);border:1px solid var(--border)}.legal-content section{margin-bottom:var(--space-8)}.legal-content section:last-child{margin-bottom:0}.legal-content h2{font-size:var(--text-120);color:var(--accent-primary);margin-bottom:var(--space-3);font-weight:600;font-family:var(--font-body)}.legal-content p{color:var(--text-secondary);line-height:1.8;font-size:var(--text-95)}.legal-content .legal-paragraph{margin-bottom:var(--space-3)}.legal-content .legal-paragraph:last-child{margin-bottom:0}.legal-content .legal-list{list-style:disc;margin:0 0 var(--space-3) 0;padding-left:var(--space-6);color:var(--text-secondary);line-height:1.8;font-size:var(--text-95)}.legal-content .legal-list:last-child{margin-bottom:0}.legal-content .legal-list li{margin-bottom:var(--space-1)}.legal-content .legal-list li:last-child{margin-bottom:0}.legal-content strong{font-weight:600;color:var(--text-primary)}.legal-content .legal-subheading{font-size:var(--text-105);color:var(--text-primary);margin:var(--space-6) 0 var(--space-3);font-weight:600;font-family:var(--font-body)}.legal-content .legal-subheading:first-child{margin-top:0}.legal-content .legal-subsubheading{font-size:var(--text-100);color:var(--text-primary);margin:var(--space-5) 0 var(--space-2-5);font-weight:600;font-family:var(--font-body)}.legal-content .legal-subsubheading:first-child{margin-top:0}.legal-content .legal-subsubsubheading{font-size:var(--text-95);color:var(--text-primary);margin:var(--space-4) 0 var(--space-2);font-weight:600;font-family:var(--font-body)}.legal-content .legal-subsubsubheading:first-child{margin-top:0}.legal-content .legal-link{color:var(--accent-primary);text-decoration:underline;word-break:break-word}.legal-content .legal-link:hover{opacity:.8}.legal-footer{margin-top:var(--space-8);display:flex;justify-content:center}@media(max-width:640px){.legal-page{padding:var(--space-8) var(--space-2) var(--space-16)}.legal-title{font-size:var(--text-200)}.legal-content{padding:var(--space-6)}}.legal-content .legal-details{margin:var(--space-3) 0 0}.legal-content .legal-details summary{cursor:pointer;font-weight:600}.legal-content .legal-details .legal-list{margin-top:var(--space-2)}.legal-content .legal-people{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(calc(var(--space-16) * 3),1fr));gap:var(--space-4)}.legal-content .legal-person{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md)}.legal-content .legal-person-photo{width:100%;max-width:calc(var(--space-16) * 2);aspect-ratio:1;object-fit:cover;object-position:50% 30%;border-radius:50%}.legal-content .legal-person-info{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.legal-content .legal-person-info p{margin:0;line-height:1.4}.legal-content .legal-person-role{font-size:var(--text-85);color:var(--text-light)}.legal-content .legal-person-name{font-size:var(--text-105);font-weight:600;color:var(--text-primary)}.district-badge{display:inline-flex;align-items:center;flex-shrink:0;width:fit-content;padding:var(--space-0-5) var(--space-2);border-radius:999px;background:var(--district-color, var(--text-secondary));color:#fff;font-size:var(--text-80);font-weight:600;line-height:1.4}.event-messages{margin-top:var(--space-4);background:var(--bg-secondary, #f5f0e8);border:1px solid var(--border, #e8e0d5);border-radius:12px;padding:var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.event-messages-header{display:flex;align-items:center;gap:var(--space-2-5);color:var(--text-primary, #3d3530)}.event-messages-header h2{margin:0;font-size:var(--text-115);font-family:Cormorant Garamond,Georgia,serif;font-weight:500}.event-messages-hint{margin-left:auto;display:inline-flex;align-items:center;gap:var(--space-1);background:#7d9b8a2e;color:#4f6a5b;border-radius:999px;font-size:var(--text-75);padding:var(--space-0-5) var(--space-2-5);font-weight:500}.event-messages-thread{max-height:360px;overflow-y:auto;padding:var(--space-1) 0;display:flex;flex-direction:column}.event-messages-empty{color:var(--text-secondary, #7a6f68);font-size:var(--text-90);padding:var(--space-4) var(--space-2);text-align:center}.event-messages-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.event-message{max-width:85%;padding:var(--space-2-5) var(--space-3-5);border-radius:14px;background:#fff;border:1px solid var(--border, #e8e0d5);box-shadow:0 1px 2px #00000008}.event-message--mine{align-self:flex-end;background:#efe6d7;border-color:#d8c8af}.event-message--admin.event-message--theirs{background:#e8f0e9;border-color:#c8d8cb}.event-message-meta{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-1);font-size:var(--text-75);color:var(--text-secondary, #7a6f68)}.event-message-author{font-weight:600;color:var(--text-primary, #3d3530)}.event-message-text{margin:0;word-wrap:break-word;font-size:var(--text-95);line-height:1.4;color:var(--text-primary, #3d3530)}.event-messages-composer{display:flex;flex-direction:column;gap:var(--space-2);border-top:1px solid var(--border, #e8e0d5);padding-top:var(--space-3)}.event-messages-composer textarea{width:100%;border-radius:8px;border:1px solid var(--border, #e8e0d5);background:#fff;padding:var(--space-2-5) var(--space-3);font-family:inherit;font-size:var(--text-95);resize:vertical;min-height:70px;color:var(--text-primary, #3d3530);box-sizing:border-box}.event-messages-composer textarea:focus{outline:none;border-color:var(--accent-primary, #8b7355);box-shadow:0 0 0 2px #8b73552e}.event-messages-composer-footer{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);justify-content:flex-end}.event-messages-rejection-select{max-width:100%;padding:var(--space-1-5) var(--space-2-5);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-primary, #fff);color:var(--text-primary, #3d3530);font:inherit;font-size:var(--text-85)}.event-messages-rejection-hint{margin:0;font-size:var(--text-85);color:var(--text-secondary, #7a6f68)}.event-messages-rejection-toggle{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-85);color:var(--text-secondary, #7a6f68)}.event-message-kind{font-size:var(--text-75);color:var(--text-secondary, #7a6f68);font-style:italic}.event-messages-count{font-size:var(--text-75);color:var(--text-light, #a89f98);margin-right:auto}.event-messages-error{color:var(--error, #c17a7a);font-size:var(--text-85)}.event-message-text p{margin:0 0 .5em}.event-message-text p:last-child{margin-bottom:0}.event-message-text img{max-width:100%;height:auto;border-radius:8px}.event-message-footer{display:flex;justify-content:flex-end;align-items:center;gap:var(--space-2-5);margin-top:var(--space-1);font-size:var(--text-75);color:var(--text-secondary, #7a6f68)}.event-message-edit-btn{display:inline-flex;align-items:center;gap:var(--space-1);background:none;border:none;padding:var(--space-0-5) 0;font:inherit;color:var(--text-secondary, #7a6f68);cursor:pointer;text-decoration:underline}.event-message-edit{display:flex;flex-direction:column;gap:var(--space-2)}.event-history{margin-top:var(--space-4);background:var(--bg-secondary, #f5f0e8);border:1px solid var(--border, #e8e0d5);border-radius:12px;padding:var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.event-history-header{display:flex;align-items:center;gap:var(--space-2-5);color:var(--text-primary, #3d3530)}.event-history-header h2{margin:0;font-size:var(--text-115);font-family:Cormorant Garamond,Georgia,serif;font-weight:500}.event-history-hint{margin-left:auto;background:#7d9b8a2e;color:#4f6a5b;border-radius:999px;font-size:var(--text-75);padding:var(--space-0-5) var(--space-2-5);font-weight:500}.event-history-empty{color:var(--text-secondary, #7a6f68);font-size:var(--text-90);margin:0}.event-history-list,.event-history-changes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.event-history-entry{border-left:3px solid var(--accent-primary, #7d9b8a);padding-left:var(--space-3-5)}.event-history-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-1) var(--space-3);font-size:var(--text-85);color:var(--text-secondary, #7a6f68)}.event-history-meta strong{color:var(--text-primary, #3d3530)}.event-history-status{margin:var(--space-1-5) 0 0;font-size:var(--text-90)}.event-history-changes{margin-top:var(--space-2);gap:var(--space-2)}.event-history-field{font-size:var(--text-75);text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary, #7a6f68)}.event-history-diff,.event-history-simple{margin:var(--space-0-5) 0 0;font-size:var(--text-92);line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.event-history del{background:#c8463c26;color:#a33a30;text-decoration:line-through}.event-history ins{background:#5a966433;color:#2f6b3d;text-decoration:none}.reactable{display:flex;flex-direction:column;align-items:flex-start;min-width:0;max-width:100%}.reactable--end{align-items:flex-end}.reactable-row{display:flex;align-items:center;gap:var(--space-1);min-width:0;max-width:100%}.reactable--end .reactable-row{flex-direction:row-reverse}.reactable-bubble{min-width:0;touch-action:manipulation}.reaction-trigger{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:28px;height:28px;border:0;border-radius:50%;background:transparent;color:var(--text-light);cursor:pointer;opacity:0}.reactable:hover .reaction-trigger,.reactable:focus-within .reaction-trigger,.reaction-trigger[aria-expanded=true]{opacity:1}.reaction-trigger:hover,.reaction-trigger:focus-visible{color:var(--text-primary);background:var(--bg-secondary)}.reaction-picker{display:inline-flex;align-items:center;gap:var(--space-0-5);margin-top:var(--space-1);padding:3px 4px;border:1px solid var(--border);border-radius:999px;background:var(--bg-primary);box-shadow:var(--shadow-md)}.reaction-option{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 var(--space-1);border:0;border-radius:999px;background:transparent;color:var(--text-secondary);font-size:var(--text-135);line-height:1;cursor:pointer;touch-action:manipulation}.reaction-option:hover,.reaction-option:focus-visible{background:var(--bg-secondary)}.reaction-option--mine{background:var(--accent-soft)}.reaction-option--copy{font-size:var(--text-75);border-left:1px solid var(--border);border-radius:0 999px 999px 0;padding:0 var(--space-2)}.reaction-copied{white-space:nowrap}.reaction-pills{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:3px}.reaction-pill{display:inline-flex;align-items:center;gap:3px;min-height:26px;padding:1px 8px;border:1px solid var(--border);border-radius:999px;background:var(--bg-primary);color:var(--text-secondary);font-size:var(--text-85);line-height:1;cursor:pointer;touch-action:manipulation}.reaction-pill:disabled{cursor:default}.reaction-pill:not(:disabled):hover,.reaction-pill:focus-visible{border-color:var(--accent-primary)}.reaction-pill--mine{border-color:var(--accent-primary);background:var(--accent-soft);color:var(--accent-primary-strong);font-weight:600}.reaction-count{font-size:var(--text-75)}@media(hover:none){.reactable-bubble{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.reactable:hover .reaction-trigger{opacity:0}.reaction-trigger:focus-visible,.reaction-trigger[aria-expanded=true]{opacity:1}}@media(prefers-reduced-motion:no-preference){.reaction-picker{animation:reaction-pop .14s ease-out}.reaction-pill{transition:background-color .12s ease,border-color .12s ease}.reaction-option:active,.reaction-pill:active{transform:scale(.92)}}@keyframes reaction-pop{0%{opacity:0;transform:translateY(4px) scale(.96)}to{opacity:1;transform:none}}.emoji-picker{position:absolute;bottom:calc(100% + 8px);left:0;z-index:20;width:min(340px,calc(100vw - 32px));background:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);overflow:hidden}.emoji-picker-tabs{display:flex;border-bottom:1px solid var(--border);background:var(--bg-secondary)}.emoji-picker-tab{flex:1;min-height:44px;border:0;background:transparent;font-size:var(--text-125);cursor:pointer;border-bottom:2px solid transparent}.emoji-picker-tab--active{background:var(--bg-calendar);border-bottom-color:var(--accent-primary)}.emoji-picker-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:var(--space-0-5);padding:var(--space-2);max-height:220px;overflow-y:auto}.emoji-picker-item{min-height:38px;border:0;border-radius:var(--radius-sm);background:transparent;font-size:var(--text-140);line-height:1;cursor:pointer}.emoji-picker-item:hover,.emoji-picker-item:focus-visible{background:var(--accent-soft)}.emoji-picker-search{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);color:var(--text-light)}.emoji-picker-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--text-primary);font:inherit;font-size:var(--text-100)}.emoji-picker-note{grid-column:1 / -1;margin:var(--space-2) 0;text-align:center;color:var(--text-secondary);font-size:var(--text-90)}.online-dot{position:absolute;right:0;bottom:0;width:14px;height:14px;border-radius:50%;border:2px solid var(--bg-calendar, #fff);box-sizing:border-box;pointer-events:none}.online-dot--online{background:#2e9e57}.online-dot--offline{background:var(--error)}.member-card-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--modal-overlay)}.member-card{position:relative;width:min(340px,100%);padding:var(--space-7) var(--space-6) var(--space-6);border-radius:var(--radius-lg);background:var(--bg-calendar);box-shadow:var(--shadow-lg);text-align:center}.member-card-close{position:absolute;top:8px;right:8px;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:transparent;color:var(--text-secondary);cursor:pointer}.member-card-avatar{display:inline-flex;align-items:center;justify-content:center;width:88px;height:88px;border-radius:50%;object-fit:cover;overflow:hidden}.member-card-avatar--fallback{background:var(--accent-soft);color:var(--accent-primary-strong);font-size:var(--text-200);font-weight:600}.member-card-name{margin:var(--space-3) 0 var(--space-4);font-family:var(--font-heading);overflow-wrap:anywhere}.member-card-actions{display:flex;flex-direction:column;gap:var(--space-2-5)}.member-card-note{margin:0;color:var(--text-secondary);font-size:var(--text-90)}.member-card-avatar-wrap{position:relative;display:inline-flex}.member-card-avatar-wrap .online-dot{width:18px;height:18px;right:4px;bottom:4px}.member-card-avatar-wrap .member-badge{right:var(--space-1);bottom:var(--space-1)}.member-card-avatar-wrap .member-badge~.online-dot.online-dot{top:var(--space-1)}.page-container.chat-page{padding:var(--space-8) var(--space-6) var(--space-12);max-width:820px;margin:0 auto;width:100%;box-sizing:border-box}.chat-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.chat-header h1{margin:0;font-family:var(--font-heading)}.chat-header p{margin:var(--space-0-5) 0 0;color:var(--text-secondary);font-size:var(--text-90)}.chat-header-icon{color:var(--accent-primary);flex-shrink:0}.chat-box{position:relative;background:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.chat-list{list-style:none;margin:0;padding:var(--space-4);height:min(60vh,560px);min-height:280px;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-3-5);overscroll-behavior:contain}.chat-state{color:var(--text-secondary);text-align:center;padding:var(--space-6) var(--space-2)}.chat-unverified{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-md)}.chat-older{text-align:center}.chat-message{display:flex;gap:var(--space-2-5);align-items:flex-start}.chat-message--pending{opacity:.6}.chat-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0;overflow:hidden}.chat-avatar--fallback{display:inline-flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent-primary-strong);font-weight:600}.chat-bubble-wrap{min-width:0;max-width:min(560px,calc(100% - 46px))}.chat-meta{display:flex;align-items:baseline;gap:var(--space-2);margin-bottom:var(--space-0-5)}.chat-author{font-weight:600;font-size:var(--text-88);overflow-wrap:anywhere}.chat-time{color:var(--text-light);font-size:var(--text-75);white-space:nowrap}.chat-bubble{background:var(--bg-secondary);border-radius:4px var(--radius-md) var(--radius-md) var(--radius-md);padding:var(--space-2) var(--space-3);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.45}.chat-bubble a{color:var(--accent-primary-strong);text-decoration:underline}.chat-bubble--emoji{background:transparent;padding:0;font-size:2.2rem;line-height:1.2}.chat-bubble--own{background:var(--accent-soft);border-radius:var(--radius-md) 4px var(--radius-md) var(--radius-md)}.chat-bubble--emoji.chat-bubble--own{background:transparent}.chat-message--own{justify-content:flex-end}.chat-message--own .chat-bubble-wrap{display:flex;flex-direction:column;align-items:flex-end;max-width:min(560px,85%)}.chat-message--own .chat-meta{justify-content:flex-end}.chat-actions{display:flex;gap:var(--space-3);margin-top:var(--space-0-5)}.chat-action{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) 0;min-height:28px;border:0;background:transparent;color:var(--text-light);font-size:var(--text-75);cursor:pointer}.chat-action:hover,.chat-action:focus-visible{color:var(--text-primary)}.chat-action--danger:hover,.chat-action--danger:focus-visible{color:var(--error)}.chat-jump{position:absolute;left:50%;bottom:12px;transform:translate(-50%);display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-2) var(--space-3-5);border:0;border-radius:999px;background:var(--accent-primary-strong);color:#fff;font-size:var(--text-85);box-shadow:var(--shadow-md);cursor:pointer}.chat-notice{margin:var(--space-3) 0 0;padding:var(--space-2-5) var(--space-3-5);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-primary);font-size:var(--text-90)}.chat-form{position:relative;margin-top:var(--space-3)}.chat-suggestions{position:absolute;left:52px;right:0;bottom:100%;margin-bottom:var(--space-1);z-index:15;list-style:none;margin:0;padding:var(--space-1);max-width:420px;background:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.chat-suggestion{display:flex;align-items:center;gap:var(--space-2-5);min-height:40px;padding:var(--space-1) var(--space-2-5);border-radius:var(--radius-sm);cursor:pointer}.chat-suggestion--active,.chat-suggestion:hover{background:var(--accent-soft)}.chat-suggestion-emoji{font-size:var(--text-140);line-height:1}.chat-suggestion-code{font-weight:600;font-size:var(--text-90)}.chat-suggestion-label{color:var(--text-secondary);font-size:var(--text-85);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-input-row{display:flex;align-items:flex-end;gap:var(--space-2)}.chat-emoji-wrap{position:relative}.chat-icon-button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-calendar);color:var(--accent-primary-strong);cursor:pointer}.chat-input{flex:1;min-width:0;min-height:44px;max-height:140px;padding:var(--space-2-5) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-calendar);color:var(--text-primary);font:inherit;font-size:var(--text-100);resize:none;field-sizing:content}.chat-send{min-height:44px;padding:0 var(--space-4-5)}.chat-form-foot{display:flex;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-1);font-size:var(--text-80);min-height:1.2em}.chat-counter{color:var(--text-light);margin-left:auto;order:2}.chat-counter--over,.chat-send-error{color:var(--error)}.chat-banned{margin:var(--space-3) 0 0;padding:var(--space-3-5);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-primary)}.chat-rules{margin-top:var(--space-3);padding:var(--space-4) var(--space-5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-secondary)}.chat-rules h2{margin:0 0 var(--space-2);font-size:var(--text-110)}.chat-rules ul{margin:0 0 var(--space-3);padding-left:var(--space-5);color:var(--text-secondary)}@media(max-width:600px){.page-container.chat-page{padding:var(--space-4) var(--space-3) var(--space-8)}.chat-list{height:calc(100dvh - 330px);min-height:240px}.chat-send-label{display:none}.chat-send{padding:0 var(--space-3-5)}}.chat-presence{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2-5);min-height:36px;font-size:var(--text-88);color:var(--text-secondary)}.chat-presence-avatars{display:flex;list-style:none;margin:0;padding:0;flex-shrink:0}.chat-presence-avatars li{margin-left:-8px}.chat-presence-avatars li:first-child{margin-left:0}.chat-presence-avatar{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:2px solid var(--bg-primary);object-fit:cover;background:var(--accent-soft);color:var(--accent-primary-strong);font-size:var(--text-80);font-weight:600;box-sizing:border-box}.chat-presence-more{display:inline-flex;align-items:center;padding-left:var(--space-3);font-weight:600}.chat-presence-text strong{color:var(--accent-secondary)}.chat-presence-text:before{content:"";display:inline-block;width:8px;height:8px;margin-right:var(--space-1-5);border-radius:50%;background:var(--accent-secondary)}.chat-member-button{display:inline-flex;padding:0;border:0;border-radius:50%;background:transparent;cursor:pointer}.chat-member-button:focus-visible,.chat-author-button:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.chat-author-button{padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:600;font-size:var(--text-88);text-align:left;cursor:pointer}.chat-author-button:hover{text-decoration:underline}.chat-avatar--small{width:28px;height:28px;font-size:var(--text-80)}.chat-mention{color:var(--accent-primary-strong);font-weight:600;background:var(--accent-soft);border-radius:4px;padding:0 var(--space-0-5)}.chat-mention--me{background:var(--accent-primary);color:#fff}.chat-message--mentions-me .chat-bubble{box-shadow:inset 3px 0 0 var(--accent-primary)}.chat-message--target .chat-bubble{animation:chat-target-flash 2.4s ease-out}@keyframes chat-target-flash{0%,40%{outline:2px solid var(--accent-primary);outline-offset:2px}to{outline:2px solid transparent;outline-offset:2px}}@media(prefers-reduced-motion:reduce){.chat-message--target .chat-bubble{animation:none;outline:2px solid var(--accent-primary);outline-offset:2px}}.share-trigger{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border);font-size:var(--text-90);font-weight:500;cursor:pointer;transition:all .15s ease;flex-shrink:0}.share-trigger:hover{background-color:var(--border)}.share-trigger:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft);border-color:var(--accent-primary)}.share-trigger--subtle{background-color:transparent;border-color:transparent;color:var(--text-secondary);padding:var(--space-1-5) var(--space-2-5);font-size:var(--text-85)}.share-trigger--subtle:hover{background-color:var(--bg-secondary);color:var(--text-primary);border-color:var(--border)}.share-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:var(--modal-overlay);display:flex;align-items:center;justify-content:center;padding:var(--space-6);z-index:1100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.share-dialog{background-color:var(--bg-calendar);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-8);max-width:420px;width:100%;position:relative;animation:shareDialogIn .2s ease-out}@keyframes shareDialogIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.share-close{position:absolute;top:12px;right:12px;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-light);background:none;border:none;cursor:pointer;transition:all .15s ease}.share-close:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.share-close:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft)}.share-dialog-title{font-family:var(--font-heading);font-size:var(--text-135);font-weight:500;color:var(--text-primary);margin-bottom:var(--space-2);padding-right:var(--space-6)}.share-dialog-subtitle{color:var(--text-secondary);font-size:var(--text-95);margin-bottom:var(--space-5);line-height:1.5}.share-channels{display:flex;flex-wrap:wrap;gap:var(--space-2-5);justify-content:flex-start;margin-bottom:var(--space-5)}.share-channel{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-3);border-radius:var(--radius-sm);background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border);cursor:pointer;transition:all .15s ease;width:fit-content;min-width:40px;flex:0 0 auto}.share-channel:hover{background-color:var(--border);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.share-channel:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft);border-color:var(--accent-primary)}.share-copy{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background-color:var(--accent-primary);color:#fff;border:none;font-size:var(--text-95);font-weight:500;cursor:pointer;transition:background-color .15s ease}.share-copy:hover{background-color:var(--accent-primary-hover)}.share-copy:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft)}@media(max-width:640px){.share-dialog{padding:var(--space-6)}}.crop-viewport{display:flex;flex-direction:column;gap:var(--space-2);width:100%}.crop-viewport-zoom{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-90)}.crop-viewport-zoom input[type=range]{flex:1;min-width:0}.crop-viewport-zoom output{min-width:3.5em;text-align:right;font-variant-numeric:tabular-nums}.crop-viewport-frame{position:relative;overflow:hidden;width:100%;border-radius:var(--radius-md);background-color:var(--bg-secondary);cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.crop-viewport-frame.is-dragging{cursor:grabbing}.crop-viewport-frame:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.crop-viewport-image{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}.crop-viewport-frame>:not(.crop-viewport-image){pointer-events:none}.crop-viewport-hint{margin:0;font-size:var(--text-80);color:var(--text-secondary)}.collapsible-rich-text__content{position:relative;line-height:1.4;max-height:14em;overflow:hidden}.collapsible-rich-text__content--expanded{max-height:none;overflow:visible}.collapsible-rich-text__content--faded:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2.8em;pointer-events:none;background:linear-gradient(to bottom,transparent,var(--bg-primary, #fff))}.collapsible-rich-text__content .rich-text-view{line-height:inherit}.collapsible-rich-text__toggle{display:inline-block;margin-top:var(--space-2);padding:0;border:0;background:none;font:inherit;cursor:pointer}.similar-events{margin-top:var(--space-8);margin-bottom:var(--space-2)}.similar-events-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.similar-events-header h2{font-size:var(--text-130);color:var(--text-primary);margin:0}.similar-events-category-badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2-5);border-radius:12px;font-size:var(--text-70);font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:#fff}.similar-events-slider-wrapper{position:relative}.similar-events-slider{display:grid;grid-auto-flow:column;grid-auto-columns:240px;gap:var(--space-4);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:thin;padding:var(--space-1) var(--space-1) var(--space-4);-webkit-overflow-scrolling:touch}.similar-events-slider::-webkit-scrollbar{height:6px}.similar-events-slider::-webkit-scrollbar-thumb{background-color:var(--border);border-radius:3px}.similar-events-slide{scroll-snap-align:start;min-width:0}.similar-events-arrow{position:absolute;top:calc(50% - 8px);transform:translateY(-50%);z-index:2;width:40px;height:40px;border-radius:50%;background-color:var(--bg-calendar);color:var(--text-primary);border:1px solid var(--border);box-shadow:var(--shadow-sm);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .15s ease,opacity .15s ease}.similar-events-arrow:hover:not(:disabled){background-color:var(--bg-secondary)}.similar-events-arrow:disabled{opacity:0;pointer-events:none}.similar-events-arrow--left{left:-8px}.similar-events-arrow--right{right:-8px}@media(max-width:640px){.similar-events-slider{grid-auto-columns:75%}.similar-events-arrow{display:none}}.event-detail-page{max-width:800px;margin:0 auto;padding:var(--space-10) var(--space-6)}.event-detail-page .loading-spinner{display:flex;justify-content:center;align-items:center;padding:80px}.back-link{display:inline-flex;align-items:center;gap:var(--space-1-5);margin-bottom:var(--space-6);font-size:var(--text-90);color:var(--text-secondary);transition:color .15s ease}.back-link:hover{color:var(--accent-primary)}.owner-actions{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-6);width:100%}.owner-actions .btn:not(.btn-subtle-danger){flex:1 1 auto;min-width:0;white-space:nowrap;justify-content:center}.owner-actions .btn-subtle-danger{flex:0 0 auto;width:auto;padding:var(--space-2)}.event-detail-page,.event-detail-page .event-title,.event-detail-page .event-description h3,.event-detail-page .event-description p,.event-detail-page .rich-text-view{line-height:1.4}.event-header{margin-bottom:var(--space-5)}.event-image-wrapper{position:relative;width:100%;aspect-ratio:16 / 9;max-height:500px;border-radius:var(--radius-md);margin-bottom:var(--space-3);overflow:hidden;display:flex;align-items:center;justify-content:center}.event-image{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-md);opacity:0;transition:opacity .3s ease-in-out}.event-image.loaded{opacity:1}.event-image-skeleton{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,var(--bg-secondary) 0%,var(--bg-calendar) 50%,var(--bg-secondary) 100%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.event-title{font-size:var(--text-250);margin-bottom:var(--space-4);color:var(--text-primary)}.event-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-3)}.event-title-row .event-title{margin-bottom:0;flex:1;min-width:0}.event-meta-row{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.event-categories{display:flex;flex-wrap:wrap;gap:var(--space-2)}.event-badge{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-1-5) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-85);font-weight:500}.badge--free{background-color:#7a8a5f26;color:var(--free-text)}.badge--fee{background-color:#c48e6a26;color:var(--accent-primary)}.badge--donation{background-color:#8c78b426;color:var(--donation-text)}.event-details{background:var(--bg-calendar);border-radius:var(--radius-md);padding:var(--space-6);margin-bottom:var(--space-6);box-shadow:var(--shadow-sm)}.detail-item{display:flex;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border)}.detail-item:last-child{border-bottom:none}.detail-icon{color:var(--accent-primary);flex-shrink:0;margin-top:var(--space-0-5)}.detail-label{display:block;font-size:var(--text-80);color:var(--text-secondary);margin-bottom:0;line-height:1.3}.detail-value{font-size:var(--text-100);color:var(--text-primary);line-height:1.3}.detail-value--block{display:block}.detail-organizer-contact{display:flex;flex-wrap:wrap;align-items:center;column-gap:var(--space-1)}.detail-contact{display:inline-flex;flex-wrap:wrap;overflow-wrap:anywhere}.event-detail-dates-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-1)}.event-detail-dates-list li{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.event-detail-date-badge{margin-left:var(--space-2);vertical-align:middle}.event-detail-dates-list .event-detail-date-badge{margin-left:0}.event-detail-date-action{font-size:var(--text-85)}.event-cancelled-banner{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-3);margin:0 0 var(--space-4) 0;padding:var(--space-3) var(--space-4);border:1px solid #b42318;border-radius:10px;color:var(--text-primary);font-weight:600}.event-cancel-error{margin:0 0 var(--space-4) 0;color:#b42318}.event-detail-date-current{font-weight:600;color:var(--text-primary)}.organizer-value{display:inline-flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.organizer-link{width:fit-content}.organizer-photo{width:28px;height:28px;border-radius:50%;object-fit:cover;border:1px solid var(--border);flex-shrink:0}.detail-link{color:var(--accent-primary);text-decoration:none;transition:color .15s ease}.detail-link:hover{color:var(--text-primary);text-decoration:underline}.detail-link--break{word-break:break-all;overflow-wrap:anywhere}.event-description{margin-bottom:var(--space-6)}.event-description h3{font-size:var(--text-130);margin-bottom:var(--space-3)}.event-description p{color:var(--text-secondary);white-space:pre-wrap}.event-link{display:inline-flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-6)}.event-not-found{max-width:560px;margin:var(--space-12) auto;padding:var(--space-12) var(--space-8);text-align:center;background-color:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.event-not-found h2{margin:0 0 var(--space-4);color:var(--text-primary);font-family:var(--font-heading);font-size:var(--text-160);line-height:1.3}.event-not-found-hint{margin:0 0 var(--space-7);color:var(--text-secondary);line-height:1.6}.event-not-found-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3);margin-top:var(--space-7)}.event-not-found-hint+.event-not-found-actions{margin-top:0}@media(max-width:640px){.event-title{font-size:var(--text-180)}.event-detail-page{padding:var(--space-6) var(--space-2)}.event-title-row{gap:var(--space-2)}}.detail-link--button{display:block;padding:0;border:0;background:none;font:inherit;text-align:left;cursor:pointer}.detail-link--button:disabled{cursor:progress;opacity:.7}.badge--favorites{background-color:#0000000d;color:var(--text-secondary, inherit)}.review-reject-reason{margin:0 0 var(--space-6) 0;padding:var(--space-3) var(--space-4);border-left:3px solid var(--accent-primary);background:var(--bg-secondary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--text-primary);white-space:pre-wrap;max-height:40vh;overflow-y:auto}.profile-incomplete-dialog-intro{margin-bottom:var(--space-3)}.profile-incomplete-fields{list-style:disc;padding-left:var(--space-5);margin:0 0 var(--space-6);color:var(--text-secondary);line-height:1.6}.profile-incomplete-fields li{margin:var(--space-1) 0}.profile-page{min-height:calc(100vh - 72px);padding:var(--space-12) var(--space-6);background:linear-gradient(180deg,var(--bg-primary) 0%,var(--bg-secondary) 100%)}.profile-container{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-6)}.profile-header{margin-bottom:var(--space-2)}.profile-header h1{font-family:Cormorant Garamond,Georgia,serif;font-size:1.85rem;font-weight:500;color:var(--text-primary);margin:0}.profile-header p{color:var(--text-secondary);margin:var(--space-1) 0 0;font-size:var(--text-95)}.profile-card{background-color:var(--bg-calendar);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-8)}@media(max-width:640px){.profile-card{padding:var(--space-6)}.profile-page{padding:var(--space-12) var(--space-2)}}.homepage-preview{display:flex;flex-direction:column;gap:.75rem}.homepage-preview .calendar-page.homepage-preview-page{min-height:0;width:100%;max-width:100%;margin:0;padding:0;background-color:transparent;overflow-x:hidden}.homepage-preview .hero{max-width:100%;margin:0 0 .75rem;padding:var(--space-3-5) var(--space-4-5);border-radius:var(--radius-md);display:flex}.homepage-preview .hero-content{max-width:100%}.homepage-preview .hero-title{font-size:clamp(1.05rem,.6vw + .95rem,1.5rem);margin-bottom:var(--space-1-5);line-height:1.15}.homepage-preview .hero-subtitle{font-size:var(--text-85);margin-bottom:var(--space-2-5);line-height:1.4}.homepage-preview .hero-features-slider{padding:var(--space-2) var(--space-3);min-height:0;gap:var(--space-2-5)}.homepage-preview .hero-feature-slide{top:8px;right:12px;bottom:8px;left:12px;gap:var(--space-2-5)}.homepage-preview .hero-feature-item{gap:var(--space-2-5)}.homepage-preview .hero-feature-title{font-size:var(--text-85)}.homepage-preview .hero-feature-description{font-size:var(--text-75)}.homepage-preview .page-layout{max-width:100%;padding:0;gap:var(--space-3-5);grid-template-columns:minmax(0,1fr) 200px}.homepage-preview .page-main{min-width:0}.homepage-preview .page-sidebar{position:static;top:auto;display:flex}.homepage-preview .filter-panel{padding:var(--space-3) var(--space-3-5);margin-bottom:var(--space-3)}.homepage-preview .filter-header--title{margin-bottom:var(--space-2-5)}.homepage-preview .filter-section-title{font-size:var(--text-100)}.homepage-preview .filter-header{margin-bottom:var(--space-2-5)}.homepage-preview .filter-header--section{margin-bottom:var(--space-2)}.homepage-preview .filter-header--section~.filter-header--section{margin-top:var(--space-3-5);padding-top:var(--space-3)}.homepage-preview .filter-accordion{margin-top:var(--space-3-5);padding-top:var(--space-3)}.homepage-preview .filter-accordion-body{padding-top:var(--space-2-5)}.homepage-preview .filter-options{gap:var(--space-1-5)}.homepage-preview .filter-chip{padding:var(--space-1) var(--space-2-5);font-size:var(--text-80)}.homepage-preview .filter-header--section .filter-label,.homepage-preview .filter-quick-actions{display:flex}.homepage-preview .events-section-header{margin-bottom:var(--space-2-5)}.homepage-preview .events-section-month h2{font-size:var(--text-105)}.homepage-preview-create-cta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2-5) var(--space-3-5);background-color:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-top:.75rem}.homepage-preview-create-cta .create-event-cta-text{display:flex;flex-direction:column;gap:var(--space-0-5);min-width:0}.homepage-preview-create-cta .create-event-cta-text strong{font-family:var(--font-heading);font-size:var(--text-95);font-weight:600;color:var(--text-primary);line-height:1.2}.homepage-preview-create-cta .create-event-cta-text span{font-size:var(--text-75);color:var(--text-secondary);line-height:1.3}.homepage-preview-create-cta .create-event-cta-button{flex-shrink:0;padding:var(--space-1-5) var(--space-3);font-size:var(--text-80)}@media(max-width:720px){.homepage-preview-create-cta{flex-direction:column;align-items:stretch;padding:var(--space-2-5) var(--space-3)}.homepage-preview-create-cta .create-event-cta-button{width:100%}}.homepage-preview .page-sidebar,.homepage-preview .page-layout{display:flex!important;grid-template-columns:minmax(0,1fr) 200px!important}.theme-editor-sandbox{display:flex;flex-direction:column;height:100%;min-height:0;border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-secondary);box-shadow:var(--shadow-md);border:1px solid var(--border)}.theme-editor-sandbox-chrome{display:flex;align-items:center;gap:.5rem;padding:.5rem .875rem;background:var(--bg-primary);border-bottom:1px solid var(--border);font-size:var(--text-81);color:var(--text-secondary);font-weight:500;letter-spacing:.01em;-webkit-user-select:none;user-select:none;flex-shrink:0}.theme-editor-sandbox-chrome-dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--accent-primary);box-shadow:0 0 0 4px var(--accent-soft);flex-shrink:0}.theme-editor-sandbox-chrome-label{white-space:nowrap}.theme-editor-sandbox-frame{flex:1 1 auto;min-height:0;overflow:auto;padding:1rem;background:var(--bg-calendar)}.theme-editor-sandbox-frame,.theme-editor-sandbox-frame *,.theme-editor-sandbox-frame *:before,.theme-editor-sandbox-frame *:after{transition:background-color .18s ease-out,color .18s ease-out,border-color .18s ease-out,box-shadow .18s ease-out}.theme-editor-sandbox-probe{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.theme-editor-page{display:flex;flex-direction:column;gap:1rem;padding:1.5rem clamp(1rem,3vw,2rem) 2rem;max-width:100%;min-height:calc(100vh - 4rem)}.theme-editor-loading,.theme-editor-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:4rem 1rem;color:var(--text-secondary)}.theme-editor-loading-spinner{animation:theme-editor-spin 1s linear infinite}.theme-editor-error{flex-direction:row;align-items:flex-start;gap:1rem;color:var(--error)}.theme-editor-error h2{margin:0 0 .25rem;color:var(--text-primary)}@keyframes theme-editor-spin{to{transform:rotate(360deg)}}.theme-editor-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.theme-editor-topbar-left{display:flex;align-items:center;gap:1rem;min-width:0}.theme-editor-back-link{display:inline-flex;align-items:center;gap:.25rem;padding:.375rem .75rem;border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);text-decoration:none;font-size:var(--text-88);font-weight:500;border:1px solid var(--border);transition:background-color .15s ease,color .15s ease}.theme-editor-back-link:hover{background:var(--bg-calendar);color:var(--accent-primary)}.theme-editor-title{display:flex;align-items:center;gap:.5rem;margin:0;font-size:var(--text-150);font-weight:700;color:var(--heading-color)}.theme-editor-active{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem .75rem;border-radius:var(--radius-md);background:var(--bg-calendar);border:1px solid var(--border);font-size:var(--text-88);color:var(--text-secondary)}.theme-editor-active-label{font-weight:500;display:inline-flex;align-items:center;gap:.375rem}.theme-editor-active-name{font-weight:600;color:var(--text-primary)}.theme-editor-active-name--placeholder{color:var(--text-light);font-style:italic;font-weight:400}.theme-editor-editor-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;background:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.theme-editor-editor-source{display:inline-flex;align-items:center;gap:.5rem;flex-wrap:wrap;min-width:0}.theme-editor-editor-source-label{font-size:var(--text-81);color:var(--text-light);font-weight:500}.theme-editor-editor-source-value{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .5rem;background:var(--bg-secondary);border-radius:var(--radius-sm);font-size:var(--text-81);font-weight:500;color:var(--text-primary)}.theme-editor-editor-source-value--active{background:var(--accent-soft);color:var(--accent-primary-strong)}.theme-editor-editor-source-tag{font-size:.6875rem;padding:.0625rem .375rem;border-radius:var(--radius-sm);background:var(--accent-secondary);color:var(--bg-calendar);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.theme-editor-modified-badge{display:inline-flex;align-items:center;padding:.25rem .5rem;background:var(--accent-soft);color:var(--accent-primary-strong);border-radius:var(--radius-sm);font-size:var(--text-75);font-weight:600}.theme-editor-editor-actions{display:inline-flex;flex-wrap:wrap;gap:.5rem}.theme-editor-editor-actions .btn{display:inline-flex;align-items:center;gap:.375rem;font-size:var(--text-81)}.theme-editor-banner-row{display:flex;flex-direction:column;gap:.5rem}.theme-editor-banner{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:var(--radius-md);font-size:var(--text-88);font-weight:500}.theme-editor-banner--error{background:#bf5b4e1a;color:var(--error);border:1px solid var(--error)}.theme-editor-banner--success{background:var(--accent-soft);color:var(--accent-primary-strong);border:1px solid var(--accent-primary)}.theme-editor-workspace{display:grid;grid-template-columns:minmax(340px,380px) minmax(0,1fr);gap:1rem;flex:1 1 auto;min-height:0}@media(max-width:1024px){.theme-editor-workspace{grid-template-columns:1fr}}.theme-editor-sidebar{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow-y:auto}.theme-editor-sidebar-intro{font-size:var(--text-81);line-height:1.5;color:var(--text-secondary);padding:.5rem .625rem;background:var(--bg-secondary);border-radius:var(--radius-sm);margin:0}.theme-editor-group{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.theme-editor-group-heading{margin:0;font-size:inherit;font-weight:inherit}.theme-editor-group-header{display:flex;align-items:center;gap:.5rem;width:100%;padding:.625rem .75rem;background:var(--bg-secondary);border:none;border-bottom:1px solid var(--border);font-size:var(--text-88);font-weight:600;color:var(--text-primary);cursor:pointer;text-align:left;font-family:inherit;transition:background-color .15s ease,color .15s ease}.theme-editor-group-header:hover{background:var(--accent-soft);color:var(--accent-primary-strong)}.theme-editor-group-header:focus-visible{outline:2px solid var(--accent-primary);outline-offset:-2px}.theme-editor-group-chevron{flex-shrink:0;color:var(--text-secondary);transform:rotate(90deg);transition:transform .22s ease,color .15s ease}.theme-editor-group-header:hover .theme-editor-group-chevron{color:var(--accent-primary)}.theme-editor-group:not(.theme-editor-group--collapsed) .theme-editor-group-chevron{transform:rotate(0)}.theme-editor-group-name{flex:1 1 auto;min-width:0;word-break:break-word}.theme-editor-group-count{margin-left:auto;flex-shrink:0;font-size:.6875rem;color:var(--text-light);font-weight:500;padding:.125rem .5rem;background:var(--bg-calendar);border-radius:999px;border:1px solid var(--border);transition:background-color .15s ease,border-color .15s ease,color .15s ease}.theme-editor-group-header:hover .theme-editor-group-count{border-color:var(--accent-primary);color:var(--accent-primary)}.theme-editor-group-body-wrapper{display:grid;grid-template-rows:1fr;transition:grid-template-rows .22s ease}.theme-editor-group--collapsed .theme-editor-group-body-wrapper{grid-template-rows:0fr}.theme-editor-group-body{display:flex;flex-direction:column;overflow:hidden;min-height:0}.theme-editor-row{display:flex;flex-direction:column;gap:.5rem;padding:.625rem;border-bottom:1px solid var(--border);background:var(--bg-calendar)}.theme-editor-row:last-child{border-bottom:none}.theme-editor-row[data-modified=true]{background:var(--accent-soft)}.theme-editor-row-label{display:flex;align-items:center;gap:.5rem;min-width:0}.theme-editor-row-swatch{width:1.25rem;height:1.25rem;border-radius:var(--radius-sm);border:1px solid var(--border);flex-shrink:0;box-shadow:inset 0 0 0 2px #ffffff80}.theme-editor-row-text{display:flex;flex-direction:column;min-width:0;flex:1 1 auto}.theme-editor-row-title{font-size:var(--text-81);font-weight:500;color:var(--text-primary)}.theme-editor-row-name{font-family:ui-monospace,SF Mono,Menlo,Monaco,Consolas,monospace;font-size:.6875rem;color:var(--text-light)}.theme-editor-row-controls{display:flex;align-items:flex-start;gap:.375rem}.theme-editor-row-controls .color-picker{flex:1 1 auto;min-width:0}.theme-editor-row-controls .color-picker-preview-row{align-items:flex-start}.theme-editor-row-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-calendar);color:var(--text-secondary);cursor:pointer;transition:background-color .15s ease,color .15s ease;flex-shrink:0;margin-top:.125rem}.theme-editor-row-btn:hover:not(:disabled){background:var(--bg-secondary);color:var(--accent-primary)}.theme-editor-row-btn:disabled{opacity:.4;cursor:not-allowed}.theme-editor-row-btn--danger:hover:not(:disabled){background:var(--error);color:var(--bg-calendar)}.theme-editor-library{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.theme-editor-library-body{padding:.5rem;display:flex;flex-direction:column;gap:.375rem}.theme-editor-library-empty{margin:0;padding:.5rem .625rem;font-size:var(--text-81);line-height:1.5;color:var(--text-secondary);background:var(--bg-secondary);border-radius:var(--radius-sm)}.theme-editor-library-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.375rem}.theme-editor-library-row{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;gap:.375rem .5rem;padding:.5rem;background:var(--bg-secondary);border-radius:var(--radius-sm);border:1px solid var(--border)}.theme-editor-library-row[data-active=true]{border-color:var(--accent-primary);background:var(--accent-soft)}.theme-editor-library-swatches{grid-row:1 / span 2;display:grid;grid-template-columns:repeat(2,.625rem);grid-template-rows:repeat(2,.625rem);gap:var(--space-0-5);align-self:start;margin-top:.125rem}.theme-editor-library-swatches span{display:block;border-radius:2px;border:1px solid var(--border)}.theme-editor-library-meta{display:flex;flex-direction:column;gap:.125rem;min-width:0}.theme-editor-library-name-row{display:inline-flex;align-items:center;gap:.375rem;flex-wrap:wrap}.theme-editor-library-name{font-size:var(--text-81);font-weight:600;color:var(--text-primary);word-break:break-word}.theme-editor-library-tag{font-size:.625rem;padding:.0625rem .375rem;border-radius:999px;background:var(--accent-secondary);color:var(--bg-calendar);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.theme-editor-library-description{font-size:var(--text-75);color:var(--text-secondary);line-height:1.4;word-break:break-word}.theme-editor-library-actions{grid-column:2;display:flex;flex-wrap:wrap;gap:.25rem}.theme-editor-library-actions .btn-sm{padding:.25rem .5rem;font-size:var(--text-75)}.theme-editor-library-rename{display:flex;flex-wrap:wrap;gap:.25rem}.theme-editor-library-rename input{flex:1 1 6rem;min-width:0;padding:.25rem .5rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-calendar);font-size:var(--text-81);font-family:inherit;color:var(--text-primary)}.theme-editor-library-rename-error{font-size:var(--text-75);color:var(--error)}.theme-editor-preview{display:flex;flex-direction:column;gap:.75rem;min-height:0}.theme-editor-preview-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap}.theme-editor-preview-title{margin:0;font-size:1.125rem;font-weight:700;color:var(--text-primary)}.theme-editor-preview-subtitle{margin:0;font-size:var(--text-81);color:var(--text-secondary)}@media(prefers-reduced-motion:reduce){.theme-editor-group-header,.theme-editor-group-chevron,.theme-editor-group-count,.theme-editor-group-body-wrapper{transition:none}}.public-profile-page{min-height:calc(100vh - 72px);padding:var(--space-6) var(--space-6) var(--space-12);display:flex;flex-direction:column;align-items:center;gap:var(--space-6);background:linear-gradient(180deg,var(--bg-primary) 0%,var(--bg-secondary) 100%)}.public-profile-toolbar{width:100%;max-width:1080px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.public-profile-toolbar-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3-5);border-radius:var(--radius-sm);background-color:transparent;color:var(--text-secondary);border:1px solid transparent;font-size:var(--text-90);font-weight:500;cursor:pointer;text-decoration:none;transition:all .15s ease}.public-profile-toolbar-btn:hover{background-color:var(--bg-secondary);color:var(--text-primary);border-color:var(--border)}.public-profile-toolbar-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft);border-color:var(--accent-primary)}.public-profile-toolbar-actions{display:flex;align-items:center;gap:var(--space-2)}.public-profile-card{width:100%;max-width:720px;background-color:var(--bg-calendar);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-10) var(--space-8);display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-4)}.public-profile-events{width:100%;max-width:1080px}.public-profile-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center;margin-top:var(--space-2)}.public-profile-back-btn{background-color:var(--bg-secondary);border-color:var(--border)}.public-profile-title{font-family:var(--font-heading);font-size:var(--text-160);font-weight:500;color:var(--text-primary);margin:0}.public-profile-eyebrow{font-size:var(--text-75);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-primary)}.public-profile-photo{width:96px;height:96px;border-radius:50%;object-fit:cover;border:2px solid var(--border);background-color:var(--bg-secondary)}.public-profile-photo--placeholder{display:flex;align-items:center;justify-content:center;font-family:Cormorant Garamond,Georgia,serif;font-size:var(--text-250);font-weight:500;color:var(--accent-primary);background-color:var(--accent-soft);border-color:transparent}.public-profile-name{font-family:Cormorant Garamond,Georgia,serif;font-size:var(--text-200);font-weight:500;color:var(--text-primary);margin:0}.public-profile-bio{font-size:var(--text-100);line-height:1.6;color:var(--text-primary);margin:0;white-space:pre-wrap;max-width:560px}.public-profile-bio-content{text-align:left;width:100%}.public-profile-website{display:inline-flex;align-items:center;gap:var(--space-2);word-break:break-word}.public-profile-social-media{display:inline-flex;align-items:center;gap:var(--space-3);margin-top:var(--space-1)}.public-profile-social-link{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background-color:var(--bg-secondary);color:var(--text-secondary);text-decoration:none;transition:background-color .15s ease,color .15s ease}.public-profile-social-link:hover{background-color:var(--accent-primary);color:#fff}.public-profile-social-link:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft)}.public-profile-message{color:var(--text-secondary);margin:0 0 var(--space-2)}@media(max-width:640px){.public-profile-page{padding:var(--space-4) var(--space-2) var(--space-8)}.public-profile-card{padding:var(--space-7) var(--space-5)}.public-profile-photo,.public-profile-photo--placeholder{width:80px;height:80px}.public-profile-name{font-size:var(--text-160)}.public-profile-toolbar{flex-wrap:wrap}}.public-profile-categories{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2)}.public-profile-category{display:inline-block;padding:var(--space-1) var(--space-3-5);border-radius:999px;background-color:var(--chip-bg);color:var(--chip-text);font-size:var(--fs-badge);font-weight:500;text-decoration:none;transition:background-color .15s ease}.public-profile-category:hover{background-color:var(--accent-soft);text-decoration:underline}.public-profile-dm{display:flex;justify-content:center;margin:var(--space-1) 0 var(--space-4)}.public-profile-avatar{position:relative;display:inline-flex}.public-profile-avatar .online-dot{width:18px;height:18px;right:4px;bottom:4px;border-color:var(--bg-calendar)}.public-profile-fireplace{margin:0;font-size:var(--text-100);color:var(--text-secondary)}.public-profile-avatar .member-badge{right:var(--space-1);bottom:var(--space-1)}.public-profile-avatar .member-badge~.online-dot.online-dot{top:var(--space-1)}.donation-block{background-color:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-8);display:flex;flex-direction:column;gap:var(--space-5)}.donation-intro{color:var(--text-secondary);font-size:var(--text-100);line-height:1.6;margin:0}.donation-frequency-tabs{display:inline-flex;align-self:flex-start;background-color:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-1);gap:var(--space-1)}.donation-frequency-tab{background:transparent;border:0;padding:var(--space-2) var(--space-4-5);font:inherit;font-weight:600;color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:background-color .15s ease,color .15s ease}.donation-frequency-tab:hover:not(:disabled):not(.is-active){color:var(--text-primary)}.donation-frequency-tab.is-active{background-color:var(--accent-primary);color:var(--text-on-accent, #fff)}.donation-frequency-tab:disabled{opacity:.5;cursor:not-allowed}.donation-name-field,.donation-comment-field,.donation-amount-field{display:flex;flex-direction:column;gap:var(--space-2)}.donation-name-label,.donation-comment-label,.donation-amount-label{font-size:var(--fs-eyebrow);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-light)}.donation-name-field input,.donation-comment-field textarea{padding:var(--space-3) var(--space-3-5);border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--bg-primary);color:var(--text-primary)}.donation-comment-field textarea{font:inherit;resize:vertical}.donation-name-field input:focus,.donation-comment-field textarea:focus{outline:2px solid var(--accent-primary);outline-offset:2px}.donation-comment-field textarea:disabled{opacity:.6;cursor:not-allowed}.donation-comment-hint{font-size:var(--text-85);color:var(--text-light)}.donation-consent-field{display:flex;align-items:flex-start;gap:var(--space-2-5);font-size:var(--text-95);color:var(--text-primary);line-height:1.5;cursor:pointer}.donation-consent-field input[type=checkbox]{margin-top:3px;flex-shrink:0;cursor:pointer}.donation-consent-field input[type=checkbox]:disabled{cursor:not-allowed}.donation-consent-label{flex:1 1 auto}.donation-consent-hint{font-size:var(--text-85);color:var(--text-light);margin:-8px 0 0;line-height:1.5}.donation-consent-hint a{color:var(--accent-primary-strong)}.donation-amount-input-wrapper{position:relative;display:flex;align-items:stretch}.donation-amount-input-wrapper input{flex:1 1 auto;padding:var(--space-3) var(--space-3-5);padding-right:var(--space-10);border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--bg-primary);color:var(--text-primary);font:inherit}.donation-amount-input-wrapper input:focus{outline:2px solid var(--accent-primary);outline-offset:2px}.donation-amount-input-wrapper input[aria-invalid=true]{border-color:var(--error)}.donation-amount-input-wrapper input:disabled{opacity:.6;cursor:not-allowed}.donation-amount-suffix{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--text-light);font-weight:600;pointer-events:none}.donation-amount-hint{font-size:var(--text-85);color:var(--text-light)}.donation-presets{display:flex;flex-wrap:wrap;gap:var(--space-2)}.donation-preset-chip{background-color:var(--bg-primary);border:1px solid var(--border);border-radius:999px;padding:var(--space-1-5) var(--space-3-5);font:inherit;font-size:var(--text-95);color:var(--text-primary);cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.donation-preset-chip:hover:not(:disabled){border-color:var(--accent-primary);color:var(--accent-primary-strong)}.donation-preset-chip:disabled{opacity:.5;cursor:not-allowed}.donation-submit{align-self:flex-start;margin-top:var(--space-2)}.donation-error{color:var(--error);font-size:var(--text-95);margin:0}.donation-disclaimer{font-size:var(--text-85);color:var(--text-light);line-height:1.6;margin:0}.donation-disclaimer a{color:var(--accent-primary-strong)}@media(max-width:480px){.donation-block{padding:var(--space-6) var(--space-5)}.donation-submit{align-self:stretch}}.helpers-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-4)}.helpers-list-card{display:flex;gap:var(--space-4);background-color:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);align-items:flex-start}.helpers-list-photo-wrap{width:72px;height:72px;border-radius:var(--radius-md);overflow:hidden;background-color:var(--bg-secondary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.helpers-list-photo{width:100%;height:100%;object-fit:cover}.helpers-list-photo-placeholder{display:inline-flex;align-items:center;justify-content:center;color:var(--text-light);opacity:.7}.helpers-list-body{display:flex;flex-direction:column;gap:var(--space-1);min-width:0;flex:1}.helpers-list-name{margin:0;font-size:var(--text-105);color:var(--text-primary);font-weight:600}.helpers-list-description{margin:0;color:var(--text-secondary);font-size:var(--text-90);line-height:1.5}.helpers-list-links{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-1)}.helpers-list-link{font-size:var(--text-85);color:var(--accent-primary-strong);font-weight:600;text-decoration:none}.helpers-list-link:hover{text-decoration:underline}@media(max-width:480px){.helpers-list-card{flex-direction:column;align-items:stretch}.helpers-list-photo-wrap{width:100%;height:160px}.helpers-list-photo{object-position:top}}.donors-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-1-5)}.donors-list-loading,.donors-list-error,.donors-list-empty{background-color:var(--bg-primary);border:1px dashed var(--border);border-radius:var(--radius-md);padding:var(--space-5);text-align:center;color:var(--text-secondary);font-size:var(--text-95);line-height:1.6}.donors-list-item{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);padding:var(--space-2-5) var(--space-3-5);border-radius:var(--radius-sm);background-color:var(--bg-secondary);border:1px solid var(--border)}.donors-list-item[data-anonymous=true] .donors-list-name{font-style:italic;color:var(--text-secondary)}.donors-list-name{color:var(--text-primary);font-weight:500}.donors-list-meta{display:inline-flex;align-items:baseline;gap:var(--space-2);color:var(--text-secondary);font-size:var(--text-90)}.donors-list-amount{color:var(--accent-primary-strong);font-weight:600}.donors-list-frequency{text-transform:uppercase;font-size:var(--text-75);letter-spacing:.06em;color:var(--text-light);font-weight:600}.donors-list-wrapper{display:flex;flex-direction:column;gap:var(--space-3)}.donors-list-comment{margin:0;color:var(--text-secondary);font-size:var(--text-90);line-height:1.5;overflow-wrap:anywhere;white-space:pre-line}.donors-list-more{align-self:center}.contact-modal{max-width:540px;padding:var(--space-8) var(--space-8) var(--space-6)}.contact-modal-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);padding-right:var(--space-10)}.contact-modal-header h2{margin:0;font-family:var(--font-heading);font-size:var(--text-150);font-weight:500;color:var(--text-primary)}.contact-modal-icon{color:var(--accent-primary)}.contact-modal-intro{color:var(--text-secondary);font-size:var(--text-95);margin-bottom:var(--space-5);line-height:1.5}.contact-modal-row-meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-top:var(--space-1-5);min-height:18px}.contact-modal-row-meta .error-text{margin-top:0}.contact-modal-count{font-size:var(--text-75);color:var(--text-light);margin-left:auto}.contact-modal-error{background-color:#bf5b4e1a;color:var(--error);padding:var(--space-2-5) var(--space-3-5);border-radius:var(--radius-sm);margin-bottom:var(--space-4);font-size:var(--text-90)}.contact-modal-footer{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border);display:flex;flex-direction:column;gap:var(--space-3)}.contact-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3)}.contact-modal-hint{font-size:var(--text-85);color:var(--text-light);text-align:center}.contact-modal-hint-link{color:var(--accent-primary);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.contact-modal-hint-link:hover{color:var(--accent-primary-strong)}.contact-success{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-6) var(--space-4) var(--space-4)}.contact-success-icon{color:var(--accent-secondary);margin-bottom:var(--space-4)}.contact-success h2{font-family:var(--font-heading);font-size:var(--text-160);font-weight:500;margin-bottom:var(--space-3);color:var(--text-primary)}.contact-success p{color:var(--text-secondary);font-size:var(--text-95);line-height:1.5;margin-bottom:var(--space-6);max-width:380px}@media(max-width:480px){.contact-modal{padding:var(--space-6) var(--space-5) var(--space-5)}.contact-modal-actions{flex-direction:column-reverse;align-items:stretch}.contact-modal-actions .btn{width:100%}}.about-page{max-width:960px;margin:0 auto;padding:32px 24px 80px;display:flex;flex-direction:column;gap:var(--space-10)}.about-hero{display:flex;flex-direction:column;gap:var(--space-4);align-items:center;text-align:center}.about-hero-image-wrap{width:100%;max-width:720px;aspect-ratio:16 / 9;border-radius:var(--radius-md);overflow:hidden;margin-bottom:var(--space-2);box-shadow:0 12px 32px #221b121f;border:1px solid var(--border);background-color:var(--bg-secondary)}.about-hero-image{width:100%;height:100%;object-fit:cover;display:block}.about-hero-eyebrow{letter-spacing:.12em}.about-hero-title{font-size:var(--fs-hero);color:var(--text-primary);font-weight:500;line-height:1.1;margin:0}.about-hero-lead{max-width:60ch;color:var(--text-secondary);font-size:var(--fs-intro);line-height:1.7;margin:0}.about-hero-instagram{margin:0;color:var(--text-secondary)}.about-hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center;margin-top:var(--space-1)}.about-hero-cta{text-decoration:none}.about-section{background-color:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-8);display:flex;flex-direction:column;gap:var(--space-4);box-shadow:0 1px #221b120a}.about-section h2{font-size:var(--fs-section);color:var(--accent-secondary);font-weight:500;margin:0}.about-section-eyebrow{align-self:flex-start}.about-section p{color:var(--text-secondary);line-height:1.8;margin:0}.about-highlight{font-size:var(--fs-intro);color:var(--text-primary);font-weight:600;text-align:center;padding:var(--space-2) 0;margin:0}.about-list{list-style:disc;padding-left:var(--space-6);color:var(--text-secondary);line-height:1.9;margin:0}.about-list li::marker{color:var(--accent-primary)}.about-cta-line{text-align:center;color:var(--accent-primary-strong)}.about-link-button{margin-top:var(--space-2);text-decoration:none}.about-inline-link{color:var(--accent-primary);font-weight:600;background:none;border:none;padding:0;font:inherit;cursor:pointer;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}button.about-inline-link:hover,a.about-inline-link:hover{color:var(--accent-primary-strong)}.about-section-callout{margin-top:var(--space-2);background-color:var(--bg-primary);border:1px solid var(--accent-primary);border-left-width:4px;border-radius:var(--radius-md);padding:var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:var(--space-2)}.about-section-callout-title{margin:0;font-size:var(--text-110);color:var(--accent-primary-strong);font-weight:600}.about-section-callout p{margin:0;color:var(--text-secondary);line-height:1.7}.about-section--helpers,.about-support{background-color:var(--bg-secondary)}.about-donors-block{margin-top:var(--space-4);background-color:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3)}.about-donors-title{margin:0;display:inline-flex;align-items:center;gap:var(--space-2);color:var(--accent-primary-strong);font-size:var(--text-105);font-weight:600}.about-donors-intro{margin:0;color:var(--text-secondary);font-size:var(--text-95);line-height:1.6}.about-footer{display:flex;justify-content:center}@media(max-width:880px){.about-section{padding:var(--space-6)}.about-hero-image-wrap{aspect-ratio:16 / 10}}@media(max-width:640px){.about-page{padding:var(--space-6) var(--space-2) var(--space-16);gap:var(--space-7)}.about-section{padding:22px 20px}.about-hero-actions{flex-direction:column;width:100%}.about-hero-cta{width:100%;justify-content:center}.about-hero-image-wrap{aspect-ratio:4 / 3}.about-donors-block{padding:var(--space-5)}}.page-container.directory-page{min-height:calc(100vh - 72px);min-height:calc(100dvh - 72px);padding:var(--space-12) var(--space-6) var(--space-12);display:flex;flex-direction:column;gap:var(--space-6);max-width:1080px;margin:0 auto;width:100%;box-sizing:border-box}.directory-header{display:flex;flex-direction:column;gap:var(--space-2)}.directory-top-cta{align-self:flex-start;margin-top:var(--space-2);padding:var(--space-2) var(--space-3-5);border:1px solid var(--accent-secondary);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-88);text-decoration:none}.directory-top-cta strong{color:var(--accent-secondary);font-weight:600}.directory-top-cta:hover{background-color:var(--bg-calendar)}@media(min-width:769px){.directory-header{display:grid;grid-template-columns:1fr auto;column-gap:var(--space-6)}.directory-header>*{grid-column:1}.directory-header>.directory-top-cta{grid-column:2;grid-row:2;align-self:center;justify-self:end;margin-top:0}}.directory-eyebrow{font-size:var(--fs-eyebrow);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-secondary);font-weight:600}.directory-title{font-family:var(--font-heading);font-size:var(--fs-section);font-weight:500;color:var(--text-primary);margin:0;line-height:1.1}.directory-intro{margin:0;max-width:640px;color:var(--text-secondary);font-size:var(--fs-body);line-height:1.6}.directory-controls{display:flex;flex-direction:column;gap:var(--space-4);background-color:var(--bg-calendar);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5)}.directory-search{display:flex;align-items:center;gap:var(--space-2-5);padding:var(--space-2-5) var(--space-3-5);border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--bg-primary);color:var(--text-light)}.directory-search:focus-within{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-soft)}.directory-search input{flex:1;min-width:0;border:none;background:transparent;outline:none;font-family:var(--font-body);font-size:var(--fs-body);color:var(--text-primary)}.directory-controls .directory-filter-toggle{display:none;align-self:flex-start;gap:var(--space-2)}.directory-filters{display:flex;flex-direction:column;gap:var(--space-4)}.directory-filter-group{display:flex;flex-direction:column;gap:var(--space-2)}.directory-filter-title{margin:0;font-family:var(--font-body);font-size:var(--fs-eyebrow);letter-spacing:.08em;text-transform:uppercase;color:var(--text-light);font-weight:600}.directory-summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);font-size:var(--text-90);color:var(--text-secondary)}.directory-clear{display:inline-flex;align-items:center;gap:var(--space-1-5);background:none;border:none;color:var(--accent-primary-strong);font-family:var(--font-body);font-size:var(--text-90);cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm)}.directory-clear:hover{background-color:var(--accent-soft)}.directory-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:var(--space-4)}.directory-card{display:flex;flex-direction:column;min-width:0;background-color:var(--bg-calendar);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow .15s ease,transform .15s ease}.directory-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.directory-card--hidden{opacity:.6;border:1px dashed var(--border)}.directory-card-link{display:flex;gap:var(--space-4);padding:var(--space-5);color:inherit;text-decoration:none;flex:1;min-width:0;border-radius:var(--radius-lg)}.directory-card-link:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft)}.directory-card-photo{width:72px;height:72px;border-radius:50%;object-fit:cover;flex-shrink:0}.directory-card-photo--placeholder{display:flex;align-items:center;justify-content:center;background-color:var(--bg-secondary);color:var(--text-light);font-family:var(--font-heading);font-size:var(--text-180)}.directory-card-body{display:flex;flex-direction:column;gap:var(--space-1-5);min-width:0}.directory-card-name{margin:0;font-family:var(--font-heading);font-size:var(--text-135);font-weight:600;color:var(--text-primary);overflow-wrap:anywhere}.directory-card-regions{margin:0;font-size:var(--fs-badge);color:var(--text-light);overflow-wrap:anywhere}.directory-card-bio{margin:0;overflow-wrap:anywhere;color:var(--text-secondary);font-size:var(--text-90);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.directory-card-categories{list-style:none;margin:var(--space-1) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-1-5)}.directory-card-category{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:3px 10px;border-radius:999px;background-color:var(--chip-bg);color:var(--chip-text);font-size:var(--fs-badge);font-weight:500}.directory-card-category-dot{width:8px;height:8px;border-radius:50%}.directory-card-admin{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-2-5) var(--space-5);border-top:1px solid var(--border)}.directory-card-admin-badge{font-size:var(--fs-badge);color:var(--pending-text);background-color:var(--pending-bg);padding:var(--space-0-5) var(--space-2-5);border-radius:999px}.directory-card-admin-btn{margin-left:auto;display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-1-5) var(--space-3);font-size:var(--text-85)}.directory-message{background-color:var(--bg-secondary);border:1px dashed var(--border);border-radius:var(--radius-md);padding:var(--space-8) var(--space-6);text-align:center;color:var(--text-secondary);display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.directory-message p{margin:0}.directory-cta{text-align:center;color:var(--text-secondary);font-size:var(--text-95);margin:var(--space-2) 0 0}.directory-cta a{color:var(--accent-primary-strong)}@media(max-width:640px){.page-container.directory-page{padding:40px 16px 140px}.directory-controls{padding:var(--space-4)}.directory-controls .directory-filter-toggle{display:inline-flex}.directory-filters{display:none}.directory-filters--open{display:flex}.directory-grid{grid-template-columns:minmax(0,1fr)}.directory-card-link{padding:var(--space-4);gap:var(--space-3-5)}.directory-card-admin{padding:var(--space-2-5) var(--space-4)}.directory-card-admin-btn{min-height:44px}}.directory-card-dm{display:flex;justify-content:flex-end;padding:0 var(--space-5) var(--space-4)}.dm-link{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-4)}.dm-link-note{margin:0;color:var(--text-secondary);font-size:var(--text-90)}@media(max-width:640px){.directory-card-dm{padding:0 var(--space-4) var(--space-3-5)}}.directory-card-avatar{position:relative;flex-shrink:0;width:72px;height:72px}.directory-card-fireplace{margin:0;font-size:var(--fs-badge);color:var(--text-light);overflow-wrap:anywhere}.page-container.favorites-page{min-height:calc(100vh - 72px);padding:var(--space-12) var(--space-6);max-width:1080px;margin:0 auto;width:100%;box-sizing:border-box}.favorites-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-6)}.favorites-header h1{margin:0;font-family:var(--font-heading)}.favorites-icon{color:var(--accent-primary)}.favorites-empty{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-4);color:var(--text-secondary)}.spenden-page{max-width:720px;margin:0 auto;padding:48px 24px 80px;display:flex;flex-direction:column;gap:var(--space-8)}.spenden-hero{text-align:center;display:flex;flex-direction:column;gap:var(--space-4);align-items:center}.spenden-hero-title{font-size:var(--fs-section);color:var(--text-primary);font-weight:500}.spenden-hero-lead{max-width:56ch;color:var(--text-secondary);font-size:var(--fs-intro);line-height:1.7;margin:0}.spenden-back-link{display:flex;justify-content:center;margin:0}@media(max-width:640px){.spenden-page{padding:var(--space-8) var(--space-2) var(--space-16)}}.spenden-danke-page{max-width:720px;margin:0 auto;padding:48px 24px 80px;display:flex;flex-direction:column;gap:var(--space-8)}.spenden-danke-hero{text-align:center;display:flex;flex-direction:column;gap:var(--space-4);align-items:center;margin-top:var(--space-12)}.spenden-danke-hero .eyebrow{font-family:var(--font-heading);font-size:var(--fs-section);font-weight:500;letter-spacing:normal;text-transform:none;color:var(--text-primary);margin-top:var(--space-4)}.spenden-danke-hero-title{font-family:var(--font-heading);font-size:var(--fs-section);color:var(--text-primary);font-weight:500}.spenden-danke-hero-lead{max-width:56ch;color:var(--text-secondary);font-size:var(--fs-intro);line-height:1.7;margin:0}.spenden-danke-disclaimer{text-align:center;color:var(--text-secondary);font-size:var(--fs-body);margin:0}.spenden-danke-back-link{display:flex;justify-content:center;margin:0}@media(max-width:640px){.spenden-danke-page{padding:var(--space-8) var(--space-2) var(--space-16)}}.auth-action-page{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 160px);padding:var(--space-6)}.auth-action-card{max-width:480px;width:100%;background:var(--bg-card, #ffffff);border-radius:8px;padding:var(--space-10) var(--space-8);box-shadow:0 2px 12px #0000000f;text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.auth-action-card h1{margin:0;font-size:20px;color:var(--text-primary, #222);font-weight:500}.auth-action-card p{margin:0;color:var(--text-secondary, #555);font-size:15px;line-height:1.5}.auth-action-card button{margin-top:var(--space-2);background:#4a5d23;color:#fff;border:none;padding:var(--space-3) var(--space-6);border-radius:6px;font-weight:600;font-size:15px;cursor:pointer}.auth-action-card button:disabled{opacity:.6;cursor:not-allowed}.auth-action-resend-message{color:var(--text-secondary, #555);font-size:14px}.auth-action-form{display:flex;flex-direction:column;gap:var(--space-3);width:100%;margin-top:var(--space-2)}.auth-action-form label{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1-5);font-size:13px;color:var(--text-secondary, #555);text-align:left;width:100%}.auth-action-form input{width:100%;padding:var(--space-2-5) var(--space-3);border:1px solid var(--border-color, #ddd);border-radius:6px;font-size:15px;font-family:inherit;box-sizing:border-box}.auth-action-form input:focus{outline:2px solid #4a5d23;outline-offset:1px}.auth-action-error{color:#b00020;font-size:14px}.auth-action-login-cta{margin-top:var(--space-1);color:var(--text-secondary, #555);font-size:14px}@media(max-width:640px){.auth-action-page{padding:var(--space-6) var(--space-2)}}.auth-action-field{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1-5);width:100%}.chat-tab{display:flex;flex-direction:column;gap:var(--space-6)}.chat-tab-title{display:flex;align-items:center;gap:var(--space-2);margin:0;font-family:var(--font-heading)}.chat-tab-section h3{margin:0 0 var(--space-3);font-size:var(--text-105)}.chat-tab-modes{display:grid;gap:var(--space-2)}.chat-tab-mode{display:grid;grid-template-columns:auto 1fr;column-gap:var(--space-2-5);padding:var(--space-3) var(--space-3-5);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-calendar);cursor:pointer}.chat-tab-mode--on{border-color:var(--accent-primary);background:var(--accent-soft)}.chat-tab-mode input{grid-row:span 2;align-self:center}.chat-tab-mode-label{font-weight:600}.chat-tab-mode-help,.chat-tab-hint,.chat-tab-empty{color:var(--text-secondary);font-size:var(--text-90)}.chat-tab-message{margin:0;padding:var(--space-2-5) var(--space-3-5);border-radius:var(--radius-sm);background:var(--bg-secondary)}.chat-tab-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}.chat-tab-item{padding:var(--space-3-5);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-calendar)}.chat-tab-item--row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.chat-tab-item-head{display:flex;justify-content:space-between;gap:var(--space-3);color:var(--text-secondary);font-size:var(--text-85)}.chat-tab-quote{margin:var(--space-2) 0 var(--space-3);padding:var(--space-2) var(--space-3);border-left:3px solid var(--accent-primary);background:var(--bg-secondary);white-space:pre-wrap;overflow-wrap:anywhere}.chat-tab-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.chat-tab-durations{border:0;margin:0 0 var(--space-3);padding:0;display:grid;gap:var(--space-1-5)}.chat-tab-room{display:block;margin-top:var(--space-1);font-size:var(--text-85);color:var(--text-secondary)}.page-container.messenger-page{display:grid;grid-template-columns:320px minmax(0,1fr);gap:var(--space-5);max-width:1080px;width:100%;margin:0 auto;padding:var(--space-8) var(--space-6) var(--space-12);box-sizing:border-box;align-items:start}.messenger-title{display:flex;align-items:center;gap:var(--space-2-5);margin:0 0 var(--space-3);font-family:var(--font-heading)}.messenger-setting{display:flex;align-items:center;gap:var(--space-2-5);min-height:44px;margin-bottom:var(--space-2);font-size:var(--text-90);color:var(--text-secondary)}.messenger-setting input{width:18px;height:18px}.messenger-inbox{min-width:0}.messenger-threads{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-1)}.messenger-thread{position:relative;min-width:0;display:flex;align-items:center;gap:var(--space-3);min-height:64px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--text-primary);text-decoration:none}.messenger-thread:hover,.messenger-thread:focus-visible{background:var(--bg-secondary)}.messenger-thread--active{background:var(--accent-soft)}.messenger-thread-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-0-5)}.messenger-thread-top{display:flex;justify-content:space-between;gap:var(--space-2)}.messenger-thread-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.messenger-thread--unread .messenger-thread-name,.messenger-thread--unread .messenger-thread-snippet{font-weight:700;color:var(--text-primary)}.messenger-thread-time{flex-shrink:0;color:var(--text-light);font-size:var(--text-75)}.messenger-thread-snippet{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary);font-size:var(--text-88)}.messenger-unread-dot{flex-shrink:0;width:10px;height:10px;border-radius:50%;background:var(--error)}.messenger-avatar-wrap{position:relative;flex-shrink:0}.messenger-avatar{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;object-fit:cover;overflow:hidden;flex-shrink:0}.messenger-avatar--fallback{background:var(--accent-soft);color:var(--accent-primary-strong);font-weight:600}.messenger-empty,.messenger-hint{color:var(--text-secondary);font-size:var(--text-90)}.messenger-hint{margin-top:var(--space-4)}.messenger-placeholder{display:flex;align-items:center;justify-content:center;min-height:320px;border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--text-secondary)}.messenger-conversation{min-width:0}.messenger-conversation-head{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.messenger-conversation-title{flex:1;min-width:0;font-family:var(--font-heading);font-size:var(--text-140);overflow-wrap:anywhere}.messenger-conversation-title a{color:inherit}.messenger-back{display:none;align-items:center;justify-content:center;width:44px;height:44px;margin-left:-8px;color:var(--text-primary)}.messenger-menu{position:relative}.messenger-menu summary{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;cursor:pointer;list-style:none}.messenger-menu summary::-webkit-details-marker{display:none}.messenger-menu-list{position:absolute;right:0;top:100%;z-index:20;min-width:200px;padding:var(--space-1);background:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.messenger-menu-list button{display:block;width:100%;min-height:44px;padding:var(--space-2) var(--space-3);border:0;border-radius:var(--radius-sm);background:transparent;text-align:left;font:inherit;cursor:pointer}.messenger-menu-list button:hover,.messenger-menu-list button:focus-visible{background:var(--bg-secondary)}.messenger-messages{height:min(60vh,520px)}.messenger-message{display:flex;flex-direction:column;align-items:flex-start;max-width:100%}.messenger-message--own{align-items:flex-end}.messenger-message--pending{opacity:.6}.messenger-bubble{max-width:min(520px,85%)}.messenger-message>.reactable{max-width:min(560px,90%)}.messenger-message>.reactable .messenger-bubble{max-width:100%}.messenger-message-meta{display:flex;align-items:center;gap:var(--space-2-5);margin-top:var(--space-0-5);color:var(--text-light);font-size:var(--text-75)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(max-width:800px){.page-container.messenger-page{grid-template-columns:minmax(0,1fr);padding:var(--space-4) var(--space-3) var(--space-8)}.messenger-page--open .messenger-inbox,.messenger-placeholder{display:none}.messenger-back{display:inline-flex}.messenger-messages{height:calc(100dvh - 360px);min-height:220px}}.mod-onb{display:flex;flex-direction:column;gap:var(--space-4)}.mod-onb-progress{height:8px;border-radius:999px;background-color:var(--border);overflow:hidden}.mod-onb-progress-bar{height:100%;border-radius:999px;background-color:var(--accent-primary);transition:width .4s ease-out}.mod-onb-steps{display:flex;flex-wrap:wrap;gap:var(--space-3);list-style:none;margin:0;padding:0;font-size:var(--text-85);color:var(--text-secondary)}.mod-onb-step{display:flex;align-items:center;gap:var(--space-1-5)}.mod-onb-step--current{color:var(--text-primary);font-weight:600}.mod-onb-step-dot{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:1px solid var(--border);font-size:var(--text-75)}.mod-onb-step--current .mod-onb-step-dot{border-color:var(--accent-primary)}.mod-onb-step--done .mod-onb-step-dot{background-color:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.mod-onb-count{margin:0;font-size:var(--text-85);color:var(--text-light)}.mod-onb-title{margin:0;font-family:var(--font-heading);font-size:var(--fs-event-title);font-weight:500;color:var(--text-primary)}.mod-onb-title:focus{outline:none}.mod-onb-body{display:flex;flex-direction:column;gap:var(--space-3);animation:mod-onb-in .35s ease-out}@keyframes mod-onb-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.mod-onb-body{animation:none}.mod-onb-progress-bar{transition:none}}.mod-onb-text{margin:0;color:var(--text-secondary);line-height:1.6}.mod-onb-highlight{margin:0;padding:var(--space-3) var(--space-4);border-left:3px solid var(--accent-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background-color:var(--accent-soft);color:var(--text-primary);font-weight:600;line-height:1.5}.mod-onb-signoff{margin:0;font-family:var(--font-heading);font-style:italic;font-size:var(--text-120);color:var(--text-primary)}.mod-onb-cards{display:grid;gap:var(--space-2);list-style:none;margin:0;padding:0}.mod-onb-card{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--bg-calendar);line-height:1.5}.mod-onb-card span{color:var(--text-secondary)}.mod-onb-group{padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);border:1px solid var(--border)}.mod-onb-group--ok{background-color:var(--free-bg)}.mod-onb-group--not-ok{background-color:var(--accent-soft)}.mod-onb-group h3{margin:0 0 var(--space-2);font-size:var(--text-100);font-weight:600}.mod-onb-group ul{margin:0;padding-left:var(--space-5);display:flex;flex-direction:column;gap:var(--space-1-5);color:var(--text-secondary);line-height:1.5}.mod-onb-checklist{display:flex;flex-direction:column;gap:var(--space-2);list-style:none;margin:0;padding:0}.mod-onb-checklist li{display:flex;align-items:flex-start;gap:var(--space-2);line-height:1.5}.mod-onb-checklist svg{flex-shrink:0;margin-top:var(--space-1);color:var(--accent-secondary)}.mod-onb-consent{display:flex;align-items:flex-start;gap:var(--space-2-5);margin-top:var(--space-2);padding:var(--space-3) var(--space-4);border:1px dashed var(--accent-primary);border-radius:var(--radius-sm);cursor:pointer;font-weight:600}.mod-onb-consent input{width:18px;height:18px;margin-top:var(--space-0-5);accent-color:var(--accent-primary);flex-shrink:0}.mod-onb-signature{display:flex;flex-direction:column;gap:var(--space-1-5);font-weight:600}.mod-onb-signature>span{display:inline-flex;align-items:center;gap:var(--space-1-5)}.mod-onb-signature input{padding:var(--space-3) var(--space-3-5);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-heading);font-size:var(--text-150);font-style:italic;background-color:var(--bg-calendar)}.mod-onb-error{margin:0;color:var(--error)}.mod-onb-actions{display:flex;justify-content:space-between;gap:var(--space-3)}.mod-onb-actions .btn{display:inline-flex;align-items:center;gap:var(--space-1-5)}.mod-onb-spin{animation:mod-onb-spin 1s linear infinite}@keyframes mod-onb-spin{to{transform:rotate(360deg)}}@media(max-width:480px){.mod-onb-step-label{display:none}.mod-onb-step--current .mod-onb-step-label{display:inline}.mod-onb-actions{flex-direction:column-reverse}.mod-onb-actions .btn{width:100%;justify-content:center}}.mod-invite-page{max-width:680px;margin:0 auto;padding:var(--space-8) var(--space-4) var(--space-16)}.mod-invite-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-4);padding:var(--space-8);border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--bg-calendar);box-shadow:var(--shadow-sm)}.mod-invite-card>.mod-onb{align-self:stretch}.mod-invite-icon{color:var(--accent-primary)}.mod-invite-title{margin:0;font-family:var(--font-heading);font-size:var(--fs-event-title);font-weight:500;color:var(--text-primary)}.mod-invite-text{margin:0;color:var(--text-secondary);line-height:1.6}.mod-invite-actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}@media(max-width:480px){.mod-invite-card{padding:var(--space-6) var(--space-4)}}.feedback-modal{max-width:540px;padding:var(--space-8) var(--space-8) var(--space-6)}.feedback-modal-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);padding-right:var(--space-10)}.feedback-modal-header h2{margin:0;font-family:var(--font-heading);font-size:var(--text-150);font-weight:500;color:var(--text-primary)}.feedback-modal-icon{color:var(--accent-primary)}.feedback-modal-intro{color:var(--text-secondary);font-size:var(--text-95);margin-bottom:var(--space-5);line-height:1.5}.feedback-modal-row-meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-top:var(--space-1-5);min-height:18px}.feedback-modal-row-meta .error-text{margin-top:0}.feedback-modal-count{font-size:var(--text-75);color:var(--text-light);margin-left:auto}.feedback-modal-hint{display:block;font-size:var(--text-80);color:var(--text-light);margin-top:var(--space-1-5)}.feedback-screenshot-add{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2-5) var(--space-4);background-color:var(--bg-secondary);color:var(--text-primary);border:1px dashed var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-90);font-weight:500;transition:all .15s ease}.feedback-screenshot-add:hover:not(:disabled){background-color:var(--border);border-color:var(--accent-primary)}.feedback-screenshot-add:disabled{opacity:.6;cursor:not-allowed}.feedback-screenshot-preview{position:relative;display:inline-block;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;background-color:var(--bg-secondary);max-width:100%}.feedback-screenshot-preview img{display:block;max-width:280px;max-height:160px;object-fit:contain}.feedback-screenshot-remove{position:absolute;top:6px;right:6px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background-color:#161819b3;color:#fff;cursor:pointer;transition:background-color .15s ease}.feedback-screenshot-remove:hover:not(:disabled){background-color:#161819e6}.feedback-screenshot-remove:disabled{opacity:.6;cursor:not-allowed}.feedback-modal-progress{display:inline-flex;align-items:center;gap:var(--space-1-5);margin-top:var(--space-1-5);font-size:var(--text-80);color:var(--text-secondary)}.feedback-modal-progress .spin{animation:spin .8s linear infinite}.feedback-modal-context{display:flex;align-items:center;gap:var(--space-1-5);font-size:var(--text-80);color:var(--text-light);margin:var(--space-4) 0;padding:var(--space-2) var(--space-3);background-color:var(--bg-secondary);border-radius:var(--radius-sm)}.feedback-modal-context code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;word-break:break-all;color:var(--text-secondary)}.feedback-modal-error{background-color:#bf5b4e1a;color:var(--error);padding:var(--space-2-5) var(--space-3-5);border-radius:var(--radius-sm);margin-bottom:var(--space-4);font-size:var(--text-90)}.feedback-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border)}.feedback-success{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-6) var(--space-4) var(--space-4)}.feedback-success-icon{color:var(--accent-secondary);margin-bottom:var(--space-4)}.feedback-success h2{font-family:var(--font-heading);font-size:var(--text-160);font-weight:500;margin-bottom:var(--space-3);color:var(--text-primary)}.feedback-success p{color:var(--text-secondary);font-size:var(--text-95);line-height:1.5;margin-bottom:var(--space-6);max-width:380px}.feedback-success-warning{background-color:#bf5b4e14;color:var(--error);border-radius:var(--radius-sm);padding:var(--space-2-5) var(--space-3-5);margin:0 auto var(--space-5);max-width:380px;font-size:var(--text-90)}.required-mark{color:var(--error);margin-left:var(--space-0-5)}@media(max-width:480px){.feedback-modal{padding:var(--space-6) var(--space-5) var(--space-5)}.feedback-modal-footer{flex-direction:column-reverse;align-items:stretch}.feedback-modal-footer .btn{width:100%}}.feedback-fab{position:fixed;bottom:88px;right:24px;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);background-color:var(--accent-primary);color:#fff;border:none;border-radius:999px;box-shadow:0 4px 12px #1618191f,0 12px 28px #c48e6a59;cursor:pointer;font-family:var(--font-body);font-size:var(--text-95);font-weight:500;z-index:900;transition:transform .15s ease,background-color .15s ease,box-shadow .15s ease}.feedback-fab:hover{background-color:var(--accent-primary-hover);transform:translateY(-2px);box-shadow:0 6px 16px #16181926,0 14px 32px #c48e6a66}.feedback-fab:focus-visible{outline:2px solid var(--accent-primary);outline-offset:3px}.feedback-fab-label{display:inline}@media(max-width:640px){.feedback-fab{bottom:80px;right:16px;padding:var(--space-3) var(--space-4);font-size:0;gap:0}.feedback-fab-label{display:none}}.create-event-fab{position:fixed;bottom:24px;right:24px;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);background-color:var(--accent-create-event);color:#fff;border:none;border-radius:999px;box-shadow:0 4px 12px #1618191f,0 12px 28px #e5a72e59;cursor:pointer;font-family:var(--font-body);font-size:var(--text-95);font-weight:500;text-decoration:none;z-index:900;transition:transform .15s ease,background-color .15s ease,box-shadow .15s ease}.create-event-fab:hover{background-color:var(--accent-create-event-hover);color:#fff;transform:translateY(-2px);box-shadow:0 6px 16px #16181926,0 14px 32px #e5a72e66}.create-event-fab:focus-visible{outline:2px solid var(--accent-create-event);outline-offset:3px}.create-event-fab-label{display:inline}@media(max-width:640px){.create-event-fab{bottom:16px;right:16px;padding:var(--space-3) var(--space-4);font-size:0;gap:0}.create-event-fab-label{display:none}}.dm-launcher{position:fixed;left:16px;bottom:16px;z-index:3000;display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:#1f2937;color:#fff;font:600 14px/1 var(--font-body);box-shadow:0 6px 20px #00000040;cursor:pointer}.dm-launcher:hover{background:#111827}.dm-launcher:focus-visible{outline:3px solid #93c5fd;outline-offset:2px}.error-page{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 240px);padding:48px 24px 80px}.error-page-card{max-width:560px;width:100%;background-color:var(--bg-calendar);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-12) var(--space-10);text-align:center;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:var(--space-4);align-items:center}.error-page-title{font-size:var(--fs-section);color:var(--text-primary);font-weight:500;line-height:1.2;margin:0}.error-page-message{font-size:var(--fs-intro);color:var(--text-secondary);line-height:1.6;margin:0}.error-page-detail{background-color:var(--bg-secondary);color:var(--text-secondary);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-85);max-width:100%;overflow-x:auto;white-space:pre-wrap;word-break:break-word;text-align:left;margin:0}.error-page-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3);margin-top:var(--space-2)}.error-page-redirect{margin-top:var(--space-4);font-size:var(--text-90);color:var(--text-light)}.error-page-redirect-cancel{background:none;border:none;padding:0;color:var(--accent-primary);font:inherit;cursor:pointer;text-decoration:underline}.error-page-redirect-cancel:hover{color:var(--accent-primary-hover)}@media(max-width:640px){.error-page{padding:var(--space-8) var(--space-2) var(--space-16)}.error-page-card{padding:var(--space-8) var(--space-6)}}.coming-soon-progress{width:100%;display:flex;flex-direction:column;gap:var(--space-2);align-items:stretch}.coming-soon-progress-bar{height:12px;border-radius:999px;background-color:var(--bg-secondary);border:1px solid var(--border);overflow:hidden}.coming-soon-progress-fill{height:100%;background-color:var(--accent-primary);border-radius:999px;transition:width .4s ease}.coming-soon-progress-label{font-size:var(--text-90);color:var(--text-secondary)}.coming-soon-explore{margin-top:var(--space-2);font-size:var(--text-85);color:var(--text-light);text-decoration:underline}.coming-soon-explore:hover{color:var(--text-secondary)}@media(prefers-reduced-motion:reduce){.coming-soon-progress-fill{transition:none}}.region-chooser-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:flex;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-4);background-color:#1618198c}.region-chooser-backdrop[data-testid=region-chooser-pending]{align-items:center;justify-content:center;background-color:var(--bg-primary)}.region-chooser{width:min(640px,100%);margin:auto;padding:var(--space-6) var(--space-5) var(--space-8);border:1px solid var(--border);border-radius:var(--radius-md, 12px);background-color:var(--bg-primary);box-shadow:0 12px 32px #16181938}.region-chooser:focus{outline:none}.region-chooser-header{text-align:center;margin-bottom:var(--space-5)}.region-chooser-title{margin:0 0 var(--space-1-5);font-family:var(--font-heading);font-size:var(--text-180);color:var(--text-primary)}.region-chooser-hint{margin:0;font-size:var(--text-100);color:var(--text-secondary)}.region-chooser-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-6);align-items:start}.region-chooser-close{display:inline-flex;align-items:center;gap:var(--space-1-5);min-height:44px;margin:0 0 var(--space-2) auto;padding:0 var(--space-3-5);border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-95);cursor:pointer}.region-chooser-header:has(.region-chooser-close){display:flex;flex-direction:column}.region-chooser-close:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.region-chooser-apply{margin-top:var(--space-8)}@media(min-width:768px){.region-chooser{padding:var(--space-8) var(--space-8) var(--space-10)}.region-chooser-header{margin-bottom:var(--space-10)}.region-chooser .place-picker,.region-chooser .moderator-apply{max-width:none}.region-chooser .region-chooser-apply{margin-top:var(--space-12)}}.helper-photo-upload{display:flex;gap:var(--space-4);align-items:flex-start;padding:var(--space-3);border:2px dashed var(--border);border-radius:var(--radius-md)}.helper-photo-upload.is-dragover{border-color:var(--accent-primary);border-style:solid;background-color:#c48e6a1f}.helper-photo-hint{width:100%;color:var(--text-light);font-size:var(--text-85)}.helper-photo-preview{width:96px;height:96px;border-radius:var(--radius-md);background-color:var(--bg-secondary);border:1px solid var(--border);overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-light);font-size:var(--text-85)}.helper-photo-preview img{width:100%;height:100%;object-fit:cover}.helper-photo-preview-empty{text-align:center;padding:var(--space-2)}.helper-photo-controls{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.helper-photo-error{width:100%;color:var(--error);font-size:var(--text-85)}.moderator-apply{width:100%;max-width:640px;margin:var(--space-2) auto 0;padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--bg-secondary);text-align:left}.moderator-apply-intro{display:flex;gap:var(--space-3-5);align-items:flex-start}.moderator-apply-icon{flex-shrink:0;margin-top:var(--space-0-5);color:var(--accent-primary)}.moderator-apply-title{margin:0 0 var(--space-1-5);font-family:var(--font-heading);font-size:var(--text-115);color:var(--text-primary)}.moderator-apply-text{margin:0;color:var(--text-secondary);line-height:1.5}.moderator-apply-open{display:block;width:100%;margin-top:var(--space-4-5);padding:var(--space-3-5) var(--space-5);font-size:var(--text-105);font-weight:600;box-shadow:var(--shadow-sm)}.moderator-apply-form{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}.moderator-apply-form .form-group{display:flex;flex-direction:column;gap:var(--space-1)}.moderator-apply-form input,.moderator-apply-form select,.moderator-apply-form textarea{width:100%}.moderator-apply-actions{display:flex;flex-wrap:wrap;gap:var(--space-2-5)}.moderator-apply-success{margin:var(--space-3-5) 0 0;color:var(--text-primary);font-weight:500}.moderator-apply-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.donation-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#16181973;z-index:1090;display:flex;align-items:center;justify-content:center;padding:0;animation:donation-popup-fade-in .18s ease-out}.donation-popup{position:relative;max-width:420px;background-color:var(--bg-primary);border-radius:20px;margin:0 var(--space-4);width:calc(100% - 32px);padding:var(--space-7) var(--space-6) var(--space-8);box-shadow:0 4px 24px #1618192e,0 12px 40px #1618191f;animation:donation-popup-slide-up .28s cubic-bezier(.22,1,.36,1)}.donation-popup-close{position:absolute;top:12px;right:12px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:none;background-color:transparent;border-radius:50%;color:var(--text-secondary, #555);cursor:pointer;transition:background-color .15s ease,color .15s ease}.donation-popup-close:hover{background-color:#1618190f;color:var(--text-primary, #1a1a1a)}.donation-popup-close:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.donation-popup-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:16px;background-color:var(--accent-primary);color:#fff;margin-bottom:var(--space-4)}.donation-popup-title{margin:0 0 var(--space-2) 0;font-family:var(--font-heading, var(--font-body));font-size:var(--text-135);font-weight:600;line-height:1.3;color:var(--text-primary, #1a1a1a)}.donation-popup-text{margin:0 0 var(--space-5) 0;font-size:var(--text-95);line-height:1.5;color:var(--text-secondary, #555)}.donation-popup-actions{display:flex;flex-direction:column;gap:var(--space-2)}.donation-popup-donate{display:block;box-sizing:border-box;text-align:center;text-decoration:none;width:100%;padding:var(--space-3) var(--space-5);font-size:var(--text-100);font-weight:500}.donation-popup-later{width:100%;padding:var(--space-2-5) var(--space-5);background-color:transparent;border:none;color:var(--text-secondary, #555);font-family:var(--font-body);font-size:var(--text-90);font-weight:500;cursor:pointer;border-radius:999px;transition:background-color .15s ease}.donation-popup-later:hover{background-color:#1618190d}.donation-popup-later:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.pwa-install-ios-steps{margin:0 0 var(--space-5) 0;padding-left:var(--space-5);font-size:var(--text-90);line-height:1.55;color:var(--text-secondary, #555)}.pwa-install-ios-steps li{margin-bottom:var(--space-2)}.pwa-install-ios-steps li:last-child{margin-bottom:0}@keyframes donation-popup-fade-in{0%{opacity:0}to{opacity:1}}@keyframes donation-popup-slide-up{0%{transform:translateY(24px)}to{transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.donation-popup-overlay,.donation-popup{animation:none}}.cookie-consent{position:fixed;left:16px;bottom:16px;z-index:1000;width:min(520px,calc(100vw - 32px));box-sizing:border-box;padding:var(--space-4) var(--space-5);background-color:var(--bg-calendar, #fff);color:var(--text-primary);border:1px solid var(--border);border-radius:12px;box-shadow:0 6px 24px #1618192e}.cookie-consent:focus-visible{outline:3px solid var(--accent-secondary);outline-offset:2px}.cookie-consent-title{margin:0 0 var(--space-1-5);font-size:var(--text-100)}.cookie-consent-text{margin:0 0 var(--space-3);font-size:var(--text-88);line-height:1.45;color:var(--text-secondary)}.cookie-consent-text a{color:var(--accent-primary-strong);text-decoration:underline}.cookie-consent-actions{display:flex;gap:var(--space-3)}.cookie-consent-btn{flex:1;min-height:44px;padding:var(--space-2-5) var(--space-4);font:inherit;font-weight:600;color:var(--text-primary);background-color:var(--bg-secondary);border:1px solid var(--text-light);border-radius:8px;cursor:pointer}.cookie-consent-btn:hover{background-color:var(--accent-soft)}.cookie-consent-btn:focus-visible,.cookie-consent-text a:focus-visible{outline:3px solid var(--accent-secondary);outline-offset:2px}body.cookie-banner-open .feedback-fab{bottom:calc(88px + var(--cookie-banner-offset, 0px) + 16px)}body.cookie-banner-open .create-event-fab{bottom:calc(24px + var(--cookie-banner-offset, 0px) + 16px)}@media(max-width:640px){.cookie-consent{left:8px;bottom:8px;width:calc(100vw - 16px);padding:var(--space-3-5) var(--space-4)}body.cookie-banner-open .feedback-fab{bottom:calc(80px + var(--cookie-banner-offset, 0px) + 8px)}body.cookie-banner-open .create-event-fab{bottom:calc(16px + var(--cookie-banner-offset, 0px) + 8px)}}:root{--space-0-5: 2px;--space-1: 4px;--space-1-5: 6px;--space-2: 8px;--space-2-5: 10px;--space-3: 12px;--space-3-5: 14px;--space-4: 16px;--space-4-5: 18px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-9: 36px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--text-70: .7rem;--text-75: .75rem;--text-80: .8rem;--text-81: .8125rem;--text-85: .85rem;--text-88: .875rem;--text-90: .9rem;--text-92: .92rem;--text-95: .95rem;--text-100: 1rem;--text-105: 1.05rem;--text-110: 1.1rem;--text-115: 1.15rem;--text-120: 1.2rem;--text-125: 1.25rem;--text-130: 1.3rem;--text-135: 1.35rem;--text-140: 1.4rem;--text-150: 1.5rem;--text-160: 1.6rem;--text-175: 1.75rem;--text-180: 1.8rem;--text-200: 2rem;--text-250: 2.5rem;--page-gutter: 24px;--layout-column-gap: 32px;--page-bottom-space: 48px;--sidebar-gap: 16px;--filter-panel-padding: 20px;--grid-gap: 20px;--card-padding: 16px;--card-gap: 6px;--card-image-height: 160px;--row-padding: 16px;--row-gap: 16px;--nav-link-padding-y: 10px;--nav-link-padding-x: 16px;--btn-padding-y: 12px;--btn-padding-x: 24px;--btn-gap: 8px;--modal-padding-x: 32px;--footer-padding-y: 24px;--fs-hero-title: clamp(1.75rem, 1.8vw + 1.1rem, 3.5rem);--lh-body: 1.6;--lh-heading: 1.3}:root{--bg-primary: #f4f2f0;--bg-secondary: #eae7e2;--bg-calendar: #ffffff;--heading-color: #a6a487;--accent-secondary: #667c62;--accent-primary: #c48e6a;--accent-primary-hover: #9a5f38;--accent-primary-strong: #9a5f38;--accent-soft: rgba(196, 142, 106, .14);--accent-create-event: #e5a72e;--accent-create-event-hover: #b8851f;--text-primary: #161819;--text-secondary: #605e5e;--text-light: #938d87;--border: #e2dcd2;--modal-overlay: rgba(22, 24, 25, .55);--error: #bf5b4e;--error-hover: #a94a3e;--chip-bg: rgba(196, 142, 106, .14);--chip-text: #9a5f38;--free-bg: rgba(122, 138, 95, .16);--free-text: #5c6b3f;--fee-bg: rgba(196, 142, 106, .16);--fee-text: #9a5f38;--donation-bg: rgba(140, 120, 180, .16);--donation-text: #6b568b;--pending-bg: rgba(198, 160, 92, .18);--pending-text: #8a6d2f;--sound-healing: #6b568b;--category-teal: #4a7572;--shadow-sm: 0 2px 8px rgba(22, 24, 25, .06);--shadow-md: 0 4px 16px rgba(22, 24, 25, .09);--shadow-lg: 0 8px 32px rgba(22, 24, 25, .13);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px;--page-max-width: 1200px;--font-heading: "Cormorant Garamond", Georgia, serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--fs-hero: clamp(2.5rem, 5vw + 1rem, 4.75rem);--fs-section: clamp(1.75rem, 2.5vw + 1rem, 3rem);--fs-event-title: clamp(1.35rem, 1.5vw + 1rem, 2rem);--fs-intro: 1.25rem;--fs-nav: 1.125rem;--fs-body: 1rem;--fs-eventinfo: 1rem;--fs-badge: .8125rem;--fs-eyebrow: .75rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:var(--fs-body);background-color:var(--bg-primary);color:var(--text-primary);line-height:var(--lh-body);min-height:100vh;overflow-x:clip}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:500;line-height:var(--lh-heading)}.eyebrow{display:inline-block;font-size:var(--fs-eyebrow);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-light)}a{color:var(--accent-primary);text-decoration:none;transition:color .15s ease}a:hover{color:var(--accent-primary-hover)}button{font-family:var(--font-body);cursor:pointer;border:none;background:none}input,textarea,select{font-family:var(--font-body);font-size:var(--text-100)}::selection{background-color:var(--accent-primary);color:#fff}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-light)}.page-container{max-width:var(--page-max-width);margin:0 auto;padding:0 var(--page-gutter)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--btn-gap);padding:var(--btn-padding-y) var(--btn-padding-x);border-radius:var(--radius-sm);font-size:var(--text-95);font-weight:500;transition:all .15s ease}.btn-primary{background-color:var(--accent-primary);color:#fff}.btn-primary:hover{background-color:var(--accent-primary-hover);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-secondary{background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background-color:var(--border);color:var(--text-primary)}.btn-danger{background-color:var(--error);color:#fff}.btn-danger:hover{background-color:var(--error-hover);color:#fff}.btn-subtle-danger{background-color:transparent;color:var(--error);border:none;padding:var(--space-2)}.btn-subtle-danger:hover:not(:disabled){background-color:#ef44441a}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}input[type=text],input[type=email],input[type=password],input[type=number],input[type=url],input[type=date],input[type=time],textarea,select{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--bg-calendar);color:var(--text-primary);transition:border-color .15s ease,box-shadow .15s ease}input[type=date],input[type=time]{display:block;min-width:0;width:100%;max-width:100%;box-sizing:border-box;font-size:16px;-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:48px}input[type=date]::-webkit-date-and-time-value,input[type=time]::-webkit-date-and-time-value{min-height:1.5em;text-align:left}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-soft)}label{display:block;margin-bottom:var(--space-1-5);font-size:var(--text-90);font-weight:500;color:var(--text-secondary)}.form-group{margin-bottom:var(--space-5);min-width:0}.error-text{color:var(--error);font-size:var(--text-85);margin-top:var(--space-1-5)}.loading-spinner{display:flex;justify-content:center;align-items:center;padding:var(--space-12)}.loading-spinner:after{content:"";width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.fade-enter{animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.slide-left-enter{animation:slideLeftIn .3s ease-out}@keyframes slideLeftIn{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.slide-right-enter{animation:slideRightIn .3s ease-out}@keyframes slideRightIn{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}.app-layout{display:flex;flex-direction:column;min-height:100vh;overflow-x:clip}.main-content{flex:1}.category-chip{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);background-color:var(--chip-bg);color:var(--chip-text);border-radius:16px;font-size:var(--text-80);font-weight:500}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:var(--modal-overlay);display:flex;align-items:center;justify-content:center;padding:var(--space-6);z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background-color:var(--bg-calendar);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:560px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:modalIn .2s ease-out}@keyframes modalIn{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-light);transition:all .15s ease;background:none;border:none;cursor:pointer}.modal-close:hover:not(:disabled){background-color:var(--bg-secondary);color:var(--text-primary)}@media(max-width:480px){.modal-overlay{padding:var(--space-4)}}
