* { padding:0;margin:0;box-sizing:border-box; font-family:Inter, 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
:root {
  --grey-g-50: #656266;
  --grey-g-100: #616161;
  --grey-g-200: #303030;
  --grey-g-300: #1A1A1A;
  
  /* font color */
  --text-light: #E3E3E3;
  --text-mid: #616161;
  --text-dark: #303030;

  /* strokes */
  --stroke-s-50: #303030;
  --stroke-s-100: #E1E1E1;
  --stroke-s-200: #616161;

  /* statees */
  --state-hover: #F1F1F1;
  --state-pressed: #F0F0F0;
  --state-focused: #005BD3;

  /* plain */
  --white: #FFFFFF;
  --background: #F1F1F1;

  --green: #36FBA1;

  /* focus ring */
  --focus-ring-width: 2px;
  --focus-ring-offset-width: 1px;
  --focus-ring-width-with-offset: 3px;
}

body {
  font-size: 16px;
  color: var(--text-mid);
  background-color: var(--background);
}

body > header {
  display: flex;
  justify-content: center;
  color: var(--text-light);
  background-color: var(--grey-g-300);
}
body > header > div {
  width: 100%;
  max-width: 1440px;
  display: flex;
  gap: 8px;
  padding: 12px 16px;
  justify-content: space-between;
  align-items: center;
  position: relative;
}
body > header .logo svg {
  height: 30px;
  width: 105px;
}
/* hide "shopify" text on mobile screens */
@media (max-width: 768px) {
  body > header .logo svg {
    width: 30px;
  }
  body > header .logo svg #text {
    display: none;
  }
}
body > header > div > * {
  width: 100%;
}
@media (max-width: 768px) {
  body > header > div > *:nth-of-type(odd){
    width: auto;
  }
}

.search-bar {
  position: relative;
  display: flex;
  align-items: center;
}
.search-bar svg {
  position: absolute;
  left: 8px;
}
.search-bar input {
  display: flex;
  height: 32px;
  width: 100%;
  padding: 8px;
  padding-left: 34px;
  align-items: center;
  gap: 6px;
  color: var(--text-light);
  background: var(--grey-g-200);
  border-radius: 8px;
  border: 1px solid var(--stroke-s-200);
  outline: none;
}
.search-bar input:hover {
  border-color: var(--stroke-s-100);
}
.search-bar input:focus {
  border-color: var(--white);
  box-shadow: 0 0 0 var(--focus-ring-width) var(--white);
}
.search-bar input:active {
  border-color: var(--white);
  box-shadow: 0 0 0 var(--focus-ring-width) var(--white);
}
.search-bar input::placeholder {
  color: var(--grey-g-100);
}
.search-bar input:-webkit-autofill,
.search-bar input:-webkit-autofill:hover,
.search-bar input:-webkit-autofill:focus,
.search-bar input:-webkit-autofill:active {
  -webkit-text-fill-color: var(--text-light) !important;
  -webkit-box-shadow: 0 0 0 30px var(--grey-g-200) inset !important;
}

.tag-wrap{
  display: flex;
  justify-content: end;
  position: relative;
}
.tag {
  display: flex;
  height: 32px;
  gap: 8px;
}
.tag > * {
  background-color: var(--grey-g-200);
}

.tag button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px;
  color: var(--text-light);
  border-radius: 8px;
  outline: none;
  border: none;
  cursor: pointer;
}
/* data-associated-modal-open */
/* this is added to trigger from js when its modal is open */
button[data-associated-modal-open] {
  background: var(--grey-g-100) !important;
}
.tag button:hover{
  background: var(--grey-g-100);
}
.tag button:focus{
  background: var(--grey-g-100);
  box-shadow: 
    0 0 0 var(--focus-ring-offset-width) var(--grey-g-200),
    0 0 0 var(--focus-ring-width-with-offset) var(--state-focused);
}
.tag > #store-name {
  display: flex;
  gap: 8px;
  padding: 2px;
  padding-left: 8px;
}
.tag-box {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 28px;
  width: 28px;
  padding: 9px 5px 10px 5px;
  color: rgba(0, 0, 0, 0.40);
  background-color: var(--green);
  border-radius: 6px;
}
@media (max-width: 768px) {
  .tag > #store-name {
    padding-left: 2px;
  }
  .tag > #store-name > *:nth-child(1){
    display: none;
  }
}

