/* Account + owner pages (uses tokens from styles.css) */
body.portal{min-height:100vh;display:flex;flex-direction:column}
.portal main{flex:1;padding:36px 0 60px}
.pcard{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px;margin-bottom:20px}
.pcard h2{font-size:34px;margin-bottom:6px}
.pcard h3{font-size:24px;margin-bottom:10px}
.pcard p.sub{color:var(--mute);margin-bottom:16px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
.tabs{display:flex;gap:8px;margin-bottom:16px}
.tabs button{flex:1;background:transparent;border:2px solid var(--line);color:var(--ink);font:700 15px var(--body);padding:10px;border-radius:8px;cursor:pointer}
.tabs button.on{background:var(--green);color:#03150a;border-color:var(--green)}
.stack{display:grid;gap:14px}
.linkbtn{background:none;border:0;color:var(--green);font:600 14px var(--body);cursor:pointer;text-decoration:underline;padding:0}
.bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:18px}
.bar h1{font-size:clamp(34px,5vw,52px)}
.pill{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:99px;background:#12331a;color:var(--lime)}
.pill.new{background:#3a3a12;color:#ffe97a}.pill.bid_sent{background:#0e3a55;color:#8fd3ff}.pill.accepted,.pill.scheduled{background:#12331a;color:var(--lime)}
.pill.paid{background:var(--green);color:#03150a}.pill.declined,.pill.cancelled{background:#3a1616;color:#ff9a8a}.pill.done{background:#2b2b3d;color:#c9c9ff}
.job{border:1px solid var(--line);border-radius:12px;padding:18px;margin-bottom:14px;background:rgba(6,26,11,.6)}
.job header{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;justify-content:space-between;margin-bottom:8px}
.job h4{font-family:var(--head);font-size:24px;text-transform:uppercase}
.job .meta{color:var(--mute);font-size:14px;margin:2px 0}
.job .notes{margin:8px 0;white-space:pre-wrap}
.thumbs{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.thumbs img{width:88px;height:88px;object-fit:cover;border-radius:8px;border:1px solid var(--line);cursor:pointer}
.bid{background:#0b3a15;border:1px solid var(--green);border-radius:10px;padding:14px;margin:10px 0}
.bid b{font-family:var(--head);font-size:36px;color:var(--lime)}
.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.drop{border:2px dashed var(--line);border-radius:10px;padding:16px;text-align:center;color:var(--mute)}
.prev{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.prev div{position:relative}
.prev img{width:72px;height:72px;object-fit:cover;border-radius:8px}
.prev button{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;border:0;background:#c0392b;color:#fff;cursor:pointer;line-height:1}
.cardline{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.lb{position:fixed;inset:0;background:rgba(0,0,0,.88);display:none;place-items:center;z-index:99;padding:16px}
.lb.on{display:grid}.lb img{max-width:100%;max-height:100%;border-radius:8px}
.hidden{display:none!important}
.mini{display:flex;flex-wrap:wrap;gap:8px;align-items:end;margin-top:12px}
.mini label{flex:1;min-width:140px}
@media(max-width:820px){.two{grid-template-columns:1fr}}
