/** Headers **/
.wux-header {}


/** Headers > Dashboard **/
.wux-header--dashboard {}
.wux-header--dashboard .container { padding-block: var(--padding); --padding: 24px; border-radius: var(--br-large); overflow: hidden; display: flex; flex-direction: column; align-items: start; justify-content: center; gap: 16px; }

.wux-header--dashboard .title { grid-area: title; }
.wux-header--dashboard .wux-site-info { grid-area: site-info; }
.wux-header--dashboard .site-image { grid-area: site-image; margin: 0 auto; max-height: 440px; height: 100%; }
.wux-header--dashboard .site-image img { aspect-ratio: 1/1; max-height: 440px; height: 100%; width: 100%; object-position: center top; border-radius: var(--br); position: relative; z-index: 2; }

@media (min-width: 768px) {
    .wux-header--dashboard .container { --padding: 32px; }
}
@media (min-width: 1200px) {
    .wux-header--dashboard .container { display: block; position: relative; --padding: 48px; }
    .wux-header--dashboard .title { position: absolute; top: var(--padding); left: var(--padding); }
    .wux-header--dashboard .wux-site-info { position: absolute; bottom: var(--padding); left: var(--padding); }
}


/** Headers > Site **/
.wux-header--site {}
.wux-header--site .wux-block__body .container { padding-block: var(--padding); --padding: 48px; border-radius: var(--br-large); overflow: hidden; position: relative; }

.wux-header--site .favicon { width: 80px; aspect-ratio: 1/1; display: grid; place-content: center; background-color: var(--bg-clr-dark); border-radius: var(--br); margin-bottom: 24px; }
.wux-header--site .favicon img { width: 64px; aspect-ratio: 1/1; border-radius: var(--br); object-fit: contain; }
.wux-header--site p + .creator { margin-top: 4px; }
.wux-header--site .btn-group { margin-top: 24px; }

.wux-header--site .site-image { display: block; margin: 0 auto; aspect-ratio: 14/9; max-height: 600px; height: 100%; width: fit-content; position: relative; cursor: pointer; }
.wux-header--site .site-image img { aspect-ratio: 14/9; width: 100%; height: 100%; object-position: center top; border-radius: var(--br); position: relative; z-index: 2; }
.wux-header--site .site-image .btn-group-small { position: absolute; top: 16px; right: 16px; display: flex; gap: 8px; z-index: 3; opacity: 0; transition: opacity 0.3s ease; pointer-events: none; }
.wux-header--site .site-image:hover .btn-group-small { opacity: 1; pointer-events: auto; }


/** Headers > Element **/
.wux-header--element {}
.wux-header--element .wux-block__body .container { padding-block: var(--padding); --padding: 48px; border-radius: var(--br-large); overflow: hidden; position: relative; }

.wux-header--element p + .creator { margin-top: 4px; }
.wux-header--element .btn-group { margin-top: 24px; }

.wux-header--element .site-image { display: block; margin: 0 auto; aspect-ratio: 14/9; max-height: 600px; height: 100%; width: fit-content; position: relative; cursor: pointer; }
.wux-header--element .site-image img { aspect-ratio: 14/9; width: 100%; height: 100%; object-position: center top; border-radius: var(--br); position: relative; z-index: 2; }
.wux-header--element .site-image .btn-group-small { position: absolute; top: 16px; right: 16px; display: flex; gap: 8px; z-index: 3; opacity: 0; transition: opacity 0.3s ease; pointer-events: none; }
.wux-header--element .site-image:hover .btn-group-small { opacity: 1; pointer-events: auto; }


/** Footers **/
.wux-footer {}


/** Footers > Site **/
.wux-footer--site {}
.wux-footer--site h2 { margin-bottom: 16px; }


/** Footers > Element **/
.wux-footer--element {}
.wux-footer--element h2 { margin-bottom: 16px; }


/** Blocks **/
.wux-block {}

.wux-block__header { padding-bottom: 32px; }
.wux-block__header .wux-block__title span { opacity: 0.5; }
.wux-block__header .wux-block__title span:last-child { opacity: 1; }

.wux-block__toolbar { padding-bottom: 16px; }
.wux-block__toolbar .container { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; }

.wux-block__footer { padding-top: 32px; }


/** Blocks > Sites (Archive) **/
.wux-block--sites {}
.wux-block--sites .wux-block__header .container { display: flex; justify-content: space-between; flex-direction: column; align-items: start; gap: 16px; }
.wux-block--sites .wux-block__body .container { display: grid; grid-template-columns: repeat(var(--gc, 1), minmax(300px, 1fr)); gap: 32px; }

@media (min-width: 786px) {
    .wux-block--sites .wux-block__body .container { --gc: 2; }
}
@media (min-width: 992px) {
    .wux-block--sites .wux-block__header .container { flex-direction: row; align-items: center; }
    .wux-block--sites .wux-block__body .container { --gc: 3; }
}
@media (min-width: 1400px) {
    .wux-block--sites .wux-block__body .container { --gc: 4; }
}


