*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--color-neutral-50, #F8FAFC);font-family:DM Sans,system-ui,sans-serif}[data-theme=dark] body{background:var(--color-neutral-950, #020617)}.app-shell{min-height:100vh;display:flex;flex-direction:column}.topbar{background:var(--color-neutral-0, #fff);border-bottom:1px solid var(--color-neutral-200, #E2E8F0);padding:0 1.5rem;height:60px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100}[data-theme=dark] .topbar{background:var(--color-neutral-900, #0f172a);border-bottom-color:var(--color-neutral-800)}.topbar-brand{font-size:1.125rem;font-weight:800;color:var(--color-neutral-900, #0f172a);font-family:Plus Jakarta Sans,system-ui,sans-serif;display:flex;align-items:center;gap:.5rem;text-decoration:none}[data-theme=dark] .topbar-brand{color:var(--color-neutral-50, #f8fafc)}.topbar-actions{display:flex;align-items:center;gap:.75rem}.topbar-user{font-size:.8125rem;color:var(--color-neutral-500)}.main-content{flex:1;padding:2rem 1.5rem;max-width:1100px;margin:0 auto;width:100%}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.page-title{font-size:1.75rem;font-weight:800;color:var(--color-neutral-900, #0f172a);margin:0 0 .25rem;font-family:Plus Jakarta Sans,system-ui,sans-serif}[data-theme=dark] .page-title{color:var(--color-neutral-50, #f8fafc)}.page-subtitle{font-size:.9375rem;color:var(--color-neutral-500);margin:0}.conference-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem}.conference-card{background:var(--color-neutral-0, #fff);border:1px solid var(--color-neutral-200, #E2E8F0);border-radius:.875rem;overflow:hidden;transition:box-shadow .15s,transform .15s;cursor:pointer}.conference-card:hover{box-shadow:0 8px 24px #00000014;transform:translateY(-2px)}[data-theme=dark] .conference-card{background:var(--color-neutral-900, #0f172a);border-color:var(--color-neutral-800)}.conference-card-img{width:100%;height:160px;-o-object-fit:cover;object-fit:cover;background:var(--color-neutral-100, #F1F5F9);display:flex;align-items:center;justify-content:center;font-size:3rem}.conference-card-body{padding:1.25rem}.conference-card-title{font-size:1rem;font-weight:700;color:var(--color-neutral-900, #0f172a);margin:0 0 .375rem;font-family:Plus Jakarta Sans,system-ui,sans-serif;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}[data-theme=dark] .conference-card-title{color:var(--color-neutral-50, #f8fafc)}.conference-card-meta{font-size:.8125rem;color:var(--color-neutral-500);margin:0 0 .75rem;display:flex;flex-direction:column;gap:.25rem}.conference-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:.75rem;border-top:1px solid var(--color-neutral-100)}[data-theme=dark] .conference-card-footer{border-top-color:var(--color-neutral-800)}.detail-layout{display:grid;grid-template-columns:1fr 340px;gap:2rem;align-items:start}@media(max-width:768px){.detail-layout{grid-template-columns:1fr}}.detail-card{background:var(--color-neutral-0, #fff);border:1px solid var(--color-neutral-200);border-radius:.875rem;overflow:hidden}[data-theme=dark] .detail-card{background:var(--color-neutral-900);border-color:var(--color-neutral-800)}.detail-card-header{padding:1.5rem;border-bottom:1px solid var(--color-neutral-100)}[data-theme=dark] .detail-card-header{border-bottom-color:var(--color-neutral-800)}.detail-card-body{padding:1.5rem}.detail-title{font-size:1.5rem;font-weight:800;color:var(--color-neutral-900);margin:0 0 .5rem;font-family:Plus Jakarta Sans,system-ui,sans-serif}[data-theme=dark] .detail-title{color:var(--color-neutral-50)}.detail-description{font-size:.9375rem;color:var(--color-neutral-600);line-height:1.7;margin:0;white-space:pre-wrap}[data-theme=dark] .detail-description{color:var(--color-neutral-400)}.detail-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem}.detail-meta-item{display:flex;flex-direction:column;gap:.25rem}.detail-meta-label{font-size:.75rem;font-weight:600;color:var(--color-neutral-400);text-transform:uppercase;letter-spacing:.06em}.detail-meta-value{font-size:.9375rem;color:var(--color-neutral-700);font-weight:500}[data-theme=dark] .detail-meta-value{color:var(--color-neutral-300)}.reg-card{background:var(--color-neutral-0, #fff);border:1px solid var(--color-neutral-200);border-radius:.875rem;padding:1.5rem;position:sticky;top:80px}[data-theme=dark] .reg-card{background:var(--color-neutral-900);border-color:var(--color-neutral-800)}.reg-fee{font-size:1.75rem;font-weight:800;color:var(--color-neutral-900);margin:0 0 .25rem;font-family:Plus Jakarta Sans,system-ui,sans-serif}[data-theme=dark] .reg-fee{color:var(--color-neutral-50)}.reg-fee-label{font-size:.8125rem;color:var(--color-neutral-500);margin:0 0 1.25rem}.reg-stats{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem;padding-bottom:1.25rem;border-bottom:1px solid var(--color-neutral-100)}[data-theme=dark] .reg-stats{border-bottom-color:var(--color-neutral-800)}.reg-stat-row{display:flex;justify-content:space-between;font-size:.875rem;color:var(--color-neutral-600)}[data-theme=dark] .reg-stat-row{color:var(--color-neutral-400)}.reg-stat-row strong{color:var(--color-neutral-900)}[data-theme=dark] .reg-stat-row strong{color:var(--color-neutral-100)}.form-page{max-width:680px;margin:0 auto}.form-section{background:var(--color-neutral-0, #fff);border:1px solid var(--color-neutral-200);border-radius:.875rem;padding:1.75rem;margin-bottom:1.5rem}[data-theme=dark] .form-section{background:var(--color-neutral-900);border-color:var(--color-neutral-800)}.form-section-title{font-size:.9375rem;font-weight:700;color:var(--color-neutral-800);margin:0 0 1.25rem;font-family:Plus Jakarta Sans,system-ui,sans-serif}[data-theme=dark] .form-section-title{color:var(--color-neutral-200)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:600px){.form-row{grid-template-columns:1fr}}.form-group{display:flex;flex-direction:column;gap:.375rem;margin-bottom:1rem}.form-label{font-size:.8125rem;font-weight:600;color:var(--color-neutral-700)}[data-theme=dark] .form-label{color:var(--color-neutral-300)}.form-input,.form-select,.form-textarea{padding:.5rem .75rem;border:1px solid var(--color-neutral-300);border-radius:.5rem;font-size:.9375rem;color:var(--color-neutral-900);background:var(--color-neutral-0, #fff);width:100%;outline:none;transition:border-color .15s;font-family:inherit}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-primary, #1A46CC);box-shadow:0 0 0 3px #1a46cc1f}[data-theme=dark] .form-input,[data-theme=dark] .form-select,[data-theme=dark] .form-textarea{background:var(--color-neutral-800);border-color:var(--color-neutral-700);color:var(--color-neutral-100)}.form-textarea{resize:vertical;min-height:100px}.form-error{font-size:.8125rem;color:var(--color-error, #DC2626)}.form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;border:none;transition:background .15s,opacity .15s;text-decoration:none;white-space:nowrap;font-family:inherit}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary, #1A46CC);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark, #1539A8)}.btn-outline{background:transparent;color:var(--color-primary, #1A46CC);border:1.5px solid var(--color-primary, #1A46CC)}.btn-outline:hover:not(:disabled){background:var(--color-primary-subtle, #EEF4FF)}.btn-ghost{background:transparent;color:var(--color-neutral-600);border:1.5px solid var(--color-neutral-300)}.btn-ghost:hover:not(:disabled){background:var(--color-neutral-100)}.btn-danger{background:var(--color-error, #DC2626);color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-success{background:var(--color-success, #16a34a);color:#fff}.btn-sm{padding:.375rem .75rem;font-size:.8125rem}.badge{display:inline-flex;align-items:center;padding:.25rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:600}.badge-draft{background:var(--color-neutral-100);color:var(--color-neutral-600)}.badge-published{background:#dcfce7;color:#15803d}.badge-cancelled{background:#fee2e2;color:#dc2626}.badge-completed{background:#e0f2fe;color:#0369a1}.badge-portal{background:#f3e8ff;color:#7c3aed}.badge-external{background:#fef3c7;color:#b45309}.badge-free{background:#dcfce7;color:#15803d}.badge-paid,.badge-pending{background:#fef3c7;color:#b45309}.badge-confirmed{background:#dcfce7;color:#15803d}.data-table{width:100%;border-collapse:collapse;font-size:.875rem}.data-table th{text-align:left;padding:.625rem 1rem;font-weight:600;color:var(--color-neutral-500);font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--color-neutral-200)}.data-table td{padding:.75rem 1rem;color:var(--color-neutral-700);border-bottom:1px solid var(--color-neutral-100)}[data-theme=dark] .data-table th{color:var(--color-neutral-400);border-bottom-color:var(--color-neutral-800)}[data-theme=dark] .data-table td{color:var(--color-neutral-300);border-bottom-color:var(--color-neutral-800)}.empty-state{text-align:center;padding:4rem 2rem}.empty-state-icon{font-size:3rem;display:block;margin-bottom:1rem}.empty-state-title{font-size:1.125rem;font-weight:700;color:var(--color-neutral-700);margin:0 0 .5rem}[data-theme=dark] .empty-state-title{color:var(--color-neutral-300)}.empty-state-desc{font-size:.9375rem;color:var(--color-neutral-500);margin:0 0 1.5rem}.loading-spinner{width:32px;height:32px;border:3px solid var(--color-neutral-200);border-top-color:var(--color-primary);border-radius:50%;animation:spin .7s linear infinite;margin:0 auto}@keyframes spin{to{transform:rotate(360deg)}}.loading-container{display:flex;justify-content:center;align-items:center;min-height:200px}.error-banner{background:#fee2e2;border:1px solid #fca5a5;border-radius:.5rem;padding:.875rem 1.25rem;color:#dc2626;font-size:.9375rem;margin-bottom:1.5rem}.tab-bar{display:flex;gap:.25rem;border-bottom:2px solid var(--color-neutral-200);margin-bottom:1.5rem}[data-theme=dark] .tab-bar{border-bottom-color:var(--color-neutral-800)}.tab-btn{padding:.5rem 1rem;font-size:.875rem;font-weight:600;color:var(--color-neutral-500);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:color .15s;font-family:inherit}.tab-btn.active{color:var(--color-primary, #1A46CC);border-bottom-color:var(--color-primary, #1A46CC)}.tab-btn:hover:not(.active){color:var(--color-neutral-700)}
