/* The Reset ---------------------------------- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,p,blockquote,table,th,td
	{
	margin: 0;
	padding: 0;
}

fieldset,img,abbr {
	border: 0;
}

address,caption,cite,code,dfn,em,h1,h2,h3,h4,h5,h6,th,var {
	font-style: normal;
	font-weight: normal;
}

caption,th {
	text-align: left;
}

q:before,q:after {
	content: '';
}

hr {
	border: 1px solid #f5f5f5;
	size: 1px;
}

body {
	font-size: 92.5%;
	background: #fff;
	font-family: "Times New Roman",'Microsoft Yahei',sans-serif, Verdana, Arial, "Lucida Grande",
		"Bitstream Vera Sans";
	line-height: 2.2em;
	color: #555;
	padding-bottom: 2.0em;
/* 	transform: scale(1.3, 1.3);
    transform-origin: left top 0; */
}

/* -------------------------------------------- */
/* Enhanced interactive with Firefox */
*::-moz-selection {
	background-color: #2583AD;
	color: #ffffff
}

code {
	font-family: "Courier New", Courier, monospace;
}

pre {
	background: #f5f5f5;
	border: 1px solid #dadada;
	padding: 1.100em;
	font-size: 1.100em;
	line-height: 1.3em;
	overflow: auto;
}

pre a {
	font-weight: normal;
}

a {
	color: #2583ad;
	text-decoration: none;
	font-weight: bold;
	padding-left: 2px;
	padding-left: 2px;
	padding-right: 2px;
}

a:hover {
	color: #d54e21;
}

strong {
	font-weight: bold;
}

em,cite {
	font-style: italic;
}

.wrapper {
	clear: both;
	margin: 0 auto;
}

.column {
	float: left;
}

#header {
	/*background: url("/themes/images/candle.png") no-repeat scroll right center / 15% auto #464646;*/
	background:url("/themes/images/banner.jpg") repeat-x scroll 0 50% #464646;
	padding: 0 3em;
}

#header .wrapper {
	height: 11.4em;
	position: relative;
}

#header h1 a {
	background: url("../images/logo.png") no-repeat scroll left center / 32% auto transparent;
    display: block;
    height: 5.6em;
    text-indent: -9999px;
    transition: all 3s ease 0s;
	-webkit-transition: all 3s;
	-moz-transition: all 3s;
	-o-transition: all 3s;
}

#header h1 a:hover {
	-webkit-transform: rotateX(360deg);
	-moz-transform: rotateX(360deg);
	-o-transform: rotateX(360deg);
	transform: rotateX(360deg);
}

#header ul {
	bottom: 0;
	list-style: none outside none;
	position: absolute;
	right: 5em;
}

#header ul li {
	float: left;
}

#header ul li a {
	font-weight: normal;
	display: block;
	line-height: 2.7em;
	padding: 0 1em;
	font-size: 1.4em;
	color: #999;
	text-shadow: #333 1px 1px 1px;
}

#header ul li a:hover {
	color: #fff;
}

#header ul li a.current,#header ul li#download a.current {
	color: #555;
	background: #ffffff;
	-moz-border-radius-topleft: 0.3em;
	-khtml-border-top-left-radius: 0.3em;
	-webkit-border-top-left-radius: 0.3em;
	border-top-left-radius: 0.3em;
	-moz-border-radius-topright: 0.3em;
	-khtml-border-top-right-radius: 0.3em;
	-webkit-border-top-right-radius: 0.3em;
	border-top-right-radius: 0.3em;
	text-shadow: #c6d9e9 1px 1px 1px;
}

#header ul li#download a {
	background: #d54e21 url(../images/download-tab-bg.png) bottom left
		repeat-x;
	color: #fff;
	-moz-border-radius-topleft: 0.3em;
	-khtml-border-top-left-radius: 0.3em;
	-webkit-border-top-left-radius: 0.3em;
	border-top-left-radius: 0.3em;
	-moz-border-radius-topright: 0.3em;
	-khtml-border-top-right-radius: 0.3em;
	-webkit-border-top-right-radius: 0.3em;
	border-top-right-radius: 0.3em;
	text-shadow: #b5421c 1px 1px 1px;
}

