/* One continuous candidate form; other registration flows keep their own layout. */
.cw-form-sheet{width:min(100%,640px);max-width:640px;height:min(94dvh,calc(var(--cw-viewport,100dvh) - 12px));max-height:calc(var(--cw-viewport,100dvh) - 12px);background:#fafbf8}
.cw-form-sheet>header{padding:14px 20px;flex-shrink:0}
.cw-form-sheet>header h2{font-size:20px}
.cw-form-sheet .mobile-sheet-content{padding:0 22px 22px;scroll-padding:20px}
.cw-form{margin:0;color:#294737}
.cw-form-intro{font-size:14px;color:#647365;line-height:1.6;margin:12px 0 18px}
.cw-role{border:1px solid #dce7d9;border-radius:16px;background:#eef3e9;padding:0 14px;margin-bottom:8px}
.cw-role>summary{display:flex;gap:12px;align-items:center;cursor:pointer;list-style:none;min-height:78px;padding:10px 0}
.cw-role>summary::-webkit-details-marker{display:none}
.cw-role-mark{flex:0 0 30px}.cw-role svg{width:26px;height:26px}
.cw-role b,.cw-role small{display:block}.cw-role b{font-size:16px}.cw-role small{font-size:13px;line-height:1.5;margin-top:3px}
.cw-change{margin-left:auto;text-decoration:underline;text-underline-offset:3px;font-size:14px}
.cw-role-fields{border-top:1px solid #d6e1d2;padding-bottom:14px}
.cw-role-fields>.linkbtn{min-height:44px}
.cw-form-section{padding:22px 0;border-bottom:1px solid #e3e8de}
.cw-form-section h3{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:600;margin:0 0 14px}
.cw-form-section h3 svg{width:21px;height:21px;color:#66836c;flex-shrink:0}
.cw-form .field{margin:14px 0 0}
.cw-form .field label{font-size:14px;margin-bottom:7px}
.cw-form .field input,.cw-form .field select{background:#fff;min-height:48px;scroll-margin:20px}
.cw-form input[aria-invalid=true]:not([type=radio]),.cw-form select[aria-invalid=true]{border-color:#a44235}
.cw-form .cw-field-error{font-size:13px;line-height:1.5;color:#a13e32;margin:5px 0 0}
.cw-suggestions{margin-top:13px}.cw-suggestions>summary{font-size:13px;color:#45694a;cursor:pointer;min-height:36px;line-height:1.5;padding:8px 0}
.cw-region-options{display:grid;gap:7px;margin-top:8px}
.cw-region-options button{padding:11px 13px;text-align:left;border:1px solid #dfe7d9;border-radius:12px;background:#f0f4eb;color:#325b3e;cursor:pointer;font:inherit}
.cw-region-options b,.cw-region-options small{display:block;font-size:13px;line-height:1.6}
.cw-radio{padding:0;border:0;margin:18px 0 0;min-width:0}
.cw-radio legend{font-size:14px;margin:0 0 10px;padding:0}
.cw-radio>div{display:flex;flex-wrap:wrap;gap:8px}
.cw-radio label{position:relative;cursor:pointer}
.cw-form .cw-radio input[type=radio]{position:absolute;width:1px;height:1px;min-height:0;opacity:0;padding:0;border:0;left:12px;top:20px}
.cw-radio span{display:flex;align-items:center;justify-content:center;min-height:44px;padding:9px 14px;border:1px solid #d8e2d2;border-radius:12px;background:#fff;font-size:14px;line-height:1.5}
.cw-radio input:checked+span{background:#28573f;color:#fff;border-color:#28573f}
.cw-radio input:focus-visible+span{outline:3px solid #87a372;outline-offset:3px}
.cw-radio input[aria-invalid=true]+span{border-color:#b87569}
.cw-extra{padding:18px 0;border-bottom:1px solid #e3e8de}
.cw-extra>summary{font-size:15px;cursor:pointer;min-height:44px;line-height:1.6;padding:8px 0}
.cw-extra>summary small{font-size:12px;margin-left:8px;color:#70816d}
.cw-conditions{font-size:13px;line-height:1.7;padding:18px 0 8px;color:#5b715c}
.cw-conditions>p{margin:0 0 6px}.cw-conditions summary{min-height:36px;padding:5px 0;cursor:pointer;color:#355d42}
.cw-conditions .cw-before-send{margin-top:12px}
.cw-form .cw-consent{align-items:flex-start;font-size:13px;line-height:1.6;margin:14px 0;min-height:44px}
.cw-form-note{font-size:12px;color:#647661;line-height:1.7;margin:8px 0}
.cw-form-sheet>footer{padding:12px 22px calc(12px + env(safe-area-inset-bottom));background:#fafbf8}
.cw-form-sheet .cw-submit{width:100%;font-size:16px;min-height:50px}
.cw-form-sheet :focus-visible{outline:2px solid #54774a;outline-offset:3px}
@media(min-width:761px){.cw-form-sheet{margin:auto;border-radius:22px}.cw-form-sheet .mobile-sheet-content{padding-inline:30px}.cw-form-sheet>header,.cw-form-sheet>footer{padding-inline:30px}}
@media(max-width:350px){.cw-form-sheet .mobile-sheet-content{padding-inline:16px}.cw-radio span{font-size:13px;padding-inline:11px}.cw-extra>summary small{display:block;margin-left:17px}}
