@import url('https://fonts.googleapis.com/css2?family=Chakra+Petch:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&family=Handjet:wght@100..900&family=Iceberg&family=K2D:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800&family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Lexend:wght@100..900&family=Quantico:ital,wght@0,400;0,700;1,400;1,700&family=Raleway:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Afacad:ital,wght@0,400..700;1,400..700&family=K2D:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800&display=swap');

/*
cián - #1DCD9F 
sötétlila - #19061A
lila - #4F1C51
*/

html, body{
    background-color: #19061A;
    font-family: K2D;
    padding: 0;
    margin: 0;
    overflow-x: clip;
}

.itemlist {
    display: flex;
    flex-wrap: wrap;
}

.itemlist .card {
    margin: 2rem;
}

@media only screen and (min-width: 1420px) {
    .itemlist .card {
        margin: 1rem;
    }
}
@media only screen and (max-width: 1420px) {
    .itemlist .card {
        margin: 3.5rem;
    }
}
@media only screen and (max-width: 1310px) {
    .itemlist .card {
        margin: 0.25rem;
    }
}
@media only screen and (max-width: 1015px) {
    .itemlist .card {
        margin: 3.5rem;
    }
}
@media only screen and (max-width: 925px) {
    .itemlist .card {
        margin: 2rem;
    }
}
@media only screen and (max-width: 850px) {
    .itemlist .card {
        margin: 1rem;
    }
}
@media only screen and (max-width: 750px) {
    .itemlist .card {
        margin: 0.5rem;
    }
}
@media only screen and (max-width: 375px) {
    .itemlist .card {
        margin: 1rem 0;
    }
    .content {
        padding: 2rem !important;
    }
}
@media only screen and (max-width: 320px) {
    .content {
        padding: 1rem !important;
    }
}

.selected {
    font-weight: 800;
}

.navbar {
    background-color: #4F1C51;
    margin: 3.5rem 0;
    display: flex;
    justify-content: center;
    max-height: 5rem;
    gap: 0 12vw;
}

.nav-logo {
    top: -1rem;
    position: relative;
    left: -3rem;    
}

.nav-logo img {
    height: 155px;
    top: -20px;
    position: inherit;
}

.nav-elements, .nav-buttons {
    align-content: center;
    font-size: 18px;
    min-width: 5rem;
}

.shadow {
    box-shadow: rgba(5, 5, 5, 0.2) 0px 0px 18px;
}

a {
    text-decoration: none;
    color: #1DCD9F;
    font-weight: 500;
}

a:hover {
    text-decoration: underline;
}

.nav-mini {
    display: flex;
    justify-content: center;
    background-color: #4F1C51;
    padding: 0.5rem 0;
    margin-top: 2rem;
}

.nav-mini a {
    margin: 0 1rem;
}

.hero.b1 {
    background-image: url(../assets/heroes/1.png); 
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    width: auto;
}

.hero.b2 {
    background-image: url(../assets/heroes/2.png); 
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    width: auto;
}

.hero.b3 {
    background-image: url(../assets/heroes/3.png); 
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-end;
    width: auto;
}

.hero.active {
    opacity: 1;
    width: auto;
    height: 50vh;
    padding: 2rem;
    visibility: visible;
    box-shadow: inset 0px 0px 5px 1px rgba(0,0,0,1);
}

#hero-container {
    position: relative;
    width: 100%;
}

.hero {
    width: 0;
    height: 0; /* Ez fixen tartja a magasságot */
    background-size: cover;
    background-position: center;
    color: white;
    opacity: 0;
    visibility: hidden;
    transition: opacity 1s ease-in-out;
}

.hero h1 {
    color: white;
    font-weight: 900;
    text-shadow: 4px 3px 0 #1DCD9F , 7px 2px 2px rgba(206,89,55,0);
    font-size: 3rem;
}

.line {
    width: 100%;
    height: 5px;
    background-color:#848484;
    overflow: hidden;
    position: relative;
}