/* modal */
.popover-menu{
  position: absolute;
  right: 16px;
  display: none;
  background: var(--white);
  color: var(--text-dark);
  border-radius: 14px;
  border: 1px solid #DBDBDB;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.05);
  z-index: 10;
}
.popover-menu.is-active {
  display: block;
}
#header .popover-menu {
  top:110%;
}
.popover-menu.notification{
  width: 383px;
}
@media (max-width: 768px) {
  .popover-menu.notification{
    width: 100%;
    max-width: 92%;
  }
}
.popover-menu.menu{
  width: 320px;
}
.popover-menu.notification section {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 16px;
}
.popover-menu.notification header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.popover-menu.notification header .title {
  color: var(--text-dark);
  font-size: 14px;
  font-weight: 600;
}
.popover-menu.notification header .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
}
.popover-menu.notification main {
  padding: 16px;
  color: var(--text-mid);
  background: var(--state-hover);
  font-size: 13px;
  font-weight: 600;
  line-height: 140%;
}

.popover-menu .menu{
  display: flex;
  flex-direction: column;
  padding: 6px 0;
}
.popover-menu .menu section {
  padding: 4px 6px;
  border-bottom: 1px solid var(--stroke-s-100);
}
.popover-menu .menu section:first-of-type {
  padding-top: 0;
}
.popover-menu .menu section:last-of-type {
  padding-bottom: 0;
  border-bottom: none;
}
.popover-menu .menu ul li {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px;
  color: var(--text-dark);
  font-size: 13px;
  font-weight: 400;
  border-radius: 8px;
  list-style: none;
  cursor: pointer;
}
.popover-menu .menu ul li:hover {
  background: var(--state-hover);
}
.popover-menu .menu ul li:focus {
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.05);
}
.popover-menu .menu .contact {
  padding: 8px;
}
.popover-menu .menu .contact h3 {
  color: var(--text-dark);
  font-size: 13px;
  line-height: 140%;
}
.popover-menu .menu .contact span {
  color: var(--text-mid);
  font-size: 12px;
  line-height: 130%;
}
.popover-menu .menu .name {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: var(--text-dark);
  background: var(--state-hover);
  padding: 4px 12px 4px 8px;
  margin-bottom: 4px;
  border-radius: 8px;
}
.popover-menu .menu .name > span {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  line-height: 140%;
}
.popover-menu .menu .tag-box {
  font-size: 10.5px;
}

#site-wrap {
  display: flex;
  justify-content: center;
}
#site-wrap > #content {
  width: 100%;
  max-width: 800px;
  margin-top: 32px;
}
@media (max-width: 768px) {
  #site-wrap > #content {
    margin-top: 28px;
  }
}

.trial-notice {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 8px 12px 16px;
  color: var(--text-light);
  background: var(--grey-g-200);
  border-radius: 8px;
  position: relative;
}
@media (max-width: 768px) {
  .trial-notice {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    padding-right: 40px;
    border-radius: 0;
  }
}
.trial-notice .title {
  color: var(--text-light);
  font-size: 13px;
  font-weight: 500;
  line-height: 140%;
}
.trial-notice > span {
  display: flex;
  align-items: center;
  gap: 8px;
}
.trial-notice svg {
  cursor: pointer;
}
@media (max-width: 768px) {
  .trial-notice svg {
    position: absolute;
    top: 12px;
    right: 16px;
  }
}
.btn {
  display: flex;
  align-items: center;
  padding: 6px 12px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 600;
  line-height: 130%;
  border: none;
  background: var(--white);
  cursor: pointer;
  position: relative;
  border: 1px solid rgba(0, 0, 0, 0.10);
  border-bottom: 0;
  box-shadow: 0px 1.5px 0px 0px #B5B5B5;
  z-index: 2;
}
.btn:hover{
  background: var(--state-hover);
}
.btn:active{
  border-color: rgba(0, 0, 0, 0.10);
  box-shadow:
    0px 1.5px 0px 0px var(--state-hover),
    0px 3px 0px 0px #E2E2E2 inset;
}
.btn:focus:before {
  box-shadow: 0 0 0 3px #005BD3;
}
.btn.dark {
  color: #F6F3F6;
  background: #404040;
  border: 2px solid #666666;
  border-bottom: 0;
  box-shadow: 0px 2px 0px 0px #000000;
}
.btn.dark:hover {
  background: #2A2A2A;
}
.btn.dark:active {
  border-color: #666666;
  box-shadow:
    0px 2px 0px 0px #000000,
    0px 4px 0px 0px #000000 inset;
}
.btn.plain {
  border-color: transparent;
  background: none;
  box-shadow: none;
}
.btn.plain:hover {
  background: #E7E7E7 !important;
}
.btn.plain:active {
  background: #E0E0E0 !important;
}
.btn:before, .btn:after {
  content: "";
  position: absolute;
  inset: -4px;
  border-radius: 8px;
  pointer-events: none;
}
.btn.dark:focus:before {
  box-shadow: 0 0 0 3px #005BD3;
}

