@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

/* ===== Reset & Base (Figma Dark Theme Palette for Bootstrap 5) ===== */
body {
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    background-color: #1d1d33 !important;
    background-image: 
        radial-gradient(circle at 86% 2%, rgba(167, 123, 86, 0.40) 0%, transparent 60%),
        radial-gradient(circle at 6% 72%, rgba(167, 118, 69, 0.21) 0%, transparent 60%) !important;
    background-attachment: fixed !important;
    color: #F4F5FB !important;
}

a {
    color: #e6a760 !important;
    text-decoration: none !important;
}

a:hover {
    text-decoration: underline !important;
}

/* ===== Navbar (Header) ===== */
header.navbar,
header.navbar[style] {
    background-color: rgba(244, 245, 251, 0.05) !important;
    border-bottom: 1px solid rgba(232, 233, 245, 0.19) !important;
    padding: 1rem 0 !important;
}

.navbar-brand {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    color: #F4F5FB !important;
    font-weight: 600 !important;
    font-size: 20px !important;
}

.navbar-brand::before {
    content: "" !important;
    display: inline-block !important;
    width: 31px !important;
    height: 33px !important;
    background: url("../svg/Lambang%20perpustakaan.svg") no-repeat center !important;
    background-size: contain !important;
    flex-shrink: 0 !important;
}

.navbar-nav .nav-link {
    color: #F4F5FB !important;
    font-size: 16px !important;
    padding: 8px 16px !important;
    border-radius: 100px !important;
    transition: background-color 0.3s ease !important;
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active {
    background-color: rgba(255, 255, 255, 0.1) !important;
    color: #F4F5FB !important;
}

.navbar-toggler {
    border-color: rgba(232, 233, 245, 0.25) !important;
    color: #F4F5FB !important;
}

/* ===== Main Container & Headings ===== */
h1, h2, h3, h4, h5, h6,
.card-title,
.card-title[style],
h2[style] {
    color: #F4F5FB !important;
}

/* ===== Cards (Glass Dark Card) ===== */
.card {
    background-color: rgba(244, 245, 251, 0.04) !important;
    border: 1px solid rgba(232, 233, 245, 0.19) !important;
    border-radius: 22px !important;
    box-shadow: none !important;
    color: #F4F5FB !important;
}

.card-header,
.card-body,
.card-footer {
    background-color: transparent !important;
    color: #F4F5FB !important;
}

/* Kartu Ringkasan (Dashboard / Beranda) */
.col-md-4 .card {
    background-color: rgba(244, 245, 251, 0.05) !important;
    border: 1px solid rgba(232, 233, 245, 0.25) !important;
    border-radius: 22px !important;
    padding: 12px !important;
}

.col-md-4 .card .card-title {
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #F4F5FB !important;
}

.col-md-4 .card .fs-1,
.col-md-4 .card .display-4,
.col-md-4 .card p {
    font-size: 36px !important;
    font-weight: 700 !important;
    color: #F4F5FB !important;
}

/* ===== Formulir ===== */
.form-label,
label {
    color: #F4F5FB !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    margin-bottom: 8px !important;
}

.form-control,
.form-select,
input,
select,
textarea {
    background-color: rgba(20, 20, 37, 0.4) !important;
    border: 1px solid rgba(232, 233, 245, 0.19) !important;
    border-radius: 12px !important;
    color: #F4F5FB !important;
    padding: 12px 16px !important;
    font-size: 15px !important;
}

.form-control:focus,
.form-select:focus,
input:focus,
select:focus,
textarea:focus {
    background-color: rgba(20, 20, 37, 0.6) !important;
    border-color: #F4F5FB !important;
    color: #F4F5FB !important;
    box-shadow: none !important;
}

.form-control::placeholder {
    color: #bbbacb !important;
    opacity: 0.6 !important;
}

/* ===== Tombol ===== */
.btn-primary {
    background-color: #F4F5FB !important;
    color: #1a1614 !important;
    border: none !important;
    padding: 12px 32px !important;
    border-radius: 100px !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    transition: opacity 0.2s ease !important;
}

.btn-primary:hover {
    background-color: #e2e4f0 !important;
    color: #1a1614 !important;
    opacity: 0.9 !important;
}

.btn-warning {
    background-color: rgba(244, 245, 251, 0.08) !important;
    color: #F4F5FB !important;
    border: 1px solid rgba(232, 233, 245, 0.19) !important;
    border-radius: 100px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 6px 16px !important;
}

.btn-warning:hover {
    background-color: rgba(244, 245, 251, 0.18) !important;
    color: #F4F5FB !important;
}

.btn-danger {
    background-color: rgba(255, 157, 157, 0.1) !important;
    color: #ff9d9d !important;
    border: 1px solid rgba(255, 157, 157, 0.3) !important;
    border-radius: 100px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 6px 16px !important;
}

.btn-danger:hover {
    background-color: rgba(255, 157, 157, 0.2) !important;
    color: #ff9d9d !important;
}

/* ===== Tabel ===== */
.table,
.table-striped,
.table-hover {
    --bs-table-bg: transparent !important;
    --bs-table-striped-bg: rgba(255, 255, 255, 0.02) !important;
    --bs-table-hover-bg: rgba(255, 255, 255, 0.04) !important;
    --bs-table-color: #F4F5FB !important;
    --bs-table-border-color: rgba(232, 233, 245, 0.19) !important;
    color: #F4F5FB !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border: 1px solid rgba(232, 233, 245, 0.19) !important;
    border-radius: 22px !important;
    overflow: hidden !important;
}

.table thead,
.table thead[style] {
    background-color: rgba(255, 255, 255, 0.05) !important;
}

.table th {
    color: #bbbacb !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    padding: 16px 24px !important;
    border-bottom: 1px solid rgba(232, 233, 245, 0.19) !important;
    background-color: rgba(255, 255, 255, 0.05) !important;
}

.table td {
    color: #F4F5FB !important;
    padding: 16px 24px !important;
    border-bottom: 1px solid rgba(232, 233, 245, 0.19) !important;
    background-color: transparent !important;
}

/* ===== Footer ===== */
footer {
    color: rgba(255, 255, 255, 0.4) !important;
    text-align: center !important;
    padding: 2rem 0 !important;
}
