/* ikiwiki style sheet */

/* Note that instead of modifying this style sheet, you can instead edit
 * local.css and use it to override or change settings in this one.
 */

/* html5 compat */
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
	display: block;
}

div.header, header.header {
	margin: 0;
	font-size: 140%;
	font-weight: bold;
	line-height: 1em;
	display: block;
}

.inlineheader .author {
	margin: 0;
	font-size: 112%;
	font-weight: bold;
	display: block;
}

.actions ul {
	margin: 0;
	padding: 6px .4em;
	height: 1em;
	list-style-type: none;
}
.actions li {
	display: inline;
	padding: .2em;
}
.pageheader .actions ul {
	border-bottom: 1px solid #000;
}

.inlinepage .actions ul {
	border-bottom: 0;
}

#otherlanguages ul {
	margin: 0;
	padding: 6px;
	list-style-type: none;
}
#otherlanguages li {
	display: inline;
	padding: .2em .4em;
}
.pageheader #otherlanguages {
	border-bottom: 1px solid #000;
}

.inlinecontent,
.inlineenclosure {
	margin-top: .4em;
}

.pagefooter,
.inlinefooter,
.comments {
	clear: both;
}

#pageinfo {
	margin: 1em 0;
	border-top: 1px solid #000;
}

.tags {
	margin-top: 1em;
}

.inlinepage .tags {
        display: inline;
}

.mapparent {
	text-decoration: none;
}

.img caption {
	font-size: 80%;
	caption-side: bottom;
	text-align: center;
}

img.img {
	margin: 0.5ex;
}

.align-left {
	float:left;
}

.align-right {
	float:right;
}

#backlinks {
	margin-top: 1em;
}

#searchform {
	display: inline;
	float: right;
}

#editcontent {
	width: 98%;
}

.editcontentdiv {
	width: auto;
	overflow: auto;
}

img {
	border-style: none;
}

pre {
	overflow: auto;
}

div.recentchanges {
	border-style: solid;
	border-width: 1px;
	overflow: auto;
	width: auto;
	clear: none;
	background: #eee;
	color: black !important;
}
.recentchanges .metadata {
	padding: 0px 0.5em;
}
.recentchanges .changelog {
	font-style: italic;
	clear: both;
	display: block;
	padding: 1px 2px;
	background: white !important;
	color: black !important;
}
.recentchanges .desc {
	display: none;
}
.recentchanges .diff {
	display: none;
}
.recentchanges .committer {
	float: left;
	margin: 0;
	width: 40%;
}
.recentchanges .committype {
	float: left;
	margin: 0;
	width: 5%;
	font-size: small;
}
.recentchanges .changedate {
	float: left;
	margin: 0;
	width: 35%;
	font-size: small;
}
.recentchanges .pagelinks,
.recentchanges .revert {
	float: right;
	margin: 0;
	width: 60%;
}

.blogform, #blogform {
	padding: 10px 10px;
	border: 1px solid #aaa;
	background: #eee;
	color: black !important;
	width: auto;
	overflow: auto;
}

.inlinepage {
	padding: 10px 10px;
	border: 1px solid #aaa;
	overflow: auto;
}

.pagedate,
.pagelicense,
.pagecopyright {
	font-style: italic;
	display: block;
	margin-top: 1em;
}

.archivepagedate {
	font-style: italic;
}
.archivepage {
	margin-bottom: 1em;
}

.error {
	color: #C00;
}

.sidebar {
	width: 20ex;
	float: right;
	margin-left: 4px;
	margin-bottom: 4px;
	margin-top: -1px;
	padding: 0ex 2ex;
	background: white;
	border: 1px solid black;
	color: black !important;
}

hr.poll {
	height: 10pt;
	color: white !important;
	background: #eee;
	border: 2px solid black;
}
div.poll {
	margin-top: 1ex;
	margin-bottom: 1ex;
	padding: 1ex 1ex;
	border: 1px solid #aaa;
}

span.color {
	padding: 2px;
}

.comment-header,
.microblog-header {
	font-style: italic;
	margin-top: .3em;
}
.comment .author,
.microblog .author {
	font-weight: bold;
}
.comment-subject {
	font-weight: bold;
}
.comment-avatar {
	float: right;
}
.comment {
	border: 1px solid #aaa;
	padding: 3px;
}

