popover.css 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. [data-slot="popover-trigger"] {
  2. display: inline-flex;
  3. }
  4. [data-component="popover-content"] {
  5. z-index: 50;
  6. min-width: 200px;
  7. max-width: 320px;
  8. border-radius: var(--radius-md);
  9. border: 1px solid var(--border-weak-base);
  10. background-color: var(--surface-raised-stronger-non-alpha);
  11. box-shadow: var(--shadow-md);
  12. transform-origin: var(--kb-popover-content-transform-origin);
  13. &:focus-within {
  14. outline: none;
  15. }
  16. &[data-closed] {
  17. animation: popover-close 0.15s ease-out;
  18. }
  19. &[data-expanded] {
  20. animation: popover-open 0.15s ease-out;
  21. }
  22. [data-slot="popover-header"] {
  23. display: flex;
  24. padding: 12px;
  25. padding-bottom: 0;
  26. justify-content: space-between;
  27. align-items: center;
  28. gap: 8px;
  29. [data-slot="popover-title"] {
  30. flex: 1;
  31. color: var(--text-strong);
  32. margin: 0;
  33. font-family: var(--font-family-sans);
  34. font-size: var(--font-size-base);
  35. font-style: normal;
  36. font-weight: var(--font-weight-medium);
  37. line-height: var(--line-height-large);
  38. letter-spacing: var(--letter-spacing-normal);
  39. }
  40. [data-slot="popover-close-button"] {
  41. flex-shrink: 0;
  42. }
  43. }
  44. [data-slot="popover-description"] {
  45. padding: 0 12px;
  46. margin: 0;
  47. color: var(--text-base);
  48. font-family: var(--font-family-sans);
  49. font-size: var(--font-size-small);
  50. font-style: normal;
  51. font-weight: var(--font-weight-regular);
  52. line-height: var(--line-height-large);
  53. letter-spacing: var(--letter-spacing-normal);
  54. }
  55. [data-slot="popover-body"] {
  56. padding: 12px;
  57. }
  58. [data-slot="popover-arrow"] {
  59. fill: var(--surface-raised-stronger-non-alpha);
  60. }
  61. }
  62. @keyframes popover-open {
  63. from {
  64. opacity: 0;
  65. transform: scale(0.96);
  66. }
  67. to {
  68. opacity: 1;
  69. transform: scale(1);
  70. }
  71. }
  72. @keyframes popover-close {
  73. from {
  74. opacity: 1;
  75. transform: scale(1);
  76. }
  77. to {
  78. opacity: 0;
  79. transform: scale(0.96);
  80. }
  81. }