:root{--brand:#2c7ef4;--accent:#00bf63;--bg:#f7f8fb;--card:#fff;--text:#111827;--muted:#6b7280;--border:#e5e7eb}
*{box-sizing:border-box} body{margin:0;font:16px/1.5 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;color:var(--text);background:var(--bg)}
.container{max-width:1100px;margin:0 auto;padding:24px}
.nav{background:#fff;border-bottom:1px solid var(--border);min-height:88px}
.nav-inner{max-width:1100px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:12px}
.brand img{height:56px;width:56px;object-fit:contain}
.brand-title{font-size:26px;font-weight:900;color:var(--brand)}
.nav-links .link{margin-left:14px;display:inline-flex;align-items:center;gap:4px}
.nav-icon{width:16px;height:16px;display:inline-block;color:var(--brand)}
.link{color:var(--brand);text-decoration:none}.link:hover{text-decoration:underline}
.subnav{background:#f0f4ff;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.danger{color:#d00}
.grid{display:grid;gap:18px}.grid.kpis{grid-template-columns:repeat(3, minmax(0,1fr))}
.card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:18px}
.card h3{margin:0 0 6px 0;font-size:12px;color:var(--muted)}
.kpi .value{font-size:28px;font-weight:800}
.row{display:flex; justify-content:space-between; align-items:center}
.button{background:var(--brand);color:#fff;border:0;border-radius:10px;padding:10px 14px;font-weight:700;cursor:pointer}
input, select, textarea{border:1px solid var(--border);border-radius:10px;padding:10px;width:100%}
.table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden}
.table th,.table td{padding:10px;border-bottom:1px solid var(--border);text-align:left}
.small{color:var(--muted);font-size:12px}
.flashes{margin-bottom:12px}.flash{padding:10px;border-radius:10px;background:#eef6ff;color:#083d77}.flash.error{background:#fee2e2;color:#b91c1c;border:1px solid #fca5a5}
.checkbox-inline{display:flex;align-items:center;gap:8px;white-space:nowrap}

.bulkbar{display:flex;gap:10px;align-items:center;margin:10px 0}
.readonly{padding:10px;border:1px dashed var(--border);border-radius:10px;background:#fafafa}

/* Global bold text color rules */
strong, b,
h1, h2, h3, h4, h5, h6,
.kpi .value {
  color: var(--brand);
}

/* Ensure primary buttons with brand background keep white text */
.button,
.button strong,
.button b {
  color: #ffffff;
}

/* --- HOVER EFFECTS --- */
a,
.link,
button,
.button,
input[type="submit"],
input[type="button"] {
  transition: transform 0.1s ease; 
}

a:hover,
.link:hover,
button:hover,
.button:hover,
input[type="submit"]:hover,
input[type="button"]:hover {
  box-shadow: none !important; 
  outline: none !important;    
  border-color: transparent !important;
  /* ADDED: Underline text on hover */
  text-decoration: underline !important;
}

/* NUCLEAR OPTION FOR BROWSER DEFAULTS */
*:focus, *:active, *:focus-visible {
    outline: none !important;
    box-shadow: none !important;
}
* {
    -webkit-tap-highlight-color: transparent !important;
}