body {
height:auto !important;
-webkit-user-select: auto;
}
#container {
min-height:0px !important;
}

#mobile-search .container {
height: auto;
overflow: auto;
}

#content {
min-height:0 !important;
padding:0 !important;
}



/* Top Nav Update */
.topnav {
background:transparent url(https://shop.oreilly.com/images/oreilly/en_us/mobile/mobile-header-bg.png) 0 0 repeat-x !important;
height:45px !important;
padding:0 5px !important;
}
.topnav .float_l {
display:block !important;
float:left !important;
}
.topnav .float_l .logo {
margin:10px 0 0 91px !important;
padding:0 !important;
}
.topnav .float_r {
display:block !important;
float:right !important;
}
.topnav .float_r .cart {
margin:6px 0 0 0 !important;
padding:0 !important;
}



/* Search Form Update */
.search {
height:44px !important;
margin:0 0 10px 0 !important;
padding:0 10px 0 10px !important;
}
.search form {
display:block !important;
overflow:hidden !important;
}
.search .left-container {
position:relative !important;
left:0 !important;
float:left !important;
}
.search .left-container #q {
float:none !important;
width:267px !important;
height:24px !important;
overflow:hidden !important;
margin:10px 0 0 0 !important;
padding:0 3px !important;
border:1px solid #c5c5c5 !important;
border-width:1px 0 1px 1px !important;
color:#333 !important;
}
.search .right-container {
position:relative !important;
left:0 !important;
float:left !important;
}
.search .right-container .button3 input {
float:none !important;
height:26px !important;
width:26px !important;
border:0 !important;
outline:none !important;
margin:10px 0 0 0 !important;
word-spacing:0 !important;
border-radius:0 !important;
}

