/* portal/src/portal.css — the client portal's own few styles. The form itself uses OWEN's owen.css tokens (light theme). */
:root { --pc-gold: #908051; --pc-ink: #22201b; --pc-muted: #6f6a5d; --pc-bg: #f4f2ec; --pc-line: #e4e0d5; }
body { margin: 0; background: var(--pc-bg); color: var(--pc-ink); font-family: Arial, Helvetica, sans-serif; }
.pc-card { max-width: 460px; margin: 10vh auto; background: #fff; border: 1px solid var(--pc-line); border-top: 4px solid var(--pc-gold);
  border-radius: 8px; padding: 28px 32px; }
.pc-brand { font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--pc-gold); }
.pc-card h1 { font-size: 22px; margin: 10px 0 16px; }
.pc-card p { line-height: 1.55; }
.pc-card button, .pc-card form button { background: var(--pc-gold); color: #fff; border: 0; border-radius: 6px; padding: 10px 18px; font-size: 15px; cursor: pointer; }
.pc-card input { font-size: 22px; letter-spacing: 6px; width: 9em; padding: 8px 10px; border: 1px solid var(--pc-line); border-radius: 6px; margin-right: 8px; }
.pc-err { color: #a2412e; }
.pc-small { font-size: 13px; color: var(--pc-muted); }
.pc-small a { color: var(--pc-gold); }
.pc-app { background: var(--bg-base, #fff); }
.pc-top { display: flex; align-items: center; gap: 16px; padding: 12px 20px; border-bottom: 1px solid var(--pc-line); background: #fff; }
.pc-top .pc-brand { flex: 1; }
.pc-link { background: none; border: 0; color: var(--pc-gold); cursor: pointer; font-size: 14px; }
#usf-client { max-width: 1200px; margin: 0 auto; padding: 16px; }
@media (max-width: 640px) { .pc-card { margin: 4vh 16px; padding: 22px; } }
