.group-card{background:linear-gradient(135deg,var(--card-color),var(--card-color));background-size:200% 200%;border-radius:16px;padding:25px;margin:10px 0;text-decoration:none;color:#fff;transition:all .3s ease;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 15px var(--card-color-light);position:relative;overflow:hidden}.group-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,transparent 30%,rgba(255,255,255,.1) 40%,transparent 50%);background-size:200% 200%;background-position:100% 100%;transition:.5s ease;pointer-events:none}.group-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px var(--card-color-light)}.group-card:hover:before{background-position:0% 0%}.card-content{flex:1}.group-card h2{margin:0 0 8px;font-size:1.6em;font-weight:600;letter-spacing:.5px}.card-subtitle{margin:0 0 8px;font-size:.9em;opacity:.85;font-weight:400}.group-card .staff-names{margin:0;font-size:.95em;opacity:.9;font-weight:300;border-top:1px solid rgba(255,255,255,.2);padding-top:8px}.group-card .topic-text{margin:4px 0 0;font-size:.9em;opacity:.85;font-weight:300;font-style:italic}.card-arrow{font-size:1.5em;margin-left:20px;opacity:.8;transition:transform .3s ease}.group-card:hover .card-arrow{transform:translate(5px);opacity:1}.card-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.card-icon{font-size:1.8em;opacity:.9}body{background-color:#edeff0;font-family:sans-serif;margin:0}.app-content{padding:0 20px 20px;max-width:800px;margin:0 auto}.planItem{background-color:#fff;margin:1px;padding:1.5rem;display:flex;gap:1.5rem;line-height:1.5;box-shadow:0 1px 2px #0000000d;transition:opacity .2s ease,background-color .2s ease}.planItem:hover{background-color:#fafafa}.planItem a{color:#2962ff;text-decoration:none}.planItem a:hover{text-decoration:underline}.planItem.isOld{opacity:.6;background-color:#fafafa}.planItem.isOld:hover{opacity:1;background-color:#fff;transition:all .2s ease}.currentWeek{background-color:#e0ffff;font-weight:700;font-size:larger}.noTopic{background-color:#edeff0;color:#7c7f82}.noMitarbeiter{background-color:#fff4f4;border-left:4px solid #ff5252;color:#333;font-weight:700}.bar{display:flex;justify-content:space-between;width:100%;box-sizing:border-box;padding:1rem;align-items:center}.popover{box-sizing:border-box;padding:1rem}.buttonLink{color:#00f;border:none;background:none;font-family:sans-serif;font-size:1rem;cursor:pointer}.listLink{display:block;padding:1rem;background-color:#fff;margin:1px;max-width:30rem}.listLink:after{content:"";float:right;border:solid lightgray;border-width:0 3px 3px 0;padding:.3rem;transform:rotate(-45deg)}.listLink:hover{background-color:#fafafa}.mitarbeiter-select{padding:.5rem;margin:0 1rem 0 0;border:1px solid #ccc;border-radius:4px;background-color:#fff;font-size:1rem;max-width:50vw}.mitarbeiter-select option:disabled{color:#ccc}.checkbox-label{display:flex;align-items:center;gap:.5rem;margin:0 1rem;cursor:pointer}.checkbox-label input[type=checkbox]{cursor:pointer}.filters{display:flex;align-items:center;padding:.5rem 1rem;background-color:#fff;border-top:1px solid #eee}.header-bar{display:flex;align-items:center;padding:1.5rem 1rem;background-color:#fff;box-shadow:0 2px 4px #0000001a;margin-bottom:1rem}.header-title{flex-grow:1;text-align:center;margin:0;font-size:1.75rem;color:#333;font-weight:500}.header-spacer{width:2.5rem}.option-divider{border-bottom:1px solid #ccc;border-top:1px solid #ccc;background-color:#f5f5f5}.month-section{position:relative;margin-top:2.5rem}.month-section:first-child{margin-top:.5rem}.month-title{position:sticky;top:0;z-index:1;margin:2rem 0 .5rem;padding:.5rem 1rem;color:#666;font-size:1.2rem;font-weight:500;text-transform:capitalize;background-color:#edeff0;border-bottom:1px solid #eee;display:flex;align-items:center;min-height:2rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#edeff0f2}.group-cards{display:flex;flex-wrap:wrap;gap:16px;margin:1rem auto;padding:.5rem;justify-content:center}.group-card{flex:0 1 300px;min-width:250px;margin:0}
