/* APK Wow + Date Repair 2027
   Final visual/effect layer: readable themes, working date picker, wow logo/buttons. */
:root{
  --apk-brand-1:#2563eb;
  --apk-brand-2:#7c3aed;
  --apk-brand-3:#ec4899;
  --apk-brand-4:#06b6d4;
  --apk-good-1:#0ea5e9;
  --apk-good-2:#10b981;
  --apk-warn-1:#f59e0b;
  --apk-danger-1:#ef4444;
  --apk-ring:rgba(37,99,235,.28);
}
html[data-apk-theme="light"]{
  --apk-surface-final:#ffffff;
  --apk-surface-soft-final:#f8fbff;
  --apk-text-final:#0f172a;
  --apk-muted-final:#52637a;
  --apk-border-final:#dbe7fb;
  --apk-shadow-final:0 18px 55px rgba(37,99,235,.14);
}
html[data-apk-theme="dark"]{
  --apk-surface-final:#111d31;
  --apk-surface-soft-final:#0b1526;
  --apk-text-final:#f6f9ff;
  --apk-muted-final:#c5d3e8;
  --apk-border-final:#2f4568;
  --apk-shadow-final:0 22px 70px rgba(0,0,0,.46);
}

/* logo APK lebih wow tapi tetap clear */
.sidebar-header .text,
.apk-logo,
.apk-card-logo,
.apk-pill-brand{
  position:relative !important;
  isolation:isolate;
  overflow:hidden;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  min-width:48px;
  min-height:48px;
  padding:0 12px;
  border-radius:18px !important;
  color:#fff !important;
  font-weight:900 !important;
  letter-spacing:.02em;
  background:
    radial-gradient(circle at 25% 18%, rgba(255,255,255,.95), rgba(255,255,255,0) 22%),
    linear-gradient(135deg, var(--apk-brand-1) 0%, var(--apk-brand-2) 48%, var(--apk-brand-3) 100%) !important;
  box-shadow:0 16px 32px rgba(124,58,237,.32), inset 0 1px 0 rgba(255,255,255,.35) !important;
  transform:translateZ(0);
}
.sidebar-header .text::before,
.apk-logo::before,
.apk-card-logo::before,
.apk-pill-brand::before{
  content:"";
  position:absolute;
  inset:-45% -55%;
  z-index:-1;
  background:linear-gradient(120deg, transparent 32%, rgba(255,255,255,.55) 48%, transparent 64%);
  transform:translateX(-72%) rotate(8deg);
  animation:apkLogoShine 4.8s ease-in-out infinite;
}
.sidebar-header .text::after,
.apk-logo::after,
.apk-card-logo::after{
  content:"";
  position:absolute;
  width:10px;
  height:10px;
  right:8px;
  top:7px;
  border-radius:999px;
  background:#67e8f9;
  box-shadow:0 0 18px rgba(103,232,249,.85);
}
.sidebar-header .text:hover,
.apk-logo:hover,
.apk-card-logo:hover,
.apk-pill-brand:hover{ transform:translateY(-1px) scale(1.02); }
@keyframes apkLogoShine{0%,58%{transform:translateX(-76%) rotate(8deg)} 78%,100%{transform:translateX(78%) rotate(8deg)}}

.apk-system-badge,
.apk-pill,
.apk-page-label,
.apk-page-title,
.apk-welcome,
.apk-date,
.card, .card-body, .apk-topbar, .apk-filter-card, .apk-entry-panel, .apk-entry-dialog, .apk-section-note{
  color:var(--apk-text-final) !important;
}
html[data-apk-theme="dark"] .apk-system-badge,
html[data-apk-theme="dark"] .apk-pill,
html[data-apk-theme="dark"] .apk-section-note,
html[data-apk-theme="dark"] .apk-topbar,
html[data-apk-theme="dark"] .card,
html[data-apk-theme="dark"] .card-body{
  background:linear-gradient(135deg, rgba(17,29,49,.96), rgba(14,24,42,.94)) !important;
  border-color:var(--apk-border-final) !important;
  color:var(--apk-text-final) !important;
}

