:root{--brand-primary:#82C92B;--brand-on-primary:#1a1a1a;--brand-ink:#3f3c36;--field-border:#8f8b81;--field-border-hover:#6f6b62}html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}body{margin:0;font-family:system-ui,-apple-system,sans-serif;font-size:18px;line-height:1.5;color:var(--brand-ink)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.form-field{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.form-field label{font-size:16px;font-weight:700;color:var(--brand-ink);line-height:1.4}.form-field input,.form-field select,.form-field textarea{font-size:16px;padding:9px 11px;border:1.5px solid var(--field-border);border-radius:8px;background:#fff;color:var(--brand-ink);font-family:inherit;width:100%}.form-field input:hover,.form-field select:hover,.form-field textarea:hover{border-color:var(--field-border-hover)}.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible{outline:2px solid var(--brand-primary);outline-offset:1px;border-color:var(--brand-primary)}.form-field input:disabled,.form-field select:disabled,.form-field textarea:disabled{background:#f4f2ec;border-color:#c7c3b8;color:#6b6860}.req-mark{color:#c0392b;font-weight:800;text-decoration:none;border:0;cursor:help}.info-hint{margin:6px 0 0;font-size:15px}.info-hint>summary{display:inline-flex;align-items:center;gap:7px;cursor:pointer;color:#8a4b08;font-weight:600;list-style:none;padding:2px 0;width:-moz-fit-content;width:fit-content}.info-hint>summary::-webkit-details-marker{display:none}.info-hint>summary:focus-visible,.info-hint>summary:hover{text-decoration:underline}.info-hint-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:0 0 20px;border-radius:50%;background:var(--brand-primary);color:var(--brand-on-primary);font-size:13px;font-weight:800;font-style:italic;line-height:1}.info-hint-body{margin-top:8px;padding:12px 14px;border:1px solid #dcd9d1;border-left:4px solid var(--brand-primary);border-radius:8px;background:#fbfdf8;color:var(--brand-ink);font-size:16px;line-height:1.55}.info-hint-body code{background:#eef2e8;padding:1px 5px;border-radius:4px;font-size:15px}.portal{--tenant-primary:#72af43;--tenant-on-primary:#1a1a1a;--tenant-primary-text:#3d6b1f;--tenant-link:#b35a00;min-height:100vh;background:#fbfaf7}.portal-header{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--tenant-primary);color:var(--tenant-on-primary)}.portal-org{margin:0;font-weight:700;font-size:1.1rem}.portal-signout{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.portal-main{max-width:42rem;margin:0 auto;padding:1.5rem 1rem 4rem}.portal h1,.portal h2{color:var(--tenant-primary-text);line-height:1.25}.portal h1{font-size:2rem;margin-top:.5rem}.portal h2{font-size:1.4rem;margin-top:2.25rem}.portal a{color:var(--tenant-link);font-weight:600;text-decoration:underline}.portal a:focus-visible,.portal button:focus-visible,.portal input:focus-visible{outline:3px solid var(--tenant-link);outline-offset:2px}.stack{display:flex;flex-direction:column;gap:1.25rem;align-items:flex-start}.stack .form-field{align-self:stretch}.button-primary{font:inherit;font-weight:700;padding:.75rem 1.5rem;border:2px solid var(--tenant-on-primary);border-radius:8px;background:var(--tenant-primary);color:var(--tenant-on-primary);cursor:pointer}.button-primary:hover{filter:brightness(.95)}.link-button{font:inherit;background:none;border:none;padding:0;color:inherit;text-decoration:underline;font-weight:700;cursor:pointer}.notice{padding:.75rem 1rem;border-radius:8px;border-left:6px solid}.notice-ok{background:#eef6e8;border-color:var(--tenant-primary-text)}.notice-warn{background:#fff4e8;border-color:var(--tenant-link)}.notice-error{background:#fdecec;border-color:#b3261e}.card{background:#fff;border:1px solid var(--field-border);border-radius:8px;padding:.25rem 1.25rem}.current-state{font-size:1.3rem;font-weight:700}.choice-group{border:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.choice-group legend{font-weight:700;margin-bottom:.5rem}.choice{display:flex;gap:.75rem;align-items:flex-start;padding:.75rem 1rem;background:#fff;border:1px solid var(--field-border);border-radius:8px;cursor:pointer}.choice:has(input:checked){border:2px solid var(--tenant-primary-text);background:#f3f8ee}.choice input{width:1.25rem;height:1.25rem;margin-top:.2rem;flex:none;accent-color:var(--tenant-primary-text)}.choice-label{display:block;font-weight:600}.choice-hint{display:block;font-size:1rem;color:#57534b}.history{list-style:none;padding:0;gap:.75rem}.history,.history li{display:flex;flex-direction:column}.history li{border-left:3px solid var(--field-border);padding-left:.75rem}.history-date{font-size:1rem;color:#57534b}.echo-email{overflow-wrap:anywhere}.portal-nav{max-width:42rem;margin:0 auto;padding:.75rem 1rem 0;display:flex;gap:1.5rem;flex-wrap:wrap}.portal-nav a[aria-current=page]{color:var(--brand-ink);text-decoration:none;border-bottom:3px solid var(--tenant-primary-text)}.button-secondary{font:inherit;font-weight:700;padding:.7rem 1.4rem;border:2px solid var(--brand-ink);border-radius:8px;background:#f1efe9;color:var(--brand-ink);cursor:pointer}.button-secondary:hover{background:#e4e1d8}.task-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}.task{background:#fff;border:1px solid var(--field-border);border-radius:8px;padding:1rem 1.25rem}.task-awaiting{border:2px solid var(--tenant-link)}.task h3{margin:0 0 .25rem;font-size:1.2rem;line-height:1.3}.task-state{margin:0;font-weight:600;color:#57534b}.task-meta{margin:.25rem 0 0;font-size:1rem;color:#57534b}.task-description{margin:.75rem 0 0;white-space:pre-line}.task-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem}.task-actions form{margin:0}.task-tag{display:inline-block;font-size:.95rem;font-weight:700;padding:.1rem .6rem;border-radius:999px;background:#eef6e8;color:var(--tenant-primary-text);margin-bottom:.4rem}.task details>summary{cursor:pointer;font-weight:600;margin-top:.75rem;color:var(--tenant-link);text-decoration:underline}