:root{--bg:#edf8f1;--panel:#fff;--text:#173523;--muted:#587061;--line:#b8d8c3;--brand:#347a4d;--brand2:#3f8f5a;--ok:#2f7d4a;--danger:#a33a3a}
body{background:linear-gradient(180deg,#e7f6ec 0,#f7fbf8 260px);color:var(--text)}
.topbar{background:#347a4d;color:#fff;border-bottom:1px solid #28623d;box-shadow:0 3px 12px #245b3820}
.nav a{color:#f4fff7}
.nav a:hover,.nav a.active{background:#dff2e6;color:#204e32}
.card,.table-wrap,.planner-wrap,.daily-planner-wrap,.modal-box{background:#fff;border-color:#b8d8c3;box-shadow:0 4px 14px #245b3810}
.btn{background:#3f8f5a;color:#fff;border:1px solid #347a4d;box-shadow:0 2px 5px #245b3825}
.btn:hover{background:#2f7848;color:#fff}
.btn.secondary{background:#e3f3e8;color:#245d39;border-color:#83b795}
.btn.secondary:hover{background:#cde8d6;color:#173d27}
.btn.danger{background:#fff1f1;color:#8c3030;border-color:#d9a1a1}
.btn.danger:hover{background:#a33a3a;color:#fff}
.flash{background:#e3f5e9;color:#245d39;border-color:#8bc49f}
.flash.err{background:#fff1f1;color:#8c3030;border-color:#d9a1a1}
th,.planner thead th,.daily-planner thead th{background:#dff1e5;color:#214c31}
.badge{background:#d6ecde;color:#245d39}
.slotbtn{background:#f7fcf8;color:#71907b}
.slotbtn:hover{background:#e3f3e8;color:#245d39}
.slotbtn.filled{background:#dff1e5!important;color:#173d27!important;border-left-color:#347a4d!important}
input,select,textarea{color:#173523;border-color:#9fc8ad!important;background:#fff!important}
input:focus,select:focus,textarea:focus{outline:3px solid #bfe2ca;border-color:#4d9765!important}
.workday-title{grid-template-columns:200px 1fr 220px;background:#347a4d;color:#fff}
.workday-title .workday-logo{width:180px;height:52px;background:#fff;padding:4px}
.important-box{border-color:#73ae87;background:#f0faf3}
.important-box h4,.notice-empty{color:#245d39}
.notice-item{border-color:#a8ceb5;background:#fff}
.notice-target{background:#347a4d;color:#fff}
.shift-manana{border-top-color:#78b98e}
.shift-tarde{border-top-color:#347a4d}
.daily-slot.empty{background:#f7fcf8!important;color:#9ab4a2!important}
.daily-slot.filled{background:#dff1e5!important;color:#173d27!important;border-left-color:#347a4d!important}
.color-dot{border:1px solid #568c68}
input[type=color],label:has(+ input[type=color]){display:none!important}
@media(max-width:800px){.workday-title{grid-template-columns:1fr}.workday-title .workday-logo{width:160px;height:48px}}
.print-settings-card{margin-top:18px}
.print-presets{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:14px 0;padding:12px;border-radius:10px;background:#edf8f1;border:1px solid #b8d8c3}
.print-presets span{font-weight:800;margin-right:4px}
.print-settings-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:14px}
.print-setting{margin:0;padding:12px;border:1px solid #c9e2d1;border-radius:10px;background:#f9fdf9}
.print-setting>span{display:block;margin-bottom:8px;color:#245d39}
.print-setting>div{display:flex;align-items:center;gap:7px}
.print-setting input{min-width:0;font-weight:800}
.print-setting b{font-size:12px;color:#587061}
@media(max-width:1100px){.print-settings-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}}
@media(max-width:600px){.print-settings-grid{grid-template-columns:1fr}}
