body, main{
    background: linear-gradient(to bottom, #7cc7f6, #90EE90);
    min-height: 700px;
    overflow-x: auto;
    overflow-y: auto;
}
h1 {
    font-size: 40px;
    font-weight: 800;
}
h2 {
    font-size: 30px;
    font-weight: 600;
}
h3{
    font-size: 20px;
    font-weight: 600;
    margin: 10px 4px;
}
p{
    margin: 20px;
    text-indent:30px;
    text-align: left;
}
form {
    text-align: left;
}
label {
    font-weight: 400;
    font-style: italic;
    display: block;
    margin: 10px 0 0 10px;
}
section {
    margin: 20px;
    text-align: left;
}
form title {
    width: 200px;
}
#file {
    width: 400px;
    padding: 2px 10px;
    background-color: rgb(17, 226, 226);
    cursor: pointer;
    border: 1px solid black;
    border-radius: 15px;
    display: inline-block;
    text-align: center;
}
.navMenu {
    background: linear-gradient(to bottom, #90EE90, #87CEFA);
    box-shadow: 0 30px 20px 20px #87CEFA;
}
.navMenuBotton {
    color:#0c0c0c;
    margin: 5px;
    padding: 2px 4px;
    text-align: center;
    font-weight: bolder;
}
.navMenuBotton:hover {
    border-bottom: 2px solid #ee0505;
    border-radius: 5px;
    background: linear-gradient(to bottom, #7cc7f6, #90EE90);
}
.hiden {
    display: none;
}
.container1 {
    width: 60%;
    min-height: 750px;
    margin: auto;
    text-align: center;
    padding: 10px 5% 50px;
    background: linear-gradient(to bottom, #87CEFA, #90EE90);
}
.container2 {
    box-sizing: border-box;
    min-height: 750px;
    margin: auto;
    text-align: center;
    padding: 10px 5px 50px;
    background: linear-gradient(to bottom, #87CEFA, #90EE90);
}
.LogoImg {
    width: 200px;
    margin: 0 auto;
    border-radius: 25%;
}

#message {
    max-width: 300px;
    margin: 0 auto;
}
.buscabox {
    max-width: 400px;
    border: solid rgb(111, 202, 224);
    background-color: rgb(106, 233, 155);
    padding: 0 10px 15px;
    margin: 30px auto;
    font-weight: bold;
    border-radius: 5px 5px 35px 35px;
    box-shadow: -3px 3px 3px 3px rgb(77, 79, 82);
}
.buscabox:hover {
    box-shadow: -2px 2px 2px 2px rgb(133, 141, 146);
}
.selectBox {
    background-color: rgb(121, 245, 204);
    padding: 4px 35px 4px 10px;
    border-radius: 10px;
    width: 100%;
}
#selectNombre {
    width: 100%;
}
.searchBox {
    width: 250px;
    margin: 20px auto;
}
.searchBox input { 
    width: 100%;
}
#optionDiv {
    border: 1px solid #ccc;
    width: 250px;
    height: 20px;
    position: absolute;
    background: white;
    display: none;
    padding: 5px;
    box-shadow: 2px 2px 5px rgba(0,0,0,0.2);
}
.optionDiv-item {
    padding: 8px;
    cursor: pointer;
    border-bottom: 1px solid #eee;
    background-color: rgb(238, 230, 230);
    font-weight: bolder;
}
.optionDiv-item:hover {
    background: #f0f0f0;
}
.dashboardDiv {
   	max-width: 800px;
  	margin: 50px auto;
}
/*Div del comercio*/
.ComercioBox {
    width: 70%;
    margin: 50px auto;
    border: 5px solid;
    border-radius: 10px;
}
#ComercioImgContainer {
    width: 100%;
    aspect-ratio: 16 / 9; /* relación fija */
    background: #0c0c0c;
    overflow: hidden;
}
.ComercioImg {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}
.divpanel {
    background-color: rgb(196, 212, 212);
    text-align: left;
    padding: 10px 10px 0;
    border-radius: 0 0 10px 10px;
}
.divpanel a {
    margin: 10px 0 10px 5%;
}
#ComercioBoxButton {
    margin: 5px auto;
    text-align: center;
}
.panelbotton {
    display: inline-block;
    margin: 2px;
    text-align: center;
}
#dotsDiv {
    display: inline-block;
  	width: 75%;
    margin: 5px 10px;
}
.dotsColor {
    width: 10%;
    height: 5px;
    display: inline-block;
    margin: 5px 10px;
}
#comerciodescripcion {
    width: 90%;
    margin: 20px auto;
    font-size: 1.2rem;
    font-weight: bolder;
}
.title {
    font-size: 30px;
    margin: 0 auto;
    text-align: center;
}
.opcionesMenu {
    padding: 2px 10px;
    margin: 10px 20px;
}
.menuButton {
    font-size: 12px;
    color: white;
    background-color: rgb(53, 181, 162);
    margin: 2px 4px;
    padding: 2px 4px;
    border-radius: 5px;
}
.menuButton:hover {
    font-weight: bolder;
}
.spanInfo {
    margin: 5px 15px;
}
.previewComercioContainer {
    max-width: 500px;
    height: 300px;
    border: 1px solid;
    border-radius: 10px;
    margin: 40px auto;
    background-color: rgb(182, 208, 230);
    overflow: hidden;
}
.previewArticuloContainer {
    width: 270px;
    height: 300px;
    border: 1px solid;
    border-radius: 10px;
    margin: 40px auto;
    overflow: hidden;
    background-color: rgb(182, 208, 230);
}
.imgEdit {
    width: 100%;
    object-fit: contain; /* o contain, según prefieras */
}
.previewArticulo-img {
    width: 270px;
  	height: 300px;
    margin: auto;
    display: none;
    object-fit: cover;
}
.previewComercio-img {
    width: 500px;
  	height: 300px;
    margin: auto;
    display: none;
    object-fit: cover;
}
.uploadButton {
    display: block;
    margin: 20px auto;
    border: 1px solid black;
    border-radius: 5px;
    padding: 2px 5px;
    background-color: rgb(17, 226, 226);
}
.uploadButton:hover {
    color: rgb(238, 14, 6);
    font-weight: bolder;
}
.form {
    max-width: 450px;
    margin: 20px auto;
    padding: 20px;
    background-color: rgb(135, 212, 233);
}
.form input, .form select, .form textarea, .form button {
    border-radius: 10px;
    width: 100%;
}
.tooltip {
    height: 24px;
    font-size: 16px;
    text-align: center;
    border-radius: 4px;
    overflow: hidden;
    cursor: pointer;
    transition: opacity 0.5s;
    background-color: #90EE90;
}
.tooltipClick {
    height: auto;
    padding: 5px;
}
#linksDiv {
    display: flex;
    justify-content: space-between;
}
textarea {
    width: 100%;
    line-height: 1.5em;
    padding: 5px;
    font-family: monospace;
    background-image: repeating-linear-gradient(
        to bottom,
        white,
        #e9e5e5 1em,
        white 1.5em
    );
    border: 1px solid #ccc;
    resize: none;
}