/* Category List Update */
.navcat {
margin:10px 0 22px 0 !important;
border-top:1px solid #ddd !important;
}
.navcat li {
margin:0 !important;
border:0 !important;
border-bottom:1px solid #ddd !important;
}
.navcat li a {
padding:0 31px 0 10px !important;
background:transparent url(https://shop.oreilly.com/images/oreilly/en_us/mobile/arrow-right.png) right center no-repeat !important;
}
.navcat li a[selected] {
background:#f4f4f4 url(https://shop.oreilly.com/images/oreilly/en_us/mobile/arrow-right.png) right center no-repeat !important;
}
.navcat ul .navcat {
margin:22px 0 !important;
}

.breadcrumb {
margin:10px 0 !important;
border-top:1px solid #ddd !important;
}
.breadcrumb li {
margin:0 !important;
border:0 !important;
border-bottom:1px solid #ddd !important;
}
.breadcrumb li a {
padding:0 10px 0 31px !important;
background:transparent url(https://shop.oreilly.com/images/oreilly/en_us/mobile/arrow-left.png) left center no-repeat !important;
}
.breadcrumb li a[selected] {
background:#f4f4f4 url(https://shop.oreilly.com/images/oreilly/en_us/mobile/arrow-left.png) left center no-repeat !important;
}

.GatewayCategoryHeader, .directoryCategoryHeader {
border-bottom:1px solid #ddd !important;
min-height:44px !important;
padding:0 10px !important;
line-height:44px !important;
color:#990000 !important;
}
.directoryCategoryHeader {
border-top:1px solid #ddd !important;
}

div.directoryCategoryHeader {
min-height:44px !important;
}

div.default.DefaultLinks{
	margin: 0 !important;
	padding: 0 !important;
}

/*
.optionsTD {
	border: 1px solid red !important;
}
/*

/* Item Listing */
.itemlisting {
height:auto !important;
overflow:hidden !important;
/* padding:0 10px !important; */
padding: 0 !important;
margin:22px 0 !important;
float:none !important;
line-height:1.2em !important;
}

div.thumbdiv {
margin-left: 10px !important;
}


.itemlisting .thumbdiv {
width:85px !important;
padding:3px 10px 0 0 !important;
}
.itemlisting .thumbdiv img {
width:85px !important;
height:auto !important;
}
.itemlisting div:last-child {
width:205px !important;
}
.itemlisting .thumbdesc {
margin:0 !important;
padding:0 0 3px 0 !important;
}

.detailimlisting div.thumbdesc {
color: black !important;
font-size: 18px;
}


.detailimlisting div select {
display: none;
}

/*****/
.thumbshortdesc {
padding: 0 !important;
font-weight: normal;
line-height: 1.4em !important;
}

.itemlisting .AuthorName {
padding:0 !important;
}
.itemlisting .AuthorName span {
color:#333 !important;
}


/* Pagination */
.pagination td:last-child {
padding:0 10px 0 0 !important;
}
.pagination td:first-child {
padding:0 0 0 10px !important;
}
.pagination a {
text-decoration:none !important;
}
.pagination a {
text-transform:uppercase !important;
font-size:13pt !important;
font-weight:bold !important;
color:#333 !important;
}
.pagination .pageOn {
color:#990000 !important;
font-size:13pt !important;
}



/* Detail Page */
.detailPagination {
height:44px !important;
line-height:44px !important;
margin:0 !important;
padding:0 10px !important;
border-top:1px solid #ddd !important;
border-bottom:1px solid #ddd !important;
}
.detailPagination .left-container {
position:relative !important;
left:0 !important;
float: left !important;
padding:0 !important;
margin:0 !important;
}
.detailPagination .left-container .previousNext {
margin:0 !important;
padding:0 !important;
}
.detailPagination .right-container {
position:relative !important;
right:0 !important;
float: right !important;
padding:0 !important;
margin:0 !important;
}
.detailPagination .right-container .previousNext {
margin:0 !important;
padding:0 !important;
}

.leftmarg {
/*
padding:0 !important;
margin:0 !important;
*/
}
.detailimgcontainer {
margin:10px !important;
padding:0 !important;
line-height:1.2em !important;
}
.detailimgcontainer .detaildiv img {
margin:3px 10px 0 0 !important;
width:145px !important;
}
.detailimgcontainer .detailimlisting div:last-child {
width:145px !important;
}
.detailimgcontainer .detailheadernew {
font-size:16px !important;
line-height:1.2em !important;
font-weight:bold !important;
padding:0 !important;
}
.detailimgcontainer .detailheadersubtitle {
font-size:16px !important;
line-height:1.2em !important;
padding:0 0 5px 0 !important;
}
.detailimgcontainer .AuthorName {
padding:0 !important;
}
.detailimgcontainer .AuthorName span {
color:#333 !important;
}
.detailimgcontainer .detailheadershort {
padding:0 !important;
margin:22px 0 !important;
font-weight:normal !important;
font-size:14px !important;
line-height:1.4em !important;
}
.detailimgcontainer #buyingOptionTable {
margin:22px 0 !important;
}
.detailimgcontainer #buyingOptionTable #mainForm {
padding:0 !important;
width:auto !important;
}



/* Cart */
.header {
min-height:44px !important;
padding:0 10px !important;
margin:0 !important;
border-bottom:1px solid #ddd !important;
border-top:1px solid #ddd !important;
background-color:#f6f6f6 !important;
font-size:18pt !important;
line-height:44px !important;
font-weight:normal !important;
color:#990000 !important;
}

.basketitem {
border:0;
border-bottom:1px solid #ddd !important;
padding:12px 10px !important;
margin:0 !important;
}
.basketitem .thumbcontainer {
margin:3px 10px 0 0 !important;
}
.basketitem .thumbcontainer .minithumbdiv {
margin:0 0 10px 0 !important;
}
.basketitem .thumbcontainer .remove {
font-size:14px !important;
margin:0 0 5px 0 !important;
}
.basketitem .basketitemname {
float:left !important;
width:205px !important;
font-size:16px !important;
line-height:1.2em !important;
}
.basketitem .basketoptions {
float:left !important;
width:205px !important;
font-size:14px !important;
line-height:1.2em !important;
margin:0 0 5px 0 !important;
}
.basketitem .basketprice {
font-size:14px !important;
line-height:1.3em !important;
}
.basketitem .baskettotals {
padding:0 !important;
font-size:14px !important;
line-height:1.3em !important;
}

