﻿/* 
============================================================
BOTRY-V2- 完全獨立命名空間 - 高度完全不限制版
修正：移除橙色背景覆蓋、移除右側捲軸
============================================================
*/

/* ----- 全域重置與隱藏水平捲軸 ----- */
html, body, .botry-v2-root {
    max-width: 100%;
    overflow-x: hidden !important;
    width: 100%;
    margin: 0;
    padding: 0;
}

.botry-v2-root {
    font-family: 'Microsoft JhengHei', '微軟正黑體', 'Segoe UI', Arial, sans-serif;
    line-height: 1.6;
    background-color: #f8f9fa;
    color: #555;
}

.botry-v2-root, .botry-v2-root * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.botry-v2-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

/* ===== 導航欄 ===== */
.botry-v2-header {
    background-color: #2c3e50;
    box-shadow: 0 2px 15px rgba(0,0,0,0.1);
    position: sticky;
    top: 0;
    z-index: 9999;
    width: 100%;
}

.botry-v2-header::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, rgba(231,76,60,0.8) 0%, rgba(231,76,60,0.6) 25%, rgba(231,76,60,0.4) 50%, rgba(231,76,60,0.2) 75%, transparent 100%);
    z-index: 1;
}

.botry-v2-navbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    width: 100%;
}

/* Logo */
.botry-v2-logo {
    color: white;
    font-size: 20px;
    font-weight: bold;
    display: flex;
    align-items: center;
    white-space: nowrap;
    margin-right: auto;
}

.botry-v2-logo-icon {
    margin-right: 6px;
    font-size: 22px;
    flex-shrink: 0;
}

