/* Organization Portal – small additions on top of shared/ui.css */
.gcards{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr))}
.gcard{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:14px;border:1.5px solid hsl(var(--border));background:hsl(var(--card));text-align:left;font:inherit;color:inherit;cursor:pointer;min-width:0}
.gcard:hover{border-color:hsl(var(--input))}
.gcard.on{border-color:var(--pc);background:var(--pt);box-shadow:0 0 0 3px color-mix(in srgb,var(--pc) 18%,transparent)}
.gcard .gn{font-weight:700;font-size:14px;display:flex;align-items:center;gap:8px}
.gcard .gm{font-size:12px;color:hsl(var(--muted-foreground));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gcard .gp{font-size:17px;font-weight:700;font-variant-numeric:tabular-nums;margin-top:4px}
.gcard .gs{font-size:11.5px;color:hsl(var(--muted-foreground))}
[data-theme="dark"] .gcard.on{background:hsl(var(--accent))}
.chk{display:flex;gap:12px;align-items:flex-start;padding:12px 18px;border-top:1px solid hsl(var(--border))}
.chk:first-child{border-top:0}
.chk .cn{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;flex:none;font-weight:700;font-size:12px;background:hsl(var(--muted));color:hsl(var(--muted-foreground))}
.chk.done .cn{background:hsl(var(--success));color:#fff}
.chk.now .cn{background:var(--pc);color:#fff}
.chk .ct{font-weight:600}
.chk .cs{font-size:12.5px;color:hsl(var(--muted-foreground))}
.wkd{display:inline-flex;gap:6px;flex-wrap:wrap}
.wkd button{width:42px;height:34px;border-radius:9px;border:1px solid hsl(var(--input));background:hsl(var(--card));font:inherit;font-size:12.5px;font-weight:600;color:hsl(var(--muted-foreground))}
.wkd button.on{background:var(--pc);border-color:var(--pc);color:#fff}
.picklist{max-height:240px;overflow:auto;border:1px solid hsl(var(--border));border-radius:12px}
.picklist label{display:flex;gap:10px;align-items:center;padding:8px 12px;border-top:1px solid hsl(var(--border));cursor:pointer;font-size:13px}
.picklist label:first-child{border-top:0}
.picklist label:hover{background:hsl(var(--accent)/.5)}
.qchips{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.qchips button{border:1px dashed hsl(var(--input));background:hsl(var(--card));border-radius:99px;padding:3px 10px;font:inherit;font-size:12px;color:hsl(var(--muted-foreground));max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.qchips button:hover{border-color:var(--pc);color:hsl(var(--foreground))}
.sticky-side{position:sticky;top:76px;align-self:start}
@media (max-width:1100px){.sticky-side{position:static}}
.okbig{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:hsl(var(--success)/.12);color:hsl(var(--success));margin:0 auto 10px}
.okbig .i{width:32px;height:32px}
.okbig.warn{background:hsl(var(--warning)/.14);color:hsl(var(--warning))}
.okbig.bad{background:hsl(var(--destructive)/.1);color:hsl(var(--destructive))}
.thread{display:flex;flex-direction:column;gap:10px;padding:16px 18px}
.bubble{max-width:min(620px,92%);padding:10px 14px;border-radius:14px;background:hsl(var(--muted));font-size:13.5px}
.bubble.me{align-self:flex-end;background:var(--pt);border:1px solid color-mix(in srgb,var(--pc) 25%,transparent)}
[data-theme="dark"] .bubble.me{background:hsl(var(--accent))}
.bubble small{display:block;color:hsl(var(--muted-foreground));font-size:11.5px;margin-top:4px}
.paytabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.ledger td.dr{color:hsl(var(--destructive))}
.ledger td.cr{color:hsl(var(--success))}
.bar2{display:flex;flex-direction:column;gap:4px;padding:10px 18px;border-top:1px solid hsl(var(--border))}
.bar2:first-child{border-top:0}
.bar2 .row{justify-content:space-between;flex-wrap:nowrap}
.bar2 .progress>i.over{background:hsl(var(--destructive))}
.bar2 .progress>i.warnb{background:hsl(var(--warning))}
.mini-map{height:260px;border-radius:12px;overflow:hidden}
.rowerr{color:hsl(var(--destructive));font-size:12px}
.rowwarn{color:hsl(var(--warning));font-size:12px}
.gridedit input,.gridedit select{height:32px;font-size:12.5px;min-width:90px;padding:0 8px}
.gridedit td{padding:4px 6px !important}