.rightmarg {
padding:0 10px !important;
margin:0 !important;
}
.rightmarg .baskettotals {
margin:10px 0 10px 0 !important;
padding:0 !important;
font-size:14px !important;
}
.rightmarg .esttableitem {
margin:10px 0 10px 0 !important;
padding:0 !important;
font-size:14px !important;
}

.button1 {
display:block !important;
float:left !important;
margin:12px 0 !important;
}
.button1 .form_but {
font-size:18pt !important;
}
.button2 {
display:block !important;
float:right !important;
margin:12px 0 !important;
}
.button2 .form_but {
font-size:18pt !important;
}



/* Checkout */
#mainForm {
padding:0 10px !important;
width:300px !important;
}
#mainForm fieldset {
border:none !important;
font-size:14px !important;
line-height:1.5em !important;
padding:0 !important;
margin:0 -10px 12px -10px !important;
}
#mainForm fieldset legend {
display:block !important;
float:left !important;
width:300px !important;
padding:10px 10px 5px 10px !important;
margin:0 0 10px 0 !important;
border-bottom:1px solid #ddd !important;
background-color:transparent !important;
font-size:14px !important;
font-weight:bold !important;
overflow:hidden !important;
}
#mainForm fieldset .formlabel {
display:block !important;
margin:0 10px !important;
font-size:14px !important;
}
#mainForm fieldset .formlabel:first-child {
margin-top:10px !important;
}
#mainForm fieldset input, form fieldset select {
margin:0 10px 10px 10px !important;
clear:both !important;
}
#mainForm fieldset label {
font-size:14px !important;
}
#mainForm fieldset .formlabel .formlabel {
margin:0 !important;
}
#mainForm fieldset .formlabel input, form fieldset .formlabel select {
margin:0 0 10px 0 !important;
}
#mainForm .formrequired {
color:#cc0000 !important;
}

#mainForm .paymentLabel {
margin-right:10px !important;
}
#mainForm .paymentTotals, #mainForm .totalLine {
width:70px !important;
margin-right:10px !important;
padding:0 !important;
text-decoration:none !important;
}
#mainForm .totalLine {
border-top:1px solid #ddd !important;
color:#990000 !important;
}

#mainForm .ordersummary {
overflow:hidden !important;
margin:0 10px !important;
font-size:14px !important;
}
#mainForm .edit {
display:block !important;
margin:3px 10px 0 10px !important;
font-size:14px !important;
color: #207CC1 !important;
text-decoration:none !important;
}

#mainForm .reviewItemName {
display:block !important;
padding:0 10px 0 10px !important;
margin:0 0 5px 0 !important;
background-color:transparent !important;
font-size:16px !important;
font-weight:bold !important;
overflow:hidden !important;
}
#mainForm .reviewItemName:first-child {
border-top:1px solid #ddd !important;
padding-top:10px !important;
}
#mainForm .reviewItemOptions, #mainForm .reviewItemQty {
font-size:14px !important;
margin:0 10px 5px 10px !important;
}
#mainForm .reviewItemPrice {
font-size:14px !important;
line-height:1.3em !important;
font-weight:bold !important;
padding:0 10px 10px 10px !important;
margin:0 0 10px 0 !important;
border-bottom:1px solid #ddd !important;
}
#mainForm .reviewItemTotal {
font-size:14px !important;
line-height:1.3em !important;
font-weight:bold !important;
padding:0 10px 0 0 !important;
}
#mainForm .reviewItemPrice:last-child {
border-bottom:1px solid #ddd !important;
}
#mainForm .reviewDiscountMessage {
margin:0 10px !important;
}

