/* Tags */
* 					{ font-family:"Segoe UI", "DejaVu Sans", "Trebuchet MS", Verdana, "sans-serif"; font-size:1em; }
html 				{ height:100%; }
body 				{ font-size:16px; margin:0; padding:0 0 2em; color:#333; }
body.with-nys-frames{ display:flex; flex-direction:column; height:100%; padding-bottom:0; }

div 				{ overflow-y:hidden;}

table 				{ border-collapse:collapse; width:100%; margin-bottom:2em; }
caption 			{ text-align:left; font-size:1.8em; border-bottom:1px solid #CCC; }
caption.question-text{ font-size:1em; padding-bottom:.5em; }
thead  				{ border-bottom:1px solid #555; }
tbody tr.total-row 	{ border-top:1px solid #CCC; border-bottom:1px solid #CCC; }
tbody tr.border-row { border-bottom:1px solid #CCC; }

table.striped tbody tr:nth-child(2n),
tbody tr.even-row 	{ background:#F8F8F8; }	/* We introduced the "striped" class for 2023. Kept the old "even-row" for compatibility with previous years' forms */
th 					{ font-weight:700; }
td,
	th 				{ text-align:left; border:none; padding:.5ex 1ex; vertical-align:top; }
th *,
	td * 			{ vertical-align:bottom; }
th p:first-child,
	td p:first-child{ margin-top:0; }
th p:last-child,
	td p:last-child	{ margin-bottom:0; }
th.border-col,
	td.border-col,
	col.border-col 	{ border-right:1px solid #CCC; }
th.no-bottom-border,
	td.no-bottom-border	{ border-bottom:none; }
th.no-top-border,
	td.no-top-border	{ border-top:none; }
thead th.percent,
	th.number,
	td.number,
	td.number input { text-align:right; }
tbody th.percent,
	td.percent,
	td.percent input{ text-align:right; white-space:nowrap; }
th.check,
	td.check		{ text-align:center; vertical-align:middle; }
th.check img,
	td.check img	{ max-width:none; }
td.not-started		{ text-align:center; font-size:.6em; }
th.table-section 	{ font-size:1.7em; font-weight:normal; padding:.6em .5ex .2ex; border-bottom:1px dotted #999; }
th .note 			{ font-weight:normal; }

table.bordered,
table.bordered th,
table.bordered td		{ border:.1px solid #888; }
table.bordered caption,
table.bordered th.no-bottom-border,
table.bordered td.no-bottom-border 	{ border-bottom:none; }
table.bordered th.no-top-border,
table.bordered td.no-top-border	{ border-top:none; }

table.compact-view th 				{ background:#F4F4F4; }
table.compact-view td p 			{ margin:.5em 0; }
table.compact-view td p:first-child { margin-top:.5em; }
table.compact-view td p:last-child 	{ margin-bottom:.5em; }

small 				{ font-size:.8em; }
img 				{ max-width:100%; }
img.no-shrink 		{ max-width:none; }
a,
	a:visited 		{ color:#333; }
dl 					{ margin:1em; }
dt 					{ font-weight:600; }
dd 					{ margin:0; }
b,
	strong 			{ font-weight:600 }
sup 				{ display:inline-block; font-size:.8em; margin:0 .4em; }

/* Template regions */
header			{ background:#523178; font-size:2.1em; padding:0; margin:0; border-bottom:3px solid #DC9719; flex-shrink:0; }
header a,
header a:visited{ text-decoration:none; color:#FFF; display:inline-block; margin:.6rem 4%; }

#alert 			{ margin:0; padding:.5em 4%; background:#B52C2C; color:#FFF; border-top:2px solid #FFF; min-height:1.5em; }
#alert h2		{ float:left; font-size:1.3em; margin:0; }
#alert p 		{ padding-left:4.5em; margin:.2em 0; }
.user-prompt	{ margin:0; padding:.5em 4%; background:#DFF; border-top:2px solid #FFF; min-height:1.5em; text-align:center; }

#toolbar 		{ background:#FAFAFA; padding:.4em 1.5em; border-top:1px solid #DDD; border-bottom:1px solid #DDD; margin:0 0 1em; }
#toolbar * 		{ vertical-align:bottom; }
#toolbar p 		{ margin:0; }
#toolbar input,
	#toolbar a	{ margin:.4em 1em .4em 0; }
form#toolbar * 				{ vertical-align:middle; }
form#toolbar .inline-group	{ display:inline-block; margin:.4em 3em .4em 0; }

.doc-header,
.user-header		{ font-size:1.9em; font-weight:normal; margin:0 0 .1em; }
.user-header 		{ padding-left:1.8em; text-indent:-1.8em; }
.user-header * 		{ vertical-align: text-bottom; }
.user-header img 	{ height:1.3em; width:1.3em; border-radius:50%; margin:0.1em .5em 0 0; border:1px solid #BBB; }

#main 			{ margin:2em auto 4em; padding:0 1em; width:100%; box-sizing:border-box; max-width:75em; position:relative; flex:1 0 auto; }
#main h1 		{ font-size:2.4em; margin:0 0 .4em; padding:0; font-weight:normal; }
#main h1.two-line		{ line-height:100%; margin-bottom:.6em; }
#main h1.two-line small { display:block; font-size:.5em; color:#999; margin-bottom:0; line-height:95%; }
#main #primary 	{ display:inline-block; width:69%; margin:0 1%; padding:0; vertical-align:top; }
#main #sidebar 	{ display:inline-block; width:28%; padding:1em 0 0; vertical-align:top; }
#main #sidebar>div,
#main #sidebar>p{ margin:0 0 1em;}

#footer 		{ background:#D4D5E3; position:fixed; bottom:0; width:100%; margin:0; padding:0; color:#000; font-size:.9em; text-align:center; flex-shrink:0; }
body.with-nys-frames #footer { position:relative; }
#footer ul 		{ display:inline-block; margin:.4em 0; padding:0; list-style:none; }
#footer ul#nav-admin li:first-child { border-left:1px solid #999; padding-left:1.5em; }
#footer li 		{ display:inline-block; padding:0; margin:.5em 1.5em .5em 0; }
#footer li *	{ vertical-align:middle; }
#footer img 	{ height:1.4em; width:1.4em; border-radius:50%; margin:0; }
#footer a 		{ color:#000; text-decoration:none; border-bottom:1px dotted #333; }
#footer a:hover { border-bottom:1px solid #777; }

#nygov-universal-navigation-frame 	{ border:none; overflow:hidden; width:100%; height:86px; display:block; }
#nygov-universal-footer-frame 		{ border:none; overflow:hidden; width:100%; height:200px; display:block; }

#user-roles-widget 	{ text-align:center; }

/* Generic Classes */
.no-bold 		{ font-weight:normal; }
.compact 		{ margin:.3em 0; }
.clear 			{ display:block; clear:both; }
.note 			{ font-style:italic; font-size:.8em; }
.text-center	{ text-align:center; }
.text-left 		{ text-align:left; }
.text-right 	{ text-align:right; }
span.tag-new	{ font-size:.6em; padding:.1em .4em; border-radius:.3em; background:yellow; border:1px solid #DC9719; font-weight:bold; margin:0 .5em; position:relative; bottom:.5em; }
.nowrap 		{ white-space:nowrap; }
.box 			{ display:block; padding:0 1em; border:1px solid #777; }
.output-group 	{ page-break-inside:avoid; }
.widget 		{ padding:.1em 1em 0; margin:0 0 1em; background:#FAFAFA; border:1px solid #F0F0F0; border-radius:.2em; }
.widget h2 		{ font-size:1.1em; margin:.5em 0; }
.half-block 	{ display:inline-block; width:47%; margin:0 1%; padding:0; vertical-align:top; }
.half-block .widget p 		{ margin:1em 0 1.5em; }
.half-block .widget p.tight { margin:1em 0; }
.sr-only 		{ position:absolute; top:-1000px; left:-1000px; overflow:hidden; height:1px; width:1px; }
img.pic-user	{ height:1.4em; width:1.4em; border-radius:50%; margin:0 .3em 0 0; }
.box-border 	{ border:1px solid #444; }
.box-scroll 	{ max-height:11em; padding:1ex; overflow-y:scroll; }
.box-scroll.output{ max-height:auto; overflow-y:auto; }
.box-scroll h3:first-child,
	#primary .box-scroll h3:first-child { margin-top:0; }
.box-footer 	{ margin:0; padding:1ex; background:#DDD; }

/* Columns */
.col 			{ display:inline-block; padding:0; margin:0 4em 2em 1em; max-width:100%; vertical-align:top; }

/* Forms */
form input,
form select,
form textarea,
form label,
form .label 				{ vertical-align:top; max-width:100%; }
form .reqd 					{ color:#8C1C1C; font-size:.9em; font-style:italic; }
form .reqd a				{ color:#8C1C1C; }
form .help 					{ display:block; font-size:.9em; font-style:italic; margin-left:7.8em;  }
form a#cancel 				{ display:inline-block; margin-left:3em; vertical-align:middle; padding:.4em .5em; }
fieldset,
div.fieldset 				{ border:none; padding:0; margin:1em 0; }
legend 						{ display:block; width:100%; margin:0 0 .5em; padding:0; font-weight:600; border:none; }
legend.no-bold				{ font-weight:normal; }
fieldset legend + p,
fieldset legend+div>p:first-child	{ margin-top:0; }
form input, 
	form select,
	form textarea			{ padding:.2em .3em; font-size:.95em; display:inline-block; scroll-margin:12em 0; }
form .cke					{ scroll-margin:12em 0; }
form input[type="number"][step="0.01"] 	{ text-align:right; }

/* Remove the arrow buttons from the money inputs */
/* Chrome, Safari, Edge, Opera */
form input[type="number"][step="0.01"]::-webkit-outer-spin-button,
form input[type="number"][step="0.01"]::-webkit-inner-spin-button { -webkit-appearance:none; margin:0; }
/* Firefox */
form input[type="number"][step="0.01"] { -moz-appearance:textfield; }

form input, 
form select 				{ width:13em; }
form input.long 			{ width:26em; }
form input.full-width 		{ display:block; width:95%; }
form input.inline,
form td input.inline 		{ display:inline-block; width:4em; }
form select.inline 			{ display:inline-block; }
form input[type=submit],
form input[type=image]		{ cursor:pointer; width:auto; }
form input[type=file] 		{ border:1px solid #DDD; border-radius:.4em; padding:.5em; background:none; }
form textarea 				{ height:15em; width:25em; max-width:95%; }
form textarea.small 		{ height:8em; width:21em; }
form label,
form .label					{ display:inline-block; width:5.5em; white-space:normal; margin-right:1em; }
form label.checkbox			{ display:block; width:auto; text-indent:-2em; padding-left:2em; }
form label.checkbox input	{ width:auto; /*margin-top:.4em;*/ }
form label.inline 			{ display:inline; margin:0; }
form .inline-group			{ display:inline-block; margin:0 3em 1em 0; }
form .inline-group label	{ display:inline-block; width:auto; }

/* Messages */
.message-error 		{ color:#FFF; background:#B52C2C; padding:.1em 1em; border-radius:5px; }
.message-error a 	{ color:#FFF; }
.message-success 	{ color:#000; background:#ACD656; padding:.1em 1em; border-radius:5px; }
.message-success a	{ color:#000; }
.message-info 	 	{ color:#000; background:#D4D5E3; padding:.1em 1em; border-radius:5px; }
.message-info a		{ color:#000; }
.message-alert 	 	{ color:#000; background:#fdff96; padding:.1em 1em; border-radius:5px; border:1px solid #c2c473; }
.message-alert a	{ color:#000; }

/* Cover message (currently only used in the Documents section) */
.cover-message 		{ z-index:3; background:#CDCDCD; background:rgba(205,205,205,.8); width:100%; height:100%; position:fixed; top:0; left:0; text-align:center; }
.cm-spacer 			{ height:100%; font-size:.1px; vertical-align:middle; display:inline-block; }
.cm-message 		{ background:#FFF; width:25em; text-align:center; padding:1.5em 1em; border-radius:.4em; box-shadow:.4em .4em .7em #888; vertical-align: middle; display:inline-block; font-size:.7em; }
.cm-message span 	{ background:url(../img/process-working.gif) .2em .1em no-repeat; padding:0 .8em 0 1.8em; display:inline-block; font-size:2.2em; margin:.2em auto .7em; }

/* Buttons */
.btn,
	a.btn 			{ background:#6F5091 center right no-repeat; color:#FFF; text-decoration:none; padding:.4em 12px; display:inline-block; border-radius:5px; line-height:110%; border:1px solid #6F5091; font-size:1.1em; cursor:pointer; }
.btn:hover 			{ background-color:#523178; }
.btn:focus-visible 	{ outline: 3px dotted #dc9719; }
.btn[disabled],
.btn.disabled		{ background-color:#a690be; border-color:#987db4; cursor:not-allowed; }
.btn[disabled]:hover,
.btn.disabled:hover	{ background-color:#a690be; }
.btn.btn-small 		{ font-size:.8em; }
.btn.btn-block 		{ display:block; }
.btn.btn-caret 		{ padding-right:34px; background-image:url(../img/caret.png); }
.btn.btn-action 	{ padding-left:34px; background-image:url(../img/action.png); background-position:center left; }
.btn.btn-check 		{ padding-left:44px; background-image:url(../img/btn-check.png); background-position:center left; }
.btn.btn-check-green{ padding-left:44px; background-image:url(../img/btn-check-green.png); background-position:center left; }
.btn.btn-check-green-x 	{ padding-left:44px; background-image:url(../img/btn-check-green-x.png); background-position:center left; }
.btn.btn-check-half	{ padding-left:44px; background-image:url(../img/btn-check-half.png); background-position:center left; }
.btn.btn-check-half-x	{ padding-left:44px; background-image:url(../img/btn-check-half-x.png); background-position:center left; }
.btn.btn-add 		{ padding-left:37px; background-image:url(../img/btn-plus.png); background-position:center left; }
.btn.btn-delete 	{ padding-left:37px; background-color:#AA3D4A; background-image:url(../img/btn-delete.png); background-position:center left; border-color:#AA3D4A; }
.btn.btn-help 		{ padding-left:39px; background-image:url(../img/btn-help.png); background-position:center left; }
.btn.btn-caret-back { padding-left:34px; background-image:url(../img/caret-back.png); background-position:center left; }

.btn.btn-white 					{ background-color:#FFF; color:#333; border:1px solid #555; }
.btn.btn-white:hover			{ background-color:#F9F9F9; }
.btn.btn-white[disabled],
.btn.btn-white.disabled			{ color:#999; border-color:#AAA; cursor:not-allowed; }
.btn.btn-white[disabled]:hover,
.btn.btn-white.disabled:hover	{ background-color:#FFF; }
.btn.btn-white.btn-add 			{ background-image:url(../img/btn-plus-dark.png); }
.btn.btn-white.btn-caret-back	{ background-image:url(../img/caret-back-dark.png); }

.btn.btn-dark-gray 					{ background-color:#777; border-color:#555; }
.btn.btn-dark-gray:hover			{ background-color:#656565; }
.btn.btn-dark-gray[disabled]:hover,
.btn.btn-dark-gray.disabled:hover	{ background-color:#777; }

/* Accordion */
legend[data-toggletype=accordion],
.form-instance-wrapper legend[data-toggletype=accordion],
h2[data-toggletype=accordion],
.form-instance-wrapper h2[data-toggletype=accordion],
h3[data-toggletype=accordion],
.form-instance-wrapper h3[data-toggletype=accordion],
h4[data-toggletype=accordion],
.form-instance-wrapper h4[data-toggletype=accordion]	{ margin-bottom:0; }
.accordion-toggle,
.accordion-toggle-lookalike	{ font-size:1.4rem; font-weight:normal; margin-bottom:0 !important; border-bottom:1px solid #AAA; padding:.1em 60px .1em .5em;; }
.accordion-toggle 		{ cursor:pointer; background:url(../img/chevron-up.png) center right no-repeat; }
button.accordion-toggle { width:100%; text-align:left; border-left:none; border-right:none; border-top:none; }
.accordion-toggle.closed{ background-image:url(../img/chevron-down.png); }
.accordion-body 		{ background:#F3F3F3; padding:0 1em; overflow-y:hidden; transition:height 1s; }

/* Check All */
.check-all-toggle 		{ font-style:italic; font-size:.8em; font-size:.8rem; cursor:pointer; text-decoration:underline; }

/* Activity Log */
div#activity-log 					{ border:1px solid #777; border-radius:.2em; margin:0 0 1em; }
#activity-log h2					{ font-size:1.1em; margin:0; padding:.3em .5em; background:#523178; color:#FFF; font-weight:normal; }
#activity-log-items					{ max-height:30em; overflow-y:scroll; }
.activity-log-item					{ padding:.5em .6em .5em 2.5em; font-size:.75em; margin:0; position:relative; }
.activity-log-item img				{ position:absolute; left:.6em; top:.6em; height:1.4em; width:1.4em; border-radius:50%; }
.activity-log-item:nth-child(2n) 	{ background:#EFF0F5; }
.activity-log-item p 				{ margin:0; }
.activity-log-item p.system-item	{ font-style:italic; }
.activity-log-item p.system-item strong	{ font-style:normal; }
.activity-log-item .timestamp		{ font-style:normal; font-size:.8em; text-align:right; font-weight:600; }
#activity-log-options 				{ background:#D4D5E3; font-size:.8em; border-top:1px solid #CCC; padding:.4em .5em; text-align:center; margin:0 }
#activity-log-form					{ background:#D4D5E3; font-size:.8em; border-top:1px solid #CCC; padding:.4em .5em; }
#activity-log-form label			{ display:block; width:auto; }
#activity-log-form textarea			{ font-size:.9em; height:5em; }

div#activity-log.full-size									{ border:none; border-radius:0; }
#activity-log.full-size #activity-log-items					{ max-height:none; overflow-y:auto; }
#activity-log.full-size .activity-log-item					{ font-size:.9em; }
#activity-log.full-size .activity-log-item .timestamp		{ font-size:.7em; text-align:left; }
#activity-log.full-size .activity-log-item:nth-child(2n)	{ background:none; }
#activity-log.full-size .activity-log-item:nth-child(2n-1)	{ background:#EFF0F5; }

@media (max-width:840px) {
	#main #primary,
	#main #sidebar 	{ display:block; width:auto; margin:0 1% 2em; }
}

@media (max-width:740px) {
	.half-block { display:block; width:auto; }
}

@media (max-width:640px) {
	body 	{ padding-bottom:0; }
	.col 	{ display:block; margin:0 0 2em; }
	#footer { position:relative; width:auto; }

}

@media (max-width:480px) {
	form .label 		{ width:0 !important; }
	#footer ul			{ display:block; }
	#footer li			{ display:block; margin:.5em 0 1em; }
	#footer ul#nav-admin li:first-child { border-left:none; padding-left:0; }
}

@media (max-height:30em) {
	/* When the window height is too short, un-fix the menu bar so it sits at the bottom of the page */
	body 	{ padding-bottom:0; }
	#main 	{ margin-bottom:2em; }
	#footer { position:relative; }
}

@media print {
	body 		{ font-size:14px; }
	header,
	.user-prompt,
	#toolbar, 
	#footer,
	#nygov-universal-navigation-frame,
	#nygov-universal-footer-frame,
	.btn,
	a.btn,
	.btn.btn-block,
	form a#cancel,
	#activity-log-form,
	#activity-log-options	{ display:none; }
	#main 		{ margin-top:0; }
}