/* Footer sidebar OysKasir — lapisan akhir, lembut dan tetap tajam. */
.sidebar .sidebar-footer {
  isolation: isolate;
  position: relative;
  min-height: 64px;
  margin: 8px 10px 11px;
  padding: 10px;
  gap: 9px;
  overflow: hidden;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, .46);
  border-radius: 18px;
  background:
    radial-gradient(circle at 8% 0%, rgba(255,255,255,.22), transparent 72px),
    linear-gradient(128deg, #6269df 0%, #6f5bd8 53%, #8158d2 100%);
  box-shadow:
    0 12px 26px rgba(83, 72, 179, .20),
    inset 0 1px 0 rgba(255,255,255,.28),
    inset 0 -1px 0 rgba(58,46,145,.10);
}

.sidebar .sidebar-footer::after {
  content: '';
  position: absolute;
  z-index: -1;
  width: 88px;
  height: 88px;
  right: -49px;
  top: -54px;
  border: 15px solid rgba(255,255,255,.07);
  border-radius: 50%;
  pointer-events: none;
}

.sidebar .sidebar-footer-brand {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  position: relative;
  z-index: 2;
}

.sidebar .sidebar-footer-mark {
  display: grid;
  width: 34px;
  height: 34px;
  min-width: 34px;
  place-items: center;
  color: #6559d4;
  border: 1px solid rgba(255,255,255,.82);
  border-radius: 11px;
  background: linear-gradient(145deg, #fffefa, #f3f0ff);
  box-shadow: 0 6px 15px rgba(48,38,131,.16), inset 0 1px 0 #fff;
}

.sidebar .sidebar-footer-mark .icon {
  width: 17px;
  height: 17px;
  stroke-width: 1.9;
}

.sidebar .sidebar-footer-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  font-family: "Plus Jakarta Sans", system-ui, sans-serif;
}

.sidebar .sidebar-footer-copy strong {
  overflow: hidden;
  color: #fff;
  font-size: 10.25px;
  font-weight: 780;
  line-height: 1.25;
  letter-spacing: -.01em;
  text-overflow: ellipsis;
  text-shadow: 0 1px 2px rgba(47,35,126,.16);
  white-space: nowrap;
}

.sidebar .sidebar-footer-copy small {
  margin-top: 3px;
  color: rgba(255,255,255,.78);
  font-size: 8.25px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: .005em;
  white-space: nowrap;
}

.sidebar .sidebar-footer > button {
  position: relative;
  z-index: 2;
  display: grid;
  width: 34px;
  height: 34px;
  min-width: 34px;
  min-height: 34px;
  margin-left: auto;
  padding: 0;
  place-items: center;
  color: #6057c9;
  border: 1px solid rgba(255,255,255,.82);
  border-radius: 11px;
  background: linear-gradient(145deg, #fffefa, #f4f2ff);
  box-shadow: 0 6px 15px rgba(46,35,128,.17), inset 0 1px 0 #fff;
  transition: transform .22s cubic-bezier(.2,.75,.25,1), box-shadow .22s ease, color .22s ease;
}

.sidebar .sidebar-footer > button .icon {
  width: 15px;
  height: 15px;
  stroke-width: 2;
}

.collapsed .sidebar .sidebar-footer {
  margin-inline: 7px;
  padding: 9px;
}

.collapsed .sidebar .sidebar-footer > button {
  margin-inline: auto;
  transform: rotate(180deg);
}

@media (hover: hover) and (pointer: fine) {
  .sidebar .sidebar-footer:hover {
    box-shadow: 0 15px 31px rgba(83,72,179,.25), inset 0 1px 0 rgba(255,255,255,.3);
  }
  .sidebar .sidebar-footer > button:hover {
    color: #fff;
    border-color: rgba(255,255,255,.38);
    background: rgba(255,255,255,.19);
    box-shadow: 0 7px 17px rgba(43,31,127,.19), inset 0 1px 0 rgba(255,255,255,.2);
    transform: translateX(-2px);
  }
  .collapsed .sidebar .sidebar-footer > button:hover {
    transform: rotate(180deg) translateX(-2px);
  }
}

@media (max-width: 760px) {
  .collapsed .sidebar .sidebar-footer { margin: 8px 10px 11px; padding: 10px; }
  .collapsed .sidebar .sidebar-footer-brand { display: flex; }
  .collapsed .sidebar .sidebar-footer > button { margin-left: auto; margin-right: 0; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
  .sidebar .sidebar-footer > button { transition: none; }
}
