body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.side-menu{background-color:var(--gray-100);width:250px;height:100vh;padding:var(--spacing-xl) 0;border-right:1px solid var(--gray-300);flex-direction:column;justify-content:flex-start;display:flex}.side-menu nav ul{margin:0;padding:0;list-style:none}.side-menu nav li{margin:0;padding:0}.side-menu button{width:100%;padding:var(--spacing-lg) var(--spacing-xl);text-align:left;cursor:pointer;color:var(--gray-800);transition:background-color var(--transition);background:0 0;border:none;font-size:1rem}.side-menu button:hover{background-color:var(--gray-200)}.side-menu button.active{background-color:var(--primary);color:var(--white)}.side-menu-bottom{padding:var(--spacing-xl);border-top:1px solid var(--gray-300);flex-direction:column;align-items:flex-start;margin-top:auto;display:flex}.user-name{color:var(--gray-600);margin-bottom:var(--spacing-md);font-size:.9375rem}.logout-button{background:var(--danger);color:var(--white);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);cursor:pointer;transition:background var(--transition);border:none;font-size:.9375rem}.logout-button:hover{background:var(--danger-hover)}.account-modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.account-modal-content{background:var(--white);border-radius:var(--radius-lg);width:90%;min-width:50%;max-width:1200px;max-height:90vh;box-shadow:var(--shadow);padding:0;overflow-y:auto}.account-modal-header{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--gray-300);justify-content:space-between;align-items:center;display:flex}.account-modal-header h3{color:var(--gray-800);margin:0;font-size:1.25rem;font-weight:600}.account-modal-close-btn{cursor:pointer;color:var(--gray-600);border-radius:var(--radius);width:32px;height:32px;transition:background-color var(--transition);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:1.5rem;display:flex}.account-modal-close-btn:hover{background-color:var(--gray-100)}.account-modal-form{padding:var(--spacing-lg);gap:var(--spacing-md) var(--spacing-lg);grid-template-columns:max-content 1fr;align-items:center;display:grid}.account-modal-form-group{margin-bottom:var(--spacing-md);display:contents}.account-modal-form-group label{min-width:140px;color:var(--gray-800);text-align:left;justify-self:start;margin-bottom:0;font-weight:500}.account-modal-form-control{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--gray-300);border-radius:var(--radius);box-sizing:border-box;transition:border-color var(--transition);font-size:.875rem}.account-modal-form-control:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 2px #007bff40}.account-modal-form-control:disabled{background-color:var(--gray-100);color:var(--gray-600);cursor:not-allowed}.account-modal-form-control[disabled]{background-color:var(--gray-50);color:var(--gray-500);cursor:not-allowed;border-color:var(--gray-200)}.account-modal-form-control.error{border-color:var(--danger);box-shadow:0 0 0 2px #dc354540}.account-modal-field-error{color:var(--danger);margin-top:var(--spacing-xs);grid-column:2;font-size:.75rem;font-weight:500}:is(.account-modal-form-group:has(.account-modal-roles-container),.account-modal-form-group:has(.account-modal-location-groups-container)){grid-column:1/-1}:is(.account-modal-form-group:has(.account-modal-roles-container) label,.account-modal-form-group:has(.account-modal-location-groups-container) label){margin-bottom:var(--spacing-xs);padding-top:var(--spacing-sm)}.account-modal-error{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--danger-50);border:1px solid var(--danger);border-radius:var(--radius);color:var(--danger);margin-bottom:var(--spacing-md);grid-column:1/-1;font-size:.875rem}.account-modal-actions{justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--gray-300);grid-column:1/-1;display:flex}.account-modal-btn{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);cursor:pointer;transition:background-color var(--transition);border:none;justify-content:center;align-items:center;min-width:80px;font-size:.875rem;font-weight:500;line-height:1.5;text-decoration:none;display:inline-flex}.account-modal-btn:disabled{opacity:.6;cursor:not-allowed}.account-modal-location-groups-container{flex-direction:column;grid-column:2;width:100%;display:flex}.account-modal-location-groups-list{border:1px solid var(--gray-300);border-radius:var(--radius);max-height:200px;padding:var(--spacing-sm);background-color:var(--white);overflow-y:auto}.account-modal-location-group-item{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius);transition:background-color var(--transition);align-items:center;gap:var(--spacing-sm);display:flex}.account-modal-location-group-item:hover{background-color:var(--gray-50)}.account-modal-location-group-item.selected{background-color:var(--primary-50)}.account-modal-location-group-item input[type=checkbox]{margin-right:var(--spacing-sm);margin-bottom:0}.account-modal-location-group-text{color:var(--gray-800);flex:1;font-size:.875rem}.account-modal-no-data-message{text-align:center;color:var(--gray-500);padding:var(--spacing-md);font-style:italic}.account-modal-roles-container{flex-direction:column;grid-column:2;width:100%;display:flex}.account-modal-roles-list{gap:var(--spacing-sm);padding:var(--spacing-sm);border:1px solid var(--gray-300);border-radius:var(--radius);background-color:var(--white);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.account-modal-role-item{padding:var(--spacing-xs);border-radius:var(--radius);transition:background-color var(--transition);align-items:center;display:flex}.account-modal-role-item:hover{background-color:var(--gray-50)}.account-modal-role-item input[type=checkbox]{margin-right:var(--spacing-xs);margin-bottom:0}.account-modal-role-text{color:var(--gray-800);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:.875rem}.account-modal-btn-primary{background-color:var(--primary);color:var(--white)}.account-modal-btn-primary:hover:not(:disabled){background-color:var(--primary-hover)}.account-modal-btn-secondary{background-color:var(--gray-600);color:var(--white)}.account-modal-btn-secondary:hover:not(:disabled){background-color:var(--gray-700)}.account-modal-btn-danger{background-color:var(--danger);color:var(--white)}.account-modal-btn-danger:hover:not(:disabled){background-color:var(--danger-hover)}@media (width<=700px){.account-modal-content{width:95%;max-height:95vh}.account-modal-actions{flex-direction:column}.account-modal-btn{width:100%}}.location-modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.location-modal-content{background:#fff;border-radius:8px;width:90%;max-width:600px;max-height:90vh;position:relative;overflow-y:auto;box-shadow:0 4px 20px #00000026}.location-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.location-modal-header h3{color:#111827;margin:0;font-size:1.25rem;font-weight:600}.location-modal-close-btn{cursor:pointer;color:#6b7280;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:24px;transition:background-color .2s;display:flex}.location-modal-close-btn:hover{color:#374151;background-color:#f3f4f6}.location-modal-form{padding:24px}.location-modal-form-group{margin-bottom:20px}.location-modal-form-group label{color:#374151;margin-bottom:6px;font-size:.875rem;font-weight:500;display:block}.location-modal-form-control{box-sizing:border-box;border:1px solid #d1d5db;border-radius:6px;width:100%;padding:10px 12px;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.location-modal-form-control:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.location-modal-form-control:disabled{color:#6b7280;cursor:not-allowed;background-color:#f9fafb}.location-modal-form-control.error{border-color:#ef4444}.location-modal-form-control.error:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.location-modal-field-error{color:#ef4444;margin-top:4px;font-size:.75rem}.location-modal-error{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;margin-bottom:20px;padding:12px;font-size:.875rem}.location-modal-actions{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;display:flex}.location-modal-btn{cursor:pointer;border:1px solid #0000;border-radius:6px;padding:10px 20px;font-size:.875rem;font-weight:500;transition:all .2s}.location-modal-btn:disabled{opacity:.6;cursor:not-allowed}.location-modal-btn-secondary{color:#374151;background-color:#f9fafb;border-color:#d1d5db}.location-modal-btn-secondary:hover:not(:disabled){background-color:#f3f4f6;border-color:#9ca3af}.location-modal-btn-primary{color:#fff;background-color:#3b82f6;border-color:#3b82f6}.location-modal-btn-primary:hover:not(:disabled){background-color:#2563eb;border-color:#2563eb}.location-modal-layouts-container{background-color:#f9fafb;border:1px solid #d1d5db;border-radius:6px;padding:12px}.location-modal-layouts-list{margin-bottom:12px}.location-modal-layout-item{background-color:#fff;border:1px solid #e5e7eb;border-radius:4px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:8px 12px;display:flex}.location-modal-layout-item:last-child{margin-bottom:0}.location-modal-layout-name{color:#374151;font-size:.875rem;font-weight:500}.location-modal-remove-layout-btn{color:#ef4444;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:18px;transition:background-color .2s;display:flex}.location-modal-remove-layout-btn:hover:not(:disabled){background-color:#fef2f2}.location-modal-remove-layout-btn:disabled{opacity:.5;cursor:not-allowed}.location-modal-no-layouts{text-align:center;color:#6b7280;padding:12px;font-size:.875rem;font-style:italic}.location-modal-add-layout{border-top:1px solid #e5e7eb;padding-top:12px}@media (width<=640px){.location-modal-content{width:95%;margin:20px}.location-modal-form{padding:16px}.location-modal-header{padding:16px 20px}.location-modal-actions{flex-direction:column}.location-modal-btn{width:100%}}.locations-overview-table .field-header:first-child,.locations-overview-table .field-value:first-child{box-sizing:border-box;text-align:center;vertical-align:middle;width:56px;min-width:56px;max-width:56px;padding:6px 8px}.locations-container{width:100%}.integrator-selector{margin-bottom:var(--spacing-xl);padding:var(--spacing-md);background-color:var(--gray-100);border:1px solid var(--gray-300);border-radius:var(--radius)}.integrator-selector label{margin-bottom:var(--spacing-sm);color:var(--gray-700);font-weight:500;display:block}.integrator-selector select{width:100%;max-width:400px;padding:var(--spacing-sm);border:1px solid var(--gray-400);border-radius:var(--radius);background-color:var(--white);cursor:pointer;font-size:1rem}.integrator-selector select:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 .2rem #007bff40}.integrator-selector select:disabled{background-color:var(--gray-200);cursor:not-allowed}.dialog-content{padding:var(--spacing-md);background-color:var(--gray-100);border:1px solid var(--gray-300);border-radius:var(--radius);max-height:400px;margin-bottom:var(--spacing-md);overflow-y:auto}.dialog-content p{margin:0 0 var(--spacing-sm) 0;white-space:pre-wrap;word-break:break-all}.loading-overlay{z-index:var(--z-modal);background:#ffffffb3;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.spinner{border:6px solid var(--gray-200);border-top:6px solid var(--primary);border-radius:50%;width:48px;height:48px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.modal-overlay{z-index:1000;background:#00000059;justify-content:center;align-items:flex-start;padding-top:5vh;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border:1.5px solid #e0e0e0;border-radius:12px;flex-direction:column;width:98%;min-width:400px;max-width:900px;max-height:85vh;display:flex;overflow:hidden;box-shadow:0 8px 32px #00000040}.modal-header{background-color:#f8f9fa;border-bottom:1px solid #ececec;justify-content:space-between;align-items:center;padding:18px 24px 10px;display:flex}.modal-header h3{color:#222;margin:0;font-size:19px;font-weight:600}.modal-header button{cursor:pointer;color:#888;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:26px;transition:background .15s;display:flex}.modal-header button:hover{color:#222;background-color:#f1f3f4}.modal-body{background:#fcfcfc;flex:1;padding:18px 24px 10px;overflow-y:auto}.modal-body p{color:#333;margin:0 0 10px}.modal-body ul{background:#f5f5f5;border:1px solid #ececec;border-radius:6px;max-height:220px;margin:0;padding:10px 16px;font-family:Fira Mono,Menlo,Consolas,monospace;font-size:14px;overflow-y:auto}.modal-body li{color:#444;word-break:break-word;margin-bottom:6px}.modal-footer{background-color:#f8f9fa;border-top:1px solid #ececec;justify-content:flex-end;padding:14px 24px 18px;display:flex}.modal-footer button{color:#fff;cursor:pointer;background:#1976d2;border:none;border-radius:6px;min-width:90px;padding:8px 18px;font-size:15px;font-weight:500;transition:background .15s}.modal-footer button:hover{background:#1256a3}.data-table{background-color:var(--white);border:1px solid var(--gray-300);border-radius:var(--radius);table-layout:auto;width:100%;min-height:200px;display:table;overflow:hidden}.info-header{background-color:var(--gray-100);display:table-row}.field-header{padding:var(--spacing-sm) var(--spacing-md);color:var(--gray-700);border-bottom:2px solid var(--gray-300);text-transform:capitalize;white-space:nowrap;vertical-align:top;text-align:left;font-weight:600;display:table-cell}.field-header.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;padding-right:1.5rem;position:relative}.field-header.sortable:hover{background-color:var(--gray-200)}.header-content{margin-bottom:var(--spacing-sm)}.filter-input{width:100%;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--gray-400);border-radius:var(--radius-sm);background-color:var(--white);box-sizing:border-box;font-size:.875rem}.filter-input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 .2rem #007bff40}.filter-input::placeholder{color:var(--gray-500);font-style:italic}.info-row{min-height:48px;display:table-row}.info-row:nth-child(2n){background-color:var(--gray-100)}.field-value,.field-actions{padding:var(--spacing-md);border-bottom:1px solid var(--gray-300);text-align:left;min-height:48px;display:table-cell}.field-value{color:var(--gray-900);word-break:break-word;text-overflow:ellipsis;white-space:normal;min-width:80px;max-width:300px;overflow:hidden}.field-value:has(>div[style*="border: 1px solid #e0e0e0"]){width:50%;min-width:400px;max-width:none}.field-actions{white-space:nowrap;min-width:120px}.page-layout{padding:var(--spacing-xl);max-width:100%;margin:0 auto;overflow-x:auto}.header{margin-bottom:var(--spacing-xl);justify-content:space-between;align-items:center;display:flex}.header h2{color:var(--gray-800);margin:0}.audit{padding:var(--spacing-xl);max-width:100%;margin:0 auto;overflow-x:auto}.header{margin-bottom:var(--spacing-xl);flex-direction:column;display:flex}.header h2{color:var(--gray-800);margin:0;margin-bottom:var(--spacing-md)}.filters{gap:var(--spacing-xl);flex-wrap:wrap;display:flex}.filter-group{gap:var(--spacing-xs);flex-direction:column;display:flex}.filter-group label{color:var(--gray-600);font-size:.9em}.filter-group input{padding:var(--spacing-sm);border:1px solid var(--gray-300);border-radius:var(--radius);min-width:200px}.filter-actions{gap:var(--spacing-sm);flex-direction:column;align-self:flex-end;display:flex}.apply-filters-button,.clear-filters-button{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);cursor:pointer;transition:background var(--transition);border:none;min-width:120px;font-size:.9em}.apply-filters-button{background:var(--primary);color:var(--white)}.apply-filters-button:hover:not(:disabled){background:var(--primary-hover)}.clear-filters-button{background:var(--gray-200);color:var(--gray-700)}.clear-filters-button:hover:not(:disabled){background:var(--gray-300)}.apply-filters-button:disabled,.clear-filters-button:disabled{opacity:.6;cursor:not-allowed}.load-more{margin-top:var(--spacing-xl);justify-content:center;display:flex}.loading,.error,.no-data{text-align:center;padding:var(--spacing-xl);color:var(--gray-600);font-size:1.2rem}.error{color:var(--danger)}.accounts{padding:var(--spacing-lg)}.accounts .header{margin-bottom:var(--spacing-lg);justify-content:space-between;align-items:center;display:flex}.accounts .header h2{color:var(--gray-800);margin:0}.accounts .filters{gap:var(--spacing-md);align-items:center;display:flex}.accounts .filter-group{align-items:center;gap:var(--spacing-sm);display:flex}.accounts .filter-group label{color:var(--gray-700);font-weight:500}.accounts .filter-group input{padding:var(--spacing-sm);border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:.875rem}.accounts .filter-group input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 .2rem #007bff40}.update-dialog-overlay{z-index:var(--z-modal);background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.update-dialog-content{background:var(--white);border-radius:var(--radius-lg);width:95%;max-width:1200px;max-height:90vh;box-shadow:var(--shadow);flex-direction:column;padding:0;display:flex}.update-dialog-header{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--gray-300);justify-content:space-between;align-items:center;display:flex}.update-dialog-header h3{color:var(--gray-800);margin:0;font-size:1.25rem;font-weight:600}.update-dialog-close-btn{cursor:pointer;color:var(--gray-600);border-radius:var(--radius);width:32px;height:32px;transition:background-color var(--transition);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:1.5rem;display:flex}.update-dialog-close-btn:hover{background-color:var(--gray-100)}.update-dialog-close-btn:disabled{opacity:.6;cursor:not-allowed}.update-dialog-body{padding:var(--spacing-lg);flex:1;min-height:0;overflow-y:auto}.update-dialog-body form{gap:var(--spacing-md) var(--spacing-lg);grid-template-columns:max-content 1fr;align-items:start;display:grid}.update-dialog-footer{justify-content:flex-end;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--gray-300);display:flex}.update-dialog-body .form-group{margin-bottom:var(--spacing-md);display:contents}:is(.update-dialog-body .form-group:has(.location-group-modal-locations-container),.update-dialog-body .form-group:has(.array-container)){gap:var(--spacing-md) var(--spacing-lg);grid-column:1/-1;grid-template-columns:max-content 1fr;align-items:start;display:grid}.update-dialog-body .form-group label{min-width:140px;color:var(--gray-800);text-align:left;padding-top:var(--spacing-sm);place-self:start;margin-bottom:0;font-weight:500}:is(.update-dialog-body .form-group:has(.location-group-modal-locations-container) label,.update-dialog-body .form-group:has(.array-container) label){padding-top:var(--spacing-sm);margin-bottom:0}.update-dialog-body .form-control{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--gray-300);border-radius:var(--radius);box-sizing:border-box;font-size:.875rem}.update-dialog-body .form-control:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 2px #007bff40}.update-dialog-body .form-control:disabled{background-color:var(--gray-100);color:var(--gray-600);cursor:not-allowed}.update-dialog-body .array-container{border:1px solid var(--gray-300);border-radius:var(--radius);padding:var(--spacing-md);background-color:var(--gray-100);grid-column:1/-1}.update-dialog-body .array-item{margin-bottom:var(--spacing-md);padding:var(--spacing-sm);border:1px solid var(--gray-200);border-radius:var(--radius);background-color:var(--white)}.update-dialog-body .form-row{gap:var(--spacing-sm);grid-template-columns:1fr 1fr auto;align-items:end;display:grid}.update-dialog-body .btn{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);cursor:pointer;border:none;font-size:.875rem;font-weight:500;transition:all .2s}.update-dialog-body .btn:disabled{opacity:.5;cursor:not-allowed}.update-dialog-body .btn-primary{background-color:var(--primary);color:var(--white)}.update-dialog-body .btn-primary:hover:not(:disabled){background-color:var(--primary-dark)}.update-dialog-body .btn-secondary{background-color:var(--gray-500);color:var(--white)}.update-dialog-body .btn-secondary:hover:not(:disabled){background-color:var(--gray-600)}.update-dialog-body .btn-danger{background-color:var(--danger);color:var(--white)}.update-dialog-body .btn-danger:hover:not(:disabled){background-color:var(--danger-dark)}.update-dialog-body .btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:.75rem}.update-dialog-body .error-message{background-color:var(--danger);color:var(--white);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);margin-bottom:var(--spacing-md);grid-column:1/-1;font-size:.875rem}.update-dialog-body .error-message:before{content:"⚠️ ";margin-right:var(--spacing-xs)}.location-groups{padding:var(--spacing-lg)}.location-groups .header{margin-bottom:var(--spacing-lg);justify-content:space-between;align-items:center;display:flex}.location-groups .header h2{color:var(--gray-800);margin:0}.location-groups .filters{gap:var(--spacing-md);align-items:center;display:flex}.location-groups .filter-group{align-items:center;gap:var(--spacing-sm);display:flex}.location-groups .filter-group label{color:var(--gray-700);font-weight:500}.location-groups .filter-group input{padding:var(--spacing-sm);border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:.875rem}.location-groups .filter-group input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 .2rem #007bff40}.integrations-container{padding:var(--spacing-xl)}.integrations-header{margin-bottom:var(--spacing-xl);justify-content:space-between;align-items:center;display:flex}.integrations-header h2{color:var(--gray-800);margin:0}.integrations-actions{gap:var(--spacing-sm);display:flex}.integration-type-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius);text-transform:uppercase;font-size:.75rem;font-weight:500;display:inline-block}.integration-type-pagerduty{background-color:var(--primary);color:var(--white)}.integration-type-twilio_sms{background-color:var(--success);color:var(--white)}.integration-type-dect{background-color:var(--warning);color:var(--dark)}.layout{height:100vh;min-height:100vh;display:flex}.main-content{min-height:100vh;padding:var(--spacing-xl);background-color:var(--white);flex:1;overflow:auto}.page-layout .header{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--gray-300);justify-content:space-between;align-items:center;display:flex}.page-layout .header h2{color:var(--gray-800);margin:0}.create-button{background-color:var(--success);color:var(--white);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);cursor:pointer;transition:background-color var(--transition);border:none;font-size:.875rem}.create-button:hover{background-color:var(--success-hover)}.create-button-small{padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem}.action-buttons{gap:var(--spacing-xs);display:flex}.edit-button{background-color:var(--primary);color:var(--white);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius);cursor:pointer;transition:background-color var(--transition);border:none;font-size:.75rem}.edit-button:hover:not(:disabled){background-color:var(--primary-hover)}.delete-button{background-color:var(--danger);color:var(--white);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius);cursor:pointer;transition:background-color var(--transition);border:none;font-size:.75rem}.delete-button:hover:not(:disabled){background-color:var(--danger-hover)}.edit-button:disabled,.delete-button:disabled{opacity:.6;cursor:not-allowed}.login-container{background-color:var(--gray-100);justify-content:center;align-items:center;height:100vh;display:flex}.login-box{background:var(--white);padding:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow);text-align:center}.login-box h1{margin-bottom:var(--spacing-md);color:var(--gray-800)}.login-box p{margin-bottom:var(--spacing-xl);color:var(--gray-600)}.login-button{background-color:var(--primary);color:var(--white);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);cursor:pointer;transition:background-color var(--transition);border:none;font-size:1rem}.login-button:hover{background-color:var(--primary-hover)}:root{--primary:#007bff;--primary-hover:#0056b3;--primary-dark:#0056b3;--success:#28a745;--success-hover:#218838;--danger:#dc3545;--danger-hover:#c82333;--danger-dark:#c82333;--warning:#ffc107;--warning-hover:#e0a800;--info:#17a2b8;--info-hover:#138496;--light:#f8f9fa;--dark:#343a40;--white:#fff;--gray-100:#f8f9fa;--gray-200:#e9ecef;--gray-300:#dee2e6;--gray-400:#ced4da;--gray-500:#adb5bd;--gray-600:#6c757d;--gray-700:#495057;--gray-800:#343a40;--gray-900:#212529;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--radius-sm:3px;--radius:4px;--radius-lg:8px;--shadow-sm:0 2px 4px #0000001a;--shadow:0 4px 6px #0000001a;--shadow-lg:0 10px 15px #0000001a;--transition:.2s ease;--z-modal:1050;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-popover:1060;--z-tooltip:1070}.btn{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);cursor:pointer;transition:background-color var(--transition);border:none;justify-content:center;align-items:center;font-size:.875rem;font-weight:500;line-height:1.5;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--primary);color:var(--white)}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover)}.btn-success{background-color:var(--success);color:var(--white)}.btn-success:hover:not(:disabled){background-color:var(--success-hover)}.btn-danger{background-color:var(--danger);color:var(--white)}.btn-danger:hover:not(:disabled){background-color:var(--danger-hover)}.btn-secondary{background-color:var(--gray-600);color:var(--white)}.btn-secondary:hover:not(:disabled){background-color:var(--gray-700)}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:.75rem}.btn-lg{padding:var(--spacing-md) var(--spacing-lg);font-size:1rem}.btn-icon{padding:var(--spacing-xs);min-width:32px;height:32px}.btn-group{gap:var(--spacing-xs);display:flex}.App{text-align:left}
