#outer-div .form #content {
  /* because btn-2 changes when adding new sections */ }
  #outer-div .form #content input[type="email"],
  #outer-div .form #content input[type="number"],
  #outer-div .form #content input[type="search"],
  #outer-div .form #content input[type="text"],
  #outer-div .form #content input[type="tel"],
  #outer-div .form #content input[type="url"],
  #outer-div .form #content input[type="password"],
  #outer-div .form #content input[type="date"],
  #outer-div .form #content textarea,
  #outer-div .form #content select {
    width: 100%;
    height: 50px;
    padding: 6px 10px;
    background-color: #fff;
    border: 2px solid #d9d9d9;
    border-radius: 4px;
    box-sizing: border-box; }
  #outer-div .form #content legend {
    width: 100%; }
  #outer-div .form #content .radio-btn {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 10px;
    font-weight: 500;
    cursor: pointer;
    user-select: none; }
  #outer-div .form #content .radio-btn input {
    position: absolute;
    opacity: 0;
    cursor: pointer; }
  #outer-div .form #content .radio-btn .control {
    position: absolute;
    top: 50%;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: #e7e7e7;
    border-radius: 50%;
    transform: translateY(-50%); }
  #outer-div .form #content .radio-btn:hover input ~ .control {
    background-color: #646464; }
  #outer-div .form #content .radio-btn input:checked ~ .control {
    background-color: #444; }
  #outer-div .form #content .control:after {
    content: "";
    position: absolute;
    display: none; }
  #outer-div .form #content .radio-btn input:checked ~ .control:after {
    display: block; }
  #outer-div .form #content .radio-btn .control:after {
    top: 50%;
    left: 50%;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #fff;
    transform: translate(-50%, -50%); }
  #outer-div .form #content .radio-btn.disabled:hover .control {
    background-color: #e7e7e7;
    cursor: not-allowed; }
  #outer-div .form #content .checkbox {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 1.5rem;
    font-weight: 500;
    cursor: pointer;
    user-select: none; }
  #outer-div .form #content .checkbox input {
    position: absolute;
    opacity: 0;
    cursor: pointer; }
  #outer-div .form #content .checkbox .control {
    position: absolute;
    top: 50%;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: #e7e7e7;
    border-radius: 4px;
    transform: translateY(-50%); }
  #outer-div .form #content .checkbox:hover input ~ .control {
    background-color: #646464; }
  #outer-div .form #content .checkbox input:checked ~ .control {
    background-color: #444; }
  #outer-div .form #content .checkbox input:checked ~ .control:after {
    display: block; }
  #outer-div .form #content .checkbox .control:after {
    font-family: "sgi_icon_font";
    content: "\e910";
    font-size: 1.2rem;
    color: #fff;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
  #outer-div .form #content .checkbox.disabled:hover .control {
    background-color: #e7e7e7;
    cursor: not-allowed; }
  #outer-div .form #content .segmented-button input[type="radio"] {
    position: absolute;
    opacity: 0;
    cursor: pointer; }
  #outer-div .form #content .segmented-button label {
    display: inline-block;
    margin-right: -6px;
    border: 2px solid #d9d9d9;
    border-radius: 0;
    color: #444;
    padding: 14px 16px;
    font-size: 1.2rem;
    font-weight: 500;
    vertical-align: middle;
    cursor: pointer;
    user-select: none;
    transition: all 0.2s ease 0s; }
  #outer-div .form #content .segmented-button label:first-of-type {
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px; }
  #outer-div .form #content .segmented-button label:last-of-type {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px; }
  #outer-div .form #content .segmented-button label:hover {
    color: #fff;
    background-color: #646464;
    border-color: transparent; }
  #outer-div .form #content .segmented-button label.active {
    color: #fff;
    background-color: #444;
    border-color: transparent; }
  #outer-div .form #content .switch-section {
    display: none; }
  #outer-div .form #content .switch-section.active {
    display: block; }
  #outer-div .form #content .grid {
    display: inline-grid;
    grid-template-columns: auto auto auto auto; }
  #outer-div .form #content .grid .flex-item {
    margin: 0 10px; }
  #outer-div .form #content .helper {
    font-size: 14px;
    font-weight: 500; }
  #outer-div .form #content form .select2-container {
    width: 100% !important; }
  #outer-div .form #content .alert {
    margin: 0 0 2rem !important;
    padding: 20px; }
  #outer-div .form #content .add-section {
    padding: 20px;
    margin-bottom: 2rem;
    background-color: #f9f9f9; }
  #outer-div .form #content button,
  #outer-div .form #content .btn {
    border-width: 2px !important; }
  #outer-div .form #content form button,
  #outer-div .form #content form .btn {
    color: #646464 !important;
    background-color: transparent !important;
    border-color: #d9d9d9 !important; }
  #outer-div .form #content form button:hover,
  #outer-div .form #content form .btn:hover {
    color: #fff !important;
    background-color: #444 !important;
    border-color: #444 !important; }
  #outer-div .form #content form button:active,
  #outer-div .form #content form .btn:active {
    color: #fff !important;
    background-color: #000 !important;
    border-color: #000 !important; }
  #outer-div .form #content #submit-loader {
    display: none; }
  #outer-div .form #content .form-field-error {
    margin-top: -1.5rem;
    margin-bottom: 1rem;
    color: #cc1b1b; }
  #outer-div .form #content .form-field-error .error-icon {
    vertical-align: text-top;
    font-size: 20px; }
  #outer-div .form #content .row {
    margin: 0; }
  #outer-div .form #content button,
  #outer-div .form #content input,
  #outer-div .form #content select,
  #outer-div .form #content textarea {
    margin-bottom: 1.5rem; }

#outer-div .form .modal {
  background-color: rgba(0, 0, 0, 0.24);
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100dvh;
  z-index: 1400;
  display: none;
  align-items: start;
  justify-content: center;
  cursor: pointer; }
  #outer-div .form .modal .modal-wrapper {
    border-radius: 4px;
    margin: 25vh auto auto auto;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
    cursor: default; }
  #outer-div .form .modal .modal-header {
    border: none; }
  #outer-div .form .modal .modal-content {
    min-height: 340px;
    padding: 1.5rem;
    overflow: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px; }
  #outer-div .form .modal .modal-footer {
    border: none; }
  #outer-div .form .modal .close {
    margin-left: auto;
    padding: 0; }
  #outer-div .form .modal .btn-group {
    /*display: block;*/ }
  @media (max-width: 767px) {
    #outer-div .form .modal .modal-wrapper {
      width: 90%; }
    #outer-div .form .modal .modal-content {
      max-height: calc(100vh - 54px);
      /* add 2px on top & bottom*/ }
    #outer-div .form .modal .modal-header {
      text-align: center; }
    #outer-div .form .modal .btn-group {
      text-align: center; } }
  @media (max-width: 435px) {
    #outer-div .form .modal .modal-wrapper {
      width: 100%; }
    #outer-div .form .modal .btn-group li {
      width: 100%; }
    #outer-div .form .modal button,
    #outer-div .form .modal .btn {
      margin-bottom: 1rem; } }