/* RuangKitha v2.0.0a50d — Documents Search, Filter & Smart Organization V1 (on locked a50c baseline) */
.dokumen-app{min-height:100dvh;background:var(--rk-bg,var(--warna-latar,#f7f4ee));padding-bottom:max(92px,env(safe-area-inset-bottom));}
.dokumen-header{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);}
.dokumen-header h1{font-size:17px;margin:0;text-align:center;}
.dokumen-back{display:inline-flex;align-items:center;gap:5px;color:var(--warna-teks,#252a27);text-decoration:none;font-size:13px;font-weight:650;justify-self:start;}
.dokumen-back ion-icon{font-size:20px;}
.dokumen-main{width:min(100%,430px);margin:0 auto;padding:14px 16px 36px;box-sizing:border-box;display:grid;gap:14px;}

.dokumen-vault-compact{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px 14px;border-radius:18px;background:var(--warna-kartu,#fff);border:1px solid rgba(105,121,111,.10);box-shadow:var(--rk-shadow-card,0 7px 24px rgba(31,41,35,.055));}
.dokumen-vault-icon{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:rgba(80,130,101,.10);color:#4f8064;font-size:19px;}
.dokumen-vault-copy{min-width:0;display:grid;gap:2px;}.dokumen-vault-copy strong{font-size:12px;color:var(--warna-teks,#282d2a);}.dokumen-vault-copy span{font-size:9.5px;line-height:1.45;color:var(--warna-teks-sekunder,#767d79);}
.dokumen-vault-badge{white-space:nowrap;padding:5px 8px;border-radius:999px;background:rgba(120,128,123,.10);font-size:9px;font-weight:750;color:var(--warna-teks-sekunder,#717973);}
.dokumen-vault-badge[data-state="open"]{background:rgba(71,137,96,.12);color:#478560}.dokumen-vault-badge[data-state="locked"]{background:rgba(221,155,56,.13);color:#a66c18}.dokumen-vault-badge[data-state="blocked"]{background:rgba(214,83,83,.11);color:#b14d4d}

.dokumen-tabs{display:grid;grid-template-columns:1fr 1.35fr 1fr;gap:5px;padding:4px;border-radius:15px;background:rgba(111,124,116,.08);}
.dokumen-tab{border:0;background:transparent;border-radius:11px;padding:9px 5px;color:var(--warna-teks-sekunder,#747b77);font:inherit;font-size:10px;font-weight:700;cursor:pointer;white-space:nowrap;}
.dokumen-tab.is-active{background:var(--warna-kartu,#fff);color:var(--warna-teks,#272c29);box-shadow:0 2px 9px rgba(35,43,38,.06);}
.dokumen-list-head{display:flex;align-items:center;justify-content:space-between;min-height:18px}.dokumen-list-head p{margin:0;font-size:10px;color:var(--warna-teks-sekunder,#777e79);}
.dokumen-message{padding:10px 12px;border-radius:13px;background:rgba(80,130,101,.10);font-size:10px;line-height:1.5;color:var(--warna-teks,#2b302d);}.dokumen-message.is-error{background:rgba(205,74,74,.10);color:#a24545;}

.dokumen-list{display:grid;gap:10px;}
.dokumen-state{display:grid;justify-items:center;text-align:center;gap:7px;padding:36px 20px;border-radius:20px;background:var(--warna-kartu,#fff);border:1px dashed rgba(110,123,115,.18);}
.dokumen-state>span{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:rgba(86,125,105,.09);color:#557d68;font-size:24px;}.dokumen-state strong{font-size:13px;color:var(--warna-teks,#2a2f2c);}.dokumen-state p{margin:0;max-width:290px;color:var(--warna-teks-sekunder,#747b77);font-size:10px;line-height:1.55;}
.dokumen-state-action{margin-top:3px;border:0;border-radius:12px;padding:9px 13px;background:var(--rk-accent,#557d68);color:#fff;font:inherit;font-size:10px;font-weight:700;cursor:pointer;}

.dokumen-card{width:100%;border:1px solid rgba(103,118,109,.10);padding:13px;border-radius:17px;background:var(--warna-kartu,#fff);box-shadow:0 5px 18px rgba(31,42,35,.045);display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;text-align:left;font:inherit;color:inherit;cursor:pointer;}
.dokumen-card-icon{display:grid;place-items:center;width:41px;height:41px;border-radius:13px;background:rgba(119,94,177,.09);color:#765fb0;font-size:20px;}
.dokumen-card-copy{min-width:0;display:grid;gap:3px}.dokumen-card-title{font-size:12px;font-weight:750;color:var(--warna-teks,#292e2b);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dokumen-card-meta{font-size:9px;color:var(--warna-teks-sekunder,#7b817d)}.dokumen-card-status{font-size:9.5px;font-weight:650;color:var(--warna-teks-sekunder,#6f7772);margin-top:2px}.dokumen-card-status.is-attention{color:#a66c18}.dokumen-card-status.is-expired{color:#b14d4d}
.dokumen-card-side{display:grid;justify-items:end;gap:7px}.dokumen-paperclip{display:inline-flex;align-items:center;gap:2px;font-size:9px;color:var(--warna-teks-sekunder,#737b76)}.dokumen-paperclip ion-icon{font-size:15px}.dokumen-card-chevron{font-size:18px;color:var(--warna-teks-sekunder,#8b918d)}

.dokumen-fab{position:fixed;z-index:150;right:max(18px,calc((100vw - 430px)/2 + 18px));bottom:max(22px,calc(env(safe-area-inset-bottom) + 18px));width:54px;height:54px;border:0;border-radius:18px;display:grid;place-items:center;background:var(--rk-accent,#557d68);color:#fff;box-shadow:0 12px 30px rgba(43,71,56,.24);font-size:27px;cursor:pointer;}

.dokumen-form-layer,.dokumen-detail-layer,.dokumen-unlock-layer{z-index:2400}.dokumen-form-sheet,.dokumen-detail-sheet,.dokumen-unlock-sheet{padding-bottom:max(18px,env(safe-area-inset-bottom));max-height:min(90dvh,780px);overflow:auto;}.dokumen-sheet-header{position:sticky;top:0;z-index:2;background:var(--warna-kartu,#fff);padding-bottom:10px}.dokumen-sheet-header h2{margin:0}.dokumen-record-form,.dokumen-detail-body{padding:2px 16px 16px;display:grid;gap:14px}.dokumen-field{display:grid;gap:7px}.dokumen-field>label,.dokumen-scope-field legend{font-size:10px;font-weight:750;color:var(--warna-teks,#2b302d)}.dokumen-field .input{width:100%;box-sizing:border-box}.dokumen-scope-field{border:0;padding:0;margin:0;display:grid;gap:7px}.dokumen-segmented{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;background:rgba(111,124,116,.08);border-radius:14px}.dokumen-segmented label{cursor:pointer}.dokumen-segmented input{position:absolute;opacity:0;pointer-events:none}.dokumen-segmented span{display:block;text-align:center;padding:9px;border-radius:10px;font-size:10px;font-weight:700;color:var(--warna-teks-sekunder,#747b77)}.dokumen-segmented input:checked+span{background:var(--warna-kartu,#fff);color:var(--warna-teks,#292e2b);box-shadow:0 2px 8px rgba(35,43,38,.06)}
.dokumen-expiry-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;border:1px solid rgba(103,118,109,.10);border-radius:15px;background:rgba(111,124,116,.04)}.dokumen-expiry-toggle>span{display:grid;gap:2px}.dokumen-expiry-toggle strong{font-size:10.5px}.dokumen-expiry-toggle small{font-size:9px;color:var(--warna-teks-sekunder,#767d79)}.dokumen-expiry-toggle input{width:19px;height:19px;accent-color:var(--rk-accent,#557d68)}.dokumen-expiry-fields{display:grid;gap:12px}
.dokumen-optional-attachment{display:grid;gap:9px;padding-top:2px}.dokumen-optional-attachment>div>strong{font-size:11px}.dokumen-optional-attachment>div>strong span{font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:3px 6px;border-radius:999px;background:rgba(111,124,116,.09);color:var(--warna-teks-sekunder,#737b76);margin-left:4px}.dokumen-optional-attachment p{margin:4px 0 0;font-size:9px;line-height:1.5;color:var(--warna-teks-sekunder,#767d79)}.dokumen-attachment-picker{width:100%;border:1px dashed rgba(93,113,101,.25);border-radius:14px;padding:12px;background:rgba(80,130,101,.045);color:#4f8064;display:flex;align-items:center;justify-content:center;gap:7px;font:inherit;font-size:10px;font-weight:700;cursor:pointer}.dokumen-attachment-picker ion-icon{font-size:17px}.dokumen-form-message,.dokumen-sheet-message{margin:0;padding:9px 10px;border-radius:11px;background:rgba(205,74,74,.10);color:#a24545;font-size:10px;line-height:1.45}.dokumen-save{width:100%}

.dokumen-detail-heading{min-width:0}.dokumen-detail-heading small{display:block;margin-bottom:2px;font-size:9px;color:var(--warna-teks-sekunder,#777e79)}.dokumen-detail-heading h2{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dokumen-detail-grid{display:grid;gap:1px;border-radius:16px;overflow:hidden;border:1px solid rgba(103,118,109,.09)}.dokumen-detail-grid>div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;background:var(--warna-kartu,#fff)}.dokumen-detail-grid>div+div{border-top:1px solid rgba(103,118,109,.08)}.dokumen-detail-grid span{font-size:9.5px;color:var(--warna-teks-sekunder,#737b76)}.dokumen-detail-grid strong{font-size:10px;text-align:right;color:var(--warna-teks,#292e2b)}.dokumen-detail-attention{padding:10px 12px;border-radius:13px;background:rgba(221,155,56,.10);color:#9c681c;font-size:10px;font-weight:650;line-height:1.45}.dokumen-detail-attention.is-expired{background:rgba(205,74,74,.10);color:#a24545}
.dokumen-attachment-section{display:grid;gap:10px}.dokumen-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.dokumen-section-title>div{display:grid;gap:2px}.dokumen-section-title strong{font-size:11px}.dokumen-section-title span{font-size:9px;color:var(--warna-teks-sekunder,#777e79)}.dokumen-section-title button{border:0;background:transparent;color:#4f8064;font:inherit;font-size:9.5px;font-weight:750;cursor:pointer}.dokumen-attachment-body{display:grid;gap:8px}.dokumen-attachment-placeholder{display:grid;justify-items:center;text-align:center;gap:7px;padding:18px 14px;border-radius:15px;background:rgba(111,124,116,.045);border:1px dashed rgba(103,118,109,.16)}.dokumen-attachment-placeholder ion-icon{font-size:23px;color:#5b7f6c}.dokumen-attachment-placeholder strong{font-size:10.5px}.dokumen-attachment-placeholder p{margin:0;max-width:285px;font-size:9px;line-height:1.5;color:var(--warna-teks-sekunder,#757c78)}.dokumen-attachment-placeholder button{border:0;border-radius:11px;padding:8px 11px;background:rgba(80,130,101,.10);color:#4f8064;font:inherit;font-size:9px;font-weight:750;cursor:pointer}
.dokumen-attachment-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 11px;border-radius:14px;border:1px solid rgba(103,118,109,.10);background:var(--warna-kartu,#fff)}.dokumen-attachment-row>ion-icon{font-size:19px;color:#765fb0}.dokumen-attachment-row-copy{min-width:0;display:grid;gap:2px}.dokumen-attachment-row-copy strong{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dokumen-attachment-row-copy span{font-size:8.5px;color:var(--warna-teks-sekunder,#777e79)}.dokumen-attachment-row button{border:0;border-radius:10px;padding:7px;background:rgba(80,130,101,.09);color:#4f8064;display:grid;place-items:center;font-size:17px;cursor:pointer}.dokumen-detail-actions{display:grid;gap:8px}.dokumen-detail-actions .tombol-sekunder{width:100%}
.dokumen-unlock-form{padding:4px 16px 16px}.dokumen-unlock-form .tombol-utama{width:100%}

html[data-theme="dark"] .dokumen-app{background:var(--warna-latar,#101310)}
html[data-theme="dark"] .dokumen-vault-compact,html[data-theme="dark"] .dokumen-tab.is-active,html[data-theme="dark"] .dokumen-card,html[data-theme="dark"] .dokumen-state,html[data-theme="dark"] .dokumen-detail-grid>div,html[data-theme="dark"] .dokumen-attachment-row,html[data-theme="dark"] .dokumen-sheet-header{background:var(--warna-kartu,#181c19);border-color:rgba(223,232,226,.08);box-shadow:none}
html[data-theme="dark"] .dokumen-segmented input:checked+span{background:#202620;box-shadow:none}

@media (max-width:360px){.dokumen-tabs{grid-template-columns:1fr 1.28fr 1fr}.dokumen-tab{font-size:9px}.dokumen-vault-copy span{max-width:180px}.dokumen-fab{right:16px}}


/* ------------------------------------------------------------------
   a50a1 — Documents UX Polish V1
   - standard RuangKitha module back button
   - actionable Security Vault status
   - custom searchable single-select document type picker
   ------------------------------------------------------------------ */
.dokumen-back{
  min-height:42px;
  padding:0 10px;
  border:1px solid var(--rk-border,var(--color-border,#e0e4e1));
  border-radius:999px;
  background:var(--rk-surface-soft,var(--color-surface-soft,#eef1ef));
  color:var(--rk-primary,var(--color-primary,#159447));
  font-size:11.5px;
  font-weight:700;
  box-shadow:var(--rk-shadow-sm,var(--shadow-sm,0 5px 16px rgba(20,40,28,.05)));
}
.dokumen-back:focus-visible,
.dokumen-vault-badge:focus-visible,
.dokumen-type-trigger:focus-visible,
.dokumen-type-option:focus-visible,
.dokumen-type-custom:focus-visible{
  outline:2px solid color-mix(in srgb,var(--rk-primary,#6f9984) 72%,transparent);
  outline-offset:2px;
}
.dokumen-back:active{transform:scale(.98)}

.dokumen-vault-badge{
  border:0;
  display:inline-flex;
  align-items:center;
  gap:3px;
  text-decoration:none;
  cursor:pointer;
  transition:transform .16s ease,background .16s ease;
}
.dokumen-vault-badge ion-icon{font-size:12px;flex:0 0 auto}
.dokumen-vault-badge:active{transform:scale(.97)}

.dokumen-type-trigger{
  width:100%;
  min-height:46px;
  box-sizing:border-box;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:0 13px;
  border:1px solid var(--rk-border,var(--color-border,#e0e4e1));
  border-radius:14px;
  background:var(--rk-surface,var(--color-surface,#fff));
  color:var(--rk-text,var(--color-text,#252a27));
  font:inherit;
  text-align:left;
  cursor:pointer;
}
.dokumen-type-trigger>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600}
.dokumen-type-trigger>span.is-placeholder{color:var(--rk-text-tertiary,var(--warna-teks-sekunder,#8a918d));font-weight:500}
.dokumen-type-trigger ion-icon{font-size:18px;color:var(--rk-text-secondary,var(--warna-teks-sekunder,#777e79))}

.dokumen-type-picker-layer{z-index:2520}
.dokumen-type-picker-sheet{padding-bottom:max(18px,env(safe-area-inset-bottom));max-height:min(82dvh,690px);overflow:hidden}
.dokumen-type-picker-body{padding:2px 16px 16px;display:grid;gap:12px}
.dokumen-type-search{
  min-height:46px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:9px;
  padding:0 13px;
  border:1px solid var(--rk-border,var(--color-border,#e0e4e1));
  border-radius:14px;
  background:var(--rk-surface-soft,var(--color-surface-soft,#eef1ef));
}
.dokumen-type-search ion-icon{font-size:18px;color:var(--rk-text-secondary,var(--warna-teks-sekunder,#777e79))}
.dokumen-type-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--rk-text,var(--color-text,#252a27));font:inherit;font-size:11px}
.dokumen-type-search input::placeholder{color:var(--rk-text-tertiary,var(--warna-teks-sekunder,#8b918d))}
.dokumen-type-list{max-height:min(54dvh,470px);overflow:auto;overscroll-behavior:contain;padding:1px 2px 4px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--rk-primary,#6f9984) 35%,transparent) transparent}
.dokumen-type-group{display:grid;gap:4px;padding:4px 0 9px}
.dokumen-type-group-title{margin:6px 8px 4px;font-size:8.5px;font-weight:800;letter-spacing:.075em;text-transform:uppercase;color:var(--rk-text-secondary,var(--warna-teks-sekunder,#777e79))}
.dokumen-type-option,.dokumen-type-custom{
  width:100%;
  min-height:43px;
  border:0;
  border-radius:12px;
  padding:9px 10px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  background:transparent;
  color:var(--rk-text,var(--color-text,#252a27));
  font:inherit;
  font-size:10.5px;
  font-weight:650;
  text-align:left;
  cursor:pointer;
}
.dokumen-type-option:hover,.dokumen-type-custom:hover{background:var(--rk-surface-soft,var(--color-surface-soft,#eef1ef))}
.dokumen-type-option.is-selected{background:var(--rk-primary-soft,rgba(80,130,101,.10));color:var(--rk-primary,#557d68)}
.dokumen-type-option ion-icon,.dokumen-type-custom ion-icon{font-size:17px;color:var(--rk-primary,#557d68)}
.dokumen-type-custom{margin-top:4px;border:1px dashed color-mix(in srgb,var(--rk-primary,#557d68) 28%,var(--rk-border,#dfe4e0));background:color-mix(in srgb,var(--rk-primary,#557d68) 5%,transparent);color:var(--rk-primary,#557d68)}
.dokumen-type-empty{margin:0;padding:20px 12px;text-align:center;font-size:9.5px;line-height:1.5;color:var(--rk-text-secondary,var(--warna-teks-sekunder,#777e79))}

html[data-theme="dark"] .dokumen-back,
html[data-theme="dark"] .dokumen-type-trigger,
html[data-theme="dark"] .dokumen-type-search{background:var(--rk-surface,var(--warna-kartu,#181c19));border-color:rgba(223,232,226,.10)}
html[data-theme="dark"] .dokumen-type-option:hover,
html[data-theme="dark"] .dokumen-type-custom:hover{background:rgba(255,255,255,.055)}

@media (max-width:350px){
  .dokumen-back{padding:0 8px;font-size:10px;gap:3px}
  .dokumen-back ion-icon{font-size:18px}
}

/* ------------------------------------------------------------------
   a50b — Family Document Sharing / Key Distribution V1
   ------------------------------------------------------------------ */
.dokumen-share-section{display:grid;gap:10px;padding-top:2px}
.dokumen-share-manage{width:100%;min-height:42px}
.dokumen-share-layer{z-index:2510}
.dokumen-share-sheet{max-height:min(78dvh,650px);overflow:hidden;padding-bottom:max(16px,env(safe-area-inset-bottom))}
.dokumen-share-body{padding:2px 16px 16px;display:grid;gap:11px}
.dokumen-share-list{max-height:min(48dvh,410px);overflow:auto;overscroll-behavior:contain;display:grid;gap:8px;padding:1px 1px 3px}
.dokumen-share-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 11px;border:1px solid rgba(103,118,109,.10);border-radius:14px;background:var(--warna-kartu,#fff)}
.dokumen-share-avatar{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:rgba(80,130,101,.09);color:#4f8064;flex:0 0 auto}
.dokumen-share-avatar ion-icon{font-size:18px}
.dokumen-share-row-copy{min-width:0;display:grid;gap:2px}
.dokumen-share-row-copy strong{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dokumen-share-row-copy span{font-size:8.5px;line-height:1.4;color:var(--warna-teks-sekunder,#777e79)}
.dokumen-share-toggle{min-width:70px;min-height:34px;border:0;border-radius:999px;padding:0 10px;background:rgba(80,130,101,.10);color:#4f8064;font:inherit;font-size:8.5px;font-weight:800;cursor:pointer;white-space:nowrap}
.dokumen-share-toggle.is-active{background:rgba(80,130,101,.16);color:#3f7357}
.dokumen-share-toggle:disabled{cursor:not-allowed;background:rgba(111,124,116,.07);color:var(--warna-teks-sekunder,#8a918d);opacity:.82}
.dokumen-share-toggle:focus-visible{outline:2px solid color-mix(in srgb,var(--rk-primary,#6f9984) 72%,transparent);outline-offset:2px}
.dokumen-share-empty{display:grid;justify-items:center;text-align:center;gap:7px;padding:20px 14px;border-radius:15px;border:1px dashed rgba(103,118,109,.16);background:rgba(111,124,116,.035)}
.dokumen-share-empty>ion-icon{font-size:23px;color:#5b7f6c}
.dokumen-share-empty strong{font-size:10.5px}
.dokumen-share-empty p{margin:0;max-width:280px;font-size:9px;line-height:1.5;color:var(--warna-teks-sekunder,#757c78)}
.dokumen-share-footnote{margin:0;padding:0 2px;font-size:8.2px;line-height:1.5;color:var(--warna-teks-sekunder,#7c837f)}
html[data-theme="dark"] .dokumen-share-row{background:var(--warna-kartu,#181c19);border-color:rgba(223,232,226,.08)}

/* ------------------------------------------------------------------
   a50b1 — Initial sharing flow + modal stack hotfix
   ------------------------------------------------------------------ */
.dokumen-unlock-layer{z-index:2600}
.dokumen-create-share{display:grid;gap:9px;padding:12px;border:1px solid rgba(103,118,109,.10);border-radius:16px;background:rgba(111,124,116,.035)}
.dokumen-create-share[hidden]{display:none}
.dokumen-create-share-copy{margin:0;font-size:8.8px;line-height:1.5;color:var(--warna-teks-sekunder,#777e79)}
.dokumen-create-share-list{display:grid;gap:8px}
.dokumen-create-share .dokumen-share-row{padding:9px 10px}
.dokumen-create-share .dokumen-share-toggle.is-selected{background:var(--rk-primary,#557d68);color:#fff}
html[data-theme="dark"] .dokumen-create-share{background:rgba(255,255,255,.025);border-color:rgba(223,232,226,.08)}

/* ------------------------------------------------------------------
   a50c — Documents Lifecycle & Management V1
   ------------------------------------------------------------------ */
.dokumen-archive-shortcut{
  justify-self:end;
  width:42px;
  height:42px;
  border:1px solid var(--rk-border,var(--color-border,#e0e4e1));
  border-radius:999px;
  display:grid;
  place-items:center;
  background:var(--rk-surface-soft,var(--color-surface-soft,#eef1ef));
  color:var(--rk-primary,var(--color-primary,#557d68));
  box-shadow:var(--rk-shadow-sm,var(--shadow-sm,0 5px 16px rgba(20,40,28,.05)));
  cursor:pointer;
}
.dokumen-archive-shortcut ion-icon{font-size:18px}
.dokumen-archive-shortcut:active{transform:scale(.98)}
.dokumen-archive-shortcut:focus-visible,
.dokumen-archive-action:focus-visible,
.dokumen-confirm-primary:focus-visible,
.dokumen-confirm-cancel:focus-visible,
.dokumen-archive-actions button:focus-visible,
.dokumen-attachment-actions button:focus-visible{
  outline:2px solid color-mix(in srgb,var(--rk-primary,#6f9984) 72%,transparent);
  outline-offset:2px;
}

.dokumen-detail-summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-height:28px;
}
.dokumen-lifecycle-badge{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(80,130,101,.10);
  color:#4c7d63;
  font-size:8.7px;
  font-weight:800;
  white-space:nowrap;
}
.dokumen-lifecycle-badge[data-state="attention"],
.dokumen-lifecycle-badge[data-state="today"]{background:rgba(221,155,56,.13);color:#9a671b}
.dokumen-lifecycle-badge[data-state="expired"]{background:rgba(205,74,74,.11);color:#a24545}
.dokumen-lifecycle-badge[data-state="no-expiry"]{background:rgba(111,124,116,.08);color:var(--warna-teks-sekunder,#737b76)}
.dokumen-detail-updated{font-size:8.6px;color:var(--warna-teks-sekunder,#777e79);text-align:right}

.dokumen-attachment-actions{display:flex;align-items:center;gap:5px}
.dokumen-attachment-actions button{width:32px;height:32px;padding:0!important;border-radius:10px!important}
.dokumen-attachment-actions button.is-secondary{background:rgba(111,124,116,.08);color:var(--warna-teks-sekunder,#6f7772)}
.dokumen-attachment-actions button.is-danger{background:rgba(205,74,74,.09);color:#aa4a4a}
.dokumen-archive-action{
  width:100%;
  min-height:42px;
  border:1px solid rgba(185,123,45,.18);
  border-radius:13px;
  background:rgba(221,155,56,.08);
  color:#95631b;
  font:inherit;
  font-size:10px;
  font-weight:750;
  cursor:pointer;
}

.dokumen-archive-layer{z-index:2505}
.dokumen-archive-sheet{max-height:min(84dvh,700px);overflow:hidden;padding-bottom:max(18px,env(safe-area-inset-bottom))}
.dokumen-archive-body{padding:2px 16px 16px;display:grid;gap:10px}
.dokumen-archive-list{max-height:min(60dvh,520px);overflow:auto;overscroll-behavior:contain;display:grid;gap:8px;padding:1px 1px 3px}
.dokumen-archive-row{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:10px;
  padding:11px;
  border:1px solid rgba(103,118,109,.10);
  border-radius:15px;
  background:var(--warna-kartu,#fff);
}
.dokumen-archive-icon{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:rgba(111,124,116,.08);color:#68756d}
.dokumen-archive-icon ion-icon{font-size:18px}
.dokumen-archive-copy{min-width:0;display:grid;gap:2px;align-content:start}
.dokumen-archive-copy strong{font-size:10.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dokumen-archive-copy span{font-size:8.6px;color:var(--warna-teks-sekunder,#777e79);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dokumen-archive-copy small{font-size:8px;color:var(--warna-teks-sekunder,#8a918d)}
.dokumen-archive-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:2px}
.dokumen-archive-actions button{min-height:36px;border-radius:11px;font:inherit;font-size:9px;font-weight:750;cursor:pointer}
.dokumen-archive-actions .is-restore{border:1px solid rgba(80,130,101,.16);background:rgba(80,130,101,.09);color:#4b7b61}
.dokumen-archive-actions .is-delete{border:1px solid rgba(205,74,74,.14);background:rgba(205,74,74,.07);color:#a24545}

.dokumen-confirm-layer{z-index:2610}
.dokumen-confirm-sheet{padding-bottom:max(18px,env(safe-area-inset-bottom))}
.dokumen-confirm-body{padding:2px 16px 16px;display:grid;gap:8px}
.dokumen-confirm-primary,.dokumen-confirm-cancel{width:100%;min-height:44px;border-radius:13px;font:inherit;font-size:10.5px;font-weight:780;cursor:pointer}
.dokumen-confirm-primary{border:0;background:var(--rk-primary,#557d68);color:#fff}
.dokumen-confirm-primary.is-danger{background:#a94c4c}
.dokumen-confirm-cancel{border:1px solid var(--rk-border,var(--color-border,#e0e4e1));background:transparent;color:var(--warna-teks,#292e2b)}

html[data-theme="dark"] .dokumen-archive-shortcut{background:var(--rk-surface,var(--warna-kartu,#181c19));border-color:rgba(223,232,226,.10)}
html[data-theme="dark"] .dokumen-archive-row{background:var(--warna-kartu,#181c19);border-color:rgba(223,232,226,.08)}
html[data-theme="dark"] .dokumen-confirm-cancel{border-color:rgba(223,232,226,.10);color:var(--warna-teks,#e9efeb)}

@media (max-width:360px){
  .dokumen-attachment-actions{gap:3px}
  .dokumen-attachment-actions button{width:30px;height:30px}
  .dokumen-detail-summary{align-items:flex-start;flex-direction:column;gap:5px}
  .dokumen-detail-updated{text-align:left}
}
.dokumen-card[data-lifecycle="attention"],.dokumen-card[data-lifecycle="today"]{border-color:rgba(221,155,56,.20)}
.dokumen-card[data-lifecycle="expired"]{border-color:rgba(205,74,74,.18)}

/* ------------------------------------------------------------------
   a50d — Documents Search, Filter & Smart Organization V1
   Search/filter/sort stays on plaintext catalog metadata only.
   ------------------------------------------------------------------ */
.dokumen-discovery{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
}
.dokumen-search{
  min-width:0;
  min-height:43px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 11px;
  border:1px solid var(--rk-border,var(--color-border,#e0e4e1));
  border-radius:14px;
  background:var(--rk-surface,var(--warna-kartu,#fff));
  box-shadow:0 3px 12px rgba(31,42,35,.025);
}
.dokumen-search>ion-icon{flex:0 0 auto;font-size:17px;color:var(--warna-teks-sekunder,#7a817c)}
.dokumen-search input{
  width:100%;
  min-width:0;
  border:0;
  outline:0;
  padding:0;
  background:transparent;
  color:var(--warna-teks,#292e2b);
  font:inherit;
  font-size:10.5px;
}
.dokumen-search input::placeholder{color:var(--warna-teks-sekunder,#929894)}
.dokumen-search input::-webkit-search-cancel-button{display:none}
.dokumen-search button{
  flex:0 0 auto;
  width:28px;
  height:28px;
  padding:0;
  border:0;
  border-radius:9px;
  display:grid;
  place-items:center;
  background:transparent;
  color:var(--warna-teks-sekunder,#7a817c);
  cursor:pointer;
}
.dokumen-search button[hidden]{display:none}
.dokumen-search button ion-icon{font-size:16px}
.dokumen-search:focus-within{
  border-color:color-mix(in srgb,var(--rk-primary,#557d68) 58%,var(--rk-border,#dfe4e0));
  box-shadow:0 0 0 3px color-mix(in srgb,var(--rk-primary,#557d68) 11%,transparent);
}
.dokumen-filter-trigger{
  position:relative;
  min-height:43px;
  padding:0 12px;
  border:1px solid var(--rk-border,var(--color-border,#e0e4e1));
  border-radius:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  background:var(--rk-surface,var(--warna-kartu,#fff));
  color:var(--warna-teks,#292e2b);
  font:inherit;
  font-size:9.5px;
  font-weight:750;
  cursor:pointer;
  white-space:nowrap;
}
.dokumen-filter-trigger>ion-icon{font-size:16px;color:var(--rk-primary,#557d68)}
.dokumen-filter-trigger.is-active{border-color:color-mix(in srgb,var(--rk-primary,#557d68) 32%,var(--rk-border,#dfe4e0));background:color-mix(in srgb,var(--rk-primary,#557d68) 6%,var(--rk-surface,#fff))}
.dokumen-filter-count{
  min-width:18px;
  height:18px;
  padding:0 5px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:var(--rk-primary,#557d68);
  color:#fff;
  font-size:8px;
  font-weight:800;
  line-height:1;
}
.dokumen-filter-count[hidden]{display:none}
.dokumen-active-filters{display:flex;gap:6px;overflow:auto;padding:0 1px 1px;scrollbar-width:none}
.dokumen-active-filters::-webkit-scrollbar{display:none}
.dokumen-active-filters[hidden]{display:none}
.dokumen-active-filter-chip{
  flex:0 0 auto;
  min-height:28px;
  padding:0 8px 0 10px;
  border:1px solid color-mix(in srgb,var(--rk-primary,#557d68) 18%,var(--rk-border,#dfe4e0));
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  gap:5px;
  background:color-mix(in srgb,var(--rk-primary,#557d68) 7%,transparent);
  color:var(--rk-primary,#557d68);
  font:inherit;
  font-size:8.7px;
  font-weight:720;
  cursor:pointer;
  white-space:nowrap;
}
.dokumen-active-filter-chip ion-icon{font-size:13px}
.dokumen-list-head>span{font-size:8.5px;color:var(--warna-teks-sekunder,#8a918d);white-space:nowrap}

.dokumen-filter-layer{z-index:2508}
.dokumen-filter-sheet{max-height:min(84dvh,720px);overflow:auto;padding-bottom:max(18px,env(safe-area-inset-bottom))}
.dokumen-filter-form{padding:2px 16px 16px;display:grid;gap:15px}
.dokumen-filter-group{border:0;margin:0;padding:0;display:grid;gap:8px}
.dokumen-filter-group[hidden]{display:none}
.dokumen-filter-group legend{font-size:10.5px;font-weight:780;color:var(--warna-teks,#292e2b);margin-bottom:1px}
.dokumen-filter-options{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.dokumen-filter-options-compact{grid-template-columns:repeat(3,1fr)}
.dokumen-filter-options label{min-width:0;cursor:pointer}
.dokumen-filter-options input{position:absolute;opacity:0;pointer-events:none}
.dokumen-filter-options span{
  min-height:38px;
  box-sizing:border-box;
  padding:8px 9px;
  border:1px solid var(--rk-border,var(--color-border,#e0e4e1));
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  background:var(--rk-surface,var(--warna-kartu,#fff));
  color:var(--warna-teks-sekunder,#727a75);
  font-size:9px;
  line-height:1.3;
  font-weight:690;
}
.dokumen-filter-options input:checked+span{
  border-color:color-mix(in srgb,var(--rk-primary,#557d68) 38%,var(--rk-border,#dfe4e0));
  background:color-mix(in srgb,var(--rk-primary,#557d68) 10%,var(--rk-surface,#fff));
  color:var(--rk-primary,#557d68);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rk-primary,#557d68) 10%,transparent);
}
.dokumen-filter-options input:focus-visible+span{outline:2px solid color-mix(in srgb,var(--rk-primary,#6f9984) 68%,transparent);outline-offset:2px}
.dokumen-filter-actions{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;padding-top:2px}
.dokumen-filter-actions .tombol-utama{width:100%;min-height:43px}
.dokumen-filter-reset{
  min-width:88px;
  min-height:43px;
  padding:0 13px;
  border:1px solid var(--rk-border,var(--color-border,#e0e4e1));
  border-radius:13px;
  background:transparent;
  color:var(--warna-teks-sekunder,#6f7772);
  font:inherit;
  font-size:9.5px;
  font-weight:750;
  cursor:pointer;
}
.dokumen-filter-trigger:focus-visible,.dokumen-search button:focus-visible,.dokumen-active-filter-chip:focus-visible,.dokumen-filter-reset:focus-visible{
  outline:2px solid color-mix(in srgb,var(--rk-primary,#6f9984) 72%,transparent);
  outline-offset:2px;
}

html[data-theme="dark"] .dokumen-search,
html[data-theme="dark"] .dokumen-filter-trigger,
html[data-theme="dark"] .dokumen-filter-options span{
  background:var(--rk-surface,var(--warna-kartu,#181c19));
  border-color:rgba(223,232,226,.10);
}
html[data-theme="dark"] .dokumen-filter-trigger.is-active,
html[data-theme="dark"] .dokumen-filter-options input:checked+span{background:rgba(111,153,132,.11)}

@media (max-width:360px){
  .dokumen-discovery{grid-template-columns:minmax(0,1fr) 44px}
  .dokumen-filter-trigger{width:44px;padding:0}
  .dokumen-filter-trigger>span:not(.dokumen-filter-count){display:none}
  .dokumen-filter-count{position:absolute;top:-4px;right:-4px}
  .dokumen-filter-options-compact{grid-template-columns:1fr}
}

/* RuangKitha v2.0.0a51 — Document renewal resolution flow */
.dokumen-renew-action{display:flex!important;align-items:center;justify-content:center;gap:7px}
.dokumen-renew-action ion-icon{font-size:16px}
.dokumen-renew-layer{z-index:2660}
.dokumen-renew-sheet{max-height:min(76dvh,620px);overflow:auto;padding-bottom:max(18px,env(safe-area-inset-bottom))}
.dokumen-renew-body{padding:2px 16px 16px;display:grid;gap:14px}
.dokumen-renew-current{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:14px;background:rgba(111,124,116,.055);border:1px solid rgba(103,118,109,.09)}
.dokumen-renew-current span{font-size:9.5px;color:var(--warna-teks-sekunder,#737b76)}
.dokumen-renew-current strong{font-size:10px;color:var(--warna-teks,#292e2b);text-align:right}
.dokumen-renew-note{margin:0;padding:10px 11px;border-radius:13px;background:rgba(80,130,101,.06);color:var(--warna-teks-sekunder,#737b76);font-size:9px;line-height:1.5}
.dokumen-renew-body .tombol-utama{width:100%}
html[data-theme="dark"] .dokumen-renew-current{background:rgba(255,255,255,.025);border-color:rgba(223,232,226,.08)}

/* ------------------------------------------------------------------
   a53g — Documents Dark Mode Contrast & Theme Parity Hotfix V1
   Bridge legacy Documents tokens to the locked RuangKitha Design System
   only in dark mode, then normalize the highest-visibility surfaces.
   ------------------------------------------------------------------ */
html[data-theme="dark"]{
  --warna-latar:var(--rk-background,#101612);
  --warna-kartu:var(--rk-surface,#171D19);
  --warna-teks:var(--rk-text,#F1EADF);
  --warna-teks-sekunder:var(--rk-text-secondary,#B9C2BC);
  --rk-bg:var(--rk-background,#101612);
  --rk-text-tertiary:var(--rk-text-soft,#99A59E);
  --rk-shadow-card:var(--rk-shadow-sm,0 8px 28px rgba(0,0,0,.20));
}

html[data-theme="dark"] .dokumen-app{
  background:var(--rk-background,#101612);
  color:var(--rk-text,#F1EADF);
}

html[data-theme="dark"] .dokumen-vault-compact,
html[data-theme="dark"] .dokumen-card,
html[data-theme="dark"] .dokumen-state{
  background:var(--rk-surface-raised,#1A211C);
  border-color:var(--rk-border,rgba(241,234,223,.11));
  box-shadow:var(--rk-shadow-sm,0 8px 28px rgba(0,0,0,.20));
}

html[data-theme="dark"] .dokumen-vault-icon,
html[data-theme="dark"] .dokumen-state>span{
  background:var(--rk-primary-soft,#233028);
  color:var(--rk-primary,#7FA58E);
}
html[data-theme="dark"] .dokumen-vault-copy strong,
html[data-theme="dark"] .dokumen-state strong,
html[data-theme="dark"] .dokumen-card-title{
  color:var(--rk-text,#F1EADF);
}
html[data-theme="dark"] .dokumen-vault-copy span,
html[data-theme="dark"] .dokumen-state p,
html[data-theme="dark"] .dokumen-card-meta,
html[data-theme="dark"] .dokumen-card-status,
html[data-theme="dark"] .dokumen-paperclip,
html[data-theme="dark"] .dokumen-card-chevron,
html[data-theme="dark"] .dokumen-list-head p,
html[data-theme="dark"] .dokumen-list-head>span{
  color:var(--rk-text-secondary,#B9C2BC);
}

html[data-theme="dark"] .dokumen-vault-badge[data-state="open"]{
  background:var(--rk-success-soft,#1D3023);
  color:var(--rk-success,#86B394);
}
html[data-theme="dark"] .dokumen-vault-badge[data-state="locked"]{
  background:var(--rk-warning-soft,#342A1B);
  color:var(--rk-warning,#D1A15F);
}
html[data-theme="dark"] .dokumen-vault-badge[data-state="blocked"]{
  background:var(--rk-danger-soft,#352220);
  color:var(--rk-danger,#D7837C);
}

html[data-theme="dark"] .dokumen-tabs{
  background:var(--rk-surface-soft,#1D241F);
  border:1px solid var(--rk-border,rgba(241,234,223,.11));
}
html[data-theme="dark"] .dokumen-tab{
  color:var(--rk-text-secondary,#B9C2BC);
}
html[data-theme="dark"] .dokumen-tab.is-active{
  background:var(--rk-surface-strong,#263029);
  color:var(--rk-text,#F1EADF);
  box-shadow:inset 0 0 0 1px var(--rk-border,rgba(241,234,223,.11));
}

html[data-theme="dark"] .dokumen-search,
html[data-theme="dark"] .dokumen-filter-trigger{
  background:var(--rk-surface-raised,#1A211C);
  border-color:var(--rk-border-strong,rgba(241,234,223,.19));
  box-shadow:none;
}
html[data-theme="dark"] .dokumen-search>ion-icon,
html[data-theme="dark"] .dokumen-search button,
html[data-theme="dark"] .dokumen-filter-trigger{
  color:var(--rk-text-secondary,#B9C2BC);
}
html[data-theme="dark"] .dokumen-search input{
  color:var(--rk-text,#F1EADF);
}
html[data-theme="dark"] .dokumen-search input::placeholder{
  color:var(--rk-text-soft,#99A59E);
  opacity:1;
}
html[data-theme="dark"] .dokumen-filter-trigger.is-active{
  background:var(--rk-primary-soft,#233028);
  border-color:color-mix(in srgb,var(--rk-primary,#7FA58E) 42%,var(--rk-border,#2A302C));
  color:var(--rk-primary,#7FA58E);
}

html[data-theme="dark"] .dokumen-message{
  background:var(--rk-primary-soft,#233028);
  color:var(--rk-text,#F1EADF);
}
html[data-theme="dark"] .dokumen-message.is-error{
  background:var(--rk-danger-soft,#352220);
  color:var(--rk-danger,#D7837C);
}

html[data-theme="dark"] .dokumen-state{
  border-style:dashed;
  border-color:var(--rk-border-strong,rgba(241,234,223,.19));
}

html[data-theme="dark"] .dokumen-card[data-lifecycle="attention"],
html[data-theme="dark"] .dokumen-card[data-lifecycle="today"]{
  border-color:color-mix(in srgb,var(--rk-warning,#D1A15F) 36%,var(--rk-border,#2A302C));
}
html[data-theme="dark"] .dokumen-card[data-lifecycle="expired"]{
  border-color:color-mix(in srgb,var(--rk-danger,#D7837C) 34%,var(--rk-border,#2A302C));
}
html[data-theme="dark"] .dokumen-card-status.is-attention{color:var(--rk-warning,#D1A15F)}
html[data-theme="dark"] .dokumen-card-status.is-expired{color:var(--rk-danger,#D7837C)}

html[data-theme="dark"] .dokumen-archive-shortcut{
  background:var(--rk-surface-raised,#1A211C);
  border-color:var(--rk-border-strong,rgba(241,234,223,.19));
  color:var(--rk-primary,#7FA58E);
}

html[data-theme="dark"] .dokumen-filter-options span,
html[data-theme="dark"] .dokumen-type-trigger,
html[data-theme="dark"] .dokumen-type-search,
html[data-theme="dark"] .dokumen-share-row,
html[data-theme="dark"] .dokumen-archive-row,
html[data-theme="dark"] .dokumen-detail-grid>div,
html[data-theme="dark"] .dokumen-attachment-row,
html[data-theme="dark"] .dokumen-sheet-header{
  background:var(--rk-surface-raised,#1A211C);
  border-color:var(--rk-border,rgba(241,234,223,.11));
}
html[data-theme="dark"] .dokumen-filter-options span{
  color:var(--rk-text-secondary,#B9C2BC);
}
html[data-theme="dark"] .dokumen-filter-options input:checked+span{
  background:var(--rk-primary-soft,#233028);
  border-color:color-mix(in srgb,var(--rk-primary,#7FA58E) 38%,var(--rk-border,#2A302C));
  color:var(--rk-primary,#7FA58E);
}

html[data-theme="dark"] .dokumen-fab{
  background:var(--rk-accent,#E7A18E);
  color:var(--rk-on-accent,#17110F);
  box-shadow:var(--rk-shadow-float,0 20px 56px rgba(0,0,0,.36));
}


/* ------------------------------------------------------------------
   P3E-A2.1 — Document attachment picker + compact form header hotfix
   Android native WebView:
   - direct label -> file input activation (no synthetic hidden-input click)
   - compact non-sticky create/edit header to avoid oversized sticky block
   ------------------------------------------------------------------ */
.dokumen-file-input{
  position:absolute !important;
  inset:0 !important;
  inline-size:100% !important;
  block-size:100% !important;
  padding:0 !important;
  margin:0 !important;
  opacity:0 !important;
  overflow:hidden !important;
  clip:auto !important;
  clip-path:none !important;
  white-space:normal !important;
  border:0 !important;
  cursor:pointer !important;
  z-index:4 !important;
}
.dokumen-attachment-picker{
  position:relative;
  overflow:hidden;
  box-sizing:border-box;
  min-height:48px;
  user-select:none;
  -webkit-tap-highlight-color:transparent;
}
.dokumen-attachment-picker > ion-icon,
.dokumen-attachment-picker > span{
  pointer-events:none;
}
.dokumen-attachment-picker:focus-within,
.dokumen-attachment-picker:focus-visible{
  outline:2px solid color-mix(in srgb,var(--rk-primary,#7FA58E) 72%,transparent);
  outline-offset:2px;
}

/* The form itself scrolls; its heading does not need a second sticky surface. */
.dokumen-form-sheet .dokumen-sheet-header{
  position:static !important;
  top:auto !important;
  z-index:auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:12px;
  margin:0 0 10px;
  padding:0 16px 10px;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.dokumen-form-sheet .dokumen-sheet-header>div{
  min-width:0;
}
.dokumen-form-sheet .dokumen-sheet-header h2{
  margin:0;
  font-size:16px;
  line-height:1.2;
  letter-spacing:-.015em;
}
.dokumen-form-sheet .dokumen-sheet-header .sheet-subjudul{
  max-width:310px;
  margin:5px 0 0;
  font-size:10px;
  line-height:1.45;
  color:var(--rk-text-secondary,var(--warna-teks-sekunder,#767d79));
}
.dokumen-form-sheet .dokumen-sheet-header .tombol-ikon{
  flex:0 0 auto;
  align-self:start;
}
.dokumen-form-sheet .dokumen-record-form{
  padding-top:0;
}

html[data-theme="dark"] .dokumen-form-sheet .dokumen-sheet-header{
  background:transparent !important;
}


/* P3E-A2.2: Android WebView direct-hit file input.
   The transparent native file input physically covers the visible picker, so a
   user tap reaches WebChromeClient.onShowFileChooser() without label forwarding
   or JavaScript synthetic click behavior. */
