:root{--navy:#194d46;--teal:#459aa4;--orange:#e49b43;--green:#5b9c68;--line:#e1e9e4;color:#253e3b;background:#f5f7f6;font-family:Inter,"Segoe UI",Arial,sans-serif}
body{background:#f5f7f6;color:#253e3b}
.topbar{position:fixed;inset:0 auto 0 0;width:220px;height:100vh;padding:28px 15px 16px;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:22px;border:0;border-right:1px solid var(--line);background:#fff;overflow-y:auto;z-index:8}
.brand{padding:0 8px}.brand strong{font-size:19px}.brand small{font-size:11px;margin-top:2px;color:#748580}.brandmark{border-radius:12px;background:var(--navy);padding:7px 12px}
.topbar .tabs{display:flex;flex-direction:column;gap:5px;background:transparent;border:0;padding:0;overflow:visible}
.topbar .tabs button{white-space:normal;text-align:left;padding:11px 12px;color:#576d63;border-radius:9px;font-size:14px}
.topbar .tabs button.active{background:#eaf2ed;color:#194d46;box-shadow:none}
.sidebar-heading{font-size:11px;letter-spacing:1.5px;color:#748580;padding:0 12px;margin:8px 0 -12px}
.top-actions{display:flex;flex-direction:column;gap:7px;margin-top:auto;padding-top:15px;border-top:1px solid var(--line)}
.top-actions button{text-align:left;width:100%;font-size:13px;padding:10px 12px}
.sidebar-links{display:grid;gap:5px}.sidebar-links button{text-align:left;border:0;background:transparent;padding:10px 12px;color:#576d63}
main{margin-left:220px;padding:30px 26px 50px;max-width:1900px}
h1{font-family:inherit;font-weight:600;font-size:32px;letter-spacing:-1px}.headline b{color:#679586}.headline p{color:#748580;font-size:14px}.headline #today{font-size:13px;color:#576d63}
button{border-color:var(--line);border-radius:9px}button:focus-visible{outline:3px solid #82b7a7;outline-offset:2px}.primary{background:var(--navy);border-color:var(--navy)}
.stats{gap:14px}.stat{border-color:var(--line);padding:18px;border-radius:14px}.stat i{width:40px;height:40px;font-size:20px;background:#eef4f1;color:#487264}.stat strong{font-size:27px;font-family:inherit}.stat small,.stat em{font-size:12px;color:#748580}
.dashboard{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0 22px}.dashboard article{flex:1;min-width:130px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;gap:4px}.dashboard article b{font-size:22px}.dashboard article span,.dashboard article small{font-size:12px;color:#657b70}.dashboard .quick-actions{flex-direction:row;align-items:center;flex-wrap:wrap}.dashboard .warning b{color:#a96826}
.calendar-controls{background:#fff;border:1px solid var(--line);padding:14px;border-radius:13px;gap:8px;font-size:12px}.calendar-controls label{display:flex;align-items:center;gap:5px}.employee-tray{margin:9px 0 14px;padding:0;align-items:center;font-size:12px;color:#748580}.employee-tray span{background:#eaf2ed;color:#486b59;font-size:12px;border:1px solid #dce9df}
.week{border-color:var(--line);border-radius:14px;background:#fff}.daycol{padding:10px 9px 14px;position:relative}.dayhead{padding:10px 0 14px;margin-bottom:5px;border-color:var(--line)}.dayhead b{font-size:24px}.dayhead small{color:#748580}.daycol.weekend{background:#f1f4f2}.daycol.today{box-shadow:inset 0 0 0 2px var(--navy);border-radius:9px;background:#f4faf7}.daycol.today .dayhead b{display:inline-grid;place-items:center;background:var(--navy);color:white;border-radius:50%;width:36px;height:36px}
.daycol .card{background:#fff0df;border:1px solid #efd5b7;border-left:4px solid #e49b43;border-radius:9px;padding:11px 10px;color:#253e3b;box-shadow:none}.daycol .card.active{background:#e1f3f4;border-color:#b7dcdf;border-left-color:#45a5b0}.daycol .card.done{background:#e5f2e6;border-color:#bedbc2;border-left-color:#5b9c68}.daycol .card strong{font-size:13px}.daycol .card span{font-size:12px;color:#4f655e}.daycol .card.has-conflict{border-color:#ca7964}.daycol .absence-card{background:#faf2e6;color:#9b7441}.day-add,.day-finish,.day-plan-button{border-radius:8px;padding:8px;font-size:12px}.day-add{border-style:dashed;background:transparent}.day-plan-button{background:#eaf2ed;color:#194d46;border-color:#cbded1}
.row,.object,.panel,.empty{border-color:var(--line);border-radius:13px}.row{gap:12px}.row-actions{flex-wrap:wrap}.row-actions button{font-size:12px}.filters,.planning-filters{gap:10px;flex-wrap:wrap}.filters input{min-width:260px;padding:12px}.form-section{background:#f5f7f6;border-color:var(--line);border-radius:12px}.modal{border-radius:16px;box-shadow:0 24px 80px #203b3030}.modal header{background:#fff}.modal h2{font-family:inherit}.modal input,.modal textarea,.modal select{color:#253e3b;background:#fff}.modal textarea{min-height:100px}.activity input[placeholder*="Beschreibung"]{min-height:44px}.modal footer{background:#fff}.tools{left:228px;right:auto;top:auto;bottom:20px;max-height:85vh;overflow:auto;z-index:25;border-color:var(--line);box-shadow:0 12px 40px #203b3025}.tools button{padding:11px 15px}.toast{background:var(--navy)}
:root[data-theme="dark"] body{background:#202e2a;color:#e8f2ec}:root[data-theme="dark"] .topbar,:root[data-theme="dark"] .calendar-controls{background:#283a33;color:#e8f2ec}:root[data-theme="dark"] .topbar button{color:#d2e4d8}:root[data-theme="dark"] .topbar button.active{background:#365649}:root[data-theme="dark"] .daycol.today{background:#2c4135;box-shadow:inset 0 0 0 2px #82b7a7}:root[data-theme="dark"] .daycol .card{background:#574735;color:#fff}:root[data-theme="dark"] .daycol .card.active{background:#2f5055}:root[data-theme="dark"] .daycol .card.done{background:#34553c}:root[data-theme="dark"] .daycol .card span{color:#e1eae3}
@media(max-width:1200px){.topbar{width:190px}main{margin-left:190px;padding:24px 18px}.tools{left:198px}.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{padding:12px;gap:8px}.stat em{font-size:11px}.stat strong{font-size:22px}.headline{gap:12px}}
.topbar .tabs{position:static}
.advanced-week .daycol.today{box-shadow:inset 0 0 0 2px var(--navy)}
.advanced-week .daycol.today .dayhead{color:var(--navy)}
.daycol .card.active{background:#e1f3f4!important;border-color:#b7dcdf!important;border-left-color:#45a5b0!important}
.daycol .card.done{background:#e5f2e6!important;border-color:#bedbc2!important;border-left-color:#5b9c68!important;opacity:1}
:root[data-theme="dark"] .advanced-week .daycol.today{box-shadow:inset 0 0 0 2px #82b7a7}
:root[data-theme="dark"] .daycol .card.active{background:#2f5055!important}
:root[data-theme="dark"] .daycol .card.done{background:#34553c!important}
@media print{.topbar{display:none!important}main{margin-left:0!important}}
