.vm-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.vm-heading h3{margin:6px 0 0}.vm-card>p{margin:14px 0;line-height:1.6}.vm-add{display:flex;align-items:flex-end;gap:12px;margin-top:22px;max-width:760px}.vm-add label{display:grid;gap:8px;flex:1;min-width:0;font-size:13px;color:var(--slate)}.vm-add input{width:100%;min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:10px;color:var(--navy);background:var(--surface);font:inherit}.vm-add input:focus-visible{outline:2px solid #5865e8;outline-offset:2px}.vm-add button{min-height:42px;white-space:nowrap}.vm-help{font-size:12px;color:var(--slate);line-height:1.6}.vm-feedback{margin:16px 0;font-size:13px}.vm-feedback:empty{display:none}.vm-card td small{display:block;color:var(--slate);margin-top:4px}.vm-status{display:inline-block;padding:5px 10px;border-radius:30px;font-size:11px;color:#067a69;background:#00a58e12}.vm-status.pending{color:#896000;background:#e6ab1317}.vm-actions{margin-top:16px}.vm-card td:first-child{overflow-wrap:anywhere}.vm-card button[disabled],.vm-card input[disabled]{opacity:.6}@media(max-width:600px){.vm-add{flex-direction:column;align-items:stretch}.vm-heading{align-items:flex-start}.vm-card .vb-table table{min-width:580px}}
@media(max-width:600px){.vm-card .vb-table{overflow:visible}.vm-card .vm-table{min-width:0;width:100%;display:block}.vm-table thead{display:none}.vm-table tbody{display:block}.vm-card .vm-table tr{display:grid;padding:14px;border-bottom:1px solid var(--line);gap:10px}.vm-card .vm-table tr:last-child{border-bottom:0}.vm-card .vm-table td{display:block;width:auto!important;padding:0;border:0;white-space:normal}.vm-card .vm-table td:first-child{font-size:13px}.vm-card .vm-table td:last-child{display:flex;justify-content:flex-start}.vm-status.pending{white-space:normal}}

/* ── Seats and entity access (added with supabase/visionx-entity-access.sql) ── */
.vm-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.vm-own{padding:13px 15px;border:1px solid var(--line);border-radius:11px;background:var(--panel);font-size:13px;line-height:1.6}
.vm-seats{margin:18px 0 6px;padding:15px 16px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.vm-seats-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13.5px}
.vm-seats-top span{font:500 11.5px 'IBM Plex Mono',monospace;color:var(--slate)}
.vm-seats-bar{height:8px;border-radius:5px;background:var(--line);overflow:hidden;margin:10px 0 2px}
.vm-seats-bar span{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,var(--teal),color-mix(in srgb,var(--teal) 60%,#15b8a0))}
.vm-seats.full .vm-seats-bar span{background:#d6a741}
.vm-seats .vm-help{margin:8px 0 0}
.vm-addform{margin-top:20px;max-width:760px}
.vm-addform .vm-add{margin-top:0}
.vm-scope{border:1px solid var(--line);border-radius:11px;padding:10px 14px 12px;margin:12px 0 0;min-width:0}
.vm-scope legend{padding:0 6px;font:600 10px 'IBM Plex Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--slate)}
.vm-radio,.vm-check{display:flex;align-items:flex-start;gap:10px;padding:6px 0;font-size:13px;cursor:pointer;min-height:24px}
.vm-radio input,.vm-check input{width:16px;height:16px;margin:2px 0 0;flex:none;accent-color:var(--teal);cursor:pointer}
.vm-radio small,.vm-check small{display:block;font-size:11.5px;color:var(--slate);margin-top:2px}
.vm-check small{display:inline;margin:0 0 0 7px;font-family:'IBM Plex Mono',monospace}
.vm-ents{margin:4px 0 0 26px;padding:6px 0 0 14px;border-left:2px solid var(--line);display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:0 18px}
.vm-ents[hidden]{display:none}
.vm-access small{display:block;color:var(--slate);margin-top:4px;font-size:11.5px}
.vm-scope-all{font-weight:600}
.vm-scope-none{color:#d6a741;font-weight:600}
.vm-table-access td{vertical-align:top}
.vm-acts{white-space:nowrap}
.vm-acts .vb-btn+.vb-btn{margin-left:8px}
.vm-row-actions{margin-top:10px}
.vm-editing td{background:color-mix(in srgb,var(--teal) 6%,transparent)}
.vm-editing .vm-scope{margin-top:0}
@media(max-width:600px){
  .vm-ents{grid-template-columns:1fr;margin-left:8px}
  .vm-acts{white-space:normal}
  .vm-card .vm-table td.vm-acts{display:flex;flex-wrap:wrap;gap:8px}
  .vm-acts .vb-btn+.vb-btn{margin-left:0}
  .vm-card .vm-table td.vm-access{display:block}
}
