:root{font-family:system-ui,sans-serif;color:#25332e;background:#f5f4ee;line-height:1.5}*{box-sizing:border-box}body{margin:0}header{background:#213f36;color:#fff;padding:32px max(20px,calc((100vw - 1100px)/2));border-bottom:7px solid #e8a6bc}.brand{font-weight:700;letter-spacing:.04em}.brand small{display:block;font-size:10px;letter-spacing:.18em;color:#bdd5ca}h1{font-family:Georgia,serif;font-size:clamp(38px,6vw,65px);line-height:1.08;font-weight:400;margin:24px 0}h1 em{color:#edb2c4}h2{font-family:Georgia,serif;font-size:30px;font-weight:400}main{max-width:1140px;margin:auto;padding:20px}button,.download{cursor:pointer;border:1px solid #bac9c1;background:#fff;border-radius:9px;padding:11px 16px;color:#213f36;font:inherit;font-weight:600;text-decoration:none}button:hover,button.active{background:#e8a6bc;color:#212c27}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #3184d6;outline-offset:2px}#profiles{display:flex;gap:12px}nav{display:flex;gap:8px;overflow:auto;padding:10px 0 20px}nav button{white-space:nowrap}.notice,.hint{font-size:13px;color:#516057}.notice{border-left:3px solid #b48d50;padding:10px 16px;background:#fff9e9}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.card{padding:24px;background:white;border:1px solid #dce1d7;border-radius:16px;margin:12px 0}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}label{display:block;font-size:13px;font-weight:650}input,select,textarea{display:block;width:100%;padding:11px;border:1px solid #bbc7bd;border-radius:7px;background:#fff;font:inherit;color:#25332e;margin:5px 0 12px}textarea{min-height:100px}input[type=checkbox]{width:auto;display:inline;margin-right:8px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.metric{padding:18px;border-radius:12px;background:#f8dfe8}.metric:nth-child(2){background:#daf0d9}.metric:nth-child(3){background:#dcebf8}.metric:nth-child(4){background:#fff0bc}.metric strong{display:block;font-size:25px}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.warning{padding:10px;background:#fff6df;border-radius:8px;margin:8px 0}.weekA{border-top:5px solid #df8eac}.weekB{border-top:5px solid #84b8dc}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}footer{text-align:center;padding:30px;color:#65756a;font-size:12px}#status{color:#5b4323}a{color:#235d49}@media(max-width:650px){.grid,.fields{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}.card{padding:17px}main{padding:14px}button{padding:10px 12px}}.fortnight{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:18px 0}.dayTile{display:flex;flex-direction:column;text-align:left;font-size:12px;min-height:150px;padding:10px;overflow-wrap:anywhere}.dayTile b{font-size:21px;margin:4px 0}.dayTile small{font-weight:400}.dayTile span{flex:1}button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:850px){.fortnight{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:500px){.fortnight{grid-template-columns:repeat(2,minmax(0,1fr))}.dayTile{min-height:125px}}