/* Base styles and variables for BugemaPayments */
:root{
    --brand:#0e6ba8; /* primary */
    --brand-dark:#0b5687;
    --accent:#2e7d32; /* success */
    --text:#0f172a;
    --muted:#64748b;
    --border:#e6e8ec;
    --bg:#f4f6fb;
}

*{box-sizing:border-box}

html,body{height:100%}
body{
    font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial,sans-serif;
    background:var(--bg);
    color:var(--text);
    margin:0;
}

/* Typography */
h1,h2,h3,h4,h5,h6{color:var(--text);margin:0}
small{color:var(--muted)}

/* Links */
a{color:#0b5ed7;text-decoration:none}

/* Forms */
label{display:block;margin:.5rem 0 .3rem;color:#1f2937;font-size:14px}
input[type=text],
input[type=email],
input[type=password]{
    width:100%;
    padding:12px 14px;
    border:1px solid #c9ced6;
    border-radius:12px;
    font-size:14px;
    outline:none;
    background:#fff;
    transition:border-color .15s ease, box-shadow .15s ease;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=password]:focus{
    border-color: var(--brand);
    box-shadow:0 0 0 3px rgba(14,107,168,.15);
}
input::placeholder{color:#9aa4b2}

/* Layout helpers */
.row{display:flex;align-items:center}
.mt-12{margin-top:12px}
.mt-20{margin-top:20px}
.ml-8{margin-left:8px}
.text-center{text-align:center}
.text-right{text-align:right}
.nowrap{white-space:nowrap}

/* Lists */
.errorlist{color:#b00020;margin:0 0 12px 0;list-style:none;padding:0}

/* Buttons - base reset (colors set per-context) */
.btn{
    display:inline-block;
    color:#fff;
    border:none;
    border-radius:10px;
    padding:12px 16px;
    font-size:14px;
    cursor:pointer;
    text-decoration:none;
}

/* Tables (generic) */
table{width:100%;border-collapse:collapse}
th,td{padding:8px 10px;border-bottom:1px solid #eee;text-align:left}

/* Cards (generic app content container) */
.card{background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 2px 10px rgba(2,6,23,.06);padding:18px 20px}

/* Muted text */
.muted{color:#666}

/* Links helpers */
.link-danger{color:#c62828}


/* Utilities added */
.justify-between{justify-content:space-between}
.btn-block{width:100%}