.progress-bar {
    width: 0;
    height: 100%;
    background-color: #1DCD9F ;
    transition: width 10s linear;
}

.content {
    background-color:#4F1C51;
    padding: 3rem;
}

.card {
    height: 400px;
    width: 250px;
    background-color: #19061A;
    padding: 1.5rem;
    display: block;
    margin: 0 1rem;    
    line-break: anywhere;
}

.card.wide {
    width: 350px;
    padding: 2rem;
    margin: 1rem;
}

.card.wide img {
    width: 100px;
    filter: brightness(0) saturate(100%) invert(67%) sepia(35%) saturate(7046%) hue-rotate(126deg) brightness(113%) contrast(77%);
} 


.x-scroll .card {
    min-width: 15rem;
}

.center {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.right {
    justify-self: right;

}

.card img {
    width: 100%;
}

.card h3 {
    font-size: 20px;
}

img.cover {
    object-fit: cover;
    height: 250px;
}

a.card:hover {
    cursor: pointer;
}

.card button {
    border: none;
    background: none;
    margin: 0;
    padding: 0;
    float: right;
    width: auto;
}

.card button img {
    width: 2rem;
}

.card button img:hover {
    filter: brightness(0) saturate(100%) invert(83%) sepia(25%) saturate(7336%) hue-rotate(112deg) brightness(96%) contrast(77%);
    cursor: pointer;
}
.x-scroll {
    display: flex;
    overflow-x: overlay;
    scroll-behavior: smooth; /* Simán gördüljön */
    flex-grow: 1;
}

.scroll-container {
    display: flex;
    align-items: center;
    position: relative;
    width: 100%;
}

.holder {
    display: flex;
}

body {
    --sb-track-color: #19061a; /* Háttérszín */
    --sb-thumb-color: #1dcd9f ; /* Görgető fogantyú színe */
    --sb-border-color: #19061a; /* Görgető fogantyú border színe */
    --sb-size: 10px;
}

.scroll-btn {
    display: none;
    background-color: #1dcd9f ;
    color: white;
    border: none;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    position: absolute;
    z-index: 10;
    margin-top: 12.5rem;
}

.scroll-btn.left {
    left: 0; /* Bal oldalra igazítva */
}

.scroll-btn.right {
    right: 0; /* Jobb oldalra igazítva */
}

.icon {
    width: 20px;
    height: 20px;
    fill: currentColor;
    margin: 0 0.5rem;
    filter: brightness(0) saturate(100%) invert(86%) sepia(100%) saturate(0%) hue-rotate(17deg) brightness(106%) contrast(101%);
}

.icon:hover {
    filter: brightness(0) saturate(100%) invert(83%) sepia(25%) saturate(7336%) hue-rotate(112deg) brightness(96%) contrast(77%);
}

/* Görgetősáv méretének definiálása (x és y tengelyre is) */
::-webkit-scrollbar {
    width: var(--sb-size); /* Függőleges görgetősáv szélessége */
    height: var(--sb-size); /* Vízszintes görgetősáv magassága */
}

/* Görgetősáv háttere */
::-webkit-scrollbar-track {
    background: var(--sb-track-color); /* Hátteret definiáljuk */
    border-radius: 1px; /* Lekerekítés */
}

/* Görgetősáv fogantyú */
::-webkit-scrollbar-thumb {
    background: var(--sb-thumb-color); /* Fogantyú színe */
    border-radius: 1px; /* Fogantyú lekerekítése */
    border: 4px solid var(--sb-border-color); /* Külső keret színe */
}

/* Nem WebKit-alapú böngészőkhöz (pl. Firefox) */
@supports not selector(::-webkit-scrollbar) {
    body {
        scrollbar-color: var(--sb-thumb-color) var(--sb-track-color); /* Fogantyú és háttér szín */
        scrollbar-width: thin; /* "Vékony" görgetősáv */
    }
}

h2.discount {
    color: #9b9383;
    text-decoration: line-through;
    margin-right: 0.5rem;
}

h2.red {
    color:#1DCD9F ;
}

h3.discount {
    color: #9b9383;
    text-decoration: line-through;
    margin-right: 0.5rem;
}

h3.red {
    color:#1DCD9F ;
}

a.red {
    color:#1DCD9F ;
    font-weight: 700;
}

a.large {
    font-size: 1.5rem;
}

h1 {
    margin: 1rem 0;
    color: white;
}

h2 {
    margin: 1rem 0;
    color: white;
}

h3 {
    color: white;
}

p {
    color: white;
}

label.size-label.fororder {
    color:white;
}

button {
    color: white;
}

input {
    color: #1DCD9F
}

.separate {
    outline-style: double;
    margin: 2rem;
    color: #1DCD9F ;
    display: grid;
}

.button {
    padding: 1rem 2.5rem;
    display: -webkit-inline-box;
    font-family: K2D;
    font-weight: 600;
}

a.button button {
    background: none;
    border: none;
    width: fit-content;
    font-family: K2D;
    font-weight: 600;
}

.button:hover {
    cursor: pointer;
}

.button.red {
    background-color: #1dcd9f ;
    color: #4F1C51;
    border: none;
}

.button.green {
    background-color: #268600;
    color: white;
    border: none;
}

.button.narrow {
    width: 15rem;
}

.button.wide {
    width: -webkit-fill-available;
    margin: 0.25rem 1rem;
}

.button.green:hover {
    background-color: #b1d6a4;
    color: rgb(255, 255, 255);
}
.button.red:hover {
    background-color: #19061A ;
    color: #1DCD9F ;
}

.button.default {
    background-color: #19061A;
    border: 0.5rem solid #1DCD9F ;
    padding: 1rem;
}

.fullwidth {
    width: 95%;
    margin: 1rem;
}

.container {
    display: flex;
    justify-content: space-evenly;
    flex-direction: row;
}

.container .small {
    background-color: #19061A;
    height: 70vh;
    width: 25vw;
    padding: 1rem;
}

.container .big {
    width: 60vw;
    height: 70vh;
    background-color: #19061A;
    padding: 1rem;
    overflow-y: auto;
}

.placeholder {
    mix-blend-mode: luminosity;
}

.small .placeholder {
    width: 20vw;
    height: 20vw;
    max-width: 350px;
    max-height: 350px;
}

.small img.product {
    width: 375px;
    height: 375px;
    object-fit: cover;
    background-image: url(/assets/products/placeholder.png);
    background-size: contain;
    min-width: 375px;
}

/* Galéria stílus */

.nav-button {
    margin-top: 10rem;
    background-color: #4F1C51;
    border: 0;
    color: #1dcd9f ;
    padding: 1rem;
    position: relative;
}

.nav-button:hover {
    background-color: #ebcc99;
    cursor: pointer;
}

#prevButton {
    width:fit-content;
    height: fit-content;
    right: -15px;
}
#nextButton {
    width:fit-content;
    height: fit-content;
    left: -15px;
}

