unpoly
Version:
Progressive enhancement for HTML
201 lines (179 loc) • 3.9 kB
CSS
[hidden][hidden] {
display: none ;
}
up-wrapper {
display: inline-block;
}
up-bounds {
position: absolute;
}
.up-focus-hidden:focus-visible {
outline-color: transparent ;
outline-style: none ;
}
body.up-scrollbar-away {
padding-right: calc(var(--up-scrollbar-width) + var(--up-original-padding-right)) ;
}
body.up-scrollbar-away, html:has(> body.up-scrollbar-away) {
overflow-y: hidden ;
}
body.up-scrollbar-away .up-scrollbar-away {
right: calc(var(--up-scrollbar-width) + var(--up-original-right)) ;
}
.up-request-loader {
display: none;
}
up-progress-bar {
position: fixed;
top: 0;
left: 0;
z-index: 999999999;
height: 3px;
background-color: #007bff;
}
up-focus-trap {
position: fixed;
top: 0;
left: 0;
width: 0;
height: 0;
}
up-cover-viewport, up-drawer-viewport, up-modal-viewport, up-drawer-backdrop, up-modal-backdrop, up-cover, up-drawer, up-modal {
top: 0;
left: 0;
bottom: 0;
right: 0;
}
up-drawer-box, up-modal-box {
box-shadow: 0 0 10px 1px rgba(0, 0, 0, 0.3);
}
up-popup {
box-shadow: 0 0 4px rgba(0, 0, 0, 0.3);
}
up-popup:focus, up-cover-box:focus, up-drawer-box:focus, up-modal-box:focus, up-cover:focus, up-drawer:focus, up-modal:focus, up-popup:focus-visible, up-cover-box:focus-visible, up-drawer-box:focus-visible, up-modal-box:focus-visible, up-cover:focus-visible, up-drawer:focus-visible, up-modal:focus-visible {
outline: none;
}
up-cover, up-drawer, up-modal {
z-index: 2000;
position: fixed;
}
up-drawer-backdrop, up-modal-backdrop {
position: absolute;
background: rgba(0, 0, 0, 0.4);
}
up-cover-viewport, up-drawer-viewport, up-modal-viewport {
position: absolute;
overflow-y: scroll;
overflow-x: hidden;
overscroll-behavior: contain;
display: flex;
align-items: flex-start;
justify-content: center;
}
up-popup, up-cover-box, up-drawer-box, up-modal-box {
position: relative;
box-sizing: border-box;
max-width: 100%;
background-color: #fff;
padding: 20px;
overflow-x: hidden;
}
up-popup-content, up-cover-content, up-drawer-content, up-modal-content {
display: block;
}
up-popup {
z-index: 1000;
}
up-popup-dismiss, up-cover-dismiss, up-drawer-dismiss, up-modal-dismiss {
color: #888;
position: absolute;
top: 10px;
right: 10px;
font-size: 1.7rem;
line-height: 0.5;
cursor: pointer;
}
up-modal[nesting="0"] up-modal-viewport {
padding: 25px 15px;
}
up-modal[nesting="1"] up-modal-viewport {
padding: 50px 30px;
}
up-modal[nesting="2"] up-modal-viewport {
padding: 75px 45px;
}
up-modal[nesting="3"] up-modal-viewport {
padding: 100px 60px;
}
up-modal[nesting="4"] up-modal-viewport {
padding: 125px 75px;
}
up-modal[size=small] up-modal-box {
width: 350px;
}
up-modal[size=medium] up-modal-box {
width: 650px;
}
up-modal[size=large] up-modal-box {
width: 1000px;
}
up-modal[size=grow] up-modal-box {
width: auto;
}
up-modal[size=full] up-modal-box {
width: 100%;
}
up-drawer-viewport {
justify-content: flex-start;
}
up-drawer[position=right] up-drawer-viewport {
justify-content: flex-end;
}
up-drawer-box {
min-height: 100vh;
}
up-drawer[size=small] up-drawer-box {
width: 150px;
}
up-drawer[size=medium] up-drawer-box {
width: 340px;
}
up-drawer[size=large] up-drawer-box {
width: 600px;
}
up-drawer[size=grow] up-drawer-box {
width: auto;
}
up-drawer[size=full] up-drawer-box {
width: 100%;
}
up-cover-box {
width: 100%;
min-height: 100vh;
padding: 0;
}
up-popup {
padding: 15px;
text-align: left;
}
up-popup[size=small] {
width: 180px;
}
up-popup[size=medium] {
width: 300px;
}
up-popup[size=large] {
width: 550px;
}
up-popup[size=grow] up-popup {
width: auto;
}
up-popup[size=full] up-popup {
width: 100%;
}
[up-clickable][role=link] {
cursor: pointer;
}
[up-expand]:not([role]), [up-expand][role=link] {
cursor: pointer;
}