/* 共用樣式：表單（外層彭立文世界）＋ 普查系統（GISP 風）＋ 第四章文件 */
:root{
  --accent:#5b4a8a; --page:#f2eef7; --card:#fff; --line:#dadce0;
  --fg:#202124; --dim:#5f6368; --red:#d93025; --paper:#eae4d6; --ink:#2a2622;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--page);color:var(--fg);
  font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",Roboto,Arial,sans-serif;
  font-size:15px;line-height:1.6;-webkit-text-size-adjust:100%}
.wrap{max-width:640px;margin:0 auto;padding:14px 12px 72px}
.card{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:22px 24px;margin:0 0 12px}
.card.head{border-top:10px solid var(--accent);padding-top:22px}
.head h1{font-size:30px;font-weight:400;line-height:1.3;margin:0 0 14px;letter-spacing:0}
.desc{font-size:14px;color:var(--dim);white-space:pre-line}
.req{color:var(--red);font-size:14px;margin-top:18px}
.sec{background:var(--card);border:1px solid var(--line);border-radius:8px;
  border-top:8px solid #cfc6e0;padding:16px 24px 18px;margin:0 0 12px}
.sec .n{font-size:12px;color:var(--dim);margin-bottom:6px}
.sec h2{font-size:22px;font-weight:400;margin:0 0 2px}
.sec .m{font-size:13px;color:var(--dim)}
.thumb{background:#f1f3f4;border:1px solid #e8eaed;border-radius:4px;
  display:flex;justify-content:center;align-items:center;padding:10px;margin:14px 0 0;position:relative;min-height:180px}
.thumb svg{width:150px;height:150px;display:block}
.thumb img{max-width:100%;max-height:420px;display:block;cursor:zoom-in;border-radius:2px}
.thumb .zoomhint{position:absolute;right:14px;bottom:14px;background:rgba(0,0,0,.55);
  color:#fff;font-size:11px;padding:3px 8px;border-radius:3px;pointer-events:none}
#lb{position:fixed;inset:0;background:rgba(0,0,0,.92);display:none;z-index:99;
  align-items:center;justify-content:center;padding:16px;cursor:zoom-out}
#lb.on{display:flex}
#lb img{max-width:100%;max-height:100%;object-fit:contain}
.q{font-size:16px;margin:0 0 16px;line-height:1.5}
.q .star{color:var(--red)}
.opt{display:flex;align-items:flex-start;gap:12px;padding:9px 0;cursor:pointer;font-size:15px}
.opt input[type=radio]{display:none}
.dot{width:19px;height:19px;border:2px solid #757575;border-radius:50%;flex:0 0 auto;margin-top:2px;position:relative;transition:.1s}
.opt.on .dot{border-color:var(--accent)}
.opt.on .dot::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--accent)}
.opt.other{align-items:center}
.line{border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--fg);
  font-family:inherit;font-size:15px;padding:6px 2px;width:100%;resize:none;line-height:1.6}
