@fangxinyan/lumina 0.6.3 → 0.6.5
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-5FSPJWLX.css} +4 -2
- package/dist/Tooltip.cjs +2 -2
- package/dist/Tooltip.d.cts +2 -0
- package/dist/Tooltip.d.ts +2 -0
- package/dist/Tooltip.js +1 -1
- package/dist/{Typography-NKPWTJCV.css → Typography-32QQLD4F.css} +41 -11
- package/dist/Typography.cjs +8 -7
- package/dist/Typography.d.cts +1 -1
- package/dist/Typography.d.ts +1 -1
- package/dist/Typography.js +3 -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-ET6DYQVZ.js → chunk-5JNDDWFZ.js} +132 -14
- 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-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-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-3YJU3D5S.cjs → chunk-RIUDYPRB.cjs} +62 -13
- package/dist/{chunk-SWBWZIL4.cjs → chunk-S6OKX4H7.cjs} +2 -2
- package/dist/{chunk-EC4WGEAJ.js → chunk-SABWUELE.js} +2 -2
- package/dist/{chunk-TEEFR2FD.js → chunk-SFAGHPBT.js} +62 -13
- 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-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-R2TEDH2F.cjs → chunk-YU5JK247.cjs} +135 -17
- 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 +715 -175
- 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/tooltip.md +1 -0
- package/docs/llms/typography.md +12 -2
- 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;
|
|
@@ -1696,6 +1763,8 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1696
1763
|
align-self: flex-start;
|
|
1697
1764
|
}
|
|
1698
1765
|
.tip {
|
|
1766
|
+
display: block;
|
|
1767
|
+
box-sizing: border-box;
|
|
1699
1768
|
background: var(--bg-sunken);
|
|
1700
1769
|
color: var(--fg);
|
|
1701
1770
|
padding: 6px 10px;
|
|
@@ -1703,8 +1772,8 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1703
1772
|
font-size: 11px;
|
|
1704
1773
|
font-weight: 500;
|
|
1705
1774
|
white-space: nowrap;
|
|
1706
|
-
box-shadow: var(--neu-
|
|
1707
|
-
pointer-events:
|
|
1775
|
+
box-shadow: var(--neu-shadow-control);
|
|
1776
|
+
pointer-events: auto;
|
|
1708
1777
|
animation: fadeIn var(--dur) var(--ease);
|
|
1709
1778
|
z-index: 1000;
|
|
1710
1779
|
}
|
|
@@ -1725,7 +1794,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1725
1794
|
.message {
|
|
1726
1795
|
background: var(--bg);
|
|
1727
1796
|
border-radius: var(--r-md);
|
|
1728
|
-
box-shadow: var(--neu-float);
|
|
1797
|
+
box-shadow: var(--neu-shadow-float);
|
|
1729
1798
|
padding: 12px 16px;
|
|
1730
1799
|
min-width: 240px;
|
|
1731
1800
|
display: flex; align-items: center; gap: 10px;
|
|
@@ -1759,7 +1828,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1759
1828
|
background: var(--bg);
|
|
1760
1829
|
border-radius: var(--r-md);
|
|
1761
1830
|
min-width: 220px;
|
|
1762
|
-
box-shadow: var(--neu-float);
|
|
1831
|
+
box-shadow: var(--neu-shadow-float);
|
|
1763
1832
|
position: relative;
|
|
1764
1833
|
}
|
|
1765
1834
|
/*
|
|
@@ -1852,7 +1921,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1852
1921
|
padding: 14px 16px;
|
|
1853
1922
|
border-radius: var(--r-md);
|
|
1854
1923
|
background: var(--bg);
|
|
1855
|
-
box-shadow: var(--neu-
|
|
1924
|
+
box-shadow: var(--neu-shadow-inset);
|
|
1856
1925
|
position: relative;
|
|
1857
1926
|
}
|
|
1858
1927
|
.alert-ico {
|
|
@@ -1894,12 +1963,12 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1894
1963
|
cursor: pointer;
|
|
1895
1964
|
border: none; background: transparent;
|
|
1896
1965
|
}
|
|
1897
|
-
.alert-close:hover { color: var(--fg); background: var(--bg); box-shadow: var(--neu-
|
|
1966
|
+
.alert-close:hover { color: var(--fg); background: var(--bg); box-shadow: var(--neu-shadow-subtle); }
|
|
1898
1967
|
/* ============ Table ============ */
|
|
1899
1968
|
.table-wrap {
|
|
1900
1969
|
border-radius: var(--r-lg);
|
|
1901
1970
|
background: var(--bg);
|
|
1902
|
-
box-shadow: var(--neu-
|
|
1971
|
+
box-shadow: var(--neu-shadow-inset);
|
|
1903
1972
|
overflow: auto;
|
|
1904
1973
|
}
|
|
1905
1974
|
/* When scroll=y is on, the wrap itself becomes the scroll region. */
|
|
@@ -1936,13 +2005,13 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
1936
2005
|
width: 16px; height: 16px;
|
|
1937
2006
|
border-radius: 6px;
|
|
1938
2007
|
background: var(--bg);
|
|
1939
|
-
box-shadow: var(--neu-
|
|
2008
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
1940
2009
|
align-items: center; justify-content: center;
|
|
1941
2010
|
margin-left: 6px;
|
|
1942
2011
|
color: var(--fg-subtle);
|
|
1943
2012
|
vertical-align: middle;
|
|
1944
2013
|
}
|
|
1945
|
-
.table th.sorted .sort-ind { color: var(--accent); box-shadow: var(--neu-
|
|
2014
|
+
.table th.sorted .sort-ind { color: var(--accent); box-shadow: var(--neu-shadow-inset); }
|
|
1946
2015
|
.table td {
|
|
1947
2016
|
padding: 12px 18px;
|
|
1948
2017
|
border-bottom: 1px solid var(--divider);
|
|
@@ -2001,14 +2070,14 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2001
2070
|
border: none;
|
|
2002
2071
|
border-radius: var(--r-sm);
|
|
2003
2072
|
background: var(--bg);
|
|
2004
|
-
box-shadow: var(--neu-
|
|
2073
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
2005
2074
|
color: var(--fg-subtle);
|
|
2006
2075
|
display: inline-flex; align-items: center; justify-content: center;
|
|
2007
2076
|
cursor: pointer;
|
|
2008
2077
|
transition: transform var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);
|
|
2009
2078
|
}
|
|
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-
|
|
2079
|
+
.expand-btn:hover { color: var(--accent-ink); box-shadow: var(--neu-shadow-control); }
|
|
2080
|
+
.expand-btn.open { transform: rotate(90deg); color: var(--accent-ink); box-shadow: var(--neu-shadow-inset); }
|
|
2012
2081
|
/* Expanded row panel */
|
|
2013
2082
|
.table tbody tr.expanded-row td {
|
|
2014
2083
|
padding: 14px 18px;
|
|
@@ -2019,7 +2088,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2019
2088
|
padding: 14px 16px;
|
|
2020
2089
|
border-radius: var(--r-md);
|
|
2021
2090
|
background: var(--bg);
|
|
2022
|
-
box-shadow: var(--neu-
|
|
2091
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2023
2092
|
color: var(--fg);
|
|
2024
2093
|
font-size: 13px;
|
|
2025
2094
|
}
|
|
@@ -2030,14 +2099,14 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2030
2099
|
border: none;
|
|
2031
2100
|
padding: 0;
|
|
2032
2101
|
background: var(--bg);
|
|
2033
|
-
box-shadow: var(--neu-
|
|
2102
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2034
2103
|
display: inline-flex; align-items: center; justify-content: center;
|
|
2035
2104
|
cursor: pointer;
|
|
2036
2105
|
transition: box-shadow var(--dur-fast) var(--ease);
|
|
2037
2106
|
}
|
|
2038
2107
|
.table .row-check .radio-dot:disabled { opacity: 0.5; cursor: not-allowed; }
|
|
2039
2108
|
.table .row-check .radio-dot.checked {
|
|
2040
|
-
box-shadow: var(--neu-
|
|
2109
|
+
box-shadow: var(--neu-shadow-control);
|
|
2041
2110
|
}
|
|
2042
2111
|
.table .row-check .radio-dot.checked::after {
|
|
2043
2112
|
content: "";
|
|
@@ -2051,7 +2120,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2051
2120
|
width: 18px; height: 18px;
|
|
2052
2121
|
border-radius: 5px;
|
|
2053
2122
|
background: var(--bg);
|
|
2054
|
-
box-shadow: var(--neu-
|
|
2123
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
2055
2124
|
color: var(--fg-subtle);
|
|
2056
2125
|
align-items: center; justify-content: center;
|
|
2057
2126
|
margin-left: 6px;
|
|
@@ -2064,7 +2133,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2064
2133
|
.table th.filterable .filter-ind:hover { color: var(--fg); }
|
|
2065
2134
|
.table th.filterable .filter-ind.active {
|
|
2066
2135
|
color: var(--accent-ink);
|
|
2067
|
-
box-shadow: var(--neu-
|
|
2136
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2068
2137
|
}
|
|
2069
2138
|
/* Filter popover panel (portaled to body) */
|
|
2070
2139
|
.table-filter-panel {
|
|
@@ -2073,7 +2142,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2073
2142
|
max-width: 260px;
|
|
2074
2143
|
background: var(--bg);
|
|
2075
2144
|
border-radius: var(--r-md);
|
|
2076
|
-
box-shadow: var(--neu-float);
|
|
2145
|
+
box-shadow: var(--neu-shadow-float);
|
|
2077
2146
|
padding: 10px;
|
|
2078
2147
|
animation: menuIn var(--dur) var(--ease);
|
|
2079
2148
|
}
|
|
@@ -2112,17 +2181,17 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2112
2181
|
padding: 6px 12px;
|
|
2113
2182
|
border-radius: var(--r-sm);
|
|
2114
2183
|
background: var(--bg);
|
|
2115
|
-
box-shadow: var(--neu-
|
|
2184
|
+
box-shadow: var(--neu-shadow-control);
|
|
2116
2185
|
font-size: 12px;
|
|
2117
2186
|
font-family: inherit;
|
|
2118
2187
|
color: var(--fg);
|
|
2119
2188
|
cursor: pointer;
|
|
2120
2189
|
transition: box-shadow var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);
|
|
2121
2190
|
}
|
|
2122
|
-
.table-filter-actions .tf-btn:hover { box-shadow: var(--neu-
|
|
2191
|
+
.table-filter-actions .tf-btn:hover { box-shadow: var(--neu-shadow-inset); }
|
|
2123
2192
|
.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-
|
|
2193
|
+
.table-filter-actions .tf-btn.ghost { color: var(--fg-muted); box-shadow: var(--neu-shadow-subtle); }
|
|
2194
|
+
.table-filter-actions .tf-btn.ghost:hover { box-shadow: var(--neu-shadow-inset); }
|
|
2126
2195
|
/* Built-in pagination bar */
|
|
2127
2196
|
.table-pagination {
|
|
2128
2197
|
margin-top: 12px;
|
|
@@ -2131,7 +2200,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2131
2200
|
.table-card {
|
|
2132
2201
|
border-radius: var(--r-lg);
|
|
2133
2202
|
background: var(--bg);
|
|
2134
|
-
box-shadow: var(--neu-
|
|
2203
|
+
box-shadow: var(--neu-shadow-control);
|
|
2135
2204
|
overflow: hidden;
|
|
2136
2205
|
}
|
|
2137
2206
|
.table-card .table-wrap { background: transparent; box-shadow: none; border-radius: 0; }
|
|
@@ -2190,7 +2259,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2190
2259
|
border: none;
|
|
2191
2260
|
border-radius: var(--r-sm);
|
|
2192
2261
|
background: var(--bg);
|
|
2193
|
-
box-shadow: var(--neu-
|
|
2262
|
+
box-shadow: var(--neu-shadow-control);
|
|
2194
2263
|
display: inline-flex; align-items: center; justify-content: center;
|
|
2195
2264
|
cursor: pointer;
|
|
2196
2265
|
font-size: 12px;
|
|
@@ -2201,11 +2270,11 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2201
2270
|
}
|
|
2202
2271
|
.pagination .pg:hover { color: var(--accent-ink); }
|
|
2203
2272
|
.pagination .pg.active {
|
|
2204
|
-
box-shadow: var(--neu-
|
|
2273
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2205
2274
|
color: var(--accent-ink);
|
|
2206
2275
|
font-weight: 700;
|
|
2207
2276
|
}
|
|
2208
|
-
.pagination .pg.disabled { color: var(--fg-subtle); cursor: not-allowed; box-shadow: var(--neu-
|
|
2277
|
+
.pagination .pg.disabled { color: var(--fg-subtle); cursor: not-allowed; box-shadow: var(--neu-shadow-subtle); }
|
|
2209
2278
|
.pagination .ellipsis { padding: 0 4px; color: var(--fg-subtle); }
|
|
2210
2279
|
/* size changer — compact Select inline with the page buttons */
|
|
2211
2280
|
.pagination .pg-size-changer { margin-left: 8px; min-width: 108px; }
|
|
@@ -2226,7 +2295,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2226
2295
|
border: none;
|
|
2227
2296
|
border-radius: var(--r-sm);
|
|
2228
2297
|
background: var(--bg);
|
|
2229
|
-
box-shadow: var(--neu-
|
|
2298
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2230
2299
|
color: var(--fg);
|
|
2231
2300
|
font-family: inherit;
|
|
2232
2301
|
font-size: 12px;
|
|
@@ -2236,7 +2305,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2236
2305
|
transition: box-shadow var(--dur-fast) var(--ease);
|
|
2237
2306
|
}
|
|
2238
2307
|
.pagination .pg-jumper-input:focus-visible {
|
|
2239
|
-
box-shadow: var(--neu-
|
|
2308
|
+
box-shadow: var(--neu-shadow-inset), 0 0 0 2px var(--accent-glow);
|
|
2240
2309
|
}
|
|
2241
2310
|
/* ============ List ============ */
|
|
2242
2311
|
.list {
|
|
@@ -2244,7 +2313,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2244
2313
|
flex-direction: column;
|
|
2245
2314
|
background: var(--bg);
|
|
2246
2315
|
border-radius: var(--r-lg);
|
|
2247
|
-
box-shadow: var(--neu-
|
|
2316
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2248
2317
|
padding: 8px;
|
|
2249
2318
|
}
|
|
2250
2319
|
.list-item {
|
|
@@ -2256,8 +2325,8 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2256
2325
|
transition: all var(--dur-fast) var(--ease);
|
|
2257
2326
|
}
|
|
2258
2327
|
.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-
|
|
2328
|
+
.list-item.clickable:hover { background: var(--bg); box-shadow: var(--neu-shadow-subtle); }
|
|
2329
|
+
.list-item.selected { box-shadow: var(--neu-shadow-control); background: var(--bg); }
|
|
2261
2330
|
.list.with-dividers .list-item + .list-item { border-top: 1px solid var(--divider); border-radius: 0; }
|
|
2262
2331
|
.list-item-meta { flex: 1; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
|
|
2263
2332
|
.list-item-title { font-size: 13px; font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
|
@@ -2284,7 +2353,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2284
2353
|
border: none;
|
|
2285
2354
|
border-radius: 50%;
|
|
2286
2355
|
background: var(--bg);
|
|
2287
|
-
box-shadow: var(--neu-
|
|
2356
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2288
2357
|
animation: none;
|
|
2289
2358
|
}
|
|
2290
2359
|
.spin.ring::before {
|
|
@@ -2369,7 +2438,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2369
2438
|
width: 56px; height: 56px;
|
|
2370
2439
|
border-radius: var(--r-lg);
|
|
2371
2440
|
background: var(--bg);
|
|
2372
|
-
box-shadow: var(--neu-
|
|
2441
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2373
2442
|
display: grid; place-items: center;
|
|
2374
2443
|
color: var(--fg-subtle);
|
|
2375
2444
|
}
|
|
@@ -2420,7 +2489,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2420
2489
|
background: var(--bg);
|
|
2421
2490
|
border-radius: var(--r-lg);
|
|
2422
2491
|
padding: var(--gap-4);
|
|
2423
|
-
box-shadow: var(--neu-
|
|
2492
|
+
box-shadow: var(--neu-shadow-panel);
|
|
2424
2493
|
width: 320px;
|
|
2425
2494
|
}
|
|
2426
2495
|
.calendar-head {
|
|
@@ -2435,7 +2504,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2435
2504
|
font-family: inherit;
|
|
2436
2505
|
transition: all var(--dur-fast) var(--ease);
|
|
2437
2506
|
}
|
|
2438
|
-
.calendar-title:hover { background: var(--bg); box-shadow: var(--neu-
|
|
2507
|
+
.calendar-title:hover { background: var(--bg); box-shadow: var(--neu-shadow-subtle); }
|
|
2439
2508
|
.calendar-grid {
|
|
2440
2509
|
display: grid;
|
|
2441
2510
|
grid-template-columns: repeat(7, 1fr);
|
|
@@ -2464,7 +2533,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2464
2533
|
transition: all var(--dur-fast) var(--ease);
|
|
2465
2534
|
}
|
|
2466
2535
|
.calendar-cell.out { color: var(--fg-subtle); opacity: 0.5; }
|
|
2467
|
-
.calendar-cell:hover { background: var(--bg); box-shadow: var(--neu-
|
|
2536
|
+
.calendar-cell:hover { background: var(--bg); box-shadow: var(--neu-shadow-subtle); }
|
|
2468
2537
|
.calendar-cell.today { font-weight: 700; color: var(--accent-ink); }
|
|
2469
2538
|
.calendar-cell.today::after {
|
|
2470
2539
|
content: ""; position: absolute; bottom: 4px; left: 50%;
|
|
@@ -2474,7 +2543,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2474
2543
|
}
|
|
2475
2544
|
.calendar-cell.selected {
|
|
2476
2545
|
background: var(--bg);
|
|
2477
|
-
box-shadow: var(--neu-
|
|
2546
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2478
2547
|
color: var(--accent-ink);
|
|
2479
2548
|
font-weight: 600;
|
|
2480
2549
|
}
|
|
@@ -2487,7 +2556,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2487
2556
|
border-radius: var(--r-md);
|
|
2488
2557
|
background: var(--bg);
|
|
2489
2558
|
padding: 6px;
|
|
2490
|
-
box-shadow: var(--neu-
|
|
2559
|
+
box-shadow: var(--neu-shadow-control);
|
|
2491
2560
|
overflow: hidden;
|
|
2492
2561
|
line-height: 0;
|
|
2493
2562
|
}
|
|
@@ -2507,7 +2576,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2507
2576
|
position: relative;
|
|
2508
2577
|
overflow: hidden;
|
|
2509
2578
|
border-radius: calc(var(--r-md) - 4px);
|
|
2510
|
-
box-shadow: var(--neu-
|
|
2579
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2511
2580
|
background: var(--bg-sunken);
|
|
2512
2581
|
}
|
|
2513
2582
|
.n-image.raw .n-image-frame {
|
|
@@ -2606,7 +2675,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2606
2675
|
max-width: 80vw;
|
|
2607
2676
|
max-height: 80vh;
|
|
2608
2677
|
border-radius: var(--r-lg);
|
|
2609
|
-
box-shadow: var(--neu-float);
|
|
2678
|
+
box-shadow: var(--neu-shadow-float);
|
|
2610
2679
|
}
|
|
2611
2680
|
/* ============ SpriteImage / LayeredImage ============ */
|
|
2612
2681
|
.n-sprite-image,
|
|
@@ -2616,7 +2685,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2616
2685
|
border-radius: var(--r-sm);
|
|
2617
2686
|
background: var(--bg);
|
|
2618
2687
|
padding: 6px;
|
|
2619
|
-
box-shadow: var(--neu-
|
|
2688
|
+
box-shadow: var(--neu-shadow-control);
|
|
2620
2689
|
overflow: hidden;
|
|
2621
2690
|
line-height: 0;
|
|
2622
2691
|
}
|
|
@@ -2638,7 +2707,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2638
2707
|
overflow: hidden;
|
|
2639
2708
|
border-radius: var(--r-sm);
|
|
2640
2709
|
background: var(--bg-sunken);
|
|
2641
|
-
box-shadow: var(--neu-
|
|
2710
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2642
2711
|
}
|
|
2643
2712
|
.n-sprite-image.raw .n-sprite-image-frame,
|
|
2644
2713
|
.n-layered-image.raw .n-layered-image-frame {
|
|
@@ -2676,7 +2745,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2676
2745
|
padding: 0 36px 0 var(--ctrl-pad-x);
|
|
2677
2746
|
border-radius: var(--r-md);
|
|
2678
2747
|
background: var(--bg);
|
|
2679
|
-
box-shadow: var(--neu-
|
|
2748
|
+
box-shadow: var(--neu-shadow-control);
|
|
2680
2749
|
display: inline-flex;
|
|
2681
2750
|
align-items: center;
|
|
2682
2751
|
font-size: 13px;
|
|
@@ -2688,7 +2757,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2688
2757
|
text-align: left;
|
|
2689
2758
|
}
|
|
2690
2759
|
.cascader-trigger.placeholder { color: var(--fg-subtle); }
|
|
2691
|
-
.cascader.open .cascader-trigger { box-shadow: var(--neu-
|
|
2760
|
+
.cascader.open .cascader-trigger { box-shadow: var(--neu-shadow-inset); color: var(--accent-ink); }
|
|
2692
2761
|
.cascader-clear {
|
|
2693
2762
|
position: absolute;
|
|
2694
2763
|
right: 30px;
|
|
@@ -2698,7 +2767,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2698
2767
|
height: 20px;
|
|
2699
2768
|
border-radius: 999px;
|
|
2700
2769
|
background: var(--bg);
|
|
2701
|
-
box-shadow: var(--neu-
|
|
2770
|
+
box-shadow: var(--neu-shadow-control);
|
|
2702
2771
|
display: inline-grid;
|
|
2703
2772
|
place-items: center;
|
|
2704
2773
|
color: var(--fg-subtle);
|
|
@@ -2706,13 +2775,13 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2706
2775
|
transition: all var(--dur-fast) var(--ease);
|
|
2707
2776
|
}
|
|
2708
2777
|
.cascader:hover .cascader-clear { opacity: 1; }
|
|
2709
|
-
.cascader-clear:hover { color: var(--accent-ink); box-shadow: var(--neu-
|
|
2778
|
+
.cascader-clear:hover { color: var(--accent-ink); box-shadow: var(--neu-shadow-inset); }
|
|
2710
2779
|
.cascader-panel {
|
|
2711
2780
|
z-index: 1000;
|
|
2712
2781
|
display: flex;
|
|
2713
2782
|
background: var(--bg);
|
|
2714
2783
|
border-radius: var(--r-md);
|
|
2715
|
-
box-shadow: var(--neu-float);
|
|
2784
|
+
box-shadow: var(--neu-shadow-float);
|
|
2716
2785
|
padding: 6px;
|
|
2717
2786
|
animation: menuIn var(--dur) var(--ease);
|
|
2718
2787
|
gap: 4px;
|
|
@@ -2753,7 +2822,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2753
2822
|
}
|
|
2754
2823
|
.cascader-search-item:hover {
|
|
2755
2824
|
background: var(--bg);
|
|
2756
|
-
box-shadow: var(--neu-
|
|
2825
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
2757
2826
|
color: var(--accent-ink);
|
|
2758
2827
|
}
|
|
2759
2828
|
.cascader-path-sep { color: var(--fg-subtle); }
|
|
@@ -2804,10 +2873,10 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2804
2873
|
height: 15px;
|
|
2805
2874
|
object-fit: contain;
|
|
2806
2875
|
}
|
|
2807
|
-
.cascader-item:hover { background: var(--bg); box-shadow: var(--neu-
|
|
2876
|
+
.cascader-item:hover { background: var(--bg); box-shadow: var(--neu-shadow-subtle); color: var(--accent-ink); }
|
|
2808
2877
|
.cascader-item.active {
|
|
2809
2878
|
background: var(--bg);
|
|
2810
|
-
box-shadow: var(--neu-
|
|
2879
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2811
2880
|
color: var(--accent-ink);
|
|
2812
2881
|
font-weight: 500;
|
|
2813
2882
|
}
|
|
@@ -2857,7 +2926,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2857
2926
|
padding: 1px 6px;
|
|
2858
2927
|
border-radius: 5px;
|
|
2859
2928
|
background: var(--bg-sunken);
|
|
2860
|
-
box-shadow: var(--neu-
|
|
2929
|
+
box-shadow: var(--neu-shadow-inset);
|
|
2861
2930
|
color: var(--accent-ink);
|
|
2862
2931
|
margin: 0 2px;
|
|
2863
2932
|
}
|
|
@@ -2867,7 +2936,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2867
2936
|
padding: 1px 7px;
|
|
2868
2937
|
border-radius: 5px;
|
|
2869
2938
|
background: var(--bg-raised);
|
|
2870
|
-
box-shadow: var(--neu-
|
|
2939
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
2871
2940
|
border: 1px solid var(--border);
|
|
2872
2941
|
color: var(--fg);
|
|
2873
2942
|
margin: 0 2px;
|
|
@@ -2919,7 +2988,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2919
2988
|
.typo-link.disabled {
|
|
2920
2989
|
color: var(--fg-subtle);
|
|
2921
2990
|
cursor: not-allowed;
|
|
2922
|
-
pointer-events:
|
|
2991
|
+
pointer-events: auto;
|
|
2923
2992
|
text-decoration: none;
|
|
2924
2993
|
}
|
|
2925
2994
|
.typo-link-ext {
|
|
@@ -2935,20 +3004,25 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2935
3004
|
display: inline-flex;
|
|
2936
3005
|
align-items: center;
|
|
2937
3006
|
justify-content: center;
|
|
2938
|
-
width:
|
|
2939
|
-
height:
|
|
2940
|
-
margin-left:
|
|
2941
|
-
border-radius:
|
|
3007
|
+
width: 20px;
|
|
3008
|
+
height: 20px;
|
|
3009
|
+
margin-left: 5px;
|
|
3010
|
+
border-radius: 6px;
|
|
2942
3011
|
cursor: pointer;
|
|
2943
3012
|
color: var(--fg-subtle);
|
|
3013
|
+
line-height: 1;
|
|
2944
3014
|
transition: color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);
|
|
2945
|
-
vertical-align:
|
|
3015
|
+
vertical-align: -0.18em;
|
|
2946
3016
|
user-select: none;
|
|
2947
3017
|
}
|
|
3018
|
+
.typo-action > svg {
|
|
3019
|
+
display: block;
|
|
3020
|
+
flex-shrink: 0;
|
|
3021
|
+
}
|
|
2948
3022
|
.typo-action:hover {
|
|
2949
3023
|
color: var(--accent-ink);
|
|
2950
3024
|
background: var(--bg);
|
|
2951
|
-
box-shadow: var(--neu-
|
|
3025
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
2952
3026
|
}
|
|
2953
3027
|
.typo-action:focus-visible {
|
|
2954
3028
|
outline: 2px solid var(--accent-glow);
|
|
@@ -2970,7 +3044,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2970
3044
|
font: inherit;
|
|
2971
3045
|
color: inherit;
|
|
2972
3046
|
background: var(--bg-sunken);
|
|
2973
|
-
box-shadow: var(--neu-
|
|
3047
|
+
box-shadow: var(--neu-shadow-inset-strong);
|
|
2974
3048
|
border: none;
|
|
2975
3049
|
outline: none;
|
|
2976
3050
|
width: 100%;
|
|
@@ -2985,7 +3059,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
2985
3059
|
font-family: inherit;
|
|
2986
3060
|
}
|
|
2987
3061
|
.typo-editor:focus {
|
|
2988
|
-
box-shadow: var(--neu-
|
|
3062
|
+
box-shadow: var(--neu-shadow-inset-strong), 0 0 0 3px var(--accent-glow);
|
|
2989
3063
|
}
|
|
2990
3064
|
/* ---- Ellipsis ---- */
|
|
2991
3065
|
.typo.ellipsis {
|
|
@@ -3025,6 +3099,30 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3025
3099
|
user-select: none;
|
|
3026
3100
|
}
|
|
3027
3101
|
.typo-expand:hover { color: var(--accent); text-decoration: underline; text-underline-offset: 3px; }
|
|
3102
|
+
.typo-ellipsis-tooltip {
|
|
3103
|
+
display: block;
|
|
3104
|
+
box-sizing: border-box;
|
|
3105
|
+
max-width: min(520px, calc(100vw - 32px));
|
|
3106
|
+
padding: 7px 10px;
|
|
3107
|
+
border-radius: var(--r-sm);
|
|
3108
|
+
background: var(--bg-sunken);
|
|
3109
|
+
color: var(--fg);
|
|
3110
|
+
box-shadow: var(--neu-shadow-control);
|
|
3111
|
+
font-size: 12px;
|
|
3112
|
+
font-weight: 500;
|
|
3113
|
+
line-height: 1.55;
|
|
3114
|
+
white-space: normal;
|
|
3115
|
+
line-break: auto;
|
|
3116
|
+
text-wrap: wrap;
|
|
3117
|
+
text-align: justify;
|
|
3118
|
+
text-align-last: left;
|
|
3119
|
+
text-justify: inter-character;
|
|
3120
|
+
word-break: normal;
|
|
3121
|
+
overflow-wrap: anywhere;
|
|
3122
|
+
pointer-events: auto;
|
|
3123
|
+
animation: fadeIn var(--dur) var(--ease);
|
|
3124
|
+
z-index: 1000;
|
|
3125
|
+
}
|
|
3028
3126
|
/* In dark mode, mark needs slightly higher contrast */
|
|
3029
3127
|
[data-theme="dark"] .typo mark {
|
|
3030
3128
|
background: color-mix(in oklch, var(--warning) 30%, transparent);
|
|
@@ -3044,7 +3142,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3044
3142
|
padding: 4px;
|
|
3045
3143
|
border: none;
|
|
3046
3144
|
background: var(--bg);
|
|
3047
|
-
box-shadow: var(--neu-
|
|
3145
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
3048
3146
|
border-radius: 10px;
|
|
3049
3147
|
cursor: pointer;
|
|
3050
3148
|
transition: box-shadow var(--dur) var(--ease);
|
|
@@ -3052,7 +3150,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3052
3150
|
font: inherit;
|
|
3053
3151
|
}
|
|
3054
3152
|
.cp-trigger:hover:not(:disabled) {
|
|
3055
|
-
box-shadow: var(--neu-
|
|
3153
|
+
box-shadow: var(--neu-shadow-panel);
|
|
3056
3154
|
}
|
|
3057
3155
|
.cp-trigger:disabled {
|
|
3058
3156
|
opacity: 0.5;
|
|
@@ -3074,7 +3172,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3074
3172
|
width: 22px;
|
|
3075
3173
|
height: 22px;
|
|
3076
3174
|
border-radius: 6px;
|
|
3077
|
-
box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.08), var(--neu-
|
|
3175
|
+
box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.08), var(--neu-shadow-inset);
|
|
3078
3176
|
background-clip: padding-box;
|
|
3079
3177
|
}
|
|
3080
3178
|
.cp-trigger.sm .cp-swatch { width: 18px; height: 18px; border-radius: 5px; }
|
|
@@ -3100,7 +3198,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3100
3198
|
padding: 12px;
|
|
3101
3199
|
background: var(--bg);
|
|
3102
3200
|
border-radius: var(--r-md);
|
|
3103
|
-
box-shadow: var(--neu-float);
|
|
3201
|
+
box-shadow: var(--neu-shadow-float);
|
|
3104
3202
|
display: flex;
|
|
3105
3203
|
flex-direction: column;
|
|
3106
3204
|
gap: 10px;
|
|
@@ -3196,7 +3294,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3196
3294
|
border: none;
|
|
3197
3295
|
outline: none;
|
|
3198
3296
|
background: var(--bg-sunken);
|
|
3199
|
-
box-shadow: var(--neu-
|
|
3297
|
+
box-shadow: var(--neu-shadow-inset);
|
|
3200
3298
|
border-radius: 7px;
|
|
3201
3299
|
font-family: var(--font-mono);
|
|
3202
3300
|
font-size: 12px;
|
|
@@ -3204,7 +3302,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3204
3302
|
text-transform: lowercase;
|
|
3205
3303
|
}
|
|
3206
3304
|
.cp-input:focus {
|
|
3207
|
-
box-shadow: var(--neu-
|
|
3305
|
+
box-shadow: var(--neu-shadow-inset), 0 0 0 2px var(--accent-soft);
|
|
3208
3306
|
}
|
|
3209
3307
|
.cp-presets {
|
|
3210
3308
|
display: grid;
|
|
@@ -3229,7 +3327,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3229
3327
|
}
|
|
3230
3328
|
/* Dark mode tweaks */
|
|
3231
3329
|
[data-theme="dark"] .cp-swatch {
|
|
3232
|
-
box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.12), var(--neu-
|
|
3330
|
+
box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.12), var(--neu-shadow-inset);
|
|
3233
3331
|
}
|
|
3234
3332
|
[data-theme="dark"] .cp-preset {
|
|
3235
3333
|
box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1);
|
|
@@ -3287,7 +3385,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3287
3385
|
border: none; padding: 0;
|
|
3288
3386
|
border-radius: 999px;
|
|
3289
3387
|
background: var(--bg);
|
|
3290
|
-
box-shadow: var(--neu-
|
|
3388
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
3291
3389
|
position: relative;
|
|
3292
3390
|
cursor: pointer;
|
|
3293
3391
|
transition: transform var(--dur-fast) var(--ease);
|
|
@@ -3327,7 +3425,7 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3327
3425
|
overflow: visible;
|
|
3328
3426
|
}
|
|
3329
3427
|
.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-
|
|
3428
|
+
.win-controls.windows .win-btn:hover { background: var(--bg); box-shadow: var(--neu-shadow-inset); color: var(--fg); }
|
|
3331
3429
|
.win-controls.windows .win-btn.close:hover {
|
|
3332
3430
|
background: var(--danger);
|
|
3333
3431
|
color: white;
|
|
@@ -3363,11 +3461,11 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3363
3461
|
width: 100%;
|
|
3364
3462
|
transition: all var(--dur-fast) var(--ease);
|
|
3365
3463
|
}
|
|
3366
|
-
.sidebar-item:hover { color: var(--fg); background: var(--bg); box-shadow: var(--neu-
|
|
3464
|
+
.sidebar-item:hover { color: var(--fg); background: var(--bg); box-shadow: var(--neu-shadow-subtle); }
|
|
3367
3465
|
.sidebar-item.active {
|
|
3368
3466
|
color: var(--accent-ink);
|
|
3369
3467
|
background: var(--bg);
|
|
3370
|
-
box-shadow: var(--neu-
|
|
3468
|
+
box-shadow: var(--neu-shadow-inset);
|
|
3371
3469
|
font-weight: 500;
|
|
3372
3470
|
}
|
|
3373
3471
|
.sidebar-icon { display: inline-flex; flex-shrink: 0; }
|
|
@@ -3401,3 +3499,445 @@ input, textarea, select { font-family: inherit; color: inherit; }
|
|
|
3401
3499
|
min-width: 0;
|
|
3402
3500
|
overflow: auto;
|
|
3403
3501
|
}
|
|
3502
|
+
/* ============ ThemePanel ============ */
|
|
3503
|
+
.theme-panel {
|
|
3504
|
+
width: min(100%, 340px);
|
|
3505
|
+
display: flex;
|
|
3506
|
+
flex-direction: column;
|
|
3507
|
+
gap: var(--gap-3);
|
|
3508
|
+
box-sizing: border-box;
|
|
3509
|
+
padding: var(--gap-4);
|
|
3510
|
+
border-radius: var(--r-xl);
|
|
3511
|
+
color: var(--fg);
|
|
3512
|
+
background: var(--bg);
|
|
3513
|
+
box-shadow: var(--neu-shadow-lift);
|
|
3514
|
+
}
|
|
3515
|
+
.theme-panel.compact {
|
|
3516
|
+
width: min(100%, 300px);
|
|
3517
|
+
gap: var(--gap-2);
|
|
3518
|
+
padding: var(--gap-3);
|
|
3519
|
+
}
|
|
3520
|
+
.theme-panel-head {
|
|
3521
|
+
display: flex;
|
|
3522
|
+
flex-direction: column;
|
|
3523
|
+
gap: 4px;
|
|
3524
|
+
}
|
|
3525
|
+
.theme-panel-title {
|
|
3526
|
+
display: inline-flex;
|
|
3527
|
+
align-items: center;
|
|
3528
|
+
gap: 8px;
|
|
3529
|
+
min-width: 0;
|
|
3530
|
+
color: var(--fg);
|
|
3531
|
+
font-size: 14px;
|
|
3532
|
+
font-weight: 700;
|
|
3533
|
+
}
|
|
3534
|
+
.theme-panel-title svg {
|
|
3535
|
+
flex: 0 0 auto;
|
|
3536
|
+
color: var(--accent);
|
|
3537
|
+
}
|
|
3538
|
+
.theme-panel-title span {
|
|
3539
|
+
min-width: 0;
|
|
3540
|
+
overflow: hidden;
|
|
3541
|
+
text-overflow: ellipsis;
|
|
3542
|
+
white-space: nowrap;
|
|
3543
|
+
}
|
|
3544
|
+
.theme-panel-desc {
|
|
3545
|
+
font-size: 12px;
|
|
3546
|
+
color: var(--fg-muted);
|
|
3547
|
+
}
|
|
3548
|
+
.theme-panel-row {
|
|
3549
|
+
display: flex;
|
|
3550
|
+
flex-direction: column;
|
|
3551
|
+
gap: 8px;
|
|
3552
|
+
padding-top: var(--gap-3);
|
|
3553
|
+
border-top: 1px solid var(--divider);
|
|
3554
|
+
}
|
|
3555
|
+
.theme-panel-head + .theme-panel-row,
|
|
3556
|
+
.theme-panel-row:first-child {
|
|
3557
|
+
border-top: none;
|
|
3558
|
+
padding-top: 0;
|
|
3559
|
+
}
|
|
3560
|
+
.theme-panel-label {
|
|
3561
|
+
display: flex;
|
|
3562
|
+
align-items: center;
|
|
3563
|
+
justify-content: space-between;
|
|
3564
|
+
gap: 10px;
|
|
3565
|
+
font-size: 12px;
|
|
3566
|
+
font-weight: 600;
|
|
3567
|
+
color: var(--fg);
|
|
3568
|
+
}
|
|
3569
|
+
.theme-panel-label > span:last-child:not(:first-child) {
|
|
3570
|
+
min-width: 0;
|
|
3571
|
+
max-width: 54%;
|
|
3572
|
+
overflow: hidden;
|
|
3573
|
+
text-overflow: ellipsis;
|
|
3574
|
+
white-space: nowrap;
|
|
3575
|
+
padding: 2px 8px;
|
|
3576
|
+
border-radius: var(--r-pill);
|
|
3577
|
+
color: var(--accent-ink);
|
|
3578
|
+
background: var(--bg);
|
|
3579
|
+
box-shadow: var(--neu-shadow-inset);
|
|
3580
|
+
font-family: var(--font-mono);
|
|
3581
|
+
font-size: 11px;
|
|
3582
|
+
font-weight: 500;
|
|
3583
|
+
}
|
|
3584
|
+
.theme-panel-presets {
|
|
3585
|
+
display: grid;
|
|
3586
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
3587
|
+
gap: var(--gap-2);
|
|
3588
|
+
}
|
|
3589
|
+
.theme-panel-preset-shell {
|
|
3590
|
+
position: relative;
|
|
3591
|
+
min-width: 0;
|
|
3592
|
+
}
|
|
3593
|
+
.theme-panel .theme-panel-preset.btn {
|
|
3594
|
+
min-width: 0;
|
|
3595
|
+
width: 100%;
|
|
3596
|
+
height: auto;
|
|
3597
|
+
min-height: 74px;
|
|
3598
|
+
justify-content: stretch;
|
|
3599
|
+
align-items: stretch;
|
|
3600
|
+
flex-direction: column;
|
|
3601
|
+
gap: 8px;
|
|
3602
|
+
padding: 9px;
|
|
3603
|
+
color: var(--fg-muted);
|
|
3604
|
+
background: var(--bg);
|
|
3605
|
+
box-shadow: var(--neu-shadow-control);
|
|
3606
|
+
text-align: left;
|
|
3607
|
+
white-space: normal;
|
|
3608
|
+
transition:
|
|
3609
|
+
color var(--dur-fast) var(--ease),
|
|
3610
|
+
box-shadow var(--dur-fast) var(--ease),
|
|
3611
|
+
transform var(--dur-fast) var(--ease);
|
|
3612
|
+
}
|
|
3613
|
+
.theme-panel .theme-panel-preset.btn:hover {
|
|
3614
|
+
color: var(--fg);
|
|
3615
|
+
box-shadow: var(--neu-shadow-panel);
|
|
3616
|
+
transform: translateY(-1px);
|
|
3617
|
+
}
|
|
3618
|
+
.theme-panel .theme-panel-preset.btn.active {
|
|
3619
|
+
color: var(--accent-ink);
|
|
3620
|
+
box-shadow: var(--neu-shadow-inset), 0 0 0 1px var(--accent-glow);
|
|
3621
|
+
transform: none;
|
|
3622
|
+
}
|
|
3623
|
+
.theme-panel .theme-panel-preset.btn.active:hover {
|
|
3624
|
+
color: var(--accent-ink);
|
|
3625
|
+
box-shadow: var(--neu-shadow-inset), 0 0 0 1px var(--accent-glow);
|
|
3626
|
+
}
|
|
3627
|
+
.theme-panel .theme-panel-preset-shell.deletable .theme-panel-preset.btn {
|
|
3628
|
+
padding-right: 28px;
|
|
3629
|
+
}
|
|
3630
|
+
.theme-panel .theme-panel-preset-delete.btn {
|
|
3631
|
+
position: absolute;
|
|
3632
|
+
top: 6px;
|
|
3633
|
+
right: 6px;
|
|
3634
|
+
width: 22px;
|
|
3635
|
+
height: 22px;
|
|
3636
|
+
min-width: 22px;
|
|
3637
|
+
padding: 0;
|
|
3638
|
+
color: var(--fg-subtle);
|
|
3639
|
+
background: var(--bg);
|
|
3640
|
+
box-shadow: var(--neu-shadow-control);
|
|
3641
|
+
opacity: 0;
|
|
3642
|
+
transform: scale(0.92);
|
|
3643
|
+
}
|
|
3644
|
+
.theme-panel-preset-shell:hover .theme-panel-preset-delete.btn,
|
|
3645
|
+
.theme-panel-preset-shell:focus-within .theme-panel-preset-delete.btn {
|
|
3646
|
+
opacity: 1;
|
|
3647
|
+
transform: scale(1);
|
|
3648
|
+
}
|
|
3649
|
+
.theme-panel .theme-panel-preset-delete.btn:hover {
|
|
3650
|
+
box-shadow: var(--neu-shadow-inset);
|
|
3651
|
+
}
|
|
3652
|
+
.theme-panel-preset-ink {
|
|
3653
|
+
display: grid;
|
|
3654
|
+
grid-template-columns: 1fr 1fr 0.7fr;
|
|
3655
|
+
gap: 4px;
|
|
3656
|
+
width: 100%;
|
|
3657
|
+
}
|
|
3658
|
+
.theme-panel-preset-ink span {
|
|
3659
|
+
height: 18px;
|
|
3660
|
+
min-width: 0;
|
|
3661
|
+
border-radius: var(--r-pill);
|
|
3662
|
+
box-shadow: inset 0 0 0 1px var(--divider);
|
|
3663
|
+
}
|
|
3664
|
+
.theme-panel-preset-copy {
|
|
3665
|
+
display: flex;
|
|
3666
|
+
flex-direction: column;
|
|
3667
|
+
gap: 2px;
|
|
3668
|
+
min-width: 0;
|
|
3669
|
+
width: 100%;
|
|
3670
|
+
}
|
|
3671
|
+
.theme-panel-preset-copy > span {
|
|
3672
|
+
min-width: 0;
|
|
3673
|
+
overflow: hidden;
|
|
3674
|
+
text-overflow: ellipsis;
|
|
3675
|
+
white-space: nowrap;
|
|
3676
|
+
color: inherit;
|
|
3677
|
+
font-size: 12px;
|
|
3678
|
+
font-weight: 700;
|
|
3679
|
+
}
|
|
3680
|
+
.theme-panel-preset-copy small {
|
|
3681
|
+
min-width: 0;
|
|
3682
|
+
overflow: hidden;
|
|
3683
|
+
text-overflow: ellipsis;
|
|
3684
|
+
white-space: nowrap;
|
|
3685
|
+
color: var(--fg-subtle);
|
|
3686
|
+
font-size: 10px;
|
|
3687
|
+
font-weight: 500;
|
|
3688
|
+
}
|
|
3689
|
+
.theme-panel-swatches {
|
|
3690
|
+
display: flex;
|
|
3691
|
+
align-items: center;
|
|
3692
|
+
flex-wrap: wrap;
|
|
3693
|
+
gap: 8px;
|
|
3694
|
+
}
|
|
3695
|
+
.theme-panel .theme-panel-swatch.btn {
|
|
3696
|
+
width: 28px;
|
|
3697
|
+
height: 28px;
|
|
3698
|
+
min-width: 28px;
|
|
3699
|
+
padding: 0;
|
|
3700
|
+
border-radius: var(--r-pill);
|
|
3701
|
+
box-shadow: var(--neu-shadow-subtle);
|
|
3702
|
+
}
|
|
3703
|
+
.theme-panel-swatch.active {
|
|
3704
|
+
box-shadow: var(--neu-shadow-inset), 0 0 0 2px var(--accent-glow);
|
|
3705
|
+
}
|
|
3706
|
+
.theme-panel .radio-group.segmented {
|
|
3707
|
+
width: 100%;
|
|
3708
|
+
}
|
|
3709
|
+
.theme-panel .btn.block {
|
|
3710
|
+
margin-top: var(--gap-1);
|
|
3711
|
+
}
|
|
3712
|
+
.theme-panel-create {
|
|
3713
|
+
display: flex;
|
|
3714
|
+
flex-direction: column;
|
|
3715
|
+
gap: 10px;
|
|
3716
|
+
padding: 10px;
|
|
3717
|
+
border-radius: var(--r-md);
|
|
3718
|
+
background: var(--bg);
|
|
3719
|
+
box-shadow: var(--neu-shadow-inset);
|
|
3720
|
+
}
|
|
3721
|
+
.theme-panel-create-head {
|
|
3722
|
+
display: flex;
|
|
3723
|
+
align-items: center;
|
|
3724
|
+
justify-content: space-between;
|
|
3725
|
+
gap: 10px;
|
|
3726
|
+
}
|
|
3727
|
+
.theme-panel-create-head > div {
|
|
3728
|
+
min-width: 0;
|
|
3729
|
+
display: flex;
|
|
3730
|
+
flex-direction: column;
|
|
3731
|
+
gap: 2px;
|
|
3732
|
+
}
|
|
3733
|
+
.theme-panel-create-head span {
|
|
3734
|
+
color: var(--fg);
|
|
3735
|
+
font-size: 12px;
|
|
3736
|
+
font-weight: 700;
|
|
3737
|
+
}
|
|
3738
|
+
.theme-panel-create-head small {
|
|
3739
|
+
min-width: 0;
|
|
3740
|
+
color: var(--fg-subtle);
|
|
3741
|
+
font-family: var(--font-mono);
|
|
3742
|
+
font-size: 10px;
|
|
3743
|
+
overflow: hidden;
|
|
3744
|
+
text-overflow: ellipsis;
|
|
3745
|
+
white-space: nowrap;
|
|
3746
|
+
}
|
|
3747
|
+
.theme-panel-create-field {
|
|
3748
|
+
min-width: 0;
|
|
3749
|
+
display: flex;
|
|
3750
|
+
flex-direction: column;
|
|
3751
|
+
gap: 6px;
|
|
3752
|
+
color: var(--fg-subtle);
|
|
3753
|
+
font-family: var(--font-mono);
|
|
3754
|
+
font-size: 10px;
|
|
3755
|
+
}
|
|
3756
|
+
.theme-panel-create-field .radio-group.segmented {
|
|
3757
|
+
width: 100%;
|
|
3758
|
+
}
|
|
3759
|
+
.theme-panel-create-mode.radio-group.segmented {
|
|
3760
|
+
width: 100%;
|
|
3761
|
+
}
|
|
3762
|
+
.theme-panel-create-grid {
|
|
3763
|
+
display: grid;
|
|
3764
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
3765
|
+
gap: 8px;
|
|
3766
|
+
}
|
|
3767
|
+
.theme-panel-create-grid .cp-trigger,
|
|
3768
|
+
.theme-panel-create-grid .cp-custom-trigger {
|
|
3769
|
+
width: 100%;
|
|
3770
|
+
}
|
|
3771
|
+
.theme-panel-create-sliders {
|
|
3772
|
+
display: flex;
|
|
3773
|
+
flex-direction: column;
|
|
3774
|
+
gap: 8px;
|
|
3775
|
+
padding: 2px 0;
|
|
3776
|
+
}
|
|
3777
|
+
.theme-panel-shadow {
|
|
3778
|
+
gap: 7px;
|
|
3779
|
+
}
|
|
3780
|
+
.theme-panel-create-preview {
|
|
3781
|
+
min-height: 36px;
|
|
3782
|
+
display: flex;
|
|
3783
|
+
align-items: center;
|
|
3784
|
+
justify-content: space-between;
|
|
3785
|
+
gap: 10px;
|
|
3786
|
+
padding: 7px 9px;
|
|
3787
|
+
border-radius: var(--preview-radius, var(--r-md));
|
|
3788
|
+
color: var(--preview-fg, var(--fg));
|
|
3789
|
+
background: var(--preview-bg, var(--bg));
|
|
3790
|
+
box-shadow:
|
|
3791
|
+
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)),
|
|
3792
|
+
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));
|
|
3793
|
+
font-family: var(--preview-font, var(--font-sans));
|
|
3794
|
+
font-size: 12px;
|
|
3795
|
+
font-weight: 700;
|
|
3796
|
+
}
|
|
3797
|
+
.theme-panel-create-preview-label {
|
|
3798
|
+
min-width: 0;
|
|
3799
|
+
display: inline-flex;
|
|
3800
|
+
align-items: center;
|
|
3801
|
+
gap: 7px;
|
|
3802
|
+
color: inherit;
|
|
3803
|
+
}
|
|
3804
|
+
.theme-panel-create-preview-label > span {
|
|
3805
|
+
min-width: 0;
|
|
3806
|
+
overflow: hidden;
|
|
3807
|
+
text-overflow: ellipsis;
|
|
3808
|
+
white-space: nowrap;
|
|
3809
|
+
}
|
|
3810
|
+
.theme-panel-create-preview i {
|
|
3811
|
+
flex: 0 0 auto;
|
|
3812
|
+
width: 20px;
|
|
3813
|
+
height: 20px;
|
|
3814
|
+
border-radius: var(--r-pill);
|
|
3815
|
+
background: var(--preview-accent, var(--accent));
|
|
3816
|
+
box-shadow:
|
|
3817
|
+
inset 1px 1px 2px color-mix(in oklch, var(--preview-accent, var(--accent)) 50%, white),
|
|
3818
|
+
0 0 0 4px var(--preview-accent-glow, var(--accent-glow));
|
|
3819
|
+
}
|
|
3820
|
+
.theme-panel-create-actions {
|
|
3821
|
+
display: grid;
|
|
3822
|
+
grid-template-columns: 0.85fr 1fr;
|
|
3823
|
+
gap: 8px;
|
|
3824
|
+
}
|
|
3825
|
+
.theme-panel-advanced {
|
|
3826
|
+
display: flex;
|
|
3827
|
+
flex-direction: column;
|
|
3828
|
+
gap: 12px;
|
|
3829
|
+
padding-top: 2px;
|
|
3830
|
+
}
|
|
3831
|
+
.theme-panel-advanced-section {
|
|
3832
|
+
display: flex;
|
|
3833
|
+
flex-direction: column;
|
|
3834
|
+
gap: 8px;
|
|
3835
|
+
padding-top: 10px;
|
|
3836
|
+
border-top: 1px solid var(--divider);
|
|
3837
|
+
}
|
|
3838
|
+
.theme-panel-advanced-section.compact {
|
|
3839
|
+
padding-top: 0;
|
|
3840
|
+
border-top: none;
|
|
3841
|
+
}
|
|
3842
|
+
.theme-panel-advanced-title {
|
|
3843
|
+
display: flex;
|
|
3844
|
+
align-items: baseline;
|
|
3845
|
+
justify-content: space-between;
|
|
3846
|
+
gap: 8px;
|
|
3847
|
+
}
|
|
3848
|
+
.theme-panel-advanced-title span {
|
|
3849
|
+
min-width: 0;
|
|
3850
|
+
color: var(--fg);
|
|
3851
|
+
font-size: 11px;
|
|
3852
|
+
font-weight: 700;
|
|
3853
|
+
}
|
|
3854
|
+
.theme-panel-advanced-title small {
|
|
3855
|
+
min-width: 0;
|
|
3856
|
+
color: var(--fg-subtle);
|
|
3857
|
+
font-family: var(--font-mono);
|
|
3858
|
+
font-size: 9px;
|
|
3859
|
+
overflow: hidden;
|
|
3860
|
+
text-overflow: ellipsis;
|
|
3861
|
+
white-space: nowrap;
|
|
3862
|
+
}
|
|
3863
|
+
.theme-panel-token-grid {
|
|
3864
|
+
display: flex;
|
|
3865
|
+
flex-direction: column;
|
|
3866
|
+
gap: 7px;
|
|
3867
|
+
}
|
|
3868
|
+
.theme-panel-token-field {
|
|
3869
|
+
min-width: 0;
|
|
3870
|
+
display: grid;
|
|
3871
|
+
grid-template-columns: 88px minmax(0, 1fr);
|
|
3872
|
+
gap: 8px;
|
|
3873
|
+
align-items: center;
|
|
3874
|
+
}
|
|
3875
|
+
.theme-panel-token-label {
|
|
3876
|
+
min-width: 0;
|
|
3877
|
+
display: flex;
|
|
3878
|
+
flex-direction: column;
|
|
3879
|
+
gap: 2px;
|
|
3880
|
+
}
|
|
3881
|
+
.theme-panel-token-label span {
|
|
3882
|
+
color: var(--fg-muted);
|
|
3883
|
+
font-size: 10px;
|
|
3884
|
+
font-weight: 650;
|
|
3885
|
+
white-space: nowrap;
|
|
3886
|
+
}
|
|
3887
|
+
.theme-panel-token-label code {
|
|
3888
|
+
color: var(--fg-subtle);
|
|
3889
|
+
font-family: var(--font-mono);
|
|
3890
|
+
font-size: 9px;
|
|
3891
|
+
overflow: hidden;
|
|
3892
|
+
text-overflow: ellipsis;
|
|
3893
|
+
white-space: nowrap;
|
|
3894
|
+
}
|
|
3895
|
+
.theme-panel-token-input {
|
|
3896
|
+
min-width: 0;
|
|
3897
|
+
display: grid;
|
|
3898
|
+
grid-template-columns: 24px minmax(0, 1fr);
|
|
3899
|
+
gap: 7px;
|
|
3900
|
+
align-items: center;
|
|
3901
|
+
}
|
|
3902
|
+
.theme-panel-token-field.scale {
|
|
3903
|
+
align-items: start;
|
|
3904
|
+
}
|
|
3905
|
+
.theme-panel-token-scale {
|
|
3906
|
+
min-width: 0;
|
|
3907
|
+
display: grid;
|
|
3908
|
+
grid-template-columns: 64px minmax(0, 1fr);
|
|
3909
|
+
gap: 7px;
|
|
3910
|
+
align-items: center;
|
|
3911
|
+
}
|
|
3912
|
+
.theme-panel-token-picker {
|
|
3913
|
+
width: 24px;
|
|
3914
|
+
height: 24px;
|
|
3915
|
+
}
|
|
3916
|
+
.theme-panel-token-picker .cp-custom-trigger {
|
|
3917
|
+
width: 24px;
|
|
3918
|
+
height: 24px;
|
|
3919
|
+
display: block;
|
|
3920
|
+
border-radius: 7px;
|
|
3921
|
+
}
|
|
3922
|
+
.theme-panel-token-swatch {
|
|
3923
|
+
display: block;
|
|
3924
|
+
width: 24px;
|
|
3925
|
+
height: 24px;
|
|
3926
|
+
border-radius: 7px;
|
|
3927
|
+
box-shadow: var(--neu-shadow-inset), inset 0 0 0 1px var(--border);
|
|
3928
|
+
transition:
|
|
3929
|
+
box-shadow var(--dur-fast) var(--ease),
|
|
3930
|
+
transform var(--dur-fast) var(--ease);
|
|
3931
|
+
}
|
|
3932
|
+
.theme-panel-token-picker .cp-custom-trigger:hover .theme-panel-token-swatch {
|
|
3933
|
+
box-shadow: var(--neu-shadow-control), inset 0 0 0 1px var(--border);
|
|
3934
|
+
transform: translateY(-1px);
|
|
3935
|
+
}
|
|
3936
|
+
.theme-panel-token-input .input-wrap,
|
|
3937
|
+
.theme-panel-create-field .input-wrap {
|
|
3938
|
+
min-width: 0;
|
|
3939
|
+
}
|
|
3940
|
+
.theme-panel-token-input .input {
|
|
3941
|
+
font-family: var(--font-mono);
|
|
3942
|
+
font-size: 11px;
|
|
3943
|
+
}
|