.addons-boxes-w { display: grid; grid-template-columns: 1fr 1fr 1fr 1fr; grid-gap: $content-padding; .addon-box { background-color: #fff; border: 1px solid $border-color-light; border-radius: $border-radius-lg; position: relative; @include white-box(); &.status-is-featured { } &.status-activated { } &.status-installed { .addon-name { } .addon-desc { } } &.status-update-available { box-shadow: inset 0px 0px 0px 2px #fce687; background: #fff8cb; border-color: #fce687; order: -1; .addon-name { color: #212121; } .addon-desc { color: #8e7e4b; } .addon-media { border-color: #fff; } } } .addon-label { position: absolute; top: -3px; right: -3px; background-color: #4a92ff; color: #fff; border-radius: 0px 10px 0px 10px; line-height: 1.1; padding: 4px 14px 7px 12px; font-size: floor($font-size-base * 1.2); font-weight: $body-font-weight-bold; i, span { display: inline-block; vertical-align: middle; } i { margin-right: 7px; font-size: 16px; } } .addon-media { padding-bottom: 65%; background-size: contain; background-repeat: no-repeat; background-position: center center; margin: 5px; border-radius: $border-radius-lg; background-color: #fff; } .addon-header { } .addon-name { flex: 1; margin: 0px; padding: 30px 20px 0px; font-size: $body-font-size-m; border-top: 1px solid $border-color-lightest; a { display: inline-block; text-decoration: none; color: $headings-color; &:hover { color: $brand-primary; span { border-bottom-color: $brand-primary; border-bottom-style: solid; } } } span { display: inline-block; border-bottom: 1px dotted $headings-color; margin-right: 4px; } i { font-size: 14px; } } .addon-body { padding: 10px 20px 20px; font-size: floor($font-size-base * 0.95); line-height: 1.35; color: $color-faded; padding-bottom: 85px; } .addon-desc { } .addon-meta { margin-top: 10px; font-size: floor($font-size-base * 0.7); color: $body-color; div { display: inline-block; border: 1px dotted #6c7088; margin-right: 5px; padding: 1px 5px; text-transform: uppercase; letter-spacing: 1px; line-height: 1.3; border-radius: 4px; } } .addon-footer { border-top: 1px solid rgba(0, 0, 0, 0.05); padding: 15px; text-align: right; display: flex; align-items: center; position: absolute; bottom: 0px; left: 0px; right: 0px; background-color: #f8f8f8; border-radius: 0 0 $border-radius-lg $border-radius-lg; .addon-price { font-weight: $body-font-weight-bold; margin-right: auto; font-size: 22px; line-height: 1; color: $headings-color; padding-left: 5px; } a:first-child { margin-left: auto; } .os-addon-activated-label { display: block; text-align: center; background-color: #caffd6; border: 1px solid #57d675; color: #235b33; text-decoration: none; padding: 0px 6px; border-radius: $border-radius-sm; font-weight: $body-font-weight-bold; .latepoint-icon { font-size: 12px; } span { padding: 3px 0px; display: inline-block; vertical-align: middle; } span + span { margin-left: 6px; } } .os-subtle-addon-action-btn { display: block; color: #395175; text-decoration: none; border: none; font-size: 12px; margin-right: 10px; opacity: 0.8; margin-right: 10px; padding-right: 10px; border-right: 1px solid rgba(0, 0, 0, 0.1); position: relative; &:focus { outline: none; box-shadow: none; } &.os-loading { &:before { @include loading-circle($brand-primary, 12px); left: -10px; } } } .os-update-plugin-link { display: block; text-align: center; background-color: #fff; border: 1px solid $brand-primary; color: $brand-primary; text-decoration: none; padding: 0px 8px; border-radius: $border-radius-sm; span { padding: 3px 0px; display: inline-block; vertical-align: middle; } span + span { border-left: 1px solid $brand-primary; padding-left: 8px; margin-left: 8px; } } .os-install-addon-btn, .os-purchase-addon-btn { display: block; text-align: center; background-color: #fff; border: 1px solid $brand-primary; color: $brand-primary; text-decoration: none; padding: 0px 8px; border-radius: $border-radius-sm; span { padding: 3px 0px; display: inline-block; vertical-align: middle; } span + span { border-left: 1px solid $brand-primary; padding-left: 8px; margin-left: 8px; } &.os-loading { span:first-child { color: transparent; position: relative; &:before { @include loading-circle($brand-primary, 12px); } } } } } } .addons-categories-wrapper { display: flex; align-items: center; gap: 20px; border-bottom: 1px solid $border-color-lightest; margin-bottom: 30px; .addon-category-filter-trigger { white-space: nowrap; padding: 0 0 10px 0; font-size: $body-font-size-m; font-weight: $body-font-weight-bold; color: $color-faded; cursor: pointer; position: relative; &:hover:not(.is-selected){ color: $headings-color; } &.is-selected { color: $headings-color; &:before { content: ""; position: absolute; bottom: -2px; left: 0; right: 0; border-radius: 4px; height: 3px; background-image: linear-gradient(45deg, #702fdb, #ffc390); } } } } .addon-messages-wrapper { margin-bottom: 30px; .addon-message { padding: 15px 20px; background-color: #eee; border: 2px solid #ddd; display: flex; align-items: center; justify-content: space-between; border-radius: 6px; .message-title { font-weight: $body-font-weight-bold; font-size: floor($font-size-base * 1.2); color: $headings-color; margin-bottom: 5px; } .message-content { color: $headings-color; font-size: floor($font-size-base * 1.1); font-weight: $body-font-weight-bold; } + .addon-message { margin-top: 10px; } &.addon-message-type-info { background-color: #f1fff1; border: 1px solid #bbe2b9; position: relative; padding-left: 50px; &:before { animation: 1s ease 0s pulseSuccessPill infinite; color: #fff; position: absolute; top: 50%; transform: translateY(-50%); left: 20px; width: 10px; height: 10px; text-align: center; border-radius: 50%; z-index: 3; content: ""; background-color: #63a0e5; box-shadow: 0px 1px 0px 0px rgba(123, 169, 255, 0.5), 0px 0px 0px 6px rgba(138, 179, 255, 0.25), 0px 0px 0px 10px rgba(138, 185, 255, 0.15), inset 0px 2px 0px 0px rgba(255, 255, 255, 0.4); border: 1px solid #3178d4; border-bottom-color: #2f71c8; } } } .addon-message-buttons-wrapper { display: flex; gap: 15px; align-items: center; .message-link { display: inline-flex; font-weight: $body-font-weight-bold; align-items: center; text-decoration: none; gap: 5px; padding: 5px 10px; background-color: $brand-primary; color: #fff; border-radius: 6px; } .message-dismiss-button { font-weight: $body-font-weight-bold; display: inline-flex; align-items: center; gap: 5px; text-decoration: none; padding: 5px 10px; border-radius: 6px; background-color: #cff8cf; color: #000; position: relative; &.os-loading { color: transparent; &:before { @include loading-circle(#000, 12px); } } } } }