/* /css/home.css - 專案整合平台首頁專屬樣式 */

body {
  /* 繼承 base.css 的字體與顏色，這裡只加上讓 footer 置底的 flex 設定 */
  display: flex; flex-direction: column; min-height: 100vh;
}
.container { max-width: 1100px; margin: 0 auto; padding: 5rem 2rem; flex: 1; width: 100%; }

/* 標題區塊優化 */
.header { border-bottom: 2px solid var(--border-dark); padding-bottom: 1.5rem; margin-bottom: 3.5rem; }
.header .firm-name { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; margin-bottom: 0.5rem; }
.header h1 { font-size: 26px; font-weight: 700; letter-spacing: 0.15em; }
.header .en-name { font-family: var(--font-mono); font-size: 16px; font-weight: 500; color: var(--text2); letter-spacing: 0.05em; }
.header .sub-title { font-size: 13px; color: var(--active-bg); font-weight: 700; letter-spacing: 0.1em; }

/* 模組選單網格 */
.menu-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 1.5rem; }
.menu-item {
  text-decoration: none; color: inherit; border: 1px solid var(--border);
  padding: 2.5rem 2rem; display: flex; flex-direction: column;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1); position: relative; background: var(--bg);
}
.menu-item:hover { border-color: var(--border-dark); transform: translateY(-5px); box-shadow: 8px 8px 0px rgba(0,0,0,0.05); }
.menu-item.main { border-left: 5px solid var(--active-bg); }
.menu-item.tool { border-left: 5px solid var(--text3); }
.menu-item::after { content: '→'; position: absolute; right: 1.5rem; bottom: 1.5rem; font-family: var(--font-mono); font-weight: 700; opacity: 0.15; transition: 0.2s; }
.menu-item:hover::after { opacity: 1; color: var(--active-bg); transform: translateX(5px); }

.menu-item .num { font-family: var(--font-mono); font-size: 11px; color: var(--text3); margin-bottom: 1.2rem; }
.menu-item h2 { font-size: 19px; font-weight: 700; margin-bottom: 0.6rem; letter-spacing: 0.05em; }
.menu-item p { font-size: 13px; color: var(--text2); line-height: 1.5; }

/* 鎖定狀態模組 */
.locked { background: var(--bg2); cursor: default; }
.locked:hover { transform: none; box-shadow: none; border-color: var(--border); }
.badge { display: inline-block; font-size: 10px; padding: 2px 8px; background: var(--border); color: var(--text3); margin-top: 15px; align-self: flex-start; font-weight: 700; }

/* 頁腳 */
.footer { padding: 2.5rem; text-align: center; border-top: 1px solid var(--border); background: var(--bg2); }
.footer p { font-size: 11px; color: var(--text3); font-family: var(--font-mono); letter-spacing: 0.05em; }

/* 手機版響應式 */
@media (max-width: 600px) { 
  .container { padding: 3rem 1.5rem; } 
  .header h1 { font-size: 22px; } 
  .header .en-name { font-size: 13px; } 
}