/*
Theme Name: Harmony Pflegeberatung Portal
Author: Harmony GmbH
Description: Pflegeberatung Mitarbeiterportal im Harmony Layout.
Version: 1.4.2
*/
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,Arial,sans-serif;background:#f4f7fb;color:#17324d}body{overflow-x:hidden}.hp-shell{min-height:100vh;display:flex}.hp-sidebar{position:fixed;inset:0 auto 0 0;width:270px;background:#123d6b;color:#fff;display:flex;flex-direction:column;padding:22px 16px;z-index:1000}.hp-brand{display:flex;gap:12px;align-items:center;padding:0 6px 22px;border-bottom:1px solid #ffffff22}.hp-logo{width:44px;height:44px;border-radius:12px;background:#fff;color:#123d6b;display:grid;place-items:center;font-weight:900;font-size:24px}.hp-brand strong{font-size:21px;display:block}.hp-brand span{display:block;color:#c9d8e8;font-size:13px;margin-top:2px}.hp-nav{padding:20px 0;display:flex;flex-direction:column;gap:6px;overflow:auto}.hp-nav a{color:#eaf3fb;text-decoration:none;padding:12px 13px;border-radius:9px;font-weight:600;font-size:14px}.hp-nav a:hover,.hp-nav a.active{background:#315d8c;color:#fff}.hp-company{margin-top:auto;border-top:1px solid #ffffff22;padding:18px 8px 4px}.hp-company small,.hp-company strong{display:block}.hp-company small{color:#bdd0e3;margin-bottom:5px}.hp-main{width:calc(100% - 270px);margin-left:270px;min-height:100vh}.hp-topbar{height:74px;background:#fff;border-bottom:1px solid #dde5ed;display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:100}.hp-date{color:#65788c;font-size:14px}.hp-user{display:flex;align-items:center;gap:10px}.hp-user>div{display:flex;flex-direction:column}.hp-user small{color:#73869a}.hp-user a{margin-left:12px;text-decoration:none;color:#123d6b;font-weight:700}.hp-avatar{width:38px;height:38px;border-radius:50%;background:#edf4fb;display:grid;place-items:center;font-weight:800}.hp-menu{display:none;border:0;background:#123d6b;color:#fff;border-radius:8px;padding:8px 11px;font-size:20px}.hp-content{padding:30px 36px 50px;width:100%;max-width:1600px;margin:0 auto}.hp-content .hmd{max-width:none!important;width:100%}.hp-content .hmd-nav{display:none!important}.hp-content .hmd-card{border-radius:14px!important;box-shadow:0 5px 20px #163b5d12!important;border:1px solid #e4eaf0}.hp-content .hmd-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important}.hp-content .hmd-stat{min-height:105px;border:1px solid #e2e9f0;background:#f8fafc!important}.hp-content table{display:table;width:100%!important}.hp-content input,.hp-content select,.hp-content textarea{border:1px solid #cfd9e3;border-radius:7px;min-height:38px}.hp-content .button,.hp-content input[type=submit]{border-radius:7px}.hp-alert{background:#fff;padding:28px;border-radius:14px}.hp-login{min-height:100vh;display:grid;place-items:center;padding:20px;background:#eef3f8}.hp-login-card{width:min(440px,100%);background:#fff;padding:35px;border-radius:18px;box-shadow:0 12px 35px #123d6b22}.hp-login-card .hp-logo{margin-bottom:18px}.hp-login-card input[type=text],.hp-login-card input[type=password]{width:100%;padding:11px;border:1px solid #ccd8e3;border-radius:8px}.hp-login-card input[type=submit]{background:#123d6b;color:#fff;border:0;padding:11px 18px;border-radius:8px;font-weight:700}@media(max-width:1000px){.hp-sidebar{transform:translateX(-100%);transition:.2s}.hp-sidebar.open{transform:translateX(0)}.hp-main{width:100%;margin-left:0}.hp-menu{display:block}.hp-topbar{padding:0 18px}.hp-content{padding:22px 18px}.hp-date{display:none}}@media(max-width:650px){.hp-user>div{display:none}.hp-user a{font-size:13px}.hp-content{padding:15px 10px}.hp-content .hmd-card{padding:15px!important;overflow-x:auto}.hp-content .hmd-grid{grid-template-columns:1fr!important}.hp-content table{min-width:620px}}


