@crewlethq/ui 0.36.0 → 0.37.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 +41 -1
- package/dist/AgentHandoffPanel/index.js +4 -4
- package/dist/AppShell/index.d.ts +1 -0
- package/dist/AppShell/index.js +5 -3
- package/dist/{AppShell-JTSEOA57.css → AppShell-JBCZSSX3.css} +14 -2
- package/dist/ArrangeList/index.js +4 -4
- package/dist/ArtifactAccess/ArtifactAccess.d.ts +40 -0
- package/dist/ArtifactAccess/index.d.ts +3 -0
- package/dist/ArtifactAccess/index.js +2 -0
- package/dist/ArtifactAccess-Y53ZTRFS.css +31 -0
- package/dist/ArtifactBar/index.js +9 -7
- package/dist/ArtifactCard/ArtifactCard.d.ts +1 -6
- package/dist/ArtifactCard/index.d.ts +2 -1
- package/dist/ArtifactCard/index.js +3 -2
- package/dist/ArtifactCover/index.js +3 -3
- package/dist/ArtifactKindIllustration/ArtifactKindIllustration.d.ts +1 -1
- package/dist/ArtifactKindIllustration/index.js +1 -1
- package/dist/{ArtifactKindIllustration-5KTP43QS.css → ArtifactKindIllustration-KLFL7KBG.css} +1 -1
- package/dist/ArtifactMakeRow/index.d.ts +1 -0
- package/dist/ArtifactMakeRow/index.js +2 -1
- package/dist/{ArtifactMakeRow-RWUTS5MC.css → ArtifactMakeRow-W3RD5YWZ.css} +7 -2
- package/dist/ArtifactNameCell/ArtifactNameCell.d.ts +37 -0
- package/dist/ArtifactNameCell/index.d.ts +4 -0
- package/dist/ArtifactNameCell/index.js +4 -0
- package/dist/ArtifactNameCell-RTVP4LO4.css +104 -0
- package/dist/AvatarPicker/index.js +8 -6
- package/dist/Canvas/index.js +4 -3
- package/dist/CanvasBoard/index.js +7 -6
- package/dist/CanvasToolbar/index.js +6 -5
- package/dist/ChangeMark/index.js +4 -3
- package/dist/Checkbox/index.js +3 -3
- package/dist/ChoiceList/index.d.ts +1 -0
- package/dist/ChoiceList/index.js +2 -1
- package/dist/{ChoiceList-EA2W6MOS.css → ChoiceList-KFYFAECP.css} +26 -4
- package/dist/Combobox/index.d.ts +1 -0
- package/dist/Combobox/index.js +6 -5
- package/dist/{Combobox-4FUVYIE7.css → Combobox-YDONYDTM.css} +2 -1
- package/dist/CommandPalette/index.d.ts +1 -0
- package/dist/CommandPalette/index.js +7 -6
- package/dist/{CommandPalette-7CFGVBND.css → CommandPalette-TOZYLWLE.css} +5 -1
- package/dist/CommentThread/index.js +5 -5
- package/dist/Composer/index.js +3 -3
- package/dist/{Composer-PXITWNEK.css → Composer-TXULCPPV.css} +1 -1
- package/dist/ConfirmField/index.js +3 -3
- package/dist/DataTable/index.js +7 -7
- package/dist/DataView/index.js +12 -12
- package/dist/DatasetSource/index.d.ts +1 -0
- package/dist/DatasetSource/index.js +2 -1
- package/dist/{DatasetSource-SMGX4PS5.css → DatasetSource-FFKTD3ZU.css} +16 -1
- package/dist/DateTimePicker/index.js +4 -4
- package/dist/{DateTimePicker-2IVTKFV2.css → DateTimePicker-3A7JIIVL.css} +3 -3
- package/dist/DocTabsEditor/index.js +5 -5
- package/dist/Document/index.js +2 -2
- package/dist/{Document-YFWTWXJP.css → Document-TZ2NBLOR.css} +2 -2
- package/dist/{Editor-HORWMUM3.js → Editor-QV4JP242.js} +6 -6
- package/dist/FactList/index.js +4 -3
- package/dist/FollowBanner/index.js +3 -2
- package/dist/HitArea/hitArea.d.ts +7 -0
- package/dist/HitArea/index.d.ts +2 -0
- package/dist/HitArea/index.js +2 -0
- package/dist/HitArea-QUOS6ZDJ.css +35 -0
- package/dist/HuePicker/index.js +4 -3
- package/dist/Input/index.js +2 -2
- package/dist/{Input-ABGOFENS.css → Input-OQZBCRX5.css} +9 -4
- package/dist/Layer/index.js +2 -1
- package/dist/LinkInterstitial/index.js +4 -3
- package/dist/ListInput/index.js +4 -4
- package/dist/Listbox/index.js +3 -2
- package/dist/{Listbox-6WJNJQVQ.css → Listbox-NQV6E3FS.css} +3 -0
- package/dist/LivePreview/LivePreview.d.ts +15 -3
- package/dist/LivePreview/index.d.ts +2 -2
- package/dist/LivePreview/index.js +1 -1
- package/dist/{LivePreview-BROGKR4N.css → LivePreview-KQEDMQCY.css} +13 -0
- package/dist/MarkdownEditor/index.js +8 -6
- package/dist/Menu/index.js +3 -2
- package/dist/MergeConflicts/index.js +5 -4
- package/dist/Modal/index.js +3 -2
- package/dist/OrgTable/index.js +4 -3
- package/dist/Popover/index.js +3 -2
- package/dist/PresenterView/index.js +4 -3
- package/dist/PrincipalPicker/index.js +7 -6
- package/dist/RichEditor/index.js +1 -1
- package/dist/SegmentedControl/index.d.ts +1 -0
- package/dist/SegmentedControl/index.js +4 -3
- package/dist/{SegmentedControl-FLI45IOW.css → SegmentedControl-B7XCUOML.css} +9 -2
- package/dist/Select/index.d.ts +1 -0
- package/dist/Select/index.js +5 -4
- package/dist/{Select-W3CHTZXP.css → Select-F526HLNR.css} +5 -4
- package/dist/ShareDialog/index.js +7 -6
- package/dist/SheetColumnEditor/index.js +12 -11
- package/dist/SheetGrid/index.js +7 -6
- package/dist/{SheetGrid-YRDXTIIZ.css → SheetGrid-XK7T7M34.css} +9 -4
- package/dist/Shortcut/index.js +3 -2
- package/dist/SidebarNav/index.d.ts +1 -0
- package/dist/SidebarNav/index.js +2 -1
- package/dist/{SidebarNav-KF66MLOM.css → SidebarNav-7SGUZYKK.css} +21 -2
- package/dist/SlideCompare/index.js +4 -3
- package/dist/SlideFilmstrip/index.js +5 -4
- package/dist/SlideGrid/index.js +4 -3
- package/dist/SlideStage/index.js +3 -2
- package/dist/SourceEditor/index.js +2 -2
- package/dist/{SourceEditor-QAYE2JS6.css → SourceEditor-OKPWPFXK.css} +1 -1
- package/dist/Switcher/index.js +7 -7
- package/dist/Tabs/index.d.ts +1 -0
- package/dist/Tabs/index.js +2 -1
- package/dist/{Tabs-MMZXV5EF.css → Tabs-WIF7457H.css} +20 -3
- package/dist/TagsInput/index.js +4 -4
- package/dist/{TagsInput-7EGBBXHS.css → TagsInput-CLFHP6I2.css} +1 -1
- package/dist/ThemeGallery/index.js +4 -3
- package/dist/ThemeSwitcher/index.js +5 -4
- package/dist/TimeWindowPicker/index.js +8 -7
- package/dist/{TimeWindowPicker-DEFDV77Z.css → TimeWindowPicker-I3HXC74I.css} +3 -3
- package/dist/Toaster/index.js +2 -1
- package/dist/Toolbar/index.js +3 -2
- package/dist/Tooltip/index.js +3 -2
- package/dist/TreeCanvas/index.js +5 -4
- package/dist/TreeGrid/index.js +3 -2
- package/dist/VersionCompare/index.js +5 -4
- package/dist/{chunk-CCAXYHQS.js → chunk-2QZ2VPHR.js} +3 -1
- package/dist/chunk-2YTOOH3A.js +4 -0
- package/dist/{chunk-QWNVSR6G.js → chunk-3KYVFG47.js} +1 -1
- package/dist/{chunk-3PTUDKSR.js → chunk-3SBM4DGI.js} +4 -4
- package/dist/{chunk-H5NOLRGH.js → chunk-3V5T5K5H.js} +1 -1
- package/dist/chunk-4ISUIS6F.js +3 -0
- package/dist/{chunk-PLTCDSTU.js → chunk-4LRAJXHL.js} +1 -1
- package/dist/{chunk-4ZJLOKSS.js → chunk-5BUOMF6N.js} +2 -2
- package/dist/{chunk-47JQAGRV.js → chunk-66X5WDKE.js} +1 -1
- package/dist/{chunk-MRMHZ437.js → chunk-6NNY5WBF.js} +7 -6
- package/dist/{chunk-5RT5O4JR.js → chunk-7CGPPAYR.js} +1 -1
- package/dist/{chunk-F73MC7EZ.js → chunk-7KHM2FZH.js} +2 -2
- package/dist/{chunk-VL6CUNSX.js → chunk-7SDUKCNW.js} +4 -1
- package/dist/{chunk-XMRTFPWX.js → chunk-A23KDROH.js} +3 -3
- package/dist/{chunk-N5SKHIAP.js → chunk-A72JPXIV.js} +8 -6
- package/dist/{chunk-PJIPUEJ3.js → chunk-AXS6MBNH.js} +1 -1
- package/dist/{chunk-2FPENTCF.js → chunk-AYHIF6DH.js} +1 -1
- package/dist/{chunk-J6ON5SYE.js → chunk-B5J23C73.js} +1 -1
- package/dist/{chunk-7VAUGG6B.js → chunk-B5UHX5UC.js} +2 -2
- package/dist/chunk-BGLKLXL3.js +29 -0
- package/dist/{chunk-FHHYXZSP.js → chunk-C7OKDYBH.js} +2 -2
- package/dist/{chunk-JBUMD6DS.js → chunk-CFGGE3HO.js} +1 -1
- package/dist/{chunk-XGBLRDSU.js → chunk-CQFQGAZI.js} +17 -7
- package/dist/{chunk-GMLAKNFY.js → chunk-D2OL3ZSS.js} +1 -1
- package/dist/{chunk-D7GNNID2.js → chunk-D3EJSLCL.js} +2 -2
- package/dist/{chunk-BUVCV3WI.js → chunk-D6FEHY5G.js} +3 -2
- package/dist/{chunk-4BYHAOHH.js → chunk-DAERKOOG.js} +3 -2
- package/dist/{chunk-IQH3DDZ2.js → chunk-DOLATMGF.js} +2 -2
- package/dist/{chunk-W3HYWD63.js → chunk-DZSBFITC.js} +15 -8
- package/dist/{chunk-PPFX6GRK.js → chunk-EAEJ7CDM.js} +6 -3
- package/dist/{chunk-WZGYIVYH.js → chunk-EAQLI2SO.js} +4 -2
- package/dist/{chunk-GYBDPCRC.js → chunk-ECGGQX2H.js} +2 -2
- package/dist/{chunk-FG4O64DV.js → chunk-F3WZ5AKM.js} +5 -5
- package/dist/{chunk-SUXP4OBT.js → chunk-F4LPQA4E.js} +1 -1
- package/dist/{chunk-KYZMN6I6.js → chunk-FBW3Q2OY.js} +2 -2
- package/dist/{chunk-JQLS3MZB.js → chunk-FWBKMPNR.js} +1 -1
- package/dist/{chunk-OOWPSBIS.js → chunk-GMW4ZHST.js} +3 -3
- package/dist/{chunk-R25RGPUB.js → chunk-H5XTJ7GJ.js} +2 -3
- package/dist/{chunk-PGZ2R3ON.js → chunk-HDHZWIFL.js} +8 -6
- package/dist/{chunk-GRYZ5EP3.js → chunk-HMLAWVG6.js} +13 -2
- package/dist/{chunk-6ZJ3N7QI.js → chunk-I33UIUZD.js} +1 -1
- package/dist/{chunk-RH2NCQBZ.js → chunk-ISA2O2BK.js} +2 -2
- package/dist/{chunk-K3IJQNB7.js → chunk-KHJIEPZV.js} +3 -2
- package/dist/{chunk-ES4RKQ7B.js → chunk-MG3HTY6F.js} +7 -7
- package/dist/chunk-MICRGE3J.js +1 -0
- package/dist/{chunk-WNAYQQ6Y.js → chunk-MMPKN7WV.js} +2 -2
- package/dist/{chunk-PGRPNDWM.js → chunk-NR4CPM4T.js} +1 -1
- package/dist/{chunk-5WDXPHEW.js → chunk-NRBAXRWE.js} +1 -1
- package/dist/{chunk-66ADEPFB.js → chunk-NS4NSHVX.js} +5 -3
- package/dist/{chunk-YSGLEHND.js → chunk-NUZHC6MM.js} +14 -2
- package/dist/{chunk-WGD2HX2A.js → chunk-OED6LUWE.js} +1 -1
- package/dist/{chunk-OSZDHN5Z.js → chunk-OHA6WSAG.js} +5 -10
- package/dist/chunk-P5VGSVWG.js +39 -0
- package/dist/{chunk-KJW2AS57.js → chunk-PEUGPAKH.js} +1 -1
- package/dist/{chunk-IPAU6FLH.js → chunk-PPHTIKZO.js} +1 -1
- package/dist/{chunk-P6WFZDKS.js → chunk-PWG3VHRQ.js} +2 -2
- package/dist/{chunk-HOIZ6MIS.js → chunk-RLJXVFEH.js} +1 -1
- package/dist/{chunk-NQGPD6NX.js → chunk-RMEBFYL7.js} +1 -1
- package/dist/{chunk-APDKUGSH.js → chunk-S27UBCVX.js} +5 -4
- package/dist/{chunk-XEGZHHRH.js → chunk-SVGARBDY.js} +1 -1
- package/dist/{chunk-UWGUKMBK.js → chunk-SYBYFQTY.js} +2 -2
- package/dist/{chunk-IUYUS2SO.js → chunk-TYONQSOK.js} +2 -2
- package/dist/{chunk-L4WZSVMT.js → chunk-UB6MLXUL.js} +3 -3
- package/dist/{chunk-MJW6SQYB.js → chunk-UBZDYOCA.js} +1 -1
- package/dist/{chunk-2DV4THNQ.js → chunk-UWRBD2YO.js} +2 -2
- package/dist/{chunk-DEMALFHY.js → chunk-UXYEOWG5.js} +1 -1
- package/dist/{chunk-UCCC7YVZ.js → chunk-W7PAIVAP.js} +4 -2
- package/dist/{chunk-T5RQGI6O.js → chunk-X3UYTAOG.js} +1 -1
- package/dist/{chunk-VKKUGZ3G.js → chunk-XQZ6EWOE.js} +8 -5
- package/dist/{chunk-TVRBQMIX.js → chunk-YPMGP2X4.js} +6 -6
- package/dist/{chunk-EOQFPZEE.js → chunk-YSG3DW7W.js} +1 -1
- package/dist/{chunk-2QEDJSJC.js → chunk-ZMDYQ2HH.js} +1 -1
- package/dist/{chunk-27GD7LVR.js → chunk-ZMWXE4GT.js} +1 -1
- package/dist/generated/index.d.ts +3 -0
- package/dist/generated/index.js +109 -105
- package/dist/index.js +109 -105
- package/dist/styles.css +371 -63
- package/dist/utils/focusModality.d.ts +17 -1
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.js +1 -1
- package/package.json +3 -3
- package/dist/chunk-WKEPORNM.js +0 -2
- /package/dist/{chunk-5BP6IS3N.js → chunk-4QQ3MND5.js} +0 -0
package/dist/styles.css
CHANGED
|
@@ -702,7 +702,7 @@
|
|
|
702
702
|
}
|
|
703
703
|
|
|
704
704
|
|
|
705
|
-
/* AppShell-
|
|
705
|
+
/* AppShell-JBCZSSX3.css */
|
|
706
706
|
/*
|
|
707
707
|
* The application frame: a rail on the FRAME, and the screen on a SHEET that
|
|
708
708
|
* floats beside it.
|
|
@@ -851,10 +851,11 @@
|
|
|
851
851
|
/* The same gutter the nav takes, so what the foot says lines up with the rows
|
|
852
852
|
above it rather than sitting further out. */
|
|
853
853
|
.crewlet-app-shell__rail-foot {
|
|
854
|
+
--crewlet-rail-foot-gap: var(--spacing-1);
|
|
854
855
|
flex: none;
|
|
855
856
|
display: flex;
|
|
856
857
|
flex-direction: column;
|
|
857
|
-
gap: var(--
|
|
858
|
+
gap: var(--crewlet-rail-foot-gap);
|
|
858
859
|
padding: var(--spacing-2) var(--size-nav-gutter);
|
|
859
860
|
border-top: 1px solid var(--color-border-default);
|
|
860
861
|
}
|
|
@@ -914,6 +915,10 @@
|
|
|
914
915
|
|
|
915
916
|
.crewlet-app-shell__rail-row--action,
|
|
916
917
|
.crewlet-app-shell__rail-foot > .crewlet-btn {
|
|
918
|
+
/* Half the foot's gap to each neighbour, so the rows' targets meet
|
|
919
|
+
(HitArea.css), across the row's 1px border; the account row below
|
|
920
|
+
reaches back the same way. */
|
|
921
|
+
--crewlet-hit-area-block: calc(var(--crewlet-rail-foot-gap, 0px) / 2 + 1px);
|
|
917
922
|
cursor: pointer;
|
|
918
923
|
transition:
|
|
919
924
|
background var(--motion-duration-fast) var(--motion-easing-default),
|
|
@@ -1340,11 +1345,12 @@
|
|
|
1340
1345
|
* the controls off the rail.
|
|
1341
1346
|
*/
|
|
1342
1347
|
.crewlet-account-row {
|
|
1348
|
+
--crewlet-account-row-pad: var(--spacing-1);
|
|
1343
1349
|
display: flex;
|
|
1344
1350
|
align-items: center;
|
|
1345
1351
|
gap: var(--spacing-1);
|
|
1346
1352
|
min-width: 0;
|
|
1347
|
-
padding: var(--
|
|
1353
|
+
padding: var(--crewlet-account-row-pad) 0;
|
|
1348
1354
|
}
|
|
1349
1355
|
|
|
1350
1356
|
.crewlet-account-row__who {
|
|
@@ -1361,6 +1367,12 @@
|
|
|
1361
1367
|
transition: background var(--motion-duration-fast) var(--motion-easing-default);
|
|
1362
1368
|
}
|
|
1363
1369
|
|
|
1370
|
+
/* In the rail's foot, the account row reaches up across its own padding to
|
|
1371
|
+
half the foot's gap, to meet the row above (HitArea.css). */
|
|
1372
|
+
.crewlet-app-shell__rail-foot .crewlet-account-row__who {
|
|
1373
|
+
--crewlet-hit-area-block-start: calc(var(--crewlet-rail-foot-gap) / 2 + var(--crewlet-account-row-pad));
|
|
1374
|
+
}
|
|
1375
|
+
|
|
1364
1376
|
/* The row as the reader's menu button: a button drawn as the link is. */
|
|
1365
1377
|
button.crewlet-account-row__who {
|
|
1366
1378
|
width: 100%;
|
|
@@ -2212,6 +2224,40 @@ button.crewlet-account-row__who:focus-visible {
|
|
|
2212
2224
|
}
|
|
2213
2225
|
|
|
2214
2226
|
|
|
2227
|
+
/* ArtifactAccess-Y53ZTRFS.css */
|
|
2228
|
+
/*
|
|
2229
|
+
* An artifact's access as a glyph and its word. No colour of its own: the
|
|
2230
|
+
* glyph is the tertiary step and the word the secondary, one step stronger
|
|
2231
|
+
* where others can open it.
|
|
2232
|
+
*/
|
|
2233
|
+
|
|
2234
|
+
.crewlet-artifact-access {
|
|
2235
|
+
display: inline-flex;
|
|
2236
|
+
align-items: center;
|
|
2237
|
+
gap: calc(var(--spacing-1) * 1.5);
|
|
2238
|
+
min-width: 0;
|
|
2239
|
+
max-width: 100%;
|
|
2240
|
+
color: var(--color-text-tertiary);
|
|
2241
|
+
}
|
|
2242
|
+
|
|
2243
|
+
.crewlet-artifact-access__glyph {
|
|
2244
|
+
display: inline-flex;
|
|
2245
|
+
flex: none;
|
|
2246
|
+
}
|
|
2247
|
+
|
|
2248
|
+
.crewlet-artifact-access__word {
|
|
2249
|
+
min-width: 0;
|
|
2250
|
+
overflow: hidden;
|
|
2251
|
+
text-overflow: ellipsis;
|
|
2252
|
+
white-space: nowrap;
|
|
2253
|
+
}
|
|
2254
|
+
|
|
2255
|
+
.crewlet-artifact-access--shared,
|
|
2256
|
+
.crewlet-artifact-access--company {
|
|
2257
|
+
color: var(--color-text-secondary);
|
|
2258
|
+
}
|
|
2259
|
+
|
|
2260
|
+
|
|
2215
2261
|
/* ArtifactBar-FWPBBKQ5.css */
|
|
2216
2262
|
/*
|
|
2217
2263
|
* One row, one hairline under it, the height of a large row. The lead (the
|
|
@@ -2991,9 +3037,9 @@ button.crewlet-account-row__who:focus-visible {
|
|
|
2991
3037
|
}
|
|
2992
3038
|
|
|
2993
3039
|
|
|
2994
|
-
/* ArtifactKindIllustration-
|
|
3040
|
+
/* ArtifactKindIllustration-KLFL7KBG.css */
|
|
2995
3041
|
/*
|
|
2996
|
-
* A kind's drawing, its tinted ground and the
|
|
3042
|
+
* A kind's drawing, its tinted ground and the "Start a new artifact" tile.
|
|
2997
3043
|
*
|
|
2998
3044
|
* Every colour is the kind's token, `--color-artifact-kind-<kind>` and its
|
|
2999
3045
|
* Fill and Line steps, set once per kind on `--crewlet-kind-*`
|
|
@@ -3265,9 +3311,9 @@ a.crewlet-kind-tile:hover .crewlet-kind-tile__frame,
|
|
|
3265
3311
|
.crewlet-kind--sheet { --crewlet-kind-hue: var(--color-artifact-kind-sheet); --crewlet-kind-fill: var(--color-artifact-kind-sheet-fill); --crewlet-kind-line: var(--color-artifact-kind-sheet-line); --crewlet-kind-ink: var(--color-artifact-kind-sheet-ink); }
|
|
3266
3312
|
|
|
3267
3313
|
|
|
3268
|
-
/* ArtifactMakeRow-
|
|
3314
|
+
/* ArtifactMakeRow-W3RD5YWZ.css */
|
|
3269
3315
|
/*
|
|
3270
|
-
* The
|
|
3316
|
+
* The "Start a new artifact" tray.
|
|
3271
3317
|
*
|
|
3272
3318
|
* Every colour is a token: the tray's ground, its dots and its hairlines are
|
|
3273
3319
|
* the surface and border steps, and each kind's mark reads the kind's own
|
|
@@ -3294,9 +3340,10 @@ a.crewlet-kind-tile:hover .crewlet-kind-tile__frame,
|
|
|
3294
3340
|
}
|
|
3295
3341
|
|
|
3296
3342
|
.crewlet-make-row__list {
|
|
3343
|
+
--crewlet-make-row-gap: var(--spacing-1);
|
|
3297
3344
|
display: grid;
|
|
3298
3345
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
3299
|
-
gap: var(--
|
|
3346
|
+
gap: var(--crewlet-make-row-gap);
|
|
3300
3347
|
margin: 0;
|
|
3301
3348
|
padding: var(--spacing-1);
|
|
3302
3349
|
list-style: none;
|
|
@@ -3321,6 +3368,10 @@ a.crewlet-kind-tile:hover .crewlet-kind-tile__frame,
|
|
|
3321
3368
|
color: var(--color-text-primary);
|
|
3322
3369
|
text-decoration: none;
|
|
3323
3370
|
outline: none;
|
|
3371
|
+
/* Half the gap to each neighbour, so the targets meet (HitArea.css), and
|
|
3372
|
+
the 1px border the reach is measured inside of. */
|
|
3373
|
+
--crewlet-hit-area-block: calc(var(--crewlet-make-row-gap) / 2 + 1px);
|
|
3374
|
+
--crewlet-hit-area-inline: calc(var(--crewlet-make-row-gap) / 2 + 1px);
|
|
3324
3375
|
transition:
|
|
3325
3376
|
background-color var(--motion-duration-fast) var(--motion-easing-out),
|
|
3326
3377
|
border-color var(--motion-duration-fast) var(--motion-easing-out),
|
|
@@ -3435,6 +3486,113 @@ a.crewlet-make-row__item:active {
|
|
|
3435
3486
|
}
|
|
3436
3487
|
|
|
3437
3488
|
|
|
3489
|
+
/* ArtifactNameCell-RTVP4LO4.css */
|
|
3490
|
+
/*
|
|
3491
|
+
* An artifact's name in a list: the kind's mark on its tint, the title over
|
|
3492
|
+
* one quiet line. Every colour is a token: the mark reads the kind's own Fill,
|
|
3493
|
+
* Line and Ink (`ArtifactKinds.css`), the words the text steps.
|
|
3494
|
+
*/
|
|
3495
|
+
|
|
3496
|
+
.crewlet-artifact-name {
|
|
3497
|
+
display: flex;
|
|
3498
|
+
align-items: center;
|
|
3499
|
+
gap: var(--spacing-3);
|
|
3500
|
+
min-width: 0;
|
|
3501
|
+
max-width: 100%;
|
|
3502
|
+
padding-block: var(--spacing-1);
|
|
3503
|
+
}
|
|
3504
|
+
|
|
3505
|
+
/* THE MARK, the Make row's tile at a list's size: the kind's glyph on its
|
|
3506
|
+
tint inside the kind's hairline. */
|
|
3507
|
+
.crewlet-artifact-name__mark {
|
|
3508
|
+
display: inline-flex;
|
|
3509
|
+
flex: none;
|
|
3510
|
+
align-items: center;
|
|
3511
|
+
justify-content: center;
|
|
3512
|
+
width: 32px;
|
|
3513
|
+
height: 32px;
|
|
3514
|
+
box-sizing: border-box;
|
|
3515
|
+
border-radius: var(--radius-md);
|
|
3516
|
+
background: var(--crewlet-kind-fill);
|
|
3517
|
+
box-shadow: inset 0 0 0 1px var(--crewlet-kind-line);
|
|
3518
|
+
color: var(--crewlet-kind-ink);
|
|
3519
|
+
transition: box-shadow var(--motion-duration-fast) var(--motion-easing-out);
|
|
3520
|
+
}
|
|
3521
|
+
|
|
3522
|
+
/* UNDER THE POINTER the row's ground moves (the row's own hover), and the
|
|
3523
|
+
mark's hairline takes the kind's hue, so the one coloured thing on the row
|
|
3524
|
+
answers too. No lift and no movement: a list is read down, not played. */
|
|
3525
|
+
:is(tr, [role='row']):hover .crewlet-artifact-name__mark {
|
|
3526
|
+
box-shadow: inset 0 0 0 1px var(--crewlet-kind-hue);
|
|
3527
|
+
}
|
|
3528
|
+
|
|
3529
|
+
.crewlet-artifact-name--trashed .crewlet-artifact-name__mark {
|
|
3530
|
+
background: var(--color-surface-inset);
|
|
3531
|
+
box-shadow: inset 0 0 0 1px var(--color-border-default);
|
|
3532
|
+
color: var(--color-text-tertiary);
|
|
3533
|
+
}
|
|
3534
|
+
|
|
3535
|
+
.crewlet-artifact-name__words {
|
|
3536
|
+
display: flex;
|
|
3537
|
+
flex-direction: column;
|
|
3538
|
+
gap: 2px;
|
|
3539
|
+
min-width: 0;
|
|
3540
|
+
}
|
|
3541
|
+
|
|
3542
|
+
.crewlet-artifact-name__title-row {
|
|
3543
|
+
display: flex;
|
|
3544
|
+
align-items: center;
|
|
3545
|
+
gap: var(--spacing-1);
|
|
3546
|
+
min-width: 0;
|
|
3547
|
+
}
|
|
3548
|
+
|
|
3549
|
+
.crewlet-artifact-name__title {
|
|
3550
|
+
min-width: 0;
|
|
3551
|
+
overflow: hidden;
|
|
3552
|
+
text-overflow: ellipsis;
|
|
3553
|
+
white-space: nowrap;
|
|
3554
|
+
color: var(--color-text-primary);
|
|
3555
|
+
font-size: var(--font-size-sm);
|
|
3556
|
+
font-weight: var(--font-weight-medium);
|
|
3557
|
+
line-height: 1.35;
|
|
3558
|
+
}
|
|
3559
|
+
|
|
3560
|
+
.crewlet-artifact-name__pin {
|
|
3561
|
+
display: inline-flex;
|
|
3562
|
+
flex: none;
|
|
3563
|
+
color: var(--color-text-tertiary);
|
|
3564
|
+
}
|
|
3565
|
+
|
|
3566
|
+
.crewlet-artifact-name__detail {
|
|
3567
|
+
display: flex;
|
|
3568
|
+
align-items: baseline;
|
|
3569
|
+
gap: var(--spacing-1);
|
|
3570
|
+
min-width: 0;
|
|
3571
|
+
overflow: hidden;
|
|
3572
|
+
white-space: nowrap;
|
|
3573
|
+
color: var(--color-text-tertiary);
|
|
3574
|
+
font-size: var(--font-size-xs);
|
|
3575
|
+
line-height: 1.35;
|
|
3576
|
+
}
|
|
3577
|
+
|
|
3578
|
+
.crewlet-artifact-name__kind,
|
|
3579
|
+
.crewlet-artifact-name__dot {
|
|
3580
|
+
flex: none;
|
|
3581
|
+
}
|
|
3582
|
+
|
|
3583
|
+
.crewlet-artifact-name__about {
|
|
3584
|
+
min-width: 0;
|
|
3585
|
+
overflow: hidden;
|
|
3586
|
+
text-overflow: ellipsis;
|
|
3587
|
+
}
|
|
3588
|
+
|
|
3589
|
+
@media (prefers-reduced-motion: reduce) {
|
|
3590
|
+
.crewlet-artifact-name__mark {
|
|
3591
|
+
transition: none;
|
|
3592
|
+
}
|
|
3593
|
+
}
|
|
3594
|
+
|
|
3595
|
+
|
|
3438
3596
|
/* ArtifactPanel-KKUUIPEU.css */
|
|
3439
3597
|
/*
|
|
3440
3598
|
* The workspace is a row: the artifact's body, then at most one panel. The
|
|
@@ -7864,7 +8022,7 @@ a.crewlet-breadcrumb__crumb:focus-visible {
|
|
|
7864
8022
|
}
|
|
7865
8023
|
|
|
7866
8024
|
|
|
7867
|
-
/* ChoiceList-
|
|
8025
|
+
/* ChoiceList-KFYFAECP.css */
|
|
7868
8026
|
/*
|
|
7869
8027
|
* A short list of answers in one bordered box: a radio, the label with a line
|
|
7870
8028
|
* of detail under it, and a tag at the row's end. The selected row takes the
|
|
@@ -7875,8 +8033,10 @@ a.crewlet-breadcrumb__crumb:focus-visible {
|
|
|
7875
8033
|
.crewlet-choice-list {
|
|
7876
8034
|
/* The platform's radio, sized here so a panel can line up with the text beside it. */
|
|
7877
8035
|
--crewlet-choice-list-radio-size: 13px;
|
|
8036
|
+
/* The step between two answers. Every row's pointer target reaches half of it. */
|
|
8037
|
+
--crewlet-choice-list-gap: var(--spacing-1);
|
|
7878
8038
|
display: grid;
|
|
7879
|
-
gap: var(--
|
|
8039
|
+
gap: var(--crewlet-choice-list-gap);
|
|
7880
8040
|
padding: var(--spacing-1);
|
|
7881
8041
|
border: 1px solid var(--color-border-strong);
|
|
7882
8042
|
border-radius: var(--radius-md);
|
|
@@ -7889,21 +8049,24 @@ a.crewlet-breadcrumb__crumb:focus-visible {
|
|
|
7889
8049
|
|
|
7890
8050
|
.crewlet-choice-list__group {
|
|
7891
8051
|
display: grid;
|
|
7892
|
-
gap: var(--
|
|
8052
|
+
gap: var(--crewlet-choice-list-gap);
|
|
7893
8053
|
}
|
|
7894
8054
|
|
|
7895
8055
|
.crewlet-choice-list__item {
|
|
7896
8056
|
display: grid;
|
|
7897
|
-
gap: var(--
|
|
8057
|
+
gap: var(--crewlet-choice-list-gap);
|
|
7898
8058
|
}
|
|
7899
8059
|
|
|
7900
8060
|
/* The "Something else" a list ends with, set apart by a dashed rule. */
|
|
7901
8061
|
.crewlet-choice-list__item.is-separated {
|
|
7902
|
-
|
|
8062
|
+
--crewlet-choice-list-rule-pad: var(--spacing-1);
|
|
8063
|
+
padding-top: var(--crewlet-choice-list-rule-pad);
|
|
7903
8064
|
border-top: 1px dashed var(--color-border-strong);
|
|
7904
8065
|
}
|
|
7905
8066
|
|
|
7906
8067
|
.crewlet-choice-list__row {
|
|
8068
|
+
/* Half the step to each neighbour, so the targets meet (HitArea.css). */
|
|
8069
|
+
--crewlet-hit-area-block: calc(var(--crewlet-choice-list-gap) / 2);
|
|
7907
8070
|
display: grid;
|
|
7908
8071
|
grid-template-columns: auto minmax(0, 1fr) auto;
|
|
7909
8072
|
align-items: start;
|
|
@@ -7914,6 +8077,23 @@ a.crewlet-breadcrumb__crumb:focus-visible {
|
|
|
7914
8077
|
transition: background-color var(--motion-duration-fast) var(--motion-easing-default);
|
|
7915
8078
|
}
|
|
7916
8079
|
|
|
8080
|
+
/*
|
|
8081
|
+
* THE ANSWER AFTER THE RULE reaches up across it, so the pointer leaving the
|
|
8082
|
+
* row above lands on this one rather than on the rule: the dashed line sets
|
|
8083
|
+
* the answer apart for the eye, and is no gap for the hand.
|
|
8084
|
+
*/
|
|
8085
|
+
.crewlet-choice-list__item.is-separated > .crewlet-choice-list__row {
|
|
8086
|
+
--crewlet-hit-area-block-start: calc(var(--crewlet-choice-list-gap) / 2 + var(--crewlet-choice-list-rule-pad) + 1px);
|
|
8087
|
+
}
|
|
8088
|
+
|
|
8089
|
+
/*
|
|
8090
|
+
* A ROW WITH ITS PANEL OPEN reaches nothing downward: the panel is part of the
|
|
8091
|
+
* answer and holds controls of its own, which the row must not cover.
|
|
8092
|
+
*/
|
|
8093
|
+
.crewlet-choice-list__item:has(> .crewlet-choice-list__panel) > .crewlet-choice-list__row {
|
|
8094
|
+
--crewlet-hit-area-block-end: 0px;
|
|
8095
|
+
}
|
|
8096
|
+
|
|
7917
8097
|
/* A choice with a picture: the radio, the picture, the words, the tag. The
|
|
7918
8098
|
picture centres on the label and its detail together. */
|
|
7919
8099
|
.crewlet-choice-list__row.has-media {
|
|
@@ -8237,7 +8417,7 @@ a.crewlet-breadcrumb__crumb:focus-visible {
|
|
|
8237
8417
|
}
|
|
8238
8418
|
|
|
8239
8419
|
|
|
8240
|
-
/* Combobox-
|
|
8420
|
+
/* Combobox-YDONYDTM.css */
|
|
8241
8421
|
/*
|
|
8242
8422
|
* Combobox: a field that offers completions.
|
|
8243
8423
|
*
|
|
@@ -8264,9 +8444,10 @@ a.crewlet-breadcrumb__crumb:focus-visible {
|
|
|
8264
8444
|
overflow-y: auto;
|
|
8265
8445
|
overscroll-behavior: contain;
|
|
8266
8446
|
padding: var(--spacing-1);
|
|
8447
|
+
--crewlet-listbox-gap: 1px;
|
|
8267
8448
|
display: flex;
|
|
8268
8449
|
flex-direction: column;
|
|
8269
|
-
gap:
|
|
8450
|
+
gap: var(--crewlet-listbox-gap);
|
|
8270
8451
|
/*
|
|
8271
8452
|
* OPAQUE, and the product's own panel surface: a translucent list over a
|
|
8272
8453
|
* form puts two sets of words in the same place, and the words underneath
|
|
@@ -8320,7 +8501,7 @@ a.crewlet-breadcrumb__crumb:focus-visible {
|
|
|
8320
8501
|
}
|
|
8321
8502
|
|
|
8322
8503
|
|
|
8323
|
-
/* CommandPalette-
|
|
8504
|
+
/* CommandPalette-TOZYLWLE.css */
|
|
8324
8505
|
/*
|
|
8325
8506
|
* The command palette: a field, an optional row of scopes, one scroller
|
|
8326
8507
|
* holding the lead and the list, and a key legend.
|
|
@@ -8486,10 +8667,11 @@ a.crewlet-breadcrumb__crumb:focus-visible {
|
|
|
8486
8667
|
* draw and no slider to measure, and the bar is each tab's own edge.
|
|
8487
8668
|
*/
|
|
8488
8669
|
.crewlet-palette__scopes {
|
|
8670
|
+
--crewlet-palette-scope-gap: var(--spacing-4);
|
|
8489
8671
|
flex-shrink: 0;
|
|
8490
8672
|
display: flex;
|
|
8491
8673
|
align-items: stretch;
|
|
8492
|
-
gap: var(--
|
|
8674
|
+
gap: var(--crewlet-palette-scope-gap);
|
|
8493
8675
|
min-height: var(--size-row-md);
|
|
8494
8676
|
padding-inline: var(--spacing-4);
|
|
8495
8677
|
border-bottom: 1px solid var(--color-border-default);
|
|
@@ -8518,6 +8700,9 @@ a.crewlet-breadcrumb__crumb:focus-visible {
|
|
|
8518
8700
|
font-weight: var(--font-weight-medium);
|
|
8519
8701
|
white-space: nowrap;
|
|
8520
8702
|
cursor: pointer;
|
|
8703
|
+
/* Half the gap to each neighbour, so the scopes' targets meet (HitArea.css).
|
|
8704
|
+
The row's own inline padding holds the reach at either end. */
|
|
8705
|
+
--crewlet-hit-area-inline: calc(var(--crewlet-palette-scope-gap) / 2);
|
|
8521
8706
|
}
|
|
8522
8707
|
|
|
8523
8708
|
.crewlet-palette__scope:hover,
|
|
@@ -8732,7 +8917,7 @@ a.crewlet-breadcrumb__crumb:focus-visible {
|
|
|
8732
8917
|
}
|
|
8733
8918
|
|
|
8734
8919
|
|
|
8735
|
-
/* Composer-
|
|
8920
|
+
/* Composer-TXULCPPV.css */
|
|
8736
8921
|
/*
|
|
8737
8922
|
* A message written in place: the field and its footer strip in one box. The
|
|
8738
8923
|
* BOX takes the focus ring every field in the package draws (see Input.css):
|
|
@@ -8762,7 +8947,7 @@ a.crewlet-breadcrumb__crumb:focus-visible {
|
|
|
8762
8947
|
outline-offset: -1px;
|
|
8763
8948
|
}
|
|
8764
8949
|
|
|
8765
|
-
:root[data-crewlet-focus='pointer'] .crewlet-composer:has(.crewlet-composer__field:focus-visible) {
|
|
8950
|
+
:where(:root[data-crewlet-focus='pointer']) .crewlet-composer:has(.crewlet-composer__field:focus-visible) {
|
|
8766
8951
|
outline-width: 1px;
|
|
8767
8952
|
outline-color: var(--color-border-selected);
|
|
8768
8953
|
}
|
|
@@ -11798,7 +11983,7 @@ body.crewlet-data-table-resizing {
|
|
|
11798
11983
|
}
|
|
11799
11984
|
|
|
11800
11985
|
|
|
11801
|
-
/* DatasetSource-
|
|
11986
|
+
/* DatasetSource-FFKTD3ZU.css */
|
|
11802
11987
|
/*
|
|
11803
11988
|
* DatasetSource: one entry of a dashboard's Sources rail. The title and its
|
|
11804
11989
|
* source kind, the definition, then where the rows stand, how many there are
|
|
@@ -11834,6 +12019,20 @@ body.crewlet-data-table-resizing {
|
|
|
11834
12019
|
|
|
11835
12020
|
button.crewlet-dataset-source__summary {
|
|
11836
12021
|
cursor: pointer;
|
|
12022
|
+
/* Half the list's gap to each neighbour, so the entries' targets meet
|
|
12023
|
+
(HitArea.css), across the entry's 1px boundary and the summary's own. */
|
|
12024
|
+
--crewlet-hit-area-block: calc(var(--crewlet-dataset-source-list-gap, 0px) / 2 + 2px);
|
|
12025
|
+
}
|
|
12026
|
+
|
|
12027
|
+
/* The list has no padding, so its first and last entries reach nothing past
|
|
12028
|
+
it; and an open entry's preview holds controls the summary must not cover. */
|
|
12029
|
+
.crewlet-dataset-source-list__item:first-child button.crewlet-dataset-source__summary {
|
|
12030
|
+
--crewlet-hit-area-block-start: 0px;
|
|
12031
|
+
}
|
|
12032
|
+
|
|
12033
|
+
.crewlet-dataset-source-list__item:last-child button.crewlet-dataset-source__summary,
|
|
12034
|
+
.crewlet-dataset-source--open > button.crewlet-dataset-source__summary {
|
|
12035
|
+
--crewlet-hit-area-block-end: 0px;
|
|
11837
12036
|
}
|
|
11838
12037
|
|
|
11839
12038
|
button.crewlet-dataset-source__summary:hover {
|
|
@@ -11959,9 +12158,10 @@ button.crewlet-dataset-source__summary:focus-visible {
|
|
|
11959
12158
|
}
|
|
11960
12159
|
|
|
11961
12160
|
.crewlet-dataset-source-list {
|
|
12161
|
+
--crewlet-dataset-source-list-gap: var(--spacing-1);
|
|
11962
12162
|
display: flex;
|
|
11963
12163
|
flex-direction: column;
|
|
11964
|
-
gap: var(--
|
|
12164
|
+
gap: var(--crewlet-dataset-source-list-gap);
|
|
11965
12165
|
margin: 0;
|
|
11966
12166
|
padding: 0;
|
|
11967
12167
|
list-style: none;
|
|
@@ -11972,7 +12172,7 @@ button.crewlet-dataset-source__summary:focus-visible {
|
|
|
11972
12172
|
}
|
|
11973
12173
|
|
|
11974
12174
|
|
|
11975
|
-
/* DateTimePicker-
|
|
12175
|
+
/* DateTimePicker-3A7JIIVL.css */
|
|
11976
12176
|
/*
|
|
11977
12177
|
* DateTimePicker: a Select-shaped trigger over a calendar dialog.
|
|
11978
12178
|
*
|
|
@@ -12031,8 +12231,8 @@ button.crewlet-dataset-source__summary:focus-visible {
|
|
|
12031
12231
|
}
|
|
12032
12232
|
|
|
12033
12233
|
/* Narrowed and tinted for a pointer, as the text box's ring is. See Input.css. */
|
|
12034
|
-
:root[data-crewlet-focus='pointer'] .crewlet-datetime:focus-visible,
|
|
12035
|
-
:root[data-crewlet-focus='pointer'] .crewlet-datetime.is-open {
|
|
12234
|
+
:where(:root[data-crewlet-focus='pointer']) .crewlet-datetime:focus-visible,
|
|
12235
|
+
:where(:root[data-crewlet-focus='pointer']) .crewlet-datetime.is-open {
|
|
12036
12236
|
outline-width: 1px;
|
|
12037
12237
|
outline-color: var(--color-border-selected);
|
|
12038
12238
|
}
|
|
@@ -12164,7 +12364,7 @@ svg.crewlet-datetime__chevron {
|
|
|
12164
12364
|
}
|
|
12165
12365
|
|
|
12166
12366
|
/* Narrowed and tinted for a pointer, as the text box's ring is. See Input.css. */
|
|
12167
|
-
:root[data-crewlet-focus='pointer'] .crewlet-datetime__time-input:focus-visible {
|
|
12367
|
+
:where(:root[data-crewlet-focus='pointer']) .crewlet-datetime__time-input:focus-visible {
|
|
12168
12368
|
outline-width: 1px;
|
|
12169
12369
|
outline-color: var(--color-border-selected);
|
|
12170
12370
|
}
|
|
@@ -12881,7 +13081,7 @@ svg.crewlet-datetime__chevron {
|
|
|
12881
13081
|
}
|
|
12882
13082
|
|
|
12883
13083
|
|
|
12884
|
-
/* Document-
|
|
13084
|
+
/* Document-TZ2NBLOR.css */
|
|
12885
13085
|
/*
|
|
12886
13086
|
* Rendered markdown, set as a document (Document.tsx).
|
|
12887
13087
|
*
|
|
@@ -13257,7 +13457,7 @@ svg.crewlet-datetime__chevron {
|
|
|
13257
13457
|
outline: 2px solid transparent;
|
|
13258
13458
|
}
|
|
13259
13459
|
|
|
13260
|
-
:root[data-crewlet-focus='pointer'] .crewlet-document-title-field:focus-visible {
|
|
13460
|
+
:where(:root[data-crewlet-focus='pointer']) .crewlet-document-title-field:focus-visible {
|
|
13261
13461
|
border-block-end-color: var(--color-border-selected);
|
|
13262
13462
|
box-shadow: none;
|
|
13263
13463
|
}
|
|
@@ -13270,7 +13470,7 @@ svg.crewlet-datetime__chevron {
|
|
|
13270
13470
|
box-shadow: 0 1px 0 var(--color-feedback-danger);
|
|
13271
13471
|
}
|
|
13272
13472
|
|
|
13273
|
-
:root[data-crewlet-focus='pointer'] .crewlet-document-title-field[aria-invalid='true']:focus-visible {
|
|
13473
|
+
:where(:root[data-crewlet-focus='pointer']) .crewlet-document-title-field[aria-invalid='true']:focus-visible {
|
|
13274
13474
|
border-block-end-color: var(--color-feedback-danger);
|
|
13275
13475
|
}
|
|
13276
13476
|
|
|
@@ -14073,6 +14273,44 @@ button.crewlet-finding-list__row:focus-visible {
|
|
|
14073
14273
|
}
|
|
14074
14274
|
|
|
14075
14275
|
|
|
14276
|
+
/* HitArea-QUOS6ZDJ.css */
|
|
14277
|
+
/*
|
|
14278
|
+
* A ROW'S TARGET RUNS TO ITS NEIGHBOUR'S. The rows of one list are drawn a
|
|
14279
|
+
* step apart, and the gap between them belonged to no row: a pointer crossing
|
|
14280
|
+
* the list slowly met the list itself there, so the hand turned into the arrow
|
|
14281
|
+
* and the hover fill went out between every two rows and came back on the
|
|
14282
|
+
* next, which a reader sees as the cursor flickering. Each row that carries
|
|
14283
|
+
* this class reaches half the gap on each side with an empty `::after`, so the
|
|
14284
|
+
* targets meet in the middle of every gap and the drawn rows keep their
|
|
14285
|
+
* spacing. The pseudo-element is part of its row: it takes the row's cursor,
|
|
14286
|
+
* makes the row `:hover`, and a press on it is a press on the row.
|
|
14287
|
+
*
|
|
14288
|
+
* The reach is set on the ROW, from the gap its list is laid out with, as
|
|
14289
|
+
* `--crewlet-hit-area-block` and `--crewlet-hit-area-inline` (each side may be
|
|
14290
|
+
* set alone with the `-start` and `-end` forms). A row that sets none reaches
|
|
14291
|
+
* nowhere. It stays inside the list's own padding, so no scroller grows.
|
|
14292
|
+
*
|
|
14293
|
+
* IT IS MEASURED FROM THE ROW'S PADDING EDGE, which is where an absolutely
|
|
14294
|
+
* placed box starts, so a row drawn with a border (a transparent one
|
|
14295
|
+
* included) adds the border's width to its reach.
|
|
14296
|
+
*
|
|
14297
|
+
* `position: relative` is at zero specificity, so a row positioned on purpose
|
|
14298
|
+
* keeps its own position and is still the pseudo-element's containing block.
|
|
14299
|
+
*/
|
|
14300
|
+
:where(.crewlet-hit-area) {
|
|
14301
|
+
position: relative;
|
|
14302
|
+
}
|
|
14303
|
+
|
|
14304
|
+
.crewlet-hit-area::after {
|
|
14305
|
+
content: '';
|
|
14306
|
+
position: absolute;
|
|
14307
|
+
top: calc(var(--crewlet-hit-area-block-start, var(--crewlet-hit-area-block, 0px)) * -1);
|
|
14308
|
+
bottom: calc(var(--crewlet-hit-area-block-end, var(--crewlet-hit-area-block, 0px)) * -1);
|
|
14309
|
+
inset-inline-start: calc(var(--crewlet-hit-area-inline-start, var(--crewlet-hit-area-inline, 0px)) * -1);
|
|
14310
|
+
inset-inline-end: calc(var(--crewlet-hit-area-inline-end, var(--crewlet-hit-area-inline, 0px)) * -1);
|
|
14311
|
+
}
|
|
14312
|
+
|
|
14313
|
+
|
|
14076
14314
|
/* HuePicker-PAIGH6LR.css */
|
|
14077
14315
|
/*
|
|
14078
14316
|
* A hue's swatch: the hue itself, as a dot beside its name. The name carries
|
|
@@ -14858,7 +15096,7 @@ button.crewlet-finding-list__row:focus-visible {
|
|
|
14858
15096
|
}
|
|
14859
15097
|
|
|
14860
15098
|
|
|
14861
|
-
/* Input-
|
|
15099
|
+
/* Input-OQZBCRX5.css */
|
|
14862
15100
|
/*
|
|
14863
15101
|
* The form row: Input, Textarea, Label, FormField, FormRow, FormSection and
|
|
14864
15102
|
* ReadOnlyField.
|
|
@@ -14985,8 +15223,13 @@ button.crewlet-finding-list__row:focus-visible {
|
|
|
14985
15223
|
* round it before anybody had touched a key. A refused field keeps its own
|
|
14986
15224
|
* colour under a pointer too (below). A document that tracks nothing keeps
|
|
14987
15225
|
* the keyboard's ring.
|
|
15226
|
+
*
|
|
15227
|
+
* The modality is matched inside :where(), here and in every field's narrowing
|
|
15228
|
+
* rule, so it narrows a ring and never outranks a variant's own: at the
|
|
15229
|
+
* attribute's specificity it beat `.crewlet-input--command`, and the palette's
|
|
15230
|
+
* borderless search field drew a square accent hairline round its text.
|
|
14988
15231
|
*/
|
|
14989
|
-
:root[data-crewlet-focus='pointer'] .crewlet-input:has(.crewlet-input__control:focus-visible) {
|
|
15232
|
+
:where(:root[data-crewlet-focus='pointer']) .crewlet-input:has(.crewlet-input__control:focus-visible) {
|
|
14990
15233
|
outline-width: 1px;
|
|
14991
15234
|
outline-color: var(--color-border-selected);
|
|
14992
15235
|
}
|
|
@@ -15011,7 +15254,7 @@ button.crewlet-finding-list__row:focus-visible {
|
|
|
15011
15254
|
outline-color: var(--color-feedback-danger);
|
|
15012
15255
|
}
|
|
15013
15256
|
|
|
15014
|
-
:root[data-crewlet-focus='pointer'] .crewlet-input.is-error:has(.crewlet-input__control:focus-visible) {
|
|
15257
|
+
:where(:root[data-crewlet-focus='pointer']) .crewlet-input.is-error:has(.crewlet-input__control:focus-visible) {
|
|
15015
15258
|
outline-color: var(--color-feedback-danger);
|
|
15016
15259
|
}
|
|
15017
15260
|
|
|
@@ -15256,7 +15499,7 @@ button.crewlet-finding-list__row:focus-visible {
|
|
|
15256
15499
|
}
|
|
15257
15500
|
|
|
15258
15501
|
/* Narrowed and tinted for a pointer, as the text box's ring is. See Input.css. */
|
|
15259
|
-
:root[data-crewlet-focus='pointer'] .crewlet-textarea:focus-visible {
|
|
15502
|
+
:where(:root[data-crewlet-focus='pointer']) .crewlet-textarea:focus-visible {
|
|
15260
15503
|
outline-width: 1px;
|
|
15261
15504
|
outline-color: var(--color-border-selected);
|
|
15262
15505
|
}
|
|
@@ -15269,7 +15512,7 @@ button.crewlet-finding-list__row:focus-visible {
|
|
|
15269
15512
|
outline-color: var(--color-feedback-danger);
|
|
15270
15513
|
}
|
|
15271
15514
|
|
|
15272
|
-
:root[data-crewlet-focus='pointer'] .crewlet-textarea.is-error:focus-visible {
|
|
15515
|
+
:where(:root[data-crewlet-focus='pointer']) .crewlet-textarea.is-error:focus-visible {
|
|
15273
15516
|
outline-color: var(--color-feedback-danger);
|
|
15274
15517
|
}
|
|
15275
15518
|
|
|
@@ -16491,7 +16734,7 @@ button.crewlet-finding-list__row:focus-visible {
|
|
|
16491
16734
|
}
|
|
16492
16735
|
|
|
16493
16736
|
|
|
16494
|
-
/* Listbox-
|
|
16737
|
+
/* Listbox-NQV6E3FS.css */
|
|
16495
16738
|
/*
|
|
16496
16739
|
* The listbox register: one look for every list a field offers.
|
|
16497
16740
|
*
|
|
@@ -16566,6 +16809,9 @@ button.crewlet-finding-list__row:focus-visible {
|
|
|
16566
16809
|
cursor: pointer;
|
|
16567
16810
|
/* A row is chosen by the arrows as often as by the pointer, so the highlight
|
|
16568
16811
|
lands with no transition: a fade would lag a held arrow key. */
|
|
16812
|
+
/* Where a list sets its rows apart, each row's target reaches half the gap
|
|
16813
|
+
(HitArea.css), so the pointer never falls between two of them. */
|
|
16814
|
+
--crewlet-hit-area-block: calc(var(--crewlet-listbox-gap, 0px) / 2);
|
|
16569
16815
|
}
|
|
16570
16816
|
|
|
16571
16817
|
/*
|
|
@@ -16707,7 +16953,7 @@ button.crewlet-finding-list__row:focus-visible {
|
|
|
16707
16953
|
}
|
|
16708
16954
|
|
|
16709
16955
|
|
|
16710
|
-
/* LivePreview-
|
|
16956
|
+
/* LivePreview-KQEDMQCY.css */
|
|
16711
16957
|
/*
|
|
16712
16958
|
* A live preview: the stand-in, the still copy of what the content drew and
|
|
16713
16959
|
* the live layer it is drawn in, stacked in that order in one box. The box
|
|
@@ -16762,6 +17008,19 @@ button.crewlet-finding-list__row:focus-visible {
|
|
|
16762
17008
|
transition: none !important;
|
|
16763
17009
|
}
|
|
16764
17010
|
|
|
17011
|
+
/* NOR DOES ANYTHING IN IT SCROLL: a copy of a box that scrolled (a sheet
|
|
17012
|
+
wider than the card, a long list) is a picture of its first view, so it
|
|
17013
|
+
draws no scrollbar. Shown, the bar sat across the card as a stray band.
|
|
17014
|
+
The live layer it is copied from draws none either, so what is laid out
|
|
17015
|
+
there (a sheet's room for a bar included) is what the copy shows. */
|
|
17016
|
+
:is(.crewlet-live-preview__live, .crewlet-live-preview__still) * {
|
|
17017
|
+
scrollbar-width: none !important;
|
|
17018
|
+
}
|
|
17019
|
+
|
|
17020
|
+
:is(.crewlet-live-preview__live, .crewlet-live-preview__still) *::-webkit-scrollbar {
|
|
17021
|
+
display: none;
|
|
17022
|
+
}
|
|
17023
|
+
|
|
16765
17024
|
/* THE LIVE LAYER renders out of sight: content that is copied is never seen
|
|
16766
17025
|
live, only its copy is. A frame's page is kept rather than copied, so a
|
|
16767
17026
|
framed preview's live layer is what fades in once it has drawn. */
|
|
@@ -21691,7 +21950,7 @@ button.crewlet-presence-stack__member:focus-visible {
|
|
|
21691
21950
|
}
|
|
21692
21951
|
|
|
21693
21952
|
|
|
21694
|
-
/* SegmentedControl-
|
|
21953
|
+
/* SegmentedControl-B7XCUOML.css */
|
|
21695
21954
|
/*
|
|
21696
21955
|
* SegmentedControl: the pill row, drawn with the Tabs classes.
|
|
21697
21956
|
*
|
|
@@ -21719,8 +21978,10 @@ button.crewlet-presence-stack__member:focus-visible {
|
|
|
21719
21978
|
* equal weight in a file that happens to come later takes them back.
|
|
21720
21979
|
*/
|
|
21721
21980
|
.crewlet-tabs.crewlet-segmented--cards {
|
|
21981
|
+
--crewlet-tabs-gap: var(--spacing-2);
|
|
21982
|
+
--crewlet-tabs-row-gap: var(--spacing-2);
|
|
21722
21983
|
display: grid;
|
|
21723
|
-
gap: var(--
|
|
21984
|
+
gap: var(--crewlet-tabs-gap);
|
|
21724
21985
|
width: 100%;
|
|
21725
21986
|
align-items: stretch;
|
|
21726
21987
|
}
|
|
@@ -21731,6 +21992,9 @@ button.crewlet-presence-stack__member:focus-visible {
|
|
|
21731
21992
|
* surface inside a panel of the same surface reads as a second panel.
|
|
21732
21993
|
*/
|
|
21733
21994
|
.crewlet-segmented--cards .crewlet-segmented__option {
|
|
21995
|
+
/* A card's 1px border is inside the reach (HitArea.css). */
|
|
21996
|
+
--crewlet-hit-area-inline: calc(var(--crewlet-tabs-gap) / 2 + 1px);
|
|
21997
|
+
--crewlet-hit-area-block: calc(var(--crewlet-tabs-row-gap) / 2 + 1px);
|
|
21734
21998
|
justify-content: flex-start;
|
|
21735
21999
|
text-align: left;
|
|
21736
22000
|
/* A sentence under a name is a sentence: it wraps rather than being cut. */
|
|
@@ -21775,7 +22039,8 @@ button.crewlet-presence-stack__member:focus-visible {
|
|
|
21775
22039
|
/* No gap between ROWS: each chip's target already overhangs its drawing by
|
|
21776
22040
|
half a step above and below, so two rows' drawings stand a whole step
|
|
21777
22041
|
apart while their targets meet. */
|
|
21778
|
-
gap:
|
|
22042
|
+
--crewlet-tabs-gap: var(--spacing-1);
|
|
22043
|
+
gap: 0 var(--crewlet-tabs-gap);
|
|
21779
22044
|
}
|
|
21780
22045
|
|
|
21781
22046
|
/*
|
|
@@ -21879,6 +22144,7 @@ button.crewlet-presence-stack__member:focus-visible {
|
|
|
21879
22144
|
* every option stays visible and inside the focus ring's room.
|
|
21880
22145
|
*/
|
|
21881
22146
|
.crewlet-tabs--pill.crewlet-segmented {
|
|
22147
|
+
--crewlet-tabs-row-gap: var(--crewlet-tabs-gap);
|
|
21882
22148
|
flex-wrap: wrap;
|
|
21883
22149
|
min-width: 0;
|
|
21884
22150
|
max-width: 100%;
|
|
@@ -21997,7 +22263,7 @@ button.crewlet-presence-stack__member:focus-visible {
|
|
|
21997
22263
|
}
|
|
21998
22264
|
|
|
21999
22265
|
|
|
22000
|
-
/* Select-
|
|
22266
|
+
/* Select-F526HLNR.css */
|
|
22001
22267
|
/*
|
|
22002
22268
|
* Select: one chrome over two controls, and the product's only dropdown.
|
|
22003
22269
|
*
|
|
@@ -22076,7 +22342,7 @@ button.crewlet-presence-stack__member:focus-visible {
|
|
|
22076
22342
|
}
|
|
22077
22343
|
|
|
22078
22344
|
/* Narrowed and tinted for a pointer, as the text box's ring is. See Input.css. */
|
|
22079
|
-
:root[data-crewlet-focus='pointer'] .crewlet-select:focus-within {
|
|
22345
|
+
:where(:root[data-crewlet-focus='pointer']) .crewlet-select:focus-within {
|
|
22080
22346
|
outline-width: 1px;
|
|
22081
22347
|
outline-color: var(--color-border-selected);
|
|
22082
22348
|
}
|
|
@@ -22139,7 +22405,7 @@ button.crewlet-presence-stack__member:focus-visible {
|
|
|
22139
22405
|
outline-color: var(--color-feedback-danger);
|
|
22140
22406
|
}
|
|
22141
22407
|
|
|
22142
|
-
:root[data-crewlet-focus='pointer'] .crewlet-select.is-error:focus-within {
|
|
22408
|
+
:where(:root[data-crewlet-focus='pointer']) .crewlet-select.is-error:focus-within {
|
|
22143
22409
|
outline-color: var(--color-feedback-danger);
|
|
22144
22410
|
}
|
|
22145
22411
|
|
|
@@ -22286,9 +22552,10 @@ svg.crewlet-select__chevron {
|
|
|
22286
22552
|
}
|
|
22287
22553
|
|
|
22288
22554
|
.crewlet-select__group {
|
|
22555
|
+
--crewlet-listbox-gap: 1px;
|
|
22289
22556
|
display: flex;
|
|
22290
22557
|
flex-direction: column;
|
|
22291
|
-
gap:
|
|
22558
|
+
gap: var(--crewlet-listbox-gap);
|
|
22292
22559
|
}
|
|
22293
22560
|
|
|
22294
22561
|
.crewlet-select__option {
|
|
@@ -22441,7 +22708,7 @@ svg.crewlet-select__chevron {
|
|
|
22441
22708
|
}
|
|
22442
22709
|
|
|
22443
22710
|
/* Narrowed and tinted for a pointer, as the text box's ring is. See Input.css. */
|
|
22444
|
-
:root[data-crewlet-focus='pointer'] .crewlet-select__search:focus-within {
|
|
22711
|
+
:where(:root[data-crewlet-focus='pointer']) .crewlet-select__search:focus-within {
|
|
22445
22712
|
outline-width: 1px;
|
|
22446
22713
|
outline-color: var(--color-border-selected);
|
|
22447
22714
|
}
|
|
@@ -22716,7 +22983,7 @@ svg.crewlet-select__chevron {
|
|
|
22716
22983
|
}
|
|
22717
22984
|
|
|
22718
22985
|
|
|
22719
|
-
/* SheetGrid-
|
|
22986
|
+
/* SheetGrid-XK7T7M34.css */
|
|
22720
22987
|
/*
|
|
22721
22988
|
* The editable sheet (SheetGrid.tsx) and its cells (cells.tsx).
|
|
22722
22989
|
*
|
|
@@ -23168,16 +23435,21 @@ svg.crewlet-select__chevron {
|
|
|
23168
23435
|
/* ADD COLUMN stands beside the header row, outside the grid's roles: the
|
|
23169
23436
|
scroller lays the grid and the control side by side, the grid's last track
|
|
23170
23437
|
still takes the slack up to the control, and the control sticks to the top
|
|
23171
|
-
with the header while the rows scroll under it.
|
|
23438
|
+
with the header while the rows scroll under it. Its track is the control's
|
|
23439
|
+
own square plus an inset on each side, so the square never fills the track
|
|
23440
|
+
edge to edge. THE GRID GROWS INTO WHATEVER THE CONTROL LEAVES rather than
|
|
23441
|
+
into a width assumed for it: held to 100% less an assumed width, it
|
|
23442
|
+
overflowed by the difference whenever the control drew wider, and the
|
|
23443
|
+
sheet scrolled sideways by a few pixels. */
|
|
23172
23444
|
.crewlet-sheet-grid__scroller--add-column {
|
|
23173
|
-
--crewlet-sheet-add-column-width: var(--size-
|
|
23445
|
+
--crewlet-sheet-add-column-width: calc(var(--size-control-sm) + 2 * var(--spacing-1));
|
|
23174
23446
|
display: flex;
|
|
23175
23447
|
align-items: flex-start;
|
|
23176
23448
|
}
|
|
23177
23449
|
|
|
23178
23450
|
.crewlet-sheet-grid__scroller--add-column > .crewlet-sheet-grid__grid {
|
|
23179
|
-
flex:
|
|
23180
|
-
min-width:
|
|
23451
|
+
flex: 1 0 auto;
|
|
23452
|
+
min-width: 0;
|
|
23181
23453
|
}
|
|
23182
23454
|
|
|
23183
23455
|
.crewlet-sheet-grid__add-column {
|
|
@@ -23572,7 +23844,7 @@ svg.crewlet-select__chevron {
|
|
|
23572
23844
|
}
|
|
23573
23845
|
|
|
23574
23846
|
|
|
23575
|
-
/* SidebarNav-
|
|
23847
|
+
/* SidebarNav-7SGUZYKK.css */
|
|
23576
23848
|
/*
|
|
23577
23849
|
* The rail's navigation.
|
|
23578
23850
|
*
|
|
@@ -23603,9 +23875,12 @@ svg.crewlet-select__chevron {
|
|
|
23603
23875
|
* old step, so the gap is paid for many times over by the row it sits beside.
|
|
23604
23876
|
*/
|
|
23605
23877
|
.crewlet-nav-group {
|
|
23878
|
+
--crewlet-nav-group-gap: calc(var(--spacing-1) / 2);
|
|
23879
|
+
/* What a row reaches across (HitArea.css): its own list's gap. */
|
|
23880
|
+
--crewlet-nav-row-gap: var(--crewlet-nav-group-gap);
|
|
23606
23881
|
display: flex;
|
|
23607
23882
|
flex-direction: column;
|
|
23608
|
-
gap:
|
|
23883
|
+
gap: var(--crewlet-nav-group-gap);
|
|
23609
23884
|
min-width: 0;
|
|
23610
23885
|
}
|
|
23611
23886
|
|
|
@@ -23750,6 +24025,20 @@ svg.crewlet-select__chevron {
|
|
|
23750
24025
|
transition:
|
|
23751
24026
|
background var(--motion-duration-fast) var(--motion-easing-default),
|
|
23752
24027
|
color var(--motion-duration-fast) var(--motion-easing-default);
|
|
24028
|
+
/* Half the gap to each neighbour, so the targets meet (HitArea.css). */
|
|
24029
|
+
--crewlet-hit-area-block: calc(var(--crewlet-nav-row-gap, 0px) / 2);
|
|
24030
|
+
}
|
|
24031
|
+
|
|
24032
|
+
/*
|
|
24033
|
+
* AN OPEN ROW AND ITS FIRST NESTED ROW ABUT, with no gap between them to
|
|
24034
|
+
* cross, so neither reaches into the other.
|
|
24035
|
+
*/
|
|
24036
|
+
.crewlet-nav-item:has(> .crewlet-nav-item__children:not([hidden])) > .crewlet-nav-item__head > .crewlet-nav-item__row {
|
|
24037
|
+
--crewlet-hit-area-block-end: 0px;
|
|
24038
|
+
}
|
|
24039
|
+
|
|
24040
|
+
.crewlet-nav-item__children > .crewlet-nav-item:first-child > .crewlet-nav-item__head > .crewlet-nav-item__row {
|
|
24041
|
+
--crewlet-hit-area-block-start: 0px;
|
|
23753
24042
|
}
|
|
23754
24043
|
|
|
23755
24044
|
.crewlet-nav-item__row:hover {
|
|
@@ -23961,9 +24250,11 @@ svg.crewlet-select__chevron {
|
|
|
23961
24250
|
* rail keeps for the one count that asks the reader to act.
|
|
23962
24251
|
*/
|
|
23963
24252
|
.crewlet-nav-item__children {
|
|
24253
|
+
--crewlet-nav-children-gap: var(--spacing-1);
|
|
24254
|
+
--crewlet-nav-row-gap: var(--crewlet-nav-children-gap);
|
|
23964
24255
|
display: flex;
|
|
23965
24256
|
flex-direction: column;
|
|
23966
|
-
gap: var(--
|
|
24257
|
+
gap: var(--crewlet-nav-children-gap);
|
|
23967
24258
|
margin-left: var(--size-nav-row-pad);
|
|
23968
24259
|
padding-left: var(--spacing-2);
|
|
23969
24260
|
border-left: 1px solid var(--color-border-default);
|
|
@@ -24995,7 +25286,7 @@ svg.crewlet-select__chevron {
|
|
|
24995
25286
|
}
|
|
24996
25287
|
|
|
24997
25288
|
|
|
24998
|
-
/* SourceEditor-
|
|
25289
|
+
/* SourceEditor-OKPWPFXK.css */
|
|
24999
25290
|
/*
|
|
25000
25291
|
* Source text written in place: a gutter of line numbers beside a real
|
|
25001
25292
|
* textarea, and the marks a checker placed drawn behind the text. The gutter,
|
|
@@ -25035,7 +25326,7 @@ svg.crewlet-select__chevron {
|
|
|
25035
25326
|
outline-offset: -1px;
|
|
25036
25327
|
}
|
|
25037
25328
|
|
|
25038
|
-
:root[data-crewlet-focus='pointer'] .crewlet-source-editor:has(.crewlet-source-editor__field:focus-visible) {
|
|
25329
|
+
:where(:root[data-crewlet-focus='pointer']) .crewlet-source-editor:has(.crewlet-source-editor__field:focus-visible) {
|
|
25039
25330
|
outline-width: 1px;
|
|
25040
25331
|
outline-color: var(--color-border-selected);
|
|
25041
25332
|
}
|
|
@@ -26665,7 +26956,7 @@ b.crewlet-switcher__match {
|
|
|
26665
26956
|
}
|
|
26666
26957
|
|
|
26667
26958
|
|
|
26668
|
-
/* Tabs-
|
|
26959
|
+
/* Tabs-WIF7457H.css */
|
|
26669
26960
|
/*
|
|
26670
26961
|
* The pill register: Tabs and SegmentedControl.
|
|
26671
26962
|
*
|
|
@@ -26696,8 +26987,9 @@ b.crewlet-switcher__match {
|
|
|
26696
26987
|
* row is reachable by the arrow keys either way.
|
|
26697
26988
|
*/
|
|
26698
26989
|
.crewlet-tabs--underline {
|
|
26990
|
+
--crewlet-tabs-gap: var(--spacing-2);
|
|
26699
26991
|
display: flex;
|
|
26700
|
-
gap: var(--
|
|
26992
|
+
gap: var(--crewlet-tabs-gap);
|
|
26701
26993
|
border-bottom: 1px solid var(--color-border-default);
|
|
26702
26994
|
position: relative;
|
|
26703
26995
|
width: 100%;
|
|
@@ -26771,8 +27063,9 @@ b.crewlet-switcher__match {
|
|
|
26771
27063
|
*/
|
|
26772
27064
|
.crewlet-tabs--pill {
|
|
26773
27065
|
--crewlet-tabs-pill-inset: 1px;
|
|
27066
|
+
--crewlet-tabs-gap: var(--crewlet-tabs-pill-inset);
|
|
26774
27067
|
|
|
26775
|
-
gap: var(--crewlet-tabs-
|
|
27068
|
+
gap: var(--crewlet-tabs-gap);
|
|
26776
27069
|
padding: var(--crewlet-tabs-pill-inset);
|
|
26777
27070
|
background: var(--color-surface-elevated);
|
|
26778
27071
|
border: 1px solid var(--color-border-default);
|
|
@@ -26833,6 +27126,20 @@ b.crewlet-switcher__match {
|
|
|
26833
27126
|
background-color var(--motion-duration-fast) var(--motion-easing-default),
|
|
26834
27127
|
color var(--motion-duration-fast) var(--motion-easing-default),
|
|
26835
27128
|
box-shadow var(--motion-duration-fast) var(--motion-easing-default);
|
|
27129
|
+
/* Half the gap to each neighbour, so the targets meet (HitArea.css). A row
|
|
27130
|
+
that wraps reaches across its rows' gap too. */
|
|
27131
|
+
--crewlet-hit-area-inline: calc(var(--crewlet-tabs-gap, 0px) / 2);
|
|
27132
|
+
--crewlet-hit-area-block: calc(var(--crewlet-tabs-row-gap, 0px) / 2);
|
|
27133
|
+
}
|
|
27134
|
+
|
|
27135
|
+
/* The row's two ends reach nothing past it: the underline row is a scroller,
|
|
27136
|
+
and a target past its last tab would be width it scrolls by. */
|
|
27137
|
+
.crewlet-tabs__tab:first-child {
|
|
27138
|
+
--crewlet-hit-area-inline-start: 0px;
|
|
27139
|
+
}
|
|
27140
|
+
|
|
27141
|
+
.crewlet-tabs__tab:last-child {
|
|
27142
|
+
--crewlet-hit-area-inline-end: 0px;
|
|
26836
27143
|
}
|
|
26837
27144
|
|
|
26838
27145
|
/*
|
|
@@ -26979,9 +27286,10 @@ b.crewlet-switcher__match {
|
|
|
26979
27286
|
* (FilterChip draws the same pair).
|
|
26980
27287
|
*/
|
|
26981
27288
|
.crewlet-tabs--chip {
|
|
27289
|
+
--crewlet-tabs-gap: calc(var(--spacing-1) / 2);
|
|
26982
27290
|
display: inline-flex;
|
|
26983
27291
|
align-items: center;
|
|
26984
|
-
gap:
|
|
27292
|
+
gap: var(--crewlet-tabs-gap);
|
|
26985
27293
|
}
|
|
26986
27294
|
|
|
26987
27295
|
.crewlet-tabs--chip .crewlet-tabs__tab {
|
|
@@ -27676,7 +27984,7 @@ b.crewlet-switcher__match {
|
|
|
27676
27984
|
}
|
|
27677
27985
|
|
|
27678
27986
|
|
|
27679
|
-
/* TagsInput-
|
|
27987
|
+
/* TagsInput-CLFHP6I2.css */
|
|
27680
27988
|
/*
|
|
27681
27989
|
* TagsInput: several values in one field.
|
|
27682
27990
|
*
|
|
@@ -27756,7 +28064,7 @@ b.crewlet-switcher__match {
|
|
|
27756
28064
|
}
|
|
27757
28065
|
|
|
27758
28066
|
/* Narrowed and tinted for a pointer, as the text box's ring is. See Input.css. */
|
|
27759
|
-
:root[data-crewlet-focus='pointer'] .crewlet-tags-input__box:focus-visible {
|
|
28067
|
+
:where(:root[data-crewlet-focus='pointer']) .crewlet-tags-input__box:focus-visible {
|
|
27760
28068
|
outline-width: 1px;
|
|
27761
28069
|
outline-color: var(--color-border-selected);
|
|
27762
28070
|
}
|
|
@@ -28406,7 +28714,7 @@ b.crewlet-switcher__match {
|
|
|
28406
28714
|
}
|
|
28407
28715
|
|
|
28408
28716
|
|
|
28409
|
-
/* TimeWindowPicker-
|
|
28717
|
+
/* TimeWindowPicker-I3HXC74I.css */
|
|
28410
28718
|
/*
|
|
28411
28719
|
* TimeWindowPicker: one trigger over one panel.
|
|
28412
28720
|
*
|
|
@@ -28461,8 +28769,8 @@ b.crewlet-switcher__match {
|
|
|
28461
28769
|
}
|
|
28462
28770
|
|
|
28463
28771
|
/* Narrowed and tinted for a pointer, as the text box's ring is. See Input.css. */
|
|
28464
|
-
:root[data-crewlet-focus='pointer'] .crewlet-time-window:focus-visible,
|
|
28465
|
-
:root[data-crewlet-focus='pointer'] .crewlet-time-window.is-open {
|
|
28772
|
+
:where(:root[data-crewlet-focus='pointer']) .crewlet-time-window:focus-visible,
|
|
28773
|
+
:where(:root[data-crewlet-focus='pointer']) .crewlet-time-window.is-open {
|
|
28466
28774
|
outline-width: 1px;
|
|
28467
28775
|
outline-color: var(--color-border-selected);
|
|
28468
28776
|
}
|
|
@@ -28739,7 +29047,7 @@ svg.crewlet-time-window__tick {
|
|
|
28739
29047
|
}
|
|
28740
29048
|
|
|
28741
29049
|
/* Narrowed and tinted for a pointer, as the text box's ring is. See Input.css. */
|
|
28742
|
-
:root[data-crewlet-focus='pointer'] .crewlet-time-window__masked:has(.crewlet-time-window__masked-input:focus-visible) {
|
|
29050
|
+
:where(:root[data-crewlet-focus='pointer']) .crewlet-time-window__masked:has(.crewlet-time-window__masked-input:focus-visible) {
|
|
28743
29051
|
outline-width: 1px;
|
|
28744
29052
|
outline-color: var(--color-border-selected);
|
|
28745
29053
|
}
|