/* Oneglobal Client Portal - shared login shell (every facility) */
:root {
  --og-teal: #004851; --og-teal60: #669BA0; --og-teal40: #99BDC1;
  --bg-page: #F7F6F4; --border: rgba(0,72,81,0.18); --border-mid: rgba(0,72,81,0.28);
  --text: #1A1815; --muted: #5A5754; --hint: #8A8784;
}
* { box-sizing: border-box; }
body { margin: 0; font-family: 'Segoe UI', sans-serif; background: var(--bg-page); color: var(--text); }
.ogp-view { min-height: 100vh; display: flex; flex-direction: column; }
.ogp-band { background: var(--og-teal); padding: 22px 32px; display: flex; align-items: center; justify-content: space-between; }
.ogp-mark { font-family: Georgia, serif; font-size: 28px; color: #fff; letter-spacing: -0.5px; }
.ogp-mark span { color: var(--og-teal40); }
.ogp-band-right { color: var(--og-teal40); font-size: 12px; text-align: right; line-height: 18px; }
.ogp-centre { flex: 1; display: flex; align-items: center; justify-content: center; padding: 24px; }
.ogp-card { background: #fff; border: 1px solid var(--border); border-radius: 8px; padding: 40px; width: 100%;
            max-width: 420px; box-shadow: 0 4px 16px rgba(0,0,0,0.06); }
.ogp-kicker { font-size: 11px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; color: var(--og-teal60); }
.ogp-card h1 { font-family: Georgia, serif; color: var(--og-teal); font-size: 24px; font-weight: normal; margin: 4px 0 8px; }
.ogp-card p { color: var(--muted); font-size: 14px; line-height: 21px; margin: 0 0 24px; }
.ogp-card input { width: 100%; padding: 12px 14px; font-size: 15px; font-family: inherit; border: 1px solid var(--border-mid);
                  border-radius: 6px; margin-bottom: 16px; }
.ogp-card input:focus { outline: 2px solid var(--og-teal40); border-color: var(--og-teal); }
.ogp-card button { width: 100%; padding: 12px; background: var(--og-teal); color: #fff; border: none; border-radius: 6px;
                   font-size: 15px; font-family: inherit; cursor: pointer; }
.ogp-card button:disabled { opacity: 0.6; cursor: default; }
.ogp-error { color: #3F2021; background: #FBEEE9; border-left: 4px solid #ECBAA8; font-size: 13px; padding: 10px 12px;
             margin-top: 14px; display: none; }
.ogp-foot { text-align: center; color: var(--hint); font-size: 11px; padding: 16px; }
#ogp-content { display: none; }
#ogp-logout { display: none; position: fixed; top: 0; right: 0; padding: 14px 18px; z-index: 1000; }
#ogp-logout span { font-size: 12px; color: var(--og-teal); background: #fff; border: 1px solid var(--border);
                   border-radius: 14px; padding: 5px 12px; cursor: pointer; }
