:root{--primary:#2563eb;--primary-hover:#1d4ed8;--primary-light:#eff6ff;--success:#16a34a;--success-light:#f0fdf4;--warning:#f59e0b;--warning-light:#fffbeb;--danger:#dc2626;--muted:#6b7280;--bg:#f8fafc;--surface:#fff;--border:#e2e8f0;--text:#0f172a;--text-secondary:#64748b;--radius:10px;--radius-lg:14px;--shadow:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-md:0 4px 6px -1px #00000012, 0 2px 4px -2px #0000000d;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -4px #0000000a;color:var(--text);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:16px;line-height:1.6}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100dvh}.app{flex-direction:column;min-height:100dvh;display:flex}.header{border-bottom:1px solid var(--border);z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;padding:0 20px;position:sticky;top:0}.header-inner{align-items:center;gap:24px;max-width:800px;height:52px;margin:0 auto;display:flex}.logo{color:var(--text);white-space:nowrap;letter-spacing:-.3px;font-size:16px;font-weight:700;text-decoration:none}.nav{flex:1;justify-content:center;align-items:center;gap:2px;font-size:13px;display:flex;overflow-x:auto}.nav a,.nav-link-logout{color:var(--text-secondary);white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px 12px;font-family:inherit;font-size:13px;font-weight:500;text-decoration:none;transition:color .15s}.nav a:hover,.nav-link-logout:hover{color:var(--text)}.nav a.nav-active{color:var(--primary);font-weight:600}.nav-schedule-link{position:relative}.nav a .nav-badge,.nav-mobile a .nav-badge{color:#fff;vertical-align:middle;background:#dc2626;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;margin-left:4px;padding:0 5px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.main{flex:1;padding:32px 20px}.page{max-width:800px;margin:0 auto}.page-center{max-width:560px;margin:0 auto}.page h1{letter-spacing:-.5px;margin-bottom:4px;font-size:24px;font-weight:700}.page-center h1{text-align:center;margin-bottom:8px;font-size:28px;font-weight:700}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.page-header-sub{color:var(--text-secondary);margin-top:2px;font-size:14px}.subtitle{color:var(--text-secondary);text-align:center;margin-bottom:24px}.event-hero{text-align:center;padding:8px 0 24px}.event-hero-badge{background:var(--primary-light);color:var(--primary);text-transform:uppercase;letter-spacing:.5px;border-radius:20px;margin-bottom:16px;padding:4px 14px;font-size:12px;font-weight:600;display:inline-block}.event-hero-title{letter-spacing:-.8px;color:var(--text);margin-bottom:8px;font-size:32px;font-weight:800;line-height:1.2}.event-hero-description{color:var(--text-secondary);max-width:480px;margin:0 auto;font-size:16px;line-height:1.6}.event-details-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);margin-bottom:20px;padding:8px}.event-detail-row{border-radius:var(--radius);align-items:center;gap:14px;padding:14px 16px;display:flex}.event-detail-row+.event-detail-row{border-top:1px solid var(--border)}.event-detail-icon{background:var(--bg);width:36px;height:36px;color:var(--primary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.event-detail-label{text-transform:uppercase;letter-spacing:.3px;color:var(--text-secondary);font-size:12px;font-weight:500}.event-detail-value{color:var(--text);font-size:15px;font-weight:500}.event-action-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow);padding:32px 24px}.event-action-card h3{margin-bottom:6px;font-size:20px;font-weight:700}.event-action-subtitle{color:var(--text-secondary);margin-bottom:20px;font-size:14px}.event-action-card.registered{background:var(--success-light);border-color:#bbf7d0}.registered-badge{color:var(--success);align-items:center;gap:8px;margin-bottom:8px;font-size:16px;font-weight:600;display:inline-flex}.event-action-buttons{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.login-form{flex-direction:column;gap:12px;max-width:360px;margin:0 auto;display:flex}.login-input{text-align:center;font-size:16px}.magic-link-sent{padding:8px 0}.magic-link-icon{color:var(--primary);margin-bottom:12px}.magic-link-sent h3{color:var(--primary);margin-bottom:8px}.admin-link-section{text-align:center;margin-top:20px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);margin-bottom:16px;padding:24px}.card h2{margin-bottom:12px;font-size:18px;font-weight:600}.card h3{margin-bottom:8px;font-size:16px;font-weight:600}.form-stack{flex-direction:column;gap:16px;display:flex}.form-stack label{color:var(--text-secondary);flex-direction:column;gap:4px;font-size:14px;font-weight:500;display:flex}.form-row{align-items:flex-end;gap:8px;display:flex}.form-row label{color:var(--text-secondary);flex-direction:column;flex:1;gap:4px;font-size:14px;font-weight:500;display:flex}input,textarea,select{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--text);padding:10px 14px;font-family:inherit;font-size:16px;transition:border-color .15s,box-shadow .15s}input:focus,textarea:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #2563eb1f}textarea{resize:vertical}.checkbox-group{flex-direction:column;gap:8px;display:flex}.checkbox-label{cursor:pointer;align-items:center;gap:8px;display:flex;flex-direction:row!important;font-weight:400!important}.checkbox-label input[type=checkbox]{width:auto}.hint{color:var(--muted);font-size:13px}.btn{background:var(--primary);color:#fff;border-radius:var(--radius);cursor:pointer;white-space:nowrap;border:none;justify-content:center;align-items:center;padding:10px 20px;font-size:14px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.btn:hover{background:var(--primary-hover);box-shadow:var(--shadow-md)}.btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none;background:#94a3b8}.btn-lg{border-radius:var(--radius);padding:12px 28px;font-size:15px}.btn-secondary{background:var(--surface);color:var(--primary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--primary-light);border-color:var(--primary)}.btn-register{border-radius:var(--radius);padding:14px 36px;font-size:16px}.button-group{flex-wrap:wrap;gap:12px;display:flex}.btn-link{color:var(--primary);cursor:pointer;font-size:inherit;font-weight:inherit;background:0 0;border:none;padding:0}.btn-link:hover{text-decoration:underline}.btn-small{padding:4px 12px;font-size:13px}.btn-accept{background:var(--success)}.btn-accept:hover{background:#15803d}.btn-decline{background:var(--danger)}.btn-decline:hover{background:#b91c1c}.btn-cancel{color:var(--danger);border:1px solid var(--danger);background:0 0}.btn-cancel:hover{background:#fef2f2}.btn-book{width:100%;padding:8px 16px}.attendee-grid{grid-template-columns:1fr;gap:16px;margin-top:8px;display:grid}@media (width>=600px){.attendee-grid{grid-template-columns:1fr 1fr}}.attendee-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:inherit;align-items:flex-start;gap:12px;padding:16px;text-decoration:none;transition:box-shadow .15s;display:flex}.attendee-card:hover{box-shadow:var(--shadow-lg)}.attendee-card-v2{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:12px;padding:20px;transition:box-shadow .15s,border-color .15s;display:flex}.attendee-card-v2:hover{box-shadow:var(--shadow-md);border-color:#cbd5e1}.attendee-card-top{align-items:center;gap:12px;display:flex}.attendee-card-name h3{margin:0;font-size:16px;font-weight:600}.attendee-card-bio{color:var(--text-secondary);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:14px;line-height:1.5;display:-webkit-box;overflow:hidden}.attendee-card-actions{margin-top:auto;padding-top:4px}.attendee-meeting-badge{border-radius:10px;margin-top:2px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.badge-confirmed{color:#065f46;background:#d1fae5}.badge-pending-small{color:#92400e;background:#fef3c7}.attendee-avatar{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:18px;font-weight:700;display:flex}.attendee-avatar.large{width:72px;height:72px;font-size:30px}.attendee-info h3{margin-bottom:4px;font-size:16px;font-weight:600}.attendee-bio{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;display:-webkit-box;overflow:hidden}.you-badge{background:var(--bg);border:1px solid var(--border);color:var(--muted);vertical-align:middle;border-radius:10px;margin-left:8px;padding:1px 8px;font-size:11px;font-weight:500;display:inline-block}.profile-card-v2{text-align:center}.profile-header-v2{flex-direction:column;align-items:center;gap:12px;margin-bottom:16px;display:flex}.profile-header-v2 h1{margin-bottom:0}.profile-bio-v2{color:var(--text-secondary);text-align:left;background:var(--bg);border-radius:var(--radius);margin-bottom:16px;padding:16px;line-height:1.6}.profile-contact{flex-direction:column;gap:8px;margin-bottom:8px;display:flex}.profile-contact-item{color:var(--text-secondary);align-items:center;gap:8px;font-size:14px;display:inline-flex}.booking-section{border-top:1px solid var(--border);text-align:left;margin-top:24px;padding-top:24px}.booking-section h3{margin-bottom:12px;font-size:16px;font-weight:600}.booking-success{background:var(--success-light);border-radius:var(--radius);text-align:center;border:1px solid #bbf7d0;margin-top:24px;padding:24px}.booking-success-icon{color:var(--success);margin-bottom:8px}.booking-success h3{color:var(--success);margin-bottom:4px}.booking-success p{color:var(--text-secondary);font-size:14px}.existing-meeting-status{border-radius:var(--radius);text-align:left;align-items:center;gap:12px;padding:16px;display:flex}.existing-meeting-status.status-confirmed{background:var(--success-light);color:var(--success);border:1px solid #bbf7d0}.existing-meeting-status.status-pending{background:var(--warning-light);color:#92400e;border:1px solid #fde68a}.existing-meeting-icon{flex-shrink:0}.existing-meeting-status strong{font-size:15px;display:block}.existing-meeting-status .meeting-time{color:inherit;opacity:.8}.slot-picker{flex-wrap:wrap;gap:8px;margin:12px 0 16px;display:flex}.slot-btn{border:2px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;padding:10px 18px;font-size:14px;font-weight:500;transition:all .15s}.slot-btn:hover{border-color:var(--primary);background:var(--primary-light)}.slot-btn.selected{border-color:var(--primary);background:var(--primary-light);color:var(--primary);font-weight:600}.section-title{align-items:center;gap:8px;margin-bottom:12px;font-size:16px;font-weight:600;display:flex}.section-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.dot-warning{background:var(--warning)}.dot-success{background:var(--success)}.dot-muted{background:var(--muted)}.section-count{background:var(--bg);color:var(--text-secondary);border-radius:10px;padding:2px 8px;font-size:12px;font-weight:600}.meeting-list{flex-direction:column;gap:10px;margin-bottom:28px;display:flex}.meeting-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;transition:box-shadow .15s;display:flex}.meeting-card:hover{box-shadow:var(--shadow)}.meeting-card.incoming{border-left:4px solid var(--warning);background:var(--warning-light)}.meeting-card.confirmed{border-left:4px solid var(--success)}.meeting-card.pending{border-left:4px solid var(--muted)}.meeting-card.past{opacity:.6}.meeting-info strong{font-size:15px}.meeting-label{color:var(--text-secondary);margin-left:6px;font-size:13px}.meeting-time{color:var(--text-secondary);margin-top:2px;font-size:13px}.meeting-contact{color:var(--text-secondary);gap:16px;margin-top:4px;font-size:13px;display:flex}.meeting-actions{align-items:center;gap:8px;display:flex}.empty-state{text-align:center;color:var(--text-secondary);padding:48px 0}.empty-state-card{text-align:center;color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:48px 24px}.empty-state-icon{color:var(--border);margin-bottom:12px}.empty-state-card h3{color:var(--text);margin-bottom:4px;font-size:18px;font-weight:600}.badge{text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-block}.badge-pending{color:#92400e;background:#fef3c7}.badge-accepted{color:#065f46;background:#d1fae5}.badge-declined{color:#991b1b;background:#fee2e2}.badge-cancelled{color:#6b7280;background:#f3f4f6}.success-message{text-align:center;background:var(--success-light);border-radius:var(--radius);border:1px solid #bbf7d0;padding:16px}.success-message h3{color:var(--success)}.stats-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin:16px 0;display:grid}@media (width>=600px){.stats-grid{grid-template-columns:repeat(4,1fr)}}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:center;padding:16px}.stat-number{color:var(--primary);font-size:32px;font-weight:700}.stat-label{color:var(--text-secondary);font-size:13px}.admin-table{flex-direction:column;gap:8px;margin:12px 0 24px;display:flex}.admin-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.admin-actions{align-items:center;gap:8px;display:flex}.dim{color:var(--text-secondary);font-size:14px}.share-section{background:var(--bg);border-radius:var(--radius);text-align:center;margin-top:16px;padding:16px}.share-input{flex:1;font-size:14px}.back-link{color:var(--primary);margin-bottom:16px;font-size:14px;font-weight:500;text-decoration:none;display:inline-block}.back-link:hover{text-decoration:underline}.error{color:var(--danger)}section{margin-bottom:8px}section h2{margin-bottom:4px;font-size:18px;font-weight:600}.hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;margin-left:auto;padding:6px;display:none}.hamburger-line{background:var(--text);border-radius:1px;width:20px;height:2px;transition:transform .2s,opacity .2s;display:block}.hamburger-line.open:first-child{transform:translateY(7px)rotate(45deg)}.hamburger-line.open:nth-child(2){opacity:0}.hamburger-line.open:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav-mobile{border-top:1px solid var(--border);flex-direction:column;padding:8px 0 16px;display:none}.nav-mobile a,.nav-mobile .nav-link-logout{color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;padding:10px 16px;font-family:inherit;font-size:15px;font-weight:500;text-decoration:none}.nav-mobile a:hover,.nav-mobile .nav-link-logout:hover{background:var(--bg);color:var(--text)}.nav-mobile a.nav-active{color:var(--primary);font-weight:600}.nav-mobile .nav-link-logout{color:var(--danger)}@media (width<=640px){.nav-desktop{display:none!important}.hamburger,.nav-mobile{display:flex}}@media (width<=480px){.event-hero-title{font-size:26px}.event-action-buttons{flex-direction:column}.event-action-buttons .btn{width:100%}.page-header{flex-direction:column;gap:12px}.meeting-card{padding:14px 16px}}