/* bentuk button final: rounded, klik stabil, wow hover */
button,
.btn,
.button,
input[type="submit"],
input[type="button"],
a.btn,
.dt-button,
.apk-top-action,
.apk-secondary-action,
.apk-theme-toggle,
.apk-entry-open,
.apk-flow-open{
  border-radius:999px !important;
  position:relative !important;
  overflow:hidden;
  pointer-events:auto !important;
  cursor:pointer !important;
  font-weight:800 !important;
  letter-spacing:.01em;
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease, background .18s ease, border-color .18s ease !important;
}
button::before,
.btn::before,
.button::before,
input[type="submit"]::before,
a.btn::before,
.dt-button::before,
.apk-top-action::before,
.apk-entry-open::before,
.apk-flow-open::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(110deg, transparent 0%, rgba(255,255,255,.25) 42%, rgba(255,255,255,.42) 50%, rgba(255,255,255,.18) 58%, transparent 100%);
  transform:translateX(-135%);
  transition:transform .55s ease;
}
button:hover::before,
.btn:hover::before,
.button:hover::before,
input[type="submit"]:hover::before,
a.btn:hover::before,
.dt-button:hover::before,
.apk-top-action:hover::before,
.apk-entry-open:hover::before,
.apk-flow-open:hover::before{ transform:translateX(135%); }
button:hover,
.btn:hover,
.button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
a.btn:hover,
.dt-button:hover,
.apk-top-action:hover,
.apk-theme-toggle:hover,
.apk-entry-open:hover,
.apk-flow-open:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 18px 34px rgba(37,99,235,.25) !important;
  filter:saturate(1.08) contrast(1.04);
}
button:active,
.btn:active,
.button:active,
input[type="submit"]:active,
input[type="button"]:active,
a.btn:active,
.dt-button:active{ transform:translateY(0) scale(.985) !important; }
button[type="submit"],
input[type="submit"],
.btn-primary,
.apk-entry-open,
.apk-top-action,
.apk-flow-open{
  color:#fff !important;
  border:0 !important;
  background:linear-gradient(135deg, #1d4ed8 0%, #2563eb 42%, #7c3aed 100%) !important;
  box-shadow:0 14px 30px rgba(37,99,235,.28) !important;
}
button[name="checks"],
button[name="finish"],
button[value="finish"],
button[value="Finish"],
button[data-action*="finish"],
.apk-action-finish,
.apk-btn-finish{
  color:#fff !important;
  border:0 !important;
  background:linear-gradient(135deg, #059669 0%, #10b981 48%, #06b6d4 100%) !important;
  box-shadow:0 14px 32px rgba(16,185,129,.28) !important;
}
button[name="approve"],
button[value="approve"],
.btn-success,
.apk-btn-success{
  color:#fff !important;
  border:0 !important;
  background:linear-gradient(135deg, #15803d 0%, #16a34a 50%, #22c55e 100%) !important;
}
button[name="cancel"],
button[type="reset"],
.btn-secondary,
.btn-light,
.apk-btn-cancel,
.apk-entry-close,
[data-apk-close-entry]{
  color:var(--apk-text-final) !important;
  background:var(--apk-surface-final) !important;
  border:1px solid var(--apk-border-final) !important;
  box-shadow:0 10px 24px rgba(15,23,42,.08) !important;
}
html[data-apk-theme="dark"] button[name="cancel"],
html[data-apk-theme="dark"] button[type="reset"],
html[data-apk-theme="dark"] .btn-secondary,
html[data-apk-theme="dark"] .btn-light,
html[data-apk-theme="dark"] .apk-btn-cancel,
html[data-apk-theme="dark"] .apk-entry-close,
html[data-apk-theme="dark"] [data-apk-close-entry]{
  color:#f8fbff !important;
  background:#18263c !important;
  border-color:#3a5378 !important;
}

/* Date picker final */
.apk-date-wrap{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  width:100% !important;
  min-height:46px;
}
.apk-date-wrap > input.form-control,
.apk-date-wrap > input{
  width:100% !important;
  padding-right:54px !important;
  background:var(--apk-surface-final) !important;
  color:var(--apk-text-final) !important;
  border:1px solid var(--apk-border-final) !important;
  box-shadow:none !important;
}
.apk-date-wrap > input:focus{
  border-color:#60a5fa !important;
  box-shadow:0 0 0 4px var(--apk-ring) !important;
  outline:none !important;
}
.apk-date-trigger{
  position:absolute !important;
  right:8px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  z-index:25 !important;
  width:38px !important;
  height:34px !important;
  min-width:38px !important;
  padding:0 !important;
  border-radius:14px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#fff !important;
  border:0 !important;
  background:linear-gradient(135deg, #2563eb, #7c3aed) !important;
  box-shadow:0 10px 22px rgba(37,99,235,.25) !important;
}
.apk-date-trigger:hover{ transform:translateY(-50%) scale(1.04) !important; }
.apk-date-native-picker{
  position:fixed !important;
  width:1px !important;
  height:1px !important;
  opacity:.01 !important;
  pointer-events:auto !important;
  z-index:2147483647 !important;
}
.Zebra_DatePicker,
.Zebra_DatePicker *{
  color:#0f172a !important;
  text-shadow:none !important;
}
.Zebra_DatePicker{
  z-index:2147483600 !important;
  border-radius:22px !important;
  overflow:hidden !important;
  border:1px solid #dbe7fb !important;
  box-shadow:0 30px 80px rgba(15,23,42,.25) !important;
}
.Zebra_DatePicker table{ background:#fff !important; }
.Zebra_DatePicker .dp_daypicker td,
.Zebra_DatePicker .dp_monthpicker td,
.Zebra_DatePicker .dp_yearpicker td{ border-radius:12px !important; }
.Zebra_DatePicker .dp_selected,
.Zebra_DatePicker .dp_current{ background:linear-gradient(135deg,#2563eb,#7c3aed) !important; color:#fff !important; }
html[data-apk-theme="dark"] .Zebra_DatePicker,
html[data-apk-theme="dark"] .Zebra_DatePicker table{ background:#fff !important; color:#0f172a !important; }

/* subtle wow surfaces */
.apk-topbar,
.card,
.apk-entry-dialog,
.apk-filter-card,
.dataTables_wrapper,
.table-responsive{
  box-shadow:var(--apk-shadow-final) !important;
}
.apk-topbar::after,
.card::after,
.apk-entry-dialog::after{
  content:"";
  position:absolute;
  pointer-events:none;
  inset:0;
  border-radius:inherit;
  background:radial-gradient(circle at 92% 8%, rgba(236,72,153,.14), transparent 32%), radial-gradient(circle at 10% 92%, rgba(6,182,212,.12), transparent 32%);
}
.card,
.apk-topbar,
.apk-entry-dialog{ position:relative !important; overflow:hidden; }
.form-control,
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple,
textarea,
select{
  border-radius:18px !important;
  color:var(--apk-text-final) !important;
  background:var(--apk-surface-final) !important;
  border-color:var(--apk-border-final) !important;
}
.form-control::placeholder{ color:var(--apk-muted-final) !important; opacity:.78 !important; }
html[data-apk-theme="dark"] .form-control,
html[data-apk-theme="dark"] textarea,
html[data-apk-theme="dark"] select,
html[data-apk-theme="dark"] .select2-container--default .select2-selection--single,
html[data-apk-theme="dark"] .select2-container--default .select2-selection--multiple{
  background:#111d31 !important;
  color:#f8fbff !important;
  border-color:#334b70 !important;
}

@media (prefers-reduced-motion: reduce){
  *, *::before, *::after{ animation:none !important; transition:none !important; }
}
@media (max-width: 768px){
  .sidebar-header .text,.apk-logo,.apk-card-logo,.apk-pill-brand{ min-width:42px; min-height:42px; border-radius:15px !important; }
  .apk-date-trigger{ width:36px !important; height:32px !important; }
}

/* APK 2027 final flow/finish button wow repair */
.apk-top-action,
a.apk-top-action,
.apk-flow-open,
a.apk-flow-open,
button.apk-flow-open,
.apk-entry-open,
button.apk-entry-open,
a[href*='flowprogress'] {
  color: #ffffff !important;
  background: linear-gradient(135deg, #2563eb 0%, #7c3aed 54%, #ec4899 100%) !important;
  border: 1px solid rgba(255,255,255,.34) !important;
  border-radius: 999px !important;
  box-shadow: 0 12px 28px rgba(37,99,235,.28), 0 0 0 1px rgba(255,255,255,.16) inset !important;
  text-shadow: 0 1px 2px rgba(3,7,18,.26) !important;
  position: relative !important;
  overflow: hidden !important;
  pointer-events: auto !important;
  cursor: pointer !important;
}
.apk-top-action *,
.apk-flow-open *,
a[href*='flowprogress'] * { color: #ffffff !important; }
.apk-top-action::before,
.apk-flow-open::before,
a[href*='flowprogress']::before,
button[type='submit']::before,
.btn-success::before,
.btn-primary::before,
.apk-action-btn--success::before,
.apk-action-btn--primary::before {
  content: "";
  position: absolute;
  top: -60%;
  left: -35%;
  width: 34%;
  height: 220%;
  transform: rotate(24deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.58), transparent);
  animation: apk-shine-pass 3.2s ease-in-out infinite;
  pointer-events: none;
}
@keyframes apk-shine-pass {
  0%, 28% { left: -45%; opacity: 0; }
  40% { opacity: .9; }
  58%, 100% { left: 120%; opacity: 0; }
}
button[type='submit'],
.btn-success,
.btn-primary,
.apk-action-btn--success,
.apk-action-btn--primary,
.apk-action-btn--print {
  position: relative !important;
  overflow: hidden !important;
  color: #ffffff !important;
  border-radius: 999px !important;
  box-shadow: 0 12px 26px rgba(37,99,235,.18), 0 0 0 1px rgba(255,255,255,.12) inset !important;
  transition: transform .16s ease, box-shadow .16s ease, filter .16s ease !important;
}
button[type='submit']:hover,
.btn-success:hover,
.btn-primary:hover,
.apk-action-btn--success:hover,
.apk-action-btn--primary:hover,
.apk-action-btn--print:hover,
.apk-top-action:hover,
.apk-flow-open:hover {
  transform: translateY(-1px) scale(1.01) !important;
  filter: saturate(1.08) brightness(1.04) !important;
  box-shadow: 0 18px 42px rgba(37,99,235,.32), 0 0 0 1px rgba(255,255,255,.22) inset !important;
}
[data-apk-theme='dark'] .apk-top-action,
[data-apk-theme='dark'] .apk-flow-open,
[data-apk-theme='dark'] a[href*='flowprogress'] {
  color: #ffffff !important;
  background: linear-gradient(135deg, #3b82f6 0%, #8b5cf6 52%, #f472b6 100%) !important;
  box-shadow: 0 16px 42px rgba(124,58,237,.38), 0 0 0 1px rgba(255,255,255,.18) inset !important;
}