.botry-v2-logo span { color: #e74c3c; }

.botry-v2-logo-text-light {
    padding-left: 4px;
    color: white;
    font-weight: 500;
}

/* 桌面導航 */
.botry-v2-nav-menu {
    display: flex;
    list-style: none;
    margin: 0 0 0 auto;
    padding: 0;
    flex-wrap: wrap;
}

.botry-v2-nav-item { position: relative; }

.botry-v2-nav-link {
    color: white;
    text-decoration: none;
    padding: 12px 18px;
    display: block;
    transition: all 0.3s ease;
    border-radius: 4px;
    font-weight: 500;
    white-space: nowrap;
}

.botry-v2-nav-link:hover { background-color: #e74c3c; }

/* PC下拉選單 */
.botry-v2-dropdown-menu {
    position: absolute;
    background-color: white;
    min-width: 240px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
    border-radius: 6px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(12px);
    transition: all 0.3s ease;
    list-style: none;
    z-index: 2147483647 !important;
    padding: 10px 0;
    top: 100%;
    left: 0;
}

.botry-v2-dropdown-menu li {
    border-bottom: 1px solid #f0f0f0;
}

.botry-v2-dropdown-menu li:last-child { border-bottom: none; }

.botry-v2-dropdown-menu a {
    color: #333;
    padding: 12px 20px;
    display: block;
    text-decoration: none;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.botry-v2-dropdown-menu a:hover {
    background-color: #f8f9fa;
    color: #e74c3c;
    padding-left: 25px;
}

.botry-v2-nav-item:hover .botry-v2-dropdown-menu {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
}

/* ===== 行動版漢堡按鈕 ===== */



/* 
======================================

 三槓選單圖示位置調整說明

 主要調整項目：
                                                         
1. 調整右邊距（與螢幕右邊的距離）margin-right: 15px;  ← 改成你要的數值，例如 20px, 10px

2. 調整左邊距（與 Logo 的距離）margin-left: auto;   ← auto = 自動靠右
   margin-left: 20px;   ← 或改為具體數值（固定左邊距）

3. 調整按鈕大小                                                     
  width: 44px;   ← 按鈕寬度
   height: 44px;  ← 按鈕高度

 範例：讓三槓圖示更靠右
  margin-right: 5px;  (從 15px 改成 5px，更靠近右邊)

 範例：讓按鈕更大                                                   
  width: 50px;   (從 44px 改成 50px)
  height: 50px;

======================================
*/





.botry-v2-mobile-toggle {
    display: none;
    background: none;
    border: none;
    color: white;
    font-size: 24px;
    cursor: pointer;
    padding: 0;
    z-index: 10000;
    width: 44px;           /* 按鈕寬度 - 可調整 */
    height: 44px;          /* 按鈕高度 - 可調整 */
    position: relative;
    margin-left: auto;     /* 左邊距 - auto=靠右，可改為具體數值 */
    margin-right: 25px;    /* 右邊距 - 與螢幕右邊的距離，可調整 */
    flex-shrink: 0;
}




/* 
======================================

 三條線的尺寸和位置調整

 調整項目：
                                                         
 4. 調整三條線的整體尺寸                                    
    width: 24px;   ← 三條線的寬度，可調整
    height: 18px;  ← 三條線整體高度，可調整
                        
 範例：讓三條線更寬 
    width: 28px;   (從 24px 改成 28px) 
    height: 20px;  (從 18px 改成 20px)

======================================
*/


.botry-v2-hamburger {
    position: absolute;
    top: 50%;              /* 垂直置中 - 通常不需調整 */
    left: 50%;             /* 水平置中 - 通常不需調整 */
    transform: translate(-50%, -50%);
    width: 24px;           /* 三條線的寬度 - 可調整 */
    height: 18px;          /* 三條線整體高度 - 可調整 */
}

.botry-v2-hamburger span {
    display: block;
    position: absolute;
    height: 2px;           /* 每條線的粗細 - 可調整 */
    width: 100%;
    background: white;
    border-radius: 2px;
    left: 0;
    transition: all 0.3s ease;
}




/* 
======================================

三條線之間的間距調整

5. 調整三條線之間的間距
第一條線: top: 0;     ← 固定在最上方，通常不需調整

第二條線: top: 8px;   ← 中間線位置，可調整間距

第三條線: top: 16px;  ← 底部線位置，可調整間距

範例：讓三條線間距更寬

第二條線: top: 10px;  (從 8px 改成 10px)

第三條線: top: 20px;  (從 16px 改成 20px)

注意：如果調整間距，記得同步調整 .botry-v2-hamburger 的 height

======================================
*/




.botry-v2-hamburger span:nth-child(1) { top: 0; }      /* 第一條線位置 */
.botry-v2-hamburger span:nth-child(2) { top: 8px; }    /* 第二條線位置 - 可調整間距 */
.botry-v2-hamburger span:nth-child(3) { top: 16px; }   /* 第三條線位置 - 可調整間距 */

/* 點擊後的動畫效果 - 通常不需調整 */
.botry-v2-mobile-toggle.active .botry-v2-hamburger span:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
}

.botry-v2-mobile-toggle.active .botry-v2-hamburger span:nth-child(2) { opacity: 0; }

.botry-v2-mobile-toggle.active .botry-v2-hamburger span:nth-child(3) {
    transform: rotate(-45deg) translate(5px, -5px);
}

/* ===== 行動版選單容器 - 完全透明背景版 ===== */
.botry-v2-mobile-menu-container {
    display: none;
    position: fixed !important;
    top: 60px;
    left: 0;
    width: 100%;
    height: calc(100vh - 60px - 60px);
    max-height: none !important;
    overflow-y: auto;
    overflow-x: hidden;
    background-color: transparent !important; /* 完全透明 */
    z-index: 10000;
    transform: translateY(-10px);
    opacity: 0;
    transition: all 0.3s ease;
    /* 隱藏捲軸 */
    -ms-overflow-style: none;
    scrollbar-width: none;
    pointer-events: none;
}

.botry-v2-mobile-menu-container::-webkit-scrollbar {
    display: none;
}

.botry-v2-mobile-menu-container.active {
    display: block !important;
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
}

.botry-v2-mobile-menu {
    background-color: transparent !important; /* 移除橙色背景 */
    width: 100%;
    min-height: auto;
    padding-bottom: 20px;
}

.botry-v2-mobile-menu ul {
    list-style: none;
    width: 100%;
    padding: 0;
    margin: 0;
}

/* 選單項目樣式 */
.botry-v2-mobile-menu ul li {
    width: 100%;
    position: relative;
}

/* 選單背景色 - 只有選單項目本身有背景 */
.botry-v2-mobile-menu ul li:not(.botry-v2-has-submenu) { 
    background-color: #6A0DAD;
    border-bottom: 1px solid #5a0c95;
}

.botry-v2-mobile-menu ul li.botry-v2-has-submenu { 
    background-color: #8B2DC9;
    border-bottom: 1px solid #7a25b0;
}

/* 選單連結共用樣式 */
.botry-v2-mobile-menu ul li a,
.botry-v2-menu-link {
    color: #fff;
    display: block;
    font-size: 18px;
    padding: 15px 20px;
    text-decoration: none;
    font-weight: 500;
    white-space: normal;
    word-break: break-word;
    width: 100%;
}

.botry-v2-mobile-menu ul li a:hover,
.botry-v2-menu-link:hover {
    background-color: #fab802;
    padding-left: 25px;
}

/* 群組選單布局 */
.botry-v2-menu-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #8B2DC9;
    width: 100%;
    position: relative;
}

.botry-v2-menu-link {
    flex: 1;
    padding: 15px 20px;
}

/* ===== 新增：群組選單前的圖示樣式 ===== */
.botry-v2-group-menu-icon {
    width: 40px;
    height: 30px;
    margin-left: 10px;
    margin-right: 0px; /* 從 5px 改為 0px，縮小間距 */
    flex-shrink: 0;
    object-fit: contain;
    vertical-align: middle;
    border-radius: 8px; /* 加入圓角矩形效果 */
    background-color: rgba(255, 255, 255, 0.15); /* 可選：加入淡背景增強圓角效果 */
    padding: 2px; /* 可選：讓圖片與圓角邊框有點間距 */
}

/* ===== 圖示樣式（＋號） ===== */
.botry-v2-menu-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    margin-right: 15px;
    background-color: rgba(255, 255, 255, 0.25);
    border: 2px solid white;
    border-radius: 8px;
    color: white;
    font-size: 24px;
    font-weight: bold;
    cursor: pointer;
    transition: background-color 0.2s ease;
    flex-shrink: 0;
    box-shadow: 0 2px 5px rgba(0,0,0,0.3);
    line-height: 1;
    transform: none !important;
}

