/* MISTER FAST LiveMapChat V59.3 Map Visibility Handle Correction
   Layout only: Chat, Room, API, Polling, Map data and Composer remain unchanged. */

:root{
  --mf591-sidebar:76px;
  --mf591-handle:30px;
  --mf591-chat:420px;
  --mf591-chat-min:320px;
  --mf591-chat-max:620px;
}

.mf514-body{
  min-width:0;
  min-height:0;
  overflow:hidden;
}

.mf514-window,
.mf514-window.is-expanded,
.mf514-window.is-map-fullscreen{
  width:min(1320px,calc(100vw - 32px));
  height:min(780px,calc(100dvh - 32px));
  min-width:0;
  min-height:0;
}

/* One geometry owner only: Sidebar | Map | Handle | Chat */
.mf514-grid,
.mf514-window.is-expanded .mf514-grid,
.mf514-window.is-map-fullscreen .mf514-grid{
  position:relative;
  display:grid;
  grid-template-columns:var(--mf591-sidebar) minmax(0,1fr) var(--mf591-handle) minmax(0,var(--mf591-chat));
  grid-template-areas:"sidebar map handle chat";
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  overflow:hidden;
  transition:grid-template-columns .16s ease;
}

.mf514-sidebar{
  grid-area:sidebar;
  min-width:0;
  min-height:0;
}

.mf514-map-pane,
.mf514-window.is-expanded .mf514-map-pane,
.mf514-window.is-map-fullscreen .mf514-map-pane{
  grid-area:map;
  display:flex;
  flex-direction:column;
  width:auto;
  min-width:0;
  min-height:0;
  overflow:hidden;
}

.mf514-map-wrap{
  flex:1 1 auto;
  width:100%;
  height:auto;
  min-width:0;
  min-height:0;
}

#mf514Map{
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
}

.mf514-chat-pane,
.mf514-window.is-expanded .mf514-chat-pane,
.mf514-window.is-map-fullscreen .mf514-chat-pane{
  grid-area:chat;
  display:flex;
  width:auto;
  min-width:0;
  max-width:none;
  min-height:0;
  overflow:hidden;
}

.mf59-edge-handle{
  grid-area:handle;
  align-self:center;
  justify-self:stretch;
  z-index:1200;
  width:var(--mf591-handle);
  height:82px;
  margin:0;
  padding:0;
  border:0;
  border-radius:12px 0 0 12px;
  background:#003DA5;
  color:#fff;
  box-shadow:0 8px 22px rgba(0,45,105,.28);
  cursor:col-resize;
  touch-action:none;
  user-select:none;
  display:grid;
  place-items:center;
}

.mf59-edge-handle span{
  font-size:30px;
  font-weight:900;
  line-height:1;
  pointer-events:none;
}

.mf59-edge-handle:focus-visible{
  outline:3px solid rgba(255,196,0,.75);
  outline-offset:2px;
}

body.mf59-resizing,
body.mf59-resizing *{
  cursor:col-resize!important;
  user-select:none!important;
}

body.mf59-resizing .mf514-grid{
  transition:none!important;
}

/* Desktop click state: Sidebar | Handle | Chat. Map owns no column. */
.mf514-window.mf593-map-hidden .mf514-grid{
  grid-template-columns:var(--mf591-sidebar) var(--mf591-handle) minmax(0,1fr);
  grid-template-areas:"sidebar handle chat";
}

.mf514-window.mf593-map-hidden .mf514-map-pane{
  display:none;
}

.mf514-window.mf593-map-hidden .mf514-chat-pane{
  display:flex;
}

.mf514-window.mf593-map-hidden .mf59-edge-handle{
  border-radius:0 12px 12px 0;
  cursor:pointer;
}

