.seat-management{background:#fafbfd;min-height:100vh;padding:0}.seat-management-inner{max-width:1400px;margin:0 auto}.contract-header{border-bottom:1px solid var(--clr-border-light);padding:var(--space-2xl) var(--page-gutter);background:#fff}.contract-company{align-items:flex-start;gap:var(--space-lg);display:flex}.company-logo{flex-shrink:0}.company-details{min-width:0}.company-name{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--clr-ink);margin-bottom:4px;font-weight:700;line-height:1.2}.company-package{font-family:var(--font-body);font-size:var(--text-sm);color:var(--clr-secondary);line-height:var(--leading-normal)}.seat-summary{border-bottom:1px solid var(--clr-border-light);padding:var(--space-xl) var(--page-gutter);background:#fff;align-items:center;display:flex}.seat-summary-item{text-align:center;flex:1}.seat-summary-value{font-family:var(--font-display);font-size:var(--text-3xl);color:var(--clr-ink);margin-bottom:var(--space-xs);font-weight:700;line-height:1}.seat-summary-label{font-family:var(--font-body);font-size:var(--text-sm);color:var(--clr-secondary);line-height:var(--leading-normal)}.seat-summary-divider{background:var(--clr-border-light);width:1px;height:48px}.seat-content{padding:var(--space-3xl) var(--page-gutter)}.assign-section{border:1px solid var(--clr-border-light);padding:var(--space-2xl);margin-bottom:var(--space-3xl);background:#fff}.assign-title{font-family:var(--font-display);font-size:var(--text-xl);color:var(--clr-ink);font-weight:700;line-height:var(--leading-tight);margin-bottom:var(--space-sm)}.assign-description{font-family:var(--font-body);font-size:var(--text-sm);color:var(--clr-secondary);line-height:var(--leading-relaxed);margin-bottom:var(--space-lg)}.assign-form{gap:var(--space-lg);align-items:flex-start;display:flex}.assign-input-wrapper{flex:1;min-width:0}.assign-input{width:100%;font-family:var(--font-body);font-size:var(--text-sm);color:var(--clr-ink);border:1px solid var(--clr-border);resize:vertical;background:#fff;min-height:80px;padding:12px;transition:border-color .15s}.assign-input:focus{border-color:var(--clr-accent);outline:none}.assign-input::placeholder{color:var(--clr-tertiary)}.assign-validation{padding:var(--space-sm) var(--space-md);border:1px solid var(--clr-border-light);margin-top:var(--space-sm);background:#f9fafb}.validation-summary{gap:var(--space-md);flex-wrap:wrap;display:flex}.validation-item{font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;line-height:1}.validation-item-valid{color:#065f46}.validation-item-error{color:#991b1b}.validation-item-warning{color:#92400e}.validation-error{font-family:var(--font-body);font-size:var(--text-xs);color:#991b1b;margin-top:var(--space-sm);font-weight:600}.assign-hint{font-family:var(--font-body);font-size:var(--text-xs);color:var(--clr-secondary);margin-top:var(--space-sm)}.assign-import-link{color:var(--clr-accent);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600;text-decoration:none;transition:color .15s}@media (hover:hover){.assign-import-link:hover{color:var(--clr-accent-hover);text-decoration:underline}}.assign-btn{font-family:var(--font-body);font-size:var(--text-sm);color:#fff;background:var(--clr-accent);cursor:pointer;white-space:nowrap;border:none;padding:12px 24px;font-weight:600;transition:background .15s}.assign-btn:disabled{background:var(--clr-border);color:var(--clr-tertiary);cursor:not-allowed}@media (hover:hover){.assign-btn:hover:not(:disabled){background:var(--clr-accent-hover)}}.table-controls{margin-bottom:var(--space-xl)}.table-title{font-family:var(--font-display);font-size:var(--text-xl);color:var(--clr-ink);font-weight:700;line-height:var(--leading-tight);margin-bottom:var(--space-lg)}.table-actions{align-items:center;gap:var(--space-lg);display:flex}.table-filters{gap:var(--space-xs);flex:1;display:flex}.filter-btn{font-family:var(--font-body);font-size:var(--text-sm);color:var(--clr-secondary);border:1px solid var(--clr-border-light);cursor:pointer;background:#fff;padding:8px 16px;font-weight:600;transition:all .15s}.filter-btn-active{color:var(--clr-accent);border-color:var(--clr-accent);background:#7500140a}@media (hover:hover){.filter-btn:hover{border-color:var(--clr-border)}}.table-search{min-width:280px}.search-input{width:100%;font-family:var(--font-body);font-size:var(--text-sm);color:var(--clr-ink);border:1px solid var(--clr-border-light);background:#fff;padding:8px 12px;transition:border-color .15s}.search-input:focus{border-color:var(--clr-accent);outline:none}.search-input::placeholder{color:var(--clr-tertiary)}.export-btn{font-family:var(--font-body);font-size:var(--text-sm);color:var(--clr-ink);border:1px solid var(--clr-border);cursor:pointer;background:#fff;padding:8px 20px;font-weight:600;transition:all .15s}@media (hover:hover){.export-btn:hover{border-color:var(--clr-secondary)}}.seat-table-wrapper{border:1px solid var(--clr-border-light);background:#fff;overflow-x:auto}.seat-table{border-collapse:collapse;width:100%}.seat-table th{font-family:var(--font-body);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--clr-tertiary);text-align:left;padding:var(--space-md) var(--space-lg);background:var(--clr-surface);border-bottom:1px solid var(--clr-border-light);font-weight:700}.seat-table th:last-child{width:48px}.seat-table td{padding:var(--space-lg);border-bottom:1px solid var(--clr-border-light)}.seat-table tbody tr:last-child td{border-bottom:none}.table-email{font-family:var(--font-body);font-size:var(--text-sm);color:var(--clr-ink);line-height:var(--leading-normal)}.table-date{font-family:var(--font-body);font-size:var(--text-sm);color:var(--clr-secondary);line-height:var(--leading-normal);font-variant-numeric:tabular-nums}.table-empty{color:var(--clr-tertiary)}.status-badge{font-family:var(--font-body);font-size:var(--text-xs);border-radius:12px;padding:4px 12px;font-weight:600;line-height:1;display:inline-block}.status-badge-redeemed{color:#065f46;background:#d1fae5}.status-badge-assigned,.status-badge-pending{color:#1e40af;background:#dbeafe}.status-badge-unassigned{color:var(--clr-secondary);background:#f3f4f6}.seat-action-menu{position:relative}.table-menu-btn{width:32px;height:32px;color:var(--clr-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:color .15s;display:flex}@media (hover:hover){.table-menu-btn:hover{color:var(--clr-ink)}}.action-menu-dropdown{border:1px solid var(--clr-border-light);z-index:100;background:#fff;min-width:200px;margin-top:4px;position:absolute;top:100%;right:0;box-shadow:0 4px 12px #00000014}.action-menu-item{width:100%;font-family:var(--font-body);font-size:var(--text-sm);color:var(--clr-ink);text-align:left;cursor:pointer;background:0 0;border:none;padding:10px 16px;font-weight:400;transition:background .15s;display:block}@media (hover:hover){.action-menu-item:hover{background:var(--clr-surface)}}.action-menu-item-destructive{color:#991b1b}@media (hover:hover){.action-menu-item-destructive:hover{background:#fef2f2}}.action-menu-separator{background:var(--clr-border);height:1px;margin:8px 0}.table-footer{padding:var(--space-lg);font-family:var(--font-body);font-size:var(--text-sm);color:var(--clr-secondary);border-top:1px solid var(--clr-border-light)}.modal-overlay{padding:var(--page-gutter);z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:#fff;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 24px #0000001f}.modal-sm{max-width:420px}.modal-header{padding:var(--space-xl) var(--space-2xl);border-bottom:1px solid var(--clr-border-light);justify-content:space-between;align-items:center;display:flex}.modal-title{font-family:var(--font-display);font-size:var(--text-xl);color:var(--clr-ink);font-weight:700;line-height:var(--leading-tight)}.modal-close{width:32px;height:32px;color:var(--clr-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:color .15s;display:flex}@media (hover:hover){.modal-close:hover{color:var(--clr-ink)}}.modal-body{padding:var(--space-2xl)}.modal-field{margin-bottom:var(--space-xl)}.modal-field:last-child{margin-bottom:0}.modal-label{font-family:var(--font-body);font-size:var(--text-sm);color:var(--clr-ink);margin-bottom:var(--space-sm);font-weight:600;display:block}.modal-input{width:100%;font-family:var(--font-body);font-size:var(--text-sm);color:var(--clr-ink);border:1px solid var(--clr-border);background:#fff;padding:10px 12px;transition:border-color .15s}.modal-input:focus{border-color:var(--clr-accent);outline:none}.modal-input:disabled{background:var(--clr-surface);color:var(--clr-tertiary);cursor:not-allowed}.modal-error{margin-top:var(--space-sm);font-family:var(--font-body);font-size:var(--text-sm);color:#991b1b;font-weight:600}.modal-note{font-family:var(--font-body);font-size:var(--text-sm);color:var(--clr-secondary);line-height:var(--leading-relaxed);margin-top:var(--space-xl)}.modal-message{font-family:var(--font-body);font-size:var(--text-sm);color:var(--clr-text);line-height:var(--leading-relaxed)}.modal-footer{gap:var(--space-md);padding:var(--space-xl) var(--space-2xl);border-top:1px solid var(--clr-border-light);justify-content:flex-end;display:flex}.modal-btn{font-family:var(--font-body);font-size:var(--text-sm);cursor:pointer;border:none;padding:10px 20px;font-weight:600;transition:all .15s}.modal-btn-secondary{color:var(--clr-ink);border:1px solid var(--clr-border);background:#fff}@media (hover:hover){.modal-btn-secondary:hover{border-color:var(--clr-secondary)}}.modal-btn-primary{color:#fff;background:var(--clr-accent)}@media (hover:hover){.modal-btn-primary:hover{background:var(--clr-accent-hover)}}.modal-btn-destructive{color:#fff;background:#991b1b}@media (hover:hover){.modal-btn-destructive:hover{background:#7f1d1d}}.toast-container{top:var(--space-xl);right:var(--space-xl);z-index:2000;gap:var(--space-md);flex-direction:column;max-width:400px;display:flex;position:fixed}.toast{align-items:center;gap:var(--space-md);padding:var(--space-lg);border:1px solid var(--clr-border-light);background:#fff;animation:.2s ease-out slideIn;display:flex;box-shadow:0 4px 12px #0000001f}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast-success{border-left:3px solid #065f46}.toast-error{border-left:3px solid #991b1b}.toast-icon{flex-shrink:0;justify-content:center;align-items:center;display:flex}.toast-success .toast-icon{color:#065f46}.toast-error .toast-icon{color:#991b1b}.toast-message{font-family:var(--font-body);font-size:var(--text-sm);color:var(--clr-ink);font-weight:600;line-height:var(--leading-normal);flex:1}.toast-close{width:24px;height:24px;color:var(--clr-secondary);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:color .15s;display:flex}@media (hover:hover){.toast-close:hover{color:var(--clr-ink)}}@media (max-width:1023px){.seat-summary{justify-content:flex-start;overflow-x:auto}.seat-summary-item{flex:none;min-width:120px}}@media (max-width:767px){.seat-content{padding:var(--space-xl) var(--page-gutter)}.assign-form{flex-direction:column}.assign-btn{width:100%}.table-actions{flex-direction:column;align-items:stretch}.table-filters{flex-wrap:nowrap;overflow-x:auto}.filter-btn{flex-shrink:0}.table-search{min-width:0}.modal{max-width:none}.toast-container{left:var(--space-lg);right:var(--space-lg);max-width:none}}