/* v1.1.1 – echtes Desktop-Widescreen-Layout */
@media (min-width:1001px){
  html,body{width:100%!important;max-width:none!important;}
  .hp-shell{display:block!important;width:100%!important;max-width:none!important;min-height:100vh!important;}
  .hp-sidebar{width:235px!important;left:0!important;right:auto!important;}
  .hp-main{position:relative!important;margin-left:235px!important;width:calc(100vw - 235px)!important;max-width:none!important;min-width:0!important;}
  .hp-topbar{width:100%!important;max-width:none!important;padding:0 38px!important;}
  .hp-content{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:32px 40px 55px!important;}
  .hp-content>.hmd{display:block!important;width:100%!important;max-width:none!important;margin:0!important;}
  .hp-content .hmd-card{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;}
  .hp-content .hmd-grid{width:100%!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;}
  .hp-content form{max-width:none!important;}
  .hp-content table{width:100%!important;max-width:none!important;}
}
@media (min-width:1400px){
  .hp-content{padding-left:48px!important;padding-right:48px!important;}
}


/* === Harmony Mobile/Tablet Optimierung === */
@media (max-width: 1024px) {
  .hp-sidebar{
    position:fixed !important;
    top:0; left:0; bottom:0;
    width:270px !important;
    max-width:86vw;
    transform:translateX(-105%);
    transition:transform .25s ease;
    z-index:10000;
    box-shadow:8px 0 30px rgba(0,0,0,.18);
    overflow-y:auto;
  }
  .hp-sidebar.open{transform:translateX(0)}
  .hp-main{margin-left:0 !important;width:100% !important;min-width:0}
  .hp-topbar{
    min-height:68px;
    padding:10px 18px !important;
    gap:12px;
    position:sticky;
    top:0;
    z-index:9000;
  }
  .hp-menu{
    display:flex !important;
    align-items:center;
    justify-content:center;
    flex:0 0 44px;
    width:44px;height:44px;
    border:0;border-radius:10px;
    font-size:24px;cursor:pointer;
  }
  .hp-content{padding:20px !important;max-width:none !important;width:100% !important}
  .hp-user{margin-left:auto}
  .hp-user small{display:block}
  .hmd,.hpb{width:100% !important;max-width:none !important}
  .hmd-grid,.hpb-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .hmd-card,.hpb-card{min-width:0}
  .hmd-card table,.hpb-card table{min-width:700px}
  .hmd-card:has(table),.hpb-card:has(table){overflow-x:auto;-webkit-overflow-scrolling:touch}
  input,select,textarea,button,.button{max-width:100%;box-sizing:border-box}
}

