*{box-sizing:border-box}body{margin:0}.app-container{display:flex;min-height:100vh;background-color:#1a1a1a;color:#fff}.sidebar{width:auto;background-color:#1e1e1e;border-right:1px solid #333;padding:20px 0;flex-shrink:0;display:flex;flex-direction:column}.sidebar-header{padding:0 11px 20px;border-bottom:1px solid #333}.brand{color:#fff;text-decoration:none;font-size:1.2rem;font-weight:700;white-space:nowrap}.sidebar-nav{padding:20px 11px;display:flex;flex-direction:column;gap:10px}.sidebar-nav a{color:#fff;text-decoration:none;padding:8px 12px;border-radius:6px;transition:background-color .2s}.sidebar-nav a:hover{background-color:#333}.sidebar-nav a.active{background-color:#2d2d2d}.sidebar-auth{display:flex;flex-direction:column;gap:10px}.sidebar-nav .profile-link{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:6px;transition:background-color .2s;max-width:100%}.sidebar-nav .profile-link span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.avatar{width:24px;height:24px;border-radius:50%}.auth-link{color:#fff;text-decoration:none;padding:8px 12px;border-radius:6px;transition:background-color .2s}.auth-link:hover{background-color:#333}.main-container{flex-grow:1;padding:20px}.top-header{padding:10px 20px}.auth-section,.top-header .auth-link,.top-header .profile-link{display:none}main{padding:40px;max-width:800px;margin:0 auto}main:has(.app-page){max-width:100%;padding:20px}.app-page{padding:20px;max-width:100%;width:100%}.app-page h2{margin-bottom:20px;color:#fff;text-align:center}.button-container-centered{display:flex;justify-content:center;gap:15px;margin-bottom:20px}.action-button{padding:12px 24px;font-size:16px;font-weight:600;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease}.action-button:disabled{opacity:.5;cursor:not-allowed}.load-button{background-color:#4caf50;color:#fff}.load-button:hover:not(:disabled){background-color:#45a049}.push-button{background-color:#2196f3;color:#fff}.push-button:hover:not(:disabled){background-color:#0b7dda}.apply-rules-button{background-color:#ff9800;color:#fff}.apply-rules-button:hover:not(:disabled){background-color:#f57c00}.data-tabs{display:flex;gap:4px;margin-bottom:0}.data-tab{padding:10px 24px;font-size:14px;font-weight:600;border:none;border-radius:6px 6px 0 0;cursor:pointer;background-color:#3a3a3a;color:#aaa;transition:background-color .2s,color .2s}.data-tab:hover{background-color:#444;color:#fff}.data-tab.active{background-color:#2a2a2a;color:#fff}.tables-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:30px;width:100%}.table-section{background-color:#2a2a2a;border-radius:0 6px 6px;padding:20px;overflow:hidden}.table-section h3{margin-top:0;margin-bottom:15px;color:#fff;font-size:18px}.centered-heading{text-align:center}.table-container{overflow-x:auto;overflow-y:auto;max-height:600px}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table thead{position:sticky;top:0;background-color:#333;z-index:10}.data-table th{padding:12px 8px;text-align:left;font-weight:600;color:#fff;border-bottom:2px solid #444;white-space:nowrap}.data-table td{padding:10px 8px;border-bottom:1px solid #3a3a3a;color:#e0e0e0;word-wrap:break-word;white-space:normal;max-width:200px}.data-table tbody tr:hover{background-color:#333}.editable-input{width:100%;min-width:150px;padding:6px 8px;background-color:#1a1a1a;border:1px solid #555;border-radius:4px;color:#fff;font-size:14px;box-sizing:border-box}.editable-input:focus{outline:none;border-color:#2196f3;background-color:#252525}.data-table th:nth-child(5),.data-table td:nth-child(5){min-width:150px;max-width:250px}.data-table th:nth-child(6),.data-table td:nth-child(6){min-width:150px;max-width:250px}.data-table input[type=checkbox]{cursor:pointer;width:18px;height:18px}.data-table input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.app-navigation{display:flex;gap:0;border-bottom:2px solid #333;margin-bottom:30px;justify-content:center}.app-nav-tab{padding:12px 24px;background:none;border:none;color:#999;cursor:pointer;font-size:16px;font-weight:500;transition:all .2s ease;border-bottom:3px solid transparent;position:relative;top:2px}.app-nav-tab:hover{color:#fff;background-color:#ffffff0d}.app-nav-tab.active{color:#fff;border-bottom-color:#4a9eff}.app-nav-tab:focus{outline:none}