.botry-v2-menu-icon:hover {
    background-color: rgba(255, 255, 255, 0.4);
    border-color: white;
}

/* 非群組選單隱藏圖示 */
.botry-v2-mobile-menu ul li:not(.botry-v2-has-submenu) .botry-v2-menu-icon {
    display: none !important;
}

/* ===== 子選單 ===== */
.botry-v2-submenu {
    display: none;
    background-color: #B9863A !important;
    width: 100%;
}

.botry-v2-submenu.active {
    display: block;
}

/* 子選單項目 - 使用更具體的選擇器 */
.botry-v2-mobile-menu ul li.botry-v2-has-submenu .botry-v2-submenu li,
.botry-v2-submenu li {
    background-color: #B9863A !important;
    border: none !important;
    border-top: none !important;
    width: 100%;
    border-bottom: 1px solid #ffffff !important; /* 白色分隔線 */
}

.botry-v2-mobile-menu ul li.botry-v2-has-submenu .botry-v2-submenu li:last-child,
.botry-v2-submenu li:last-child {
    border-bottom: none !important; /* 最後一項不顯示底線 */
}

/* 子選單連結 */
.botry-v2-mobile-menu ul li.botry-v2-has-submenu .botry-v2-submenu li a,
.botry-v2-submenu li a {
    padding: 12px 20px 12px 40px !important;
    font-size: 16px !important;
    color: #fff !important;
    background-color: transparent !important; /* 確保連結本身不覆蓋背景色 */
    display: flex !important;
    align-items: center !important;
}

.botry-v2-mobile-menu ul li.botry-v2-has-submenu .botry-v2-submenu li a:hover,
.botry-v2-submenu li a:hover {
    background-color: #D4A253 !important;
    padding-left: 45px !important;
}

/* ===== 子選單項目圖示 ===== */
.botry-v2-submenu-icon {
    width: 30px;
    height: 25px;
    margin-right: 11px; /* 從 8px 增加到 11px，加大 3px */
    flex-shrink: 0;
    object-fit: contain;
    vertical-align: middle;
    border-radius: 4px; /* 圓角效果 */
}

/* ===== 子選單內所有圖片的通用樣式 ===== */
.botry-v2-submenu li a img {
    margin-right: 11px !important; /* 確保所有子選單圖片都有相同間距 */
    flex-shrink: 0;
    object-fit: contain;
    vertical-align: middle;
    border-radius: 4px; /* 圓角效果 */
}

/* ===== 大圖橫幅 ===== */
.botry-v2-header-banner {
    width: 100%;
    overflow: hidden;
}

