.basic-setting-title {
    padding: 5px;
    text-align: left;
    border-radius: 5px;
}
.basic-setting-item {
    display: none;
}
.basic-setting-item input[type="checkbox"]:checked + label {
    border-color: rgb(255, 80, 255);
}
.basic-setting-item input[type="checkbox"]:checked + label svg {
    stroke-width: 5;
    stroke:rgb(255, 80, 255);
}
/*  basic-setting-other-option 에 있는 border 제거  */
.basic-setting-other-option {
    border: none !important;
    box-shadow: none !important;
    outline: 1px solid #6d6d6d !important;
}
/*  placeholder 가 사라지면 outline 적용  */
.basic-setting-other-option:not(:placeholder-shown) {
    outline: 2px solid rgb(255, 80, 255) !important;
}

/* .alert_01{top:44.2%; } */
.popup_layer {display:none; border:1px solid #eee; padding:20px; position: absolute; top: 50%;left:50%; background:#333;border-radius: 10px;}

  /* Container */
  .contact-floating {
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 9999;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  }

  /* Bubble button (collapsed state) */
  .contact-toggle {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #4f46e5;
    color: #fff;
    padding: 10px 14px;
    border-radius: 999px;
    box-shadow: 0 8px 24px rgba(15,23,42,0.12);
    border: none;
    cursor: pointer;
    font-weight: 600;
  }

  .contact-toggle svg { width: 18px; height: 18px; }

  /* Panel (expanded) */
  .contact-panel {
    width: 320px;
    max-width: calc(100vw - 40px);
    background: #ffffff;
    color: #0f172a;
    border-radius: 14px;
    box-shadow: 0 14px 40px rgba(2,6,23,0.14);
    overflow: hidden;
    transform-origin: bottom right;
    margin-bottom: 8px;
    display: none;
  }

  .contact-panel.open { display: block; animation: panelIn .16s ease; }
  @keyframes panelIn { from { transform: translateY(8px) scale(.98); opacity: 0 } to { transform: translateY(0) scale(1); opacity: 1 } }

  .contact-header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:12px 14px;
    border-bottom:1px solid #eef2ff;
    background: linear-gradient(90deg, rgba(79,70,229,0.05), rgba(99,102,241,0.02));
  }
  .contact-title { font-weight:700; font-size:14px; }
  .contact-sub { font-size:12px; color:#64748b; }

  .contact-body { padding:12px 14px; }
  .contact-body label { display:block; font-size:12px; color:#475569; margin-top:8px; }
  .contact-body input[type="text"],
  .contact-body input[type="tel"],
  .contact-body input[type="email"],
  .contact-body textarea {
    width:100%;
    margin-top:6px;
    padding:9px 10px;
    border-radius:8px;
    border:1px solid #e6edf3;
    font-size:13px;
    box-sizing:border-box;
    background:#fff;
    color:#0f172a;
  }
  .contact-body textarea { resize:vertical; min-height:84px; }

  .contact-footer {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:10px 14px;
    border-top:1px solid #f1f5f9;
  }
  .contact-status { font-size:12px; color:#475569; min-height:18px; }
  .contact-send {
    background:#0f172a;
    color:#fff;
    padding:8px 12px;
    border-radius:8px;
    border:none;
    cursor:pointer;
    font-weight:600;
  }
  .contact-send[disabled]{opacity:.6; cursor:not-allowed;}

  /* small screens */
  @media (max-width:420px){
    .contact-panel{ width: calc(100vw - 28px); right:14px; left:14px; border-radius:12px; }
    .contact-floating { right: 14px; bottom: 14px; }
  }