/* carroucel card*/
.container {
    width: 90%;
    margin: 50px auto;
    border-radius: 5px;
    padding: 5px 0;
    background-color: rgb(69, 230, 241);
}
#SubCategoriacontainer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}
.boxContainer {
    width: 295px;
    text-align: left;
    overflow: hidden;
    background-color: rgb(110, 237, 247);
    margin: 20px;
    border-radius: 5px;
  	overflow-x: auto;
}
.listContainer {
    text-align: left;
    border-radius: 5px;
    overflow: hidden;
    margin: 10px 0;
    background-color: #6bf5f0;
  	overflow-x: auto;
    display: flex;
    justify-content: space-around;
}
.ofertasContainer {
    overflow: hidden;
    width: 90%;
    padding: 10px 5px;
    background-color: rgb(240, 19, 23);
    text-align: left;
    border-radius: 10px;
    margin: 10px auto;
}
.ofertasItems, .listItem {
    display: flex;
}
.item { 
    height: 260px;
}
.item2 {
    height: 275px;
}
.item, .item2 {
    width: 140px;
    flex: 0 0 auto; 
    margin-left: 5px;
    background-color: #d6f1d6;
    border-radius: 5px;
}
.ofertaitem {
    width: 250px;
    height: 400px;
    flex: 0 0 auto; 
    margin: 5px 15px;
    background-color: #d6f1d6;
    border-radius: 5px;
    padding: 10px;
}
.listCaption {
    padding: 2px 10px;
    font-weight: bolder;
    height: 26px;
    overflow: hidden;
}
.carTitle {
  	display:block;
    font-size: 13px;
    font-weight: bold;
    margin: 20px 10px 0;
}
.cardTitleB {
  font-size: 11px;
}
.imgDiv {
    height: 150px;
    overflow: hidden;
    background-color: #f5e9e7;
}
.ofertaimgDiv {
    height: 280px;
    overflow: hidden;
    background-color: #f5e9e7;
}
.imgDiv img {
    width: 100%;
    object-fit: contain;
    cursor: pointer;
    border-radius: 5px;
}
.ofertaimgDiv img {
    width: 100%;
    object-fit: contain;
    cursor: pointer;
    border-radius: 5px;
}
.divDescript {
    font-size: 14px;
    font-weight: bold;
    padding: 5px;
    height: 30px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.ofertadivDescript {
    font-size: 14px;
    padding: 5px;
    height: 80px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.item2 a {
    font-size: 14px;
    margin: 5px 10px;
    color: #e52a19;
}
.item2 a:hover {
    color: #08752c;
}
.imgDiv a {
    margin: 0;
}

/*Articulo */
.containerArticulo {
    max-width: 700px;
    min-width: 260px;
    margin: 0 auto;
    padding: 20px;
    background-color: #90EE90;
    border: 2px solid blue;
}
.containerArticulo p {
    text-indent: 5px;
}
.headerArticulo {
    padding: 10px;
}
.articuloBox {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.divImg {
    width: 45%;
    margin: 20px 10px;
}
.articuloImg {
    width: 100%;
    border-radius: 5px;
}
.textContent {
    width: 45%;
    padding: 10px;
    margin: 20px 10px;
}
.textContent p {
    margin-left: 0;
}
.divLinks {
    display: flex;
    flex-wrap: wrap;
  	justify-content: space-around;
    height: 50px;
    padding: 10px;
}
.divLinks a {
    padding: 5px 10px;
    background-color: #d9e2f5;
}
.headerArticulo, .textContent, .divLinks {
    border-radius: 5px;
    background-color: #b1ebe5;
}
/*subcategorias*/
.cardContainer {
  	padding: 10px 50px;
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    justify-content: space-evenly;
}
.carditem {
    width: 145px;
    height: 280px;
    text-align: left;
    flex: 0 0 auto; 
    margin: 10px;
    padding: 5px;
    border: 2px solid #4cb350;
    background-color: #d1e2ad;
}
.carditem a {
    font-size: 14px;
    color: #08752c;
    margin: 5px auto;
}
.carditem a:hover {
    color: #0d3386;
}
.imgTable{
    width: 40px;
    height: 40px;
    cursor: pointer;
}
.imgTableBig {
    display: block;
    width: 100%;
    object-fit: contain;
}
.divShowImgTable {
    width: 300px;
    height: 300px;
    position: fixed;
    top: 10%;
    right: calc(50% - 150px);
    z-index: 999;
    overflow: hidden;
}
#selectPrecio {
    border: none;
    border-radius: 5px;
    padding: 2px 2.5rem 2px 4px;
    background-color: #6bf5f0;
}

/* Admin panel */
.sideBar {
    width: 250px;
    padding: 10px 20px;
    background-color: #2d3748;
    color: white;
    transition: width 0.3s ease;
    position: absolute;
    top: 105px;
    left: 0;
    border-radius: 0 5px 5px 0;
    z-index: 1000;
}
.sideBar.collapsed {
    width: 40px;
    border-top-right-radius: 0;
    overflow: hidden;
}
#sideBarContent {
    opacity: 1;
    transform: translateY(20px);
    transition: opacity 2s ease, transform 2s ease; /* duración lenta */
    overflow: hidden;
}
#sideBarContent.invisible {
    opacity: 0;
    transform: translateY(0);
 }
