:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#182434;background:#f5f7fa}*{box-sizing:border-box}body{margin:0}a{color:#07549a}header{display:flex;align-items:center;gap:1.3rem;justify-content:space-between;background:#fff;border-bottom:1px solid #dce2e9;padding:.8rem max(1rem,calc((100vw - 1100px)/2))}header>a{font-weight:750;text-decoration:none;color:#182434}nav{display:flex;gap:1rem;flex-wrap:wrap}header form{margin:0}main{max-width:1100px;margin:0 auto;padding:1.5rem 1rem 3rem}h1{font-size:1.65rem;margin:.2rem 0}h2{font-size:1.1rem}button,.button{display:inline-block;background:#07549a;color:white;border:0;border-radius:.5rem;padding:.65rem 1rem;font:inherit;text-decoration:none;cursor:pointer}button.danger{background:#a52828}.heading{display:flex;justify-content:space-between;gap:1rem;align-items:center}.filters{display:flex;gap:.8rem;flex-wrap:wrap;align-items:end;background:white;border:1px solid #dce2e9;padding:1rem;border-radius:.7rem;margin:1.2rem 0}.filters label,.entry-form label{display:flex;flex-direction:column;gap:.35rem;font-weight:600}input,select,textarea{font:inherit;padding:.55rem;border:1px solid #9aa9b8;border-radius:.4rem;max-width:100%}.period-nav{display:flex;justify-content:space-between;gap:1rem}.day-card{background:white;border:1px solid #dce2e9;border-radius:.7rem;margin:.7rem 0;padding:1rem}.day-card h2{margin:0 0 .5rem}.entry-list{margin:0;padding:0;list-style:none}.entry-list li{border-top:1px solid #eef1f4;padding:.65rem 0}.entry-list a{text-decoration:none;color:#182434}.entry-list a:hover{text-decoration:underline}.muted{color:#68788a}.entry-form{display:grid;gap:1rem;max-width:620px;background:white;padding:1.2rem;border-radius:.7rem}.entry-form button{justify-self:start}.error,.errorlist{color:#a52828}.history-list{padding-left:1.5rem}.history-list li{background:white;border:1px solid #dce2e9;border-radius:.7rem;padding:1rem;margin-bottom:1rem}.history-sides{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.month-grid{overflow:auto;background:white;border:1px solid #dce2e9;border-radius:.7rem;max-height:70vh}.month-grid table{border-collapse:collapse;font-size:.8rem}.month-grid th,.month-grid td{border:1px solid #dce2e9;padding:.3rem;min-width:50px;text-align:center}.month-grid th:first-child{position:sticky;left:0;background:white;min-width:180px;text-align:left}.month-grid thead th{position:sticky;top:0;background:#eef3f8}.month-grid td a{display:block;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-cell{color:#9aa9b8;text-decoration:none}.month-list{display:none}@media(max-width:600px){header{align-items:start;flex-direction:column;gap:.7rem}nav{width:100%;gap:.8rem}main{padding:1rem}.heading{align-items:start;flex-direction:column}.filters{display:grid;grid-template-columns:1fr}.filters input,.filters select{width:100%}.period-nav{font-size:.9rem}.history-sides{grid-template-columns:1fr}.entry-list li{line-height:1.6}.month-grid{display:none}.month-list{display:block}}
.entry-form{grid-template-columns:minmax(0,1fr);width:100%}.entry-form label{min-width:0}.entry-form input,.entry-form select,.entry-form textarea{width:100%;min-width:0}
.batch-notice{padding:.8rem 1rem;background:#e6f3ff;border:1px solid #9bc6ea;border-radius:.5rem}
.heading-actions{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}.day-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.inline-select{width:190px;flex:0 0 auto}.day-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding-top:1rem}.day-actions p{margin:0}@media(max-width:600px){.day-row{align-items:stretch;flex-direction:column;gap:.4rem}.inline-select{width:100%}.heading-actions{width:100%}}
