:root{--ey-yellow:#ffe600;--ey-yellow-dark:#d4bd00;--ey-yellow-light:#fffef0;--ey-black:#2e2e38;--ey-dark-gray:#1e1e23;--ey-light-gray:#f5f5f5;--ey-border:#e0e0e0;--ey-blue:#007bff;--ey-blue-light:#e3f2fd;--ey-red:#dc3545;--ey-red-light:#ffebee;--ey-green:#28a745;--ey-green-light:#e8f5e9;--ey-orange:#fd7e14;--ey-orange-light:#fff3e0;--ey-purple:#6f42c1;--ey-purple-light:#f3e5f5;--shadow-sm:0 1px 3px #00000014;--shadow-md:0 4px 6px #0000001a;--shadow-lg:0 10px 20px #0000001f;--shadow-xl:0 20px 40px #00000026;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ey-black);--transition-fast:.15s ease;--transition-base:.3s ease;--transition-slow:.5s ease;background-color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-weight:400;line-height:1.6}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--ey-light-gray);min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--ey-light-gray)}::-webkit-scrollbar-thumb{background:#888;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}.btn{cursor:pointer;transition:all var(--transition-base);border:none;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.btn:disabled{opacity:.6;cursor:not-allowed}.btn:active:not(:disabled){transform:scale(.98)}.btn-primary{background-color:var(--ey-yellow);color:var(--ey-black);box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background-color:var(--ey-yellow-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-secondary{color:var(--ey-black);border:2px solid var(--ey-border);box-shadow:var(--shadow-sm);background-color:#fff}.btn-secondary:hover:not(:disabled){background-color:var(--ey-light-gray);border-color:var(--ey-black)}.btn-danger{background-color:var(--ey-red);color:#fff;box-shadow:var(--shadow-sm)}.btn-danger:hover:not(:disabled){box-shadow:var(--shadow-md);background-color:#c82333;transform:translateY(-2px)}.btn-success{background-color:var(--ey-green);color:#fff;box-shadow:var(--shadow-sm)}.btn-success:hover:not(:disabled){box-shadow:var(--shadow-md);background-color:#218838;transform:translateY(-2px)}.btn-sm{padding:6px 12px;font-size:12px}.btn-lg{padding:14px 28px;font-size:16px}.btn-icon{border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:inline-flex}input,select,textarea{border:2px solid var(--ey-border);width:100%;transition:all var(--transition-base);background-color:#fff;border-radius:6px;padding:10px 14px;font-family:inherit;font-size:14px}input:hover,select:hover,textarea:hover{border-color:var(--ey-yellow)}input:focus,select:focus,textarea:focus{border-color:var(--ey-yellow);outline:none;box-shadow:0 0 0 3px #ffe60026}input:disabled,select:disabled,textarea:disabled{background-color:var(--ey-light-gray);cursor:not-allowed}label{color:var(--ey-black);margin-bottom:8px;font-size:14px;font-weight:600;display:block}.form-group{margin-bottom:20px}.form-row{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;display:grid}table{border-collapse:separate;border-spacing:0;width:100%;box-shadow:var(--shadow-sm);background-color:#fff;border-radius:8px;overflow:hidden}thead{background:linear-gradient(135deg, var(--ey-dark-gray) 0%, var(--ey-black) 100%);color:#fff}th{text-align:left;text-transform:uppercase;letter-spacing:.5px;padding:16px 12px;font-size:12px;font-weight:700}td{border-bottom:1px solid var(--ey-border);vertical-align:middle;padding:14px 12px;font-size:14px}tbody tr{transition:all var(--transition-fast)}tbody tr:hover{background-color:var(--ey-blue-light);box-shadow:var(--shadow-sm);transform:scale(1.01)}tbody tr:last-child td{border-bottom:none}.card{box-shadow:var(--shadow-md);transition:all var(--transition-base);background:#fff;border:1px solid #0000;border-radius:12px;padding:28px}.card:hover{box-shadow:var(--shadow-lg);border-color:var(--ey-yellow)}.card-header{color:var(--ey-black);border-bottom:3px solid var(--ey-yellow);align-items:center;gap:12px;margin-bottom:20px;padding-bottom:16px;font-size:22px;font-weight:700;display:flex}.card-compact{padding:16px}.card-title{margin-bottom:12px;font-size:16px;font-weight:600}.badge{text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-radius:16px;align-items:center;gap:4px;padding:6px 14px;font-size:11px;font-weight:700;display:inline-flex}.badge-high{background-color:var(--ey-red-light);color:var(--ey-red);border:1px solid var(--ey-red)}.badge-medium{background-color:var(--ey-orange-light);color:var(--ey-orange);border:1px solid var(--ey-orange)}.badge-low{background-color:var(--ey-green-light);color:var(--ey-green);border:1px solid var(--ey-green)}.badge-active{background-color:var(--ey-blue-light);color:var(--ey-blue);border:1px solid var(--ey-blue)}.badge-inactive{background-color:var(--ey-light-gray);color:#666;border:1px solid var(--ey-border)}.badge-pending{background-color:var(--ey-purple-light);color:var(--ey-purple);border:1px solid var(--ey-purple)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background-color:#0009;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-content{width:100%;max-width:600px;max-height:90vh;box-shadow:var(--shadow-xl);background:#fff;border-radius:12px;flex-direction:column;padding:0;animation:.3s slideUp;display:flex;overflow:hidden}.modal-header{border-bottom:2px solid var(--ey-yellow);background:linear-gradient(135deg, var(--ey-light-gray) 0%, white 100%);justify-content:space-between;align-items:center;padding:24px 28px;display:flex}.modal-title{color:var(--ey-black);margin:0;font-size:20px;font-weight:700}.modal-body{flex:1;padding:28px;overflow-y:auto}.modal-footer{border-top:1px solid var(--ey-border);background-color:var(--ey-light-gray);justify-content:flex-end;gap:12px;padding:20px 28px;display:flex}.toast-container{z-index:2000;flex-direction:column;gap:12px;max-width:400px;display:flex;position:fixed;top:20px;right:20px}.toast{box-shadow:var(--shadow-lg);background:#fff;border-left:4px solid;border-radius:8px;align-items:center;gap:12px;min-width:300px;padding:16px 20px;animation:.3s slideInRight;display:flex}.toast-success{border-left-color:var(--ey-green)}.toast-error{border-left-color:var(--ey-red)}.toast-warning{border-left-color:var(--ey-orange)}.toast-info{border-left-color:var(--ey-blue)}.toast-icon{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-weight:700;display:flex}.toast-success .toast-icon{background-color:var(--ey-green)}.toast-error .toast-icon{background-color:var(--ey-red)}.toast-warning .toast-icon{background-color:var(--ey-orange)}.toast-info .toast-icon{background-color:var(--ey-blue)}.toast-content{flex:1}.toast-title{margin-bottom:4px;font-size:14px;font-weight:600}.toast-message{color:#666;font-size:13px}.toast-close{cursor:pointer;color:#999;background:0 0;border:none;width:24px;height:24px;padding:0;font-size:20px;line-height:1}.toast-close:hover{color:var(--ey-black)}.spinner{border:4px solid var(--ey-light-gray);border-top-color:var(--ey-yellow);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}.spinner-sm{border-width:2px;width:20px;height:20px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes spin{to{transform:rotate(360deg)}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:8px}.gap-4{gap:16px}.mt-4{margin-top:16px}.mb-4{margin-bottom:16px}.text-center{text-align:center}.w-full{width:100%}.grid{display:grid}.grid-2{grid-template-columns:repeat(2,1fr);gap:20px}.login-container{background-color:#fff;min-height:100vh;display:flex}.login-left{background-color:#fff;flex:1;justify-content:center;align-items:center;padding:40px;display:flex}.login-right{background:linear-gradient(135deg,#2e2e38 0%,#1e1e23 100%);flex:1;justify-content:center;align-items:center;display:flex;position:relative}.building-image{background:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 800 600\"><rect fill=\"%232E2E38\" width=\"800\" height=\"600\"/><rect fill=\"%23FFE600\" x=\"50\" y=\"100\" width=\"200\" height=\"400\" opacity=\"0.1\"/><rect fill=\"%23FFE600\" x=\"300\" y=\"150\" width=\"150\" height=\"350\" opacity=\"0.1\"/><rect fill=\"%23FFE600\" x=\"500\" y=\"80\" width=\"250\" height=\"420\" opacity=\"0.1\"/></svg>") 50%/contain no-repeat;width:80%;height:80%}.login-form-wrapper{width:100%;max-width:400px}.ey-logo{margin-bottom:40px}.ey-logo-text{color:var(--ey-black);letter-spacing:2px;margin-bottom:8px;font-size:48px;font-weight:700;position:relative}.ey-logo-text:after{content:"";background-color:var(--ey-yellow);width:40px;height:5px;position:absolute;top:-5px;right:-15px;transform:skew(-20deg)}.ey-logo-tagline{color:#666;font-size:12px}.login-title{color:var(--ey-black);margin-bottom:32px;font-size:28px;font-weight:600}.input-icon{position:relative}.input-icon input{padding-left:40px}.error-message{color:var(--ey-red);margin-top:6px;font-size:12px}.form-options{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.checkbox-label{cursor:pointer;align-items:center;gap:8px;font-size:14px;display:flex}.checkbox-label input[type=checkbox]{cursor:pointer;width:auto}.login-btn{letter-spacing:.5px;height:48px;font-size:16px}.demo-accounts{background-color:var(--ey-light-gray);border-left:4px solid var(--ey-yellow);border-radius:8px;margin-top:24px;padding:16px}.login-footer{text-align:center;color:#999;margin-top:32px;font-size:12px}@media (width<=768px){.login-container{flex-direction:column}.login-right{display:none}.login-left{padding:20px}}.layout{flex-direction:column;min-height:100vh;display:flex}.header{border-bottom:2px solid var(--ey-border);z-index:100;background-color:#fff;justify-content:space-between;align-items:center;padding:12px 24px;display:flex;position:sticky;top:0}.header-left{align-items:center;gap:20px;display:flex}.menu-toggle{cursor:pointer;color:var(--ey-black);background:0 0;border:none;align-items:center;padding:8px;display:flex}.menu-toggle:hover{background-color:var(--ey-light-gray);border-radius:4px}.header-logo{border-right:2px solid var(--ey-border);flex-direction:column;align-items:flex-start;padding-right:20px;display:flex;position:relative}.logo-ey{color:var(--ey-black);letter-spacing:1px;font-size:32px;font-weight:700;position:relative}.logo-ey:after{content:"";background-color:var(--ey-yellow);width:25px;height:4px;position:absolute;top:-3px;right:-10px;transform:skew(-20deg)}.logo-tagline{color:#666;text-transform:lowercase;font-size:8px}.header-title{color:var(--ey-black);margin:0;font-size:16px;font-weight:600}.header-right{align-items:center;gap:20px;display:flex}.user-info{background-color:var(--ey-light-gray);border-radius:6px;align-items:center;gap:10px;padding:8px 16px;display:flex}.user-name{color:var(--ey-black);font-size:13px;font-weight:600}.user-role{color:#666;font-size:11px}.btn-logout{border:1px solid var(--ey-border);cursor:pointer;color:var(--ey-black);background-color:#fff;border-radius:4px;padding:8px 20px;font-size:13px;font-weight:500;transition:all .2s}.btn-logout:hover{background-color:var(--ey-light-gray)}.main-container{flex:1;display:flex}.sidebar{background-color:var(--ey-dark-gray);color:#fff;width:280px;height:calc(100vh - 71px);position:sticky;top:71px;overflow-y:auto}.sidebar-header{color:#fff;background-color:var(--ey-black);padding:16px 20px;font-size:14px;font-weight:700}.sidebar-nav{padding:8px 0}.menu-item,.menu-group-header{color:#fff;cursor:pointer;align-items:center;gap:10px;padding:12px 20px;font-size:13px;font-weight:500;text-decoration:none;transition:background-color .2s;display:flex}.menu-item:hover,.menu-group-header:hover{background-color:#ffe6001a}.menu-item.active{background-color:var(--ey-yellow);color:var(--ey-black);border-left:4px solid var(--ey-black)}.menu-group{margin:4px 0}.menu-group-header{text-transform:uppercase;letter-spacing:.5px;justify-content:space-between;font-size:12px;font-weight:600}.menu-group-children{background-color:#0003}.menu-item-child{color:#ffffffe6;padding:10px 20px 10px 50px;font-size:13px;text-decoration:none;transition:all .2s;display:block}.menu-item-child:hover{background-color:#ffe6001a;padding-left:55px}.menu-item-child.active{background-color:var(--ey-yellow);color:var(--ey-black);border-left:4px solid #fff;font-weight:600}.content{background-color:var(--ey-light-gray);flex:1;min-height:calc(100vh - 71px);padding:24px}@media (width<=1024px){.sidebar{z-index:90;position:fixed;top:71px;left:0}.header-title{display:none}}@media (width<=768px){.header{padding:12px}.header-left{gap:10px}.user-name{display:none}.content{padding:16px}}.language-selector{margin-right:16px;position:relative}.language-button{border:2px solid var(--ey-border);cursor:pointer;color:var(--ey-black);background-color:#fff;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.language-button:hover{border-color:var(--ey-yellow);background-color:#fffef0}.current-lang{align-items:center;gap:4px;display:flex}.language-dropdown{border:2px solid var(--ey-border);box-shadow:var(--shadow-lg);z-index:1000;background:#fff;border-radius:8px;min-width:180px;margin-top:8px;animation:.2s ease-out slideDown;position:absolute;top:100%;right:0;overflow:hidden}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.language-option{cursor:pointer;width:100%;color:var(--ey-black);text-align:left;background:#fff;border:none;align-items:center;gap:12px;padding:12px 16px;font-size:14px;transition:background-color .2s;display:flex}.language-option:hover{background-color:#fffef0}.language-option.active{background-color:var(--ey-yellow-light);font-weight:600}.lang-flag{font-size:20px}.lang-name{flex:1}.checkmark{color:var(--ey-yellow);font-size:16px;font-weight:700}