#header ul li#download a:hover {
	color: #ffac90;
}

#header ul li#download a.current:hover {
	color: #555;
}

#header ul.bible-menu {
	display: none;
}

#header .welcome {
	color: #CCCCCC;
	font-size: 1.2em;
	padding: 0.6em;
	position: absolute;
	right: 0;
	top: 0;
}

.download-button {
	cursor: pointer;
	background: #d54e21;
	padding: 0.8em 1em;
	color: #fff;
	-moz-border-radius: 0.3em;
	-khtml-border-radius: 0.3em;
	-webkit-border-radius: 0.3em;
	border-radius: 0.3em;
}

a.download-button span,a.download-button:hover {
	color: #ffac90;
}

.download-tar {
	font-size: 1em;
	margin-top: -0.1em !important;
	text-align: center;
	margin-bottom: 1.400em !important;
}

#pagebody h2 {
	border-bottom: 1px dotted #CCCCCC;
	color: #333333;
	padding: 0.714em 0 1em;
}

h3 {
	font-size: 1.4em;
	color: #333;
	font-weight: bold;
	margin: -1px 0 1px 0;
}

h3 u {
	color: #ff0000;
}

h4 {
	font-weight: bold;
	border-bottom: 1px solid #dedede;
	padding-bottom: 0.4em;
	color: #333;
	margin-bottom: 1.8em;
}

h5 {
	font-weight: bold;
	font-size: 1em;
	margin-bottom: 1.200em;
}

input.text {
	margin-right: 0.2em;
	padding: 0.3em;
	background: #f5f5f5;
	border: 1px solid #ccc;
	-moz-border-radius: 0.3em;
	-khtml-border-radius: 0.3em;
	-webkit-border-radius: 0.3em;
	border-radius: 0.3em;
	vertical-align: top;
	color: #666;
	font-size: 0.9em;
}

button {
	height: 2.4em;
}

.text:hover,.text:focus,select:hover,select:focus {
	border-color: #80b5d0;
}

.button,.button-secondary {
	cursor: pointer;
	color: #246;
	background: #e5e5e5;
	padding: 0.2em;
	border: 1px solid #a3a3a3;
	-moz-border-radius: 0.3em;
	-khtml-border-radius: 0.3em;
	-webkit-border-radius: 0.3em;
	border-radius: 0.3em;
	font-size: 0.9em;
}

span.button a {
	line-height: 2.2em;
	display: inline-block;
	height: 2.2em;
}

span.button {
	height: 2.2em;
	display: inline-block;
	vertical-align: bottom;
}

p.button {
	padding-bottom: 0.8em !important;
}

.button-secondary {
	background: #cee1ef;
	border-color: #80b5d0;
}

.button:hover,.button-secondary:hover {
	color: #d54e21;
}

.button:hover {
	border-color: #535353;
}

.button-secondary:hover {
	border-color: #328ab2;
}

#headline {
	background: #e4f2fd;
	border-bottom: 1px solid #c6d9e9;
	padding: 0 3em;
	display: none;
}

#headline h2 {
	border: 0 none;
	color: #555555;
	font-family: sans-serif, Georgia, Times, "Times New Roman";
	font-size: 3em;
	line-height: 100%;
	padding: 0.7em 0;
	text-transform: uppercase;
}

#headline .login {
	position: relative;
	float: right;
	padding-top: 5em;
	margin-right: 1.500em;
}

#headline input.text {
	border: 1px solid #c6d9e9;
}

#headline .container {
    float: none;
    padding: 1em 0;
}

#pagebody {
	padding: 1em 3em;
}

#pagebody .standard {
	font-size:1.4em;
}

#pagebody .submenu,#pagebody #submenu {
	margin-left: 0;
	margin-top: -0.2em;
	font-size: 1em;
	list-style: none;
}

#pagebody .submenu a#subcurrent,#pagebody #submenu a#subcurrent {
	color: #333;
	cursor: default;
}

#pagebody .submenu li {
	border-bottom: 1px solid #dedede;
	font-size: 1.1em;
	line-height: 1.500em;
	padding: 0.5em 0;
}