.navigate {
    display: flex;
    justify-content: center;
}

input[type="text"].input, textarea.input, input[type="email"], input[type="tel"] {
    padding: 10px 10px;
    font-family: K2D;
    font-weight: 500;
    display: inline-block;
    max-width: 56vw;
    outline: 0;
    border: 0px solid #000000;
    border-radius: 0px;
    background: #e9e9e9;
    color: #212121;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    margin: 1rem 0;
}

textarea.input {
    width: 100%;
    height: 10vh;
    resize: none;
}

.select {
    position: relative;
    display: inline-block;
    margin-bottom: 15px;
    width: 100%;
    font-family: K2D;
    font-weight: 500;
}    .select select {
        font-family: K2D;
        font-weight: 500;
        display: inline-block;
        width: 100%;
        cursor: pointer;
        padding: 10px 10px;
        outline: 0;
        border: 0px solid #000000;
        border-radius: 0px;
        background: #e9e9e9;
        color: #212121;
        appearance: none;
        -webkit-appearance: none;
        -moz-appearance: none;
    }
        .select select::-ms-expand {
            display: none;
        }
        .select select:hover,
        .select select:focus {
            color: D8C7AD;
            background: #ededed;
        }
        .select select:disabled {
            opacity: 0;
            pointer-events: none;
        }
