UNPKG

@dnb/eufemia

Version:

DNB Eufemia Design System UI Library

180 lines (178 loc) 3.92 kB
/* * Utilities */ :root { --popover-z-index: 1000; } .dnb-popover { --inner-space: 0.75rem; --popover-border-radius: 0.5rem; position: absolute; z-index: var(--popover-z-index); } .dnb-popover--inside-modal .dnb-popover { z-index: calc(var(--modal-z-index) + var(--popover-z-index)); } .dnb-popover { display: flex; min-width: 320px; padding: 0 calc(var(--inner-space) * 2); } .dnb-popover--no-inner-space { padding: 0; } .dnb-popover { color: var(--popover-text-color); background-color: var(--popover-background-color); border-radius: var(--popover-border-radius); box-shadow: var(--shadow-default); } .dnb-popover--show-outline.dnb-popover::before { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: -1; border-radius: var(--popover-border-radius); box-shadow: 0 0 0 1px var(--popover-outline-color); } .dnb-popover { opacity: 0; visibility: hidden; transition: opacity 200ms var(--easing-default); } .dnb-popover--active { visibility: visible; animation: show-popover 200ms var(--easing-default) forwards; } html[data-visual-test] .dnb-popover--active, .dnb-popover--active.dnb-popover--no-animation { animation-duration: 0ms; } .dnb-popover--hide { visibility: visible; animation: hide-popover 200ms var(--easing-default) forwards; } .dnb-popover--hide.dnb-popover--no-animation { animation: hide-popover 1ms linear forwards; } .dnb-popover--fixed { position: fixed; } html[data-visual-test] .dnb-popover--hide { animation: hide-popover 1ms linear 1s forwards; } .dnb-popover__portal { position: absolute; top: 0; left: 0; right: 0; } .dnb-popover__content { position: relative; display: flex; flex-direction: column; max-width: calc(var(--prose-max-width) - 64px); padding: calc(var(--inner-space) * 2) 0 calc(var(--inner-space) * 2); } .dnb-popover--no-max-width .dnb-popover__content { max-width: none; } .dnb-popover--no-inner-space .dnb-popover__content { padding: 0; } .dnb-popover__portal .dnb-popover { margin: 0 16px; } .dnb-popover__title { display: flex; padding-right: 2rem; } .dnb-popover__title strong, .dnb-core-style .dnb-popover__title strong { font-weight: var(--font-weight-medium); color: inherit; } .dnb-popover__body { display: flex; flex-direction: column; align-items: flex-start; } .dnb-popover__body:not(:first-child) { margin-top: var(--spacing-x-small); } .dnb-popover__arrow { position: absolute; pointer-events: none; margin: 0; width: 1rem; height: 1rem; overflow: hidden; } .dnb-popover__arrow::before { content: ""; position: absolute; bottom: 0; left: 0; width: 1rem; height: 1rem; background-color: var(--popover-background-color); border: none; transform: translateY(70%) rotate(45deg); } .dnb-popover--show-outline .dnb-popover__arrow::before { box-shadow: 0 0 0 1px var(--popover-outline-color); } .dnb-popover__arrow__placement--bottom { top: -1rem; } .dnb-popover__arrow__placement--top { bottom: -1rem; transform: rotate(180deg); } .dnb-popover__arrow__placement--left { right: -1rem; transform: rotate(90deg); } .dnb-popover__arrow__placement--right { left: -1rem; transform: rotate(270deg); } .dnb-popover__arrow__arrow--left { align-self: flex-start; } .dnb-popover__arrow__arrow--right { align-self: flex-end; } .dnb-popover__close.dnb-button { position: absolute; top: var(--inner-space); right: var(--inner-space); color: inherit; -webkit-user-select: none; user-select: none; } .dnb-popover__close.dnb-button:hover { opacity: 0.7; } @keyframes show-popover { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: translateY(0); } } @keyframes hide-popover { from { opacity: 1; transform: translateY(0); } to { opacity: 0; visibility: hidden; transform: translateY(-8px); } }