/* Kanban · the kit rules for this component, quoted from phase-2/kit (kit v3) by phase-4/src/build_pack.py.
   Tokens come from ../../styles.css. Build it as: Card. */
/* families/data-display/family.css */
.dd-drop{font-size:var(--text-micro);color:hsl(var(--muted-foreground));padding-left:calc(22px + var(--s-3));margin:-2px 0 2px}
/* families/data-display/family.css */
.dd-board{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--s-3);padding:var(--s-4);background:hsl(var(--muted)/.55)}
/* families/data-display/family.css */
.dd-col{display:flex;flex-direction:column;gap:var(--s-2);min-width:0;padding:var(--s-2);border-radius:var(--r-card);border:1px solid transparent;transition:background-color var(--motion-hover),border-color var(--motion-hover)}
/* families/data-display/family.css */
.dd-col-h{display:flex;align-items:center;gap:var(--s-2);padding:var(--s-1) var(--s-1) var(--s-2);font:var(--w-semibold) var(--text-card)/1 var(--font-voice);font-stretch:var(--font-stretch-title)}
/* families/data-display/family.css */
.dd-col-h .dot{width:8px;height:8px}
/* families/data-display/family.css */
.dd-wip{margin-left:auto;font:var(--w-medium) var(--text-micro)/1 var(--font-ui);font-variant-numeric:tabular-nums;color:hsl(var(--muted-foreground));padding:3px 6px;border-radius:var(--r-chip);background:hsl(var(--background));border:1px solid hsl(var(--border))}
/* families/data-display/family.css */
.dd-col.full .dd-wip{color:hsl(var(--warning));border-color:hsl(var(--warning)/.45);background:hsl(var(--warning)/var(--status-soft-alpha))}
/* families/data-display/family.css */
.dd-col.over .dd-wip{color:hsl(var(--destructive));border-color:hsl(var(--destructive)/.45);background:hsl(var(--destructive)/var(--status-soft-alpha))}
/* families/data-display/family.css */
.dd-col.drop, .dd-col.is-drop{background:hsl(var(--accent));border-color:hsl(var(--ring)/.5);border-style:dashed}
/* families/data-display/family.css */
.dd-col-list{display:flex;flex-direction:column;gap:var(--s-2);min-height:64px}
/* families/data-display/family.css */
.dd-col-more{font-size:var(--text-small);color:hsl(var(--muted-foreground));padding:var(--s-1) var(--s-1);text-decoration:none}
/* families/data-display/family.css */
.dd-col-more:hover{color:hsl(var(--foreground));text-decoration:underline}
/* families/data-display/family.css */
.dd-col-empty{font-size:var(--text-small);color:hsl(var(--muted-foreground));border:1px dashed hsl(var(--secondary-border));border-radius:var(--r-control);padding:var(--s-3);text-align:center}
/* families/data-display/family.css */
.dd-card{position:relative;display:flex;flex-direction:column;gap:6px;padding:10px var(--s-3) var(--s-3);background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--r-card);box-shadow:var(--e-1);cursor:grab;text-decoration:none;color:inherit;transition:border-color var(--motion-hover),box-shadow var(--motion-focus),transform var(--motion-press),opacity var(--motion-hover)}
/* families/data-display/family.css */
.dd-card:hover, .dd-card.is-hover{border-color:hsl(var(--secondary-border));box-shadow:var(--e-card-hover)}
/* families/data-display/family.css */
.dd-card:focus-visible, .dd-card.is-focus{outline:0;border-color:hsl(var(--ring));box-shadow:var(--focus-ring)}
/* families/data-display/family.css */
.dd-card.dragging, .dd-card.is-drag{cursor:grabbing;transform:rotate(-1.2deg);box-shadow:var(--e-pop);border-color:hsl(var(--ring)/.6)}
/* families/data-display/family.css */
.dd-card.ghost{opacity:.4}
/* families/data-display/family.css */
.dd-card.stale{box-shadow:var(--e-rail-strong-warning),var(--e-1)}
/* families/data-display/family.css */
.dd-card.blocked{box-shadow:var(--e-rail-strong-destructive),var(--e-1)}
/* families/data-display/family.css */
.dd-card-top{display:flex;align-items:center;gap:var(--s-2)}
/* families/data-display/family.css */
.dd-card-top .code{font-weight:var(--w-medium)}
/* families/data-display/family.css */
.dd-card-top .r{margin-left:auto;display:flex;align-items:center;gap:var(--s-1)}
/* families/data-display/family.css */
.dd-card-g{display:flex;gap:var(--s-2);align-items:center}
/* families/data-display/family.css */
.dd-card-g .thumb{width:24px;height:32px}
/* families/data-display/family.css */
.dd-card-g b{display:block;font:var(--w-medium) var(--text-small)/1.3 var(--font-ui)}
/* families/data-display/family.css */
.dd-card-g span{display:block;font-size:var(--text-micro);color:hsl(var(--muted-foreground))}
/* families/data-display/family.css */
.dd-card-b{display:flex;align-items:center;gap:var(--s-2);font-size:var(--text-micro);color:hsl(var(--muted-foreground))}
/* families/data-display/family.css */
.dd-card-b .money{margin-left:auto;color:hsl(var(--foreground));font-weight:var(--w-semibold);font-size:var(--text-small)}
/* families/data-display/family.css */
.dd-flag{display:inline-flex;align-items:center;gap:4px;font:var(--w-semibold) var(--text-micro)/1 var(--font-ui)}
/* families/data-display/family.css */
.dd-flag.stale{color:hsl(var(--warning))}
/* families/data-display/family.css */
.dd-flag.blocked{color:hsl(var(--destructive))}
/* families/data-display/family.css */
.dd-flag svg{width:12px;height:12px}
/* families/data-display/family.css */
.dd-grip{color:hsl(var(--muted-foreground));opacity:.55}
/* families/data-display/family.css */
.dd-stabs{display:flex;gap:var(--s-2);overflow-x:auto;padding:var(--s-1) var(--s-4) var(--s-3);margin:0 calc(var(--s-4) * -1);scrollbar-width:none}
/* families/data-display/family.css */
.dd-stabs::-webkit-scrollbar{display:none}
/* families/data-display/family.css */
.dd-stab{flex:none;display:inline-flex;align-items:center;gap:var(--s-2);height:var(--control-h-m);padding:0 var(--s-3);border:1px solid hsl(var(--border));border-radius:var(--r-control);background:hsl(var(--background));font:var(--w-semibold) var(--text-btn-sm)/1 var(--font-voice);font-stretch:var(--font-stretch-title);color:hsl(var(--muted-foreground));transition:background-color var(--motion-hover),color var(--motion-hover),border-color var(--motion-hover)}
/* families/data-display/family.css */
.dd-stab .n{font:var(--w-medium) var(--text-micro)/1 var(--font-ui);font-variant-numeric:tabular-nums}
/* families/data-display/family.css */
.dd-stab[aria-selected=true]{background:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:hsl(var(--primary))}
/* families/data-display/family.css */
.dd-stab .dot{width:6px;height:6px}
/* families/data-display/family.css */
.dd-stab[aria-selected=true] .dot{box-shadow:0 0 0 2px hsl(var(--primary-foreground)/.6)}
/* families/data-display/family.css */
.dd-stage-h{display:flex;align-items:center;gap:var(--s-2);margin-bottom:var(--s-2)}
/* families/data-display/family.css */
.dd-stage-h .dd-wip{margin-left:auto}
/* families/data-display/family.css */
.dd-who{display:flex;align-items:center;gap:var(--s-2);min-width:0}
/* families/data-display/family.css */
.dd-who .avatar{width:22px;height:22px;font-size:var(--text-10)}
/* families/data-display/family.css */
.dd-who .avatar.sys{background:hsl(var(--muted));color:hsl(var(--muted-foreground))}
/* families/data-display/family.css */
.dd-who span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* families/data-display/family.css */
.dd-att{display:flex;gap:var(--s-2);margin-top:var(--s-2)}
/* families/data-display/family.css */
.dd-att span{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 var(--s-2);border:1px solid hsl(var(--border));border-radius:var(--r-control);background:hsl(var(--card));font-size:var(--text-small)}
/* families/data-display/family.css */
.dd-meas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:hsl(var(--border));border:1px solid hsl(var(--border));border-radius:var(--r-control);overflow:hidden;margin-top:var(--s-2)}
/* families/data-display/family.css */
.dd-meas div{background:hsl(var(--card));padding:var(--s-2) var(--s-3)}
/* families/data-display/family.css */
.dd-meas span{display:block;font-size:var(--text-micro);color:hsl(var(--muted-foreground))}
/* families/data-display/family.css */
.dd-meas b{font:var(--w-semibold) var(--text-body)/1.3 var(--font-ui);font-variant-numeric:tabular-nums}
/* families/data-display/family.css */
.dd-att{flex-wrap:wrap}
/* families/data-display/family.css */
.dd-att span{white-space:nowrap}
