.ms-project-form {
	box-sizing: border-box;
	width: min(var(--ms-form-width, 100%), var(--ms-form-max-width, 960px));
	margin: clamp(1.5rem, 4vw, 3rem) auto;
	padding: clamp(1.25rem, 4vw, 2.75rem);
	background: var(--ms-form-bg, #f6f8fa);
	border-radius: var(--ms-form-radius, 8px);
	box-shadow: 0 1rem 2.5rem rgba(12, 35, 44, 0.08);
}

.ms-project-form *,
.ms-project-form *::before,
.ms-project-form *::after { box-sizing: border-box; }
.ms-project-form__intro { max-width: 72ch; }
.ms-project-form__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem 1.25rem; }
.ms-project-form__field label,
.ms-project-form__field legend { display: block; margin-bottom: .4rem; font-weight: 700; }
.ms-project-form__field fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.ms-project-form__field input:not([type="checkbox"]):not([type="radio"]),
.ms-project-form__field select,
.ms-project-form__field textarea {
	width: 100%;
	min-height: 2.9rem;
	padding: .7rem .8rem;
	color: #16242b;
	background: #fff;
	border: 1px solid #73828a;
	border-radius: max(2px, calc(var(--ms-form-radius, 8px) / 2));
	font: inherit;
}
.ms-project-form__field textarea { min-height: 8rem; resize: vertical; }
.ms-project-form__field input:focus-visible,
.ms-project-form__field select:focus-visible,
.ms-project-form__field textarea:focus-visible,
.ms-project-form__submit:focus-visible { outline: 3px solid color-mix(in srgb, var(--ms-form-accent, #005f73) 60%, #fff); outline-offset: 2px; }
.ms-project-form__section { margin-top: 1rem; padding-top: 1.2rem; border-top: 2px solid var(--ms-form-accent, #005f73); }
.ms-project-form__section h3 { margin: 0; }
.ms-project-form__choices { display: grid; gap: .55rem; }
.ms-project-form__choices label { display: flex; gap: .55rem; align-items: flex-start; margin: 0; font-weight: 400; }
.ms-project-form__choices input,
.ms-project-form__consent input { flex: 0 0 auto; width: 1.15rem; height: 1.15rem; margin-top: .2rem; }
.ms-project-form .description { margin: .35rem 0 0; color: #52616a; font-size: .9em; }
.ms-project-form__consent { display: flex; gap: .65rem; align-items: flex-start; margin-top: 1.5rem; }
.ms-project-form__required { font-size: .9em; }
.ms-project-form__submit { min-height: 3rem; padding: .75rem 1.2rem; color: #fff; background: var(--ms-form-accent, #005f73); border: 2px solid var(--ms-form-accent, #005f73); border-radius: max(2px, calc(var(--ms-form-radius, 8px) / 2)); font: inherit; font-weight: 700; cursor: pointer; }
.ms-project-form__submit:hover { filter: brightness(.9); }
.ms-project-form__message { margin: 1rem 0; padding: .85rem 1rem; border-left: 4px solid var(--ms-form-accent, #005f73); background: #fff; }
.ms-project-form__message--error { border-color: #b32d2e; }
.ms-project-form__message--warning { border-color: #dba617; }
.ms-project-form__trap { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.ms-project-form__progress { margin: 1.25rem 0; }
.ms-project-form__progress ol { display: grid; grid-template-columns: repeat(var(--ms-form-steps, 1), minmax(0, 1fr)); gap: .35rem; margin: 0; padding: 0; list-style: none; }
.ms-project-form__progress button { width: 100%; min-height: 2.75rem; padding: .5rem; color: inherit; background: #fff; border: 1px solid #9aa6ac; border-radius: .3rem; font: inherit; cursor: pointer; }
.ms-project-form__progress button[aria-current="step"] { color: #fff; background: var(--ms-form-accent, #005f73); border-color: var(--ms-form-accent, #005f73); }
.ms-project-form.is-enhanced .ms-project-form__step[hidden] { display: none; }
.ms-project-form__step { min-width: 0; margin: 0; padding: 0; border: 0; }
.ms-project-form__step > legend { width: 100%; margin: 0 0 1rem; padding-top: 1rem; color: var(--ms-form-accent, #005f73); font-size: 1.25em; font-weight: 800; border-top: 2px solid currentColor; }
.ms-project-form__actions { display: flex; flex-wrap: wrap; gap: .65rem; justify-content: space-between; margin-top: 1.25rem; }
.ms-project-form__next,.ms-project-form__previous { min-height: 2.75rem; padding: .65rem 1rem; border: 2px solid var(--ms-form-accent, #005f73); border-radius: .3rem; font: inherit; font-weight: 700; cursor: pointer; }
.ms-project-form__next { margin-left: auto; color: #fff; background: var(--ms-form-accent, #005f73); }
.ms-project-form__previous { color: var(--ms-form-accent, #005f73); background: transparent; }
.ms-project-form__draft-note { color: #52616a; font-size: .88em; }
.ms-project-form [hidden] { display:none!important; }
.ms-project-form__actions { grid-column:1/-1; }
.ms-pr2-summary { display:grid;grid-template-columns:minmax(120px,1fr) minmax(0,2fr);gap:.6rem 1rem; }
.ms-pr2-summary dt { font-weight:700; }
.ms-pr2-summary dd { margin:0;white-space:pre-wrap;overflow-wrap:anywhere; }
.ms-pr2-draft { padding:1rem;border:1px solid #9aa6ac;border-radius:.5rem;margin-bottom:1.5rem; }
.ms-pr2-draft label { display:block;margin-bottom:.75rem; }
.ms-pr2-draft button { margin-right:.5rem;padding:.5rem;font:inherit; }
.ms-pr2-handoff { margin: 1rem 0 1.5rem; padding: 1rem; color: #16242b; background: #fff; border: 1px solid #9aa6ac; border-left: 4px solid var(--ms-form-accent, #005f73); border-radius: .35rem; }
.ms-pr2-handoff h3 { display: flex; gap: .45rem; align-items: center; margin-top: 0; }
.ms-pr2-handoff dl { display: grid; grid-template-columns: minmax(8rem, 1fr) minmax(0, 2fr); gap: .35rem 1rem; margin-bottom: 0; }
.ms-pr2-handoff dt { font-weight: 700; }
.ms-pr2-handoff dd { margin: 0; overflow-wrap: anywhere; }
.ms-pr2-icon { display: inline-block; flex: 0 0 auto; vertical-align: -.2em; }
@media(max-width:600px){.ms-project-form__progress ol{grid-template-columns:1fr 1fr}.ms-pr2-summary{grid-template-columns:1fr}.ms-pr2-summary dd{margin-bottom:.7rem}.ms-project-form__consent{display:block}}

@media (min-width: 720px) {
	.ms-project-form__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ms-project-form__field--full,
	.ms-project-form__section { grid-column: 1 / -1; }
}

@media (prefers-reduced-motion: reduce) {
	.ms-project-form * { scroll-behavior: auto !important; transition: none !important; }
}
