:root{--p:#7057e8;--soft:#f1efff;--bg:#f6f7fb;--ink:#202234;--muted:#74788d;--line:#e7e9f1}*{box-sizing:border-box}body{margin:0;font-family:'Plus Jakarta Sans',sans-serif;color:var(--ink);background:var(--bg)}button,input,select{font:inherit}i{font-family:'Material Symbols Rounded';font-style:normal}.hidden{display:none!important}.login{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.visual{padding:42px 6vw;background:linear-gradient(145deg,#f5f1ff,#effaff 55%,#fff2eb);display:flex;flex-direction:column;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px}.brand img{width:54px;height:54px;object-fit:contain}.brand b{font-size:23px}.brand small{display:block;color:var(--muted)}.eyebrow{color:var(--p);font-size:11px;font-weight:800;letter-spacing:.14em}.visual h1{font-size:clamp(42px,5vw,70px);line-height:1.08;max-width:650px}.visual p,.loginbox p,.panel p{color:var(--muted)}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.benefits article{background:#ffffffaa;padding:18px;border-radius:18px}.benefits b,.benefits small{display:block;margin-top:7px}.loginbox{display:grid;place-items:center;background:#fff;padding:40px}.loginbox form{width:min(430px,100%)}h2{font-size:34px}.loginbox label{display:block;font-weight:700;font-size:13px;margin-top:22px}.field{display:flex;align-items:center;border:1px solid var(--line);border-radius:14px;padding:0 13px;margin-top:8px}.field:focus-within{border-color:var(--p);box-shadow:0 0 0 4px #7057e81a}.field input{border:0;outline:0;width:100%;padding:14px 10px}.field button,.link{background:none;border:0;color:var(--p)}.between{display:flex;justify-content:space-between;align-items:center;margin:18px 0}.remember{margin:0!important;font-weight:500!important}.primary,.whatsapp,.downloads a{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;padding:12px 16px;font-weight:700;text-decoration:none}.primary{background:var(--p);color:#fff}.full,.whatsapp{width:100%}.whatsapp{margin-top:14px;background:#effbf5;color:#178254}.error,.notice{padding:11px;border-radius:10px;background:#fff1f2;color:#b83b4a}.loading{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:#f8f9fcb8;backdrop-filter:blur(10px)}.loading div{text-align:center}.loading img{display:block;width:74px;height:74px;object-fit:contain;margin:auto;animation:pulse 1.1s infinite}.loading small{display:block;color:var(--muted)}@keyframes pulse{50%{opacity:.45;transform:scale(.94)}}.app{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.watermark{position:fixed;inset:-20%;transform:rotate(-22deg);pointer-events:none;color:#25284209;line-height:78px;font-size:11px;font-weight:800;word-spacing:45px;overflow:hidden}.app aside{position:fixed;width:250px;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--line);padding:23px 16px;display:flex;flex-direction:column;z-index:3}.app nav{display:grid;gap:5px;margin-top:24px}.app nav button,.app footer button{display:flex;gap:12px;align-items:center;border:0;background:none;padding:11px 13px;border-radius:11px;color:#676c80;font-weight:600}.app nav button.active{background:var(--soft);color:var(--p)}.app footer{margin-top:auto}.workspace{grid-column:2}.top{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 28px}.search{display:flex;align-items:center;gap:8px;background:#f7f8fb;border-radius:12px;padding:10px 13px}.search input{border:0;outline:0;background:none;width:100%}.top .search{width:330px}.profile{display:flex;align-items:center;gap:10px}.profile>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--p),#36c5f0);color:#fff;font-weight:800}.profile small{display:block;color:var(--muted)}.content{padding:28px;position:relative}.hero{padding:28px;border-radius:22px;background:linear-gradient(120deg,#654bd6,#8c70f1);color:#fff;display:flex;justify-content:space-between;align-items:center}.hero span{font-size:11px;font-weight:800;letter-spacing:.12em}.hero h2{margin:8px 0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0}.stats article,.panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px}.stats i{float:right;color:var(--p)}.stats small,.stats strong{display:block}.stats small{color:var(--muted)}.stats strong{font-size:27px;margin-top:12px}.online{color:#178254!important;font-size:20px!important}.panelhead{display:flex;justify-content:space-between;align-items:center}.downloads{display:flex;gap:8px}.downloads a{border:1px solid var(--line);color:var(--ink)}.filters{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:10px;margin:22px 0}.filters select{border:1px solid var(--line);border-radius:12px;padding:10px;background:#fff}.table{overflow:auto;border:1px solid var(--line);border-radius:14px}table{width:100%;border-collapse:collapse;min-width:850px}th,td{padding:14px;border-bottom:1px solid #edf0f4;text-align:left;font-size:12px}th{background:#fafafd;color:#7b8092;font-size:10px}td span{background:var(--soft);color:var(--p);padding:5px 9px;border-radius:99px}.empty{text-align:center;color:var(--muted)}@media(max-width:1000px){.login{grid-template-columns:1fr}.visual{display:none}.stats{grid-template-columns:1fr 1fr}.filters{grid-template-columns:1fr}}@media(max-width:760px){.app{display:block}.app aside{display:none}.workspace{width:100%}.top .search{display:none}.content{padding:16px}.hero,.panelhead{align-items:flex-start;flex-direction:column;gap:15px}.stats{grid-template-columns:1fr}.downloads{flex-wrap:wrap}.loginbox{padding:24px}}


/* ELMA SIDEBAR COLLAPSIBLE V3.2 */
.app aside {
  width: 250px;
  padding-left: 16px;
  padding-right: 16px;
  overflow: visible;
  transition: width .22s ease;
}
.app aside .brand {
  min-height: 56px;
  padding: 0 4px;
  overflow: hidden;
  white-space: nowrap;
}
.app nav {
  width: 100%;
  align-items: stretch;
}
.app nav button,
.app footer button {
  width: 100%;
  min-height: 46px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 12px;
  text-align: left;
  padding: 11px 13px;
  margin: 0;
  white-space: normal;
  line-height: 1.35;
  cursor: pointer;
}
.app nav button i,
.app footer button i {
  width: 24px;
  min-width: 24px;
  text-align: center;
  font-size: 22px;
}
.app nav button span {
  display: block;
  min-width: 0;
  text-align: left;
}
.collapse-btn {
  position: absolute;
  top: 67px;
  right: -15px;
  width: 31px;
  height: 31px;
  border-radius: 50%;
  border: 3px solid var(--bg);
  background: var(--p);
  color: #fff;
  display: grid;
  place-items: center;
  padding: 0;
  box-shadow: 0 5px 14px rgba(53,44,111,.24);
  cursor: pointer;
  z-index: 8;
}
.collapse-btn i { font-size: 20px; }
.sidebar-collapsed .app { grid-template-columns: 82px 1fr; }
.sidebar-collapsed .app aside {
  width: 82px;
  padding-left: 12px;
  padding-right: 12px;
}
.sidebar-collapsed .workspace { grid-column: 2; }
.sidebar-collapsed .app aside .brand {
  justify-content: center;
  padding: 0;
}
.sidebar-collapsed .app aside .brand img {
  width: 44px;
  height: 44px;
}
.sidebar-collapsed .app aside .brand div { display: none; }
.sidebar-collapsed .app nav button,
.sidebar-collapsed .app footer button {
  justify-content: center;
  width: 58px;
  padding: 11px;
  margin: 0 auto;
  white-space: nowrap;
}
.sidebar-collapsed .app nav button span,
.sidebar-collapsed .app footer button { font-size: 0; }
.sidebar-collapsed .app nav button i,
.sidebar-collapsed .app footer button i {
  width: 24px;
  min-width: 24px;
  font-size: 23px;
}
@media (max-width: 760px) {
  .collapse-btn { display: none; }
  .sidebar-collapsed .app { display: block; }
}

/* ELMA V4 MODULES */
.module-host{display:block}.module-host.hidden{display:none}.module-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.module-title h2{margin:0}.module-title p{color:var(--muted)}.mini{border:0;background:var(--soft);color:var(--p);padding:7px;border-radius:8px}.elma-dialog{border:0;border-radius:20px;padding:0;box-shadow:0 30px 80px #20223433}.elma-dialog::backdrop{background:#20223455;backdrop-filter:blur(5px)}.elma-dialog form{width:min(760px,calc(100vw - 30px));padding:26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label{display:grid;gap:7px;font-size:12px;font-weight:700}.form-grid input,.form-grid select{border:1px solid var(--line);border-radius:11px;padding:11px}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.dialog-actions button{border:1px solid var(--line);border-radius:10px;padding:10px 16px}@media(max-width:760px){.module-title{align-items:flex-start;flex-direction:column;gap:10px}.form-grid{grid-template-columns:1fr}}

/* ELMA V5 IMPORT */
.upload-zone{background:#fff;border:2px dashed var(--line);border-radius:20px;padding:42px;text-align:center}.upload-zone>i{font-size:46px;color:var(--p)}.upload-zone input{display:block;margin:18px auto}.import-summary{margin-top:18px;background:#effbf5;border:1px solid #cfeee0;padding:18px;border-radius:14px}.import-summary pre{white-space:pre-wrap;font-size:12px}


/* ELMA V5 DIALOG AND FILE PICKER FIX */
.secondary-btn {
  background: #f4f5f8 !important;
  color: var(--ink) !important;
  border: 1px solid var(--line) !important;
  box-shadow: none !important;
  cursor: pointer;
}
.secondary-btn:hover { background: #eceef4 !important; }
.elma-file-picker {
  width: min(560px, 100%);
  min-height: 72px;
  margin: 20px auto 16px;
  padding: 12px;
  display: flex;
  align-items: center;
  gap: 12px;
  background: #f8f8fc;
  border: 1px solid var(--line);
  border-radius: 15px;
  text-align: left;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.elma-file-picker.has-file {
  background: #f2efff;
  border-color: rgba(112,87,232,.38);
  box-shadow: 0 0 0 4px rgba(112,87,232,.08);
}
.native-file-input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.file-select-btn {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 11px 15px;
  border-radius: 11px;
  background: var(--soft);
  color: var(--p);
  font-weight: 700;
  cursor: pointer;
  transition: transform .15s ease, background .2s ease;
}
.file-select-btn:hover { background: #e8e2ff; transform: translateY(-1px); }
.file-select-btn i { font-size: 20px !important; color: var(--p) !important; }
.selected-file-name {
  min-width: 0;
  color: var(--muted);
  font-size: 13px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.elma-file-picker.has-file .selected-file-name { color: var(--ink); font-weight: 600; }
.process-file-btn { margin-top: 0; }
.dialog-actions .cancelDialog { min-width: 108px; }
@media (max-width: 620px) {
  .elma-file-picker { align-items: stretch; flex-direction: column; }
  .selected-file-name { text-align: center; white-space: normal; overflow-wrap: anywhere; }
}

/* ELMA V6 IMPORT PREVIEW */
.preview-actions{display:flex;gap:9px}.preview-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:18px}.preview-stats article{background:#fff;border:1px solid var(--line);border-radius:15px;padding:16px}.preview-stats small,.preview-stats strong{display:block}.preview-stats small{color:var(--muted)}.preview-stats strong{font-size:24px;margin-top:8px}.preview-stats .new{border-left:4px solid #2aa876}.preview-stats .changed{border-left:4px solid #e59a17}.preview-stats .same{border-left:4px solid #5b8def}.preview-stats .invalid{border-left:4px solid #d94b5a}.preview-toolbar{display:grid;grid-template-columns:1fr 240px;gap:10px;margin-bottom:15px}.preview-toolbar select{border:1px solid var(--line);border-radius:12px;padding:10px;background:#fff}.status-badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:800}.status-baru{background:#eaf8f2;color:#16825c}.status-berubah{background:#fff4df;color:#a36908}.status-sama{background:#eaf2ff;color:#356cb5}.status-duplikat,.status-tidak_valid{background:#fff0f1;color:#b83b4a}.import-summary{display:flex;justify-content:space-between;align-items:center;gap:14px}.import-summary p{margin:5px 0 0;color:var(--muted)}@media(max-width:780px){.preview-stats{grid-template-columns:1fr 1fr}.preview-toolbar{grid-template-columns:1fr}.preview-actions{width:100%;flex-wrap:wrap}}

/* ELMA V7 LEGACY CONVERTER */
.legacy-upload{margin-bottom:18px}.legacy-panel{margin-top:18px}.legacy-sheet-list{display:grid;gap:8px;margin-top:18px}.legacy-sheet-row{display:grid;grid-template-columns:1fr 240px;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:13px;background:#fafafd}.legacy-sheet-row label{display:flex;align-items:center;gap:11px}.legacy-sheet-row input{accent-color:var(--p)}.legacy-sheet-row b,.legacy-sheet-row small{display:block}.legacy-sheet-row small{color:var(--muted);margin-top:3px}.legacy-sheet-row select{border:1px solid var(--line);border-radius:10px;padding:9px;background:#fff}.legacy-stats{grid-template-columns:repeat(3,1fr);margin-top:18px}.converter-actions{display:flex;gap:9px;flex-wrap:wrap}.muted-note{color:var(--muted);font-size:12px}.module-title>.secondary-btn{margin-left:auto}@media(max-width:760px){.legacy-sheet-row{grid-template-columns:1fr}.legacy-stats{grid-template-columns:1fr}.module-title>.secondary-btn{margin-left:0}}

/* ELMA V7.1 CONTEXTUAL IDENTITY */
.preview-stats{grid-template-columns:repeat(6,1fr)}
.preview-stats .provisional{border-left:4px solid #8b6de9}
@media(max-width:900px){.preview-stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.preview-stats{grid-template-columns:1fr 1fr}}

/* ELMA V7.2 THEMED DIALOGS */
.elma-notification-dialog{border:0;padding:0;border-radius:22px;background:transparent;max-width:min(520px,calc(100vw - 28px));box-shadow:0 28px 80px rgba(32,34,52,.28)}
.elma-notification-dialog::backdrop{background:rgba(32,34,52,.48);backdrop-filter:blur(7px)}
.notification-card{width:min(520px,calc(100vw - 28px));background:#fff;border-radius:22px;padding:26px;display:grid;grid-template-columns:52px 1fr;gap:16px}
.notification-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:var(--soft);color:var(--p)}
.notification-icon i{font-size:28px}.notification-content h3{margin:2px 0 8px;font-size:20px}.notification-content p{margin:0;color:var(--muted);line-height:1.65;font-size:14px}
.notification-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:9px;margin-top:8px}.notification-warning .notification-icon{background:#fff4df;color:#b87909}.notification-error .notification-icon{background:#fff0f1;color:#c53f50}.notification-success .notification-icon{background:#eaf8f2;color:#16825c}
.converter-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px}.converter-actions #backToSheetSelection{margin-right:auto}
@media(max-width:620px){.notification-card{grid-template-columns:44px 1fr;padding:20px}.notification-icon{width:44px;height:44px}.notification-actions{flex-direction:column-reverse}.notification-actions button{width:100%}.converter-actions{width:100%}.converter-actions button{width:100%}}


/* ELMA V7.2 CUSTOM SEARCHABLE DROPDOWNS */
.elma-native-select{
  position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;
  pointer-events:none!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;
}
.elma-select{position:relative;min-width:0;width:100%;font-size:14px}
.elma-select-trigger{
  width:100%;min-height:46px;padding:10px 13px;border:1px solid var(--line);border-radius:12px;
  background:#fff;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:10px;
  text-align:left;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.elma-select-trigger:hover{border-color:#cfc8f5;background:#fdfcff}
.elma-select.open .elma-select-trigger{border-color:var(--p);box-shadow:0 0 0 4px rgba(112,87,232,.10)}
.elma-select-trigger i{color:var(--muted);transition:transform .18s ease}
.elma-select.open .elma-select-trigger i{transform:rotate(180deg);color:var(--p)}
.elma-select-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.elma-select-menu{
  display:none;position:absolute;z-index:1000;top:calc(100% + 7px);left:0;right:0;min-width:220px;
  padding:8px;background:#fff;border:1px solid var(--line);border-radius:14px;
  box-shadow:0 18px 48px rgba(32,34,52,.16);
}
.elma-select.open .elma-select-menu{display:block}
.elma-select-search{display:flex;align-items:center;gap:7px;padding:8px 10px;margin-bottom:6px;background:#f6f7fb;border-radius:10px}
.elma-select-search.hidden{display:none}
.elma-select-search i{font-size:19px;color:var(--muted)}
.elma-select-search input{width:100%;border:0;outline:0;background:transparent;color:var(--ink)}
.elma-select-options{max-height:260px;overflow:auto;display:grid;gap:3px}
.elma-select-option{
  width:100%;border:0;background:#fff;color:var(--ink);border-radius:9px;padding:10px 11px;
  display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;cursor:pointer;
}
.elma-select-option:hover{background:var(--soft);color:var(--p)}
.elma-select-option.selected{background:var(--soft);color:var(--p);font-weight:700}
.elma-select-option i{font-size:18px}.elma-select-option:disabled{opacity:.45;cursor:not-allowed}
.form-grid .elma-select{width:100%}.preview-toolbar .elma-select{min-width:230px}
@media(max-width:760px){.elma-select-menu{position:fixed;left:16px;right:16px;top:auto;bottom:16px;max-height:65vh}.elma-select-options{max-height:45vh}}


/* ELMA V7.3 BUTTON SYSTEM */
.elma-btn{
  min-height:44px!important;padding:10px 16px!important;border-radius:12px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  font-family:inherit!important;font-size:14px!important;font-weight:700!important;line-height:1.2!important;
  text-decoration:none!important;cursor:pointer!important;transition:transform .15s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease!important;
}
.elma-btn:hover{transform:translateY(-1px)}
.elma-btn:active{transform:translateY(0)}
.elma-btn-primary,.elma-btn.primary{
  color:#fff!important;background:linear-gradient(135deg,#7557eb,#6448da)!important;
  border:1px solid transparent!important;box-shadow:0 8px 18px rgba(112,87,232,.22)!important;
}
.elma-btn-primary:hover,.elma-btn.primary:hover{box-shadow:0 11px 24px rgba(112,87,232,.30)!important}
.elma-btn-secondary,.elma-btn.secondary-btn,.elma-btn.secondary{
  color:#403759!important;background:#fff!important;border:1px solid #ded9ef!important;
  box-shadow:0 4px 12px rgba(32,34,52,.06)!important;
}
.elma-btn-secondary:hover,.elma-btn.secondary-btn:hover,.elma-btn.secondary:hover{background:#f7f5ff!important;border-color:#cfc5f3!important;color:var(--p)!important}
.elma-btn i{font-size:19px!important}
.module-title>.elma-btn-secondary{margin-left:auto}
.preview-actions .elma-btn,.converter-actions .elma-btn{white-space:nowrap}
@media(max-width:650px){.converter-actions,.preview-actions{width:100%}.converter-actions .elma-btn,.preview-actions .elma-btn{flex:1 1 100%}}


/* ELMA V7.4 SIDEBAR LOADING NAVIGATION */
/* Restore strict left alignment for expanded sidebar after the global button normalizer. */
body:not(.sidebar-collapsed) .app aside nav button,
body:not(.sidebar-collapsed) .app aside footer button{
  justify-content:flex-start!important;text-align:left!important;width:100%!important;
  padding-left:13px!important;padding-right:13px!important;
}
body:not(.sidebar-collapsed) .app aside nav button i,
body:not(.sidebar-collapsed) .app aside footer button i{
  width:24px!important;min-width:24px!important;text-align:center!important;margin:0!important;
}
body:not(.sidebar-collapsed) .app aside nav button span{
  flex:1!important;text-align:left!important;margin:0!important;
}
body:not(.sidebar-collapsed) .app aside .brand{justify-content:flex-start!important;text-align:left!important}
.back-inline{margin-bottom:16px!important}
.is-busy{pointer-events:none!important;opacity:.78!important;transform:none!important;cursor:wait!important}
.elma-spinner{
 width:18px;height:18px;border:2px solid rgba(255,255,255,.42);border-top-color:#fff;border-radius:50%;
 display:inline-block;animation:elmaSpin .75s linear infinite;
}
.elma-btn-secondary .elma-spinner{border-color:rgba(112,87,232,.22);border-top-color:var(--p)}
@keyframes elmaSpin{to{transform:rotate(360deg)}}

/* ELMA V8 REFERENCE AUDIT */
.ref-category{display:inline-flex;padding:5px 9px;border-radius:999px;background:var(--soft);color:var(--p);font-size:10px;font-weight:800}.audit-filters{display:grid;grid-template-columns:1fr 220px 220px;gap:10px;margin-bottom:16px}.audit-dialog>div{width:min(720px,calc(100vw - 32px));padding:25px}.audit-dialog pre{max-height:55vh;overflow:auto;padding:16px;border-radius:12px;background:#f6f7fb;font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:850px){.audit-filters{grid-template-columns:1fr}}

/* ELMA V9 REFERENCE FORMS */
.form-grid input[hidden]+.elma-native-select+.elma-select{width:100%}.reference-note{font-size:11px;color:var(--muted);margin-top:5px}

/* ELMA V10 ADMIN OPS */
.ops-stats{grid-template-columns:repeat(4,1fr)}.ops-form-panel{display:grid;gap:26px}.ops-form-panel section+section{border-top:1px solid var(--line);padding-top:24px}.ops-employee-search{display:grid;grid-template-columns:1fr auto;gap:10px}.employee-result{width:100%;margin-top:8px;padding:13px 15px;border:1px solid var(--line);border-radius:13px;background:#fff;display:flex;align-items:center;justify-content:space-between;text-align:left;cursor:pointer}.employee-result:hover{border-color:#cfc5f3;background:#faf9ff}.employee-result b,.employee-result small{display:block}.employee-result small{color:var(--muted);margin-top:4px}.snapshot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0 26px}.snapshot-grid article{padding:14px;background:#f7f8fb;border-radius:12px}.snapshot-grid small,.snapshot-grid b{display:block}.snapshot-grid small{color:var(--muted);margin-bottom:6px}.form-grid textarea{border:1px solid var(--line);border-radius:11px;padding:11px;resize:vertical}.full-field{grid-column:1/-1}.form-submit{display:flex;justify-content:flex-end;margin-top:20px}.snapshot-cell{line-height:1.7}.new-value{color:#5c43c7}.request-status{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:800}.request-menunggu_persetujuan{background:#fff4df;color:#9a6509}.request-diterapkan{background:#eaf8f2;color:#16825c}.request-ditolak{background:#fff0f1;color:#b83b4a}.row-actions{display:flex;gap:5px}.mini.danger{color:#bf3c4c;background:#fff0f1}@media(max-width:760px){.ops-stats,.snapshot-grid{grid-template-columns:1fr 1fr}.ops-employee-search{grid-template-columns:1fr}.form-submit .elma-btn{width:100%}}

/* ELMA V10.1 OPS UI */
.elma-confirm-dialog form{width:min(480px,calc(100vw - 32px));padding:28px;text-align:center}.elma-confirm-dialog p{color:var(--muted);line-height:1.6}.elma-confirm-dialog textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px;text-align:left;resize:vertical}.modal-icon{width:52px;height:52px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;background:var(--soft);color:var(--p)}.modal-icon.danger{background:#fff0f1;color:#bf3c4c}.elma-btn-danger{color:#fff!important;background:#bf3c4c!important;border:1px solid #bf3c4c!important}.field-error{border-color:#bf3c4c!important;box-shadow:0 0 0 4px rgba(191,60,76,.1)}


/* ELMA V10.2 ACCOUNT MENU */
.sidebar-logout-hidden{display:none!important}.account-menu-wrap{position:relative;margin-left:auto}.account-trigger{border:0;background:transparent;display:flex;align-items:center;gap:11px;padding:8px 10px;border-radius:14px;cursor:pointer;text-align:left}.account-trigger:hover,.account-trigger.open{background:#f6f4ff}.account-trigger .avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:800;background:linear-gradient(135deg,#6f58e8,#3aa7e8)}.account-copy b,.account-copy small{display:block}.account-copy b{max-width:230px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-copy small{color:var(--muted);font-size:11px;margin-top:2px}.account-trigger>i{color:var(--muted);transition:transform .18s}.account-trigger.open>i{transform:rotate(180deg)}.account-popover{display:none;position:absolute;right:0;top:calc(100% + 9px);z-index:1100;width:290px;padding:9px;background:#fff;border:1px solid var(--line);border-radius:17px;box-shadow:0 22px 55px rgba(32,34,52,.18)}.account-popover.open{display:block}.account-popover-head{padding:10px 11px 12px}.account-popover-head b,.account-popover-head small{display:block}.account-popover-head small{color:var(--muted);margin-top:3px}.account-action{width:100%;border:0;background:#fff;border-radius:11px;padding:10px;display:flex;align-items:center;gap:11px;text-align:left;cursor:pointer}.account-action:hover{background:var(--soft);color:var(--p)}.account-action>i{width:24px;text-align:center}.account-action b,.account-action small{display:block}.account-action small{font-size:11px;color:var(--muted);margin-top:2px}.account-action.danger{color:#b83b4a}.account-action.danger:hover{background:#fff0f1}.account-separator{height:1px;background:var(--line);margin:6px}.password-dialog form{width:min(460px,calc(100vw - 32px));padding:27px}.password-dialog label{display:grid;gap:7px;text-align:left;margin-top:12px;font-size:12px;font-weight:700}.password-dialog input{border:1px solid var(--line);border-radius:11px;padding:11px}.form-message{min-height:20px;color:#b83b4a;font-size:12px;margin-top:8px}.elma-confirm-dialog p br{display:block}@media(max-width:700px){.account-copy{display:none}.account-popover{position:fixed;right:14px;left:14px;top:74px;width:auto}}


/* ELMA V10.2.1 ACCOUNT IDENTITY FIX */
.legacy-profile-hidden{display:none!important}
.topbar>.account-menu-wrap,.workspace>header>.account-menu-wrap{margin-left:auto!important}
.account-popover-head small{line-height:1.45}

/* ELMA V11 PROMOTION HISTORY */
.history-dialog>div{width:min(760px,calc(100vw - 30px));padding:26px}.history-head{display:flex;align-items:flex-start;justify-content:space-between}.history-head h3,.history-head p{margin-top:0}.history-head p{color:var(--muted);line-height:1.5}.org-timeline{position:relative;display:grid;gap:12px;padding-left:22px}.org-timeline:before{content:"";position:absolute;left:7px;top:10px;bottom:10px;width:2px;background:var(--line)}.org-timeline article{position:relative;padding:14px 15px;background:#f7f8fb;border-radius:13px}.org-timeline article.current{background:#f3f0ff;border:1px solid #ddd5ff}.timeline-dot{position:absolute;left:-21px;top:18px;width:13px;height:13px;border-radius:50%;background:#b5aecb;border:3px solid #fff;box-shadow:0 0 0 1px var(--line)}.org-timeline article.current .timeline-dot{background:var(--p)}.org-timeline header{display:flex;justify-content:space-between;gap:10px}.org-timeline header span{font-size:9px;font-weight:800;color:var(--p)}.org-timeline p,.org-timeline small{display:block;margin:7px 0 0;color:var(--muted)}

/* ELMA V12.2 LOS FIELDS */
.los-code{display:inline-flex;min-width:28px;justify-content:center;padding:4px 7px;border-radius:999px;background:var(--soft);color:var(--p);font-weight:800}



/* ELMA V13 CONSOLIDATED DIRECTORY ACTIONS */
.panelhead{gap:18px;flex-wrap:wrap}
.directory-actions-unified{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-left:auto}
.directory-actions-unified a,.directory-actions-unified button{min-height:42px!important;padding:9px 13px!important;margin:0!important;white-space:nowrap!important}
@media(max-width:1180px){.directory-actions-unified{width:100%;justify-content:flex-start;margin-left:0}}
@media(max-width:760px){.directory-actions-unified{display:grid;grid-template-columns:1fr 1fr}.directory-actions-unified a,.directory-actions-unified button{width:100%!important}}
@media(max-width:480px){.directory-actions-unified{grid-template-columns:1fr}}


/* ELMA V13.1 OPERATIONAL HIERARCHY */
.conditional-field-hidden{display:none!important}.hierarchy-note{grid-column:1/-1;padding:11px 13px;border-radius:11px;background:#f4f0ff;color:#5945bd;font-size:12px;line-height:1.5}


/* ELMA V13.2 - Sidebar menu search and action link styling */
.top{justify-content:flex-end!important}
.sidebar-menu-search{display:flex;align-items:center;gap:8px;margin:4px 16px 12px;padding:0 11px;height:42px;border:1px solid var(--line);border-radius:12px;background:#f7f7fb;transition:.18s ease}
.sidebar-menu-search:focus-within{border-color:#8b75ee;background:#fff;box-shadow:0 0 0 4px rgba(111,86,224,.10)}
.sidebar-menu-search i{font-size:19px;color:var(--muted)}
.sidebar-menu-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-size:13px}
.sidebar-menu-search input::placeholder{color:#999caf}
.directory-actions-unified a{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;border:1px solid #ded9f8!important;border-radius:12px!important;background:#fff!important;color:#413a5f!important;text-decoration:none!important;font-weight:700!important;box-shadow:0 5px 12px rgba(62,50,105,.06)!important;transition:.18s ease!important}
.directory-actions-unified a:before{content:'download';font-family:'Material Symbols Rounded';font-size:18px;font-weight:400}
.directory-actions-unified a:hover{border-color:#8d76ed!important;background:#f6f3ff!important;color:#654ade!important;transform:translateY(-1px)}
#sidebar.collapsed .sidebar-menu-search{margin:4px 9px 12px;padding:0;justify-content:center;background:transparent;border-color:transparent}
#sidebar.collapsed .sidebar-menu-search input{display:none}
#sidebar.collapsed .sidebar-menu-search i{color:#6f5ae6}
#nav button[hidden]{display:none!important}
@media(max-width:760px){.sidebar-menu-search{margin-left:12px;margin-right:12px}.directory-actions-unified a{width:100%!important}}


/* ELMA V13.2.1 RIGHT ALIGNED ACTIONS */
/* Aksi download adalah toolbar, sehingga konsisten rata kanan pada desktop. */
.panelhead{align-items:center!important}
.panelhead>.directory-actions-unified{
  width:auto!important;
  margin-left:auto!important;
  justify-content:flex-end!important;
  align-self:center!important;
}
@media(max-width:1180px){
  .panelhead>.directory-actions-unified{
    width:100%!important;
    margin-left:0!important;
    justify-content:flex-end!important;
  }
}
@media(max-width:760px){
  .panelhead>.directory-actions-unified{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    width:100%!important;
  }
}
@media(max-width:480px){
  .panelhead>.directory-actions-unified{grid-template-columns:1fr!important}
}
/* Isi popover akun menggunakan alignment kiri agar mudah dipindai. */
.account-popover,.account-popover-head,.account-action{text-align:left!important}
.account-action{justify-content:flex-start!important}


/* ELMA V13.3 IMPORT CHANGE DETECTION */
.conversion-los-note{margin:12px 0;background:#f4f0ff;color:#4f3db2;border:1px solid #ded6ff}
button[data-elma-convert-button="1"]:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}


/* ELMA V13.3.1 SHEET BULK SELECTION */
.sheet-bulk-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0 16px;padding:11px 12px;border:1px solid #e5e1f7;border-radius:13px;background:#faf9ff}
.sheet-selection-summary{display:flex;align-items:baseline;gap:4px;color:#73768a;font-size:13px}.sheet-selection-summary b{font-size:18px;color:#5f46d7}
.sheet-bulk-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sheet-bulk-actions .elma-btn{min-height:38px;padding:8px 11px}.sheet-bulk-actions .elma-btn:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:680px){.sheet-bulk-toolbar{align-items:stretch;flex-direction:column}.sheet-bulk-actions{display:grid;grid-template-columns:1fr 1fr}.sheet-bulk-actions .elma-btn{width:100%}}


/* ELMA V13.3.3 SINGLE ACCOUNT HEADER */
.workspace>.top.single-account-header{display:flex!important;align-items:center!important;justify-content:flex-end!important;padding-left:22px!important;padding-right:22px!important}
.workspace>.top.single-account-header>.account-menu-wrap{margin-left:auto!important}
.workspace>.top.single-account-header>.profile{display:none!important}


/* ELMA V13.3.4 LOGIN RECOVERY */
.workspace>.top.modern-account-ready>.profile{
  position:absolute!important;
  width:1px!important;height:1px!important;
  overflow:hidden!important;opacity:0!important;
  pointer-events:none!important;
}
.workspace>.top.modern-account-ready{justify-content:flex-end!important}
.workspace>.top.modern-account-ready>.account-menu-wrap{margin-left:auto!important}


/* ELMA_V13_5_2_RESIGN_UI_THEME */
.resign-upload-zone{padding:38px 42px 42px;max-width:none}.resign-upload-zone>i{width:64px;height:64px;display:inline-grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,#f1edff,#e9f1ff);font-size:34px;margin-bottom:12px}.resign-upload-zone>h3{font-size:24px;margin:2px 0 8px}.resign-upload-zone>p{color:var(--muted);margin:0 auto 24px}.resign-format-card{max-width:900px;margin:0 auto 20px;padding:16px 18px;display:flex;align-items:flex-start;gap:14px;text-align:left;background:#f8f7ff;border:1px solid #e7e2ff;border-radius:16px;color:var(--ink)}.resign-format-card .format-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:12px;background:#eee9ff;color:var(--p)}.resign-format-card .format-icon i{font-size:23px}.resign-format-card b{display:block;margin:1px 0 4px}.resign-format-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.resign-file-picker{max-width:630px;margin:0 auto 18px}.resign-file-picker .native-file-input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;margin:0!important}.resign-process-btn{display:inline-flex!important;gap:9px;align-items:center;justify-content:center;min-width:210px}.resign-process-btn:disabled{opacity:.48;cursor:not-allowed;box-shadow:none}.resign-upload-zone .notice{max-width:630px;margin:18px auto 0}.module-title .back-inline{margin-bottom:18px}@media(max-width:720px){.resign-upload-zone{padding:28px 18px}.resign-format-card{flex-direction:column}.resign-file-picker{max-width:100%}}


/* ELMA_V13_5_3_RESIGN_VALID_ONLY_LAYOUT */
.hr-import-actions{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.hr-import-actions .elma-btn{margin:0;min-height:48px;white-space:nowrap}.resign-preview-head{align-items:flex-end}.resign-preview-actions{margin-left:auto;display:flex;align-items:center}.resign-decision-banner{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:0 0 18px;padding:16px 18px;background:#effbf5;border:1px solid #ccebdd;border-radius:16px}.resign-decision-banner div{display:flex;flex-direction:column;gap:4px}.resign-decision-banner b{color:#176b48}.resign-decision-banner span{color:var(--muted);font-size:13px}.resign-safe-badge{display:inline-flex!important;align-items:center;gap:7px;white-space:nowrap;padding:8px 11px;border-radius:999px;background:#dff5e9;color:#176b48!important;font-weight:700}.resign-preview-stats article.ready{border-top:3px solid #2ca66f}.resign-preview-stats article.excluded{border-top:3px solid #d9dce7}.resign-row-excluded{opacity:.67}.resign-process-mark{width:25px;height:25px;display:inline-grid;place-items:center;border-radius:50%}.resign-process-mark.yes{background:#e1f6eb;color:#188858}.resign-process-mark.no{background:#f0f1f5;color:#8d93a5}.resign-process-mark i{font-size:17px}.resign-status-chip{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:700}.resign-status-chip.ready{background:#e1f6eb;color:#188858}.resign-status-chip.excluded{background:#f0f1f5;color:#6f7587}@media(max-width:900px){.module-title{align-items:flex-start}.hr-import-actions{width:100%;margin-left:0;justify-content:flex-start}.resign-preview-head{align-items:flex-start}.resign-preview-actions{margin-left:0}.resign-decision-banner{align-items:flex-start;flex-direction:column}}
