 :root {
     --primary-color: #1890ff;
     --primary-hover: #1478d1;
     --primary-green: #22C390;
     --body-bg:#F7F7F8;
     --primary-bg: #EBF4FF;
     --black-color: #1C1819;
     --light-gray: #EAF2FF;
     --light-white: 255, 255, 255;
     --border-color: #E4E5E8;
     --gray-color: #767F8C;
     --secondary-rgb: 179, 55, 64;
 }

 .cred {
     color: var(--primary-color);
 }

 .fs18 {
     font-size: 1.25rem !important;
 }

 .fs14 {
     font-size: 0.875rem !important;
 }

 .fs12 {
     font-size: 0.75rem !important;
 }

 .font-10 {
     font-size: 0.725rem !important;
 }

 .text-primary {
     color: var(--primary-color) !important;
 }

 .pr {
     position: relative;
 }

 .closesvg {
     display: none;
     cursor: pointer
 }
.tetx-vertical{ vertical-align: middle;}



 

 
 
 .radio_btn .btn-check:checked+.btn,
 .radio_btn .btn.active，.btn.show,
 .radio_btn .btn:first-child:active,
 :not(.btn-check)+.btn:active {
     background-color: var(--primary-bg);
     color: var(--primary-color);
     border-color: var(--primary-color);
 }


 /* -----  公司  -- */


 .search-box{ 
        width: 70%;
    margin: 20px auto ;
    background: white;
    border-radius: 8px;
    padding: 0.5rem;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    border: 1px solid var(--border-color);
 }
  .search-box .form-control{ border: none;}
    .search-box  .form-control:focus {
    color: var(--bs-body-color);
    background-color: var(--bs-body-bg) !important;
    border-color: var(--light-gray) !important;
    outline: 0;
    box-shadow: 0 0 0 .25rem rgba(13,110,253,0) !important
}

.search-box .btn-primary {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    border-radius: 6px !important;
    padding: 0.75rem 3rem !important;
    font-weight: 500 !important;
}
.search-box .btn-primary:hover {
    background-color: var(--primary-hover);
  
}

.filter-section {
    background: white;
    padding: 1rem 1.5rem 0.75rem 1.5rem;
    border-radius: 8px;
    margin-bottom: 1rem;
    border: 1px solid var(--border-color);
    /* box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05); */
}


 .radio_btn .btn-check:checked+.btn,
 .radio_btn .btn.active，.btn.show,
 .radio_btn .btn:first-child:active,
 :not(.btn-check)+.btn:active {
     background-color: var(--primary-bg);
     color: var(--primary-color);
     border-color: var(--primary-color);
 }
 .category-tabs .btn {
     /* margin: 0 0.5rem; */
     margin-right: 0.5rem;
     border-radius: 4px;
     --bs-btn-padding-x: 0.525rem;
     --bs-btn-padding-y: 0.15rem;
 }

 .company-card{    background: white;
    border-radius: 8px;
    /* box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08); */
    padding: 1.5rem;
    text-align: center;
    margin-bottom: 1.4rem;
    transition: all 0.3s ease;
    border: 1px solid var(--border-color);
   
}

  .company-car:hover{
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08);
      border: 1px solid var(--light-gray);
       transform: translateY(-3px) translateZ(0);
}   
 .companycardhead{ display: flex; justify-content:flex-start;}  
 .company-logo{
    background: #F7F9FD;
        width: 65px;
    height: 65px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.75rem;
    color:var(--primary-color);
    position: relative;
    overflow: hidden;
 } 
 .company-logo img{ width: 40px; height: 40px;}
 .company-name{ display: flex; justify-self: start;line-height: 2rem; height: 2.15rem; overflow: hidden; text-align: left;}
 .company-name h3{font-size: 1.15rem; height: 2rem; line-height: 2rem; overflow: hidden; max-width: 200px;}
  .company-name span{ font-size: 0.75rem; height: 24px; line-height: 24px; border-radius: 4px;  padding:0 0.5rem;
     background-color: #FCEEEE; color: #DD2525; margin-top: 5px;  overflow: hidden; }
/* .rating{ display: flex;  justify-content: space-between;} */

.cintm {  width:calc(100% - 65px)}
.company-type{ display: flex; justify-content: space-between; line-height: 170%;}
.tetx-yollow{ color: #F09800;}

/* .star svg{ vertical-align: text-top;} */
.btn-company-info {
    background:#E7F0FA;
    border: none;
    border-radius: 4px;
    padding: 0.5rem 1.5rem;
    color: var(--primary-color);
    font-size: 16px;
    font-weight: 600;
    transition: all 0.2s ease;
    width: 100%;
}
.btn-company-info:hover {  background:var(--primary-color); color:#fff;}

/* ---------- 详情页 */

.contentbox{ border-radius: 8px;
    border: none;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
     background-color: #fff;
      margin-top: 30px;
}

 .modal-header {
    padding: 3rem 4rem 0;
    position: relative;
}   
.toprounded {
     width: 72px;
     height: 72px;
     background: var(--primary-bg);
     border: var(--border-color) solid 1px;
     border-radius: 50%;
     color: var(--primary-color);
     font-size: 1.7rem;
 }
 .btn-close {
     position: absolute;
     right: 1rem;
     top: 1rem;
     z-index: 1;
 }

 .content-body {
     padding: 1rem 4rem 3rem;
 }

.job-info-grid {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(80px, 1fr));
     gap: 1.5rem;
     margin-bottom: 2rem;
 }

 .info-icon svg path {
     stroke: var(--primary-color);
     /* fill: var(--primary-bg) */
 }

 .info-icon svg {
     width: 2rem;
     height: 2rem;
     margin-bottom: 0.25rem;
 }

 .fillsvg svg path {
     stroke: var(--primary-color);
     fill: var(--primary-color)
 }
 .cardbox {
     border: var(--border-color) solid 1px;
 }

 .card-header {
     background-color: #fff;
     border: none;
     padding-top: 1.5rem;
 }
 .card-header h6 {
    font-weight: normal;
}
 .conttitline{ width: 4px; height: 16px; background-color: var(--primary-color); display: inline-block; margin-right: 0.5rem; vertical-align: middle; border-radius: 2px; } 
.card-body{ padding-left: 2rem !important;}

 .leftline {
     border-bottom: var(--border-color) solid 1px;
 }
 span.content-tag {
    font-size: 0.75rem;
    height: 24px;
    line-height: 24px;
    border-radius: 4px;
    padding: 0 0.5rem;
    background-color:var(--body-bg);
    color: var(--primary-color);
    margin-top: 5px;
    overflow: hidden;
   display: inline-block;
}
.content-type{ display: flex; justify-content: flex-start; line-height: 170%;}
.contbtnprimary{ background-color: var(--primary-color); color: var(--light-gray); width: 180px; padding: 0.5rem 0;}
.contbtncopy{background-color: var(--light-gray); color: var(--primary-color); width: 180px; padding: 0.5rem 0;}    
.rating-stars i {
    color: var(--primary-color);
}