:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--primary:#8b1e8f;--primary-strong:#a61e9c;--primary-dark:#651269;--primary-hover:#96198d;--primary-hover-dark:#551057;--primary-light:#d66ac7;--primary-soft:#f3d8ef;--blue:#145da0;--blue-strong:#1769c2;--blue-dark:#174a7e;--blue-muted:#4a6c8d;--background:#fffaff;--surface:#fff;--on-primary:#fff;--on-disabled:#552152;--text:var(--blue-dark);--text-muted:var(--blue-muted);--border:#d9b9df;--border-strong:#c894cf;--focus:var(--primary-strong);--danger:#8a2929;--danger-border:#c55b5b;--danger-soft:#fff0f0;--warning:#684515;--warning-border:#b07b32;--warning-soft:#fff8e8;--success:#285433;--success-border:#4d8058;--success-soft:#eff9f1;background:var(--background);color:var(--text);font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%;min-width:0}body{background:radial-gradient(circle at 88% 8%, #d66ac7b8, transparent 32rem), linear-gradient(155deg, var(--primary-dark) 0%, var(--primary) 13%, var(--primary-light) 34%, var(--primary-soft) 57%, var(--background) 80%, var(--surface) 100%);min-height:100vh;color:var(--text);overflow-wrap:break-word;background-attachment:fixed;margin:0}img,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit}.home{place-items:center;min-height:100vh;padding:clamp(1rem,4vw,3rem);display:grid}.card{border:1px solid var(--border);background:#fffffff0;border-radius:1.25rem;width:min(100%,42rem);min-width:0;padding:clamp(1.5rem,5vw,3rem);box-shadow:0 1.5rem 4rem #6512692e}.eyebrow{color:var(--primary-strong);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .75rem;font-size:.8rem;font-weight:700}h1{color:var(--blue-strong);overflow-wrap:anywhere;margin:0;font-size:clamp(2.15rem,7vw,4.5rem);line-height:1.05}.home-intro{color:var(--text-muted);margin:1.25rem 0 0;font-size:1.125rem}.home-actions{flex-wrap:wrap;gap:.8rem;margin-top:1.75rem;display:flex}.home-actions .primary-link,.home-actions .secondary-link{margin-top:0}.primary-link,.primary-action,.secondary-link{background:linear-gradient(135deg, var(--primary), var(--primary-strong));min-width:3rem;min-height:3rem;color:var(--on-primary);cursor:pointer;text-align:center;touch-action:manipulation;border:0;border-radius:.7rem;justify-content:center;align-items:center;margin-top:1.75rem;padding:.75rem 1.25rem;font-weight:700;line-height:1.35;text-decoration:none;display:inline-flex;box-shadow:0 .6rem 1.4rem #8b1e8f42}.secondary-link{border:1px solid var(--primary);background:var(--surface);box-shadow:none;color:var(--primary)}.primary-link:focus-visible,.primary-action:focus-visible,.secondary-link:focus-visible,.back-link:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.primary-action:disabled{background:var(--primary-light);box-shadow:none;color:var(--on-disabled);cursor:not-allowed;opacity:.68}.candidate-page{width:100%;min-height:100vh;padding:clamp(1rem,4vw,3rem)}.access-page{place-items:center;width:100%;min-height:100vh;padding:clamp(1rem,4vw,3rem);display:grid}.access-card{border:1px solid var(--border);background:#fffffff5;border-radius:1.25rem;width:min(100%,42rem);min-width:0;padding:clamp(1.5rem,5vw,3rem);box-shadow:0 1.5rem 4rem #6512692e}.access-card h1{font-size:clamp(2rem,7vw,3.75rem)}.access-card-wide{width:min(100%,52rem)}.security-notice{border:1px solid var(--border);background:var(--primary-soft);color:var(--blue-dark);overflow-wrap:anywhere;border-radius:.75rem;padding:1rem 1.1rem;line-height:1.55}.admin-page{width:100%;min-height:100vh;padding:clamp(1rem,4vw,3rem)}.admin-shell{border:1px solid var(--border);background:#fffffff5;border-radius:1.25rem;width:min(100%,78rem);min-width:0;margin:0 auto;padding:clamp(1.5rem,4vw,3rem);box-shadow:0 1.5rem 4rem #6512692e}.admin-candidates{border-top:1px solid var(--border);margin-top:2rem;padding-top:2rem}.admin-section-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.25rem;display:flex}.admin-section-heading .eyebrow{margin-bottom:.4rem}.admin-section-heading h2,.admin-section-heading p{margin:0}.admin-section-heading h2{color:var(--blue-strong);font-size:clamp(1.5rem,4vw,2rem)}.admin-section-heading>p{color:var(--text-muted);white-space:nowrap}.admin-empty{border:1px solid var(--border);background:var(--background);color:var(--blue-dark);border-radius:.75rem;margin:0;padding:1.25rem}.admin-candidate-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.admin-candidate-card{border:1px solid var(--border);background:var(--surface);border-radius:.9rem;min-width:0;padding:1.25rem;box-shadow:0 .4rem 1rem #174a7e14}.admin-candidate-heading{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1rem;display:flex}.admin-candidate-heading h3{color:var(--blue);overflow-wrap:anywhere;margin:0;font-size:1.15rem;line-height:1.3}.status-badge{text-align:center;border-radius:999px;flex:none;align-items:center;padding:.4rem .65rem;font-size:.8rem;font-weight:700;line-height:1.25;display:inline-flex}.status-draft{color:var(--blue-muted);background:#eef3f8}.status-pending{background:var(--warning-soft);color:var(--warning)}.status-rejected{background:var(--danger-soft);color:var(--danger)}.status-accepted{background:var(--success-soft);color:var(--success)}.status-invitation-sent{color:var(--blue);background:#e7f1fb}.status-account-created{background:var(--blue);color:var(--on-primary)}.admin-candidate-data{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1rem;margin:0;display:grid}.admin-candidate-data div{min-width:0}.admin-candidate-data dt{color:var(--blue-muted);letter-spacing:.03em;text-transform:uppercase;margin-bottom:.25rem;font-size:.8rem;font-weight:700}.admin-candidate-data dd{color:var(--blue-dark);overflow-wrap:anywhere;margin:0;line-height:1.45}.feature-list{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.75rem;margin:1.5rem 0;padding:0;list-style:none;display:grid}.feature-list li{border:1px solid var(--border);background:var(--background);color:var(--blue-dark);border-radius:.75rem;padding:.9rem 1rem;font-weight:700}.candidate-card{border:1px solid var(--border);background:#fffffff5;border-radius:1.25rem;width:min(100%,52rem);min-width:0;margin:0 auto;padding:clamp(1.25rem,5vw,3rem);box-shadow:0 1.5rem 4rem #6512692e}.candidate-card h1{font-size:clamp(2rem,7vw,3.75rem)}.back-link{min-height:2.75rem;color:var(--primary);text-underline-offset:.2em;touch-action:manipulation;align-items:center;margin-bottom:2rem;font-weight:700;line-height:1.35;display:inline-flex}.page-intro{max-width:42rem;color:var(--text-muted);margin:1rem 0 2rem;font-size:clamp(1rem,2vw,1.05rem);line-height:1.6}.candidate-form{border-top:1px solid var(--border);padding-top:2rem}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.field{gap:.45rem;display:grid}.field-wide{grid-column:1/-1}.field label{color:var(--blue);font-weight:700}.field input,.field select,.field textarea{border:1px solid var(--border-strong);background:var(--surface);width:100%;min-width:0;min-height:3rem;color:var(--text);border-radius:.65rem;padding:.8rem .9rem;transition:border-color .15s,box-shadow .15s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--primary-strong);box-shadow:0 0 0 .2rem #a61e9c26}.field select:disabled{background:var(--primary-soft);color:var(--text-muted);cursor:not-allowed}.field textarea{resize:vertical;min-height:9rem}.form-feedback{border:1px solid;border-radius:.5rem;margin-bottom:1.5rem;padding:1rem;line-height:1.5}.form-feedback h2{margin:0 0 .5rem}.form-feedback p{margin:0}.form-error{border-color:var(--danger-border);background:var(--danger-soft);color:var(--danger)}.form-warning{border-color:var(--warning-border);background:var(--warning-soft);color:var(--warning)}.form-success{border-color:var(--success-border);background:var(--success-soft);color:var(--success)}@media (hover:hover) and (pointer:fine){.primary-link:hover,.primary-action:hover:not(:disabled){background:linear-gradient(135deg, var(--primary-hover-dark), var(--primary-hover));box-shadow:0 .75rem 1.6rem #8b1e8f57}.secondary-link:hover{border-color:var(--primary-hover-dark);background:var(--primary-soft);color:var(--primary-hover-dark)}.back-link:hover{color:var(--primary-dark)}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--primary-light)}}@media (max-width:40rem){body{background-attachment:scroll}.home,.access-page,.candidate-page,.admin-page{padding:.75rem}.card,.access-card,.candidate-card,.admin-shell{border-radius:1rem;padding:1.5rem 1.25rem}h1,.access-card h1,.candidate-card h1{font-size:clamp(2rem,10vw,3rem)}.form-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.primary-link,.primary-action,.secondary-link{width:100%}.home-actions{flex-direction:column;align-items:stretch}.home-actions .primary-link,.home-actions .secondary-link{width:100%}.feature-list{grid-template-columns:1fr}.admin-section-heading,.admin-candidate-heading{flex-direction:column;align-items:flex-start}.admin-section-heading>p{white-space:normal}.admin-candidate-data{grid-template-columns:1fr}.back-link{margin-bottom:1.25rem}}
.volunteer-shell{background:radial-gradient(circle at 10% 0,#a61e9c3d,#0000 30rem),linear-gradient(155deg,#8b1e8f 0,#d66ac7 13rem,#f3d8ef 28rem,#fffaff 46rem);place-items:center;min-height:100vh;padding:clamp(1rem,4vw,3rem);display:grid}.volunteer-card{border:1px solid var(--border);background:#fffffff7;border-radius:1.15rem;width:min(100%,68rem);padding:clamp(1.25rem,4vw,2.5rem);box-shadow:0 1.5rem 4rem #4a104f38}.volunteer-auth-card{max-width:34rem}.volunteer-card h1{color:var(--blue-strong);margin:0;font-size:clamp(2rem,6vw,3.25rem)}.volunteer-intro{color:var(--blue-muted);line-height:1.6}.volunteer-form,.onboarding-flow,.onboarding-panel{gap:1rem;display:grid}.volunteer-field{gap:.4rem;display:grid}.volunteer-field label,.onboarding-panel legend{color:var(--blue-dark);font-weight:750}.volunteer-field input,.time-range input{border:1px solid var(--border);width:100%;min-height:2.9rem;color:var(--blue-dark);font:inherit;background:#fff;border-radius:.7rem;padding:.65rem .75rem}.volunteer-field input:focus-visible,.time-range input:focus-visible,.volunteer-card button:focus-visible,.volunteer-card a:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.volunteer-primary-button,.volunteer-secondary-button,.add-range{cursor:pointer;min-height:2.8rem;font:inherit;border-radius:.7rem;padding:.65rem 1rem;font-weight:750}.volunteer-primary-button{background:linear-gradient(135deg, var(--primary), var(--primary-strong));color:var(--on-primary);border:0}.volunteer-secondary-button,.add-range{border:1px solid var(--primary);color:var(--primary);background:#fff}.volunteer-primary-button:disabled,.volunteer-secondary-button:disabled{cursor:wait;opacity:.55}.volunteer-error{color:#9f1c13;margin:0;font-weight:700}.password-rule,.field-help,.profile-locked{color:var(--blue-muted);margin:0;font-size:.9rem;line-height:1.5}.volunteer-notice{border:1px solid var(--border);background:var(--primary-soft);color:var(--blue-dark);border-radius:.75rem;padding:1rem}.volunteer-notice a{color:var(--primary);font-weight:750}.onboarding-steps{grid-template-columns:repeat(3,1fr);gap:.5rem;margin:1rem 0;padding:0;list-style:none;display:grid}.onboarding-steps li{border-bottom:.25rem solid var(--border);color:var(--blue-muted);text-align:center;padding:.6rem .25rem}.onboarding-steps .is-active{border-color:var(--primary);color:var(--blue-strong);font-weight:750}.onboarding-panel,.boolean-question{border:1px solid var(--border);border-radius:.85rem;margin:0;padding:1rem}.onboarding-panel>legend{padding:0 .4rem;font-size:1.2rem}.onboarding-actions{justify-content:space-between;gap:.75rem;display:flex}.competence-search{position:relative}.competence-suggestions{z-index:2;border:1px solid var(--border);background:#fff;border-radius:.6rem;margin:-.35rem 0 0;padding:.35rem;list-style:none;display:grid;box-shadow:0 .5rem 1rem #174a7e1f}.competence-suggestions button{width:100%;color:var(--blue-dark);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:.65rem}.selected-competences{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.selected-competences li{background:var(--primary-soft);color:var(--blue-dark);border-radius:2rem;align-items:center;gap:.5rem;padding:.35rem .5rem .35rem .8rem;display:flex}.selected-competences button{width:1.8rem;height:1.8rem;color:var(--primary);cursor:pointer;background:#fff;border:0;border-radius:50%;place-items:center;display:grid}.availability-list{gap:.75rem;display:grid}.availability-day{border-bottom:1px solid var(--border);padding-bottom:.75rem}.availability-toggle{color:var(--blue-dark);align-items:center;gap:.55rem;font-weight:750;display:flex}.availability-toggle input{width:1.25rem;height:1.25rem;accent-color:var(--primary)}.time-range{grid-template-columns:1fr auto 1fr auto;align-items:end;gap:.5rem;margin-top:.65rem;display:grid}.time-range label{color:var(--blue-muted);gap:.25rem;font-size:.82rem;font-weight:700;display:grid}.time-range button{color:#9f1c13;cursor:pointer;background:0 0;border:0;min-height:2.8rem}.add-range{margin-top:.65rem}.boolean-question{flex-wrap:wrap;gap:.75rem 1.25rem;display:flex}.boolean-question legend{color:var(--blue-dark);font-weight:750}.boolean-question label{color:var(--blue-dark)}.dashboard-profile{grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.5rem 0;display:grid}.dashboard-profile div{border:1px solid var(--border);background:#fffaff;border-radius:.75rem;padding:1rem}.dashboard-profile dt{color:var(--blue-muted);text-transform:uppercase;font-size:.8rem;font-weight:700}.dashboard-profile dd{color:var(--blue-dark);margin:.3rem 0 0;font-weight:750}.active-badge{color:#11633c;background:#d9f3e5;border-radius:2rem;padding:.25rem .65rem;display:inline-block}@media (max-width:48rem){.volunteer-shell{place-items:start stretch;padding:.5rem}.volunteer-card{border-radius:.85rem;padding:1rem}.onboarding-steps{grid-template-columns:1fr}.onboarding-steps li{text-align:left}.time-range{grid-template-columns:1fr 1fr}.time-range>span{display:none}.time-range button{grid-column:1/-1;justify-self:start}.onboarding-actions{flex-direction:column-reverse;align-items:stretch}.onboarding-actions button{width:100%}.dashboard-profile{grid-template-columns:1fr}}
