body.portal{background:var(--cream);padding-bottom:70px} .phdr{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--green-deep);color:#EEF0E4;position:sticky;top:0;z-index:10}
.phdr img{width:38px;height:38px;border-radius:50%} .phdr b{font-family:var(--serif);font-weight:500;display:block;line-height:1.1;font-size:1.05rem} .phdr span{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;opacity:.8} .phdr .out{margin-left:auto;color:#fff;font-size:.85rem}
.pmain{max-width:720px;margin:0 auto;padding:16px 14px 30px} .pmain h1{font-size:1.45rem} .pmain .card{margin-bottom:12px}
.pnav{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--paper);border-top:1px solid var(--line);z-index:10} .pnav a{flex:1;text-align:center;padding:10px 4px;font-size:.78rem;font-weight:700;color:var(--muted);text-decoration:none} .pnav a.active{color:var(--green-deep);border-top:2px solid var(--green)}
.pcard{display:flex;gap:12px;align-items:center;padding:14px 16px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);margin-bottom:10px;text-decoration:none;color:var(--ink)} .pcard .ic{width:40px;height:40px;border-radius:12px;background:var(--green-pale);display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex:none} .pcard b{display:block} .pcard span{font-size:.85rem;color:var(--muted)}
.pin input{font-size:1.6rem;letter-spacing:.4em;text-align:center;max-width:220px}
.hero{background:var(--green);color:#fff;border-radius:var(--r);padding:18px;margin-bottom:14px;display:flex;gap:14px;align-items:center} .hero img{width:64px} .hero h1{color:#fff;margin:0;font-size:1.3rem} .hero p{margin:2px 0 0;opacity:.9;font-size:.9rem}
.btn{min-height:42px} .pmain .f input,.pmain .f select,.pmain .f textarea{font-size:1rem} .msg{background:var(--paper);border-left:3px solid var(--green);padding:10px 12px;border-radius:0 var(--r) var(--r) 0;margin-bottom:8px}
@media(min-width:800px){body.portal{padding-bottom:20px} .pnav{position:static;max-width:720px;margin:0 auto 10px;border:1px solid var(--line);border-radius:var(--r)}}