.errorblock {
padding:0 !important;
margin:10px !important;
color:#cc0000 !important;
font-size:14px !important;
}


/* Thank You Update */
.default {
margin:10px 10px 22px 10px !important;
font-size:14px !important;
line-height:1.3em !important;
}



/* Email Signup Update */
#mobileEmailSignUp {
margin:10px 10px 22px 10px !important;
}
#mobileEmailSignUp input:first-child {
border:1px solid #ccc !important;
}



/* Footer Update */
#footer {
height:auto !important;
margin:22px 0 0 0 !important;
padding:0 !important;
}
#footer .copyright {
padding:0 10px !important;
text-align:left !important;
}
#footer .copyright div, #footer .copyright a {
font-size:14px !important;
line-height:18px !important;
}


div.basketitemname a{
	text-decoration: none;
	color: #207CC1;
}

div.directoryCategoryHeader {
	text-align: left;
}

p.bread_crumb {
	text-align: left;
	padding-left: 10px;
	font-size: 16px;
	line-height: 26px;
	font-weight: normal;
}

form#sort {
	text-align: left;
	min-height: 22px;
	padding-left: 10px;
}

div.esttableitemtotalspecial {
	text-align: right;
	margin: 0 -10px 0 0;
}

h3.no-products {
	padding: 10px;
}

.baskettotals1 {
	color: #900 !important;
	font-size: 12px !important;
	line-height: 1.4em;
}

.paymentLabelFree {
	color: #900 !important;
	line-height: 1.4em;
}

#mainForm fieldset div.totalLine {
	color: #000 !important;
}

.paymentTotals1 {
	color: #900 !important;
	text-align: right;
}

div div.errorblock {
	margin: 10px 0 !important;
}

div#content div.errorblock {
	margin: 10px !important;	
}

div#options {
	margin: 10px 0 !important;
}

span.button2 input.form_but {
	background: -webkit-gradient(linear, 0% 45%, 0% 55%, from(#FBDF73), to(#FAD441)) !important;
	background: -moz-linear-gradient(0% 45% 270deg, #FBDF73, #FAD441, #FAD441 55%) !important;
	background-color: #FAD441 !important;
	border: 1px solid #F9C90F !important;
	font-weight: bold;
	display: inline-block !important;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	padding: 4px 10px !important;
	color: black;
	margin: 0px 4px 8px 0 !important;
	font-size: 14px !important;
	-webkit-appearance: button; 
}

span.button1 input.form_but {
	background: -webkit-gradient(linear, 0% 45%, 0% 55%, from(#FBDF73), to(#FAD441)) !important;
	background: -moz-linear-gradient(0% 45% 270deg, #FBDF73, #FAD441, #FAD441 55%) !important;
	background-color: #FAD441 !important;
	border: 1px solid #F9C90F !important;
	font-weight: bold;
	display: inline-block !important;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	padding: 4px 10px !important;
	color: black;
	margin: 0px 4px 8px 0 !important;
	font-size: 14px !important;
}

span.button1 a {
	background: -webkit-gradient(linear, 0% 45%, 0% 55%, from(#FBDF73), to(#FAD441)) !important;
	background: -moz-linear-gradient(0% 45% 270deg, #FBDF73, #FAD441, #FAD441 55%) !important;
	background-color: #FAD441 !important;
	border: 1px solid #F9C90F !important;
	font-weight: bold;
	display: inline-block !important;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	padding: 4px 10px !important;
	color: black;
	margin: 0px 4px 8px 0 !important;
	font-size: 14px !important;
	text-decoration: none;
}

div.paymentLabel1 {
	color: #900 !important;
	width: 220px;
	text-align: right;
}

a.button,a.button2 {
	padding: 0 !important;
	margin: 0 !important;
}

a.button:active,a.button2:active {
	background-position: right 0px;
	padding: 0 !important;
	margin: 0 !important;
}

span.button1:active {
	background-position: right 0px;
	}
