:root{--primary:#00a2b4;--primary-dark:#007d8c;--secondary:#f2c12e;--bg-gradient-start:#0a192f;--bg-gradient-end:#020c1b;--surface:#ffffff0d;--surface-hover:#ffffff1a;--border:#ffffff1a;--text-primary:#ccd6f6;--text-secondary:#8892b0;--white:#fff;--font-main:"Inter", system-ui, -apple-system, BlinkMacSystemFont, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-main);background:linear-gradient(135deg, var(--bg-gradient-start) 0%, var(--bg-gradient-end) 100%);color:var(--text-primary);min-height:100vh;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{color:var(--text-primary);font-weight:700}h1{letter-spacing:-1px;background:linear-gradient(90deg, var(--white), var(--primary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:3.5rem;line-height:1.1}p{color:var(--text-secondary);font-size:1.125rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}@keyframes pulse-glow{0%{box-shadow:0 0 #00a2b466}70%{box-shadow:0 0 0 15px #00a2b400}to{box-shadow:0 0 #00a2b400}}.glass-panel{background:var(--surface);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:16px}.fade-in{opacity:0;animation:.8s cubic-bezier(.16,1,.3,1) forwards fadeIn}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.auth-layout{background-color:#f1f5f9;justify-content:center;align-items:center;height:100vh;font-family:Inter,sans-serif;display:flex}.auth-card{background:#fff;border-radius:12px;width:100%;max-width:400px;padding:40px;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.auth-header{text-align:center;margin-bottom:30px}.auth-logo{margin:0 auto 16px}.auth-header h2{color:#0f172a;margin:0 0 8px;font-size:22px}.auth-header p{color:#64748b;margin:0;font-size:13px}.auth-form .input-group{margin-bottom:20px}.auth-form label{color:#475569;margin-bottom:6px;font-size:13px;font-weight:600;display:block}.auth-form input{box-sizing:border-box;border:1px solid #cbd5e1;border-radius:6px;width:100%;padding:10px 12px;font-size:14px;transition:border-color .2s}.auth-form input:focus{border-color:#1e3a8a;outline:none;box-shadow:0 0 0 3px #1e3a8a1a}.auth-btn{color:#fff;cursor:pointer;background-color:#1e3a8a;border:none;border-radius:6px;width:100%;padding:12px;font-size:14px;font-weight:700;transition:background-color .2s}.auth-btn:hover{background-color:#172554}.auth-footer{text-align:center;flex-direction:column;gap:12px;margin-top:24px;display:flex}.auth-footer a{color:#1e3a8a;font-size:13px;font-weight:500;text-decoration:none}.auth-footer a:hover{text-decoration:underline}.forgot-link{color:#64748b!important}.auth-error{color:#991b1b;text-align:center;background-color:#fef2f2;border-radius:6px;margin-bottom:20px;padding:12px;font-size:13px}.auth-success{color:#166534;text-align:center;background-color:#f0fdf4;border-radius:6px;margin-bottom:20px;padding:12px;font-size:13px}:root{--bg-color:#f4f6f9;--sidebar-width:280px;--text-primary:#334155;--text-secondary:#64748b;--text-label:#475569;--border-color:#e2e8f0;--ipkbi-primary:#1e3a8a;--ipkbi-hover:#172554;--ipkbi-light:#eff6ff;--card-bg:#fff}body{background-color:var(--bg-color);color:var(--text-primary);margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.layout{flex-direction:column;width:100vw;height:100vh;display:flex;overflow:hidden}.top-header{background-color:var(--card-bg);width:100%;height:48px}.top-brand-bar{background-color:var(--ipkbi-primary);background-image:linear-gradient(45deg,#ffffff26 25%,#0000 25% 50%,#ffffff26 50% 75%,#0000 75%,#0000);background-size:20px 20px;width:100%;height:12px}.content-wrapper{background-color:var(--bg-color);flex:1;display:flex;overflow:hidden}.sidebar,.profile-sidebar{width:var(--sidebar-width);background-color:var(--card-bg);border-right:1px solid var(--border-color);flex-direction:column;display:flex;overflow-y:auto;box-shadow:2px 0 10px #00000008}.sidebar-header{border-bottom:1px solid var(--border-color);background-color:#f8fafc;padding:20px 24px}.brand-logo{align-items:center;gap:12px;display:flex}.brand-circle{background-color:var(--ipkbi-primary);color:#fff;letter-spacing:.5px;border-radius:8px;justify-content:center;align-items:center;width:44px;height:44px;font-size:14px;font-weight:800;display:flex;box-shadow:0 4px 6px #1e3a8a33}.brand-text{flex-direction:column;display:flex}.brand-title{color:var(--text-primary);font-size:14px;font-weight:700;line-height:1.2}.brand-subtitle{color:var(--text-secondary);font-size:11px;font-weight:500}.menu-list{flex-direction:column;padding:12px 0;display:flex}.menu-item{cursor:pointer;border-left:3px solid #0000;align-items:center;padding:12px 24px;transition:all .2s;display:flex}.menu-item:hover{background-color:var(--ipkbi-light)}.menu-item.active{background-color:var(--ipkbi-light);border-left:3px solid var(--ipkbi-primary)}.menu-item.active .menu-icon,.menu-item.active .menu-text,.menu-item.active .menu-chevron{color:var(--ipkbi-primary);font-weight:600}.menu-icon{width:20px;height:20px;color:var(--text-secondary);justify-content:center;align-items:center;margin-right:16px;display:flex}.menu-icon svg{width:100%;height:100%}.menu-text{color:var(--text-primary);flex:1;font-size:13px;line-height:1.4}.menu-chevron{color:#94a3b8;width:16px;height:16px}.menu-chevron svg{width:100%;height:100%}.back-btn{color:var(--ipkbi-primary);cursor:pointer;border-bottom:1px solid var(--border-color);background-color:#f8fafc;align-items:center;gap:8px;padding:14px 16px;font-size:12px;font-weight:600;transition:background-color .2s;display:flex}.back-btn:hover{background-color:var(--ipkbi-light)}.back-btn svg{width:16px;height:16px}.profile-header{border-bottom:1px solid var(--border-color);text-align:center;background-color:var(--card-bg);flex-direction:column;align-items:center;padding:0 20px 24px;display:flex}.form-label{color:#64748b;margin-bottom:6px;font-size:14px;display:block}.form-input{background-color:#fff;border:1px solid #cbd5e1;border-radius:6px;width:100%;padding:10px;font-family:inherit}.form-input:focus{border-color:#2eb6cc;outline:none;box-shadow:0 0 0 2px #2eb6cc33}.profile-photo-placeholder{border:1px solid var(--border-color);background-color:#f1f5f9;border-radius:8px;width:100px;height:120px;margin-top:24px;margin-bottom:16px}.profile-name{color:#0f172a;margin-bottom:4px;font-size:14px;font-weight:700;line-height:1.3}.profile-nip{color:var(--text-secondary);margin-bottom:4px;font-size:12px;font-weight:500}.profile-instansi{color:var(--ipkbi-primary);background-color:var(--ipkbi-light);border-radius:4px;margin-top:6px;padding:4px 8px;font-size:12px;font-weight:700}.accordion-menu{flex:1;padding:16px 12px}.menu-group{border-radius:6px;margin-bottom:6px;overflow:hidden}.menu-group-header{cursor:pointer;color:var(--text-primary);align-items:center;padding:12px 16px;font-size:13px;font-weight:600;transition:all .2s;display:flex}.menu-group-header:hover{background-color:var(--ipkbi-light)}.menu-group.active .menu-group-header{background-color:var(--ipkbi-primary);color:#fff}.menu-group-icon{justify-content:center;align-items:center;width:18px;height:18px;margin-right:12px;display:flex}.menu-group-icon svg,.menu-group-chevron svg{width:100%;height:100%}.menu-group-header span{flex:1}.menu-group-chevron{width:16px;height:16px;transition:transform .3s}.menu-group.active .menu-group-chevron{transform:rotate(180deg)}.menu-group-content{background-color:var(--card-bg);display:none}.menu-group.active .menu-group-content{display:block}.menu-group-content ul{margin:0;padding:8px 0;list-style:none}.menu-group-content li{color:var(--text-label);cursor:pointer;padding:10px 16px 10px 46px;font-size:13px;position:relative}.menu-group-content li:hover{color:var(--ipkbi-primary);background-color:#f8fafc}.menu-group-content li.active-sub{color:var(--ipkbi-primary);font-weight:600}.menu-group-content li.active-sub:before{content:"";background-color:var(--ipkbi-primary);border-radius:50%;width:6px;height:6px;position:absolute;top:50%;left:26px;transform:translateY(-50%)}.print-cv-container{justify-content:center;padding:20px;display:flex}.print-cv-btn{background-color:var(--ipkbi-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;gap:8px;width:100%;padding:12px 24px;font-size:12px;font-weight:700;transition:background-color .2s,transform .1s;display:flex;box-shadow:0 4px 6px #1e3a8a33}.print-cv-btn:hover{background-color:var(--ipkbi-hover)}.print-cv-btn:active{transform:scale(.98)}.print-cv-btn svg{width:18px;height:18px}.main-content,.main-data{background-color:var(--card-bg);flex:1;overflow-y:auto}.main-data{background-color:var(--bg-color);padding:32px 40px}.submenu-panel{max-width:600px;padding:40px}.submenu-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-top:0;margin-bottom:24px;font-size:14px;font-weight:600}.submenu-item{border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;background-color:#fff;border-radius:8px;margin-bottom:12px;padding:16px 20px;font-size:14px;font-weight:500;transition:all .2s;box-shadow:0 2px 4px #00000005}.submenu-item:hover{border-color:var(--ipkbi-primary);color:var(--ipkbi-primary);box-shadow:0 4px 8px #1e3a8a14}.empty-state{color:#94a3b8;justify-content:center;align-items:center;height:100%;font-size:15px;font-weight:500;display:flex}.data-card{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;margin-bottom:24px;overflow:hidden;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.card-header{border-bottom:1px solid var(--border-color);background-color:#f8fafc;padding:18px 24px}.card-header.has-action{justify-content:space-between;align-items:center;display:flex}.card-header h2{color:#1e293b;margin:0;font-size:15px;font-weight:700}.btn-edit{color:var(--ipkbi-primary);border:1px solid var(--border-color);cursor:pointer;background-color:#fff;border-radius:6px;padding:6px 16px;font-size:11px;font-weight:700;transition:all .2s;box-shadow:0 1px 2px #0000000d}.btn-edit:hover{border-color:var(--ipkbi-primary);color:var(--ipkbi-primary);background-color:var(--ipkbi-light)}.card-grid{grid-template-columns:1fr 1fr;gap:24px 40px;padding:24px 32px;display:grid}.data-field{grid-template-columns:160px 1fr;align-items:center;display:grid}.field-label{color:var(--text-label);font-size:13px;font-weight:600}.field-value{color:#0f172a;font-size:13px;font-weight:500}.badge-active{color:#166534;letter-spacing:.5px;background-color:#dcfce7;border-radius:20px;padding:4px 10px;font-size:11px;font-weight:800}.empty-card .empty-line{height:20px;padding:24px}.chat-widget{z-index:100;align-items:flex-end;gap:12px;display:flex;position:fixed;bottom:24px;right:24px}.chat-bubble{background-color:var(--card-bg);color:var(--text-primary);border:1px solid var(--border-color);border-radius:12px 12px 0;margin-bottom:8px;padding:12px 16px;font-size:13px;font-weight:600;position:relative;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.chat-bubble:after{content:"";border-left:8px solid var(--card-bg);border-bottom:8px solid #0000;width:0;height:0;position:absolute;bottom:-1px;right:-8px}.chat-bubble:before{content:"";border-left:10px solid var(--border-color);z-index:-1;border-bottom:10px solid #0000;width:0;height:0;position:absolute;bottom:-2px;right:-10px}.chat-avatar{justify-content:center;align-items:center;display:flex}.avatar-circle{background-color:var(--ipkbi-primary);cursor:pointer;border:3px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;display:flex;box-shadow:0 4px 6px #0000001a}.ecc-text{color:#fff;text-transform:uppercase;font-size:14px;font-weight:800}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background-color:#cbd5e1;border-radius:10px}::-webkit-scrollbar-thumb:hover{background-color:#94a3b8}
