html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

/* SIKEP: toggle debug keys (KEY) in dynamic forms */
.sikep-debug-key {
  display: none;
}

body.sikep-show-keys .sikep-debug-key {
  display: inline;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}

/* ===== SIKEP Global SideNav ===== */
.sikep-sidenav {
    position: sticky;
    top: .75rem;
    height: calc(100vh - 1.5rem);
    overflow-y: auto;
    padding-bottom: 1rem;
}

    .sikep-sidenav .list-group-item {
        border: 0;
        border-radius: .5rem;
        margin-bottom: .25rem;
    }

        .sikep-sidenav .list-group-item.active {
            background-color: var(--bs-primary-bg-subtle);
            color: var(--bs-body-color);
            font-weight: 600;
        }

/* ===== SIKEP Landing Page ===== */
.sikep-landing {
    max-width: 1180px;
    margin: 0 auto;
    padding: 1rem 0 2rem;
}

.sikep-hero {
    background: linear-gradient(135deg, #f8fbff 0%, #eef6ff 48%, #ffffff 100%);
    border: 1px solid rgba(13, 110, 253, .10);
}

.sikep-hero-body {
    min-height: 360px;
}

.sikep-hero-panel {
    background: rgba(255, 255, 255, .62);
    border-left: 1px solid rgba(13, 110, 253, .08);
}

.sikep-hero-logo {
    max-width: 260px;
    height: auto;
}

.sikep-dash-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 1rem;
}

.sikep-card-hover {
    transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}

    .sikep-card-hover:hover {
        transform: translateY(-2px);
        box-shadow: 0 .75rem 1.5rem rgba(0, 0, 0, .10) !important;
    }

.sikep-card-icon {
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    color: #0d6efd;
    background: var(--bs-primary-bg-subtle);
}

.sikep-flow {
    display: grid;
    gap: 1rem;
}

.sikep-flow-item {
    display: flex;
    align-items: flex-start;
    gap: .85rem;
}

.sikep-flow-dot {
    flex: 0 0 auto;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    color: #fff;
    background: #0d6efd;
    box-shadow: 0 .35rem .8rem rgba(13, 110, 253, .22);
}

@media (max-width: 991.98px) {
    .sikep-hero-panel {
        border-left: 0;
        border-top: 1px solid rgba(13, 110, 253, .08);
    }

    .sikep-hero-body {
        min-height: auto;
    }
}

/* ===== SIKEP Privacy Page ===== */
.sikep-privacy-page {
    position: relative;
}

.sikep-sticky-back {
    position: sticky;
    top: 0;
    z-index: 1020;
    background: rgba(255, 255, 255, .92);
    backdrop-filter: blur(8px);
}
