.clear { clear:both; }

.yui-skin-sam .yui-navset .yui-nav, 
.yui-skin-sam .yui-navset .yui-navset-top .yui-nav { /* protect nested tabviews from other orientations */  
border:solid #ed1c23; /* color between tab list and content */  
border-width:0 0 0px;  
Xposition:relative;
zoom:1;
background-color:#FFFFFF;
}

.OverGraphics { cursor: pointer; cursor: hand;}

.yui-skin-sam .yui-navset .yui-content {  
  background:#FFFFFF; /* content background color */  
}

#yui-history-iframe {
  position:absolute;
  top:0; left:0;
  width:1px; height:1px;
  visibility:hidden;
}

#ajaxSeatingMapArea .yui-resize-handle-br {
    height: 11px;
    width: 11px;
    background-position: -20px -60px;
    background-color: transparent;
}

table.TixSelection {
	border-width: 1px;
}

table.EventData {
	border-width: 1px;
	border-spacing: ;
	border-style: none;
	border-color: gray;
	border-collapse: separate;
}
table.EventData th {
	border-width: 1px;
	padding: 5px;
	border-style: solid;
	border-color: gray;
	-moz-border-radius: ;
}
table.EventData td {
	border-width: 1px;
	padding: 5px;
	border-style: solid;
	border-color: gray;
	-moz-border-radius: ;
}
table.fbFriendsTable{
    font-family:Georgia;
	font-size:10px;
	border-width:0;
	border-collapse:collapse;
}

table.fbFriendsTable tbody{
    font-family:Georgia;
	font-size:10px;
	border-width:0;
	border-collapse:collapse;
}

table.fbFriendsTable tr{
    font-family:Georgia;
	font-size:10px;
	border-width:0;
	border-collapse:collapse;
}

table.fbFriendsTable td{
    font-family:Georgia;
	font-size:10px;
	border-width:0;
	border-collapse:collapse;
}

table.fbFriendsTable td a{
    font-size:8px;
    font-family: 'lucida grande', tahoma, verdana, arial, sans-serif;	
	font-weight: bold;
    color: #3b5998;	
}
/*margin and padding on body element
  can introduce errors in determining
  element position and are not recommended;
  we turn them off as a foundation for YUI
  CSS treatments. */
body {
	margin:0;
	padding:0;
}
.yui3-panel {
    outline: none;
	overflow: auto;
	background-color:#FFFFFF;
}
.yui3-panel-content .yui3-widget-hd {
    font-weight: bold;
}
.yui3-panel-content .yui3-widget-bd {
    padding: 15px;
}
.yui3-panel-content label {
    margin-right: 30px;
}
.yui3-panel-content fieldset {
    border: none;
    padding: 0;
}
.yui3-panel-content input[type='text'] {
    border: none;
    border: 1px solid #ccc;
    padding: 3px 7px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    font-size: 100%;
    width: 200px;
}
/* Hide overlay markup while loading, if js is enabled */
.yui3-js-enabled .yui3-overlay-loading {
    top:-1000em;
    left:-1000em;
    position:absolute;
}

/* Overlay Look/Feel */
.yui3-overlay-content {
    padding:0px;
    border:1px solid #000;
    background-color:#aaa;
}
.yui3-overlay-content .yui3-widget-bd {
    padding:1px;
    border:1px solid #0000aa;
    background-color:#fff;
}

.yui3-overlay-content .yui3-widget-hd {
    padding:0px;
    border:0px solid #aa0000;
    background-color:#fff;
}

.yui3-overlay-content .yui3-widget-ft {
    padding:0px;
    border:0px solid #00aa00;
    background-color:#fff;
}

/* GoJS Printing*/