.botry-v2-header-banner a {
    display: block;
    width: 100%;
}

.botry-v2-header-banner img {
    width: 100%;
    height: auto;
    display: block;
}

.botry-v2-desktop-img { display: block; }
.botry-v2-tablet-img, .botry-v2-mobile-img { display: none !important; }

@media (max-width: 992px) and (min-width: 768px) {
    .botry-v2-desktop-img { display: none !important; }
    .botry-v2-tablet-img { display: block !important; }
}

@media (max-width: 767px) {
    .botry-v2-desktop-img, .botry-v2-tablet-img { display: none !important; }
    .botry-v2-mobile-img { display: block !important; }
}

/* ===== 頁尾工具列 ===== */
.botry-v2-footer-toolbar {
    background: linear-gradient(135deg, #1a2a3a 0%, #2c3e50 100%);
    color: white;
    padding: 6px 0;
    border-top: 2px solid rgba(231, 76, 60, 0.3);
    width: 100%;
}

.botry-v2-footer-toolbar-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

.botry-v2-footer-toolbar-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    min-height: 30px;
}

.botry-v2-footer-info-left,
.botry-v2-footer-info-right {
    display: flex;
    align-items: center;
    gap: 15px;
    color: #bdc3c7;
    font-size: 0.9rem;
    flex-wrap: wrap;
}

.botry-v2-footer-info-left { justify-content: flex-start; }
.botry-v2-footer-info-right { justify-content: flex-end; }

.botry-v2-footer-info-left a,
.botry-v2-footer-info-right a {
    color: #bdc3c7;
    text-decoration: none;
    white-space: nowrap;
}

.botry-v2-footer-info-left a:hover,
.botry-v2-footer-info-right a:hover { color: #e74c3c; }

.botry-v2-footer-separator {
    color: #7f8c8d;
    margin: 0 5px;
    font-size: 0.8rem;
}

/* ===== 行動版固定工具列 ===== */
.botry-v2-mobile-toolbar {
    display: none;
    background: linear-gradient(135deg, #2c3e50 0%, #34495e 100%);
    padding: 6px 0;
    /* 上方立體框線效果 */
    border-top: 3px solid rgba(231, 76, 60, 0.4); /* 主色調邊框 */
    box-shadow: 
        inset 0 2px 4px rgba(255, 255, 255, 0.1),  /* 內部上方高光 */
        inset 0 1px 1px rgba(255, 255, 255, 0.2),  /* 內部邊緣亮線 */
        0 -2px 6px rgba(0, 0, 0, 0.15);            /* 外部上方陰影 */
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 10001;
    text-align: center;
    height: 60px;
}

.botry-v2-mobile-toolbar-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 10px;
    height: 100%;
}

.botry-v2-mobile-toolbar-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 5px;
    width: 100%;
    height: 100%;
    align-items: center;
}

.botry-v2-mobile-tool-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    color: white;
    padding: 4px 2px;
}

.botry-v2-mobile-tool-icon {
    width: 30px;
    height: 30px;
    margin-bottom: 2px;
}

.botry-v2-mobile-tool-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.botry-v2-mobile-tool-label {
    font-size: 0.6rem;
    text-align: center;
}

/* ===== 內容區域 ===== */

.botry-v2-content-text { 
max-width: 1200px; 
margin: 0 auto; 
padding: 40px 25px; 
background-color: #fff; 
} 

.botry-v2-content-title {
    color: #800080;
    font-size: 2.2rem;
    font-weight: 800;
    line-height: 1.2;
    text-align: center;
    margin: 30px 0 20px;
}

.botry-v2-content-body {
    font-size: 1rem;
    color: #555;
}

/* ===== 行動版響應式 ===== */
@media (max-width: 992px) {
    .botry-v2-nav-menu { display: none !important; }
    .botry-v2-mobile-toggle { display: block !important; }
    .botry-v2-mobile-toolbar { display: block !important; }
    .botry-v2-footer-toolbar { display: none !important; }
    
    .botry-v2-logo {
        font-size: 18px;
        max-width: calc(100% - 60px);
        overflow: hidden;
        text-overflow: ellipsis;
    }
    
    .botry-v2-logo-text-light { font-size: 18px; }
    .botry-v2-content-text { padding: 30px 20px; }
    
    /* 行動版選單完全透明 */
    .botry-v2-mobile-menu-container {
        position: fixed !important;
        top: 60px;
        left: 0;
        width: 100%;
        height: calc(100vh - 60px - 60px) !important;
        overflow-y: auto;
        overflow-x: hidden;
        background-color: transparent !important;
        -webkit-overflow-scrolling: touch;
    }
    
    .botry-v2-mobile-menu {
        min-height: auto !important;
        height: auto !important;
        background-color: transparent !important;
    }
    
    /* 選單開啟時不鎖定背景 - 讓背景內容可見 */
    body.botry-v2-menu-open {
        /* 移除 overflow: hidden，讓背景可見 */
    }
}

