/* Site chrome for pages that opt into the modern stack ($cssMode = 'modern').
   Ported from skins/legacy/legacy.css (desktop, >=481px), skins/layout.css
   (#content/#navigation), skins/handheld/handheld.css (<=480px) and
   skins/print/print.css (print). Asset paths are adjusted; the desktop
   #content padding folds in the article's former -40px pull-up; print shows
   the #title/#description header and drops the legacy body wallpaper.
   The legacy sheets stay authoritative for every other page, so fix chrome
   bugs in both or record the divergence. */

/* base (screen + print) */

/* #title/#description are the printed page header, hidden on screen. */
#title,
#description {
	display: none;
}

body {
	text-align: center;
}

#content {
	text-align: left;
	padding-top: 50px; /* mobile and print; desktop overrides this */
}

#navigation {
	text-align: left;
}

a {
	color: var(--link);
}

/* desktop */

@media screen and (min-width: 481px) {
	* {
		margin: 0;
	}

	body {
		font-family: Arial, Helvetica, Geneva, Swiss, SunSans-Regular, sans-serif;
		margin: 0px;
		margin-top: 11px;
		padding: 0px;
		background: url(legacy/bgypspif.gif);
		color: black;
		text-align: center;
	}

	/* containers and wrappers */

	.container {
		width: var(--frame-width);
		text-align: left;
		margin: 0 auto;
		padding: 0px;
		position: relative;
	}

	#contentcontainer {
		/* left/right gutter borders, natural size; white page area between them */
		background:
			url(legacy/bg1.gif) left top repeat-y,
			url(legacy/bg2.gif) right top repeat-y;
		background-color: rgba(255, 255, 255, .60);
	}

	#wrapper {
		float: left;
		width: var(--frame-width);
		background: none;
	}

	/* 50px (#content) minus the 40px the article used to pull up = 10px */
	#content {
		padding-top: 10px;
		margin-left: 147px;
		width: var(--content-width);
	}

	/* header */

	#header {
		height: 100px;
		text-align: center;
		color: #fff;
		background: none;
		/* shows through the transparent bottom edge of the plaid top band */
		background-color: rgba(255, 255, 255, .60);
	}

	#headerLeft {
		position: absolute;
		left: 0px;
		top: 0px;
		width: 147px;
		height: 100px;
		background: url(legacy/ecke1.gif);
	}

	#headerRight {
		position: absolute;
		width: 88px;
		height: 100px;
		left: calc(var(--frame-width) - 88px);
		top: 0px;
		background: url(legacy/ecke2.gif);
	}

	#headerTop {
		position: absolute;
		width: var(--content-width);
		height: 90px;
		padding-top: 10px;
		top: 0px;
		left: 147px;
		background: url(legacy/oben.gif);
	}

	#headerLogo {
		position: absolute;
		top: 10px;
		left: 13px;
		width: 120px;
		height: 67px;
		background: url(legacy/ypslogo2.gif);
	}

	.tonav {
		display: none;
	}

	/* footer */

	#footer {
		position: relative;
		clear: left;
		width: calc(var(--frame-width) - 35px);
		padding-left: 35px;
		padding-bottom: 0px;
		text-align: left;
		background: none;
	}

	a.totop {
		text-decoration: none;
		color: #ffffff;
		font-size: 10pt;
		font-weight: bold;
	}

	span.totop {
		background: url(legacy/top.gif) no-repeat 0px 5px;
		padding-left: 20px;
		height: 20px;
		width: 60px;
		display: block;
	}

	div.counter {
		position: absolute;
		left: 147px;
		top: 0px;
		width: var(--content-width);
		text-align: center;
	}

	/* navigation menu */

	#navigation {
		float: left;
		width: 105px; /* 147px -13px -29px */
		padding: 0px;
		padding-bottom: 40px;
		margin-left: calc(13px - var(--frame-width)); /* 13px gutter */
		list-style: none;
		background: none;
	}

	#navigation li {
		background: white;
		margin-top: 12px;
		margin-left: 0px;
		font-size: 13px;
		display: block;
		padding-bottom: 4px;
		float: left;
		width: 100%;
	}

	#navigation li ul li {
		border: 0px;
		margin: 0px;
		padding: 0px;
	}

	/* menu body */

	#navigation li ul {
		list-style: none;
		padding-left: 0px;
		display: block;
	}

	#navigation li a {
		padding: 2px;
		margin-bottom: 4px;
		text-align: center;
		background: #ff8800;
		display: block;
		font-weight: bold;
		color: #000000;
		text-decoration: none;
	}

	#navigation li ul a {
		padding: 0px;
		padding-left: 12px;
		margin: 0px;
		background: none;
		text-align: left;
		font-weight: normal;
		color: #000099;
		text-decoration: none;
		display: block;
	}

	#navigation li ul a:hover {
		color: #aa0000;
		font-weight: bold;
	}

	/* impressum */

	#impressum {
		position: relative;
		text-align: center;
		width: 350px;
		margin-left: auto;
		margin-right: auto;
		font-size: 7.5pt;
		margin-top: 40px;
		margin-bottom: 15px;
	}

	#copyright {
		display: block;
	}

	#impressLink {
		display: block;
	}
}

/* mobile */

