@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,wght@0,300;0,400;0,500;0,600;1,300&family=DM+Mono:wght@400;500&display=swap";:root{--bg: #0f0f0f;--surface: #1a1a1a;--surface-2: #222;--border: #2a2a2a;--border-focus: #e8622a;--text: #fbf5f3;--text-muted: #777;--accent: #e8622a;--accent-dim: rgba(232, 98, 42, 0.12);--error: #e8622a;--radius: 12px;--radius-sm: 8px;--input-h: 48px}*{margin:0;padding:0;box-sizing:border-box}body{color:var(--text);font-family:"DM Sans",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}@keyframes fadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{from{opacity:0;transform:scale(0.6)}to{opacity:1;transform:scale(1)}}@keyframes drawCheck{to{stroke-dashoffset:0}}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.3}}.form-section .section-title,.logout-btn{font-family:"DM Mono",monospace;letter-spacing:.05em;text-transform:uppercase}.page{max-width:480px;padding-top:0}.header{display:flex;align-items:center;justify-content:space-between;padding-bottom:2rem;border-bottom:1px solid var(--border);margin-bottom:2.5rem;position:static;background:none;backdrop-filter:none;padding-top:2rem;padding-left:0;padding-right:0}.header .logo{margin-bottom:0}.page{opacity:0;transform:translateY(16px);animation:fadeUp .5s ease .1s forwards}.success-indicator{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:2.5rem;gap:1.25rem}.checkmark-wrap{width:64px;height:64px;border-radius:50%;background:var(--accent-dim);display:flex;align-items:center;justify-content:center;position:relative;animation:popIn .4s cubic-bezier(0.175, 0.885, 0.32, 1.275) .3s both}.checkmark-wrap::before{content:"";position:absolute;inset:-3px;border-radius:50%;border:1.5px solid var(--accent);opacity:.4}.checkmark{width:28px;height:28px;stroke:var(--accent);stroke-width:2.5;fill:none;background:none;stroke-linecap:round;stroke-linejoin:round}.checkmark-path{stroke-dasharray:40;stroke-dashoffset:40;animation:drawCheck .4s ease .6s forwards}.success-indicator h1{font-size:1.5rem;font-weight:600;letter-spacing:-0.02em;line-height:1.2}.success-indicator p{color:var(--text-muted);font-size:.95rem;line-height:1.5}.notice{background:var(--surface);border-left:3px solid var(--accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:1rem 1.25rem;margin-bottom:2rem;animation:fadeUp .5s ease .4s both;opacity:0}.notice p{font-size:.9rem;line-height:1.55;color:var(--text-muted)}.notice p strong{color:var(--text);font-weight:500}.notice-label{font-family:"DM Mono",monospace;font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin-bottom:.4rem}.section{margin-bottom:2rem;animation:fadeUp .5s ease .5s both;opacity:0}.section .section-title{font-family:"DM Mono",monospace;font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.steps-success{display:flex;flex-direction:column;gap:0;margin-bottom:0}.steps-success .step{display:flex;gap:1rem;align-items:flex-start;padding:.85rem 0;border-bottom:1px solid var(--border)}.steps-success .step:last-child{border-bottom:none}.steps-success .step-num{width:22px;height:22px;min-width:22px;border-radius:50%;background:var(--surface);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-family:"DM Mono",monospace;font-size:.65rem;color:var(--accent);margin-top:1px}.steps-success .step-text{font-size:.9rem;line-height:1.5;color:var(--text-muted)}.steps-success .step-text strong{color:var(--text);font-weight:500;display:block;margin-bottom:.15rem}.contact{background:var(--surface);border-radius:var(--radius);padding:1rem 1.25rem;margin-bottom:2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;animation:fadeUp .5s ease .6s both;opacity:0}.contact p{font-size:.875rem;color:var(--text-muted);line-height:1.4}.contact a{color:var(--accent);text-decoration:none;font-size:.875rem;font-weight:500;white-space:nowrap}.contact a:hover{text-decoration:underline}.actions{display:flex;flex-direction:column;gap:.75rem;animation:fadeUp .5s ease .7s both;opacity:0}@media(min-width: 480px){.actions{flex-direction:row}}.footer{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--border);text-align:center;animation:fadeUp .5s ease .8s both;opacity:0}.footer p{font-family:"DM Mono",monospace;font-size:.7rem;color:var(--text-muted);letter-spacing:.04em}.footer a{color:var(--text-muted);text-decoration:none}.footer a:hover{color:var(--accent)}.username-banner{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:.75rem 1rem;margin-bottom:2rem}.username-banner-label{font-size:.8rem;color:var(--text-muted)}.username-banner-slug{font-family:"DM Mono",monospace;font-size:.8rem;color:var(--accent);letter-spacing:.03em}.username-banner-change{font-family:"DM Mono",monospace;font-size:.68rem;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;text-decoration:none;transition:color .15s}.username-banner-change:hover{color:var(--accent)}.steps{display:flex;align-items:center;gap:.5rem;margin-bottom:2rem}.steps .step{display:flex;align-items:center;gap:.4rem;font-family:"DM Mono",monospace;font-size:.68rem;letter-spacing:.05em;text-transform:uppercase}.steps .step-num{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:500}.steps .step.active .step-num{background:var(--accent);color:#fff}.steps .step.active .step-label{color:var(--text)}.steps .step.inactive .step-num{background:var(--surface);border:1px solid var(--border);color:var(--text-muted)}.steps .step.inactive .step-label{color:var(--text-muted)}.steps .step.done .step-num{background:var(--surface);border:1px solid var(--accent);color:var(--accent)}.steps .step.done .step-label{color:var(--text-muted)}.steps .step-connector{flex:1;height:1px;background:var(--border)}.steps .step-connector.active{background:var(--accent)}.slug-preview{font-family:"DM Mono",monospace;font-size:.72rem;color:var(--text-muted);margin-top:.4rem;min-height:1.1em;letter-spacing:.02em;transition:color .15s}.slug-preview.ready{color:var(--accent)}.btn.loading{opacity:.6;pointer-events:none;cursor:not-allowed}body.signup,body.login{margin:5rem 0;display:flex;align-items:center;justify-content:center;min-height:100vh}body.signup nav,body.login nav{top:0;position:absolute}.box{width:100%;max-width:420px;padding:0 1rem;opacity:0;animation:fadeUp .4s ease .1s forwards}body.portal-page{padding-bottom:80px}.page{max-width:600px;margin:0 auto;padding:2rem 1.25rem}.page-title{font-size:1.4rem;font-weight:600;letter-spacing:-0.02em;margin-bottom:.25rem}.page-subtitle{font-size:.875rem;color:var(--text-muted);margin-bottom:2.5rem}.title{font-size:1.4rem;font-weight:600;letter-spacing:-0.02em;margin-bottom:.3rem}.subtitle{font-size:.875rem;color:var(--text-muted);line-height:1.55;margin-bottom:2rem}.note{margin-top:1.75rem;padding-top:1.5rem;border-top:1px solid var(--border);font-size:.8rem;color:var(--text-muted);line-height:1.55}.note a{color:var(--accent)}.save-bar{position:fixed;bottom:0;left:0;right:0;padding:1rem 1.25rem;background:rgba(15,15,15,.95);backdrop-filter:blur(12px);border-top:1px solid var(--border);z-index:10}.save-bar-inner{max-width:600px;margin:0 auto}@media(min-width: 560px){.save-bar{position:static;background:none;border:none;backdrop-filter:none;padding:0;margin-top:1rem}}.toast{position:fixed;bottom:80px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--surface-2);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius-sm);padding:.75rem 1.25rem;font-size:.875rem;white-space:nowrap;opacity:0;transition:opacity .2s,transform .2s;pointer-events:none;z-index:30}.toast.visible{opacity:1;transform:translateX(-50%) translateY(0)}@media(min-width: 560px){.toast{bottom:2rem}}.header{position:sticky;top:0;z-index:20;background:rgba(15,15,15,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);padding:.9rem 1.25rem;display:flex;align-items:center;justify-content:space-between}.header .logo{margin-bottom:0}.header-right{display:flex;align-items:center;gap:1rem;font-family:"DM Mono",monospace;font-size:.7rem;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase}.header-venue{font-family:"DM Mono",monospace;font-size:.7rem;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase}.logout-btn{font-size:.7rem;color:var(--text-muted);background:none;border:none;cursor:pointer;padding:0;transition:color .15s}.logout-btn:hover{color:var(--accent)}.redirecting{min-height:100vh;display:flex;align-items:center;justify-content:center;font-family:"DM Mono",monospace;font-size:.8rem;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase}.dashboard .page{min-height:calc(100vh - 54px)}.user-dashboard-header{display:flex;gap:2rem;align-items:flex-start}.user-dashboard-header p{font-size:.875rem;color:var(--text-muted)}.user-dashboard-header{margin-bottom:2.5rem}.form-section{margin-bottom:2.5rem}.form-section .section-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.form-section .section-title{font-size:.7rem;font-weight:500;color:var(--text-muted)}.form-section .section-divider{height:1px;background:var(--border);margin:2.5rem 0}.field{margin-bottom:1rem}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem}label{display:block;font-size:.8rem;font-weight:500;color:var(--text-muted);letter-spacing:.01em}label:not(.tnp){margin-bottom:.4rem}label .req{color:var(--accent);margin-left:2px}select,textarea,body.signup input[type=text],body.signup input[type=tel],body.signup input[type=url],body.signup input[type=email],body.signup input[type=datetime-local],body.signup input[type=number],body.signup input[type=password],body.submit input[type=text],body.submit input[type=tel],body.submit input[type=url],body.submit input[type=email],body.submit input[type=datetime-local],body.submit input[type=number],body.submit input[type=password]{width:100%;background:var(--surface);border-radius:var(--radius-sm);color:var(--text) !important;font-family:"DM Sans",sans-serif;font-size:.9rem !important;padding:0 1rem;height:var(--input-h);outline:none;transition:border-color .15s,background .15s;-webkit-appearance:none}select.error,textarea.error,body.signup input.error[type=text],body.signup input.error[type=tel],body.signup input.error[type=url],body.signup input.error[type=email],body.signup input.error[type=datetime-local],body.signup input.error[type=number],body.signup input.error[type=password],body.submit input.error[type=text],body.submit input.error[type=tel],body.submit input.error[type=url],body.submit input.error[type=email],body.submit input.error[type=datetime-local],body.submit input.error[type=number],body.submit input.error[type=password]{border-color:var(--error)}select[readonly],textarea[readonly],body.signup input[readonly][type=text],body.signup input[readonly][type=tel],body.signup input[readonly][type=url],body.signup input[readonly][type=email],body.signup input[readonly][type=datetime-local],body.signup input[readonly][type=number],body.signup input[readonly][type=password],body.submit input[readonly][type=text],body.submit input[readonly][type=tel],body.submit input[readonly][type=url],body.submit input[readonly][type=email],body.submit input[readonly][type=datetime-local],body.submit input[readonly][type=number],body.submit input[readonly][type=password]{opacity:.45;cursor:not-allowed}textarea{height:auto;min-height:90px;padding:.875rem 1rem;resize:vertical;line-height:1.5}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23777' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}select option{background:var(--surface-2)}.hint{font-size:.75rem;color:var(--text-muted);margin-top:.35rem;line-height:1.4}.field-hint{font-size:.875rem;color:var(--text-muted);margin-bottom:.5rem}.error-msg{font-size:.75rem;color:var(--accent);margin-top:.35rem;display:none}.error-msg.visible{display:block}.form-error{font-size:.8rem;color:var(--accent);min-height:1.2em;margin-top:.75rem}.tags-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.5rem;display:flex;flex-wrap:wrap;gap:.4rem;min-height:var(--input-h);align-items:center;cursor:text;transition:border-color .15s}.tags-wrap:focus-within{border-color:var(--border-focus)}.tag-pill{display:inline-flex;align-items:center;gap:.3rem;background:var(--accent-dim);border:1px solid rgba(232,98,42,.25);border-radius:4px;padding:.2rem .5rem .2rem .6rem;font-size:.8rem;color:var(--accent);font-family:"DM Mono",monospace}.tag-remove{background:none;border:none;color:var(--accent);cursor:pointer;font-size:.9rem;line-height:1;padding:0;opacity:.6;transition:opacity .1s}.tag-remove:hover{opacity:1}.tag-input{background:none;border:none;outline:none;color:var(--text);font-family:"DM Sans",sans-serif;font-size:.9rem;min-width:80px;flex:1;padding:.25rem .5rem;height:auto}.file-input-wrap{position:relative}.file-input-label{display:flex;align-items:center;gap:.75rem;background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius-sm);padding:1rem;cursor:pointer;transition:border-color .15s ease}.file-input-label:hover{border-color:var(--accent)}.file-input-label input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;height:100%;width:100%}.file-icon{width:36px;height:36px;background:var(--surface-2);border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.file-icon svg{width:16px;height:16px;stroke:var(--accent);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.file-text p{font-size:.875rem;font-weight:500;color:var(--text)}.file-text small{font-size:.75rem;color:var(--text-muted)}.file-preview{margin-top:.75rem;align-items:center;gap:.75rem;background:var(--surface);border-radius:var(--radius-sm);padding:.75rem}.file-preview:not(.user){display:none}.file-preview.user{display:flex}.file-preview.visible{display:flex}.file-preview img,.user-img{width:44px;height:44px;object-fit:cover;border-radius:6px}.file-preview-name{font-size:.8rem;color:var(--text-muted);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-preview-remove{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem;padding:0 .25rem;line-height:1}.file-preview-remove:hover{color:var(--accent)}.event-fields{display:none}.event-fields.visible{display:block}.repeat-week-row{display:none}.repeat-week-row.visible{display:grid}.or-span{margin:1rem 0}.type-toggle{display:flex;gap:.5rem;margin-bottom:1.5rem}.type-btn{flex:1;height:40px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-muted);font-family:"DM Sans",sans-serif;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .15s}.type-btn.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.dash-grid{display:grid;gap:1.5rem;margin-top:2.5rem}.dash-card{display:block;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;text-decoration:none;transition:border-color .15s,transform .15s}.dash-card:hover{border-color:var(--accent);transform:translateY(-2px)}.dash-card-icon{width:40px;height:40px;background:var(--accent-dim);border-radius:8px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.dash-card-icon svg{width:20px;height:20px;stroke:var(--accent);fill:none;stroke-width:2}.dash-card h3{font-size:1.1rem;margin-bottom:.5rem;color:var(--text)}.dash-card p{font-size:.875rem;color:var(--text-muted);line-height:1.5}.event-list{display:grid;gap:1rem;margin-top:2rem}.event-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.event-info{flex:1}.event-title{font-size:1rem;margin-bottom:.25rem;color:var(--text)}.event-meta{font-size:.875rem;color:var(--text-muted)}.event-actions{display:flex;gap:.5rem}.btn-edit{padding:.5rem 1rem;background:var(--accent-dim);color:var(--accent);border:1px solid rgba(232,98,42,.25);border-radius:var(--radius-sm);font-size:.875rem;text-decoration:none;font-family:"DM Sans",sans-serif}.btn-delete{padding:.5rem 1rem;background:rgba(0,0,0,0);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.875rem;cursor:pointer;font-family:"DM Sans",sans-serif}.empty-state{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;text-align:center}.empty-state p{color:var(--text-muted);margin-bottom:1rem}.empty-state .btn{display:inline-block;padding:.75rem 1.5rem;background:var(--accent);color:#fff;border-radius:var(--radius-sm);text-decoration:none}.modal-actions{display:flex;gap:.75rem;margin-top:1.5rem}