@media (max-width: 576px) {
    .botry-v2-logo { font-size: 16px; }
    .botry-v2-logo-icon { font-size: 18px; }
    .botry-v2-logo-text-light { font-size: 16px; }
    .botry-v2-content-text { padding: 20px 15px; }
}

/* ===== 列印樣式 ===== */
@media print {
    .botry-v2-header,
    .botry-v2-mobile-toolbar,
    .botry-v2-footer-toolbar {
        display: none !important;
    }
}




/* ===== Top 樣式 ===== */

.back-to-top {
    position: fixed;
    bottom: 120px;
    right: 30px;
    width: 50px;
    height: 50px;
    border-radius: 8px;
    opacity: 0;
    visibility: hidden;
    transition: 0.4s;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 8px 20px rgba(0,0,0,0.2);
    z-index: 1000;
    
    /* 當前使用的顏色 - 橙色 */
    background: linear-gradient(145deg, rgba(156, 39, 176, 0.85), rgba(123, 31, 162, 0.95));
}

.back-to-top.show { 
    opacity: 1; 
    visibility: visible; 
}

.back-to-top:hover { 
    transform: scale(1.05);
    /* 當前使用的 hover 顏色 - 橙色 */
    background: linear-gradient(145deg, rgba(156, 39, 176, 0.95), rgba(106, 27, 154, 1));
}



    /* 箭頭 (可調整大小) */
    .twitter-arrow {
        --arrow-size: 40px;  /* ← 以後只改這裡 */
    width: var(--arrow-size);
    height: var(--arrow-size);
    position: relative;
    font-size: var(--arrow-size);
}

.twitter-arrow::before {
    content: ''; 
    position: absolute; 
    width: 0; 
    height: 0;
    top: 0.1em; 
    left: 50%; 
    transform: translateX(-50%);
    border-left: 0.4em solid transparent;
    border-right: 0.4em solid transparent;
    border-bottom: 0.5em solid white;
}

.twitter-arrow::after {
    content: ''; 
    position: absolute;
    width: 0.25em; 
    height: 0.6em;
    background: white; 
    bottom: 0.1em; 
    left: 50%;
    transform: translateX(-50%); 
    border-radius: 0.05em;
}

@media (max-width:600px) {
    .back-to-top { 
        width: 42px; 
        height: 42px; 
    }
    .twitter-arrow { 
        --arrow-size: 30px; 
    }
}

/* 
============================================================
顏色參考（保留供日後使用）
============================================================

藍色：
background: linear-gradient(145deg, rgba(33, 150, 243, 0.9), rgba(25, 118, 210, 0.95));
hover: background: linear-gradient(145deg, rgba(33, 150, 243, 0.95), rgba(21, 101, 192, 1));

紫色：
background: linear-gradient(145deg, rgba(156, 39, 176, 0.85), rgba(123, 31, 162, 0.95));
hover: background: linear-gradient(145deg, rgba(156, 39, 176, 0.95), rgba(106, 27, 154, 1));

森林綠：
background: linear-gradient(145deg, rgba(46, 125, 50, 0.85), rgba(27, 94, 32, 0.95));
hover: background: linear-gradient(145deg, rgba(46, 125, 50, 0.95), rgba(21, 72, 25, 1));

紅色：
background: linear-gradient(145deg, rgba(211, 47, 47, 0.85), rgba(183, 28, 28, 0.95));
hover: background: linear-gradient(145deg, rgba(211, 47, 47, 0.95), rgba(150, 20, 20, 1));

橙色（目前使用）：
background: linear-gradient(145deg, rgba(245, 124, 0, 0.85), rgba(230, 81, 0, 0.95));
hover: background: linear-gradient(145deg, rgba(245, 124, 0, 0.95), rgba(200, 70, 0, 1));

============================================================
*/