/* Gulf Trust Team Portal - UI */
:root{
  --navy:#0B2E4D; --navy-2:#0F3A61; --brand:#1B75BC; --brand-dark:#145A93;
  --gold:#C6A15B; --ink:#101B2D; --slate:#47566C; --muted:#6b7a90;
  --line:#e1e7ef; --surface:#fff; --bg:#eef2f7; --danger:#c0453b; --ok:#1c8a56;
  --radius:14px; --shadow:0 1px 2px rgba(11,46,77,.06),0 12px 30px -16px rgba(11,46,77,.25);
  --font:"Hanken Grotesk",-apple-system,"Segoe UI",system-ui,sans-serif;
  --head:"Plus Jakarta Sans",var(--font);
}
*{box-sizing:border-box}
body{margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);line-height:1.55}
h1,h2,h3{font-family:var(--head);color:var(--navy);letter-spacing:-.01em;margin:0 0 .5rem}
a{color:var(--brand);text-decoration:none}
a:hover{text-decoration:underline}
.muted{color:var(--muted)}
code{background:#eef2f7;padding:.1em .35em;border-radius:5px;font-size:.9em}

/* ---- Auth (login / setup) ---- */
body.auth{min-height:100dvh;display:grid;place-items:center;padding:24px;
  background:linear-gradient(160deg,var(--navy),var(--navy-2))}
.auth-card{background:var(--surface);border-radius:18px;box-shadow:var(--shadow);
  width:100%;max-width:380px;padding:32px 28px;text-align:center}
.auth-logo{height:46px;width:auto;margin-bottom:18px}
.auth-card h1{font-size:1.4rem}
.auth-card form{margin-top:18px;text-align:left;display:grid;gap:14px}
.alert{background:#fbeae8;color:var(--danger);border:1px solid #f0cec9;
  border-radius:10px;padding:10px 12px;font-size:.92rem;margin:4px 0 0}

/* ---- Form controls ---- */
label{display:grid;gap:6px;font-weight:600;font-size:.9rem;color:var(--navy)}
input,select,textarea{font:inherit;color:var(--ink);background:#fff;
  border:1.5px solid var(--line);border-radius:10px;padding:11px 12px;width:100%}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);
  box-shadow:0 0 0 3px rgba(27,117,188,.15)}
textarea{min-height:80px;resize:vertical}
button,.btn{font-family:var(--head);font-weight:700;font-size:1rem;cursor:pointer;
  border:none;border-radius:999px;padding:12px 22px;background:var(--brand);color:#fff;
  transition:background .2s,transform .2s}
button:hover,.btn:hover{background:var(--brand-dark);text-decoration:none}
.btn--gold{background:var(--gold);color:var(--navy)}
.btn--ghost{background:transparent;color:var(--navy);border:1.5px solid var(--line)}

/* ---- App shell ---- */
.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;
  background:var(--navy);padding:12px 20px;position:sticky;top:0;z-index:10}
.topbar__brand img{height:34px;width:auto;display:block;filter:brightness(0) invert(1)}
.topbar__right{display:flex;align-items:center;gap:16px}
.topbar__user{color:#cfe0f0;font-size:.9rem}
.topbar__link{color:#fff;font-weight:600;font-size:.9rem}
.wrap{max-width:900px;margin:0 auto;padding:28px 20px 64px}
.page-title{font-size:1.6rem}
.foot{text-align:center;color:var(--muted);font-size:.8rem;padding:24px}

/* ---- Report choice cards ---- */
.choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin-top:22px}
.choice{display:flex;flex-direction:column;gap:6px;background:var(--surface);
  border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);
  transition:transform .2s,border-color .2s}
.choice:hover{transform:translateY(-3px);border-color:var(--brand);text-decoration:none}
.choice__tag{font-family:var(--head);font-weight:700;font-size:.7rem;letter-spacing:.08em;
  text-transform:uppercase;color:var(--gold)}
.choice__name{font-family:var(--head);font-weight:800;font-size:1.15rem;color:var(--navy)}
.choice__desc{color:var(--slate);font-size:.9rem}