/* @media print specifies CSS rules that only apply when printing */
@media print {
  /* CSS reset to clear styles for printing */
  html, body, div {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
  }

  /* Hide everything on the page */
  body * {
    display: none !important;
  }

  #content, #myImages, #myImages * {
    /* Only display the images we want printed */
    /* all of the image's parent divs
       leading up to the body must be un-hidden (displayed) too
    */
    display: block;
    /* CSS reset to clear the specific visible divs for printing */
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
  }

  /* We have line breaks in the DIV
     to separate the images in the browser,
     but do not want those line breaks when printing
  */
  #myImages br {
    display: none;
  }

  img {
    /* Only some browsers respect this rule: */
    page-break-inside: avoid;
    /* Almost all browsers respect this rule: */
    page-break-after:always;
  }
}

/* The @page rules specify additional printing directives that browsers may respect
   Here we suggest printing in landscape (instead of portrait) with a small margin.
   Browsers, however, are free to ignore or override these suggestions.
   See also:
    https://developer.mozilla.org/en-US/docs/CSS/@page
    http://dev.w3.org/csswg/css3-page/#at-page-rule
*/
@page {
  /* Some browsers respect rules such as size: landscape */
  margin: 1cm;
}

/* =============================================
   MOBILE REGIONS MAP RESPONSIVE STYLING
   Added: January 2026
   Issue: Regions map image bleeds past screen width on mobile
   ============================================= */

/* Constrain regions map container on all screen sizes */
#venueRegionsArea {
    max-width: 100%;
    overflow: hidden;
    box-sizing: border-box;
}

/* Ensure images with image maps are responsive */
#venueRegionsArea img[usemap],
img.img-responsive[usemap] {
    max-width: 100%;
    height: auto;
    display: block;
}

/* Mobile-specific constraints */
@media (max-width: 767px) {
    /* Prevent horizontal scroll from regions map */
    #venueRegionsArea {
        width: 100% !important;
        max-width: 100vw !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: hidden !important;
    }

    /* Force regions map image to fit within viewport and center it */
    #venueRegionsArea img,
    #venueRegionsArea img[usemap] {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        display: block !important;
        margin: 0 auto !important;
    }

    /* Remove padding from parent containers on mobile for full-width map */
    #EventTickets {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* Seating map (Fabric.js canvas) - full width on mobile */
    #seatingMapArea,
    #ajaxSeatingMapArea {
        width: 100% !important;
        max-width: 100vw !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: hidden !important;
    }

    /* Fabric.js canvas wrapper - ensure it uses full width */
    #seatingMapArea .canvas-container,
    #ajaxSeatingMapArea .canvas-container,
    #seatingMapArea canvas,
    #ajaxSeatingMapArea canvas {
        max-width: 100% !important;
    }

    /* When regions map is visible, contain overflow on parent elements */
    /* Using specific selector to override !important in inline styles */
    .tab-pane#EventTickets:has(#venueRegionsArea img[usemap]),
    #EventTickets:has(#venueRegionsArea img[usemap]) {
        overflow-x: hidden !important;
        max-width: 100vw !important;
    }

    /* Fallback for browsers without :has() support - applied via JS class */
    #EventTickets.has-regions-map {
        overflow-x: hidden !important;
        max-width: 100vw !important;
    }

    /* Prevent body horizontal scroll when regions map is displayed */
    body.regions-map-visible,
    html.regions-map-visible {
        overflow-x: hidden !important;
    }

    /* =============================================
       MOBILE TAB NAVIGATION - Truncate Long Event Names
       Prevents tabs from wrapping to multiple lines
       ============================================= */
    #IMSEventPageTabsDiv {
        flex-wrap: nowrap !important;
    }

    #IMSEventPageTabsDiv .nav-item {
        flex: 0 1 auto;
        min-width: 0; /* Allow shrinking below content size */
    }

    /* Truncate "The Event - Event Name" tab on mobile */
    #IMSEventPageTabsDiv .nav-link {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 55vw; /* Leave room for Tickets tab */
        padding: 8px 12px;
        font-size: 0.9rem;
    }

    /* Keep Tickets tab visible and unshrunk */
    #IMSEventPageTabsDiv .nav-item:last-child .nav-link {
        max-width: none;
        flex-shrink: 0;
    }
}