@media (max-width: 680px) {
  html,body{overflow-x:hidden}
  .hp-topbar{padding:8px 12px !important;min-height:62px}
  .hp-date{display:none}
  .hp-user{gap:8px}
  .hp-user .hp-avatar{width:38px;height:38px;flex:0 0 38px}
  .hp-user div{max-width:120px}
  .hp-user strong,.hp-user small{
    display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
  }
  .hp-user a{font-size:0}
  .hp-user a:after{content:"↪";font-size:24px}
  .hp-content{padding:12px !important}
  .hmd-grid,.hpb-grid{grid-template-columns:1fr !important}
  .hmd-card,.hpb-card{
    padding:18px !important;
    border-radius:14px !important;
    margin-bottom:12px !important;
  }
  .hmd-card h1,.hpb-card h1{font-size:24px}
  .hmd-card h2,.hpb-card h2{font-size:20px}
  .hmd-card h3,.hpb-card h3{font-size:18px}
  .hmd-card form,.hpb-card form{width:100%}
  .hmd-card input:not([type="checkbox"]):not([type="radio"]),
  .hmd-card select,.hmd-card textarea,
  .hpb-card input:not([type="checkbox"]):not([type="radio"]),
  .hpb-card select,.hpb-card textarea{
    width:100% !important;
    min-height:46px;
    font-size:16px !important;
    margin:5px 0 12px;
  }
  .hmd-card input[type="file"],.hpb-card input[type="file"]{
    min-height:auto;padding:12px 0;
  }
  .hmd-card button,.hmd-card .button,.hmd-card input[type="submit"],
  .hpb-card button,.hpb-card .button,.hpb-card input[type="submit"]{
    min-height:46px;
    width:100%;
    margin:5px 0;
    white-space:normal;
  }
  .hmd-card table,.hpb-card table{
    min-width:640px;
    font-size:14px;
  }
  .hmd-card th,.hmd-card td,.hpb-card th,.hpb-card td{padding:10px !important}
  .hp-nav a{min-height:46px;display:flex;align-items:center}
  .hp-brand{position:sticky;top:0;z-index:2}
}

@media (min-width: 1025px) {
  .hp-menu{display:none !important}
}


