/* Identidad visual oficial de Tecnosoluciones */
.brand-logo-store,
.brand-logo-footer,
.brand-logo-panel,
.brand-logo-login,
.brand-logo-portal,
.brand-logo-access,
.web-admin-logo,
.web-product-placeholder{
    display:block;
    height:auto;
    object-fit:contain;
}

.brand-logo-store{
    width:200px;
    max-height:70px;
    filter:drop-shadow(0 8px 18px rgba(0,84,190,.32));
}

.brand-logo-footer{
    width:285px;
    max-width:100%;
    filter:drop-shadow(0 12px 25px rgba(0,90,220,.28));
}

.brand{
    justify-content:center;
    padding:0 4px 24px;
}

.brand-logo-panel{
    width:225px;
    max-width:100%;
    filter:drop-shadow(0 10px 22px rgba(0,92,215,.38));
}

.brand-logo-login{
    width:285px;
    max-width:60%;
    filter:drop-shadow(0 12px 28px rgba(0,83,210,.42));
}

.brand-logo-portal{
    width:245px;
    max-width:52vw;
    filter:drop-shadow(0 10px 24px rgba(0,80,210,.4));
}

.brand-logo-access{
    width:260px;
    max-width:82%;
    margin:0 auto 22px;
    filter:drop-shadow(0 10px 23px rgba(0,82,205,.22));
}

.web-admin-brand{
    flex-direction:column;
    align-items:center;
    text-align:center;
    gap:4px;
    padding-inline:2px;
}

.web-admin-logo{
    width:225px;
    max-width:100%;
    filter:drop-shadow(0 10px 22px rgba(0,87,218,.4));
}

.web-admin-brand strong{
    margin-top:-4px;
}

.web-product-cell .web-product-placeholder{
    object-fit:contain!important;
    padding:4px;
    background:#071a2d!important;
}

.system-login-button{
    min-height:50px;
    margin-top:4px;
    font-size:13px;
    box-shadow:0 12px 26px rgba(20,110,245,.24);
}

.admin-access-separator{
    display:flex;
    align-items:center;
    gap:12px;
    margin:24px 0 13px;
    color:#8090a3;
    font-size:9px;
    font-weight:850;
    letter-spacing:.9px;
    text-transform:uppercase;
}

.admin-access-separator::before,
.admin-access-separator::after{
    content:"";
    height:1px;
    flex:1;
    background:#e2e9f1;
}

.admin-access-card{
    display:grid;
    grid-template-columns:46px 1fr 24px;
    align-items:center;
    gap:12px;
    padding:13px 14px;
    border:1px solid #dce7f4;
    border-radius:14px;
    background:linear-gradient(135deg,#f8fbff,#edf5ff);
    color:#163b66;
    transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}

.admin-access-card:hover{
    transform:translateY(-2px);
    border-color:#a9c9f0;
    box-shadow:0 12px 28px rgba(20,76,136,.1);
}

.admin-access-icon{
    width:46px;
    height:46px;
    border-radius:12px;
    display:grid;
    place-items:center;
    background:#071a2d;
    color:#fff;
    font-size:19px;
    font-weight:900;
}

.admin-access-copy strong{
    display:block;
    font-size:12px;
}

.admin-access-copy small{
    display:block;
    margin-top:4px;
    color:#718298;
    font-size:9px;
    line-height:1.45;
}

.admin-access-card > b{
    color:#146ef5;
    font-size:19px;
}

@media(max-width:850px){
    .brand-logo-store{width:170px;max-height:60px}
}

@media(max-width:580px){
    .brand-logo-store{width:138px;max-height:50px}
    .brand-logo-footer{width:235px}
    .brand-logo-portal{width:205px;max-width:58vw}
}

@media(max-width:400px){
    .brand-logo-store{width:120px}
}

@media print{
    .brand-logo-panel,.brand-logo-store,.brand-logo-footer,.brand-logo-login,.brand-logo-portal,.brand-logo-access,.web-admin-logo{
        filter:none!important;
    }
}