[data-setup-guide] {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 8px;
  margin-top: 16px;
  background: var(--white);
  color: var(--text-dark);
  border-radius: 14px;
  border: 1px solid #DBDBDB;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.05);
}
@media (max-width: 768px) {
  [data-setup-guide] {
    border-radius: 0;
    box-shadow: none;
  }
}

[data-setup-guide] > header {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 8px;
  color: var(--text-dark);
}
[data-setup-guide] > header  h2{
  font-size: 14px;
  font-weight: 600;
  line-height: 140%;
}
[data-setup-guide] > header  p{
  font-size: 13px;
  font-weight: 400;
  line-height: 140%;
}
[data-setup-guide] > header .title {
  display: flex;
  justify-content: space-between;
}
[data-setup-guide] > header .title svg {
  border-radius: 6px;
  cursor: pointer;
}
[data-setup-guide] > header .title svg:hover {
  background: var(--state-hover);
}
.completion {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 400;
  line-height: 130%;
}
.progress {
  width: 72px;
  height: 4px;
  background: var(--text-light);
  border-radius: 4px;
}
.progress .bar {
  display: block;
  height: 100%;
  border-radius: 4px;
  background: var(--grey-g-300);
  transition: width 0.5s ease-in-out;
}
.check-icon svg.default, .check-icon svg.loading, .check-icon svg.done{
  display: none;
}
.check-icon svg.default.show {
  display: block;
  stroke-dasharray: 5;
  fill: none;
  cursor: pointer;
}
.check-icon svg.default:hover {
  stroke-dasharray: 100;
}
.check-icon svg.default:active {
  fill: #D9D9D9;
}
.check-icon svg.loading.show {
  display: block;
  fill: none;
  cursor: progress;
  animation: spin 1s linear infinite;
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.check-icon svg.done.show {
  display: block;
  animation: grow .3s linear;
}
@keyframes grow {
  0% {
    transform: scale(.5);
  }
  100% {
    transform: scale(1);
  }
}
[data-setup-guide] > main {
  display: none;
}
[data-setup-guide].show > main {
  display: block;
}
[data-setup-guide].show > header .title svg {
  transform: rotate(180deg);
}
[data-setup-guide] > main > ul > li {
  display: flex;
  gap: 8px;
  padding: 8px;
  border-radius: 10px;
}
[data-setup-guide] > main > ul > li.is-active {
  background: var(--state-hover);
}
[data-setup-guide] > main > ul > li > .content {
  display: flex;
  gap: 96px;
  width: 100%;
}
[data-setup-guide] > main > ul > li > .content > .main {
  flex-grow: 1;
}
[data-setup-guide] > main > ul > li > .content > .main,
[data-setup-guide] > main > ul > li > .content > .main div {
  display: flex;
  flex-direction: column;
}
[data-setup-guide] > main > ul > li > .content > .main div {
  gap: 16px;
  align-items: start;
}
[data-setup-guide] > main > ul > li > .content h3 {
  padding-top: 3px;
  color: var(--text-dark);
  font-size: 13px;
  line-height: 140%;
}
[data-setup-guide] > main > ul > li > .content p {
  color: var(--text-mid);
  font-size: 13px;
  line-height: 140%;
}
[data-setup-guide] > main > ul > li > .content > .main > div {
  height: 0;
  visibility: hidden;
}
[data-setup-guide] > main > ul > li.is-active > .content > .main{
  gap: 16px;
}
[data-setup-guide] > main > ul > li.is-active > .content > .main > div {
  height: auto;
  visibility: visible;
}
[data-setup-guide] > main > ul > li.is-active > .content > .main > div > span {
  display: inline-flex;
  gap: 16px;
}
[data-setup-guide] > main > ul > li > .content a {
  color: var(--state-focused);
  font-size: 14px;
  line-height: 140%;
  text-decoration: none;
}
[data-setup-guide] > main > ul > li > .content .illustration {
  display: none;
  width: 156.145px;
  min-width: 156.145px;
  height: 120px;
  align-items: center;
  justify-content: center;
}
[data-setup-guide] > main > ul > li.is-active > .content .illustration{
  display: flex;
  align-items: center;
}
@media (max-width: 768px) {
  [data-setup-guide] > main > ul > li.is-active > .content .illustration{
    display: none;
  }
}
[data-setup-guide] > main > ul > li > .content .illustration img {
  height: 100%;
  width: 100%;
  object-fit: contain;
}