
/* 
#dedbcb
#666361
#285261
#232d33 
*/

:root {
    color-scheme: light;

    
    --bgcanvas: #efefef;
    --bgcolor: #efefef;
    --bgcolor1: #dfdfdf;
    --bgcolor2: #555;

    --btncolor: #000;
    --btnfgcolor: #fff;
    --inputcolor: #ddd;

    --hover: #97c6cc;
    --accent1: #97c6cc33;
    --accent2: #a9bec2;

    --fgcolor: #666361;
    --fgcolor1: #232d33;
    --fgcolor2: #efefef;
    --bordercolor: #ccc;


    --roundcorner:1rem;
}

/* mode */
.dark {
    
    --bgcanvas: #666;
    --bgcolor: #333;
    --bgcolor1: #555;
    --bgcolor2: #efefef;

    --btncolor: #000;
    --btnfgcolor: #fff;
    --inputcolor: #222;

    --hover: #57787c;
    --accent1: #51666933;
    --accent2: #556568;

    --fgcolor: #d3cfca;
    --fgcolor1: #232d33;
    --fgcolor2: #000;
    --bordercolor: #555;
}

html,body{
    padding:0;
    margin: 0;
    min-height:100dvh;
    width:100%;
    touch-action: none;
    background-color: var(--bgcanvas); 
    color: var(--fgcolor);
    font-family: 'Roboto',Arial, Helvetica, sans-serif;
    
}
*{
  box-sizing: border-box;
}
a,a:visited {
  text-decoration: none;
  color:var(--bgcolor2);
}

header{ padding:4rem 4rem 0 4rem;}

.fullheight{height:100%;min-height:100dvh;}
.maxheight{max-height:100vh;}

.limitwidth{width:100%;max-width: 1920px;margin:0 auto;}
.flex{display:flex;}
.flex-wrap{flex-wrap: wrap;}
.flex-auto{flex:auto}
.gap{gap:1rem;}
.gapS{gap:0.4rem}
.paddingS{padding:0.2rem}
.padding{padding:0.4rem}
.padding2{padding:4rem}
.flex-column{flex-direction: column;}
.align-center{align-items: center;}
.space-between{justify-content: space-between;}
.overflowHidden{overflow: hidden;}
.overflowY{overflow-y: scroll;}
.centervh{
    width:100%;
    height:100vh;
    height:100dvh;
    display:flex;
    align-items: center;
    justify-content: center;
    /* background-color: #fc08; */
}
.grid{display:grid}
.grid2{display:grid;grid-template-columns: 1fr 1fr;}
.rounded{border-radius: var(--roundcorner);}
h1,h2,h3,h4,h5{
  padding:0;margin:0;
}

button,
select,
textarea,
input{
  font-family: inherit;
  padding:0.4rem 0.6rem;
  border-radius: 0.4rem;
  border:0;
  font-size: 0.9rem;
  background-color: #fffc;
}


a.button,
button{
  background:var(--btncolor);
  color:var(--btnfgcolor);
  padding:0.4rem 0.8rem;
  border-radius: 30px;
  border:0;
}
a.button{
  line-height: 3rem;
}
a.button:hover,
button:hover{
  background:var(--accent2);
}
button:disabled{
  background-color: #333;
  cursor:auto ;
}

button,
option,
select{
  cursor:pointer ;
}

.center{
  text-align: center;
}

.bg{background: var(--bgcolor);}
.bg1{background: var(--bgcolor1);}
.bg2{background: var(--bgcolor2);}

.ads{
    /* font-size:0; */
    font-size:9pt;
    width:100%;
    min-height: 120px;
    height:120px !important;
    background-color: var(--bgcolor2);
    color: var(--fgcolor2);
    padding:0.4rem;
    text-align: center;
}
.limited-ad { 
width:100%; 
max-width: 728px; max-height: 90px;
height: 90px !important; 
display: block; 
/* background-color: #fff; */
margin:0 auto;
}

canvas{
    max-width:100%;
}
@media (max-width: 850px) {
    .grid2{display:grid;grid-template-columns: 1fr;}
    .padding2{padding:2rem;}
    header{ padding:2rem 2rem 0 2rem;}
}

#previewCanvas{
  max-height: 40vh;
}

/***** Chrome *****/
/* width */
::-webkit-scrollbar {
width: 16px;
}
/* Track */
::-webkit-scrollbar-track {
/* background: var(--bgcolor); */
background: transparent;
}
/* Handle */
::-webkit-scrollbar-thumb {
/* background: var(--fgcolor); */
background: transparent;
}
/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
background: var(--fgcolor);
cursor: pointer;
}



