/* NOTE: Anywhere we specify a left or right margin we should make sure the
 * width is set to auto or an explicit pixel width so that we're overriding a
 * possible width of 100% in other style sheets. */

#mls,
#mls td
{
	/* set default text properties. */
	font-family: Verdana, Tahoma, 'Sans-Serif';
	font-size: 13px;
	line-height: 175%;
}

#mls
{
	display: block;
	margin: 10px;
	width: auto;
}

#mls a
{
	text-decoration: none;
}

#mls a:hover
{
	text-decoration: underline;
}

#mls h2
{
	font-weight: normal;
	font-size: 19px;
	margin: 0px;
	padding: 0px 0px 5px 0px;
	border-bottom: 1px solid black;
}

#mls h3
{
	font-weight: bold;
	font-size: 15px;
	margin: 10px 0px 10px 0px;
}

#mls div.terminator,
#mlsHeader div.terminator,
#mlsFooter div.terminator
{
	width: 1px;
	height: 1px; /* firefox requires a height of at least one pixel. */
	clear: both;
}

#mls div.divider,
#mlsHeader div.divider,
#mlsFooter div.divider
{
	width: 100%;
	height: 1px; /* firefox requires a height of at least one pixel. */
	clear: both;
}

#mls div.inlineHelp
{
	padding: 10px;
	border: 1px solid #dddddd;
	background-color: #eeeeee;
}

#mls .warning
{
	color: red;
}

#mls .warning a
{
	color: red;
	font-weight: bold;
}


/******************************************************************************
 **********            Share Listings Online Disclaimer              **********
 ******************************************************************************/

#mls .disclaimer
{
	margin: 10px;
	padding: 0px;
	border: 0px;
	font-size: 11px;
	line-height: 150%
}

#mls .disclaimer img
{
	float: left;
	margin: 5px 10px 5px 5px;
}

/******************************************************************************
 **********                    Generic Forms                         **********
 ******************************************************************************/

input.address
{
	width: 200px;	
}

/******************************************************************************
 **********              Forms Layed Out in a Table                  **********
 ******************************************************************************/

#mls table.form
{
	border-collapse: collapse;
	width: 100%;
}

#mls table.form tr td.label
{
	width: 150px;
}

#mls table.form tr th
{
	text-align: left;
	background-color: #dddddd;
	color: #000000;
	padding: 0px 5px 0px 5px;
}

#mls table.form tr td
{
	text-align: left;
	padding: 5px;
}

#mls table.form tr td .help
{
	font-size: 11px;
}

/******************************************************************************
 **********                       Navigation                         **********
 ******************************************************************************/

#mls div.navigation
{
	padding: 0px 5px 0px 5px;
	margin-bottom: 5px;
	width: auto;
	white-space: nowrap;
}

/******************************************************************************
 **********                         Header                           **********
 ******************************************************************************/

#mlsHeader,
#mlsHeader td
{
	/* set default text properties. */
	font-family: Verdana, Tahoma, 'Sans-Serif';
	font-size: 11px;
	line-height: 175%;
}

#mlsHeader
{
	margin-bottom: 10px;
	border-bottom: 1px solid black;
	padding: 0px;
	width: auto;
}

#mlsHeader h1
{
	margin: 0px 0px 5px 0px;
	padding: 0px;
	font-size: 22px;
}

#mlsHeader div.logo
{
	margin: 0px 10px 0px 0px;
	float: left;
	width: auto;
}

#mlsHeader div.logo img
{
	margin: 0px;
	padding: 0px;
	border: 0px;
}

#mlsHeader div.contactInformation
{
	display: block;
}


/******************************************************************************
 **********                         Footer                           **********
 ******************************************************************************/

#mlsFooter,
#mlsFooter td
{
	/* set default text properties. */
	font-family: Verdana, Tahoma, 'Sans-Serif';
	font-size: 11px;
	line-height: 175%;
}

#mlsFooter
{
	margin-top: 10px;
	border-top: 1px solid black;
	padding: 10px;
}

