/* Isyarat interaksi khusus AM-FM; tidak mengubah komponen SIWAK/KI. */
.amfm-button, .amfm-registration :is(button, a:not(.amfm-file-link)) {
  transition: transform 160ms ease, filter 160ms ease, box-shadow 160ms ease;
}
.amfm-button:hover, .amfm-registration :is(button, a:not(.amfm-file-link)):hover {
  transform: translateY(-2px);
  filter: brightness(1.08);
  box-shadow: 0 6px 14px #001b3d24;
}
.amfm-button:active, .amfm-registration :is(button, a:not(.amfm-file-link)):active { transform: translateY(0); }
.amfm-button-outline:hover { background:#F2E5BB; color:#001B3D; }
.amfm-registration button:disabled { transform: none; filter: none; box-shadow: none; cursor: wait; }
.amfm-registration .amfm-file-link { color: #12284c; text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.amfm-registration .amfm-file-link:hover { color: #7a6425; }
.amfm-panel select:not([multiple]), .amfm-registration select:not([multiple]):not(:disabled) {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m5 7.5 5 5 5-5' stroke='%2312284c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-position: right 14px center;
  background-size: 20px;
  background-repeat: no-repeat;
  padding-right: 44px;
  cursor: pointer;
}
.amfm-registration .amfm-identity-value {
  width: 100%; border: 0; border-bottom: 2px solid #d1d1d1;
  background: transparent; padding: 0 0 8px; color: #6b7280;
  font-size: 18px; line-height: 1.5; min-height: 38px;
  overflow-wrap: anywhere; white-space: normal;
}
.amfm-registration { font-size:16px; line-height:1.55; }
.amfm-registration .amfm-field-label { font-size:18px; line-height:1.4; font-weight:600; }
.amfm-registration .amfm-input { font-size:16px; line-height:1.5; }
.amfm-info .benefit-header { font-size:14px; line-height:1.4; }
.amfm-info .benefit-body p { font-size:14px; line-height:1.55; }
.amfm-info #timeline span.inline-flex { font-size:12px; line-height:1.4; }
.amfm-info #timeline h3 { font-size:16px; line-height:1.4; }
.amfm-info #timeline span.mb-2 { font-size:12px; }
.amfm-info #timeline p { font-size:14px; line-height:1.55; }
.amfm-info > header p.italic { font-size:14px; line-height:1.45; }
@media (max-width:639px) {
  .amfm-info > header h1 { font-size:36px; line-height:1.15; }
}
@media (min-width:640px) {
  .amfm-info .benefit-header { font-size:18px; }
  .amfm-info .benefit-body p { font-size:16px; }
  .amfm-info #timeline span.inline-flex { font-size:14px; }
  .amfm-info #timeline h3 { font-size:18px; }
  .amfm-info #timeline span.mb-2 { font-size:14px; }
  .amfm-info #timeline p { font-size:16px; }
  .amfm-info > header p.italic { font-size:18px; }
}
.amfm-panel .panel-btn.amfm-nav-active { background:#113665; color:white; border-color:#113665; }
.amfm-panel .panel-btn.amfm-nav-active:hover { background:#1B477A; color:white; }
.amfm-panel .amfm-dashboard-tab { transition:transform 160ms ease, box-shadow 160ms ease; }
.amfm-panel .amfm-dashboard-tab:hover { transform:translateY(-2px); box-shadow:0 6px 14px #001b3d24; }
.amfm-panel .amfm-dashboard-tab:active { transform:translateY(0); }
.amfm-panel .amfm-name-cell { min-width:230px; overflow-wrap:anywhere; }
.amfm-panel .amfm-sort-link { display:inline-flex; align-items:center; gap:8px; color:inherit; text-decoration:none; }
.amfm-panel .amfm-sort-link:hover { text-decoration:underline; text-underline-offset:3px; }
.amfm-panel .amfm-sort-arrow { width:0; height:0; border-left:5px solid transparent; border-right:5px solid transparent; border-bottom:7px solid #a9c7ff; transition:transform 160ms ease; }
.amfm-panel .amfm-sort-arrow-active { border-bottom-color:white; }
.amfm-panel .amfm-sort-arrow-down { transform:rotate(180deg); }
.amfm-panel .amfm-status-effective { border:1px solid transparent; }
.amfm-panel .amfm-status-effective--dibuka { background:#d1fae5; border-color:#34d399; color:#065f46; }
.amfm-panel .amfm-status-effective--ditutup { background:#fee2e2; border-color:#f87171; color:#991b1b; }
.amfm-panel .amfm-status-effective--belum_dibuka { background:#fef3c7; border-color:#fbbf24; color:#92400e; }
.amfm-panel #id_status_pendaftaran { font-weight:600; transition:background-color 160ms ease, border-color 160ms ease; }
.amfm-panel #id_status_pendaftaran:has(option[value="dibuka"]:checked) { background-color:#d1fae5; border-color:#34d399; color:#065f46; }
.amfm-panel #id_status_pendaftaran:has(option[value="ditutup"]:checked) { background-color:#fee2e2; border-color:#f87171; color:#991b1b; }
.amfm-panel #id_status_pendaftaran:has(option[value="belum_dibuka"]:checked) { background-color:#fef3c7; border-color:#fbbf24; color:#92400e; }
.amfm-panel #id_status_pendaftaran option { background:white; color:#12284C; }
@media (prefers-reduced-motion: reduce) {
  .amfm-button, .amfm-registration :is(button, a) { transition: none; }
  .amfm-button:hover, .amfm-registration :is(button, a):hover { transform: none; }
  .amfm-panel .amfm-dashboard-tab { transition:none; }
  .amfm-panel .amfm-dashboard-tab:hover { transform:none; }
}
