@fangxinyan/lumina 0.6.3 → 0.6.4
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/dist/{Alert-QBKIDY5H.css → Alert-HVPI6L4V.css} +2 -2
- package/dist/Alert.cjs +3 -3
- package/dist/Alert.js +2 -2
- package/dist/{AppShell-RCALXUCZ.css → AppShell-FZCD4C56.css} +4 -4
- package/dist/AppShell.cjs +5 -5
- package/dist/AppShell.js +1 -1
- package/dist/{AutoComplete-P5KZMZO5.css → AutoComplete-4YZBMW4E.css} +2 -2
- package/dist/AutoComplete.cjs +5 -5
- package/dist/AutoComplete.js +4 -4
- package/dist/{Avatar-R5A4AFKZ.css → Avatar-TNPOHVY5.css} +1 -1
- package/dist/Avatar.cjs +2 -2
- package/dist/Avatar.js +1 -1
- package/dist/Badge.cjs +2 -2
- package/dist/Badge.js +1 -1
- package/dist/{Button-4Z3Q6KII.css → Button-TUMZUQLI.css} +11 -11
- package/dist/Button.cjs +3 -3
- package/dist/Button.js +2 -2
- package/dist/{Calendar-LHZELUDL.css → Calendar-RUTPKREW.css} +4 -4
- package/dist/Calendar.cjs +3 -3
- package/dist/Calendar.js +2 -2
- package/dist/{Card-6RMVIHWX.css → Card-MA6SV7D5.css} +6 -6
- package/dist/Card.cjs +2 -2
- package/dist/Card.js +1 -1
- package/dist/{Cascader-3BLLA7EN.css → Cascader-ANEQUPMI.css} +8 -8
- package/dist/Cascader.cjs +5 -5
- package/dist/Cascader.js +4 -4
- package/dist/{Checkbox-U5EUDSYS.css → Checkbox-EDNPZRIP.css} +3 -3
- package/dist/Checkbox.cjs +3 -3
- package/dist/Checkbox.js +2 -2
- package/dist/{Collapse-66U5YJFY.css → Collapse-UNBHEPYP.css} +2 -2
- package/dist/Collapse.cjs +3 -3
- package/dist/Collapse.js +2 -2
- package/dist/{ColorPicker-SDDQGHCM.css → ColorPicker-LPG6QPYF.css} +7 -7
- package/dist/ColorPicker.cjs +2 -2
- package/dist/ColorPicker.js +1 -1
- package/dist/{CommandPalette-T45DBMPY.css → CommandPalette-RTKWNH2D.css} +3 -3
- package/dist/CommandPalette.cjs +5 -5
- package/dist/CommandPalette.js +4 -4
- package/dist/{ContextMenu-FKW6CQW4.css → ContextMenu-WRR2SSWL.css} +3 -3
- package/dist/ContextMenu.cjs +2 -2
- package/dist/ContextMenu.js +1 -1
- package/dist/{Divider-OEE4Q2KS.css → Divider-RPQCVH3J.css} +2 -2
- package/dist/Divider.cjs +2 -2
- package/dist/Divider.js +1 -1
- package/dist/{Drawer-IPGB4CXH.css → Drawer-7N3URAJ6.css} +8 -5
- package/dist/Drawer.cjs +3 -3
- package/dist/Drawer.js +2 -2
- package/dist/{Empty-DC2LPORC.css → Empty-CZTRZMZQ.css} +1 -1
- package/dist/Empty.cjs +2 -2
- package/dist/Empty.js +1 -1
- package/dist/{Form-5GRVZNDO.css → Form-NGCQWTMZ.css} +1 -1
- package/dist/Form.cjs +4 -4
- package/dist/Form.js +1 -1
- package/dist/Icon.cjs +49 -49
- package/dist/Icon.js +1 -1
- package/dist/{Image-MRYQCRQ5.css → Image-SGSRTHQX.css} +5 -5
- package/dist/Image.cjs +6 -6
- package/dist/Image.js +2 -2
- package/dist/{Input-HUBJ55OH.css → Input-7GDPGP3E.css} +12 -12
- package/dist/Input.cjs +5 -5
- package/dist/Input.js +3 -3
- package/dist/InputNumber.cjs +5 -5
- package/dist/InputNumber.js +4 -4
- package/dist/{List-W5BW4D2P.css → List-LSMU5QAC.css} +3 -3
- package/dist/List.cjs +2 -2
- package/dist/List.js +1 -1
- package/dist/{Message-2MZ3LFPU.css → Message-H222YGR6.css} +1 -1
- package/dist/Message.cjs +6 -6
- package/dist/Message.js +2 -2
- package/dist/{Modal-2QNDW4SO.css → Modal-MCFDYVUQ.css} +3 -3
- package/dist/Modal.cjs +4 -4
- package/dist/Modal.js +3 -3
- package/dist/{Pagination-YIRYJUXP.css → Pagination-YSZSNFHG.css} +5 -5
- package/dist/Pagination.cjs +7 -7
- package/dist/Pagination.js +6 -6
- package/dist/{Popover-DVGQGWX6.css → Popover-Y3LDCJPW.css} +1 -1
- package/dist/Popover.cjs +2 -2
- package/dist/Popover.js +1 -1
- package/dist/{Progress-CHV7DN6Y.css → Progress-CZNXCYGW.css} +1 -1
- package/dist/Progress.cjs +2 -2
- package/dist/Progress.js +1 -1
- package/dist/{Radio-GVFDPAZM.css → Radio-IQKASYDF.css} +4 -4
- package/dist/Radio.cjs +3 -3
- package/dist/Radio.js +1 -1
- package/dist/{Select-Z5VYPEEY.css → Select-YZ2NUJSX.css} +18 -18
- package/dist/Select.cjs +6 -6
- package/dist/Select.js +5 -5
- package/dist/Skeleton.cjs +2 -2
- package/dist/Skeleton.js +1 -1
- package/dist/{Slider-3JKA5EW6.css → Slider-UM2IZZBH.css} +7 -7
- package/dist/Slider.cjs +2 -2
- package/dist/Slider.js +1 -1
- package/dist/{Spin-3GJNMSIH.css → Spin-GONGPV4Q.css} +1 -1
- package/dist/Spin.cjs +2 -2
- package/dist/Spin.js +1 -1
- package/dist/Splitter.cjs +2 -2
- package/dist/Splitter.js +1 -1
- package/dist/{StatusBar-CDS2GPSI.css → StatusBar-FJKEEPXU.css} +3 -7
- package/dist/StatusBar.cjs +3 -3
- package/dist/StatusBar.js +1 -1
- package/dist/Surface-UDDN3DGL.css +42 -0
- package/dist/Surface.cjs +16 -0
- package/dist/Surface.d.cts +60 -0
- package/dist/Surface.d.ts +60 -0
- package/dist/Surface.js +3 -0
- package/dist/{Switch-36KJNDXM.css → Switch-COAQIOMH.css} +8 -5
- package/dist/Switch.cjs +2 -2
- package/dist/Switch.js +1 -1
- package/dist/{Table-ATJJQLKU.css → Table-IYJTPY6J.css} +16 -16
- package/dist/Table.cjs +9 -9
- package/dist/Table.js +8 -8
- package/dist/{TablePro-3XVHYLSL.css → TablePro-JRSBPXB5.css} +1 -1
- package/dist/TablePro.cjs +10 -10
- package/dist/TablePro.js +9 -9
- package/dist/{Tabs-BLSNI2T5.css → Tabs-X5U5PCPV.css} +2 -2
- package/dist/Tabs.cjs +2 -2
- package/dist/Tabs.js +1 -1
- package/dist/{Tag-HDYCDPFS.css → Tag-G2XWAL7A.css} +1 -1
- package/dist/Tag.cjs +3 -3
- package/dist/Tag.js +2 -2
- package/dist/{Textarea-YNET7IBH.css → Textarea-YHWKHIFE.css} +3 -3
- package/dist/Textarea.cjs +4 -4
- package/dist/Textarea.js +2 -2
- package/dist/Theme.cjs +11 -11
- package/dist/Theme.d.cts +5 -1
- package/dist/Theme.d.ts +5 -1
- package/dist/Theme.js +1 -1
- package/dist/ThemePanel-76LB3YA5.css +509 -0
- package/dist/ThemePanel.cjs +29 -0
- package/dist/ThemePanel.d.cts +80 -0
- package/dist/ThemePanel.d.ts +80 -0
- package/dist/ThemePanel.js +12 -0
- package/dist/{Timeline-3ZHOHPXT.css → Timeline-ZIM7QFQC.css} +1 -1
- package/dist/Timeline.cjs +3 -3
- package/dist/Timeline.js +2 -2
- package/dist/{Tooltip-DMKUPC24.css → Tooltip-WI23DSRQ.css} +1 -1
- package/dist/Tooltip.cjs +2 -2
- package/dist/Tooltip.js +1 -1
- package/dist/{Typography-NKPWTJCV.css → Typography-GQNIJ4XD.css} +5 -5
- package/dist/Typography.cjs +7 -7
- package/dist/Typography.js +2 -2
- package/dist/{chunk-DWAN57G4.js → chunk-2NT5QKEX.js} +3 -3
- package/dist/{chunk-6BWELOCT.js → chunk-2SCXQ7QS.js} +2 -2
- package/dist/{chunk-TP567B3L.cjs → chunk-2ZADGBUN.cjs} +5 -5
- package/dist/{chunk-CETNCRZ4.js → chunk-2ZFJTMEF.js} +4 -4
- package/dist/{chunk-I5WTQ5Y3.js → chunk-3YP7CBJT.js} +3 -3
- package/dist/{chunk-UUHFKIWP.cjs → chunk-4UKM4KAC.cjs} +2 -2
- package/dist/{chunk-HLFH5HWR.js → chunk-56PHETWO.js} +3 -3
- package/dist/{chunk-R2TEDH2F.cjs → chunk-5JPAUQ5H.cjs} +7 -7
- package/dist/{chunk-MPVCYU2K.cjs → chunk-5NFSDFBB.cjs} +4 -4
- package/dist/{chunk-P6P4DGLF.cjs → chunk-66GXZQKL.cjs} +4 -4
- package/dist/{chunk-QP3VCSRY.cjs → chunk-66T76GII.cjs} +6 -6
- package/dist/chunk-6EOSMK34.cjs +194 -0
- package/dist/{chunk-WNM5RVXR.cjs → chunk-6GQPF3EI.cjs} +2 -2
- package/dist/{chunk-V272XR3F.cjs → chunk-6LARTGLP.cjs} +1 -1
- package/dist/chunk-6SPMHY54.js +191 -0
- package/dist/{chunk-YLIQ37KY.cjs → chunk-6XVLERA3.cjs} +2 -2
- package/dist/{chunk-FBYUZOZP.js → chunk-7D76MI37.js} +5 -5
- package/dist/{chunk-J5ZGYQZK.js → chunk-7NZ2A4MA.js} +155 -29
- package/dist/{chunk-KLEKKZ73.js → chunk-7ZNGHWVS.js} +1 -1
- package/dist/{chunk-7AG524YZ.cjs → chunk-ACQSRMLF.cjs} +5 -5
- package/dist/{chunk-JVUVOR6S.js → chunk-AJH2O4WC.js} +3 -3
- package/dist/{chunk-ET6DYQVZ.js → chunk-BCFCSVGJ.js} +3 -3
- package/dist/{chunk-NTS5L4NQ.cjs → chunk-BJ6WUVEG.cjs} +4 -4
- package/dist/{chunk-S3VXH5L4.cjs → chunk-C24W6PTJ.cjs} +2 -2
- package/dist/{chunk-GMN74OEY.cjs → chunk-CBKJXKVI.cjs} +2 -2
- package/dist/{chunk-FWPBORRB.js → chunk-CEZ2DR4R.js} +3 -3
- package/dist/{chunk-SQGPSMSK.js → chunk-CNGKJYGZ.js} +3 -3
- package/dist/{chunk-PULGVK2I.cjs → chunk-D5PCIVID.cjs} +4 -4
- package/dist/{chunk-DG5VQ6BO.cjs → chunk-D64IPDUE.cjs} +4 -4
- package/dist/{chunk-VFFIE2VO.cjs → chunk-DYHNOYRC.cjs} +7 -7
- package/dist/{chunk-P6EZG2R7.cjs → chunk-DYSGXQUK.cjs} +7 -7
- package/dist/{chunk-3YJU3D5S.cjs → chunk-F3LHLYX6.cjs} +2 -2
- package/dist/{chunk-H4LGWZMH.cjs → chunk-GBKUGKIY.cjs} +11 -11
- package/dist/{chunk-J2HZTJO6.js → chunk-GUZ2DNDC.js} +3 -3
- package/dist/{chunk-K6F25JXT.js → chunk-GZCU6HXD.js} +2 -2
- package/dist/{chunk-USQ43DJ5.js → chunk-HFUHQUPQ.js} +2 -2
- package/dist/{chunk-7JN6FJ55.js → chunk-HU7T64Y3.js} +2 -2
- package/dist/{chunk-X5GCOMC3.cjs → chunk-IDJCFYPP.cjs} +15 -15
- package/dist/{chunk-KD4YYIIO.cjs → chunk-IHK2FRTS.cjs} +2 -2
- package/dist/{chunk-Q5SZIU7Z.cjs → chunk-JFQ53MO4.cjs} +1 -1
- package/dist/{chunk-7PQJCLIR.js → chunk-KMG7OMOS.js} +2 -2
- package/dist/{chunk-2HQCUBA7.cjs → chunk-L27C5O4W.cjs} +4 -4
- package/dist/chunk-LFTCK2VM.cjs +1194 -0
- package/dist/{chunk-BVQ77VRY.js → chunk-LI4XJTEA.js} +3 -3
- package/dist/{chunk-45VJGBGN.js → chunk-LQLOOUS3.js} +2 -2
- package/dist/{chunk-PL6DRFUO.cjs → chunk-MOMLQP7B.cjs} +2 -2
- package/dist/{chunk-OF7JIYBY.cjs → chunk-MYHBC3HA.cjs} +2 -2
- package/dist/{chunk-LKK2AA7W.js → chunk-MYRLCN6V.js} +2 -2
- package/dist/{chunk-ZKE73UQF.cjs → chunk-N2BTMKF2.cjs} +5 -5
- package/dist/{chunk-6ZXQJRAT.cjs → chunk-N2COYOXE.cjs} +155 -29
- package/dist/{chunk-2TL37AP5.cjs → chunk-N3OLFKV5.cjs} +1 -1
- package/dist/{chunk-5JSDQ6QQ.cjs → chunk-NDO22RER.cjs} +2 -2
- package/dist/{chunk-ME5BZ2WA.js → chunk-NE7IUGMK.js} +3 -3
- package/dist/{chunk-F6RYCBQG.js → chunk-NFXHIO3G.js} +1 -1
- package/dist/chunk-NJCHFXGC.js +1170 -0
- package/dist/chunk-NT6CJYI3.cjs +129 -0
- package/dist/chunk-O43DOE7V.js +106 -0
- package/dist/{chunk-GNEZD7KE.cjs → chunk-O4BOBOYV.cjs} +2 -2
- package/dist/{chunk-XSN4TLN5.cjs → chunk-OGPDCBPD.cjs} +12 -12
- package/dist/{chunk-6YQTMI55.js → chunk-OHFZ7L4T.js} +2 -2
- package/dist/{chunk-7IYKKLV3.js → chunk-OHIFKN4E.js} +4 -4
- package/dist/{chunk-46VXFTEC.js → chunk-OQU3TJCF.js} +3 -3
- package/dist/{chunk-5TKC6IEN.js → chunk-PEJLXJQD.js} +1 -1
- package/dist/{chunk-HWFM4MAT.js → chunk-PKHITACT.js} +2 -2
- package/dist/{chunk-JCEHZ336.js → chunk-PNZJFLMY.js} +3 -3
- package/dist/{chunk-XRR3CYQL.js → chunk-QP7RXZES.js} +2 -2
- package/dist/{chunk-5MN3PMF4.cjs → chunk-QY76WTO5.cjs} +9 -9
- package/dist/{chunk-FGW5GJ22.cjs → chunk-R74TZKJS.cjs} +4 -4
- package/dist/{chunk-TGL5BGMR.js → chunk-REMJWNAT.js} +4 -4
- package/dist/{chunk-SWBWZIL4.cjs → chunk-S6OKX4H7.cjs} +2 -2
- package/dist/{chunk-EC4WGEAJ.js → chunk-SABWUELE.js} +2 -2
- package/dist/{chunk-QKQHZIF3.cjs → chunk-SG42F5VB.cjs} +2 -2
- package/dist/{chunk-5C2AI2SD.js → chunk-SQIWPU6V.js} +2 -2
- package/dist/{chunk-5DKRY67M.cjs → chunk-SYWTT5TY.cjs} +5 -5
- package/dist/{chunk-OBEKX4VR.js → chunk-TVUBGXWA.js} +2 -2
- package/dist/{chunk-7PNJI5UE.cjs → chunk-U2H4DRMV.cjs} +2 -2
- package/dist/{chunk-HKF2V5MM.cjs → chunk-VAXWWJJP.cjs} +9 -9
- package/dist/{chunk-5H5YP2TB.js → chunk-VNNQYJLT.js} +3 -3
- package/dist/{chunk-KGSADAOD.cjs → chunk-VSUMJX6Z.cjs} +2 -2
- package/dist/{chunk-K5IGFBDR.js → chunk-W5CJC7S7.js} +3 -3
- package/dist/{chunk-AXZ7ELMA.js → chunk-WEJKY3DF.js} +2 -2
- package/dist/{chunk-GIZU3H6H.js → chunk-WXWFMWWF.js} +3 -3
- package/dist/{chunk-TEEFR2FD.js → chunk-XHQGMMH7.js} +2 -2
- package/dist/{chunk-UKS23N3L.js → chunk-XVP7IKLZ.js} +4 -4
- package/dist/{chunk-ELNT3CFO.js → chunk-Y5F7ZTBH.js} +2 -2
- package/dist/{chunk-QCILPZWP.js → chunk-YJEXAO2I.js} +2 -2
- package/dist/{chunk-7ABFUIOB.cjs → chunk-YNCDTKAE.cjs} +2 -2
- package/dist/{chunk-K7FV7W6U.cjs → chunk-YSCIMHOI.cjs} +5 -5
- package/dist/{chunk-BPOOVO5T.js → chunk-YSXD344H.js} +5 -5
- package/dist/{chunk-47VG2P34.js → chunk-YT5NLCRC.js} +1 -1
- package/dist/{chunk-HZSIUOCN.cjs → chunk-YUKXNWVE.cjs} +1 -1
- package/dist/{chunk-65FIH5A3.js → chunk-YVTLHTG6.js} +2 -2
- package/dist/{chunk-GENABQYA.cjs → chunk-Z4PZ2ZHI.cjs} +2 -2
- package/dist/{chunk-6HMTV6P4.cjs → chunk-ZPKHGKVL.cjs} +4 -4
- package/dist/{chunk-AAGF7K3L.js → chunk-ZPP7LTHP.js} +3 -3
- package/dist/{chunk-IZOHYJUQ.cjs → chunk-ZWCDB5PP.cjs} +2 -2
- package/dist/index.cjs +214 -191
- package/dist/index.d.cts +3 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.js +49 -46
- package/dist/styles.css +677 -168
- package/dist/{tokens-BIIUTPKN.css → tokens-EF34LSWI.css} +42 -17
- package/dist/tokens.css +42 -17
- package/docs/llms/surface.md +90 -0
- package/docs/llms/theme.md +24 -2
- package/docs/llms/themepanel.md +128 -0
- package/docs/llms.md +3 -1
- package/package.json +1 -1
package/dist/styles.css
CHANGED
|
@@ -20,42 +20,52 @@
|
|
|
20
20
|
|
|
21
21
|
/* Distance multiplier — driven by ThemeProvider `intensity` (1..10 → 0.4..1.6). */
|
|
22
22
|
--d: 1;
|
|
23
|
+
--shadow-scale: 1;
|
|
24
|
+
--shadow-float-scale: 1;
|
|
23
25
|
|
|
24
|
-
--shadow-blur: calc(16px * var(--d));
|
|
25
|
-
--shadow-offset: calc(6px * var(--d));
|
|
26
|
-
--shadow-inset-blur: calc(10px * var(--d));
|
|
27
|
-
--shadow-inset-offset: calc(4px * var(--d));
|
|
26
|
+
--shadow-blur: calc(16px * var(--d) * var(--shadow-scale));
|
|
27
|
+
--shadow-offset: calc(6px * var(--d) * var(--shadow-scale));
|
|
28
|
+
--shadow-inset-blur: calc(10px * var(--d) * var(--shadow-scale));
|
|
29
|
+
--shadow-inset-offset: calc(4px * var(--d) * var(--shadow-scale));
|
|
28
30
|
|
|
29
|
-
--neu-
|
|
31
|
+
--neu-shadow-panel:
|
|
30
32
|
var(--shadow-offset) var(--shadow-offset) var(--shadow-blur) var(--shadow-dark),
|
|
31
33
|
calc(var(--shadow-offset) * -1) calc(var(--shadow-offset) * -1) var(--shadow-blur) var(--shadow-light);
|
|
32
34
|
|
|
33
|
-
--neu-
|
|
35
|
+
--neu-shadow-control:
|
|
34
36
|
calc(var(--shadow-offset) * 0.5) calc(var(--shadow-offset) * 0.5) calc(var(--shadow-blur) * 0.6) var(--shadow-dark),
|
|
35
37
|
calc(var(--shadow-offset) * -0.5) calc(var(--shadow-offset) * -0.5) calc(var(--shadow-blur) * 0.6) var(--shadow-light);
|
|
36
38
|
|
|
37
|
-
--neu-
|
|
39
|
+
--neu-shadow-lift:
|
|
38
40
|
calc(var(--shadow-offset) * 1.6) calc(var(--shadow-offset) * 1.6) calc(var(--shadow-blur) * 1.4) var(--shadow-dark),
|
|
39
41
|
calc(var(--shadow-offset) * -1.6) calc(var(--shadow-offset) * -1.6) calc(var(--shadow-blur) * 1.4) var(--shadow-light);
|
|
40
42
|
|
|
41
|
-
--neu-
|
|
43
|
+
--neu-shadow-inset-strong:
|
|
42
44
|
inset var(--shadow-inset-offset) var(--shadow-inset-offset) var(--shadow-inset-blur) var(--shadow-dark),
|
|
43
45
|
inset calc(var(--shadow-inset-offset) * -1) calc(var(--shadow-inset-offset) * -1) var(--shadow-inset-blur) var(--shadow-light);
|
|
44
46
|
|
|
45
|
-
--neu-
|
|
47
|
+
--neu-shadow-inset:
|
|
46
48
|
inset calc(var(--shadow-inset-offset) * 0.6) calc(var(--shadow-inset-offset) * 0.6) calc(var(--shadow-inset-blur) * 0.6) var(--shadow-dark),
|
|
47
49
|
inset calc(var(--shadow-inset-offset) * -0.6) calc(var(--shadow-inset-offset) * -0.6) calc(var(--shadow-inset-blur) * 0.6) var(--shadow-light);
|
|
48
50
|
|
|
49
|
-
--neu-
|
|
51
|
+
--neu-shadow-subtle:
|
|
50
52
|
1px 1px 2px var(--shadow-dark),
|
|
51
53
|
-1px -1px 2px var(--shadow-light);
|
|
52
54
|
|
|
53
55
|
/* Floating-overlay elevation.
|
|
54
56
|
No top-left highlight — there's no continuous surface beneath an overlay
|
|
55
57
|
panel, so the neumorphic light-reflection metaphor would read as a halo. */
|
|
56
|
-
--neu-float:
|
|
57
|
-
0 calc(var(--shadow-offset) * 1.8) calc(var(--shadow-blur) * 2.2) var(--shadow-dark),
|
|
58
|
-
0 calc(var(--shadow-offset) * 0.4) calc(var(--shadow-blur) * 0.7) var(--shadow-dark);
|
|
58
|
+
--neu-shadow-float:
|
|
59
|
+
0 calc(var(--shadow-offset) * 1.8 * var(--shadow-float-scale)) calc(var(--shadow-blur) * 2.2 * var(--shadow-float-scale)) var(--shadow-dark),
|
|
60
|
+
0 calc(var(--shadow-offset) * 0.4 * var(--shadow-float-scale)) calc(var(--shadow-blur) * 0.7 * var(--shadow-float-scale)) var(--shadow-dark);
|
|
61
|
+
|
|
62
|
+
--neu-out: var(--neu-shadow-panel);
|
|
63
|
+
--neu-out-sm: var(--neu-shadow-control);
|
|
64
|
+
--neu-out-lg: var(--neu-shadow-lift);
|
|
65
|
+
--neu-in: var(--neu-shadow-inset-strong);
|
|
66
|
+
--neu-in-sm: var(--neu-shadow-inset);
|
|
67
|
+
--neu-flat: var(--neu-shadow-subtle);
|
|
68
|
+
--neu-float: var(--neu-shadow-float);
|
|
59
69
|
|
|
60
70
|
/* ---- Accent (default sky) ---- */
|
|
61
71
|
--accent: oklch(68% 0.14 235);
|
|
@@ -89,7 +99,13 @@
|
|
|
89
99
|
|
|
90
100
|
/* ---- Control sizes (density) ---- */
|
|
91
101
|
--ctrl-h: 40px;
|
|
102
|
+
--ctrl-h-sm: 30px;
|
|
103
|
+
--ctrl-h-lg: 52px;
|
|
104
|
+
--field-h-sm: 32px;
|
|
105
|
+
--field-h-lg: 48px;
|
|
92
106
|
--ctrl-pad-x: 18px;
|
|
107
|
+
--ctrl-pad-x-sm: 12px;
|
|
108
|
+
--ctrl-pad-x-lg: 24px;
|
|
93
109
|
|
|
94
110
|
/* ---- Type ---- */
|
|
95
111
|
--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC",
|
|
@@ -97,6 +113,11 @@
|
|
|
97
113
|
"Noto Sans CJK SC", sans-serif;
|
|
98
114
|
--font-mono: ui-monospace, "SF Mono", "JetBrains Mono", Consolas, monospace;
|
|
99
115
|
--font-display: "SF Pro Display", var(--font-sans);
|
|
116
|
+
--fs-xs: 11px;
|
|
117
|
+
--fs-sm: 12px;
|
|
118
|
+
--fs-md: 13px;
|
|
119
|
+
--fs-lg: 14px;
|
|
120
|
+
--fs-xl: 15px;
|
|
100
121
|
|
|
101
122
|
/* ---- Motion ---- */
|
|
102
123
|
--ease: cubic-bezier(0.22, 0.61, 0.36, 1);
|
|
@@ -122,13 +143,17 @@
|
|
|
122
143
|
--shadow-dark: rgba(0, 0, 0, 0.55);
|
|
123
144
|
--shadow-light: rgba(130, 145, 180, 0.06);
|
|
124
145
|
/* 同时收紧阴影尺寸,深色模式下拟态更内敛 */
|
|
125
|
-
--shadow-offset: calc(4px * var(--d));
|
|
126
|
-
--shadow-blur: calc(10px * var(--d));
|
|
127
|
-
--shadow-inset-offset: calc(3px * var(--d));
|
|
128
|
-
--shadow-inset-blur: calc(7px * var(--d));
|
|
146
|
+
--shadow-offset: calc(4px * var(--d) * var(--shadow-scale));
|
|
147
|
+
--shadow-blur: calc(10px * var(--d) * var(--shadow-scale));
|
|
148
|
+
--shadow-inset-offset: calc(3px * var(--d) * var(--shadow-scale));
|
|
149
|
+
--shadow-inset-blur: calc(7px * var(--d) * var(--shadow-scale));
|
|
129
150
|
--accent-soft: oklch(35% 0.06 235);
|
|
130
151
|
--accent-ink: oklch(82% 0.09 235);
|
|
131
152
|
--accent-glow: oklch(68% 0.14 235 / 0.18);
|
|
153
|
+
--info: oklch(78% 0.12 235);
|
|
154
|
+
--success: oklch(78% 0.14 150);
|
|
155
|
+
--warning: oklch(82% 0.14 75);
|
|
156
|
+
--danger: oklch(76% 0.16 25);
|
|
132
157
|
}
|
|
133
158
|
/* 深色模式的 accent-glow 统一降低强度,避免按钮外圈过亮 */
|
|
134
159
|
[data-theme="dark"][data-accent="sky"] { --accent-soft: oklch(35% 0.08 235); --accent-ink: oklch(82% 0.10 235); --accent-glow: oklch(68% 0.14 235 / 0.18); }
|
|
@@ -221,12 +246,12 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
221
246
|
padding: 0 var(--ctrl-pad-x);
|
|
222
247
|
border: 1px solid transparent;
|
|
223
248
|
border-radius: var(--r-md);
|
|
224
|
-
font-size:
|
|
249
|
+
font-size: var(--fs-md);
|
|
225
250
|
font-weight: 500;
|
|
226
251
|
font-family: inherit;
|
|
227
252
|
color: var(--fg);
|
|
228
253
|
background: var(--bg);
|
|
229
|
-
box-shadow: var(--neu-
|
|
254
|
+
box-shadow: var(--neu-shadow-control);
|
|
230
255
|
cursor: pointer;
|
|
231
256
|
user-select: none;
|
|
232
257
|
white-space: nowrap;
|
|
@@ -268,12 +293,12 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
268
293
|
}
|
|
269
294
|
.btn.danger { color: var(--danger); }
|
|
270
295
|
.btn:hover {
|
|
271
|
-
box-shadow: var(--neu-
|
|
296
|
+
box-shadow: var(--neu-shadow-panel);
|
|
272
297
|
}
|
|
273
298
|
.btn.ghost:hover {
|
|
274
299
|
background: var(--bg);
|
|
275
300
|
border-color: transparent;
|
|
276
|
-
box-shadow: var(--neu-
|
|
301
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
277
302
|
color: var(--fg);
|
|
278
303
|
}
|
|
279
304
|
.btn.danger:hover {
|
|
@@ -281,7 +306,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
281
306
|
}
|
|
282
307
|
.btn:active,
|
|
283
308
|
.btn.pressed {
|
|
284
|
-
box-shadow: var(--neu-
|
|
309
|
+
box-shadow: var(--neu-shadow-inset-strong);
|
|
285
310
|
}
|
|
286
311
|
.btn.ghost:active,
|
|
287
312
|
.btn.ghost.pressed {
|
|
@@ -293,23 +318,23 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
293
318
|
color: var(--danger);
|
|
294
319
|
}
|
|
295
320
|
.btn.icon { width: var(--ctrl-h); padding: 0; }
|
|
296
|
-
.btn.sm { height:
|
|
297
|
-
.btn.sm.icon { width:
|
|
298
|
-
.btn.lg { height:
|
|
299
|
-
.btn.lg.icon { width:
|
|
321
|
+
.btn.sm { height: var(--ctrl-h-sm); padding: 0 var(--ctrl-pad-x-sm); font-size: var(--fs-sm); border-radius: var(--r-sm); }
|
|
322
|
+
.btn.sm.icon { width: var(--ctrl-h-sm); padding: 0; }
|
|
323
|
+
.btn.lg { height: var(--ctrl-h-lg); padding: 0 var(--ctrl-pad-x-lg); font-size: var(--fs-xl); border-radius: var(--r-lg); }
|
|
324
|
+
.btn.lg.icon { width: var(--ctrl-h-lg); padding: 0; }
|
|
300
325
|
.btn.block { width: 100%; flex-shrink: 1; }
|
|
301
326
|
.btn[disabled], .btn.disabled, .btn:disabled {
|
|
302
327
|
color: var(--fg-subtle);
|
|
303
328
|
cursor: not-allowed;
|
|
304
329
|
border-color: transparent;
|
|
305
|
-
box-shadow: var(--neu-
|
|
330
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
306
331
|
transform: none;
|
|
307
332
|
}
|
|
308
333
|
.btn[disabled]:hover, .btn:disabled:hover, .btn.disabled:hover {
|
|
309
334
|
color: var(--fg-subtle);
|
|
310
335
|
background: var(--bg);
|
|
311
336
|
border-color: transparent;
|
|
312
|
-
box-shadow: var(--neu-
|
|
337
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
313
338
|
transform: none;
|
|
314
339
|
}
|
|
315
340
|
.btn.loading { cursor: wait; }
|
|
@@ -329,7 +354,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
329
354
|
width: 100%;
|
|
330
355
|
}
|
|
331
356
|
.input-count {
|
|
332
|
-
font-size:
|
|
357
|
+
font-size: var(--fs-xs);
|
|
333
358
|
color: var(--fg-subtle);
|
|
334
359
|
font-variant-numeric: tabular-nums;
|
|
335
360
|
text-align: right;
|
|
@@ -343,14 +368,14 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
343
368
|
padding: 0 var(--ctrl-pad-x);
|
|
344
369
|
border-radius: var(--r-md);
|
|
345
370
|
background: var(--bg);
|
|
346
|
-
box-shadow: var(--neu-
|
|
371
|
+
box-shadow: var(--neu-shadow-inset);
|
|
347
372
|
transition: box-shadow var(--dur) var(--ease);
|
|
348
373
|
gap: 8px;
|
|
349
374
|
}
|
|
350
|
-
.input-wrap.sm { height:
|
|
351
|
-
.input-wrap.lg { height:
|
|
352
|
-
.input-wrap:focus-within { box-shadow: var(--neu-
|
|
353
|
-
.input-wrap.invalid { box-shadow: var(--neu-
|
|
375
|
+
.input-wrap.sm { height: var(--field-h-sm); padding: 0 var(--ctrl-pad-x-sm); border-radius: var(--r-sm); gap: 6px; }
|
|
376
|
+
.input-wrap.lg { height: var(--field-h-lg); padding: 0 var(--ctrl-pad-x); border-radius: var(--r-lg); gap: 10px; }
|
|
377
|
+
.input-wrap:focus-within { box-shadow: var(--neu-shadow-inset), 0 0 0 2px var(--accent-glow); }
|
|
378
|
+
.input-wrap.invalid { box-shadow: var(--neu-shadow-inset), 0 0 0 2px color-mix(in oklch, var(--danger) 30%, transparent); }
|
|
354
379
|
.input-wrap.disabled { opacity: 0.6; cursor: not-allowed; }
|
|
355
380
|
.input-wrap .lead,
|
|
356
381
|
.input-wrap .trail {
|
|
@@ -377,13 +402,13 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
377
402
|
display: inline-flex;
|
|
378
403
|
align-items: center;
|
|
379
404
|
color: var(--fg-muted);
|
|
380
|
-
font-size:
|
|
405
|
+
font-size: var(--fs-md);
|
|
381
406
|
white-space: nowrap;
|
|
382
407
|
user-select: none;
|
|
383
408
|
flex-shrink: 0;
|
|
384
409
|
}
|
|
385
|
-
.input-wrap.sm .input-affix { font-size:
|
|
386
|
-
.input-wrap.lg .input-affix { font-size:
|
|
410
|
+
.input-wrap.sm .input-affix { font-size: var(--fs-sm); }
|
|
411
|
+
.input-wrap.lg .input-affix { font-size: var(--fs-lg); }
|
|
387
412
|
.input-wrap .input-clear {
|
|
388
413
|
display: inline-flex;
|
|
389
414
|
align-items: center;
|
|
@@ -424,12 +449,12 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
424
449
|
background: transparent;
|
|
425
450
|
box-shadow: none;
|
|
426
451
|
color: var(--fg);
|
|
427
|
-
font-size:
|
|
452
|
+
font-size: var(--fs-md);
|
|
428
453
|
font-family: inherit;
|
|
429
454
|
outline: none;
|
|
430
455
|
}
|
|
431
|
-
.input-wrap.sm > .input { font-size:
|
|
432
|
-
.input-wrap.lg > .input { font-size:
|
|
456
|
+
.input-wrap.sm > .input { font-size: var(--fs-sm); }
|
|
457
|
+
.input-wrap.lg > .input { font-size: var(--fs-lg); }
|
|
433
458
|
.input-wrap > .input::placeholder { color: var(--fg-subtle); }
|
|
434
459
|
.input-wrap.disabled > .input { cursor: not-allowed; }
|
|
435
460
|
/* ============ Textarea ============ */
|
|
@@ -472,7 +497,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
472
497
|
border: none;
|
|
473
498
|
border-radius: var(--r-md);
|
|
474
499
|
background: var(--bg);
|
|
475
|
-
box-shadow: var(--neu-
|
|
500
|
+
box-shadow: var(--neu-shadow-inset);
|
|
476
501
|
color: var(--fg);
|
|
477
502
|
font-size: 13px;
|
|
478
503
|
font-family: inherit;
|
|
@@ -481,8 +506,8 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
481
506
|
outline: none;
|
|
482
507
|
transition: box-shadow var(--dur) var(--ease);
|
|
483
508
|
}
|
|
484
|
-
.textarea:focus { box-shadow: var(--neu-
|
|
485
|
-
.textarea.invalid { box-shadow: var(--neu-
|
|
509
|
+
.textarea:focus { box-shadow: var(--neu-shadow-inset), 0 0 0 2px var(--accent-glow); }
|
|
510
|
+
.textarea.invalid { box-shadow: var(--neu-shadow-inset), 0 0 0 2px color-mix(in oklch, var(--danger) 30%, transparent); }
|
|
486
511
|
.textarea::placeholder { color: var(--fg-subtle); }
|
|
487
512
|
/* ============ Switch ============ */
|
|
488
513
|
.switch {
|
|
@@ -505,7 +530,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
505
530
|
padding: 0;
|
|
506
531
|
border-radius: 999px;
|
|
507
532
|
background: var(--bg);
|
|
508
|
-
box-shadow: var(--neu-
|
|
533
|
+
box-shadow: var(--neu-shadow-inset);
|
|
509
534
|
cursor: inherit;
|
|
510
535
|
flex-shrink: 0;
|
|
511
536
|
transition: all var(--dur) var(--ease);
|
|
@@ -513,9 +538,9 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
513
538
|
.switch.sm { --w: 36px; --h: 20px; }
|
|
514
539
|
.switch.lg { --w: 58px; --h: 32px; }
|
|
515
540
|
/* When checkedChildren / unCheckedChildren are present, widen the track to fit. */
|
|
516
|
-
.switch.with-children { --w:
|
|
517
|
-
.switch.with-children.sm { --w:
|
|
518
|
-
.switch.with-children.lg { --w:
|
|
541
|
+
.switch.with-children { --w: 72px; }
|
|
542
|
+
.switch.with-children.sm { --w: 60px; }
|
|
543
|
+
.switch.with-children.lg { --w: 86px; }
|
|
519
544
|
.switch-thumb {
|
|
520
545
|
position: absolute;
|
|
521
546
|
top: 3px;
|
|
@@ -524,7 +549,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
524
549
|
height: calc(var(--h) - 6px);
|
|
525
550
|
border-radius: 999px;
|
|
526
551
|
background: var(--bg-raised);
|
|
527
|
-
box-shadow: var(--neu-
|
|
552
|
+
box-shadow: var(--neu-shadow-control);
|
|
528
553
|
transition: all var(--dur) var(--ease);
|
|
529
554
|
z-index: 1;
|
|
530
555
|
}
|
|
@@ -552,6 +577,9 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
552
577
|
display: inline-flex;
|
|
553
578
|
align-items: center;
|
|
554
579
|
justify-content: center;
|
|
580
|
+
min-width: 0;
|
|
581
|
+
overflow: hidden;
|
|
582
|
+
white-space: nowrap;
|
|
555
583
|
transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease);
|
|
556
584
|
}
|
|
557
585
|
/* Checked label sits on the left side of the track (thumb pushes right). */
|
|
@@ -591,7 +619,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
591
619
|
padding: 0;
|
|
592
620
|
border-radius: 7px;
|
|
593
621
|
background: var(--bg);
|
|
594
|
-
box-shadow: var(--neu-
|
|
622
|
+
box-shadow: var(--neu-shadow-inset);
|
|
595
623
|
display: grid;
|
|
596
624
|
place-items: center;
|
|
597
625
|
flex-shrink: 0;
|
|
@@ -602,12 +630,12 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
602
630
|
.checkbox-box svg { opacity: 0; transform: scale(0.6); transition: all var(--dur) var(--ease); }
|
|
603
631
|
.checkbox.checked .checkbox-box {
|
|
604
632
|
background: var(--accent);
|
|
605
|
-
box-shadow: var(--neu-
|
|
633
|
+
box-shadow: var(--neu-shadow-control), 0 2px 8px var(--accent-glow);
|
|
606
634
|
}
|
|
607
635
|
.checkbox.checked .checkbox-box svg { opacity: 1; transform: scale(1); }
|
|
608
636
|
.checkbox.indeterminate .checkbox-box {
|
|
609
637
|
background: var(--accent);
|
|
610
|
-
box-shadow: var(--neu-
|
|
638
|
+
box-shadow: var(--neu-shadow-control), 0 2px 8px var(--accent-glow);
|
|
611
639
|
}
|
|
612
640
|
.checkbox.indeterminate .checkbox-box::after {
|
|
613
641
|
content: "";
|
|
@@ -633,7 +661,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
633
661
|
padding: 0;
|
|
634
662
|
border-radius: 999px;
|
|
635
663
|
background: var(--bg);
|
|
636
|
-
box-shadow: var(--neu-
|
|
664
|
+
box-shadow: var(--neu-shadow-inset);
|
|
637
665
|
cursor: inherit;
|
|
638
666
|
position: relative;
|
|
639
667
|
flex-shrink: 0;
|
|
@@ -641,7 +669,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
641
669
|
}
|
|
642
670
|
.radio.checked .radio-dot {
|
|
643
671
|
background: var(--accent);
|
|
644
|
-
box-shadow: var(--neu-
|
|
672
|
+
box-shadow: var(--neu-shadow-control), 0 2px 8px var(--accent-glow);
|
|
645
673
|
}
|
|
646
674
|
.radio.checked .radio-dot::after {
|
|
647
675
|
content: "";
|
|
@@ -661,7 +689,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
661
689
|
padding: 4px;
|
|
662
690
|
border-radius: var(--r-md);
|
|
663
691
|
background: var(--bg);
|
|
664
|
-
box-shadow: var(--neu-
|
|
692
|
+
box-shadow: var(--neu-shadow-inset);
|
|
665
693
|
gap: 2px;
|
|
666
694
|
flex-wrap: nowrap;
|
|
667
695
|
}
|
|
@@ -693,7 +721,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
693
721
|
left: 0;
|
|
694
722
|
border-radius: calc(var(--r-md) - 4px);
|
|
695
723
|
background: var(--bg);
|
|
696
|
-
box-shadow: var(--neu-
|
|
724
|
+
box-shadow: var(--neu-shadow-control);
|
|
697
725
|
pointer-events: none;
|
|
698
726
|
transition:
|
|
699
727
|
transform var(--dur-slow) var(--ease),
|
|
@@ -732,7 +760,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
732
760
|
height: 10px;
|
|
733
761
|
border-radius: 999px;
|
|
734
762
|
background: var(--bg);
|
|
735
|
-
box-shadow: var(--neu-
|
|
763
|
+
box-shadow: var(--neu-shadow-inset);
|
|
736
764
|
touch-action: none;
|
|
737
765
|
z-index: 1;
|
|
738
766
|
}
|
|
@@ -751,7 +779,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
751
779
|
width: 22px; height: 22px;
|
|
752
780
|
border-radius: 999px;
|
|
753
781
|
background: var(--bg-raised);
|
|
754
|
-
box-shadow: var(--neu-
|
|
782
|
+
box-shadow: var(--neu-shadow-control);
|
|
755
783
|
transform: translate(-50%, -50%);
|
|
756
784
|
transition: all var(--dur-fast) var(--ease);
|
|
757
785
|
display: grid; place-items: center;
|
|
@@ -766,7 +794,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
766
794
|
background: var(--slider-thumb-color, var(--accent));
|
|
767
795
|
}
|
|
768
796
|
.slider-thumb:focus-visible {
|
|
769
|
-
box-shadow: var(--neu-
|
|
797
|
+
box-shadow: var(--neu-shadow-control), 0 0 0 3px var(--accent-glow);
|
|
770
798
|
}
|
|
771
799
|
.slider:hover .slider-thumb { transform: translate(-50%, -50%) scale(1.08); }
|
|
772
800
|
.slider-value {
|
|
@@ -779,13 +807,13 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
779
807
|
/* Tone variants */
|
|
780
808
|
.slider.success .slider-thumb { --slider-thumb-color: var(--success); }
|
|
781
809
|
.slider.success .slider-fill { background: linear-gradient(90deg, color-mix(in oklch, var(--success) 70%, white), var(--success)); box-shadow: 0 0 10px color-mix(in oklch, var(--success) 35%, transparent); }
|
|
782
|
-
.slider.success .slider-thumb:focus-visible { box-shadow: var(--neu-
|
|
810
|
+
.slider.success .slider-thumb:focus-visible { box-shadow: var(--neu-shadow-control), 0 0 0 3px color-mix(in oklch, var(--success) 35%, transparent); }
|
|
783
811
|
.slider.warning .slider-thumb { --slider-thumb-color: var(--warning); }
|
|
784
812
|
.slider.warning .slider-fill { background: linear-gradient(90deg, color-mix(in oklch, var(--warning) 70%, white), var(--warning)); box-shadow: 0 0 10px color-mix(in oklch, var(--warning) 35%, transparent); }
|
|
785
|
-
.slider.warning .slider-thumb:focus-visible { box-shadow: var(--neu-
|
|
813
|
+
.slider.warning .slider-thumb:focus-visible { box-shadow: var(--neu-shadow-control), 0 0 0 3px color-mix(in oklch, var(--warning) 35%, transparent); }
|
|
786
814
|
.slider.danger .slider-thumb { --slider-thumb-color: var(--danger); }
|
|
787
815
|
.slider.danger .slider-fill { background: linear-gradient(90deg, color-mix(in oklch, var(--danger) 70%, white), var(--danger)); box-shadow: 0 0 10px color-mix(in oklch, var(--danger) 35%, transparent); }
|
|
788
|
-
.slider.danger .slider-thumb:focus-visible { box-shadow: var(--neu-
|
|
816
|
+
.slider.danger .slider-thumb:focus-visible { box-shadow: var(--neu-shadow-control), 0 0 0 3px color-mix(in oklch, var(--danger) 35%, transparent); }
|
|
789
817
|
/* Marks */
|
|
790
818
|
.slider-marks {
|
|
791
819
|
position: absolute;
|
|
@@ -811,7 +839,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
811
839
|
width: 6px; height: 6px;
|
|
812
840
|
border-radius: 999px;
|
|
813
841
|
background: var(--bg);
|
|
814
|
-
box-shadow: var(--neu-
|
|
842
|
+
box-shadow: var(--neu-shadow-inset);
|
|
815
843
|
position: absolute;
|
|
816
844
|
top: -12px;
|
|
817
845
|
left: 50%;
|
|
@@ -868,7 +896,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
868
896
|
color-mix(in oklch, var(--bg) 88%, var(--shadow-light)),
|
|
869
897
|
color-mix(in oklch, var(--bg) 92%, var(--shadow-dark))
|
|
870
898
|
);
|
|
871
|
-
box-shadow: var(--neu-
|
|
899
|
+
box-shadow: var(--neu-shadow-inset);
|
|
872
900
|
overflow: hidden;
|
|
873
901
|
position: relative;
|
|
874
902
|
}
|
|
@@ -917,7 +945,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
917
945
|
font-size: 11px;
|
|
918
946
|
font-weight: 500;
|
|
919
947
|
background: var(--bg);
|
|
920
|
-
box-shadow: var(--neu-
|
|
948
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
921
949
|
color: var(--fg-muted);
|
|
922
950
|
}
|
|
923
951
|
.tag.accent { color: var(--accent-ink); }
|
|
@@ -976,7 +1004,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
976
1004
|
width: var(--size); height: var(--size);
|
|
977
1005
|
border-radius: 999px;
|
|
978
1006
|
background: var(--bg);
|
|
979
|
-
box-shadow: var(--neu-
|
|
1007
|
+
box-shadow: var(--neu-shadow-control);
|
|
980
1008
|
display: grid; place-items: center;
|
|
981
1009
|
overflow: hidden;
|
|
982
1010
|
color: var(--accent-ink);
|
|
@@ -1026,7 +1054,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1026
1054
|
.divider.sunken {
|
|
1027
1055
|
background: transparent;
|
|
1028
1056
|
height: 2px;
|
|
1029
|
-
box-shadow: var(--neu-
|
|
1057
|
+
box-shadow: var(--neu-shadow-inset);
|
|
1030
1058
|
}
|
|
1031
1059
|
.divider.sunken.vertical {
|
|
1032
1060
|
width: 2px;
|
|
@@ -1034,7 +1062,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1034
1062
|
}
|
|
1035
1063
|
.divider.sunken:has(.divider-label) { background: transparent; box-shadow: none; }
|
|
1036
1064
|
.divider.sunken:has(.divider-label)::before,
|
|
1037
|
-
.divider.sunken:has(.divider-label)::after { height: 2px; background: transparent; box-shadow: var(--neu-
|
|
1065
|
+
.divider.sunken:has(.divider-label)::after { height: 2px; background: transparent; box-shadow: var(--neu-shadow-inset); }
|
|
1038
1066
|
/* ---- Dashed variant ---- */
|
|
1039
1067
|
.divider.dashed {
|
|
1040
1068
|
background: transparent;
|
|
@@ -1090,11 +1118,11 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1090
1118
|
.card {
|
|
1091
1119
|
background: var(--bg);
|
|
1092
1120
|
border-radius: var(--r-lg);
|
|
1093
|
-
box-shadow: var(--neu-
|
|
1121
|
+
box-shadow: var(--neu-shadow-panel);
|
|
1094
1122
|
padding: var(--gap-5);
|
|
1095
1123
|
}
|
|
1096
|
-
.card.flat { box-shadow: var(--neu-
|
|
1097
|
-
.card.sunken { box-shadow: var(--neu-
|
|
1124
|
+
.card.flat { box-shadow: var(--neu-shadow-subtle); }
|
|
1125
|
+
.card.sunken { box-shadow: var(--neu-shadow-inset-strong); }
|
|
1098
1126
|
.card.pad-none { padding: 0; }
|
|
1099
1127
|
.card.pad-sm { padding: var(--gap-3); }
|
|
1100
1128
|
.card.pad-lg { padding: var(--gap-6); }
|
|
@@ -1104,10 +1132,10 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1104
1132
|
}
|
|
1105
1133
|
.card.hoverable:hover {
|
|
1106
1134
|
transform: translateY(-3px);
|
|
1107
|
-
box-shadow: var(--neu-
|
|
1135
|
+
box-shadow: var(--neu-shadow-lift);
|
|
1108
1136
|
}
|
|
1109
|
-
.card.hoverable.flat:hover { box-shadow: var(--neu-
|
|
1110
|
-
.card.hoverable.sunken:hover { box-shadow: var(--neu-
|
|
1137
|
+
.card.hoverable.flat:hover { box-shadow: var(--neu-shadow-control); }
|
|
1138
|
+
.card.hoverable.sunken:hover { box-shadow: var(--neu-shadow-panel); }
|
|
1111
1139
|
.card-head {
|
|
1112
1140
|
display: flex; align-items: flex-start; justify-content: space-between;
|
|
1113
1141
|
gap: var(--gap-3); margin-bottom: var(--gap-4);
|
|
@@ -1117,6 +1145,42 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1117
1145
|
.card-desc { font-size: 12px; color: var(--fg-muted); }
|
|
1118
1146
|
.card-actions { display: flex; gap: 6px; }
|
|
1119
1147
|
.card-body { font-size: 13px; }
|
|
1148
|
+
/* ============ Surface ============ */
|
|
1149
|
+
.surface {
|
|
1150
|
+
position: relative;
|
|
1151
|
+
box-sizing: border-box;
|
|
1152
|
+
min-width: 0;
|
|
1153
|
+
color: var(--fg);
|
|
1154
|
+
background: var(--bg);
|
|
1155
|
+
border-radius: var(--r-lg);
|
|
1156
|
+
}
|
|
1157
|
+
.surface.tone-raised { background: var(--bg-raised); }
|
|
1158
|
+
.surface.tone-sunken { background: var(--bg-sunken); }
|
|
1159
|
+
.surface.tone-accent {
|
|
1160
|
+
color: var(--accent-ink);
|
|
1161
|
+
background: var(--accent-soft);
|
|
1162
|
+
}
|
|
1163
|
+
.surface.plain { box-shadow: none; }
|
|
1164
|
+
.surface.raised { box-shadow: var(--neu-shadow-panel); }
|
|
1165
|
+
.surface.sunken { box-shadow: var(--neu-shadow-inset-strong); }
|
|
1166
|
+
.surface.floating { box-shadow: var(--neu-shadow-float); }
|
|
1167
|
+
.surface.bordered { border: 1px solid var(--border); }
|
|
1168
|
+
.surface.pad-none { padding: 0; }
|
|
1169
|
+
.surface.pad-sm { padding: var(--gap-3); }
|
|
1170
|
+
.surface.pad-md { padding: var(--gap-5); }
|
|
1171
|
+
.surface.pad-lg { padding: var(--gap-8); }
|
|
1172
|
+
.surface.pad-xl { padding: var(--gap-10); }
|
|
1173
|
+
.surface.radius-none { border-radius: 0; }
|
|
1174
|
+
.surface.radius-sm { border-radius: var(--r-sm); }
|
|
1175
|
+
.surface.radius-md { border-radius: var(--r-md); }
|
|
1176
|
+
.surface.radius-lg { border-radius: var(--r-lg); }
|
|
1177
|
+
.surface.radius-xl { border-radius: var(--r-xl); }
|
|
1178
|
+
.surface.height-content { min-height: 0; }
|
|
1179
|
+
.surface.height-fill { min-height: 100%; }
|
|
1180
|
+
.surface.height-screen { min-height: 100vh; }
|
|
1181
|
+
.surface.scrollable { overflow: auto; }
|
|
1182
|
+
.surface > *:first-child { margin-top: 0; }
|
|
1183
|
+
.surface > *:last-child { margin-bottom: 0; }
|
|
1120
1184
|
/* ============ Tabs ============ */
|
|
1121
1185
|
.tabs { display: flex; flex-direction: column; gap: var(--gap-3); }
|
|
1122
1186
|
.tabs-nav {
|
|
@@ -1124,7 +1188,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1124
1188
|
padding: 5px;
|
|
1125
1189
|
border-radius: var(--r-md);
|
|
1126
1190
|
background: var(--bg);
|
|
1127
|
-
box-shadow: var(--neu-
|
|
1191
|
+
box-shadow: var(--neu-shadow-inset);
|
|
1128
1192
|
gap: 2px;
|
|
1129
1193
|
align-self: flex-start;
|
|
1130
1194
|
}
|
|
@@ -1147,7 +1211,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1147
1211
|
.tabs-nav .tab.active {
|
|
1148
1212
|
color: var(--accent-ink);
|
|
1149
1213
|
background: var(--bg);
|
|
1150
|
-
box-shadow: var(--neu-
|
|
1214
|
+
box-shadow: var(--neu-shadow-control);
|
|
1151
1215
|
font-weight: 600;
|
|
1152
1216
|
}
|
|
1153
1217
|
.tabs-nav .tab[disabled] { opacity: 0.4; cursor: not-allowed; }
|
|
@@ -1187,7 +1251,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1187
1251
|
.collapse-item {
|
|
1188
1252
|
background: var(--bg);
|
|
1189
1253
|
border-radius: var(--r-md);
|
|
1190
|
-
box-shadow: var(--neu-
|
|
1254
|
+
box-shadow: var(--neu-shadow-control);
|
|
1191
1255
|
overflow: hidden;
|
|
1192
1256
|
}
|
|
1193
1257
|
.collapse.ghost .collapse-item {
|
|
@@ -1233,7 +1297,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1233
1297
|
padding: 2px;
|
|
1234
1298
|
}
|
|
1235
1299
|
.collapse-chev.clickable { cursor: pointer; }
|
|
1236
|
-
.collapse-chev.clickable:hover { color: var(--fg); background: var(--bg); box-shadow: var(--neu-
|
|
1300
|
+
.collapse-chev.clickable:hover { color: var(--fg); background: var(--bg); box-shadow: var(--neu-shadow-subtle); }
|
|
1237
1301
|
.collapse-item.open .collapse-chev { transform: rotate(180deg); color: var(--accent); }
|
|
1238
1302
|
/* ============ Select ============ */
|
|
1239
1303
|
.select {
|
|
@@ -1251,11 +1315,11 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1251
1315
|
border: none;
|
|
1252
1316
|
border-radius: var(--r-md);
|
|
1253
1317
|
background: var(--bg);
|
|
1254
|
-
box-shadow: var(--neu-
|
|
1318
|
+
box-shadow: var(--neu-shadow-control);
|
|
1255
1319
|
display: inline-flex;
|
|
1256
1320
|
align-items: center;
|
|
1257
1321
|
gap: 8px;
|
|
1258
|
-
font-size:
|
|
1322
|
+
font-size: var(--fs-md);
|
|
1259
1323
|
font-family: inherit;
|
|
1260
1324
|
color: var(--fg);
|
|
1261
1325
|
cursor: pointer;
|
|
@@ -1301,15 +1365,15 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1301
1365
|
height: 18px;
|
|
1302
1366
|
}
|
|
1303
1367
|
.select.invalid .select-trigger {
|
|
1304
|
-
box-shadow: var(--neu-
|
|
1368
|
+
box-shadow: var(--neu-shadow-control), 0 0 0 2px color-mix(in oklch, var(--danger) 30%, transparent);
|
|
1305
1369
|
}
|
|
1306
1370
|
.select.invalid.open .select-trigger {
|
|
1307
|
-
box-shadow: var(--neu-
|
|
1371
|
+
box-shadow: var(--neu-shadow-inset), 0 0 0 2px color-mix(in oklch, var(--danger) 30%, transparent);
|
|
1308
1372
|
}
|
|
1309
|
-
.select.sm .select-trigger { height:
|
|
1310
|
-
.select.lg .select-trigger { height:
|
|
1373
|
+
.select.sm .select-trigger { height: var(--ctrl-h-sm); padding: 0 32px 0 var(--ctrl-pad-x-sm); font-size: var(--fs-sm); border-radius: var(--r-sm); }
|
|
1374
|
+
.select.lg .select-trigger { height: var(--field-h-lg); padding: 0 36px 0 var(--ctrl-pad-x); font-size: var(--fs-lg); border-radius: var(--r-lg); }
|
|
1311
1375
|
.select-trigger:hover { color: var(--accent-ink); }
|
|
1312
|
-
.select.open .select-trigger { box-shadow: var(--neu-
|
|
1376
|
+
.select.open .select-trigger { box-shadow: var(--neu-shadow-inset); color: var(--accent-ink); }
|
|
1313
1377
|
.select-trigger .placeholder { color: var(--fg-subtle); }
|
|
1314
1378
|
.select-caret {
|
|
1315
1379
|
position: absolute;
|
|
@@ -1357,7 +1421,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1357
1421
|
height: 20px;
|
|
1358
1422
|
border-radius: 999px;
|
|
1359
1423
|
background: var(--bg);
|
|
1360
|
-
box-shadow: var(--neu-
|
|
1424
|
+
box-shadow: var(--neu-shadow-control);
|
|
1361
1425
|
display: inline-grid;
|
|
1362
1426
|
place-items: center;
|
|
1363
1427
|
cursor: pointer;
|
|
@@ -1367,14 +1431,14 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1367
1431
|
z-index: 1;
|
|
1368
1432
|
}
|
|
1369
1433
|
.select:hover .select-clear { opacity: 1; }
|
|
1370
|
-
.select-clear:hover { color: var(--accent-ink); box-shadow: var(--neu-
|
|
1434
|
+
.select-clear:hover { color: var(--accent-ink); box-shadow: var(--neu-shadow-inset); }
|
|
1371
1435
|
/* Multi-select menu: leading checkbox per item */
|
|
1372
1436
|
.menu-check {
|
|
1373
1437
|
width: 16px;
|
|
1374
1438
|
height: 16px;
|
|
1375
1439
|
border-radius: 5px;
|
|
1376
1440
|
background: var(--bg);
|
|
1377
|
-
box-shadow: var(--neu-
|
|
1441
|
+
box-shadow: var(--neu-shadow-inset);
|
|
1378
1442
|
display: inline-grid;
|
|
1379
1443
|
place-items: center;
|
|
1380
1444
|
flex-shrink: 0;
|
|
@@ -1383,7 +1447,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1383
1447
|
}
|
|
1384
1448
|
.menu-check.on {
|
|
1385
1449
|
background: var(--accent);
|
|
1386
|
-
box-shadow: var(--neu-
|
|
1450
|
+
box-shadow: var(--neu-shadow-control), 0 1px 4px var(--accent-glow);
|
|
1387
1451
|
}
|
|
1388
1452
|
/* Menu search — flush with menu, single subtle separator (no nested frame) */
|
|
1389
1453
|
.menu-search {
|
|
@@ -1401,7 +1465,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1401
1465
|
justify-content: center;
|
|
1402
1466
|
gap: 10px;
|
|
1403
1467
|
padding: 26px 12px;
|
|
1404
|
-
font-size:
|
|
1468
|
+
font-size: var(--fs-sm);
|
|
1405
1469
|
color: var(--fg-muted);
|
|
1406
1470
|
}
|
|
1407
1471
|
.menu-state .menu-state-ico {
|
|
@@ -1409,7 +1473,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1409
1473
|
height: 40px;
|
|
1410
1474
|
border-radius: var(--r-md);
|
|
1411
1475
|
background: var(--bg);
|
|
1412
|
-
box-shadow: var(--neu-
|
|
1476
|
+
box-shadow: var(--neu-shadow-inset);
|
|
1413
1477
|
display: grid;
|
|
1414
1478
|
place-items: center;
|
|
1415
1479
|
color: var(--fg-subtle);
|
|
@@ -1439,7 +1503,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1439
1503
|
text-overflow: ellipsis;
|
|
1440
1504
|
}
|
|
1441
1505
|
.menu-item-desc {
|
|
1442
|
-
font-size:
|
|
1506
|
+
font-size: var(--fs-xs);
|
|
1443
1507
|
color: var(--fg-subtle);
|
|
1444
1508
|
white-space: nowrap;
|
|
1445
1509
|
overflow: hidden;
|
|
@@ -1449,7 +1513,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1449
1513
|
/* Keyboard / hover highlight — soft raised pill */
|
|
1450
1514
|
.menu-item.highlight:not([disabled]) {
|
|
1451
1515
|
background: var(--bg);
|
|
1452
|
-
box-shadow: var(--neu-
|
|
1516
|
+
box-shadow: var(--neu-shadow-control);
|
|
1453
1517
|
color: var(--accent-ink);
|
|
1454
1518
|
}
|
|
1455
1519
|
.menu-item[disabled] {
|
|
@@ -1459,7 +1523,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1459
1523
|
.menu {
|
|
1460
1524
|
background: var(--bg);
|
|
1461
1525
|
border-radius: var(--r-md);
|
|
1462
|
-
box-shadow: var(--neu-float);
|
|
1526
|
+
box-shadow: var(--neu-shadow-float);
|
|
1463
1527
|
padding: 6px;
|
|
1464
1528
|
min-width: 180px;
|
|
1465
1529
|
z-index: 1000;
|
|
@@ -1470,7 +1534,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1470
1534
|
.menu-item {
|
|
1471
1535
|
padding: 9px 12px;
|
|
1472
1536
|
border-radius: var(--r-sm);
|
|
1473
|
-
font-size:
|
|
1537
|
+
font-size: var(--fs-md);
|
|
1474
1538
|
cursor: pointer;
|
|
1475
1539
|
color: var(--fg);
|
|
1476
1540
|
display: flex;
|
|
@@ -1483,7 +1547,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1483
1547
|
width: 100%;
|
|
1484
1548
|
text-align: left;
|
|
1485
1549
|
}
|
|
1486
|
-
.menu-item:hover { background: var(--bg); box-shadow: var(--neu-
|
|
1550
|
+
.menu-item:hover { background: var(--bg); box-shadow: var(--neu-shadow-subtle); color: var(--accent-ink); }
|
|
1487
1551
|
.menu-item.active { color: var(--accent-ink); font-weight: 500; }
|
|
1488
1552
|
.menu-item .tick { margin-left: auto; color: var(--accent); opacity: 0; }
|
|
1489
1553
|
.menu-item.active .tick { opacity: 1; }
|
|
@@ -1514,7 +1578,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1514
1578
|
.modal {
|
|
1515
1579
|
background: var(--bg);
|
|
1516
1580
|
border-radius: var(--r-xl);
|
|
1517
|
-
box-shadow: var(--neu-float);
|
|
1581
|
+
box-shadow: var(--neu-shadow-float);
|
|
1518
1582
|
padding: var(--gap-6);
|
|
1519
1583
|
width: min(480px, 92vw);
|
|
1520
1584
|
animation: modalIn var(--dur-slow) var(--ease);
|
|
@@ -1567,7 +1631,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1567
1631
|
.modal-close:hover {
|
|
1568
1632
|
color: var(--fg);
|
|
1569
1633
|
background: var(--bg);
|
|
1570
|
-
box-shadow: var(--neu-
|
|
1634
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
1571
1635
|
}
|
|
1572
1636
|
.modal-static-body {
|
|
1573
1637
|
display: flex;
|
|
@@ -1582,7 +1646,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1582
1646
|
place-items: center;
|
|
1583
1647
|
flex-shrink: 0;
|
|
1584
1648
|
background: var(--bg);
|
|
1585
|
-
box-shadow: var(--neu-
|
|
1649
|
+
box-shadow: var(--neu-shadow-inset);
|
|
1586
1650
|
color: var(--accent);
|
|
1587
1651
|
}
|
|
1588
1652
|
.modal-static-icon.success { color: var(--success); }
|
|
@@ -1612,6 +1676,9 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1612
1676
|
overflow-y: auto;
|
|
1613
1677
|
display: flex;
|
|
1614
1678
|
flex-direction: column;
|
|
1679
|
+
--drawer-shadow-offset: calc(var(--shadow-offset) * 4 * var(--shadow-float-scale));
|
|
1680
|
+
--drawer-shadow-blur: calc(var(--shadow-blur) * 3.75 * var(--shadow-float-scale));
|
|
1681
|
+
--drawer-shadow-spread: calc(var(--shadow-offset) * -3.3 * var(--shadow-float-scale));
|
|
1615
1682
|
}
|
|
1616
1683
|
.drawer.hidden {
|
|
1617
1684
|
display: none;
|
|
@@ -1620,25 +1687,25 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1620
1687
|
top: 0; right: 0; bottom: 0;
|
|
1621
1688
|
width: min(420px, 92vw);
|
|
1622
1689
|
animation: drawerInRight var(--dur-slow) var(--ease);
|
|
1623
|
-
box-shadow: -
|
|
1690
|
+
box-shadow: calc(var(--drawer-shadow-offset) * -1) 0 var(--drawer-shadow-blur) var(--drawer-shadow-spread) var(--shadow-dark);
|
|
1624
1691
|
}
|
|
1625
1692
|
.drawer.left {
|
|
1626
1693
|
top: 0; left: 0; bottom: 0;
|
|
1627
1694
|
width: min(420px, 92vw);
|
|
1628
1695
|
animation: drawerInLeft var(--dur-slow) var(--ease);
|
|
1629
|
-
box-shadow:
|
|
1696
|
+
box-shadow: var(--drawer-shadow-offset) 0 var(--drawer-shadow-blur) var(--drawer-shadow-spread) var(--shadow-dark);
|
|
1630
1697
|
}
|
|
1631
1698
|
.drawer.top {
|
|
1632
1699
|
top: 0; left: 0; right: 0;
|
|
1633
1700
|
height: min(320px, 80vh);
|
|
1634
1701
|
animation: drawerInTop var(--dur-slow) var(--ease);
|
|
1635
|
-
box-shadow: 0
|
|
1702
|
+
box-shadow: 0 var(--drawer-shadow-offset) var(--drawer-shadow-blur) var(--drawer-shadow-spread) var(--shadow-dark);
|
|
1636
1703
|
}
|
|
1637
1704
|
.drawer.bottom {
|
|
1638
1705
|
bottom: 0; left: 0; right: 0;
|
|
1639
1706
|
height: min(320px, 80vh);
|
|
1640
1707
|
animation: drawerInBottom var(--dur-slow) var(--ease);
|
|
1641
|
-
box-shadow: 0 -
|
|
1708
|
+
box-shadow: 0 calc(var(--drawer-shadow-offset) * -1) var(--drawer-shadow-blur) var(--drawer-shadow-spread) var(--shadow-dark);
|
|
1642
1709
|
}
|
|
1643
1710
|
@keyframes drawerInRight { from { transform: translateX( 20px); opacity: 0; } }
|
|
1644
1711
|
@keyframes drawerInLeft { from { transform: translateX(-20px); opacity: 0; } }
|
|
@@ -1676,7 +1743,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1676
1743
|
.drawer-close:hover {
|
|
1677
1744
|
color: var(--fg);
|
|
1678
1745
|
background: var(--bg);
|
|
1679
|
-
box-shadow: var(--neu-
|
|
1746
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
1680
1747
|
}
|
|
1681
1748
|
.drawer-body {
|
|
1682
1749
|
flex: 1;
|
|
@@ -1703,7 +1770,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1703
1770
|
font-size: 11px;
|
|
1704
1771
|
font-weight: 500;
|
|
1705
1772
|
white-space: nowrap;
|
|
1706
|
-
box-shadow: var(--neu-
|
|
1773
|
+
box-shadow: var(--neu-shadow-control);
|
|
1707
1774
|
pointer-events: none;
|
|
1708
1775
|
animation: fadeIn var(--dur) var(--ease);
|
|
1709
1776
|
z-index: 1000;
|
|
@@ -1725,7 +1792,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1725
1792
|
.message {
|
|
1726
1793
|
background: var(--bg);
|
|
1727
1794
|
border-radius: var(--r-md);
|
|
1728
|
-
box-shadow: var(--neu-float);
|
|
1795
|
+
box-shadow: var(--neu-shadow-float);
|
|
1729
1796
|
padding: 12px 16px;
|
|
1730
1797
|
min-width: 240px;
|
|
1731
1798
|
display: flex; align-items: center; gap: 10px;
|
|
@@ -1759,7 +1826,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1759
1826
|
background: var(--bg);
|
|
1760
1827
|
border-radius: var(--r-md);
|
|
1761
1828
|
min-width: 220px;
|
|
1762
|
-
box-shadow: var(--neu-float);
|
|
1829
|
+
box-shadow: var(--neu-shadow-float);
|
|
1763
1830
|
position: relative;
|
|
1764
1831
|
}
|
|
1765
1832
|
/*
|
|
@@ -1852,7 +1919,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1852
1919
|
padding: 14px 16px;
|
|
1853
1920
|
border-radius: var(--r-md);
|
|
1854
1921
|
background: var(--bg);
|
|
1855
|
-
box-shadow: var(--neu-
|
|
1922
|
+
box-shadow: var(--neu-shadow-inset);
|
|
1856
1923
|
position: relative;
|
|
1857
1924
|
}
|
|
1858
1925
|
.alert-ico {
|
|
@@ -1894,12 +1961,12 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1894
1961
|
cursor: pointer;
|
|
1895
1962
|
border: none; background: transparent;
|
|
1896
1963
|
}
|
|
1897
|
-
.alert-close:hover { color: var(--fg); background: var(--bg); box-shadow: var(--neu-
|
|
1964
|
+
.alert-close:hover { color: var(--fg); background: var(--bg); box-shadow: var(--neu-shadow-subtle); }
|
|
1898
1965
|
/* ============ Table ============ */
|
|
1899
1966
|
.table-wrap {
|
|
1900
1967
|
border-radius: var(--r-lg);
|
|
1901
1968
|
background: var(--bg);
|
|
1902
|
-
box-shadow: var(--neu-
|
|
1969
|
+
box-shadow: var(--neu-shadow-inset);
|
|
1903
1970
|
overflow: auto;
|
|
1904
1971
|
}
|
|
1905
1972
|
/* When scroll=y is on, the wrap itself becomes the scroll region. */
|
|
@@ -1936,13 +2003,13 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1936
2003
|
width: 16px; height: 16px;
|
|
1937
2004
|
border-radius: 6px;
|
|
1938
2005
|
background: var(--bg);
|
|
1939
|
-
box-shadow: var(--neu-
|
|
2006
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
1940
2007
|
align-items: center; justify-content: center;
|
|
1941
2008
|
margin-left: 6px;
|
|
1942
2009
|
color: var(--fg-subtle);
|
|
1943
2010
|
vertical-align: middle;
|
|
1944
2011
|
}
|
|
1945
|
-
.table th.sorted .sort-ind { color: var(--accent); box-shadow: var(--neu-
|
|
2012
|
+
.table th.sorted .sort-ind { color: var(--accent); box-shadow: var(--neu-shadow-inset); }
|
|
1946
2013
|
.table td {
|
|
1947
2014
|
padding: 12px 18px;
|
|
1948
2015
|
border-bottom: 1px solid var(--divider);
|
|
@@ -2001,14 +2068,14 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2001
2068
|
border: none;
|
|
2002
2069
|
border-radius: var(--r-sm);
|
|
2003
2070
|
background: var(--bg);
|
|
2004
|
-
box-shadow: var(--neu-
|
|
2071
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
2005
2072
|
color: var(--fg-subtle);
|
|
2006
2073
|
display: inline-flex; align-items: center; justify-content: center;
|
|
2007
2074
|
cursor: pointer;
|
|
2008
2075
|
transition: transform var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);
|
|
2009
2076
|
}
|
|
2010
|
-
.expand-btn:hover { color: var(--accent-ink); box-shadow: var(--neu-
|
|
2011
|
-
.expand-btn.open { transform: rotate(90deg); color: var(--accent-ink); box-shadow: var(--neu-
|
|
2077
|
+
.expand-btn:hover { color: var(--accent-ink); box-shadow: var(--neu-shadow-control); }
|
|
2078
|
+
.expand-btn.open { transform: rotate(90deg); color: var(--accent-ink); box-shadow: var(--neu-shadow-inset); }
|
|
2012
2079
|
/* Expanded row panel */
|
|
2013
2080
|
.table tbody tr.expanded-row td {
|
|
2014
2081
|
padding: 14px 18px;
|
|
@@ -2019,7 +2086,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2019
2086
|
padding: 14px 16px;
|
|
2020
2087
|
border-radius: var(--r-md);
|
|
2021
2088
|
background: var(--bg);
|
|
2022
|
-
box-shadow: var(--neu-
|
|
2089
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2023
2090
|
color: var(--fg);
|
|
2024
2091
|
font-size: 13px;
|
|
2025
2092
|
}
|
|
@@ -2030,14 +2097,14 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2030
2097
|
border: none;
|
|
2031
2098
|
padding: 0;
|
|
2032
2099
|
background: var(--bg);
|
|
2033
|
-
box-shadow: var(--neu-
|
|
2100
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2034
2101
|
display: inline-flex; align-items: center; justify-content: center;
|
|
2035
2102
|
cursor: pointer;
|
|
2036
2103
|
transition: box-shadow var(--dur-fast) var(--ease);
|
|
2037
2104
|
}
|
|
2038
2105
|
.table .row-check .radio-dot:disabled { opacity: 0.5; cursor: not-allowed; }
|
|
2039
2106
|
.table .row-check .radio-dot.checked {
|
|
2040
|
-
box-shadow: var(--neu-
|
|
2107
|
+
box-shadow: var(--neu-shadow-control);
|
|
2041
2108
|
}
|
|
2042
2109
|
.table .row-check .radio-dot.checked::after {
|
|
2043
2110
|
content: "";
|
|
@@ -2051,7 +2118,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2051
2118
|
width: 18px; height: 18px;
|
|
2052
2119
|
border-radius: 5px;
|
|
2053
2120
|
background: var(--bg);
|
|
2054
|
-
box-shadow: var(--neu-
|
|
2121
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
2055
2122
|
color: var(--fg-subtle);
|
|
2056
2123
|
align-items: center; justify-content: center;
|
|
2057
2124
|
margin-left: 6px;
|
|
@@ -2064,7 +2131,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2064
2131
|
.table th.filterable .filter-ind:hover { color: var(--fg); }
|
|
2065
2132
|
.table th.filterable .filter-ind.active {
|
|
2066
2133
|
color: var(--accent-ink);
|
|
2067
|
-
box-shadow: var(--neu-
|
|
2134
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2068
2135
|
}
|
|
2069
2136
|
/* Filter popover panel (portaled to body) */
|
|
2070
2137
|
.table-filter-panel {
|
|
@@ -2073,7 +2140,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2073
2140
|
max-width: 260px;
|
|
2074
2141
|
background: var(--bg);
|
|
2075
2142
|
border-radius: var(--r-md);
|
|
2076
|
-
box-shadow: var(--neu-float);
|
|
2143
|
+
box-shadow: var(--neu-shadow-float);
|
|
2077
2144
|
padding: 10px;
|
|
2078
2145
|
animation: menuIn var(--dur) var(--ease);
|
|
2079
2146
|
}
|
|
@@ -2112,17 +2179,17 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2112
2179
|
padding: 6px 12px;
|
|
2113
2180
|
border-radius: var(--r-sm);
|
|
2114
2181
|
background: var(--bg);
|
|
2115
|
-
box-shadow: var(--neu-
|
|
2182
|
+
box-shadow: var(--neu-shadow-control);
|
|
2116
2183
|
font-size: 12px;
|
|
2117
2184
|
font-family: inherit;
|
|
2118
2185
|
color: var(--fg);
|
|
2119
2186
|
cursor: pointer;
|
|
2120
2187
|
transition: box-shadow var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);
|
|
2121
2188
|
}
|
|
2122
|
-
.table-filter-actions .tf-btn:hover { box-shadow: var(--neu-
|
|
2189
|
+
.table-filter-actions .tf-btn:hover { box-shadow: var(--neu-shadow-inset); }
|
|
2123
2190
|
.table-filter-actions .tf-btn.primary { color: var(--accent-ink); font-weight: 600; }
|
|
2124
|
-
.table-filter-actions .tf-btn.ghost { color: var(--fg-muted); box-shadow: var(--neu-
|
|
2125
|
-
.table-filter-actions .tf-btn.ghost:hover { box-shadow: var(--neu-
|
|
2191
|
+
.table-filter-actions .tf-btn.ghost { color: var(--fg-muted); box-shadow: var(--neu-shadow-subtle); }
|
|
2192
|
+
.table-filter-actions .tf-btn.ghost:hover { box-shadow: var(--neu-shadow-inset); }
|
|
2126
2193
|
/* Built-in pagination bar */
|
|
2127
2194
|
.table-pagination {
|
|
2128
2195
|
margin-top: 12px;
|
|
@@ -2131,7 +2198,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2131
2198
|
.table-card {
|
|
2132
2199
|
border-radius: var(--r-lg);
|
|
2133
2200
|
background: var(--bg);
|
|
2134
|
-
box-shadow: var(--neu-
|
|
2201
|
+
box-shadow: var(--neu-shadow-control);
|
|
2135
2202
|
overflow: hidden;
|
|
2136
2203
|
}
|
|
2137
2204
|
.table-card .table-wrap { background: transparent; box-shadow: none; border-radius: 0; }
|
|
@@ -2190,7 +2257,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2190
2257
|
border: none;
|
|
2191
2258
|
border-radius: var(--r-sm);
|
|
2192
2259
|
background: var(--bg);
|
|
2193
|
-
box-shadow: var(--neu-
|
|
2260
|
+
box-shadow: var(--neu-shadow-control);
|
|
2194
2261
|
display: inline-flex; align-items: center; justify-content: center;
|
|
2195
2262
|
cursor: pointer;
|
|
2196
2263
|
font-size: 12px;
|
|
@@ -2201,11 +2268,11 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2201
2268
|
}
|
|
2202
2269
|
.pagination .pg:hover { color: var(--accent-ink); }
|
|
2203
2270
|
.pagination .pg.active {
|
|
2204
|
-
box-shadow: var(--neu-
|
|
2271
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2205
2272
|
color: var(--accent-ink);
|
|
2206
2273
|
font-weight: 700;
|
|
2207
2274
|
}
|
|
2208
|
-
.pagination .pg.disabled { color: var(--fg-subtle); cursor: not-allowed; box-shadow: var(--neu-
|
|
2275
|
+
.pagination .pg.disabled { color: var(--fg-subtle); cursor: not-allowed; box-shadow: var(--neu-shadow-subtle); }
|
|
2209
2276
|
.pagination .ellipsis { padding: 0 4px; color: var(--fg-subtle); }
|
|
2210
2277
|
/* size changer — compact Select inline with the page buttons */
|
|
2211
2278
|
.pagination .pg-size-changer { margin-left: 8px; min-width: 108px; }
|
|
@@ -2226,7 +2293,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2226
2293
|
border: none;
|
|
2227
2294
|
border-radius: var(--r-sm);
|
|
2228
2295
|
background: var(--bg);
|
|
2229
|
-
box-shadow: var(--neu-
|
|
2296
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2230
2297
|
color: var(--fg);
|
|
2231
2298
|
font-family: inherit;
|
|
2232
2299
|
font-size: 12px;
|
|
@@ -2236,7 +2303,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2236
2303
|
transition: box-shadow var(--dur-fast) var(--ease);
|
|
2237
2304
|
}
|
|
2238
2305
|
.pagination .pg-jumper-input:focus-visible {
|
|
2239
|
-
box-shadow: var(--neu-
|
|
2306
|
+
box-shadow: var(--neu-shadow-inset), 0 0 0 2px var(--accent-glow);
|
|
2240
2307
|
}
|
|
2241
2308
|
/* ============ List ============ */
|
|
2242
2309
|
.list {
|
|
@@ -2244,7 +2311,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2244
2311
|
flex-direction: column;
|
|
2245
2312
|
background: var(--bg);
|
|
2246
2313
|
border-radius: var(--r-lg);
|
|
2247
|
-
box-shadow: var(--neu-
|
|
2314
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2248
2315
|
padding: 8px;
|
|
2249
2316
|
}
|
|
2250
2317
|
.list-item {
|
|
@@ -2256,8 +2323,8 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2256
2323
|
transition: all var(--dur-fast) var(--ease);
|
|
2257
2324
|
}
|
|
2258
2325
|
.list-item.clickable { cursor: pointer; }
|
|
2259
|
-
.list-item.clickable:hover { background: var(--bg); box-shadow: var(--neu-
|
|
2260
|
-
.list-item.selected { box-shadow: var(--neu-
|
|
2326
|
+
.list-item.clickable:hover { background: var(--bg); box-shadow: var(--neu-shadow-subtle); }
|
|
2327
|
+
.list-item.selected { box-shadow: var(--neu-shadow-control); background: var(--bg); }
|
|
2261
2328
|
.list.with-dividers .list-item + .list-item { border-top: 1px solid var(--divider); border-radius: 0; }
|
|
2262
2329
|
.list-item-meta { flex: 1; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
|
|
2263
2330
|
.list-item-title { font-size: 13px; font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
|
@@ -2284,7 +2351,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2284
2351
|
border: none;
|
|
2285
2352
|
border-radius: 50%;
|
|
2286
2353
|
background: var(--bg);
|
|
2287
|
-
box-shadow: var(--neu-
|
|
2354
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2288
2355
|
animation: none;
|
|
2289
2356
|
}
|
|
2290
2357
|
.spin.ring::before {
|
|
@@ -2369,7 +2436,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2369
2436
|
width: 56px; height: 56px;
|
|
2370
2437
|
border-radius: var(--r-lg);
|
|
2371
2438
|
background: var(--bg);
|
|
2372
|
-
box-shadow: var(--neu-
|
|
2439
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2373
2440
|
display: grid; place-items: center;
|
|
2374
2441
|
color: var(--fg-subtle);
|
|
2375
2442
|
}
|
|
@@ -2420,7 +2487,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2420
2487
|
background: var(--bg);
|
|
2421
2488
|
border-radius: var(--r-lg);
|
|
2422
2489
|
padding: var(--gap-4);
|
|
2423
|
-
box-shadow: var(--neu-
|
|
2490
|
+
box-shadow: var(--neu-shadow-panel);
|
|
2424
2491
|
width: 320px;
|
|
2425
2492
|
}
|
|
2426
2493
|
.calendar-head {
|
|
@@ -2435,7 +2502,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2435
2502
|
font-family: inherit;
|
|
2436
2503
|
transition: all var(--dur-fast) var(--ease);
|
|
2437
2504
|
}
|
|
2438
|
-
.calendar-title:hover { background: var(--bg); box-shadow: var(--neu-
|
|
2505
|
+
.calendar-title:hover { background: var(--bg); box-shadow: var(--neu-shadow-subtle); }
|
|
2439
2506
|
.calendar-grid {
|
|
2440
2507
|
display: grid;
|
|
2441
2508
|
grid-template-columns: repeat(7, 1fr);
|
|
@@ -2464,7 +2531,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2464
2531
|
transition: all var(--dur-fast) var(--ease);
|
|
2465
2532
|
}
|
|
2466
2533
|
.calendar-cell.out { color: var(--fg-subtle); opacity: 0.5; }
|
|
2467
|
-
.calendar-cell:hover { background: var(--bg); box-shadow: var(--neu-
|
|
2534
|
+
.calendar-cell:hover { background: var(--bg); box-shadow: var(--neu-shadow-subtle); }
|
|
2468
2535
|
.calendar-cell.today { font-weight: 700; color: var(--accent-ink); }
|
|
2469
2536
|
.calendar-cell.today::after {
|
|
2470
2537
|
content: ""; position: absolute; bottom: 4px; left: 50%;
|
|
@@ -2474,7 +2541,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2474
2541
|
}
|
|
2475
2542
|
.calendar-cell.selected {
|
|
2476
2543
|
background: var(--bg);
|
|
2477
|
-
box-shadow: var(--neu-
|
|
2544
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2478
2545
|
color: var(--accent-ink);
|
|
2479
2546
|
font-weight: 600;
|
|
2480
2547
|
}
|
|
@@ -2487,7 +2554,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2487
2554
|
border-radius: var(--r-md);
|
|
2488
2555
|
background: var(--bg);
|
|
2489
2556
|
padding: 6px;
|
|
2490
|
-
box-shadow: var(--neu-
|
|
2557
|
+
box-shadow: var(--neu-shadow-control);
|
|
2491
2558
|
overflow: hidden;
|
|
2492
2559
|
line-height: 0;
|
|
2493
2560
|
}
|
|
@@ -2507,7 +2574,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2507
2574
|
position: relative;
|
|
2508
2575
|
overflow: hidden;
|
|
2509
2576
|
border-radius: calc(var(--r-md) - 4px);
|
|
2510
|
-
box-shadow: var(--neu-
|
|
2577
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2511
2578
|
background: var(--bg-sunken);
|
|
2512
2579
|
}
|
|
2513
2580
|
.n-image.raw .n-image-frame {
|
|
@@ -2606,7 +2673,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2606
2673
|
max-width: 80vw;
|
|
2607
2674
|
max-height: 80vh;
|
|
2608
2675
|
border-radius: var(--r-lg);
|
|
2609
|
-
box-shadow: var(--neu-float);
|
|
2676
|
+
box-shadow: var(--neu-shadow-float);
|
|
2610
2677
|
}
|
|
2611
2678
|
/* ============ SpriteImage / LayeredImage ============ */
|
|
2612
2679
|
.n-sprite-image,
|
|
@@ -2616,7 +2683,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2616
2683
|
border-radius: var(--r-sm);
|
|
2617
2684
|
background: var(--bg);
|
|
2618
2685
|
padding: 6px;
|
|
2619
|
-
box-shadow: var(--neu-
|
|
2686
|
+
box-shadow: var(--neu-shadow-control);
|
|
2620
2687
|
overflow: hidden;
|
|
2621
2688
|
line-height: 0;
|
|
2622
2689
|
}
|
|
@@ -2638,7 +2705,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2638
2705
|
overflow: hidden;
|
|
2639
2706
|
border-radius: var(--r-sm);
|
|
2640
2707
|
background: var(--bg-sunken);
|
|
2641
|
-
box-shadow: var(--neu-
|
|
2708
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2642
2709
|
}
|
|
2643
2710
|
.n-sprite-image.raw .n-sprite-image-frame,
|
|
2644
2711
|
.n-layered-image.raw .n-layered-image-frame {
|
|
@@ -2676,7 +2743,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2676
2743
|
padding: 0 36px 0 var(--ctrl-pad-x);
|
|
2677
2744
|
border-radius: var(--r-md);
|
|
2678
2745
|
background: var(--bg);
|
|
2679
|
-
box-shadow: var(--neu-
|
|
2746
|
+
box-shadow: var(--neu-shadow-control);
|
|
2680
2747
|
display: inline-flex;
|
|
2681
2748
|
align-items: center;
|
|
2682
2749
|
font-size: 13px;
|
|
@@ -2688,7 +2755,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2688
2755
|
text-align: left;
|
|
2689
2756
|
}
|
|
2690
2757
|
.cascader-trigger.placeholder { color: var(--fg-subtle); }
|
|
2691
|
-
.cascader.open .cascader-trigger { box-shadow: var(--neu-
|
|
2758
|
+
.cascader.open .cascader-trigger { box-shadow: var(--neu-shadow-inset); color: var(--accent-ink); }
|
|
2692
2759
|
.cascader-clear {
|
|
2693
2760
|
position: absolute;
|
|
2694
2761
|
right: 30px;
|
|
@@ -2698,7 +2765,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2698
2765
|
height: 20px;
|
|
2699
2766
|
border-radius: 999px;
|
|
2700
2767
|
background: var(--bg);
|
|
2701
|
-
box-shadow: var(--neu-
|
|
2768
|
+
box-shadow: var(--neu-shadow-control);
|
|
2702
2769
|
display: inline-grid;
|
|
2703
2770
|
place-items: center;
|
|
2704
2771
|
color: var(--fg-subtle);
|
|
@@ -2706,13 +2773,13 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2706
2773
|
transition: all var(--dur-fast) var(--ease);
|
|
2707
2774
|
}
|
|
2708
2775
|
.cascader:hover .cascader-clear { opacity: 1; }
|
|
2709
|
-
.cascader-clear:hover { color: var(--accent-ink); box-shadow: var(--neu-
|
|
2776
|
+
.cascader-clear:hover { color: var(--accent-ink); box-shadow: var(--neu-shadow-inset); }
|
|
2710
2777
|
.cascader-panel {
|
|
2711
2778
|
z-index: 1000;
|
|
2712
2779
|
display: flex;
|
|
2713
2780
|
background: var(--bg);
|
|
2714
2781
|
border-radius: var(--r-md);
|
|
2715
|
-
box-shadow: var(--neu-float);
|
|
2782
|
+
box-shadow: var(--neu-shadow-float);
|
|
2716
2783
|
padding: 6px;
|
|
2717
2784
|
animation: menuIn var(--dur) var(--ease);
|
|
2718
2785
|
gap: 4px;
|
|
@@ -2753,7 +2820,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2753
2820
|
}
|
|
2754
2821
|
.cascader-search-item:hover {
|
|
2755
2822
|
background: var(--bg);
|
|
2756
|
-
box-shadow: var(--neu-
|
|
2823
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
2757
2824
|
color: var(--accent-ink);
|
|
2758
2825
|
}
|
|
2759
2826
|
.cascader-path-sep { color: var(--fg-subtle); }
|
|
@@ -2804,10 +2871,10 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2804
2871
|
height: 15px;
|
|
2805
2872
|
object-fit: contain;
|
|
2806
2873
|
}
|
|
2807
|
-
.cascader-item:hover { background: var(--bg); box-shadow: var(--neu-
|
|
2874
|
+
.cascader-item:hover { background: var(--bg); box-shadow: var(--neu-shadow-subtle); color: var(--accent-ink); }
|
|
2808
2875
|
.cascader-item.active {
|
|
2809
2876
|
background: var(--bg);
|
|
2810
|
-
box-shadow: var(--neu-
|
|
2877
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2811
2878
|
color: var(--accent-ink);
|
|
2812
2879
|
font-weight: 500;
|
|
2813
2880
|
}
|
|
@@ -2857,7 +2924,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2857
2924
|
padding: 1px 6px;
|
|
2858
2925
|
border-radius: 5px;
|
|
2859
2926
|
background: var(--bg-sunken);
|
|
2860
|
-
box-shadow: var(--neu-
|
|
2927
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2861
2928
|
color: var(--accent-ink);
|
|
2862
2929
|
margin: 0 2px;
|
|
2863
2930
|
}
|
|
@@ -2867,7 +2934,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2867
2934
|
padding: 1px 7px;
|
|
2868
2935
|
border-radius: 5px;
|
|
2869
2936
|
background: var(--bg-raised);
|
|
2870
|
-
box-shadow: var(--neu-
|
|
2937
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
2871
2938
|
border: 1px solid var(--border);
|
|
2872
2939
|
color: var(--fg);
|
|
2873
2940
|
margin: 0 2px;
|
|
@@ -2948,7 +3015,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2948
3015
|
.typo-action:hover {
|
|
2949
3016
|
color: var(--accent-ink);
|
|
2950
3017
|
background: var(--bg);
|
|
2951
|
-
box-shadow: var(--neu-
|
|
3018
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
2952
3019
|
}
|
|
2953
3020
|
.typo-action:focus-visible {
|
|
2954
3021
|
outline: 2px solid var(--accent-glow);
|
|
@@ -2970,7 +3037,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2970
3037
|
font: inherit;
|
|
2971
3038
|
color: inherit;
|
|
2972
3039
|
background: var(--bg-sunken);
|
|
2973
|
-
box-shadow: var(--neu-
|
|
3040
|
+
box-shadow: var(--neu-shadow-inset-strong);
|
|
2974
3041
|
border: none;
|
|
2975
3042
|
outline: none;
|
|
2976
3043
|
width: 100%;
|
|
@@ -2985,7 +3052,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2985
3052
|
font-family: inherit;
|
|
2986
3053
|
}
|
|
2987
3054
|
.typo-editor:focus {
|
|
2988
|
-
box-shadow: var(--neu-
|
|
3055
|
+
box-shadow: var(--neu-shadow-inset-strong), 0 0 0 3px var(--accent-glow);
|
|
2989
3056
|
}
|
|
2990
3057
|
/* ---- Ellipsis ---- */
|
|
2991
3058
|
.typo.ellipsis {
|
|
@@ -3044,7 +3111,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3044
3111
|
padding: 4px;
|
|
3045
3112
|
border: none;
|
|
3046
3113
|
background: var(--bg);
|
|
3047
|
-
box-shadow: var(--neu-
|
|
3114
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
3048
3115
|
border-radius: 10px;
|
|
3049
3116
|
cursor: pointer;
|
|
3050
3117
|
transition: box-shadow var(--dur) var(--ease);
|
|
@@ -3052,7 +3119,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3052
3119
|
font: inherit;
|
|
3053
3120
|
}
|
|
3054
3121
|
.cp-trigger:hover:not(:disabled) {
|
|
3055
|
-
box-shadow: var(--neu-
|
|
3122
|
+
box-shadow: var(--neu-shadow-panel);
|
|
3056
3123
|
}
|
|
3057
3124
|
.cp-trigger:disabled {
|
|
3058
3125
|
opacity: 0.5;
|
|
@@ -3074,7 +3141,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3074
3141
|
width: 22px;
|
|
3075
3142
|
height: 22px;
|
|
3076
3143
|
border-radius: 6px;
|
|
3077
|
-
box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.08), var(--neu-
|
|
3144
|
+
box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.08), var(--neu-shadow-inset);
|
|
3078
3145
|
background-clip: padding-box;
|
|
3079
3146
|
}
|
|
3080
3147
|
.cp-trigger.sm .cp-swatch { width: 18px; height: 18px; border-radius: 5px; }
|
|
@@ -3100,7 +3167,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3100
3167
|
padding: 12px;
|
|
3101
3168
|
background: var(--bg);
|
|
3102
3169
|
border-radius: var(--r-md);
|
|
3103
|
-
box-shadow: var(--neu-float);
|
|
3170
|
+
box-shadow: var(--neu-shadow-float);
|
|
3104
3171
|
display: flex;
|
|
3105
3172
|
flex-direction: column;
|
|
3106
3173
|
gap: 10px;
|
|
@@ -3196,7 +3263,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3196
3263
|
border: none;
|
|
3197
3264
|
outline: none;
|
|
3198
3265
|
background: var(--bg-sunken);
|
|
3199
|
-
box-shadow: var(--neu-
|
|
3266
|
+
box-shadow: var(--neu-shadow-inset);
|
|
3200
3267
|
border-radius: 7px;
|
|
3201
3268
|
font-family: var(--font-mono);
|
|
3202
3269
|
font-size: 12px;
|
|
@@ -3204,7 +3271,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3204
3271
|
text-transform: lowercase;
|
|
3205
3272
|
}
|
|
3206
3273
|
.cp-input:focus {
|
|
3207
|
-
box-shadow: var(--neu-
|
|
3274
|
+
box-shadow: var(--neu-shadow-inset), 0 0 0 2px var(--accent-soft);
|
|
3208
3275
|
}
|
|
3209
3276
|
.cp-presets {
|
|
3210
3277
|
display: grid;
|
|
@@ -3229,7 +3296,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3229
3296
|
}
|
|
3230
3297
|
/* Dark mode tweaks */
|
|
3231
3298
|
[data-theme="dark"] .cp-swatch {
|
|
3232
|
-
box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.12), var(--neu-
|
|
3299
|
+
box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.12), var(--neu-shadow-inset);
|
|
3233
3300
|
}
|
|
3234
3301
|
[data-theme="dark"] .cp-preset {
|
|
3235
3302
|
box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1);
|
|
@@ -3287,7 +3354,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3287
3354
|
border: none; padding: 0;
|
|
3288
3355
|
border-radius: 999px;
|
|
3289
3356
|
background: var(--bg);
|
|
3290
|
-
box-shadow: var(--neu-
|
|
3357
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
3291
3358
|
position: relative;
|
|
3292
3359
|
cursor: pointer;
|
|
3293
3360
|
transition: transform var(--dur-fast) var(--ease);
|
|
@@ -3327,7 +3394,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3327
3394
|
overflow: visible;
|
|
3328
3395
|
}
|
|
3329
3396
|
.win-controls.windows .win-btn svg { display: block; flex-shrink: 0; }
|
|
3330
|
-
.win-controls.windows .win-btn:hover { background: var(--bg); box-shadow: var(--neu-
|
|
3397
|
+
.win-controls.windows .win-btn:hover { background: var(--bg); box-shadow: var(--neu-shadow-inset); color: var(--fg); }
|
|
3331
3398
|
.win-controls.windows .win-btn.close:hover {
|
|
3332
3399
|
background: var(--danger);
|
|
3333
3400
|
color: white;
|
|
@@ -3363,11 +3430,11 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3363
3430
|
width: 100%;
|
|
3364
3431
|
transition: all var(--dur-fast) var(--ease);
|
|
3365
3432
|
}
|
|
3366
|
-
.sidebar-item:hover { color: var(--fg); background: var(--bg); box-shadow: var(--neu-
|
|
3433
|
+
.sidebar-item:hover { color: var(--fg); background: var(--bg); box-shadow: var(--neu-shadow-subtle); }
|
|
3367
3434
|
.sidebar-item.active {
|
|
3368
3435
|
color: var(--accent-ink);
|
|
3369
3436
|
background: var(--bg);
|
|
3370
|
-
box-shadow: var(--neu-
|
|
3437
|
+
box-shadow: var(--neu-shadow-inset);
|
|
3371
3438
|
font-weight: 500;
|
|
3372
3439
|
}
|
|
3373
3440
|
.sidebar-icon { display: inline-flex; flex-shrink: 0; }
|
|
@@ -3401,3 +3468,445 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3401
3468
|
min-width: 0;
|
|
3402
3469
|
overflow: auto;
|
|
3403
3470
|
}
|
|
3471
|
+
/* ============ ThemePanel ============ */
|
|
3472
|
+
.theme-panel {
|
|
3473
|
+
width: min(100%, 340px);
|
|
3474
|
+
display: flex;
|
|
3475
|
+
flex-direction: column;
|
|
3476
|
+
gap: var(--gap-3);
|
|
3477
|
+
box-sizing: border-box;
|
|
3478
|
+
padding: var(--gap-4);
|
|
3479
|
+
border-radius: var(--r-xl);
|
|
3480
|
+
color: var(--fg);
|
|
3481
|
+
background: var(--bg);
|
|
3482
|
+
box-shadow: var(--neu-shadow-lift);
|
|
3483
|
+
}
|
|
3484
|
+
.theme-panel.compact {
|
|
3485
|
+
width: min(100%, 300px);
|
|
3486
|
+
gap: var(--gap-2);
|
|
3487
|
+
padding: var(--gap-3);
|
|
3488
|
+
}
|
|
3489
|
+
.theme-panel-head {
|
|
3490
|
+
display: flex;
|
|
3491
|
+
flex-direction: column;
|
|
3492
|
+
gap: 4px;
|
|
3493
|
+
}
|
|
3494
|
+
.theme-panel-title {
|
|
3495
|
+
display: inline-flex;
|
|
3496
|
+
align-items: center;
|
|
3497
|
+
gap: 8px;
|
|
3498
|
+
min-width: 0;
|
|
3499
|
+
color: var(--fg);
|
|
3500
|
+
font-size: 14px;
|
|
3501
|
+
font-weight: 700;
|
|
3502
|
+
}
|
|
3503
|
+
.theme-panel-title svg {
|
|
3504
|
+
flex: 0 0 auto;
|
|
3505
|
+
color: var(--accent);
|
|
3506
|
+
}
|
|
3507
|
+
.theme-panel-title span {
|
|
3508
|
+
min-width: 0;
|
|
3509
|
+
overflow: hidden;
|
|
3510
|
+
text-overflow: ellipsis;
|
|
3511
|
+
white-space: nowrap;
|
|
3512
|
+
}
|
|
3513
|
+
.theme-panel-desc {
|
|
3514
|
+
font-size: 12px;
|
|
3515
|
+
color: var(--fg-muted);
|
|
3516
|
+
}
|
|
3517
|
+
.theme-panel-row {
|
|
3518
|
+
display: flex;
|
|
3519
|
+
flex-direction: column;
|
|
3520
|
+
gap: 8px;
|
|
3521
|
+
padding-top: var(--gap-3);
|
|
3522
|
+
border-top: 1px solid var(--divider);
|
|
3523
|
+
}
|
|
3524
|
+
.theme-panel-head + .theme-panel-row,
|
|
3525
|
+
.theme-panel-row:first-child {
|
|
3526
|
+
border-top: none;
|
|
3527
|
+
padding-top: 0;
|
|
3528
|
+
}
|
|
3529
|
+
.theme-panel-label {
|
|
3530
|
+
display: flex;
|
|
3531
|
+
align-items: center;
|
|
3532
|
+
justify-content: space-between;
|
|
3533
|
+
gap: 10px;
|
|
3534
|
+
font-size: 12px;
|
|
3535
|
+
font-weight: 600;
|
|
3536
|
+
color: var(--fg);
|
|
3537
|
+
}
|
|
3538
|
+
.theme-panel-label > span:last-child:not(:first-child) {
|
|
3539
|
+
min-width: 0;
|
|
3540
|
+
max-width: 54%;
|
|
3541
|
+
overflow: hidden;
|
|
3542
|
+
text-overflow: ellipsis;
|
|
3543
|
+
white-space: nowrap;
|
|
3544
|
+
padding: 2px 8px;
|
|
3545
|
+
border-radius: var(--r-pill);
|
|
3546
|
+
color: var(--accent-ink);
|
|
3547
|
+
background: var(--bg);
|
|
3548
|
+
box-shadow: var(--neu-shadow-inset);
|
|
3549
|
+
font-family: var(--font-mono);
|
|
3550
|
+
font-size: 11px;
|
|
3551
|
+
font-weight: 500;
|
|
3552
|
+
}
|
|
3553
|
+
.theme-panel-presets {
|
|
3554
|
+
display: grid;
|
|
3555
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
3556
|
+
gap: var(--gap-2);
|
|
3557
|
+
}
|
|
3558
|
+
.theme-panel-preset-shell {
|
|
3559
|
+
position: relative;
|
|
3560
|
+
min-width: 0;
|
|
3561
|
+
}
|
|
3562
|
+
.theme-panel .theme-panel-preset.btn {
|
|
3563
|
+
min-width: 0;
|
|
3564
|
+
width: 100%;
|
|
3565
|
+
height: auto;
|
|
3566
|
+
min-height: 74px;
|
|
3567
|
+
justify-content: stretch;
|
|
3568
|
+
align-items: stretch;
|
|
3569
|
+
flex-direction: column;
|
|
3570
|
+
gap: 8px;
|
|
3571
|
+
padding: 9px;
|
|
3572
|
+
color: var(--fg-muted);
|
|
3573
|
+
background: var(--bg);
|
|
3574
|
+
box-shadow: var(--neu-shadow-control);
|
|
3575
|
+
text-align: left;
|
|
3576
|
+
white-space: normal;
|
|
3577
|
+
transition:
|
|
3578
|
+
color var(--dur-fast) var(--ease),
|
|
3579
|
+
box-shadow var(--dur-fast) var(--ease),
|
|
3580
|
+
transform var(--dur-fast) var(--ease);
|
|
3581
|
+
}
|
|
3582
|
+
.theme-panel .theme-panel-preset.btn:hover {
|
|
3583
|
+
color: var(--fg);
|
|
3584
|
+
box-shadow: var(--neu-shadow-panel);
|
|
3585
|
+
transform: translateY(-1px);
|
|
3586
|
+
}
|
|
3587
|
+
.theme-panel .theme-panel-preset.btn.active {
|
|
3588
|
+
color: var(--accent-ink);
|
|
3589
|
+
box-shadow: var(--neu-shadow-inset), 0 0 0 1px var(--accent-glow);
|
|
3590
|
+
transform: none;
|
|
3591
|
+
}
|
|
3592
|
+
.theme-panel .theme-panel-preset.btn.active:hover {
|
|
3593
|
+
color: var(--accent-ink);
|
|
3594
|
+
box-shadow: var(--neu-shadow-inset), 0 0 0 1px var(--accent-glow);
|
|
3595
|
+
}
|
|
3596
|
+
.theme-panel .theme-panel-preset-shell.deletable .theme-panel-preset.btn {
|
|
3597
|
+
padding-right: 28px;
|
|
3598
|
+
}
|
|
3599
|
+
.theme-panel .theme-panel-preset-delete.btn {
|
|
3600
|
+
position: absolute;
|
|
3601
|
+
top: 6px;
|
|
3602
|
+
right: 6px;
|
|
3603
|
+
width: 22px;
|
|
3604
|
+
height: 22px;
|
|
3605
|
+
min-width: 22px;
|
|
3606
|
+
padding: 0;
|
|
3607
|
+
color: var(--fg-subtle);
|
|
3608
|
+
background: var(--bg);
|
|
3609
|
+
box-shadow: var(--neu-shadow-control);
|
|
3610
|
+
opacity: 0;
|
|
3611
|
+
transform: scale(0.92);
|
|
3612
|
+
}
|
|
3613
|
+
.theme-panel-preset-shell:hover .theme-panel-preset-delete.btn,
|
|
3614
|
+
.theme-panel-preset-shell:focus-within .theme-panel-preset-delete.btn {
|
|
3615
|
+
opacity: 1;
|
|
3616
|
+
transform: scale(1);
|
|
3617
|
+
}
|
|
3618
|
+
.theme-panel .theme-panel-preset-delete.btn:hover {
|
|
3619
|
+
box-shadow: var(--neu-shadow-inset);
|
|
3620
|
+
}
|
|
3621
|
+
.theme-panel-preset-ink {
|
|
3622
|
+
display: grid;
|
|
3623
|
+
grid-template-columns: 1fr 1fr 0.7fr;
|
|
3624
|
+
gap: 4px;
|
|
3625
|
+
width: 100%;
|
|
3626
|
+
}
|
|
3627
|
+
.theme-panel-preset-ink span {
|
|
3628
|
+
height: 18px;
|
|
3629
|
+
min-width: 0;
|
|
3630
|
+
border-radius: var(--r-pill);
|
|
3631
|
+
box-shadow: inset 0 0 0 1px var(--divider);
|
|
3632
|
+
}
|
|
3633
|
+
.theme-panel-preset-copy {
|
|
3634
|
+
display: flex;
|
|
3635
|
+
flex-direction: column;
|
|
3636
|
+
gap: 2px;
|
|
3637
|
+
min-width: 0;
|
|
3638
|
+
width: 100%;
|
|
3639
|
+
}
|
|
3640
|
+
.theme-panel-preset-copy > span {
|
|
3641
|
+
min-width: 0;
|
|
3642
|
+
overflow: hidden;
|
|
3643
|
+
text-overflow: ellipsis;
|
|
3644
|
+
white-space: nowrap;
|
|
3645
|
+
color: inherit;
|
|
3646
|
+
font-size: 12px;
|
|
3647
|
+
font-weight: 700;
|
|
3648
|
+
}
|
|
3649
|
+
.theme-panel-preset-copy small {
|
|
3650
|
+
min-width: 0;
|
|
3651
|
+
overflow: hidden;
|
|
3652
|
+
text-overflow: ellipsis;
|
|
3653
|
+
white-space: nowrap;
|
|
3654
|
+
color: var(--fg-subtle);
|
|
3655
|
+
font-size: 10px;
|
|
3656
|
+
font-weight: 500;
|
|
3657
|
+
}
|
|
3658
|
+
.theme-panel-swatches {
|
|
3659
|
+
display: flex;
|
|
3660
|
+
align-items: center;
|
|
3661
|
+
flex-wrap: wrap;
|
|
3662
|
+
gap: 8px;
|
|
3663
|
+
}
|
|
3664
|
+
.theme-panel .theme-panel-swatch.btn {
|
|
3665
|
+
width: 28px;
|
|
3666
|
+
height: 28px;
|
|
3667
|
+
min-width: 28px;
|
|
3668
|
+
padding: 0;
|
|
3669
|
+
border-radius: var(--r-pill);
|
|
3670
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
3671
|
+
}
|
|
3672
|
+
.theme-panel-swatch.active {
|
|
3673
|
+
box-shadow: var(--neu-shadow-inset), 0 0 0 2px var(--accent-glow);
|
|
3674
|
+
}
|
|
3675
|
+
.theme-panel .radio-group.segmented {
|
|
3676
|
+
width: 100%;
|
|
3677
|
+
}
|
|
3678
|
+
.theme-panel .btn.block {
|
|
3679
|
+
margin-top: var(--gap-1);
|
|
3680
|
+
}
|
|
3681
|
+
.theme-panel-create {
|
|
3682
|
+
display: flex;
|
|
3683
|
+
flex-direction: column;
|
|
3684
|
+
gap: 10px;
|
|
3685
|
+
padding: 10px;
|
|
3686
|
+
border-radius: var(--r-md);
|
|
3687
|
+
background: var(--bg);
|
|
3688
|
+
box-shadow: var(--neu-shadow-inset);
|
|
3689
|
+
}
|
|
3690
|
+
.theme-panel-create-head {
|
|
3691
|
+
display: flex;
|
|
3692
|
+
align-items: center;
|
|
3693
|
+
justify-content: space-between;
|
|
3694
|
+
gap: 10px;
|
|
3695
|
+
}
|
|
3696
|
+
.theme-panel-create-head > div {
|
|
3697
|
+
min-width: 0;
|
|
3698
|
+
display: flex;
|
|
3699
|
+
flex-direction: column;
|
|
3700
|
+
gap: 2px;
|
|
3701
|
+
}
|
|
3702
|
+
.theme-panel-create-head span {
|
|
3703
|
+
color: var(--fg);
|
|
3704
|
+
font-size: 12px;
|
|
3705
|
+
font-weight: 700;
|
|
3706
|
+
}
|
|
3707
|
+
.theme-panel-create-head small {
|
|
3708
|
+
min-width: 0;
|
|
3709
|
+
color: var(--fg-subtle);
|
|
3710
|
+
font-family: var(--font-mono);
|
|
3711
|
+
font-size: 10px;
|
|
3712
|
+
overflow: hidden;
|
|
3713
|
+
text-overflow: ellipsis;
|
|
3714
|
+
white-space: nowrap;
|
|
3715
|
+
}
|
|
3716
|
+
.theme-panel-create-field {
|
|
3717
|
+
min-width: 0;
|
|
3718
|
+
display: flex;
|
|
3719
|
+
flex-direction: column;
|
|
3720
|
+
gap: 6px;
|
|
3721
|
+
color: var(--fg-subtle);
|
|
3722
|
+
font-family: var(--font-mono);
|
|
3723
|
+
font-size: 10px;
|
|
3724
|
+
}
|
|
3725
|
+
.theme-panel-create-field .radio-group.segmented {
|
|
3726
|
+
width: 100%;
|
|
3727
|
+
}
|
|
3728
|
+
.theme-panel-create-mode.radio-group.segmented {
|
|
3729
|
+
width: 100%;
|
|
3730
|
+
}
|
|
3731
|
+
.theme-panel-create-grid {
|
|
3732
|
+
display: grid;
|
|
3733
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
3734
|
+
gap: 8px;
|
|
3735
|
+
}
|
|
3736
|
+
.theme-panel-create-grid .cp-trigger,
|
|
3737
|
+
.theme-panel-create-grid .cp-custom-trigger {
|
|
3738
|
+
width: 100%;
|
|
3739
|
+
}
|
|
3740
|
+
.theme-panel-create-sliders {
|
|
3741
|
+
display: flex;
|
|
3742
|
+
flex-direction: column;
|
|
3743
|
+
gap: 8px;
|
|
3744
|
+
padding: 2px 0;
|
|
3745
|
+
}
|
|
3746
|
+
.theme-panel-shadow {
|
|
3747
|
+
gap: 7px;
|
|
3748
|
+
}
|
|
3749
|
+
.theme-panel-create-preview {
|
|
3750
|
+
min-height: 36px;
|
|
3751
|
+
display: flex;
|
|
3752
|
+
align-items: center;
|
|
3753
|
+
justify-content: space-between;
|
|
3754
|
+
gap: 10px;
|
|
3755
|
+
padding: 7px 9px;
|
|
3756
|
+
border-radius: var(--preview-radius, var(--r-md));
|
|
3757
|
+
color: var(--preview-fg, var(--fg));
|
|
3758
|
+
background: var(--preview-bg, var(--bg));
|
|
3759
|
+
box-shadow:
|
|
3760
|
+
calc(var(--shadow-offset) * 0.45 * var(--preview-shadow-scale, 1)) calc(var(--shadow-offset) * 0.45 * var(--preview-shadow-scale, 1)) calc(var(--shadow-blur) * 0.55 * var(--preview-shadow-scale, 1)) var(--preview-shadow-dark, var(--shadow-dark)),
|
|
3761
|
+
calc(var(--shadow-offset) * -0.45 * var(--preview-shadow-scale, 1)) calc(var(--shadow-offset) * -0.45 * var(--preview-shadow-scale, 1)) calc(var(--shadow-blur) * 0.55 * var(--preview-shadow-scale, 1)) var(--preview-shadow-light, var(--shadow-light));
|
|
3762
|
+
font-family: var(--preview-font, var(--font-sans));
|
|
3763
|
+
font-size: 12px;
|
|
3764
|
+
font-weight: 700;
|
|
3765
|
+
}
|
|
3766
|
+
.theme-panel-create-preview-label {
|
|
3767
|
+
min-width: 0;
|
|
3768
|
+
display: inline-flex;
|
|
3769
|
+
align-items: center;
|
|
3770
|
+
gap: 7px;
|
|
3771
|
+
color: inherit;
|
|
3772
|
+
}
|
|
3773
|
+
.theme-panel-create-preview-label > span {
|
|
3774
|
+
min-width: 0;
|
|
3775
|
+
overflow: hidden;
|
|
3776
|
+
text-overflow: ellipsis;
|
|
3777
|
+
white-space: nowrap;
|
|
3778
|
+
}
|
|
3779
|
+
.theme-panel-create-preview i {
|
|
3780
|
+
flex: 0 0 auto;
|
|
3781
|
+
width: 20px;
|
|
3782
|
+
height: 20px;
|
|
3783
|
+
border-radius: var(--r-pill);
|
|
3784
|
+
background: var(--preview-accent, var(--accent));
|
|
3785
|
+
box-shadow:
|
|
3786
|
+
inset 1px 1px 2px color-mix(in oklch, var(--preview-accent, var(--accent)) 50%, white),
|
|
3787
|
+
0 0 0 4px var(--preview-accent-glow, var(--accent-glow));
|
|
3788
|
+
}
|
|
3789
|
+
.theme-panel-create-actions {
|
|
3790
|
+
display: grid;
|
|
3791
|
+
grid-template-columns: 0.85fr 1fr;
|
|
3792
|
+
gap: 8px;
|
|
3793
|
+
}
|
|
3794
|
+
.theme-panel-advanced {
|
|
3795
|
+
display: flex;
|
|
3796
|
+
flex-direction: column;
|
|
3797
|
+
gap: 12px;
|
|
3798
|
+
padding-top: 2px;
|
|
3799
|
+
}
|
|
3800
|
+
.theme-panel-advanced-section {
|
|
3801
|
+
display: flex;
|
|
3802
|
+
flex-direction: column;
|
|
3803
|
+
gap: 8px;
|
|
3804
|
+
padding-top: 10px;
|
|
3805
|
+
border-top: 1px solid var(--divider);
|
|
3806
|
+
}
|
|
3807
|
+
.theme-panel-advanced-section.compact {
|
|
3808
|
+
padding-top: 0;
|
|
3809
|
+
border-top: none;
|
|
3810
|
+
}
|
|
3811
|
+
.theme-panel-advanced-title {
|
|
3812
|
+
display: flex;
|
|
3813
|
+
align-items: baseline;
|
|
3814
|
+
justify-content: space-between;
|
|
3815
|
+
gap: 8px;
|
|
3816
|
+
}
|
|
3817
|
+
.theme-panel-advanced-title span {
|
|
3818
|
+
min-width: 0;
|
|
3819
|
+
color: var(--fg);
|
|
3820
|
+
font-size: 11px;
|
|
3821
|
+
font-weight: 700;
|
|
3822
|
+
}
|
|
3823
|
+
.theme-panel-advanced-title small {
|
|
3824
|
+
min-width: 0;
|
|
3825
|
+
color: var(--fg-subtle);
|
|
3826
|
+
font-family: var(--font-mono);
|
|
3827
|
+
font-size: 9px;
|
|
3828
|
+
overflow: hidden;
|
|
3829
|
+
text-overflow: ellipsis;
|
|
3830
|
+
white-space: nowrap;
|
|
3831
|
+
}
|
|
3832
|
+
.theme-panel-token-grid {
|
|
3833
|
+
display: flex;
|
|
3834
|
+
flex-direction: column;
|
|
3835
|
+
gap: 7px;
|
|
3836
|
+
}
|
|
3837
|
+
.theme-panel-token-field {
|
|
3838
|
+
min-width: 0;
|
|
3839
|
+
display: grid;
|
|
3840
|
+
grid-template-columns: 88px minmax(0, 1fr);
|
|
3841
|
+
gap: 8px;
|
|
3842
|
+
align-items: center;
|
|
3843
|
+
}
|
|
3844
|
+
.theme-panel-token-label {
|
|
3845
|
+
min-width: 0;
|
|
3846
|
+
display: flex;
|
|
3847
|
+
flex-direction: column;
|
|
3848
|
+
gap: 2px;
|
|
3849
|
+
}
|
|
3850
|
+
.theme-panel-token-label span {
|
|
3851
|
+
color: var(--fg-muted);
|
|
3852
|
+
font-size: 10px;
|
|
3853
|
+
font-weight: 650;
|
|
3854
|
+
white-space: nowrap;
|
|
3855
|
+
}
|
|
3856
|
+
.theme-panel-token-label code {
|
|
3857
|
+
color: var(--fg-subtle);
|
|
3858
|
+
font-family: var(--font-mono);
|
|
3859
|
+
font-size: 9px;
|
|
3860
|
+
overflow: hidden;
|
|
3861
|
+
text-overflow: ellipsis;
|
|
3862
|
+
white-space: nowrap;
|
|
3863
|
+
}
|
|
3864
|
+
.theme-panel-token-input {
|
|
3865
|
+
min-width: 0;
|
|
3866
|
+
display: grid;
|
|
3867
|
+
grid-template-columns: 24px minmax(0, 1fr);
|
|
3868
|
+
gap: 7px;
|
|
3869
|
+
align-items: center;
|
|
3870
|
+
}
|
|
3871
|
+
.theme-panel-token-field.scale {
|
|
3872
|
+
align-items: start;
|
|
3873
|
+
}
|
|
3874
|
+
.theme-panel-token-scale {
|
|
3875
|
+
min-width: 0;
|
|
3876
|
+
display: grid;
|
|
3877
|
+
grid-template-columns: 64px minmax(0, 1fr);
|
|
3878
|
+
gap: 7px;
|
|
3879
|
+
align-items: center;
|
|
3880
|
+
}
|
|
3881
|
+
.theme-panel-token-picker {
|
|
3882
|
+
width: 24px;
|
|
3883
|
+
height: 24px;
|
|
3884
|
+
}
|
|
3885
|
+
.theme-panel-token-picker .cp-custom-trigger {
|
|
3886
|
+
width: 24px;
|
|
3887
|
+
height: 24px;
|
|
3888
|
+
display: block;
|
|
3889
|
+
border-radius: 7px;
|
|
3890
|
+
}
|
|
3891
|
+
.theme-panel-token-swatch {
|
|
3892
|
+
display: block;
|
|
3893
|
+
width: 24px;
|
|
3894
|
+
height: 24px;
|
|
3895
|
+
border-radius: 7px;
|
|
3896
|
+
box-shadow: var(--neu-shadow-inset), inset 0 0 0 1px var(--border);
|
|
3897
|
+
transition:
|
|
3898
|
+
box-shadow var(--dur-fast) var(--ease),
|
|
3899
|
+
transform var(--dur-fast) var(--ease);
|
|
3900
|
+
}
|
|
3901
|
+
.theme-panel-token-picker .cp-custom-trigger:hover .theme-panel-token-swatch {
|
|
3902
|
+
box-shadow: var(--neu-shadow-control), inset 0 0 0 1px var(--border);
|
|
3903
|
+
transform: translateY(-1px);
|
|
3904
|
+
}
|
|
3905
|
+
.theme-panel-token-input .input-wrap,
|
|
3906
|
+
.theme-panel-create-field .input-wrap {
|
|
3907
|
+
min-width: 0;
|
|
3908
|
+
}
|
|
3909
|
+
.theme-panel-token-input .input {
|
|
3910
|
+
font-family: var(--font-mono);
|
|
3911
|
+
font-size: 11px;
|
|
3912
|
+
}
|