@starlove/orbit 1.0.7 → 1.1.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.
- package/README.md +22 -7
- package/SKILL-ORBIT.md +26 -1
- package/dist/full/index.html +2 -2
- package/dist/full/js/app.a4f045fc.js +676 -0
- package/dist/full/js/app.a4f045fc.js.map +7 -0
- package/dist/full/{styles.14e9dbbd.css → styles.836872e7.css} +836 -39
- package/dist/full/version.json +2 -2
- package/docs/AGENT_PROTOCOL.md +23 -5
- package/docs/MCP_SETUP.md +5 -3
- package/docs/ORBIT_DISPATCH.md +185 -0
- package/docs/setup/orbit-init-wizard.md +174 -0
- package/package.json +2 -2
- package/public/js/actor-labels.js +65 -0
- package/public/js/app.js +8 -1
- package/public/js/card-actions.js +526 -0
- package/public/js/config.js +2 -1
- package/public/js/format.js +204 -10
- package/public/js/kanban.js +15 -0
- package/public/js/local-backend.js +24 -8
- package/public/js/router.js +3 -2
- package/public/js/search.js +6 -3
- package/public/js/settings.js +96 -26
- package/public/js/state.js +50 -0
- package/public/js/ticket-detail.js +428 -125
- package/public/styles.css +836 -39
- package/src/cli/orbit.js +217 -32
- package/src/core/agent.js +114 -24
- package/src/core/agents-md.js +15 -10
- package/src/core/attachments.js +238 -0
- package/src/core/auth.js +36 -0
- package/src/core/backups.js +9 -3
- package/src/core/board.js +32 -1
- package/src/core/boards.js +1 -1
- package/src/core/db.js +42 -2
- package/src/core/delete-board.js +87 -21
- package/src/core/dispatch.js +532 -0
- package/src/core/http.js +31 -11
- package/src/core/migrate.js +198 -0
- package/src/core/paths.js +6 -0
- package/src/core/registry.js +12 -9
- package/src/core/router.js +81 -7
- package/src/core/search.js +83 -10
- package/src/core/snapshots.js +14 -2
- package/src/mcp/orbit-client.js +109 -46
- package/src/mcp-server.js +238 -12
- package/src/server.js +20 -0
- package/dist/full/js/app.f4fd5e94.js +0 -604
- package/dist/full/js/app.f4fd5e94.js.map +0 -7
package/public/styles.css
CHANGED
|
@@ -80,6 +80,9 @@ input[type="file"] {
|
|
|
80
80
|
--scrollbar-thumb: rgba(var(--accent-rgb),0.45);
|
|
81
81
|
--scrollbar-thumb-hover: rgba(var(--accent-rgb),0.65);
|
|
82
82
|
--scrollbar-track: transparent;
|
|
83
|
+
/* Default text-control interior spacing; component-specific fields override this. */
|
|
84
|
+
--field-padding-y: 0.62rem;
|
|
85
|
+
--field-padding-x: 0.8rem;
|
|
83
86
|
/* RGB channels — use as rgba(var(--name), alpha) for arbitrary-opacity tints */
|
|
84
87
|
--paper-rgb: 255, 252, 246; /* warm cream paper — light-mode surface/inset base */
|
|
85
88
|
--warmth-rgb: 53, 43, 28; /* warm parchment brown — light-mode shadow tint */
|
|
@@ -97,7 +100,7 @@ input[type="file"] {
|
|
|
97
100
|
--indigo-rgb: 139, 92, 246; /* dark-mode epic gradient tint 2 / orbit-accent-2 */
|
|
98
101
|
--coral-rgb: 248, 113, 113; /* dark-mode bug card bezel (brighter than --red-rgb) */
|
|
99
102
|
/* Native <select> chevron: same horizontal inset for value text (left) and glyph (right). */
|
|
100
|
-
--select-chevron-pad-x:
|
|
103
|
+
--select-chevron-pad-x: var(--field-padding-x);
|
|
101
104
|
--select-chevron-size: 12px;
|
|
102
105
|
}
|
|
103
106
|
|
|
@@ -255,6 +258,24 @@ textarea {
|
|
|
255
258
|
outline: none;
|
|
256
259
|
}
|
|
257
260
|
|
|
261
|
+
input:not([type]),
|
|
262
|
+
input[type="date"],
|
|
263
|
+
input[type="datetime-local"],
|
|
264
|
+
input[type="email"],
|
|
265
|
+
input[type="month"],
|
|
266
|
+
input[type="number"],
|
|
267
|
+
input[type="password"],
|
|
268
|
+
input[type="search"],
|
|
269
|
+
input[type="tel"],
|
|
270
|
+
input[type="text"],
|
|
271
|
+
input[type="time"],
|
|
272
|
+
input[type="url"],
|
|
273
|
+
input[type="week"],
|
|
274
|
+
select,
|
|
275
|
+
textarea {
|
|
276
|
+
padding: var(--field-padding-y) var(--field-padding-x);
|
|
277
|
+
}
|
|
278
|
+
|
|
258
279
|
input:focus,
|
|
259
280
|
select:focus,
|
|
260
281
|
textarea:focus {
|
|
@@ -654,7 +675,7 @@ h1 {
|
|
|
654
675
|
|
|
655
676
|
.menu-flyout-form input {
|
|
656
677
|
width: 100%;
|
|
657
|
-
padding:
|
|
678
|
+
padding: var(--field-padding-y) var(--field-padding-x);
|
|
658
679
|
border: 1px solid var(--line);
|
|
659
680
|
border-radius: 8px;
|
|
660
681
|
font: inherit;
|
|
@@ -953,7 +974,7 @@ h1 {
|
|
|
953
974
|
.create-flyout-form input[type="text"],
|
|
954
975
|
.create-flyout-form textarea {
|
|
955
976
|
width: 100%;
|
|
956
|
-
padding:
|
|
977
|
+
padding: var(--field-padding-y) var(--field-padding-x);
|
|
957
978
|
border: 1px solid var(--line);
|
|
958
979
|
border-radius: 10px;
|
|
959
980
|
font: inherit;
|
|
@@ -963,7 +984,7 @@ h1 {
|
|
|
963
984
|
|
|
964
985
|
.create-flyout-form select.select-chevron-field {
|
|
965
986
|
width: 100%;
|
|
966
|
-
padding:
|
|
987
|
+
padding: var(--field-padding-y) var(--select-chevron-pad-x);
|
|
967
988
|
padding-right: calc(var(--select-chevron-pad-x) * 2 + var(--select-chevron-size));
|
|
968
989
|
border: 1px solid var(--line);
|
|
969
990
|
border-radius: 10px;
|
|
@@ -1043,7 +1064,7 @@ h1 {
|
|
|
1043
1064
|
|
|
1044
1065
|
.topbar-search input {
|
|
1045
1066
|
width: 100%;
|
|
1046
|
-
padding:
|
|
1067
|
+
padding: var(--field-padding-y) var(--field-padding-x);
|
|
1047
1068
|
border: 1px solid var(--line);
|
|
1048
1069
|
border-radius: 10px;
|
|
1049
1070
|
background: var(--surface-input);
|
|
@@ -1063,7 +1084,7 @@ h1 {
|
|
|
1063
1084
|
.drawer-composer textarea,
|
|
1064
1085
|
.composer input,
|
|
1065
1086
|
.composer textarea {
|
|
1066
|
-
padding:
|
|
1087
|
+
padding: var(--field-padding-y) var(--field-padding-x);
|
|
1067
1088
|
}
|
|
1068
1089
|
|
|
1069
1090
|
.drawer-composer textarea,
|
|
@@ -1080,11 +1101,11 @@ h1 {
|
|
|
1080
1101
|
|
|
1081
1102
|
.composer-row select,
|
|
1082
1103
|
.composer-row input {
|
|
1083
|
-
padding:
|
|
1104
|
+
padding: var(--field-padding-y) var(--field-padding-x);
|
|
1084
1105
|
}
|
|
1085
1106
|
|
|
1086
1107
|
.composer-row select.select-chevron-field {
|
|
1087
|
-
padding:
|
|
1108
|
+
padding: var(--field-padding-y) var(--select-chevron-pad-x);
|
|
1088
1109
|
padding-right: calc(var(--select-chevron-pad-x) * 2 + var(--select-chevron-size));
|
|
1089
1110
|
}
|
|
1090
1111
|
|
|
@@ -1103,11 +1124,45 @@ h1 {
|
|
|
1103
1124
|
}
|
|
1104
1125
|
|
|
1105
1126
|
.search-hit {
|
|
1127
|
+
display: flex;
|
|
1128
|
+
align-items: center;
|
|
1129
|
+
gap: 0.65rem;
|
|
1106
1130
|
padding: 0.85rem;
|
|
1107
1131
|
border-bottom: 1px solid var(--line);
|
|
1108
1132
|
cursor: url('cursors/live_link.cur'), pointer;
|
|
1109
1133
|
}
|
|
1110
1134
|
|
|
1135
|
+
.search-hit-main {
|
|
1136
|
+
display: flex;
|
|
1137
|
+
flex: 1 1 auto;
|
|
1138
|
+
min-width: 0;
|
|
1139
|
+
gap: 0.35rem;
|
|
1140
|
+
align-items: baseline;
|
|
1141
|
+
}
|
|
1142
|
+
|
|
1143
|
+
.search-hit-title {
|
|
1144
|
+
flex: 1 1 auto;
|
|
1145
|
+
min-width: 0;
|
|
1146
|
+
overflow: hidden;
|
|
1147
|
+
text-overflow: ellipsis;
|
|
1148
|
+
white-space: nowrap;
|
|
1149
|
+
}
|
|
1150
|
+
|
|
1151
|
+
.search-hit-state {
|
|
1152
|
+
flex: 0 0 auto;
|
|
1153
|
+
margin-left: auto;
|
|
1154
|
+
padding: 0.1rem 0.5rem;
|
|
1155
|
+
border: 1px solid rgba(96, 165, 250, 0.28);
|
|
1156
|
+
border-radius: 999px;
|
|
1157
|
+
color: #3657c8;
|
|
1158
|
+
background-color: rgba(96, 165, 250, 0.12);
|
|
1159
|
+
font-size: 0.72rem;
|
|
1160
|
+
font-weight: 600;
|
|
1161
|
+
letter-spacing: 0.02em;
|
|
1162
|
+
line-height: 1.35;
|
|
1163
|
+
white-space: nowrap;
|
|
1164
|
+
}
|
|
1165
|
+
|
|
1111
1166
|
.search-hit:hover {
|
|
1112
1167
|
background: var(--accent-hover);
|
|
1113
1168
|
}
|
|
@@ -1649,6 +1704,120 @@ h1 {
|
|
|
1649
1704
|
outline-offset: -1px;
|
|
1650
1705
|
}
|
|
1651
1706
|
|
|
1707
|
+
.card-action-menu {
|
|
1708
|
+
position: fixed;
|
|
1709
|
+
z-index: 1200;
|
|
1710
|
+
min-width: 13rem;
|
|
1711
|
+
max-height: calc(100vh - 16px);
|
|
1712
|
+
overflow: visible;
|
|
1713
|
+
color: var(--orbit-text);
|
|
1714
|
+
background: rgba(var(--paper-rgb), 0.98);
|
|
1715
|
+
border: 1px solid rgba(var(--warmth-rgb), 0.14);
|
|
1716
|
+
border-radius: 14px;
|
|
1717
|
+
box-shadow: 0 18px 48px rgba(var(--warmth-rgb), 0.2), 0 4px 14px rgba(0, 0, 0, 0.12);
|
|
1718
|
+
padding: 0.35rem;
|
|
1719
|
+
backdrop-filter: blur(18px);
|
|
1720
|
+
-webkit-backdrop-filter: blur(18px);
|
|
1721
|
+
}
|
|
1722
|
+
|
|
1723
|
+
.card-action-menu-list {
|
|
1724
|
+
list-style: none;
|
|
1725
|
+
margin: 0;
|
|
1726
|
+
padding: 0;
|
|
1727
|
+
}
|
|
1728
|
+
|
|
1729
|
+
.card-action-menu-item {
|
|
1730
|
+
position: relative;
|
|
1731
|
+
}
|
|
1732
|
+
|
|
1733
|
+
.card-action-button {
|
|
1734
|
+
width: 100%;
|
|
1735
|
+
min-width: 11.5rem;
|
|
1736
|
+
display: grid;
|
|
1737
|
+
grid-template-columns: 1.2rem 1fr auto;
|
|
1738
|
+
align-items: center;
|
|
1739
|
+
gap: 0.45rem;
|
|
1740
|
+
padding: 0.52rem 0.58rem;
|
|
1741
|
+
border: 0;
|
|
1742
|
+
border-radius: 10px;
|
|
1743
|
+
color: inherit;
|
|
1744
|
+
background: transparent;
|
|
1745
|
+
font: inherit;
|
|
1746
|
+
font-size: 0.88rem;
|
|
1747
|
+
text-align: left;
|
|
1748
|
+
cursor: url('cursors/live_link.cur'), pointer;
|
|
1749
|
+
}
|
|
1750
|
+
|
|
1751
|
+
.card-action-menu-item.has-submenu > .card-action-button {
|
|
1752
|
+
grid-template-columns: 1fr auto;
|
|
1753
|
+
}
|
|
1754
|
+
|
|
1755
|
+
.card-action-button:hover,
|
|
1756
|
+
.card-action-button:focus-visible,
|
|
1757
|
+
.card-action-menu-item.is-open > .card-action-button {
|
|
1758
|
+
outline: none;
|
|
1759
|
+
background: rgba(var(--accent-rgb), 0.12);
|
|
1760
|
+
}
|
|
1761
|
+
|
|
1762
|
+
.card-action-button:disabled {
|
|
1763
|
+
cursor: default;
|
|
1764
|
+
color: var(--orbit-text-muted);
|
|
1765
|
+
opacity: 0.82;
|
|
1766
|
+
}
|
|
1767
|
+
|
|
1768
|
+
.card-action-check,
|
|
1769
|
+
.card-action-arrow {
|
|
1770
|
+
color: var(--orbit-text-muted);
|
|
1771
|
+
}
|
|
1772
|
+
|
|
1773
|
+
.card-action-label {
|
|
1774
|
+
min-width: 0;
|
|
1775
|
+
overflow: hidden;
|
|
1776
|
+
text-overflow: ellipsis;
|
|
1777
|
+
white-space: nowrap;
|
|
1778
|
+
}
|
|
1779
|
+
|
|
1780
|
+
.card-action-menu-item.is-danger > .card-action-button {
|
|
1781
|
+
color: #b42318;
|
|
1782
|
+
}
|
|
1783
|
+
|
|
1784
|
+
.card-action-menu-item.is-danger > .card-action-button:hover,
|
|
1785
|
+
.card-action-menu-item.is-danger > .card-action-button:focus-visible {
|
|
1786
|
+
background: rgba(var(--red-rgb), 0.12);
|
|
1787
|
+
}
|
|
1788
|
+
|
|
1789
|
+
.card-action-submenu {
|
|
1790
|
+
position: fixed;
|
|
1791
|
+
top: 0;
|
|
1792
|
+
left: 0;
|
|
1793
|
+
z-index: 1201;
|
|
1794
|
+
display: none;
|
|
1795
|
+
min-width: 12rem;
|
|
1796
|
+
max-height: calc(100vh - 16px);
|
|
1797
|
+
overflow-y: auto;
|
|
1798
|
+
padding: 0.35rem;
|
|
1799
|
+
border: 1px solid rgba(var(--warmth-rgb), 0.14);
|
|
1800
|
+
border-radius: 14px;
|
|
1801
|
+
background: rgba(var(--paper-rgb), 0.98);
|
|
1802
|
+
box-shadow: 0 18px 48px rgba(var(--warmth-rgb), 0.18), 0 4px 14px rgba(0, 0, 0, 0.12);
|
|
1803
|
+
}
|
|
1804
|
+
|
|
1805
|
+
.card-action-submenu.is-open {
|
|
1806
|
+
display: block;
|
|
1807
|
+
}
|
|
1808
|
+
|
|
1809
|
+
[data-theme="dark"] .card-action-menu,
|
|
1810
|
+
[data-theme="dark"] .card-action-submenu {
|
|
1811
|
+
color: var(--starlight);
|
|
1812
|
+
background: rgba(var(--cosmos-rgb), 0.96);
|
|
1813
|
+
border-color: rgba(var(--starlight-rgb), 0.16);
|
|
1814
|
+
box-shadow: 0 18px 48px rgba(var(--void-rgb), 0.55), 0 0 0 1px rgba(var(--starlight-rgb), 0.04);
|
|
1815
|
+
}
|
|
1816
|
+
|
|
1817
|
+
[data-theme="dark"] .card-action-menu-item.is-danger > .card-action-button {
|
|
1818
|
+
color: #fca5a5;
|
|
1819
|
+
}
|
|
1820
|
+
|
|
1652
1821
|
/* Dark card glass — starscape palette. Hover uses filter+drop-shadow only
|
|
1653
1822
|
so per-type bezels survive. Selected uses outline so bezel box-shadow stays intact. */
|
|
1654
1823
|
[data-theme="dark"] .card {
|
|
@@ -2223,6 +2392,7 @@ h1 {
|
|
|
2223
2392
|
the second line of cards in the lanes for visual consistency. */
|
|
2224
2393
|
.drawer-subtitle {
|
|
2225
2394
|
display: flex;
|
|
2395
|
+
flex-wrap: wrap;
|
|
2226
2396
|
align-items: center;
|
|
2227
2397
|
gap: 0.55rem;
|
|
2228
2398
|
margin-top: 0.45rem;
|
|
@@ -2241,6 +2411,280 @@ h1 {
|
|
|
2241
2411
|
font-variant-numeric: tabular-nums;
|
|
2242
2412
|
}
|
|
2243
2413
|
|
|
2414
|
+
.detail-meta-badge-row {
|
|
2415
|
+
display: inline-flex;
|
|
2416
|
+
flex-wrap: wrap;
|
|
2417
|
+
flex: 0 1 auto;
|
|
2418
|
+
align-items: center;
|
|
2419
|
+
gap: 0.42rem;
|
|
2420
|
+
max-width: 100%;
|
|
2421
|
+
min-width: 0;
|
|
2422
|
+
}
|
|
2423
|
+
|
|
2424
|
+
.detail-meta-badge {
|
|
2425
|
+
--badge-ring: rgba(var(--starlight-rgb), 0.2);
|
|
2426
|
+
flex: 0 1 auto;
|
|
2427
|
+
max-width: min(12rem, 100%);
|
|
2428
|
+
min-width: 0;
|
|
2429
|
+
min-height: 1.85rem;
|
|
2430
|
+
margin: 0;
|
|
2431
|
+
padding: 0.28rem 1.55rem 0.28rem 0.62rem;
|
|
2432
|
+
border: 1px solid var(--badge-ring);
|
|
2433
|
+
border-radius: 999px;
|
|
2434
|
+
color: var(--orbit-text-muted);
|
|
2435
|
+
background-color: rgba(var(--starlight-rgb), 0.08);
|
|
2436
|
+
font: inherit;
|
|
2437
|
+
font-size: 0.68rem;
|
|
2438
|
+
font-weight: 900;
|
|
2439
|
+
letter-spacing: 0.055em;
|
|
2440
|
+
line-height: 1;
|
|
2441
|
+
text-transform: uppercase;
|
|
2442
|
+
cursor: url('cursors/live_link.cur'), pointer;
|
|
2443
|
+
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.24), 0 8px 20px rgba(12, 18, 26, 0.06);
|
|
2444
|
+
transition:
|
|
2445
|
+
transform 140ms ease,
|
|
2446
|
+
background-color 140ms ease,
|
|
2447
|
+
border-color 140ms ease,
|
|
2448
|
+
box-shadow 140ms ease,
|
|
2449
|
+
color 140ms ease;
|
|
2450
|
+
}
|
|
2451
|
+
|
|
2452
|
+
select.detail-meta-badge {
|
|
2453
|
+
appearance: none;
|
|
2454
|
+
-webkit-appearance: none;
|
|
2455
|
+
-moz-appearance: none;
|
|
2456
|
+
background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364758b' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
|
|
2457
|
+
background-repeat: no-repeat;
|
|
2458
|
+
background-position: right 0.48rem center;
|
|
2459
|
+
background-size: 0.78rem 0.78rem;
|
|
2460
|
+
}
|
|
2461
|
+
|
|
2462
|
+
select.detail-meta-badge::-ms-expand {
|
|
2463
|
+
display: none;
|
|
2464
|
+
}
|
|
2465
|
+
|
|
2466
|
+
.detail-meta-badge:hover:not(:disabled) {
|
|
2467
|
+
transform: translateY(-1px);
|
|
2468
|
+
border-color: rgba(var(--starlight-rgb), 0.36);
|
|
2469
|
+
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.28), 0 10px 24px rgba(12, 18, 26, 0.1);
|
|
2470
|
+
}
|
|
2471
|
+
|
|
2472
|
+
.detail-meta-badge:focus {
|
|
2473
|
+
outline: none;
|
|
2474
|
+
border-color: var(--accent-focus-border);
|
|
2475
|
+
box-shadow: var(--accent-ring), inset 0 1px 0 rgba(255, 255, 255, 0.28);
|
|
2476
|
+
}
|
|
2477
|
+
|
|
2478
|
+
.detail-state-badge {
|
|
2479
|
+
width: clamp(7.25rem, 28vw, 9.75rem);
|
|
2480
|
+
color: #3657c8;
|
|
2481
|
+
background-color: rgba(96, 165, 250, 0.12);
|
|
2482
|
+
border-color: rgba(96, 165, 250, 0.28);
|
|
2483
|
+
}
|
|
2484
|
+
|
|
2485
|
+
.detail-type-badge {
|
|
2486
|
+
width: 7rem;
|
|
2487
|
+
}
|
|
2488
|
+
|
|
2489
|
+
.detail-priority-badge {
|
|
2490
|
+
width: 6.55rem;
|
|
2491
|
+
}
|
|
2492
|
+
|
|
2493
|
+
.detail-state-badge.state-pill-ai-ready,
|
|
2494
|
+
.search-hit-state.state-pill-ai-ready,
|
|
2495
|
+
.detail-card-state.state-pill-ai-ready {
|
|
2496
|
+
color: #7c3aed;
|
|
2497
|
+
background-color: rgba(var(--purple-rgb), 0.12);
|
|
2498
|
+
border-color: rgba(var(--purple-rgb), 0.28);
|
|
2499
|
+
}
|
|
2500
|
+
|
|
2501
|
+
.detail-state-badge.state-pill-in-progress,
|
|
2502
|
+
.search-hit-state.state-pill-in-progress,
|
|
2503
|
+
.detail-card-state.state-pill-in-progress {
|
|
2504
|
+
color: #0369a1;
|
|
2505
|
+
background-color: rgba(14, 165, 233, 0.13);
|
|
2506
|
+
border-color: rgba(14, 165, 233, 0.28);
|
|
2507
|
+
}
|
|
2508
|
+
|
|
2509
|
+
.detail-state-badge.state-pill-review,
|
|
2510
|
+
.search-hit-state.state-pill-review,
|
|
2511
|
+
.detail-card-state.state-pill-review {
|
|
2512
|
+
color: #a4550f;
|
|
2513
|
+
background-color: rgba(var(--amber-rgb), 0.16);
|
|
2514
|
+
border-color: rgba(var(--amber-rgb), 0.32);
|
|
2515
|
+
}
|
|
2516
|
+
|
|
2517
|
+
.detail-state-badge.state-pill-done,
|
|
2518
|
+
.search-hit-state.state-pill-done,
|
|
2519
|
+
.detail-card-state.state-pill-done {
|
|
2520
|
+
color: #1e6f5c;
|
|
2521
|
+
background-color: rgba(var(--accent-rgb), 0.14);
|
|
2522
|
+
border-color: rgba(var(--accent-rgb), 0.28);
|
|
2523
|
+
}
|
|
2524
|
+
|
|
2525
|
+
.detail-type-badge.type-pill-epic {
|
|
2526
|
+
color: #8b5cf6;
|
|
2527
|
+
background-color: rgba(var(--purple-rgb),0.12);
|
|
2528
|
+
border-color: rgba(var(--purple-rgb),0.28);
|
|
2529
|
+
}
|
|
2530
|
+
|
|
2531
|
+
.detail-type-badge.type-pill-feature {
|
|
2532
|
+
color: #15803d;
|
|
2533
|
+
background-color: rgba(74, 222, 128, 0.12);
|
|
2534
|
+
border-color: rgba(74, 222, 128, 0.26);
|
|
2535
|
+
}
|
|
2536
|
+
|
|
2537
|
+
.detail-type-badge.type-pill-task {
|
|
2538
|
+
color: #2563eb;
|
|
2539
|
+
background-color: rgba(96, 165, 250, 0.12);
|
|
2540
|
+
border-color: rgba(96, 165, 250, 0.26);
|
|
2541
|
+
}
|
|
2542
|
+
|
|
2543
|
+
.detail-type-badge.type-pill-bug {
|
|
2544
|
+
color: #dc2626;
|
|
2545
|
+
background-color: rgba(var(--coral-rgb),0.13);
|
|
2546
|
+
border-color: rgba(var(--coral-rgb),0.3);
|
|
2547
|
+
}
|
|
2548
|
+
|
|
2549
|
+
.detail-priority-badge.priority-pill-maybe,
|
|
2550
|
+
.detail-priority-badge.priority-pill-low,
|
|
2551
|
+
.detail-priority-badge.priority-pill-med,
|
|
2552
|
+
.detail-priority-badge.priority-pill-high,
|
|
2553
|
+
.detail-priority-badge.priority-pill-urgent {
|
|
2554
|
+
border-color: currentColor;
|
|
2555
|
+
}
|
|
2556
|
+
|
|
2557
|
+
.detail-priority-badge.priority-pill-maybe {
|
|
2558
|
+
color: #6b7280;
|
|
2559
|
+
background-color: rgba(100, 116, 139, 0.14);
|
|
2560
|
+
}
|
|
2561
|
+
|
|
2562
|
+
.detail-priority-badge.priority-pill-low {
|
|
2563
|
+
color: #1e6f5c;
|
|
2564
|
+
background-color: rgba(var(--accent-rgb), 0.14);
|
|
2565
|
+
}
|
|
2566
|
+
|
|
2567
|
+
.detail-priority-badge.priority-pill-med {
|
|
2568
|
+
color: #a4550f;
|
|
2569
|
+
background-color: rgba(var(--amber-rgb), 0.16);
|
|
2570
|
+
}
|
|
2571
|
+
|
|
2572
|
+
.detail-priority-badge.priority-pill-high {
|
|
2573
|
+
color: #b53a1a;
|
|
2574
|
+
background-color: rgba(214, 86, 46, 0.2);
|
|
2575
|
+
}
|
|
2576
|
+
|
|
2577
|
+
.detail-priority-badge.priority-pill-urgent {
|
|
2578
|
+
color: #fff;
|
|
2579
|
+
background-color: #b91c1c;
|
|
2580
|
+
}
|
|
2581
|
+
|
|
2582
|
+
[data-theme="dark"] select.detail-meta-badge {
|
|
2583
|
+
background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c4d3ff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
|
|
2584
|
+
background-repeat: no-repeat;
|
|
2585
|
+
background-position: right 0.48rem center;
|
|
2586
|
+
background-size: 0.78rem 0.78rem;
|
|
2587
|
+
}
|
|
2588
|
+
|
|
2589
|
+
[data-theme="dark"] .detail-meta-badge {
|
|
2590
|
+
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 8px 20px rgba(0, 0, 0, 0.2);
|
|
2591
|
+
}
|
|
2592
|
+
|
|
2593
|
+
[data-theme="dark"] .detail-state-badge,
|
|
2594
|
+
[data-theme="dark"] .search-hit-state,
|
|
2595
|
+
[data-theme="dark"] .detail-card-state {
|
|
2596
|
+
color: #93c5fd;
|
|
2597
|
+
background-color: rgba(96, 165, 250, 0.15);
|
|
2598
|
+
border-color: rgba(147, 197, 253, 0.3);
|
|
2599
|
+
}
|
|
2600
|
+
|
|
2601
|
+
[data-theme="dark"] .detail-state-badge.state-pill-ai-ready,
|
|
2602
|
+
[data-theme="dark"] .search-hit-state.state-pill-ai-ready,
|
|
2603
|
+
[data-theme="dark"] .detail-card-state.state-pill-ai-ready {
|
|
2604
|
+
color: #c084fc;
|
|
2605
|
+
background-color: rgba(var(--purple-rgb), 0.16);
|
|
2606
|
+
border-color: rgba(var(--purple-rgb), 0.35);
|
|
2607
|
+
}
|
|
2608
|
+
|
|
2609
|
+
[data-theme="dark"] .detail-state-badge.state-pill-in-progress,
|
|
2610
|
+
[data-theme="dark"] .search-hit-state.state-pill-in-progress,
|
|
2611
|
+
[data-theme="dark"] .detail-card-state.state-pill-in-progress {
|
|
2612
|
+
color: #67e8f9;
|
|
2613
|
+
background-color: rgba(14, 165, 233, 0.16);
|
|
2614
|
+
border-color: rgba(103, 232, 249, 0.32);
|
|
2615
|
+
}
|
|
2616
|
+
|
|
2617
|
+
[data-theme="dark"] .detail-state-badge.state-pill-review,
|
|
2618
|
+
[data-theme="dark"] .search-hit-state.state-pill-review,
|
|
2619
|
+
[data-theme="dark"] .detail-card-state.state-pill-review {
|
|
2620
|
+
color: #fbbf24;
|
|
2621
|
+
background-color: rgba(251, 191, 36, 0.18);
|
|
2622
|
+
border-color: rgba(251, 191, 36, 0.35);
|
|
2623
|
+
}
|
|
2624
|
+
|
|
2625
|
+
[data-theme="dark"] .detail-state-badge.state-pill-done,
|
|
2626
|
+
[data-theme="dark"] .search-hit-state.state-pill-done,
|
|
2627
|
+
[data-theme="dark"] .detail-card-state.state-pill-done {
|
|
2628
|
+
color: #4ade80;
|
|
2629
|
+
background-color: rgba(74, 222, 128, 0.15);
|
|
2630
|
+
border-color: rgba(74, 222, 128, 0.32);
|
|
2631
|
+
}
|
|
2632
|
+
|
|
2633
|
+
[data-theme="dark"] .detail-type-badge.type-pill-feature {
|
|
2634
|
+
color: #4ade80;
|
|
2635
|
+
}
|
|
2636
|
+
|
|
2637
|
+
[data-theme="dark"] .detail-type-badge.type-pill-task {
|
|
2638
|
+
color: #60a5fa;
|
|
2639
|
+
}
|
|
2640
|
+
|
|
2641
|
+
[data-theme="dark"] .detail-type-badge.type-pill-bug {
|
|
2642
|
+
color: #f87171;
|
|
2643
|
+
}
|
|
2644
|
+
|
|
2645
|
+
[data-theme="dark"] .detail-priority-badge.priority-pill-maybe {
|
|
2646
|
+
color: rgba(255, 255, 255, 0.62);
|
|
2647
|
+
background-color: rgba(255, 255, 255, 0.1);
|
|
2648
|
+
}
|
|
2649
|
+
|
|
2650
|
+
[data-theme="dark"] .detail-priority-badge.priority-pill-low {
|
|
2651
|
+
color: #4ade80;
|
|
2652
|
+
background-color: rgba(74, 222, 128, 0.15);
|
|
2653
|
+
}
|
|
2654
|
+
|
|
2655
|
+
[data-theme="dark"] .detail-priority-badge.priority-pill-med {
|
|
2656
|
+
color: #fbbf24;
|
|
2657
|
+
background-color: rgba(251, 191, 36, 0.18);
|
|
2658
|
+
}
|
|
2659
|
+
|
|
2660
|
+
[data-theme="dark"] .detail-priority-badge.priority-pill-high {
|
|
2661
|
+
color: #f87171;
|
|
2662
|
+
background-color: rgba(var(--coral-rgb), 0.2);
|
|
2663
|
+
}
|
|
2664
|
+
|
|
2665
|
+
[data-theme="dark"] .detail-priority-badge.priority-pill-urgent {
|
|
2666
|
+
color: #fff;
|
|
2667
|
+
background-color: #991b1b;
|
|
2668
|
+
}
|
|
2669
|
+
|
|
2670
|
+
@media (max-width: 640px) {
|
|
2671
|
+
.detail-meta-badge-row {
|
|
2672
|
+
width: 100%;
|
|
2673
|
+
}
|
|
2674
|
+
|
|
2675
|
+
.detail-state-badge {
|
|
2676
|
+
width: clamp(6.75rem, 38vw, 8.5rem);
|
|
2677
|
+
}
|
|
2678
|
+
|
|
2679
|
+
.detail-type-badge {
|
|
2680
|
+
width: 6.6rem;
|
|
2681
|
+
}
|
|
2682
|
+
|
|
2683
|
+
.detail-priority-badge {
|
|
2684
|
+
width: 6.2rem;
|
|
2685
|
+
}
|
|
2686
|
+
}
|
|
2687
|
+
|
|
2244
2688
|
.drawer-title-text {
|
|
2245
2689
|
margin: 0;
|
|
2246
2690
|
font-size: 1.2rem;
|
|
@@ -2452,7 +2896,7 @@ h1 {
|
|
|
2452
2896
|
|
|
2453
2897
|
.inline-title-editor {
|
|
2454
2898
|
margin-inline: -0.35rem;
|
|
2455
|
-
padding:
|
|
2899
|
+
padding: var(--field-padding-y) var(--field-padding-x);
|
|
2456
2900
|
font-size: 1.35rem;
|
|
2457
2901
|
font-weight: inherit;
|
|
2458
2902
|
letter-spacing: -0.04em;
|
|
@@ -2461,7 +2905,7 @@ h1 {
|
|
|
2461
2905
|
|
|
2462
2906
|
.inline-desc-editor {
|
|
2463
2907
|
margin-top: 0.5rem;
|
|
2464
|
-
padding:
|
|
2908
|
+
padding: var(--field-padding-y) var(--field-padding-x);
|
|
2465
2909
|
min-height: 5rem;
|
|
2466
2910
|
font-size: 1rem;
|
|
2467
2911
|
line-height: 1.45;
|
|
@@ -2478,31 +2922,117 @@ h1 {
|
|
|
2478
2922
|
.markdown-body {
|
|
2479
2923
|
white-space: normal;
|
|
2480
2924
|
overflow-wrap: anywhere;
|
|
2925
|
+
tab-size: 4;
|
|
2481
2926
|
}
|
|
2482
2927
|
|
|
2483
2928
|
.markdown-body p,
|
|
2484
2929
|
.markdown-body ul,
|
|
2485
2930
|
.markdown-body ol,
|
|
2486
|
-
.markdown-body pre
|
|
2931
|
+
.markdown-body pre,
|
|
2932
|
+
.markdown-body blockquote,
|
|
2933
|
+
.markdown-body h1,
|
|
2934
|
+
.markdown-body h2,
|
|
2935
|
+
.markdown-body h3,
|
|
2936
|
+
.markdown-body h4,
|
|
2937
|
+
.markdown-body h5,
|
|
2938
|
+
.markdown-body h6 {
|
|
2487
2939
|
margin: 0;
|
|
2488
2940
|
}
|
|
2489
2941
|
|
|
2490
|
-
|
|
2491
|
-
|
|
2492
|
-
|
|
2493
|
-
|
|
2494
|
-
.markdown-body
|
|
2495
|
-
.markdown-body ul + ol,
|
|
2496
|
-
.markdown-body ul + pre,
|
|
2497
|
-
.markdown-body ol + p,
|
|
2498
|
-
.markdown-body ol + ul,
|
|
2499
|
-
.markdown-body ol + pre,
|
|
2500
|
-
.markdown-body pre + p,
|
|
2501
|
-
.markdown-body pre + ul,
|
|
2502
|
-
.markdown-body pre + ol {
|
|
2942
|
+
/* Every adjacent block-element pair in markdown content gets the same gap.
|
|
2943
|
+
Listing each pair was the old approach; this universal sibling rule keeps
|
|
2944
|
+
headers, blockquotes, and hr in step with paragraphs/lists/code blocks
|
|
2945
|
+
without repeating the matrix. */
|
|
2946
|
+
.markdown-body > * + * {
|
|
2503
2947
|
margin-top: 0.55rem;
|
|
2504
2948
|
}
|
|
2505
2949
|
|
|
2950
|
+
.markdown-body p {
|
|
2951
|
+
white-space: break-spaces;
|
|
2952
|
+
}
|
|
2953
|
+
|
|
2954
|
+
.preserved-text-body {
|
|
2955
|
+
overflow-x: auto;
|
|
2956
|
+
white-space: break-spaces;
|
|
2957
|
+
overflow-wrap: normal;
|
|
2958
|
+
tab-size: 4;
|
|
2959
|
+
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
|
|
2960
|
+
font-size: 0.92rem;
|
|
2961
|
+
line-height: 1.45;
|
|
2962
|
+
}
|
|
2963
|
+
|
|
2964
|
+
/* Headers carry more weight than body paragraphs and need a bit more breathing
|
|
2965
|
+
room above when they follow other content. Slightly tighter below so the
|
|
2966
|
+
header visually pairs with its first paragraph. */
|
|
2967
|
+
.markdown-body h1,
|
|
2968
|
+
.markdown-body h2,
|
|
2969
|
+
.markdown-body h3,
|
|
2970
|
+
.markdown-body h4,
|
|
2971
|
+
.markdown-body h5,
|
|
2972
|
+
.markdown-body h6 {
|
|
2973
|
+
font-weight: 700;
|
|
2974
|
+
line-height: 1.25;
|
|
2975
|
+
letter-spacing: -0.01em;
|
|
2976
|
+
}
|
|
2977
|
+
|
|
2978
|
+
.markdown-body > * + h1,
|
|
2979
|
+
.markdown-body > * + h2,
|
|
2980
|
+
.markdown-body > * + h3,
|
|
2981
|
+
.markdown-body > * + h4,
|
|
2982
|
+
.markdown-body > * + h5,
|
|
2983
|
+
.markdown-body > * + h6 {
|
|
2984
|
+
margin-top: 1rem;
|
|
2985
|
+
}
|
|
2986
|
+
|
|
2987
|
+
.markdown-body h1 { font-size: 1.35rem; }
|
|
2988
|
+
.markdown-body h2 { font-size: 1.2rem; }
|
|
2989
|
+
.markdown-body h3 { font-size: 1.05rem; }
|
|
2990
|
+
.markdown-body h4 { font-size: 0.95rem; }
|
|
2991
|
+
.markdown-body h5 { font-size: 0.88rem; text-transform: uppercase; letter-spacing: 0.04em; }
|
|
2992
|
+
.markdown-body h6 { font-size: 0.82rem; color: var(--muted); text-transform: uppercase; letter-spacing: 0.06em; }
|
|
2993
|
+
|
|
2994
|
+
.markdown-body blockquote {
|
|
2995
|
+
border-left: 3px solid var(--accent-border);
|
|
2996
|
+
padding: 0.15rem 0.75rem;
|
|
2997
|
+
color: var(--muted);
|
|
2998
|
+
background: rgba(var(--blue-rgb), 0.04);
|
|
2999
|
+
border-radius: 0 8px 8px 0;
|
|
3000
|
+
}
|
|
3001
|
+
|
|
3002
|
+
.markdown-body blockquote > * + * {
|
|
3003
|
+
margin-top: 0.4rem;
|
|
3004
|
+
}
|
|
3005
|
+
|
|
3006
|
+
.markdown-body hr {
|
|
3007
|
+
height: 1px;
|
|
3008
|
+
border: 0;
|
|
3009
|
+
background: var(--line);
|
|
3010
|
+
margin: 0.85rem 0;
|
|
3011
|
+
}
|
|
3012
|
+
|
|
3013
|
+
.markdown-body ul.task-list {
|
|
3014
|
+
list-style: none;
|
|
3015
|
+
padding-left: 0.1rem;
|
|
3016
|
+
}
|
|
3017
|
+
|
|
3018
|
+
.markdown-body ul.task-list li.task-item {
|
|
3019
|
+
display: flex;
|
|
3020
|
+
align-items: baseline;
|
|
3021
|
+
gap: 0.45rem;
|
|
3022
|
+
}
|
|
3023
|
+
|
|
3024
|
+
.markdown-body ul.task-list li.task-item input[type="checkbox"] {
|
|
3025
|
+
margin: 0;
|
|
3026
|
+
transform: translateY(1px);
|
|
3027
|
+
cursor: default;
|
|
3028
|
+
}
|
|
3029
|
+
|
|
3030
|
+
.markdown-body ul.task-list li.task-item-done {
|
|
3031
|
+
color: var(--muted);
|
|
3032
|
+
text-decoration: line-through;
|
|
3033
|
+
text-decoration-color: rgba(var(--blue-rgb), 0.4);
|
|
3034
|
+
}
|
|
3035
|
+
|
|
2506
3036
|
.markdown-body ul,
|
|
2507
3037
|
.markdown-body ol {
|
|
2508
3038
|
padding-left: 1.25rem;
|
|
@@ -2574,6 +3104,16 @@ h1 {
|
|
|
2574
3104
|
line-height: 1.55;
|
|
2575
3105
|
}
|
|
2576
3106
|
|
|
3107
|
+
.detail-head > .preserved-text-body {
|
|
3108
|
+
overflow-x: auto;
|
|
3109
|
+
white-space: break-spaces;
|
|
3110
|
+
overflow-wrap: normal;
|
|
3111
|
+
tab-size: 4;
|
|
3112
|
+
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
|
|
3113
|
+
font-size: 0.92rem;
|
|
3114
|
+
line-height: 1.45;
|
|
3115
|
+
}
|
|
3116
|
+
|
|
2577
3117
|
/* Project Repository tab metadata grid for read-only repository details. */
|
|
2578
3118
|
.meta-grid {
|
|
2579
3119
|
display: grid;
|
|
@@ -2678,7 +3218,7 @@ h1 {
|
|
|
2678
3218
|
.meta-inline {
|
|
2679
3219
|
width: 100%;
|
|
2680
3220
|
margin: 0;
|
|
2681
|
-
padding:
|
|
3221
|
+
padding: var(--field-padding-y) var(--field-padding-x);
|
|
2682
3222
|
border: 1px solid transparent;
|
|
2683
3223
|
border-radius: 10px;
|
|
2684
3224
|
/* Use background-color only — `background` shorthand resets background-image
|
|
@@ -2863,7 +3403,7 @@ input.meta-inline {
|
|
|
2863
3403
|
.label-add-input {
|
|
2864
3404
|
flex: 1;
|
|
2865
3405
|
min-width: 8rem;
|
|
2866
|
-
padding:
|
|
3406
|
+
padding: var(--field-padding-y) var(--field-padding-x);
|
|
2867
3407
|
font-size: 0.86rem;
|
|
2868
3408
|
}
|
|
2869
3409
|
|
|
@@ -3037,10 +3577,14 @@ details.section > summary .mcp-title-row {
|
|
|
3037
3577
|
|
|
3038
3578
|
.comment-body {
|
|
3039
3579
|
margin-top: 0.35rem;
|
|
3040
|
-
white-space: pre-wrap;
|
|
3041
3580
|
line-height: 1.4;
|
|
3042
3581
|
}
|
|
3043
3582
|
|
|
3583
|
+
/* Comments use the literal preserved renderer so pasted logs/plans keep spacing. */
|
|
3584
|
+
.comment-body.preserved-text-body {
|
|
3585
|
+
white-space: break-spaces;
|
|
3586
|
+
}
|
|
3587
|
+
|
|
3044
3588
|
.comment-form {
|
|
3045
3589
|
display: grid;
|
|
3046
3590
|
gap: 0.5rem;
|
|
@@ -3049,7 +3593,7 @@ details.section > summary .mcp-title-row {
|
|
|
3049
3593
|
|
|
3050
3594
|
.comment-form textarea {
|
|
3051
3595
|
min-height: 5rem;
|
|
3052
|
-
padding:
|
|
3596
|
+
padding: var(--field-padding-y) var(--field-padding-x);
|
|
3053
3597
|
resize: vertical;
|
|
3054
3598
|
}
|
|
3055
3599
|
|
|
@@ -3073,7 +3617,7 @@ details.section > summary .mcp-title-row {
|
|
|
3073
3617
|
|
|
3074
3618
|
.field-form textarea {
|
|
3075
3619
|
min-height: 6rem;
|
|
3076
|
-
padding:
|
|
3620
|
+
padding: var(--field-padding-y) var(--field-padding-x);
|
|
3077
3621
|
resize: vertical;
|
|
3078
3622
|
}
|
|
3079
3623
|
|
|
@@ -3095,8 +3639,42 @@ details.section > summary .mcp-title-row {
|
|
|
3095
3639
|
margin-top: 0.65rem;
|
|
3096
3640
|
}
|
|
3097
3641
|
|
|
3098
|
-
|
|
3099
|
-
|
|
3642
|
+
/* Click-to-edit field shared by AI plan/impl/review and board Notes. The
|
|
3643
|
+
label/body pairing replaces the old <label><span>…</span><textarea>…</textarea></label>
|
|
3644
|
+
form-row pattern; the body div is rendered markdown and the editable-field
|
|
3645
|
+
hover affordance signals it accepts clicks. */
|
|
3646
|
+
.ai-fields-grid {
|
|
3647
|
+
display: grid;
|
|
3648
|
+
gap: 1.1rem;
|
|
3649
|
+
}
|
|
3650
|
+
|
|
3651
|
+
.inline-md-field {
|
|
3652
|
+
display: grid;
|
|
3653
|
+
gap: 0.42rem;
|
|
3654
|
+
}
|
|
3655
|
+
|
|
3656
|
+
.inline-md-field-label {
|
|
3657
|
+
color: var(--muted);
|
|
3658
|
+
font-size: 0.76rem;
|
|
3659
|
+
font-weight: 800;
|
|
3660
|
+
letter-spacing: 0.06em;
|
|
3661
|
+
text-transform: uppercase;
|
|
3662
|
+
}
|
|
3663
|
+
|
|
3664
|
+
.inline-md-field-body {
|
|
3665
|
+
min-height: 2.4rem;
|
|
3666
|
+
padding: 0.45rem 0.6rem;
|
|
3667
|
+
margin-inline: -0.35rem;
|
|
3668
|
+
}
|
|
3669
|
+
|
|
3670
|
+
.inline-md-field-body.is-placeholder {
|
|
3671
|
+
min-height: 2rem;
|
|
3672
|
+
}
|
|
3673
|
+
|
|
3674
|
+
/* Board Notes is the long-form home for project guidance; reserve a textarea
|
|
3675
|
+
sized landing area so it doesn't collapse to a one-liner when empty. */
|
|
3676
|
+
.settings-notes-body {
|
|
3677
|
+
min-height: 11rem;
|
|
3100
3678
|
}
|
|
3101
3679
|
|
|
3102
3680
|
.ai-context-setup textarea[name="agent_instructions"] {
|
|
@@ -3212,7 +3790,7 @@ details.section > summary .mcp-title-row {
|
|
|
3212
3790
|
|
|
3213
3791
|
.repository-confirm-field input {
|
|
3214
3792
|
width: 100%;
|
|
3215
|
-
padding:
|
|
3793
|
+
padding: var(--field-padding-y) var(--field-padding-x);
|
|
3216
3794
|
}
|
|
3217
3795
|
|
|
3218
3796
|
[data-theme="dark"] .repository-danger-zone {
|
|
@@ -3238,11 +3816,11 @@ details.section > summary .mcp-title-row {
|
|
|
3238
3816
|
}
|
|
3239
3817
|
|
|
3240
3818
|
.project-entry-form input {
|
|
3241
|
-
padding:
|
|
3819
|
+
padding: var(--field-padding-y) var(--field-padding-x);
|
|
3242
3820
|
}
|
|
3243
3821
|
|
|
3244
3822
|
.project-entry-form select.select-chevron-field {
|
|
3245
|
-
padding:
|
|
3823
|
+
padding: var(--field-padding-y) var(--select-chevron-pad-x);
|
|
3246
3824
|
padding-right: calc(var(--select-chevron-pad-x) * 2 + var(--select-chevron-size));
|
|
3247
3825
|
}
|
|
3248
3826
|
|
|
@@ -3735,7 +4313,7 @@ details.section > summary .mcp-title-row {
|
|
|
3735
4313
|
}
|
|
3736
4314
|
|
|
3737
4315
|
.mcp-flow select.select-chevron-field {
|
|
3738
|
-
padding:
|
|
4316
|
+
padding: var(--field-padding-y) var(--select-chevron-pad-x);
|
|
3739
4317
|
padding-right: calc(var(--select-chevron-pad-x) * 2 + var(--select-chevron-size));
|
|
3740
4318
|
font-size: 0.88rem;
|
|
3741
4319
|
}
|
|
@@ -3816,7 +4394,7 @@ details.section > summary .mcp-title-row {
|
|
|
3816
4394
|
|
|
3817
4395
|
.mcp-path-grid input {
|
|
3818
4396
|
min-width: 0;
|
|
3819
|
-
padding:
|
|
4397
|
+
padding: var(--field-padding-y) var(--field-padding-x);
|
|
3820
4398
|
font-size: 0.82rem;
|
|
3821
4399
|
}
|
|
3822
4400
|
|
|
@@ -4071,13 +4649,13 @@ details.section > summary .mcp-title-row {
|
|
|
4071
4649
|
.lane-row select,
|
|
4072
4650
|
.lane-create-form input,
|
|
4073
4651
|
.lane-create-form select {
|
|
4074
|
-
padding:
|
|
4652
|
+
padding: var(--field-padding-y) var(--field-padding-x);
|
|
4075
4653
|
font-size: 0.86rem;
|
|
4076
4654
|
}
|
|
4077
4655
|
|
|
4078
4656
|
.lane-row select.select-chevron-field,
|
|
4079
4657
|
.lane-create-form select.select-chevron-field {
|
|
4080
|
-
padding:
|
|
4658
|
+
padding: var(--field-padding-y) var(--select-chevron-pad-x);
|
|
4081
4659
|
padding-right: calc(var(--select-chevron-pad-x) * 2 + var(--select-chevron-size));
|
|
4082
4660
|
}
|
|
4083
4661
|
|
|
@@ -4296,6 +4874,30 @@ button:disabled,
|
|
|
4296
4874
|
margin-top: auto;
|
|
4297
4875
|
}
|
|
4298
4876
|
|
|
4877
|
+
.card--detail .card-expand-trigger--static {
|
|
4878
|
+
flex-wrap: wrap;
|
|
4879
|
+
row-gap: 0.4rem;
|
|
4880
|
+
}
|
|
4881
|
+
|
|
4882
|
+
.detail-card-state {
|
|
4883
|
+
display: inline-block;
|
|
4884
|
+
flex: 0 0 auto;
|
|
4885
|
+
max-width: min(9rem, 100%);
|
|
4886
|
+
overflow: hidden;
|
|
4887
|
+
padding: 0.14rem 0.48rem;
|
|
4888
|
+
border: 1px solid rgba(96, 165, 250, 0.28);
|
|
4889
|
+
border-radius: 999px;
|
|
4890
|
+
color: #3657c8;
|
|
4891
|
+
background-color: rgba(96, 165, 250, 0.12);
|
|
4892
|
+
font-size: 0.68rem;
|
|
4893
|
+
font-weight: 800;
|
|
4894
|
+
letter-spacing: 0.035em;
|
|
4895
|
+
line-height: 1.2;
|
|
4896
|
+
text-overflow: ellipsis;
|
|
4897
|
+
text-transform: uppercase;
|
|
4898
|
+
white-space: nowrap;
|
|
4899
|
+
}
|
|
4900
|
+
|
|
4299
4901
|
.card-eyebrow {
|
|
4300
4902
|
display: block;
|
|
4301
4903
|
margin-bottom: 0.3rem;
|
|
@@ -4393,7 +4995,7 @@ button:disabled,
|
|
|
4393
4995
|
.related-add-input {
|
|
4394
4996
|
flex: 1;
|
|
4395
4997
|
width: 100%;
|
|
4396
|
-
padding:
|
|
4998
|
+
padding: var(--field-padding-y) var(--field-padding-x);
|
|
4397
4999
|
font-size: 0.86rem;
|
|
4398
5000
|
}
|
|
4399
5001
|
|
|
@@ -5163,3 +5765,198 @@ button:disabled,
|
|
|
5163
5765
|
--scrollbar-thumb: rgba(var(--starlight-rgb),0.3);
|
|
5164
5766
|
--scrollbar-thumb-hover: rgba(var(--starlight-rgb),0.5);
|
|
5165
5767
|
}
|
|
5768
|
+
|
|
5769
|
+
.attachment-heading-row {
|
|
5770
|
+
display: flex;
|
|
5771
|
+
align-items: center;
|
|
5772
|
+
justify-content: space-between;
|
|
5773
|
+
gap: 0.75rem;
|
|
5774
|
+
margin-bottom: 0.7rem;
|
|
5775
|
+
}
|
|
5776
|
+
|
|
5777
|
+
.attachment-heading-row h3 {
|
|
5778
|
+
margin-bottom: 0;
|
|
5779
|
+
}
|
|
5780
|
+
|
|
5781
|
+
.attachment-upload-button {
|
|
5782
|
+
position: relative;
|
|
5783
|
+
display: inline-flex;
|
|
5784
|
+
align-items: center;
|
|
5785
|
+
justify-content: center;
|
|
5786
|
+
padding: 0.45rem 0.75rem;
|
|
5787
|
+
border: 1px solid var(--line);
|
|
5788
|
+
border-radius: 999px;
|
|
5789
|
+
cursor: url('cursors/live_link.cur'), pointer;
|
|
5790
|
+
font-size: 0.8rem;
|
|
5791
|
+
font-weight: 800;
|
|
5792
|
+
}
|
|
5793
|
+
|
|
5794
|
+
.attachment-upload-button input {
|
|
5795
|
+
position: absolute;
|
|
5796
|
+
inset: 0;
|
|
5797
|
+
opacity: 0;
|
|
5798
|
+
cursor: inherit;
|
|
5799
|
+
}
|
|
5800
|
+
|
|
5801
|
+
.attachment-dropzone {
|
|
5802
|
+
display: grid;
|
|
5803
|
+
gap: 0.18rem;
|
|
5804
|
+
padding: 0.9rem;
|
|
5805
|
+
border: 1px dashed var(--accent-border);
|
|
5806
|
+
border-radius: 14px;
|
|
5807
|
+
background: var(--surface-dim);
|
|
5808
|
+
color: var(--muted);
|
|
5809
|
+
outline: none;
|
|
5810
|
+
transition: background 140ms ease, border-color 140ms ease, box-shadow 140ms ease;
|
|
5811
|
+
}
|
|
5812
|
+
|
|
5813
|
+
.attachment-dropzone strong {
|
|
5814
|
+
color: var(--ink);
|
|
5815
|
+
}
|
|
5816
|
+
|
|
5817
|
+
.attachment-dropzone span {
|
|
5818
|
+
font-size: 0.82rem;
|
|
5819
|
+
}
|
|
5820
|
+
|
|
5821
|
+
.attachment-dropzone:focus-visible,
|
|
5822
|
+
.attachment-dropzone.is-dragover {
|
|
5823
|
+
border-color: var(--accent-focus-border);
|
|
5824
|
+
background: var(--accent-hover);
|
|
5825
|
+
box-shadow: var(--accent-ring);
|
|
5826
|
+
}
|
|
5827
|
+
|
|
5828
|
+
.attachment-grid {
|
|
5829
|
+
display: grid;
|
|
5830
|
+
grid-template-columns: repeat(auto-fill, minmax(9.5rem, 1fr));
|
|
5831
|
+
gap: 0.65rem;
|
|
5832
|
+
margin-top: 0.75rem;
|
|
5833
|
+
}
|
|
5834
|
+
|
|
5835
|
+
.attachment-card {
|
|
5836
|
+
position: relative;
|
|
5837
|
+
overflow: hidden;
|
|
5838
|
+
border: 1px solid var(--line);
|
|
5839
|
+
border-radius: 14px;
|
|
5840
|
+
background: var(--surface-card);
|
|
5841
|
+
}
|
|
5842
|
+
|
|
5843
|
+
.attachment-thumb-button {
|
|
5844
|
+
display: block;
|
|
5845
|
+
width: 100%;
|
|
5846
|
+
padding: 0;
|
|
5847
|
+
border: 0;
|
|
5848
|
+
background: var(--surface-dim);
|
|
5849
|
+
cursor: url('cursors/live_link.cur'), pointer;
|
|
5850
|
+
}
|
|
5851
|
+
|
|
5852
|
+
.attachment-thumb-button img,
|
|
5853
|
+
.attachment-missing-thumb {
|
|
5854
|
+
display: block;
|
|
5855
|
+
width: 100%;
|
|
5856
|
+
aspect-ratio: 4 / 3;
|
|
5857
|
+
object-fit: cover;
|
|
5858
|
+
}
|
|
5859
|
+
|
|
5860
|
+
.attachment-missing-thumb {
|
|
5861
|
+
display: grid;
|
|
5862
|
+
place-items: center;
|
|
5863
|
+
color: var(--muted);
|
|
5864
|
+
background: repeating-linear-gradient(45deg, var(--surface-dim), var(--surface-dim) 10px, var(--subtle-bg) 10px, var(--subtle-bg) 20px);
|
|
5865
|
+
font-size: 0.78rem;
|
|
5866
|
+
font-weight: 800;
|
|
5867
|
+
text-transform: uppercase;
|
|
5868
|
+
}
|
|
5869
|
+
|
|
5870
|
+
.attachment-card-meta {
|
|
5871
|
+
display: grid;
|
|
5872
|
+
gap: 0.15rem;
|
|
5873
|
+
min-width: 0;
|
|
5874
|
+
padding: 0.55rem 2rem 0.55rem 0.65rem;
|
|
5875
|
+
}
|
|
5876
|
+
|
|
5877
|
+
.attachment-card-meta strong,
|
|
5878
|
+
.attachment-card-meta span {
|
|
5879
|
+
overflow: hidden;
|
|
5880
|
+
text-overflow: ellipsis;
|
|
5881
|
+
white-space: nowrap;
|
|
5882
|
+
}
|
|
5883
|
+
|
|
5884
|
+
.attachment-card-meta strong {
|
|
5885
|
+
font-size: 0.82rem;
|
|
5886
|
+
}
|
|
5887
|
+
|
|
5888
|
+
.attachment-card-meta span {
|
|
5889
|
+
color: var(--muted);
|
|
5890
|
+
font-size: 0.72rem;
|
|
5891
|
+
}
|
|
5892
|
+
|
|
5893
|
+
.attachment-delete {
|
|
5894
|
+
position: absolute;
|
|
5895
|
+
right: 0.45rem;
|
|
5896
|
+
bottom: 0.45rem;
|
|
5897
|
+
display: inline-grid;
|
|
5898
|
+
width: 1.45rem;
|
|
5899
|
+
height: 1.45rem;
|
|
5900
|
+
place-items: center;
|
|
5901
|
+
padding: 0;
|
|
5902
|
+
border: 1px solid var(--line);
|
|
5903
|
+
border-radius: 999px;
|
|
5904
|
+
background: var(--surface);
|
|
5905
|
+
color: var(--muted);
|
|
5906
|
+
cursor: url('cursors/live_link.cur'), pointer;
|
|
5907
|
+
}
|
|
5908
|
+
|
|
5909
|
+
.attachment-delete:hover {
|
|
5910
|
+
color: var(--danger, #d44);
|
|
5911
|
+
border-color: rgba(var(--red-rgb),0.35);
|
|
5912
|
+
background: rgba(var(--red-rgb),0.08);
|
|
5913
|
+
}
|
|
5914
|
+
|
|
5915
|
+
.attachment-lightbox {
|
|
5916
|
+
position: fixed;
|
|
5917
|
+
inset: 0;
|
|
5918
|
+
z-index: 1200;
|
|
5919
|
+
display: grid;
|
|
5920
|
+
place-items: center;
|
|
5921
|
+
padding: 1rem;
|
|
5922
|
+
background: rgba(2, 6, 23, 0.82);
|
|
5923
|
+
}
|
|
5924
|
+
|
|
5925
|
+
.attachment-lightbox-panel {
|
|
5926
|
+
position: relative;
|
|
5927
|
+
display: grid;
|
|
5928
|
+
gap: 0.6rem;
|
|
5929
|
+
max-width: min(92vw, 72rem);
|
|
5930
|
+
max-height: 92vh;
|
|
5931
|
+
color: white;
|
|
5932
|
+
}
|
|
5933
|
+
|
|
5934
|
+
.attachment-lightbox-panel img {
|
|
5935
|
+
max-width: 100%;
|
|
5936
|
+
max-height: 82vh;
|
|
5937
|
+
border-radius: 16px;
|
|
5938
|
+
object-fit: contain;
|
|
5939
|
+
box-shadow: 0 24px 80px rgba(0,0,0,0.45);
|
|
5940
|
+
}
|
|
5941
|
+
|
|
5942
|
+
.attachment-lightbox-panel p {
|
|
5943
|
+
margin: 0;
|
|
5944
|
+
color: rgba(255,255,255,0.82);
|
|
5945
|
+
text-align: center;
|
|
5946
|
+
}
|
|
5947
|
+
|
|
5948
|
+
.attachment-lightbox-close {
|
|
5949
|
+
position: absolute;
|
|
5950
|
+
top: -0.75rem;
|
|
5951
|
+
right: -0.75rem;
|
|
5952
|
+
display: inline-grid;
|
|
5953
|
+
width: 2.2rem;
|
|
5954
|
+
height: 2.2rem;
|
|
5955
|
+
place-items: center;
|
|
5956
|
+
border: 1px solid rgba(255,255,255,0.25);
|
|
5957
|
+
border-radius: 999px;
|
|
5958
|
+
background: rgba(15, 23, 42, 0.92);
|
|
5959
|
+
color: white;
|
|
5960
|
+
font-size: 1.4rem;
|
|
5961
|
+
cursor: url('cursors/live_link.cur'), pointer;
|
|
5962
|
+
}
|