:root{color-scheme:dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5;--bg: #0a0a0a;--surface: rgba(255, 255, 255, .04);--surface-hover: rgba(255, 255, 255, .08);--border: rgba(255, 255, 255, .1);--text: #fafafa;--text-muted: rgba(255, 255, 255, .55);--text-secondary: rgba(255, 255, 255, .7);--accent: #6366f1;--accent-hover: #818cf8;--success: #22c55e;--danger: #ef4444;--danger-hover: #f87171;--warning: #f59e0b}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100vh;background:var(--bg);color:var(--text)}.app{max-width:960px;margin:0 auto;padding:2rem 1.5rem}.app-header{margin-bottom:2rem}.app-header h1{font-size:1.75rem;font-weight:700;letter-spacing:-.03em}.app-header p{color:var(--text-muted);font-size:.9rem;margin-top:.25rem}.tabs{display:flex;gap:.25rem;margin-bottom:2rem;border-bottom:1px solid var(--border);padding-bottom:0}.tab{padding:.6rem 1.2rem;background:none;border:none;color:var(--text-muted);font-size:.9rem;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s,border-color .15s;font-family:inherit}.tab:hover{color:var(--text-secondary)}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.card{background:var(--surface);border:1px solid var(--border);border-radius:.75rem;padding:1.5rem;margin-bottom:1rem}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.card-title{font-size:1.1rem;font-weight:600}.card-meta{color:var(--text-muted);font-size:.8rem;margin-top:.25rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin-bottom:1.5rem}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:.75rem;padding:1.25rem;text-align:center}.stat-value{font-size:2rem;font-weight:700;letter-spacing:-.03em}.stat-label{color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;margin-top:.25rem}.stat-value.accent{color:var(--accent)}.stat-value.success{color:var(--success)}.stat-value.warning{color:var(--warning)}.stat-value.danger{color:var(--danger)}.btn{padding:.55rem 1.1rem;border:1px solid var(--border);border-radius:.5rem;background:var(--surface);color:var(--text);font-size:.85rem;cursor:pointer;font-family:inherit;transition:background .15s,border-color .15s}.btn:hover{background:var(--surface-hover)}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-success{background:#22c55e26;border-color:#22c55e4d;color:var(--success)}.btn-success:hover{background:#22c55e40}.btn-danger{background:#ef44441a;border-color:#ef444440;color:var(--danger)}.btn-danger:hover{background:#ef444433;border-color:#ef444466}.btn-sm{padding:.35rem .75rem;font-size:.78rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.8rem;color:var(--text-muted);margin-bottom:.35rem;text-transform:uppercase;letter-spacing:.08em}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.6rem .8rem;background:#ffffff0d;border:1px solid var(--border);border-radius:.5rem;color:var(--text);font-size:.9rem;font-family:inherit;outline:none;transition:border-color .15s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent)}.form-group textarea{resize:vertical;min-height:60px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.attendee-list{list-style:none}.attendee-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--border)}.attendee-item:last-child{border-bottom:none}.attendee-info{display:flex;align-items:center;gap:.75rem}.attendee-avatar{width:36px;height:36px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.85rem;color:#fff;flex-shrink:0}.attendee-name{font-weight:500;font-size:.9rem}.attendee-email{color:var(--text-muted);font-size:.78rem}.attendee-actions{display:flex;gap:.5rem;align-items:center}.badge{display:inline-block;padding:.2rem .6rem;border-radius:999px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.badge-checked-in{background:#22c55e26;color:var(--success)}.badge-checked-out{background:#f59e0b26;color:var(--warning)}.badge-absent{background:#ef44441a;color:var(--danger)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem}.modal{background:#141414;border:1px solid var(--border);border-radius:.75rem;padding:1.75rem;max-width:480px;width:100%}.modal h2{font-size:1.15rem;margin-bottom:1.25rem}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.empty{text-align:center;padding:3rem 1rem;color:var(--text-muted)}.empty p{margin-bottom:1rem}.back-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--text-muted);font-size:.85rem;cursor:pointer;background:none;border:none;font-family:inherit;margin-bottom:1.25rem;padding:0}.back-link:hover{color:var(--text)}.event-detail-header{margin-bottom:1.5rem}.event-detail-header h2{font-size:1.4rem;font-weight:700;margin-bottom:.25rem}.event-detail-header p{color:var(--text-muted);font-size:.9rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h3{font-size:1rem;font-weight:600}.search-bar{padding:.55rem .8rem;background:#ffffff0d;border:1px solid var(--border);border-radius:.5rem;color:var(--text);font-size:.85rem;font-family:inherit;outline:none;width:220px;transition:border-color .15s}.search-bar:focus{border-color:var(--accent)}.add-attendee-row{display:flex;gap:.5rem;margin-bottom:1rem}.add-attendee-row input{flex:1;padding:.55rem .8rem;background:#ffffff0d;border:1px solid var(--border);border-radius:.5rem;color:var(--text);font-size:.85rem;font-family:inherit;outline:none}.add-attendee-row input:focus{border-color:var(--accent)}.progress-bar-container{width:100%;height:6px;background:#ffffff14;border-radius:3px;overflow:hidden;margin-top:.5rem}.progress-bar{height:100%;background:var(--accent);border-radius:3px;transition:width .3s ease}@media(max-width:600px){.app{padding:1rem}.form-row{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.attendee-item{flex-direction:column;align-items:flex-start;gap:.5rem}.attendee-actions{width:100%;justify-content:flex-end}}
