:root{--font-body:"Archivo", system-ui, sans-serif;--font-heading:"Archivo", system-ui, sans-serif;--color-text:#201e1d;--color-bg:#fff;--color-alert-bg:#fff4f3;--color-neutral-100:#f8f4f4;--color-neutral-200:#eae7e7;--color-neutral-300:#d7d3d3;--color-neutral-400:#bab6b6;--color-neutral-500:#9b9797;--color-neutral-600:#7d7979;--color-neutral-700:#605d5d;--color-neutral-800:#444141;--color-neutral-900:#2d2b2b;--brand-orange:#f7521c;--brand-coral:#ef3a2f;--brand-pink:#e52947;--brand-fuchsia:#d52f5e;--brand-violet:#4f116f;--brand-cream:#fcdda9;--border:2px solid var(--color-text);--radius-sm:10px;--radius-md:12px;--radius-lg:14px;--radius-pill:999px;--transition:.26s ease}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-text:#f4f1ed;--color-bg:#111214;--color-alert-bg:#351d1e;--color-neutral-100:#191b1e;--color-neutral-200:#24272b;--color-neutral-300:#34383d;--color-neutral-400:#50555b;--color-neutral-500:#70767d;--color-neutral-600:#979da3;--color-neutral-700:#bfc3c7;--color-neutral-800:#dadddf;--color-neutral-900:#f0f1f2}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:15px;line-height:1.55}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em;margin:0;font-weight:800;line-height:1.12}p{margin:0}img{max-width:100%;display:block}ul,ol{margin:0;padding:0;list-style:none}fieldset{border:0;min-width:0;margin:0;padding:0}legend{padding:0}button,input,select,textarea{font:inherit;color:inherit;margin:0}table{border-collapse:collapse}a{color:var(--brand-fuchsia);text-decoration:none}a:hover{color:var(--brand-violet)}:focus-visible{outline:2px solid var(--brand-fuchsia);outline-offset:2px}::selection{background:var(--brand-cream)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.brand{min-width:0;color:var(--color-text);letter-spacing:-.01em;align-items:center;gap:12px;font-weight:800;display:flex}.brand:hover{color:var(--brand-violet)}.brand__logo{object-fit:contain;border-radius:var(--radius-sm);flex:none;width:40px;height:40px}.brand__name{white-space:nowrap}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--brand-violet);margin:0;font-size:.72rem;font-weight:700}.pill{border-radius:var(--radius-pill);background:var(--color-bg);color:var(--brand-violet);letter-spacing:.14em;text-transform:uppercase;padding:7px 14px;font-size:.72rem;font-weight:800;display:inline-block}.btn{border:var(--border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);text-align:left;cursor:pointer;transition:background var(--transition), border-color var(--transition), color var(--transition);align-items:center;gap:8px;padding:9px 16px;font-family:inherit;font-size:.88rem;font-weight:700;line-height:1.4;display:inline-flex}.btn:hover{background:var(--brand-cream);color:var(--color-text)}.btn--primary{border-color:var(--brand-fuchsia);background:var(--brand-fuchsia);color:var(--color-bg)}.btn--primary:hover{border-color:var(--brand-violet);background:var(--brand-violet);color:var(--color-bg)}.btn--danger:hover{border-color:var(--brand-coral);background:var(--brand-coral);color:var(--color-bg)}.btn--block{border-radius:var(--radius-md);width:100%;padding:15px 18px;font-size:1rem;font-weight:800}.btn--icon{justify-content:center;width:40px;height:40px;padding:0}.icon-btn{border:var(--border);border-radius:var(--radius-sm);background:var(--color-bg);width:40px;height:40px;color:var(--color-text);cursor:pointer;transition:background var(--transition), border-color var(--transition), color var(--transition);flex:none;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--brand-cream);border-color:var(--brand-violet);color:var(--brand-violet)}.icon-btn svg{transition:transform var(--transition)}.field{margin-bottom:18px}form .field:last-of-type{margin-bottom:26px}.field__label{margin-bottom:8px;font-size:.88rem;font-weight:700;display:block}.input{border:var(--border);border-radius:var(--radius-md);background:var(--color-bg);width:100%;min-width:0;color:var(--color-text);transition:border-color var(--transition), box-shadow var(--transition);padding:14px 16px;font-family:inherit;font-size:1rem}.input::placeholder{color:var(--color-neutral-600)}.input:focus{border-color:var(--brand-fuchsia);outline:none;box-shadow:0 0 0 4px #d51f5e29}.input-with-action{position:relative}.input-with-action .input{padding-right:52px}.input-with-action__button{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--color-neutral-700);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.input-with-action__button:hover,.input-with-action__button:focus-visible{background:var(--brand-cream);color:var(--brand-violet)}.form-note{color:var(--color-neutral-700);margin-top:24px;font-size:.95rem}.form-note a{font-weight:800}.alert{border:2px solid var(--brand-coral);border-radius:var(--radius-md);background:var(--color-alert-bg);color:var(--brand-violet);margin-bottom:22px;padding:13px 16px;font-size:.92rem;font-weight:700}.alert--success{border-color:var(--brand-violet);background:var(--brand-cream)}.alert--error{border-color:var(--brand-coral);background:var(--color-alert-bg)}.alert ul{margin:0;padding-left:18px}.card-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:20px;display:grid}.card{border:var(--border);border-radius:var(--radius-lg);background:var(--color-bg);flex-direction:column;gap:12px;padding:26px 24px;display:flex}.card__accent{background:var(--brand-fuchsia);border-radius:3px;width:44px;height:6px}.card__accent--orange{background:var(--brand-orange)}.card__accent--pink{background:var(--brand-pink)}.card__accent--violet{background:var(--brand-violet)}.card__accent--coral{background:var(--brand-coral)}.card__title{letter-spacing:-.01em;font-size:1.3rem}.card__text{color:var(--color-neutral-700);text-wrap:pretty;line-height:1.6}.card__link{margin-top:6px;font-size:.9rem;font-weight:700}.stat-grid{border-top:var(--border);grid-template-columns:repeat(auto-fit,minmax(min(100%,110px),1fr));display:grid}.stat{border-left:2px solid var(--color-neutral-300);padding:20px 18px 0}.stat:first-child{border-left:0;padding-left:0}.stat:last-child{padding-right:0}.stat strong{letter-spacing:-.03em;margin-bottom:5px;font-size:2rem;font-weight:800;line-height:1;display:block}.stat span{color:var(--color-neutral-700);font-size:.88rem;font-weight:600}.table-wrap{border:var(--border);border-radius:var(--radius-lg);overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:.92rem}.table th{border-bottom:var(--border);text-align:left;letter-spacing:.12em;text-transform:uppercase;color:var(--brand-violet);white-space:nowrap;padding:14px 18px;font-size:.7rem;font-weight:700}.table td{border-bottom:2px solid var(--color-neutral-200);padding:14px 18px}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover{background:var(--color-neutral-100)}.app-shell{--sidebar-width:248px;--sidebar-padding:24px;grid-template-columns:var(--sidebar-width) minmax(0, 1fr);background:var(--color-bg);min-height:100vh;transition:grid-template-columns var(--transition);display:grid}:root[data-sidebar=closed] .app-shell{--sidebar-width:68px;--sidebar-padding:12px}.sidebar{border-right:var(--border);min-width:0;padding:28px var(--sidebar-padding);background:var(--color-bg);transition:padding var(--transition);flex-direction:column;gap:36px;display:flex;overflow:hidden}.sidebar__head{justify-content:space-between;align-items:center;gap:12px;display:flex}:root[data-sidebar=closed] .sidebar__brand,:root[data-sidebar=closed] .sidebar__nav,:root[data-sidebar=closed] .sidebar__footer{display:none}:root[data-sidebar=closed] [data-sidebar-toggle] svg{transform:rotate(180deg)}.sidebar__nav{flex-direction:column;gap:2px;display:flex}.sidebar__nav a,.sidebar__nav button{border-radius:var(--radius-sm);width:100%;color:var(--color-text);text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:11px 14px;font-family:inherit;font-size:.94rem;font-weight:600;display:block}.sidebar__nav a:hover,.sidebar__nav button:hover{background:var(--brand-cream);color:var(--brand-violet)}.sidebar__nav a.is-active{background:var(--brand-violet);color:var(--color-bg);font-weight:700}.sidebar__footer{flex-direction:column;gap:14px;margin-top:auto;display:flex}.sidebar__session{border-top:var(--border);padding-top:14px}.sidebar__session-label{letter-spacing:.12em;text-transform:uppercase;color:var(--brand-fuchsia);font-size:.7rem;font-weight:700}.sidebar__session-value{white-space:nowrap;text-overflow:ellipsis;margin-top:6px;font-size:.95rem;font-weight:700;overflow:hidden}.sidebar__footer .btn{white-space:nowrap;width:100%;padding:10px 14px;font-size:.9rem}.sidebar__backdrop{border:0;padding:0;display:none}.app-main{flex-direction:column;min-width:0;display:flex}.app-header{border-bottom:var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:18px clamp(20px,3.5vw,40px);display:flex}.app-header__actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.app-header__menu{width:44px;height:44px;display:none}.app-content{padding:clamp(24px,3.5vw,40px) clamp(20px,3.5vw,40px) 56px}.page-head{margin-bottom:clamp(24px,3vw,36px)}.page-head__title{letter-spacing:-.035em;font-size:clamp(2rem,3.6vw,3rem);line-height:1}.page-head__lead{max-width:620px;color:var(--color-neutral-700);margin-top:16px;font-size:1.05rem;line-height:1.7}.page-head__badge{border:var(--border);border-radius:var(--radius-pill);background:var(--brand-cream);margin-top:20px;padding:8px 16px;font-size:.85rem;font-weight:700;display:inline-block}.section-title{letter-spacing:-.01em;margin-bottom:18px;font-size:1.15rem}.events-section{margin-bottom:40px}.events-section--archive{border-top:var(--border);padding-top:30px}.event-card--archived{opacity:.72}.search-form{align-items:center;gap:16px;margin-bottom:32px;display:flex}.search-form .input{width:min(100%,420px)}.events-section__more{margin-top:22px}.section-heading{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.section-heading .section-title{margin-bottom:18px}.empty-state{border:2px dashed var(--color-neutral-300);border-radius:var(--radius-lg);color:var(--color-neutral-700);padding:24px}.form-panel{border:var(--border);border-radius:var(--radius-lg);width:min(100%,620px);padding:clamp(22px,4vw,34px)}.form-panel .input[type=color]{cursor:pointer;width:100%;height:54px;padding:5px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;display:grid}.event-selector{border:0;padding:0}.checkbox-row{align-items:center;gap:10px;margin-bottom:10px;font-size:.92rem;display:flex}.checkbox-row input{width:17px;height:17px;accent-color:var(--brand-fuchsia)}.form-help{color:var(--color-neutral-700);font-size:.92rem}.table__actions{white-space:nowrap}.table__actions form{display:inline}.table__actions>*+*{margin-left:14px}.admin-users{margin-top:42px}.user-role-form{align-items:center;gap:8px;min-width:255px;display:flex}.user-role-form .input{min-width:145px;padding:8px 10px}.text-btn{color:var(--brand-fuchsia);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:.9rem;font-weight:700}.text-btn:hover{color:var(--brand-violet)}.text-btn--danger{color:var(--brand-coral)}@media (width<=900px){.form-grid,.app-shell{grid-template-columns:minmax(0,1fr)}.sidebar{z-index:30;width:min(78vw,260px);transition:transform var(--transition);padding-inline:24px;position:fixed;inset:0 auto 0 0;transform:translate(-102%);box-shadow:12px 0 28px #4f116f2e}:root[data-sidebar=open] .sidebar{transform:translate(0)}:root[data-sidebar=closed] .sidebar__brand,:root[data-sidebar=closed] .sidebar__nav,:root[data-sidebar=closed] .sidebar__footer{display:flex}:root[data-sidebar=closed] .sidebar__nav{flex-direction:column}.app-header__actions{width:100%}.app-header__menu{order:-1;margin-right:auto;display:inline-flex}:root[data-sidebar=open] .sidebar__backdrop{z-index:20;cursor:pointer;background:#201e1d47;display:block;position:fixed;inset:0}.admin-users .table-wrap{border:0;border-radius:0;overflow-x:visible}.admin-users .table thead{display:none}.admin-users .table,.admin-users .table tbody,.admin-users .table tr,.admin-users .table td{width:100%;display:block}.admin-users .table tr{border:var(--border);border-radius:var(--radius-lg);margin-bottom:14px;padding:16px 18px}.admin-users .table tr:last-child{margin-bottom:0}.admin-users .table td{border-bottom:0;padding:0}.admin-users .table td+td{margin-top:10px}.admin-users .table td:first-child{font-weight:700}.admin-users .table td:nth-child(2){color:var(--color-neutral-700)}.user-role-form{flex-wrap:wrap;min-width:0}.user-role-form .input{flex:145px}}.auth-page{background:var(--color-bg);flex-direction:column;min-height:100vh;display:flex}.auth-topbar{border-bottom:var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:18px clamp(20px,3.5vw,32px);display:flex}.auth-topbar__actions{align-items:center;gap:16px;display:flex}.auth-grid{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.auth-visual{border-right:var(--border);background:var(--brand-cream);flex-direction:column;justify-content:space-between;gap:clamp(36px,5vw,48px);padding:clamp(32px,5vw,64px) clamp(22px,4vw,56px);display:flex}.auth-visual>div:first-child{flex-direction:column;flex:1;justify-content:flex-start;align-items:flex-start;display:flex}.auth-visual__title{letter-spacing:-.04em;max-width:11ch;margin:26px 0 18px;font-size:clamp(2.6rem,4.1vw,4.1rem);line-height:.94}.auth-visual__lead{max-width:440px;color:var(--color-neutral-700);font-size:1.05rem;line-height:1.7}.auth-panel{flex-direction:column;justify-content:center;padding:clamp(32px,5vw,64px) clamp(22px,4vw,56px);display:flex}.auth-panel__inner{width:100%;max-width:420px}.auth-panel__title{letter-spacing:-.025em;margin-bottom:8px;font-size:clamp(1.8rem,2.6vw,2.3rem)}.auth-panel__lead{color:var(--color-neutral-700);margin-bottom:32px;line-height:1.6}@media (width<=900px){.auth-grid{grid-template-columns:minmax(0,1fr)}.auth-visual{border-right:0;border-bottom:var(--border)}}