/** Blocks > Site (Detail) **/
.wux-block--site {}
.wux-block--site .wux-block__header { padding-bottom: 8px; position: relative; }
.wux-block--site .wux-block__header img { width: 100%; height: 100%; aspect-ratio: 14/9; object-fit: cover; object-position: top; border-radius: var(--br); }

.wux-block--site .wux-block__toolbar { padding: 0; }
.wux-block--site .wux-block__toolbar .container { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px; }
.wux-block--site .wux-block__toolbar .btn-group-small { display: flex; gap: 8px; }
.wux-block--site .wux-block__toolbar .wux-like { box-shadow: unset; }

.wux-block--site .wux-block__body { padding-top: 32px; }
.wux-block--site .wux-block__body .wux-text ~ .wux-text { margin-top: 16px; }


/** Blocks > Sites Elements **/
.wux-block--site-elements {}
.wux-block--site-elements .wux-block__header .container { display: flex; justify-content: space-between; flex-direction: column; align-items: start; gap: 16px; }
.wux-block--site-elements .wux-block__body:not(.--empty) .container { display: grid; grid-template-columns: repeat(var(--gc, 1), minmax(300px, 1fr)); gap: 32px; }

@media (min-width: 786px) {
    .wux-block--site-elements .wux-block__body .container { --gc: 2; }
}
@media (min-width: 992px) {
    .wux-block--site-elements .wux-block__header .container { flex-direction: row; align-items: center; }
    .wux-block--site-elements .wux-block__body .container { --gc: 3; }
}


/** Blocks > Elements (Archive) **/
.wux-block--elements {}
.wux-block--elements .wux-block__header .container { display: flex; justify-content: space-between; flex-direction: column; align-items: start; gap: 16px; }
.wux-block--elements .wux-block__body .container { display: grid; grid-template-columns: repeat(var(--gc, 1), minmax(300px, 1fr)); gap: 32px; }

@media (min-width: 786px) {
    .wux-block--elements .wux-block__body .container { --gc: 2; }
}
@media (min-width: 992px) {
    .wux-block--elements .wux-block__header .container { flex-direction: row; align-items: center; }
    .wux-block--elements .wux-block__body .container { --gc: 3; }
}
@media (min-width: 1400px) {
    .wux-block--elements .wux-block__body .container { --gc: 4; }
}


/** Blocks > Elements > Categories **/
.wux-block--element-categories {}
.wux-block--element-categories .wux-block__header .container { display: flex; justify-content: space-between; }
.wux-block--element-categories .column { display: flex; flex-direction: column; gap: 8px; }


/** Blocks > Liked **/
.wux-block--liked {}
.wux-block--liked .wux-block__toolbar .container { display: flex; justify-content: space-between; align-items: center; }
.wux-block--liked .wux-block__body .container { display: grid; grid-template-columns: repeat(var(--gc, 1), minmax(300px, 1fr)); gap: 32px; }

@media (min-width: 786px) {
    .wux-block--liked .wux-block__body .container { --gc: 2; }
}
@media (min-width: 992px) {
    .wux-block--liked .wux-block__body .container { --gc: 3; }
}
@media (min-width: 1400px) {
    .wux-block--liked .wux-block__body .container { --gc: 4; }
}


/** Blocks > Recents **/
.wux-block--recents {}


/** Blocks > Liked **/
.wux-block--liked-model {}
.wux-block--liked-model .wux-block__body .container { display: grid; grid-template-columns: repeat(var(--gc, 1), minmax(300px, 1fr)); gap: 32px; }

@media (min-width: 786px) {
    .wux-block--liked-model .wux-block__body .container { --gc: 2; }
}


/** Blocks > Categories **/
.wux-block--categories {}
.wux-block--categories .wux-block__header .container { display: flex; justify-content: space-between; }
.wux-block--categories .wux-block__body .container { display: flex; flex-direction: column; gap: 16px; }
.wux-block--categories .column { display: flex; flex-direction: column; gap: 8px; }
.wux-block--categories .column:not(.column--first) .title { visibility: hidden; }


/** Blocks > Users **/
.wux-block--users {}
.wux-block--users .wux-block__header .container { display: flex; justify-content: space-between; }
.wux-block--users .wux-block__body .container { display: flex; flex-direction: column; gap: 16px; }


/** Blocks > Labels **/
.wux-block--labels {}
.wux-block--labels .wux-block__header .container { display: flex; justify-content: space-between; }

.wux-block--labels .wux-block__toolbar .container { display: flex; justify-content: space-between; padding-bottom: 16px; border-bottom: 2px solid var(--border-clr); }

.wux-block--labels .wux-block__body .container { display: flex; flex-direction: column; gap: 16px; }