.drop-zone {
  background-color: var(--accent1);
  display:flex;
  align-items: center;
  padding:1rem;
  border-radius: 0.4rem;
  border: 1px dashed #000;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.drop-zone strong {
  font-size: 1rem;
}

.drop-zone span {
  font-size: 0.85rem;
}
.pastebox{
  display: inline-block;
  width:4rem;
  height:4rem;
  padding:0;
  text-align: center;
}
.hidden {
  display: none;
}

.drop-zone--active {
  border-color: var(--accent1);
  background: var(--bgcolor1)
}

.fullpage {
  height: 100vh;
  overflow-y: auto;
  scroll-snap-type: y mandatory;
  scroll-behavior: smooth;
}
.fullpage section {
  height: 100vh;
  scroll-snap-align: start; /* align top of section to top of viewport */

  box-sizing: border-box;
  border-bottom: 1px solid rgba(0,0,0,.06);

}

.test{
    height:1000px;
    background-color: #cccc;
}

.step{
  width:100%;
  display:flex;
  gap:1rem;
  margin-bottom: 1rem;
}
i.num{
  --size: 3rem;
  display: block;
  font-style: normal;
  font-size:1.8rem;
  background-color: var(--fgcolor);
  border-radius: 50%;
  width:var(--size);
  height:var(--size);
  text-align: center;
  line-height: var(--size);
  flex-shrink: 0;
  color:var(--fgcolor2);
}

#qrUrlInput{
  width:100%;
  resize: vertical;
}
.logo svg path,
.logo svg line{
  stroke: var(--fgcolor);
}

.status{
  font-style: italic;
}

.color-list{
  display:grid;
  grid-template-columns: repeat(auto-fit,minmax(160px,1fr));
  gap:0.75rem;
}

.color-chip{
  display:flex;
  align-items:center;
  gap:0.75rem;
  width:100%;
  text-align:left;
  background:var(--accent1);
  color:inherit;
  border-radius:0.5rem;
  border:1px solid var(--bordercolor);
  padding:0.6rem;
  cursor:pointer;
}

.color-chip__swatch{
  width:2.8rem;
  height:2.8rem;
  border-radius:0.4rem;
  border:1px solid rgba(0,0,0,0.2);
  flex-shrink:0;
}

.color-chip__info{
  display:flex;
  flex-direction:column;
  line-height:1.2;
}

.color-chip__info small{
  opacity:0.8;
  font-size:0.75rem;
}

.palette-card{
  border:1px solid var(--bordercolor);
  border-radius:0.75rem;
  padding:0.75rem;
  background:var(--accent1);
  display:flex;
  flex-direction:column;
  gap:0.5rem;
}

.palette-card__heading{
  font-weight:600;
  font-size:0.9rem;
}

.palette-card__swatches{
  display:flex;
  gap:0.5rem;
  flex-wrap:wrap;
}

.palette-swatch{
  border:1px solid var(--bordercolor);
  border-radius:0.5rem;
  background:var(--bgcolor);
  display:flex;
  align-items:center;
  gap:0.5rem;
  padding:0.4rem 0.6rem;
  cursor:pointer;
  min-width:140px;
}

.palette-swatch__color{
  width:2.2rem;
  height:2.2rem;
  border-radius:0.4rem;
  border:1px solid rgba(0,0,0,0.2);
  flex-shrink:0;
}

.palette-swatch__label{
  display:flex;
  flex-direction:column;
  font-size:0.8rem;
  color:var(--fgcolor)
}

.palette-swatch__label small{
  opacity:0.8;
}

.color-groups{
  display:flex;
  flex-direction:column;
  gap:1rem;
}

.color-group{
  border:1px solid var(--bordercolor);
  border-color:var(--group-color,var(--bordercolor));
  border-radius:0.6rem;
  padding:0.75rem;
  background:var(--accent1);
}

.color-group__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:0.5rem;
  margin-bottom:0.5rem;
}

.color-group__header small{
  font-size:0.8rem;
  opacity:0.8;
}

.color-group__list{
  display:flex;
  flex-direction:column;
  gap:0.5rem;
}

.color-chip--compact{
  padding:0.4rem 0.5rem;
}

.color-chip--compact .color-chip__swatch{
  width:2rem;
  height:2rem;
}

.slider-label{
  display:flex;
  align-items:center;
  gap:0.5rem;
  font-size:0.85rem;
}

.slider-label input{
  width:7rem;
}
