/* UM+ หลังบ้าน · หน้าตาแบบ Help Me ช่วยด้วย (helpme-th.pages.dev) — "Liquid Glass"
   โหลดเป็นไฟล์สุดท้ายของทุกหน้า (หลัง theme.css) ใช้สีชุดเดียวกับ theme.css: น้ำเงิน --primary · กรมท่า --navy · พื้น --bg
   - หัวเว็บ: แคปซูลกระจกลอย (โลโก้ / เมนู / ปุ่ม) แทนแถบขาวเต็มกว้าง
   - การ์ด: มุมโค้ง 22–24 ไม่มีเส้นขอบ เงานุ่ม · ปุ่มและสวิตช์เป็นแคปซูล (999px)
   - มือถือ: เมนูย้ายลงเป็นแถบแท็บลอยด้านล่างแบบ Help Me */
:root{
  --glass:rgba(255,255,255,.72);--glass-b:rgba(255,255,255,.7);--glass-blur:saturate(1.8) blur(18px);
  --pill:999px;--r-card:22px;--r-field:14px;
  --shadow-soft:0 1px 2px rgba(22,27,61,.04),0 8px 24px rgba(22,27,61,.06);
  --shadow-float:0 8px 28px rgba(22,27,61,.12),0 1px 3px rgba(22,27,61,.08);
  --font:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","IBM Plex Sans Thai",system-ui,sans-serif;
  --tab-h:64px;--safe-b:env(safe-area-inset-bottom,0px)
}
body,button,input,select,textarea{font-family:var(--font)}
body{background:var(--bg)}

/* ---------- หัวเว็บ: แคปซูลกระจก ---------- */
.top{background:transparent!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  padding:12px clamp(12px,2.4vw,28px)!important;gap:10px;pointer-events:none}
.top>*{pointer-events:auto}
.top::before{content:"";position:absolute;inset:0 0 -14px;z-index:-1;pointer-events:none;
  background:linear-gradient(var(--bg) 0,var(--bg) 55%,rgba(242,243,247,0))}
.brand{background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-b);
  border-radius:var(--pill);padding:6px 16px 6px 8px;box-shadow:var(--shadow-float);font-size:16px;white-space:nowrap}
.brand img{height:32px!important;width:auto}
.tabs{background:var(--glass)!important;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-b);
  border-radius:var(--pill)!important;padding:5px!important;box-shadow:var(--shadow-float)}
.tabs a{border-radius:var(--pill)!important;padding:8px 16px!important;color:var(--muted)!important}
.tabs a:hover{background:rgba(255,255,255,.8)!important;color:var(--ink)!important}
.tabs a[aria-current=page]{background:var(--tint)!important;color:var(--primary)!important;box-shadow:none!important}
.top-r{background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-b);
  border-radius:var(--pill);padding:5px 5px 5px 14px;box-shadow:var(--shadow-float)}
.top .btn.ghost{border-radius:var(--pill)!important;box-shadow:none!important;background:transparent!important}
.top .btn.ghost:hover{background:var(--tint)!important}
.bar{background:transparent!important}

