/* 案件歷程追蹤。
 *
 * 先前是把舊頁面的樣式整份搬過來，只拿掉頁首——結果它自帶一整套藍灰配色
 * （#2c3e50、#44607d、#20548c…）與六十幾個硬寫的顏色，跟站上其他頁面
 * 完全是兩套視覺。這一版重寫，只用 site.css 的設計語彙：
 * 白底、深紅只做強調、襯線標題、同一組線色與留白。
 *
 * class 名稱維持不變——它們是 site/dash_panes.py 的標記與 dashboard.js
 * 產生的，改名等於要動那兩邊，沒有必要。
 */

/* 滿版應用版面，與主資料庫、案件結構標註、裁判意見書一致：
   頂端一條貼齊的標籤列，內容自己捲動，不是文件式的置中容器加大標題。 */
.dash{flex:1;min-width:0;display:flex;flex-direction:column;min-height:0}
.dash a{color:var(--brand)}
.dash a.lnk,.lnk{color:var(--brand);text-decoration:none}
.dash a.lnk:hover,.lnk:hover{text-decoration:underline}
.muted{color:var(--muted)}
.mono{font-family:ui-monospace,"Cascadia Mono",Consolas,monospace;font-size:12.5px}
.dash code{background:var(--soft);padding:1px 6px;border-radius:4px;font-size:12.5px;
 font-family:ui-monospace,"Cascadia Mono",Consolas,monospace}
.dash h2{font-family:var(--serif);font-size:18px;margin:24px 0 10px;padding-bottom:7px;
 border-bottom:1px solid var(--line)}
.dash h3{font-family:var(--serif);font-size:15px;margin:18px 0 6px}
.dash p{margin:9px 0;line-height:1.85}
.dash ul,.dash ol{margin:9px 0;padding-left:22px}
.dash li{margin:5px 0;line-height:1.8}

/* 頂端標籤列：位置與其他頁的活動標籤一致 */
.dashbar{flex:none;position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);
 backdrop-filter:blur(6px);border-bottom:1px solid var(--line);
 display:flex;align-items:center;gap:12px;padding:8px 22px;flex-wrap:wrap}
.dashbar .ttl{font-family:var(--serif);font-size:15px;font-weight:700;color:var(--brand);
 white-space:nowrap}
.dashbar .btn{flex:none;order:2}
/* 「使用說明」貼在統計格那一列的右上角，不另佔一列（2026-09 維護者指示）。
   統計格會依寬度換行，用絕對定位才不會被擠到下一行。 */
