:root{
  --kk-login-green:#355b3a;
  --kk-login-green-dark:#27492e;
  --kk-login-green-soft:#eaf0e7;
  --kk-login-bg:#f2f4ef;
  --kk-login-text:#172018;
  --kk-login-muted:#687269;
  --kk-login-border:#dce3d8;
}

body.login{
  min-height:100vh;
  background:
    linear-gradient(rgba(23,48,29,.90), rgba(38,68,43,.88)),
    url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27260%27%20height%3D%27260%27%20viewBox%3D%270%200%20260%20260%27%3E%0A%3Cg%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-opacity%3D%27.08%27%20stroke-width%3D%272%27%3E%0A%20%20%3Cpath%20d%3D%27M130%20212%20C128%20180%20128%20148%20130%20105%27%2F%3E%0A%20%20%3Cpath%20d%3D%27M130%20112%20C111%2086%20101%2058%20105%2026%20C125%2045%20136%2072%20130%20112%20Z%27%2F%3E%0A%20%20%3Cpath%20d%3D%27M125%20118%20C91%20101%2069%2078%2058%2048%20C86%2057%20111%2082%20125%20118%20Z%27%2F%3E%0A%20%20%3Cpath%20d%3D%27M121%20126%20C84%20124%2053%20112%2031%2088%20C62%2087%2094%20101%20121%20126%20Z%27%2F%3E%0A%20%20%3Cpath%20d%3D%27M135%20118%20C169%20101%20191%2078%20202%2048%20C174%2057%20149%2082%20135%20118%20Z%27%2F%3E%0A%20%20%3Cpath%20d%3D%27M139%20126%20C176%20124%20207%20112%20229%2088%20C198%2087%20166%20101%20139%20126%20Z%27%2F%3E%0A%20%20%3Cpath%20d%3D%27M130%20120%20C129%2088%20130%2061%20130%2038%27%2F%3E%0A%3C%2Fg%3E%0A%3C%2Fsvg%3E") repeat,
    linear-gradient(135deg,#17301d 0%,#355b3a 48%,#6c7f4d 100%);
  background-size:auto,260px 260px,auto;
  background-position:center,0 0,center;
  color:var(--kk-login-text);
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
}

body.login::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 20% 20%,rgba(255,255,255,.06),transparent 30%),
    radial-gradient(circle at 85% 75%,rgba(166,185,118,.10),transparent 34%);
  z-index:0;
}

body.login #login{
  position:relative;
  z-index:1;
}

body.login #login{
  width:420px;
  max-width:calc(100% - 32px);
  padding:30px 0;
  margin:0;
}

body.login h1{
  margin:0 0 18px;
}

body.login h1 a{
  width:280px;
  height:90px;
  margin:0 auto;
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  text-indent:-9999px;
  overflow:hidden;
  display:block;
}

body.login h1::after{
  content:"Portal pracowniczy";
  display:block;
  margin-top:12px;
  text-align:center;
  font-size:14px;
  font-weight:650;
  color:var(--kk-login-muted);
  letter-spacing:.01em;
}

body.login form{
  margin-top:0;
  padding:30px;
  border:1px solid var(--kk-login-border);
  border-radius:24px;
  background:rgba(255,255,255,.96);
  box-shadow:0 20px 55px rgba(35,61,38,.12);
}

body.login label{
  color:var(--kk-login-text);
  font-size:14px;
  font-weight:650;
}

body.login .input,
body.login input[type="text"],
body.login input[type="password"]{
  min-height:48px;
  padding:8px 12px;
  border:1px solid #cfd8cc;
  border-radius:12px;
  background:#fff;
  color:var(--kk-login-text);
  box-shadow:none;
  font-size:16px;
}

body.login .input:focus,
body.login input[type="text"]:focus,
body.login input[type="password"]:focus{
  border-color:var(--kk-login-green);
  box-shadow:0 0 0 3px rgba(53,91,58,.12);
  outline:0;
}