#mlsFooter div.address
{
	float: left;
}

#mlsFooter div.contactInformation
{
	float: right;
	text-align: right;
}


/******************************************************************************
 **********                         Forms                            **********
 ******************************************************************************/


#mls form
{
	margin: 0px;
	padding: 0px;
}

#mls input
{
	font-family: Verdana, Tahoma, 'Sans-Serif';
	font-size: 11px;
	font-weight: normal;
}

#mls select
{
	font-family: Verdana, Tahoma, 'Sans-Serif';
	font-size: 11px;
	font-weight: normal;
}

#mls textarea
{
	font-family: Verdana, Tahoma, 'Sans-Serif';
	font-size: 11px;
	font-weight: normal;
}

#mls label
{
	cursor: pointer;
	font-weight: normal;
}

#mls input.button
{
	font-family: Verdana, Tahoma, 'Sans-Serif';
	font-size: 11px;
}

#mls form table tr td.label
{
	vertical-align: top;
}

#mls form .required
{
	font-weight: bold;
}

/******************************************************************************
 **********                      Checkbox List                       **********
 ******************************************************************************/

#mls div.checkboxList
{
	/* do nothing. */
}

#mls div.checkboxList div.display
{
	display: block;
}

#mls div.checkboxList div.display span.text
{
	padding-right: 3px;
}

#mls div.checkboxList div.display input.button
{
	/* do nothing. */
}


#mls div.checkboxList div.selector
{
	margin: 0px;
	padding: 0px;
	border: 0px;
	display: none;
}

#mls div.checkboxList div.selector div.options
{
	margin: 0px 0px 2px 0px;
	padding: 0px; 
	border: 1px solid #dddddd;
	background-color: #ffffff;
	color: #000000;
	height: 100px;
	width: 300px;
	overflow: auto;
}

#mls div.checkboxList div.selector div.options div.option
{
	background-color: #ffffff;
	/* Style the text the same as the rest of the form elements. */
	font-family: Verdana, Tahoma, 'Sans-Serif';
	font-size: 11px;
	font-weight: normal;
	/* Overrides other uses of the "options" class */
	text-align: left;
}


#mls div.checkboxList div.selector div.options div.option.highlight
{
	background-color: #dddddd;
}

#mls div.checkboxList div.selector div.options div.option input
{
	float: left;
	/* Keep the cursor the same when it's over the checkbox as when it's over
	 * the rest of the option. */
	cursor: pointer;
}

#mls div.checkboxList div.selector div.options div.option label
{
	display: block;
	padding: 0px 2px 0px 0px;
	line-height: 20px;
}

#mls div.checkboxList div.selector div.buttons
{
	/* Since the class "buttons" is generic, we'll make sure that the width is
	 * set to automatic. At least one client site had a hard set width. */
	width: auto;
}

#mls div.checkboxList div.selector div.buttons input.button
{
	width: 98px;
}

/******************************************************************************
 **********                      Tabled List                         **********
 ******************************************************************************/

/* Though not technically part of a list, we often display a series of buttons
   which are related to the list above the list. */

#mls div.options
{
	margin: 10px 0px 0px 0px;
	text-align: right;
	width: auto;
}

#mls div.list
{
	margin: 0px;
	padding: 0px;
	border-width: 1px 1px 0px 1px;
	border-style: solid;
	border-color: #cccccc;
}

#mls div.list table
{
	width: 100%;
	border-collapse: collapse;
	border: 0px;
	margin: 0px;
}

#mls div.list table tr th,
#mls div.list table tr td
{
	text-align: left;
	border-bottom: 1px solid #cccccc;
	padding: 2px 5px 2px 5px;
	line-height: 160%;
}

#mls div.list table tr th
{
	background-color: #dddddd;
	color: #000000;
	font-weight: bold;
	font-size: 11px;
	vertical-align: bottom;
	white-space: nowrap;
}

