/* Unified form ecosystem — file picker and shared form micro-interactions */
:root{
  --ia-file-blue:#0b4f9c;
  --ia-file-blue-2:#1769bd;
  --ia-file-ink:#15324d;
  --ia-file-muted:#6f8193;
  --ia-file-line:rgba(87,126,161,.18);
  --ia-file-surface:rgba(255,255,255,.72);
  --ia-file-soft:rgba(239,247,255,.76);
}
.iaFilePicker{
  display:flex;align-items:center;gap:10px;min-width:0;width:100%;
  padding:7px;border:1px solid var(--ia-file-line);border-radius:14px;
  background:linear-gradient(145deg,var(--ia-file-surface),var(--ia-file-soft));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 7px 20px rgba(23,70,112,.055);
  backdrop-filter:blur(16px) saturate(145%);-webkit-backdrop-filter:blur(16px) saturate(145%);
}
.iaFilePicker.isDrag{border-color:rgba(11,79,156,.42);box-shadow:0 0 0 3px rgba(11,79,156,.08),inset 0 1px 0 rgba(255,255,255,.95)}
.iaFileNative{
  position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;
}
.iaFileButton,.iaUploadAction{
  flex:none;display:inline-flex!important;align-items:center;justify-content:center;gap:7px;
  min-height:34px;padding:0 12px;border:1px solid #0757a6;border-radius:9px;
  background:#0757a6;color:#fff!important;font:inherit;font-size:9.5px;font-weight:850;letter-spacing:.005em;
  cursor:pointer;box-shadow:none;
  transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease;
}
.iaFileButton:hover,.iaUploadAction:hover{background:#064b91!important;border-color:#064b91!important;color:#fff!important}
.iaFileButton:active,.iaUploadAction:active{background:#05427f!important}
.iaFileButton svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.iaFileMeta{min-width:0;display:flex;align-items:center;gap:7px;flex:1}
.iaFileName{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ia-file-muted);font-size:10.5px}
.iaFilePicker.hasFile .iaFileName{color:var(--ia-file-ink);font-weight:700}
.iaFileCount{
  display:none;flex:none;padding:3px 6px;border-radius:999px;background:rgba(11,79,156,.08);
  color:var(--ia-file-blue);font-size:9px;font-weight:850
}
.iaFilePicker.hasMany .iaFileCount{display:inline-flex}
.iaFileClear{
  flex:none;display:none;place-items:center;width:29px;height:29px;border:0;border-radius:9px;
  background:rgba(22,55,83,.06);color:var(--ia-file-muted);cursor:pointer;font-size:16px;line-height:1;
}
.iaFilePicker.hasFile .iaFileClear{display:grid}
.iaFileClear:hover{background:rgba(177,55,55,.09);color:#a53838}
html[data-theme="dark"] .iaFilePicker,
html[data-pw-theme="dark"] .iaFilePicker{
  --ia-file-ink:#eef6ff;--ia-file-muted:#93a9bd;--ia-file-line:rgba(194,221,245,.12);
  --ia-file-surface:rgba(18,34,51,.82);--ia-file-soft:rgba(12,27,43,.72);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 9px 26px rgba(0,0,0,.15)
}
html[data-theme="dark"] .iaFileClear,
html[data-pw-theme="dark"] .iaFileClear{background:rgba(255,255,255,.06)}
@media(max-width:560px){
  .iaFilePicker{gap:8px;padding:6px}
  .iaFileButton{min-height:35px;padding:8px 10px;font-size:10px}
  .iaFileName{font-size:9.5px}
}

.iaUploadAction{
  min-height:34px!important;padding:0 12px!important;border:1px solid #0757a6!important;border-radius:9px!important;
  background:#0757a6!important;color:#fff!important;font-size:9.5px!important;font-weight:850!important;
  box-shadow:none!important;cursor:pointer!important;text-decoration:none!important;
}

/* Unified Rupiah input */
.iaMoneyField{
  width:100%;min-height:42px;display:flex;align-items:center;gap:8px;
  padding:0 12px;border:1px solid rgba(96,129,159,.22);border-radius:11px;
  background:rgba(255,255,255,.78);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92);
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.iaMoneyField.isFocus{
  border-color:rgba(7,87,166,.48);
  box-shadow:0 0 0 3px rgba(7,87,166,.07),inset 0 1px 0 rgba(255,255,255,.96);
  background:#fff;
}
.iaMoneyPrefix{
  flex:none;color:#62768a;font-size:11px;font-weight:900;letter-spacing:.02em;
}
.iaMoneyInput{
  width:100%!important;min-width:0!important;height:40px!important;margin:0!important;
  padding:0!important;border:0!important;outline:0!important;background:transparent!important;
  box-shadow:none!important;color:#15324d!important;
  font:inherit!important;font-size:15px!important;font-weight:850!important;
  text-align:left!important;font-variant-numeric:tabular-nums;
}
.iaMoneyInput::placeholder{color:#a6b2bd!important;font-weight:700!important}
html[data-theme="dark"] .iaMoneyField,
html[data-pw-theme="dark"] .iaMoneyField{
  background:rgba(15,31,48,.74);
  border-color:rgba(196,221,244,.11);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
html[data-theme="dark"] .iaMoneyField.isFocus,
html[data-pw-theme="dark"] .iaMoneyField.isFocus{
  background:rgba(19,38,58,.88);
  border-color:rgba(103,169,229,.35);
  box-shadow:0 0 0 3px rgba(42,118,187,.10),inset 0 1px 0 rgba(255,255,255,.05);
}
html[data-theme="dark"] .iaMoneyPrefix,
html[data-pw-theme="dark"] .iaMoneyPrefix{color:#91a7bb}
html[data-theme="dark"] .iaMoneyInput,
html[data-pw-theme="dark"] .iaMoneyInput{color:#eef6ff!important}
@media(max-width:560px){
  .iaMoneyField{min-height:40px;padding:0 10px}
  .iaMoneyInput{height:38px!important;font-size:14px!important}
}


/* File preview — verify evidence before submit */
.iaFilePreview{
  width:100%;display:block;margin-top:8px;padding:10px;
  border:1px solid rgba(87,126,161,.16);border-radius:14px;
  background:linear-gradient(145deg,rgba(255,255,255,.80),rgba(242,248,253,.70));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.94);
}
.iaFilePreview[hidden]{display:none!important}
.iaFilePreviewHead{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  margin-bottom:8px;
}
.iaFilePreviewHead b{
  color:var(--ia-file-ink);font-size:10px;font-weight:900;letter-spacing:.01em
}
.iaFilePreviewHead a{
  color:var(--ia-file-blue);font-size:9px;font-weight:850;text-decoration:none
}
.iaFilePreviewHead a:hover{text-decoration:underline}
.iaFilePreviewStage{
  display:grid;place-items:center;width:100%;overflow:hidden;
  border-radius:11px;background:rgba(229,238,247,.68);
  border:1px solid rgba(87,126,161,.10);
}
.iaFilePreview.isImage .iaFilePreviewStage{min-height:160px;max-height:320px}
.iaFilePreview.isImage img{
  display:block;max-width:100%;width:auto;max-height:320px;object-fit:contain
}
.iaFilePreview.isVideo video{
  display:block;width:100%;max-height:360px;background:#000
}
.iaFilePreview.isPdf iframe{
  display:block;width:100%;height:360px;border:0;background:#fff
}
.iaFilePreview>small{
  display:block;margin-top:8px;color:var(--ia-file-muted);font-size:9px;line-height:1.4
}
html[data-theme="dark"] .iaFilePreview,
html[data-pw-theme="dark"] .iaFilePreview{
  background:linear-gradient(145deg,rgba(18,35,53,.86),rgba(10,25,40,.74));
  border-color:rgba(198,225,249,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045)
}
html[data-theme="dark"] .iaFilePreviewStage,
html[data-pw-theme="dark"] .iaFilePreviewStage{
  background:rgba(8,19,30,.70);border-color:rgba(198,225,249,.08)
}
html[data-theme="dark"] .iaFilePreviewHead a,
html[data-pw-theme="dark"] .iaFilePreviewHead a{color:#8bc5fb}
@media(max-width:560px){
  .iaFilePreview{padding:8px;border-radius:12px}
  .iaFilePreview.isPdf iframe{height:280px}
  .iaFilePreview.isImage .iaFilePreviewStage{min-height:120px;max-height:250px}
  .iaFilePreview.isImage img{max-height:250px}
}
