:root{--ebs-navy: #1A3A5C;--ebs-navy-dark: #0F2540;--ebs-blue: #2C5F8A;--ebs-blue-light: #4A7FA8;--ebs-blue-pale: #D6E4F0;--ebs-blue-ghost: #EBF3FA;--ebs-orange: #C84B00;--ebs-page-bg: #D9E2EC;--ebs-sidebar-bg: #E8EFF5;--ebs-border: #9BAEBF;--ebs-border-lite: #C5D3DE;--ebs-header-h: 42px;--ebs-subnav-h: 28px;--ebs-sidebar-w: 210px;--ebs-row-alt: #EEF4F9;--ebs-th-bg: #B8D0E0;--ebs-green: #2D6A2D;--ebs-red: #8B1A1A;--ebs-amber: #7A5500;--blue-50: #EBF3FA;--blue-100: #D6E4F0;--blue-600: #2C5F8A;--blue-700: #1A3A5C;--gray-50: #F4F7FA;--gray-100: #E8EFF5;--gray-200: #C5D3DE;--gray-300: #9BAEBF;--gray-500: #546E7A;--gray-700: #2D3F4E;--gray-900: #111820;--green: #2D7A2D;--red: #C0392B;--amber: #B7770D;--radius: 2px;--shadow: none}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:Arial,Helvetica Neue,Helvetica,sans-serif;font-size:12px;background:var(--ebs-page-bg);color:#1a2530;-webkit-font-smoothing:antialiased}a{color:var(--ebs-blue);text-decoration:none}a:hover{text-decoration:underline;color:var(--ebs-orange)}button,.btn{background:linear-gradient(180deg,#4a7fa8,#2c5f8a);color:#fff;border:1px solid #1A3A5C;padding:3px 10px;border-radius:2px;cursor:pointer;font-size:11px;font-family:Arial,sans-serif;font-weight:700;height:24px;line-height:1;white-space:nowrap}button:hover{background:linear-gradient(180deg,#5a8fb8,#3c6f9a)}button.secondary,.btn.secondary{background:linear-gradient(180deg,#f4f7fa,#e0e8f0);color:#1a3a5c;border:1px solid #9BAEBF}button.secondary:hover{background:linear-gradient(180deg,#fafcfe,#eaf0f6)}button.danger{background:linear-gradient(180deg,#d44,#a22);border-color:#811;color:#fff}button.success{background:linear-gradient(180deg,#4a4,#282);border-color:#161;color:#fff}button:disabled{background:#c5d3de;border-color:#9baebf;color:#546e7a;cursor:not-allowed}input,select,textarea{font-family:Arial,sans-serif;font-size:12px;padding:3px 5px;border:1px solid #9BAEBF;border-radius:2px;background:#fff;color:#1a2530;height:22px}textarea{height:auto}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ebs-blue);box-shadow:0 0 0 2px #d6e4f0}label{font-size:11px;font-weight:700;color:#2d3f4e;display:block;margin-bottom:2px;margin-top:8px}.layout{display:flex;flex-direction:column;height:100vh;overflow:hidden}.ebs-header{height:var(--ebs-header-h);background:linear-gradient(180deg,#243E5A 0%,var(--ebs-navy-dark) 100%);border-bottom:2px solid #C84B00;display:flex;align-items:center;flex-shrink:0;padding:0;z-index:200}.ebs-logo{min-width:var(--ebs-sidebar-w);padding:0 14px;display:flex;flex-direction:row;align-items:center;gap:10px;border-right:1px solid rgba(255,255,255,.15);height:100%;flex-shrink:0;white-space:nowrap}.ebs-logo-text{color:#fff;font-size:14px;font-weight:700;letter-spacing:.3px;line-height:1}.ebs-logo-sub{color:#90b0cc;font-size:9px;letter-spacing:.8px;text-transform:uppercase;margin-top:1px}.ebs-nav-tabs{display:flex;align-items:flex-end;height:100%;padding-left:2px;flex:1;overflow:hidden}.ebs-tab{padding:0 14px;height:30px;display:flex;align-items:center;font-size:11px;font-weight:700;color:#b0cce0;cursor:pointer;border:1px solid transparent;border-bottom:none;margin-bottom:0;margin-top:auto;border-radius:3px 3px 0 0;gap:5px;white-space:nowrap;transition:background .1s;-webkit-user-select:none;user-select:none}.ebs-tab:hover{color:#fff;background:#ffffff14}.ebs-tab.active{background:var(--ebs-page-bg);color:var(--ebs-navy);border-color:#9baebf;border-bottom-color:var(--ebs-page-bg)}.ebs-header-right{display:flex;align-items:center;gap:8px;padding:0 12px;flex-shrink:0}.ebs-header-user{color:#c0d8ec;font-size:11px;white-space:nowrap}.ebs-header-btn{background:none;border:1px solid rgba(255,255,255,.25);color:#c0d8ec;font-size:11px;height:22px;padding:0 8px;border-radius:2px;cursor:pointer;font-family:Arial,sans-serif}.ebs-header-btn:hover{background:#ffffff1a;color:#fff;border-color:#fff6}.ebs-body{display:flex;flex:1;overflow:hidden}.ebs-sidebar{width:var(--ebs-sidebar-w);background:var(--ebs-sidebar-bg);border-right:1px solid var(--ebs-border);overflow-y:auto;flex-shrink:0}.ebs-sidebar-header{background:var(--ebs-navy);color:#c0d8ec;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;padding:6px 10px;border-bottom:1px solid var(--ebs-border)}.ebs-sidebar-group{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#546e7a;padding:8px 10px 3px;border-bottom:1px solid var(--ebs-border-lite);background:#dde6ee;cursor:pointer;-webkit-user-select:none;user-select:none}.ebs-sidebar-group:hover{background:#d0dae4}.ebs-sidebar nav a,.ebs-sidebar-link{display:block;padding:5px 10px 5px 16px;font-size:11px;color:#1a3a5c;border-bottom:1px solid #D8E4EE;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ebs-sidebar nav a:hover,.ebs-sidebar-link:hover{background:#d0e2ef;color:var(--ebs-navy-dark);text-decoration:none}.ebs-sidebar nav a.active,.ebs-sidebar-link.active{background:#1a3a5c;color:#fff;font-weight:700}.ebs-main{flex:1;overflow-y:auto;overflow-x:auto;display:flex;flex-direction:column}.ebs-breadcrumb{background:linear-gradient(180deg,#c8d8e8,#b8c8d8);border-bottom:1px solid var(--ebs-border);padding:0 12px;height:var(--ebs-subnav-h);display:flex;align-items:center;gap:4px;font-size:11px;color:#1a3a5c;flex-shrink:0}.ebs-breadcrumb a{color:#1a3a5c}.ebs-breadcrumb a:hover{color:var(--ebs-orange)}.ebs-breadcrumb-sep{color:#546e7a;font-size:10px}.ebs-page{padding:8px 10px;flex:1}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;padding:4px 0;border-bottom:1px solid var(--ebs-border-lite)}.topbar h2{font-size:14px;font-weight:700;color:var(--ebs-navy);margin:0}.card{background:#fff;border:1px solid var(--ebs-border);border-radius:0;padding:8px 10px;margin-bottom:6px}.card-title{background:linear-gradient(180deg,#b8d0e0,#a8c0d0);color:var(--ebs-navy);font-size:11px;font-weight:700;padding:3px 8px;margin:-8px -10px 8px;border-bottom:1px solid var(--ebs-border);text-transform:uppercase;letter-spacing:.4px}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:6px;margin-bottom:8px}.kpi-row{display:flex;gap:6px;margin-bottom:8px;flex-wrap:wrap}.kpi{background:#fff;border:1px solid var(--ebs-border);padding:6px 10px;min-width:100px;flex:1}.kpi .label{font-size:10px;color:#546e7a;text-transform:uppercase;letter-spacing:.4px;font-weight:700}.kpi .value{font-size:22px;font-weight:700;color:var(--ebs-navy);margin-top:2px;line-height:1}.kpi .sub{font-size:10px;color:#546e7a;margin-top:2px}table{width:100%;border-collapse:collapse;font-size:11px;background:#fff}th{background:linear-gradient(180deg,#c8d8e8,#b4c8da);color:var(--ebs-navy);font-weight:700;font-size:11px;text-align:left;padding:4px 8px;border:1px solid var(--ebs-border);white-space:nowrap}td{padding:3px 8px;border:1px solid #D0DCE8;vertical-align:middle;font-size:11px;color:#1a2530}tr:nth-child(2n) td{background:var(--ebs-row-alt)}tr:hover td{background:#c8daea!important}.badge{display:inline-block;padding:1px 6px;border-radius:2px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;border:1px solid transparent}.badge.green{background:#d4edda;color:#1a5c1a;border-color:#a8d5a8}.badge.red{background:#f8d7da;color:#7a1a1a;border-color:#f0a8a8}.badge.amber{background:#fff3cc;color:#6b4a00;border-color:#e8cc80}.badge.blue{background:#d6e4f0;color:#1a3a5c;border-color:#9baebf}.badge.gray{background:#e4ecf2;color:#2d3f4e;border-color:#9baebf}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:500}.modal{background:#fff;border:1px solid var(--ebs-border);border-top:3px solid var(--ebs-navy);padding:0;max-width:560px;width:94%;max-height:90vh;overflow-y:auto;border-radius:0}.modal h3{margin:0;padding:7px 12px;font-size:12px;font-weight:700;background:linear-gradient(180deg,#b8d0e0,#a8c0d0);color:var(--ebs-navy);border-bottom:1px solid var(--ebs-border);text-transform:uppercase;letter-spacing:.4px}.modal>*:not(h3){padding:0 12px}.modal>h3+*{padding-top:10px}.modal .actions{display:flex;gap:6px;justify-content:flex-end;margin-top:10px;padding:8px 12px;border-top:1px solid var(--ebs-border-lite);background:#f4f7fa}.empty{text-align:center;padding:30px 20px;color:#546e7a;font-size:12px}.empty h3{color:#2d3f4e;margin:6px 0;font-size:13px}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.row>*{flex:1}.row.tight>*{flex:0 1 auto}.section-title{font-size:11px;font-weight:700;color:var(--ebs-navy);padding:4px 8px;background:linear-gradient(180deg,#c8d8e8,#b8c8d8);border:1px solid var(--ebs-border);text-transform:uppercase;letter-spacing:.4px;margin:8px 0 4px}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(160deg,var(--ebs-navy-dark) 0%,var(--ebs-blue) 100%)}.login-card{background:#fff;border:1px solid var(--ebs-border);border-top:4px solid var(--ebs-orange);width:360px;padding:0}.login-card-header{background:linear-gradient(180deg,#c8d8e8,#b8c8d8);padding:14px 20px;border-bottom:1px solid var(--ebs-border)}.login-card h1{color:var(--ebs-navy);font-size:15px;margin:0 0 2px}.login-card p.subtitle{color:#546e7a;margin:0;font-size:11px}.login-card-body{padding:16px 20px}.login-card label{display:block;margin:10px 0 3px}.login-card input{width:100%}.login-card .error{background:#f8d7da;color:#7a1a1a;padding:6px 10px;border:1px solid #F0A8A8;margin-top:8px;font-size:11px}.login-card button{width:100%;margin-top:14px;height:28px;font-size:12px}.login-card .demo-creds{margin-top:12px;padding:8px;background:#ebf3fa;border:1px solid var(--ebs-border-lite);font-size:11px;color:#1a3a5c}.ebs-search{position:relative}.ebs-search input{width:220px;padding:2px 8px;font-size:11px;height:22px;border:1px solid rgba(255,255,255,.3);background:#ffffff26;color:#fff;border-radius:2px}.ebs-search input::placeholder{color:#ffffff8c}.ebs-search input:focus{background:#fff;color:#1a2530;border-color:#fff}.ebs-search-results{position:absolute;top:26px;left:0;width:320px;background:#fff;border:1px solid var(--ebs-border);z-index:1000;max-height:360px;overflow-y:auto;box-shadow:2px 4px 8px #0003}.ebs-search-result{padding:5px 10px;border-bottom:1px solid var(--ebs-border-lite);cursor:pointer;font-size:11px}.ebs-search-result:hover{background:#d6e4f0}.ebs-notif-panel{position:absolute;top:30px;right:0;width:320px;background:#fff;border:1px solid var(--ebs-border);box-shadow:2px 4px 8px #0003;z-index:1000;max-height:400px;overflow-y:auto}.ebs-notif-header{padding:5px 10px;background:linear-gradient(180deg,#c8d8e8,#b8c8d8);border-bottom:1px solid var(--ebs-border);font-size:11px;font-weight:700;color:var(--ebs-navy);display:flex;justify-content:space-between;align-items:center}.ebs-notif-item{padding:5px 10px;border-bottom:1px solid var(--ebs-border-lite);cursor:pointer;font-size:11px}.ebs-notif-item:hover,.ebs-notif-item.unread{background:#ebf3fa}.ebs-notif-item .notif-title{font-weight:700;color:#1a3a5c}.ebs-notif-item .notif-body{color:#546e7a;margin-top:1px}.ebs-notif-item .notif-time{color:#9baebf;font-size:10px;margin-top:1px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#d9e2ec}::-webkit-scrollbar-thumb{background:#9baebf;border-radius:0}::-webkit-scrollbar-thumb:hover{background:#7a9ab0}code{font-family:Courier New,monospace;font-size:11px;background:#ebf3fa;padding:1px 4px;border:1px solid #C5D3DE}[dir=rtl] body{font-family:Segoe UI,Tahoma,Arial,sans-serif}[dir=rtl] .ebs-sidebar{border-right:none;border-left:1px solid var(--ebs-border);order:2}[dir=rtl] .ebs-main{order:1}[dir=rtl] .ebs-logo{border-right:none;border-left:1px solid rgba(255,255,255,.15)}[dir=rtl] .ebs-nav-tabs{padding-left:0;padding-right:2px}[dir=rtl] .ebs-sidebar nav a,[dir=rtl] .ebs-sidebar-link{padding:5px 16px 5px 10px;text-align:right}[dir=rtl] .ebs-sidebar-group,[dir=rtl] th{text-align:right}[dir=rtl] .ebs-breadcrumb{direction:rtl}[dir=rtl] .ebs-search-results{left:auto;right:0}[dir=rtl] .ebs-notif-panel{right:auto;left:0}[dir=rtl] .row{flex-direction:row-reverse}[dir=rtl] .modal .actions{justify-content:flex-start;flex-direction:row-reverse}[dir=rtl] label{text-align:right}[dir=rtl] button,[dir=rtl] .btn{direction:rtl}[dir=rtl] .card-title,[dir=rtl] .section-title{text-align:right}[dir=rtl] .topbar{flex-direction:row-reverse}[dir=rtl] .kpi .label,[dir=rtl] .kpi .value,[dir=rtl] .kpi .sub{text-align:right}[dir=rtl] .login-card-header,[dir=rtl] .login-card-body{direction:rtl;text-align:right}[dir=rtl] .ebs-notif-item{text-align:right}[dir=rtl] .ebs-notif-header{flex-direction:row-reverse}[dir=rtl] input,[dir=rtl] select,[dir=rtl] textarea{text-align:right}