#mls div.list table tr th span.description
{
	font-size: 10px;
	font-weight: normal;
	white-space: normal;
}

#mls div.list table tr td
{
	color: #000000;
}

#mls div.list table tr.oddRow td
{
	background-color: #ffffff;
}

#mls div.list table tr.evenRow td
{
	background-color: #eeeeee;
}

#mls div.list table tr th.date,
#mls div.list table tr td.date
{
	text-align: right;
}

#mls div.list table tr th.link,
#mls div.list table tr td.link
{
	text-align: center;
}

#mls div.list table tr th.numeric,
#mls div.list table tr td.numeric
{
	text-align: center;
}

#mls div.list table tr th.boolean,
#mls div.list table tr td.boolean
{
	text-align: center;
}

#mls div.list table tr.hover td
{
	cursor: pointer;
	background-color: #eeeeee;
}


/******************************************************************************
 **********                   Generic Properties                     **********
 ******************************************************************************/

#mls div.properties
{
	/* do nothing. */
}

#mls div.properties table
{
	width: auto;
	border-collapse: collapse;
	border-width: 1px 1px 0px 1px;
	border-style: solid;
	border-color: #cccccc;
}

#mls div.properties table tr th,
#mls div.properties table tr td
{
	vertical-align: top;
	text-align: left;
	padding: 2px 5px 2px 5px;
	font-size: 11px;
	border-bottom: 1px solid #cccccc;
}

#mls div.properties table tr th
{
	font-weight: bold;
	background-color: #cccccc;
}

#mls div.properties table tr td
{
	/* do nothing. */
}

#mls div.properties table tr td.propertyName
{
	font-weight: bold;
	background-color: #eeeeee;
}

#mls div.properties table tr td.propertyValue
{
	/* do nothing. */
}

/******************************************************************************
 **********                     Generic Results                      **********
 ******************************************************************************/

#mls div.results,
#mls div.results td
{
	font-family: Verdana, Tahoma, 'Sans-Serif';
	font-size: 11px;
}

#mls div.results
{
	margin: 0px;
	width: auto;
}

#mls div.results div.message
{
	padding:30px;
	font-size: 13px;
	font-style: italic;
	text-align: center;
}

#mls div.results div.navigation
{
	padding: 0px 5px 0px 5px;
	margin: 0px 0px 0px 0px;
	clear: both;
	width: auto;
	font-weight: bold;
	background-color: transparent;
}

#mls div.results div.navigation div.location
{
	float: left;
	position: relative;
}

#mls div.results div.navigation div.buttons
{
	float: right;
	position: relative;
}

#mls div.results div.options
{
	text-align: right;
	padding: 0px 5px 0px 0px;
	clear: both;
	margin: 0px;
	width: auto;
}

#mls div.results div.divider
{
	height: 1px;
	margin: 0px 0px 10px 0px;
	padding: 0px;
	width: auto;
}

#mls div.results div.result
{
	clear: both;
	margin: 0px;
	width: auto;
	padding: 0px 5px 0px 5px;
	cursor: pointer;
}

#mls div.results div.result.hover
{
	/* do nothing. */
}

/* listing header when displaying a list of listings. */

#mls div.results div.result div.title
{
	font-size: 13px;
	font-weight: bold;
	width: 100%;
}

#mls div.results div.result div.title div.location
{
	float: left;
	width: 33%;
	text-align: left;
}

#mls div.results div.result div.title div.price
{
	float: right;
	width: 33%;
	text-align: right;
}

#mls div.results div.result div.title div.propertyType
{
	text-align: center;
}

/* last run and date created when displaying a list of searches */

#mls div.results div.result .dates
{
	float: right;
}

#mls div.results div.result div.image
{
	clear: both;
	float: left;
	padding: 5px;
	text-align: center; /* force ie to align images */
}

#mls div.results div.result div.properties
{
	/* do nothing. */
}

/* Remove any borders and set any backgrounds to transparent to simplify the
 * hover effect. */