.select_arrow {
    position: absolute;
    top: 7px;
    right: 15px;
    width: 6px;
    height: 6px;
    border: solid #212121;
    border-width: 0 1px 1px 0;
    display: inline-block;
    padding: 3px;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}
.select select:hover ~ .select_arrow,
.select select:focus ~ .select_arrow {
    border-color: #1dcd9f ;
}
.select select:disabled ~ .select_arrow {
    border-top-color: #848484;
}

.select select:active, .select select:hover, .select select:focus{
    background-color: #f1f1f1
}

form.user {
    background-color: #4F1C51;
    padding: 1rem;
    max-width: 30rem;
    box-shadow: rgba(5, 5, 5, 0.2) 0px 0px 18px;
}

form.user input {
    width: 90%;
    padding: 0.5rem;
    margin: 0.5rem;
    font-size: 15px;
    background-color:#19061A;
    border: none;
    color: white;
}

form.user h1 {
    color: #1dcd9f ;
}

form.user .give-name input {
    width: 70%;
    display: block;
}

.notice {
    background-color: #4F1C51;
    padding: 0 0.5rem;
    text-align: center;
    color: #1dcd9f ;
    border-width: 1px;
    border-color: #1dcd9f ;
    border-style: solid;
    margin: 1.5rem;
}

form.create-product {
    display: flex;
    flex-direction: column;
    gap: 15px;
    min-width: 100vw !important;
}
form.create-product label {
    font-weight: bold;
}

form.create-product input[type="text"], form.create-product input[type="number"], form.create-product input[type="date"] {
    padding: 10px;
    font-size: 1rem;
    width: 90vw;
}

form.create-product select, textarea, button {
    padding: 10px;
    font-size: 1rem;
    width: 90vw;
}

.checkbox-group, .radio-group {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.checkbox-group label, .radio-group label {
    font-weight: normal;
}
.checkbox-group input, .radio-group input {
    margin-right: 5px;
}

.listproduct {
    background-color: #4F1C51;
    padding: 1rem;
    display: flex;
    justify-content: space-between;
    margin-bottom: 0.5rem;
}

.listproduct img {
    width: 170px;
    height: 170px;
    display: flex;
}

div.orders {
    width: -webkit-fill-available;
    background-color: #4F1C51;
    margin: 1rem;
    padding: 1rem;
    height: 69vh;
    overflow-y: scroll;
    overflow-x: clip;
}

div.orders .card {
    background-color: #19061a;
    padding: 1rem;
    width: auto;
    height: fit-content;
    margin-top: 1rem;
}
div.orders table {
    width: 100%;
}

table {
    border-collapse: collapse;
}

table tr td#status.prepaid,
table tr td#status.sentback,
table tr td#status.paid {
    color: #b8e2e9;
}
table tr td#status.sent,
table tr td#status.planned {
    color: #e7ebb3;
}
table tr td#status.declined {
    color: #e7a5a5;
}
table tr td#status.shipping,
table tr td#status.done {
    color: #ade6a1;
}


div.orders th, div.orders td {
    max-width: 10rem;
    line-break: anywhere;
    border-color: #ab997e;
    border-width: 2px 0px;
    border-style: solid;
    padding: 0.5rem;

}

.status {
    border-style: solid;
    border-width: 3px;
}

.status.started {
    border-color: #7dbcc7;
    background-color: #7dbcc78f !important;
}
.status.onboard {
    border-color: #e49a12;
    background-color: #e49a128f !important;
}
.status.declined {
    border-color: #c77d7d;
    background-color: #c77d7d8f !important;
}
.status.completed {
    border-color: #92c77d;
    background-color: #92c77d8f !important;
}