div.progress {
	margin-top: 1ex;
	margin-bottom: 1ex;
	border: 1px solid #888;
	width: 400px;
	background: #eee;
	color: black !important;
	padding: 1px;
}
div.progress-done {
	background: #ea6 !important;
	color: black !important;
	text-align: center;
	padding: 1px;
}

/* things to hide in printouts */
@media print {
	.actions { display: none; }
	.tags { display: none; }
	.trails { display: none; }
	.feedbutton { display: none; }
	#searchform { display: none; }
	.blogform, #blogform { display: none; }
	#backlinks { display: none; }
	.addcomment { display: none; }
}

/* infobox template */
.infobox {
	float: right;
	margin-left: 2ex;
	margin-top: 1ex;
	margin-bottom: 1ex;
	padding: 1ex 1ex;
	border: 1px solid #aaa;
	background: white;
	color: black !important;
}

/* notebox template */
.notebox {
	float: right;
	margin-left: 2ex;
	margin-top: 1ex;
	margin-bottom: 1ex;
	padding: 1ex 1ex;
	border: 1px solid #aaa;
	width: 25%;
	background: white;
	color: black !important;
}

/* popup template and backlinks hiding */
.popup {
	border-bottom: 1px dotted #366;
	color: #366;
}
.popup .balloon,
.popup .paren,
.popup .expand {
	display: none;
	text-align: left;
}
.popup:hover .balloon,
.popup:focus .balloon {
	position: absolute;
	display: inline;
	margin: 1em 0 0 -2em;
	padding: 0.625em;
	border: 2px solid;
	background-color: #dee;
	color: black;
}

/* form styling */
fieldset {
	margin: 1ex 0;
	border: 1px solid black;
}
legend {
	padding: 0 1ex;
}
.fb_submit {
	float: left;
	margin: 2px 0;
}
label.block {    
	display: block;   
}
label.inline {    
	display: inline;
}
input#openid_identifier {
	background: url(wikiicons/openidlogin-bg.gif) no-repeat;
	background-color: #fff;
	background-position: 0 50%;
	color: #000;
	padding-left: 18px;
}
input#searchbox {
	background: url(wikiicons/search-bg.gif) no-repeat;
	background-color: #fff;
	background-position: 100% 50%;
	color: #000;
	padding-right: 16px;
}
/* invalid form fields */
.fb_invalid {
	color: red;
	background: white !important;
}
/* required form fields */
.fb_required {
	font-weight: bold;
}

