/*** RESET *******************************************************************/

body { margin: 0; border: none; padding: 0; font-size: 100%; }
main, header, article, aside, section, nav, footer, figure, figcaption { display: block; width: auto; }
main, header, article, aside, section, nav, footer, figure, figcaption,
div, h1, h2, p, img, ul, ol, li, dl, dt, dd,
table, thead, tbody, tfoot, tr, th, td,
form, fieldset, legend, input, label, select, option,
span, em, strong, i, b, address, cite, abbr, kbd, a, a:link, a:active, a:visited,
br { margin: 0; border: none; padding: 0; font: inherit; line-height: 1em; vertical-align: baseline; color: inherit; text-decoration: inherit; }

/*** GENERIC TEXT ************************************************************/

body { font-family: sans-serif; font-weight: 400; }

h1 { font-size: 1.5em; line-height: 1em; margin-bottom: 1em; }
h2 { font-size: 1.25em; line-height: 1.2em; margin-bottom: 1.2em; }
h2 { font-size: 1em; line-height: 1.5em; margin-bottom: 1.5em; }
section h1 { font-size: 1.25em; line-height: 1.2em; margin-bottom: 1.2em; }
section section h1 { font-size: 1em; line-height: 1.5em; margin-bottom: 1.5em; }
section section section { margin-left: 1.5em; }
p, li, dt, dd { font-size: 1em; line-height: 1.5em; }

p, ul, ol, dl { margin-bottom: 1.5em; }
dd + dt { margin-top: 1.5em; }

ul p, ul ul, ul ol, ul dl,
ol p, ol ul, ol ol, ol dl { margin-bottom: 0em; }

h1, h2 { font-weight: 600; }

ul, ol, dd { padding-left: 1.5em; }
ul, ol { list-style-position: outside; }
ul { list-style-type: disc; }
ul ul { list-style-type: circle; }
ul ul ul { list-style-type: square; }
ol { list-style-type: decimal; }
ol ol { list-style-type: lower-latin; }
ol ol ol { list-style-type: lower-greek; }

a:hover { text-decoration: underline; }
cite, abbr, i { font-style: italic; }
strong, em, b, kbd { font-weight: 600; }

