ltcai 0.2.2 → 0.3.1

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.
@@ -892,6 +892,13 @@
892
892
  border-radius: 18px;
893
893
  background: var(--ref-card);
894
894
  box-shadow: var(--ref-shadow);
895
+ transition: transform 200ms var(--lt-motion-ease, ease), box-shadow 200ms var(--lt-motion-ease, ease);
896
+ }
897
+
898
+ .reference-dash-card:hover,
899
+ .reference-lists article:hover {
900
+ transform: translateY(-3px);
901
+ box-shadow: 0 24px 64px rgba(88,72,150,0.18);
895
902
  }
896
903
 
897
904
  .reference-dash-card {
@@ -1372,6 +1379,12 @@
1372
1379
  flex-direction: column;
1373
1380
  justify-content: center;
1374
1381
  overflow: hidden;
1382
+ transition: transform 200ms ease, box-shadow 200ms ease;
1383
+ }
1384
+
1385
+ .lattice-ref-admin .summary-card:hover {
1386
+ transform: translateY(-2px);
1387
+ box-shadow: 0 14px 40px rgba(88,72,150,0.14) !important;
1375
1388
  }
1376
1389
 
1377
1390
  .lattice-ref-admin .summary-card::before {
@@ -1561,16 +1574,17 @@
1561
1574
 
1562
1575
  /* ============================================================
1563
1576
  ACCOUNT / AUTH PAGE (account.html)
1577
+ Light lavender theme — unified with chat/graph/admin pages.
1564
1578
  ============================================================ */
1565
1579
 
1566
1580
  body.lattice-ref-auth {
1567
- --bg: #282a36;
1568
- --text: #f7f7f2;
1569
- --faint: #8d93ab;
1570
- --muted: #c4c8d8;
1571
- --accent: #a77cff;
1572
- --accent-2: #20b8aa;
1573
- --shadow: 0 24px 70px rgba(5,7,12,0.46);
1581
+ --bg: #f7f3ff;
1582
+ --text: #1f2140;
1583
+ --faint: #8a86a8;
1584
+ --muted: #66627f;
1585
+ --accent: #6f4bf6;
1586
+ --accent-2: #7b6dff;
1587
+ --shadow: 0 26px 80px rgba(86, 70, 160, 0.22);
1574
1588
  }
1575
1589
 
1576
1590
  * { box-sizing: border-box; margin: 0; padding: 0; }
@@ -1579,9 +1593,9 @@
1579
1593
  font-family: Inter, -apple-system, BlinkMacSystemFont, sans-serif;
1580
1594
  color: var(--text);
1581
1595
  background:
1582
- radial-gradient(circle at 50% 35%, rgba(167,124,255,0.16), transparent 34%),
1583
- radial-gradient(circle at 80% 75%, rgba(32,184,170,0.10), transparent 28%),
1584
- linear-gradient(135deg, #292b38 0%, #242632 52%, #2f3040 100%);
1596
+ radial-gradient(circle at 74% 22%, rgba(111,75,246,0.16), transparent 28%),
1597
+ radial-gradient(circle at 16% 18%, rgba(196,181,253,0.32), transparent 26%),
1598
+ linear-gradient(135deg, #fbf9ff 0%, #f4efff 48%, #ffffff 100%);
1585
1599
  display: flex;
1586
1600
  align-items: center;
1587
1601
  justify-content: center;
@@ -1596,12 +1610,12 @@
1596
1610
  position: fixed;
1597
1611
  inset: 0;
1598
1612
  background:
1599
- radial-gradient(circle, rgba(247,247,242,0.66) 1px, transparent 1.8px),
1600
- linear-gradient(rgba(157,177,255,0.12) 1px, transparent 1px),
1601
- linear-gradient(90deg, rgba(157,177,255,0.08) 1px, transparent 1px);
1613
+ radial-gradient(circle, rgba(123,109,255,0.28) 1px, transparent 1.8px),
1614
+ linear-gradient(rgba(123,109,255,0.08) 1px, transparent 1px),
1615
+ linear-gradient(90deg, rgba(123,109,255,0.06) 1px, transparent 1px);
1602
1616
  background-size: 82px 82px, 46px 46px, 46px 46px;
1603
1617
  background-position: 16px 18px, 0 0, 0 0;
1604
- mask-image: linear-gradient(180deg, rgba(0,0,0,0.35), rgba(0,0,0,0.06));
1618
+ mask-image: linear-gradient(180deg, rgba(0,0,0,0.18), rgba(0,0,0,0.02));
1605
1619
  pointer-events: none;
1606
1620
  }
1607
1621
 
@@ -1610,24 +1624,83 @@
1610
1624
  position: fixed;
1611
1625
  inset: 0;
1612
1626
  background:
1613
- linear-gradient(116deg, transparent 0 44%, rgba(125,183,255,0.08) 44.1%, transparent 44.3% 100%),
1614
- linear-gradient(28deg, transparent 0 62%, rgba(167,124,255,0.08) 62.1%, transparent 62.3% 100%);
1627
+ radial-gradient(ellipse at 8% 78%, rgba(142,111,255,0.24), transparent 34%),
1628
+ linear-gradient(115deg, transparent 0 35%, rgba(111,75,246,0.09) 35.2%, transparent 35.6% 100%);
1615
1629
  pointer-events: none;
1616
1630
  }
1617
1631
 
1618
1632
  .orb {
1619
1633
  display: none;
1620
1634
  }
1621
- .orb-1 { width: 440px; height: 440px; top: -170px; left: -120px; background: rgba(34,211,160,0.13); }
1622
- .orb-2 { width: 380px; height: 380px; bottom: -130px; right: -90px; background: rgba(129,140,248,0.11); }
1635
+
1636
+ .login-shell {
1637
+ width: min(920px, 100%);
1638
+ display: grid;
1639
+ grid-template-columns: minmax(280px, 400px) minmax(220px, 1fr);
1640
+ align-items: center;
1641
+ gap: 46px;
1642
+ position: relative;
1643
+ z-index: 1;
1644
+ }
1645
+
1646
+ .brand-preview {
1647
+ min-height: 360px;
1648
+ border-radius: 34px;
1649
+ background:
1650
+ radial-gradient(circle at 54% 45%, rgba(111,75,246,0.24), transparent 18%),
1651
+ linear-gradient(145deg, rgba(255,255,255,0.68), rgba(244,239,255,0.32));
1652
+ border: 1px solid rgba(111,75,246,0.12);
1653
+ box-shadow: inset 0 1px 0 rgba(255,255,255,0.85);
1654
+ position: relative;
1655
+ overflow: hidden;
1656
+ }
1657
+ .brand-preview::before {
1658
+ content: '';
1659
+ position: absolute;
1660
+ inset: auto -12% 0 -8%;
1661
+ height: 46%;
1662
+ background: linear-gradient(135deg, rgba(111,75,246,0.24), rgba(255,255,255,0.12));
1663
+ clip-path: polygon(0 62%, 18% 42%, 36% 54%, 55% 26%, 76% 44%, 100% 20%, 100% 100%, 0 100%);
1664
+ filter: blur(1px);
1665
+ }
1666
+ .preview-node {
1667
+ position: absolute;
1668
+ width: 52px;
1669
+ height: 52px;
1670
+ border-radius: 17px;
1671
+ background: #fff;
1672
+ border: 1px solid rgba(111,75,246,0.18);
1673
+ box-shadow: 0 18px 40px rgba(111,75,246,0.16);
1674
+ }
1675
+ .preview-node::after {
1676
+ content: '';
1677
+ position: absolute;
1678
+ inset: 14px;
1679
+ border-radius: 10px;
1680
+ background: linear-gradient(135deg, #6f4bf6, #9f8cff);
1681
+ }
1682
+ .preview-node.n1 { top: 52px; left: 58px; }
1683
+ .preview-node.n2 { top: 112px; right: 64px; }
1684
+ .preview-node.n3 { left: 120px; bottom: 92px; }
1685
+ .preview-node.n4 { right: 120px; bottom: 58px; }
1686
+ .preview-line {
1687
+ position: absolute;
1688
+ height: 2px;
1689
+ width: 150px;
1690
+ background: linear-gradient(90deg, transparent, rgba(111,75,246,0.45), transparent);
1691
+ transform-origin: left center;
1692
+ }
1693
+ .preview-line.l1 { top: 108px; left: 112px; transform: rotate(18deg); }
1694
+ .preview-line.l2 { top: 186px; left: 176px; transform: rotate(112deg); }
1695
+ .preview-line.l3 { bottom: 112px; left: 172px; transform: rotate(-13deg); }
1623
1696
 
1624
1697
  .card {
1625
1698
  width: min(400px, 100%);
1626
- background: rgba(34,36,49,0.86);
1627
- border: 1px solid rgba(218,225,255,0.14);
1628
- border-radius: 10px;
1699
+ background: rgba(255,255,255,0.86);
1700
+ border: 1px solid rgba(111,75,246,0.13);
1701
+ border-radius: 14px;
1629
1702
  padding: 38px 34px;
1630
- box-shadow: var(--shadow), 0 0 0 1px rgba(167,124,255,0.06);
1703
+ box-shadow: var(--shadow), inset 0 1px 0 rgba(255,255,255,0.9);
1631
1704
  position: relative;
1632
1705
  z-index: 1;
1633
1706
  backdrop-filter: blur(28px);
@@ -1639,17 +1712,17 @@
1639
1712
  top: 0; left: 50%;
1640
1713
  transform: translateX(-50%);
1641
1714
  width: 55%; height: 1px;
1642
- background: linear-gradient(90deg, transparent, rgba(167,124,255,0.55), rgba(32,184,170,0.5), transparent);
1715
+ background: linear-gradient(90deg, transparent, rgba(111,75,246,0.65), rgba(123,109,255,0.45), transparent);
1643
1716
  }
1644
1717
 
1645
1718
  .logo {
1646
1719
  width: 54px; height: 54px;
1647
- background: radial-gradient(circle at 34% 30%, #ffffff 0 16%, #a77cff 17% 62%, #5b6cff 100%);
1720
+ background: linear-gradient(135deg, #6f4bf6 0%, #8d7aff 100%);
1648
1721
  border-radius: 10px;
1649
1722
  display: flex; align-items: center; justify-content: center;
1650
- font-size: 26px; color: #040706;
1723
+ font-size: 26px; color: #fff;
1651
1724
  margin: 0 auto 18px;
1652
- box-shadow: 0 0 32px rgba(167,124,255,0.28), 0 8px 24px rgba(0,0,0,0.38);
1725
+ box-shadow: 0 16px 34px rgba(111,75,246,0.28);
1653
1726
  }
1654
1727
 
1655
1728
  .title {
@@ -1657,7 +1730,7 @@
1657
1730
  font-size: 23px;
1658
1731
  font-weight: 800;
1659
1732
  margin-bottom: 6px;
1660
- background: linear-gradient(135deg, #fff 40%, #cfc6ff 76%, #8be9df);
1733
+ background: linear-gradient(135deg, #1f2140 35%, #6f4bf6 82%);
1661
1734
  -webkit-background-clip: text;
1662
1735
  -webkit-text-fill-color: transparent;
1663
1736
  background-clip: text;
@@ -1675,8 +1748,8 @@
1675
1748
  width: 100%;
1676
1749
  padding: 12px 14px;
1677
1750
  margin-bottom: 10px;
1678
- background: rgba(20,22,31,0.74);
1679
- border: 1px solid rgba(218,225,255,0.14);
1751
+ background: #fbfaff;
1752
+ border: 1px solid rgba(111,75,246,0.16);
1680
1753
  color: var(--text);
1681
1754
  border-radius: 8px;
1682
1755
  outline: none;
@@ -1685,29 +1758,29 @@
1685
1758
  transition: border-color .15s, box-shadow .15s;
1686
1759
  }
1687
1760
  .input:focus {
1688
- border-color: rgba(167,124,255,0.5);
1689
- box-shadow: 0 0 0 3px rgba(167,124,255,0.09);
1761
+ border-color: rgba(111,75,246,0.52);
1762
+ box-shadow: 0 0 0 4px rgba(111,75,246,0.10);
1690
1763
  }
1691
1764
  .input::placeholder { color: var(--faint); }
1692
1765
 
1693
1766
  .submit {
1694
1767
  width: 100%;
1695
1768
  padding: 13px;
1696
- background: linear-gradient(135deg, #f7f7f2, #cfc6ff);
1697
- color: #242632;
1769
+ background: linear-gradient(135deg, #6f4bf6, #7b6dff);
1770
+ color: #fff;
1698
1771
  border: none;
1699
1772
  border-radius: 8px;
1700
1773
  cursor: pointer;
1701
1774
  font-weight: 800;
1702
1775
  font-size: 14px;
1703
1776
  font-family: inherit;
1704
- box-shadow: 0 0 22px rgba(167,124,255,0.18), 0 4px 12px rgba(0,0,0,0.3);
1777
+ box-shadow: 0 14px 30px rgba(111,75,246,0.24);
1705
1778
  transition: all .18s;
1706
1779
  margin-top: 4px;
1707
1780
  }
1708
1781
  .submit:hover {
1709
- background: linear-gradient(135deg, #ffffff, #d9d1ff);
1710
- box-shadow: 0 0 30px rgba(167,124,255,0.26), 0 4px 14px rgba(0,0,0,0.3);
1782
+ background: linear-gradient(135deg, #5f3ee6, #705fff);
1783
+ box-shadow: 0 18px 38px rgba(111,75,246,0.30);
1711
1784
  transform: translateY(-1px);
1712
1785
  }
1713
1786
  .submit:disabled { opacity: 0.6; cursor: not-allowed; transform: none; }
@@ -1718,7 +1791,7 @@
1718
1791
  font-size: 12.5px;
1719
1792
  color: var(--faint);
1720
1793
  }
1721
- .switch a { color: #cfc6ff; text-decoration: none; font-weight: 700; }
1794
+ .switch a { color: #6f4bf6; text-decoration: none; font-weight: 700; }
1722
1795
  .switch a:hover { text-decoration: underline; }
1723
1796
 
1724
1797
  .sso-divider {
@@ -1728,13 +1801,13 @@
1728
1801
  }
1729
1802
  .sso-divider::before, .sso-divider::after {
1730
1803
  content: ''; flex: 1;
1731
- height: 1px; background: rgba(255,255,255,0.07);
1804
+ height: 1px; background: rgba(111,75,246,0.12);
1732
1805
  }
1733
1806
  .sso-btn {
1734
1807
  width: 100%;
1735
1808
  padding: 12px;
1736
- background: rgba(247,247,242,0.045);
1737
- border: 1px solid rgba(218,225,255,0.13);
1809
+ background: #fff;
1810
+ border: 1px solid rgba(111,75,246,0.15);
1738
1811
  color: var(--text);
1739
1812
  border-radius: 8px;
1740
1813
  cursor: pointer;
@@ -1745,8 +1818,8 @@
1745
1818
  transition: all .18s;
1746
1819
  }
1747
1820
  .sso-btn:hover {
1748
- background: rgba(167,124,255,0.10);
1749
- border-color: rgba(167,124,255,0.3);
1821
+ background: #f6f2ff;
1822
+ border-color: rgba(111,75,246,0.34);
1750
1823
  }
1751
1824
 
1752
1825
  .msg {
@@ -1754,9 +1827,9 @@
1754
1827
  min-height: 18px;
1755
1828
  margin-bottom: 6px;
1756
1829
  text-align: center;
1757
- color: #ffbdb8;
1830
+ color: #d44f5c;
1758
1831
  }
1759
- .msg.ok { color: #9be7cd; }
1832
+ .msg.ok { color: #0d8f72; }
1760
1833
 
1761
1834
  /* Lang picker */
1762
1835
  .lang-wrap {
@@ -1766,8 +1839,8 @@
1766
1839
  z-index: 10;
1767
1840
  }
1768
1841
  .lang-btn {
1769
- background: rgba(34,36,49,0.72);
1770
- border: 1px solid rgba(218,225,255,0.14);
1842
+ background: rgba(255,255,255,0.86);
1843
+ border: 1px solid rgba(111,75,246,0.18);
1771
1844
  color: var(--text);
1772
1845
  border-radius: 8px;
1773
1846
  padding: 7px 12px;
@@ -1775,19 +1848,20 @@
1775
1848
  font-family: inherit;
1776
1849
  cursor: pointer;
1777
1850
  transition: background .15s;
1851
+ box-shadow: 0 10px 28px rgba(86,70,160,0.12);
1778
1852
  }
1779
- .lang-btn:hover { background: rgba(167,124,255,0.12); }
1853
+ .lang-btn:hover { background: rgba(111,75,246,0.08); }
1780
1854
  .lang-menu {
1781
1855
  display: none;
1782
1856
  position: absolute;
1783
1857
  top: calc(100% + 6px);
1784
1858
  right: 0;
1785
- background: #222431;
1786
- border: 1px solid rgba(218,225,255,0.14);
1859
+ background: #fff;
1860
+ border: 1px solid rgba(111,75,246,0.15);
1787
1861
  border-radius: 8px;
1788
1862
  padding: 4px;
1789
1863
  min-width: 130px;
1790
- box-shadow: 0 8px 24px rgba(0,0,0,0.4);
1864
+ box-shadow: 0 18px 44px rgba(86,70,160,0.16);
1791
1865
  }
1792
1866
  .lang-menu.open { display: block; }
1793
1867
  .lang-opt {
@@ -1795,155 +1869,11 @@
1795
1869
  border-radius: 7px;
1796
1870
  cursor: pointer;
1797
1871
  font-size: 13px;
1798
- color: var(--faint);
1872
+ color: var(--muted);
1799
1873
  }
1800
- .lang-opt:hover { background: rgba(167,124,255,0.10); color: var(--text); }
1874
+ .lang-opt:hover { background: rgba(111,75,246,0.07); color: var(--text); }
1801
1875
  .lang-opt.active { color: var(--accent); font-weight: 700; }
1802
1876
 
1803
- /* PPT reference theme: bright indigo sign-in with SSO and language switcher. */
1804
- body.lattice-ref-auth {
1805
- --bg: #f7f3ff;
1806
- --text: #1f2140;
1807
- --faint: #8a86a8;
1808
- --muted: #66627f;
1809
- --accent: #6f4bf6;
1810
- --accent-2: #7b6dff;
1811
- --shadow: 0 26px 80px rgba(86, 70, 160, 0.22);
1812
- }
1813
- body.lattice-ref-auth {
1814
- background:
1815
- radial-gradient(circle at 74% 22%, rgba(111,75,246,0.16), transparent 28%),
1816
- radial-gradient(circle at 16% 18%, rgba(196,181,253,0.32), transparent 26%),
1817
- linear-gradient(135deg, #fbf9ff 0%, #f4efff 48%, #ffffff 100%);
1818
- }
1819
- body::before {
1820
- background:
1821
- radial-gradient(circle, rgba(123,109,255,0.28) 1px, transparent 1.8px),
1822
- linear-gradient(rgba(123,109,255,0.08) 1px, transparent 1px),
1823
- linear-gradient(90deg, rgba(123,109,255,0.06) 1px, transparent 1px);
1824
- mask-image: linear-gradient(180deg, rgba(0,0,0,0.18), rgba(0,0,0,0.02));
1825
- }
1826
- body::after {
1827
- background:
1828
- radial-gradient(ellipse at 8% 78%, rgba(142,111,255,0.24), transparent 34%),
1829
- linear-gradient(115deg, transparent 0 35%, rgba(111,75,246,0.09) 35.2%, transparent 35.6% 100%);
1830
- }
1831
- .login-shell {
1832
- width: min(920px, 100%);
1833
- display: grid;
1834
- grid-template-columns: minmax(280px, 400px) minmax(220px, 1fr);
1835
- align-items: center;
1836
- gap: 46px;
1837
- position: relative;
1838
- z-index: 1;
1839
- }
1840
- .brand-preview {
1841
- min-height: 360px;
1842
- border-radius: 34px;
1843
- background:
1844
- radial-gradient(circle at 54% 45%, rgba(111,75,246,0.24), transparent 18%),
1845
- linear-gradient(145deg, rgba(255,255,255,0.68), rgba(244,239,255,0.32));
1846
- border: 1px solid rgba(111,75,246,0.12);
1847
- box-shadow: inset 0 1px 0 rgba(255,255,255,0.85);
1848
- position: relative;
1849
- overflow: hidden;
1850
- }
1851
- .brand-preview::before {
1852
- content: '';
1853
- position: absolute;
1854
- inset: auto -12% 0 -8%;
1855
- height: 46%;
1856
- background: linear-gradient(135deg, rgba(111,75,246,0.24), rgba(255,255,255,0.12));
1857
- clip-path: polygon(0 62%, 18% 42%, 36% 54%, 55% 26%, 76% 44%, 100% 20%, 100% 100%, 0 100%);
1858
- filter: blur(1px);
1859
- }
1860
- .preview-node {
1861
- position: absolute;
1862
- width: 52px;
1863
- height: 52px;
1864
- border-radius: 17px;
1865
- background: #fff;
1866
- border: 1px solid rgba(111,75,246,0.18);
1867
- box-shadow: 0 18px 40px rgba(111,75,246,0.16);
1868
- }
1869
- .preview-node::after {
1870
- content: '';
1871
- position: absolute;
1872
- inset: 14px;
1873
- border-radius: 10px;
1874
- background: linear-gradient(135deg, #6f4bf6, #9f8cff);
1875
- }
1876
- .preview-node.n1 { top: 52px; left: 58px; }
1877
- .preview-node.n2 { top: 112px; right: 64px; }
1878
- .preview-node.n3 { left: 120px; bottom: 92px; }
1879
- .preview-node.n4 { right: 120px; bottom: 58px; }
1880
- .preview-line {
1881
- position: absolute;
1882
- height: 2px;
1883
- width: 150px;
1884
- background: linear-gradient(90deg, transparent, rgba(111,75,246,0.45), transparent);
1885
- transform-origin: left center;
1886
- }
1887
- .preview-line.l1 { top: 108px; left: 112px; transform: rotate(18deg); }
1888
- .preview-line.l2 { top: 186px; left: 176px; transform: rotate(112deg); }
1889
- .preview-line.l3 { bottom: 112px; left: 172px; transform: rotate(-13deg); }
1890
- .card {
1891
- background: rgba(255,255,255,0.86);
1892
- border: 1px solid rgba(111,75,246,0.13);
1893
- border-radius: 14px;
1894
- box-shadow: var(--shadow), inset 0 1px 0 rgba(255,255,255,0.9);
1895
- }
1896
- .card::before {
1897
- background: linear-gradient(90deg, transparent, rgba(111,75,246,0.65), rgba(123,109,255,0.45), transparent);
1898
- }
1899
- .logo {
1900
- background: linear-gradient(135deg, #6f4bf6 0%, #8d7aff 100%);
1901
- color: #fff;
1902
- box-shadow: 0 16px 34px rgba(111,75,246,0.28);
1903
- }
1904
- .title {
1905
- background: linear-gradient(135deg, #1f2140 35%, #6f4bf6 82%);
1906
- -webkit-background-clip: text;
1907
- background-clip: text;
1908
- }
1909
- .input {
1910
- background: #fbfaff;
1911
- border-color: rgba(111,75,246,0.16);
1912
- color: var(--text);
1913
- }
1914
- .input:focus {
1915
- border-color: rgba(111,75,246,0.52);
1916
- box-shadow: 0 0 0 4px rgba(111,75,246,0.10);
1917
- }
1918
- .submit {
1919
- background: linear-gradient(135deg, #6f4bf6, #7b6dff);
1920
- color: #fff;
1921
- box-shadow: 0 14px 30px rgba(111,75,246,0.24);
1922
- }
1923
- .submit:hover {
1924
- background: linear-gradient(135deg, #5f3ee6, #705fff);
1925
- box-shadow: 0 18px 38px rgba(111,75,246,0.30);
1926
- }
1927
- .sso-btn {
1928
- background: #fff;
1929
- border-color: rgba(111,75,246,0.15);
1930
- color: var(--text);
1931
- }
1932
- .sso-btn:hover {
1933
- background: #f6f2ff;
1934
- border-color: rgba(111,75,246,0.34);
1935
- }
1936
- .lang-btn {
1937
- background: rgba(255,255,255,0.86);
1938
- border-color: rgba(111,75,246,0.18);
1939
- color: var(--text);
1940
- box-shadow: 0 10px 28px rgba(86,70,160,0.12);
1941
- }
1942
- .lang-menu {
1943
- background: #fff;
1944
- border-color: rgba(111,75,246,0.15);
1945
- box-shadow: 0 18px 44px rgba(86,70,160,0.16);
1946
- }
1947
1877
  @media (max-width: 760px) {
1948
1878
  .login-shell { display: block; }
1949
1879
  .brand-preview { display: none; }
@@ -2681,7 +2611,7 @@ body.lattice-ref-graph {
2681
2611
  justify-content: space-between;
2682
2612
  gap: 12px;
2683
2613
  padding: 14px 16px 10px;
2684
- border-bottom: 1px solid rgba(255,255,255,0.04);
2614
+ border-bottom: 1px solid rgba(111,66,232,0.10);
2685
2615
  }
2686
2616
 
2687
2617
  .search-title {
@@ -2704,8 +2634,8 @@ body.lattice-ref-graph {
2704
2634
  .search-count {
2705
2635
  flex-shrink: 0;
2706
2636
  font-size: 11px;
2707
- color: #08100d;
2708
- background: linear-gradient(135deg, #7df0c3, #56d4ff);
2637
+ color: #fff;
2638
+ background: linear-gradient(135deg, #6f42e8, #9a78f0);
2709
2639
  border-radius: 999px;
2710
2640
  padding: 5px 10px;
2711
2641
  font-weight: 700;
@@ -2743,7 +2673,7 @@ body.lattice-ref-graph {
2743
2673
  height: 42px;
2744
2674
  border-radius: 8px;
2745
2675
  border: 1px solid var(--line-strong);
2746
- background: rgba(255,255,255,0.03);
2676
+ background: rgba(255,255,255,0.80);
2747
2677
  color: var(--text);
2748
2678
  cursor: pointer;
2749
2679
  font-size: 13px;
@@ -2892,7 +2822,7 @@ body.lattice-ref-graph {
2892
2822
 
2893
2823
  .sidebar-head {
2894
2824
  padding: 18px 18px 12px;
2895
- border-bottom: 1px solid rgba(255,255,255,0.04);
2825
+ border-bottom: 1px solid rgba(111,66,232,0.10);
2896
2826
  }
2897
2827
 
2898
2828
  .eyebrow {
@@ -3103,14 +3033,15 @@ body.lattice-ref-graph {
3103
3033
 
3104
3034
  .local-source-btn.primary {
3105
3035
  grid-column: 1 / -1;
3106
- background: #14162c;
3036
+ background: linear-gradient(135deg, #6f42e8, #7b61ff);
3107
3037
  color: #fff;
3108
- border-color: #14162c;
3038
+ border-color: rgba(111,66,232,0.3);
3109
3039
  }
3110
3040
 
3111
3041
  .local-source-btn.primary:hover {
3112
3042
  color: #fff;
3113
- background: #24284a;
3043
+ background: linear-gradient(135deg, #5f35d8, #6b51ef);
3044
+ box-shadow: 0 8px 20px rgba(111,66,232,0.22);
3114
3045
  }
3115
3046
 
3116
3047
  .local-source-btn:disabled {
@@ -3120,24 +3051,49 @@ body.lattice-ref-graph {
3120
3051
  }
3121
3052
 
3122
3053
  .local-option-row {
3123
- display: flex;
3124
- flex-direction: column;
3125
- gap: 6px;
3054
+ display: grid;
3055
+ grid-template-columns: repeat(2, minmax(0, 1fr));
3056
+ gap: 7px;
3126
3057
  }
3127
3058
 
3128
- .local-option-row label {
3059
+ .local-option-btn {
3060
+ min-width: 0;
3061
+ height: 36px;
3062
+ border: 1px solid rgba(111,66,232,0.18);
3063
+ border-radius: 8px;
3064
+ background: #fff;
3065
+ color: var(--muted);
3066
+ cursor: pointer;
3129
3067
  display: inline-flex;
3130
3068
  align-items: center;
3069
+ justify-content: center;
3131
3070
  gap: 6px;
3132
- color: var(--muted);
3071
+ padding: 0 9px;
3133
3072
  font-size: 12px;
3134
- line-height: 1.3;
3135
- white-space: normal;
3073
+ font-weight: 650;
3074
+ line-height: 1;
3075
+ text-align: center;
3076
+ white-space: nowrap;
3136
3077
  }
3137
3078
 
3138
- .local-option-row input {
3139
- margin: 0;
3140
- accent-color: var(--accent);
3079
+ .local-option-btn span {
3080
+ min-width: 0;
3081
+ overflow: hidden;
3082
+ text-overflow: ellipsis;
3083
+ white-space: nowrap;
3084
+ }
3085
+
3086
+ .local-option-btn:hover {
3087
+ border-color: rgba(111,66,232,0.42);
3088
+ color: var(--accent);
3089
+ background: rgba(111,66,232,0.07);
3090
+ }
3091
+
3092
+ .local-option-btn.active {
3093
+ border-color: rgba(111,66,232,0.48);
3094
+ background: rgba(111,66,232,0.11);
3095
+ color: var(--accent);
3096
+ box-shadow: inset 0 0 0 1px rgba(111,66,232,0.12);
3141
3097
  }
3142
3098
 
3143
3099
  .local-audit-grid {
@@ -3217,7 +3173,7 @@ body.lattice-ref-graph {
3217
3173
  height: 10px;
3218
3174
  border-radius: 50%;
3219
3175
  flex-shrink: 0;
3220
- box-shadow: 0 0 0 3px rgba(255,255,255,0.03);
3176
+ box-shadow: 0 0 0 3px rgba(111,66,232,0.08);
3221
3177
  }
3222
3178
 
3223
3179
  .legend-line {
@@ -3479,9 +3435,9 @@ body.lattice-ref-graph {
3479
3435
  pointer-events: none;
3480
3436
  z-index: 0;
3481
3437
  background:
3482
- linear-gradient(135deg, rgba(34,211,160,0.08) 0%, transparent 38%),
3483
- linear-gradient(315deg, rgba(143,178,255,0.12) 0%, transparent 42%),
3484
- linear-gradient(180deg, #22324a 0%, #172233 100%);
3438
+ radial-gradient(circle at 82% 12%, rgba(111,66,232,0.14), transparent 30%),
3439
+ radial-gradient(circle at 10% 80%, rgba(180,160,255,0.16), transparent 35%),
3440
+ linear-gradient(180deg, #f3ecff 0%, #efe8ff 52%, #f2ecff 100%);
3485
3441
  }
3486
3442
 
3487
3443
  .bg-shapes {
@@ -3501,13 +3457,13 @@ body.lattice-ref-graph {
3501
3457
  .bg-orb-1 {
3502
3458
  width: 500px; height: 500px;
3503
3459
  top: -180px; left: -120px;
3504
- background: radial-gradient(circle, #22d3a0, transparent 70%);
3460
+ background: radial-gradient(circle, #9a78f0, transparent 70%);
3505
3461
  opacity: 0.14;
3506
3462
  }
3507
3463
  .bg-orb-2 {
3508
3464
  width: 600px; height: 600px;
3509
3465
  bottom: -200px; right: -150px;
3510
- background: radial-gradient(circle, #818cf8, transparent 70%);
3466
+ background: radial-gradient(circle, #b4a0fd, transparent 70%);
3511
3467
  opacity: 0.11;
3512
3468
  }
3513
3469
  .bg-orb-3 {
@@ -3538,8 +3494,8 @@ body.lattice-ref-graph {
3538
3494
  /* ── 사이드바 ── */
3539
3495
  .sidebar {
3540
3496
  width: 268px;
3541
- background: rgba(27,39,56,0.92);
3542
- border-right: 1px solid rgba(219,235,255,0.14);
3497
+ background: rgba(244,237,255,0.96);
3498
+ border-right: 1px solid rgba(111,66,232,0.13);
3543
3499
  display: flex;
3544
3500
  flex-direction: column;
3545
3501
  min-width: 240px;
@@ -3552,22 +3508,22 @@ body.lattice-ref-graph {
3552
3508
  display: flex;
3553
3509
  align-items: center;
3554
3510
  gap: 12px;
3555
- border-bottom: 1px solid rgba(255,255,255,0.05);
3511
+ border-bottom: 1px solid rgba(111,66,232,0.10);
3556
3512
  position: relative;
3557
3513
  }
3558
3514
 
3559
3515
  .logo-box {
3560
3516
  width: 38px;
3561
3517
  height: 38px;
3562
- background: linear-gradient(135deg, #22d3a0 0%, #818cf8 100%);
3518
+ background: linear-gradient(135deg, #6f42e8 0%, #9a78f0 100%);
3563
3519
  border-radius: 10px;
3564
3520
  display: flex;
3565
3521
  align-items: center;
3566
3522
  justify-content: center;
3567
- color: #040706;
3523
+ color: #fff;
3568
3524
  font-weight: 800;
3569
3525
  font-size: 18px;
3570
- box-shadow: 0 0 20px rgba(34,211,160,0.35), 0 4px 12px rgba(0,0,0,0.4);
3526
+ box-shadow: 0 8px 20px rgba(111,66,232,0.28);
3571
3527
  flex-shrink: 0;
3572
3528
  }
3573
3529
 
@@ -3575,14 +3531,11 @@ body.lattice-ref-graph {
3575
3531
  font-size: 15px;
3576
3532
  font-weight: 800;
3577
3533
  letter-spacing: -0.02em;
3578
- background: linear-gradient(135deg, #fff 40%, rgba(34,211,160,0.9));
3579
- -webkit-background-clip: text;
3580
- -webkit-text-fill-color: transparent;
3581
- background-clip: text;
3534
+ color: #14162c;
3582
3535
  }
3583
3536
 
3584
3537
  .brand-subtitle {
3585
- color: #a78bfa;
3538
+ color: #6f42e8;
3586
3539
  font-size: 10.5px;
3587
3540
  margin-top: 1px;
3588
3541
  letter-spacing: 0.03em;
@@ -3591,8 +3544,8 @@ body.lattice-ref-graph {
3591
3544
  .user-strip {
3592
3545
  padding: 10px 18px;
3593
3546
  font-size: 12px;
3594
- color: #c4b5fd;
3595
- border-bottom: 1px solid rgba(255,255,255,0.04);
3547
+ color: var(--muted);
3548
+ border-bottom: 1px solid rgba(111,66,232,0.10);
3596
3549
  display: flex;
3597
3550
  align-items: center;
3598
3551
  gap: 8px;
@@ -3601,21 +3554,21 @@ body.lattice-ref-graph {
3601
3554
  .user-avatar {
3602
3555
  width: 26px; height: 26px;
3603
3556
  border-radius: 50%;
3604
- background: linear-gradient(135deg, var(--accent), var(--accent-3));
3557
+ background: linear-gradient(135deg, #6f42e8, #9a78f0);
3605
3558
  display: flex; align-items: center; justify-content: center;
3606
- font-size: 11px; font-weight: 700; color: #040706;
3559
+ font-size: 11px; font-weight: 700; color: #fff;
3607
3560
  flex-shrink: 0;
3608
3561
  }
3609
3562
 
3610
3563
  .sidebar-search {
3611
3564
  padding: 8px 10px;
3612
- border-bottom: 1px solid rgba(255,255,255,0.05);
3565
+ border-bottom: 1px solid rgba(111,66,232,0.10);
3613
3566
  }
3614
3567
  .sidebar-search input {
3615
3568
  width: 100%;
3616
3569
  padding: 7px 10px 7px 30px;
3617
- background: rgba(255,255,255,0.04);
3618
- border: 1px solid rgba(255,255,255,0.07);
3570
+ background: rgba(255,255,255,0.60);
3571
+ border: 1px solid rgba(111,66,232,0.14);
3619
3572
  border-radius: 8px;
3620
3573
  color: var(--text);
3621
3574
  font-size: 12px;
@@ -3676,7 +3629,7 @@ body.lattice-ref-graph {
3676
3629
  border-radius: var(--radius-sm);
3677
3630
  cursor: pointer;
3678
3631
  font-size: 12.5px;
3679
- color: #c4b5fd;
3632
+ color: var(--muted);
3680
3633
  white-space: nowrap;
3681
3634
  overflow: hidden;
3682
3635
  text-overflow: ellipsis;
@@ -3693,28 +3646,28 @@ body.lattice-ref-graph {
3693
3646
  content: '';
3694
3647
  width: 4px; height: 4px;
3695
3648
  border-radius: 50%;
3696
- background: #a78bfa;
3649
+ background: rgba(111,66,232,0.4);
3697
3650
  flex-shrink: 0;
3698
3651
  transition: all .15s;
3699
3652
  }
3700
3653
 
3701
3654
  .history-item:hover {
3702
- background: rgba(255,255,255,0.045);
3655
+ background: rgba(111,66,232,0.06);
3703
3656
  color: var(--text);
3704
3657
  border-left-color: var(--accent);
3705
3658
  }
3706
3659
  .history-item:hover::before { background: var(--accent); }
3707
3660
  .history-item.active {
3708
- background: rgba(34,211,160,0.08);
3661
+ background: rgba(111,66,232,0.08);
3709
3662
  color: var(--text);
3710
- border-color: rgba(34,211,160,0.16);
3663
+ border-color: rgba(111,66,232,0.16);
3711
3664
  border-left-color: var(--accent);
3712
3665
  }
3713
3666
  .history-item.active::before { background: var(--accent); }
3714
3667
 
3715
3668
  .sidebar-footer {
3716
3669
  padding: 14px;
3717
- border-top: 1px solid rgba(255,255,255,0.05);
3670
+ border-top: 1px solid rgba(111,66,232,0.10);
3718
3671
  display: flex;
3719
3672
  flex-direction: column;
3720
3673
  gap: 6px;
@@ -3724,8 +3677,8 @@ body.lattice-ref-graph {
3724
3677
  width: 100%;
3725
3678
  padding: 11px 12px;
3726
3679
  border-radius: var(--radius-sm);
3727
- background: linear-gradient(135deg, rgba(34,211,160,0.12), rgba(129,140,248,0.08));
3728
- border: 1px solid rgba(34,211,160,0.2);
3680
+ background: rgba(244,238,255,0.88);
3681
+ border: 1px solid rgba(111,66,232,0.20);
3729
3682
  color: var(--text);
3730
3683
  cursor: pointer;
3731
3684
  display: flex;
@@ -3737,14 +3690,14 @@ body.lattice-ref-graph {
3737
3690
  transition: all .18s;
3738
3691
  }
3739
3692
  .new-chat-btn:hover {
3740
- background: linear-gradient(135deg, rgba(34,211,160,0.2), rgba(129,140,248,0.14));
3741
- border-color: rgba(34,211,160,0.4);
3742
- box-shadow: 0 0 16px rgba(34,211,160,0.12);
3693
+ background: rgba(111,66,232,0.10);
3694
+ border-color: rgba(111,66,232,0.36);
3695
+ box-shadow: 0 0 16px rgba(111,66,232,0.12);
3743
3696
  }
3744
3697
 
3745
3698
  .sidebar-primary-actions {
3746
3699
  padding: 8px 10px 10px;
3747
- border-bottom: 1px solid rgba(255,255,255,0.05);
3700
+ border-bottom: 1px solid rgba(111,66,232,0.10);
3748
3701
  }
3749
3702
 
3750
3703
  .admin-btn {
@@ -3805,8 +3758,8 @@ body.lattice-ref-graph {
3805
3758
  justify-content: space-between;
3806
3759
  gap: 12px;
3807
3760
  padding: 10px 22px;
3808
- border-bottom: 1px solid rgba(219,235,255,0.12);
3809
- background: rgba(29,42,60,0.82);
3761
+ border-bottom: 1px solid rgba(111,66,232,0.10);
3762
+ background: rgba(244,238,255,0.92);
3810
3763
  backdrop-filter: blur(20px);
3811
3764
  -webkit-backdrop-filter: blur(20px);
3812
3765
  position: relative;
@@ -3825,8 +3778,8 @@ body.lattice-ref-graph {
3825
3778
  display: inline-flex;
3826
3779
  align-items: center;
3827
3780
  gap: 8px;
3828
- border: 1px solid rgba(34,211,160,0.25);
3829
- background: rgba(34,211,160,0.07);
3781
+ border: 1px solid rgba(111,66,232,0.20);
3782
+ background: rgba(111,66,232,0.07);
3830
3783
  border-radius: 999px;
3831
3784
  padding: 6px 14px 6px 10px;
3832
3785
  font-size: 13px;
@@ -3838,8 +3791,8 @@ body.lattice-ref-graph {
3838
3791
  display: inline-flex;
3839
3792
  align-items: center;
3840
3793
  gap: 6px;
3841
- border: 1px solid rgba(219,235,255,0.14);
3842
- background: rgba(255,255,255,0.06);
3794
+ border: 1px solid rgba(111,66,232,0.14);
3795
+ background: rgba(255,255,255,0.60);
3843
3796
  border-radius: 999px;
3844
3797
  padding: 5px 11px;
3845
3798
  font-size: 11.5px;
@@ -3849,22 +3802,22 @@ body.lattice-ref-graph {
3849
3802
 
3850
3803
  .status-pill.vpc-ready {
3851
3804
  color: var(--accent);
3852
- border-color: rgba(34,211,160,0.3);
3853
- background: rgba(34,211,160,0.07);
3805
+ border-color: rgba(111,66,232,0.24);
3806
+ background: rgba(111,66,232,0.07);
3854
3807
  }
3855
3808
 
3856
3809
  .status-dot {
3857
3810
  width: 7px; height: 7px;
3858
3811
  background: var(--accent);
3859
3812
  border-radius: 50%;
3860
- box-shadow: 0 0 8px var(--accent), 0 0 16px rgba(34,211,160,0.4);
3813
+ box-shadow: 0 0 8px var(--accent), 0 0 16px rgba(111,66,232,0.32);
3861
3814
  flex: 0 0 auto;
3862
3815
  animation: pulse-dot 2.5s ease-in-out infinite;
3863
3816
  }
3864
3817
 
3865
3818
  @keyframes pulse-dot {
3866
- 0%, 100% { box-shadow: 0 0 6px var(--accent), 0 0 12px rgba(34,211,160,0.3); }
3867
- 50% { box-shadow: 0 0 12px var(--accent), 0 0 24px rgba(34,211,160,0.5); }
3819
+ 0%, 100% { box-shadow: 0 0 6px var(--accent), 0 0 12px rgba(111,66,232,0.24); }
3820
+ 50% { box-shadow: 0 0 12px var(--accent), 0 0 24px rgba(111,66,232,0.40); }
3868
3821
  }
3869
3822
 
3870
3823
  .logout-btn {
@@ -3880,14 +3833,14 @@ body.lattice-ref-graph {
3880
3833
  .logout-btn:hover {
3881
3834
  color: var(--text);
3882
3835
  border-color: rgba(255,255,255,0.08);
3883
- background: rgba(255,255,255,0.04);
3836
+ background: rgba(255,255,255,0.60);
3884
3837
  }
3885
3838
 
3886
3839
  .acct-modal-overlay {
3887
3840
  display: none;
3888
3841
  position: fixed;
3889
3842
  inset: 0;
3890
- background: rgba(0,0,0,0.6);
3843
+ background: rgba(111,66,232,0.18);
3891
3844
  backdrop-filter: blur(4px);
3892
3845
  z-index: 1000;
3893
3846
  align-items: center;
@@ -3900,7 +3853,7 @@ body.lattice-ref-graph {
3900
3853
  display: none;
3901
3854
  position: fixed;
3902
3855
  inset: 0;
3903
- background: rgba(0,0,0,0.6);
3856
+ background: rgba(111,66,232,0.18);
3904
3857
  backdrop-filter: blur(4px);
3905
3858
  z-index: 1000;
3906
3859
  align-items: center;
@@ -3908,31 +3861,31 @@ body.lattice-ref-graph {
3908
3861
  }
3909
3862
  .mcp-modal-overlay.open { display: flex; }
3910
3863
  .mcp-modal {
3911
- background: var(--surface, #1e293b);
3912
- border: 1px solid rgba(255,255,255,0.08);
3864
+ background: rgba(255,255,255,0.96);
3865
+ border: 1px solid rgba(111,66,232,0.16);
3913
3866
  border-radius: 16px;
3914
3867
  width: 100%;
3915
3868
  max-width: 560px;
3916
3869
  max-height: 80vh;
3917
3870
  display: flex;
3918
3871
  flex-direction: column;
3919
- box-shadow: 0 20px 60px rgba(0,0,0,0.5);
3872
+ box-shadow: 0 20px 60px rgba(88,72,150,0.20);
3920
3873
  overflow: hidden;
3921
3874
  }
3922
3875
  .mcp-modal-header {
3923
3876
  padding: 18px 20px;
3924
- border-bottom: 1px solid rgba(255,255,255,0.07);
3877
+ border-bottom: 1px solid rgba(111,66,232,0.12);
3925
3878
  display: flex; align-items: center; justify-content: space-between;
3926
3879
  }
3927
3880
  .mcp-modal-header h3 { font-size: 15px; font-weight: 700; color: var(--text); }
3928
3881
  .mcp-modal-close { background: none; border: none; color: var(--faint); cursor: pointer; font-size: 18px; padding: 2px 6px; border-radius: 6px; }
3929
- .mcp-modal-close:hover { color: var(--text); background: rgba(255,255,255,0.07); }
3882
+ .mcp-modal-close:hover { color: var(--text); background: rgba(111,66,232,0.07); }
3930
3883
  .mcp-modal-body.lattice-ref-chat { flex: 1; overflow-y: auto; padding: 16px 20px; }
3931
3884
  .mcp-section-label { font-size: 10px; font-weight: 700; color: var(--faint); text-transform: uppercase; letter-spacing: .08em; margin: 12px 0 8px; }
3932
3885
  .mcp-item {
3933
3886
  display: flex; align-items: center; gap: 12px;
3934
3887
  padding: 11px 14px;
3935
- background: rgba(255,255,255,0.03);
3888
+ background: rgba(255,255,255,0.60);
3936
3889
  border: 1px solid rgba(255,255,255,0.06);
3937
3890
  border-radius: 10px;
3938
3891
  margin-bottom: 6px;
@@ -3949,7 +3902,7 @@ body.lattice-ref-graph {
3949
3902
  color: var(--accent); cursor: pointer; transition: all .15s; flex-shrink: 0;
3950
3903
  }
3951
3904
  .mcp-install-btn:hover { background: rgba(111,66,232,0.16); }
3952
- .mcp-install-btn.installed { border-color: rgba(255,255,255,0.1); background: rgba(255,255,255,0.04); color: var(--faint); }
3905
+ .mcp-install-btn.installed { border-color: rgba(111,66,232,0.12); background: rgba(255,255,255,0.60); color: var(--faint); }
3953
3906
  /* MCP 소스 배지 */
3954
3907
  .mcp-source-badge {
3955
3908
  font-size: 9.5px; font-weight: 700; padding: 2px 6px; border-radius: 4px;
@@ -3989,36 +3942,36 @@ body.lattice-ref-graph {
3989
3942
  }
3990
3943
  .mcp-delete-btn:hover { background: rgba(255,80,80,0.18); }
3991
3944
  .acct-modal {
3992
- background: var(--surface, #1e293b);
3993
- border: 1px solid rgba(255,255,255,0.08);
3945
+ background: rgba(255,255,255,0.96);
3946
+ border: 1px solid rgba(111,66,232,0.16);
3994
3947
  border-radius: 16px;
3995
3948
  width: 100%;
3996
3949
  max-width: 380px;
3997
3950
  display: flex;
3998
3951
  flex-direction: column;
3999
- box-shadow: 0 20px 60px rgba(0,0,0,0.5);
3952
+ box-shadow: 0 20px 60px rgba(88,72,150,0.20);
4000
3953
  overflow: hidden;
4001
3954
  }
4002
3955
  .acct-tabs {
4003
3956
  display: flex;
4004
- border-bottom: 1px solid rgba(255,255,255,0.07);
3957
+ border-bottom: 1px solid rgba(111,66,232,0.12);
4005
3958
  }
4006
3959
  .acct-tab {
4007
3960
  flex: 1; padding: 14px; font-size: 13px; font-weight: 500;
4008
3961
  background: none; border: none; color: var(--muted); cursor: pointer;
4009
3962
  transition: all .15s; border-bottom: 2px solid transparent;
4010
3963
  }
4011
- .acct-tab.active { color: var(--text, #f8fafc); border-bottom-color: var(--accent, #6366f1); }
3964
+ .acct-tab.active { color: var(--text, #14162c); border-bottom-color: var(--accent, #6366f1); }
4012
3965
  .acct-body.lattice-ref-chat { padding: 24px; display: flex; flex-direction: column; gap: 14px; }
4013
3966
  .acct-tab-panel { display: none; flex-direction: column; gap: 14px; }
4014
3967
  .acct-tab-panel.active { display: flex; }
4015
3968
  .pw-field { display: flex; flex-direction: column; gap: 5px; }
4016
3969
  .pw-field label { font-size: 11px; color: var(--muted); }
4017
3970
  .pw-field input {
4018
- background: rgba(0,0,0,0.3);
4019
- border: 1px solid rgba(255,255,255,0.08);
3971
+ background: rgba(255,255,255,0.88);
3972
+ border: 1px solid rgba(111,66,232,0.18);
4020
3973
  border-radius: 8px;
4021
- color: var(--text, #f8fafc);
3974
+ color: var(--text, #14162c);
4022
3975
  padding: 8px 12px;
4023
3976
  font-size: 13px;
4024
3977
  outline: none;
@@ -4030,8 +3983,8 @@ body.lattice-ref-graph {
4030
3983
  flex: 1; padding: 8px; border-radius: 8px; border: none;
4031
3984
  cursor: pointer; font-size: 13px; font-weight: 500; transition: all .15s;
4032
3985
  }
4033
- .pw-cancel { background: rgba(255,255,255,0.06); color: var(--muted); }
4034
- .pw-cancel:hover { background: rgba(255,255,255,0.1); }
3986
+ .pw-cancel { background: rgba(111,66,232,0.08); color: var(--muted); }
3987
+ .pw-cancel:hover { background: rgba(111,66,232,0.13); }
4035
3988
  .pw-submit { background: var(--accent, #6366f1); color: #fff; }
4036
3989
  .pw-submit:hover { opacity: 0.85; }
4037
3990
  .pw-msg { font-size: 12px; min-height: 16px; }
@@ -4044,11 +3997,11 @@ body.lattice-ref-graph {
4044
3997
  position: absolute;
4045
3998
  top: calc(100% + 6px);
4046
3999
  right: 0;
4047
- background: #1e293b;
4048
- border: 1px solid rgba(255,255,255,0.1);
4000
+ background: rgba(255,255,255,0.96);
4001
+ border: 1px solid rgba(111,66,232,0.16);
4049
4002
  border-radius: 10px;
4050
4003
  overflow: hidden;
4051
- box-shadow: 0 8px 24px rgba(0,0,0,0.4);
4004
+ box-shadow: 0 8px 24px rgba(88,72,150,0.16);
4052
4005
  z-index: 200;
4053
4006
  min-width: 90px;
4054
4007
  }
@@ -4058,7 +4011,7 @@ body.lattice-ref-graph {
4058
4011
  padding: 9px 14px; font-size: 13px; cursor: pointer;
4059
4012
  color: var(--muted); transition: background .12s;
4060
4013
  }
4061
- .lang-option:hover { background: rgba(255,255,255,0.06); color: var(--text, #f8fafc); }
4014
+ .lang-option:hover { background: rgba(111,66,232,0.07); color: var(--text, #14162c); }
4062
4015
  .lang-option.active { color: var(--accent, #6366f1); font-weight: 600; }
4063
4016
 
4064
4017
  .auth-lang-picker {
@@ -4100,24 +4053,24 @@ body.lattice-ref-graph {
4100
4053
  align-items: center;
4101
4054
  justify-content: space-between;
4102
4055
  gap: 12px;
4103
- box-shadow: var(--shadow-sm), inset 0 1px 0 rgba(255,255,255,0.04);
4056
+ box-shadow: var(--shadow-sm), inset 0 1px 0 rgba(255,255,255,0.80);
4104
4057
  backdrop-filter: blur(10px);
4105
4058
  transition: all .2s;
4106
4059
  }
4107
4060
 
4108
4061
  .ops-card.primary {
4109
- border-color: rgba(34,211,160,0.22);
4110
- background: linear-gradient(135deg, rgba(34,211,160,0.1) 0%, rgba(15,19,24,0.9) 60%);
4111
- box-shadow: var(--shadow-sm), var(--glow-green), inset 0 1px 0 rgba(34,211,160,0.08);
4062
+ border-color: rgba(111,66,232,0.18);
4063
+ background: linear-gradient(135deg, rgba(111,66,232,0.10) 0%, rgba(248,243,255,0.92) 60%);
4064
+ box-shadow: var(--shadow-sm), var(--glow-green), inset 0 1px 0 rgba(111,66,232,0.08);
4112
4065
  }
4113
4066
 
4114
4067
  .ops-card.interactive { cursor: pointer; }
4115
4068
 
4116
4069
  .ops-card.interactive:hover {
4117
4070
  transform: translateY(-2px);
4118
- border-color: rgba(34,211,160,0.4);
4119
- background: linear-gradient(135deg, rgba(34,211,160,0.16) 0%, rgba(15,19,24,0.95) 60%);
4120
- box-shadow: var(--shadow), 0 0 30px rgba(34,211,160,0.15);
4071
+ border-color: rgba(111,66,232,0.32);
4072
+ background: linear-gradient(135deg, rgba(111,66,232,0.14) 0%, rgba(248,243,255,0.96) 60%);
4073
+ box-shadow: var(--shadow), 0 0 30px rgba(111,66,232,0.14);
4121
4074
  }
4122
4075
 
4123
4076
  .ops-label {
@@ -4158,15 +4111,15 @@ body.lattice-ref-graph {
4158
4111
  }
4159
4112
 
4160
4113
  .ops-card.primary .ops-icon {
4161
- background: linear-gradient(135deg, rgba(34,211,160,0.22), rgba(129,140,248,0.14));
4162
- border: 1px solid rgba(34,211,160,0.25);
4114
+ background: linear-gradient(135deg, rgba(111,66,232,0.18), rgba(129,140,248,0.14));
4115
+ border: 1px solid rgba(111,66,232,0.20);
4163
4116
  color: var(--accent);
4164
- box-shadow: 0 0 16px rgba(34,211,160,0.2);
4117
+ box-shadow: 0 0 16px rgba(111,66,232,0.16);
4165
4118
  }
4166
4119
 
4167
4120
  .ops-card:not(.primary) .ops-icon {
4168
- background: rgba(255,255,255,0.04);
4169
- border: 1px solid rgba(255,255,255,0.07);
4121
+ background: rgba(255,255,255,0.60);
4122
+ border: 1px solid rgba(111,66,232,0.14);
4170
4123
  color: var(--accent-3);
4171
4124
  }
4172
4125
 
@@ -4230,7 +4183,7 @@ body.lattice-ref-graph {
4230
4183
  .bubble p { margin-bottom: 8px; }
4231
4184
  .bubble ul, .bubble ol { padding-left: 20px; margin-bottom: 8px; }
4232
4185
  .bubble code:not(pre code) {
4233
- background: rgba(255,255,255,0.08);
4186
+ background: rgba(111,66,232,0.08);
4234
4187
  padding: 2px 5px;
4235
4188
  border-radius: 4px;
4236
4189
  font-family: 'JetBrains Mono', 'Fira Code', monospace;
@@ -4238,20 +4191,19 @@ body.lattice-ref-graph {
4238
4191
  }
4239
4192
 
4240
4193
  .user .bubble {
4241
- background: linear-gradient(135deg, #1a7a60 0%, #1d5f80 70%, #2a4fa0 100%);
4242
- color: #f0fdf9;
4194
+ background: linear-gradient(135deg, #6f42e8 0%, #5832c8 70%, #7b61ff 100%);
4195
+ color: #fff;
4243
4196
  border-bottom-right-radius: 4px;
4244
- box-shadow: 0 4px 20px rgba(26,122,96,0.35), 0 2px 6px rgba(0,0,0,0.3);
4245
- border: 1px solid rgba(34,211,160,0.15);
4197
+ box-shadow: 0 6px 24px rgba(111,66,232,0.28);
4198
+ border: none;
4246
4199
  }
4247
4200
 
4248
4201
  .ai .bubble {
4249
- background: rgba(37,52,73,0.9);
4202
+ background: rgba(250,246,255,0.97);
4250
4203
  color: var(--text);
4251
- border: 1px solid rgba(219,235,255,0.15);
4204
+ border: 1px solid rgba(111,66,232,0.12);
4252
4205
  border-bottom-left-radius: 4px;
4253
- box-shadow: 0 4px 20px rgba(7,14,24,0.22), inset 0 1px 0 rgba(255,255,255,0.06);
4254
- backdrop-filter: blur(8px);
4206
+ box-shadow: 0 4px 18px rgba(88,72,150,0.08);
4255
4207
  }
4256
4208
 
4257
4209
  /* ── 코드 블록 ── */
@@ -4261,13 +4213,13 @@ body.lattice-ref-graph {
4261
4213
  overflow: hidden;
4262
4214
  border-radius: var(--radius-sm);
4263
4215
  margin: 12px 0;
4264
- background: #060810;
4216
+ background: rgba(255,255,255,0.86);
4265
4217
  border: 1px solid rgba(129,140,248,0.15);
4266
- box-shadow: 0 4px 16px rgba(0,0,0,0.3);
4218
+ box-shadow: 0 4px 16px rgba(88,72,150,0.10);
4267
4219
  }
4268
4220
 
4269
4221
  .code-header {
4270
- background: rgba(10,12,20,0.9);
4222
+ background: rgba(111,66,232,0.08);
4271
4223
  color: var(--muted);
4272
4224
  font-size: 11px;
4273
4225
  padding: 8px 12px;
@@ -4294,7 +4246,7 @@ body.lattice-ref-graph {
4294
4246
  white-space: pre;
4295
4247
  padding: 16px;
4296
4248
  font-size: 13px;
4297
- background: #060810;
4249
+ background: rgba(255,255,255,0.86);
4298
4250
  scrollbar-width: thin;
4299
4251
  font-family: 'JetBrains Mono', 'Fira Code', monospace;
4300
4252
  line-height: 1.6;
@@ -4334,7 +4286,7 @@ body.lattice-ref-graph {
4334
4286
  display: none;
4335
4287
  position: fixed;
4336
4288
  inset: 0;
4337
- background: rgba(0,0,0,0.5);
4289
+ background: rgba(111,66,232,0.18);
4338
4290
  z-index: 99;
4339
4291
  backdrop-filter: blur(2px);
4340
4292
  }
@@ -4374,27 +4326,26 @@ body.lattice-ref-graph {
4374
4326
  .input-area {
4375
4327
  padding: 14px 20px 20px;
4376
4328
  padding-bottom: max(20px, env(safe-area-inset-bottom));
4377
- background: linear-gradient(0deg, rgba(24,35,50,0.96) 0%, transparent 100%);
4329
+ background: linear-gradient(0deg, rgba(243,236,255,0.98) 0%, transparent 100%);
4378
4330
  }
4379
4331
 
4380
4332
  .input-box {
4381
- background: rgba(37,52,73,0.92);
4382
- border: 1px solid rgba(219,235,255,0.16);
4333
+ background: rgba(248,243,255,0.97);
4334
+ border: 1px solid rgba(111,66,232,0.16);
4383
4335
  border-radius: var(--radius);
4384
4336
  padding: 10px 12px 10px;
4385
4337
  display: flex;
4386
4338
  flex-direction: column;
4387
4339
  gap: 8px;
4388
- box-shadow: var(--shadow), inset 0 1px 0 rgba(255,255,255,0.04);
4340
+ box-shadow: 0 8px 32px rgba(88,72,150,0.10);
4389
4341
  max-width: var(--content-width);
4390
4342
  margin: 0 auto;
4391
4343
  transition: border-color .2s, box-shadow .2s;
4392
- backdrop-filter: blur(16px);
4393
4344
  }
4394
4345
 
4395
4346
  .input-box:focus-within {
4396
- border-color: rgba(34,211,160,0.4);
4397
- box-shadow: var(--shadow), var(--glow-green), inset 0 1px 0 rgba(34,211,160,0.06);
4347
+ border-color: rgba(111,66,232,0.36);
4348
+ box-shadow: 0 8px 32px rgba(88,72,150,0.14), 0 0 0 3px rgba(111,66,232,0.08);
4398
4349
  }
4399
4350
 
4400
4351
  .input-row {
@@ -4432,12 +4383,12 @@ body.lattice-ref-graph {
4432
4383
  }
4433
4384
  .action-btn:hover {
4434
4385
  color: var(--accent);
4435
- background: rgba(34,211,160,0.08);
4386
+ background: rgba(111,66,232,0.08);
4436
4387
  }
4437
4388
 
4438
4389
  .send-btn {
4439
- background: linear-gradient(135deg, var(--accent), #1ab88c);
4440
- color: #030d09;
4390
+ background: linear-gradient(135deg, #6f42e8, #7b61ff);
4391
+ color: #fff;
4441
4392
  border: none;
4442
4393
  width: 38px; height: 38px;
4443
4394
  border-radius: 10px;
@@ -4446,13 +4397,13 @@ body.lattice-ref-graph {
4446
4397
  align-items: center;
4447
4398
  justify-content: center;
4448
4399
  font-weight: 800;
4449
- box-shadow: 0 0 16px rgba(34,211,160,0.3), 0 4px 12px rgba(0,0,0,0.3);
4400
+ box-shadow: 0 8px 20px rgba(111,66,232,0.28);
4450
4401
  transition: all .18s;
4451
4402
  flex-shrink: 0;
4452
4403
  }
4453
4404
  .send-btn:hover {
4454
- background: linear-gradient(135deg, #2de8b0, #22d3a0);
4455
- box-shadow: 0 0 24px rgba(34,211,160,0.45), 0 4px 14px rgba(0,0,0,0.3);
4405
+ background: linear-gradient(135deg, #5f35d8, #6b51ef);
4406
+ box-shadow: 0 12px 28px rgba(111,66,232,0.36);
4456
4407
  transform: scale(1.05);
4457
4408
  }
4458
4409
  .send-btn:disabled {
@@ -4469,7 +4420,7 @@ body.lattice-ref-graph {
4469
4420
  gap: 5px;
4470
4421
  padding: 2px 2px 0;
4471
4422
  flex-wrap: wrap;
4472
- border-top: 1px solid rgba(255,255,255,0.04);
4423
+ border-top: 1px solid rgba(111,66,232,0.10);
4473
4424
  }
4474
4425
 
4475
4426
  .file-toolbar-label {
@@ -4488,7 +4439,7 @@ body.lattice-ref-graph {
4488
4439
  padding: 4px 10px;
4489
4440
  border-radius: 6px;
4490
4441
  border: 1px solid rgba(255,255,255,0.06);
4491
- background: rgba(255,255,255,0.03);
4442
+ background: rgba(255,255,255,0.60);
4492
4443
  color: var(--muted);
4493
4444
  font-size: 11.5px;
4494
4445
  font-weight: 600;
@@ -4497,9 +4448,9 @@ body.lattice-ref-graph {
4497
4448
  }
4498
4449
 
4499
4450
  .file-type-btn:hover {
4500
- border-color: rgba(34,211,160,0.35);
4451
+ border-color: rgba(111,66,232,0.28);
4501
4452
  color: var(--accent);
4502
- background: rgba(34,211,160,0.07);
4453
+ background: rgba(111,66,232,0.07);
4503
4454
  }
4504
4455
 
4505
4456
  /* ── 멀티 LLM 파이프라인 ── */
@@ -4530,7 +4481,7 @@ body.lattice-ref-graph {
4530
4481
  background: rgba(99,102,241,0.07); border: 1px solid rgba(99,102,241,0.2);
4531
4482
  border-radius: 12px; padding: 16px; margin-top: 4px;
4532
4483
  }
4533
- .plan-approval-card h4 { margin: 0 0 10px; color: #818cf8; font-size: 14px; }
4484
+ .plan-approval-card h4 { margin: 0 0 10px; color: #6f42e8; font-size: 14px; }
4534
4485
  .plan-approval-card ol { margin: 0 0 12px; padding-left: 20px; color: var(--text); font-size: 13px; line-height: 1.8; }
4535
4486
  .plan-approval-card .plan-meta { font-size: 11px; color: var(--muted); margin-bottom: 12px; }
4536
4487
  .plan-approval-actions { display: flex; gap: 8px; }
@@ -4646,7 +4597,7 @@ body.lattice-ref-graph {
4646
4597
  padding: 24px;
4647
4598
  max-width: 420px;
4648
4599
  width: 90%;
4649
- box-shadow: 0 24px 60px rgba(0,0,0,0.5);
4600
+ box-shadow: 0 24px 60px rgba(88,72,150,0.22);
4650
4601
  }
4651
4602
 
4652
4603
  .perm-icon {
@@ -4664,7 +4615,7 @@ body.lattice-ref-graph {
4664
4615
  .perm-path {
4665
4616
  font-family: monospace;
4666
4617
  font-size: 12px;
4667
- background: rgba(255,255,255,0.05);
4618
+ background: rgba(111,66,232,0.05);
4668
4619
  border: 1px solid var(--border);
4669
4620
  border-radius: 6px;
4670
4621
  padding: 8px 10px;
@@ -4709,7 +4660,7 @@ body.lattice-ref-graph {
4709
4660
  }
4710
4661
 
4711
4662
  .perm-allow-btn:hover { background: rgba(48, 167, 137, 0.25); }
4712
- .perm-deny-btn:hover { background: rgba(255,255,255,0.04); }
4663
+ .perm-deny-btn:hover { background: rgba(255,255,255,0.60); }
4713
4664
 
4714
4665
  .preview-bar {
4715
4666
  display: flex;
@@ -4759,7 +4710,7 @@ body.lattice-ref-graph {
4759
4710
  position: absolute;
4760
4711
  inset: 0;
4761
4712
  background:
4762
- radial-gradient(ellipse 70% 60% at 20% 20%, rgba(34,211,160,0.14) 0%, transparent 55%),
4713
+ radial-gradient(ellipse 70% 60% at 20% 20%, rgba(111,66,232,0.14) 0%, transparent 55%),
4763
4714
  radial-gradient(ellipse 50% 50% at 80% 80%, rgba(129,140,248,0.12) 0%, transparent 55%);
4764
4715
  pointer-events: none;
4765
4716
  }
@@ -4773,7 +4724,7 @@ body.lattice-ref-graph {
4773
4724
  .auth-orb-1 {
4774
4725
  width: 400px; height: 400px;
4775
4726
  top: -150px; left: -100px;
4776
- background: rgba(34,211,160,0.15);
4727
+ background: rgba(111,66,232,0.14);
4777
4728
  }
4778
4729
  .auth-orb-2 {
4779
4730
  width: 350px; height: 350px;
@@ -4783,11 +4734,11 @@ body.lattice-ref-graph {
4783
4734
 
4784
4735
  .auth-card {
4785
4736
  width: min(400px, 100%);
4786
- background: rgba(12,16,22,0.9);
4787
- border: 1px solid rgba(255,255,255,0.08);
4737
+ background: rgba(255,255,255,0.94);
4738
+ border: 1px solid rgba(111,66,232,0.16);
4788
4739
  border-radius: 20px;
4789
4740
  padding: 36px 32px;
4790
- box-shadow: var(--shadow), 0 0 0 1px rgba(34,211,160,0.05);
4741
+ box-shadow: var(--shadow), 0 0 0 1px rgba(111,66,232,0.05);
4791
4742
  position: relative;
4792
4743
  z-index: 1;
4793
4744
  backdrop-filter: blur(24px);
@@ -4799,17 +4750,17 @@ body.lattice-ref-graph {
4799
4750
  top: 0; left: 50%;
4800
4751
  transform: translateX(-50%);
4801
4752
  width: 60%; height: 1px;
4802
- background: linear-gradient(90deg, transparent, rgba(34,211,160,0.5), transparent);
4753
+ background: linear-gradient(90deg, transparent, rgba(111,66,232,0.40), transparent);
4803
4754
  }
4804
4755
 
4805
4756
  .auth-logo {
4806
4757
  width: 52px; height: 52px;
4807
- background: linear-gradient(135deg, #22d3a0, #818cf8);
4758
+ background: linear-gradient(135deg, #6f42e8, #9a78f0);
4808
4759
  border-radius: 14px;
4809
4760
  display: flex; align-items: center; justify-content: center;
4810
- font-size: 24px; color: #040706;
4761
+ font-size: 24px; color: #fff;
4811
4762
  margin: 0 auto 16px;
4812
- box-shadow: 0 0 30px rgba(34,211,160,0.3), 0 8px 24px rgba(0,0,0,0.4);
4763
+ box-shadow: 0 0 30px rgba(111,66,232,0.24), 0 8px 24px rgba(88,72,150,0.16);
4813
4764
  }
4814
4765
 
4815
4766
  .auth-title {
@@ -4817,7 +4768,7 @@ body.lattice-ref-graph {
4817
4768
  text-align: center;
4818
4769
  font-size: 22px;
4819
4770
  font-weight: 800;
4820
- background: linear-gradient(135deg, #fff 40%, rgba(34,211,160,0.9));
4771
+ background: linear-gradient(135deg, #14162c 35%, #6f42e8 82%);
4821
4772
  -webkit-background-clip: text;
4822
4773
  -webkit-text-fill-color: transparent;
4823
4774
  background-clip: text;
@@ -4834,7 +4785,7 @@ body.lattice-ref-graph {
4834
4785
  width: 100%;
4835
4786
  padding: 12px 14px;
4836
4787
  margin-bottom: 10px;
4837
- background: rgba(255,255,255,0.04);
4788
+ background: rgba(255,255,255,0.60);
4838
4789
  border: 1px solid rgba(255,255,255,0.08);
4839
4790
  color: var(--text);
4840
4791
  border-radius: 10px;
@@ -4845,8 +4796,8 @@ body.lattice-ref-graph {
4845
4796
  }
4846
4797
 
4847
4798
  .auth-input:focus {
4848
- border-color: rgba(34,211,160,0.5);
4849
- box-shadow: 0 0 0 3px rgba(34,211,160,0.08);
4799
+ border-color: rgba(111,66,232,0.40);
4800
+ box-shadow: 0 0 0 3px rgba(111,66,232,0.08);
4850
4801
  }
4851
4802
 
4852
4803
  .auth-input::placeholder { color: var(--faint); }
@@ -4854,21 +4805,21 @@ body.lattice-ref-graph {
4854
4805
  .auth-submit {
4855
4806
  width: 100%;
4856
4807
  padding: 13px;
4857
- background: linear-gradient(135deg, #22d3a0, #1ab88c);
4808
+ background: linear-gradient(135deg, #6f42e8, #5832c8);
4858
4809
  color: #030d09;
4859
4810
  border: none;
4860
4811
  border-radius: 10px;
4861
4812
  cursor: pointer;
4862
4813
  font-weight: 800;
4863
4814
  font-size: 14px;
4864
- box-shadow: 0 0 20px rgba(34,211,160,0.3), 0 4px 12px rgba(0,0,0,0.3);
4815
+ box-shadow: 0 0 20px rgba(111,66,232,0.24), 0 4px 12px rgba(0,0,0,0.3);
4865
4816
  transition: all .18s;
4866
4817
  margin-top: 4px;
4867
4818
  }
4868
4819
 
4869
4820
  .auth-submit:hover {
4870
- background: linear-gradient(135deg, #2de8b0, #22d3a0);
4871
- box-shadow: 0 0 30px rgba(34,211,160,0.4), 0 4px 14px rgba(0,0,0,0.3);
4821
+ background: linear-gradient(135deg, #6f42e8, #9a78f0);
4822
+ box-shadow: 0 0 30px rgba(111,66,232,0.32), 0 4px 14px rgba(0,0,0,0.3);
4872
4823
  transform: translateY(-1px);
4873
4824
  }
4874
4825
 
@@ -5280,7 +5231,7 @@ body.lattice-ref-graph {
5280
5231
  padding: 10px 14px;
5281
5232
  border-radius: 8px;
5282
5233
  border: 1px solid var(--border);
5283
- background: rgba(255,255,255,0.02);
5234
+ background: rgba(248,243,255,0.50);
5284
5235
  margin-bottom: 16px;
5285
5236
  font-size: 13px;
5286
5237
  }
@@ -5303,7 +5254,7 @@ body.lattice-ref-graph {
5303
5254
  border-radius: 8px;
5304
5255
  padding: 14px;
5305
5256
  margin-bottom: 12px;
5306
- background: rgba(255,255,255,0.02);
5257
+ background: rgba(248,243,255,0.50);
5307
5258
  }
5308
5259
 
5309
5260
  .status-section-title {
@@ -5320,7 +5271,7 @@ body.lattice-ref-graph {
5320
5271
  align-items: center;
5321
5272
  gap: 10px;
5322
5273
  padding: 6px 0;
5323
- border-bottom: 1px solid rgba(255,255,255,0.04);
5274
+ border-bottom: 1px solid rgba(111,66,232,0.08);
5324
5275
  font-size: 13px;
5325
5276
  }
5326
5277
 
@@ -5423,9 +5374,10 @@ body.lattice-ref-graph {
5423
5374
  .mcp-dropdown {
5424
5375
  display: none;
5425
5376
  margin-top: 8px;
5426
- border: 1px solid rgba(48, 167, 137, 0.22);
5377
+ border: 1px solid rgba(111,66,232,0.16);
5427
5378
  border-radius: 10px;
5428
- background: rgba(23, 27, 32, 0.92);
5379
+ background: rgba(255,255,255,0.92);
5380
+ box-shadow: 0 16px 36px rgba(96,72,160,0.12);
5429
5381
  overflow: hidden;
5430
5382
  }
5431
5383
 
@@ -5439,7 +5391,12 @@ body.lattice-ref-graph {
5439
5391
  justify-content: space-between;
5440
5392
  gap: 12px;
5441
5393
  padding: 11px 14px;
5442
- border-bottom: 1px solid rgba(255,255,255,0.04);
5394
+ border-bottom: 1px solid rgba(111,66,232,0.10);
5395
+ color: var(--text);
5396
+ }
5397
+
5398
+ .mcp-dropdown-item:hover {
5399
+ background: rgba(111,66,232,0.05);
5443
5400
  }
5444
5401
 
5445
5402
  .mcp-dropdown-item:last-child {
@@ -5455,6 +5412,7 @@ body.lattice-ref-graph {
5455
5412
  display: block;
5456
5413
  font-size: 13px;
5457
5414
  margin-bottom: 2px;
5415
+ color: var(--text);
5458
5416
  }
5459
5417
 
5460
5418
  .mcp-dropdown-item-info span {
@@ -5796,8 +5754,8 @@ body.lattice-ref-graph {
5796
5754
  }
5797
5755
 
5798
5756
  .empty-chip {
5799
- border: 1px solid rgba(34,211,160,0.12);
5800
- background: linear-gradient(135deg, rgba(34,211,160,0.06), rgba(129,140,248,0.04));
5757
+ border: 1px solid rgba(111,66,232,0.12);
5758
+ background: linear-gradient(135deg, rgba(111,66,232,0.06), rgba(129,140,248,0.04));
5801
5759
  border-radius: var(--radius);
5802
5760
  padding: 14px;
5803
5761
  font-size: 12.5px;
@@ -5806,11 +5764,11 @@ body.lattice-ref-graph {
5806
5764
  color: var(--muted);
5807
5765
  }
5808
5766
  .empty-chip:hover {
5809
- border-color: rgba(34,211,160,0.3);
5810
- background: linear-gradient(135deg, rgba(34,211,160,0.1), rgba(129,140,248,0.07));
5767
+ border-color: rgba(111,66,232,0.24);
5768
+ background: linear-gradient(135deg, rgba(111,66,232,0.10), rgba(129,140,248,0.07));
5811
5769
  color: var(--text);
5812
5770
  transform: translateY(-2px);
5813
- box-shadow: 0 8px 24px rgba(34,211,160,0.1);
5771
+ box-shadow: 0 8px 24px rgba(111,66,232,0.10);
5814
5772
  }
5815
5773
  .empty-chip-icon {
5816
5774
  font-size: 22px;
@@ -5900,8 +5858,8 @@ body.lattice-ref-graph {
5900
5858
  transform: translateX(-100%);
5901
5859
  transition: transform 0.25s cubic-bezier(0.4,0,0.2,1);
5902
5860
  border-right: 1px solid var(--border-strong);
5903
- box-shadow: 4px 0 32px rgba(0,0,0,0.5);
5904
- background: #141715;
5861
+ box-shadow: 4px 0 32px rgba(88,72,150,0.18);
5862
+ background: #f6f0ff;
5905
5863
  backdrop-filter: none;
5906
5864
  -webkit-backdrop-filter: none;
5907
5865
  }
@@ -5962,7 +5920,7 @@ body.lattice-ref-graph {
5962
5920
  position: fixed;
5963
5921
  inset: 0;
5964
5922
  z-index: 9000;
5965
- background: rgba(10, 12, 15, 0.88);
5923
+ background: rgba(111, 66, 232, 0.18);
5966
5924
  backdrop-filter: blur(14px);
5967
5925
  align-items: center;
5968
5926
  justify-content: center;
@@ -6259,13 +6217,13 @@ body.lattice-ref-graph {
6259
6217
  }
6260
6218
  .empty-icon {
6261
6219
  width: 72px; height: 72px;
6262
- background: linear-gradient(135deg, rgba(34,211,160,0.15), rgba(129,140,248,0.12));
6263
- border: 1px solid rgba(34,211,160,0.15);
6220
+ background: linear-gradient(135deg, rgba(111,66,232,0.14), rgba(129,140,248,0.12));
6221
+ border: 1px solid rgba(111,66,232,0.14);
6264
6222
  border-radius: 20px;
6265
6223
  display: flex; align-items: center; justify-content: center;
6266
6224
  font-size: 32px;
6267
6225
  color: var(--accent);
6268
- box-shadow: 0 0 30px rgba(34,211,160,0.12);
6226
+ box-shadow: 0 0 30px rgba(111,66,232,0.12);
6269
6227
  }
6270
6228
  .empty-title {
6271
6229
  font-size: 20px; font-weight: 800;
@@ -6279,18 +6237,18 @@ body.lattice-ref-graph {
6279
6237
 
6280
6238
  /* ── 파일 다운로드 카드 개선 ── */
6281
6239
  .file-download-card {
6282
- border: 1px solid rgba(34,211,160,0.18) !important;
6283
- background: linear-gradient(135deg, rgba(34,211,160,0.07), rgba(129,140,248,0.04)) !important;
6240
+ border: 1px solid rgba(111,66,232,0.16) !important;
6241
+ background: linear-gradient(135deg, rgba(111,66,232,0.07), rgba(129,140,248,0.04)) !important;
6284
6242
  border-radius: var(--radius) !important;
6285
- box-shadow: 0 4px 16px rgba(34,211,160,0.08) !important;
6243
+ box-shadow: 0 4px 16px rgba(111,66,232,0.08) !important;
6286
6244
  }
6287
6245
  .file-dl-btn {
6288
- background: linear-gradient(135deg, rgba(34,211,160,0.15), rgba(129,140,248,0.08)) !important;
6289
- border-color: rgba(34,211,160,0.3) !important;
6246
+ background: linear-gradient(135deg, rgba(111,66,232,0.14), rgba(129,140,248,0.08)) !important;
6247
+ border-color: rgba(111,66,232,0.24) !important;
6290
6248
  }
6291
6249
  .file-dl-btn:hover {
6292
- background: linear-gradient(135deg, rgba(34,211,160,0.25), rgba(129,140,248,0.14)) !important;
6293
- box-shadow: 0 0 12px rgba(34,211,160,0.18) !important;
6250
+ background: linear-gradient(135deg, rgba(111,66,232,0.20), rgba(129,140,248,0.14)) !important;
6251
+ box-shadow: 0 0 12px rgba(111,66,232,0.16) !important;
6294
6252
  }
6295
6253
 
6296
6254
  /* ── setup wizard 버튼 ── */
@@ -6317,43 +6275,43 @@ body.lattice-ref-graph {
6317
6275
 
6318
6276
  /* ── MCP 드롭다운 개선 ── */
6319
6277
  .mcp-dropdown {
6320
- background: rgba(10,14,20,0.97) !important;
6321
- border: 1px solid rgba(34,211,160,0.15) !important;
6278
+ background: rgba(255,255,255,0.96) !important;
6279
+ border: 1px solid rgba(111,66,232,0.16) !important;
6322
6280
  border-radius: var(--radius) !important;
6323
- box-shadow: var(--shadow), 0 0 20px rgba(34,211,160,0.08) !important;
6281
+ box-shadow: var(--shadow), 0 0 20px rgba(111,66,232,0.08) !important;
6324
6282
  }
6325
6283
  .mcp-recommend-btn {
6326
- background: linear-gradient(135deg, rgba(34,211,160,0.1), rgba(129,140,248,0.07)) !important;
6327
- border: 1px solid rgba(34,211,160,0.2) !important;
6284
+ background: linear-gradient(135deg, rgba(111,66,232,0.10), rgba(129,140,248,0.07)) !important;
6285
+ border: 1px solid rgba(111,66,232,0.16) !important;
6328
6286
  border-radius: 999px !important;
6329
6287
  color: var(--accent) !important;
6330
6288
  }
6331
6289
 
6332
- /* Obsidian-inspired workspace refresh. Scoped to the signed-in app. */
6290
+ /* Lattice AI workspace light lavender theme. */
6333
6291
  .app-layout {
6334
- --bg: #282a36;
6335
- --surface: #222431;
6336
- --surface-2: #2f3142;
6337
- --surface-3: #3a3d52;
6338
- --accent: #a77cff;
6339
- --accent-2: #f1c86d;
6340
- --accent-3: #7db7ff;
6341
- --accent-pink: #ff7db3;
6342
- --accent-soft: rgba(167, 124, 255, 0.13);
6343
- --text: #f7f7f2;
6344
- --muted: #c4c8d8;
6345
- --faint: #8d93ab;
6346
- --border: rgba(218, 225, 255, 0.13);
6347
- --border-strong: rgba(218, 225, 255, 0.23);
6348
- --shadow: 0 22px 64px rgba(5, 7, 12, 0.34);
6349
- --shadow-sm: 0 8px 24px rgba(5, 7, 12, 0.24);
6350
- --glow-green: 0 0 30px rgba(167, 124, 255, 0.14);
6292
+ --bg: #f3ecff;
6293
+ --surface: #f6f0ff;
6294
+ --surface-2: #efe8ff;
6295
+ --surface-3: #e8dfff;
6296
+ --accent: #6f42e8;
6297
+ --accent-2: #8b6cff;
6298
+ --accent-3: #a78fff;
6299
+ --accent-pink: #c084fc;
6300
+ --accent-soft: rgba(111, 66, 232, 0.12);
6301
+ --text: #14162c;
6302
+ --muted: #4a4668;
6303
+ --faint: #7a74a0;
6304
+ --border: rgba(111, 66, 232, 0.14);
6305
+ --border-strong: rgba(111, 66, 232, 0.26);
6306
+ --shadow: 0 18px 54px rgba(88, 72, 150, 0.15);
6307
+ --shadow-sm: 0 6px 20px rgba(88, 72, 150, 0.10);
6308
+ --glow-green: 0 0 30px rgba(111, 66, 232, 0.14);
6351
6309
  position: relative;
6352
6310
  isolation: isolate;
6353
6311
  background:
6354
- radial-gradient(circle at 48% 42%, rgba(125,183,255,0.09), transparent 34%),
6355
- linear-gradient(180deg, rgba(255,255,255,0.018), transparent 34%),
6356
- linear-gradient(135deg, #292b38 0%, #242632 52%, #2f3040 100%);
6312
+ radial-gradient(circle at 82% 12%, rgba(111,66,232,0.14), transparent 30%),
6313
+ radial-gradient(circle at 10% 80%, rgba(180,160,255,0.16), transparent 35%),
6314
+ linear-gradient(180deg, #f3ecff 0%, #efe8ff 52%, #f2ecff 100%);
6357
6315
  }
6358
6316
 
6359
6317
  .app-layout::before {
@@ -6363,12 +6321,12 @@ body.lattice-ref-graph {
6363
6321
  z-index: -1;
6364
6322
  pointer-events: none;
6365
6323
  background:
6366
- radial-gradient(circle, rgba(247,247,242,0.7) 1px, transparent 1.8px),
6367
- linear-gradient(rgba(157,177,255,0.13) 1px, transparent 1px),
6368
- linear-gradient(90deg, rgba(157,177,255,0.09) 1px, transparent 1px);
6324
+ radial-gradient(circle, rgba(111,66,232,0.18) 1px, transparent 1.8px),
6325
+ linear-gradient(rgba(111,66,232,0.06) 1px, transparent 1px),
6326
+ linear-gradient(90deg, rgba(111,66,232,0.04) 1px, transparent 1px);
6369
6327
  background-size: 76px 76px, 48px 48px, 48px 48px;
6370
6328
  background-position: 18px 22px, 0 0, 0 0;
6371
- mask-image: linear-gradient(180deg, rgba(0,0,0,0.45), rgba(0,0,0,0.09));
6329
+ mask-image: linear-gradient(180deg, rgba(0,0,0,0.18), rgba(0,0,0,0.03));
6372
6330
  }
6373
6331
 
6374
6332
  .app-layout::after {
@@ -6551,17 +6509,17 @@ body.lattice-ref-graph {
6551
6509
 
6552
6510
  .app-layout .code-container,
6553
6511
  .app-layout pre {
6554
- background: #171925;
6512
+ background: rgba(255,255,255,0.88);
6555
6513
  border-color: rgba(218,225,255,0.10);
6556
6514
  }
6557
6515
 
6558
6516
  .app-layout .code-header {
6559
- background: #1d2030;
6517
+ background: rgba(111,66,232,0.08);
6560
6518
  border-bottom-color: rgba(218,225,255,0.09);
6561
6519
  }
6562
6520
 
6563
6521
  .app-layout .input-area {
6564
- background: linear-gradient(0deg, rgba(39,41,55,0.98) 0%, rgba(39,41,55,0.78) 64%, transparent 100%);
6522
+ background: linear-gradient(0deg, rgba(246,240,255,0.98) 0%, rgba(246,240,255,0.78) 64%, transparent 100%);
6565
6523
  }
6566
6524
 
6567
6525
  .app-layout .input-box {
@@ -6583,9 +6541,9 @@ body.lattice-ref-graph {
6583
6541
  }
6584
6542
 
6585
6543
  .app-layout .send-btn {
6586
- background: #f7f7f2;
6587
- color: #242632;
6588
- box-shadow: 0 8px 20px rgba(0,0,0,0.24), 0 0 22px rgba(247,247,242,0.12);
6544
+ background: linear-gradient(135deg, #6f42e8, #7b61ff);
6545
+ color: #fff;
6546
+ box-shadow: 0 8px 20px rgba(111,66,232,0.24);
6589
6547
  }
6590
6548
 
6591
6549
  .app-layout .send-btn:hover {
@@ -6766,7 +6724,7 @@ body.lattice-ref-graph {
6766
6724
  align-items: center;
6767
6725
  justify-content: center;
6768
6726
  padding: 24px;
6769
- background: rgba(25, 21, 47, 0.24);
6727
+ background: rgba(111, 66, 232, 0.18);
6770
6728
  backdrop-filter: blur(14px);
6771
6729
  }
6772
6730
  .workspace-modal-overlay.open,
@@ -6788,10 +6746,10 @@ body.lattice-ref-graph {
6788
6746
  .mode-modal {
6789
6747
  width: min(520px, 100%);
6790
6748
  background:
6791
- radial-gradient(circle at 18% 8%, rgba(111,75,246,0.28), transparent 32%),
6792
- linear-gradient(180deg, #211b3b, #151329);
6793
- color: #fff;
6794
- border-color: rgba(255,255,255,0.12);
6749
+ radial-gradient(circle at 18% 8%, rgba(111,75,246,0.18), transparent 32%),
6750
+ linear-gradient(180deg, #ffffff, #f6f0ff);
6751
+ color: var(--text);
6752
+ border-color: rgba(111,66,232,0.16);
6795
6753
  }
6796
6754
  .modal-kicker {
6797
6755
  color: var(--accent);