.dash .pane{position:relative}
.kpi .kpiact{position:absolute;top:0;right:0;border:none;background:transparent;padding:0}
.kpi .kpiact .btn{white-space:nowrap}
.subnav{display:flex;gap:6px;flex-wrap:wrap}
.subnav a{font-size:12.5px;color:var(--ink2);text-decoration:none;padding:4px 12px;
 border:1px solid var(--line);border-radius:999px;background:#fff;white-space:nowrap}
.subnav a:hover{border-color:var(--brand);color:var(--brand)}
.subnav a.on{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:700}

/* 內容區自己捲動 */
.panes{flex:1;min-height:0;overflow-y:auto;padding:20px 26px 80px}
/* 左邊多了 308px 的篩選欄之後，1240 的上限會讓寬螢幕右側空一大片。 */
.dash .pane{display:none;max-width:1560px}
.dash .pane.on{display:block}

/* 說明區塊 */
.note{background:var(--soft);border-left:3px solid var(--line);border-radius:0 8px 8px 0;
 padding:11px 15px;margin:12px 0;font-size:13.5px;line-height:1.85;color:var(--ink2)}
.note b{color:var(--ink)}

/* 統計數字 */
.kpi{display:flex;flex-wrap:wrap;gap:34px;margin:16px 0 18px;align-items:flex-start;padding-right:96px}
.kpi>div{min-width:0}
.kpi span{display:block;font-size:12px;color:var(--muted)}
.kpi b{display:block;font-size:27px;font-weight:700;line-height:1.15;color:var(--brand);
 letter-spacing:-.02em;font-variant-numeric:tabular-nums}

/* 左右兩欄：左邊案件清單、右邊內容。與其他頁的側欄語彙一致 */
.split{display:grid;grid-template-columns:296px minmax(0,1fr);gap:18px;align-items:start}
/* 法官網絡是「圖在左、細節在右」，與案件清單相反，欄寬也要反過來，
   否則右邊會空掉一大片。 */
#p-net .split{grid-template-columns:minmax(0,1fr) 320px}
.split>*{min-width:0}
.side{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;
 position:sticky;top:0}
.side h3{margin:0;padding:9px 13px;font-family:var(--sans);font-size:12px;
 font-weight:700;color:var(--muted);letter-spacing:.05em;background:var(--soft);
 border-bottom:1px solid var(--line)}
.ctl{padding:9px 10px;border-bottom:1px solid var(--line);display:flex;gap:6px;
 flex-wrap:wrap;align-items:center}
.ctl label{font-size:12px;color:var(--ink2)}
.dash input[type=text],.dash input[type=search]{flex:1;min-width:0;padding:7px 10px;
 font:inherit;font-size:13px;border:1px solid var(--line);border-radius:7px;background:#fff}
.dash input:focus,.dash select:focus{outline:0;border-color:var(--brand)}
.dash select{font:inherit;font-size:12px;padding:3px 6px;border-radius:6px;
 border:1px solid var(--line);background:#fff;color:var(--ink2)}
.list{max-height:calc(100vh - 230px);overflow-y:auto}
.list .it{padding:8px 12px;border-bottom:1px solid var(--line);cursor:pointer}
.list .it:hover{background:var(--soft)}
.list .it.on{background:var(--brand-soft)}
.list .it b{display:block;font-size:13.5px;color:var(--brand);font-weight:700;
 line-height:1.6}
.list .it span{font-size:11px;color:var(--muted)}

/* 狀態標 */
.stg{display:inline-block;border-radius:5px;padding:1px 8px;font-size:11px;
 margin-top:3px;white-space:normal;line-height:1.6}
.stg.s0{background:#eaf3ec;color:#2f5d3a}
.stg.s1{background:#eaf0f7;color:#2e5570}
.stg.s2{background:var(--soft);color:var(--muted)}
.stg.s3{background:var(--warn-bg);color:var(--warn)}

/* 案件卡片 */
.card{background:#fff;border:1px solid var(--line);border-radius:10px;
 padding:16px 20px;margin-bottom:16px}
.card h2{margin:0 0 8px;font-size:17px;padding-bottom:0;border-bottom:0}
.card h3{margin:18px 0 6px}

/* 審級鏈 */
.chain{position:relative;padding-left:22px;margin:10px 0}
.chain:before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;
 background:var(--line)}
.step{position:relative;padding:8px 0 8px 0}
.step:before{content:"";position:absolute;left:-19px;top:14px;width:11px;height:11px;
 border-radius:50%;background:#fff;border:2px solid var(--brand)}
.step .no{display:inline-block;background:var(--brand);color:#fff;border-radius:5px;
 padding:1px 8px;font-size:11px;font-weight:700;margin-right:8px;white-space:nowrap}
.step .lv{display:inline-block;border-radius:5px;padding:1px 8px;font-size:11px;
 background:var(--soft);color:var(--ink2);margin-right:8px;white-space:nowrap}
.step .lv.p{background:#eaf0f7;color:#2e5570}
.step .lv.pp{background:#f3eef7;color:#5d4a7a}
.step .lv.x{background:var(--soft);color:var(--muted)}
/* 由裁判書系統的歷審關係補入。h＝原因案件的其他審級；
   a＝釋憲公布後據以聲請再審所生的裁判，時序在釋憲之後。 */
.step .lv.h{background:#eef4ee;color:#3d6b4a}
.step .lv.a{background:#faf1e6;color:#8a6217}
.step .onlylink{display:inline-block;margin-left:6px;padding:0 6px;font-size:11px;
 border-radius:4px;background:var(--soft);color:var(--muted)}
.step dl{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;margin:6px 0 0 0;
 font-size:13.5px}
.step dt{color:var(--muted);white-space:nowrap;font-size:12.5px}
.step dd{margin:0;min-width:0}

/* 前審展開卡 */
.pcard{border:1px solid var(--line);border-radius:9px;margin:0 0 10px;background:#fff;
 overflow:hidden}
.pcard.on{border-color:var(--brand)}
.phd{display:flex;align-items:center;gap:10px;padding:9px 14px;cursor:pointer;
 background:var(--soft);flex-wrap:wrap;font-size:13.5px}
.phd:hover{background:#ece4d8}
.pcard.on .phd{background:var(--brand-soft)}
.phd b{color:var(--brand)}
.phd .pno{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.phd .cp,.phd .ar{margin-left:auto;font-size:11.5px;color:var(--muted)}
.pmeta{display:flex;flex-wrap:wrap;gap:8px;padding:9px 14px 0;font-size:12.5px}
.pmeta span{color:var(--ink2)}
.padv{padding:8px 14px 0;font-size:13px;color:var(--ink2);line-height:1.8}
.pbody{padding:10px 14px 13px}

/* 原始欄位 */
.rawbox{border:1px solid var(--line);border-radius:8px;padding:10px 13px;
 margin:8px 0;background:#fcfbf9}
.rawbox h4{margin:14px 0 5px;font-size:12px;color:var(--brand);font-weight:700;
 letter-spacing:.04em}
.rawbox h4:first-of-type{margin-top:2px}
.rawbox table{border-collapse:collapse;width:100%;font-size:12.5px;margin:0 0 6px}
.rawbox th,.rawbox td{border-bottom:1px solid var(--line);padding:4px 9px;
 text-align:left;vertical-align:top;line-height:1.7}
.rawbox th{color:var(--muted);white-space:nowrap;font-weight:400;width:36%;background:none}

/* 一般表格 */
/* 字級與內距與站上其他頁對齊（實測主資料庫是 13px / 6px 10px），
   先前是 12.5px / 4px 9px，整體看起來比別頁小一號又擠。 */
.dash table{border-collapse:collapse;width:100%;font-size:13px;margin:12px 0;
 display:block;overflow-x:auto}
.dash th,.dash td{border-bottom:1px solid var(--line);padding:6px 10px;
 text-align:left;vertical-align:top;line-height:1.7}
.dash th{color:var(--muted);font-size:13px;font-weight:700;white-space:nowrap}
/* 統計型表格才需要表頭底色；卡片裡的鍵值表（承審件數 13 這種）不需要，
   整片灰底把兩欄切得很生硬。 */
.dash .pane>table th,.dash .pane>div>table th{background:var(--soft)}
.dash tbody tr:nth-child(even) td{background:#fdfcfa}
.card table tbody tr:nth-child(even) td{background:none}
.card table th{width:8.5em;color:var(--muted);font-weight:400;background:none}
.dash pre{background:var(--soft);border:1px solid var(--line);border-radius:7px;
 padding:11px 14px;overflow-x:auto;font-size:12.5px}
.dash hr{border:0;border-top:1px solid var(--line);margin:18px 0}
.dash blockquote{margin:12px 0;padding:2px 16px;border-left:3px solid var(--line);
 color:var(--ink2)}

/* 標籤 */
.tag{display:inline-block;background:var(--soft);color:var(--ink2);border-radius:5px;
 padding:2px 9px;font-size:12.5px;margin:2px 4px 2px 0;cursor:pointer;
 border:1px solid transparent;white-space:nowrap}
.tag:hover{border-color:var(--brand);color:var(--brand)}
.tag.on{background:var(--brand);color:#fff;border-color:var(--brand);font-weight:700}
.tag.r{background:var(--brand-soft);color:var(--brand)}
.tag.g{background:#eaf3ec;color:#2f5d3a}
.tag.y{background:var(--warn-bg);color:var(--warn)}
.ev{font-size:12.5px;color:var(--ink2);line-height:1.8;background:var(--soft);
 border-radius:6px;padding:6px 10px;margin:4px 0}

/* 法官網絡 */
/* 未選節點時的提示。原本用 .muted 吃到內文字級（15px），在側欄裡太大。 */
.hint{font-size:12.5px;color:var(--muted);line-height:1.8;margin:10px 0}
/* 承審案號：一行一筆、可點開裁判書全文 */
.cslist{display:flex;flex-direction:column;gap:2px;margin:6px 0;
 font-family:ui-monospace,"Cascadia Mono",Consolas,monospace;font-size:12px}
.cslist a{color:var(--brand);text-decoration:none;padding:2px 0}
.cslist a:hover{text-decoration:underline}
.cslist span{color:var(--muted);padding:2px 0}
#cv{width:100%;height:calc(100vh - 250px);min-height:420px;border:1px solid var(--line);border-radius:10px;
 background:#fff;display:block;cursor:grab}
#cv.drag{cursor:grabbing}
.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--muted);
 margin:10px 0}
.legend i{display:inline-block;width:12px;height:12px;border-radius:50%;
 margin-right:5px;vertical-align:-1px}

@media(max-width:900px){
 .panes{padding:14px 14px 70px}
 .dashbar{padding:7px 14px;gap:8px}
 .dashbar .ttl{font-size:14px}
 .split{grid-template-columns:minmax(0,1fr);gap:12px}
 .side{position:static}
 .list{max-height:46vh}
 .card{padding:13px 15px}
 .kpi{gap:22px}
 .kpi b{font-size:22px}
 .step dl{grid-template-columns:1fr;gap:1px}
 .dash h2{font-size:16px}
 .subnav a{padding:4px 11px;font-size:12px}
}
@media(max-width:520px){
 .panes{padding:12px 11px 60px}
 .rawbox th{width:auto}
}



/* ── 版面對齊其他應用頁 ──────────────────────────────
   數值取自 /opinions 的實測結果，讓這一頁跟主資料庫、裁判意見書
   讀起來是同一套：一樣的行寬、留白、標題級距與統計格大小。 */
/* 行寬不設上限：其他頁面的 940px 是被 308px 的左側清單欄吃掉的，
   這頁沒有左欄，設了上限右邊就空一大片。留白與字級照舊對齊。 */
.panes{padding:24px 32px 90px}
@media(max-width:960px){.panes{padding:18px 16px 70px}}

.pane>.lead{margin:0 0 14px}
.pane>.lead h1{margin:0 0 6px;font-family:var(--serif);font-size:21px;
 font-weight:700;color:var(--ink);line-height:1.4}
.pane>.lead .sub{margin:0;font-size:12.5px;color:var(--muted);line-height:1.75}
.pane>.lead .sub a{color:var(--brand)}
@media(max-width:960px){.pane>.lead h1{font-size:18px}}

.pane .kpi{display:flex;flex-wrap:wrap;gap:26px;margin:14px 0 4px;padding:0}
.pane .kpi>div{padding:0;background:none;border:0;border-radius:0}
.pane .kpi b{display:block;font-family:var(--sans);font-size:22px;
 font-weight:700;color:var(--ink);line-height:1.25}
.pane .kpi span{display:block;font-size:11.5px;color:var(--muted);line-height:1.6}

.pane h2{font-family:var(--serif);font-size:16px;font-weight:700;
 margin:26px 0 8px;padding-bottom:6px;border-bottom:1px solid var(--line);
 color:var(--ink)}
.pane h3{font-family:var(--serif);font-size:14px;font-weight:700;margin:18px 0 6px}

/* ── 可收合的篩選欄。樣式與 opinions.css／db.css 同一套，
   讓四個應用頁的操作方式一致。名字用 .rail 不用 .side——
   .side 已經被網絡分頁的節點面板用掉了。 */
.sidetab{width:28px;min-width:28px;flex:none;cursor:pointer;border:0;padding:0;
 display:flex;align-items:center;justify-content:center;
 writing-mode:vertical-rl;letter-spacing:3px;font-family:inherit;font-size:12px;
 font-weight:600;background:var(--soft);color:var(--brand);
 border-right:1px solid var(--line)}
.sidetab:hover{background:#ece4d8}
main.folded .sidetab{background:var(--brand);color:#fff;border-right-color:var(--brand)}
main.norail .sidetab,main.norail .rail{display:none}

.rail{width:308px;min-width:308px;flex:none;display:flex;flex-direction:column;
 border-right:1px solid var(--line);background:#fff;overflow:hidden}
main.folded .rail{width:0;min-width:0;border-right:0}

/* 搬進欄裡的那一塊要自己撐滿並自行捲動 */
.rail>.railbox{display:flex;flex-direction:column;flex:1;min-height:0}
.rail .ctl{flex:none}
/* 清單原本的 max-height 是 calc(100vh - 230px)，那是為了搬進欄之前的版面算的。
   搬進 .rail 之後高度該由 flex 決定；留著那個上限，控制列一變高清單就撐不滿，
   底下空一塊，看起來像浮在半空中。 */
.rail .list{flex:1;overflow-y:auto;min-height:0;max-height:none}
/* 捲動軸固定顯示。清單有八百多筆，看不到軸就不知道還能往下捲。 */
.rail .list{scrollbar-width:thin;scrollbar-color:#cfc7b8 var(--soft)}
.rail .list::-webkit-scrollbar{width:10px}
.rail .list::-webkit-scrollbar-track{background:var(--soft)}
.rail .list::-webkit-scrollbar-thumb{background:#cfc7b8;border-radius:5px;
 border:2px solid var(--soft)}
.rail .list::-webkit-scrollbar-thumb:hover{background:#b9af9d}

.rail .muted{flex:none;padding:6px 12px;margin:0;font-size:11.5px;
 border-bottom:1px solid var(--line)}

/* 清單搬走之後，案件歷程分頁的內容區就是單欄 */
#p-his .split{display:block}

/* 標題拿掉，只留一行說明 */
.pane>.lead{margin:0 0 12px;font-size:12.5px;color:var(--muted);line-height:1.75}
.pane>.lead a{color:var(--brand)}

/* 分頁標籤與使用說明一起靠右 */
.dashbar{justify-content:flex-end}
.dashbar .subnav{order:1}

@media(max-width:960px){
 .rail{width:min(300px,82vw);min-width:0}
 .dashbar{justify-content:flex-start}
}

/* 案號徽章上的連結：色與底一致，只在滑過時才明顯，不干擾閱讀 */
.step .no a.jl{color:inherit;text-decoration:none}
.step .no a.jl:hover{text-decoration:underline}
dd a.jl{color:var(--brand);text-decoration:none}
dd a.jl:hover{text-decoration:underline}

/* 法官網絡與釋憲結果編碼是資料頁，讓它們用滿可用寬度 */
#p-net,#p-oc,#p-sta{max-width:none}

/* .card table th 被寫死 width:8.5em，那是給「欄位名／值」那種兩欄表用的。
   釋憲結果編碼是四欄資料表，套上去四欄加起來只有 556px，證據句擠成窄柱。 */
#p-oc .card table{table-layout:fixed}
#p-oc .card table th{width:auto}
#p-oc .card table th:nth-child(1),#p-oc .card table td:nth-child(1){width:11em}
#p-oc .card table th:nth-child(2),#p-oc .card table td:nth-child(2){width:9em}
#p-oc .card table th:nth-child(4),#p-oc .card table td:nth-child(4){width:15em}
#p-oc .card table td{vertical-align:top}

/* 網絡分頁：一行說明＋開浮動視窗的小鈕 */
.netlead{margin:0 0 10px;font-size:12.5px;color:var(--muted);line-height:1.8}
.btn.tiny{padding:2px 10px;font-size:11.5px;margin-left:8px;vertical-align:1px}

/* 控制項搬到右欄節點面板上方 */
#p-net .ctl.netctl{display:flex;flex-direction:column;align-items:stretch;
 gap:8px;margin:0 0 10px;padding:10px 12px;border:1px solid var(--line);
 border-radius:10px;background:#fff}
#p-net .ctl.netctl label{display:flex;align-items:center;gap:6px;font-size:12px;
 color:var(--ink2)}
#p-net .ctl.netctl input[type=text]{width:100%!important}
#p-net .ctl.netctl select{flex:1;min-width:0}
#p-net .ctl.netctl input[type=range]{flex:1;min-width:0}
#p-net .split{align-items:start}

/* 釋憲結果編碼：搜尋框、碼表鈕、筆數排成一列，不另外佔一條欄 */
#p-oc .ctl{display:flex;align-items:center;gap:10px;flex-wrap:wrap;
 padding:0;border:0;margin:0 0 10px}
#p-oc .ctl input[type=text],#p-oc .ctl input[type=search]{flex:1;min-width:200px;
 max-width:520px}
#p-oc .ctl .cnt,#p-oc .ctl>span{margin-left:auto;white-space:nowrap}

/* 證據句那一格：底色只給逐字原文，用來標示「這幾個字是從解釋文照抄的」。
   編碼者的註記不是原文，改成無底色並標上名稱——先前兩者只差一個灰字，
   看起來像同一句話莫名有兩種底色。 */
#p-oc td.ev{background:none;padding:8px 10px}
#p-oc td.ev .verb{display:block;background:var(--soft);border-radius:6px;
 padding:7px 10px;line-height:1.85}
#p-oc td.ev .cnote{display:block;margin-top:6px;font-size:12px;color:var(--muted);
 line-height:1.8}
#p-oc td.ev .cnote b{display:inline-block;margin-right:6px;font-size:10.5px;
 font-weight:700;letter-spacing:.05em;color:var(--ink2);background:#fff;
 border:1px solid var(--line);border-radius:999px;padding:0 7px}

/* 網絡分頁的四個數字收成一行。原本每格是「標籤在上、數字在下」佔兩層，
   加上兩段說明整個頁首就有五、六層。 */
#p-net .kpi{gap:20px;margin:4px 0 12px;align-items:baseline}
#p-net .kpi>div{display:flex;align-items:baseline;gap:6px}
#p-net .kpi b{display:inline;font-size:17px;line-height:1.3}
#p-net .kpi span{display:inline;font-size:11.5px}
#p-net .netlead{margin:0 0 6px}

/* 右欄：控制項在上、節點面板緊接在下 */
.netcol{display:flex;flex-direction:column;gap:10px;min-width:0}
.netcol .side{position:static;flex:1;min-height:0;overflow-y:auto}
#p-net .ctl.netctl{margin:0}
/* 圖拉高一些，右欄才有位置把節點細節攤開 */
#p-net canvas{min-height:620px}
@media(max-width:900px){#p-net canvas{min-height:380px}}

/* 案件清單的一列：案號、案名、狀態各一層，與案件結構標註的清單同一套 */
#hList .it .z{font-weight:700;font-size:13px;color:var(--brand);line-height:1.5}
#hList .it .t{font-size:12.5px;line-height:1.6;margin-top:2px;color:var(--ink)}
#hList .it .m{font-size:11px;color:var(--muted);margin-top:4px;display:flex;
 gap:8px;flex-wrap:wrap;align-items:center}

/* 窄畫面：法官網絡原本硬留著 320px 的右欄，畫布被壓到 26px。
   改成上下堆疊，圖拿滿整個寬度。 */
@media(max-width:900px){
 #p-net .split{grid-template-columns:1fr!important}
 .netcol{width:auto}
 #p-net canvas{min-height:340px}
}

/* ── 案件歷程：橫向時間軸 ────────────────────────────────
   縱向＝一條原因案件從最早審級走到確定終局裁判，再到釋憲後的衍生裁判；
   橫向＝同一件釋憲案的多位聲請人各有一條軌道，上下並列即可比較。
   中央那條 .axis 是釋憲，左右分別是釋憲前與釋憲後。 */
.kpi .kpin{font-size:11.5px}
.tlhead{display:flex;flex-wrap:wrap;gap:14px;align-items:baseline;
 margin:14px 0 10px;padding-bottom:8px;border-bottom:1px solid var(--line);
 font-size:13px}
.tlhead b{font-size:16px;color:var(--brand)}
.track{margin:0 0 18px;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.tkh{display:flex;gap:10px;align-items:center;padding:7px 12px;
 background:var(--soft);font-size:13px}
.tkh .muted{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tkbody{display:flex;align-items:stretch;gap:0;padding:12px;overflow-x:auto}
.tkbody .side{display:flex;gap:10px;align-items:flex-start}
.tkbody .side.pre{flex-direction:row}
.tkbody .axis{flex:0 0 auto;align-self:stretch;width:0;margin:0 16px;
 border-left:2px dashed var(--brand);position:relative}
.tkbody .axis span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
 background:var(--brand);color:#fff;font-size:11px;padding:2px 7px;border-radius:9px;
 white-space:nowrap}
.tkbody .none{align-self:center;color:var(--muted);font-size:12px;white-space:nowrap}
.nd{flex:0 0 auto;width:230px;border:1px solid var(--line);border-radius:8px;
 padding:9px 11px;background:#fff;font-size:12.5px}
.nd.aft{background:#fdfaf4;border-color:#ecd9bd}
.nd.nolink{background:#fafafa}
.ndh{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}
.ndym{color:var(--muted);font-size:11.5px}
.ndno{font-weight:600;line-height:1.5;margin-bottom:5px}
.ndrow{color:var(--ink2);line-height:1.6}
.ndrow i{display:inline-block;width:2.6em;color:var(--muted);font-style:normal}
.ndj{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}
.ndj .jg{background:var(--soft);border-radius:4px;padding:1px 6px;font-size:11.5px}
.ndsrc{margin-top:7px;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.ndsrc .muted{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:820px){
  .tkbody{flex-direction:column}
  .tkbody .side{flex-direction:column;width:100%}
  .tkbody .axis{width:auto;height:0;margin:14px 0;border-left:0;
   border-top:2px dashed var(--brand);align-self:stretch}
  .nd{width:100%}
}

/* 案件歷審追蹤的檢索列。原本是一個沒有樣式的 input 加行內 style，
   跟主資料庫、意見書檢索完全不同套。改成同樣的兩排結構：
   第一排輸入，第二排把條件與筆數排在一起。 */
.ctl.hctl{display:block;padding:9px 10px}
.ctl.hctl .row{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.ctl.hctl .row+.row{margin-top:7px}
.ctl.hctl input[type=search]{flex:1;min-width:0;padding:8px 11px;font:inherit;
 font-size:13.5px;border:1px solid var(--line);border-radius:7px;background:#fff;
 color:var(--ink)}
.ctl.hctl input[type=search]:focus{outline:0;border-color:var(--brand)}
.ctl.hctl select{font:inherit;font-size:12px;padding:3px 5px;height:26px;
 border-radius:6px;border:1px solid var(--line);background:#fff;color:var(--ink2)}
.ctl.hctl select:focus{outline:0;border-color:var(--brand)}
.ctl.hctl .lnk{border:0;background:none;color:var(--brand);font:inherit;
 font-size:12px;cursor:pointer;padding:0 2px;text-decoration:underline;
 text-underline-offset:2px}
.ctl.hctl .lnk:hover{color:#84202f}
.ctl.hctl .cnt{margin-left:auto;font-size:11.5px;color:var(--muted);white-space:nowrap}
.ctl.hctl .cnt b{color:var(--brand);font-weight:700;font-size:12.5px}

/* 「僅裁判連結」這個標記塞在 dl 裡，而 dl 是兩欄格線，它佔掉一格就把
   後面所有 dt/dd 錯開一格——終結年月因此掉到下一列。讓它獨佔一整列。 */
.step dl .onlylink{grid-column:1/-1;justify-self:start}

/* 網絡的控制項與節點面板搬進左欄之後，圖就佔滿右邊整片。 */
#p-net .split{grid-template-columns:minmax(0,1fr)}
.rail .netcol{display:flex;flex-direction:column;flex:1;min-height:0}
.rail .netcol .ctl{flex:none}
.rail .netcol .side{flex:1;min-height:0;overflow-y:auto;border:0;width:auto;min-width:0}
#p-net .ctl.netctl{margin:0;border-bottom:1px solid var(--line)}
