/*
  Travayoo base stylesheet
  ------------------------
  Keep this file small. Page/module CSS is loaded from /css/modules/*.css in _Layout.cshtml.
*/:root{--primary:#0F2A5F;--accent:#FDBA3B;--secondary:#081A3F;--bg:#F4F7FB;--text:#142033;--muted:#64748b;--card:#fff;--border:#BCD0E7;--dark:#081A3F;--header-bg:#fff;--menu-bg:#081A3F;--menu-text:#F8FAFC;--menu-icon:#FDBA3B;--button-bg:#F15A24;--button-text:#fff;--tenant-border:#BCD0E7;--theme-primary:#0F2A5F;--theme-primary-dark:#081A3F;--theme-accent:#FDBA3B;--theme-surface:#fff;--theme-soft:#F4F7FB;--theme-border:#BCD0E7;--theme-link:#0F2A5F;--theme-action:#F15A24;--theme-action-text:#fff;--table-header-bg:#081A3F;--table-header-bg-2:#0F2A5F;--table-header-text:#fff;--table-border:#BCD0E7;--table-sort-active:#FDBA3B;--shadow-sm:0 8px 20px rgba(15,23,42,.06);--shadow-md:0 16px 40px rgba(15,23,42,.10);--radius:14px}
*{box-sizing:border-box}
/* #region Modern scrollbars */:root{--scrollbar-size:9px;--scrollbar-track:#edf2f7;--scrollbar-thumb:#94a3b8;--scrollbar-thumb-hover:#64748b}
html{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}
*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}
*::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}
*::-webkit-scrollbar-track{background:transparent}
html::-webkit-scrollbar-track,body::-webkit-scrollbar-track{background:var(--scrollbar-track)}
*::-webkit-scrollbar-thumb{min-height:34px;border:2px solid transparent;border-radius:999px;background-color:var(--scrollbar-thumb);background-clip:padding-box}
*::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}
*::-webkit-scrollbar-corner{background:transparent}
.side-menu,.top-menu{scrollbar-color:rgba(255,255,255,.42) transparent}
.side-menu::-webkit-scrollbar-thumb,.top-menu::-webkit-scrollbar-thumb{background-color:rgba(255,255,255,.38)}
.side-menu::-webkit-scrollbar-thumb:hover,.top-menu::-webkit-scrollbar-thumb:hover{background-color:rgba(255,255,255,.62)}
/* #endregion */ html,body{margin:0;min-height:100%;width:100%;max-width:100%;overflow-x:hidden}
body{font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);font-size:14px}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font-family:inherit}
button{cursor:pointer}
img{max-width:100%}
.content{background:linear-gradient(180deg,#f7f9fd 0,#f4f7fb 130px);padding:18px 24px 26px;min-height:calc(100vh - 68px)}
.panel,.legacy-panel,.report-card,.stat-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}
.panel,.legacy-panel{padding:18px;margin-bottom:16px}
.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.panel-header h2{margin:0;font-size:18px}
.form-group{display:flex;flex-direction:column;gap:6px}
.form-group label,.filter-title{font-size:13px;font-weight:700;color:#273449}
.form-control,input[type=text],input[type=password],input[type=email],select,textarea{border:1px solid #cfd9e7;border-radius:10px;background:#fff;min-height:38px;padding:8px 11px;font-size:14px;color:#142033;outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 14%,transparent)}
.filter-row{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px;align-items:end}
.filter-row.compact{grid-template-columns:repeat(6,minmax(120px,1fr))}
.btn-row{display:flex;gap:8px;align-items:center;margin-top:12px;flex-wrap:wrap}
.btn{border:0;border-radius:10px;padding:10px 15px;background:var(--primary);color:#fff;font-weight:700}
.btn.secondary{background:#374151}
.btn.light{background:#eef4ff;color:var(--primary);border:1px solid #d7e5fb}
.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:12px;background:#fff;max-height:68vh}
table{width:100%;border-collapse:collapse;background:#fff}
th,td{padding:9px 10px;border-bottom:1px solid var(--border);white-space:nowrap;font-size:13px;vertical-align:top}
th{background:#111827;color:#fff;text-align:left;position:sticky;top:0;z-index:2}
.amount,.num{text-align:right}
.tdRemarks{white-space:normal;min-width:180px}
.empty-state,.empty-row{text-align:center;color:var(--muted);padding:34px}
.alert{padding:10px 12px;border-radius:10px;background:#fee2e2;color:#991b1b;margin-bottom:12px}
.report-grid,.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.report-card{padding:16px;display:flex;flex-direction:column;gap:7px}
.report-card:hover{border-color:var(--primary);box-shadow:0 12px 26px rgba(31,79,143,.12)}
.report-card span{color:var(--muted)}
.report-card small,.group-title{color:var(--primary);font-weight:700;text-transform:uppercase;font-size:11px;letter-spacing:.06em}
.report-card strong{font-size:16px}
.group-title{grid-column:1/-1;margin-top:6px}
.summary-bar{display:flex;justify-content:flex-end;gap:30px;background:#eaf5ff;padding:10px 12px;border:1px solid #cce4ff;border-radius:8px;margin-bottom:12px;font-weight:700}
.no-margin{margin:0}
.mt{margin-top:18px}
@media(max-width:900px){.content{padding:14px}
.report-grid,.stats-grid,.filter-row,.filter-row.compact{grid-template-columns:1fr}
.panel-header{align-items:flex-start;flex-direction:column}
.summary-bar{display:block}
.table-wrap{max-height:none}
}
@media print{.app-header,.top-menu,.side-menu,.breadcrumb-line,.no-print{display:none !important}
.left-menu-mode .main{margin-left:0 !important;width:100% !important}
.content{padding:0;background:#fff}
.table-wrap{max-height:none;overflow:visible}
}

/* Global typography refinement: keep Inter/Segoe UI but remove the overly heavy look. */
body{font-weight:400}
h1,h2,h3,h4,h5,h6,strong,b{font-weight:600}
.form-group label,.filter-title,.btn,.report-card small,.group-title,.summary-bar,th{font-weight:600}
