*{box-sizing:border-box}body{color:#16181d;background:#fff;margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}main{max-width:900px;margin:0 auto;padding:16px}main.home{max-width:460px}.zone-banner{background:#fff7e6;border:1px solid #f0d9a8;border-radius:6px;margin:0 0 12px;padding:8px 10px;font-size:14px}.grid{-webkit-user-select:none;user-select:none;gap:6px;padding-bottom:8px;display:flex;overflow-x:auto}.grid-column{flex:1 0 96px;min-width:96px}.grid-header{text-align:center;background:#fff;border-bottom:1px solid #e3e6ea;padding:6px 4px;font-size:12px;font-weight:600;position:sticky;top:0}.cell{width:100%;min-height:44px;font:inherit;color:#5b6270;text-align:left;cursor:pointer;touch-action:none;background:#f2f4f7;border:1px solid #e3e6ea;border-radius:4px;margin:0 0 2px;padding:2px 4px;font-size:11px;display:block}.cell-on{color:#fff;background:#2f7d4f;border-color:#276741}.cell:disabled{opacity:.5;cursor:default}.cell:focus-visible{outline-offset:1px;outline:2px solid #1a6fd4}.cell-label{pointer-events:none}.organiser-panel{background:#eef6ff;border:1px solid #c3ddf7;border-radius:6px;margin:0 0 16px;padding:10px 12px}.organiser-panel h2{margin:0 0 6px;font-size:16px}.organiser-panel p{margin:0 0 6px}.warn{color:#8a5300;font-size:14px}.create-form{flex-direction:column;gap:12px;max-width:460px;display:flex}.create-form label{flex-direction:column;gap:4px;font-size:14px;font-weight:600;display:flex}.create-form input,.create-form select{font:inherit;background:#fff;border:1px solid #c9ced6;border-radius:6px;min-height:44px;padding:8px;font-weight:400}.create-form .row{gap:12px;display:flex}.create-form .row label{flex:1}.create-form button{font:inherit;color:#fff;cursor:pointer;background:#2f7d4f;border:1px solid #276741;border-radius:6px;min-height:44px;padding:10px 14px;font-weight:600}.form-error{color:#8a1c26;background:#fdeced;border:1px solid #f0b8bd;border-radius:6px;margin:0;padding:8px 10px;font-size:14px}.muted{color:#5b6270;font-weight:400}.link-block{border:1px solid #e3e6ea;border-radius:6px;margin:0 0 20px;padding:12px}.link-block h2{margin:0 0 4px;font-size:16px}.link-block p{margin:0 0 8px;font-size:14px}.link-block input{font:inherit;background:#f7f8fa;border:1px solid #c9ced6;border-radius:6px;width:100%;margin-bottom:8px;padding:8px;font-size:14px}.link-block button{font:inherit;cursor:pointer;background:#fff;border:1px solid #c9ced6;border-radius:6px;min-height:44px;padding:8px 12px}.link-block.danger{background:#fff7e6;border-color:#f0d9a8}.cell[data-heat="1"]{background:#e4eefb;border-color:#cfe0f5}.cell[data-heat="2"]{background:#c2dbf5;border-color:#a5c7ec}.cell[data-heat="3"]{background:#93bff0;border-color:#74a6e0}.cell[data-heat="4"]{color:#fff;background:#5b9ce8;border-color:#3f82cf}.cell.cell-on{color:#fff;background:#2f7d4f;border-color:#276741}.respond-form{flex-direction:column;gap:10px;max-width:460px;margin:16px 0;display:flex}.respond-form label{flex-direction:column;gap:4px;font-size:14px;font-weight:600;display:flex}.respond-form input{font:inherit;border:1px solid #c9ced6;border-radius:6px;min-height:44px;padding:8px;font-weight:400}.respond-form button{font:inherit;color:#fff;cursor:pointer;background:#2f7d4f;border:1px solid #276741;border-radius:6px;min-height:44px;padding:10px 14px;font-weight:600}.respond-form button:disabled{opacity:.5;cursor:default}.responded{background:#eef7f1;border:1px solid #bfe0cd;border-radius:6px;padding:10px 12px}.nudge{background:#fff7e6;border:1px solid #f0d9a8;border-radius:6px;padding:10px 12px}.legend{color:#5b6270;align-items:center;gap:10px;margin:8px 0;font-size:12px;display:flex}.legend .swatch{vertical-align:middle;border-radius:3px;width:16px;height:16px;display:inline-block}.linklike{font:inherit;color:#1a6fd4;cursor:pointer;background:0 0;border:none;min-height:0;padding:0;text-decoration:underline}.organiser-panel input{font:inherit;background:#fff;border:1px solid #c9ced6;border-radius:6px;width:100%;margin-top:4px;padding:8px;font-size:14px}.primary-link{color:#fff;background:#2f7d4f;border-radius:6px;min-height:44px;padding:10px 14px;font-weight:600;line-height:24px;text-decoration:none;display:inline-block}details{margin:16px 0;font-size:14px}details summary{cursor:pointer;color:#5b6270}details input{font:inherit;border:1px solid #c9ced6;border-radius:6px;width:100%;margin:8px 0;padding:8px}details button{font:inherit;cursor:pointer;background:#fff;border:1px solid #c9ced6;border-radius:6px;min-height:44px;padding:8px 12px}.results{border:1px solid #e3e6ea;border-radius:8px;margin:24px 0;padding:14px}.results h2{margin:0 0 10px;font-size:16px}.results>p{margin:0;font-size:14px}.results-alt-heading{color:#5b6270;text-transform:uppercase;letter-spacing:.04em;margin:14px 0 6px;font-size:12px;font-weight:600}.results-alternates{flex-wrap:wrap;gap:10px;display:flex}.results-alternates .result-card{flex:200px}.result-card{background:#fff;border:1px solid #e3e6ea;border-radius:6px;padding:10px 12px}.result-card-best{background:#eef7f1;border-color:#bfe0cd}.result-when{margin:0 0 4px;font-size:16px}.result-card-best .result-when{font-size:18px}.result-who{color:#5b6270;margin:0;font-size:14px}.result-who-all{color:#276741;font-weight:600}.result-missing{color:#8a5300;margin:4px 0 0;font-size:12px}.result-lock{margin:8px 0 0}.result-lock button{cursor:pointer;color:#fff;background:#2f7d4f;border:1px solid #276741;border-radius:6px;padding:6px 12px;font-size:14px;font-weight:600}.results-alternates .result-lock button{color:#276741;background:#fff}.decided{background:#eef7f1;border:1px solid #bfe0cd;border-radius:8px;margin:24px 0;padding:16px}.decided h2{margin:0 0 8px;font-size:16px}.decided-when{margin:0 0 4px;font-size:22px}.decided-who{color:#5b6270;margin:0;font-size:14px}.decided-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px;display:flex}.decided-actions p,.decided-unlock{margin:0}.decided-booked{color:#276741;margin:12px 0 0;font-size:14px;font-weight:600}.organiser-link-block{margin:10px 0 6px}.organiser-link-block summary{cursor:pointer;font-size:14px;font-weight:600}.organiser-link-block p{margin:6px 0;font-size:12px}.decided-links{flex-wrap:wrap;gap:14px;margin:6px 0 0;display:flex}.decided-links a{font-weight:600}main.prose{max-width:34rem}main.prose h2{margin:28px 0 8px;font-size:16px}main.prose p,main.prose li,main.prose dd{line-height:1.6}main.prose dt{margin-top:14px;font-weight:600}main.prose dd{color:#5b6270;margin:4px 0 0}main.prose code{background:#f2f4f7;border-radius:4px;padding:1px 4px;font-size:14px}