.sidebarLi {
  	padding: 5px 10px;
  	cursor: pointer;
}
.sidebarLi:hover {
    background-color: #0a2153;
  	font-weight:bolder;
}

  /* Dashboard Content*/
.panelContent {
    min-height: 890px;
    padding: 20px 10px;
    padding-left: 10%;
    overflow-x: auto;
    background: linear-gradient(to bottom, #87CEFA, #90EE90);
}
.divTable {
    border: 1px solid black;
    padding: 5px 10px;
}
.dasboardImg {
    display: inline-block;
    width: 150px;
    height: 110px;
    margin: 10px;
}
#louder {
    width: 100%;
    height: 800px;
    background-color: rgba(166, 222, 250, 0.7);
    position: absolute;
    left: 0;
    z-index: 100;
    padding-top: 50px;
}
.iconos {
    width: 20px;
    display: inline-block;
}
#paginador {
    max-width: 500px;
  	margin: 10px auto;
  	padding: 10px;
    background-color: #6bf5f0;
  	border-radius: 15px;
}
.pageButton {
    padding: 5px 10px;
    background-color: white;
}
.pageButton:hover {
    background-color: rgb(220, 225, 229);
}
.pageSpan {
    margin: 10px 30px;
}
footer {
    padding: 10px 20px;
    height: 150px;
    background: linear-gradient(to bottom, #90EE90, #0fcece);
}
/* @queries */ 
/* Estilos para modo oscuro */
@media (prefers-color-scheme: dark) {
     .bucabox, .container1, footer {
        color: #0c0c0c;
    }
}
/* 📟 Tablets (801px - 1024px) */
@media (max-width: 1024px) {
    .ComercioBox {
        width: 80%;
    }
    h3 {
        font-size: 20px;
    }
}
/* 📟 Tablets (601px - 800px) */
@media (max-width: 800px) {
    h1 {
        font-size: 38px;
    }
    h2 {
        font-size: 28px;
    }
    h3 {
        font-size: 18px;
    }
    span, a {
        font-size: 14px;
    }
    .container1 {
        width: 70%;
    }
    .containerArticulo {
        max-width: 500px;
        padding: 20px;
    }
    .dashboardTable {
        width: 600px;
        font-size: 12px;
    }
    .dashboardTable button {
        writing-mode: vertical-lr;
        text-orientation: upright;
        font-size: 10px;
        padding: 5px;
    }
    .divpanel {
        padding: 0;
    }
    .ComercioBox {
        border: 3px solid black;
    }
    #ComercioBoxButton {
        margin: 5px auto 0;
    }
}
/* 📱 Teléfonos (hasta 600px) */
@media screen and (max-width: 600px) {
    h1 {
        font-size: 36px;
    }
    h2 {
        font-size: 24px;
    }
    h3 {
        font-size: 16px;
    }
    .carTitle {
        font-size: 12px;
    }
    .container1 {
        width: 80%;
        font-size: 14px;
    }
    .container2 {
        font-size: 14px;
    }
  	.dashboardDiv {
      	padding: 40px;
  	}
    .buscabox {
        max-width: 350px;
    }
    .ComercioBox {
        width: 90%;
        border: 1px solid black;
    }
    #ComercioBoxButton {
        margin: 0;
    }
  	#dotsDiv {
        width: 70%;
    }
    .dotsColor {
        width: 10%;
        margin: 5px;
    }
    .container {
        width: 100%;
    }
    .divpanel a {
        margin: 5px 0 5px 5%;
        font-size: 12px;
    }
    .iconos {
        width: 15px;
    }
    #comerciodescripcion {
        width: 100%;
        margin: 0;
    }
    .textContent, .divImg {
        width: 100%;
        margin: 20px auto;
    }
    .divLinks {
        height: auto;
        text-align: center;
    }
    .divLinks a{
        width: 100%;
        margin: 10px;
    }
    .containerArticulo {
        max-width: 400px;
        padding: 20px;
    }
    .navMenuBotton {
        font-size: 14px;
    }
  	.cardContainer {
        padding: 10px 0;
    }
    footer b{
        font-size: 16px;
    }
}