/* === Pflegeberatung Harmony – Corporate Design === */
:root{
 --pflege-petrol:#007d70;
 --pflege-petrol-dark:#005f57;
 --pflege-petrol-deep:#064b47;
 --pflege-gold:#c6a500;
 --pflege-gold-dark:#a98c00;
 --pflege-cream:#fbfaf4;
 --pflege-ink:#173b3a;
}
body{background:#f4f8f7!important;color:var(--pflege-ink)}
.hp-sidebar{
 background:linear-gradient(180deg,#004f49 0%,#006c62 58%,#00534d 100%)!important;
 border-right:1px solid rgba(198,165,0,.32)!important;
}
.hp-brand{
 min-height:155px!important;
 padding:18px 12px 15px!important;
 justify-content:center!important;
 background:#fff!important;
 border-bottom:4px solid var(--pflege-gold)!important;
}
.hp-brand-logo{width:174px;height:112px;display:flex;align-items:center;justify-content:center;margin:auto}
.hp-brand-logo img{width:100%;height:100%;object-fit:contain}
.hp-nav{padding-top:14px!important}
.hp-nav a{
 color:#f3fffd!important;
 border-radius:11px!important;
 margin:4px 10px!important;
 transition:.18s ease!important;
}
.hp-nav a:hover{background:rgba(255,255,255,.11)!important;color:#fff!important}
.hp-nav a.active{
 background:linear-gradient(135deg,#c9ab12,#ae9000)!important;
 color:#fff!important;
 box-shadow:0 8px 18px rgba(86,72,0,.22)!important;
}
.hp-company{
 border-top:1px solid rgba(255,255,255,.2)!important;
 color:#fff!important;
}
.hp-company small{color:#d5eeea!important}
.hp-topbar{
 background:#fff!important;
 border-bottom:1px solid #dce9e7!important;
 box-shadow:0 2px 12px rgba(0,77,69,.04)!important;
}
.hp-avatar{background:#e2f3f0!important;color:#007469!important}
.hp-user a{color:#00776c!important}
.hp-content{background:#f4f8f7!important}
.hpb-card,.hmd-card{
 background:#fff!important;
 border-color:#dce9e6!important;
 box-shadow:0 8px 25px rgba(0,72,65,.055)!important;
}
.hpb-card h1,.hpb-card h2,.hpb-card h3,.hmd-card h1,.hmd-card h2,.hmd-card h3{color:#164642!important}
.hpb button,.hpb .button,.hpb input[type=submit],
.hmd button,.hmd .button,.hmd input[type=submit]{
 background:linear-gradient(135deg,#00877a,#006b62)!important;
 border-color:#006b62!important;
 color:#fff!important;
 box-shadow:0 6px 14px rgba(0,107,98,.15)!important;
}
.hpb button:hover,.hpb .button:hover,.hpb input[type=submit]:hover,
.hmd button:hover,.hmd .button:hover,.hmd input[type=submit]:hover{
 background:linear-gradient(135deg,#00776c,#005d55)!important;
}
.hpb input,.hpb select,.hpb textarea,.hmd input,.hmd select,.hmd textarea{
 border-color:#c9dedb!important;background:#fff!important
}
.hpb input:focus,.hpb select:focus,.hpb textarea:focus,
.hmd input:focus,.hmd select:focus,.hmd textarea:focus{
 border-color:#00877a!important;
 box-shadow:0 0 0 3px rgba(0,135,122,.11)!important;
}
.hpb th,.hmd th{background:#edf7f5!important;color:#16645d!important}
.hpb tr:hover td,.hmd tr:hover td{background:#fbfdfc!important}
.hp-login{background:linear-gradient(145deg,#004e48,#00786d)!important}
.hp-login-card{background:#fff!important;border:1px solid #d7e8e4!important}
.hp-login-logo{width:230px;max-width:80%;height:auto;object-fit:contain;margin:0 auto 18px;display:block}
@media(max-width:1024px){
 .hp-brand{min-height:145px!important}
 .hp-brand-logo{width:160px;height:104px}
}
@media(max-width:680px){
 .hp-sidebar{width:285px!important}
 .hp-brand{min-height:128px!important;padding:10px!important}
 .hp-brand-logo{width:150px;height:98px}
 .hp-content{background:#f5f9f8!important}
}
html{margin-top:0!important}
body.admin-bar{margin-top:0!important}
.admin-bar .hp-sidebar{top:0!important}


/* === Pflegeberatung Harmony – Modern UI v1.3 === */
:root{
 --pb-petrol:#007c70;
 --pb-petrol2:#009184;
 --pb-deep:#073f3b;
 --pb-gold:#c9a900;
 --pb-bg:#f3f7f6;
 --pb-card:#ffffff;
 --pb-line:#e2ece9;
 --pb-muted:#718581;
}
body{background:var(--pb-bg)!important}
.hp-sidebar{
 width:245px!important;
 background:
 radial-gradient(circle at 20% 0%,rgba(0,160,143,.18),transparent 28%),
 linear-gradient(180deg,#063f3b 0%,#07564f 48%,#064741 100%)!important;
 box-shadow:10px 0 35px rgba(1,47,43,.10)!important;
 border-right:0!important;
}
.hp-main{margin-left:245px!important}
.hp-brand{
 min-height:158px!important;
 background:rgba(255,255,255,.98)!important;
 border:0!important;
 border-bottom:3px solid var(--pb-gold)!important;
 box-shadow:0 8px 22px rgba(0,45,40,.10)!important;
}
.hp-brand-logo{width:188px!important;height:118px!important}
.hp-nav{padding:19px 11px!important}
.hp-nav a{
 position:relative;
 min-height:45px!important;
 margin:3px 0!important;
 padding:11px 14px!important;
 border-radius:13px!important;
 font-weight:650!important;
 color:#e8f7f4!important;
 border:1px solid transparent!important;
}
.hp-nav a:hover{
 background:rgba(255,255,255,.09)!important;
 border-color:rgba(255,255,255,.08)!important;
 transform:translateX(2px);
}
.hp-nav a.active{
 background:linear-gradient(135deg,#00a091,#00786d)!important;
 color:#fff!important;
 border-color:rgba(255,255,255,.14)!important;
 box-shadow:0 9px 22px rgba(0,31,28,.22)!important;
}
.hp-nav a.active:before{
 content:"";position:absolute;left:-11px;top:11px;bottom:11px;width:4px;
 border-radius:0 6px 6px 0;background:var(--pb-gold);
}
.hp-company{padding:18px 20px!important}
.hp-topbar{
 min-height:76px!important;
 padding:0 30px!important;
 background:rgba(255,255,255,.94)!important;
 backdrop-filter:blur(14px);
 border-bottom:1px solid rgba(7,94,85,.08)!important;
 box-shadow:0 5px 22px rgba(11,61,56,.045)!important;
}
.hp-avatar{
 width:43px!important;height:43px!important;
 background:linear-gradient(145deg,#e1f6f2,#f8fffd)!important;
 border:1px solid #d3eae6!important;
 box-shadow:0 5px 14px rgba(0,83,75,.08);
}
.hp-content{
 padding:29px 32px 45px!important;
 background:
 radial-gradient(circle at 95% 0%,rgba(201,169,0,.055),transparent 24%),
 var(--pb-bg)!important;
}
.hpb,.hmd{max-width:none!important}
.hpb-card,.hmd-card{
 border:1px solid rgba(7,91,83,.09)!important;
 border-radius:20px!important;
 background:rgba(255,255,255,.98)!important;
 box-shadow:0 9px 28px rgba(11,67,61,.065)!important;
 padding:25px!important;
 transition:box-shadow .2s ease,transform .2s ease!important;
}
.hpb-card:hover,.hmd-card:hover{
 box-shadow:0 14px 34px rgba(11,67,61,.09)!important;
}
.hpb-card h1,.hmd-card h1{letter-spacing:-.035em!important}
.hpb-card h2,.hmd-card h2{
 letter-spacing:-.025em!important;
 color:#103f3b!important;
}
.hpb-card h3,.hmd-card h3{letter-spacing:-.015em!important}
.hpb-grid,.hmd-grid{gap:16px!important}
.hpb input:not([type=checkbox]):not([type=radio]),
.hpb select,.hpb textarea,
.hmd input:not([type=checkbox]):not([type=radio]),
.hmd select,.hmd textarea{
 min-height:45px!important;
 border:1px solid #d8e6e3!important;
 border-radius:11px!important;
 padding:10px 13px!important;
 transition:border .18s,box-shadow .18s!important;
}
.hpb input:focus,.hpb select:focus,.hpb textarea:focus,
.hmd input:focus,.hmd select:focus,.hmd textarea:focus{
 outline:0!important;border-color:#18a091!important;
 box-shadow:0 0 0 4px rgba(0,145,132,.10)!important;
}
.hpb button,.hpb .button,.hpb input[type=submit],
.hmd button,.hmd .button,.hmd input[type=submit]{
 min-height:44px!important;
 border:0!important;
 border-radius:11px!important;
 padding:10px 18px!important;
 font-weight:750!important;
 background:linear-gradient(135deg,#009587,#007469)!important;
 box-shadow:0 7px 17px rgba(0,112,101,.17)!important;
 transition:transform .18s,box-shadow .18s!important;
}
.hpb button:hover,.hpb .button:hover,.hpb input[type=submit]:hover,
.hmd button:hover,.hmd .button:hover,.hmd input[type=submit]:hover{
 transform:translateY(-1px);
 box-shadow:0 10px 21px rgba(0,112,101,.23)!important;
}
.hpb table,.hmd table{
 border-collapse:separate!important;border-spacing:0!important;
 border:1px solid var(--pb-line)!important;border-radius:14px!important;overflow:hidden!important;
}
.hpb th,.hmd th{
 background:#f0f7f5!important;
 color:#4a6d68!important;
 font-size:11px!important;
 letter-spacing:.045em!important;
 text-transform:uppercase!important;
}
.hpb td,.hmd td{border-color:#edf2f1!important}
.hpb tr:last-child td,.hmd tr:last-child td{border-bottom:0!important}
.harmony-status{
 background:#e6f6f2!important;color:#006e64!important;
 border:1px solid #cbeae4!important;
}
.hmd-ok,.hpb-ok{border-radius:12px!important}
.hp-menu{
 background:#eaf6f3!important;color:#006e64!important;
 border:1px solid #d6eae6!important;
}
@media(max-width:1024px){
 .hp-sidebar{width:285px!important}
 .hp-main{margin-left:0!important}
 .hp-content{padding:20px!important}
 .hp-topbar{padding:8px 18px!important}
}
@media(max-width:680px){
 .hp-content{padding:12px!important}
 .hpb-card,.hmd-card{
  padding:17px!important;border-radius:16px!important;
  box-shadow:0 6px 20px rgba(11,67,61,.055)!important;
 }
 .hp-brand{min-height:135px!important}
 .hp-brand-logo{width:165px!important;height:105px!important}
 .hp-nav a{min-height:48px!important;border-radius:12px!important}
 .hpb-grid,.hmd-grid{gap:11px!important}
 .harmony-mobile-requests tr{
  border:1px solid #deebe8!important;
  border-radius:16px!important;
  box-shadow:0 6px 18px rgba(0,78,70,.06)!important;
 }
}


/* === Pflegeberatung v1.4 – helle Navigation + transparentes Branding === */
.hp-sidebar{
 background:#ffffff!important;
 border-right:1px solid #dfeae7!important;
 box-shadow:8px 0 28px rgba(0,77,69,.07)!important;
}
.hp-brand{
 background:#ffffff!important;
 border-bottom:1px solid #e5eeec!important;
 box-shadow:none!important;
 min-height:155px!important;
}
.hp-brand-logo{
 width:198px!important;
 height:124px!important;
}
.hp-brand-logo img{
 width:100%!important;height:100%!important;object-fit:contain!important;
 filter:none!important;
}
.hp-nav a{
 color:#174e49!important;
 font-weight:680!important;
}
.hp-nav a:hover{
 background:#eef8f6!important;
 color:#006f65!important;
 border-color:#deeeeb!important;
 transform:translateX(2px);
}
.hp-nav a.active{
 background:linear-gradient(135deg,#008f82,#00766c)!important;
 color:#fff!important;
 border-color:transparent!important;
 box-shadow:0 8px 20px rgba(0,119,108,.17)!important;
}
.hp-nav a.active:before{background:#c9a900!important}
.hp-company{
 color:#174e49!important;
 border-top:1px solid #e2ece9!important;
}
.hp-company small{color:#778e8a!important}
.hp-login{
 background:
 radial-gradient(circle at 18% 15%,rgba(201,169,0,.10),transparent 28%),
 radial-gradient(circle at 90% 85%,rgba(0,145,132,.12),transparent 30%),
 linear-gradient(145deg,#f5faf8,#edf6f4)!important;
}
.hp-login-card{
 background:rgba(255,255,255,.97)!important;
 border:1px solid #dceae7!important;
 border-radius:24px!important;
 box-shadow:0 24px 65px rgba(0,76,68,.13)!important;
}
.hp-login-logo{
 display:block!important;
 width:280px!important;
 max-width:88%!important;
 height:auto!important;
 margin:0 auto 24px!important;
 object-fit:contain!important;
}
.hp-login-card h1{color:#174e49!important}
.hp-login-card input{
 border-color:#d6e6e2!important;
 border-radius:11px!important;
}
.hp-login-card input:focus{
 border-color:#008f82!important;
 box-shadow:0 0 0 4px rgba(0,143,130,.10)!important;
}
@media(max-width:1024px){
 .hp-sidebar{background:#fff!important}
 .hp-brand-logo{width:185px!important;height:116px!important}
}
@media(max-width:680px){
 .hp-brand{min-height:135px!important}
 .hp-brand-logo{width:172px!important;height:108px!important}
 .hp-login-card{border-radius:19px!important}
 .hp-login-logo{width:235px!important}
}

/* Logo-Fix v1.4.1 */
.hp-login-logo{
 display:block!important;
 width:min(300px,90%)!important;
 height:auto!important;
 max-height:165px!important;
 object-fit:contain!important;
 margin:0 auto 22px!important;
}
.hp-brand-logo img{
 display:block!important;
 opacity:1!important;
 visibility:visible!important;
}