body.login .button.wp-hide-pw{
  color:var(--kk-login-green);
}

body.login .button-primary{
  min-height:46px;
  padding:0 22px;
  border:1px solid var(--kk-login-green);
  border-radius:12px;
  background:var(--kk-login-green);
  color:#fff;
  font-weight:750;
  box-shadow:none;
  text-shadow:none;
}

body.login .button-primary:hover,
body.login .button-primary:focus{
  background:var(--kk-login-green-dark);
  border-color:var(--kk-login-green-dark);
}

body.login .forgetmenot{
  display:flex;
  align-items:center;
  min-height:46px;
}

body.login input[type="checkbox"]{
  border-color:#b9c6b6;
  border-radius:5px;
}

body.login input[type="checkbox"]:checked::before{
  content:"✓";
  color:var(--kk-login-green);
  font-weight:900;
}

body.login #nav,
body.login #backtoblog{
  text-align:center;
  margin-top:14px;
  padding:0;
}

body.login #nav a,
body.login #backtoblog a{
  color:var(--kk-login-green);
  font-weight:650;
}

body.login #nav a:hover,
body.login #backtoblog a:hover{
  color:var(--kk-login-green-dark);
}

body.login .message,
body.login .notice,
body.login #login_error{
  border-left:0;
  border-radius:14px;
  padding:14px 16px;
  border:1px solid var(--kk-login-border);
  box-shadow:none;
}

body.login .message,
body.login .notice-info{
  background:#f8faf7;
}

body.login #login_error{
  border-color:#e3b7b7;
  background:#fff8f8;
}

body.login .privacy-policy-page-link{
  margin-top:14px;
}

body.login::after{
  content:"Kombinat Konopny";
  position:fixed;
  left:0;
  right:0;
  bottom:18px;
  text-align:center;
  color:#7b857c;
  font-size:12px;
  pointer-events:none;
}

@media(max-width:520px){
  body.login{
    align-items:flex-start;
  }
  body.login #login{
    padding-top:34px;
  }
  body.login h1 a{
    width:220px;
    height:72px;
  }
  body.login form{
    padding:24px 20px;
    border-radius:20px;
  }
}

body.login::after{
  color:rgba(255,255,255,.62);
}


/* v0.10 — jaśniejszy ekran logowania, większe logo, lepszy kontrast */
html, body.login {
  min-height:100%;
}

body.login {
  display:block !important;
  min-height:100vh !important;
  margin:0 !important;
  background:
    linear-gradient(rgba(244,247,240,.90), rgba(236,242,232,.92)),
    url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27300%27%20height%3D%27300%27%20viewBox%3D%270%200%20300%20300%27%3E%0A%3Cg%20fill%3D%27none%27%20stroke%3D%27%2523355b3a%27%20stroke-opacity%3D%27.12%27%20stroke-width%3D%272.2%27%3E%0A%20%20%3Cpath%20d%3D%27M150%20244%20C148%20205%20148%20166%20150%20123%27%2F%3E%0A%20%20%3Cpath%20d%3D%27M150%20130%20C126%2098%20116%2064%20121%2029%20C145%2050%20157%2083%20150%20130%20Z%27%2F%3E%0A%20%20%3Cpath%20d%3D%27M144%20137%20C104%20118%2079%2090%2067%2055%20C100%2066%20128%2095%20144%20137%20Z%27%2F%3E%0A%20%20%3Cpath%20d%3D%27M139%20147%20C96%20144%2060%20130%2035%20102%20C72%20101%20110%20117%20139%20147%20Z%27%2F%3E%0A%20%20%3Cpath%20d%3D%27M156%20137%20C196%20118%20221%2090%20233%2055%20C200%2066%20172%2095%20156%20137%20Z%27%2F%3E%0A%20%20%3Cpath%20d%3D%27M161%20147%20C204%20144%20240%20130%20265%20102%20C228%20101%20190%20117%20161%20147%20Z%27%2F%3E%0A%20%20%3Cpath%20d%3D%27M150%20139%20C149%2099%20150%2067%20150%2039%27%2F%3E%0A%3C%2Fg%3E%0A%3C%2Fsvg%3E") repeat,
    linear-gradient(135deg,#edf3e8 0%,#f8faf6 46%,#e3ecdf 100%) !important;
  background-size:auto,300px 300px,auto !important;
  color:#172018 !important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}

body.login::before {
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 12%,rgba(53,91,58,.08),transparent 30%),
    radial-gradient(circle at 84% 78%,rgba(111,143,82,.10),transparent 34%);
  z-index:0;
}

body.login #login {
  position:relative !important;
  z-index:1 !important;
  width:430px !important;
  max-width:calc(100% - 32px) !important;
  margin:0 auto !important;
  padding:7vh 0 46px !important;
}