body { color: #444; background-color: #fff; }
a, a:link, a:active, a:visited { color: #26b; }

body { padding: 1em; }

article > img, section > img { display: block; margin: 0 auto 1.5em auto; }
img.floating { float: right; margin-left: 1em; }

/*** TABLE *******************************************************************/

table { table-layout: auto; border-spacing: 0; border-collapse: collapse; empty-cells: show; }
table { margin: 0 auto 1.5em auto; min-width: 100%; }
th, td { border-width: 1px; border-style: solid; line-height: 1.5em; padding: 0.75em 0.75em 0.75em 0.75em; }
th, td { vertical-align: middle; } /* without vertical-align Firefox computes empty cell height wrong */
th { text-align: center; background-color: #eee; font-weight: bold; }
td { text-align: left; }
table { margin-top: -1px; } /* border compensation */
th, td { padding-top: calc(0.75em - 1px); } /* border compensation */

/*** HEADER & FOOTER *********************************************************/

body > header {	font-variant: small-caps; text-transform: lowercase; letter-spacing: 2px; }
body > header > nav > ul { padding-left: 0; }
body > header > nav > ul > li { list-style-type: none; }
body > header > nav.portal-menu { font-size: 0.9em; font-style: italic; }
body > header > nav.portal-menu > ul > li + li { display: none; }
body > header > nav.portal-menu a { color: #9bd; }
body > header > h1 > a, body > header > h1 > a:link, body > header > h1 > a:active, body > header > h1 > a:visited { text-decoration: none; color: inherit; }
body > header > nav.portal-menu ul { margin-bottom: 0em; }
body > header > h1 { margin-bottom: 0.125em; margin-top: 0.125em; }

body > footer { font-size: 0.75em; text-align: center; margin-top: 5em; color: #888; font-variant: small-caps; }
body > footer img.si-logo { padding-bottom: 0.5em; border-bottom: 1px solid #ddd; }
body > footer a, body > footer a:link, body > footer a:active, body > footer a:visited { color: inherit; }

nav.language-menu { position: absolute; right: 20px; top: 20px; font-variant: small-caps; letter-spacing: 2px; font-size: 0.75em; color: #9BD; }
nav.language-menu li { list-style-type: none; text-align: right; margin-bottom: 5px; }

@media all and (min-width: 820px) {
    
    body { padding: 0; margin-top: 50px; margin-bottom: 50px; text-align: center; }
    body > header { margin: 0 auto; margin-bottom: 3em; }
    body > header > nav.portal-menu { font-size: 1em; }
    body > header > nav.portal-menu > ul > li { display: inline; }
    body > header > nav.portal-menu > ul > li + li { display: inline; margin-left: 1em; }
    body > header > h1 { font-size: 2.5em; font-weight: normal; }
    body > header > nav.application-menu { font-size: 1.25em; }
    body > header > nav.application-menu > ul > li { display: inline; }
    body > header > nav.application-menu > ul > li + li { display: inline; margin-left: 1em; }
    body > main { max-width: 800px; margin: 0 auto; padding: 0; text-align: justify; }
    ul.columns, ol.columns { column-count: 3; column-gap: 2em; }

}

ul.columns, ol.columns { text-align: left; }

/*** FORM ********************************************************************/

form { border: 1px solid #EEE; padding: 1em; text-align: center; margin-bottom: 1.5em; }
form fieldset { display: block; }
form fieldset + fieldset { margin-top: 1em; }
form fieldset > * { display: inline; vertical-align: middle; }
form input#expression-text-input { max-width: 240px; height: 32px; margin: 0px; border: 1px solid #BBB; padding: 2px; /* Opera8 ignores it anyway */ font-size: 20px; line-height: 26px; box-sizing: border-box; -ms-box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; }
form input#submit-button { width: 32px; height: 32px; margin: 2px; border: none; padding: 0; padding-left: 32px; /* works for IE6, but Opera 8 & 9 does it its own way */ font-size: 0px; /* works for FF */ }
form input#submit-button { background: url('/nowa-leksika/search-button.png'); /* IE 7 */ background-image: url('/nowa-leksika/search-button.png'); }
form select { border: 1px solid #BBB; }
form label + select { margin-left: 0.5em; margin-right: 2em; }
form input[type='checkbox'] + label { margin-left: 0.5em; margin-right: 2em; }
form fieldset#expression-fieldset label { display: none; }
form fieldset#options-fieldset { font-size: 0.75em; }

/*** ARTICLE: ... ************************************************************/

[data-flexem-id], [data-stems][data-paradigm-id] { cursor: pointer; }

div#paradigm-window { display: block; position: fixed; top: 0; bottom: 0; left: 0; right: 0; text-align: center; background-color: rgba(255,255,255,0.75); overflow: auto; }

table#inflection-table { table-layout: auto; border-spacing: 0; border-collapse: collapse; empty-cells: show; min-width: auto; margin: 1em auto; background-color: #ffd; font-size: 0.9em; }
table#inflection-table td, table#inflection-table th { border: 1px solid #000; padding: 0.5em; text-align: center; vertical-align: middle; }
table#inflection-table th { background-color: #eec; font-weight: bold; }

#close-paradigm-window { cursor: pointer; font-size: 2em; font-weight: bold; position: absolute; top: 0; right: 0.25em; }

datalist { display: none !important; }

/*** FLEXTABS WINDOW *********************************************************/

a[data-slkey] { cursor: pointer; }

div#flextabs-window { display: block; position: fixed; top: 0; bottom: 0; left: 0; right: 0; text-align: center; padding: 3em; color: #111; background-color: rgba(255,255,255,0.9); overflow: auto; }
div#flextabs-window section { margin-top: 3em; }
div#flextabs-window section#footnotes p { margin-bottom: .75em; }
div#flextabs-window h1 { font-size: 1.5em; line-height: 1em; margin-bottom: 1em; }
div#flextabs-window > header { font-size: 2em; margin-bottom: 1.5em; }
div#flextabs-window > footer { font-size: .75em; margin-top: 4em; margin-bottom: 2em; }
div#flextabs-window a.external-link::before { content: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDE2IDE2IiBmaWxsPSIjODA4MDgwIj48cGF0aCBkPSJNIDAgMCBMIDAgMTYgTCAxNiAxNiBMIDE2IDEwIEwgMTUgOSBMIDE1IDE1IEwgMSAxNSBMIDEgMSBMIDcgMSBMIDYgMCBMIDAgMCBaIE0gNyAwIEwgMTAuNSAzLjUgTCA1IDkgTCA3IDExIEwgMTIuNSA1LjUgTCAxNiA5IEwgMTYgMCBMIDcgMCBaIi8+PC9zdmc+Cg=='); display: inline-block; width: 0.75em; margin-right: 0.25em; white-space: nowrap; }
div#flextabs-window a.external-link::after { content: ''; margin: 0; }
div#flextabs-window dl#properties { display: none; }
div#flextabs-window table { min-width: auto; }
div#flextabs-window th, div#flextabs-window td { border: 1px solid #887; padding: 0.5em; text-align: left; font-weight: normal; overflow: hidden; text-align: left; vertical-align: middle; }
div#flextabs-window th { background-color: #eed; color: #665; }
div#flextabs-window td { background-color: #ffe; }
div#flextabs-window th[colspan], div#flextabs-window td[colspan] { text-align: center; }

#close-flextabs-window { cursor: pointer; font-size: 2em; font-weight: bold; position: absolute; top: 0; right: 0.25em; }

/*** OTHER *******************************************************************/

p.message { padding: 0.5em; background-color: #cde; text-align: center; }
p#status-message { color: #faa; position: fixed; top: 0; right: 0; margin: 0.25em; background-color: rgba(255, 255, 255, 0.75); padding: 0.1em 0.25em; }
address.author { text-align: right; }
p.footnote { font-size: 0.75em; }
a.external-link:after { content: url('/nowa-leksika/external-link.png'); margin-left: 0.25em; white-space: nowrap; }

/*** NOWA LEKSIKA ***********************************************************/

article.lexis-item h1 { background-color: #cde; padding: 0.25em 0.5em; }
article.lexis-item > h1 { padding: 0.5em 0.5em; }
article.lexis-item section h1 { background-color: #e1ebf5; }
article.lexis-item section section h1 { background-color: #edf3f9; }

dl.lexis-item { }
dl.lexis-item dt { font-variant: small-caps; color: #aaa; }
dl.lexis-item dd.baseform { font-size: 1.5em; line-height: 1.5em; padding-left: 1em; font-weight: bold; color: #833; }
dl.lexis-item dd.grammar a { color: inherit; }
dl.lexis-item dd.equivalent { color: #03c; font-weight: bold; }
dl.lexis-item dd.annotation { font-style: italic; }
dl.lexis-item dd.occurence { }
dl.lexis-item dd.occurence em.occurence { font-weight: normal; color: #833; background-color: #edd; }
dl.lexis-item dd.occurence span.source { font-size: .75em; color: #888; }
.inflectable:after { content: url('/nowa-leksika/inflection-table.png'); margin-left: 0.33em; white-space: nowrap; }
.inflectable:hover { text-decoration: none; border-bottom: 1px dotted #444; cursor: pointer; }


/*** PRINT STYLE *************************************************************/

@media print {
	body > header, body > footer { display: none; }
	form { display: none; }
	nav { display: none !important; }
	body > main { max-width: none; }
	body, a, a:link, a:active, a:visited { color: #000; }
	
}

/*****************************************************************************/
