/* Mango intra-tool Dashboard — shared styling.
   Palette shared by the Dashboard and, via the shared header, every tool. */
:root{
  --green:#8BC400; --green-dark:#6b9900; --dark:#53565A; --nearwhite:#F5F5F3;
  --border:#E2E2DF; --border-strong:#CCCCCC; --white:#FFFFFF; --danger:#B23A2E;
  --muted:#8a8d8f; --ok:#2f7d32; --ok-bg:#eaf5e1;
}
*{box-sizing:border-box;}
body{margin:0;font-family:'Red Hat Display',Arial,sans-serif;background:var(--nearwhite);color:var(--dark);}

/* ---- Centred card (login / change password) ---- */
.center{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;}
.box{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:32px 30px;width:100%;max-width:380px;box-shadow:0 6px 24px rgba(0,0,0,.06);}
/* Sign-in / change-password card brand: the Mango logo, with the wordmark as a
   fallback if the image is missing (see docs/CONNECTING_A_TOOL.md → the logo file).
   The app chrome uses the shared header instead — css/mango-header.css. */
.brand{display:flex;align-items:center;gap:8px;margin-bottom:4px;}
.brand .brand-logo{height:34px;width:auto;display:block;}
.brand .word{font-weight:700;font-size:24px;color:var(--green-dark);}
.brand .rest{font-weight:400;font-size:15px;color:var(--dark);}
p.sub{font-size:13px;color:var(--muted);margin:0 0 22px;}
label{display:block;font-size:12px;font-weight:500;margin:14px 0 4px;}
input,select{width:100%;font-family:inherit;font-size:14px;padding:9px 11px;border:1px solid var(--border-strong);border-radius:6px;background:var(--white);}
button{margin-top:20px;width:100%;background:var(--green);border:none;color:#fff;font-family:inherit;font-weight:700;font-size:15px;padding:11px;border-radius:6px;cursor:pointer;}
button:hover{background:var(--green-dark);}
button:disabled{opacity:.6;cursor:default;}
button.ghost{background:transparent;color:var(--green-dark);border:1px solid var(--border-strong);}
button.ghost:hover{background:var(--nearwhite);}
button.small{width:auto;margin:0;padding:6px 12px;font-size:13px;font-weight:500;}
button.danger{background:var(--danger);}
button.danger:hover{background:#8f2d24;}
.msg{margin-top:16px;font-size:13px;padding:10px 12px;border-radius:6px;background:#fbeae7;color:var(--danger);display:none;}
.msg.ok{background:var(--ok-bg);color:var(--ok);}
.msg.show{display:block;}

/* ---- App chrome ----
   The page header is the SHARED header: css/mango-header.css + js/mango-header.js,
   identical in the Dashboard and in every tool. Don't add a bespoke header here.
   The old `header.top` rules were removed with it. */
main{max-width:960px;margin:28px auto;padding:0 24px;}
h1{font-size:22px;margin:0 0 4px;}
h2{font-size:16px;margin:28px 0 10px;}
.hint{font-size:13px;color:var(--muted);}

/* Tool tiles (portal) */
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;margin-top:14px;}
.tile{display:block;background:var(--white);border:1px solid var(--border);border-radius:10px;padding:18px;text-decoration:none;color:var(--dark);}
.tile:hover{border-color:var(--green);box-shadow:0 4px 14px rgba(0,0,0,.05);}
.tile .name{font-weight:700;color:var(--green-dark);}
.tile .desc{font-size:13px;color:var(--muted);margin-top:4px;}

/* Table (admin) */
.card{background:var(--white);border:1px solid var(--border);border-radius:10px;padding:18px;margin-top:14px;}
table{width:100%;border-collapse:collapse;font-size:14px;}
th,td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--border);}
th{font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);}
td .row-actions{display:flex;gap:8px;flex-wrap:wrap;}
.pill{display:inline-block;font-size:12px;padding:2px 8px;border-radius:10px;background:var(--nearwhite);border:1px solid var(--border);}
.pill.admin{background:#eef7d9;border-color:#d3e6a3;color:var(--green-dark);}
.pill.off{background:#f4eceb;border-color:#e3cfcc;color:var(--danger);}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.temp-box{margin-top:14px;padding:14px;border-radius:8px;background:var(--ok-bg);border:1px solid #cfe6b8;}
.temp-box code{font-size:18px;font-weight:700;letter-spacing:.04em;color:var(--dark);}
.temp-box .cap{font-size:12px;color:var(--ok);margin-bottom:6px;}
@media(max-width:640px){.grid2{grid-template-columns:1fr;}}