#pagebody .submenu li a {
	width: 100%;
	display: block;
}

#pagebody .submenu li.current {
	background: url(../images/arrow.png) center left no-repeat;
	font-weight: bold;
}

#pagebody .submenu li ul {
	margin-top: 0 !important;
	margin-left: 1.6em !important;
}

#pagebody .submenu li ul li {
	border: none;
	line-height: 1.4em;
	padding-bottom: 0.2em;
}

#pagebody p,#pagebody ol,#pagebody ul {
	margin: 0.5em 0 0.5em 0;
}

#pagebody ol.searchresults li {
	list-style-position: inside;
	padding: 0.3em 1.200em;
}

#pagebody ol.searchresults li b {
	color: #F55912;
}

#pagebody ol.searchresults li.odd {
	
}

#pagebody ol.searchresults li.even {
	background: #f5f5f5;
}

#pagebody ol.searchresults .relevance {
	display: none;
}

#pagebody ol.searchresults .explanation {
	color: blue;
	font-size: 50%;
	font-style: italic;
}

#pagebody ol.searchresults .explanation :before {
	content: '[*]';
}

#pagebody ol.menu {
    list-style-position: inside;
    width: 300px;
}

#pagebody ul {
	list-style: none;
}

a.rsslink {
	background: url(../images/feedicon10.png) top left no-repeat;
	padding-left: 0.7em;
}

#pagebody ol {
	list-style: roman;
}

#pagebody p.intro {
	font-family: sans-serif, Georgia, Times, "Times New Roman";
	color: #555;
	font-size: 1.5em;
	margin-top: -1px;
	margin-bottom: 2.3em;
}

#pagebody p.intro a {
	font-weight: normal;
}

.sidebar .container {
	width: 287px;
	float: none;
}

.sidebar label {
	clear:both;
}

#old_book, #new_book {
  width:7.5em;
}

#pagebody #sitesearch input#keyword.text {
	width: 100%;
	padding: 0.65em;
}

#pagebody #sitesearch input.button {
	padding: 0.5em;
}

#pagebody .search-tips {
	border-bottom: 1px solid #F5F5F5;
	padding: 0.7em 0;
}

#pagebody .search-tips u {
	color: #ff0000;
}

.feed {
	background: url(../images/feedicon.png) center left no-repeat;
	padding-left: 1.9em;
}

#footer {
	padding: 0 3em;
	margin: 0 auto;
}

#footer .wrapper {
	border-top: 1px solid #DEDEDE;
	padding: 0.6em 0;
	font-size: 1.4em;
}

#footer h6 {
	float: right;
}

#footer h6 {
	width: 13.3em;
	height: 0.9em;
	text-indent: -9999px;
	margin-top: 0.6em;
}

blockquote {
	background: #f5f5f5;
	border: 1px solid #dadada;
	padding: 1em 1em;
	margin-bottom: 2.2em;
}

.submit {
	border-top: 1px solid #ccc;
	padding: 1.5em 0 0 0;
	margin: 1em 0 0 0;
	-moz-border-radius-bottomleft: 0.3em;
	-khtml-border-bottom-left-radius: 0.3em;
	-webkit-border-bottom-left-radius: 0.3em;
	border-bottom-left-radius: 0.3em;
	-moz-border-radius-bottomright: 0.3em;
	-khtml-border-bottom-right-radius: 0.3em;
	-webkit-border-bottom-right-radius: 0.3em;
	border-bottom-right-radius: 0.3em;
}

.info {
	padding: 0.5em;
	padding-left: 1em;
    background-color: #e3f6e9;
    border: 1px solid #0ba51f;
}

.wrap,.updated {
	padding: 0.5em;
	padding-left: 1em;
	background-color: #e4f2fd;
	border: 1px solid #2583ad;
}

.error {
	padding: 0.5em;
	padding-left: 1em;
	background-color: #ffebe8;
	border: 1px solid #c00;
}

.error a {
	color: #c00;
}