/* Mini: exactly two states. Hidden pane does not reserve width. */
@media (max-width:760px){
  :root{
    --mf591-sidebar:68px;
    --mf591-handle:34px;
  }

  body.mf514-body{padding:0}

  .mf514-window,
  .mf514-window.is-expanded,
  .mf514-window.is-map-fullscreen{
    width:100vw;
    height:100dvh;
    border:0;
    border-radius:0;
    box-shadow:none;
  }

  .mf514-titlebar{display:none}

  .mf514-grid,
  .mf514-window.is-expanded .mf514-grid,
  .mf514-window.is-map-fullscreen .mf514-grid,
  .mf514-window.mf593-map-hidden .mf514-grid{
    grid-template-columns:var(--mf591-sidebar) minmax(0,1fr);
    grid-template-areas:"sidebar chat";
    transition:none;
  }

  .mf514-map-pane,
  .mf514-window.is-expanded .mf514-map-pane,
  .mf514-window.is-map-fullscreen .mf514-map-pane{
    display:none;
  }

  .mf514-chat-pane,
  .mf514-window.is-expanded .mf514-chat-pane,
  .mf514-window.is-map-fullscreen .mf514-chat-pane{
    display:flex;
  }

  .mf59-edge-handle{
    position:absolute;
    left:var(--mf591-sidebar);
    top:50%;
    transform:translate(-1px,-50%);
    width:34px;
    height:80px;
    border-radius:0 14px 14px 0;
    cursor:pointer;
  }

  .mf514-window.mf59-map-open .mf514-grid{
    grid-template-areas:"sidebar map";
  }

  .mf514-window.mf59-map-open .mf514-map-pane{display:flex}
  .mf514-window.mf59-map-open .mf514-chat-pane{display:none}
  .mf514-window.mf59-map-open .mf59-edge-handle span{transform:rotate(180deg)}

  .mf514-window.mf593-map-hidden .mf514-chat-pane{display:flex}
  .mf514-menu button{width:56px}
}

@media (prefers-reduced-motion:reduce){
  .mf514-grid{transition:none!important}
}

/* V59.2 — Radius bar is part of the map, flush with its lower edge. */
.mf514-map-wrap{
  position:relative;
  overflow:hidden;
}

.mf514-map-wrap > .mf532-radius-panel{
  left:0;
  right:0;
  bottom:0;
  width:100%;
  margin:0;
  box-sizing:border-box;
  border-left:0;
  border-right:0;
  border-bottom:0;
  border-radius:16px 16px 0 0;
  box-shadow:0 -8px 24px rgba(0,45,105,.10);
}

@media (max-width:760px){
  .mf514-map-wrap > .mf532-radius-panel{
    left:0;
    right:0;
    bottom:0;
    border-radius:14px 14px 0 0;
  }
}

/* V59.4 — Responsive Typography Normalization
   Typography only. Layout engine, map, chat runtime and API remain unchanged. */
