
:root{font-family:system-ui,sans-serif;color:#18332e;background:#f2f5f2;font-size:17px}*{box-sizing:border-box}body{margin:0}header{background:#143d36;color:white;padding:20px max(20px,calc((100% - 960px)/2));display:flex;align-items:center;justify-content:space-between;gap:16px}header a{color:white}main{max-width:960px;margin:28px auto;padding:0 20px 130px}h1{font-size:2rem;letter-spacing:-.04em}h2{font-size:1.35rem}a{color:#185e50;text-underline-offset:4px}button,.button{display:inline-block;padding:15px 20px;min-height:48px;border:0;border-radius:12px;background:#185e50;color:white;text-decoration:none;font:inherit;cursor:pointer}button:hover,.button:hover{background:#0b483b}:focus-visible{outline:3px solid #e3a326;outline-offset:4px}.card{display:block;background:white;border:1px solid #d6e2dc;border-radius:18px;padding:24px;margin:16px 0;color:inherit;text-decoration:none;box-shadow:0 3px 10px #173f2e06}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.grid .card{margin:0;min-height:120px;display:flex;flex-direction:column;justify-content:center;font-size:1.35rem;font-weight:700}.muted{color:#527166}.badge{display:inline-block;border-radius:20px;background:#e6f1e9;padding:5px 12px;font-size:.85rem}label{display:block;font-weight:600;margin:16px 0 8px}input,select,textarea{font:inherit;width:100%;padding:13px;border:1px solid #9eafa5;border-radius:8px;background:white;color:#18332e}input[type=checkbox]{width:24px;height:24px}textarea{resize:vertical}form p{margin:18px 0}.errorlist,.error{color:#a52b29}.notice{padding:16px;background:#e1efe3;border-radius:10px;margin:12px 0}nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;background:white;border-top:1px solid #ccd9d0;padding:12px max(8px,env(safe-area-inset-bottom));gap:8px}nav a{padding:14px 10px;text-align:center;text-decoration:none;min-height:48px;font-size:.9rem}.row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.logout{margin:0}.logout button{padding:10px;background:transparent;border:1px solid #8ca99c}small{font-size:.85rem}hr{border:0;border-top:1px solid #d6e2dc;margin:24px 0}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}.helptext{font-size:.85rem;color:#527166} @media(max-width:480px){header{padding:16px}main{margin:20px auto}h1{font-size:1.7rem}.card{padding:20px}nav a{font-size:.8rem;padding:14px 8px}}
.summary{background:#e5efe8}.summary h2,.summary p{margin:8px 0}.total{display:block;font-size:2.4rem;line-height:1.2}.summary a{display:inline-block;min-height:44px;padding:12px 0}.grid small{font-weight:400}@media(max-width:480px){body:has(.summary) main{margin:16px auto}body:has(.summary) .grid{gap:10px}body:has(.summary) .grid .card{min-height:84px;padding:14px 20px}body:has(.summary) main>h1{margin:12px 0}.summary{padding:16px}.summary .total{font-size:2rem}}
