/* 共享與基礎變數 */
:root:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  --primary-color: #1877F2;
  --secondary-color: #0052D9;
  --bg-color: #F7F9FC;
  --text-color: #1D2129;
  --text-secondary: #4E5969;
  --border-color: #E5E6EB;
  --card-bg: #FFFFFF;
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.04);
  --shadow-md: 0 8px 24px rgba(24, 119, 242, 0.08);
  --radius-md: 12px;
}
*:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
body:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft JhengHei", "Inter", sans-serif;
  background-color: var(--bg-color);
  color: var(--text-color);
  line-height: 1.6;
}
/* 複用首頁導航欄 CSS 結構 */
/* 會員中心專屬正文佈局 */
.aisitex-account-main:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  max-width: 1200px;
  margin: 40px auto 80px;
  padding: 0 24px;
}
.aisitex-account-hero:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: center;
  background: var(--card-bg);
  border-radius: 20px;
  padding: 56px;
  box-shadow: var(--shadow-md);
  border: 1px solid var(--border-color);
}
.aisitex-account-intro h1:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  font-size: 36px;
  font-weight: 700;
  color: var(--text-color);
  line-height: 1.3;
  margin-bottom: 16px;
}
.aisitex-account-intro .aisitex-badge:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  display: inline-block;
  background: rgba(24, 119, 242, 0.1);
  color: var(--primary-color);
  padding: 6px 14px;
  border-radius: 20px;
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 20px;
}
.aisitex-account-intro p:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  color: var(--text-secondary);
  font-size: 16px;
  margin-bottom: 32px;
  line-height: 1.6;
}
.aisitex-feature-list:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.aisitex-feature-item:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.aisitex-feature-icon:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  width: 24px;
  height: 24px;
  background: rgba(24, 119, 242, 0.15);
  color: var(--primary-color);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  font-size: 12px;
  flex-shrink: 0;
  margin-top: 2px;
}
.aisitex-feature-content h4:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  font-size: 15px;
  font-weight: 600;
  color: var(--text-color);
  margin-bottom: 4px;
}
.aisitex-feature-content p:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  font-size: 14px;
  color: var(--text-secondary);
  margin: 0;
}
/* 互動表單面板 */
.aisitex-auth-card:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  background: #FAFBFC;
  border: 1px solid var(--border-color);
  border-radius: var(--radius-md);
  padding: 36px;
}
.aisitex-auth-tabs:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  display: flex;
  border-bottom: 1px solid var(--border-color);
  margin-bottom: 24px;
}
.aisitex-auth-tab:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  flex: 1;
  background: none;
  border: none;
  padding: 12px;
  font-size: 16px;
  font-weight: 600;
  color: var(--text-secondary);
  cursor: pointer;
  position: relative;
  transition: color 0.2s;
}
.aisitex-auth-tab.active:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  color: var(--primary-color);
}
.aisitex-auth-tab.active:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *))::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: var(--primary-color);
}
.aisitex-form-group:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  margin-bottom: 20px;
}
.aisitex-form-group label:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: var(--text-color);
  margin-bottom: 8px;
}
.aisitex-form-control:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  width: 100%;
  padding: 12px 16px;
  border: 1px solid var(--border-color);
  border-radius: 8px;
  font-size: 15px;
  background: #FFFFFF;
  color: var(--text-color);
  transition: border-color 0.2s, box-shadow 0.2s;
}
.aisitex-form-control:focus:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  outline: none;
  border-color: var(--primary-color);
  box-shadow: 0 0 0 3px rgba(24, 119, 242, 0.12);
}
.aisitex-form-error:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  color: #FF4D4F;
  font-size: 13px;
  margin-top: 6px;
  display: none;
}
.aisitex-submit-btn:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  width: 100%;
  background-color: var(--primary-color);
  color: #fff;
  border: none;
  padding: 14px;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.2s;
  margin-top: 8px;
}
.aisitex-submit-btn:hover:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  background-color: var(--secondary-color);
}
.aisitex-auth-notice:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  font-size: 12px;
  color: var(--text-secondary);
  text-align: center;
  margin-top: 16px;
  line-height: 1.5;
}
.aisitex-user-session-view:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  display: none;
  text-align: center;
  padding: 24px 0;
}
.aisitex-user-avatar:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  width: 64px;
  height: 64px;
  background: rgba(24, 119, 242, 0.1);
  color: var(--primary-color);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  font-weight: 700;
  margin: 0 auto 16px;
}
.aisitex-user-session-view h3:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  font-size: 18px;
  color: var(--text-color);
  margin-bottom: 8px;
}
.aisitex-user-session-view p:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  color: var(--text-secondary);
  font-size: 14px;
  margin-bottom: 24px;
}
.aisitex-logout-btn:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  background: #F2F3F5;
  color: var(--text-color);
  border: none;
  padding: 10px 24px;
  border-radius: 8px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s;
}
.aisitex-logout-btn:hover:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
  background: #E5E6EB;
}
/* 頁腳 */
/* 響應式佈局適配 */
@media (max-width: 960px) {.aisitex-account-hero:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
    grid-template-columns: 1fr;
    padding: 32px;
    gap: 32px;
  }
.aisitex-nav-menu.active:not(:where(.aisitex-header, .aisitex-header *, .aisitex-footer, .aisitex-footer *)){
    display: flex;
  }}

.aisitex-header {
    font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft JhengHei", "Inter", sans-serif;
    line-height: 1.6;
    color: #1D2129;
}

.aisitex-header, .aisitex-header *{
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }

.aisitex-header a{
            text-decoration: none;
            color: inherit;
        }