.text.glass {
	background: rgb(255, 255, 255) url("data:image/svg+xml,%3Csvg focusable='false' height='30px' viewBox='0 0 24 24' width='30px' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.49,19l-5.73-5.73C15.53,12.2,16,10.91,16,9.5C16,5.91,13.09,3,9.5,3S3,5.91,3,9.5C3,13.09,5.91,16,9.5,16 c1.41,0,2.7-0.47,3.77-1.24L19,20.49L20.49,19z M5,9.5C5,7.01,7.01,5,9.5,5S14,7.01,14,9.5S11.99,14,9.5,14S5,11.99,5,9.5z' fill='%23ababab'%3E%3C/path%3E%3Cpath d='M0,0h24v24H0V0z' fill='none'%3E%3C/path%3E%3C/svg%3E") no-repeat scroll 0.5em 0.5em / 8%;
	height: 1.4em;
	padding-left: 1.8em;
	width: 12em;
}

textarea {
	border: 1px solid #bdc7d8;
	width: 13.5em;
	padding: 0.3em;
	font-family: "Times New Roman",'Microsoft Yahei',sans-serif, Verdana, Arial, "Lucida Grande", "Bitstream Vera Sans";
	color: #555555;
    font-size: 0.9em;
}

select {
	border: 1px solid #BDC7D8;
	padding: 0.2em;
	-moz-border-radius: 0.3em;
	-khtml-border-radius: 0.3em;
	-webkit-border-radius: 0.3em;
	border-radius: 0.3em;
	font-size: 0.9em;
}

.selected {
    border-bottom: 1px dotted #000;
    color: #0000ff;
    margin-bottom: -1px;
}

.line {
	background: url(../images/dotline.gif) repeat-x 0 bottom;
}

a.clear-fix {
	padding-top: 1em;
}

.clear-fix {
	display: block;
	clear: both;
}

/* Footer Class */
.footer {
	clear: both;
	border-top: 1px solid #dedede;
	padding: 0.6em 1.400em;
	margin: 0 auto;
}

#documentation,p.summary {
	padding-top: 1em;
	padding-bottom: 1em;
	/*text-indent: 2.4em;*/
	letter-spacing: 1.32px;
	line-height: 165%;
	/*font-size:10.5pt*/
}

#documentation .column {
	margin: 0px;
	padding: 0px;
	text-align: justify;
	text-justify: inter-ideograph;
	float: none;
	width: auto;
}
#documentation .column ol {
	/* Multi-column layout applied to the list so items flow across columns */
	-webkit-column-count: 3;
	-moz-column-count: 3;
	column-count: 3;
	-webkit-column-gap: 2rem;
	-moz-column-gap: 2rem;
	column-gap: 2rem;
}
#documentation .column li {
	/* Prevent awkward splits across columns */
	break-inside: avoid;
	-webkit-column-break-inside: avoid;
	page-break-inside: avoid;
	margin-bottom: 0.6em;
}

/* Responsive column counts */
@media only screen and (max-width: 1200px) {
	#documentation .column ol { -webkit-column-count: 2; -moz-column-count: 2; column-count: 2; }
}
@media only screen and (max-width: 959px) {
	#documentation .column ol { -webkit-column-count: 1; -moz-column-count: 1; column-count: 1; }
}

/*
#documentation ol:before { content:" ";background:url(../images/quote.png) no-repeat ;background-position: top left;border:0px solid #ff0000;padding:16px 23px 16px 23px;} 
#documentation ol:after { content:" ";background:url(../images/quote.png) no-repeat ;background-position: bottom right;border:0px solid #ff0000;padding:16px 23px 16px 23px;}  
*/
#documentation ol {
	margin: 0px;
	list-style: none;
}

#documentation ol li { /*display: inline;*/
	
}

.sub {
	vertical-align: sub;
}

.sup {
	text-decoration: underline;
	font-size: 0.8em;
	vertical-align: top;
	line-height: 1.100em;
	color: #ff0000;
	cursor: pointer;
}

ol li span.phonetic {
	color: Blue;
}

ol li span.phrase,ol li span.phonetic {
	margin-right: 1.200em;
}

ol li span.interpretation {
	display:block
}