#mls div.results div.result div.properties table
{
	border: 0px;
}

#mls div.results div.result div.properties table tr td
{
	border: 0px;
	background-color: transparent;
}

#mls div.results div.result div.properties table tr td.propertyName
{
	width: 100px;
}

#mls div.results div.result div.properties table tr td.propertyValue
{
	vertical-align: top;
	width: 100px;
}

#mls div.results div.result ul
{
	margin-top: 0px;
	margin-bottom: 0px;
}

/******************************************************************************
 **********                 Listing Search Results                   **********
 ******************************************************************************/

/* NOTE: Assumes that the width of the search results screen is at least
 * 100 for the image + 4 * 100 for the properties table. */

#mls div.results div.listing div.image
{
	/* Do nothing. */
}

#mls div.results div.listing div.image.by100
{
	width: 112px; /* ((1px image border + 5px padding) * 2) + image size */
}

#mls div.results div.listing div.image.by175
{
	width: 187px; /* ((1px image border + 5px padding) * 2) + image size */
}

#mls div.results div.listing div.image img.listingImage
{
	border: 1px solid black;
}

#mls div.results div.listing div.image img.shareListingsOnline
{
	padding-top: 5px;
}

#mls div.adminListings div.results div.links
{
	text-align: right;
	font-size: 11px;
}

/******************************************************************************
 **********                      Filter Form                         **********
 ******************************************************************************/

#mls div.filterForm
{
	margin: 0px 20px 0px 20px;
	padding: 0px;
	border: 0px;
}

#mls div.filterForm table
{
	border-collapse: collapse;
}

#mls div.filterForm table tr td
{
	font-size: 11px;
	padding: 3px;
}

#mls div.filterForm table tr.criteria td
{
	border-bottom: 1px solid #dddddd;
}

#mls div.filterForm table tr.criteria td.label
{
	background-color: #eeeeee;
	vertical-align: top;
	width: 100px;
}

#mls div.filterForm table tr.criteria td select
{
	width: 100px;
}

#mls div.filterForm table tr.buttons td
{
	background-color: #dddddd;
}

#mls div.filterForm table tr.buttons td a.reset
{
	padding-left: 10px;
	padding-right: 10px;
}

/******************************************************************************
 **********                      Listing Results                      **********
 ******************************************************************************/

#mls div.searchResults
{
	margin: 0px;
	padding: 0px;
	border: 0px;
}

#mls div.searchResults .modifySearchForm
{
	margin-top: 10px;
}


#mls div.searchResults .searchOptions
{
	font-weight: normal;
	text-align: right;
	margin: 10px;
	width: auto;
}

/******************************************************************************
 **********                      Image Browser                       **********
 ******************************************************************************/

#mls div#imageBrowser
{
	margin: auto;
	padding: 0px;
	border: 0px;
	/* Hide the image browser until we determine sizing. */
	display: none;
}

/* Image Navigation. */

#mls div#imageBrowser div#imageBrowserNavigation
{
	margin: 0px;
	padding: 0px;
	border: 0px;
	background: transparent;
}

/* Image navigation items. */

#mls div#imageBrowser div#imageBrowserNavigation div.item
{
	margin: 0px 5px 5px 0px;
	padding: 0px;
	border: 0px;
	float: left;
	cursor: pointer;
}

#mls div#imageBrowser div#imageBrowserNavigation div.item img
{
	margin: 0px;
	padding: 0px;
	border: 1px solid black;
	/* Set the image display to block to remove trailing space around image in
	 * IE. */
	display: block;
}

/* Zoom Control */

#mls div#imageBrowser div#imageBrowserNavigation div.zoom
{
	margin: 5px 0px 0px 0px;
	padding: 0px;
	border: 0px;
	float: right;
}

#mls div#imageBrowser div#imageBrowserNavigation div.zoom img
{
	margin: 0px;
	padding: 0px;
	border: 0px;
}

#mls div#imageBrowser div#imageBrowserContent
{
	/* do nothing. */
}

