/* ธีม L&L Accounting วางทับ Phoenix — สี / ฟอนต์ตาม ll-accounting-landing-page (https://www.lnlbiz.co.th/)
   ฟ้า #3d9be9 และทอง #b89300 คอนทราสต์กับตัวอักษรขาวไม่ถึง 4.5:1 → ใช้เป็นสีพื้น / เส้น / ตัวใหญ่เท่านั้น
   ปุ่มและลิงก์ใช้รุ่น -ink ที่เข้มกว่า (ผ่าน WCAG AA) แบบเดียวกับ landing page */

:root {
    --lnl-navy: #1a395a;
    --lnl-navy-dark: #12283f;
    --lnl-blue: #3d9be9;
    --lnl-blue-ink: #1f6fb2;
    --lnl-blue-ink-dark: #155f9e;
    --lnl-gold: #b89300;
    --lnl-gold-ink: #8a6f00;
    --lnl-accent: var(--lnl-gold);
    --lnl-text: #23222b;
    --lnl-text-secondary: #61646c;
    --lnl-bg: #f4f5f8;
    --lnl-border: #e2e5ea;

    --phoenix-font-sans-serif: "Archivo", "Noto Sans Thai", -apple-system, "Segoe UI", Roboto, sans-serif;
    --phoenix-body-font-family: var(--phoenix-font-sans-serif);
    --phoenix-primary: var(--lnl-blue-ink);
    --phoenix-primary-rgb: 31, 111, 178;
    --phoenix-link-color: var(--lnl-blue-ink);
    --phoenix-link-hover-color: var(--lnl-blue-ink-dark);
    --phoenix-body-bg: var(--lnl-bg);
    --phoenix-body-color: var(--lnl-text);
    --phoenix-emphasis-color: var(--lnl-navy);

    --phoenix-navbar-top-bg-color: var(--lnl-navy);
    --phoenix-navbar-top-border-color: var(--lnl-navy-dark);
    --phoenix-navbar-top-link-color: #fff;
    --phoenix-navbar-vertical-bg-color: #fff;
    --phoenix-navbar-vertical-link-color: var(--lnl-text);
    --phoenix-navbar-vertical-link-hover-color: var(--lnl-blue-ink);
    --phoenix-navbar-vertical-link-active-color: var(--lnl-blue-ink);
    --phoenix-navbar-vertical-label-color: var(--lnl-gold-ink);
}

body {
    font-family: var(--phoenix-font-sans-serif);
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4 {
    color: var(--lnl-navy);
    font-weight: 600;
}

/* ตัวเลขบัญชีให้หลักตรงกัน แต่ยังเป็นฟอนต์เดียวกับหน้า (ไม่ใช้ monospace ที่แข็ง) */
.font-monospace {
    font-family: inherit !important;
    font-variant-numeric: tabular-nums;
}

/* ─── ปุ่ม ──────────────────────────────────────────────────────────────── */
.btn-primary {
    --phoenix-btn-bg: var(--lnl-blue-ink);
    --phoenix-btn-border-color: var(--lnl-blue-ink);
    --phoenix-btn-hover-bg: var(--lnl-blue-ink-dark);
    --phoenix-btn-hover-border-color: var(--lnl-blue-ink-dark);
    --phoenix-btn-active-bg: var(--lnl-navy);
    --phoenix-btn-active-border-color: var(--lnl-navy);
    --phoenix-btn-disabled-bg: var(--lnl-blue-ink);
}

.btn {
    border-radius: .5rem;
    font-weight: 500;
}

/* ─── แถบบน: สีกรมท่าแบบ header ของ landing page ───────────────────────────── */
.navbar-top {
    background-color: var(--lnl-navy) !important;
    border-bottom: 3px solid var(--lnl-gold);
}

.navbar-top,
.navbar-top .logo-text,
.navbar-top .nav-item > span {
    color: #fff;
}

.navbar-top .navbar-toggle-icon .toggle-line {
    background-color: #fff;
}

.brand-mark {
    width: 34px;
    height: 34px;
    border-radius: 8px;
}

.navbar-top .logo-text {
    font-family: "Archivo", sans-serif;
    font-weight: 600;
    letter-spacing: .02em;
    font-size: 1.15rem;
}

.navbar-top .logo-sub {
    color: #d8ebfb;
    font-size: .75rem;
}

.navbar-top .btn-phoenix-secondary {
    background: transparent;
    border: 1px solid rgba(255, 255, 255, .45);
    color: #fff;
}

.navbar-top .btn-phoenix-secondary:hover {
    background: rgba(255, 255, 255, .12);
    color: #fff;
}

.navbar-top .company-switch {
    background-color: var(--lnl-navy-dark);
    border-color: rgba(255, 255, 255, .35);
    color: #fff;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
}

.navbar-top label {
    color: #d8ebfb !important;
}

/* ─── เมนูซ้าย: รายการที่เลือกมีแถบทองด้านซ้าย ─────────────────────────────── */
.navbar-vertical {
    border-right: 1px solid var(--lnl-border);
}

.navbar-vertical .nav-link.active {
    background: #d8ebfb55;
    box-shadow: inset 3px 0 0 var(--lnl-gold);
    font-weight: 600;
}

.navbar-vertical-label {
    letter-spacing: .06em;
}

/* ─── การ์ด / ตาราง ──────────────────────────────────────────────────────── */
.card {
    border: 1px solid var(--lnl-border);
    border-radius: .75rem;
    box-shadow: 0 4px 24px #96a3b514;
}

.table thead th {
    color: var(--lnl-navy);
    background: #f4f5f8;
    font-weight: 600;
}

/* ─── หน้า login ──────────────────────────────────────────────────────────── */
.login-page {
    background: linear-gradient(180deg, var(--lnl-navy) 0%, var(--lnl-navy-dark) 42%, var(--lnl-bg) 42%);
    min-height: 100vh;
}

.login-page .card {
    border-top: 4px solid var(--lnl-gold);
}
