/* 與首頁一致的設計：米色底、深綠色、襯線標題、白底細邊框卡片。老師教案、家長專區、異象頁共用，放在各頁 CSS 最後載入。 */
body.zone-teacher,body.zone-parent,body.zone-vision{
  --hg:#1F3B2D;--hg2:#2F6B3F;--hbg:#F6F3EA;--hline:#E2DDCD;--hink:#1F3327;--hmut:#5E6B5F;--hgold:#F0A927;
  --ink:#1F3327;--ink-2:#3C4D40;--muted:#5E6B5F;--line:#E2DDCD;--zone:#2F6B3F;--rust:#2F6B3F;--rust-dark:#1F3B2D;--gold:#2F6B3F;
  --leaf:#2F6B3F;--leaf-dark:#2F6B3F;--leaf-soft:#E5EEDD;--leaf-line:#CBD9C2;--root:#7A4B2A;
  background:var(--hbg)!important;color:var(--hink)}
body.zone-teacher *,body.zone-parent *{--tw-ring-color:transparent}

/* 頁首 */
.site-header{background:#fff!important;border-bottom:1px solid var(--hline)!important;box-shadow:none!important}
.site-brand strong{font-family:"Noto Serif TC","Songti TC",serif;font-weight:900;color:var(--hink)}
.site-switch{background:#fff!important;border:1px solid var(--hline)!important;box-shadow:none!important}
.site-switch a{color:var(--hink)!important}
.site-switch a[aria-current="page"]{background:var(--hg2)!important;color:#fff!important;box-shadow:none!important}
.site-share{background:var(--hg2)!important;box-shadow:none!important}
.site-share:hover{background:var(--hg)!important}
.fs-ctrl{background:#fff!important;border:1px solid var(--hline)!important}
.fs-ctrl button{background:#fff!important;color:var(--hink)!important;border:1px solid var(--hline)!important}
.fs-ctrl button:last-child{background:var(--hg2)!important;color:#fff!important;border-color:var(--hg2)!important}

/* 「回首頁／異象／護幼」連結列：不要色條與底色 */
.zone-note{border-left:0!important;background:none!important;padding:0!important;margin:0 0 14px!important}
.zone-note a{color:var(--hg2)!important;font-weight:800}

/* ========== 老師教案 ========== */
body.zone-teacher .wm-side{background:transparent!important;border-right:1px solid var(--hline)!important}
body.zone-teacher .wm-side-title{color:var(--hmut)}
body.zone-teacher .wm-nav{border-left:0!important;border-radius:10px;color:var(--hink)}
body.zone-teacher .wm-nav:hover{background:#E5EEDD!important}
body.zone-teacher .wm-nav.n1{background:#E5EEDD!important;color:var(--hg2)}
body.zone-teacher .wm-side-note{border-top:1px solid var(--hline)!important;color:var(--hmut)}
body.zone-teacher .wm-side-note b{color:var(--hg2)}

/* 頂部橫幅：深綠色卡片 */
body.zone-teacher main>div.no-print:first-child{background:var(--hg)!important;border:0!important;border-radius:20px!important;box-shadow:10px 10px 0 #DAE0D0!important;padding:26px 28px!important;margin-bottom:30px!important}
body.zone-teacher main>div.no-print:first-child::before,body.zone-teacher main>div.no-print:first-child::after{display:none!important;content:none!important}
body.zone-teacher main>div.no-print:first-child h2{font-family:"Noto Serif TC",serif;font-weight:900;font-size:1.7rem!important;line-height:1.4;color:#fff!important}
body.zone-teacher main>div.no-print:first-child p,body.zone-teacher main>div.no-print:first-child p strong{color:#CFDCCB!important}
body.zone-teacher main>div.no-print:first-child p strong{color:#fff!important}
body.zone-teacher main>div.no-print:first-child button{background:#fff!important;color:var(--hg)!important;box-shadow:none!important;border-radius:10px!important}
body.zone-teacher main>div.no-print:first-child button:hover{background:#E5EEDD!important}

/* 搜尋 */
body.zone-teacher #searchInput{border:1px solid var(--hline)!important;border-radius:12px!important;box-shadow:none!important;background:#fff!important}
body.zone-teacher #searchInput:focus{border-color:var(--hg2)!important;box-shadow:0 0 0 3px rgba(47,107,63,.16)!important}

/* 季別按鈕：白底細框，選中為深綠 */
.quarter-tab{background:#fff!important;border:1px solid var(--hline)!important;color:var(--hink)!important;border-radius:12px!important;box-shadow:none!important}
.quarter-tab span{color:inherit!important}
.quarter-tab:hover{border-color:var(--hg2)!important}
.quarter-tab.active{background:var(--hg2)!important;border-color:var(--hg2)!important;color:#fff!important}
.quarter-tab.active span{color:#fff!important}

/* 週次卡片 */
#allCardsList>div{background:#fff!important;border:1px solid var(--hline)!important;border-top:1px solid var(--hline)!important;border-radius:14px!important;box-shadow:none!important;transform:none!important}
#allCardsList>div:hover{border-color:var(--hg2)!important;box-shadow:0 6px 16px rgba(31,59,45,.1)!important}
#allCardsList>div h4{font-family:"Noto Serif TC",serif;color:var(--hink)!important}
#allCardsList>div .bg-navy-900{background:var(--hg)!important}
#allCardsList>div .text-amber-800{color:var(--hg2)!important}
#allCardsList>div .text-amber-600{color:var(--hg2)!important}
#allCardsList>div span.rounded-full{background:#E5EEDD!important;border-color:#CBD9C2!important;color:var(--hg2)!important}
#allCardsList h3,body.zone-teacher section h3{font-family:"Noto Serif TC",serif}

/* 教案視窗 */
#lessonModal .modal-box{border:0!important;border-radius:18px!important}
#lessonModal .bg-stone-900{background:var(--hg)!important}
#lessonModal .text-amber-400{color:#CFE3C6!important}
#lessonModal .bg-amber-500{background:#fff!important;color:var(--hg)!important}
#lessonModal h2,#lessonModal h3{font-family:"Noto Serif TC",serif}
#lessonModal button.bg-red-600,#lessonModal .bg-rust,#lessonModal [class*="bg-red-"]{background:var(--hg2)!important}
#miniTimer{background:var(--hg)!important}

/* ========== 家長專區（左文字＋右深綠卡片，清單兩欄） ========== */
.p-main{max-width:1180px!important;padding:26px 24px calc(40px + var(--sab))!important}
.p-top{display:grid;grid-template-columns:1.02fr 1fr;gap:56px;align-items:center;padding:34px 0 40px}
.p-top .p-hero{margin:0}
.p-top .p-hero::before{content:"家長專區　有祢有伴";display:flex;align-items:center;gap:12px;margin-bottom:14px;font-size:.88rem;font-weight:800;letter-spacing:.06em;color:var(--hg2)}
.p-hero h1{font-family:"Noto Serif TC","Songti TC",serif;font-size:clamp(2rem,4.2vw,3.2rem)!important;line-height:1.3;color:var(--hink)!important}
.p-hero p{font-size:1.1rem!important;color:var(--hmut)!important;margin-top:10px!important}
.p-card.p-steps{background:var(--hg)!important;border:0!important;border-radius:20px!important;box-shadow:10px 10px 0 #DAE0D0!important;padding:24px 26px!important;margin:0!important;color:#EAF1E6}
.p-steps h2{color:#fff!important;font-family:"Noto Serif TC",serif;font-size:1.25rem!important;margin-bottom:10px!important}
.p-steps p{color:#CFDCCB!important;font-size:1rem!important}
.p-steps p strong{color:#fff}
.p-card,.p-row,.p-search input,.p-empty{border-color:var(--hline)!important;box-shadow:none!important}
.p-search input{border-radius:12px!important}
.p-chip{background:#fff!important;border:1px solid var(--hline)!important;color:var(--hink)!important}
.p-chip[aria-pressed="true"]{background:var(--hg2)!important;border-color:var(--hg2)!important;color:#fff!important}
.p-chips{flex-wrap:wrap;overflow:visible}
.p-group{font-family:"Noto Serif TC",serif;border-bottom:1px solid var(--hline)!important;color:var(--hink)!important;margin:30px 0 14px!important}
.p-list{display:grid!important;grid-template-columns:1fr 1fr;gap:12px!important}
.p-row{background:#fff;border:1px solid var(--hline)!important;border-left:1px solid var(--hline)!important;border-radius:14px!important}
.p-row:hover{border-color:var(--hg2)!important;box-shadow:0 6px 16px rgba(31,59,45,.1)!important}
.p-ref{background:#E5EEDD!important;border-color:#CBD9C2!important;color:var(--hg2)!important}
.p-btn.primary{background:var(--hg2)!important;border-color:var(--hg2)!important}
.p-detail h2{font-family:"Noto Serif TC",serif}
.p-footer{border-top:1px solid var(--hline)!important}
@media (max-width:980px){
  .p-top{grid-template-columns:1fr;gap:28px;padding:20px 0 28px}
  .p-card.p-steps{box-shadow:8px 8px 0 #DAE0D0!important}
  .p-list{grid-template-columns:1fr}
}
#allCardsList>div .bg-navy-900{color:#fff!important}
.zone-links{margin-left:0!important}
body:has(#detailView:not([hidden])) .p-top{display:none}
#lessonModal a.bg-red-600,#lessonModal button.bg-indigo-600,#lessonModal button.bg-amber-500,#lessonModal button.bg-stone-800{background:var(--hg2)!important;color:#fff!important}
#lessonModal button.bg-indigo-600:hover,#lessonModal button.bg-stone-800:hover{background:var(--hg)!important}
#lessonModal .text-amber-900,#lessonModal span.rounded-full{color:var(--hg2)!important}
#modalFlowSteps .bg-navy-900{color:var(--hg2)!important}
#lessonModal [class*="border-l-"]{border-left-color:var(--hg2)!important}
html body #lessonModal{--k-accent:#2F6B3F}

/* 老師頁綠色橫幅：取消舊版 620px 寬度上限，文字靠左、按鈕靠右 */
html body.zone-teacher main>div.no-print:first-child>div.wm-ban-row{max-width:none!important;width:100%!important;margin-top:0!important}
body.zone-teacher .wm-ban-row>div:first-child{flex:1 1 auto;min-width:0}
body.zone-teacher .wm-ban-row>div:first-child p{max-width:46em}
body.zone-teacher .wm-ban-row>button{margin-left:24px}
@media (max-width:640px){body.zone-teacher .wm-ban-row>button{margin-left:0}}
html body.zone-teacher main>div.no-print:first-child{min-height:0!important;align-items:center}

/* ===== 分班指引（備課手冊）視窗：與首頁一致的米色底、深綠、襯線標題、白底細邊框卡片 ===== */
html body #guideModal{background:rgba(31,59,45,.55)!important;backdrop-filter:none}
html body #guideModal>div{background:var(--hbg)!important;border:1px solid var(--hline)!important;border-radius:20px!important;box-shadow:10px 10px 0 rgba(31,59,45,.18)!important;color:var(--hink)}
html body #guideModal>div>div:first-child{border-bottom:0!important}
html body #guideModal h3{font-family:"Noto Serif TC","Songti TC",serif;font-weight:900;color:var(--hg)!important}
html body #guideModal>div>div:first-child p{color:var(--hmut)!important}
html body #guideModal>div>div:first-child button{color:var(--hmut)!important}
html body #guideModal>div>div:first-child button:hover{color:var(--hg)!important}
html body #guideModal .text-stone-800,html body #guideModal .text-stone-700{color:var(--hink)!important}
/* 卡片：白底細邊框，不用彩色左邊線，不疊框 */
html body #guideModal .space-y-4>div.bg-amber-50,html body #guideModal .space-y-4>div.bg-purple-50{background:#fff!important;border:1px solid var(--hline)!important;border-left:1px solid var(--hline)!important;border-radius:14px!important;box-shadow:none!important;padding:22px 24px!important}
html body #guideModal h4{font-family:"Noto Serif TC","Songti TC",serif;font-weight:900;font-size:1.2rem!important;color:var(--hg2)!important}
html body #guideModal .space-y-4>div.bg-amber-50 .bg-white\/85{background:transparent!important;border:0!important;border-top:1px solid var(--hline)!important;border-radius:0!important;padding:14px 0 0!important;margin-top:6px}
html body #guideModal strong{color:var(--hg)}
/* 對照表 */
html body #guideModal .border.border-stone-200{background:#fff;border:1px solid var(--hline)!important;border-radius:14px!important}
html body #guideModal thead,html body #guideModal thead th{background:#EEF4E8!important;color:var(--hg)!important}
html body #guideModal th.text-purple-900{color:var(--hg2)!important}
html body #guideModal td.bg-purple-50\/50{background:#F4F8EF!important;color:var(--hg)!important}
html body #guideModal tbody{--tw-divide-opacity:1}
html body #guideModal tbody>tr+tr>td{border-top:1px solid var(--hline)}
html body #guideModal td.text-slate-700{color:var(--hg2)!important}
/* 20 分鐘節奏：深綠色卡片，與首頁的深色區塊呼應 */
html body #guideModal .space-y-4>div.bg-emerald-50{background:var(--hg)!important;border:0!important;border-radius:14px!important;padding:24px 26px!important}
html body #guideModal .bg-emerald-50 h4{color:#fff!important;margin-bottom:10px!important}
html body #guideModal .bg-emerald-50 ol,html body #guideModal .bg-emerald-50 li{color:#E4EDE0!important}
html body #guideModal .bg-emerald-50 li strong{color:#fff!important}
html body #guideModal .bg-emerald-50 li::marker{color:#B9D3BF}
/* 底部按鈕 */
html body #guideModal button.bg-navy-900{background:var(--hg2)!important;border-radius:10px!important;box-shadow:none!important;color:#fff}
html body #guideModal button.bg-navy-900:hover{background:var(--hg)!important}
html body #guideModal th{white-space:nowrap}

/* 左側選單：備課好幫手（外部連結） */
body.zone-teacher .wm-res-title{margin-top:18px;padding-top:16px;border-top:1px solid var(--hline)}
body.zone-teacher .wm-res{display:flex;flex-direction:column;gap:2px}
body.zone-teacher .wm-nav.wm-ext{min-height:38px;padding:6px 8px 6px 12px;line-height:1.35;font-size:.84rem;font-weight:600;border-left-color:transparent;justify-content:space-between}
body.zone-teacher .wm-nav.wm-ext i{font-style:normal;color:var(--hmut);font-size:.9rem}
body.zone-teacher .wm-nav.wm-ext:hover{background:#EEF4E8;border-left-color:var(--hg2)}
@media (max-width:900px){
  body.zone-teacher .wm-res-title{display:none}
  body.zone-teacher .wm-res{flex-direction:row;overflow-x:auto;gap:8px;scrollbar-width:none;margin-top:6px}
  body.zone-teacher .wm-nav.wm-ext{min-height:38px;white-space:nowrap;justify-content:flex-start;gap:4px}
}

/* 課程卡底部：「打開教案 ➔」不換行，左邊的說明文字自己換行（字體放大時也不會擠） */
body.zone-teacher .card-note{flex:1 1 auto;min-width:0;line-height:1.5}
body.zone-teacher .card-open{flex:none;white-space:nowrap;margin-left:12px}
body.zone-teacher .card-open span{white-space:nowrap}

/* 季度切換列：一排不換行，空間不夠時可左右滑動；字級縮小、不再被擠成兩三行 */
html body.zone-teacher #navButtons{display:flex!important;flex-wrap:nowrap;gap:8px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:2px 2px 4px}
html body.zone-teacher #navButtons::-webkit-scrollbar{display:none}
html body.zone-teacher #navButtons .quarter-tab{flex:1 0 auto;min-width:max-content;min-height:56px;padding:8px 10px!important;grid-column:auto!important}
html body.zone-teacher #navButtons .quarter-tab span{white-space:nowrap}
html body.zone-teacher #navButtons .quarter-tab span:first-child{font-size:1rem!important;line-height:1.35}
html body.zone-teacher #navButtons .quarter-tab span:last-child{font-size:.78rem!important;margin-top:2px}

/* 手機版：教案頁／家長專區再縮小 */
@media (max-width:560px){
  body.zone-teacher .wm-side{display:flex!important;flex-wrap:nowrap;overflow-x:auto;gap:8px;padding:6px 10px!important;scrollbar-width:none}
  body.zone-teacher .wm-side::-webkit-scrollbar{display:none}
  body.zone-teacher .wm-side>nav{display:flex!important;flex-wrap:nowrap!important;flex:none;gap:8px;margin:0!important;padding:0!important}
  body.zone-teacher .wm-side a{white-space:nowrap}
  body.zone-teacher .wm-ban-row{padding:16px 16px!important;gap:12px!important}
  body.zone-teacher .wm-ban-row h2,body.zone-teacher .wm-ban-row h1{font-size:1.25rem!important;line-height:1.35!important}
  body.zone-teacher .wm-ban-row p{font-size:.86rem!important;line-height:1.6!important}
  body.zone-teacher .wm-ban-row>button{min-height:42px!important;font-size:.95rem!important;padding:0 14px!important}
  .p-hero h1{font-size:1.4rem!important}
  .p-steps{padding:12px 14px!important}
  .p-steps p{font-size:.86rem!important;line-height:1.7!important}
}

/* 週次後面的日期區間 */
.wk-date{margin-left:8px;font-size:.82rem;font-weight:700;color:var(--hmut,#6B6B5E);white-space:nowrap}
.p-date{margin-left:.5em;font-size:.82em;font-weight:700;color:var(--hmut,#6B6B5E);white-space:nowrap}

/* ---------- 備課卡：5 分鐘默想與音樂助手、底部按鈕、迷你計時膠囊 ---------- */
#audioAssistantBox{padding:16px 18px!important;border-radius:16px!important}
#audioAssistantBox>div{flex-direction:column!important;align-items:stretch!important;gap:12px!important;margin-bottom:0!important}
#audioAssistantBox h4{font-size:1.05rem!important;line-height:1.4}
#audioAssistantBox #audioAssistantDesc{font-size:.88rem!important;margin-top:2px}
#audioAssistantBox>div>div:last-child{justify-content:flex-start!important;align-items:center!important;gap:8px!important;flex-wrap:wrap;width:100%!important}
#audioAssistantBox #youtubeAudioBtnContainer,#audioAssistantBox #audioToggleBtn{min-height:42px;padding:0 16px!important;font-size:.92rem!important;border-radius:12px!important;box-shadow:none!important;white-space:nowrap}
#audioAssistantBox #timerDisplay{min-height:42px;display:inline-flex;align-items:center;padding:0 14px!important;font-size:1.3rem!important;border-radius:12px!important;margin-left:auto}
@media (max-width:480px){#audioAssistantBox #timerDisplay{margin-left:0}#audioAssistantBox #youtubeAudioBtnContainer{flex:1 1 100%;justify-content:center}}
#lessonModal .modal-box>.no-print.bg-stone-100{padding:10px 18px!important;gap:12px}
#lessonModal .modal-box>.no-print.bg-stone-100 span{font-size:.8rem}
#lessonModal .modal-box>.no-print.bg-stone-100 button{padding:0 18px!important;min-height:42px;font-size:.95rem;border-radius:12px;white-space:nowrap}
#lessonModal button[onclick="copyLineBoxText()"]{min-height:40px;padding:0 14px!important;font-size:.9rem!important;border-radius:12px!important;box-shadow:none!important}
#miniTimer{bottom:calc(20px + var(--sab))!important;min-height:38px!important;padding:3px 4px 3px 12px!important;gap:8px!important}
#miniTimer .t{font-size:1rem!important}
#miniTimer button{width:32px!important;height:32px!important;font-size:.85rem!important}
#miniTimer{right:auto!important;left:14px!important}

/* 老師教案卡標題：縮小 */
body.zone-teacher #allCardsList h4{font-size:1.2rem!important;line-height:1.45!important;letter-spacing:0!important;font-weight:900!important;margin-bottom:6px!important}
.p-date{margin-right:.45em!important}

/* 超寬螢幕：家長專區加寬、週次清單增加欄數 */
@media(min-width:1500px){.p-main{max-width:min(1680px,calc(100vw - 120px))!important}}
@media(min-width:1900px){
  .p-main{max-width:min(2080px,calc(100vw - 160px))!important}
  .p-list{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(min-width:2400px){.p-list{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
