.cp-container {
  margin-top: 20px;
}


/* Profile Card */
.cp-profile-card {
  background: #fff;
  border-radius: 5px;
  padding: 20px;
  border: 1px solid #ddd;
}

.cp-profile-pic {
  text-align: center;
  margin-bottom: 15px;
  position: relative;
}

.prifleImge {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  overflow: hidden;
  margin: auto;
  border: 1px solid #283b91;
}

.prifleImge img {
  width: 100%;
  height: auto;

}

.profileEdit {
  position: absolute;
  top: -10px;
  right: -10px;
  background-color: #283b91;
  color: #fff;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 16px;
}

.profileEdit i {
  color: #fff;

}

.cp-profile-name {
  margin: 10px 0 5px;
  font-size: 20px;
}

.cp-profile-location {
  font-size: 14px;
  color: #666;
}


.popupMain {
  border-radius: 20px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 50%;
  background-color: #fff;
  overflow: hidden;
}

.poupupHeader {
  position: relative;
  width: 100%;
  padding: 15px 10px;
  background-color: #283b91;
  text-align: center;
}

.poupupHeader h2 {
  font-size: 20px;
  text-align: center;
  line-height: 100%;
  color: #fff;
  width: 100%;
  margin: 0px;
  display: block;
}

.poupupHeader i {
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
  color: #fff;
  cursor: pointer;
}

/* Connects */
.prfileDetails {
  text-align: center;
  width: 100%;
}

.prfileDetails h2 {
  font-weight: bold;
  margin-bottom: 5px;
  text-align: center;
  width: 100%;
  display: block;
}

/* Right Section */
.cp-profile-info {
  background: #d6f2fd;
  padding: 20px;
  border-radius: 5px;
  margin-bottom: 20px;
  border: 1px solid #268bb3;
}

.cp-hourly {
  float: right;
  color: #2a9d8f;
  font-weight: bold;
}

.cp-portfolio {
  background: #fff;
  padding: 20px;
  border-radius: 5px;
  border: 1px solid #ddd;
  position: relative;
}


.cp-profile-sections {
  border-radius: 5px;
  padding: 20px;
  background: #fff;
  border: 1px solid #ddd;
  margin-top: 20px;
}

.cp-section {
  padding: 10px 0;
  border-bottom: 1px solid #ddd;
}

.cp-section:last-child {
  border-bottom: none;
}