:root{
  --mf594-font:'Kanit','Prompt','Noto Sans Thai',Tahoma,Arial,sans-serif;
}
html,body,.mf514-window,.mf514-window button,.mf514-window input,.mf514-window textarea,.mf514-window select{
  font-family:var(--mf594-font);
  font-synthesis:none;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
.mf514-window{
  font-size:14px;
  line-height:1.35;
}
.mf514-title b{font-size:18px;line-height:1.2;font-weight:800}
.mf545-chat-brand b{font-size:18px;line-height:1.15;font-weight:800}
.mf545-chat-brand small{font-size:11px;line-height:1.2}
.mf514-chat-head-actions em{font-size:14px;line-height:1;font-weight:700;white-space:nowrap}
.mf514-members b{font-size:11px;line-height:1.15;font-weight:700}
.mf514-members small{font-size:8px;line-height:1.15}
.mf514-message b{font-size:11px;line-height:1.2}
.mf514-message b em{font-size:8px;line-height:1.2}
.mf514-message p{font-size:12px;line-height:1.45}
.mf514-message small{font-size:8px;line-height:1.2}
.mf514-composer>input[name=message]{font-size:13px;line-height:1.2}
.mf514-routebar button b{font-size:15px;line-height:1.2}
.mf514-routebar button small{font-size:11px;line-height:1.25}
.mf532-radius-panel,.mf532-radius-panel button,.mf532-radius-panel input{font-family:var(--mf594-font)}
.mf532-radius-head b{font-size:14px;line-height:1.2}
.mf532-radius-head small{font-size:10px;line-height:1.2}
.mf532-radius-head strong{font-size:15px;line-height:1.1}
.mf532-radius-presets button{font-size:13px;line-height:1;font-weight:600}

@media (max-width:760px){
  .mf514-window{font-size:13px}
  .mf545-chat-brand b{font-size:17px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:210px}
  .mf545-chat-brand small{font-size:10px}
  .mf514-chat-head-actions em{font-size:12px}
  .mf514-members{grid-template-columns:repeat(4,minmax(0,1fr))}
  .mf514-members button,.mf514-members a{padding:4px 2px;overflow:hidden}
  .mf514-members span{font-size:18px;line-height:1}
  .mf514-members b{font-size:10px;line-height:1.1;max-width:100%;overflow:hidden;text-overflow:ellipsis}
  .mf514-members small{font-size:7px;line-height:1.05;max-width:100%;overflow:hidden;text-overflow:ellipsis}
  .mf514-message>div{max-width:82%;padding:9px 10px}
  .mf514-message b{font-size:10px}
  .mf514-message p{font-size:11px;line-height:1.4}
  .mf514-message small{font-size:7px}
  .mf514-composer>input[name=message]{font-size:12px}
  .mf514-routebar button{min-width:0;padding:8px 4px}
  .mf514-routebar button span{font-size:18px;line-height:1}
  .mf514-routebar button b{font-size:12px;line-height:1.15;white-space:normal}
  .mf514-routebar button small{font-size:9px;line-height:1.15;white-space:normal}
  .mf532-radius-head strong{font-size:14px}
  .mf532-radius-presets button{font-size:12px}
}

@media (max-width:480px){
  .mf545-chat-brand b{font-size:16px;max-width:165px}
  .mf514-chat-head-actions em{font-size:11px}
  .mf514-members b{font-size:9px}
  .mf514-members small{font-size:6.5px}
  .mf514-routebar{gap:5px}
  .mf514-routebar button b{font-size:11px}
  .mf514-routebar button small{font-size:8px}
  .mf514-message p{font-size:10.5px}
  .mf514-composer>input[name=message]{font-size:11.5px}
}


/* =========================================================
   V59.5 — RESPONSIVE DIALOG SYSTEM
   Scope: private Job/LMC room dialog only.
   ========================================================= */
.mf544-room-dialog{
  box-sizing:border-box;
  width:min(440px,calc(100vw - 32px));
  max-width:440px;
  margin:auto;
  padding:0;
  border:0;
  border-radius:22px;
  background:#fff;
  color:#0b2f67;
  overflow:hidden;
  box-shadow:0 28px 80px rgba(0,45,110,.28);
  font-family:Kanit,Prompt,"Noto Sans Thai",Tahoma,sans-serif;
}
.mf544-room-dialog[open]{display:block}
.mf544-room-dialog::backdrop{
  background:rgba(0,31,75,.38);
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
}
.mf544-room-form{display:grid;gap:0;margin:0;background:#fff}
.mf544-room-form>header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:20px 20px 16px;
  border-bottom:1px solid #dce7f5;
}
.mf544-room-form>header>div{min-width:0;display:grid;gap:3px}
.mf544-room-form>header b{
  display:block;
  font-size:19px;
  line-height:1.25;
  font-weight:800;
  color:#003da5;
  overflow-wrap:anywhere;
}
.mf544-room-form>header small{
  display:block;
  font-size:12px;
  line-height:1.45;
  font-weight:500;
  color:#667892;
}
.mf544-room-form>header button{
  flex:0 0 36px;
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border:1px solid #d6e2f2;
  border-radius:11px;
  background:#f7faff;
  color:#003da5;
  font-size:23px;
  line-height:1;
  cursor:pointer;
}
.mf544-room-form>label{
  display:grid;
  gap:7px;
  padding:18px 20px 8px;
}
.mf544-room-form>label>span{
  font-size:13px;
  line-height:1.3;
  font-weight:700;
  color:#173d73;
}
.mf544-room-form input[data-mf544-room-code]{
  box-sizing:border-box;
  display:block;
  width:100%;
  min-width:0;
  height:46px;
  padding:0 13px;
  border:1px solid #c8d8ed;
  border-radius:13px;
  background:#fff;
  color:#0b2f67;
  font:600 14px/1.2 Kanit,Prompt,"Noto Sans Thai",Tahoma,sans-serif;
  outline:none;
}
.mf544-room-form input[data-mf544-room-code]::placeholder{color:#8b9ab0;font-weight:400}
.mf544-room-form input[data-mf544-room-code]:focus{
  border-color:#003da5;
  box-shadow:0 0 0 3px rgba(0,61,165,.11);
}
.mf544-room-form [data-mf544-room-error]{
  margin:0;
  padding:2px 20px 8px;
  color:#b42318;
  font-size:11px;
  line-height:1.4;
  font-weight:700;
}
.mf544-room-form [data-mf544-room-error][hidden]{display:none}
.mf544-room-form>footer{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  padding:14px 20px 20px;
}
.mf544-room-form>footer button{
  min-width:108px;
  height:42px;
  padding:0 18px;
  border:1px solid #cbd9eb;
  border-radius:12px;
  background:#f7faff;
  color:#173d73;
  font:700 13px/1 Kanit,Prompt,"Noto Sans Thai",Tahoma,sans-serif;
  cursor:pointer;
}
.mf544-room-form>footer button.is-primary{
  border-color:#ffc400;
  background:#ffc400;
  color:#003da5;
  font-weight:800;
}
.mf544-room-form button:focus-visible,
.mf544-room-form input:focus-visible{outline:2px solid #003da5;outline-offset:2px}

@media(max-width:700px){
  .mf544-room-dialog{
    width:min(390px,calc(100vw - 24px));
    max-width:calc(100vw - 24px);
    border-radius:18px;
  }
  .mf544-room-form>header{padding:17px 16px 14px}
  .mf544-room-form>header b{font-size:17px}
  .mf544-room-form>header small{font-size:11px}
  .mf544-room-form>label{padding:16px 16px 7px}
  .mf544-room-form [data-mf544-room-error]{padding-left:16px;padding-right:16px}
  .mf544-room-form>footer{padding:12px 16px 17px}
}
@media(max-width:420px){
  .mf544-room-dialog{width:calc(100vw - 18px);max-width:calc(100vw - 18px);border-radius:16px}
  .mf544-room-form>header{gap:9px;padding:15px 14px 12px}
  .mf544-room-form>header b{font-size:16px}
  .mf544-room-form>header small{font-size:10px;line-height:1.35}
  .mf544-room-form>header button{width:32px;height:32px;flex-basis:32px;border-radius:9px}
  .mf544-room-form>label{padding:14px 14px 6px}
  .mf544-room-form input[data-mf544-room-code]{height:43px;font-size:13px}
  .mf544-room-form [data-mf544-room-error]{padding-left:14px;padding-right:14px;font-size:10px}
  .mf544-room-form>footer{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:11px 14px 15px}
  .mf544-room-form>footer button{width:100%;min-width:0;height:41px;padding:0 8px;font-size:12px}
}


/* =========================================================
   V59.6 — MOBILE COMPOSER & COMPACT USER HEADER
   Scope: mobile typography/header/composer only.
   Layout engine, map visibility, room and chat runtime unchanged.
   ========================================================= */
@media (max-width:480px){
  /* Logged-in identity: compact person avatar + online status only. */
  .mf514-chat-head{
    min-height:62px;
    padding:7px 9px;
  }
  .mf545-chat-brand{gap:7px;min-width:0}
  .mf545-auth-state span{
    width:42px;
    height:42px;
    border-radius:13px;
    font-size:21px;
  }
  .mf545-chat-brand section{min-width:0}
  .mf545-chat-brand section>b{display:none}
  .mf545-chat-brand section>small{
    display:flex;
    align-items:center;
    white-space:nowrap;
    font-size:11px;
    font-weight:700;
    color:#173d73;
  }
  .mf514-chat-head-actions{margin-left:auto;min-width:0}
  .mf514-chat-head-actions em{
    max-width:94px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:11px;
  }

  /* Two-row mobile composer: all tools remain, input gets a full row. */
  .mf514-composer{
    flex:0 0 96px;
    min-height:96px;
    display:grid;
    grid-template-columns:repeat(4,34px) minmax(0,1fr) 46px;
    grid-template-rows:34px 46px;
    align-items:center;
    gap:5px;
    padding:6px 8px 7px;
  }
  .mf514-composer>button:not(.mf514-send){
    width:34px;
    height:34px;
    min-width:34px;
    padding:0;
    font-size:17px;
    border-radius:10px;
  }
  .mf514-composer>button:nth-of-type(1){grid-column:1;grid-row:1}
  .mf514-composer>button:nth-of-type(2){grid-column:2;grid-row:1}
  .mf514-composer>button:nth-of-type(3){grid-column:3;grid-row:1}
  .mf514-composer>button:nth-of-type(4){grid-column:4;grid-row:1}
  .mf514-composer>input[name=message]{
    grid-column:1 / 6;
    grid-row:2;
    width:100%;
    min-width:0;
    height:44px;
    border-radius:22px;
    padding:0 15px;
    font-size:14px;
    line-height:1.2;
  }
  .mf514-composer>.mf514-send{
    grid-column:6;
    grid-row:2;
    width:46px;
    height:46px;
    min-width:46px;
    font-size:23px;
  }
  .mf514-emoji{flex-basis:46px;min-height:46px}
}

@media (min-width:481px) and (max-width:700px){
  .mf545-chat-brand section>b{
    max-width:120px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .mf514-composer>input[name=message]{font-size:13px;min-width:120px}
}

/* =========================================================
   V59.7 — UI POLISH
   Visual refinement only. No layout, map, room or chat logic changes.
   ========================================================= */
:root{
  --mf597-blue:#003da5;
  --mf597-yellow:#ffc400;
  --mf597-ink:#0b2f67;
  --mf597-line:#d9e5f3;
  --mf597-soft:#f5f9ff;
  --mf597-radius:16px;
}

/* Global rhythm and typography */
.mf514-window,
.mf514-window button,
.mf514-window input{
  font-family:Kanit,Prompt,"Noto Sans Thai",Tahoma,sans-serif;
}
.mf514-window{letter-spacing:0;text-rendering:optimizeLegibility}

/* Sidebar: equal visual weight and tighter vertical rhythm */
.mf514-sidebar{gap:8px;padding-top:10px;padding-bottom:10px}
.mf514-brand,
.mf514-menu a,
.mf514-menu button{
  border-radius:15px;
  transition:background-color .16s ease,transform .16s ease,box-shadow .16s ease;
}
.mf514-menu a:hover,
.mf514-menu button:hover{transform:translateY(-1px)}
.mf514-menu .is-active{box-shadow:0 5px 14px rgba(0,61,165,.18)}

/* Chat header */
.mf514-chat-head{
  border-bottom:2px solid var(--mf597-yellow);
  background:#fff;
}
.mf545-chat-brand{align-items:center}
.mf545-chat-brand section>b{line-height:1.15;color:var(--mf597-ink)}
.mf545-chat-brand section>small{line-height:1.15}
.mf514-chat-head-actions em{font-style:normal;color:var(--mf597-ink);font-weight:800}

/* Room member row */
.mf514-members{
  background:#fff;
  border-bottom:1px solid var(--mf597-line);
}
.mf514-members>*{
  min-width:0;
  padding-top:11px;
  padding-bottom:10px;
}
.mf514-members b{
  display:block;
  color:var(--mf597-ink);
  line-height:1.12;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.mf514-members small{
  display:block;
  margin-top:3px;
  line-height:1.1;
  color:#74839a;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.mf514-members .is-active{background:#fff9df}

/* Message canvas and bubbles */
.mf514-messages{
  background:#f6f9fd;
  scrollbar-gutter:stable;
}
.mf514-message{margin-block:7px}
.mf514-message>section,
.mf514-message>div:not(.mf514-message-avatar){
  border-radius:17px;
}
.mf514-message p{
  margin:4px 0 3px;
  line-height:1.42;
  overflow-wrap:anywhere;
}
.mf514-message small{line-height:1.2;color:#7c8aa0}
.mf514-message-avatar{
  display:grid;
  place-items:center;
  border:1px solid #d2e0ef;
  background:#fff;
  color:var(--mf597-ink);
}

/* Composer: cleaner control hierarchy */
.mf514-composer{
  border-top:1px solid var(--mf597-line);
  background:#fff;
}
.mf514-composer>button:not(.mf514-send){
  border:1px solid #d8e4f2;
  background:#f7faff;
  color:var(--mf597-ink);
}
.mf514-composer>button:not(.mf514-send):hover{background:#edf5ff}
.mf514-composer>input[name=message]{
  border:1px solid #ccdaec;
  background:#fff;
  color:var(--mf597-ink);
  box-shadow:none;
}
.mf514-composer>input[name=message]:focus{
  border-color:var(--mf597-blue);
  box-shadow:0 0 0 3px rgba(0,61,165,.09);
  outline:none;
}
.mf514-composer>.mf514-send{
  border:0;
  background:var(--mf597-yellow);
  color:var(--mf597-blue);
  box-shadow:0 6px 16px rgba(255,196,0,.24);
}
.mf514-composer>.mf514-send:active{transform:scale(.97)}

/* Map toolbar and radius bar alignment */
.mf514-routebar{gap:8px}
.mf514-routebar button{border-radius:14px}
.mf532-radius-panel{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.mf532-radius-presets button{border-radius:11px}

/* Handle refinement */
.mf59-edge-handle{
  box-shadow:0 8px 20px rgba(0,61,165,.24);
  transition:box-shadow .16s ease,transform .16s ease;
}
.mf59-edge-handle:hover{box-shadow:0 10px 24px rgba(0,61,165,.32)}

@media (max-width:700px){
  .mf514-sidebar{gap:7px;padding-top:8px;padding-bottom:8px}
  .mf514-members>*{padding-top:9px;padding-bottom:8px}
  .mf514-message{margin-block:6px}
  .mf514-message p{line-height:1.38}
  .mf59-edge-handle{box-shadow:0 6px 16px rgba(0,61,165,.22)}
}

@media (max-width:480px){
  /* Header balance */
  .mf514-chat-head{padding-left:10px;padding-right:10px}
  .mf545-auth-state span{box-shadow:0 3px 10px rgba(0,61,165,.10)}
  .mf514-chat-head-actions em{font-size:12px;max-width:110px}

  /* Room tabs stay readable without increasing height */
  .mf514-members{min-height:74px}
  .mf514-members>*{padding-left:4px;padding-right:4px}
  .mf514-members b{font-size:10px;line-height:1.05}
  .mf514-members small{font-size:7px;line-height:1.05;margin-top:2px}

  /* Bubble density */
  .mf514-messages{padding-top:8px;padding-bottom:8px}
  .mf514-message p{font-size:12px;line-height:1.38}
  .mf514-message small{font-size:8px}
  .mf514-message-avatar{font-size:12px}

  /* Composer keeps two-row layout from V59.6 but looks more deliberate */
  .mf514-composer{gap:6px;padding:7px 9px 8px}
  .mf514-composer>button:not(.mf514-send){border-radius:11px}
  .mf514-composer>input[name=message]{
    height:46px;
    border-radius:23px;
    padding-left:16px;
    padding-right:16px;
    font-size:14px;
  }
  .mf514-composer>.mf514-send{
    width:48px;
    height:48px;
    min-width:48px;
    border-radius:50%;
  }
}

/* =========================================================
   V59.8 — CHAT MEDIA & STORAGE POLICY
   ========================================================= */
.mf598-image-card{
  display:block;max-width:320px;border:1px solid #d8e5f7;border-radius:14px;
  overflow:hidden;background:#fff;text-decoration:none;color:#003DA5;
}
.mf598-image-card img{display:block;width:100%;max-height:300px;object-fit:cover;background:#eef4fb}
.mf598-image-card>span{display:block;padding:7px 10px;font-size:11px;font-weight:700;text-align:center}
.mf598-file-card{display:flex;align-items:center;gap:10px;min-width:210px;max-width:320px;padding:11px 12px;border:1px solid #d8e5f7;border-radius:13px;background:#fff;text-decoration:none;color:#102a4d}
.mf598-file-card>span:first-child{font-size:26px}.mf598-file-card b,.mf598-file-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mf598-file-card b{font-size:12px}.mf598-file-card small{font-size:10px;color:#6d7f95;margin-top:2px}
.mf598-expired-media{display:flex;align-items:center;gap:9px;min-width:210px;padding:11px 12px;border:1px dashed #b9c8da;border-radius:13px;background:#f5f8fc;color:#53657a}
.mf598-expired-media>span{font-size:22px}.mf598-expired-media b,.mf598-expired-media small{display:block}.mf598-expired-media b{font-size:12px}.mf598-expired-media small{font-size:9px}
@media(max-width:760px){.mf598-image-card,.mf598-file-card{max-width:min(270px,100%)}.mf598-image-card img{max-height:230px}}


/* V60 Production media presentation */
.mf598-image-card{appearance:none;-webkit-appearance:none;padding:0;border:1px solid #d8e3f0;cursor:zoom-in;text-align:inherit;font:inherit;color:inherit;overflow:hidden;box-sizing:border-box}
.mf598-image-card img{width:100%;height:auto;max-height:360px;object-fit:contain;background:#f4f7fb}
.mf600-media-unavailable{display:flex;align-items:center;gap:10px;width:min(300px,100%);padding:12px;border:1px dashed #9fb1c7;border-radius:14px;background:#f7f9fc;color:#50657b;box-sizing:border-box}
.mf600-media-unavailable>span:first-child{font-size:24px}.mf600-media-unavailable b,.mf600-media-unavailable small{display:block}.mf600-media-unavailable b{font-size:12px}.mf600-media-unavailable small{font-size:10px;line-height:1.45;margin-top:2px}
.mf600-viewer-open{overflow:hidden}
.mf600-image-viewer{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;padding:20px;background:rgba(0,26,65,.88);backdrop-filter:blur(4px)}
.mf600-viewer-stage{display:flex;flex-direction:column;align-items:center;gap:12px;max-width:96vw;max-height:94vh}
.mf600-viewer-stage img{display:block;max-width:94vw;max-height:84vh;object-fit:contain;border-radius:14px;background:#fff;box-shadow:0 24px 80px rgba(0,0,0,.38)}
.mf600-viewer-stage a{padding:9px 14px;border-radius:999px;background:#fff;color:#003da5;text-decoration:none;font-weight:700;font-size:12px}
.mf600-viewer-close{position:fixed;top:max(14px,env(safe-area-inset-top));right:16px;width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:#003da5;font-size:30px;line-height:1;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.mf600-viewer-error{padding:24px;border-radius:16px;background:#fff;color:#17375e;font-weight:700}
@media(max-width:760px){.mf598-image-card{width:min(240px,100%);max-width:100%}.mf598-image-card img{max-height:300px}.mf600-image-viewer{padding:10px}.mf600-viewer-stage img{max-width:96vw;max-height:78vh}}
