@tensor_1/tokens 2.7.0 → 2.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/css/components.css +228 -0
- package/build/css/styles.css +228 -0
- package/package.json +1 -1
package/build/css/components.css
CHANGED
|
@@ -1560,3 +1560,231 @@
|
|
|
1560
1560
|
.uix-heartbeat--idle .uix-heartbeat__ping { display: none; }
|
|
1561
1561
|
.uix-live { display: inline-flex; align-items: center; gap: var(--uix-space-2); font-size: var(--uix-text-meta); font-weight: 500; color: var(--uix-text-hushed); }
|
|
1562
1562
|
}
|
|
1563
|
+
/* uix editorial-home kit — the intranet "editorial" landing patterns (INTRA-04):
|
|
1564
|
+
* page intro + search, shortcut grid, notice queue, featured stage + rundown,
|
|
1565
|
+
* section heads, content/rail grids, news lead, content list, resource grid,
|
|
1566
|
+
* stat line, event + status rows. Ported 1:1 from the approved TENSOR intranet
|
|
1567
|
+
* prototype (Docs/prototypes/intranet-reimagined/mockups.css); spacing/type
|
|
1568
|
+
* snapped to the --uix-* scales per the contract gate, editorial display sizes
|
|
1569
|
+
* justified in tests/raw-value-allowlist.json. Depends only on --uix-* tokens. */
|
|
1570
|
+
@layer uix.components {
|
|
1571
|
+
/* ── page intro — kicker/title/lede beside the search well ─────────────────── */
|
|
1572
|
+
.uix-page-intro { margin-top: var(--uix-space-6); display: grid; grid-template-columns: minmax(300px, 0.8fr) minmax(460px, 1.2fr); align-items: end; gap: var(--uix-space-7); }
|
|
1573
|
+
.uix-page-intro .uix-page-lede { margin-top: var(--uix-space-2); }
|
|
1574
|
+
.uix-page-kicker { margin: 0 0 var(--uix-space-2); color: var(--uix-text-hushed); font-size: var(--uix-text-meta); }
|
|
1575
|
+
.uix-page-title { max-width: 760px; margin: 0; font-family: var(--uix-font-heading); font-size: clamp(30px, 4vw, 48px); font-weight: 400; letter-spacing: -0.035em; line-height: 1.06; }
|
|
1576
|
+
.uix-page-lede { max-width: 680px; margin: var(--uix-space-3) 0 0; color: var(--uix-text-hushed); font-size: var(--uix-text-h3); }
|
|
1577
|
+
.uix-intro-search__label { margin: 0 0 var(--uix-space-2); color: var(--uix-text-hushed); font-size: var(--uix-text-meta); }
|
|
1578
|
+
|
|
1579
|
+
.uix-searchbar { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--uix-space-2); }
|
|
1580
|
+
.uix-searchbar .uix-input { min-height: 44px; padding-left: 42px; }
|
|
1581
|
+
.uix-searchbar__wrap { position: relative; }
|
|
1582
|
+
.uix-searchbar__wrap > svg { position: absolute; top: 50%; left: 14px; z-index: var(--uix-z-raised); width: 17px; height: 17px; color: var(--uix-text-hushed); transform: translateY(-50%); pointer-events: none; }
|
|
1583
|
+
|
|
1584
|
+
.uix-shortcut-grid { grid-column: 1 / -1; margin-top: var(--uix-space-4); display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--uix-space-2); }
|
|
1585
|
+
.uix-shortcut-grid .uix-btn { min-height: 42px; justify-content: flex-start; }
|
|
1586
|
+
|
|
1587
|
+
/* ── notice queue — rotating "important updates" banner ────────────────────── */
|
|
1588
|
+
.uix-notice { min-height: 48px; padding: var(--uix-space-2) var(--uix-space-4); display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: var(--uix-space-3); border-left: 2px solid var(--uix-text); background: var(--uix-bg-subtle); }
|
|
1589
|
+
.uix-notice__copy { margin: 0; font-size: var(--uix-text-body); }
|
|
1590
|
+
.uix-notice__copy strong { font-weight: 600; }
|
|
1591
|
+
.uix-notice__content { min-width: 0; }
|
|
1592
|
+
.uix-notice__meta { margin: var(--uix-space-1) 0 0; color: var(--uix-text-hushed); font-size: var(--uix-text-eyebrow); }
|
|
1593
|
+
.uix-notice__actions { display: flex; align-items: center; justify-content: flex-end; gap: var(--uix-space-2); }
|
|
1594
|
+
.uix-notice__position { margin-right: var(--uix-space-1); color: var(--uix-text-hushed); font-size: var(--uix-text-eyebrow); white-space: nowrap; }
|
|
1595
|
+
.uix-notice__arrow--previous svg { transform: rotate(180deg); }
|
|
1596
|
+
|
|
1597
|
+
/* ── featured briefing — ONE card: stage + rundown are zones inside it, split
|
|
1598
|
+
by an internal hairline. The selected rundown item grows a caret that sits
|
|
1599
|
+
on (and breaks) that hairline toward the stage, and its ordinal becomes a
|
|
1600
|
+
filled chip echoed by .uix-featured__now in the stage eyebrow — that chip
|
|
1601
|
+
pairing is what carries the selection link once the card stacks. ─────────── */
|
|
1602
|
+
.uix-featured { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(300px, 0.7fr); align-items: stretch; overflow: hidden; border: 1px solid var(--uix-border); border-radius: var(--uix-radius-md); background: var(--uix-surface); }
|
|
1603
|
+
.uix-page-intro + .uix-featured { margin-top: var(--uix-space-6); }
|
|
1604
|
+
|
|
1605
|
+
.uix-featured__stage { min-width: 0; min-height: 302px; display: grid; grid-template-columns: minmax(260px, 0.95fr) minmax(300px, 1.05fr); }
|
|
1606
|
+
.uix-featured__visual {
|
|
1607
|
+
min-height: 302px; padding: var(--uix-space-6) var(--uix-space-7); display: flex; align-items: flex-end;
|
|
1608
|
+
position: relative; overflow: hidden;
|
|
1609
|
+
background:
|
|
1610
|
+
linear-gradient(135deg, transparent 20%, color-mix(in srgb, var(--uix-text) 8%, transparent)),
|
|
1611
|
+
var(--uix-bg-subtle);
|
|
1612
|
+
}
|
|
1613
|
+
.uix-featured__visual::before,
|
|
1614
|
+
.uix-featured__visual::after { content: ""; position: absolute; border: 1px solid var(--uix-border-strong); border-radius: 50%; }
|
|
1615
|
+
.uix-featured__visual::before { width: 240px; height: 240px; top: -78px; right: -42px; }
|
|
1616
|
+
.uix-featured__visual::after { width: 144px; height: 144px; top: 72px; right: 56px; }
|
|
1617
|
+
.uix-featured__content { padding: var(--uix-space-7); display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
|
|
1618
|
+
.uix-featured__eyebrow { margin: 0 0 var(--uix-space-4); color: var(--uix-text-hushed); font-size: var(--uix-text-eyebrow); letter-spacing: var(--uix-tracking-eyebrow); text-transform: uppercase; }
|
|
1619
|
+
.uix-featured__title { margin: 0; font-family: var(--uix-font-heading); font-size: clamp(26px, 3vw, 38px); font-weight: 400; letter-spacing: -0.03em; line-height: 1.08; }
|
|
1620
|
+
.uix-featured__description { margin: var(--uix-space-3) 0 var(--uix-space-5); color: var(--uix-text-hushed); }
|
|
1621
|
+
.uix-featured__meta { margin: 0 0 var(--uix-space-5); color: var(--uix-text-hushed); font-size: var(--uix-text-meta); }
|
|
1622
|
+
.uix-featured__now { min-width: 22px; height: 22px; display: inline-grid; place-items: center; margin-right: var(--uix-space-2); border-radius: var(--uix-radius-pill); background: var(--uix-text); color: var(--uix-bg-app); font-variant-numeric: tabular-nums; letter-spacing: 0; }
|
|
1623
|
+
|
|
1624
|
+
.uix-story-signal { position: absolute; top: 26px; left: 28px; z-index: var(--uix-z-raised); }
|
|
1625
|
+
.uix-story-signal__value { display: block; font-family: var(--uix-font-heading); font-size: 48px; font-weight: 400; letter-spacing: -0.04em; line-height: 1; }
|
|
1626
|
+
.uix-story-signal__label { display: block; margin-top: var(--uix-space-2); color: var(--uix-text-hushed); font-size: var(--uix-text-meta); }
|
|
1627
|
+
|
|
1628
|
+
.uix-story-diagram { width: min(100%, 500px); position: relative; z-index: var(--uix-z-raised); display: grid; grid-template-columns: repeat(3, 1fr); align-items: end; gap: var(--uix-space-3); }
|
|
1629
|
+
.uix-story-diagram__bar { min-height: 52px; border: 1px solid var(--uix-border-strong); border-radius: var(--uix-radius-sm); background: color-mix(in srgb, var(--uix-surface) 84%, transparent); }
|
|
1630
|
+
.uix-story-diagram__bar:nth-child(2) { min-height: 104px; }
|
|
1631
|
+
.uix-story-diagram__bar:nth-child(3) { min-height: 126px; background: var(--uix-text); }
|
|
1632
|
+
|
|
1633
|
+
.uix-rundown { min-width: 0; padding: var(--uix-space-4); display: grid; grid-template-rows: auto minmax(0, 1fr); gap: var(--uix-space-3); border-left: 1px solid var(--uix-border); }
|
|
1634
|
+
.uix-rundown__head { padding: var(--uix-space-1) var(--uix-space-1) var(--uix-space-3); display: flex; align-items: flex-start; justify-content: space-between; gap: var(--uix-space-3); border-bottom: 1px solid var(--uix-border); }
|
|
1635
|
+
.uix-rundown__eyebrow { margin: 0; color: var(--uix-text-hushed); font-size: var(--uix-text-eyebrow); letter-spacing: 0.05em; text-transform: uppercase; }
|
|
1636
|
+
.uix-rundown__title { margin: var(--uix-space-1) 0 0; font-family: var(--uix-font-heading); font-size: 18px; font-weight: 400; }
|
|
1637
|
+
.uix-rundown__items { min-width: 0; display: grid; grid-template-rows: repeat(3, minmax(0, 1fr)); gap: var(--uix-space-2); }
|
|
1638
|
+
.uix-rundown__item { position: relative; min-width: 0; min-height: 68px; padding: var(--uix-space-3); display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: var(--uix-space-3); border: 1px solid transparent; border-radius: var(--uix-radius-sm); background: transparent; color: var(--uix-text); cursor: pointer; font: inherit; text-align: left; }
|
|
1639
|
+
.uix-rundown__item:hover { background: var(--uix-bg-hover); }
|
|
1640
|
+
.uix-rundown__item[data-selected="true"] { border-color: var(--uix-border); background: var(--uix-bg-active); }
|
|
1641
|
+
/* caret centered on the internal divider (16px zone pad + 1px hairline + half of the 12px glyph) */
|
|
1642
|
+
.uix-rundown__item[data-selected="true"]::before { content: ""; position: absolute; top: 50%; left: -23px; width: 12px; height: 12px; transform: translateY(-50%) rotate(45deg); background: var(--uix-surface); border-left: 1px solid var(--uix-border-strong); border-bottom: 1px solid var(--uix-border-strong); }
|
|
1643
|
+
.uix-rundown__number { color: var(--uix-text-hushed); font-size: var(--uix-text-eyebrow); font-variant-numeric: tabular-nums; }
|
|
1644
|
+
.uix-rundown__item[data-selected="true"] .uix-rundown__number { min-width: 22px; height: 22px; display: inline-grid; place-items: center; border-radius: var(--uix-radius-pill); background: var(--uix-text); color: var(--uix-bg-app); }
|
|
1645
|
+
.uix-rundown__topic,
|
|
1646
|
+
.uix-rundown__item-title { display: block; }
|
|
1647
|
+
.uix-rundown__topic { color: var(--uix-text-hushed); font-size: var(--uix-text-eyebrow); }
|
|
1648
|
+
.uix-rundown__item-title { margin-top: var(--uix-space-1); font-weight: 600; line-height: 1.2; }
|
|
1649
|
+
|
|
1650
|
+
/* ── section heads ─────────────────────────────────────────────────────────── */
|
|
1651
|
+
.uix-section-head { min-height: 36px; margin-bottom: var(--uix-space-3); display: flex; align-items: center; justify-content: space-between; gap: var(--uix-space-4); }
|
|
1652
|
+
.uix-section-title { margin: 0; font-family: var(--uix-font-heading); font-size: var(--uix-text-h2); font-weight: 400; letter-spacing: var(--uix-tracking-tight); }
|
|
1653
|
+
.uix-section-link { color: var(--uix-text-hushed); font-size: var(--uix-text-meta); text-decoration: none; }
|
|
1654
|
+
.uix-section-link:hover { color: var(--uix-text); }
|
|
1655
|
+
|
|
1656
|
+
/* ── content grid + rail ───────────────────────────────────────────────────── */
|
|
1657
|
+
.uix-content-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(280px, 0.75fr); gap: var(--uix-space-7); align-items: start; }
|
|
1658
|
+
.uix-content-grid--balanced { grid-template-columns: repeat(2, minmax(0, 1fr)); }
|
|
1659
|
+
.uix-content-grid > * { min-width: 0; }
|
|
1660
|
+
.uix-rail { display: grid; gap: var(--uix-space-4); }
|
|
1661
|
+
.uix-rail-card { padding: var(--uix-space-5); }
|
|
1662
|
+
.uix-rail-card__title { margin: 0; font-family: var(--uix-font-heading); font-size: 18px; font-weight: 400; }
|
|
1663
|
+
.uix-rail-card__meta { margin: var(--uix-space-1) 0 0; color: var(--uix-text-hushed); font-size: var(--uix-text-meta); }
|
|
1664
|
+
|
|
1665
|
+
/* ── news lead + content list ──────────────────────────────────────────────── */
|
|
1666
|
+
.uix-news-lead { padding: 0 0 var(--uix-space-5); border-bottom: 1px solid var(--uix-border); }
|
|
1667
|
+
.uix-news-lead__meta,
|
|
1668
|
+
.uix-list-meta { color: var(--uix-text-hushed); font-size: var(--uix-text-meta); }
|
|
1669
|
+
.uix-news-lead__title { margin: var(--uix-space-2) 0 var(--uix-space-1); font-family: var(--uix-font-heading); font-size: var(--uix-text-h2); font-weight: 400; letter-spacing: var(--uix-tracking-tight); }
|
|
1670
|
+
.uix-news-lead__summary { margin: 0; color: var(--uix-text-hushed); }
|
|
1671
|
+
|
|
1672
|
+
.uix-content-list { margin: 0; padding: 0; list-style: none; }
|
|
1673
|
+
.uix-content-list__item { min-height: 68px; padding: var(--uix-space-3) 0; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: var(--uix-space-4); border-bottom: 1px solid var(--uix-border); }
|
|
1674
|
+
.uix-content-list__item:last-child { border-bottom: 0; }
|
|
1675
|
+
.uix-content-list__title { margin: 0; font-weight: 600; }
|
|
1676
|
+
.uix-content-list__meta { margin: var(--uix-space-1) 0 0; color: var(--uix-text-hushed); font-size: var(--uix-text-meta); }
|
|
1677
|
+
|
|
1678
|
+
/* ── resource grid ─────────────────────────────────────────────────────────── */
|
|
1679
|
+
.uix-resource-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--uix-space-2); }
|
|
1680
|
+
.uix-resource-grid .uix-btn { min-height: 44px; justify-content: flex-start; }
|
|
1681
|
+
|
|
1682
|
+
/* ── stat line ─────────────────────────────────────────────────────────────── */
|
|
1683
|
+
.uix-stat-line { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--uix-border); }
|
|
1684
|
+
.uix-stat-line__item { padding: var(--uix-space-4) var(--uix-space-2) var(--uix-space-1) 0; }
|
|
1685
|
+
.uix-stat-line__value { display: block; font-size: 20px; font-variant-numeric: tabular-nums; }
|
|
1686
|
+
.uix-stat-line__label { color: var(--uix-text-hushed); font-size: var(--uix-text-eyebrow); }
|
|
1687
|
+
|
|
1688
|
+
/* ── event + status rows ───────────────────────────────────────────────────── */
|
|
1689
|
+
.uix-event-row { min-height: 64px; padding-block: var(--uix-space-3); display: grid; grid-template-columns: 42px minmax(0, 1fr); align-items: center; gap: var(--uix-space-3); border-bottom: 1px solid var(--uix-border); }
|
|
1690
|
+
.uix-event-row:last-child { border-bottom: 0; }
|
|
1691
|
+
.uix-event-date { text-align: center; }
|
|
1692
|
+
.uix-event-date__month { display: block; color: var(--uix-text-hushed); font-size: var(--uix-text-eyebrow); text-transform: uppercase; }
|
|
1693
|
+
.uix-event-date__day { display: block; font-size: 18px; font-variant-numeric: tabular-nums; }
|
|
1694
|
+
.uix-event-row__title { margin: 0; font-weight: 600; }
|
|
1695
|
+
.uix-event-row__meta { margin: var(--uix-space-1) 0 0; color: var(--uix-text-hushed); font-size: var(--uix-text-meta); }
|
|
1696
|
+
|
|
1697
|
+
.uix-status-row { min-height: 48px; display: flex; align-items: center; gap: var(--uix-space-3); border-bottom: 1px solid var(--uix-border); }
|
|
1698
|
+
.uix-status-row:last-child { border-bottom: 0; }
|
|
1699
|
+
.uix-status-row__name { flex: 1; }
|
|
1700
|
+
|
|
1701
|
+
/* ── responsive — ported 1:1 from the prototype's 920/620 breakpoints ──────── */
|
|
1702
|
+
@media (max-width: 920px) {
|
|
1703
|
+
.uix-page-intro,
|
|
1704
|
+
.uix-content-grid,
|
|
1705
|
+
.uix-content-grid--balanced,
|
|
1706
|
+
.uix-featured { grid-template-columns: 1fr; }
|
|
1707
|
+
|
|
1708
|
+
.uix-rundown { border-left: 0; border-top: 1px solid var(--uix-border); }
|
|
1709
|
+
.uix-rundown__items { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: 1fr; }
|
|
1710
|
+
/* stacked zones: the caret flips to point up at the stage above */
|
|
1711
|
+
.uix-rundown__item[data-selected="true"]::before { top: -23px; left: 22px; transform: rotate(45deg); border-bottom: 0; border-top: 1px solid var(--uix-border-strong); }
|
|
1712
|
+
|
|
1713
|
+
.uix-shortcut-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
|
|
1714
|
+
}
|
|
1715
|
+
|
|
1716
|
+
@media (max-width: 620px) {
|
|
1717
|
+
.uix-featured__stage { grid-template-columns: 1fr; }
|
|
1718
|
+
.uix-featured__visual { min-height: 190px; }
|
|
1719
|
+
.uix-featured__content { padding: var(--uix-space-6); }
|
|
1720
|
+
|
|
1721
|
+
.uix-rundown__items { grid-template-columns: 1fr; grid-template-rows: repeat(3, auto); }
|
|
1722
|
+
/* vertical item stack: the directional caret stops making sense — the
|
|
1723
|
+
ordinal chips (item number + .uix-featured__now) carry the pairing */
|
|
1724
|
+
.uix-rundown__item[data-selected="true"]::before { display: none; }
|
|
1725
|
+
|
|
1726
|
+
.uix-notice { grid-template-columns: auto minmax(0, 1fr); }
|
|
1727
|
+
.uix-notice > .uix-btn { grid-column: 2; justify-self: start; }
|
|
1728
|
+
.uix-notice__actions { grid-column: 1 / -1; width: 100%; justify-content: flex-start; flex-wrap: wrap; }
|
|
1729
|
+
.uix-notice__position { flex: 1; }
|
|
1730
|
+
|
|
1731
|
+
.uix-searchbar { grid-template-columns: 1fr; }
|
|
1732
|
+
.uix-searchbar .uix-btn { min-height: 44px; }
|
|
1733
|
+
|
|
1734
|
+
.uix-page-intro { margin-top: var(--uix-space-5); gap: var(--uix-space-5); }
|
|
1735
|
+
.uix-shortcut-grid { grid-template-columns: 1fr 1fr; }
|
|
1736
|
+
.uix-shortcut-grid .uix-btn { min-height: 48px; }
|
|
1737
|
+
|
|
1738
|
+
.uix-story-signal { top: 20px; left: 20px; }
|
|
1739
|
+
.uix-story-signal__value { font-size: var(--uix-text-display); }
|
|
1740
|
+
|
|
1741
|
+
.uix-resource-grid { grid-template-columns: 1fr; }
|
|
1742
|
+
|
|
1743
|
+
.uix-stat-line { grid-template-columns: 1fr; }
|
|
1744
|
+
.uix-stat-line__item { display: flex; align-items: baseline; justify-content: space-between; border-bottom: 1px solid var(--uix-border); }
|
|
1745
|
+
}
|
|
1746
|
+
}
|
|
1747
|
+
/* uix link patterns — the quiet link, for anchors whose CONTAINER is the affordance.
|
|
1748
|
+
*
|
|
1749
|
+
* The base layer styles anchors as in-text content links: --uix-link colour, and
|
|
1750
|
+
* classless [href] anchors carry a persistent underline (WCAG 1.4.1 / link-in-text-block —
|
|
1751
|
+
* a link sitting inside a run of same-coloured prose must not be distinguished by colour
|
|
1752
|
+
* alone). That contract is right for prose and wrong for composition slots where the
|
|
1753
|
+
* surrounding row/card already communicates interactivity: framework <Link>s passed into
|
|
1754
|
+
* kit title slots and table cells rendered brand-blue + bold + underlined — unreadable
|
|
1755
|
+
* noise at list density (TENSOR INTRA-04, operator-rejected).
|
|
1756
|
+
*
|
|
1757
|
+
* A quiet link inherits the surrounding text colour and shows its underline on
|
|
1758
|
+
* hover/focus. 1.4.1 is not in play: the link is the whole text of its block (a title,
|
|
1759
|
+
* a cell), not a link inside body copy. NEVER quiet a link inside prose — in-text links
|
|
1760
|
+
* keep the base blue + underline.
|
|
1761
|
+
*
|
|
1762
|
+
* Two forms:
|
|
1763
|
+
* • `.uix-link--quiet` — the opt-in utility, for block links outside the scoped slots
|
|
1764
|
+
* (whole-card links, event rows composed by hand, app-specific list patterns).
|
|
1765
|
+
* • quiet BY DEFAULT below — the editorial-home title slots and table data cells,
|
|
1766
|
+
* where every anchor is a block-level navigation target. `.uix-table td` keeps
|
|
1767
|
+
* `:not([class])` so class-bearing anchors in cells (`.uix-btn--link`, pills)
|
|
1768
|
+
* stay styled.
|
|
1769
|
+
* Depends only on --uix-* tokens. */
|
|
1770
|
+
@layer uix.components {
|
|
1771
|
+
.uix-link--quiet,
|
|
1772
|
+
.uix-content-list__title a,
|
|
1773
|
+
.uix-news-lead__title a,
|
|
1774
|
+
.uix-rundown__item-title a,
|
|
1775
|
+
.uix-event-row__title a,
|
|
1776
|
+
.uix-table td a:not([class]) { color: inherit; text-decoration: none; }
|
|
1777
|
+
|
|
1778
|
+
.uix-link--quiet:hover,
|
|
1779
|
+
.uix-link--quiet:focus-visible,
|
|
1780
|
+
.uix-content-list__title a:hover,
|
|
1781
|
+
.uix-content-list__title a:focus-visible,
|
|
1782
|
+
.uix-news-lead__title a:hover,
|
|
1783
|
+
.uix-news-lead__title a:focus-visible,
|
|
1784
|
+
.uix-rundown__item-title a:hover,
|
|
1785
|
+
.uix-rundown__item-title a:focus-visible,
|
|
1786
|
+
.uix-event-row__title a:hover,
|
|
1787
|
+
.uix-event-row__title a:focus-visible,
|
|
1788
|
+
.uix-table td a:not([class]):hover,
|
|
1789
|
+
.uix-table td a:not([class]):focus-visible { text-decoration: underline; }
|
|
1790
|
+
}
|
package/build/css/styles.css
CHANGED
|
@@ -1901,3 +1901,231 @@
|
|
|
1901
1901
|
.uix-heartbeat--idle .uix-heartbeat__ping { display: none; }
|
|
1902
1902
|
.uix-live { display: inline-flex; align-items: center; gap: var(--uix-space-2); font-size: var(--uix-text-meta); font-weight: 500; color: var(--uix-text-hushed); }
|
|
1903
1903
|
}
|
|
1904
|
+
/* uix editorial-home kit — the intranet "editorial" landing patterns (INTRA-04):
|
|
1905
|
+
* page intro + search, shortcut grid, notice queue, featured stage + rundown,
|
|
1906
|
+
* section heads, content/rail grids, news lead, content list, resource grid,
|
|
1907
|
+
* stat line, event + status rows. Ported 1:1 from the approved TENSOR intranet
|
|
1908
|
+
* prototype (Docs/prototypes/intranet-reimagined/mockups.css); spacing/type
|
|
1909
|
+
* snapped to the --uix-* scales per the contract gate, editorial display sizes
|
|
1910
|
+
* justified in tests/raw-value-allowlist.json. Depends only on --uix-* tokens. */
|
|
1911
|
+
@layer uix.components {
|
|
1912
|
+
/* ── page intro — kicker/title/lede beside the search well ─────────────────── */
|
|
1913
|
+
.uix-page-intro { margin-top: var(--uix-space-6); display: grid; grid-template-columns: minmax(300px, 0.8fr) minmax(460px, 1.2fr); align-items: end; gap: var(--uix-space-7); }
|
|
1914
|
+
.uix-page-intro .uix-page-lede { margin-top: var(--uix-space-2); }
|
|
1915
|
+
.uix-page-kicker { margin: 0 0 var(--uix-space-2); color: var(--uix-text-hushed); font-size: var(--uix-text-meta); }
|
|
1916
|
+
.uix-page-title { max-width: 760px; margin: 0; font-family: var(--uix-font-heading); font-size: clamp(30px, 4vw, 48px); font-weight: 400; letter-spacing: -0.035em; line-height: 1.06; }
|
|
1917
|
+
.uix-page-lede { max-width: 680px; margin: var(--uix-space-3) 0 0; color: var(--uix-text-hushed); font-size: var(--uix-text-h3); }
|
|
1918
|
+
.uix-intro-search__label { margin: 0 0 var(--uix-space-2); color: var(--uix-text-hushed); font-size: var(--uix-text-meta); }
|
|
1919
|
+
|
|
1920
|
+
.uix-searchbar { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--uix-space-2); }
|
|
1921
|
+
.uix-searchbar .uix-input { min-height: 44px; padding-left: 42px; }
|
|
1922
|
+
.uix-searchbar__wrap { position: relative; }
|
|
1923
|
+
.uix-searchbar__wrap > svg { position: absolute; top: 50%; left: 14px; z-index: var(--uix-z-raised); width: 17px; height: 17px; color: var(--uix-text-hushed); transform: translateY(-50%); pointer-events: none; }
|
|
1924
|
+
|
|
1925
|
+
.uix-shortcut-grid { grid-column: 1 / -1; margin-top: var(--uix-space-4); display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--uix-space-2); }
|
|
1926
|
+
.uix-shortcut-grid .uix-btn { min-height: 42px; justify-content: flex-start; }
|
|
1927
|
+
|
|
1928
|
+
/* ── notice queue — rotating "important updates" banner ────────────────────── */
|
|
1929
|
+
.uix-notice { min-height: 48px; padding: var(--uix-space-2) var(--uix-space-4); display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: var(--uix-space-3); border-left: 2px solid var(--uix-text); background: var(--uix-bg-subtle); }
|
|
1930
|
+
.uix-notice__copy { margin: 0; font-size: var(--uix-text-body); }
|
|
1931
|
+
.uix-notice__copy strong { font-weight: 600; }
|
|
1932
|
+
.uix-notice__content { min-width: 0; }
|
|
1933
|
+
.uix-notice__meta { margin: var(--uix-space-1) 0 0; color: var(--uix-text-hushed); font-size: var(--uix-text-eyebrow); }
|
|
1934
|
+
.uix-notice__actions { display: flex; align-items: center; justify-content: flex-end; gap: var(--uix-space-2); }
|
|
1935
|
+
.uix-notice__position { margin-right: var(--uix-space-1); color: var(--uix-text-hushed); font-size: var(--uix-text-eyebrow); white-space: nowrap; }
|
|
1936
|
+
.uix-notice__arrow--previous svg { transform: rotate(180deg); }
|
|
1937
|
+
|
|
1938
|
+
/* ── featured briefing — ONE card: stage + rundown are zones inside it, split
|
|
1939
|
+
by an internal hairline. The selected rundown item grows a caret that sits
|
|
1940
|
+
on (and breaks) that hairline toward the stage, and its ordinal becomes a
|
|
1941
|
+
filled chip echoed by .uix-featured__now in the stage eyebrow — that chip
|
|
1942
|
+
pairing is what carries the selection link once the card stacks. ─────────── */
|
|
1943
|
+
.uix-featured { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(300px, 0.7fr); align-items: stretch; overflow: hidden; border: 1px solid var(--uix-border); border-radius: var(--uix-radius-md); background: var(--uix-surface); }
|
|
1944
|
+
.uix-page-intro + .uix-featured { margin-top: var(--uix-space-6); }
|
|
1945
|
+
|
|
1946
|
+
.uix-featured__stage { min-width: 0; min-height: 302px; display: grid; grid-template-columns: minmax(260px, 0.95fr) minmax(300px, 1.05fr); }
|
|
1947
|
+
.uix-featured__visual {
|
|
1948
|
+
min-height: 302px; padding: var(--uix-space-6) var(--uix-space-7); display: flex; align-items: flex-end;
|
|
1949
|
+
position: relative; overflow: hidden;
|
|
1950
|
+
background:
|
|
1951
|
+
linear-gradient(135deg, transparent 20%, color-mix(in srgb, var(--uix-text) 8%, transparent)),
|
|
1952
|
+
var(--uix-bg-subtle);
|
|
1953
|
+
}
|
|
1954
|
+
.uix-featured__visual::before,
|
|
1955
|
+
.uix-featured__visual::after { content: ""; position: absolute; border: 1px solid var(--uix-border-strong); border-radius: 50%; }
|
|
1956
|
+
.uix-featured__visual::before { width: 240px; height: 240px; top: -78px; right: -42px; }
|
|
1957
|
+
.uix-featured__visual::after { width: 144px; height: 144px; top: 72px; right: 56px; }
|
|
1958
|
+
.uix-featured__content { padding: var(--uix-space-7); display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
|
|
1959
|
+
.uix-featured__eyebrow { margin: 0 0 var(--uix-space-4); color: var(--uix-text-hushed); font-size: var(--uix-text-eyebrow); letter-spacing: var(--uix-tracking-eyebrow); text-transform: uppercase; }
|
|
1960
|
+
.uix-featured__title { margin: 0; font-family: var(--uix-font-heading); font-size: clamp(26px, 3vw, 38px); font-weight: 400; letter-spacing: -0.03em; line-height: 1.08; }
|
|
1961
|
+
.uix-featured__description { margin: var(--uix-space-3) 0 var(--uix-space-5); color: var(--uix-text-hushed); }
|
|
1962
|
+
.uix-featured__meta { margin: 0 0 var(--uix-space-5); color: var(--uix-text-hushed); font-size: var(--uix-text-meta); }
|
|
1963
|
+
.uix-featured__now { min-width: 22px; height: 22px; display: inline-grid; place-items: center; margin-right: var(--uix-space-2); border-radius: var(--uix-radius-pill); background: var(--uix-text); color: var(--uix-bg-app); font-variant-numeric: tabular-nums; letter-spacing: 0; }
|
|
1964
|
+
|
|
1965
|
+
.uix-story-signal { position: absolute; top: 26px; left: 28px; z-index: var(--uix-z-raised); }
|
|
1966
|
+
.uix-story-signal__value { display: block; font-family: var(--uix-font-heading); font-size: 48px; font-weight: 400; letter-spacing: -0.04em; line-height: 1; }
|
|
1967
|
+
.uix-story-signal__label { display: block; margin-top: var(--uix-space-2); color: var(--uix-text-hushed); font-size: var(--uix-text-meta); }
|
|
1968
|
+
|
|
1969
|
+
.uix-story-diagram { width: min(100%, 500px); position: relative; z-index: var(--uix-z-raised); display: grid; grid-template-columns: repeat(3, 1fr); align-items: end; gap: var(--uix-space-3); }
|
|
1970
|
+
.uix-story-diagram__bar { min-height: 52px; border: 1px solid var(--uix-border-strong); border-radius: var(--uix-radius-sm); background: color-mix(in srgb, var(--uix-surface) 84%, transparent); }
|
|
1971
|
+
.uix-story-diagram__bar:nth-child(2) { min-height: 104px; }
|
|
1972
|
+
.uix-story-diagram__bar:nth-child(3) { min-height: 126px; background: var(--uix-text); }
|
|
1973
|
+
|
|
1974
|
+
.uix-rundown { min-width: 0; padding: var(--uix-space-4); display: grid; grid-template-rows: auto minmax(0, 1fr); gap: var(--uix-space-3); border-left: 1px solid var(--uix-border); }
|
|
1975
|
+
.uix-rundown__head { padding: var(--uix-space-1) var(--uix-space-1) var(--uix-space-3); display: flex; align-items: flex-start; justify-content: space-between; gap: var(--uix-space-3); border-bottom: 1px solid var(--uix-border); }
|
|
1976
|
+
.uix-rundown__eyebrow { margin: 0; color: var(--uix-text-hushed); font-size: var(--uix-text-eyebrow); letter-spacing: 0.05em; text-transform: uppercase; }
|
|
1977
|
+
.uix-rundown__title { margin: var(--uix-space-1) 0 0; font-family: var(--uix-font-heading); font-size: 18px; font-weight: 400; }
|
|
1978
|
+
.uix-rundown__items { min-width: 0; display: grid; grid-template-rows: repeat(3, minmax(0, 1fr)); gap: var(--uix-space-2); }
|
|
1979
|
+
.uix-rundown__item { position: relative; min-width: 0; min-height: 68px; padding: var(--uix-space-3); display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: var(--uix-space-3); border: 1px solid transparent; border-radius: var(--uix-radius-sm); background: transparent; color: var(--uix-text); cursor: pointer; font: inherit; text-align: left; }
|
|
1980
|
+
.uix-rundown__item:hover { background: var(--uix-bg-hover); }
|
|
1981
|
+
.uix-rundown__item[data-selected="true"] { border-color: var(--uix-border); background: var(--uix-bg-active); }
|
|
1982
|
+
/* caret centered on the internal divider (16px zone pad + 1px hairline + half of the 12px glyph) */
|
|
1983
|
+
.uix-rundown__item[data-selected="true"]::before { content: ""; position: absolute; top: 50%; left: -23px; width: 12px; height: 12px; transform: translateY(-50%) rotate(45deg); background: var(--uix-surface); border-left: 1px solid var(--uix-border-strong); border-bottom: 1px solid var(--uix-border-strong); }
|
|
1984
|
+
.uix-rundown__number { color: var(--uix-text-hushed); font-size: var(--uix-text-eyebrow); font-variant-numeric: tabular-nums; }
|
|
1985
|
+
.uix-rundown__item[data-selected="true"] .uix-rundown__number { min-width: 22px; height: 22px; display: inline-grid; place-items: center; border-radius: var(--uix-radius-pill); background: var(--uix-text); color: var(--uix-bg-app); }
|
|
1986
|
+
.uix-rundown__topic,
|
|
1987
|
+
.uix-rundown__item-title { display: block; }
|
|
1988
|
+
.uix-rundown__topic { color: var(--uix-text-hushed); font-size: var(--uix-text-eyebrow); }
|
|
1989
|
+
.uix-rundown__item-title { margin-top: var(--uix-space-1); font-weight: 600; line-height: 1.2; }
|
|
1990
|
+
|
|
1991
|
+
/* ── section heads ─────────────────────────────────────────────────────────── */
|
|
1992
|
+
.uix-section-head { min-height: 36px; margin-bottom: var(--uix-space-3); display: flex; align-items: center; justify-content: space-between; gap: var(--uix-space-4); }
|
|
1993
|
+
.uix-section-title { margin: 0; font-family: var(--uix-font-heading); font-size: var(--uix-text-h2); font-weight: 400; letter-spacing: var(--uix-tracking-tight); }
|
|
1994
|
+
.uix-section-link { color: var(--uix-text-hushed); font-size: var(--uix-text-meta); text-decoration: none; }
|
|
1995
|
+
.uix-section-link:hover { color: var(--uix-text); }
|
|
1996
|
+
|
|
1997
|
+
/* ── content grid + rail ───────────────────────────────────────────────────── */
|
|
1998
|
+
.uix-content-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(280px, 0.75fr); gap: var(--uix-space-7); align-items: start; }
|
|
1999
|
+
.uix-content-grid--balanced { grid-template-columns: repeat(2, minmax(0, 1fr)); }
|
|
2000
|
+
.uix-content-grid > * { min-width: 0; }
|
|
2001
|
+
.uix-rail { display: grid; gap: var(--uix-space-4); }
|
|
2002
|
+
.uix-rail-card { padding: var(--uix-space-5); }
|
|
2003
|
+
.uix-rail-card__title { margin: 0; font-family: var(--uix-font-heading); font-size: 18px; font-weight: 400; }
|
|
2004
|
+
.uix-rail-card__meta { margin: var(--uix-space-1) 0 0; color: var(--uix-text-hushed); font-size: var(--uix-text-meta); }
|
|
2005
|
+
|
|
2006
|
+
/* ── news lead + content list ──────────────────────────────────────────────── */
|
|
2007
|
+
.uix-news-lead { padding: 0 0 var(--uix-space-5); border-bottom: 1px solid var(--uix-border); }
|
|
2008
|
+
.uix-news-lead__meta,
|
|
2009
|
+
.uix-list-meta { color: var(--uix-text-hushed); font-size: var(--uix-text-meta); }
|
|
2010
|
+
.uix-news-lead__title { margin: var(--uix-space-2) 0 var(--uix-space-1); font-family: var(--uix-font-heading); font-size: var(--uix-text-h2); font-weight: 400; letter-spacing: var(--uix-tracking-tight); }
|
|
2011
|
+
.uix-news-lead__summary { margin: 0; color: var(--uix-text-hushed); }
|
|
2012
|
+
|
|
2013
|
+
.uix-content-list { margin: 0; padding: 0; list-style: none; }
|
|
2014
|
+
.uix-content-list__item { min-height: 68px; padding: var(--uix-space-3) 0; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: var(--uix-space-4); border-bottom: 1px solid var(--uix-border); }
|
|
2015
|
+
.uix-content-list__item:last-child { border-bottom: 0; }
|
|
2016
|
+
.uix-content-list__title { margin: 0; font-weight: 600; }
|
|
2017
|
+
.uix-content-list__meta { margin: var(--uix-space-1) 0 0; color: var(--uix-text-hushed); font-size: var(--uix-text-meta); }
|
|
2018
|
+
|
|
2019
|
+
/* ── resource grid ─────────────────────────────────────────────────────────── */
|
|
2020
|
+
.uix-resource-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--uix-space-2); }
|
|
2021
|
+
.uix-resource-grid .uix-btn { min-height: 44px; justify-content: flex-start; }
|
|
2022
|
+
|
|
2023
|
+
/* ── stat line ─────────────────────────────────────────────────────────────── */
|
|
2024
|
+
.uix-stat-line { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--uix-border); }
|
|
2025
|
+
.uix-stat-line__item { padding: var(--uix-space-4) var(--uix-space-2) var(--uix-space-1) 0; }
|
|
2026
|
+
.uix-stat-line__value { display: block; font-size: 20px; font-variant-numeric: tabular-nums; }
|
|
2027
|
+
.uix-stat-line__label { color: var(--uix-text-hushed); font-size: var(--uix-text-eyebrow); }
|
|
2028
|
+
|
|
2029
|
+
/* ── event + status rows ───────────────────────────────────────────────────── */
|
|
2030
|
+
.uix-event-row { min-height: 64px; padding-block: var(--uix-space-3); display: grid; grid-template-columns: 42px minmax(0, 1fr); align-items: center; gap: var(--uix-space-3); border-bottom: 1px solid var(--uix-border); }
|
|
2031
|
+
.uix-event-row:last-child { border-bottom: 0; }
|
|
2032
|
+
.uix-event-date { text-align: center; }
|
|
2033
|
+
.uix-event-date__month { display: block; color: var(--uix-text-hushed); font-size: var(--uix-text-eyebrow); text-transform: uppercase; }
|
|
2034
|
+
.uix-event-date__day { display: block; font-size: 18px; font-variant-numeric: tabular-nums; }
|
|
2035
|
+
.uix-event-row__title { margin: 0; font-weight: 600; }
|
|
2036
|
+
.uix-event-row__meta { margin: var(--uix-space-1) 0 0; color: var(--uix-text-hushed); font-size: var(--uix-text-meta); }
|
|
2037
|
+
|
|
2038
|
+
.uix-status-row { min-height: 48px; display: flex; align-items: center; gap: var(--uix-space-3); border-bottom: 1px solid var(--uix-border); }
|
|
2039
|
+
.uix-status-row:last-child { border-bottom: 0; }
|
|
2040
|
+
.uix-status-row__name { flex: 1; }
|
|
2041
|
+
|
|
2042
|
+
/* ── responsive — ported 1:1 from the prototype's 920/620 breakpoints ──────── */
|
|
2043
|
+
@media (max-width: 920px) {
|
|
2044
|
+
.uix-page-intro,
|
|
2045
|
+
.uix-content-grid,
|
|
2046
|
+
.uix-content-grid--balanced,
|
|
2047
|
+
.uix-featured { grid-template-columns: 1fr; }
|
|
2048
|
+
|
|
2049
|
+
.uix-rundown { border-left: 0; border-top: 1px solid var(--uix-border); }
|
|
2050
|
+
.uix-rundown__items { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: 1fr; }
|
|
2051
|
+
/* stacked zones: the caret flips to point up at the stage above */
|
|
2052
|
+
.uix-rundown__item[data-selected="true"]::before { top: -23px; left: 22px; transform: rotate(45deg); border-bottom: 0; border-top: 1px solid var(--uix-border-strong); }
|
|
2053
|
+
|
|
2054
|
+
.uix-shortcut-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
|
|
2055
|
+
}
|
|
2056
|
+
|
|
2057
|
+
@media (max-width: 620px) {
|
|
2058
|
+
.uix-featured__stage { grid-template-columns: 1fr; }
|
|
2059
|
+
.uix-featured__visual { min-height: 190px; }
|
|
2060
|
+
.uix-featured__content { padding: var(--uix-space-6); }
|
|
2061
|
+
|
|
2062
|
+
.uix-rundown__items { grid-template-columns: 1fr; grid-template-rows: repeat(3, auto); }
|
|
2063
|
+
/* vertical item stack: the directional caret stops making sense — the
|
|
2064
|
+
ordinal chips (item number + .uix-featured__now) carry the pairing */
|
|
2065
|
+
.uix-rundown__item[data-selected="true"]::before { display: none; }
|
|
2066
|
+
|
|
2067
|
+
.uix-notice { grid-template-columns: auto minmax(0, 1fr); }
|
|
2068
|
+
.uix-notice > .uix-btn { grid-column: 2; justify-self: start; }
|
|
2069
|
+
.uix-notice__actions { grid-column: 1 / -1; width: 100%; justify-content: flex-start; flex-wrap: wrap; }
|
|
2070
|
+
.uix-notice__position { flex: 1; }
|
|
2071
|
+
|
|
2072
|
+
.uix-searchbar { grid-template-columns: 1fr; }
|
|
2073
|
+
.uix-searchbar .uix-btn { min-height: 44px; }
|
|
2074
|
+
|
|
2075
|
+
.uix-page-intro { margin-top: var(--uix-space-5); gap: var(--uix-space-5); }
|
|
2076
|
+
.uix-shortcut-grid { grid-template-columns: 1fr 1fr; }
|
|
2077
|
+
.uix-shortcut-grid .uix-btn { min-height: 48px; }
|
|
2078
|
+
|
|
2079
|
+
.uix-story-signal { top: 20px; left: 20px; }
|
|
2080
|
+
.uix-story-signal__value { font-size: var(--uix-text-display); }
|
|
2081
|
+
|
|
2082
|
+
.uix-resource-grid { grid-template-columns: 1fr; }
|
|
2083
|
+
|
|
2084
|
+
.uix-stat-line { grid-template-columns: 1fr; }
|
|
2085
|
+
.uix-stat-line__item { display: flex; align-items: baseline; justify-content: space-between; border-bottom: 1px solid var(--uix-border); }
|
|
2086
|
+
}
|
|
2087
|
+
}
|
|
2088
|
+
/* uix link patterns — the quiet link, for anchors whose CONTAINER is the affordance.
|
|
2089
|
+
*
|
|
2090
|
+
* The base layer styles anchors as in-text content links: --uix-link colour, and
|
|
2091
|
+
* classless [href] anchors carry a persistent underline (WCAG 1.4.1 / link-in-text-block —
|
|
2092
|
+
* a link sitting inside a run of same-coloured prose must not be distinguished by colour
|
|
2093
|
+
* alone). That contract is right for prose and wrong for composition slots where the
|
|
2094
|
+
* surrounding row/card already communicates interactivity: framework <Link>s passed into
|
|
2095
|
+
* kit title slots and table cells rendered brand-blue + bold + underlined — unreadable
|
|
2096
|
+
* noise at list density (TENSOR INTRA-04, operator-rejected).
|
|
2097
|
+
*
|
|
2098
|
+
* A quiet link inherits the surrounding text colour and shows its underline on
|
|
2099
|
+
* hover/focus. 1.4.1 is not in play: the link is the whole text of its block (a title,
|
|
2100
|
+
* a cell), not a link inside body copy. NEVER quiet a link inside prose — in-text links
|
|
2101
|
+
* keep the base blue + underline.
|
|
2102
|
+
*
|
|
2103
|
+
* Two forms:
|
|
2104
|
+
* • `.uix-link--quiet` — the opt-in utility, for block links outside the scoped slots
|
|
2105
|
+
* (whole-card links, event rows composed by hand, app-specific list patterns).
|
|
2106
|
+
* • quiet BY DEFAULT below — the editorial-home title slots and table data cells,
|
|
2107
|
+
* where every anchor is a block-level navigation target. `.uix-table td` keeps
|
|
2108
|
+
* `:not([class])` so class-bearing anchors in cells (`.uix-btn--link`, pills)
|
|
2109
|
+
* stay styled.
|
|
2110
|
+
* Depends only on --uix-* tokens. */
|
|
2111
|
+
@layer uix.components {
|
|
2112
|
+
.uix-link--quiet,
|
|
2113
|
+
.uix-content-list__title a,
|
|
2114
|
+
.uix-news-lead__title a,
|
|
2115
|
+
.uix-rundown__item-title a,
|
|
2116
|
+
.uix-event-row__title a,
|
|
2117
|
+
.uix-table td a:not([class]) { color: inherit; text-decoration: none; }
|
|
2118
|
+
|
|
2119
|
+
.uix-link--quiet:hover,
|
|
2120
|
+
.uix-link--quiet:focus-visible,
|
|
2121
|
+
.uix-content-list__title a:hover,
|
|
2122
|
+
.uix-content-list__title a:focus-visible,
|
|
2123
|
+
.uix-news-lead__title a:hover,
|
|
2124
|
+
.uix-news-lead__title a:focus-visible,
|
|
2125
|
+
.uix-rundown__item-title a:hover,
|
|
2126
|
+
.uix-rundown__item-title a:focus-visible,
|
|
2127
|
+
.uix-event-row__title a:hover,
|
|
2128
|
+
.uix-event-row__title a:focus-visible,
|
|
2129
|
+
.uix-table td a:not([class]):hover,
|
|
2130
|
+
.uix-table td a:not([class]):focus-visible { text-decoration: underline; }
|
|
2131
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tensor_1/tokens",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.9.0",
|
|
4
4
|
"description": "UIx v2 design tokens — the --uix-* contract for house products (Tensor, POSx, SHOPx). One DTCG source -> CSS variables, Tailwind theme, and typed TS constants.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "UNLICENSED",
|