:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#182e32;background:#f3f5f3;font-synthesis:none;--green:#156c58;--line:#dce4df}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,.button{border:1px solid transparent;background:var(--green);color:#fff;border-radius:7px;padding:.7rem 1.05rem;cursor:pointer;text-decoration:none;font-weight:600}button:hover,.button:hover{filter:brightness(.92)}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #d4952f;outline-offset:3px}.quiet{background:white;color:#26483e;border-color:var(--line)}.danger{background:#fff;color:#a32f2f;border-color:#e4baba}.topbar{background:#fff;border-bottom:1px solid var(--line);padding:1.1rem 4%;display:flex;align-items:center;gap:2rem}.topbar>span{font-size:.85rem;color:#71827b}.topbar form{margin-left:auto}.brand{color:#135e4d;font-weight:800;font-size:1.4rem;text-decoration:none}main{max-width:1440px;margin:auto;padding:2.5rem 4%}.heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:2rem}h1{font-size:clamp(1.8rem,3vw,2.6rem);letter-spacing:-.05em;margin:.4rem 0}h2{font-size:1.1rem;margin:0 0 1rem}.eyebrow{font-size:.7rem;letter-spacing:.16em;font-weight:700;color:var(--green)}.muted{color:#687a73;font-size:.85rem}.tabs{display:flex;gap:1.5rem;border-bottom:1px solid var(--line);margin-bottom:1.7rem;overflow:auto}.tabs button{white-space:nowrap;background:none;color:#65786f;border-radius:0;padding:.8rem 0;border-bottom:3px solid transparent}.tabs button[aria-current]{color:var(--green);border-bottom-color:var(--green)}.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:1.4rem;margin-bottom:1.3rem;box-shadow:0 3px 12px #173c2810}.toolbar{display:flex;gap:1rem;align-items:center;justify-content:space-between;margin-bottom:1.2rem}.toolbar>div{display:flex;gap:.6rem;align-items:center}.filters,.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.2rem}label{display:block;font-size:.8rem;font-weight:600;color:#486055;margin-bottom:.8rem}input,select,textarea{display:block;width:100%;padding:.65rem;border:1px solid #cdd8d1;border-radius:6px;background:#fff;color:#182e32;margin-top:.35rem;min-width:0}input[type=checkbox]{display:inline-block;width:auto;margin-right:.5rem}input[type=week]{width:auto}textarea{resize:vertical}.columns{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}.metric strong{display:block;font-size:2.4rem;color:var(--green);margin-top:.7rem}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:.85rem}caption{text-align:left;color:#65786f;margin-bottom:1rem}th,td{padding:1rem .65rem;border-bottom:1px solid #e8ede9}th{font-size:.7rem;color:#63796d;white-space:nowrap}td button{padding:.35rem .5rem;background:#eaf4ee;color:var(--green)}td small{display:block;color:#6b7b73;margin-top:.3rem}tfoot{font-weight:700;background:#f5f8f5}.entry-row,.bar-row{padding:.8rem 0;border-bottom:1px solid #e9eee9;display:flex;gap:1rem;justify-content:space-between;align-items:center}.entry-row>div{flex:1}.entry-row small{display:block;color:#758378;margin-top:.3rem}.badge{background:#fff1ce;color:#805900;border-radius:4px;padding:.2rem .4rem;font-size:.7rem}.bar-row progress{width:35%;accent-color:var(--green)}#status{min-height:1.3rem;margin-bottom:.4rem;color:#486055}#status.error,#entry-error,.validation-summary-errors{color:#a32f2f}dialog{border:1px solid var(--line);border-radius:14px;padding:1.8rem;width:min(660px,95vw);max-height:92vh;overflow:auto;box-shadow:0 25px 90px #0004}dialog::backdrop{background:#102b2577}dialog footer{display:flex;justify-content:space-between;margin-top:1.5rem}.quick{display:flex;gap:.6rem;margin-bottom:1rem}.login{max-width:460px;margin:7vh auto;padding:2.5rem}.login button{width:100%;margin-top:1rem}.secret{overflow-wrap:anywhere;color:#805900}[hidden]{display:none!important}@media(max-width:720px){main{padding:1.4rem 4%}.topbar>span{display:none}.heading{align-items:flex-start;flex-direction:column}.columns,.metrics{grid-template-columns:1fr}.toolbar{flex-wrap:wrap}.tabs{gap:1rem}.card{padding:1rem}.filters{grid-template-columns:1fr 1fr}.entry-row{flex-wrap:wrap}th,td{padding:.8rem .4rem}.metric strong{font-size:2rem}}
