@ash-qw/dsh-theme-prts 2.3.1 → 2.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +24 -0
- package/README.en.md +7 -3
- package/README.md +7 -3
- package/lib/client.js +509 -93
- package/package.json +1 -1
- package/src/client/avatar-crop.js +7 -2
- package/src/client/background-layout.js +13 -7
- package/src/client/composer-glass-surface.js +10 -1
- package/src/client/conversation-control-adapter.js +152 -3
- package/src/client/custom-background.js +55 -5
- package/src/client/custom-emblem.js +9 -3
- package/src/client/emblem-reorder.js +41 -10
- package/src/client/file-drop.js +48 -0
- package/src/client/host-geometry-adapter.js +6 -1
- package/src/client/native-preferences.js +7 -0
- package/src/client/opacity-dial.js +13 -8
- package/src/client/preferences.js +5 -1
- package/src/client/theme-controller-v2.js +2 -0
- package/src/client/theme-transfer-panel.js +66 -24
- package/src/client/theme-transfer.js +95 -26
- package/src/styles/custom-background.css +93 -13
- package/src/styles/prts.css +4 -2
- package/src/styles/refinement.css +41 -2
- package/src/styles/theme-settings-workbench.css +26 -8
|
@@ -11,8 +11,27 @@ html[data-dsh-prts][data-prts-background-mode="split"][data-prts-background-side
|
|
|
11
11
|
& [data-prts-region="sessions"]{background-position:center,calc(var(--prts-wall-x) - var(--prts-nav-width)) var(--prts-protected-sidebar-y, 50%)}
|
|
12
12
|
}
|
|
13
13
|
html[data-dsh-prts][data-prts-rail-mode="overlay"]:is([data-prts-background-mode="split"][data-prts-background-sidebar],[data-prts-background-mode="full"][data-prts-background-full]) [data-prts-nav-rail] { background: transparent; }
|
|
14
|
-
html[data-dsh-prts][data-prts-background-mode="split"][data-prts-background-conversation]
|
|
15
|
-
background: linear-gradient(var(--prts-background-wash), var(--prts-background-wash)), var(--prts-background-conversation) var(--prts-protected-conversation-x, 50%) var(--prts-protected-conversation-y, 50%) / cover no-repeat;
|
|
14
|
+
html[data-dsh-prts][data-prts-background-mode="split"][data-prts-background-conversation] {
|
|
15
|
+
& [data-prts-region="frame"] { background: linear-gradient(var(--prts-background-wash), var(--prts-background-wash)), var(--prts-background-conversation) var(--prts-protected-conversation-x, 50%) var(--prts-protected-conversation-y, 50%) / cover no-repeat; }
|
|
16
|
+
& [data-prts-region="operation"] { background: transparent; }
|
|
17
|
+
&:not([data-prts-background-sidebar]) [data-prts-region="sessions"] { background: transparent; }
|
|
18
|
+
}
|
|
19
|
+
/* The native right dock paints an opaque tab host over the frame wallpaper. */
|
|
20
|
+
html[data-dsh-prts]:is([data-prts-background-mode="full"][data-prts-background-full],[data-prts-background-mode="split"][data-prts-background-conversation]) [data-prts-region="auxiliary"] { background: transparent; }
|
|
21
|
+
html[data-dsh-prts]:is([data-prts-background-mode="full"][data-prts-background-full],[data-prts-background-mode="split"][data-prts-background-conversation]) [data-prts-region="auxiliary"] :is([data-dockkit-host="dock"] > :first-child,[data-dockkit-empty]) {
|
|
22
|
+
position: relative;
|
|
23
|
+
isolation: isolate;
|
|
24
|
+
background: transparent;
|
|
25
|
+
}
|
|
26
|
+
html[data-dsh-prts]:is([data-prts-background-mode="full"][data-prts-background-full],[data-prts-background-mode="split"][data-prts-background-conversation]) [data-prts-region="auxiliary"] :is([data-dockkit-host="dock"] > :first-child,[data-dockkit-empty])::before {
|
|
27
|
+
content: "";
|
|
28
|
+
position: absolute;
|
|
29
|
+
inset: 0;
|
|
30
|
+
z-index: -1;
|
|
31
|
+
pointer-events: none;
|
|
32
|
+
background: color-mix(in srgb, var(--prts-panel) var(--prts-right-sidebar-opacity, 6%), transparent);
|
|
33
|
+
-webkit-backdrop-filter: blur(var(--prts-right-sidebar-blur, 8px)) saturate(1.15);
|
|
34
|
+
backdrop-filter: blur(var(--prts-right-sidebar-blur, 8px)) saturate(1.15);
|
|
16
35
|
}
|
|
17
36
|
html[data-dsh-prts][data-prts-background-mode="full"][data-prts-background-full] [data-prts-ambient-layer],
|
|
18
37
|
html[data-dsh-prts][data-prts-background-mode="split"][data-prts-background-conversation] [data-prts-ambient-layer] { display: none !important; }
|
|
@@ -74,8 +93,7 @@ html[data-dsh-prts][data-prts-background-mode="full"][data-prts-background-full]
|
|
|
74
93
|
html[data-dsh-prts][data-prts-background-mode="split"][data-prts-background-sidebar] [data-prts-region="sessions"] [data-slot="sidebar.workspaces"] span[class$="_fade"] { display: none !important; }
|
|
75
94
|
|
|
76
95
|
/* Filter the plate, not the ancestor of fixed controls. */
|
|
77
|
-
html[data-dsh-prts][data-prts-background-mode="full"][data-prts-background-full] [data-prts-region="sessions"]::before
|
|
78
|
-
html[data-dsh-prts][data-prts-background-mode="split"][data-prts-background-sidebar] [data-prts-region="sessions"]::before {
|
|
96
|
+
html[data-dsh-prts]:is([data-prts-background-mode="full"][data-prts-background-full],[data-prts-background-mode="split"]:is([data-prts-background-sidebar],[data-prts-background-conversation])) [data-prts-region="sessions"]::before {
|
|
79
97
|
content: "";
|
|
80
98
|
position: absolute;
|
|
81
99
|
inset: 0;
|
|
@@ -87,8 +105,7 @@ backdrop-filter: blur(var(--prts-sidebar-blur, 8px)) saturate(1.15);
|
|
|
87
105
|
box-shadow: inset -1px 0 color-mix(in srgb, var(--prts-ink) 10%, transparent), inset 0 1px rgb(255 255 255 / 8%);
|
|
88
106
|
}
|
|
89
107
|
/* Raise sidebar controls above glass. */
|
|
90
|
-
html[data-dsh-prts][data-prts-background-mode="full"][data-prts-background-full] [data-prts-region="sessions"] [data-slot="sidebar"] > :first-child
|
|
91
|
-
html[data-dsh-prts][data-prts-background-mode="split"][data-prts-background-sidebar] [data-prts-region="sessions"] [data-slot="sidebar"] > :first-child {
|
|
108
|
+
html[data-dsh-prts]:is([data-prts-background-mode="full"][data-prts-background-full],[data-prts-background-mode="split"]:is([data-prts-background-sidebar],[data-prts-background-conversation])) [data-prts-region="sessions"] [data-slot="sidebar"] > :first-child {
|
|
92
109
|
position: relative;
|
|
93
110
|
z-index: 1;
|
|
94
111
|
}
|
|
@@ -170,18 +187,45 @@ html[data-dsh-prts][data-prts-conversation-style="deck-chat"]:is(
|
|
|
170
187
|
--prts-chat-user-surface: rgb(255 255 255 / var(--prts-baker-opacity, 50%));
|
|
171
188
|
--prts-chat-assistant-surface: rgb(223 227 223 / var(--prts-baker-opacity, 50%));
|
|
172
189
|
}
|
|
190
|
+
/* One backdrop plane covers the body and tail; the parent must not create
|
|
191
|
+
a nested backdrop root. The mask rounds the body without clipping content. */
|
|
173
192
|
& :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) [class$="_bubble"],
|
|
174
|
-
& :is([data-prts-ai-surface], [data-message-role="user"], [data-message-role="assistant"])
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
backdrop-filter:
|
|
193
|
+
& :is([data-prts-ai-surface], [data-message-role="user"], [data-message-role="assistant"]) {
|
|
194
|
+
isolation: isolate;
|
|
195
|
+
background: transparent !important;
|
|
196
|
+
-webkit-backdrop-filter: none;
|
|
197
|
+
backdrop-filter: none;
|
|
178
198
|
}
|
|
179
199
|
& [data-prts-ai-surface]::before,
|
|
180
200
|
& [data-message-role="assistant"]::after,
|
|
181
201
|
& :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) [class$="_bubble"]::before,
|
|
182
202
|
& [data-message-role="user"]::before {
|
|
183
|
-
-
|
|
184
|
-
|
|
203
|
+
inset: 0 0 0 -10px; width: auto; height: auto; z-index: -1;
|
|
204
|
+
transform: none;
|
|
205
|
+
-webkit-backdrop-filter: blur(var(--prts-baker-blur, 8px)) saturate(1.08);
|
|
206
|
+
backdrop-filter: blur(var(--prts-baker-blur, 8px)) saturate(1.08);
|
|
207
|
+
mask:
|
|
208
|
+
linear-gradient(#000 0 0) 10px 0 / calc(100% - 28px) calc(100% - 18px),
|
|
209
|
+
linear-gradient(#000 0 0) 10px 18px / calc(100% - 10px) calc(100% - 36px),
|
|
210
|
+
linear-gradient(#000 0 0) 28px bottom / calc(100% - 46px) 18px,
|
|
211
|
+
radial-gradient(circle at left bottom, #000 17.5px, transparent 18px) right top / 18px 18px,
|
|
212
|
+
radial-gradient(circle at right top, #000 17.5px, transparent 18px) 10px bottom / 18px 18px,
|
|
213
|
+
radial-gradient(circle at left top, #000 17.5px, transparent 18px) right bottom / 18px 18px,
|
|
214
|
+
url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 18'%3E%3Cpath d='M0 0H10V18Q10 6 0 0Z'/%3E%3C/svg%3E") left top / 10px 18px;
|
|
215
|
+
mask-repeat: no-repeat;
|
|
216
|
+
}
|
|
217
|
+
& :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) [class$="_bubble"]::before,
|
|
218
|
+
& [data-message-role="user"]::before {
|
|
219
|
+
inset: 0 -10px 0 0;
|
|
220
|
+
mask:
|
|
221
|
+
linear-gradient(#000 0 0) 18px 0 / calc(100% - 28px) calc(100% - 18px),
|
|
222
|
+
linear-gradient(#000 0 0) 0 18px / calc(100% - 10px) calc(100% - 36px),
|
|
223
|
+
linear-gradient(#000 0 0) 18px bottom / calc(100% - 46px) 18px,
|
|
224
|
+
radial-gradient(circle at right bottom, #000 17.5px, transparent 18px) left top / 18px 18px,
|
|
225
|
+
radial-gradient(circle at right top, #000 17.5px, transparent 18px) left bottom / 18px 18px,
|
|
226
|
+
radial-gradient(circle at left top, #000 17.5px, transparent 18px) right 10px bottom 0 / 18px 18px,
|
|
227
|
+
url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 18'%3E%3Cpath d='M10 0H0V18Q0 6 10 0Z'/%3E%3C/svg%3E") right top / 10px 18px;
|
|
228
|
+
mask-repeat: no-repeat;
|
|
185
229
|
}
|
|
186
230
|
}
|
|
187
231
|
|
|
@@ -273,13 +317,16 @@ border-radius: 6px;
|
|
|
273
317
|
background: var(--prts-background-full, linear-gradient(135deg, #8bb6c2, #c7b69c)) center / cover;
|
|
274
318
|
--prts-preview-surface: var(--prts-panel);
|
|
275
319
|
}
|
|
276
|
-
html[data-prts-background-mode="split"]
|
|
320
|
+
html[data-prts-background-mode="split"] [data-prts-material-preview="sidebarOpacity"] { background-image: var(--prts-background-sidebar, var(--prts-background-conversation, linear-gradient(135deg, #8bb6c2, #c7b69c))); }
|
|
321
|
+
html[data-prts-background-mode="split"] [data-prts-material-preview="rightSidebarOpacity"] { background-image: var(--prts-background-conversation, linear-gradient(135deg, #8bb6c2, #c7b69c)); }
|
|
322
|
+
html[data-prts-background-mode="split"] [data-prts-material-preview="railOpacity"] { background-image: var(--prts-background-sidebar, linear-gradient(135deg, #8bb6c2, #c7b69c)); }
|
|
277
323
|
html[data-prts-background-mode="split"] [data-prts-material-preview="bakerOpacity"] { background-image: var(--prts-background-conversation, linear-gradient(135deg, #8bb6c2, #c7b69c)); }
|
|
278
324
|
html[data-prts-background-mode="split"] [data-prts-material-preview="classicUserOpacity"] { background-image: var(--prts-background-conversation, linear-gradient(135deg, #8bb6c2, #c7b69c)); }
|
|
279
325
|
[data-prts-material-preview]::before { content: ""; position: absolute; inset: 0; background: var(--prts-background-wash); }
|
|
280
326
|
[data-prts-material-preview-surface] { position: absolute; inset: 0; display: grid; align-content: center; gap: 6px; padding: 10px; font-size: 10px; text-align: left; color: var(--prts-ink); background: color-mix(in srgb, var(--prts-preview-surface) var(--prts-sidebar-opacity, 6%), transparent); backdrop-filter: blur(var(--prts-sidebar-blur, 8px)) saturate(1.15); }
|
|
281
327
|
[data-prts-material-preview-surface] i { display: block; height: 8px; border-radius: 2px; background: color-mix(in srgb, var(--prts-ink) 18%, transparent); }
|
|
282
328
|
[data-prts-material-preview-surface] i:last-child { width: 65%; }
|
|
329
|
+
[data-prts-material-preview="rightSidebarOpacity"] [data-prts-material-preview-surface] { background: color-mix(in srgb, var(--prts-preview-surface) var(--prts-right-sidebar-opacity, 6%), transparent); backdrop-filter: blur(var(--prts-right-sidebar-blur, 8px)) saturate(1.15); }
|
|
283
330
|
[data-prts-material-preview="railOpacity"] [data-prts-material-preview-surface] { inset: 0 auto 0 0; width: 40%; padding: 5px; justify-items: center; gap: 2px; background: color-mix(in srgb, var(--prts-preview-surface) var(--prts-rail-opacity, 30%), transparent); backdrop-filter: blur(var(--prts-rail-blur, 12px)) saturate(1.15); }
|
|
284
331
|
[data-prts-material-preview="bakerOpacity"] [data-prts-material-preview-surface] { inset: 16px 10px; border-radius: 0 10px 10px 10px; background: rgb(69 70 68 / var(--prts-baker-opacity, 50%)); backdrop-filter: blur(var(--prts-baker-blur, 8px)) saturate(1.08); }
|
|
285
332
|
html[data-prts-scheme="light"] [data-prts-material-preview="bakerOpacity"] [data-prts-material-preview-surface] { background: rgb(223 227 223 / var(--prts-baker-opacity, 50%)); }
|
|
@@ -399,3 +446,36 @@ html[data-dsh-prts][data-windows-titlebar] [data-prts-region="operation"] { bord
|
|
|
399
446
|
[data-prts-region-handle="s"] {left:50%;bottom:-8px;transform:translateX(-50%);cursor:ns-resize}
|
|
400
447
|
[data-prts-region-handle="w"] {left:-8px;top:50%;transform:translateY(-50%);cursor:ew-resize}
|
|
401
448
|
[data-prts-region-handle="e"] {right:-8px;top:50%;transform:translateY(-50%);cursor:ew-resize}
|
|
449
|
+
|
|
450
|
+
html[data-dsh-prts] [data-prts-background-confirm] {
|
|
451
|
+
box-sizing: border-box; width: min(560px, calc(100vw - 32px)); max-height: calc(100dvh - 32px);
|
|
452
|
+
padding: 24px; overflow: auto; border: 1px solid var(--prts-line-strong); border-top: 2px solid var(--prts-yellow);
|
|
453
|
+
border-radius: 8px; background: var(--prts-canvas); color: var(--prts-ink); box-shadow: 0 24px 80px #0006;
|
|
454
|
+
font: 13px/1.6 var(--prts-body);
|
|
455
|
+
&::backdrop { background: #0008; backdrop-filter: blur(4px); }
|
|
456
|
+
& header { display: block; margin: 0 0 20px; padding: 0; border: 0; }
|
|
457
|
+
& header small { color: var(--prts-muted); font-size: 12px; }
|
|
458
|
+
& h2 { margin: 4px 0 0; color: var(--prts-ink); font-size: 21px; line-height: 1.4; }
|
|
459
|
+
& [data-prts-background-compare] { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
|
|
460
|
+
& figure { min-width: 0; margin: 0; }
|
|
461
|
+
& img { display: block; box-sizing: border-box; width: 100%; aspect-ratio: 4/3; object-fit: contain; border: 1px solid var(--prts-line); border-radius: 4px; background: var(--prts-panel-raised); }
|
|
462
|
+
& figure:last-child img { border-color: var(--prts-yellow); }
|
|
463
|
+
& figcaption { margin-top: 8px; font-size: 12px; }
|
|
464
|
+
& [data-prts-background-filename] { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--prts-muted); }
|
|
465
|
+
& p { margin: 20px 0; color: var(--prts-muted); font-size: 12px; }
|
|
466
|
+
& footer { display: flex; justify-content: flex-end; gap: 10px; padding-top: 16px; border-top: 1px solid var(--prts-line); }
|
|
467
|
+
& button { min-width: 88px; padding: 9px 16px; border: 1px solid var(--prts-line-strong); border-radius: 4px; background: var(--prts-panel-raised); color: var(--prts-ink); font: inherit; cursor: pointer; }
|
|
468
|
+
& [data-prts-background-confirm-apply] { border-color: var(--prts-yellow); background: var(--prts-yellow); color: #171b1d; font-weight: 600; }
|
|
469
|
+
& button:hover { filter: brightness(.94); }
|
|
470
|
+
& button:focus-visible { outline: 2px solid var(--prts-yellow); outline-offset: 3px; }
|
|
471
|
+
}
|
|
472
|
+
@media (max-width: 480px) {
|
|
473
|
+
html[data-dsh-prts] [data-prts-background-confirm] { padding: 18px; }
|
|
474
|
+
}
|
|
475
|
+
|
|
476
|
+
/* Expanded process headers remain sticky without painting the native opaque base. */
|
|
477
|
+
html[data-dsh-prts]:is([data-prts-background-mode="full"][data-prts-background-full],[data-prts-background-mode="split"][data-prts-background-conversation]) [data-prts-region="operation"] :is([data-variant="think"][data-expanded] [data-open] > [data-disclosure-header],button[aria-expanded="true"]:has([data-compaction-disclosure])) {
|
|
478
|
+
background:color-mix(in srgb,var(--prts-panel) 28%,transparent);
|
|
479
|
+
-webkit-backdrop-filter:blur(12px);
|
|
480
|
+
backdrop-filter:blur(12px);
|
|
481
|
+
}
|
package/src/styles/prts.css
CHANGED
|
@@ -1542,7 +1542,7 @@ html[data-dsh-prts] [data-prts-conversation-control] {
|
|
|
1542
1542
|
|
|
1543
1543
|
html[data-dsh-prts] [data-composer-card] button:not([data-slot="conversation.input.attachments"] *):not([data-prts-glass-menu] *):not([data-prts-floating-glass] *):not([role="menu"] *):not([role="listbox"] *):is(:hover, :focus-visible),
|
|
1544
1544
|
html[data-dsh-prts] [data-prts-conversation-control]:is(:hover, :focus-visible) {
|
|
1545
|
-
border-color: var(--prts-
|
|
1545
|
+
border-color: var(--prts-line) !important;
|
|
1546
1546
|
}
|
|
1547
1547
|
|
|
1548
1548
|
html[data-dsh-prts] [data-composer-card] button[aria-label*="send" i],
|
|
@@ -1606,7 +1606,9 @@ html[data-dsh-prts] [data-prts-floating-item] {
|
|
|
1606
1606
|
color: var(--prts-ink) !important;
|
|
1607
1607
|
}
|
|
1608
1608
|
|
|
1609
|
-
|
|
1609
|
+
/* Native material menus own their item states, including body portals without
|
|
1610
|
+
aria-controls or composer markers. Keep generic fallback styling separate. */
|
|
1611
|
+
html[data-dsh-prts] [data-prts-floating-item]:not([data-menu-material] *, [data-prts-glass-menu] *, [data-slot="conversation.input.overlay"] *):is(:hover, [data-highlighted]) {
|
|
1610
1612
|
background: var(--prts-panel-muted) !important;
|
|
1611
1613
|
}
|
|
1612
1614
|
|
|
@@ -364,7 +364,7 @@ html[data-dsh-prts] :is(
|
|
|
364
364
|
[data-prts-glass-control],
|
|
365
365
|
[data-prts-conversation-control]:not([data-prts-conversation-control="micro"], [data-prts-conversation-control="file"])
|
|
366
366
|
):is(:hover, :focus-visible) {
|
|
367
|
-
--prts-control-outline: var(--prts-
|
|
367
|
+
--prts-control-outline: var(--prts-line);
|
|
368
368
|
}
|
|
369
369
|
|
|
370
370
|
html[data-dsh-prts] :is(
|
|
@@ -464,7 +464,7 @@ html[data-dsh-prts] :is([data-presented-file],[data-changed-files],[data-prts-co
|
|
|
464
464
|
background:var(--prts-active-glass)!important;color:var(--prts-ink);
|
|
465
465
|
backdrop-filter:var(--prts-active-glass-filter);
|
|
466
466
|
&::before{content:none}
|
|
467
|
-
&:is(:hover,:focus-within){border-color:var(--prts-
|
|
467
|
+
&:is(:hover,:focus-within){border-color:var(--prts-glass-border)!important}
|
|
468
468
|
}
|
|
469
469
|
/* One surface for both single-file summaries and grouped changes. */
|
|
470
470
|
html[data-dsh-prts] [data-changed-files]{
|
|
@@ -510,3 +510,42 @@ html[data-dsh-prts] [data-turn-trigger] {
|
|
|
510
510
|
& > div > p { color:var(--prts-muted); }
|
|
511
511
|
& [data-context-text] { color:var(--prts-ink); }
|
|
512
512
|
}
|
|
513
|
+
|
|
514
|
+
/* Body interactions lock onto four corners; shell controls keep their own treatment. */
|
|
515
|
+
html[data-dsh-prts] :is([data-chat-flow-kind],[data-message-role]) :is([data-prts-conversation-control],[data-presented-file],[data-changed-files],[data-produced-files-row] > button) {
|
|
516
|
+
position:relative;
|
|
517
|
+
--prts-control-outline:var(--prts-line);
|
|
518
|
+
&:is(:hover,:focus-visible,:focus-within) {
|
|
519
|
+
--prts-control-outline:var(--prts-line);
|
|
520
|
+
border-color:var(--prts-line)!important;
|
|
521
|
+
}
|
|
522
|
+
&:is([data-presented-file],[data-changed-files],[data-prts-conversation-control="file"]) {
|
|
523
|
+
&:is(:hover,:focus-visible,:focus-within){border-color:var(--prts-glass-border)!important}
|
|
524
|
+
}
|
|
525
|
+
&:active{transform:none}
|
|
526
|
+
}
|
|
527
|
+
html[data-dsh-prts] [data-prts-body-target-frame] {
|
|
528
|
+
position:fixed;inset:auto;left:0;top:0;width:0;height:0;margin:0;padding:0;border:0;background:transparent;overflow:visible;z-index:100;pointer-events:none;opacity:0;--prts-corner-width:1px;
|
|
529
|
+
& > i {
|
|
530
|
+
position:absolute;left:0;top:0;width:7px;height:7px;will-change:transform;
|
|
531
|
+
&::before,&::after{content:"";position:absolute;left:0;top:0;background:currentColor}
|
|
532
|
+
&::before{width:7px;height:var(--prts-corner-width);transform:scaleX(var(--prts-arm-scale,1));transform-origin:left center}
|
|
533
|
+
&::after{width:var(--prts-corner-width);height:7px;transform:scaleY(var(--prts-arm-scale,1));transform-origin:center top}
|
|
534
|
+
&:nth-child(2),&:nth-child(4){
|
|
535
|
+
&::before{transform-origin:right center}
|
|
536
|
+
&::after{left:auto;right:0}
|
|
537
|
+
}
|
|
538
|
+
&:nth-child(3),&:nth-child(4){
|
|
539
|
+
&::before{top:auto;bottom:0}
|
|
540
|
+
&::after{transform-origin:center bottom}
|
|
541
|
+
}
|
|
542
|
+
}
|
|
543
|
+
&[data-pressed]{--prts-corner-width:2px;filter:brightness(1.3)}
|
|
544
|
+
}
|
|
545
|
+
|
|
546
|
+
html[data-dsh-prts] :is([data-chat-flow-kind],[data-message-role]) [data-changed-files] button:is(:hover,:focus-visible) {
|
|
547
|
+
background:color-mix(in srgb,var(--prts-ink) 5%,transparent);box-shadow:none;
|
|
548
|
+
}
|
|
549
|
+
|
|
550
|
+
html[data-dsh-prts] [data-prts-corner-target]:focus-visible{outline:none!important}
|
|
551
|
+
html[data-dsh-prts] [data-prts-corner-target]:active{transform:none!important}
|
|
@@ -940,10 +940,10 @@ html[data-dsh-prts] [data-prts-transfer] {
|
|
|
940
940
|
& input[type="file"] { max-width: 100%; min-width: 0; }
|
|
941
941
|
& input[type="checkbox"] { accent-color: var(--prts-yellow); }
|
|
942
942
|
& button { justify-self: start; padding: 8px 14px; border: 1px solid var(--prts-line-strong); border-radius: 0; background: var(--prts-panel-raised); color: var(--prts-ink); font: inherit; cursor: pointer; }
|
|
943
|
-
& button:hover:not(:disabled) { border-color: var(--prts-
|
|
943
|
+
& button:hover:not(:disabled) { border-color: var(--prts-line-strong); }
|
|
944
944
|
& button:focus-visible { outline: 2px solid var(--prts-yellow); outline-offset: 3px; }
|
|
945
945
|
& button:disabled { opacity: .55; cursor: wait; }
|
|
946
|
-
& [data-prts-transfer-
|
|
946
|
+
& [data-prts-transfer-apply] { border-color: var(--prts-yellow); }
|
|
947
947
|
& hr { width: 100%; border: 0; border-top: 1px solid var(--prts-line); }
|
|
948
948
|
& [data-prts-transfer-preview], & [data-prts-transfer-recovery] { display: grid; gap: 12px; padding: 16px; border: 1px solid var(--prts-line); }
|
|
949
949
|
& [hidden] { display: none !important; }
|
|
@@ -951,7 +951,7 @@ html[data-dsh-prts] [data-prts-transfer] {
|
|
|
951
951
|
|
|
952
952
|
html[data-dsh-prts] [data-prts-theme-settings] [data-prts-settings-actions] { display:flex; flex-direction:column; align-items:stretch; gap:8px; }
|
|
953
953
|
html[data-dsh-prts] [data-prts-transfer-open] { display:flex; align-items:center; gap:8px; width:100%; padding:10px 8px; background:none; border:1px solid var(--prts-line); border-radius:4px; color:var(--prts-ink); font:500 12px/1.4 var(--prts-body); cursor:pointer; }
|
|
954
|
-
html[data-dsh-prts] [data-prts-transfer-open]:hover { border-color:var(--prts-
|
|
954
|
+
html[data-dsh-prts] [data-prts-transfer-open]:hover { border-color:var(--prts-line); }
|
|
955
955
|
html[data-dsh-prts] [data-prts-transfer-dialog] { box-sizing:border-box; width:min(660px,calc(100vw - 32px)); max-height:calc(100dvh - 48px); padding:0; border:1px solid var(--prts-line-strong); border-radius:8px; background:var(--prts-canvas); color:var(--prts-ink); box-shadow:0 24px 80px #0006; font:13px/1.6 var(--prts-body); overflow:auto; }
|
|
956
956
|
html[data-dsh-prts] [data-prts-transfer-dialog]::backdrop { background:#0007; }
|
|
957
957
|
html[data-dsh-prts] [data-prts-transfer] {
|
|
@@ -960,16 +960,17 @@ html[data-dsh-prts] [data-prts-transfer] {
|
|
|
960
960
|
& h2 { margin:4px 0 0; font-size:20px; line-height:1.4; }
|
|
961
961
|
& h3 { margin:0; font-size:14px; }
|
|
962
962
|
& [data-prts-transfer-close] { padding:2px 10px; font-size:24px; border:0; background:none; }
|
|
963
|
-
& [data-prts-transfer-columns] { display:grid; grid-template-columns:1fr 1fr; gap:
|
|
964
|
-
& [data-prts-transfer-card] { display:flex; flex-direction:column; gap:12px; min-width:0; }
|
|
965
|
-
& [data-prts-transfer-card]
|
|
966
|
-
& [data-prts-transfer-card] > button {
|
|
963
|
+
& [data-prts-transfer-columns] { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
|
|
964
|
+
& [data-prts-transfer-card] { display:flex; flex-direction:column; gap:12px; min-width:0; padding:18px; border:1px solid var(--prts-line); border-radius:6px; background:var(--prts-panel-raised); transition:border-color 180ms ease,background-color 180ms ease,box-shadow 180ms ease; }
|
|
965
|
+
& [data-prts-transfer-card] > button { margin-top:auto; display:flex; align-items:center; justify-content:space-between; gap:12px; align-self:stretch; border-radius:4px; }
|
|
966
|
+
& [data-prts-transfer-card] > button:hover:not(:disabled) { border-color:var(--prts-line-strong); }
|
|
967
967
|
& [data-prts-transfer-option] { align-items:flex-start; flex-wrap:nowrap; padding:12px 0 0; }
|
|
968
968
|
& [data-prts-transfer-option] input { margin:5px 0 0; }
|
|
969
969
|
& [data-prts-transfer-option] small { display:block; margin-top:4px; }
|
|
970
970
|
& [data-prts-transfer-file-hint] { display:grid; place-items:center; flex:1; gap:6px; padding:12px; border:1px dashed var(--prts-line-strong); }
|
|
971
971
|
& [data-prts-transfer-file-hint] > span { font-size:24px; color:var(--prts-muted); }
|
|
972
972
|
& [data-prts-transfer-buttons] { display:flex; gap:8px; }
|
|
973
|
+
& [data-prts-transfer-compatibility] { margin:0; padding:10px 12px; border:1px solid var(--prts-yellow); overflow-wrap:anywhere; }
|
|
973
974
|
& [data-prts-transfer-recovery] { border:0; border-top:1px solid var(--prts-line); padding:16px 0 0; }
|
|
974
975
|
& [data-prts-transfer-status]:empty { display:none; }
|
|
975
976
|
}
|
|
@@ -985,7 +986,6 @@ html[data-dsh-prts] [data-prts-transfer] {
|
|
|
985
986
|
@media(max-width:540px) {
|
|
986
987
|
html[data-dsh-prts] [data-prts-transfer] { padding:20px; }
|
|
987
988
|
html[data-dsh-prts] [data-prts-transfer] [data-prts-transfer-columns] { grid-template-columns:1fr; gap:20px; }
|
|
988
|
-
html[data-dsh-prts] [data-prts-transfer] [data-prts-transfer-card] + section { padding:20px 0 0; border-left:0; border-top:1px solid var(--prts-line); }
|
|
989
989
|
}
|
|
990
990
|
|
|
991
991
|
/* Shared quiet actions below the settings categories. */
|
|
@@ -1014,3 +1014,21 @@ html[data-dsh-prts] [data-prts-theme-settings] [data-prts-footer-action][hidden]
|
|
|
1014
1014
|
html[data-dsh-prts] [data-prts-theme-settings] [data-prts-settings-actions] { display:grid; grid-template-columns:1fr 1fr; gap:8px; padding:8px 12px; }
|
|
1015
1015
|
html[data-dsh-prts] [data-prts-theme-settings] [data-prts-reset-zone] { width:100%; }
|
|
1016
1016
|
}
|
|
1017
|
+
|
|
1018
|
+
[data-prts-transfer-progress] { display: grid; gap: 8px; }
|
|
1019
|
+
[data-prts-transfer-progress] > div { display: flex; justify-content: space-between; gap: 12px; font-size: 12px; }
|
|
1020
|
+
[data-prts-transfer-bar] { width: 100%; height: 8px; accent-color: var(--prts-accent, #d8b85e); }
|
|
1021
|
+
|
|
1022
|
+
[data-prts-drop-active] { outline: 2px dashed var(--prts-accent, #d8b85e); outline-offset: -3px; }
|
|
1023
|
+
|
|
1024
|
+
html[data-dsh-prts] [data-prts-transfer] [data-prts-transfer-card][data-prts-transfer-active],
|
|
1025
|
+
html[data-dsh-prts] [data-prts-transfer]:not([aria-busy="true"]) [data-prts-transfer-card]:has(:focus-visible) {
|
|
1026
|
+
border-color:var(--prts-line-strong); background:color-mix(in srgb,var(--prts-ink) 3%,var(--prts-panel-raised)); box-shadow:inset 0 1px color-mix(in srgb,var(--prts-ink) 7%,transparent),0 8px 24px #0002;
|
|
1027
|
+
}
|
|
1028
|
+
@media (hover:hover) {
|
|
1029
|
+
html[data-dsh-prts] [data-prts-transfer]:not([aria-busy="true"]) [data-prts-transfer-card]:hover {
|
|
1030
|
+
border-color:var(--prts-line-strong); background:color-mix(in srgb,var(--prts-ink) 3%,var(--prts-panel-raised)); box-shadow:inset 0 1px color-mix(in srgb,var(--prts-ink) 7%,transparent),0 8px 24px #0002;
|
|
1031
|
+
}
|
|
1032
|
+
}
|
|
1033
|
+
html[data-prts-motion="reduced"] [data-prts-transfer-card] { transition:none; }
|
|
1034
|
+
@media (prefers-reduced-motion:reduce) { [data-prts-transfer-card] { transition:none; } }
|