/* SHARED GENERIC CSS FOR FORMS 

NOTE: CSS assumes forms are displayed in 'stacked' view. 
- CSS class 'columnar' and .widgetcol & .labelcol are used to redefine layout for 'columnar' view 

*/

form {
	padding: 0; margin: 0;
}
.TabularSubform td {
  vertical-align:top;
}
.smallfonts {
  font: normal normal 9px Arial, Helvetica, sans-serif;
}
.subform_horiz th,
.subform_horiz td {
	font-size: 11px;
}
.samis_course_approv {
	border: 1px solid #999;
	background: #eee;
	margin-bottom: 6px; 
}
.samis_course_approv_tbl {
	border-collapse: collapse;
}
.samis_course_approv .labelcol,
.samis_course_approv .widgetcol {
	text-align: left;
	font-size: 11px;
	width: auto;
	padding: 6px 0px !important;
	vertical-align: middle;
}
.samis_course_approv .labelcol {
	padding: 6px !important;
}
.samis_course_approv .samis_ca_row2 td.widgetcol,
.samis_course_approv .samis_ca_row2 th.labelcol {

	padding-top: 8px !important;
	padding-bottom: 8px !important;
}
.samis_course_approv .btnbar {
	padding: 8px 4px 4px 4px;
}
.samis_course_approv .labelcol {
	white-space: nowrap;
	padding-right: 2px;
	color: #333;
}
.samis_course_approv .widgetcol {
	padding-right: 12px !important;
}
.samis_course_approv .subform_horiz {
	background: #ffe;
	border: 1px solid #cc9;
}
.samis_course_approv .subform_horiz td {
	padding: 0px 2px 2px 2px;
}
.samis_course_equiv_tbl th {
	font-size: 11px;
	color: #333;
	text-align: left;
	padding-left: 6px;
	padding-bottom: 3px;
}
.samis_course_approv .subform_horiz th,
	font-size: 11px;
	color: #960;
}

.widget input, .widget select, .widget button {
	vertical-align: middle;
}

.disabled {
	background: #eee;
	border: 1px solid #999;
}
.buttonbar {
	border-top: 1px solid #999;
	padding-top: 10px;
}
.buttonbar input {
	margin-right: 6px;
}
.buttonbar_top {
	border-bottom: 1px solid #999;
	padding-bottom: 10px;
}
.reqd_msg, .actions {
	display: block;
        float: right;
        position: relative;
        top: 4px;
        right: 2px;
	margin: 0;
}
.reqd_msg {
	font-style: italic;
}
.fieldgroup {
	margin-bottom: 24px; /* double .form margin-top */
}
.field {
	padding: 0 12px 12px 12px;
	margin-bottom: 11px;
	background: transparent url("/images/border_dotted_horiz_333.gif") repeat-x 0% 100%;
}
.field-first {
	margin-top: 12px;
}
.field-last {
	background-image: none;
	margin-bottom: 0;
	padding-bottom: 0;
}
.children .field-last {
	padding-bottom: 0;
}

.readonly .label {
	font-weight: normal;
}
.readonly .widget {
	font-weight: bold;
}
.label, .blurb, .error { 
	margin-bottom: 3px;
}
.blurb, .fgblurb {
	color: #333333;
	line-height:1.4em;
	margin-top:10px;
}
.fgblurb {
	margin: 0 12px;
	padding-bottom: 12px;
}
.children {
	margin-top: 3px;
}

#dnf_class_values_student__current_address__children .child-subform_tmpl{
	padding-top:5px;
}

[id*='_values_application__'] .checkboxgroup_default {
	position: relative;
	display: block;
	margin-bottom: 10px;
	margin-left: 20px;
}

[id*='_values_application__'] .checkboxgroup_default > input[type="checkbox"] {
	position: relative;
	margin-left: -20px;
}


/* SCHOOL PICKER */
#sp_schools_selected {
	color: #900;
	font-weight: normal;
	font-size: 11px;
}
#schools_selected_ul,
#schools_selected_ul li {
  list-style-type: square;
}
#schools_selected_ul li {
	padding-left: 0;
	margin-left: 1em;
}
#sp_selection_info {
	border: 1px solid #ccc;
	padding: 6px;
	height: 328px;
	overflow: auto;
	margin-top: 8px;
}
#sp_charge {
	margin-top: 6px;
	color: #900;	
}
#sp_charge .field {
	border: none;
	padding: 0;
	margin: 0;
	margin-top: 12px;
}
#sp_main {
        border: 1px solid #7F9DB9;
	clear: both;
	background: #eee;
	padding: 12px;
}