#menu {
	position: absolute;
	background: #e4f2fd;
	border: 1px solid #c6d9e9;
	display: block;
	width: 11.5em;
	filter: alpha(opacity =     95);
	opacity: 0.95;
}

#dialog, #tdialog {
	position: absolute;
	background: #e4f2fd;
	border: 1px solid #c6d9e9;
	display: block;
	font-size: 1.2em;
}

#tdialog .text {
	background: #fff;
	padding: 0.7em;
}

#content {
	font-size: 1.2em;
	width: 100%;
}

#menu ul,#dialog ul {
	margin: 0px;
	padding: 0px;
}

#menu ul li {
	list-style: none;
	padding: 0px;
}

#dialog ul li, #tdialog ul li {
	list-style: none;
	padding-left: 1em;
	padding-right: 1em;
}

#menu ul li a {
	padding: 0px;
	padding-left: 1em;
	font-weight: normal;
	font-size: 1.2em;
	color: #555;
	cursor: pointer;
	display: block;
}

#menu ul li a:hover {
	background: #555;
	color: #ffffff;
}

/*tab form*/
#tab ul {
	float: left;
	list-style: none;
	min-width: 50em;
	margin: 0px;
}

#tab ul li {
	float: left;
}

#tab ul li a {
	font-weight: normal;
	display: block;
	line-height: 3em;
	padding: 0 1em;
	font-size: 1.4em;
	color: #999;
	text-shadow: #f5f5f5 1px 1px 1px;
}

#tab ul li a:hover {
	color: #ff0000;
}

#tab ul li a:focus {
	border: 0px solid #ffffff;
}

#tab ul li a.current,#tab ul li#download a.current {
	color: #555;
	background: #e4f2fd;
	-moz-border-radius-topleft: 0.3em;
	-khtml-border-top-left-radius: 0.3em;
	-webkit-border-top-left-radius: 0.3em;
	border-top-left-radius: 0.3em;
	-moz-border-radius-topright: 0.3em;
	-khtml-border-top-right-radius: 0.3em;
	-webkit-border-top-right-radius: 0.3em;
	border-top-right-radius: 0.3em;
	text-shadow: #c6d9e9 1px 1px 1px;
}

#tab ol {
	padding-left: 1em;
	padding-top: 0.5em;
}

#tab form {
	border: 1em solid #e4f2fd;
	padding: 1em 1em 0px 1em;
	margin: 0px;
	clear: both;
}

#tab div.panel {
	margin: 0px;
	clear: both;
}

.required {
	color: #ff0000;
}

div.line-space {
	clear: both;
	height: 5em;
}

a.download-link {
	background: url("../images/download-button.png") no-repeat scroll -0.4em 0
		transparent;
	color: #09700B;
	display: block;
	height: 6.3em;
	padding: 11.500em 1.500em 1.500em 6em;
	width: 21.9em;
}

* html a.download-link {
	background: url("../images/download-button-ie.png") no-repeat scroll 0 0
		transparent;
}

a.download-link:hover {
	background-position: -304px 0;
	cursor: pointer;
	text-decoration: none;
}

a.download {
	float: right;
}

.shadow {
	float: left;
	margin-right: 2.0em;
	background-color: #EFEFEF;
}

.shadow img {
	padding: 0.4em;
	border: 1px solid #CDCDCD;
	background-color: #FFFFFF;
	position: relative;
	top: -5px;
	left: -5px;
}

.__base__ {
	padding-left: 0.2em;
	padding-right: 0.2em;
	background: none repeat scroll 0% 0% rgb(175, 50, 51);
	color: rgb(255, 255, 255);
	font-size: 1.2em;
	text-align: center;
	display: none;
	position: absolute;
	top: 0px;
	left: 0px;
}

body>div.__base__ {
	position: fixed;
}

ul.testament {
	margin: 0 !important;
}

ul.testament li {
	border: 1px solid #CCCCCC;
	cursor: pointer;
	display: inline-block;
	line-height: 115%;
	margin-right: 0.2em;
	padding: 0.2em 0.2em 0.2em 0.4em;
	text-align: left;
	vertical-align: top;
	width: 8.5em;
}

