html {
   font-size:16px;
   transition: font-size 0.3s ease;
   color: var(--cg-text-color);
}

:root {
    --cg-bg-white: #fff;
    --cg-bg-superlight-gray: #f5f5f5;
    --cg-bg-light-gray: #f9f9f9;
    --cg-bg-mid-gray: #efefef;
     
    --cg-text-color: #333;
    --cg-text-color-lt-grey: #999999;
    --cg-text-color-white: #fff; 

    --brand-color: #00b140;
    --bs-link-color: #000;
    --color-alert: #cc0000;
}

[data-theme="dark"] {
  --cg-bg-white: #121212;
  --cg-bg-superlight-gray: #3d3737;
  --cg-bg-light-gray: #3a3737;
  --cg-bg-mid-gray: #222020; 

  --cg-text-color: #fff;
  --cg-text-color-lt-grey: #f5f5f5; 
  --cg-text-color-white: #000; 
}

.loader {
  width: 20px;
  aspect-ratio: 1;
  border-radius: 50%;
  background: 
    radial-gradient(farthest-side,#00b140 94%,#0000) top/4px 4px no-repeat,
    conic-gradient(#0000 30%,#00b140);
  -webkit-mask: radial-gradient(farthest-side,#0000 calc(100% - 4px),#000 0);
  animation: l13 1s infinite linear;
}
@keyframes l13{ 
  100%{transform: rotate(1turn)}
}


.link-white a {color:#fff; font-size:0.9rem;  }
.link-white a:hover {color:#fff; }

.link-dark a { color:var(--cg-text-color) }

button {
  outline: none !important;
  border:0 !important;
}

a:focus, button:focus, button:hover  {
  outline: 1px dotted #00b140 !important;  
  border:0 !important;
   
}

a:hover {color:#00b140}
.navbar {
    background-color: var(--brand-color);
}

.text-green {color:var(--brand-color)}

.btn-link {color:var(--brand-color);}
.btn-link:hover {color:var(--brand-color);}

.gradient-line {background: linear-gradient(90deg,#cccccc 0%, #fcfcfc 100%);
               height: 1px; width: 100%;}
.stronicowanie {font-size: 0.80rem;}
.stronicowanie .active {font-family: 'Red Hat Display Medium'; color:var(--brand-color)}

.btn-green {
    /*background-color: var(--brand-color);*/
    background: linear-gradient(90deg,rgba(32, 207, 79, 1) 0%, rgba(1, 178, 65, 1) 100%);

    border-color: var(--brand-color);   
    font-size:0.95rem; 
    font-family: 'Red Hat Display Medium'; 
    color:#fff;
    border-radius: 6px;   
    padding:7px;
    padding-left:25px; padding-right: 25px;
    width: max-content; 
    cursor : pointer
}
.btn-fs-sm {font-size:0.8rem !important; padding-left:15px; padding-right: 15px;}


.btn-primary {
    background-color: var(--brand-color);
    border-color: var(--brand-color);   
    font-size:1rem; 
    font-family: 'Red Hat Display Medium';    
    min-width:140px;
}

.btn-primary:hover {
     background-color: #00b140 !important;
     border-color: #00a73c;
}

.btn-primary:active {
     background-color: #00b140 !important;
     border-color: #00a73c;
      outline: none;
      box-shadow: 10px 5px 5px red;
}
.btn-primary:visited {
     background-color: #00b140 !important;
     border-color: #00a73c;
      outline: none;
}
 .btn-primary:focus {
     background-color: #00b140 !important;
     border-color: #00a73c;
     outline:0 !important;
     outline: none;
     
}
 
.v-badge {padding:4px; padding-left: 8px; padding-right:8px; border-radius: 5px; font-size: 0.8rem; line-height: 1; background: var(--cg-bg-white); color: var(--brand-color);}
.v-fs-sm {font-size: 0.83rem;}
.v-fs-md {font-size: 1.1rem;}
.v-ff-mid {font-family: 'Red Hat Display Medium';}
.text-active-line {bottom:-11px; width:calc(100% - 20px); border-bottom: solid 2px var(--brand-color);}
 #agreements-schedule {font-size: 0.9rem; display:grid; row-gap: 1px; column-gap:1px; 
                      grid-template-columns: max-content auto repeat(4, 1fr);}
#agreements-schedule > div {
    border: 1px solid #ccc; padding:5px;
}
#agreements-schedule > .theader {display:flex; align-items: center;}


a {text-decoration: none;}
a:hover{color:var(--brand-color)}

.glink a {color:var(--brand-color)}

.btn:focus, 
.btn:active {
  box-shadow: none !important;
   
}
.BtnUniv {cursor : pointer}

.header-top { 
    display: grid; row-gap: 15px; column-gap: 20px; grid-template-columns: max-content max-content auto max-content;
    grid-template-areas: "logo vline menu user";
      align-items: center; font-family: 'Red Hat Display Medium'; font-size:0.9rem;
      padding-top:20px; padding-bottom:20px;   }
 

.header-user { font-size:14px; font-weight:400; padding-top:5px; padding-bottom:5px;}
.header-user a {text-decoration: none}
.path {font-size:14px;}
.path a {text-decoration: none}

.status-ovedue { color: var(--color-alert)}


.content-grid {display:grid;  column-gap:4vw; grid-template-columns: 280px auto; align-items: start}
.custom-card-header {background: var(--brand-color); color:#fff; padding:10px; padding-left:15px; padding-right:15px;}
.login-box { display:grid; justify-content: center;}
.login-form {   max-width:300px;}
.register-form {   max-width:600px;}
.form-input-login { padding:6px; height:46px; border-radius: 5px; border:solid 1px #dfdfdf; width: 100%}
.form-input-login:focus {outline-color: var(--brand-color)}
.form-input-login::placeholder {
  color:#ccc
}

.box-head-links a {color:#ccc}

.footer {border-top:solid 1px #ebebeb; padding-top:10px; padding-bottom:20px; font-size:13px;}

.user-profile { padding-left:8px;   font-family: 'Red Hat Display Regular'; font-size:0.83rem;} 
.user-name {text-transform: uppercase;  } 





.head-mid {   font-size: 1.0rem; font-family: 'Red Hat Display Medium';}
.head-mid-active {   font-size: 1.0rem; font-family: 'Red Hat Display SemiBold';}
.head-mid-active sup {font-size: 0.7rem;}
.head-mid-inactive { font-size: 1.0rem;  color: #797979 }
.head-mid-inactive sup {font-size: 0.7rem;}


.head-big { color:var(--cg-text-color); font-size: 1.3rem; font-family: 'Red Hat Display Medium';}
.head-big sup {font-size: 0.7rem;}
.link-small a {font-size: 0.9rem !important; font-family: 'Red Hat Display SemiBold';}
.link-medium a {font-size: 1.0rem !important; font-family: 'Red Hat Display SemiBold';}
.page-hr {margin:0; border:0;   border-bottom: solid 1px #ccc;}








@media (min-width: 100px)  and  (max-width: 575px) {
    .content-grid { grid-template-columns: auto}
    .hide-on-xs {display:none}
    .head-big {font-size: 1.1rem;}
}
@media (min-width: 576px)  and  (max-width: 767px) {
    .content-grid { grid-template-columns: auto}
    .hide-on-sm {display:none}
}
@media (min-width: 768px)  and  (max-width: 991px) {
    .content-grid { grid-template-columns: auto}
    .hide-on-md {display:none}
}
@media (min-width: 992px)  and  (max-width: 1200px) {
    .content-grid { grid-template-columns: auto}
    .hide-on-lg {display:none}
}
@media (min-width: 1199px)  and  (max-width: 1400px) {
    .content-grid { grid-template-columns: auto}
    .hide-on-xl {display:none}
}

.posr {position: relative;}
.posa {position: absolute;}

.fake-placeholder {
  position: absolute;
  left: 8px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  color: #ccc;
}
.fake-placeholder-focus {
   
  position: absolute;
  left: 0px;
  top: -8px;
  font-size:12px;
   
  pointer-events: none;
  color: #ccc;
}
.fake-placeholder-focus-hide {
  display:none;
   
}

.AlertBox { display:grid; grid-template-columns: max-content auto; column-gap:20px; align-items:center;
            padding:20px; background:var(--cg-bg-mid-gray); border-radius:5px;;  }

.box-shaddow {box-shadow: rgb(224, 224, 226) 0px 0px 14px 0px;}            



@media (min-width: 100px)  and  (max-width: 880px) {

   .header-top { 
      grid-template-columns: max-content auto ;
      grid-template-areas: "logo  menu" 
                           "user user";
    }
    .areaVLine {display:none}

}