.flexViewicon {
  font-size: 16px;
  margin: 0 0 5px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.cp-section p {
  margin: 3px 0;
  font-size: 14px;
}

.cp-section small {
  color: #666;
  font-size: 12px;
}

/* Icons */
.cp-icon {
  margin-left: 8px;
  color: #283b91;
  cursor: pointer;
  font-size: 14px;
}

.cp-icon:hover {
  color: #0c1c61;
}

.cp-section a {
  color: #283b91;
  text-decoration: none;
}

.cp-section a:hover {
  text-decoration: underline;
}


.cp-work-history,
.cp-skills,
.cp-project-catalog {
  margin-bottom: 30px;
}

h2 {
  font-size: 1.5em;
  color: #333;
  margin-bottom: 10px;
}

.cp-work-history p {
  color: #666;
}

.cp-skills .fa-pen {
  color: #283b91;
  margin-left: 5px;
}

.cp-skill-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.cp-skill {
  background-color: #f1f1f1;
  padding: 5px 10px;
  border-radius: 15px;
  color: #333;
  font-size: 0.9em;
}

.cp-project-catalog p {
  color: #666;
  line-height: 1.5;
}

.cp-manage-btn {
  background-color: #283b91;
  color: #fff;
  border: none;
  padding: 10px 20px;
  border-radius: 5px;
  cursor: pointer;
  font-size: 1em;
}

    .cp-manage-btn:hover {
        background-color: #3bb2e4;
    }

.cp-container {
  margin: 20px auto;
  background-color: #fff;
  padding: 20px;
  border: 1px solid #ddd;
  border-radius: 5px;
}

.cp-certifications,
.cp-employment-history,
.cp-other-experiences {
  margin-bottom: 30px;
}

h2 {
  font-size: 1.5em;
  color: #333;
  margin-bottom: 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.cp-add-btn {
  font-size: 1.2em;
  color: #283b91;
  cursor: pointer;
}

.cp-cert-content,
.cp-exp-content {
  padding: 15px;
  border: 1px solid #ddd;
  border-radius: 5px;
  display: flex;
  align-items: center;
  gap: 15px;
  position: relative;
}

.certMain {
  position: relative;
  width: 100%;
}

.cp-trophy-icon,
.cp-folder-icon {
  width: 50px;
  height: 50px;
}

.cp-cert-text,
.cp-exp-text {
  color: #666;
  margin: 0;
  flex-grow: 1;
}

.cp-cert-action,
.cp-exp-action {
  color: #283b91;
  margin: 0;
}

.cp-add-action,
.cp-import-action {
  cursor: pointer;
}

.cp-employment-history .cp-job {
  padding: 15px;
  border: 1px solid #ddd;
  border-radius: 5px;
  margin-bottom: 15px;
}

.cp-job-title {
  font-size: 1.2em;
  color: #333;
  margin: 0 0 5px 0;
}

.cp-job-date {
  color: #666;
  margin: 0 0 10px 0;
}

.cp-job-desc {
  color: #666;
  margin: 0;
}

.cp-show-more {
  color: #283b91;
  cursor: pointer;
  margin-top: 10px;
}

.popupInvoc {
  background-color: rgba(0, 0, 0, 0.7);
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  display: none;
}

.popupFooter {
  padding: 20px;
  padding-top: 0px;
}

.popBody {
  max-height: 550px;
  overflow-y: auto;
  padding: 20px;
}

.form-container {
  margin: auto;
  background: #fff;
}

.form-title {
  font-weight: bold;
  margin-bottom: 10px;
}

.form-subtitle {
  color: #666;
  margin-bottom: 20px;
}

.form-check {
  margin-bottom: 10px;
}

.button-group {
  text-align: right;
  margin-top: 20px;
}

.bluebutton {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  padding: 6px 20px;
  border-radius: 100px;
  gap: 8px;
  font-size: 16px;
  font-weight: 400;
  transition: var(--transition);
  color: #fff;
  background-color: #283b91;
  border: none;
  transition: 0.5s ease-in-out;
  border: 1px solid #283b91;
}

.bluebtnHollow {
  border: 1px solid #283b91;
  border-radius: 50px;
  color: #283b91;
  padding: 6px 20px;
  transition: 0.5s ease-in-out;
  background-color: #fff;
}

.bluebtnHollow:hover {
  background-color: #283b91;
  color: #fff;
}

.bluebutton:hover {
  background-color: #fff;
  color: #283b91;
  border: 1px solid #283b91;
}

.dflex {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}

select {
  padding: 10px !important;
}

.cpl-container {
  width: 100%;
  position: relative;
}

.cpl-label {
  margin-bottom: 6px;
  display: block;
  font-weight: bold;
}

.cpl-selected {
  border: 1px solid #ccc;
  padding: 10px;
  border-radius: 4px;
  cursor: pointer;
  background: #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.cpl-selected:after {
  content: '▼';
  font-size: 12px;
  color: #666;
  margin-left: 10px;
}

.cpl-options {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  border: 1px solid #ddd;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  margin-top: 2px;
  display: none;
  z-index: 10;
}

.cpl-option {
  padding: 10px;
  cursor: pointer;
  border-bottom: 1px solid #f2f2f2;
}

.cpl-option:last-child {
  border-bottom: none;
}

.cpl-option:hover {
  background: #f9f9f9;
}

.cpl-option.active {
  background: #e6f7ff;
}

.cpl-description {
  font-size: 13px;
  color: #666;
  margin-top: 2px;
}

.flxend {
  align-items: flex-end;
}

.ht100 {
  height: 100%;
}

.bgGray {
  background-color: #e9e9e9;
}

.border50 {
  border-radius: 50px;
}

.pding {
  padding: 5px 10px;
}

.cpe {
  width: 100%;
  margin: 0;
  padding: 0;
  font-size: 16px;
}

.cpe-label {
  display: block;
  margin-bottom: 4px;
  font-weight: 500;
  color: #333;
}

.cpe-input {
  width: 100%;
  border: 1px solid #ccc;
  border-radius: 6px;
  padding: 10px;
  font-size: 16px;
  box-sizing: border-box;
  background: #fff;
}

.cpe-input:focus {
  border-color: #007bff;
  outline: none;
  box-shadow: 0 0 3px rgba(0, 123, 255, 0.3);
}

textarea.cpe-input {
  resize: none;
}

.cpp.container-fluid {
  /* container-fluid already ensures 100% width. */
  /* Explicitly remove padding/margin as per instructions */
  padding: 0 !important;
  margin: 0 !important;
}

/* Typography and Headings */
.cpp h1 {
  font-size: 28px;
  /* Slightly larger for the main title */
  font-weight: 500;
  margin-top: 30px;
  margin-bottom: 5px;
}

.cpp p {
  font-size: 16px;
  color: #555;
  margin-bottom: 30px;
}

/* Form Group Layout */
.cpp-form-row {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.cpp-form-group {
  margin-bottom: 20px;
}

.cpp-label {
  display: block;
  font-weight: 600;
  font-size: 16px;
  margin-bottom: 5px;
}

.cpp-optional {
  font-weight: normal;
  color: #555;
}

/* Input Fields (Text, Textarea) */
.cpp-input,
.cpp-textarea {
  width: 100%;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 16px;
  /* Required font size */
  box-sizing: border-box;
  /* Includes padding and border in the element's total width and height */
  margin-bottom: 3px;
}

.cpp-textarea {
  resize: vertical;
}

.upload-container {
  width: 100%;
}

.drop-area {
  width: 100%;
  height: 200px;
  border: 2px dashed #007bff;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #555;
  cursor: pointer;
  transition: 0.3s;
  background: #f9f9f9;
}

.drop-area:hover {
  background: #f1f1f1;
}

.drop-area.dragover {
  border-color: #28a745;
  background: #eaffea;
}

.browse-btn {
  color: #007bff;
  font-weight: bold;
  cursor: pointer;
}

.file-list {
  margin-top: 10px;
  font-size: 16px;
  color: #333;
}
.onhover {
    display: none;
    position: absolute;
    top: 0px;
    right: 20px;
    height: 100%;
    padding: 10px 20px;
}
.projectMain {
  width: 100%;
  display: block;
  border: 1px solid #efefef;
  border-radius: 10px;
}



.forHover:hover .onhover {
  display: flex;
}

.projectImge {
  width: 100%;
  display: block;
  border-radius: 10px;
}

.projectImge img {
  width: 100%;
  display: block;
  border-radius: 10px;
}

.projectDisc {
  width: 100%;
  display: block;
  padding: 10px;
}

.projectDisc h2 {
  font-size: 18px;
  width: 100%;
  margin-top: 10px;
  margin-bottom: 2px;
}

.cpw-form-group {
  margin-bottom: 1.5rem;
}

.cpw-input {
  border-radius: 0.5rem;
  padding: 0.75rem 1rem;
  border: 1px solid #ced4da;
}

.cpw-label {
  font-weight: 500;
  margin-bottom: 0.5rem;
}

.cpw-checkbox {
  margin-top: 0.5rem;
}

.cpw-description {
  height: 120px;
}