ul.testament li h3 {
	color: #FF8000;
	font-style: italic;
	padding: 0.7em;
	text-align: center;
}

ul.testament li ol {
	margin: 0 !important;
}

ul.testament li ol li {
	clear: both;
	border: 0;
}

.tips {
	background: yellow;
	border: 1px solid #ff8000;
	padding: 0.5em
}

.container {
	float:right;width:74%;
	font-size: 1.4em;
}
.sidebar {
	float:left;
	font-size: 1.4em;
}

.sidebar .container {
	font-size: 100%;
}

.col-12 {
	font-size:1.4em;
}

.gallery {
    background: url("/themes/images/last-dinner.png") no-repeat scroll 0 50%;
        background-size: auto;
    height: 20em;
    margin-bottom: 0.5em;
    background-size: 100%;
}

/* Mobile and iPad Portrait */
@media only screen and (max-width: 1200px) {
    .container {
		float:right;width:70%;
	}
	.sidebar {
		float:left
	}
}

/* Mobile and iPad Portrait */
@media only screen and (max-width: 1100px) {
    .container {
		float:right;width:67%;
	}
	.sidebar {
		float:left
	}
}

/* Mobile and iPad Portrait */
@media only screen and (max-width: 980px) {
    .container {
		float:right;width:65%;
	}
	.sidebar {
		float:left
	}
}

/* Mobile and iPad Portrait */
@media only screen and (max-width: 959px) {
    .container {
		float:none;width:auto;
	}
	.sidebar {
		float:none
	}
}

/* Mobile Landscape and Portrait */
@media only screen and (max-width: 767px) {
    #header {
    	background: #770707;
    }
    #headline h2, #header ul { display: none; }
    #header .wrapper, #header h1 a {
    	height:7.5em;
    }
    
    #header h1 a {
    	height:3.7em;
    	background:url("../images/logo-small.png") no-repeat scroll left center transparent;
    }
    
    #header .welcome a { color: #fff; }
    #header .welcome {
	    padding: 1.300em 0;
	    position: absolute;
	    right: 0;
	    top: 0;
	}
    
    .open { display: block; }
    
    .container {
		float:none;width:auto;
	}
	.sidebar {
		float:none
	}
    .text.glass {
        width: 17.5em;
        padding-left: 2.3em;
        background-size: 6%;
    }
    textarea {
        width: 19.8em;
    }
}

/* Mobile Portrait */
/* for 480 px width screen */ 
@media only screen and (max-width:480px) { 
    #header .wrapper, #header h1 a {
    	height: 4em;
    }
    #header {
    	padding: 0 1.500em;
    	position: fixed;
    	top:0;
    	width:100%;
    	z-index: 1000; /* Ensure header stays on top */
    }
    #header .welcome {
	    padding: 1em 0;
	    position: absolute;
	    right: 3em;
	    top: 0;
        font-size: 1.0em;
	}
	#headline {
	    margin-top: 4em;
	    padding: 0 1.500em;
	}
	#pagebody {
	    padding: 1em 1.500em;
	    margin-top: 1em; /* Add margin to ensure content doesn't get covered */
	}
	#footer {
	    padding: 0 1.500em;
	}
    #header h1 a { 
	    background:url("../images/favicon-b.png") no-repeat scroll left center / auto auto transparent; 
	    height: 2em;
    }
	.container {
		float:none;width:auto;
	}
	.sidebar {
		float:none
	}
}

/* Search Styles */
.search-container {
    display: flex;
    width: 100%;
    max-width: 800px;
    margin: 20px auto;
    gap: 10px;
    padding: 0 20px;
    box-sizing: border-box;
}

