/* Portal pages on the light corporate theme (loaded after site.css). */
.pmain{padding-top:48px;padding-bottom:72px;max-width:1000px}
.pmain h1{font-size:clamp(26px,3.4vw,34px);margin-bottom:8px}
.pmain h2{font-size:21px;margin:0 0 14px}
.pmain h3{font-size:17px}
.pmain .card{margin:20px 0;box-shadow:0 1px 2px rgba(16,40,38,.04)}
.pmain .card .card{box-shadow:none;background:var(--bg2)}
.narrow{max-width:540px;margin-left:auto;margin-right:auto}
.muted{color:var(--muted)}
.hidden{display:none!important}
.pmain label{display:block;font-weight:600;color:var(--ink);margin:16px 0 6px;font-size:15px}
.hint{font-weight:400;color:var(--muted);font-size:14px}
.pmain input,.pmain select,.pmain textarea{width:100%;padding:11px 12px;font:inherit;font-size:16px;color:var(--ink);background:#fff;border:1px solid #C9D6D4;border-radius:8px}
.pmain input:focus,.pmain select:focus,.pmain textarea:focus{outline:3px solid rgba(127,209,199,.6);outline-offset:1px;border-color:var(--teal)}
.pmain input[type=file]{padding:9px;background:var(--bg2)}
.pmain input[type=checkbox]{width:18px;height:18px;accent-color:var(--teal);padding:0}
.pmain textarea{min-height:130px;resize:vertical}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}@media(max-width:680px){.grid2{grid-template-columns:1fr}}
.checks label{display:flex;gap:10px;align-items:center;font-weight:400;margin:8px 0}
fieldset{border:0;min-width:0}legend{font-weight:600;color:var(--ink);margin:16px 0 6px}
.pmain .btn{padding:11px 20px}.pmain .btn.sm{padding:0 14px;height:36px}
.btn[disabled]{opacity:.6;cursor:wait}
.msg{padding:12px 14px;border-radius:8px;margin:14px 0;display:none;font-size:15px}
.msg.show{display:block}.msg.err{background:#FDECEA;color:#8A1F14;border:1px solid #F5C6C0}.msg.ok{background:#E6F6EE;color:#14532D;border:1px solid #B7E4C9}
.privacy{font-size:14.5px;color:var(--body);border-left:4px solid var(--mint);padding:12px 16px;margin:20px 0;background:var(--mint-l);border-radius:0 8px 8px 0}
.privacy strong{color:var(--ink)}
table{width:100%;border-collapse:collapse;font-size:15px}
th{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600;background:var(--bg2)}
th,td{text-align:left;padding:10px 10px;border-bottom:1px solid var(--line);vertical-align:top}
tbody tr:hover{background:#FAFCFC}
.tblwrap{overflow-x:auto}
.st{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12.5px;font-weight:700;background:#E3EEF9;color:#1E4E8C;vertical-align:middle;white-space:nowrap}
.st-under_review{background:#EDE7FB;color:#4C2E91}.st-needs_info{background:#FFF1D6;color:#7A4B00}.st-approved{background:#E1F5EA;color:#14612F}.st-rejected{background:#FDE7E4;color:#9A2414}
.pmain .note{background:#FFF8E8;border:1px solid #F1DDAE;border-left:4px solid #E3B341;border-radius:8px;padding:10px 14px;margin:10px 0;white-space:pre-wrap;color:#5A4210}
.docs{list-style:none;margin:8px 0}.docs li{margin:4px 0;overflow-wrap:anywhere}
.tabs{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0;align-items:center}
#filter{width:auto;max-width:100%;height:36px;padding:0 10px}
dl.kv{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px}dl.kv dt{color:var(--muted)}dl.kv dd{overflow-wrap:anywhere}
@media(max-width:520px){dl.kv{grid-template-columns:1fr;gap:0}dl.kv dd{margin-bottom:8px}}
#ts{min-height:65px}
/* header logout button keeps the compact header row */
.hact #logout{white-space:nowrap}
.pmain .card.narrow{margin-left:auto;margin-right:auto}body[data-admin] .pmain>h1{text-align:center}body[data-admin] .pmain>h1:has(~#panel:not(.hidden)){text-align:left}