/* 📱 Teléfonos (hasta 400px) */
@media screen and (max-width: 400px) {
    h1 {
        font-size: 32px;
    }
    h2 {
        font-size: 20px;
    }
    h3, span, a, .menuButton, .navMenuBotton {
        font-size: 14px;
    }
  	button { 
      padding: 2px 4px !important
  	}
    .container1 {
        width: 100%;
    }
    .buscabox {
        max-width: 300px;
    }
    .ComercioBox {
        width: 90%;
        border: 1px solid black;
    }
    #ComercioBoxButton {
        margin: 0;
    }
  	#dotsDiv {
        width: 60%;
    }
    .dotsColor {
        width: 8%;
    }
    .containerArticulo {
        max-width: 96%;
        padding: 20px;
    }
  	.dashboardDiv {
      padding: 20px;
  	}
    .selectBox {
        font-size: 14px;
    }
    .title {
        font-size: 24px;
    }
    .panelContent{
        margin: 5px;
        font-size: 14px;
    }
    .divTable {
        font-size: 14px;
    }
    .panelbotton {
        font-size: 12px;
    }
    #file {
        width: 100%;
        margin: 10px 0;
    }
    .tooltip {
        font-size: 12px;
    }
    .form {
        padding: 5px;
    }
    #linksDiv {
        font-size: 10px;
    }
    footer b{
        font-size: 14px;
    }
}