.search-input {
    flex: 1;
    min-width: 200px;
    padding: 12px 20px;
    font-size: 16px;
    border: 2px solid #e4f2fd;
    border-radius: 12px;
    background: #fff url("data:image/svg+xml,%3Csvg focusable='false' height='24px' viewBox='0 0 24 24' width='24px' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.49,19l-5.73-5.73C15.53,12.2,16,10.91,16,9.5C16,5.91,13.09,3,9.5,3S3,5.91,3,9.5C3,13.09,5.91,16,9.5,16 c1.41,0,2.7-0.47,3.77-1.24L19,20.49L20.49,19z M5,9.5C5,7.01,7.01,5,9.5,5S14,7.01,14,9.5S11.99,14,9.5,14S5,11.99,5,9.5z' fill='%23ababab'%3E%3C/path%3E%3C/svg%3E") no-repeat 16px center;
    padding-left: 50px;
    transition: all 0.3s ease;
    color: #555;
    box-sizing: border-box;
}

.search-input:focus {
    outline: none;
    border-color: #2583ad;
    box-shadow: 0 0 5px rgba(37, 131, 173, 0.2);
}

.search-input::placeholder {
    color: #999;
}

.search-button {
    padding: 12px 30px;
    font-size: 16px;
    color: #fff;
    background: #2583ad;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.3s ease;
    white-space: nowrap;
    height: auto;
    box-sizing: border-box;
}

.search-button:hover {
    background: #1f6a8d;
    transform: translateY(-1px);
}

.search-button:active {
    transform: translateY(1px);
}

/* Responsive adjustments */
@media only screen and (max-width: 767px) {
    .search-container {
        flex-direction: column;
        width: 100%;
        padding: 0 15px;
        margin: 10px auto;
        box-sizing: border-box;
    }
    
    .search-input {
        width: 100%;
        margin-bottom: 10px;
        font-size: 14px;
    }
    
    .search-button {
        width: 100%;
        font-size: 14px;
    }
}

@media only screen and (max-width: 480px) {
    .search-container {
        padding: 0 10px;
        margin-top: 20px; /* Add top margin to avoid fixed header */
    }
    
    .search-input,
    .search-button {
        font-size: 13px;
        padding: 10px 15px;
    }
    
    .search-input {
        padding-left: 40px;
        background-size: 20px;
        background-position: 12px center;
    }
}

/* Fix Firefox selection */
*::-moz-selection {
    background-color: #2583AD;
    color: #ffffff;
}

/* Mobile search page specific fixes */
@media only screen and (max-width: 480px) {
    /* Ensure search page content is properly spaced from fixed header */
    #pagebody .search-container {
        margin-top: 30px; /* Extra spacing for search container specifically */
    }
    
    /* Ensure the first search container in pagebody has proper spacing */
    #pagebody > .wrapper > .col-12 > .search-container {
        margin-top: 25px;
    }
    
    /* Additional fix for search page headline spacing */
    #headline + #pagebody .search-container {
        margin-top: 2.5em;
    }
}

/* Additional mobile fixes for search functionality */
@media only screen and (max-width: 767px) {
    /* Ensure search container has proper spacing on all mobile devices */
    #pagebody .search-container {
        margin-top: 15px;
    }
}

/* Sidebar Toggle Button Styles */
.sidebar-toggle-container {
    position: fixed;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1000;
    background: #007bff;
    border-radius: 0 8px 8px 0;
    box-shadow: 2px 0 8px rgba(0,0,0,0.2);
    transition: all 0.3s ease;
}

.sidebar-toggle-btn {
    background: transparent;
    color: white;
    border: none;
    padding: 12px 8px;
    cursor: pointer;
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    min-height: 60px;
    transition: all 0.3s ease;
}

.sidebar-toggle-btn:hover {
    background: rgba(255,255,255,0.1);
    transform: scale(1.05);
}

.sidebar-toggle-btn:active {
    background: rgba(255,255,255,0.2);
}

.toggle-icon {
    font-size: 20px;
    font-weight: bold;
    transition: transform 0.3s ease;
}

/* Chapter Navigation Button Styles */
.chapter-nav-container {
    position: fixed;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1000;
    background: #6c757d;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);
    transition: all 0.3s ease;
}

.chapter-nav-container.left {
    left: 0;
    border-radius: 0 8px 8px 0;
}

.chapter-nav-container.right {
    right: 0;
    border-radius: 8px 0 0 8px;
}

.chapter-nav-btn {
    background: transparent;
    color: white;
    border: none;
    padding: 0;
    cursor: pointer;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    min-height: 60px;
    transition: all 0.3s ease;
    text-decoration: none;
}