.aisitex-header{
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 72px;
            background-color: rgba(255, 255, 255, 0.95);
            backdrop-filter: blur(10px);
            border-bottom: 1px solid #E5E6EB;
            z-index: 1000;
            display: flex;
            align-items: center;
            justify-content: center;
        }

.aisitex-header .aisitex-nav-container{
            width: 100%;
            max-width: 1200px;
            padding: 0 24px;
            display: flex;
            align-items: center;
            justify-content: space-between;
        }

.aisitex-header .aisitex-brand{
            display: flex;
            align-items: center;
            gap: 12px;
            font-weight: 700;
            font-size: 20px;
            color: #1877F2;
        }

.aisitex-header .aisitex-brand img{
            width: 36px;
            height: 36px;
            border-radius: 8px;
        }

.aisitex-header .aisitex-nav-menu{
            display: flex;
            align-items: center;
            gap: 32px;
        }

.aisitex-header .aisitex-nav-link{
            font-size: 15px;
            font-weight: 500;
            color: #4E5969;
            transition: color 0.2s ease;
            position: relative;
            padding: 8px 0;
        }

.aisitex-header .aisitex-nav-link:hover, .aisitex-header .aisitex-nav-link.active{
            color: #1877F2;
        }

.aisitex-header .aisitex-nav-link.active::after{
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 2px;
            background-color: #1877F2;
            border-radius: 2px;
        }

.aisitex-header .aisitex-header-cta{
            display: flex;
            align-items: center;
            gap: 16px;
        }

.aisitex-header .aisitex-btn-primary{
            background-color: #1877F2;
            color: #fff;
            padding: 10px 20px;
            border-radius: 8px;
            font-weight: 600;
            font-size: 14px;
            transition: all 0.2s ease;
            box-shadow: 0 4px 12px rgba(24, 119, 242, 0.2);
        }

.aisitex-header .aisitex-btn-primary:hover{
            background-color: #0052D9;
            transform: translateY(-1px);
        }

.aisitex-header .aisitex-menu-toggle{
            display: none;
            background: none;
            border: none;
            cursor: pointer;
            width: 32px;
            height: 32px;
            position: relative;
        }

.aisitex-header .aisitex-menu-toggle span{
            display: block;
            width: 24px;
            height: 2px;
            background-color: #1D2129;
            position: absolute;
            left: 4px;
            transition: 0.3s;
        }

.aisitex-header .aisitex-menu-toggle span:nth-child(1){ top: 9px; }

.aisitex-header .aisitex-menu-toggle span:nth-child(2){ top: 15px; }

.aisitex-header .aisitex-menu-toggle span:nth-child(3){ top: 21px; }

.aisitex-header .aisitex-nav-overlay{
            display: none;
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0, 0, 0, 0.4);
            z-index: 998;
        }

@media (max-width: 960px){.aisitex-header .aisitex-nav-menu{
                position: fixed;
                top: 72px;
                left: -100%;
                width: 100%;
                height: calc(100vh - 72px);
                background-color: #FFFFFF;
                flex-direction: column;
                align-items: flex-start;
                padding: 32px;
                gap: 24px;
                box-shadow: 0 10px 20px rgba(0,0,0,0.1);
                transition: left 0.3s ease;
            }

.aisitex-header .aisitex-nav-menu.active{
                left: 0;
            }

.aisitex-header .aisitex-menu-toggle{
                display: block;
            }

.aisitex-header .aisitex-nav-overlay.active{
                display: block;
            }}

.aisitex-footer {
    font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft JhengHei", "Inter", sans-serif;
    line-height: 1.6;
    color: #1D2129;
}

.aisitex-footer, .aisitex-footer *{
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }

.aisitex-footer a{
            text-decoration: none;
            color: inherit;
        }

.aisitex-footer .aisitex-brand{
            display: flex;
            align-items: center;
            gap: 12px;
            font-weight: 700;
            font-size: 20px;
            color: #1877F2;
        }

.aisitex-footer .aisitex-brand img{
            width: 36px;
            height: 36px;
            border-radius: 8px;
        }

.aisitex-footer{
            background-color: #1D2129;
            color: #86909C;
            padding: 64px 24px 32px;
            border-top: 1px solid #E5E6EB;
        }

.aisitex-footer .aisitex-footer-container{
            max-width: 1200px;
            margin: 0 auto;
            display: grid;
            grid-template-columns: 2fr 1fr 1fr 1fr;
            gap: 40px;
            margin-bottom: 48px;
        }

.aisitex-footer .aisitex-footer-brand p{
            margin-top: 16px;
            font-size: 14px;
            line-height: 1.6;
        }

.aisitex-footer .aisitex-footer-col h4{
            color: #FFFFFF;
            font-size: 15px;
            font-weight: 600;
            margin-bottom: 20px;
        }

.aisitex-footer .aisitex-footer-col ul{
            list-style: none;
            display: flex;
            flex-direction: column;
            gap: 12px;
        }

.aisitex-footer .aisitex-footer-col a{
            font-size: 14px;
            transition: color 0.2s ease;
        }

.aisitex-footer .aisitex-footer-col a:hover{
            color: #FFFFFF;
        }

.aisitex-footer .aisitex-footer-bottom{
            max-width: 1200px;
            margin: 0 auto;
            padding-top: 24px;
            border-top: 1px solid #30363D;
            text-align: center;
            font-size: 13px;
        }

@media (max-width: 960px){.aisitex-footer .aisitex-footer-container{
                grid-template-columns: 1fr 1fr;
            }}

@media (max-width: 600px){.aisitex-footer .aisitex-footer-container{
                grid-template-columns: 1fr;
            }}