/* Standalone media component; original editor content and media URLs are not altered. */
.cgmmedia-doc{margin:16px 0;border:1px solid #d7e5ee;border-radius:12px;background:#f8fbfd;overflow:hidden;color:#1b3e53}
.cgmmedia-toolbar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:9px 10px;background:#eaf4f9;border-bottom:1px solid #d2e2eb}
.cgmmedia-toolbar .cgmmedia-name{flex:1 1 160px;font-size:14px;font-weight:650;overflow-wrap:anywhere}
.cgmmedia-toolbar button{appearance:none;cursor:pointer;border:1px solid #bdd3df;border-radius:7px;background:#fff;color:#184d6a;font-size:14px;line-height:1.2;min-width:36px;min-height:36px;padding:7px}
.cgmmedia-toolbar button:disabled{opacity:.4;cursor:default}
.cgmmedia-pages{overflow:auto;max-height:78vh;overscroll-behavior:contain;background:#eef2f5;padding:12px 6px;touch-action:pan-x pan-y}
.cgmmedia-sheet{position:relative;margin:0 auto;line-height:0;box-shadow:0 2px 12px #172a3d22;background:#fff;max-width:none;user-select:none}
.cgmmedia-sheet canvas{display:block;width:100%;height:auto}
.cgmmedia-hotspot{position:absolute;z-index:2;border:1px solid transparent;background:#e8af2b08;cursor:pointer;border-radius:2px;min-height:12px;min-width:12px;touch-action:manipulation}
.cgmmedia-hotspot:hover,.cgmmedia-hotspot:focus-visible{background:#fbbf2450;border-color:#d97706;outline:1px solid #d97706}
.cgmmedia-msg{padding:12px;text-align:center;color:#546d7d;font-size:13px;line-height:1.4}
.cgmmedia-modal[hidden],.cgmmedia-drawer[hidden]{display:none!important}
.cgmmedia-modal{position:fixed!important;inset:0!important;z-index:999996!important;background:rgba(8,24,34,.95)!important;display:flex;flex-direction:column;padding:0;color:#fff}
.cgmmedia-modal .cgmmedia-toolbar{background:#193a4c;color:#fff;border-color:#325468;flex:0 0 auto}
.cgmmedia-modal .cgmmedia-toolbar button{background:#f9fdff;color:#0d344b}
.cgmmedia-modal .cgmmedia-pages{max-height:none;height:100%;flex:1;overflow:auto}
.cgmmedia-photo-stage{height:100%;width:100%;overflow:auto;display:flex;align-items:center;justify-content:center;touch-action:none;overscroll-behavior:contain}
.cgmmedia-photo-stage img{display:block;transform-origin:center center;max-width:100%;max-height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none;cursor:zoom-in}
.cgmmedia-photo-label{font-size:13px;flex:1;padding:10px 12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cgmmedia-photo-tools{display:flex;align-items:center;gap:5px;background:#173b4e;flex-wrap:wrap;padding:6px}
.cgmmedia-photo-tools button{background:#f7fafb;border:1px solid #abc4d5;border-radius:7px;padding:8px;color:#164057;min-width:40px;min-height:36px;font-size:15px}
.cgmmedia-photo-trigger{cursor:zoom-in}
.cgmmedia-photo-trigger:focus-visible{outline:3px solid #e59b28;outline-offset:3px}
.cgmmedia-drawer{position:fixed!important;z-index:999998!important;top:0!important;right:0!important;bottom:0!important;width:min(440px,100vw)!important;background:#fff!important;box-shadow:-8px 0 32px #0005!important;padding:20px 20px 36px;overflow:auto;color:#213d52;font-family:Arial,sans-serif;line-height:1.5}
.cgmmedia-drawer h2{font-size:22px;margin:5px 0 10px}.cgmmedia-drawer h3{font-size:16px;margin:16px 0 4px}.cgmmedia-drawer p{white-space:pre-line}.cgmmedia-drawer img{display:block;max-width:100%;height:auto;margin:12px auto;border-radius:6px}
.cgmmedia-drawer-close{float:right;background:#f5f8fc;border:1px solid #c3d1dc;border-radius:6px;padding:7px 12px;font-size:20px;cursor:pointer}
.cgmmedia-drawer-shade{position:fixed;z-index:999997;inset:0;background:#0005}
@media(max-width:600px){.cgmmedia-pages{padding:7px 2px;max-height:65vh}.cgmmedia-doc{margin:11px 0}.cgmmedia-toolbar{gap:5px;padding:7px}.cgmmedia-toolbar button{min-width:35px}.cgmmedia-modal .cgmmedia-pages{max-height:none}.cgmmedia-drawer{padding:18px 15px 30px}}
.cgmmedia-modal .cgmmedia-doc{margin:0;min-height:0;height:100%;width:100%;border:0;border-radius:0;display:flex;flex-direction:column}
.cgmmedia-modal .cgmmedia-doc .cgmmedia-pages{min-height:0;max-height:none;flex:1}
/* V1.1: image/PDF atlas hotspots and optional admin correction overlay. */
.cgmmedia-inline-wrap{position:relative;display:inline-block;vertical-align:middle;max-width:100%;line-height:0}
.cgmmedia-inline-wrap>img{display:block;max-width:100%;height:auto}
.cgmmedia-markers{position:absolute;inset:0;z-index:4;pointer-events:none;line-height:normal}
.cgmmedia-markers.cgmmedia-editing{pointer-events:auto;cursor:crosshair;outline:2px dashed #e79e1f;outline-offset:-2px}
.cgmmedia-markers .cgmmedia-hotspot{position:absolute!important;display:block!important;z-index:5;pointer-events:auto!important;padding:0!important;margin:0!important;border:1px solid rgba(200,120,0,.05)!important;background:rgba(255,190,0,.025)!important;box-shadow:none!important;min-height:9px;min-width:9px;cursor:pointer!important;opacity:1!important}
.cgmmedia-markers .cgmmedia-hotspot:hover,.cgmmedia-markers .cgmmedia-hotspot:focus-visible{outline:2px solid #a56700!important;background:rgba(255,194,25,.34)!important;border-color:#d78b00!important}
.cgmmedia-markers.cgmmedia-editing .cgmmedia-hotspot{background:rgba(255,170,5,.25)!important;border:1px dashed #e28e00!important}
.cgmmedia-counter{font-size:11px;line-height:1.3;min-width:85px;color:#527080}
.cgmmedia-modal .cgmmedia-counter{color:#e6f0f7}
.cgmmedia-editor-btn,.cgmmedia-editor-save{font-size:12px!important;white-space:nowrap}
.cgmmedia-editor-save{background:#1d6f5b!important;color:#fff!important;border-color:#1d6f5b!important}
.cgmmedia-toolbar [hidden],.cgmmedia-photo-tools [hidden]{display:none!important}
.cgmmedia-photo-surface{position:relative;flex:none;transform-origin:center center;touch-action:none;line-height:0}
.cgmmedia-photo-surface>img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:fill!important;user-select:none;pointer-events:auto}
.cgmmedia-photo-stage{position:relative;overflow:hidden;touch-action:none}
.cgmmedia-pdf-list-item{list-style:none;margin-left:-18px}
.cgmmedia-pdf-list-item .cgmmedia-doc{width:100%}
@media (max-width:600px){
  .cgmmedia-counter{flex:1 1 100%;min-width:0;text-align:left}
  .cgmmedia-toolbar,.cgmmedia-photo-tools{gap:4px}
  .cgmmedia-editor-btn{font-size:11px!important}
  .cgmmedia-markers .cgmmedia-hotspot{min-height:12px;min-width:12px}
}

.cgmmedia-link-error{display:block;color:#a14610;margin:5px 0;font-size:12px}.cgmmedia-fallback{display:inline-block;margin-left:5px;text-decoration:underline}

/* V1.4: reliable full-screen controls even underneath the WordPress admin bar. */
.cgmmedia-modal {z-index:2147483000!important;box-sizing:border-box!important;}
body.admin-bar .cgmmedia-modal{top:32px!important;}
@media(max-width:782px){body.admin-bar .cgmmedia-modal{top:46px!important;}}
.cgmmedia-modal .cgmmedia-photo-tools,
.cgmmedia-modal .cgmmedia-toolbar{position:relative!important;z-index:12!important;flex:0 0 auto!important;}
.cgmmedia-toolbar,.cgmmedia-photo-tools{
  flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;
  scrollbar-width:thin;align-items:center!important;
}
.cgmmedia-toolbar button,.cgmmedia-photo-tools button{
  white-space:nowrap!important;word-break:normal!important;
  overflow-wrap:normal!important;hyphens:none!important;
  flex:0 0 auto!important;width:auto!important;max-width:none!important;
  line-height:1.2!important;box-sizing:border-box!important;
}
.cgmmedia-toolbar .cgmmedia-name,.cgmmedia-photo-label{
  min-width:90px;max-width:190px;white-space:nowrap!important;
  overflow:hidden!important;text-overflow:ellipsis!important;
  flex:0 1 160px!important;
}
.cgmmedia-counter{white-space:nowrap!important;flex:0 0 auto!important;}
.cgmmedia-modal .cgmmedia-toolbar,.cgmmedia-modal .cgmmedia-photo-tools{padding-right:128px!important;}
.cgmmedia-fixed-close{
  display:block!important;position:fixed!important;top:44px!important;right:12px!important;
  z-index:2147483200!important;max-width:none!important;min-width:95px!important;
  width:auto!important;min-height:40px!important;padding:8px 12px!important;
  color:#17394d!important;background:#fff!important;border:2px solid #b9d4df!important;
  border-radius:8px!important;box-shadow:0 2px 14px #0005!important;
  font-size:14px!important;line-height:1.2!important;font-weight:700!important;
  white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;
  cursor:pointer!important;
}
body:not(.admin-bar) .cgmmedia-fixed-close{top:12px!important;}
@media(max-width:782px){body.admin-bar .cgmmedia-fixed-close{top:58px!important;}}
.cgmmedia-modal .cgmmedia-photo-stage,.cgmmedia-modal .cgmmedia-pages{min-height:0!important;}

/* v1.5 optional point lists, not shown for files with an empty list. */
.cgmmedia-point-list{margin:12px 0 18px;padding:12px 14px;border:1px solid #d8e5ed;border-radius:9px;background:#f7fafc;line-height:1.5;color:#193f58;clear:both}
.cgmmedia-point-list-title{display:block;font-weight:650;font-size:15px;margin-bottom:9px}
.cgmmedia-point-list-buttons{display:flex;flex-wrap:wrap;gap:7px}
.cgmmedia-point-list-button{appearance:none!important;min-width:50px;min-height:37px;padding:7px 12px!important;background:#fff!important;color:#11517d!important;border:1px solid #adcddd!important;border-radius:7px!important;font:600 14px/1.3 Arial,sans-serif!important;white-space:nowrap;cursor:pointer!important}
.cgmmedia-point-list-button:hover,.cgmmedia-point-list-button:focus-visible{background:#e7f3fa!important;outline:2px solid #4e95c1;outline-offset:1px}

/* V1.5.3: file point lists remain directly below their respective images/PDFs. */
.cgmmedia-point-list{display:block!important;position:relative!important;float:none!important;
  clear:both!important;flex:0 0 100%!important;width:100%!important;max-width:100%!important;
  box-sizing:border-box!important;line-height:1.45!important;min-width:0!important}
.cgmmedia-point-list-buttons{display:flex!important;flex-flow:row wrap!important;gap:8px!important}
.cgmmedia-toolbar [hidden]{display:none!important}
/* Original orange Atlas section pictograms from V14; isolated from theme CSS. */
.cgmmedia-drawer .cgmmedia-atlas-heading{margin:0 0 18px;border-bottom:1px solid #dde6ee;padding:0 0 12px}
.cgmmedia-drawer .cgmmedia-atlas-heading h2{color:#c87400!important;font:800 29px/1.2 system-ui,Arial,sans-serif!important;margin:0 0 6px!important;overflow-wrap:anywhere}
.cgmmedia-drawer .cgmmedia-atlas-heading p{color:#526779;font-size:16px;margin:0}
.cgmmedia-drawer .cgmmedia-atlas-section{display:flex!important;align-items:flex-start!important;gap:12px!important;
  border:1px solid #e4eaf0!important;border-radius:12px!important;background:#fff!important;
  margin:0 0 10px!important;padding:13px 12px!important;box-shadow:0 2px 8px #13253608!important}
.cgmmedia-drawer .cgmmedia-atlas-icon{display:inline-flex!important;flex:0 0 25px!important;width:25px!important;height:25px!important;
  margin-top:2px!important;visibility:visible!important;opacity:1!important;color:#ef8d0b!important}
.cgmmedia-drawer .cgmmedia-atlas-icon svg{display:block!important;visibility:visible!important;opacity:1!important;
  width:25px!important;height:25px!important;stroke:#ef8d0b!important;stroke-width:1.8!important;
  stroke-linecap:round!important;stroke-linejoin:round!important;fill:none!important}
.cgmmedia-drawer .cgmmedia-atlas-text{min-width:0!important;flex:1!important}
.cgmmedia-drawer .cgmmedia-atlas-section h3{margin:0 0 5px!important;color:#203b50!important;
  font:750 16px/1.35 system-ui,Arial,sans-serif!important}
.cgmmedia-drawer .cgmmedia-atlas-section p{margin:0!important;white-space:pre-line!important;overflow-wrap:anywhere;
  font:400 15px/1.55 system-ui,Arial,sans-serif!important;color:#243e52!important}
.cgmmedia-drawer .cgmmedia-atlas-warning{background:#fff5f3!important;border-color:#f3c6bc!important}
.cgmmedia-drawer .cgmmedia-atlas-warning svg{stroke:#bf3329!important}
.cgmmedia-drawer .cgmmedia-atlas-image{margin:14px 0!important;border:1px solid #e1e8ef;border-radius:10px;overflow:hidden}
.cgmmedia-drawer .cgmmedia-atlas-image img{max-width:100%!important;height:auto!important;display:block!important;margin:0!important}
.cgmmedia-drawer{width:min(550px,100vw)!important;font-family:system-ui,Arial,sans-serif!important}

/* V1.5.4: one media item per row; point links always UNDER the image/PDF.
   Previous sibling placement put the list alongside floating ear images. */
.cgmmedia-file-stack{display:flow-root!important;box-sizing:border-box!important;
  width:100%!important;max-width:100%!important;min-width:0!important;
  clear:both!important;float:none!important;flex:0 0 100%!important;
  grid-column:1 / -1!important;align-self:stretch!important;position:relative!important}
.cgmmedia-file-stack > img,.cgmmedia-file-stack > picture,.cgmmedia-file-stack > figure,
.cgmmedia-file-stack > p{float:none!important;clear:both!important;max-width:100%!important;box-sizing:border-box!important}
.cgmmedia-file-stack > img,.cgmmedia-file-stack > picture,.cgmmedia-file-stack > figure{display:block!important}
.cgmmedia-file-stack > .cgmmedia-point-list{display:block!important;box-sizing:border-box!important;
  position:relative!important;float:none!important;clear:both!important;
  width:100%!important;max-width:100%!important;min-width:0!important;
  margin:10px 0 18px!important;grid-column:1 / -1!important}

/* V1.5.5: editable HTML tables from CGM text sections, scrollable on phones. */
.cgmmedia-table-scroll{display:block!important;width:100%!important;max-width:100%!important;
  overflow-x:auto!important;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;
  margin:12px 0 20px!important;clear:both;box-sizing:border-box}
.cgmmedia-table{width:100%!important;min-width:560px!important;max-width:none!important;
  table-layout:auto!important;border-collapse:collapse!important;margin:0!important;font-family:inherit!important}
.cgmmedia-table th,.cgmmedia-table td{min-width:110px;vertical-align:top!important;text-align:left!important;
  padding:10px 12px!important;border:1px solid #c5d1de!important;white-space:normal!important;
  overflow-wrap:break-word!important;word-break:normal!important;line-height:1.45!important}
.cgmmedia-table th{background:#0d3767!important;color:#fff!important;font-weight:700!important}
.cgmmedia-table td{background:#fff!important;color:#1d2d3e!important}
.cgmmedia-table tbody tr:nth-child(even) td{background:#f2f5f8!important}
.cgmmedia-table td.cgmmedia-cell-blue{background:#cfebfb!important}
.cgmmedia-table td.cgmmedia-cell-green{background:#d9f0c4!important}
.cgmmedia-table td.cgmmedia-cell-orange{background:#ffdfc5!important}
.cgmmedia-table td.cgmmedia-cell-gray{background:#e5e7eb!important}
@media(max-width:680px){.cgmmedia-table th,.cgmmedia-table td{padding:8px 9px!important;font-size:14px!important}}
