/* Data table · 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: Table. */
/* families/data-table/family.css */
.dt th{font-family:var(--font-voice);font-stretch:var(--font-stretch-title);font-variation-settings:normal;letter-spacing:0}
/* families/data-table/family.css */
.dt-wrap{position:relative;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--r-card)}
/* families/data-table/family.css */
.dt-scroll{overflow-x:auto;border-radius:var(--r-card)}
/* families/data-table/family.css */
.dt-scroll.y{overflow:auto}
/* families/data-table/family.css */
.dt{width:100%;font-size:var(--text-body)}
/* families/data-table/family.css */
.dt th{position:sticky;top:0;z-index:3;height:var(--row-th);padding:0 var(--s-3);background:hsl(var(--muted));border-bottom:1px solid hsl(var(--border));text-align:left;font-size:var(--text-small);font-weight:var(--w-semibold);color:hsl(var(--muted-foreground));white-space:nowrap;vertical-align:middle}
/* families/data-table/family.css */
.dt-wrap>.dt th:first-child, .dt-wrap>.dt-scroll>.dt th:first-child{border-top-left-radius:calc(var(--r-card) - 1px)}
/* families/data-table/family.css */
.dt-wrap>.dt th:last-child, .dt-wrap>.dt-scroll>.dt th:last-child{border-top-right-radius:calc(var(--r-card) - 1px)}
/* families/data-table/family.css */
.dt td{height:var(--row);padding:var(--s-2) var(--s-3);border-bottom:1px solid hsl(var(--border));vertical-align:middle;background:hsl(var(--card));transition:background-color var(--motion-hover),height var(--motion-sheet-in),padding var(--motion-sheet-in)}
/* families/data-table/family.css */
.dt tbody tr:last-child td{border-bottom:0}
/* families/data-table/family.css */
.dt tbody tr:hover td, .dt tr.is-hover td{background:hsl(var(--muted))}
/* families/data-table/family.css */
.dt tr.is-sel td{background:hsl(var(--accent))}
/* families/data-table/family.css */
.dt tr.is-sel:hover td{background:hsl(var(--accent))}
/* families/data-table/family.css */
.dt tr.is-focus td{box-shadow:var(--e-row-focus)}
/* families/data-table/family.css */
.dt tr.is-focus td:first-child{box-shadow:var(--e-row-focus-first)}
/* families/data-table/family.css */
.dt tr.is-off td{color:hsl(var(--muted-foreground))}
/* families/data-table/family.css */
.dt tr.is-off .dt-ph{opacity:.6}
/* families/data-table/family.css */
.dt tr[hidden]{display:none}
/* families/data-table/family.css */
.dt .num{text-align:right}
/* families/data-table/family.css */
.dt th.num{text-align:right}
/* families/data-table/family.css */
.dt th.num .dt-sort{flex-direction:row-reverse;margin-right:-6px;margin-left:0}
/* families/data-table/family.css */
.dt .w-cb{width:44px;padding-right:0}
/* families/data-table/family.css */
.dt .w-act{width:84px}
/* families/data-table/family.css */
.dt .nw{white-space:nowrap}
/* families/data-table/family.css */
.dt a{text-decoration:none}
/* families/data-table/family.css */
.dt a:hover{text-decoration:underline;text-decoration-color:hsl(var(--foreground)/.3)}
/* families/data-table/family.css */
.dt-prod{display:flex;align-items:center;gap:var(--s-3);min-width:0}
/* families/data-table/family.css */
.dt-prod>span{min-width:0}
/* families/data-table/family.css */
.dt-t1{display:block;font-weight:var(--w-medium);color:hsl(var(--foreground));line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* families/data-table/family.css */
.dt-t2{display:block;font:var(--w-regular) var(--text-small)/1.35 var(--font-code);color:hsl(var(--muted-foreground));white-space:nowrap}
/* families/data-table/family.css */
.dt-ph{width:30px;height:40px;border-radius:var(--r-media);flex:none;background:var(--studio);box-shadow:inset 0 0 0 1px hsl(var(--foreground)/.08)}
/* families/data-table/family.css */
.dt-ph.lg{width:42px;height:56px}
/* families/data-table/family.css */
.dt-ph.none{display:grid;place-items:end center;padding-bottom:3px}
/* families/data-table/family.css */
.dt-ph.none .dt-sw{position:absolute;inset:0;opacity:.9}
/* families/data-table/family.css */
.dt-ph.none b{position:relative;font:var(--w-medium) var(--text-8)/1 var(--font-code);color:hsl(var(--primary-foreground));letter-spacing:0}
/* families/data-table/family.css */
.dt-cloth{display:flex;align-items:center;gap:var(--s-2);min-width:0}
/* families/data-table/family.css */
.dt-cloth .code{white-space:nowrap}
/* families/data-table/family.css */
.dt-cloth small{display:block;font-size:var(--text-small);color:hsl(var(--muted-foreground));line-height:1.3}
/* families/data-table/family.css */
.dt-money{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
/* families/data-table/family.css */
.dt-money b{font-weight:var(--w-semibold)}
/* families/data-table/family.css */
.dt-date{white-space:nowrap;font-variant-numeric:tabular-nums}
/* families/data-table/family.css */
.dt-date small{display:block;font-size:var(--text-small);color:hsl(var(--muted-foreground))}
/* families/data-table/family.css */
.dt-ver{font:var(--w-medium) var(--text-code)/1 var(--font-code)}
/* families/data-table/family.css */
.dt-code{display:inline-flex;align-items:center;gap:var(--s-1);font:var(--text-code)/1.3 var(--font-code);white-space:nowrap}
/* families/data-table/family.css */
.dt-state{display:inline-flex;align-items:center;gap:var(--s-2);white-space:nowrap}
/* families/data-table/family.css */
.dt-state.bad{color:hsl(var(--destructive))}
/* families/data-table/family.css */
.dt-state.warn{color:hsl(var(--warning))}
/* families/data-table/family.css */
.dt tr.dt-detail td{background:hsl(var(--muted)/.5);height:auto;padding:var(--s-4) var(--s-4) var(--s-4) 56px}
/* families/data-table/family.css */
.dt tr.dt-detail:hover td{background:hsl(var(--muted)/.5)}
/* families/data-table/family.css */
.dt-frozen .fz{position:sticky;left:0;z-index:2}
/* families/data-table/family.css */
.dt-frozen th.fz{z-index:4}
/* families/data-table/family.css */
.dt-frozen .fz2{left:44px}
/* families/data-table/family.css */
.dt-frozen .fz-last::after{content:"";position:absolute;top:0;bottom:-1px;right:-12px;width:12px;pointer-events:none;opacity:0;background:linear-gradient(90deg,var(--sticky-edge),hsl(var(--foreground)/0));transition:opacity var(--motion-hover)}
/* families/data-table/family.css */
.dt-scroll.is-scrolled .fz-last::after{opacity:1}
/* families/data-table/family.css */
.dt-frozen .fz-last{border-right:1px solid hsl(var(--border))}
/* families/data-table/family.css */
.dt-wide{min-width:1320px}
/* families/data-table/family.css */
.dt-ph.none b{color:hsl(var(--foreground));background:hsl(var(--background)/.85);padding:2px 3px;border-radius:var(--r-chip);font-size:var(--text-8-5)}
/* families/data-table/family.css */
.dt-ph.lg.none b{font-size:var(--text-9)}
/* families/data-table/family.css */
.dt-ph.none .dt-sw{width:auto;height:auto;border-radius:0}
/* families/data-table/family.css */
.dt-ph.none b{white-space:nowrap}
