anentrypoint-design 0.0.481 → 0.0.482
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/chat.css +7 -7
- package/colors_and_type.css +11 -0
- package/community.css +12 -10
- package/dist/247420.css +114 -62
- package/dist/247420.js +25 -25
- package/package.json +1 -1
- package/src/css/app-shell/chat-polish.css +1 -1
- package/src/css/app-shell/data-density.css +0 -4
- package/src/css/app-shell/files.css +1 -1
- package/src/css/app-shell/hero-content.css +5 -6
- package/src/css/app-shell/loading-alerts.css +10 -5
- package/src/css/app-shell/plugins-config.css +6 -5
- package/src/css/app-shell/primitives.css +25 -6
- package/src/css/app-shell/responsive.css +4 -4
- package/src/css/app-shell/responsive2-workspace.css +7 -1
- package/src/css/app-shell/row-print.css +1 -1
- package/src/css/app-shell/topbar.css +16 -3
- package/src/kits/spoint/host-join-lobby.css +4 -4
package/chat.css
CHANGED
|
@@ -244,7 +244,7 @@
|
|
|
244
244
|
.chat-msg-action {
|
|
245
245
|
display: inline-flex; align-items: center; justify-content: center; gap: var(--space-1);
|
|
246
246
|
min-width: 26px; height: 26px; padding: 0 var(--space-1-75); cursor: pointer;
|
|
247
|
-
border: none; border-radius: var(--r-1,
|
|
247
|
+
border: none; border-radius: var(--r-1, 8px); background: none; color: var(--fg-3);
|
|
248
248
|
font-family: var(--ff-body); font-size: var(--fs-tiny);
|
|
249
249
|
}
|
|
250
250
|
.chat-msg-action-label { font-size: var(--fs-tiny); }
|
|
@@ -312,7 +312,7 @@
|
|
|
312
312
|
display: flex; align-items: center; gap: var(--space-2, 8px);
|
|
313
313
|
padding: var(--space-1, 4px) var(--space-2, 8px);
|
|
314
314
|
border: var(--bw-hair) solid var(--rule);
|
|
315
|
-
border-radius: var(--r-1,
|
|
315
|
+
border-radius: var(--r-1, 8px);
|
|
316
316
|
background: var(--bg-2);
|
|
317
317
|
}
|
|
318
318
|
.agentchat-install-agent { flex: 0 0 auto; font-size: var(--fs-tiny); color: var(--fg-3); min-width: 8ch; }
|
|
@@ -322,7 +322,7 @@
|
|
|
322
322
|
}
|
|
323
323
|
.agentchat-install-copy {
|
|
324
324
|
flex: 0 0 auto; cursor: pointer; padding: var(--space-hair) var(--space-2); min-height: 24px;
|
|
325
|
-
border: var(--bw-hair) solid var(--bg-3); border-radius: var(--r-1,
|
|
325
|
+
border: var(--bw-hair) solid var(--bg-3); border-radius: var(--r-1, 8px);
|
|
326
326
|
background: none; color: var(--fg-3);
|
|
327
327
|
font-family: var(--ff-body); font-size: var(--fs-tiny);
|
|
328
328
|
}
|
|
@@ -333,7 +333,7 @@
|
|
|
333
333
|
/* Host-supplied transcript export actions riding the controls row. */
|
|
334
334
|
.agentchat-export-act {
|
|
335
335
|
cursor: pointer; padding: var(--space-1) var(--space-2-5); min-height: 32px;
|
|
336
|
-
border: var(--bw-hair) solid var(--bg-3); border-radius: var(--r-1,
|
|
336
|
+
border: var(--bw-hair) solid var(--bg-3); border-radius: var(--r-1, 8px);
|
|
337
337
|
background: none; color: var(--fg-3);
|
|
338
338
|
font-family: var(--ff-body); font-size: var(--fs-tiny);
|
|
339
339
|
}
|
|
@@ -567,7 +567,7 @@
|
|
|
567
567
|
background: var(--bg); border: var(--border-w) solid var(--accent); border-radius: var(--r-1);
|
|
568
568
|
padding: var(--space-1) var(--space-2);
|
|
569
569
|
}
|
|
570
|
-
.ds-session-rename-input:focus { outline: none; box-shadow: var(--focus-ring-inset); }
|
|
570
|
+
.ds-session-rename-input:focus-visible { outline: none; box-shadow: var(--focus-ring-inset); }
|
|
571
571
|
|
|
572
572
|
/* Inline delete confirm — same row height, two flat buttons, no modal;
|
|
573
573
|
mirrors SessionDashboard's arm-then-confirm bulk-stop control. */
|
|
@@ -609,7 +609,7 @@
|
|
|
609
609
|
.ds-dash-header .btn-primary.danger.is-armed { background: var(--warn); color: var(--ink); border-color: var(--warn); }
|
|
610
610
|
.ds-dash-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: var(--space-2); padding: var(--space-3); }
|
|
611
611
|
@media (min-width: 1500px) { .ds-dash-grid { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); } }
|
|
612
|
-
.ds-dash-card { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-3); background: var(--bg-2); border: var(--bw-hair) solid var(--bg-3); border-radius: var(--r-
|
|
612
|
+
.ds-dash-card { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-3); background: var(--bg-2); border: var(--bw-hair) solid var(--bg-3); border-radius: var(--r-1); }
|
|
613
613
|
|
|
614
614
|
/* Compact density — one line per session. The comfortable card stacks title +
|
|
615
615
|
head + meta + actions as four flex rows and measured 208px tall on a real
|
|
@@ -777,7 +777,7 @@
|
|
|
777
777
|
position: absolute; top: 6px; right: 6px;
|
|
778
778
|
display: inline-flex; align-items: center; justify-content: center;
|
|
779
779
|
min-width: 48px; min-height: 24px; padding: var(--space-hair) var(--space-2);
|
|
780
|
-
border: var(--bw-hair) solid var(--bg-3); border-radius: var(--r-1,
|
|
780
|
+
border: var(--bw-hair) solid var(--bg-3); border-radius: var(--r-1, 8px);
|
|
781
781
|
background: var(--bg-2); color: var(--fg-2); cursor: pointer;
|
|
782
782
|
font-family: var(--ff-body); font-size: var(--fs-tiny);
|
|
783
783
|
opacity: 0; transition: opacity var(--dur-snap, .12s) var(--ease, ease);
|
package/colors_and_type.css
CHANGED
|
@@ -399,6 +399,17 @@
|
|
|
399
399
|
--sidebar-width: 220px;
|
|
400
400
|
--sidebar-width-collapsed: 64px;
|
|
401
401
|
|
|
402
|
+
/* Canonical breakpoint values — @media can't reference custom properties,
|
|
403
|
+
so these are documented here (not tokenized) for consistency across
|
|
404
|
+
responsive.css/responsive2-workspace.css/hero-content.css:
|
|
405
|
+
- 480px (max-width) mobile portrait
|
|
406
|
+
- 768px (max-width) mobile/tablet boundary, compact nav/sidebar collapse
|
|
407
|
+
- 768-1024px (min/max-width) tablet landscape band
|
|
408
|
+
- 900px (max-width) / 901px (min-width) tablet/desktop layout reflow
|
|
409
|
+
- 1025px (min-width) desktop
|
|
410
|
+
Always use these exact values; a near-miss (e.g. 760px, 481px) should be
|
|
411
|
+
aligned to its canonical neighbour when touched. */
|
|
412
|
+
|
|
402
413
|
--lh-tall: 1.4;
|
|
403
414
|
|
|
404
415
|
/* Control size scale — heights for status/topbar/crumb + controls. */
|
package/community.css
CHANGED
|
@@ -132,11 +132,11 @@
|
|
|
132
132
|
min-width: 18px;
|
|
133
133
|
height: 18px;
|
|
134
134
|
padding: 0 var(--space-1-5);
|
|
135
|
-
/*
|
|
136
|
-
|
|
137
|
-
|
|
135
|
+
/* --ink, not --paper: --paper is a fixed near-white, which measures ~3:1 on
|
|
136
|
+
--warn (#FF5A52) -- below the 4.5:1 AA floor. --ink clears it (same fix
|
|
137
|
+
as .btn-primary.danger in app-shell/files.css). */
|
|
138
138
|
background: var(--warn);
|
|
139
|
-
color: var(--
|
|
139
|
+
color: var(--ink);
|
|
140
140
|
font-family: var(--ff-mono);
|
|
141
141
|
font-size: var(--fs-micro);
|
|
142
142
|
font-weight: 700;
|
|
@@ -467,11 +467,11 @@
|
|
|
467
467
|
min-width: 16px;
|
|
468
468
|
height: 16px;
|
|
469
469
|
padding: 0 var(--space-1-5);
|
|
470
|
-
/*
|
|
471
|
-
|
|
472
|
-
|
|
470
|
+
/* --ink, not --paper: --paper is a fixed near-white, which measures ~3:1 on
|
|
471
|
+
--warn (#FF5A52) -- below the 4.5:1 AA floor. --ink clears it (same fix
|
|
472
|
+
as .btn-primary.danger in app-shell/files.css). */
|
|
473
473
|
background: var(--warn);
|
|
474
|
-
color: var(--
|
|
474
|
+
color: var(--ink);
|
|
475
475
|
font-family: var(--ff-mono);
|
|
476
476
|
font-size: var(--fs-micro);
|
|
477
477
|
font-weight: 700;
|
|
@@ -1690,13 +1690,15 @@
|
|
|
1690
1690
|
.fd-page-inner { display: flex; flex-direction: column; gap: var(--space-3, 16px); padding: var(--space-3, 16px); max-width: 1100px; }
|
|
1691
1691
|
.fd-page-inner > * { min-width: 0; }
|
|
1692
1692
|
.fd-loading { display: flex; align-items: center; gap: var(--space-2, 10px); padding: var(--space-4, 24px); color: var(--fg-2, var(--fg)); }
|
|
1693
|
-
|
|
1693
|
+
/* Base layout shared with .ds-empty-state (primitives.css); overrides padding
|
|
1694
|
+
(--space-5, denser than the shared --space-6) and color for this context. */
|
|
1695
|
+
.fd-empty { padding: var(--space-5, 32px) var(--space-3, 16px); color: var(--fg-2, var(--fg)); }
|
|
1694
1696
|
/* 28px is an ICON size (empty-state mark), not a type tier — the --fs-* ladder
|
|
1695
1697
|
tops out at --fs-xl (21px) before every remaining rung becomes a fluid
|
|
1696
1698
|
heading clamp, so neither substitutes without visibly resizing the mark.
|
|
1697
1699
|
--fs-2xl bridges that gap as a fixed 28px token. */
|
|
1698
1700
|
.fd-empty-glyph { font-size: var(--fs-2xl); opacity: .55; line-height: 1; }
|
|
1699
|
-
.fd-pre { margin: 0; padding: var(--space-2, 10px); background: var(--bg-3, var(--panel-bg-2)); border: var(--bw-hair, 1px) solid var(--rule, var(--panel-accent)); border-radius: var(--r-1,
|
|
1701
|
+
.fd-pre { margin: 0; padding: var(--space-2, 10px); background: var(--bg-3, var(--panel-bg-2)); border: var(--bw-hair, 1px) solid var(--rule, var(--panel-accent)); border-radius: var(--r-1, 8px); overflow: auto; max-height: 460px; white-space: pre-wrap; overflow-wrap: anywhere; word-break: break-word; font-family: var(--font-mono, ui-monospace, monospace); font-size: var(--fs-micro); line-height: 1.5; }
|
|
1700
1702
|
.fd-skill-body { max-height: 320px; }
|
|
1701
1703
|
.fd-row-actions { display: inline-flex; gap: var(--space-1, 6px); align-items: center; }
|
|
1702
1704
|
.fd-chat { display: flex; flex-direction: column; gap: var(--space-2, 10px); height: 100%; min-height: 0; }
|
package/dist/247420.css
CHANGED
|
@@ -401,6 +401,17 @@
|
|
|
401
401
|
--sidebar-width: 220px;
|
|
402
402
|
--sidebar-width-collapsed: 64px;
|
|
403
403
|
|
|
404
|
+
/* Canonical breakpoint values — @media can't reference custom properties,
|
|
405
|
+
so these are documented here (not tokenized) for consistency across
|
|
406
|
+
responsive.css/responsive2-workspace.css/hero-content.css:
|
|
407
|
+
- 480px (max-width) mobile portrait
|
|
408
|
+
- 768px (max-width) mobile/tablet boundary, compact nav/sidebar collapse
|
|
409
|
+
- 768-1024px (min/max-width) tablet landscape band
|
|
410
|
+
- 900px (max-width) / 901px (min-width) tablet/desktop layout reflow
|
|
411
|
+
- 1025px (min-width) desktop
|
|
412
|
+
Always use these exact values; a near-miss (e.g. 760px, 481px) should be
|
|
413
|
+
aligned to its canonical neighbour when touched. */
|
|
414
|
+
|
|
404
415
|
--lh-tall: 1.4;
|
|
405
416
|
|
|
406
417
|
/* Control size scale — heights for status/topbar/crumb + controls. */
|
|
@@ -1356,13 +1367,26 @@
|
|
|
1356
1367
|
.ds-247420 .app-main > .ds-file-stage,
|
|
1357
1368
|
.ds-247420 .app-main > .ds-files-stack,
|
|
1358
1369
|
.ds-247420 .app-main > .grow { flex: 1 1 auto; min-height: 0; }
|
|
1359
|
-
|
|
1370
|
+
/* width:100% is load-bearing, not redundant with max-width: .app-body is a
|
|
1371
|
+
CSS grid, and margin:auto on a grid item overrides the default stretch,
|
|
1372
|
+
shrinking the item to its max-content width instead of filling the track
|
|
1373
|
+
and then clamping -- confirmed live at 2560px viewport where mainWidth
|
|
1374
|
+
measured 688px against a correctly-resolved 1400px max-width. Explicit
|
|
1375
|
+
width:100% restores fill-then-cap for every .narrow page, not just wide
|
|
1376
|
+
viewports (the shrink-to-fit bug undersized even the base 760px case). */
|
|
1377
|
+
.ds-247420 .app-main.narrow { width: 100%; max-width: var(--measure-narrow); margin: 0 auto; }
|
|
1360
1378
|
/* A shell with no sidebar has no competing column, so the prose clamp there was
|
|
1361
1379
|
leaving the whole sidebar's worth of width empty -- 760px of content inside a
|
|
1362
1380
|
1413px shell on a real page. Widen the clamp by the space the absent sidebar
|
|
1363
|
-
would have taken so the measure still reads as prose, just not starved.
|
|
1381
|
+
would have taken so the measure still reads as prose, just not starved.
|
|
1382
|
+
The floor stays a fixed 980px (no-side is still readable narrow); the
|
|
1383
|
+
ceiling grows with viewport instead of staying pinned at 980px forever --
|
|
1384
|
+
on a 2560px ultrawide the old fixed value left over half the shell as dead
|
|
1385
|
+
side margin. 1400px ceiling keeps prose measure sane (nobody wants a
|
|
1386
|
+
2400px-wide paragraph) while letting non-prose content (index rows, meta)
|
|
1387
|
+
actually use the extra room. */
|
|
1364
1388
|
.ds-247420 .app-body.no-side .app-main.narrow {
|
|
1365
|
-
max-width: calc(var(--measure-narrow) + var(--sidebar-width));
|
|
1389
|
+
max-width: clamp(calc(var(--measure-narrow) + var(--sidebar-width)), 60vw, 1400px);
|
|
1366
1390
|
}
|
|
1367
1391
|
/* Article-body heading rhythm and lede spacing, consumed by flatspace-rendered
|
|
1368
1392
|
long-form pages (docs, papers) that drop headings/panels directly into .app-main. */
|
|
@@ -1490,6 +1514,9 @@
|
|
|
1490
1514
|
padding: 0 var(--space-4); font-size: var(--fs-body); gap: var(--space-2);
|
|
1491
1515
|
}
|
|
1492
1516
|
|
|
1517
|
+
/* App chrome is compact/dense (see --fs-h1-app etc in colors_and_type.css) --
|
|
1518
|
+
the marketing-scale hover lift/shadow reads as an oversized flourish at
|
|
1519
|
+
this density, so app-typescale buttons opt out of it deliberately. */
|
|
1493
1520
|
.ds-247420[data-typescale="app"] .btn:hover,
|
|
1494
1521
|
.ds-247420[data-typescale="app"] .btn-primary:hover,
|
|
1495
1522
|
.ds-247420[data-typescale="app"] .btn-ghost:hover { transform: none; box-shadow: none; }
|
|
@@ -1503,7 +1530,7 @@
|
|
|
1503
1530
|
.ds-247420 .ds-icon-btn {
|
|
1504
1531
|
display: inline-flex; align-items: center; justify-content: center;
|
|
1505
1532
|
padding: 0; border: none; cursor: pointer;
|
|
1506
|
-
border-radius: var(--r-1,
|
|
1533
|
+
border-radius: var(--r-1, 8px);
|
|
1507
1534
|
background: transparent; color: var(--fg);
|
|
1508
1535
|
width: 32px; height: 32px;
|
|
1509
1536
|
transition: background var(--dur-snap) var(--ease), color var(--dur-snap) var(--ease);
|
|
@@ -1535,7 +1562,7 @@
|
|
|
1535
1562
|
border-radius: var(--r-pill);
|
|
1536
1563
|
background: var(--bg-3); color: var(--fg-2);
|
|
1537
1564
|
}
|
|
1538
|
-
.ds-247420 .ds-badge.ds-badge--sm { min-width:
|
|
1565
|
+
.ds-247420 .ds-badge.ds-badge--sm { min-width: var(--icon-xs); height: var(--icon-xs); padding: 0 var(--space-1); font-size: var(--fs-pico); }
|
|
1539
1566
|
.ds-247420 .ds-badge.ds-badge--lg { min-width: 22px; height: 22px; padding: 0 var(--space-2); font-size: var(--fs-tiny); }
|
|
1540
1567
|
.ds-247420 .ds-badge.tone-green, .ds-247420 .ds-badge.tone-live, .ds-247420 .ds-badge.tone-success {
|
|
1541
1568
|
background: var(--green-tint); color: var(--green-deep);
|
|
@@ -1552,7 +1579,7 @@
|
|
|
1552
1579
|
background: var(--sun); color: var(--ink);
|
|
1553
1580
|
}
|
|
1554
1581
|
.ds-247420 .ds-badge.tone-blue { background: var(--accent-tint); color: var(--accent-ink); }
|
|
1555
|
-
.ds-247420 .ds-badge.tone-orange { background: color-mix(in oklab, var(--flame) 22%, var(--bg)); color:
|
|
1582
|
+
.ds-247420 .ds-badge.tone-orange { background: color-mix(in oklab, var(--flame) 22%, var(--bg)); color: var(--flame); }
|
|
1556
1583
|
|
|
1557
1584
|
.ds-247420 .chip {
|
|
1558
1585
|
display: inline-flex; align-items: center; gap: var(--space-1-75);
|
|
@@ -1603,10 +1630,10 @@
|
|
|
1603
1630
|
cursor: pointer;
|
|
1604
1631
|
}
|
|
1605
1632
|
.ds-247420 .ds-chip-remove-btn:hover, .ds-247420 .ds-chip-remove-btn:focus-visible { opacity: 1; background: color-mix(in oklab, currentColor 16%, transparent); }
|
|
1606
|
-
.ds-247420 .ds-chip-remove-btn svg { width:
|
|
1633
|
+
.ds-247420 .ds-chip-remove-btn svg { width: var(--icon-xs); height: var(--icon-xs); }
|
|
1607
1634
|
@media (pointer: coarse) {
|
|
1608
1635
|
.ds-247420 .ds-chip-remove-btn { width: 24px; height: 24px; margin-left: 0; }
|
|
1609
|
-
.ds-247420 .ds-chip-remove-btn svg { width:
|
|
1636
|
+
.ds-247420 .ds-chip-remove-btn svg { width: var(--icon-xs); height: var(--icon-xs); }
|
|
1610
1637
|
}
|
|
1611
1638
|
|
|
1612
1639
|
.ds-247420 .ds-pill {
|
|
@@ -1631,9 +1658,25 @@
|
|
|
1631
1658
|
opacity: 0.8;
|
|
1632
1659
|
}
|
|
1633
1660
|
.ds-247420 .glyph { --glyph-size-sm: var(--fs-nano); --glyph-size-base: var(--fs-tiny); --glyph-size-lg: var(--fs-body); }
|
|
1634
|
-
.ds-247420 .glyph-sm { width:
|
|
1661
|
+
.ds-247420 .glyph-sm { width: var(--icon-xs); height: var(--icon-xs); }
|
|
1635
1662
|
.ds-247420 .glyph-lg { width: 22px; height: 22px; }
|
|
1636
1663
|
|
|
1664
|
+
/* Shared empty-state base -- hero-content.css's .empty and community.css's
|
|
1665
|
+
.fd-empty previously duplicated this full rule set; both are joined into
|
|
1666
|
+
this selector list so the shared declarations live in one place, with
|
|
1667
|
+
each keeping its own file-local rule for context-specific extras
|
|
1668
|
+
(background/radius/font-size for .empty; padding for .fd-empty). New
|
|
1669
|
+
consumers can add .ds-empty-state directly instead of a fresh copy. */
|
|
1670
|
+
.ds-247420 .ds-empty-state, .ds-247420 .empty, .ds-247420 .fd-empty {
|
|
1671
|
+
display: flex; flex-direction: column; align-items: center; justify-content: center;
|
|
1672
|
+
gap: var(--space-2);
|
|
1673
|
+
padding: var(--space-6) var(--space-3);
|
|
1674
|
+
text-align: center;
|
|
1675
|
+
color: var(--fg-3);
|
|
1676
|
+
}
|
|
1677
|
+
.ds-247420 .ds-empty-state--panel { background: var(--bg-2); border-radius: var(--r-1); }
|
|
1678
|
+
.ds-247420 .ds-empty-state--compact { padding: var(--space-5) var(--space-3); }
|
|
1679
|
+
|
|
1637
1680
|
/* ============================================================
|
|
1638
1681
|
Panel — soft tonal container, no border decoration
|
|
1639
1682
|
============================================================ */
|
|
@@ -2421,13 +2464,12 @@
|
|
|
2421
2464
|
/* ============================================================
|
|
2422
2465
|
Empty state
|
|
2423
2466
|
============================================================ */
|
|
2467
|
+
/* Shares its base declarations with .ds-empty-state (primitives.css) via the
|
|
2468
|
+
combined selector there -- .empty only adds its own font-size/background/
|
|
2469
|
+
radius modifiers on top. Was --space-8 (96px) padding; --space-6 (48px)
|
|
2470
|
+
still centres a message with air without the empty state dominating the
|
|
2471
|
+
fold. */
|
|
2424
2472
|
.ds-247420 .empty {
|
|
2425
|
-
/* Was --space-8 (96px) — an empty list spent 192px of vertical space on
|
|
2426
|
-
nothing. --space-6 (48px) still centres a message with air, without the
|
|
2427
|
-
empty state dominating the fold. Mobile drops it further (below). */
|
|
2428
|
-
padding: var(--space-6);
|
|
2429
|
-
text-align: center;
|
|
2430
|
-
color: var(--fg-3);
|
|
2431
2473
|
background: var(--bg-2);
|
|
2432
2474
|
border-radius: var(--r-1);
|
|
2433
2475
|
font-size: var(--fs-sm);
|
|
@@ -2478,9 +2520,9 @@
|
|
|
2478
2520
|
of this value, worth aligning to 768px when touched.
|
|
2479
2521
|
- Tablet/desktop boundary: 900px (max-width) / 901px (min-width) — used for
|
|
2480
2522
|
main layout reflow (hero-content.css, responsive2-workspace.css)
|
|
2481
|
-
-
|
|
2482
|
-
used in this file (responsive.css) for a specific tablet treatment
|
|
2483
|
-
|
|
2523
|
+
- Tablet landscape band: 768px–1024px (min-width 768px / max-width 1024px) —
|
|
2524
|
+
used in this file (responsive.css) for a specific tablet treatment;
|
|
2525
|
+
aligned to the 768px mobile/tablet boundary above (was 481px, a near-miss).
|
|
2484
2526
|
*/
|
|
2485
2527
|
|
|
2486
2528
|
/* --------------------------------------------------------------------
|
|
@@ -2660,7 +2702,7 @@
|
|
|
2660
2702
|
/* --------------------------------------------------------------------
|
|
2661
2703
|
Tablet Landscape Breakpoint (768px to 1024px)
|
|
2662
2704
|
---------------------------------------------------------------------- */
|
|
2663
|
-
@media (min-width:
|
|
2705
|
+
@media (min-width: 768px) and (max-width: 1024px) {
|
|
2664
2706
|
/* App Layout — side handled by 900px drawer block; restore for 901-1024 */
|
|
2665
2707
|
.ds-247420 .app-side a {
|
|
2666
2708
|
padding: var(--space-2-75) var(--space-2-75); gap: var(--space-2);
|
|
@@ -3248,7 +3290,7 @@
|
|
|
3248
3290
|
padding: var(--space-4) var(--space-3); text-align: center;
|
|
3249
3291
|
}
|
|
3250
3292
|
/* Icon size, not type — see .ds-file-cell-media .ds-file-icon above. */
|
|
3251
|
-
.ds-247420 .ds-dropzone-glyph { font-size:
|
|
3293
|
+
.ds-247420 .ds-dropzone-glyph { font-size: var(--icon-lg, 24px); color: var(--fg-3); }
|
|
3252
3294
|
.ds-247420 .ds-dropzone-label { font-size: var(--fs-sm); color: var(--fg-3); }
|
|
3253
3295
|
.ds-247420 .ds-dropzone.dragover {
|
|
3254
3296
|
border-color: var(--accent);
|
|
@@ -4111,7 +4153,7 @@
|
|
|
4111
4153
|
|
|
4112
4154
|
.ds-247420 .chat-typing { display: inline-flex; gap: var(--space-1); align-items: center; }
|
|
4113
4155
|
.ds-247420 .chat-typing span {
|
|
4114
|
-
width:
|
|
4156
|
+
width: 8px; height: 8px; border-radius: 50%; background: var(--fg-3);
|
|
4115
4157
|
}
|
|
4116
4158
|
|
|
4117
4159
|
@media (prefers-reduced-motion: no-preference) {
|
|
@@ -5242,13 +5284,13 @@
|
|
|
5242
5284
|
.ds-247420 .ds-spinner-lg { height: 24px; gap: var(--space-1-75); }
|
|
5243
5285
|
.ds-247420 .ds-spinner-lg span { width: var(--space-1-75); height: var(--space-1-75); }
|
|
5244
5286
|
|
|
5245
|
-
.ds-247420 .ds-spinner-sm { height:
|
|
5287
|
+
.ds-247420 .ds-spinner-sm { height: var(--space-2-5); gap: var(--space-hair); }
|
|
5246
5288
|
.ds-247420 .ds-spinner-sm span { width: var(--space-hair); height: var(--space-hair); }
|
|
5247
5289
|
|
|
5248
|
-
.ds-247420 .ds-spinner-xs { height:
|
|
5290
|
+
.ds-247420 .ds-spinner-xs { height: var(--space-2); gap: 1px; }
|
|
5249
5291
|
.ds-247420 .ds-spinner-xs span { width: 1.5px; height: 1.5px; }
|
|
5250
5292
|
|
|
5251
|
-
.ds-247420 .ds-spinner-xl { height:
|
|
5293
|
+
.ds-247420 .ds-spinner-xl { height: var(--space-5); gap: var(--space-2); }
|
|
5252
5294
|
.ds-247420 .ds-spinner-xl span { width: var(--space-2); height: var(--space-2); }
|
|
5253
5295
|
|
|
5254
5296
|
@keyframes ds-bounce {
|
|
@@ -5256,6 +5298,11 @@
|
|
|
5256
5298
|
40% { transform: translateY(-8px); }
|
|
5257
5299
|
}
|
|
5258
5300
|
|
|
5301
|
+
/* Two spinner visual languages coexist intentionally: dots (.ds-spinner*)
|
|
5302
|
+
are for small inline/compact loading states (buttons, chips, list rows),
|
|
5303
|
+
the ring (.loading::after in states-interactions.css) is for larger
|
|
5304
|
+
blocking/full-region loading states (panels, full views). */
|
|
5305
|
+
|
|
5259
5306
|
/* ============================================================
|
|
5260
5307
|
Skeleton — animated loading placeholder
|
|
5261
5308
|
============================================================ */
|
|
@@ -5299,7 +5346,7 @@
|
|
|
5299
5346
|
flex-shrink: 0;
|
|
5300
5347
|
color: var(--alert-tone);
|
|
5301
5348
|
font-weight: 600;
|
|
5302
|
-
min-width: var(--
|
|
5349
|
+
min-width: var(--icon-md);
|
|
5303
5350
|
text-align: center;
|
|
5304
5351
|
}
|
|
5305
5352
|
|
|
@@ -5330,7 +5377,7 @@
|
|
|
5330
5377
|
padding: 0;
|
|
5331
5378
|
font-size: var(--fs-xs);
|
|
5332
5379
|
line-height: 1;
|
|
5333
|
-
min-width: var(--
|
|
5380
|
+
min-width: var(--icon-md);
|
|
5334
5381
|
text-align: center;
|
|
5335
5382
|
transition: color var(--dur-snap) var(--ease);
|
|
5336
5383
|
}
|
|
@@ -5665,8 +5712,14 @@
|
|
|
5665
5712
|
because the chat thread carries its own --measure gutter. */
|
|
5666
5713
|
.ds-247420 .ws-main { flex: 1; min-height: 0; overflow: auto; display: flex; flex-direction: column; padding: var(--space-4) var(--space-5); }
|
|
5667
5714
|
.ds-247420 .ws-main.ws-main--flush { padding: 0; }
|
|
5668
|
-
/*
|
|
5715
|
+
/* Skip-link target (workspace-shell.js's "#ws-main" skip-link, tabindex="-1")
|
|
5716
|
+
— it does receive real keyboard-driven focus when the skip link is
|
|
5717
|
+
activated, so it needs a visible ring rather than a bare outline:none. */
|
|
5669
5718
|
.ds-247420 .ws-main:focus { outline: none; }
|
|
5719
|
+
.ds-247420 .ws-main:focus-visible {
|
|
5720
|
+
outline: var(--focus-w) solid var(--focus-color);
|
|
5721
|
+
outline-offset: calc(-1 * var(--focus-offset));
|
|
5722
|
+
}
|
|
5670
5723
|
|
|
5671
5724
|
/* Right context pane */
|
|
5672
5725
|
.ds-247420 .ws-pane {
|
|
@@ -5865,7 +5918,7 @@
|
|
|
5865
5918
|
}
|
|
5866
5919
|
|
|
5867
5920
|
/* Disabled file actions (read-only row / in-flight mutation) stay visible but inert. */
|
|
5868
|
-
.ds-247420 .ds-file-act:disabled { opacity: .
|
|
5921
|
+
.ds-247420 .ds-file-act:disabled { opacity: .5; cursor: default; }
|
|
5869
5922
|
.ds-247420 .ds-file-act:disabled:hover { background: transparent; color: var(--fg-3); }
|
|
5870
5923
|
.ds-247420 .ds-file-act:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: var(--focus-offset); }
|
|
5871
5924
|
|
|
@@ -5949,10 +6002,6 @@
|
|
|
5949
6002
|
|
|
5950
6003
|
/* PhaseWalk */
|
|
5951
6004
|
.ds-247420 .ds-phasewalk { display: inline-flex; gap: var(--space-hair); vertical-align: middle; }
|
|
5952
|
-
/* NOTE: a second toggle-switch-shaped implementation exists in
|
|
5953
|
-
plugins-config.css:91 (.ds-plugins-toggle) at a different scale (40x22 vs
|
|
5954
|
-
this 18x10) — consider consolidating into a shared .ds-switch primitive
|
|
5955
|
-
with a size modifier. */
|
|
5956
6005
|
.ds-247420 .ds-phasewalk-seg {
|
|
5957
6006
|
width: 18px; height: 10px; border-radius: var(--r-hair);
|
|
5958
6007
|
background: var(--bg-3); position: relative;
|
|
@@ -7361,15 +7410,16 @@
|
|
|
7361
7410
|
}
|
|
7362
7411
|
.ds-247420 .ds-plugins-version { font-size: var(--fs-micro); color: var(--fg-3); }
|
|
7363
7412
|
|
|
7364
|
-
/*
|
|
7365
|
-
(.
|
|
7366
|
-
|
|
7413
|
+
/* Same track/knob proportions as the shared .ds-toggle primitive
|
|
7414
|
+
(states-interactions.css) -- kept as its own class since ds-plugins-toggle
|
|
7415
|
+
is a plain <button>+.on instead of .ds-toggle's [aria-checked] contract,
|
|
7416
|
+
but sized and colored to match it exactly rather than drifting. */
|
|
7367
7417
|
.ds-247420 .ds-plugins-toggle {
|
|
7368
|
-
flex: 0 0 auto; width: 40px; height: 22px; border-radius:
|
|
7418
|
+
flex: 0 0 auto; width: 40px; height: 22px; border-radius: var(--r-pill, 999px); border: none; padding: 0;
|
|
7369
7419
|
background: var(--rule); position: relative; cursor: pointer;
|
|
7370
7420
|
transition: background var(--dur-snap) var(--ease);
|
|
7371
7421
|
}
|
|
7372
|
-
.ds-247420 .ds-plugins-toggle.on { background: var(--accent); }
|
|
7422
|
+
.ds-247420 .ds-plugins-toggle.on { background: var(--accent-ink); }
|
|
7373
7423
|
.ds-247420 .ds-plugins-toggle[disabled] { cursor: wait; opacity: 0.65; }
|
|
7374
7424
|
.ds-247420 .ds-plugins-toggle-knob {
|
|
7375
7425
|
position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; border-radius: 50%;
|
|
@@ -8043,11 +8093,11 @@
|
|
|
8043
8093
|
min-width: 18px;
|
|
8044
8094
|
height: 18px;
|
|
8045
8095
|
padding: 0 var(--space-1-5);
|
|
8046
|
-
/*
|
|
8047
|
-
|
|
8048
|
-
|
|
8096
|
+
/* --ink, not --paper: --paper is a fixed near-white, which measures ~3:1 on
|
|
8097
|
+
--warn (#FF5A52) -- below the 4.5:1 AA floor. --ink clears it (same fix
|
|
8098
|
+
as .btn-primary.danger in app-shell/files.css). */
|
|
8049
8099
|
background: var(--warn);
|
|
8050
|
-
color: var(--
|
|
8100
|
+
color: var(--ink);
|
|
8051
8101
|
font-family: var(--ff-mono);
|
|
8052
8102
|
font-size: var(--fs-micro);
|
|
8053
8103
|
font-weight: 700;
|
|
@@ -8378,11 +8428,11 @@
|
|
|
8378
8428
|
min-width: 16px;
|
|
8379
8429
|
height: 16px;
|
|
8380
8430
|
padding: 0 var(--space-1-5);
|
|
8381
|
-
/*
|
|
8382
|
-
|
|
8383
|
-
|
|
8431
|
+
/* --ink, not --paper: --paper is a fixed near-white, which measures ~3:1 on
|
|
8432
|
+
--warn (#FF5A52) -- below the 4.5:1 AA floor. --ink clears it (same fix
|
|
8433
|
+
as .btn-primary.danger in app-shell/files.css). */
|
|
8384
8434
|
background: var(--warn);
|
|
8385
|
-
color: var(--
|
|
8435
|
+
color: var(--ink);
|
|
8386
8436
|
font-family: var(--ff-mono);
|
|
8387
8437
|
font-size: var(--fs-micro);
|
|
8388
8438
|
font-weight: 700;
|
|
@@ -9599,13 +9649,15 @@
|
|
|
9599
9649
|
.ds-247420 .fd-page-inner { display: flex; flex-direction: column; gap: var(--space-3, 16px); padding: var(--space-3, 16px); max-width: 1100px; }
|
|
9600
9650
|
.ds-247420 .fd-page-inner > * { min-width: 0; }
|
|
9601
9651
|
.ds-247420 .fd-loading { display: flex; align-items: center; gap: var(--space-2, 10px); padding: var(--space-4, 24px); color: var(--fg-2, var(--fg)); }
|
|
9602
|
-
|
|
9652
|
+
/* Base layout shared with .ds-empty-state (primitives.css); overrides padding
|
|
9653
|
+
(--space-5, denser than the shared --space-6) and color for this context. */
|
|
9654
|
+
.ds-247420 .fd-empty { padding: var(--space-5, 32px) var(--space-3, 16px); color: var(--fg-2, var(--fg)); }
|
|
9603
9655
|
/* 28px is an ICON size (empty-state mark), not a type tier — the --fs-* ladder
|
|
9604
9656
|
tops out at --fs-xl (21px) before every remaining rung becomes a fluid
|
|
9605
9657
|
heading clamp, so neither substitutes without visibly resizing the mark.
|
|
9606
9658
|
--fs-2xl bridges that gap as a fixed 28px token. */
|
|
9607
9659
|
.ds-247420 .fd-empty-glyph { font-size: var(--fs-2xl); opacity: .55; line-height: 1; }
|
|
9608
|
-
.ds-247420 .fd-pre { margin: 0; padding: var(--space-2, 10px); background: var(--bg-3, var(--panel-bg-2)); border: var(--bw-hair, 1px) solid var(--rule, var(--panel-accent)); border-radius: var(--r-1,
|
|
9660
|
+
.ds-247420 .fd-pre { margin: 0; padding: var(--space-2, 10px); background: var(--bg-3, var(--panel-bg-2)); border: var(--bw-hair, 1px) solid var(--rule, var(--panel-accent)); border-radius: var(--r-1, 8px); overflow: auto; max-height: 460px; white-space: pre-wrap; overflow-wrap: anywhere; word-break: break-word; font-family: var(--font-mono, ui-monospace, monospace); font-size: var(--fs-micro); line-height: 1.5; }
|
|
9609
9661
|
.ds-247420 .fd-skill-body { max-height: 320px; }
|
|
9610
9662
|
.ds-247420 .fd-row-actions { display: inline-flex; gap: var(--space-1, 6px); align-items: center; }
|
|
9611
9663
|
.ds-247420 .fd-chat { display: flex; flex-direction: column; gap: var(--space-2, 10px); height: 100%; min-height: 0; }
|
|
@@ -9868,7 +9920,7 @@
|
|
|
9868
9920
|
.ds-247420 .chat-msg-action {
|
|
9869
9921
|
display: inline-flex; align-items: center; justify-content: center; gap: var(--space-1);
|
|
9870
9922
|
min-width: 26px; height: 26px; padding: 0 var(--space-1-75); cursor: pointer;
|
|
9871
|
-
border: none; border-radius: var(--r-1,
|
|
9923
|
+
border: none; border-radius: var(--r-1, 8px); background: none; color: var(--fg-3);
|
|
9872
9924
|
font-family: var(--ff-body); font-size: var(--fs-tiny);
|
|
9873
9925
|
}
|
|
9874
9926
|
.ds-247420 .chat-msg-action-label { font-size: var(--fs-tiny); }
|
|
@@ -9936,7 +9988,7 @@
|
|
|
9936
9988
|
display: flex; align-items: center; gap: var(--space-2, 8px);
|
|
9937
9989
|
padding: var(--space-1, 4px) var(--space-2, 8px);
|
|
9938
9990
|
border: var(--bw-hair) solid var(--rule);
|
|
9939
|
-
border-radius: var(--r-1,
|
|
9991
|
+
border-radius: var(--r-1, 8px);
|
|
9940
9992
|
background: var(--bg-2);
|
|
9941
9993
|
}
|
|
9942
9994
|
.ds-247420 .agentchat-install-agent { flex: 0 0 auto; font-size: var(--fs-tiny); color: var(--fg-3); min-width: 8ch; }
|
|
@@ -9946,7 +9998,7 @@
|
|
|
9946
9998
|
}
|
|
9947
9999
|
.ds-247420 .agentchat-install-copy {
|
|
9948
10000
|
flex: 0 0 auto; cursor: pointer; padding: var(--space-hair) var(--space-2); min-height: 24px;
|
|
9949
|
-
border: var(--bw-hair) solid var(--bg-3); border-radius: var(--r-1,
|
|
10001
|
+
border: var(--bw-hair) solid var(--bg-3); border-radius: var(--r-1, 8px);
|
|
9950
10002
|
background: none; color: var(--fg-3);
|
|
9951
10003
|
font-family: var(--ff-body); font-size: var(--fs-tiny);
|
|
9952
10004
|
}
|
|
@@ -9957,7 +10009,7 @@
|
|
|
9957
10009
|
/* Host-supplied transcript export actions riding the controls row. */
|
|
9958
10010
|
.ds-247420 .agentchat-export-act {
|
|
9959
10011
|
cursor: pointer; padding: var(--space-1) var(--space-2-5); min-height: 32px;
|
|
9960
|
-
border: var(--bw-hair) solid var(--bg-3); border-radius: var(--r-1,
|
|
10012
|
+
border: var(--bw-hair) solid var(--bg-3); border-radius: var(--r-1, 8px);
|
|
9961
10013
|
background: none; color: var(--fg-3);
|
|
9962
10014
|
font-family: var(--ff-body); font-size: var(--fs-tiny);
|
|
9963
10015
|
}
|
|
@@ -10190,7 +10242,7 @@
|
|
|
10190
10242
|
background: var(--bg); border: var(--border-w) solid var(--accent); border-radius: var(--r-1);
|
|
10191
10243
|
padding: var(--space-1) var(--space-2);
|
|
10192
10244
|
}
|
|
10193
|
-
.ds-247420 .ds-session-rename-input:focus { outline: none; box-shadow: var(--focus-ring-inset); }
|
|
10245
|
+
.ds-247420 .ds-session-rename-input:focus-visible { outline: none; box-shadow: var(--focus-ring-inset); }
|
|
10194
10246
|
|
|
10195
10247
|
/* Inline delete confirm — same row height, two flat buttons, no modal;
|
|
10196
10248
|
mirrors SessionDashboard's arm-then-confirm bulk-stop control. */
|
|
@@ -10232,7 +10284,7 @@
|
|
|
10232
10284
|
.ds-247420 .ds-dash-header .btn-primary.danger.is-armed { background: var(--warn); color: var(--ink); border-color: var(--warn); }
|
|
10233
10285
|
.ds-247420 .ds-dash-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: var(--space-2); padding: var(--space-3); }
|
|
10234
10286
|
@media (min-width: 1500px) { .ds-247420 .ds-dash-grid { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); } }
|
|
10235
|
-
.ds-247420 .ds-dash-card { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-3); background: var(--bg-2); border: var(--bw-hair) solid var(--bg-3); border-radius: var(--r-
|
|
10287
|
+
.ds-247420 .ds-dash-card { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-3); background: var(--bg-2); border: var(--bw-hair) solid var(--bg-3); border-radius: var(--r-1); }
|
|
10236
10288
|
|
|
10237
10289
|
/* Compact density — one line per session. The comfortable card stacks title +
|
|
10238
10290
|
head + meta + actions as four flex rows and measured 208px tall on a real
|
|
@@ -10400,7 +10452,7 @@
|
|
|
10400
10452
|
position: absolute; top: 6px; right: 6px;
|
|
10401
10453
|
display: inline-flex; align-items: center; justify-content: center;
|
|
10402
10454
|
min-width: 48px; min-height: 24px; padding: var(--space-hair) var(--space-2);
|
|
10403
|
-
border: var(--bw-hair) solid var(--bg-3); border-radius: var(--r-1,
|
|
10455
|
+
border: var(--bw-hair) solid var(--bg-3); border-radius: var(--r-1, 8px);
|
|
10404
10456
|
background: var(--bg-2); color: var(--fg-2); cursor: pointer;
|
|
10405
10457
|
font-family: var(--ff-body); font-size: var(--fs-tiny);
|
|
10406
10458
|
opacity: 0; transition: opacity var(--dur-snap, .12s) var(--ease, ease);
|
|
@@ -13266,7 +13318,7 @@
|
|
|
13266
13318
|
.ds-247420 .health-summary { display: flex; flex-wrap: wrap; gap: .4em; margin: .6em 0; }
|
|
13267
13319
|
.ds-247420 .health-chip {
|
|
13268
13320
|
font-family: var(--ff-mono, ui-monospace, monospace);
|
|
13269
|
-
font-size: .8rem; padding: .15em .55em; border-radius: var(--r-1,
|
|
13321
|
+
font-size: .8rem; padding: .15em .55em; border-radius: var(--r-1, 8px);
|
|
13270
13322
|
background: color-mix(in srgb, var(--fg) 8%, transparent);
|
|
13271
13323
|
color: var(--fg-2);
|
|
13272
13324
|
border: var(--bw-hair, 1px) solid color-mix(in srgb, var(--fg) 12%, transparent);
|
|
@@ -13284,7 +13336,7 @@
|
|
|
13284
13336
|
.ds-247420 .ds-status-chip {
|
|
13285
13337
|
display: inline-flex; align-items: center; gap: .35em;
|
|
13286
13338
|
font-family: var(--ff-mono, ui-monospace, monospace);
|
|
13287
|
-
font-size: .8rem; padding: .15em .55em; border-radius: var(--r-1,
|
|
13339
|
+
font-size: .8rem; padding: .15em .55em; border-radius: var(--r-1, 8px);
|
|
13288
13340
|
background: color-mix(in srgb, var(--fg) 8%, transparent);
|
|
13289
13341
|
color: var(--fg-2);
|
|
13290
13342
|
border: var(--bw-hair, 1px) solid color-mix(in srgb, var(--fg) 12%, transparent);
|
|
@@ -13312,7 +13364,7 @@
|
|
|
13312
13364
|
}
|
|
13313
13365
|
.ds-247420 .cwd-bar-btn {
|
|
13314
13366
|
cursor: pointer; font: inherit; line-height: 1.3;
|
|
13315
|
-
padding: .15em .55em; border-radius: var(--r-1,
|
|
13367
|
+
padding: .15em .55em; border-radius: var(--r-1, 8px);
|
|
13316
13368
|
background: color-mix(in srgb, var(--fg) 8%, transparent);
|
|
13317
13369
|
border: var(--bw-hair, 1px) solid color-mix(in srgb, var(--fg) 14%, transparent);
|
|
13318
13370
|
color: var(--fg-2);
|
|
@@ -13400,7 +13452,7 @@
|
|
|
13400
13452
|
/* Re-assert the paper-tuned signal tokens so token-derived foregrounds
|
|
13401
13453
|
(status discs, error text, tool cards) print with light-theme colours
|
|
13402
13454
|
rather than the dark-theme-derived values inherited under auto-dark. */
|
|
13403
|
-
.ds-247420 { --flame:#C53E00; --amber:#7C570F; --warn:#
|
|
13455
|
+
.ds-247420 { --flame:#C53E00; --amber:#7C570F; --warn:#C41C0C; --sky:#3A6EFF; --bg:var(--paper); --fg:var(--ink); }
|
|
13404
13456
|
.ds-247420 #app { min-height: auto; display: block; height: auto; }
|
|
13405
13457
|
.ds-247420 .skip-link, .ds-247420 .status-dot, .ds-247420 .history-actions, .ds-247420 .chat-composer { display: none !important; }
|
|
13406
13458
|
.ds-247420 .app, .ds-247420 .app-main, .ds-247420 .panel, .ds-247420 .chat, .ds-247420 .chat-thread {
|
|
@@ -13858,8 +13910,8 @@
|
|
|
13858
13910
|
width: min(360px, 88vw);
|
|
13859
13911
|
display: flex;
|
|
13860
13912
|
flex-direction: column;
|
|
13861
|
-
gap:
|
|
13862
|
-
padding:
|
|
13913
|
+
gap: var(--space-2-75);
|
|
13914
|
+
padding: var(--space-4);
|
|
13863
13915
|
background: var(--bg-2);
|
|
13864
13916
|
border: 1px solid var(--bw-rule, var(--rule));
|
|
13865
13917
|
border-radius: var(--r-2, 10px);
|
|
@@ -13888,7 +13940,7 @@
|
|
|
13888
13940
|
font-family: var(--ff-mono);
|
|
13889
13941
|
font-size: var(--fs-body);
|
|
13890
13942
|
padding: 10px 14px;
|
|
13891
|
-
border-radius: var(--r-1,
|
|
13943
|
+
border-radius: var(--r-1, 8px);
|
|
13892
13944
|
cursor: pointer;
|
|
13893
13945
|
}
|
|
13894
13946
|
.ds-247420 .sp-lobby-btn:hover { background: var(--bg-2); }
|
|
@@ -13920,7 +13972,7 @@
|
|
|
13920
13972
|
color: var(--accent);
|
|
13921
13973
|
padding: 8px;
|
|
13922
13974
|
background: var(--bg);
|
|
13923
|
-
border-radius: var(--r-1,
|
|
13975
|
+
border-radius: var(--r-1, 8px);
|
|
13924
13976
|
}
|
|
13925
13977
|
.ds-247420 .sp-lobby-err { min-height: 16px; color: var(--danger); font-size: var(--fs-small, 11px); }
|
|
13926
13978
|
.ds-247420 .sp-lobby-close {
|