#sp_schools {
	background: #eee;
	clear: both;
}

#sp_locations  {
        background: #eee;
        position: relative;
}

#sp_schooltypes {
        background: #eee;
	position: relative;
}
.sp_main_col1 {
	vertical-align: top;
	width: auto;
}
.sp_main_col2 {
	vertical-align: top;
	width: 170px;
	padding-left: 12px;
}
#sp_header {
	position: relative;
	width: 100%;
	height: 3em;
	width: 45em; /* a width is required for Opera, older Mozilla browsers, and Konqueror browsers */
}

#sp_header ul#sp_primary {
	margin: 0;
	padding: 0;
	position: absolute;
	bottom: -1px;
	width: 45em; /* a width is required for Opera, older Mozilla browsers, and Konqueror browsers */
}

#sp_header ul#sp_primary li  {
	display: inline;
	list-style: none;
}

#sp_header ul#sp_primary a,#sp_header ul#sp_primary span,#sp_header ul#sp_primary a.current {
	width: 8em;
	display: block;
	float: left;
	padding: 4px 0;
	margin: 1px 2px 0 0;
	text-align: center;
	font-family: tahoma, verdana, sans-serif;
	font-size: 85%;
	text-decoration: none;
	color: #333;
}

#sp_header ul#sp_primary span,#sp_header ul#sp_primary a.current,#sp_header ul#sp_primary a.current:hover {
	border: 1px solid #7F9DB9;
	border-bottom: none;
	background: #eee;
	padding-bottom: 6px;
	margin-top: 0;
}

#sp_header ul#sp_primary a {
	background: #ccc;
	border: 1px solid #999;
	border-bottom: none;
}

#sp_header ul#sp_primary a:hover {
	margin-top: 0;
	border-color: #7F9DB9;
	background: #eee;
	padding-bottom: 5px;
}

#sp_header ul#sp_secondary {
	position: absolute;
	margin: 0;
	padding: 0;
	bottom: -1.4em;
	left: 1px;
	width: 50em; /* a width is required for Opera, older Mozilla browsers, and Konqueror browsers */
}

#sp_header ul#sp_secondary li a,#sp_header ul#sp_secondary li span {
	width: auto;
	display: block;
	float: left;
	padding: 0 10px;
	margin: 0;
	text-align: center;
	border: none;
	border-right: 1px dotted #999;
	background: none;
}

#sp_header ul#sp_secondary li a {
	color: #06C;
	text-decoration: underline;
}

#sp_header ul#sp_secondary li a:hover {
	color: #333;
	background: transparent;
	padding: 0 10px;
	border: none;
	border-right: 1px dotted #AAA;
}

#sp_header ul#sp_secondary li a:active {
	color: #000;
	background: transparent;
}

#sp_header ul#sp_secondary li:last-child a { border: none; }





/* NOTICES, ERRORS, & INFO MESSAGES */

.notice, 
.info,
.errors,
.tip,
.hint {
	padding: 14px 40px 14px 40px;
	margin-bottom: 6px;
}
.notice h2, 
.warning h2, 
.errors h2,
.tip h2,
.hint h2 {
	font-size: 120%;
	font-weight: bold;
	margin: 0;
}
.tip h2 {
	color: #060;
}
.notice h2,
.hint h2 {
	color: #630;
}
.errors,
.errors h2,
.errors li {
	color: #c00;
} 

