:root{--color-primary: #2563eb;--color-primary-dark: #1e40af;--color-primary-light: #3b82f6;--color-secondary: #14b8a6;--color-secondary-dark: #0d9488;--color-secondary-light: #2dd4bf;--color-background: #ffffff;--color-background-alt: #f8fafc;--color-background-hover: #f1f5f9;--color-border: #e2e8f0;--color-text-primary: #0f172a;--color-text-secondary: #64748b;--color-text-muted: #94a3b8;--color-success: #10b981;--color-success-light: #d1fae5;--color-warning: #f59e0b;--color-warning-light: #fef3c7;--color-error: #ef4444;--color-error-light: #fee2e2;--color-info: #3b82f6;--color-info-light: #dbeafe;--color-pending: var(--color-warning);--color-confirmed: var(--color-success);--color-cancelled: var(--color-error);--color-unassigned: var(--color-text-muted);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-family-mono: "Courier New", Courier, monospace;--font-size-h1: 2.5rem;--font-size-h2: 2rem;--font-size-h3: 1.5rem;--font-size-h4: 1.25rem;--font-size-body: 1rem;--font-size-small: .875rem;--font-size-xsmall: .75rem;--font-weight-bold: 700;--font-weight-semibold: 600;--font-weight-regular: 400;--font-weight-light: 300;--line-height-tight: 1.2;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--transition-fast: .15s ease;--transition-normal: .2s ease;--breakpoint-mobile: 640px;--breakpoint-tablet: 768px;--breakpoint-desktop: 1024px}*{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-family);font-size:var(--font-size-body);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-background-alt)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--color-text-primary);margin-bottom:var(--spacing-md)}h1{font-size:var(--font-size-h1)}h2{font-size:var(--font-size-h2)}h3{font-size:var(--font-size-h3)}h4{font-size:var(--font-size-h4)}p{margin-bottom:var(--spacing-md);line-height:var(--line-height-relaxed)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark)}button{font-family:inherit;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);cursor:pointer;border:none;border-radius:var(--radius-md);padding:.75rem 1.5rem;transition:all var(--transition-fast);display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);min-height:44px}button:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-dark);transform:scale(1.02)}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-secondary{background-color:transparent;border:2px solid var(--color-primary);color:var(--color-primary)}.btn-secondary:hover:not(:disabled){background-color:var(--color-primary-light);color:#fff}.btn-danger{background-color:var(--color-error);color:#fff}.btn-danger:hover:not(:disabled){background-color:#dc2626}.btn-warning{background-color:var(--color-warning);color:#fff}.btn-warning:hover:not(:disabled){background-color:#d97706}.btn-text{background-color:transparent;color:var(--color-text-secondary);padding:.5rem 1rem;font-weight:var(--font-weight-regular)}.btn-text:hover:not(:disabled){color:var(--color-text-primary);background-color:var(--color-background-hover)}label{display:block;font-size:var(--font-size-small);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-sm)}input[type=text],input[type=email],input[type=tel],input[type=password],input[type=date],input[type=datetime-local],input[type=number],textarea,select{width:100%;font-family:inherit;font-size:var(--font-size-body);padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-background);color:var(--color-text-primary);transition:all var(--transition-fast);min-height:44px}input[type=text]:focus,input[type=email]:focus,input[type=tel]:focus,input[type=password]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=number]:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1a}input[type=text]:disabled,input[type=email]:disabled,input[type=tel]:disabled,input[type=password]:disabled,input[type=date]:disabled,input[type=datetime-local]:disabled,input[type=number]:disabled,textarea:disabled,select:disabled{background-color:var(--color-background-alt);cursor:not-allowed}input[aria-invalid=true],textarea[aria-invalid=true],select[aria-invalid=true]{border-color:var(--color-error);box-shadow:0 0 0 3px #ef44441a}textarea{min-height:6rem;resize:vertical}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}.error-message{color:var(--color-error);font-size:var(--font-size-small);margin-top:var(--spacing-xs);display:block}table{width:100%;border-collapse:collapse;background-color:var(--color-background);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-md)}thead{background-color:var(--color-background-alt)}th{font-weight:var(--font-weight-semibold);font-size:var(--font-size-small);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);padding:var(--spacing-md);text-align:left;border-bottom:2px solid var(--color-border)}td{padding:var(--spacing-md);border-bottom:1px solid var(--color-border);color:var(--color-text-primary)}tbody tr{transition:background-color var(--transition-fast)}tbody tr:hover{background-color:var(--color-background-hover)}tbody tr:last-child td{border-bottom:none}.card{background-color:var(--color-background);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-border)}.card-header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.badge{display:inline-block;padding:.25rem .75rem;border-radius:var(--radius-full);font-size:var(--font-size-xsmall);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em}.badge-pending{background-color:var(--color-warning-light);color:var(--color-pending)}.badge-confirmed{background-color:var(--color-success-light);color:var(--color-confirmed)}.badge-cancelled{background-color:var(--color-error-light);color:var(--color-cancelled)}.badge-unassigned{background-color:var(--color-background-hover);color:var(--color-unassigned)}.alert{padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);border-left:4px solid;margin-bottom:var(--spacing-md)}.alert-success{background-color:var(--color-success-light);border-color:var(--color-success);color:#065f46}.alert-warning{background-color:var(--color-warning-light);border-color:var(--color-warning);color:#92400e}.alert-error{background-color:var(--color-error-light);border-color:var(--color-error);color:#991b1b}.alert-info{background-color:var(--color-info-light);border-color:var(--color-info);color:#1e40af}.container{max-width:1280px;margin:0 auto;padding:0 var(--spacing-xl)}section{margin-bottom:var(--spacing-xl)}.text-center{text-align:center}.text-muted{color:var(--color-text-muted)}.text-secondary{color:var(--color-text-secondary)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.flex{display:flex}.flex-col{flex-direction:column}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}@media (max-width: 640px){.filter-grid-mobile{gridTemplateColumns:1fr!important}html{font-size:14px}.container{padding:0 var(--spacing-md)}h1{font-size:var(--font-size-h2);margin-bottom:var(--spacing-sm)}h2{font-size:var(--font-size-h3);margin-bottom:var(--spacing-sm)}h3{font-size:var(--font-size-h4);margin-bottom:var(--spacing-sm)}h4{font-size:var(--font-size-body);margin-bottom:var(--spacing-sm)}p{line-height:var(--line-height-normal);margin-bottom:var(--spacing-sm)}button{width:100%;padding:.75rem var(--spacing-md)}.card{padding:var(--spacing-md);border-radius:var(--radius-md)}table{font-size:var(--font-size-small)}th,td{padding:var(--spacing-sm);font-size:var(--font-size-small)}thead{display:none}section{margin-bottom:var(--spacing-lg)}}@media (min-width: 641px) and (max-width: 768px){.container{padding:0 var(--spacing-lg)}h1{font-size:calc(var(--font-size-h1) * .85)}h2{font-size:calc(var(--font-size-h2) * .9)}.card{padding:var(--spacing-lg)}}@media (min-width: 769px){.container{padding:0 var(--spacing-xl)}}@media (max-width: 640px){.mobile-only{display:block}.desktop-only,.mobile-hidden{display:none!important}}@media (min-width: 641px){.mobile-only{display:none!important}.desktop-only{display:block}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (hover: none) and (pointer: coarse){button:active,a:active{opacity:.8;transform:scale(.98)}body.modal-open{overflow:hidden}tbody tr:hover{background-color:transparent}button:hover:not(:disabled){transform:none}.btn-primary:hover:not(:disabled){transform:none}.btn-secondary:hover:not(:disabled){background-color:transparent;color:var(--color-primary)}.btn-text:hover:not(:disabled){color:var(--color-text-secondary);background-color:transparent}}
