:root{--bg:#faf6f4;--surface:#ffffff;--text:#201820;--muted:#6d626b;--border:#e9dfe3;--accent:#d6336c;--accent-hover:#b32a58;--accent-contrast:#ffffff;--ok:#2f9e6f;--danger:#d33;--radius:14px;--shadow:0 1px 2px rgba(0,0,0,.05),0 10px 30px rgba(0,0,0,.06)}@media (prefers-color-scheme:dark){:root{--bg:#15101a;--surface:#201826;--text:#f2ecf1;--muted:#a99fa8;--border:#362b3d;--accent:#ff5c8a;--accent-hover:#ff7ba1;--accent-contrast:#1a1020;--shadow:0 1px 2px rgba(0,0,0,.3),0 10px 30px rgba(0,0,0,.35)}}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}main{max-width:760px;margin:0 auto;padding:2rem 1.25rem 4rem}h1{font-size:1.9rem;line-height:1.15;letter-spacing:-.02em;margin:0 0 .75rem}h2{font-size:1.25rem;margin:1.75rem 0 .5rem}p{margin:.4rem 0}a{color:var(--accent);text-decoration:none;font-weight:600}a:hover{text-decoration:underline}input,select,textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:.6rem .75rem;width:100%;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}textarea{min-height:96px;resize:vertical}label{display:grid;grid-gap:.3rem;gap:.3rem;font-size:.9rem;color:var(--muted)}button{font:inherit;font-weight:600;cursor:pointer;border:1px solid var(--accent);background:var(--accent);color:var(--accent-contrast);border-radius:10px;padding:.6rem 1.1rem;transition:background .15s,border-color .15s,opacity .15s}button:hover{background:var(--accent-hover);border-color:var(--accent-hover)}button:disabled{opacity:.5;cursor:not-allowed}button.ghost{background:transparent;color:var(--accent)}button.ghost:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}.row{display:flex;justify-content:space-between;align-items:center;gap:1rem}.stack{display:grid;grid-gap:.75rem;gap:.75rem}.muted{color:var(--muted)}.error{color:var(--danger);font-weight:600}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.5rem}.auth{min-height:80vh;display:grid;place-items:center}.auth-card{width:100%;max-width:380px;display:grid;grid-gap:1rem;gap:1rem}.divider{display:flex;align-items:center;gap:.75rem;color:var(--muted);font-size:.85rem}.divider:after,.divider:before{content:"";height:1px;background:var(--border);flex:1 1}.event-list{list-style:none;padding:0;margin:1rem 0 0;display:grid;grid-gap:.75rem;gap:.75rem}.event-card{display:block;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1rem 1.25rem;color:inherit;font-weight:400}.event-card:hover{text-decoration:none;border-color:var(--accent)}.event-card .name{font-weight:700;font-size:1.1rem;color:var(--text)}.event-card .meta{color:var(--muted);font-size:.9rem}.badge{display:inline-block;font-size:.75rem;font-weight:700;padding:.15rem .5rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent)}.hero{text-align:center;padding:2rem 0 1rem}.hero h1{font-size:2.4rem}.hero .tagline{color:var(--muted);font-size:1.05rem}