.notice,
.hint {
	border: 1px solid #c90;
	background: #ffe url('/images/icon_med_notice.gif') no-repeat 10px 10px;
	color: #696b3c;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.hint {
	background-image: url('/images/icon_light.gif');
	background-position: 6px 10px;
}
.tip {
	border: 1px solid #b5d5ac;
	background: #EEF9EB url('/images/icon_light.gif') no-repeat 6px 10px;
	color: #3b4638;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.info {
	border: 1px solid #a8c8e1;
	background: #EAF6FF url('/images/icon_light.gif') no-repeat 10px 10px;
	color: #2d3942;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.errors {
	border: 1px solid #c66;
	background: #fee url("/images/icon-error-large.gif") no-repeat 10px 10px;
	color: #900;	
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.errors .buttonbar {
	/*border-color: #c66;*/
	margin-bottom: 0;
	padding-bottom: 0;
	margin-top: 12px;
}
.info .buttonbar {
	/*border-color: #039;*/
	margin-bottom: 0;
	padding-bottom: 0;
	margin-top: 12px;
}
.notice .buttonbar,
.hint .buttonbar {
	/*border-color: #c90;*/
	margin-bottom: 0;
	padding-bottom: 0;
	margin-top: 12px;
}
.notice ol, 
.notice ul,
.errors ol,
.errors ul,
.info ol,
.info ul,
.tip ol,
.tip ul,
.hint ol,
.hint li {

	padding-left: 2em;
	margin-left: 0em;
}
.notice li,
.errors li,
.info li,
.tip li,
.hint li {
	padding-right: 2em;
}
.notice p,
.errors p,
.info p,
.tip p,
.hint p,
.notice ol,
.errors ol,
.info ol,
.tip ol,
.hint ol,
.notice ul,
.errors ul,
.info ul,
.tip ul,
.hint ul {
	margin: .5em 0;
}

.notice p,
.errors p,
.info p,
.tip p,
.hint p{
	margin:0px;
	font-size:14px;
}

.notice .notice_title,
.errors .notice_title,
.info .notice_title,
.tip .notice_title,
.hint .notice_title{
	font-weight:bold;
	font-size:16px;
	margin-bottom:0px;
	padding:0px;
}


.errors ul, .notice ul, .info ul {
	margin-bottom: 6px;
	margin-top: 12px;
	line-height: normal;
}
.errors ul, .errors li, .notice ul, .notice li, .info ul, .info li {
	padding-left: 0;
	margin-left: 13px;
	line-height: normal;
	list-style-type: square;
}

.notice-small {
	background-image: none;
	padding: 8px;
}

.errored, .children .errored {
	background: #fee;
	color: #c00;
	border: 1px solid #c66;
	padding-top: 6px;
	padding-bottom: 6px;
	background-image: none;
}
.errored .children .errored { /* prevent nested borders */
	border: none;
	padding-top: 0;
	background: transparent none;	
}
.errored .label {
	font-weight:bold;
}



/* SUBFORM MODS */

.subform {
	/*width: 358px;*/
	/*border: 1px solid #7F9DB9;*/
	background: #fafafa;
	padding: 0;
	margin-bottom: 12px;
}
.subform .subform {
	width: 100%;
	border: none;
	padding: 0;
	margin: 0;
}
.subform .subform .field {
	padding-left: 0;
	padding-right: 0;
	margin-left: 0;
	margin-right: 0;
}
.subform .subform .field-first {
	padding-top: 0;
	margin-top: 0;
}
.subform .subform .field-last {
	padding-bottom: 0;
	margin-bottom: 0;
}

.relationwidget {
	margin-bottom: 10px; /* already has top 2px hard coded */
	
}
.subform h3 {
	margin: 0; padding: 2px 6px;
	font-size: 100%;
	background: #ccc none;
}
.subform .field {
	margin: 0;
	padding: 6px 6px 7px 6px;
	background-image: none;
	/*border-bottom: 1px solid #999;*/
}
.subform .field-last {
	border-bottom: none;
}
.subform .field-first {
	
}
.subform .widget textarea {
	width: 100%;
}
.subform .fgblurb {
	margin: 6px 0px 0px 0px;
}
.subform .buttonbar_top {
	float: right;
	position: relative;
	top: -21px;
	left: -2px;
	border: none;
}
.subform .buttonbar_top input {
	margin-top: 0;
	margin-bottom: 0;
}
.subform .buttonbar {
	/*border-top: 1px solid #999;*/
	padding: 3px;
	padding-top: 6px;
}

.module-bg-holder .subform{
	background:#f5f3eb;
}

/* COLUMNAR MODS */
.columnar tr.field {
	margin:0; padding: 0; border:none; background: transparent none;
}

.columnar tr.errored td {
	background: transparent url("/images/border_dotted_horiz_333.gif") repeat-x 0% 100%;
}
.columnar tr.errored td tr.errored td {
	background: transparent none;
} 	
td.labelcol, td.widgetcol {
	vertical-align: top; 
	background: transparent url("/images/border_dotted_horiz_333.gif") repeat-x 0% 100%;
}
td.labelcol-last, td.widgetcol-last {
	background-image: none;
}
.labelcolwrap, .widgetcolwrap {
	padding-top: 11px;
	padding-bottom: 12px;
}
.labelcolwrap .label {
	padding-top: 3px;
}
.widgetcolwrap .blurb, .widgetcolwrap .error {
	padding-top: 3px;
}
.widgetcolwrap .children, .widgetcolwrap .subform {
	line-height: normal;
}
.labelcolwrap {

}
td.labelcol {
	padding-right: 3px; 	
	white-space: nowrap;
	text-align: right;
}
/* NOTE: IE breaks multi-class tds. use other nesting method */
.columnar tr.errored.last td {
	background: transparent none;
}
td.widgetcol {
	padding-left: 3px; 
	/*width: 95%;*/
}


/* SIDEBAR FORM MODS */

.sb .form, .sb .subform {
	padding: 0;
	margin: 0;
	width: auto;
}
.sb .form {
	font-size: 11px;
	padding: 0px;
}
.sb .fieldgroup {
	margin-top: 0; padding-top: 0;
}
.sb .fieldgroup h2 {
	font-size: 100%;
	font-weight: bold;
}
.sb .reqd_msg {
	text-align: right;
	margin: 0; padding: 0;
	position: relative;
	top: -2px;
	left: 2px;
}
.sb .field, 
.sb .widget, 
.sb .label, 
.sb .blurb, 
.sb .fieldgroup, 
.sb .fieldgroup h2 {
	padding: 0;
	margin: 0 0 1px 0;
	background-image: none;
}
.sb .labelcol, .sb .widgetcol {
	background-image: none;
}
.sb .fieldgroup {
	margin-bottom: 12px;
}
.sb .field {
	margin-bottom: 6px;
}
.sb .readonly .field {
	padding-top: 4px;
	margin-top: 3px;
	border-top: 1px solid #ccc;
}

.SideBarContent .readonly .field{
	padding-top: 6px;
	margin-top: 0px;
	border-top: 1px solid #ccc;
}


.sb .readonly .field-first {
	border-top: none;
	padding-top: 0;
	margin-top: 0;
}
.sb .readonly .field .field {
	border: none;
	margin-bottom: 0;
	padding-bottom: 0;
	color: #333;
	padding-left: 0;
}

.SideBarContent .readonly .field-first{
	padding-top: 10px;
	margin-top: 0px;
}

.sb .subform {
	border: none;
	background: transparent;
	margin-bottom: 12px;
}
.sb .subform h3 {
	border: none;
	padding: 0;
	margin: 0;
	height: auto;
	font-size: 11px;
	background: transparent none;
}
.sb .buttonbar {
	border-top: 1px solid #999;
}
.sb .subform .buttonbar {
	border: none;
	padding: 0; margin: 0;
}
.sb .errored {
	padding: 3px;
}
.sb .errors {
	border: 1px solid #c66;
	color: #c00;
	margin-bottom: 12px;
	padding: 3px;
	background: #fee url("/images/icon-error-med.gif") no-repeat 5px 5px;
}
.sb .errors h2 {
	margin: 0;
	color: #c00;
	border-bottom: 1px solid #c00;
	margin-left: 21px;
	display: block;
	line-height: 15px;
	height: 15px;
	padding: 0;
}
.sb .errors ul {
	margin-top: 6px;

}
.sb textarea, .sb select {
	width: 100%;
}
/* HTMLAREA Sanity */

.htmlarea select {
	width: auto !important;
}
.htmlarea {
	border: 1px solid #7F9DB9 !important;
	width: 100% !important;
	overflow: hidden !important;
}
.htmlarea textarea {

}	
.htmlarea iframe {
	border: none !important;
	width: 100% !important;
}
.htmlarea .toolbar {
	padding: 2px !important;
	border: none !important;
	border-bottom: 1px solid #7F9DB9 !important;
}
.htmlarea .statusbar {
	border: none !important;
	border-top: 1px solid #7F9DB9 !important;
}
.scrollbox {
	height: 400px;
	border: 1px solid #ccc;
	padding: 8px;
	overflow: auto;
}
.scrollable_checkbox {
  border:1px solid #cccccc;
  background-color: white;
  padding: 2px 0px 2px 0px;
  clear: both;
}
.scrollable_checkbox div {
  border-bottom:1px solid #eeeeee;
  margin: 1px;
}
.scrollable_checkbox label,
.school_picker .checkboxgroup_default label {
  width: 90%; 
  font-weight: normal;
}
.scrollable_toolbox {
  font: 10px Arial, Helvetica, Sans-serif;
  color: #666;
  background-color: #eeeeee;
  border-bottom:1px solid #7f9db9;
  clear: both;
}
.scrollable_toolbox input {
  border: none;
  margin-top: 5px;
  float: left;
}
.scrollable_toolbox span {
  float: right;
  margin: 4px 2px 3px 2px;
}
.scrollable_status {
  background-color: #eeeeee;
  border-top:1px solid #7f9db9;
  padding: 1px 1px 1px 3px;
  font-size: 10px;
  color: #777777;
}
.scrollable_status a {
  text-decoration: none;
  color: #777777;
}
.scrollable_container {
  border:1px solid #7f9db9;
  border-top: none;
}

.scrollable_finder {
 	border: 1px solid #99c;
	padding: 0px;
	margin: 2px 1px 1px 0px !important;
	width: 120px;
	cursor: default;
	white-space: nowrap;
	height: 16px;
	float: right;
	background: #fff none;
}
.scrollable_finder input {
	border: none;
	width: 80px;
	background: transparent;
	margin: 0px !important;
	font-size: 10px;
}
.scrollable_finder div {
	cursor: pointer;
	float: left;
	margin: 1px;
}

.school_picker .scrollable_container,
.school_picker .sp_main_col1 select {
	width: 100% !important;
}
.school_picker .scrollable_container .scrollable_checkbox {
	width: 100% !important;
}
.school_picker .checkboxgroup_default {
	display: block;
	width: 100% !important;
	border: 1px solid #7f9db9;
	background-color: #fff;
	overflow: auto;
	white-space: nowrap;
}
.sp_loading {
	border: 1px solid #7F9DB9;
	padding: 12px 0;
	background: #fff;
	text-align: center;
	width: 100%;
	color: #666;
	margin-top: 8px;
}
.sp_loading img {
	margin-top: 8px;
}
.scrollable_selectall {	
	margin-left: 4px;
	padding: 0;
	background: transparent url("/images/selectall_prolite.gif") no-repeat 50% 50%;
	height: 13px;
	width: 13px;
	padding-left: 13px;
	cursor: pointer;
	font-size: 10px;
	line-height: 10px;
}
.scrollable_clearall {
	margin-left: 1px;
	padding: 0;
	background: transparent url("/images/clearall_prolite.gif") no-repeat 50% 50%;
	height: 13px;
	width: 13px;
	padding-right: 13px;
	cursor: pointer;
	font-size: 10px;
	line-height: 10px;
}

/* PICKLIST MAP STUFF Sanity */
.ajaxpick {
    /*
    opacity: 0.8;
    */
    position:absolute;
    overflow:auto;
    width: 229px; /* text box size = 40*/
    height: 120px;
    background-color: #F2F2F0;
    color: #3A4F9F;
    border-style: solid;
    border-width: 1px;
}
.ajaxpick * {
        width: 100%;
        overflow: hidden;
}
.ulpick {
    margin: 0px;
    padding: 0px;
    list-style: none;
}
.hilite_pick {
    list-style: none;
    margin: 0px;
    padding: 1px 2px;
    background-color: #FBEABE;
    color: #163192;
}
.lowlite_pick {
    list-style:none;
    margin: 0px;
    padding: 1px 2px;
    background-color: #F2F2F0;
    color: #163192;
}
table.pickmap {
        width: 100%;
        border: none;
        border-collapse: collapse;
        border-spacing: 0;
}
table.pickmap td.col {
        width: 33.33%;
}
.pm_colhead {
        padding: 2px;
        margin: 2px;
        border: 1px solid #c90;
        background-color: #F6E8C4;
        height:20px;
}
.pm_item,
.pm_pickitem {
        padding: 2px;
        margin: 2px;
        border: 1px solid #c90;
        background-color: #eee;
}
.pm_pickitem {
        cursor: pointer;
}
.pm_selector {
        padding:5px;
        margin:3px;
        border:1px solid #c90;
        background-color:#F6E8C4;
}
.hp_stylepick {
        vertical-align:middle;
}
.pickercell {
        width:33px;
        height:16px;
        border:none;
        cursor: pointer;
}

.lawcardentry {
       border:none;
       background:transparent;
}

table.layout.columnar td.labelcol {
	display:flex;
}