#tm-site .tm-media-cover{position:relative;display:block;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:inherit;background:transparent;color:#fff;font-family:inherit;cursor:zoom-in;}
#tm-site .tm-media-cover>img{display:block;width:100%;}
#tm-site .tm-media-cover-label{position:absolute;left:15px;top:14px;z-index:3;display:inline-flex;align-items:center;gap:8px;max-width:calc(100% - 30px);padding:8px 11px;border:1px solid rgba(255,255,255,.55);border-radius:9px;color:#fff;background:rgba(4,28,56,.82);font-size:12px;font-weight:800;line-height:1.3;box-shadow:0 3px 12px rgba(0,0,0,.1);}
#tm-site .tm-media-cover-label .tm-icon{width:15px;height:15px;font-size:14px;}
#tm-site .tm-media-cover:focus-visible{outline:3px solid #00a8d4;outline-offset:-3px;}
#tm-site .tm-media-viewer{width:min(1120px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:22px;border:1px solid #36506a;border-radius:18px;color:#fff;background:#06233e;box-shadow:0 20px 80px #0006;overflow:auto;overscroll-behavior:contain;font-family:Manrope,Arial,sans-serif;}
#tm-site .tm-media-viewer::backdrop{background:rgba(1,14,28,.88);backdrop-filter:blur(4px);}
#tm-site .tm-media-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px;}
#tm-site .tm-media-head>div{min-width:0;}
#tm-site .tm-media-head p{margin:0 0 4px;color:#8ddfd9;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;}
#tm-site .tm-media-head h2{margin:0;color:#fff;font-size:clamp(18px,2.5vw,25px);font-weight:800;line-height:1.35;overflow-wrap:anywhere;}
#tm-site .tm-media-close,#tm-site .tm-media-original{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:none;min-height:42px;padding:10px 13px;border:1px solid #60768a;border-radius:10px;color:#fff;background:#15344e;font-size:13px;font-weight:800;line-height:1.4;cursor:pointer;}
#tm-site .tm-media-close .tm-icon,#tm-site .tm-media-original .tm-icon{width:16px;height:16px;font-size:16px;}
#tm-site .tm-media-stage{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:12px;min-width:0;}
#tm-site .tm-media-stage figure{min-width:0;margin:0;}
#tm-site #tm-media-image{width:100%;height:min(62dvh,700px);max-width:100%;object-fit:contain;background:#03172c;border-radius:9px;}
#tm-site #tm-media-status{padding-top:9px;color:#b6c8d5;text-align:center;font-size:12px;line-height:1.4;}
#tm-site .tm-media-arrow{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #557186;border-radius:10px;color:#fff;background:#15344e;cursor:pointer;}
#tm-site .tm-media-stage.tm-media-single{grid-template-columns:minmax(0,1fr);}
#tm-site .tm-media-arrow .tm-icon{width:16px;height:16px;font-size:16px;}
#tm-site .tm-media-foot{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:15px;}
#tm-site .tm-media-thumbnails{display:flex;gap:9px;min-width:0;max-width:100%;overflow-x:auto;padding:3px;scrollbar-width:thin;}
#tm-site .tm-media-thumbnail{flex:0 0 64px;width:64px;height:49px;padding:2px;border:2px solid transparent;border-radius:8px;background:#30465b;cursor:pointer;}
#tm-site .tm-media-thumbnail img{width:100%;height:100%;object-fit:cover;border-radius:4px;}
#tm-site .tm-media-thumbnail[aria-pressed="true"]{border-color:#82e7dc;background:#82e7dc;}
#tm-site .tm-media-error{margin:8px 0;color:#f1cda6;text-align:center;font-size:13px;}
@media(max-width:600px){#tm-site .tm-media-viewer{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:15px 11px;border-radius:13px;}#tm-site .tm-media-head{gap:10px;}#tm-site .tm-media-close{padding:8px 10px;}#tm-site .tm-media-stage{grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;}#tm-site .tm-media-arrow{width:44px;height:44px;}#tm-site #tm-media-image{height:54dvh;}#tm-site .tm-media-foot{align-items:stretch;flex-direction:column;gap:12px;}#tm-site .tm-media-original{align-self:center;}#tm-site .tm-media-cover-label{left:12px;top:12px;font-size:11px;}}

#tm-site .tm-home-detail-visual::after,#tm-site .tm-dialog-visual::after{pointer-events:none;}

/* Preserve the existing photo heights when the accessible image button is added. */
#tm-site :where(.food-dialog-image,.stay-dialog-image,.clf-dialog-image,.prm-dialog-image,.evt-dialog-image,.evt-guide-dialog)>.tm-media-cover{height:auto;}
#tm-site .evt-dialog-image>.tm-media-cover>img,#tm-site .evt-guide-dialog>.tm-media-cover>img{height:236px;object-fit:cover;}
@media(max-width:580px){#tm-site .evt-dialog-image>.tm-media-cover>img,#tm-site .evt-guide-dialog>.tm-media-cover>img,#tm-site .prm-dialog-image>.tm-media-cover>img{height:180px;}}
