   /* ========整個授課地區區塊===== */
   .location-section {
       margin-top: 12px;
   }

   /* 標題列 */
   .location-header {
       display: flex;
       align-items: center;
       gap: 12px;
       margin-bottom: 8px;
   }

   /* 城市切換（文字型） */
   .location-city-switch button {
       background: none;
       border: none;
       padding: 0 6px;
       font-size: 14px;
       color: #888;
       cursor: pointer;
   }

   .location-city-switch button.active {
       color: #000;
       font-weight: 600;
       border-bottom: 1px solid #000;
   }

   /* 地點內容 */
   .location-panel {
       display: none;
   }

   .location-panel.active {
       display: block;
   }

   .location-item {
       padding: 10px 0;
       border-bottom: 1px dashed #e0e0e0;
   }

   .location-name {
       font-weight: 600;
   }

   .location-address {
       font-size: 14px;
       color: #555;
       margin: 2px 0;
   }

   .location-meta {
       display: flex;
       gap: 10px;
       font-size: 13px;
       color: #888;
   }

   .location-meta a {
       color: #007aff;
       text-decoration: none;
   }

   .location-city-switch {
       display: inline-flex;
       align-items: center;
       gap: 8px;
   }






   .location-city-switch button {
       position: relative;
       background: none;
       border: none;
       padding: 0 6px;
       font-size: 14px;
       color: #9aa0a6;
       cursor: pointer;
   }

   /* active 狀態 */
   .location-city-switch button.active {
       color: #111;
       font-weight: 600;
       padding-left: 16px;
       /* 留空間給倒三角 */
   }

   /* 左側紅色倒三角 */
   .location-city-switch button.active::before {
       content: "";
       position: absolute;
       left: 0;
       top: 50%;
       transform: translateY(-50%);
       width: 0;
       height: 0;
       border-left: 5px solid transparent;
       border-right: 5px solid transparent;
       border-top: 7px solid #a33636;
       /* 主站紅色 */
   }

   /* ========整個授課地區區塊===== */





   /* 整個遮罩 */
   #simple-map-mask {
       position: fixed;
       inset: 0;
       background: rgba(0, 0, 0, .6);
       z-index: 99999;
       display: flex;
       align-items: center;
       justify-content: center;
   }

   /* Modal 本體 */
   .student-map-modal {
       width: 90%;
       max-width: 1000px;
       height: 80vh;
       background: #fff;
       border-radius: 8px;
       overflow: hidden;
       display: flex;
       flex-direction: column;
   }

   /* Header */
   .student-map-header {
       display: flex;
       align-items: center;
       justify-content: space-between;
       padding: 12px 16px;
       border-bottom: 1px solid #e5e7eb;
       font-size: 16px;
       font-weight: 600;
   }

   /* 關閉按鈕 */
   .student-map-close {
       width: 32px;
       height: 32px;
       border: 1px solid #d1d5db;
       border-radius: 4px;
       background: #fff;
       font-size: 20px;
       line-height: 1;
       cursor: pointer;
   }

   /* 搜尋列 */
   .student-map-search {
       padding: 10px 16px;
       border-bottom: 1px solid #e5e7eb;
   }

   .student-map-search input {
       width: 95%;
       padding: 10px 12px;
       font-size: 14px;
       border: 1px solid #d1d5db;
       border-radius: 6px;
   }

   /* 地圖本體 */
   .student-map-body {
       flex: 1;
   }

   #student-map {
       width: 100%;
       height: 100%;
   }

   /* Google Autocomplete 下拉 */
   .pac-container {
       z-index: 100000 !important;
   }


   .swal-location-divider.divider-pill {
       position: relative;
       text-align: center;
       margin: 14px 0 10px;
   }

   .swal-location-divider.divider-pill::before {
       content: "";
       position: absolute;
       top: 50%;
       left: 0;
       right: 0;
       height: 1px;
       background: #e2e8f0;
       transform: translateY(-50%);
   }

   .swal-location-divider.divider-pill .divider-text {
       position: relative;
       display: inline-block;
       padding: 4px 12px;
       font-size: 12px;
       color: #4a5568;
       background: #ffffff;
       border: 1px solid #e2e8f0;
       border-radius: 999px;
       z-index: 1;
       letter-spacing: 0.5px;
   }