/* highlight plugin */
pre.hl { color:#000000; background-color:#ffffff; }
.hl.num { color:#2928ff; }
.hl.esc { color:#ff00ff; }
.hl.str { color:#ff0000; }
.hl.dstr { color:#818100; }
.hl.slc { color:#838183; font-style:italic; }
.hl.com { color:#838183; font-style:italic; }
.hl.dir { color:#008200; }
.hl.sym { color:#000000; }
.hl.line { color:#555555; }
.hl.mark { background-color:#ffffbb; }
.hl.kwa { color:#000000; font-weight:bold; }
.hl.kwb { color:#830000; }
.hl.kwc { color:#000000; font-weight:bold; }
.hl.kwd { color:#010181; }

/* calendar plugin */
.month-calendar-day-this-day,
.year-calendar-this-month {
	background-color: #eee;
}
.month-calendar-day-head,
.month-calendar-day-nolink,
.month-calendar-day-link,
.month-calendar-day-this-day,
.month-calendar-day-future {
	text-align: right;
}
.month-calendar-arrow A:link,
.year-calendar-arrow A:link,
.month-calendar-arrow A:visited,
.year-calendar-arrow A:visited {
	text-decoration: none;
	font-weight: normal;
	font-size: 150%;
}

/* outlines */
li.L1 { list-style: upper-roman; }
li.L2 { list-style: decimal; }
li.L3 { list-style: lower-alpha; }
li.L4 { list-style: disc; }
li.L5 { list-style: square; }
li.L6 { list-style: circle; }
li.L7 { list-style: lower-roman; }
li.L8 { list-style: upper-alpha; }

/* tag cloud */
.pagecloud {
	float: right;
	width: 30%;
	text-align: center;
	padding: 10px 10px;
	border: 1px solid #aaa;
	background: #eee;
	color: black !important;
}
.smallestPC { font-size: 70%; }
.smallPC { font-size: 85%; }
.normalPC { font-size: 100%; }
.bigPC { font-size: 115%; }
.biggestPC { font-size: 130%; }

/* orange feed button */
.feedbutton {
	background: #ff6600;
	color: white !important;
	border-left: 1px solid #cc9966;
	border-top: 1px solid #ccaa99;
	border-right: 1px solid #993300;
	border-bottom: 1px solid #331100;
	padding: 0px 0.5em 0px 0.5em;
	font-family: sans-serif;
	font-weight: bold;
	font-size: small;
	text-decoration: none;
	margin-top: 1em;
}
.feedbutton:hover {
	color: white !important;
	background: #ff9900;
}

.FlattrButton {
	display: none;
}

/* login selector */
#login_choice {
	display: none;
}
#login_input_area {
	clear: both;
	padding: 10px;
}
#login_btns, #login_btns br {
	clear: both;
}
#login_highlight {
	background-color: black;
	float: left;
}
.login_large_btn {
	padding: 1em 1.5em;
	border: 1px solid #DDD;
	margin: 3px;
	float: left;
	background-color: white;
}
.login_small_btn {
	padding: 4px 4px;
	border: 1px solid #DDD;
	margin: 3px;
	float: left;
}
a.login_large_btn:focus {
	outline: none;
}
a.login_large_btn:focus {
	outline-style: none;
}
.login_selected {
	border: 4px solid #DDD;
}

.fileupload-content .ui-progressbar {
	width: 200px;
	height: 20px;
}
.fileupload-content .ui-progressbar-value {
	background: url(ikiwiki/images/pbar-ani.gif);
}

.trails {
	margin-top: 1em;
	margin-bottom: 1em;
}
.trail {
	display: block;
	clear: both;
	position: relative;
}

.trailprev {
	display: block;
	text-align: left;
	position: absolute;
	top: 0%;
	left: 3%;
	width: 30%;
}

.trailup {
	display: block;
	text-align: center;
	margin-left: 35%;
	margin-right: 35%;
}

.trailnext {
	display: block;
	text-align: right;
	position: absolute;
	top: 0%;
	width: 30%;
	right: 3%;
}

.trailsep {
	display: none;
}

/* mobile/small-screen-friendly layout */
@media (max-width: 600px) {
	.sidebar {
		width: auto;
		float: none;
		margin-top: 0;
		border: none;
	}

	/* if the mobile browser is new enough, use flex layout to shuffle
	 * the sidebar to the end */
	.page {
		display: -webkit-box;
		display: -webkit-flexbox;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-flex-direction: tb;
		-webkit-flex-direction: column;
		-webkit-flex-flow: column;
		-ms-flex-direction: column;
		flex-direction: column;
	}
	#pageheader {
		-webkit-box-ordinal-group: -1;
		-webkit-order: -1;
		-ms-box-ordinal-group: -1;
		-ms-flex-order: -1;
		order: -1;
	}
	.sidebar, #footer {
		-webkit-box-ordinal-group: 1;
		-webkit-order: 1;
		-ms-box-ordinal-group: 1;
		-ms-flex-order: 1;
		order: 1;
	}

	.blogform, #blogform {
		padding: 4px 4px;
	}
}

/* admonition start */
#content div.caution,
#content div.important,
#content div.note,
#content div.tip,
#content div.warning {
    border: 1px solid #aaa;
    margin: 1em 3em 1em 3em;
    background-repeat: no-repeat;
    background-position: 8px 8px; /* small gap around icon */
    /* 32 is the expected size of the icons */
    min-height: 32px;
    padding: 8px 1em 8px 48px; /* 48 = 32 + 8 + 8 px */
}
#content div.tip { background-image: url("smileys/admon-tip.png"); }
#content div.note { background-image: url("smileys/admon-note.png"); }
#content div.important { background-image: url("smileys/admon-important.png"); }
#content div.caution { background-image: url("smileys/admon-caution.png"); }
#content div.warning { background-image: url("smileys/admon-warning.png"); }
/* admonition end */
/* lightdark theme
 * Follow browser's preference for light or dark mode
 * Based on initial work by Joey Hess (doc/todo/support_for_light_and_dark_mode.mdwn)
 *
 * floating div backgrounds need a color specified or they are transparent
 * and might overlap and be obscured by other elements (see
 * d1cb73cb55ce2ecf185e2554a878a689113a01e4 and
 * doc/bugs/sidebar_is_obscured_by_recentchanges.mdwn)
 */

/*
 * the following will eventually be merged into the anti-theme (doc/style.css)
 */

html {
  color-scheme: light dark;
}

.sidebar {
  background: inherit;
  border-color: initial;
  color: inherit !important; /* antitheme uses !important, so we have to too */
}

.infobox, .notebox {
  background: inherit;
  color: inherit !important;
}

.pageheader .actions ul {
  border-bottom-color: inherit;
}
#pageinfo {
  border-top-color: inherit;
}
.pageheader #otherlanguages {
  border-bottom-color: inherit;
}

.blogform, #blogform {
    color: inherit !important;
}

pre.hl { color: inherit; background-color: inherit; }
.hl.kwa { color: inherit; }
.hl.sym { color: inherit; }
.hl.kwc { color: inherit; }

input#openid_identifier {
  background: url(wikiicons/openidlogin-bg.png) no-repeat;
}

input#openid_identifier,
input#searchbox
{
  background-color: inherit;
  color: inherit;
}

.fb_invalid {
	background: Field !important;
}

.pagecloud {
  color: inherit !important;
  border-color: black; /* XXX? */
}

.login_large_btn {
  background-color: Canvas;
}
#login_highlight  {
  background-color: CanvasText;
}

.feedbutton {
  color: Canvas !important;
}

.popup {
  border-bottom-color: currentColor;
}
  .popup:hover .balloon,
  .popup:focus .balloon {
     color: CanvasText;
  }

fieldset {
  border: 1px solid CanvasText;
}

/*
 * the following won't be merged as-is into the anti-theme
 */

/* recentchanges handling ***************************************************/
/* XXX: come back to recentchanges, look at 
 * the structure and see if that provides
 * insights */

@media (prefers-color-scheme: dark) {
  div.recentchanges {
    background: #333; /* light=#eee */
    color: inherit !important;
  }
  .recentchanges .changelog {
    background: Canvas !important;
  }
}

.recentchanges .changelog {
  color: inherit !important;
}

/* end recentchanges handling ***********************************************/

@media (prefers-color-scheme: dark) {
  .pagecloud
  .comment,
  .div.poll,
  .inlinepage,
  .infobox,
  .notebox {
    /* antitheme's value of aaa is intended to be a non-distracting
     * less-bold choice than black. It's approx 5 notches down from
     * white, so we choose five notches up from black for dark theme*/
    border-color: #555;
  }

  .blogform, #blogform {
    border-color: #aaa;
    background: #333; /* light choice was #eee */
  }

  hr.poll {
    color: inherit !important;
    background-color: #555; /* was eee. 333 seems too dark */
    border-color: inherit;
  }
  div.progress {
    background-color: #333; /* was #eee */
    color: inherit !important;
  }
  div.progress-done {
    background-color: #996d42 !important; /* same hue, different luminance */
    color: inherit !important;
  }

  .popup {
    color: #5dbbbb; /* #366 + 50% luminance */
  }

  .popup:hover .balloon,
  .popup:focus .balloon {
     background-color: #3f4444; /* #dee -50% luminance */
  }

  .hl.kwb { color: #d80000; } /* lum+50%. too close ot hl.str/#f00?*/
  .hl.kwd { color: #8080c0; } /* still to dakr on blcak */
  .hl.str { color: #aa0000; } /* to differentiate better from #d80000 */
  .hl.num { color: #9494ff; }
  .hl.mark { color: black; background:#bbbb88; }

  .pagecloud,
  .month-calendar-day-this-day,
  .year-calendar-this-month {
    background-color: #333;
  }

  .login-selected,
  .login_small_btn,
  .login_large_btn {
    border-color: #444;
  }

}