body.user div.ucontainer {
    background-color: #19061A;
    padding: 2rem;
    min-height: 80vh;
    display: flex;
    justify-content: space-between;
}

body.user div.ucontainer .selection {
    background-color: #4F1C51;
    width: -webkit-fill-available;
    max-width: 25vw;
    padding: 0.5rem 0;
    min-width: 25vw;
}
body.user div.ucontainer .panel {
    background-color: #4F1C51;
    height: -webkit-fill-available;
    width: -webkit-fill-available;
    margin-left: 2rem;
    padding: 2rem;
}
body.user div.ucontainer .selection .selbutton.selected {
    background-color: #19061A;
}

body.user div.ucontainer .selection .selbutton img {
    left: 5%;
    position: absolute;
}
body.user div.ucontainer .selection .selbutton {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem;
    background: #4F1C51;
}

.order-product-card {
    background-color: #19061A;
    padding: 1rem;
    display: flex;
    margin: 1rem 0;
}
.order-product-card img {
    height: 8rem !important;
    width: 10rem !important;
    object-fit: cover;
}
.order-product-card div {
    margin-left: 1rem;
    padding: 1rem;
    background-color: #4F1C51;
    width: -webkit-fill-available;
}
.order-product-card div p {
    line-break: anywhere;
}

.darkredfilter {
    filter: brightness(0) saturate(100%) invert(83%) sepia(25%) saturate(7336%) hue-rotate(112deg) brightness(96%) contrast(77%);
}

.size-container {
    display: flex;
    gap: 10px;
}
.size-label {
    display: inline-block;
    padding: 1rem;
    cursor: pointer;
    user-select: none;
    background-color: #19061A;
    min-width: 1rem;
    text-align: center;
    height: 1rem;
}
.size-label input {
    display: none;
}
.size-label.selected {
    font-weight:600;
    height: 1rem !important;
    -webkit-box-shadow: inset 0px 0px 0px 3px #1dcd9f ;
    -moz-box-shadow: inset 0px 0px 0px 3px #1dcd9f ;
    box-shadow: inset 0px 0px 0px 3px #1dcd9f ;
}

.size-label.fororder {
    background-color: #4F1C51 ;
}

body.product-inventory input[type="number"] {
    width: 3rem;
    padding: 0.25rem;
}

.edit-segment {
    background-color: #c3b297;
    padding: 1rem;
    width: min-content;
}

.alertlog {
    position: fixed;
    top: 20px;
    right: 20px;
    background: #19061A;
    color: #1dcd9f ;
    padding: 15px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    z-index: 2;
    width: 250px;
    text-align: center;
    animation: fadeOut 4s forwards; /* 4s = 3s látható + 1s halványulás */
}

.progress {
    width: 100%;
    height: 4px;
    background: #1dcd9f ;
    margin-top: 10px;
    animation: progressAnim 3s linear forwards;
}

@keyframes fadeOut {
    0% { opacity: 1; }
    75% { opacity: 1; } /* 3 másodpercig teljesen látható marad */
    100% { opacity: 0; }
}

@keyframes progressAnim {
    from { width: 100%; }
    to { width: 0%; }
}

.number-input {
    display: flex;
    border: 3px solid #19061a;
    overflow: hidden;
    width: fit-content;
    justify-content: center;
    align-content: center;
    background-color: #B4A590;
}

.number-input button {
    background-color: #4F1C51;
    border: none;
    cursor: pointer;
    font-size: 18px;
    width: 30px;
    height: 30px;
    text-align: center;
    transition: background-color 0.1s ease-in-out;
    padding: 0;
}

.number-input button:hover {
    background-color: #B4A590;
}

.number-input input {
    text-align: center;
    border: none;
    width: 50px;
    font-size: 16px;
    outline: none;
    appearance: textfield;
    background: #4f1c51;
}

/* Eltünteti az alapértelmezett számbeviteli léptető nyilakat */
.number-input input::-webkit-outer-spin-button,
.number-input input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