#mls div#imageBrowser div#imageBrowserContent div#listingImageContainer
{
	margin: 0px;
	padding: 0px;
	border: 0px;
	/* JavaScript will control the display. */
	display: none;
	/* Center the image in Internet Explorer. */
	text-align: center;
}

#mls div#imageBrowser div#imageBrowserContent div#listingImageContainer img#listingImage
{
	/* Center the image in standards compliant browsers. */
	margin: auto;
	padding: 0px;
	border: 1px solid black;
	/* Remove trailing white space in IE. */
	display: block;
}

#mls div#imageBrowser div#imageBrowserContent div#loadingImageContainer
{
	margin: 0px;
	padding: 0px;
	border: 0px;
	/* JavaScript will control the display. */
	display: none;
}

#mls div#imageBrowser div#imageBrowserContent div#loadingImageContainer img#loadingImage
{
	margin: 0px;
	padding: 0px;
	border: 0px;
	/* Position the loading image relative to the parent so that JavaScript can
	 * change the top and left properties, centering the image. */
	position: relative;
	/* Remove trailing white space in IE. */
	display: block;
}

/******************************************************************************
 **********                         Details                          **********
 ******************************************************************************/

#mls div.listingDetails
{
	/* do nothing. */
}

#mls div.listingDetails div.options
{
	text-align: right;
	font-size: 11px;
	margin: 0px 0px 10px 10px;
	width: auto;
}

#mls div.listingDetails div.title
{
	/* do nothing. */
}

#mls div.listingDetails div.title table tr td
{
	font-size: 13px;
}

#mls div.listingDetails div.title table tr td.propertyName
{
	font-weight: bold;
	vertical-align: top;
	white-space: nowrap;
}

#mls div.listingDetails div.title table tr td.propertyValue
{
	/* do nothing. */
}

#mls div.listingDetails div.title table tr td.propertyValue a
{
	/* Keep helper links (mortgage calculator and map link) from breaking. */
	white-space: nowrap;
}


#mls div.listingDetails div.description
{
	margin: 10px 0px 10px 0px;
}

#mls div.listingDetails div.properties
{
	clear: both;
}

#mls div.listingDetails div.properties table
{
	width: 100%;
}

#mls div.listingDetails div.properties table tr th
{
	font-size: 11px;
}

#mls div.listingDetails div.properties table tr td
{
	font-size: 11px;
	width: 25%;
}

/******************************************************************************
 **********                      Brewster Style.                     **********
 ******************************************************************************/

#mls div.brewster div#imageBrowser
{
	float: right;
	margin: 0px 0px 10px 10px;
	width: auto;
}

#mls div.brewster div.title
{
	clear: left;
	margin: 0px 0px 10px 0px;
	width: auto;
}

#mls div.brewster div.properties
{
	margin-top: 10px;
}

/******************************************************************************
 **********                      Orleans Style                       **********
 ******************************************************************************/

#mls div.orleans div#imageBrowser
{
	margin: auto;
	width: auto;
}

#mls div.orleans div#imageBrowser div.navigation
{
	margin: auto;
	width: auto;
}

/* Float the listing title information and draw a box around it. */

#mls div.orleans div.title
{
	clear: both;
	float: right;
	margin: 10px 0px 10px 10px;
	padding: 5px;
	width: 50%;
	background: #eeeeee;
	border: 1px solid #dddddd;
}


#mls div.orleans div.title table tr td
{
	font-size: 11px;
}

#mls div.orleans div.properties
{
	margin-top: 10px;
}


/******************************************************************************
 **********                           Map                            **********
 ******************************************************************************/

#mls div.listingLocation div#mapContainer
{
	line-height: 100%;
	margin: 20px auto 20px auto;
	text-align: center;
	width: 500px;
	height: 400px;
}

