        .volunteer-layout { display: grid; grid-template-columns: 1fr 1.35fr; gap: clamp(1.5rem, 2vw, 2.5rem); align-items: start; }
        .volunteer-aside, .volunteer-panel { background: var(--surface); border: 1px solid var(--border-soft); border-radius: var(--radius-lg); box-shadow: var(--shadow-md); padding: clamp(1.5rem, 2vw, 2rem); }
        .volunteer-aside { background: linear-gradient(180deg, rgba(47, 140, 255, 0.08), rgba(255, 255, 255, 0.95)); }
        .volunteer-window { margin: 0.75rem 0 0; padding: 0.9rem 1rem; border-radius: var(--radius-sm); background: rgba(47, 140, 255, 0.12); border: 1px solid var(--border-soft); color: var(--text); }
        .volunteer-aside ul { margin: 1rem 0 0; padding-left: 1.1rem; color: var(--text-secondary); }
        .volunteer-aside li + li { margin-top: 0.6rem; }
        .volunteer-form, .field, .checkboxes { display: grid; }
        .volunteer-form { gap: 1.15rem; }
        .field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
        .field, .checkboxes { gap: 0.5rem; }
        .field > label, .group-label { font-weight: 700; color: var(--text); }
        .field input, .field select, .field textarea { width: 100%; padding: 0.8rem 0.9rem; border: 1px solid var(--border); border-radius: var(--radius-sm); background: #fff; font: inherit; color: var(--text); }
        .field textarea { min-height: 105px; resize: vertical; }
        .field input:focus, .field select:focus, .field textarea:focus { outline: 3px solid rgba(47, 140, 255, 0.18); border-color: var(--accent); }
        fieldset { margin: 0; padding: 0; border: 0; }
        fieldset legend { margin-bottom: 0.55rem; }
        .checkbox-item { display: grid; grid-template-columns: 1.1rem minmax(0, 1fr); align-items: flex-start; gap: 0.65rem; color: var(--text-secondary); }
        .checkbox-item input { width: 1.1rem; height: 1.1rem; margin-top: 0.2rem; }
        .checkbox-note { margin: 0; padding-left: 1.75rem; color: var(--text-secondary); font-size: var(--fs-xs); }
        .role-categories { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.8rem; }
        .role-category { padding: 1rem; border: 1px solid var(--border-soft); border-radius: var(--radius-sm); background: rgba(47, 140, 255, 0.04); }
        .role-category .checkbox-item { color: var(--text); font-weight: 700; }
        .status-message { min-height: 1.5rem; margin: 0.25rem 0 0; font-weight: 600; color: var(--accent); }
        .status-message.error { color: #b42318; }
        .status-message.success { color: #18763b; }
        @media (max-width: 900px) { .role-categories { grid-template-columns: 1fr; } }
        @media (max-width: 768px) { .volunteer-layout, .field-grid { grid-template-columns: 1fr; } }