/* ---------- ปุ่ม / สวิตช์ / ช่องกรอก ---------- */
.btn{border-radius:var(--pill)!important}
.btn.primary{box-shadow:0 6px 16px rgba(45,69,200,.3)!important}
.btn.ghost{background:#fff;box-shadow:0 1px 2px rgba(22,27,61,.06),inset 0 0 0 1px var(--line)!important}
.seg,.tabs-seg,.filters[role=group]{border-radius:var(--pill)!important;background:#fff;box-shadow:var(--shadow-soft)!important;padding:4px!important}
.seg button,.filters[role=group] button{border-radius:var(--pill)!important}
.seg button[aria-selected=true]{background:var(--primary)!important;color:#fff!important;box-shadow:0 4px 12px rgba(45,69,200,.28)}
.filters[role=group] button[aria-pressed=true]{background:var(--primary)!important;color:#fff!important}
input[type=search],input[type=text],input[type=number],input[type=date],input[type=password],select,textarea,.search input,.ld-q{border-radius:var(--r-field)!important}
.search{border-radius:var(--pill)}
.search input,.ld-q{border-radius:var(--pill)!important;background:#fff;border:0!important;box-shadow:var(--shadow-soft);min-height:46px;padding-left:18px}
.chip{border-radius:var(--pill)!important}

/* ---------- การ์ด ---------- */
.stat,.kpi,.card,.panel,.lead,.qcase,.team,.case,.item{border:0!important;border-radius:var(--r-card)!important;box-shadow:var(--shadow-soft)!important;background:#fff}
.stat,.kpi{padding:16px 18px!important}
.stat b,.kpi b{letter-spacing:-.02em}
.lead,.qcase{border-left:0!important;position:relative;overflow:hidden}
.lead::before,.qcase::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:5px;border-radius:0 5px 5px 0;background:#e0a800}
.lead.u3::before,.qcase.u3::before{background:var(--red)}.lead.u2::before,.qcase.u2::before{background:var(--orange)}
.lead.st-accepted::before{background:var(--ok)}.lead.st-rejected::before{background:var(--line)}
.lead.sel{box-shadow:0 0 0 2px var(--primary),var(--shadow-soft)!important}
.urg,.src,.flag,.rej,.acc,.cov,.vr,.pill{border-radius:var(--pill)!important;padding:2px 10px!important}
.mapcard,.map-wrap,.map-cell,#map,.dmap,.ld-map,.dmap-wrap{border-radius:var(--r-card)!important}
.leaflet-container{border-radius:inherit}

/* ---------- ปุ่มลอยบนแผนที่ / คำอธิบายสี ---------- */
.fab{border-radius:50%!important;background:var(--glass)!important;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-b)!important;box-shadow:var(--shadow-float)!important;color:var(--navy)!important}
.mx-legend,.layer-menu,.ld-leg{border-radius:18px!important}
.mx-legend,.layer-menu{background:var(--glass)!important;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-b);box-shadow:var(--shadow-float)!important}

/* ---------- หน้าเข้าระบบ / ลิ้นชักรายละเอียด / แจ้งเตือน ---------- */
.login{background:radial-gradient(120% 80% at 50% 0%,var(--tint) 0,var(--bg) 60%)!important}
.login-card{border-radius:28px!important;background:var(--glass)!important;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-b);box-shadow:var(--shadow-float)!important}
.drawer{border-radius:28px 0 0 28px}
.toast{border-radius:var(--pill)!important;box-shadow:var(--shadow-float)!important}

/* ---------- มือถือ: เมนูเป็นแถบแท็บลอยด้านล่าง (แบบ Help Me) ---------- */
@media(max-width:760px){
  .top{flex-wrap:nowrap}
  .tabs{position:fixed!important;z-index:1500;left:50%;transform:translateX(-50%);bottom:calc(var(--safe-b) + 10px);top:auto;
    width:min(440px,calc(100% - 20px));margin:0!important;display:flex!important;justify-content:space-between;gap:2px!important;
    overflow-x:auto;scrollbar-width:none}
  .tabs::-webkit-scrollbar{display:none}
  .tabs a{flex:1 0 auto;text-align:center;padding:10px 10px!important;font-size:13px!important}
  .brand span{display:none}
  .brand{padding:6px}
  .top-r{margin-left:auto}
  .wrap,main{padding-bottom:calc(var(--tab-h) + var(--safe-b) + 28px)!important}
  .drawer{border-radius:0}
  .toasts{bottom:calc(var(--tab-h) + var(--safe-b) + 20px)!important}
}
/* แผนที่เต็มจอ: ซ่อนแถบแท็บลอย */
body.map-fs .tabs,body.noscroll .tabs{display:none!important}
/* หน้าคิวที่ฝังในหน้าจัดการเคส ไม่ต้องมีแถบลอยซ้ำ */
html.embed .tabs,html.embed .top{display:none!important}
html.embed .wrap,html.embed main{padding-bottom:20px!important}

/* ---------- แดชบอร์ดโหมดมืด (ตามเครื่อง): กระจกสีกรมท่าแทนกระจกขาว ---------- */
/* โหมดมืด: เปิดเองจากปุ่มธีม (ค่าเริ่มต้นสว่าง ไม่ตามเครื่อง) */

  html.dash[data-theme="dark"]{--glass:rgba(27,31,51,.72);--glass-b:rgba(255,255,255,.08);
    --shadow-soft:0 1px 2px rgba(0,0,0,.3),0 8px 24px rgba(0,0,0,.25);--shadow-float:0 8px 28px rgba(0,0,0,.45)}
  html.dash[data-theme="dark"] .top::before{background:linear-gradient(var(--bg) 0,var(--bg) 55%,rgba(15,18,34,0))}
  html.dash[data-theme="dark"] .tabs{background:var(--glass)!important}
  html.dash[data-theme="dark"] .tabs a{color:var(--muted)!important}
  html.dash[data-theme="dark"] .tabs a[aria-current=page]{background:var(--tint-2)!important;color:#C7CFFF!important}
  html.dash[data-theme="dark"] .top .btn.ghost{color:var(--ink)!important}
  html.dash[data-theme="dark"] .stat,html.dash[data-theme="dark"] .kpi,html.dash[data-theme="dark"] .card,
  html.dash[data-theme="dark"] .filters[role=group],html.dash[data-theme="dark"] .seg{background:var(--surface)!important}
  html.dash[data-theme="dark"] .filters[role=group] button:not([aria-pressed=true]){background:transparent!important;color:var(--ink-2)!important}


/* ---------- แผงชั้นข้อมูลแบบ Help Me (แดชบอร์ด) ---------- */
.hm-layers{width:min(340px,calc(100vw - 32px));max-height:min(78vh,720px);overflow:auto;padding:10px!important;display:grid;gap:8px;
  background:rgba(255,255,255,.9)!important;border-radius:22px!important;scrollbar-width:thin}
.hm-layers hr{display:none}
.hm-layers .lm-bases{display:grid;gap:4px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.hm-layers .lm-bases button{display:flex;align-items:center;gap:12px;width:100%;border:0;background:transparent;border-radius:14px;padding:11px 14px;font-size:15.5px;font-weight:600;color:var(--ink);cursor:pointer;text-align:left}
.hm-layers .lm-bases button:hover{background:var(--tint)}
.hm-layers .lm-bases button[aria-pressed=true]{background:var(--primary);color:#fff;box-shadow:0 0 0 3px var(--tint-2),0 6px 16px rgba(45,69,200,.3)}
.lcard{display:grid;grid-template-columns:40px 1fr auto;gap:12px;align-items:start;background:var(--bg);border-radius:18px;padding:12px;cursor:pointer;color:var(--ink);text-decoration:none}
.lcard:hover{background:var(--tint)}
.lic{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-size:18px;background:color-mix(in srgb,var(--c) 14%,#fff)}
.ltx{display:grid;gap:3px;min-width:0}.ltx b{font-size:15px;line-height:1.3}.ltx small{color:var(--muted);font-size:12.5px;line-height:1.45}
.lchips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.lchip{display:inline-flex;align-items:center;gap:6px;background:#fff;border-radius:999px;padding:3px 10px;font-size:12px;color:var(--ink);box-shadow:0 1px 2px rgba(22,27,61,.06)}
.lchip i{width:9px;height:9px;border-radius:50%;flex:none}.lchip i.ln{width:14px;height:4px;border-radius:2px}
.lchip.rain-grad i{width:56px;height:6px;border-radius:3px;background:linear-gradient(90deg,#4fc3f7,#1e88e5,#43a047,#fdd835,#fb8c00,#e53935,#ab47bc)}
.lext{color:var(--muted);font-size:16px;padding-top:8px}
/* สวิตช์แบบ iOS */
.sw{appearance:none;-webkit-appearance:none;width:46px;height:28px;border-radius:999px;background:#C9CDE0;position:relative;cursor:pointer;flex:none;margin:6px 0 0;transition:background .2s}
.sw::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .2s}
.sw:checked{background:#34C759}.sw:checked::after{transform:translateX(18px)}
.sw:focus-visible{outline:3px solid var(--tint-2);outline-offset:2px}
/* ปุ่มเล่นเรดาร์ฝน (มุมล่างซ้าย) */
.rain-ctl{display:flex;align-items:center;gap:10px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-b);border-radius:999px;padding:5px 14px 5px 5px;box-shadow:var(--shadow-float);margin-bottom:6px!important}
.rain-ctl button{width:36px;height:36px;border-radius:50%;border:0;background:var(--primary);color:#fff;font-size:14px;cursor:pointer;box-shadow:0 4px 12px rgba(45,69,200,.3)}
.rain-ctl span{display:grid;line-height:1.15}.rain-ctl small{font-size:11px;color:var(--muted)}.rain-ctl b{font-size:15px;color:var(--ink)}
.rain-ctl.past button{background:var(--orange,#E8710A)}
/* ป้ายองค์กร / กล้อง */
.org-pin span{display:inline-block;white-space:nowrap;color:#fff;font-size:11px;font-weight:700;padding:2px 9px;border-radius:999px;border:1.5px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.25);transform:translate(-50%,-50%)}
.cam-pin span{display:grid;place-items:center;width:24px;height:22px;border-radius:7px;background:#161B3D;color:#fff;font-size:11px;border:1.5px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.35)}
.cam-img{display:block;width:260px;max-width:100%;border-radius:10px;margin-top:6px;background:var(--bg);min-height:60px}
/* โหมดมืด: เปิดเองจากปุ่มธีม (ค่าเริ่มต้นสว่าง ไม่ตามเครื่อง) */

  html.dash[data-theme="dark"] .hm-layers{background:rgba(27,31,51,.94)!important}
  html.dash[data-theme="dark"] .lcard{background:rgba(255,255,255,.05);color:var(--ink)}
  html.dash[data-theme="dark"] .lcard:hover{background:rgba(255,255,255,.09)}
  html.dash[data-theme="dark"] .lic{background:color-mix(in srgb,var(--c) 26%,#1B1F33)}
  html.dash[data-theme="dark"] .lchip{background:rgba(255,255,255,.08);color:var(--ink)}
  html.dash[data-theme="dark"] .hm-layers .lm-bases button{color:var(--ink)}


/* ภาพสดจากกล้องในป๊อปอัป */
.cam-pop{display:grid;gap:8px;min-width:260px}.cam-pop>b{font-size:14.5px;line-height:1.35}.cam-pop small{color:var(--muted);font-size:12px}
.cam-live{position:relative;width:100%;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#0F1222}
.cam-live video{width:100%;height:100%;object-fit:cover;display:block}
.cam-badge{position:absolute;left:8px;top:8px;background:#E5383B;color:#fff;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;opacity:0;transition:opacity .2s}
.cam-live.on .cam-badge{opacity:1}
.cam-msg{position:absolute;inset:0;display:grid;place-items:center;color:#C9CDE0;font-size:12.5px;text-align:center;padding:10px}
.cam-live.on .cam-msg{display:none}.cam-live.err .cam-msg{color:#FFB4B4}
.cam-msg.static{position:static;background:var(--bg);color:var(--muted);border-radius:12px;padding:16px;margin:0}
.hm-layers .lm-bases{grid-template-columns:1fr!important;display:grid!important}
.dmap-wrap .hm-layers{max-height:calc(100% - 20px)!important}

/* ปุ่มธีม (แดชบอร์ด) */
.theme-btn{min-width:38px;font-size:16px!important;line-height:1}

/* แบรนด์ Helpme+: โลโก้ Help Me ช่วยด้วย + เครื่องหมายบวกสีแดง */
.brand img.brand-logo{height:22px!important;width:auto!important}
.brand-plus{font-style:normal;color:#E5383B;font-weight:800;font-size:20px;line-height:1;margin-left:-2px}
.brand b{color:var(--ink)!important;font-weight:700}
.login-card img{width:min(230px,80%);height:auto}
@media(max-width:760px){.brand img.brand-logo{height:18px!important}.brand{padding:8px 12px!important}}
/* โหมดมืด: ตัวหนังสือในคำอธิบายสีบนแผนที่ */
html.dash[data-theme="dark"] .mx-legend{color:var(--ink)!important}
html.dash[data-theme="dark"] .brand b{color:var(--ink)!important}
html.dash[data-theme="dark"] .brand{background:rgba(255,255,255,.94)!important;border-color:rgba(255,255,255,.9)!important}
html.dash[data-theme="dark"] .brand b{color:#161B3D!important}

/* ---------- โหมดมืดของหน้าอื่น (ไม่ใช่แดชบอร์ด): กลับสีทั้งหน้า แล้วกลับคืนเฉพาะแผนที่ รูป วิดีโอ และกรอบที่ฝัง ---------- */
html[data-theme="dark"]:not(.dash){filter:invert(.9) hue-rotate(180deg);background:#fff}
html[data-theme="dark"]:not(.dash) :is(img,video,iframe,canvas,.leaflet-container,.cam-live){filter:invert(1) hue-rotate(180deg)}
html[data-theme="dark"]:not(.dash) .leaflet-container :is(img,video,canvas,.cam-live){filter:none}
.cam-golive{display:block;width:100%;text-align:left;border:0;border-radius:12px;background:var(--tint);color:var(--primary);font:inherit;font-size:12.5px;font-weight:600;padding:8px 10px;cursor:pointer}
.cam-golive:hover{background:var(--tint-2)}

/* ---------- โทรหาทีม (teamcall.js) ---------- */
.call-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.call-btn{display:inline-flex;align-items:center;gap:4px;border:0;border-radius:999px;padding:6px 12px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;text-decoration:none!important;background:var(--tint);color:var(--primary)}
.call-btn:hover{background:var(--tint-2)}
.call-btn.tel{background:var(--ok,#2E9E57);color:#fff}.call-btn.tel:hover{filter:brightness(.95)}
.call-btn.vid{background:var(--primary);color:#fff}
.call-none{font-size:12.5px;color:var(--muted);align-self:center}
.call-sheet{display:grid;gap:10px;padding:18px 20px}.call-msg{background:var(--bg);border-radius:14px;padding:10px 12px;font-size:14px;white-space:pre-wrap}
.call-sheet .call-btn{font-size:15px;padding:10px 16px}
.tc-bg{position:fixed;inset:0;background:rgba(16,22,48,.35);z-index:3000}
.tc-sheet{position:fixed;z-index:3001;left:50%;top:50%;transform:translate(-50%,-50%);width:min(460px,calc(100% - 24px));background:#fff;border-radius:24px;box-shadow:0 18px 48px rgba(22,27,61,.25);padding:18px 20px;display:grid;gap:10px}
.tc-h{display:flex;justify-content:space-between;align-items:center;gap:10px}.tc-h b{font-size:17px}
.tc-x{border:0;background:var(--bg);border-radius:50%;width:34px;height:34px;cursor:pointer;font-size:15px}
.tc-sub{margin:0;color:var(--muted);font-size:13.5px}
.tc-link{width:100%;border:1px solid var(--line);border-radius:12px;padding:10px 12px;font:inherit;font-size:13.5px;background:var(--bg)}
.tc-acts{display:flex;flex-wrap:wrap;gap:8px}.tc-acts .btn{flex:1 1 auto;justify-content:center;text-align:center}
@media(max-width:760px){.tc-sheet{top:auto;bottom:calc(var(--tab-h,64px) + 16px);transform:translateX(-50%)}}

/* ปุ่มช่วงเวลา GISTDA ในแผงชั้นข้อมูล */
.gistda-range .lchip{border:0;cursor:pointer;font:inherit;font-size:12px}
.gistda-range .lchip[aria-pressed=true]{background:var(--primary);color:#fff}

/* ---------- แชทกับทีม (chat.js) ฟองมุมขวาล่าง ---------- */
.chat-fab{position:fixed;right:18px;bottom:18px;z-index:2500;width:56px;height:56px;border-radius:50%;border:0;background:var(--primary);color:#fff;font-size:24px;cursor:pointer;box-shadow:0 8px 24px rgba(45,69,200,.35)}
.chat-badge{position:absolute;top:-4px;right:-4px;min-width:22px;height:22px;border-radius:999px;background:var(--red,#E5383B);color:#fff;font-size:12px;line-height:22px;padding:0 6px;border:2px solid #fff}
.chat-win{position:fixed;right:18px;bottom:86px;z-index:2500;width:min(380px,calc(100vw - 24px));height:min(560px,calc(100vh - 120px));background:#fff;border-radius:24px;box-shadow:0 18px 48px rgba(22,27,61,.25);display:flex;flex-direction:column;overflow:hidden}
.chat-h{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--line)}
.chat-title{flex:1;font-size:16px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-back,.chat-x{border:0;background:var(--bg);border-radius:50%;width:32px;height:32px;cursor:pointer;font-size:16px}
.chat-share{font-size:12.5px;font-weight:600;color:var(--primary);background:var(--tint);border-radius:999px;padding:5px 10px;text-decoration:none}
.chat-list{flex:1;overflow:auto;padding:6px}
.chat-row{display:flex;align-items:center;gap:10px;width:100%;border:0;background:transparent;border-radius:14px;padding:9px 10px;text-align:left;cursor:pointer;color:var(--ink)}
.chat-row:hover{background:var(--bg)}.chat-row.new b{color:var(--primary)}
.chat-av{flex:none;width:38px;height:38px;border-radius:50%;background:var(--tint);color:var(--primary);display:grid;place-items:center;font-weight:700}
.chat-rt{flex:1;min-width:0;display:grid}.chat-rt small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-rm{display:grid;justify-items:end;gap:2px}.chat-rm small{color:var(--muted);font-size:11.5px}
.chat-n{background:var(--red,#E5383B);color:#fff;border-radius:999px;font-size:11px;padding:1px 7px}
.chat-sec{margin:10px 10px 2px;font-size:12px;color:var(--muted);font-weight:600}
.chat-empty{color:var(--muted);text-align:center;font-size:13.5px;padding:20px 12px;margin:0}
.chat-msgs{flex:1;overflow:auto;padding:12px;display:flex;flex-direction:column;gap:6px;background:var(--bg)}
.chat-m{max-width:85%;background:#fff;border-radius:16px;padding:8px 12px;box-shadow:0 1px 2px rgba(22,27,61,.06)}
.chat-m p{margin:0;white-space:pre-wrap;word-wrap:break-word;font-size:14.5px}
.chat-m.them{align-self:flex-start;border-bottom-left-radius:5px}.chat-m.me{align-self:flex-end;background:var(--primary);color:#fff;border-bottom-right-radius:5px}
.chat-m.pending{opacity:.6}.chat-who{display:block;font-weight:700;color:var(--primary);font-size:12px}
.chat-t{display:block;font-size:11px;opacity:.7;margin-top:2px}.chat-m.me .chat-loc{color:#fff}
.chat-loc{display:block;font-size:13.5px;font-weight:600}
.chat-day{align-self:center;font-size:11.5px;color:var(--muted);margin:4px 0}
.chat-form{display:flex;gap:8px;padding:10px;border-top:1px solid var(--line)}
.chat-in{flex:1;border:1px solid var(--line);border-radius:999px;padding:10px 14px;font:inherit;font-size:15px}
.chat-send{flex:none;width:42px;height:42px;border-radius:50%;border:0;background:var(--primary);color:#fff;font-size:16px;cursor:pointer}
@media(max-width:760px){.chat-fab{bottom:calc(var(--tab-h,64px) + 24px + var(--safe-b));right:14px;width:50px;height:50px}
  .chat-win{right:8px;left:8px;width:auto;bottom:calc(var(--tab-h,64px) + 84px + var(--safe-b));height:calc(100vh - 210px)}}
html[data-theme="dark"]:not(.dash) .chat-root{filter:none}
html.dash[data-theme="dark"] .chat-win{background:#1B1F33;color:var(--ink)}html.dash[data-theme="dark"] .chat-msgs{background:#0F1222}
html.dash[data-theme="dark"] .chat-m.them,html.dash[data-theme="dark"] .chat-in{background:#24294A;color:var(--ink);border-color:rgba(255,255,255,.1)}
html.dash[data-theme="dark"] .chat-row{color:var(--ink)}html.dash[data-theme="dark"] .chat-row:hover{background:rgba(255,255,255,.06)}
/* กล้องในลิ้นชักเคส: ภาพสด/ภาพนิ่งเล่นในหน้าเลย */
.vr-cam-grid.live{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.vr-cam-grid.live figure{margin:0;background:var(--bg);border-radius:14px;padding:8px}
.vr-cam-grid.live .cam-pop{min-width:0}.vr-cam-grid.live figcaption{font-size:12px;color:var(--muted);margin-top:4px}

/* ปุ่มแสดงรหัสในช่องเข้าระบบ */
.pw-wrap{position:relative;display:block}.pw-wrap input{width:100%;padding-right:52px!important}
.pw-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:0;background:transparent;font-size:18px;width:40px;height:40px;cursor:pointer;border-radius:50%}.pw-eye:hover{background:var(--tint)}

/* ไอคอนเส้น (icons.js): ขนาดตามตัวหนังสือ สีตามข้อความ */
.ic{width:1.15em;height:1.15em;vertical-align:-.22em;flex:none;display:inline-block}
.btn .ic,.call-btn .ic,.tabs a .ic{width:1.1em;height:1.1em}
.fab .ic,.chat-fab .ic{width:24px;height:24px}.chat-send .ic,.rain-ctl button .ic{width:18px;height:18px}
.lic .ic{width:20px;height:20px;color:var(--c)}
.pw-eye .ic,.theme-btn .ic{width:19px;height:19px}
.chat-back .ic,.chat-x .ic,.tc-x .ic,.x .ic{width:16px;height:16px}

/* ศูนย์พักพิง / จุดเครือข่าย บนแผนที่ */
.place-pin{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;background:#fff;border:2px solid var(--c);color:var(--c);border-radius:999px;padding:2px 9px 2px 5px;font-size:11.5px;box-shadow:0 2px 6px rgba(0,0,0,.25);transform:translate(-50%,-50%)}.place-pin .ic{width:15px;height:15px}.place-pin b{color:#161B3D}