@media screen and (max-width: 480px) {
	* {
		font-size: 10pt;
		font-family: sans-serif;
	}

	body {
		margin: 0;
		padding: 0;
		font-size: 10pt;
		max-width: 100%;
		background: url(handheld/background.png);
	}

	/* content area */

	/* header */

	#header {
		position: fixed;
		top: 0px;
		left: 0px;
		right: 0px;
		width: 100%;
		height: 48px;
		z-index: 500;
		background-color: #f7bf4b;
		background-image: url(handheld/mobile-header-bar.png);
		background-repeat: repeat-x;
		background-position: left top;
		background-size: 240px 48px;
		box-shadow: 0px 1px 3px rgba(0, 0, 0, .35);
	}

	#headerRight {
		position: absolute;
		right: 0px;
		top: 0px;
		height: 48px;
	}

	a.tonav {
		text-decoration: none;
		color: #ffffff;
		font-size: 10pt;
		font-weight: bold;
		display: block;
		position: relative;
		width: 48px;
		height: 48px;
	}

	span.tonav {
		position: absolute;
		top: 22px;
		left: 13px;
		width: 22px;
		height: 3px;
		background: #333333;
		box-shadow: 0px -7px 0px #333333, 0px 7px 0px #333333;
		white-space: nowrap;
		overflow: hidden;
		text-indent: -9999px;
	}

	#headerTop {
		display: none;
	}

	#headerLogo {
		position: absolute;
		left: 8px;
		top: 0px;
		width: 252px;
		height: 48px;
		max-width: calc(100% - 64px);
		background-image: url(handheld/mobile-header-head.png), url(handheld/mobile-header-logo.png), url(handheld/mobile-header-word.png);
		background-repeat: no-repeat;
		background-position: 0px 2.5px, 44px center, 117px center;
		background-size: 37px 45px, 58px 32px, 135px 36px;
	}

	/* footer */

	#footer {
		position: relative;
		clear: left;
		padding-bottom: 0px;
		text-align: left;
		margin: 0 auto;
		width: 100px;
	}

	a.totop {
		text-decoration: none;
		color: #000000;
		font-size: 10pt;
		font-weight: bold;
	}

	span.totop {
		background: url(handheld/top.gif) no-repeat 0px 5px;
		padding-left: 20px;
		height: 20px;
		width: 60px;
		display: block;
	}

	div.counter {
		display: none;
	}

	/* navigation area */

	#navigation {
		display: block;
		padding: 0px;
	}

	#navigation li {
		list-style: none;
		display: block;
		background: white;
		border-top: 1px solid black;
		margin-top: 10px;
		clear: both;
	}

	#navigation li a {
		padding: 2px;
		margin-bottom: 5px;
		margin-right: 5px;
		background: #ff8800;
		width: 90px;
		font-weight: bold;
		text-align: center;
		color: #000000;
		text-decoration: none;
		display: block;
		float: left;
	}

	#navigation li ul {
		display: block;
	}

	#navigation li ul li {
		list-style: none;
		display: inline;
		border: 0px;
	}

	#navigation li ul li a {
		display: inline;
		padding: 0px;
		padding-right: 5px;
		margin: 0px;
		background: none;
		font-weight: normal;
		text-decoration: underline;
		color: #000099;
		width: auto;
		float: none;
	}

	/* impressum */

	#impressum {
		position: relative;
		width: 100%;
		border-bottom: 1pt dashed black;
		margin-top: 20px;
		margin-bottom: 10px;
	}

	#copyright {
		font-size: x-small;
		display: block;
		text-align: left;
	}

	#impressLink {
		clear: both;
		display: block;
		height: 1px;
		font-size: 1pt;
		background: green;
		visibility: hidden;
	}

	/* responsive overflow safety */

	img,
	iframe {
		max-width: 100%;
	}

	img {
		height: auto;
	}

	html,
	body {
		overflow-x: hidden;
	}
}

/* print */

@media print {
	* {
		font-family: sans-serif;
	}

	body {
		margin: 0;
		padding: 0;
		font-size: 12pt;
		max-width: 18cm;
	}

	/* navigation area */

	#navigation {
		display: none;
	}

	/* header */

	#header {
		width: 100%;
		text-align: center;
		min-height: 66px;
		border-top: 1pt solid black;
		border-bottom: 1pt solid black;
		margin-bottom: 1cm;
	}

	#title {
		display: block;
		padding-left: 120px;
		font-size: 14pt;
		font-weight: bold;
		padding-top: 0.3cm;
		min-height: 0.65cm;
	}

	#description {
		display: block;
		padding-left: 130px;
		font-size: 10pt;
		padding-bottom: 0.3cm;
		min-height: 0.4cm;
	}

	#headerLeft {
		display: none;
	}

	#headerRight {
		display: none;
	}

	#headerTop {
		display: none;
	}

	#headerLogo {
		position: absolute;
		top: 3px;
		left: 0.5cm;
		width: 109px;
		height: 60px;
	}

	/* Generated content is printed even when the browser's "background
	   graphics" option is off, so the logo survives the default settings. */
	#headerLogo::before {
		content: url(print/printlogo.png);
		display: block;
		width: 109px;
		height: 60px;
	}

	/* footer */

	#footer {
		display: none;
	}

	/* impressum */

	#impressum {
		position: relative;
		width: 100%;
		bottom: 1cm;
		border-top: 1pt solid black;
		margin-top: 1.5cm;
	}

	#copyright {
		position: absolute;
		text-align: left;
		font-size: 9pt;
		width: 60%;
		left: 0pt;
		top: .1cm;
	}

	#impressLink {
		display: none;
	}

	/* text formatting */

	a {
		color: black;
		text-decoration: none;
	}

	h1 {
		padding-bottom: 1cm;
	}
}
