/**********************************************
 * base styles
 */
body { background:#fff; color:#333; font-family:Arial, Helvetica, sans-serif; font-size:14px; }
body.busy { cursor:wait; }
a { color:#006699; text-decoration:none; }
a:hover { text-decoration:underline; }
p { line-height:1.3em; font-size:16px; margin:0 0 15px 0; }
h1 { border-bottom:solid 1px #999; color:#333; font-size:23px; margin:0 0 11px 0; padding:0 0 10px 0; }
h1 a { color:#000; }

/**********************************************
 * template layout
 */
#pg { margin:0 auto; width:960px; }
#pg p { font-size:14px; margin:0 0 7px 0;}
#hd { padding:7px 0; }
#bd { min-height:500px; }
#content { float:left; width:645px; }
body.no-side #content { float:none; width:auto; }
#sd { float:right; position:relative; width:300px; }
body.no-side #sd { display:none; }
#sd div.sd-wrap { background:#f0f0f0; padding:15px; zoom:1; }
#sd div.sd-wrap:after{display:block;clear:both;visibility:hidden;content:'.';height:0;}
#sd div.sd-ad { margin:10px 0; text-align:center; }
#ft { clear:both; color:#999; padding: 35px 0; }
#ft ul.nav { margin:0 0 15px 0;}
#ft ul.nav li { display:inline; padding:0 10px; }
#ft ul.nav li.first { padding-left:0; }

/* header */
#hd h2 { float:left; font-family:Georgia; font-size:29px; padding:7px 0; }
#hd h2 a { color:#222; }
#hd h2 a:hover{ text-decoration:none; }
#global-nav { float:right; padding:3px 0; width:300px; }
#global-nav li { display:inline; padding:0 7px; }
#global-nav li span.count { font-size:13px; }
#primary-nav { clear:right; padding:5px 0 0 200px; *margin-top:-10px; }
#primary-nav li { float:left; }
#primary-nav li a { background:#f0f0f0; border:solid 1px #555; border-bottom:none; display:block; margin:0 4px 0 0; padding:5px 10px;}
#primary-nav li a:hover { background:#999; color:#fff; text-decoration:none; }
#primary-nav li.new-post a { background:#006699; color:#fff; }

#secondary-nav { background:#555; clear:both; padding:3px 5px; *padding:1px 5px 3px 5px;}
#secondary-nav li { display:inline; padding:0 10px; zoom:1; }
#secondary-nav li a { color:#fff; font-size:13px; }

/* footer */

/* gp social icons */
#gp-social { position:absolute; right:0; top:-47px; }
#gp-social ul { list-style:none; }
#gp-social li { float:left; list-style:none; padding: 0 0 0 10px; }
#gp-social a { background:transparent url(../img/icons.social.16.gif) no-repeat right top; float:left; height:16px; text-indent:-9999px; width:16px; }
#gp-social a.rss { padding:1px 20px 0 0; text-indent:0; width:auto; }
#gp-social a.twitter { background-position:left -40px; }
#gp-social a.facebook { background-position:left -20px; }

/**********************************************
 * posts list
 */
#post-list { border-top:solid 1px #ccc; }
#post-list li { border-bottom:solid 1px #ccc; padding:10px 5px; zoom:1; }
#post-list li:after{display:block;clear:both;visibility:hidden;content:'.';height:0;}
#post-list h3 { font-size:16px; margin:0 0 3px 0; }
#post-list p { color:#666; }
#post-list p.preview { min-height:35px; }
#post-list div.numbers { float:left; text-align:center; width:75px; }
#post-list div.numbers h5 { font-size:27px; }
#post-list div.votes { background:#f0f0f0; border:solid 2px #aaa; -moz-border-radius:9px; border-radius:9px; color:#000; padding:5px; }
#post-list div.replies { padding:5px 0 3px 0; }
#post-list div.views { font-size:11px; }
#post-list div.wrap { padding:0 0 0 90px; }
#post-list p.when-who { color:#000; margin:0; }
#post-list p span.date, #post-list p.when-who a{ font-weight:bold; }
#post-list a.replies { font-weight:bold; }
#post-list a.most-recent { color:#333; font-size:11px; }
#post-list a.most-recent span.user { color:#006699; font-weight:bold; }

/* tags */
#post-list div.tags { float:right;}
div.tags a { background:#dfdfdf; border-bottom:solid 1px #999; border-right:solid 1px #999; color:#333; float:left; margin:0 0 0 5px; padding:2px 5px 3px 5px; }

/* side */
body.home #sd h3 { border-bottom:solid 1px #999; font-size:17px; margin:0 0 10px 0; padding:0 0 3px 0;  }
body.home #sd-latest-activity{ clear:both; padding:14px 0 0 0; }
#sd-latest-activity h3 { border-bottom:solid 1px #999; font-size:17px; margin:0 0 10px 0; padding:0 0 3px 0;  }
#sd-latest-activity ol.activity-list li div.wrap { width:215px; }
#sd-latest-activity ol.activity-list li { padding:0 0 15px 0; }

/* post list page (tagged) */
body.post-list #sd div.sd-ad { margin-top:0; }

/**********************************************
 * post detail
 */
#post-details { }
#post-details div.numbers { float:left; text-align:center; width:75px; }
#post-details div.numbers h5 { font-size:27px; }
#post-details div.votes { background:#f0f0f0; border:solid 2px #aaa; -moz-border-radius:9px; border-radius:9px; color:#000; margin:0 0 7px 0; padding:5px; }
#post-details div.action { padding:7px 0; }
#post-details div.vote { padding:0; }
#post-details div.vote a{ display:block; padding:7px 0; }
#post-details div.vote a.upvote { background:transparent url(../img/icons_vote.gif) no-repeat center top; }
#post-details div.vote a.unvote { background:transparent url(../img/icons_vote.gif) no-repeat center -50px; }
#post-details div.wrap { float:left; padding: 0 0 0 13px; width:550px; }
#post-details div.user-text { padding:0 0 15px 0; }
#post-details p { font-size:16px; line-height:1.5em; margin:0 0 15px 0; }
#post-details #replies { }
#post-details #replies h2 { border-bottom:solid 2px #999; font-size:21px; padding:10px 0 }

#post-details-sd h3 { clear:both; font-size:15px; font-weight:normal; margin:15px 0 0 0; }
#post-details-sd p.date { font-weight:bold; font-size:14px; }
#post-details-sd div.author { border-bottom:solid 1px #999; height:80px; }
#post-details-sd div.author div.avatar { background:#333; float:left; height:70px; width:70px; }
#post-details-sd div.author div.info { padding:0 0 0 85px; font-size:16px; line-height:1.4em; }
#post-details-sd div.tags { clear: both; font-size:16px; padding:0 0 0 0; zoom:1; }
#post-details-sd div.tags:after{display:block;clear:both;visibility:hidden;content:'.';height:0;}
#post-details-sd div.tags a { clear:both; font-weight:bold; margin:10px 0 0 0; }

#replies { clear:both; position:relative; }
#replies-sort { position:absolute; right:10px; top:20px; }
#replies-sort li { display:inline; }
#replies-sort li a, #replies-sort li span { padding:0 7px; }
#replies-sort li span { background:#ddd; color:#000; }
#replies-sort li a:hover { background:#f0f0f0; text-decoration:none; }
#reply-list { padding:10px 0 0 0; }
#reply-list li { border-bottom:solid 1px #ccc; padding:10px 0 0 0; zoom:1; }
#reply-list li:after{display:block;clear:both;visibility:hidden;content:'.';height:0;}
#post-details .reply div.votes { border-width:1px; border:none; }
#post-details .reply div.numbers h5 { font-size:20px; }
#post-details .reply div.when-who {  padding:0 0 7px 0; zoom:1; }
#post-details .reply div.when-who:after{display:block;clear:both;visibility:hidden;content:'.';height:0;}
#post-details .reply div.when-who div.date { color:#999; font-size:12px; padding-top:25px; }
#post-details .reply div.when-who span.date { color:#666; font-weight:bold }
#post-details .reply div.author { float:right; width:200px; zoom:1; }
#post-details .reply div.author:after{display:block;clear:both;visibility:hidden;content:'.';height:0;}
#post-details .reply div.author div.avatar { background:#333; float:left; height:40px; width:40px; }
#post-details .reply div.author div.info { line-height:1.4em; padding:0 0 0 50px; text-align:left; }

#reply-form { padding:20px 0 0 0; }
#reply-form div.author { float:left; padding:0 15px 0 0; text-align:center; width:70px;  }
#reply-form div.author div.avatar { background:#333; height:70px; width:70px; }
#reply-form h3 { font-size:21px; font-weight:bold; padding:0 0 10px 0; }
#reply-form textarea { height:150px; width:550px; }
#reply-form label { display:none; }
#reply-form li.buttons { padding-top:7px; }

/**********************************************
 * form elemnts
 */
input.btn { background:#f0f0f0; border:solid 1px #999; color:#333; font-size:16px; font-weight:bold; }
input.post { background:#006699; color:#fff; }


/**********************************************
 * post form
 */
#post-form { padding:10px 0 0 0; }
#post-form h3 { font-size:21px; font-weight:bold; padding:0 0 10px 0; }
#post-form li { padding:0 0 7px 0; }
#post-form li.tags { border-bottom:solid 1px #ccc; margin-bottom:10px; padding:10px 0 25px 0; }
#post-form label { line-height:1.4em; }
#post-form #id_title { border:1px solid #ccc; padding:2px 5px; width: 620px; }
#post-form textarea { border:1px solid #ccc; height:300px; width:630px; }
#post-form ul.errorlist li { color:#ff0000; font-size:11px; line-height:1.2em; padding:0; }

.jsOn #post-form #id_tags { display:none; }
#tags-select-wrap { margin:5px 0 0 0; zoom:1; }
#tags-select-wrap:after{display:block;clear:both;visibility:hidden;content:'.';height:0;}
#tags-select-wrap li { display:block; float:left; padding:0 5px 5px 0; }
#tags-select-wrap span { border:solid 1px #aaa; color:#aaa; cursor:pointer; display:block; float:left; padding:3px 10px; }
#tags-select-wrap span.hover { background:#ccc; border:solid 1px #333; color:#333; }
#tags-select-wrap span.selected { border:solid 1px #333; background:#008800; color:#fff; }

#btn-post-preview { display:none; }
.jsOn #btn-post-preview { display:inline; }
#post-preview { padding:20px 0 0 0;}
#post-preview h2 { margin:0 0 15px 0; }

/**********************************************
 * activity list
 */
body.activity #primary-nav li.activity a { background:#999; color:#fff; }
body.activity #sd h3 { border-bottom:solid 1px #999; font-size:17px; margin:0 0 10px 0; padding:0 0 3px 0;  }

ol.activity-list li { clear:both; padding:0 0 7px 0; zoom:1; }
ol.activity-list li:after{display:block;clear:both;visibility:hidden;content:'.';height:0;}
ol.activity-list li div.avatar { background:#333; float:left; height:40px; width:40px; }
ol.activity-list li div.wrap { float:left; padding:0 0 0 10px; }
ol.activity-list li p.date { color:#666; font-size:11px; margin:0; padding:4px 0 0 0; }

body.activity ol.activity-list li div.wrap { width:575px; }

/**********************************************
 * user list page
 */
body.users #primary-nav li.users a { background:#999; color:#fff; }
body.users #bd { position:relative; }

#user-list li { float:left; padding:0 10px 15px 0; width:230px; }
#user-list div.avatar { float:left;  width:50px; }
#user-list div.info { float:left; font-size:13px; width:180px; }
#user-list div.info a { font-weight:bold; }
#user-list div.info a, #user-list div.info strong { font-size:15px; }
#user-list div.info span.joined { color:#666; font-size:11px; }

#user-search { position:absolute; right:320px; top:5px;  }
#user-search span, #user-search input { float:left; font-size:13px; margin:0 5px 0 0; }
#user-search span { font-size:14px; font-weight:bold; padding:5px 5px 0 0; }
#user-search input.text { width:85px; }
#user-search input.btn { padding:1px 3px 3px 3px; }

#user-sort { position:absolute; right:10px; top:10px; }
#user-sort li { display:inline; }
#user-sort li a, #user-sort li span { padding:0 7px; }
#user-sort li span { background:#ddd; color:#000; }
#user-sort li a:hover { background:#f0f0f0; text-decoration:none; }

/**********************************************
 * paging
 */
div.pagination { clear:both; padding:15px 0 0 0; }
div.pagination span, div.pagination a { display:block; float:left; margin:0 5px 0 0; padding:6px 5px; }
div.pagination span.page, div.pagination a.page { border:solid 1px #999; font-size:16px; padding:3px 5px; }
div.pagination a.page:hover { background:#d0d0d0; }
div.pagination span.current { background:#999; color:#fff; }
div.pagination span.disabled { color:#ccc; }


/**********************************************
 * user text (post or reply)
 */
div.user-text { }
div.user-text li { border:none !important; height:auto !important; margin:0 0 0 30px !important; padding:0 !important; }
div.user-text ul li { list-style:disc !important; }
div.user-text ol li { list-style:decimal !important; }

/**********************************************
 * chat
 */
body.chat #content { width:745px; }
body.chat #sd { width:200px; }
body.chat #primary-nav li.chat a { background:#999; color:#fff; }

#chat-box { height: 460px; overflow: auto; border: solid 1px #666; padding: 10px; background: #fff; }
#chat-box span.time, #chat-box span.from { color: #666666; }
#chat-box span.msg { color: #000000; }
#chat-box em { font-style: italic; }
#chat-box span.user { font-style: normal; font-weight: bold; }
#chat-msgs li { padding:0 0 3px 0;}
#chat-msgs li.j { background:#fff url(../img/chat/icons/door_in.png) top left no-repeat; padding-left:20px; }
#chat-msgs li.l { background:#fff url(../img/chat/icons/door_out.png) top left no-repeat; padding-left:20px; }
#chat-msgs li.j span.msg, #chat-msgs li.l span.msg { color:#999; }
#chat-msgs li.j span.action, #chat-msgs li.l span.action { color:#333; }
#chat-msgs li.j span.user, #chat-msgs li.l span.user { color:#333;  }

#chat-users {  }
#chat-users ol { padding: 5px; }
#chat-users h2 { }

#post-msg-form { margin-top: 5px; padding: 5px 10px; background: #f0f0f0; border: solid 1px #333333; }
#post-msg-form li { float: left; margin-right: 10px; }
#post-msg-form legend { display: none; }
#chat-msg li label { display: none; }
#post-msg-form input.text { border: 1px solid black; }
#post-msg-form input.msg { width:630px; font-size: 16px; }
#post-msg-form input.send {  }
#post-msg-form input.username { border: solid 1px #ffffff; }
#chat-options { clear:both; padding: 7px 0 0 0; text-align:right; zoom: 1; }
#chat-options li { display:inline; float:none; padding:0 5px; }
#chat-options:after { display: block; clear: both; visibility: hidden; content: '.'; height: 0; }
#chat-options input.color { width: 65px; }
#chat-options li.color { position: relative; }
#chat-options a.light { display:none; }
#chat-color-picker { position: absolute; top: -200px; left: -35px; background: #f0f0f0; border: solid 1px #000000; display: none; }
#post-msg-form li.smilies { position:relative; }
#post-msg-form li.smilies div{ display:none; width:135px; position:absolute; bottom:20px; left:-40px; background:#ffffff; border:solid 1px #333333; }
#post-msg-form li.smilies ul{ padding:10px; zoom:1; }
#post-msg-form li.smilies ul:after { display: block; clear: both; visibility: hidden; content: '.'; height: 0; }
#post-msg-form li.smilies li { float:left; margin:1px; }
#post-msg-form li.smilies img { cursor: pointer; }

#modalOverlay { background-color: #000; cursor: wait; }
#modalContainer { height: 100px; width: 300px; left: 50%; top: 35%; margin-left: -150px; background-color: #fff; border: 3px solid #ccc; }
#modalContainer h2 { background: #f0f0f0; font-weight: bold; font-size: 127%; padding: 5px 10px; }
#modalContainer div.bd { padding: 10px; }
#modalContainer p { margin:0; }

/* Farbtastic (color picker) */
.farbtastic { position: relative; }
.farbtastic * { position: absolute; cursor: crosshair; }
.farbtastic, .farbtastic .wheel { width: 195px; height: 195px; }
.farbtastic .color, .farbtastic .overlay { top: 47px; left: 47px; width: 101px; height: 101px; }
.farbtastic .wheel { background: url(../img/chat/farbtastic/wheel.png) no-repeat; height: 195px; left:0; top:0; width: 195px; }
.farbtastic .overlay { background: url(../img/chat/farbtastic/mask.png) no-repeat; }
.farbtastic .marker { width: 17px; height: 17px; margin: -8px 0 0 -8px; overflow: hidden; background: url(../img/chat/farbtastic/marker.png) no-repeat; }


/**********************************************
 * generic page with a form (usually)
 */
.registration-page { padding:10px 0 0 0; }
.registration-page form { margin:15px 0; }
.registration-page ol li { display:block; padding:0 0 10px 0; }
.registration-page ol li.btn { padding-left:135px; }
.registration-page ol li label { float:left; padding:2px 10px 0 0; text-align:right; width:125px; }
.registration-page #id_username,
.registration-page #id_password,
.registration-page #id_password1,
.registration-page #id_password2,
.registration-page #id_email,
.registration-page #id_name,
.registration-page #id_location,
.registration-page #id_url,
.registration-page #id_recipient,
.registration-page #id_subject { border:1px solid #999; padding:2px 5px; width:150px; }
.registration-page p.info { font-size:13px; }
.registration-page ul.errorlist { border:solid 2px #ff0000; color:#ff0000; padding:10px; }
.registration-page ol ul.errorlist { border:none; padding:0 0 0 135px; }
.registration-page ol ul.errorlist li { padding:2px 0; }

/* login */
body.login #sd h2 { border-bottom:solid 1px #999; font-size:17px; margin:0 0 10px 0; padding:0 0 3px 0;  }

/**********************************************
 * profile details page
 */
#profile-details div.avatar { float:left; padding:10px 0; text-align:center; width:150px; }
#profile-details div.info { border-left:solid 1px #999; float:left; padding:10px 0 10px 20px; width:470px; }
#profile-details div.info li { clear:both; padding:0 0 8px 0; zoom:1; }
#profile-details div.info li:after{display:block;clear:both;visibility:hidden;content:'.';height:0;}
#profile-details div.info li label { color:#666; float:left; padding:0 10px 0 0; width:60px; }
#profile-details div.info li span.val { float:left; width:390px; }

#latest-user-activity { clear:both; padding:25px 0 0 0; }
#latest-user-activity h3 { font-size:17px; }
#latest-user-activity ol { margin:10px 0 0 0; }


/**********************************************
 * messages pages
 */
table.messages { text-align:left; width:100%; }
table.messages th { background:#ddd; padding:5px 10px; }
table.messages th.to-from { width:80px;}
table.messages th.date { width:170px;}
table.messages th.action { width:50px;}
table.messages td { padding:5px 10px; }

ul.messages-nav li { font-size:16px; padding:5px 0; }

dl.message-headers { zoom:1; }
dl.message-headers:after{display:block;clear:both;visibility:hidden;content:'.';height:0;}
dl.message-headers dt { color:#999; float:left; padding:0 10px 0 0; }
dl.message-headers dd { float:left; padding: 0 20px 0 0 ; }
dl.message-headers dt.subject { clear:both; font-size:16px; margin:10px 0 0 0; }
dl.message-headers dd.subject { font-size:16px; margin:10px 0 0 0; }
body.messages div.body { border-top:solid 1px #999; border-bottom:solid 1px #999; clear:both; padding:10px 0; margin:10px 0; }