.chapter-nav-btn:hover {
    background: rgba(255,255,255,0.1);
    transform: scale(1.05);
}

.chapter-nav-btn:active {
    background: rgba(255,255,255,0.2);
}

.chapter-nav-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.chapter-nav-btn:disabled:hover {
    background: transparent;
    transform: none;
}

.chapter-nav-icon {
    font-size: 18px;
    font-weight: bold;
    transition: transform 0.3s ease;
}

/* Left dock: Previous chapter button */
.chapter-nav-container.left .chapter-nav-btn {
    color: #fff;
}

.chapter-nav-container.left:hover {
    background: #5a6268;
}

/* Right dock: Next chapter button */
.chapter-nav-container.right .chapter-nav-btn {
    color: #fff;
}

.chapter-nav-container.right:hover {
    background: #5a6268;
}

/* Ensure proper spacing between dock elements */
.sidebar-toggle-container {
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.chapter-nav-container.left {
    left: 0;
    top: 35%;
    transform: translateY(-50%);
}

.chapter-nav-container.right {
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

/* Sidebar Toggle Functionality */
.sidebar.hidden {
    display: none;
}

/* Container width adjustment when sidebar is hidden */
#pagebody .wrapper .sidebar.hidden ~ .container {
    width: 100% !important;
    float: none !important;
}

/* Alternative approach: when sidebar is hidden, adjust container */
#pagebody .wrapper .sidebar.hidden + .container {
    width: 100% !important;
    float: none !important;
}

/* Force container to full width when sidebar is hidden */
#pagebody .wrapper .sidebar.hidden ~ .container {
    width: 100% !important;
    float: none !important;
}

/* Ensure proper layout when sidebar is hidden */
#pagebody .wrapper .sidebar.hidden ~ .container {
    width: 100% !important;
    float: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Adjust wrapper layout when sidebar is hidden */
#pagebody .wrapper:has(.sidebar.hidden) .container {
    width: 100% !important;
    float: none !important;
}

/* Alternative approach using JavaScript class on body */
body.sidebar-hidden .container {
    width: 100% !important;
    float: none !important;
}

/* Smooth transitions for layout changes */
.container, .sidebar {
    transition: all 0.3s ease;
}

/* Visual feedback when sidebar is hidden */
body.sidebar-hidden .sidebar-toggle-container {
    background: #28a745;
}

body.sidebar-hidden .sidebar-toggle-btn:hover {
    background: rgba(255,255,255,0.2);
}

/* Responsive adjustments for dock toggle */
@media only screen and (max-width: 959px) {
    .sidebar-toggle-container {
        left: 0;
        top: 50%;
        transform: translateY(-50%);
    }
    
    .sidebar-toggle-btn {
        min-width: 35px;
        min-height: 50px;
        padding: 10px 6px;
    }
    
    .toggle-icon {
        font-size: 16px;
    }
    
    /* Chapter navigation responsive adjustments */
    .chapter-nav-container {
        min-width: 35px;
        min-height: 50px;
    }
    
    .chapter-nav-btn {
        min-width: 35px;
        min-height: 50px;
    }
    
    .chapter-nav-icon {
        font-size: 16px;
    }
    
    /* Adjust positioning for mobile */
    .chapter-nav-container.left {
        top: 30%;
    }
    
    .chapter-nav-container.right {
        top: 45%;
    }
}

@media only screen and (max-width: 480px) {
    .sidebar-toggle-container {
        left: 0;
        top: 50%;
        transform: translateY(-50%);
    }
    
    .sidebar-toggle-btn {
        min-width: 30px;
        min-height: 45px;
        padding: 8px 5px;
    }
    
    .toggle-icon {
        font-size: 14px;
    }
    
    /* Chapter navigation responsive adjustments */
    .chapter-nav-container {
        min-width: 30px;
        min-height: 45px;
    }
    
    .chapter-nav-btn {
        min-width: 30px;
        min-height: 45px;
        padding: 8px 5px;
    }
    
    .chapter-nav-icon {
        font-size: 14px;
    }
}

