@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;600;700;800&display=swap');
:root{--ink:#233a32;--green:#284f3e;--cream:#f6f5f0;--line:#e1e5dc;--muted:#707b73;--amber:#986621}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:15px 'DM Sans',Arial,sans-serif}.demo{padding:9px 20px;text-align:center;background:#e6eddf;font-size:12px;color:#456146}header{display:flex;justify-content:space-between;align-items:center;padding:25px 6%;border-bottom:1px solid var(--line);background:#fff}.brand{text-decoration:none;color:var(--green);font:bold 25px Manrope,Arial;letter-spacing:3px}.brand span{display:block;font:9px 'DM Sans',Arial;letter-spacing:2.4px;margin-top:5px}.identity{text-align:right;font-weight:600}.identity span{display:block;color:var(--muted);font-size:12px;margin-top:5px}main{max-width:1300px;padding:28px 32px 60px;margin:auto}nav{display:flex;gap:7px;margin-bottom:42px}button,select,input,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px 15px;color:var(--ink)}button:hover{border-color:var(--green);background:#eef2e9}button.active,.primary{background:var(--green);color:white;border-color:var(--green)}button:disabled{cursor:default;opacity:.45}.heading{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-bottom:30px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#638067}h1{font:700 36px Manrope,Arial;letter-spacing:-1.2px;margin:10px 0}h2{font:700 19px Manrope,Arial;margin:8px 0}p{line-height:1.6}label{display:block;font-size:12px;font-weight:600}select,input,textarea{display:block;width:100%;margin-top:7px;border:1px solid #d5ddd1;border-radius:8px;padding:12px;background:#fff;color:var(--ink)}select{min-width:185px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:25px}.stat{border:1px solid var(--line);background:#fff;border-radius:12px;padding:22px}.stat:first-child{background:var(--green);color:#fff}.stat small{opacity:.75}.stat strong{display:block;font:700 32px Manrope,Arial;margin-top:9px}.stat strong span{font-size:14px;font-weight:400}.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px}.panel{padding:25px;background:#fff;border:1px solid var(--line);border-radius:12px}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:10px}.panel-title>span,.muted{font-size:12px;color:var(--muted)}#calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin-top:20px}.weekday{text-align:center;padding:8px 0;font-size:11px;color:var(--muted)}.day{padding:10px;text-align:left;min-height:78px;border-radius:8px;display:flex;flex-direction:column;gap:10px}.day b{font-size:12px;font-weight:500}.day span{font-weight:700;font-size:15px}.day.filled{background:#eff3ea}.day.pending{border-color:#cd9f55;background:#fff8eb}.day.weekend{background:#fafaf7}.day.today{outline:2px solid var(--green)}.day.empty span{color:#9da69d;font-weight:400;font-size:12px}.legend{display:flex;gap:18px;font-size:11px;color:#64805b;margin-top:20px;flex-wrap:wrap}.amber{color:var(--amber)}.hint{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.hint b{font-size:13px}.hint p{font-size:13px;color:var(--muted)}.requests{margin-top:23px}.request{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:20px 0}.request:first-child{margin-top:15px}.request p{margin:5px 0;color:var(--muted);font-size:13px}.badge{display:inline-block;font-size:11px;border-radius:20px;padding:6px 10px;background:#fff2d9;color:var(--amber);white-space:nowrap;height:fit-content}.badge.approved{background:#eaf3e6;color:#365c32}.badge.rejected{background:#f8eae7;color:#8c4133}.actions{display:flex;gap:8px;align-items:start;flex-wrap:wrap}.change{font-size:22px;font-weight:700;margin:10px 0}.change del{color:#89918b;font-weight:400}.reject{color:#8c4133}footer{max-width:1236px;margin:auto;padding:23px 0;border-top:1px solid var(--line);font-size:11px;color:var(--muted);display:flex;justify-content:space-between}.login{max-width:430px;margin:60px auto}.login label{margin:20px 0}.login .primary{width:100%}.login>p:last-child{font-size:12px}dialog{border:0;border-radius:14px;padding:28px;width:min(480px,94vw);max-height:90vh;color:var(--ink);box-shadow:0 20px 100px #15271c30}dialog::backdrop{background:#172a2366}dialog label{margin:15px 0}dialog .primary{width:100%;margin-top:10px}.notice{background:#f1f4e9;padding:12px;border-radius:8px;font-size:12px}#formError{color:#9a382d;font-size:12px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--green);color:white;padding:15px 22px;border-radius:10px;max-width:90%;display:none;z-index:10}:focus-visible{outline:3px solid #ae812e;outline-offset:3px}[hidden]{display:none!important}@media(max-width:850px){.layout{grid-template-columns:1fr}.layout aside{display:none}.heading{align-items:start}h1{font-size:29px}}@media(max-width:580px){header{padding:18px}.brand{font-size:20px}.identity{font-size:12px}main{padding:20px 14px 40px}nav{margin-bottom:26px;gap:5px}nav button{padding:9px;font-size:12px}.heading{display:block}.heading label{margin-top:20px}.stats{gap:7px}.stat{padding:13px 10px}.stat strong{font-size:24px}.stat small{font-size:10px}.panel{padding:16px}#calendar{gap:4px}.day{padding:7px 4px;min-height:65px}.day span{font-size:12px}.day.empty span{font-size:10px}.weekday{font-size:10px}.request{flex-direction:column;gap:8px}footer{padding:20px 15px}.demo{font-size:10px}h2{font-size:17px}.legend{gap:10px}}