#mls div.listingLocation .pin
{
	width: 150px;
	height: 33px;
	font-family: Arial, sans-serif;
	font-size: 11px;
	color: #0000FF;
	overflow: hidden;
	cursor: pointer;
	text-decoration: none;
	text-align: center;
	background: white;
	border-right: 1px solid #0000FF;
	border-bottom: 1px solid #0000FF;
	padding: 3px;
	z-index: 5;
}


/******************************************************************************
 **********                      Listing Image                       **********
 ******************************************************************************/

#mls div.listingImage
{
	/* do nothing */
}

#mls div.listingImage div.image
{
	text-align: center;
}

#mls div.listingImage div.image img
{
	border: 1px solid black;
}

#mls div.listingImage div.back
{
	text-align: center;
	font-weight: bold;
}

/******************************************************************************
 **********                       Watch List                         **********
 ******************************************************************************/

#mls div.watchList
{
	/* do nothing. */
}

#mls div.watchList div.watchListOptions
{
	font-weight: bold;
	text-align: right;
}

/******************************************************************************
 **********                         Admin                            **********
 ******************************************************************************/

/* need placeholders */

/******************************************************************************
 **********                        Accounts                          **********
 ******************************************************************************/

#mls div.accounts
{
	/* do nothing. */
}


#mls div.accounts div.accountOptions
{
	font-weight: bold;
	text-align: right;
}

/******************************************************************************
 **********                    Mortgage Calculator                   **********
 ******************************************************************************/

#mls div.mortgageCalculator
{
	margin: 10px;
	padding: 0px;
	border: 0px;
}

#mls div.mortgageCalculator div.form
{
	/* Center table in Internet Explorer. */
	text-align: center;
}

#mls div.mortgageCalculator div.form table
{
	/* Center table and fix base alignment in standards compliant browsers. */
	margin: auto;
	text-align: left;
}

#mls div.mortgageCalculator div.form table tr
{
	/* do nothing. */
}

#mls div.mortgageCalculator div.form table tr td
{
	/* do nothing. */
}

#mls div.mortgageCalculator div.form table tr td.numeric
{
	text-align: right;
}

#mls div.mortgageCalculator div.form table tr td.label
{
	width: auto;
}

#mls div.mortgageCalculator div.form table tr td.numeric input
{
	text-align: right;
}

#mls div.mortgageCalculator div.disclaimer
{
	margin: 0px;
	padding: 0px;
	border: 0px;
}

/******************************************************************************
 **********                     Town Details                         **********
 ******************************************************************************/

#mls div.townDetails
{
	margin: 10px;
	padding: 0px;
	border: 0px;
}

#mls div.townDetails div.properties table
{
	float:right;
	width:300px;
	margin-left: 10px;
	padding:5px;
}


#mls div.townDetails div.properties table tr
{
	/* do nothing. */
}

#mls div.townDetails div.properties table tr td
{
	/* do nothing. */
}

/******************************************************************************
 **********                         Stats                            **********
 ******************************************************************************/

#mls div.stats
{
	/* Do nothing. */
}

#mls div.stats table
{
	border-collapse: collapse;
}

#mls div.stats th,
#mls div.stats td
{
	font-size: 11px;
	padding: 3px 5px;
	text-align: left;
}

#mls div.stats td.numeric,
#mls div.stats th.numeric,
#mls div.stats td.link,
#mls div.stats th.link
{
	text-align: center;
}

#mls div.stats td.date,
#mls div.stats th.date
{
	text-align: right;
}

#mls div.stats th
{
	border-bottom: 1px solid #dddddd;
}

#mls div.stats td.label
{
	font-weight: bold;
	border-right: 1px solid #dddddd;
	text-align: left;
	width: 125px;
}

/******************************************************************************
 **********                          Options                         **********
 ******************************************************************************/

div.optionLinks
{
	display: block;
	float: right;
	border: 1px solid #cccccc;
	padding: 11px;
	margin: 0 0 10px 10px;
	font-size: 11px;
	line-height: 150%;
}

div.optionLinks ul
{
	margin: 10px 0 0 0;
	padding-left: 0;
	list-style: none;
}
