woocommerce-paypal-payments/modules/ppcp-settings/resources/css/components/screens/_settings.scss

316 lines
5.1 KiB
SCSS

@import './settings/controls';
@import './settings/input';
@import './settings/tab-settings';
@import './settings/tab-styling';
@import './settings/tab-paylater-configurator';
// Container and Tab Settings
.ppcp-r-tabs.settings,
.ppcp-r-container--settings {
--max-container-width: var(--max-width-settings);
.ppcp-r-inner-container {
max-width: var(--max-container-width);
}
}
// Todo List and Feature Items
.ppcp-r-todo-items {
display: flex;
flex-direction: column;
}
.ppcp-r-todo-item {
position: relative;
border-bottom: 1px solid $color-gray-300;
padding-bottom: 16px;
padding-top: 16px;
opacity: 1;
transform: translateY(0);
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
&:first-child, &.is-dismissing:first-child + .ppcp-r-todo-item {
padding-top: 0;
}
&:last-child,
&:not(.is-dismissing):has(+ .is-dismissing:last-child) {
border-bottom: none;
padding-bottom: 0;
}
&.is-dismissing {
opacity: 0;
transform: translateY(-4px);
height: 0;
margin: 0;
padding: 0;
border: 0;
.ppcp-r-todo-item__inner {
height: 0;
padding: 0;
margin: 0;
}
}
&:hover {
cursor: pointer;
.ppcp-r-todo-item__inner {
.ppcp-r-todo-item__description {
color: $color-text-text;
}
}
}
&.is-completed {
.ppcp-r-todo-item__icon {
border-style: solid;
background-color: $color-blueberry;
display: flex;
align-items: center;
justify-content: center;
.dashicons {
color: #fff;
font-size: 18px;
width: 18px;
height: 18px;
}
}
.ppcp-r-todo-item__content {
text-decoration: line-through;
}
}
p {
@include font(14, 20, 400);
}
&__inner {
position: relative;
height: auto;
overflow: hidden;
display: flex;
align-items: center;
gap: 18px;
width: 100%;
padding-right: 36px;
transition: height 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
&__dismiss {
position: absolute;
right: 0;
top: 50%;
transform: translateY(-50%);
background-color: transparent;
border: none;
padding: 4px;
cursor: pointer;
color: $color-gray-400;
border-radius: 50%;
width: 24px;
height: 24px;
display: flex;
align-items: center;
justify-content: center;
opacity: 1;
&:hover {
background-color: $color-gray-100;
color: $color-gray-700;
}
.dashicons {
font-size: 14px;
width: 14px;
height: 14px;
display: flex;
align-items: center;
justify-content: center;
}
}
.ppcp-r__checkbox {
.components-flex {
gap: 12px;
}
label {
@include font(13, 20, 400);
color: $color-blueberry;
}
}
&__description {
@include font(13, 20, 400);
color: $color-blueberry;
}
&__icon {
border: 1px dashed #949494;
background: #fff;
border-radius: 50%;
width: 24px;
height: 24px;
flex-shrink: 0;
}
}
.ppcp-r-tab-overview-features {
--block-header-gap: 12px;
}
.ppcp-r-tab-overview-help {
--block-header-gap: 8px;
}
.ppcp-r-settings-block__feature {
.ppcp--action-buttons {
display: flex;
gap: 18px;
.components-button.is-tertiary {
padding-left: 0;
padding-right: 0;
}
}
.ppcp--item-notes {
display: flex;
flex-direction: column;
span {
font-weight: 500;
}
margin-top: 24px;
}
}
// Feature Refresh
.ppcp-r-feature-refresh {
display: flex;
gap: 12px;
margin-bottom: 24px;
&__row {
display: flex;
align-items: center;
}
&__content {
width: 100%;
&-title {
@include font(16, 20, 700);
color: $color-black;
display: block;
margin: 0 0 4px 0;
}
p {
@include font(12, 20, 400);
color: $color-gray-700;
margin: 0;
}
}
button {
display: flex;
gap: 4px;
@include font(13, 20, 400);
}
}
.ppcp-r-settings {
.ppcp-highlight {
position: relative;
z-index: 1;
&::before {
content: '';
position: absolute;
top: -8px;
left: -12px;
right: -12px;
bottom: -8px;
border: 1px solid $color-blueberry;
border-radius: 4px;
z-index: -1;
pointer-events: none;
animation: ppcp-setting-highlight-bg 2s cubic-bezier(0.4, 0, 0.2, 1);
animation-fill-mode: forwards;
}
&::after {
content: '';
position: absolute;
top: -8px;
left: -12px;
width: 4px;
bottom: -8px;
background-color: $color-blueberry;
border-top-left-radius: 4px;
border-bottom-left-radius: 4px;
z-index: -1;
pointer-events: none;
animation: ppcp-setting-highlight-accent 2s cubic-bezier(0.4, 0, 0.2, 1);
animation-fill-mode: forwards;
}
}
@keyframes ppcp-setting-highlight-bg {
0%, 15% {
background-color: rgba($color-blueberry, 0.08);
border-color: $color-blueberry;
}
70% {
background-color: transparent;
border-color: transparent;
}
100% {
background-color: transparent;
border-color: transparent;
}
}
@keyframes ppcp-setting-highlight-accent {
0%, 15% {
opacity: 1;
}
70% {
opacity: 0;
}
100% {
opacity: 0;
}
}
.ppcp-r-settings-section {
.ppcp--setting-row {
position: relative;
padding: 12px;
margin: 0 -12px;
transition: background-color 0.2s ease;
&:hover {
background-color: rgba($color-gray-100, 0.5);
}
}
}
// RTL support
html[dir="rtl"] {
.ppcp-highlight {
&::after {
left: auto;
right: -12px;
border-radius: 0 4px 4px 0;
}
}
}
}