.line:focus{outline:none;border-bottom:2px solid var(--accent);padding-bottom:5px}
.line::placeholder{color:#9aa0a6}
.otherin{flex:1;max-width:280px}
.err{color:var(--red);font-size:13px;margin-top:10px;display:none;align-items:center;gap:6px}
.err.on{display:flex}
.err b{font-weight:400;border:1.5px solid var(--red);border-radius:50%;width:15px;height:15px;
  display:inline-flex;align-items:center;justify-content:center;font-size:11px;flex:0 0 auto}
.card.bad{border-color:var(--red)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:6px 2px 0}
.btn{background:var(--accent);color:#fff;border:0;border-radius:4px;padding:10px 26px;
  font-size:15px;font-family:inherit;cursor:pointer;letter-spacing:.03em}
a.btn{display:inline-block;text-decoration:none}
.btn:hover{filter:brightness(1.08);box-shadow:0 1px 3px rgba(0,0,0,.25)}
.lnk{background:none;border:0;color:var(--accent);font-size:14px;font-family:inherit;cursor:pointer;padding:8px}
.foot{color:#70757a;font-size:11.5px;line-height:1.7;margin:26px 4px 0}
.prog{height:4px;background:#e6e0ef;border-radius:2px;margin:16px 2px 0;overflow:hidden}
.prog i{display:block;height:100%;background:var(--accent);width:0;transition:width .25s}

/* ── 第四章文件 ── */
.doc{background:var(--paper);color:var(--ink);padding:34px 26px 40px;border-radius:2px;
  font-family:ui-monospace,"MingLiU","SimSun",monospace;font-size:13.5px;line-height:2;position:relative;box-shadow:inset 0 0 0 1px #cfc7b6}
.doc::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(0deg,rgba(0,0,0,.02) 0 1px,transparent 1px 3px)}
.doc h3{font-size:14px;margin:0 0 3px;letter-spacing:.28em;font-weight:700}
.docno{text-align:right;font-size:11.5px;color:#5c554c;margin:-20px 0 18px}
.rule{border-top:1px solid #a89f8e;margin:14px 0}
.fld{display:flex;gap:12px;font-size:12.5px}
.fld b{font-weight:400;color:#5c554c;min-width:6.2em;letter-spacing:.3em}
.pre{white-space:pre-wrap;margin:12px 0}
.ex{margin:0 0 14px}
.ex .qq{color:#5c554c}
.ex .aa{padding-left:1.6em;text-indent:-1.6em}
.seal{position:absolute;right:22px;bottom:22px;width:60px;height:60px;border:2px solid #9c3520;border-radius:50%;
  color:#9c3520;display:flex;align-items:center;justify-content:center;font-size:10px;letter-spacing:.16em;line-height:1.35;text-align:center;transform:rotate(-11deg);opacity:.6}
.cmp{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:4px}
.cmp h4{margin:0 0 10px;font-size:12px;color:var(--dim);font-weight:400}
.cmp .row{margin:0 0 8px;font-size:13.5px;color:#3c4043}
.attach{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--dim);margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid var(--line)}

/* ── 早期市府入口網（依 2004 台北市政府原始碼校準）──
   760px 表格版面／扁平色塊／#900000 深紅／#FFCC66 橘／12px 細明體。
   區塊標題原檔是 GIF（title-*.gif 159×20、410×33…），此處以 .gifbar 模擬。 */
.site2{width:760px;max-width:100%;margin:0 auto;background:#fff;color:#222222;
  font-family:"新細明體","PMingLiU","MingLiU","SimSun",serif;font-size:12px;line-height:20px}
/* 原檔連結：預設不加底線，hover 才變紅加底線 */
.site2 a{color:#0000aa;text-decoration:none}
.site2 a:visited{color:#505589}
.site2 a:hover{color:#aa0000;text-decoration:underline}
.site2-hd{display:flex;align-items:stretch}
/* 機關全銜也是切好的圖（見 site.js 的 oldLogo）。底色留著，圖沒載到時不會開天窗。 */
.site2-logo{flex:0 0 164px;min-height:101px;background:#900000;line-height:0}
.site2-logo img{display:block;width:164px;height:101px;border:0}
.site2-banner{flex:1;min-height:109px;display:flex;align-items:center;justify-content:center;
  background:#2a3f63;color:#9fb0c8;font-size:11px;position:relative;overflow:hidden}
/* 橫幅完整顯示，不裁切（圖上的字不能被切掉）。整條橫幅隨欄寬縮放。
   filter:url(#lowq) ＝ 跟按鈕同一條低畫質鏈（糊→銳化產生振鈴→砍色階），
   作用在真的照片上。這是整個頁面最像「1999 年用 Photoshop 存成品質 40 的 JPEG」的一塊。 */
.site2-banner .bnr{width:100%;height:auto;display:block;filter:url(#lowq)}
.site2-banner .brk{border:1px solid #7a8aa0;background:rgba(255,255,255,.06);padding:6px 12px}
.site2-banner .brk b{color:#c66;font-style:normal}
/* 分類按鈕：原檔為 85×15 GIF，滑過換圖 */
/* 導覽鈕是切好的圖（見 site.js 的 oldBtn）。這裡只負責排版，不負責長相。
   line-height:0 是為了消掉 <img> 的基線間隙——那個間隙本身也是那個年代的通病，
   但排成一列會歪掉，所以還是消掉。 */
.tabs{display:flex;align-items:flex-end;gap:0;background:#c9c9c9;padding:2px 6px 0;border-top:1px solid #fff}
.tabs a{display:block;line-height:0;border:0;padding:0;background:none}
.tabs a img{display:block;border:0}
.tabs a:hover img{filter:brightness(1.06)}
.redline{height:10px;background:#900000}
.obar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;
  background:#FFCC66;color:#333;font-size:12px;padding:3px 10px}
.marq{overflow:hidden;white-space:nowrap;background:#04120a;color:#37e07a;font-size:12px;padding:2px 0}
.marq b{display:inline-block;padding-left:100%;animation:mq 24s linear infinite}
@keyframes mq{to{transform:translateX(-100%)}}
.cols{display:flex;align-items:stretch;border-left:4px solid #900000;border-right:4px solid #900000}
.side{flex:0 0 160px;background:#eeeeee;padding:0 0 10px}
.cen{flex:1;padding:0 8px 14px;min-width:0;min-height:58vh}
.rt{flex:0 0 180px;padding:0 5px 10px;text-align:center}
/* 站內搜尋條（原檔 bgcolor #a0a0a0） */
.side-search{background:#a0a0a0;padding:5px;text-align:center}
/* 區塊標題＝GIF 模擬：固定高、扁平深色條、白字 */
/* 標題列：底色仍是儲存格的 bgcolor（漸層），三角形與字是切好的圖（見 site.js 的 oldBar）。
   圖不縮放，像素才留得住那個低畫質。 */
.gifbar{height:20px;line-height:20px;background:#8a8a8a;color:#fff;font-size:12px;font-weight:700;
  padding:0 8px;letter-spacing:.08em;margin:10px 0 0;overflow:hidden}
.gifbar[data-img]{display:flex;align-items:center;padding:0 6px}
.gifbar img{display:block;border:0}
.side .gifbar{background:linear-gradient(90deg,#7a7a7a,#b9b9b9)}
.cen .gifbar{height:27px;line-height:27px;font-size:14px;background:linear-gradient(90deg,#900000,#c86a6a);
  font-family:"標楷體","DFKai-SB","BiauKai",serif;letter-spacing:.12em}
.rt .gifbar{background:linear-gradient(90deg,#6a6a8a,#a8a8c0)}
/* 區塊收尾小圖（原檔 title-view1.gif 170×9 之類） */
.gifcap{height:9px;background:linear-gradient(90deg,#cfcfcf,#efefef);margin:0 0 6px}
/* 側欄活動 banner：一張疊一張，中間只留 1px，跟參考站一樣擠。 */
.adcol{padding:6px 0;text-align:center}
.adcol a{display:block;line-height:0;margin-bottom:1px}
.adcol img{display:block;margin:0 auto;border:0}
.lst{padding:4px 8px}
.lst a,.lst .dead{display:block;padding:2px 0;line-height:20px}
.lst a::before,.lst .dead::before{content:"";display:inline-block;width:8px;height:8px;margin-right:5px;
  background:#e08000;vertical-align:0}
.lst .dead{color:#999;cursor:default}
.lst .dead::before{background:#bbb}
.lst .on{color:#900000;font-weight:700}
.sbanner{display:block;height:40px;line-height:40px;border:1px solid #bbb;background:#e6e6e6;color:#666;
  text-align:center;margin:0 5px 4px;font-size:12px}
.sbanner.brk{color:#b66;border-style:dashed;border-color:#c99;background:#f7f0f0}
.cen p{margin:0 0 8px;line-height:20px}
.cen .content{color:#333;line-height:18px}
.title-cell{color:#9C404D;font-size:12px}
/* 右欄萬象方塊：交錯 #FEFAC5 / #eeeeee，左側 24×24 圖示 */
.wx{display:flex;align-items:center;gap:6px;padding:4px 6px;font-size:12px;text-align:left;line-height:18px}
.wx:nth-child(odd){background:#FEFAC5}
.wx:nth-child(even){background:#eeeeee}
.wx i{width:24px;height:24px;border:1px solid #bbb;font-style:normal;display:inline-block;flex:0 0 24px;background:#fff}
.wx .g{background:#8bc34a}.wx .y{background:#ffd24a}.wx .r{background:#e57373}
.rtbox{border:1px solid #C0C0C0;margin:0 0 4px;background:#fff}
.poll{font-size:12px;padding:8px 4px}
.poll .q{margin-bottom:6px}
.site2-ft{background:#900000;color:#aaaaaa;text-align:center;font-size:12px;padding:5px 6px;height:24px;line-height:14px}
.site2-ft a{color:#ffffff}
.site2-ft a:hover{color:#ffd7d7}
.site2-ftx{text-align:center;font-size:12px;color:#222;padding:10px;line-height:20px;background:#fff}
.site2-ftx a{color:#0000FF}
/* 內容元件（淺色政府風） */
.db-tb{width:100%;border-collapse:collapse;background:#fff;border:1px solid #c9d49a;margin:0 0 6px}
.db-tb th{background:#d8e4f5;color:#2a3a6a;border:1px solid #b9c48f;padding:5px 10px;text-align:left;font-weight:700;font-size:12px}
.cat-grp{color:#5a7a2a;font-weight:700;margin:12px 0 4px}
a.cat-row{display:flex;align-items:center;gap:12px;padding:7px 9px;border:1px solid #e0e6c4;border-top:none;
  background:#fff;text-decoration:none;color:#1a1a1a}
.cat-grp + a.cat-row{border-top:1px solid #e0e6c4}
a.cat-row:hover{background:#fbfce8}
.cat-row .th{flex:0 0 44px}
.cat-row .th img{width:44px;height:58px;object-fit:cover;border:1px solid #999;display:block}
.cat-row .th .miss{width:44px;height:58px;border:1px dashed #c06;color:#b03030;background:#fff2f2;font-size:9px;
  display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.2}
.cat-row .cid{flex:0 0 96px;color:#1a1ac0;text-decoration:underline}
.cat-row .cid.gone{color:#b03030}
.cat-row .cnm{flex:1;font-size:13px}
.big{width:100%;max-width:420px;display:block;margin:0 auto 14px;border:1px solid #999}
.db-bigmiss{width:100%;max-width:420px;height:130px;border:1px dashed #c06;color:#b03030;background:#fff2f2;
  display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font-size:12px}
.db-fields{font-size:13px;line-height:2;background:#fff;border:1px solid #c9d49a;padding:8px 12px}
.db-fields .k{color:#5a7a2a;display:inline-block;min-width:5em;font-weight:700}
.db-gone{color:#b03030}
.db-back{display:inline-block;background:#e9e9e9;border:1px solid #888;color:#1a1ac0;font-family:inherit;
  font-size:12px;padding:4px 12px;cursor:pointer;margin-bottom:12px;text-decoration:none}
.gb{border-bottom:1px dotted #b9c48f;padding:8px 2px;font-size:13px;line-height:1.7}
.gb .who{color:#5a7a2a;font-weight:700}.gb .when{color:#999;font-size:11px;margin-left:6px}
.il{color:#1a1ac0;text-decoration:underline;cursor:pointer}
.dead{color:#aaa;text-decoration:line-through}
.mk{color:#b03030;font-size:12px}
.note-do{color:#5a7a2a;font-size:11.5px;margin-top:6px}
@media(max-width:560px){.cmp{grid-template-columns:1fr;gap:2px}.head h1{font-size:24px}
  .card,.sec{padding-left:16px;padding-right:16px}.doc{padding:24px 15px 34px;font-size:12.5px}
  .gov-banner{font-size:15px;letter-spacing:.12em}.gov-main{padding:12px}}

/* 外層彭立文回筆記細條（在文化局站台之上，現代感） */
.peng-strip{background:#efeaf7;border:1px solid #d7cdea;border-radius:6px;padding:8px 14px;margin:0 0 12px;font-size:13px}
.peng-strip a{color:#5b4a8a;text-decoration:none;font-weight:600}
.peng-strip a:hover{text-decoration:underline}
/* 麵包屑（深埋導覽） */
.crumb{font-size:12px;margin:0 0 12px;color:#5a7a2a}
.crumb a{color:#1a1ac0;text-decoration:underline}
.crumb .sep{color:#9ab;margin:0 5px}

/* ══ 舊網頁殼：文化局站台脫離表單的現代底，換成 2000 年代舊 web ══
   body.oldweb 只加在有呼叫 govChrome 的頁（首頁/社造/著錄/明細/公告…）。
   表單、彭立文、第四章不受影響，維持現代感做對比。 */
/* 舊網頁桌面：灰底、三欄站台置中（980px）、全襯明體 */
body.oldweb{background:#d3d4cb;font-family:"新細明體","PMingLiU","MingLiU","SimSun",serif}
body.oldweb .wrap{max-width:none;width:auto;margin:0;padding:12px 0 40px}
/* 壞掉的訪客計數器（CGI 計數伺服器早死了）——沒有人在數了 */
.cnt-x{display:inline-flex;align-items:center;gap:5px}
.cnt-x i{width:13px;height:13px;border:1px solid #b98;background:#fff;color:#c00;font-style:normal;
  font-size:10px;line-height:12px;text-align:center;flex:0 0 13px}
/* 施工中閃字 */
.blink{animation:bl 1.1s steps(1,end) infinite;color:#ffd7d7;font-weight:700}
@keyframes bl{50%{opacity:0}}
/* 越深越腐朽：社造→壁畫那一支，中欄轉灰、變暗、橫幅褪色 */
body.oldweb.deep .cen{background:#e7e7dc;filter:saturate(.72) brightness(.97)}
body.oldweb.deep .site2-banner{filter:brightness(.7) saturate(.5)}
body.oldweb.deep .site2{box-shadow:0 0 0 1px #999}
.decay-note{color:#8a8a78;font-size:11px;margin-top:16px;border-top:1px dotted #bbb;padding-top:8px}

/* 手機：三欄改直堆（舊站台本來是固定寬，窄螢幕才堆疊以利閱讀） */
@media(max-width:720px){
  .cols{flex-wrap:wrap}
  .side,.rt{flex:1 1 100%;border:0;border-top:1px solid #ddd}
  .cen{flex:1 1 100%}
  .tabs{flex-wrap:wrap}
  .site2-logo{flex-basis:130px}
}

/* Win9x/2000 表單控制項：立體斜角灰鈕、內凹輸入框（老站台的按鈕記憶點） */
.site2 button{font-family:"新細明體","PMingLiU","MingLiU",serif;font-size:12px;padding:2px 13px;color:#000;
  background:#dcdcd4;border:2px solid;border-color:#fff #7a7a72 #7a7a72 #fff;border-radius:0;cursor:pointer}
.site2 button:active{border-color:#7a7a72 #fff #fff #7a7a72}
.site2 input,.site2 select{font-family:"新細明體","PMingLiU","MingLiU",serif;font-size:12px;padding:2px 5px;color:#000;
  background:#fff;border:2px solid;border-color:#7a7a72 #e6e6de #e6e6de #7a7a72;border-radius:0}

/* 「虛構作品」聲明——避免這個仿真政府站被誤認為真。
   ⚠ 不再固定懸浮：它會蓋住頁面內容，也一直在提醒玩家「這是作品」。
   改成頁面最底下的一行，跟著內容捲，透明度 30%。捲到底才看得到，但一定看得到。 */
#disclaimer{margin:56px 0 0;padding:14px 8px 22px;opacity:.15;
  text-align:center;font-size:10.5px;line-height:1.6;
  font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;
  color:inherit;background:none;pointer-events:none}
/* 兩個全螢幕頁面（迷宮、監視器）body 是 overflow:hidden，聲明掛在底部會被裁掉。
   把主容器縮 34px，讓聲明待在那條底邊裡——仍在流內，不是懸浮。 */
body.kuogame #disclaimer,body.cam #disclaimer{margin:0;padding:8px 8px 6px;font-size:10px}
body.kuogame .wrap,body.cam .wrap{height:auto}
.kg{height:calc(100vh - 34px)}
.camwrap{height:calc(100vh - 34px)}

/* ══ Wayback Machine 工具列（整個站台定調為 2003 年的封存快照）══ */
#wm{background:#f5f5f5;border-bottom:1px solid #bbb;font-family:Helvetica,Arial,sans-serif;
  font-size:11px;color:#333;padding:5px 8px 4px}
#wm .row{display:flex;align-items:center;gap:10px;max-width:1100px;margin:0 auto;flex-wrap:wrap}
#wm .logo{font-weight:700;font-size:13px;color:#000;letter-spacing:-.03em;white-space:nowrap}
#wm .logo em{font-style:normal;color:#666;font-weight:400;font-size:10px;display:block;letter-spacing:0}
#wm .url{flex:1;min-width:180px;display:flex;gap:4px}
#wm .url input{flex:1;font-family:inherit;font-size:11px;padding:2px 5px;border:1px solid #aaa;background:#fff;color:#333;border-radius:0}
#wm .url button{font-family:inherit;font-size:11px;padding:2px 9px;border:1px solid #aaa;background:#e8e8e8;color:#333;border-radius:0;cursor:default}
#wm .caps{white-space:nowrap;line-height:1.35}
#wm .caps a{color:#1a5fb4;text-decoration:none}
#wm .caps .rng{color:#777;font-size:10px}
#wm .spark{flex:0 0 210px;height:26px;background:
  repeating-linear-gradient(90deg,#dfe6ee 0 2px,transparent 2px 9px);border-bottom:1px solid #ccc;position:relative}
#wm .spark i{position:absolute;bottom:0;width:3px;background:#1a5fb4}
#wm .when{white-space:nowrap;text-align:center;line-height:1.15;color:#444}
#wm .when b{display:block;font-size:19px;color:#000;font-weight:400}
#wm .when s{display:block;font-size:10px;color:#888;text-decoration:none}
#wm .note{max-width:1100px;margin:4px auto 0;color:#777;font-size:10px;text-align:center}
@media(max-width:640px){#wm .spark,#wm .caps{display:none}}

/* Wayback「未封存」錯誤頁 */
.wberr{max-width:640px;margin:40px auto;padding:22px;border:1px solid #ddd;background:#fff;
  font-family:Helvetica,Arial,sans-serif;color:#333;font-size:13px;line-height:1.75}
.wberr h2{font-size:17px;margin:0 0 12px;color:#000;font-weight:600}
.wberr code{background:#f4f4f4;padding:1px 5px;font-size:12px;word-break:break-all}
.wberr .hint{color:#777;font-size:12px;margin-top:14px;border-top:1px solid #eee;padding-top:12px}
.wberr a{color:#1a5fb4}

/* Wayback 快照切換箭頭 */
#wm .when{display:flex;align-items:center;gap:6px}
#wm .when b{font-size:19px}
#wm .when .nav{font-size:15px;color:#1a5fb4;text-decoration:none;padding:0 2px}
#wm .when .nav.off{color:#ccc}
/* 伺服器目錄瀏覽（Index of /）——早期站台常忘了關 */
.idx{background:#fff;font-family:ui-monospace,"Courier New",monospace;font-size:12.5px;line-height:1.9;color:#111}
.idx h4{font-family:inherit;font-size:15px;margin:0 0 8px;font-weight:700}
.idx table{border-collapse:collapse;width:100%}
.idx td{padding:1px 12px 1px 0;white-space:nowrap}
.idx td.nm{white-space:normal}
.idx a{color:#0000ee}
.idx .hr{border-top:1px solid #999;margin:6px 0}

/* 真實破圖：不加任何裝飾，讓瀏覽器自己畫破圖示＋alt 文字。
   只用 width/height 屬性撐出當年的版位（老 HTML 都會寫死尺寸）。 */
.site2 img.brokenimg{border:0;color:#777;font-size:12px;font-family:"新細明體",serif;
  background:transparent;vertical-align:top}

/* ══ 彭立文加密通訊頻道（外層真人，取代自動刷新的進度偵測）══
   玩家打關鍵字回報 → 打得出編號/名字/數字＝證明真的找到了。無監視、無自動更新。 */
.term{background:#0b0f0c;color:#c8d6c8;border:1px solid #1e2a1e;border-radius:6px;
  max-width:640px;margin:0 auto;overflow:hidden;
  font-family:ui-monospace,"Consolas","Courier New",monospace}
.term-hd{background:#111a12;color:#5fae7a;font-size:11px;padding:7px 11px;border-bottom:1px solid #1e2a1e;
  display:flex;justify-content:space-between;align-items:center;letter-spacing:.05em}
.term-hd .lock::before{content:"🔒 ";}
.term-hd .stat{color:#3ecf6a;font-size:10px}
.term-hd .stat b{display:inline-block;width:7px;height:7px;border-radius:50%;background:#3ecf6a;
  margin-right:5px;vertical-align:0;animation:blip 2.4s ease-in-out infinite}
@keyframes blip{0%,100%{opacity:1}50%{opacity:.3}}
.term-log{padding:14px;min-height:300px;max-height:56vh;overflow-y:auto;font-size:13px;line-height:1.7}
.msg{margin:0 0 13px;max-width:86%;white-space:pre-wrap;word-break:break-word}
.msg .nm{font-size:9.5px;letter-spacing:.14em;opacity:.7;display:block;margin-bottom:3px}
.msg.p{color:#cfe0cf}
.msg.p .nm{color:#5fae7a}
.msg.me{margin-left:auto;text-align:right;color:#e0c48f}
.msg.me .nm{color:#b08a3a}
.msg.sys{color:#5a6a5a;font-size:11px;text-align:center;max-width:100%;letter-spacing:.05em}
.msg.p a{color:#7fd6a0;text-decoration:underline}
.term-in{display:flex;border-top:1px solid #1e2a1e;background:#0e140f}
.term-in input{flex:1;background:transparent;border:0;color:#e6f0e6;font-family:inherit;font-size:13px;padding:11px 12px}
.term-in input::placeholder{color:#3a4a3a}
.term-in input:focus{outline:none}
.term-in button{background:#152016;border:0;border-left:1px solid #1e2a1e;color:#5fae7a;
  font-family:inherit;font-size:13px;padding:0 18px;cursor:pointer;letter-spacing:.1em}
.term-in button:hover{background:#1c2a1d;color:#8fd6a0}
.term-note{max-width:640px;margin:10px auto 0;color:#70757a;font-size:11.5px;text-align:center;line-height:1.7}

/* ══ py.exe 風加密終端機（彭立文的加密客戶端）══ */
/* 老終端機＝單色高彩度磷光綠 · 純黑 · 方角（不用圓角）· 一點 CRT 光暈 */
/* 全螢幕：整個視窗都是這台機器，不露出外層那張粉紅色的紙。 */
html.pyfull,body.pyfull{background:#000;margin:0;min-height:100%}
body.pyfull{min-height:100vh;padding:14px 14px 0;box-sizing:border-box}
body.pyfull .wrap{max-width:1100px;width:100%;margin:0 auto;padding:0}
body.pyfull #disclaimer{background:none;color:#00a82c}
body.pyfull .term-note{color:#00a82c}
body.pyfull .pywin{margin-top:0}
body.pyfull .pyterm{min-height:calc(100vh - 128px);max-height:none}
.pywin{background:#000;border:1px solid #00d838;overflow:hidden;margin-top:8px}
.pytitle{background:#141414;color:#cfcfcf;font-family:"Segoe UI",system-ui,sans-serif;font-size:12px;
  padding:5px 10px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #000}
.pytitle .dots{color:#888;letter-spacing:2px}
.pyterm{background:#000;color:#00ff41;font-family:"Consolas","新細明體","PMingLiU","MingLiU",monospace;
  font-size:14px;line-height:1.55;padding:12px 14px;min-height:70vh;max-height:82vh;overflow-y:auto;
  text-shadow:0 0 2px currentColor}
.pyart{color:#00ff41;white-space:pre;font-size:11px;line-height:1.15;margin:0 0 6px}
.pyln{white-space:pre-wrap;word-break:break-word}
.pyln.sys{color:#00b833}
.pyln.ok{color:#5bff7d}
.pyln.warn{color:#ffb000}
.pyln.err{color:#ff2b2b}
.pyln.key{color:#009926;word-break:break-all}
.pyln.p{color:#00ff41}
.pyln.p .ts{color:#0a8f2c}
.pyln.me{color:#00ff41}
.pyprompt{display:flex;align-items:baseline;gap:8px;margin-top:8px}
.pyprompt .ps{color:#00ff41;white-space:nowrap}
.pyprompt input{flex:1;background:transparent;border:0;color:#00ff41;font-family:inherit;font-size:13px;
  padding:2px 0;caret-color:#00ff41;text-shadow:0 0 2px currentColor}
.pyprompt input:focus{outline:none}
.pyterm a{color:#5bff7d}
/* 終端機分頁列：收到那個檔案之後才出現 */
.pytabbar{display:flex;gap:1px;background:#0a0a0a;border-bottom:1px solid #00d838;padding:0 4px}
.pytab{background:#000;color:#0a8f2c;border:1px solid #063;border-bottom:0;cursor:pointer;
  font-family:"Consolas","新細明體",monospace;font-size:12px;padding:4px 14px;margin-top:4px}
.pytab:hover{color:#00ff41}
.pytab.on{background:#00190a;color:#00ff41;border-color:#00d838}
/* 真相那一份：整份一次到位，行距放寬，讀得下去 */
.pydoc{color:#00ff41;font-size:13px}
.pydoc-head{color:#0a8f2c;margin-bottom:6px}
.pydoc-meta{color:#0a8f2c;font-size:12px;line-height:1.7;border-bottom:1px solid #063;
  padding-bottom:8px;margin-bottom:14px}
.pydoc-p{margin:0 0 1.05em;line-height:2;white-space:pre-wrap;word-break:break-word;text-indent:0}
.pydoc-eof{color:#0a8f2c;margin:18px 0 0}
/* 贊助：作品外的東西，就長得像作品外的東西。灰的、小的、不發光、不用終端機字體。 */
.pydoc-donate{position:fixed;right:14px;bottom:10px;z-index:40;text-align:right}
.pydoc-donate a{color:#4a4f52;font-family:system-ui,"Noto Sans TC",sans-serif;font-size:11px;
  text-decoration:none;border-bottom:1px solid #2e3234;padding-bottom:1px}
.pydoc-donate a:hover{color:#7d8488;border-color:#4a4f52}
/* 那兩個字。前面幾階完全看不出來，到後面才開始溢出行外。 */
.fic{transition:color 2.4s linear,text-shadow 2.4s linear}
.fic.n4,.fic.n5{color:#7dff9c}
.fic.n6,.fic.n7{color:#b9ffc9;text-shadow:0 0 6px rgba(120,255,160,.35)}
.fic.n8,.fic.n9{color:#e8fff0;text-shadow:0 0 10px rgba(150,255,190,.55)}
.fic[data-open]{text-decoration:underline}
/* 它說話的地方 */
#itv{position:fixed;inset:0;z-index:99999;background:#000;opacity:0;
  transition:opacity 3.2s linear;display:flex;align-items:center;justify-content:center;
  cursor:default}
#itv.on{opacity:1}
.itv-t{color:#4b4b4b;font:10px/2.4 Consolas,monospace;letter-spacing:.6px;text-align:left}
.itv-t p{margin:0}
.pydoc-after{border-top:1px solid #063;margin-top:16px;padding-top:12px}
.pydoc-after .pyln{margin-bottom:6px}
.blink{animation:bk 1.1s step-end infinite}
@keyframes bk{50%{opacity:0}}

/* 隱藏文字：平時與粉色頁底同色（看不見），只有實際圈選到時，原生反白才透出來 */
#hid{color:var(--page)}
#hid::selection,#hid *::selection{color:#202124;background:#c7deff}
#hid a{color:var(--page)}




/* ── 海墘日報（外站）── 照 2000 年代台灣地方新聞網「照片報頭＋三欄密集＋高彩度」還原 */
body.news{background:#fff;font-family:"新細明體","PMingLiU",serif;color:#000;font-size:15px}
body.news .wrap{max-width:none;width:auto;margin:0;padding:0 0 24px}
.np{width:1000px;max-width:100%;margin:0 auto;background:#fff}

/* 報頭：照片帶＋白色描邊標楷體報名＋右側鉻面年份 */
/* 報頭：整條是一張切好的圖（assets/news.png，報名＋網址＋年份都燒在裡面）。
   底色留著當破圖時的墊底。輕度降質，跟站上其他圖同一個調。 */
/* ⚠ 不設固定高度、不用 object-fit、不 overflow:hidden——報頭整張要完整顯示，不得裁切。
   width:100% ＋ height:auto ＝ 等比縮放，右邊那個「1994」和左下角網址都不會被切掉。 */
.np-top{position:relative;line-height:0;
  background:linear-gradient(100deg,#4a6b3a 0%,#6d8a52 18%,#8fa06a 34%,#5f7f8e 52%,#3f5f72 70%,#2c4b5e 100%)}
.np-top img{display:block;width:100%;max-width:100%;height:auto;border:0;
  object-fit:fill;filter:blur(.3px) contrast(1.1) saturate(.95)}

/* 報社頁的按鈕與標題已改為圖片（見 site.js 的 npImg）：清掉原本的文字樣式，只留排版。 */
.np-nav .m[data-img],.np-cat[data-img],.np-rh[data-img],.np-h2[data-img],
.np-box .h[data-img],.np-mitem[data-img]{
  background:none;border:0;padding:0;color:inherit;line-height:0;display:inline-block}
.np-nav .m[data-img] img,.np-cat[data-img] img,.np-rh[data-img] img,.np-h2[data-img] img,
.np-box .h[data-img] img,.np-mitem[data-img] img{display:block;border:0}
.np-mitem[data-img]{display:block;margin:2px 0}
.np-mitem[data-img]:before{content:none}
.np-rh[data-img]{margin:6px 0 2px}
.np-h2[data-img]{margin:14px 0 6px}
.np-cat[data-img]{margin-bottom:4px}

/* 導覽：亮藍大字，滑過變紅 */
.np-nav{background:#fff;border-bottom:1px solid #9cc;padding:6px 8px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.np-live{background:#cfe9ff;border:1px solid #3c9;padding:2px 8px;font-size:14px;color:#00c}
.np-live em{font-style:normal;color:#0c0;font-weight:700}
.np-nav span.m{font-size:16px;color:#333;cursor:default}
.np-nav span.m:hover{color:red}
.np-nav .srch{margin-left:auto;display:flex;align-items:center;gap:4px}
.np-nav .srch input{border:2px solid #06c;height:22px;font-size:13px;width:120px}
.np-nav .srch .go{background:#e60;color:#fff;border-radius:9px;padding:2px 9px;font-size:12px;font-weight:700}

/* 計數器條 */
.np-cnt{background:#3d92ec;color:#fff;text-align:center;font-size:15px;padding:3px 0;letter-spacing:2px}
.np-cnt em{font-style:normal;color:#8f8;font-weight:700}

.np-main{display:flex;align-items:flex-start;gap:8px;padding:8px}
.np-left{flex:0 0 250px}
.np-col{flex:1;min-width:0}
.np-right{flex:0 0 230px}

/* 左欄：藍框公告 ＋ ■ 彩色方塊選單 */
.np-box{border:2px solid #06c;background:#f0f8ff;padding:8px;margin-bottom:8px}
.np-box .h{color:red;font-size:14px;text-align:center;margin-bottom:6px}
.np-box p{margin:0 0 6px;font-size:13.5px;line-height:1.75;color:#333}
.np-box p b{color:#c00}
.np-mitem{border:1px solid #9cf;background:#eaf4ff;padding:5px 8px;margin-bottom:4px;font-size:15px;color:#00c}
.np-mitem i{font-style:normal;margin-right:6px}

/* 中欄：【】標題、藍白交替列、綠點、作者欄 */
.np-h2{font-size:19px;color:#00c;font-weight:700;margin:10px 0 4px;font-family:"標楷體","DFKai-SB",serif}
.np-h2 s{text-decoration:none;color:red;font-size:13px;font-weight:400;font-family:"新細明體",serif;margin-left:6px}
.np-list{width:100%;border-collapse:collapse;margin-bottom:8px}
.np-list td{padding:6px 6px;font-size:15px;border-bottom:1px solid #cfe6f5}
.np-list tr:nth-child(odd){background:#d9ecff}
.np-list .d{color:#666;font-size:13px;width:78px;white-space:nowrap}
.np-list .t{color:#00c}
.np-list .t:before{content:"●";color:#0c0;font-size:11px;margin-right:5px}
.np-list .a{color:#555;font-size:13px;width:66px;text-align:right;white-space:nowrap}
.np-top1{background:#c00;color:#fff;font-family:"標楷體","DFKai-SB",serif;font-size:22px;
  padding:5px 10px;border:2px solid #000;margin:8px 0}
.np-top1 b{background:#fff;color:#c00;padding:0 8px;margin-right:10px}

.np-cat{background:#3d92ec;color:#fff;display:inline-block;padding:2px 12px;font-size:14px;letter-spacing:2px}
.np-h1{font-family:"標楷體","DFKai-SB",serif;font-size:33px;font-weight:700;color:#c00;
  line-height:1.4;margin:8px 0 8px;border-bottom:2px solid #3d92ec;padding-bottom:8px}
.np-by{font-size:14px;color:#333;margin-bottom:14px;background:#ffe9a8;border-left:5px solid #e60;padding:5px 10px}
.np-col p.body{font-size:16.5px;line-height:2.1;color:#111;margin:0 0 14px;text-align:justify;text-indent:2em}
.np-end{color:#666;font-size:14px;text-align:right;text-indent:0}

/* 右欄：黃底回應串 */
.np-rh{background:#ffe9a8;border:1px solid #e0c46a;color:#c00;font-size:15px;padding:3px 8px;margin-bottom:2px}
.np-ritem{font-size:15px;color:#0a0;padding:4px 6px;border-bottom:1px dotted #ddd;line-height:1.5}
.np-ritem:before{content:"♟";color:#48c;margin-right:5px;font-size:12px}
.np-ritem.hl{background:#ffffcc}

.np-ft{background:#eef6fb;border-top:3px solid #3d92ec;padding:10px;font-size:12.5px;color:#555;line-height:1.9;text-align:center}

/* 文化局那邊的影像紀錄頁 */
.imgcard{border:1px solid #999;padding:10px;background:#fafafa;margin:8px 0}
.imgcard img{max-width:100%;display:block;border:1px solid #ccc}
.imgcard .cap{font-size:13px;color:#444;margin-top:8px;line-height:1.8}

/* ── 海墘縣輔導網路（外站）── 照 2000 年前後縣級輔導網站：740 寬、薄荷底 #D7F9F4、
   圖檔式標題帶、分頁式選單、黃三角項目符號、藍字無底線、橘色日期＋月曆、底部三層色條 */
body.gc{background:#fff;font-family:"新細明體","PMingLiU",serif;color:#000;font-size:15px}
body.gc .wrap{max-width:none;width:auto;margin:0;padding:0 0 20px}
body.gc a{text-decoration:none;color:#0000FF}
body.gc a:hover{text-decoration:underline;color:#c00}
.gc{width:740px;max-width:100%;margin:0 auto}

/* 標題帶：底層天空是 SVG（gcBanner），上層拱形標題是 assets/gc-title.png。
   ⚠ 三個對位旋鈕都在這裡：.gc-title 的 left / top / height。
     PNG 四周有大量白邊，top 取負值是為了把拱形字塊拉進版面，overflow:hidden 切掉其餘。 */
.gc-ban{position:relative;height:108px;overflow:hidden;line-height:0;
  background:linear-gradient(160deg,#eaf7fd 0%,#cfeefb 30%,#a9e0f6 60%,#cfeefb 100%)}
.gc-ban .gc-sky{display:block;width:100%;height:108px;border:0;
  object-fit:cover;object-position:left top}
/* ⚠ 不要用 filter:url(#lowq)：那個 id 一旦找不到，瀏覽器會把整個元素當成不渲染（整張圖消失），
   而不是「不套濾鏡」。這裡改用一定不會失敗的原生濾鏡做同樣的降質。 */
.gc-ban .gc-title{position:absolute;left:206px;top:-24px;height:150px;width:auto;border:0;
  mix-blend-mode:multiply;filter:blur(.35px) contrast(1.12) saturate(.92)}

/* 分頁式選單列：每一顆都是切好的圖（見 site.js 的 gcTab），選中的那顆綠底黃字。 */
/* 740 寬裝得下：七顆＋MAIL。min-width:0 讓萬一還是太擠時可以縮，不要把 MAIL 推出界。 */
.gc-menu{display:flex;align-items:flex-end;background:#bfe6f5;border-top:1px solid #fff;
  padding:2px 4px 0;overflow:hidden}
.gc-menu a{min-width:0;flex:0 1 auto}
.gc-menu a{line-height:0;margin-right:2px;background:none;border:0;padding:0;display:block}
.gc-menu a img{display:block;border:0}
.gc-menu a:hover img{filter:brightness(1.06)}
.gc-menu a.mail{margin-left:auto;margin-right:0}
/* 輔導網其餘分頁的內容樣式 */
.gc-h{font-size:16px;font-weight:700;color:#0a3a6a;margin:14px 0 6px;
  border-left:6px solid #3fa0d0;padding-left:8px}
.gc-tb{border-collapse:collapse;width:100%;margin:6px 0 10px;font-size:14px}
.gc-tb th{background:#cfeaf5;border:1px solid #8fb6c8;padding:3px 6px;white-space:nowrap}
.gc-tb td{border:1px solid #bcd6e2;padding:3px 6px}
.gc-dead{color:#999}
.gc-note{font-size:13px;color:#666;margin:6px 0 14px}
.gc-ul{margin:6px 0 10px;padding-left:22px;line-height:2}
.gc-sysbox{border:2px ridge #a9c8d8;background:#f2fbfd;padding:10px 12px;margin:8px 0;line-height:1.9}
.gc-err{color:#c00}

/* HOME 條：紅三角＋訪客人數 */
.gc-home{background:#D7F9F4;display:flex;align-items:center;padding:6px 10px;font-size:17px;font-weight:700}
.gc-home .tri{color:#e00;font-size:20px;margin-right:10px}
.gc-home .cnt{margin-left:auto;font-weight:400;font-size:15px}
.gc-home .cnt em{font-style:normal;font-family:monospace;background:#000;color:#0f0;padding:1px 5px;letter-spacing:2px}

/* 主體：左側直排站名 ＋ 內容 */
.gc-wrap{display:flex;background:#D7F9F4}
.gc-side{flex:0 0 34px;padding:14px 0 0;text-align:center;font-size:15px;color:#1a2f9e;line-height:1.5;
  writing-mode:vertical-rl;text-orientation:upright;letter-spacing:3px}
.gc-in{flex:1;min-width:0;padding:8px 10px 14px}
.gc-date{color:#FF8000;font:700 14px Arial,sans-serif;margin-bottom:6px}
.gc-cal{border:2px solid #000;border-collapse:collapse;margin-bottom:10px;background:#fff}
.gc-cal td{border:1px solid #999;padding:1px 5px;font:13px Arial,sans-serif;text-align:center;min-width:22px}
.gc-cal .sun{color:#FF0000}.gc-cal .sat{color:#53a6a6}
.gc-cal .today{font-weight:700;text-decoration:underline}

/* 黃三角項目 */
.gc-li{background:#D7F9F4;padding:5px 0 5px 8px;font-size:16px;border-bottom:1px solid #cfeee9}
.gc-li .t{color:#e8b200;margin-right:8px}
/* 內容區 */
.gc-h{background:#2D9EDB;color:#fff;font-size:15px;padding:3px 10px;margin:14px 0 8px;letter-spacing:2px}
.gc-h:first-child{margin-top:4px}
.gc .meta{background:#fff;border:1px solid #9ccfd8;padding:8px 12px;font-size:14.5px;line-height:1.9;margin-bottom:12px}
.gc p{font-size:15.5px;line-height:2;margin:0 0 12px;text-align:justify}
.gc-tb{width:100%;border-collapse:collapse;margin-bottom:10px;background:#fff}
.gc-tb th{background:#bfe6f5;border:1px solid #8fb6c8;padding:5px 8px;font-size:14px;color:#123;text-align:left}
.gc-tb td{border:1px solid #b9dbe3;padding:6px 8px;font-size:14.5px}
.gc-srch{background:#fff;border:1px solid #9ccfd8;padding:8px 12px;margin-bottom:12px;font-size:14.5px}
.gc-srch input{height:22px;font-size:14px;width:180px}
.gc-note{color:#555;font-size:13.5px;line-height:1.9}

/* 頁尾：紫字＋三層色條 */
.gc-ft{background:#D7F9F4;text-align:center;padding:8px 10px;font-size:14px;color:#400040;line-height:1.9}
.gc-ft .ie{color:#400080;font-size:12.5px}
.gc-bar1{height:8px;background:#98DCF5}
.gc-bar2{height:3px;background:#D7F9F4}
.gc-bar3{height:12px;background:#2D9EDB}

/* 假遮蔽：黑框只是疊在圖上的一層，原圖完整存在。移除這個元素就還原了。 */
.redactwrap{position:relative;display:inline-block;line-height:0}
.redactwrap img{display:block;max-width:100%;border:1px solid #999}
.redactbox{position:absolute;background:#000}

/* ── 個資／敏感遮蔽：塗黑（黑底黑字）。反白／全選或檢視原始碼可還原下面的字。
   沿用全站遮蔽母題——輔導報告依規定把案主姓名（＝彭立文）遮掉，
   最不忍的那句「皮膚不見了」也一併塗掉，讓玩家自己掀開。 */
.redact{background:#111;color:#111;padding:0 3px;border-radius:1px}
.redact::selection{background:#111;color:#fff}
.redact::-moz-selection{background:#111;color:#fff}

/* ── 老式彈窗廣告：偶爾在縣府頁再入時冒出來，第三方廣告的樣子（非官方）。
   世界內給工具——不是系統教玩家開頻譜圖，是一個垃圾廣告自己跳出來。指向 Boxentriq。
   主圖＝Boxentriq 橫幅，配一句短文案＋按鈕。 */
.adpop{position:fixed;right:14px;bottom:14px;width:320px;max-width:90vw;z-index:99999;
  background:#0b1a0b;border:2px solid #2a7a2a;box-shadow:3px 3px 0 rgba(0,0,0,.5);
  font-family:"新細明體","PMingLiU",serif}
.adpop-bar{display:flex;align-items:center;background:#123012;color:#8fdc8f;padding:2px 4px}
.adpop-tag{flex:1;font-size:11px;letter-spacing:1px}
.adpop-x{background:#c00;color:#fff;border:1px outset #f88;font-weight:700;cursor:pointer;width:20px;height:18px;line-height:1;padding:0}
.adpop-img{display:block;width:100%;height:auto}
.adpop-body{padding:9px 12px 12px;text-align:center}
.adpop-h{color:#aebfae;font-weight:400;font-size:11.5px;line-height:1.55;margin-bottom:10px}
.adpop-cta{display:inline-block;background:linear-gradient(#3c3,#0a0);color:#fff;text-decoration:none;
  font-weight:700;padding:6px 18px;border:2px outset #6f6;border-radius:3px;font-size:14px}
.adpop-cta:hover{background:linear-gradient(#5e5,#0c0)}

/* 輔導文件頂端的長官批示警示框（內部文件）。 */
.gc-warn{border:2px solid #c00;background:#fff2f2;color:#8a0000;padding:8px 12px;margin:0 0 12px;
  font-size:14px;line-height:1.75}
.gc-warn b{color:#c00}

/* ── 內部資料區登入：比全站更簡陋的老系統登入頁，刻意留 liminal 違和感。
   死白空曠、孤零零一個寒酸登入框、破圖 logo、線上人數 0、上次登入停在 084/09、
   全畫面極慢極淡的閃爍（快熄的日光燈）。不華麗——愈平凡愈空愈不對勁。 */
body.gcportal{margin:0;background:#d9dbd0;color:#141414;
  font-family:"新細明體","PMingLiU","MingLiU",serif;font-size:15px}
body.gcportal .wrap{max-width:none;width:auto;margin:0;padding:0}
.gcp{min-height:100vh;box-sizing:border-box;padding:72px 16px 46vh;display:flex;justify-content:center;
  animation:gcpflick 6.5s linear infinite}
@keyframes gcpflick{0%,92%,100%{opacity:1}93%{opacity:.82}94%{opacity:1}96%{opacity:.9}96.6%{opacity:1}}
.gcp-box{width:322px;max-width:92vw}
.gcp-logo{display:block;margin-bottom:8px;border:0}
.gcp-h{font-size:15px;font-weight:700;letter-spacing:2px}
.gcp hr{border:none;border-top:1px solid #8a8c80;margin:8px 0}
.gcp-line{font-size:12px;color:#54564c;margin:2px 0 12px}
/* 登入須知：只說「帳號＝姓名」這個規則，不說是誰的姓名。 */
.gcp-note{font-size:12px;color:#6b6d62;line-height:1.7;margin:0 0 12px;text-align:left}
.gcp-tb{margin:6px 0;border-collapse:collapse}
.gcp-tb td{padding:3px 5px;font-size:15px}
.gcp input{font-family:inherit;font-size:15px;border:1px solid #78796f;background:#f3f4ee;padding:2px 4px}
.gcp button{font-family:inherit;font-size:15px;padding:2px 12px;cursor:pointer}
.gcp a{color:#0000c4}
.gcp-msg{color:#9a0000;font-size:13px;margin-top:8px;min-height:1em}
.gcp-hint{font-size:15px;margin-top:8px}
.gcp-foot{font-size:11px;color:#6a6c60;margin-top:12px}
/* 存取遭拒通知框（老式系統錯誤對話框）：未登入點內部文件時先跳出。 */
.gcdeny{position:fixed;inset:0;z-index:100000;background:rgba(18,18,18,.55);display:flex;align-items:center;justify-content:center}
.gcdeny-box{width:300px;max-width:90vw;background:#d9dbd0;border:2px outset #fff;
  font-family:"新細明體","PMingLiU",serif;box-shadow:3px 3px 0 rgba(0,0,0,.4)}
.gcdeny-hd{background:#7a1010;color:#fff;font-weight:700;padding:3px 8px;font-size:14px;letter-spacing:1px}
.gcdeny-bd{padding:14px 16px;font-size:14px;line-height:1.85;color:#111}
.gcdeny-bd p{margin:0 0 8px}
.gcdeny-ft{text-align:center;padding:2px 0 14px}
.gcdeny-ft button{font-family:inherit;font-size:14px;padding:3px 22px;cursor:pointer;border:2px outset #fff;background:#c8cabf}
.gcdeny-ft button:active{border-style:inset}

/* ── 內部系統版型（登入後）：延續登入頁的簡陋 liminal 調性。死白底、平凡導覽、詭異狀態列。 */
body.gcsys{margin:0;background:#d9dbd0;color:#141414;font-family:"新細明體","PMingLiU","MingLiU",serif;font-size:15px}
body.gcsys .wrap{max-width:none;width:auto;margin:0;padding:0}
.gcsys{max-width:760px;margin:0 auto;padding:0 14px 44vh;min-height:100vh;box-sizing:border-box}
.gcsys-top{padding:14px 0 6px}
.gcsys-name{font-size:16px;font-weight:700;letter-spacing:2px}
.gcsys-sub{font-size:11px;color:#54564c;letter-spacing:2px}
.gcsys-bar{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:4px 10px;
  border-top:1px solid #b6b8ac;border-bottom:1px solid #8a8c80;padding:5px 0;margin-bottom:14px;font-size:12px}
.gcsys-nav a{color:#0000c4;margin-right:14px}
.gcsys-nav a.on{color:#000;font-weight:700;text-decoration:none}
.gcsys-user{color:#54564c}
.gcsys-foot{border-top:1px solid #8a8c80;margin-top:18px;padding-top:6px;font-size:11px;color:#6a6c60}
/* 內部系統裡的文件：把藍色薄荷樣式壓成灰的，跟死白系統一致（公開頁 body.gc 不受影響）。 */
body.gcsys .gc-h{background:#c4c6ba;color:#111;border:1px solid #9a9c90;font-size:14px;padding:3px 9px;
  margin:14px 0 8px;letter-spacing:1px}
body.gcsys .gc p,body.gcsys .content{font-size:15px;line-height:1.95;color:#161616}
body.gcsys .meta{background:#e6e7df;border:1px solid #9a9c90;padding:8px 12px;font-size:14px;line-height:1.9;margin-bottom:12px}
body.gcsys .gc-tb{width:100%;border-collapse:collapse;background:#eceee6;margin-bottom:10px}
body.gcsys .gc-tb th{background:#c4c6ba;border:1px solid #9a9c90;padding:5px 8px;font-size:14px;color:#111;text-align:left}
body.gcsys .gc-tb td{border:1px solid #b6b8ac;padding:6px 8px;font-size:14.5px}
body.gcsys a{color:#0000c4}
body.gcsys .gc-note{color:#54564c;font-size:13px;line-height:1.85}
body.gcsys .mailview{background:#eceee6;border:1px solid #9a9c90}
body.gcsys .mail-hd{background:#dfe0d8;border-bottom:1px solid #9a9c90;color:#161616}
body.gcsys .mail-hd .ml{color:#3a3c32}
body.gcsys .mail-body{color:#161616}

/* MAIL 信件視圖（webmail 風格）。 */
.mailview{background:#fff;border:1px solid #9ccfd8;margin:6px 0}
.mail-hd{background:#eef7f9;border-bottom:1px solid #9ccfd8;padding:9px 12px;font-size:14px;line-height:2}
.mail-hd .ml{display:inline-block;min-width:4.8em;color:#2a6a7a}
.mail-hd b{color:#000;font-weight:400}
.mail-body{padding:14px 16px;font-size:15px;line-height:2.05;color:#111}
.mail-body p{margin:0 0 11px}
.mail-body b{color:#8a0000}
.mail-sign{text-align:right;color:#333;line-height:1.9}

/* ── 林敬德的收信匣：2000 年代紫色 webmail 風格（工具列＋清單＋下方閱讀窗格）。 */
body.gcmail{margin:0;background:#6d7a6b;color:#111;font-family:"新細明體","PMingLiU",serif;font-size:13px}
body.gcmail .wrap{max-width:none;width:auto;margin:0;padding:0}
/* ── 那個年代的桌面收信軟體：GTK 灰、外凸邊框、大圖示工具列 ── */
.bal{max-width:980px;margin:14px auto;background:#ded9d2;border:1px solid #6e6a64;
  box-shadow:0 6px 24px rgba(0,0,0,.4);display:flex;flex-direction:column;min-height:88vh}
.bal-tt{background:linear-gradient(#9aa39c,#7d867f);color:#f4f2ee;border-bottom:1px solid #6e6a64;
  padding:3px 8px;display:flex;align-items:center;font-size:12px}
.bal-tl{flex:1;text-align:center;font-weight:700;letter-spacing:1px;text-shadow:0 1px 0 rgba(0,0,0,.35)}
.bal-tw{letter-spacing:2px;opacity:.9}
.bal-menu{background:#e6e2db;border-bottom:1px solid #b4afa7;padding:2px 6px;
  display:flex;align-items:center;gap:2px;font-size:12.5px;flex-wrap:wrap}
.bal-menu span{padding:2px 8px;cursor:default}
.bal-menu span:hover{background:#cfd8e6}
.bal-menu .bal-gap{flex:1;padding:0}
.bal-menu .bal-gap:hover{background:transparent}
.bal-menu a{padding:2px 8px;color:#1c1c1c;text-decoration:none}
.bal-menu a:hover{background:#cfd8e6}
.bal-tb{background:#e6e2db;border-bottom:1px solid #b4afa7;padding:3px 4px;
  display:flex;align-items:flex-end;gap:2px;flex-wrap:wrap}
.bal-tbtn{display:flex;flex-direction:column;align-items:center;gap:1px;
  min-width:60px;padding:4px 6px;border:1px solid transparent;cursor:default}
.bal-tbtn i{font-size:19px;font-style:normal;line-height:1}
.bal-tbtn b{font-size:11.5px;font-weight:400;color:#1c1c1c}
.bal-tbtn:not(.off):hover{border-color:#9aa39c;background:#f2efe9}
.bal-tbtn.off{opacity:.38}
.bal-more{margin-left:auto;align-self:center;padding:0 8px;color:#4a4a4a}
.bal-main{flex:1;display:flex;min-height:0;border-top:1px solid #f4f2ee}
.bal-side{width:132px;flex:0 0 132px;background:#f4f2ee;border-right:1px solid #b4afa7;
  display:flex;flex-direction:column}
.bal-sh{display:flex;background:#e6e2db;border-bottom:1px solid #b4afa7;font-size:11.5px;color:#33332f}
.bal-sh span{padding:3px 4px;border-right:1px solid #cac5bd}
.bal-sh span:first-child{flex:1}
.bal-sh span:not(:first-child){width:20px;text-align:center}
.bal-fd{display:flex;align-items:center;font-size:12.5px;cursor:pointer;padding:2px 0}
.bal-fd .fn{flex:1;padding-left:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bal-fd .fi{font-style:normal;margin-right:4px;font-size:11px}
.bal-fd .fu,.bal-fd .ft{width:20px;text-align:center;font-size:11px;color:#555}
.bal-fd:hover{background:#e3e8f0}
.bal-fd.on{background:#4a6b9a;color:#fff}
.bal-fd.on .fu,.bal-fd.on .ft{color:#dde6f2}
.bal-panes{flex:1;min-width:0;display:flex;flex-direction:column}
.bal-filter{display:flex;align-items:center;gap:5px;background:#ded9d2;padding:5px 6px;
  border-bottom:1px solid #b4afa7}
.bal-sel{background:#f4f2ee;border:1px solid #9c968d;padding:3px 6px;font-size:12.5px;
  display:flex;align-items:center;gap:8px;cursor:default;white-space:nowrap}
.bal-sel i{font-style:normal;font-size:10px;color:#555}
.bal-filter input{flex:1;min-width:0;font-family:inherit;font-size:13px;padding:3px 6px;
  border:1px solid #9c968d;background:#fff}
.bal-filter input:focus{outline:none;border-color:#4a6b9a}
.bal-go{border:1px solid #9c968d;background:#e6e2db;padding:2px 8px;font-size:12px;cursor:pointer}
.bal-go:hover{background:#f2efe9}
.bal-listwrap{flex:0 0 auto;max-height:38vh;overflow:auto;background:#fff;
  border-bottom:1px solid #b4afa7}
.bal-grip{height:7px;background:#ded9d2;border-bottom:1px solid #b4afa7;
  background-image:radial-gradient(#9c968d 1px,transparent 1px);background-size:4px 4px;
  background-position:center;background-repeat:repeat-x;cursor:row-resize}
.bal-stat{background:#ded9d2;border-top:1px solid #f4f2ee;display:flex;gap:6px;padding:3px 6px;font-size:12px}
.bal-stat span{border:1px solid #b4afa7;background:#e9e5df;padding:1px 8px;color:#33332f}
.bal-stat span:first-child{flex:1}
.bal-stat a{color:#1a3f7a}
.mbox-list{width:100%;border-collapse:collapse;font-size:12.5px}
.mbox-list th{background:#e6e2db;color:#1c1c1c;text-align:left;font-weight:400;padding:3px 8px;
  border-bottom:1px solid #b4afa7;border-right:1px solid #cac5bd;position:sticky;top:0}
.mbox-list th.c,.mbox-list td.c{width:22px;text-align:center;color:#4a6b9a}
.mbox-list td{padding:2px 8px;border-bottom:1px solid #eeece8;white-space:nowrap;
  overflow:hidden;text-overflow:ellipsis;max-width:0}
.mbox-list td.subj{max-width:none}
.mbox-list tbody tr{cursor:default}
.mbox-list tbody tr:hover{background:#eef1f6}
.mbox-list tr.unread .subj,.mbox-list tr.unread .fr{font-weight:700}
.mbox-list tr.sel{background:#4a6b9a;color:#fff}
.mbox-list tr.sel td,.mbox-list tr.sel td.subj{color:#fff}
.mbox-list td.subj{color:#1c1c1c}
.mbox-list td.fr,.mbox-list td.dt{color:#3a3a3a}
.mbox-list tr.nores td{padding:16px 8px;color:#777;text-align:center;font-size:12.5px}
.mbox-list tr.nores:hover{background:transparent}
/* 卷底那份附件：點開是「已刪除」 */
.gc-att{margin:6px 0 4px}
.gc-att-r{display:inline-block;font-size:13px;color:#20507e;text-decoration:none;
  border:1px solid #cfd6de;background:#f6f8fb;padding:5px 12px;cursor:pointer}
.gc-att-r:hover{background:#eaf0f7;border-color:#a9bdd4}
.gc-att-out{display:none}
.gc-att-out.on{display:block;margin-top:8px;border:1px solid #d8c8c4;background:#fbf4f2;padding:9px 12px}
.gc-att-hd{color:#8a2a1e;font-weight:700;font-size:13px;margin-bottom:5px}
.gc-att-bd{font-size:12px;line-height:1.95;color:#5a4a45}
.gc-att-key{color:#3a2f2a}
.mbox-rbody.gcdoc .gc-h{background:#e6e2db;color:#1c1c1c;font-weight:700;padding:4px 8px;margin:12px 0 6px}
.mbox-rbody.gcdoc .meta{font-size:12px;color:#555;line-height:1.9;margin-bottom:8px}
.mbox-rbody.gcdoc p{margin:6px 0}
.mbox-rbody.gcdoc .gc-note{font-size:12px;color:#666;margin-top:10px}
.mbox-read{flex:1;min-height:130px;overflow:auto;background:#fff;padding:12px 14px}
.mbox-rhd{border-bottom:1px solid #cac5bd;padding-bottom:6px;margin-bottom:8px}
.mbox-rhd .rs{font-size:14px;font-weight:700;color:#1c1c1c}
.mbox-rhd .rf{font-size:12px;color:#555;margin-top:2px}
.mbox-rbody{font-size:14px;line-height:1.95;color:#161616}
body.gcmail .mailview{border:1px solid #cac5bd;margin:2px 0}
body.gcmail .mail-hd{background:#f2efe9;border-bottom:1px solid #cac5bd}
body.gcmail .mail-hd .ml{color:#3a3a3a}
body.gcmail .gc-note{color:#666;font-size:12px;margin-top:8px}

/* ── 合興金屬 官網（hx）：仿 2004 國營企業站——粉紅頁首、深藍煙火促銷框、暖色夕陽 hero、灰色浮雕側欄、圓角產品卡 ── */
body.hx{background:#ededed;color:#333;font-family:"新細明體",PMingLiU,"宋体",SimSun,serif}
body.hx .wrap{max-width:1000px;margin:0 auto;padding:0}
.hx-page{background:#fff}
.hx-row{display:flex}
/* 頁首：白底 LOGO ｜ 粉紅橫幅 */
.hx-logo{width:197px;flex:0 0 197px;height:105px;background:#fff;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:5px}
.hx-emblem{width:56px;height:56px;border-radius:50%;border:4px solid #d21414;color:#d21414;
  display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;letter-spacing:1px;
  box-shadow:inset 0 0 0 2px #fff,0 0 0 1px #d21414}
.hx-word{color:#d21414;font-weight:800;letter-spacing:5px;font-size:18px;font-family:Arial,Helvetica,sans-serif}
.hx-banner{flex:1;height:105px;position:relative;
  background:linear-gradient(115deg,#fff 0%,#f7e6e1 32%,#f2cac0 72%,#edb9ad 100%)}
/* 招牌：整條是掃描進來的公司識別圖（報名、英文全銜、社徽、台灣島、標語都在裡面）。
   ⚠ 不裁切：width:100% ＋ height:auto。輕度降質，跟站上其他圖同調。 */
.hx-hd2{line-height:0;background:#e9edf2}
.hx-hd2 img{display:block;width:100%;max-width:100%;height:auto;border:0;
  filter:blur(.3px) contrast(1.08) saturate(.95)}
/* 圖底下那條細列：頂端導覽與上市資訊，原本壓在招牌上，現在獨立成一列。 */
.hx-hd2bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
  background:#f4f0ea;border-bottom:1px solid #d8cfc4;padding:5px 16px}
.hx-topnav{font-size:12px;color:#7a4a44}
.hx-topnav a{color:#7a4a44;text-decoration:none}
.hx-topnav a:hover{color:#b03a2e;text-decoration:underline}
.hx-corp{font-size:13px;color:#8a5a52;letter-spacing:1px;font-family:Arial,serif}
/* 2026-08-13：夕陽 hero 與整條 hero 列取消——招牌改用 assets/hexing banner.png 那張圖，
   一個站不會有兩塊招牌。原本的促銷框縮小成側欄頂端的小方塊（.hx-promo2）。 */
.hx-promo2{background:#0b1550;color:#fff;padding:12px 8px;margin-bottom:6px;text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:6px;
  background-image:radial-gradient(circle at 28% 22%,rgba(255,90,90,.28),transparent 42%),radial-gradient(circle at 72% 82%,rgba(255,210,80,.22),transparent 46%)}
.hx-promo2 .pp1{color:#ffd23f;font-size:19px;font-weight:800;letter-spacing:2px;text-shadow:0 0 8px rgba(255,180,40,.6)}
.hx-promo2 .pp2{color:#fff;font-size:13px;letter-spacing:1px}
.hx-promo2 .pp3{color:#ff5a3c;font-size:19px;font-weight:800;letter-spacing:2px;text-shadow:0 0 8px rgba(255,70,40,.5)}
/* 主體：灰色浮雕側欄 ｜ 內容 */
.hx-side{width:197px;flex:0 0 197px;background:#e9e6e0;padding:10px 12px;display:flex;flex-direction:column;gap:6px}
.hx-btn{display:block;text-align:center;font-size:14px;color:#4a4a4a;text-decoration:none;padding:8px 6px;
  border:1px solid #c7c0b4;border-radius:3px;box-shadow:inset 0 1px 0 #fff;
  background:linear-gradient(180deg,#f4f1ec 0%,#e6e1d8 48%,#dcd6cb 52%,#e9e5dd 100%)}
.hx-btn:hover,.hx-btn.on{color:#1e3f68;border-color:#9fb0c6;
  background:linear-gradient(180deg,#eef3f9,#d8e2ef 52%,#cdd9ea)}
.hx-tel{margin:14px 10px 4px;padding-top:10px;border-top:1px dashed #b7af9f;
  font-size:12px;color:#5a5346;line-height:1.75;text-align:center}
.hx-tel b{display:inline-block;margin:2px 0;font-size:14px;color:#9a2020;letter-spacing:.5px}
.hx-tel span{font-size:11px;color:#8a8378}
.hx-side-fill{flex:1;min-height:56px}
.hx-content{flex:1;padding:12px 16px 16px}
.hx-ticker{display:flex;align-items:center;gap:8px;border:1px solid #d8d2c6;background:#faf8f4;
  padding:3px 8px;margin-bottom:12px;font-size:12px;color:#555;overflow:hidden}
.hx-ticker b{color:#b03a2e;flex:0 0 auto}
.hx-panel{border:1px solid #d0d0d0;border-radius:12px;background:#fff;padding:18px 14px;box-shadow:0 1px 2px rgba(0,0,0,.05)}
.hx-cards{display:flex}
.hx-card{flex:1;text-align:center;padding:0 8px;border-right:1px dotted #cccccc}
.hx-card:last-child{border-right:0}
.hx-card-img{height:92px;border-radius:4px;border:1px solid #d8d8d8;overflow:hidden;line-height:0;
  background:linear-gradient(135deg,#eef1f4,#d9dee4 60%,#c7ccd3);box-shadow:inset 0 0 12px rgba(255,255,255,.5)}
/* 縮圖：等比填滿並裁切（那個年代的產品縮圖都是切成固定尺寸的）。輕度降質，跟全站同調。 */
.hx-card-img img{width:100%;height:92px;object-fit:cover;display:block;border:0;
  filter:blur(.3px) contrast(1.08) saturate(.95)}
.hx-card-t{margin-top:10px;font-weight:700;font-size:15px;color:#20507e;letter-spacing:1px}
.hx-card-s{margin-top:3px;font-size:11px;color:#888;letter-spacing:1px}
.hx-card-lines{margin-top:8px}
.hx-card-lines i{display:block;height:1px;background:#e4e4e4;margin:6px 12px}
.hx-ir{margin-top:16px;border:1px solid #cdd6e0;background:linear-gradient(180deg,#f6f9fc,#eef3f8)}
.hx-ir-h{display:flex;align-items:baseline;gap:10px;padding:5px 12px;border-bottom:1px solid #d6dee7}
.hx-ir-h span{font-weight:700;color:#1e3f68;font-size:14px;letter-spacing:1px}
.hx-ir-h em{font-style:normal;color:#9aabbb;font-size:11px;font-family:Arial;flex:1}
.hx-ir-h a{font-size:12px;color:#20507e;text-decoration:none}
.hx-ir-h a:hover{text-decoration:underline}
.hx-ir-facts{display:flex;text-align:center}
.hx-ir-facts span{flex:1;padding:10px 6px;border-right:1px dotted #cdd6e0;font-size:12px;color:#666;letter-spacing:1px}
.hx-ir-facts span:last-child{border-right:0}
.hx-ir-facts b{display:block;font-size:20px;color:#b03a2e;font-family:Arial,"新細明體",serif;letter-spacing:0;margin-bottom:2px}
.hx-news2{margin-top:16px;border:1px solid #dcdcdc;background:#fcfcfc}
.hx-news-h{background:linear-gradient(180deg,#eef1f5,#dde3ea);border-bottom:1px solid #cfd6de;
  padding:5px 10px;display:flex;align-items:baseline;gap:8px}
.hx-news-h span{font-weight:700;color:#1e3f68;font-size:14px;letter-spacing:1px}
.hx-news-h em{font-style:normal;color:#9aabbb;font-size:11px;font-family:Arial}
.hx-news2 ul{list-style:none;margin:0;padding:8px 12px;font-size:13px}
.hx-news2 li{padding:5px 2px;border-bottom:1px dotted #dcdcdc;line-height:1.6}
.hx-news2 li::before{content:"›　";color:#b03a2e}
.hx-news2 .d{display:inline-block;color:#888;font-family:Arial;margin-right:8px}
/* 環境與安全／化學物質下架頁 */
.hx-h2{font-size:17px;font-weight:700;color:#1e3f68;border-bottom:2px solid #b03a2e;padding-bottom:5px;margin-bottom:8px}
.hx-h3{font-weight:700;color:#20507e;font-size:14px;margin:10px 0 6px}
/* 按鈕與標題改為圖片（見 site.js 的 hxBtnImg／hxHeadImg）：清掉文字樣式，只留排版。 */
.hx-btn[data-img]{line-height:0;padding:0;border:0;background:none;box-shadow:none}
.hx-btn[data-img] img{display:block;width:100%;height:32px;border:0}
.hx-btn[data-img]:hover img{filter:brightness(1.05)}
.hx-h2[data-img],.hx-h3[data-img]{line-height:0;padding:0;background:none}
.hx-h2[data-img]{border-bottom:2px solid #b03a2e;padding-bottom:4px}
.hx-h2[data-img] img,.hx-h3[data-img] img{display:block;border:0}
.hx-ir-h[data-img] img,.hx-news-h[data-img] img{display:block;border:0}
.hx-ir-h[data-img]{padding:2px 0 2px}
.hx-news-h[data-img]{padding:2px 0}
.hx-promo2[data-img]{padding:0;background:none;line-height:0;margin-bottom:6px}
.hx-promo2[data-img] img{display:block;width:100%;height:auto;border:0}
/* 分頁內容：表格、假表單、相簿 */
.hx-tb{border-collapse:collapse;width:100%;margin:6px 0 12px;font-size:13px}
.hx-tb th{background:#e8eef5;color:#1e3f68;border:1px solid #c3ccd6;padding:4px 8px;
  white-space:nowrap;text-align:left}
.hx-tb td{border:1px solid #d8dee6;padding:4px 8px}
.hx-note{font-size:12px;color:#6b7581;line-height:1.9;margin:6px 0 14px}
.hx-form{border:1px solid #d8dee6;background:#f8fafc;padding:10px 12px;margin:6px 0 12px}
.hx-frow{display:flex;align-items:center;gap:10px;margin:6px 0}
.hx-frow label{width:82px;flex:0 0 auto;font-size:13px;color:#4a5a6b;text-align:right}
.hx-frow input,.hx-frow textarea{flex:1;max-width:320px;font-family:inherit;font-size:13px;
  padding:4px 6px;border:1px solid #c3ccd6;background:#eef1f4;color:#8a94a0}
.hx-frow button{font-family:inherit;font-size:13px;padding:4px 18px;border:1px solid #a9b6c4;
  background:#e6edf4;color:#8a94a0}
.hx-formmsg{font-size:12px;color:#b03a2e}
.hx-gal{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0 12px}
.hx-gal img{border:1px solid #c3ccd6;background:#eef1f4}
.hx-lead{font-size:13px;line-height:1.9;color:#2a2a2a;margin:6px 0}
.hx-subnav{font-size:12px;color:#888;margin:6px 0 12px}
.hx-subnav .on{color:#b03a2e;font-weight:700}
/* 環境資訊公開專區的檔案清單 */
.hx-doctb{border-collapse:collapse;width:100%;font-size:13px;margin:6px 0}
.hx-doctb th,.hx-doctb td{border:1px solid #e0e0e0;padding:7px 10px;text-align:left}
.hx-doctb th{background:linear-gradient(180deg,#eef1f5,#dde3ea);color:#1e3f68}
.hx-doctb td.dt{color:#888;font-family:Arial;width:110px;white-space:nowrap}
.hx-doctb a{color:#20507e}
.hx-dead{color:#aaa}
.hx-note{font-size:12px;color:#888;line-height:1.8;margin-top:8px}
/* 合興的 404：滿版、仿 IE 內建「找不到網頁」錯誤頁（跟縣府那套 410 純文字刻意不同款）。
   沒有封存列——這是瀏覽器自己吐出來的頁，不是被存下來的文件。 */
body.hx404{background:#fff;color:#000;font-family:"新細明體",PMingLiU,serif;margin:0}
body.hx404 .wrap{max-width:none;width:100%;margin:0;padding:0;border:0;background:#fff}
.ie404{min-height:100vh;box-sizing:border-box;padding:26px 34px 44px;background:#fff;
  font-size:13px;line-height:1.95;color:#000}
.ie404-hd{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.ie404-hd h1{margin:0;font-size:23px;font-weight:600;letter-spacing:1px;color:#1a1a1a}
.ie404-hd svg{flex:0 0 auto}
.ie404-lead{margin:0 0 4px}
.ie404 hr{border:0;border-top:1px solid #d2d2d2;margin:16px 0}
.ie404-try{margin:0 0 6px}
.ie404-ul{margin:6px 0 0 30px;padding:0;list-style:disc}
.ie404-ul li{margin:7px 0;line-height:1.95}
.ie404-ul svg{vertical-align:-2px;margin:0 2px}
.ie404 a{color:#0000cc}
.ie404 a:visited{color:#551a8b}
.ie404-note{margin:26px 0 0}
.hx404-key{color:#000;font-weight:700}
.ie404-ft{margin:30px 0 0;color:#000;line-height:1.7}
/* 彭立文給的資訊室指令參考頁 */
body.hxadm{background:#fff;color:#000;font-family:"新細明體",PMingLiU,serif}
body.hxadm .wrap{max-width:820px;margin:0 auto}
.hxadm-wrap{padding:22px 26px 40px;font-size:14px;line-height:1.8}
.hxadm-t{font-size:22px;font-weight:700}
.hxadm-h{font-size:15px;font-weight:700;color:#333;margin-bottom:14px}
.hxadm-tb{border-collapse:collapse;width:100%;font-size:13px;margin:10px 0}
.hxadm-tb th,.hxadm-tb td{border:1px solid #ccc;padding:6px 10px;text-align:left}
.hxadm-tb th{background:#eee}
.hxadm code{font-family:Consolas,"新細明體",monospace;background:#f2f2f2;border:1px solid #ddd;padding:1px 5px;font-size:13px}
.hxadm-note{font-size:12px;color:#666;line-height:1.9}
.hxadm-ft{margin-top:20px;color:#888;font-size:12px}
.hx-share{margin:14px 0 4px;padding-top:10px;border-top:1px solid #e0e0e0}
.hx-share button{font-family:inherit;font-size:12px;padding:3px 10px;border:1px solid #9fb0c6;background:#eef3f9;cursor:pointer;border-radius:3px}
.hx-share button:hover{background:#dde7f4}
.hx-share span{font-size:11px;color:#666;word-break:break-all}
.hx-chem{border:1px solid #cdd6e0;background:#fff;margin-top:12px}
.hx-chem-note{background:#fbf3e6;border-bottom:1px solid #e6d5b8;color:#7a5a1e;font-size:12px;padding:7px 12px;line-height:1.7}
.hx-chem .hx-h3{padding:0 12px}
.hx-chem-tb{border-collapse:collapse;width:100%;font-size:13px;margin:2px 0 6px}
.hx-chem-tb th,.hx-chem-tb td{border:1px solid #e2e2e2;padding:6px 10px;text-align:left}
.hx-chem-tb th{background:linear-gradient(180deg,#eef1f5,#dde3ea);color:#1e3f68}
.hx-chem-tb td.nm{font-weight:700;color:#a02a1e;white-space:nowrap}
.hx-chem-tb td.v{font-family:Consolas,monospace;color:#333;text-align:right}
.hx-chem-tb tr.stop td{color:#999;font-style:normal}
.hx-chem-tb td.rno{font-family:Consolas,"新細明體",monospace;color:#555;white-space:nowrap;font-size:12px}
/* 人才中心·徵才考古題練習 */
.hxq{border:1px solid #ddd;background:#fcfcfc;padding:10px 14px;margin:10px 0}
.hxq-h{font-size:12px;color:#8a8a8a;letter-spacing:1px;margin-bottom:4px}
.hxq-q{font-size:13px;line-height:1.9;margin:2px 0 8px;color:#2a2a2a}
.hxq-in{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:13px}
.hxq-in input{font-family:inherit;font-size:13px;padding:2px 5px;border:1px solid #b5b5b5;background:#fff}
.hxq-in button{font-family:inherit;font-size:12px;padding:3px 12px;border:1px solid #9fb0c6;
  background:linear-gradient(180deg,#f4f8fd,#dde7f4);cursor:pointer}
.hxq-in button:hover{background:linear-gradient(180deg,#e8f1fb,#cfdcee)}
/* 注意：類別名不可用 .err／.ok——站上已有全域 .err{display:none}（登入頁錯誤訊息用），會把作答結果整個藏掉。 */
.hxq-out{font-size:12px;margin-top:8px;line-height:1.8;min-height:1px;display:block}
.hxq-out.bad{color:#a02a1e;display:block}
.hxq-out.good{color:#1d6b2f;display:block}
.hxq-idlh{margin-top:8px;border:1px solid #d8c4a0;background:#fffdf6;padding:9px 11px;color:#5a4a22;
  font-size:12px;line-height:1.9}
.hxq-idlh b{color:#8a2a1e}
.hxq-ref{margin-top:8px;border:1px dashed #c9b98a;background:#fdfaf0;padding:8px 10px;color:#6b5a24}
.hxq-ref a{color:#20507e}
.hxq-ref-s{font-size:11px;color:#8a7a45;margin-top:4px}
.hx-chem-ft{font-size:11px;color:#999;padding:6px 12px;border-top:1px dotted #ddd}
/* 新聞中心的專訪版面 */
.hx-artic{border:1px solid #e2e2e2;background:#fff;padding:16px 20px 20px;margin-top:6px}
.hx-art-h1{font-size:20px;line-height:1.5;margin:0 0 6px;color:#1a1a1a;letter-spacing:1px}
.hx-art-sub{font-size:14px;color:#20507e;margin-bottom:4px}
.hx-art-by{font-size:12px;color:#888;border-bottom:1px dotted #ddd;padding-bottom:8px;margin-bottom:10px}
.hx-artic p{font-size:13px;line-height:2;margin:8px 0;color:#2a2a2a}
.hx-art-h2{font-weight:700;color:#1e3f68;font-size:15px;margin:16px 0 4px;
  border-left:4px solid #b03a2e;padding-left:8px}
.hx-art-fig{margin:12px 0 14px;text-align:center}
.hx-art-fig img{max-width:100%;width:640px;border:1px solid #c8c8c8;background:#f0f0f0;display:block;margin:0 auto}
.hx-art-fig .cap{font-size:12px;color:#777;line-height:1.8;margin-top:6px;text-align:left}
.hx-art-link{background:#f6f9fc;border:1px solid #cdd6e0;padding:8px 12px;margin:12px 0}
.hx-art-link a{color:#20507e}
.hx-art-end{color:#888;font-size:12px;margin-top:14px}
/* 郭永昌自己做的個人網頁：置中、底線、計數器、施工中小人 */
body.kuo{background:#dfe8f5;color:#000;font-family:"新細明體",PMingLiU,serif;margin:0}
body.kuo .wrap{max-width:720px;margin:0 auto;padding:14px 10px 40px}
.kuo{background:#fff;border:2px ridge #9ab;padding:14px 16px 20px}
.kuo-hd{text-align:center;padding:10px 0 6px}
.kuo-hd h1{margin:0;font-size:24px;color:#00008b;letter-spacing:4px;
  text-shadow:1px 1px 0 #bcd}
.kuo-sub{font-size:13px;color:#333;margin-top:8px}
.kuo-marq{background:#ffffcc;border:1px solid #ddc;font-size:12px;color:#663;padding:3px 0;margin:10px 0;overflow:hidden}
.kuo-box{border:1px solid #cbd6e4;margin:14px 0;padding:10px 14px 12px;background:#fbfcfe}
.kuo-h{background:#00008b;color:#fff;font-size:14px;padding:3px 10px;margin:-10px -14px 10px;letter-spacing:2px}
.kuo p{font-size:14px;line-height:1.95;margin:8px 0}
.kuo-play{text-align:center;font-size:16px;margin:14px 0 6px;letter-spacing:2px}
.kuo-play a{color:#00008b;font-weight:700}
.kuo-small{font-size:12px;color:#777;line-height:1.8}
.kuo-ft{text-align:center;border-top:1px dashed #bbb;margin-top:16px;padding-top:12px}
.kuo-cnt{display:inline-block;background:#000;color:#0f0;font-family:Consolas,monospace;
  font-size:13px;padding:3px 10px;letter-spacing:2px;margin-bottom:10px}
.kuo-cons{display:block;margin:6px auto;max-width:120px}
/* 郭永昌做的那款迷宮遊戲：全螢幕，操作件疊在遊戲畫面上 */
body.kuogame{background:#000;color:#ddd;margin:0;overflow:hidden;
  font-family:"新細明體",PMingLiU,serif}
body.kuogame .wrap{max-width:none;width:100vw;height:100vh;margin:0;padding:0}
.kg{position:relative;width:100vw;height:100vh;background:#000;overflow:hidden}
.kg canvas{position:absolute;inset:0;width:100%;height:100%;
  object-fit:contain;image-rendering:pixelated;image-rendering:crisp-edges;display:block}
/* 操作件在遊戲裡：右下角方向鍵，左下角離開 */
.kg-ui{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .6s}
.kg-ui.on{opacity:1}
.kg-pad{position:absolute;right:22px;bottom:22px;pointer-events:auto;
  display:flex;flex-direction:column;align-items:center;gap:6px}
.kg-pad .kg-row{display:flex;gap:6px}
.kg-pad button{font:18px/1 Consolas,monospace;width:56px;height:46px;cursor:pointer;
  color:#e8e0f4;background:rgba(24,18,34,.62);border:2px solid rgba(180,150,220,.5);
  border-radius:4px;backdrop-filter:blur(2px);transition:background .12s}
.kg-pad button:active{background:rgba(150,90,210,.7)}
.kg-quit{position:absolute;left:22px;bottom:26px;pointer-events:auto;
  font-size:13px;color:#b9a8d0;text-decoration:none;
  background:rgba(24,18,34,.55);border:1px solid rgba(180,150,220,.35);
  padding:6px 14px;border-radius:3px}
.kg-quit:hover{color:#fff;background:rgba(90,50,140,.6)}
/* 開始遊戲按鈕（疊在標題畫面上） */
.kg-start{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;
  padding-bottom:22vh;pointer-events:none;transition:opacity .5s}
.kg-start.gone{opacity:0;pointer-events:none}
.kg-start button{pointer-events:auto;font-family:inherit;font-size:17px;letter-spacing:4px;
  padding:12px 34px;cursor:pointer;color:#3a1a52;background:#f0d8ff;
  border:3px outset #d9a8f0;border-radius:2px;box-shadow:0 3px 0 rgba(0,0,0,.25)}
.kg-start button:hover{background:#fbeaff}
.kg-start button:active{border-style:inset;transform:translateY(2px);box-shadow:none}
/* 迷宮大王說話 */
.kg-talk{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  pointer-events:none;opacity:0;transition:opacity .45s}
.kg-talk.on{opacity:1}
.kg-box{pointer-events:auto;background:rgba(255,255,255,.96);border:3px solid #7a2fc4;
  padding:18px 24px;max-width:min(560px,80vw);color:#222;font-size:15px;line-height:1.9;
  text-align:center;box-shadow:0 6px 24px rgba(0,0,0,.5)}
.kg-box p{margin:6px 0}
.kg-box .s{font-size:13px;color:#666}
.kg-box a{color:#00008b}
/* 解鎖後的那篇下架報導 */
.hl-msg{font-size:12px;margin:6px 0 2px;min-height:1px}
.hl-msg.bad{color:#a02a1e}
.wl{padding:14px 16px 18px}
.wl-bar{background:#fbf1ef;border:1px solid #e0b8b0;color:#8a2a1e;font-size:12px;
  line-height:1.85;padding:8px 12px;margin-bottom:12px}
.wl-paper{background:#fff;border:1px solid #ddd;padding:18px 22px}
.wl-head{font-size:12px;color:#666;border-bottom:2px solid #333;padding-bottom:6px;margin-bottom:10px}
.wl-head b{font-size:15px;color:#111;letter-spacing:2px}
.wl-h1{font-size:22px;line-height:1.45;margin:6px 0 4px;color:#111;letter-spacing:1px}
.wl-sub{font-size:15px;color:#444;margin-bottom:6px;letter-spacing:1px}
.wl-by{font-size:12px;color:#888;border-bottom:1px dotted #ddd;padding-bottom:8px;margin-bottom:12px}
.wl-paper p{font-size:14px;line-height:2.05;margin:10px 0;color:#1f1f1f}
.wl-end{color:#888;font-size:12px;margin-top:14px}
.wl-fig{margin:10px 0 14px;text-align:center}
.wl-fig img{max-width:100%;width:520px;border:1px solid #ccc;display:block;margin:0 auto;background:#f0f0f0}
.wl-fig .cap{font-size:12px;color:#777;line-height:1.8;margin-top:6px;text-align:left}
.wl-attach{margin-top:16px;border:1px solid #cdd6e0;background:#f6f9fc;padding:12px 14px}
.wl-attach-h{font-weight:700;color:#1e3f68;font-size:14px;margin-bottom:6px}
.wl-attach-s{font-size:12px;color:#666;line-height:1.85;margin:4px 0}
.wl-photo-link{display:inline-block;margin:8px 0;font-size:14px;color:#20507e;
  border:1px solid #a9bdd4;background:#fff;padding:8px 16px;text-decoration:none}
.wl-photo-link:hover{background:#eaf0f7}
.wl-share{margin-top:14px;padding-top:10px;border-top:1px solid #ccc}
.wl-share button{font-family:inherit;font-size:12px;padding:3px 10px;
  border:1px solid #888;background:#f0f0f0;cursor:pointer}
.wl-share span{font-size:11px;color:#555;word-break:break-all}
/* 現場照片：撥接式逐行載入 */
body.wlphoto{background:#0c0c0e;color:#c8c8cc;margin:0;font-family:"新細明體",PMingLiU,serif}
body.wlphoto .wrap{max-width:none;width:100vw;margin:0;padding:0}
.wlp{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px}
.wlp-bar{width:640px;max-width:100%;display:flex;justify-content:space-between;
  font:12px/1.6 Consolas,monospace;color:#9a9aa2;border-bottom:1px solid #2a2a30;padding-bottom:6px;margin-bottom:8px}
.wlp-stage{position:relative;width:640px;max-width:100%;background:#101010;border:1px solid #2a2a30}
.wlp-stage canvas{display:block;width:100%;height:auto;image-rendering:auto}
.wlp-ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  color:#4a4a52;font-size:13px;pointer-events:none}
.wlp-meter{width:640px;max-width:100%;height:6px;background:#1c1c22;margin-top:8px;border:1px solid #2a2a30}
.wlp-meter i{display:block;height:100%;width:0;background:#5a6a8a;transition:width .1s linear}
.wlp-foot{width:640px;max-width:100%;display:flex;justify-content:space-between;
  font:12px/1.6 Consolas,monospace;color:#7a7a84;margin-top:6px}
.wlp-foot a{color:#7a8aa8;text-decoration:none}
/* 隨照片存檔的錄音譯文：照片刷完才浮出來 */
.wlp-doc{width:640px;max-width:100%;margin:26px 0 40px;opacity:0;
  transform:translateY(10px);transition:opacity 1.2s ease,transform 1.2s ease;pointer-events:none}
.wlp-doc.on{opacity:1;transform:none;pointer-events:auto}
/* 2003 年那種公司內部即時訊息視窗 */
.ch{background:#d6d3ce;border:2px outset #f0eeea;font-family:"新細明體",PMingLiU,serif;color:#111}
.ch-title{background:linear-gradient(180deg,#26468c,#12224e);color:#fff;font-size:13px;
  padding:5px 10px;display:flex;justify-content:space-between;align-items:center;letter-spacing:1px}
.ch-cls{font-size:11px;opacity:.85;letter-spacing:2px}
.ch-info{background:#eceae6;border-bottom:1px solid #b8b5b0;font-size:12px;color:#444;
  line-height:1.95;padding:9px 12px}
.ch-blank{color:#999;border-bottom:1px solid #bbb;padding:0 26px}
.ch-body{background:#fbfbf9;padding:12px 14px;max-height:none}
.ch-row{margin:9px 0;display:flex;flex-direction:column}
.ch-row.me{align-items:flex-start}
.ch-row.you{align-items:flex-end}
.ch-meta{font-size:11px;color:#8a8a8a;margin-bottom:2px}
.ch-meta .n{font-weight:700;color:#5a5a66;margin-right:6px}
.ch-row.me .ch-meta .n{color:#8a2a1e}
.ch-bub{max-width:78%;font-size:14px;line-height:1.85;padding:7px 12px;border:1px solid #bfbcb6;
  background:#fff;border-radius:2px}
.ch-row.me .ch-bub{background:#fff5f3;border-color:#dcc3bd}
.ch-row.you .ch-bub{background:#f2f5fa;border-color:#c3cddc}
.ch-sys{text-align:center;font-size:11px;color:#8a8780;margin:12px 0;letter-spacing:1px}
.ch-foot{background:#eceae6;border-top:1px solid #b8b5b0;font-size:12px;color:#6a665c;
  line-height:1.9;padding:9px 12px}
.ch .redact{background:#111;color:#111;border-radius:1px;padding:0 3px;user-select:text}
/* 匯出的終端機紀錄：等寬、單色螢光、節點代號。細明體是那個年代唯一等寬的中文字。 */
.wlt{position:relative;background:#070a08;border:1px solid #1e2a1e;color:#b9c9b6;
  font-family:Consolas,"細明體",MingLiU,"新細明體",monospace;font-size:13px;line-height:1.95;
  overflow:hidden;box-shadow:0 0 0 1px #0d130d,0 6px 26px rgba(0,0,0,.55)}
.wlt::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(180deg,rgba(0,0,0,.16) 0 1px,transparent 1px 3px)}
.wlt-bar{background:#0e150e;border-bottom:1px solid #1e2a1e;color:#8fae8c;
  padding:6px 12px;display:flex;justify-content:space-between;gap:10px;
  font-size:12px;letter-spacing:1px;flex-wrap:wrap}
.wlt-cls{color:#c8a86a;letter-spacing:2px}
.wlt-hr{text-align:center;color:#4e6a4d;font-size:12px;letter-spacing:2px;padding:9px 0}
.wlt-body{padding:4px 14px 12px}
.wlt-ln{display:flex;gap:8px;align-items:baseline;margin:1px 0;white-space:normal}
.wlt-t{color:#4e6a4d;flex:0 0 auto}
.wlt-id{flex:0 0 auto;color:#7f9a7d}
.wlt-ln.b .wlt-id{color:#d8b06a}          /* 董事長那台終端機 */
.wlt-ln.b .wlt-m{color:#e0d4b4}
.wlt-m{flex:1 1 auto}
.wlt-sys{color:#5d7a5b;text-align:center;margin:10px 0;font-size:12px;letter-spacing:1px}
.wlt-rec{color:#8fae8c;text-align:center;font-size:12.5px;letter-spacing:1px;padding:2px 0 4px}
.wlt-foot{border-top:1px dashed #1e2a1e;padding:10px 14px;color:#5d7a5b;font-size:12px;line-height:1.9}
.wlt-cur{display:inline-block;margin-left:6px;color:#b9c9b6;animation:wltblink 1.1s steps(1) infinite}
@keyframes wltblink{50%{opacity:0}}
/* 合興 robots.txt：瀏覽器直接顯示純文字的樣子 */
body.hxtxt{background:#fff;color:#000;font-family:Consolas,"新細明體",monospace;margin:0}
body.hxtxt .wrap{max-width:none;width:100%;margin:0;padding:0}
.hxtxt-pre{margin:0;padding:16px 20px;font:13px/1.7 Consolas,"新細明體",monospace;
  white-space:pre-wrap;word-break:break-word;color:#111}
.hxtxt-pre a{color:#0000cc}
/* 合興 /db/ 開放目錄：IIS 目錄瀏覽的樣子 */
body.hxdb{background:#fff;color:#000;font-family:"新細明體",PMingLiU,serif;margin:0}
body.hxdb .wrap{max-width:900px;margin:0 auto;padding:0}
.hxdb-wrap{padding:14px 20px 40px}
.hxdb-bar{font-size:13px;color:#333;border-bottom:2px solid #999;padding-bottom:8px;margin-bottom:2px}
.hxdb-tb{border-collapse:collapse;width:100%;font-size:13px;font-family:Consolas,"新細明體",monospace}
.hxdb-tb th{text-align:left;border-bottom:1px solid #999;padding:5px 10px;color:#333;font-weight:400}
.hxdb-tb td{padding:4px 10px;border-bottom:1px dotted #ddd}
.hxdb-tb tr.up a{color:#0000cc;text-decoration:none}
.hxdb-tb tbody tr:not(.up):hover{background:#eef3fb;cursor:pointer}
.hxdb-tb tr.sel{background:#dbe7f7}
.hxdb-tb tr.lock td.fn{color:#8a6a1e}
.hxdb-tb td.fn{color:#0000cc;white-space:nowrap}
.hxdb-tb td.dt,.hxdb-tb td.sz{color:#555;white-space:nowrap}
.hxdb-tb td.ds{color:#333;font-family:"新細明體",PMingLiU,serif}
.hxdb-note{font-size:11px;color:#999;margin-top:8px}
.hxdb-read:not(:empty){margin-top:16px;border:1px solid #ccc;background:#fbfbfb;padding:0}
.hxdb-doc{padding:14px 18px;font-size:14px;line-height:1.85;color:#1a1a1a}
.hxdb-doc.miss{color:#777;font-size:13px}
.md-h{font-size:16px;font-weight:700;border-bottom:2px solid #8a2a1e;padding-bottom:5px;margin-bottom:8px}
.md-meta{font-size:12px;color:#555;line-height:1.9;margin-bottom:10px}
.md-h2{font-weight:700;color:#20507e;margin:12px 0 4px}
.md-note{font-size:12px;color:#777;margin-top:12px}
.md-tb{border-collapse:collapse;width:100%;font-size:13px;margin:8px 0}
.md-tb th,.md-tb td{border:1px solid #d8d8d8;padding:5px 9px;text-align:left}
.md-tb th{background:#eef1f5;color:#1e3f68;font-weight:700}
.md-tb tr.sum td{background:#f7f7f7;color:#555}
.md-s{font-size:12px;color:#888}
.hxdb-lock{padding:16px 18px}
.hxdb-lock .hl-h{color:#8a6a1e;font-weight:700;font-size:15px;margin-bottom:8px}
.hxdb-lock p{font-size:13px;line-height:1.9;margin:6px 0;color:#444}
.hxdb-lock .hl-s{font-size:12px;color:#888}
.hxdb-lock .hl-in{display:flex;gap:8px;margin:10px 0;flex-wrap:wrap}
.hxdb-lock .hl-in input{font-family:inherit;font-size:13px;padding:3px 8px;border:1px solid #bbb;background:#f0f0f0}
.hxdb-lock .hl-in button{font-family:inherit;font-size:12px;padding:3px 14px;border:1px solid #bbb;background:#eee;color:#999}
.hx-footer{background:#ededed;color:#777;text-align:center;font-size:12px;padding:12px;border-top:1px solid #dcdcdc}
.hx-footer a{color:#777;text-decoration:none}
.hx-footer a:hover{text-decoration:underline}
@media(max-width:680px){
  .hx-row{flex-wrap:wrap}
  .hx-side{width:100%;flex:1 1 100%}
  .hx-content{flex:1 1 100%}
  .hx-side{flex-direction:row;flex-wrap:wrap}.hx-btn{flex:1 1 40%}
  .hx-cards{flex-wrap:wrap}.hx-card{flex:1 1 45%;border-right:0;margin-bottom:10px}
}

/* ── 遠端監看用戶端（合興的 remote_view） ── */
.cam-row{display:flex;align-items:center;gap:10px;margin:8px 0}
.cam-row label{width:76px;color:#4a5a6b;font-size:13px;text-align:right;flex:none}
.cam-row input{flex:1;max-width:280px;font-family:inherit;font-size:13px;padding:5px 8px;
  border:1px solid #9fb0c2;background:#fff}
.cam-row input:disabled{background:#eef1f4;color:#7d8a96}
.cam-row button{font-family:inherit;font-size:13px;padding:5px 20px;border:1px solid #6d8299;
  background:#e6edf4;cursor:pointer}
/* 全螢幕、純黑底。左邊是畫面，右邊掛著合興的內部訊息視窗。 */
body.cam{background:#000;color:#8f979f;margin:0;overflow:hidden;
  font-family:Consolas,"新細明體",monospace}
body.cam .wrap{max-width:none;width:100vw;height:100vh;margin:0;padding:0}
.camwrap{max-width:none;margin:0;padding:0;display:flex;align-items:stretch;
  width:100vw;height:100vh;background:#000}
.cam-main{flex:1;min-width:0;display:flex;flex-direction:column;padding:12px 14px}
.cam-main .cam-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;
  overflow:hidden}
.cam-main .cam-stage canvas{width:auto;height:auto;max-width:100%;max-height:100%}
.cam-side{width:340px;flex:none;border-left:1px solid #1c2128;background:#050608;
  padding:14px 12px;overflow:auto}
.cam-side .ch{max-width:none}
@media (max-width:900px){
  body.cam{overflow:auto}
  .camwrap{flex-direction:column;height:auto}
  .cam-side{width:auto;border-left:0;border-top:1px solid #1c2128}
}
.cam-bar{display:flex;align-items:center;gap:12px;background:#0b0d10;border:1px solid #222831;
  border-bottom:0;padding:6px 10px;font-size:12px}
.cam-bar .c-rec{color:#d05252}
.cam-bar .c-id{color:#8f979f;flex:1}
.cam-bar .c-ip{color:#4d5761}
.cam-bar .c-live{color:#4d5761;letter-spacing:1px}
.cam-bar .c-live.on{color:#d05252}
.cam-stage{border:1px solid #222831;background:#000;line-height:0}
.cam-stage canvas{width:100%;height:auto;display:block}
.cam-ctl{display:flex;align-items:center;gap:10px;background:#0b0d10;border:1px solid #222831;
  border-top:0;padding:8px 10px}
.cam-ctl button{background:#14181d;color:#8f979f;border:1px solid #2b323b;font-family:inherit;
  font-size:12px;padding:4px 10px;cursor:pointer}
.cam-ctl button:hover{color:#cfd6dd;border-color:#46505c}
.cam-ctl input[type=range]{flex:1;accent-color:#5a6b7d}
.cam-ctl .c-date{width:92px;text-align:right;font-size:12px;color:#a9b2ba}
.cam-foot{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:#39424c;
  padding:8px 2px}
.cam-foot a{color:#5a6b7d}

.cam-stage{position:relative}

/* ── 合興內部訊息：終端機（琥珀）。跟彭立文那台綠色的 py.exe 刻意分開：
      那是他自己寫的東西，這是公司的主機。同一個畫面上兩台機器，顏色就是立場。 ── */
.ct{font-family:Consolas,"新細明體",monospace;font-size:12.5px;line-height:1.75;
  color:#c49648;background:#000;padding:2px 0}
.ct-h{color:#e0b45c;letter-spacing:.5px;margin-bottom:10px}
.ct-meta{color:#7d6132;font-size:12px;line-height:1.9;margin-bottom:8px}
.ct-blank{color:#4a3a1e}
.ct-rule{color:#4a3a1e;letter-spacing:-1px;margin-bottom:8px;overflow:hidden;white-space:nowrap}
.ct-ln{margin-bottom:7px;word-break:break-word}
.ct-t{color:#6d5429;margin-right:8px}
.ct-w{color:#8a6b33;margin-right:8px}
.ct-ln.b .ct-w{color:#e0b45c}
.ct-m{color:#c49648}
.ct-ln.b .ct-m{color:#e8c377}
.ct-sys{color:#5f4a24;margin-bottom:9px}
.ct-cur{color:#e0b45c;margin-top:14px}