div.customlog {
    background-color: #19061A;
}
div.customlog div img {
    background-color: #9b9383;
    padding: 0.5rem;
    margin: 0.5rem;
    max-width: 50vw;
}
div.customlog div {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    flex-direction: column;
    align-content: center;
    align-items: center;
}

div.customlog-headerbar {
    background-color: #B4A590;
    padding: 0.5rem;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    align-items: center;
}

body.user form.userSettings input, 
body.user form.userSettings select {
    background-color: #4F1C51;
    border-style: solid;
    border-color: #19061A;
    border-width: 3px;
    padding: 0.5rem !important;
    margin: 0.25rem 0;
}

body.user form.userSettings label {
    display: block;
    max-width: fit-content;
}
body.user form.userSettings label:after { content: ": " }

input {
    font-family: K2D;
}


/* Alapértelmezett asztali nézet */
.nav-elements {
    display: flex;
    gap: 15px;
}

.burger {
    display: none;
    font-size: 28px;
    cursor: pointer;
    padding: 10px;
    color:#1DCD9F;
}

/* Mobilnézet (max 768px) */
@media (max-width: 425px) {
    .burger {
        min-width: 0rem !important;
        font-size: 16px;
        margin: 0 1rem;
        position: absolute;
        left: 1px
    }   
    .nav-buttons {
        min-width: 0rem !important;
        position: absolute;
        right: 0px;   
    }
    .nav-logo img {
        height: 6rem;
    }
    .nav-logo {
        position: absolute;
        left: 140px;
    }
    .navbar {
        height: 2.5rem;
    }
    .holder {
        flex-wrap: wrap;
    }
    .holder .card {
        margin: 1rem 0;
    }
}
@media (max-width: 768px) {
    .nav-elements {
        display: none;
        flex-direction: column;
        background-color: white;
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        z-index: 999;
        padding: 10px;
        box-shadow: 0px 4px 6px rgba(0,0,0,0.1);
    }

    .nav-elements.show {
        display: flex;
    }

    .burger {
        display: block;
        min-width: 12.5rem;
        text-align: center;
    }

    .navbar {
        position: relative;
        flex-wrap: wrap;
    }

    .nav-buttons {
        display: flex;
        margin-left: auto;
        padding: 10px;
    }

    .nav-logo {
        flex-grow: 1;
    }
}

@media (max-width: 1440px) {
    .small img.product {
        min-width:300px;
        height: 300px;
    }
}
@media (max-width: 1024px) {
    .card.wide {
        width: 200px;
    }
    .container .big {
        width: 30rem;
    }
    .small img.product {
        min-width:200px;
        height: 200px;
    }
    .container .small {
        width: 30vw;
    }
    .nav-button {
        margin-top: 5rem;
    }
}
@media (max-width: 768px) {
    .card.wide {
        width: 150px;
    }
    .content .container {
        flex-direction: column;
    }
    .container .small {
        width: auto;
        height: 27rem;
    }
    .small img.product {
        height: 350px;
        width: 350px;
    }
    .container .big {
        width: auto;
        margin-top: 2rem;
        height: auto;
        overflow-y:auto;
    }
    .nav-button {
        margin-top: 14rem;
    }
}
@media (max-width: 425px) {
    .card.wide {
        width: 18rem;
    }
    
    .respWrap {
        display: flex;
        flex-wrap: wrap;
    }
    
    .content {
        padding: 1.5rem;
    }
    
    .small img.product {
        min-width: 300px;
        height: 300px;
    }
    .nav-button {
        margin-top: 8rem;
    }
    
    .size-container {
        flex-wrap: wrap;
    }
}

@media (max-width: 375px) {
    .content {
        padding: 1rem !important;
    }
    #nextButton {
        left: -30px;
    }
    #prevButton {
        right: -30px;
    }
}
@media (max-width: 375px){
    .small img.product {
        min-width: 250px;
        height: 250px;
    }
    .nav-button {
        margin-top: 6rem;
    }
} 