body.login h1 {
  margin:0 0 14px !important;
}

body.login h1 a {
  width:280px !important;
  height:125px !important;
  max-width:88vw !important;
  margin:0 auto !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  background-size:contain !important;
  filter:none !important;
}

body.login h1::after {
  content:"Portal pracowniczy" !important;
  display:block !important;
  margin-top:8px !important;
  color:#355b3a !important;
  font-size:15px !important;
  font-weight:750 !important;
  text-align:center !important;
  letter-spacing:.01em !important;
}

body.login form {
  margin-top:18px !important;
  padding:30px !important;
  border:1px solid #d7e1d3 !important;
  border-radius:24px !important;
  background:rgba(255,255,255,.96) !important;
  box-shadow:0 20px 55px rgba(35,61,38,.13) !important;
}

body.login .message,
body.login .notice,
body.login #login_error {
  width:auto !important;
  margin:0 0 16px !important;
  padding:13px 16px !important;
  border:1px solid #d7e1d3 !important;
  border-left:4px solid #355b3a !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.94) !important;
  color:#203022 !important;
  box-shadow:none !important;
}

body.login label,
body.login .forgetmenot label {
  color:#172018 !important;
  font-weight:700 !important;
}

body.login .input,
body.login input[type="text"],
body.login input[type="password"] {
  background:#fff !important;
  color:#172018 !important;
  border-color:#bfcdbb !important;
}

body.login .input:focus,
body.login input[type="text"]:focus,
body.login input[type="password"]:focus {
  border-color:#355b3a !important;
  box-shadow:0 0 0 3px rgba(53,91,58,.14) !important;
}

body.login #nav,
body.login #backtoblog {
  margin-top:14px !important;
  text-align:center !important;
}

body.login #nav a,
body.login #backtoblog a {
  color:#2f5534 !important;
  font-weight:700 !important;
  text-shadow:none !important;
}

body.login #nav a:hover,
body.login #backtoblog a:hover {
  color:#18351e !important;
}

body.login .language-switcher {
  position:relative !important;
  z-index:1 !important;
  width:430px !important;
  max-width:calc(100% - 32px) !important;
  margin:0 auto 24px !important;
  padding:0 !important;
  text-align:center !important;
}

body.login .language-switcher label {
  color:#355b3a !important;
  font-weight:700 !important;
}

body.login .language-switcher select {
  min-height:42px !important;
  border:1px solid #bfcdbb !important;
  border-radius:10px !important;
  background:#fff !important;
  color:#172018 !important;
}

body.login::after {
  content:"Kombinat Konopny" !important;
  position:fixed !important;
  left:0 !important;
  right:0 !important;
  bottom:16px !important;
  color:#5e6e60 !important;
  font-size:12px !important;
  text-align:center !important;
  pointer-events:none !important;
}

@media(max-width:520px) {
  body.login #login {
    padding-top:30px !important;
  }
  body.login h1 a {
    width:220px !important;
    height:95px !important;
  }
  body.login form {
    padding:24px 20px !important;
  }
}
