/* basic -------------------------------------------------- */
:root {
	/* Light theme (default) */
	--ww-bg-primary: #fcfcfc;
	--ww-bg-secondary: #fff;
	--ww-bg-tertiary: #f0f0f0;
	--ww-bg-accent: #f9f9f9;
	--ww-text: #222;
	--ww-text-secondary: #333;
	--ww-text-tertiary: #444;
	--ww-a-normal: #039;
	--ww-a-hover: #b90022;
	--ww-a-active: #ff0000;
	--ww-a-visited: #900;
	--ww-a-target-bg: #fee;

	--ww-acl-public: #008000;
	--ww-acl-registered: #039;
	--ww-acl-custom: #ff8a00;
	--ww-acl-private: #ff0000;

	--ww-hover-primary: #cfc;
	--ww-hover-secondary: #e7f9ff;

	--ww-buttonface: rgb(233, 233, 237);
	--ww-buttonhighlight: rgb(255, 255, 255);
	--ww-buttonshadow: rgb(160, 160, 160);
	--ww-buttontext: rgb(0, 0, 0);

	--ww-font-size-xs: 0.75rem;   /* 12px  - Captions, labels */
	--ww-font-size-sm: 0.875rem;  /* 14px  - Small text */
	--ww-font-size-base: 1rem;   /* 16px  - Body text */
	--ww-font-size-lg: 1.125rem; /* 18px  - Large body text */
	--ww-font-size-xl: 1.25rem;  /* 20px  - Subheadings */
	--ww-font-size-2xl: 1.5rem;  /* 24px  - h3 */
	--ww-font-size-3xl: 2rem;    /* 32px  - h2 */
	--ww-font-size-4xl: 2.5rem;  /* 40px  - h1 */

	--ww-line-height-tight: 1.1;    /* Headings */
	--ww-line-height-normal: 1.5;   /* Body text (1.5–1.6 is ideal) */
	--ww-line-height-relaxed: 1.7;  /* Large text blocks */
 
	--ww-measure: 70ch;  /* Optimal for readability (45–75 chars) */
	
	--space-xs: 0.25rem;
	--space-sm: 0.5rem;
	--space-md: 1rem;
	--space-lg: 1.5rem;
	--space-xl: 2rem;
	--space-2xl: 3rem;

	--ww-font-serif: "Times New Roman", Times, serif;
	--ww-font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	--ww-font-monospace: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace;

	--ww-table-header-bg: #eee;

	--ww-border: #ccc;
	--ww-shadow: 0 1px 3px rgba(0,0,0,.1);
	--ww-focus-ring: #3daee9;

	/* WikiEdit specific variables */
	--we-textarea-bg: #fff;
	--we-textarea-text: #222;
	--we-textarea-caret: #000;
	--we-split-bg: #f8f8f8;
	--we-toolbar-bg: var(--ww-buttonface);
}

@media (min-width: 768px) {
  :root {
    /* --ww-font-size-base: 1.125rem; */ /* Slightly larger on bigger screens */
    --measure: 70ch;
  }
}

/* === MANUAL THEME OVERRIDE (data-theme) === */
:root[data-theme="dark"] {
	--ww-bg-primary: #1e1e1e;
	--ww-bg-secondary: #252526;
	--ww-bg-tertiary: #343434;
	--ww-bg-accent: #2a2a2a;
	--ww-text: #ddd;
	--ww-text-secondary: #c0c0c0;
	--ww-text-tertiary: #c0c0c0;
	--ww-a-normal: #5ab0ff;
	--ww-a-hover: #ff6b6b;
	--ww-a-active: #ff4444;
	--ww-a-visited: #c77;
	--ww-a-target-bg: #332;
	--ww-hover-primary: #334;
	--ww-hover-secondary: #223344;
	--ww-buttonface: rgb(45, 45, 48);
	--ww-buttonhighlight: rgb(70, 70, 75);
	--ww-buttonshadow: rgb(30, 30, 30);
	--ww-buttontext: #ddd;
	--ww-table-header-bg: #333;
	--ww-border: #555;
	--ww-shadow: 0 1px 3px rgba(0,0,0,.4);
	--ww-focus-ring: #5ab0ff;

	/* WikiEdit dark variables */
	--we-textarea-bg: #1e1e1e;
	--we-textarea-text: #ddd;
	--we-textarea-caret: #ddd;
	--we-split-bg: #252526;
	--we-toolbar-bg: #2d2d2d;
}

/* Dark theme */
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) {
		--ww-bg-primary: #1e1e1e;
		--ww-bg-secondary: #252526;
		--ww-bg-tertiary: #343434;
		--ww-bg-accent: #2a2a2a;
		--ww-text: #ddd;
		--ww-text-secondary: #c0c0c0;
		--ww-text-tertiary: #c0c0c0;
		--ww-a-normal: #5ab0ff;
		--ww-a-hover: #ff6b6b;
		--ww-a-active: #ff4444;
		--ww-a-visited: #c77;
		--ww-a-target-bg: #332;
		--ww-hover-primary: #334;
		--ww-hover-secondary: #223344;
		--ww-buttonface: rgb(45, 45, 48);
		--ww-buttonhighlight: rgb(70, 70, 75);
		--ww-buttonshadow: rgb(30, 30, 30);
		--ww-buttontext: #ddd;
		--ww-table-header-bg: #333;
		--ww-border: #555;
		--ww-shadow: 0 1px 3px rgba(0,0,0,.4);
		--ww-focus-ring: #5ab0ff;

		/* WikiEdit dark variables */
		--we-textarea-bg: #1e1e1e;
		--we-textarea-text: #ddd;
		--we-textarea-caret: #ddd;
		--we-split-bg: #252526;
		--we-toolbar-bg: #2d2d2d;
	}
}

p,
li,
select,
textarea {
	font-family: var(--ww-font-sans);
	font-size: var(--ww-font-size-base);
	line-height: var(--ww-line-height-normal);
}

td,
th {
	font-family: var(--ww-font-sans);
	font-size: var(--ww-font-size-sm);
	line-height: 1.71429;
}

/* language specifics */
ol:lang(fa) li {
	list-style-type: persian;
}
ol:lang(hi) li {
	list-style-type: devanagari;
}

/* cellspacing */
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* cellpadding */
th,
td {
	padding: 0;
}

label {
	cursor: pointer;
}

/*	buttons */
.btn,
input[type="file"]::file-selector-button {
	padding: 10px 20px;
	margin: 0 8px 8px 0;
	font-size: 14px;
	font-weight: 500;
	cursor: pointer;
	border-radius: 4px;
	transition: all 0.2s ease;
	border: none;
}

/* Primary: Filled blue (main action) */
.btn-primary {
	background-color: #3498db;
	color: white;
	box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
.btn-primary:hover {
	background-color: #2980b9;
	transform: translateY(-1px);
	box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

/* Secondary: Outlined teal (alternative action) */
.btn-secondary {
	background-color: white;
	color: #2ecc71;
	border: 2px solid #2ecc71;
}
.btn-secondary:hover {
	background-color: #2ecc71;
	color: white;
}

/* Cancel: Dashed gray border (neutral action) */
.btn-cancel {
	background-color: white;
	color: #7f8c8d;
	border: 2px dashed #bdc3c7;
}
.btn-cancel:hover {
	background-color: #f8f9fa;
	border-color: #95a5a6;
}

/* Danger: Filled red with sharp edges (destructive action) */
.btn-danger {
	background-color: #e74c3c;
	color: white;
	border-radius: 0;
}
.btn-danger:hover {
	background-color: #c0392b;
	transform: scale(1.02);
}

/* Default: Neutral style */
.btn-default {
  background-color: white;
  color: #7f8c8d;
  border: 2px solid #bdc3c7;
}
.btn-default:hover {
  background-color: #f8f9fa;
  border-color: #95a5a6;
}

/* Success: Filled green (positive action) */
.btn-success {
  background-color: #27ae60;
  color: white;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
.btn-success:hover {
  background-color: #219653;
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

/* Warning: Filled amber (caution action) */
.btn-warning {
  background-color: #f39c12;
  color: white;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
.btn-warning:hover {
  background-color: #e67e22;
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

/* Textareas */
select,
textarea,
input:not([type]),
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"] {
	color: var(--ww-text);
	background-color: var(--ww-bg-secondary);
	border: 1px solid var(--ww-border);
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
	transition: border 0.2s linear 0s, box-shadow 0.2s linear 0s;
	display: inline-block;
	font-size: var(--ww-font-size-base);
	height: auto;
}

input[type=text]:hover,
input[type=search]:hover,
input[type=email]:hover,
input[type=password]:hover,
textarea:hover {
	border: 1px solid #93cee9;
}

input[type=text]:focus,
input[type=search]:focus,
input[type=email]:focus,
input[type=password]:focus,
textarea:focus {
	border: 1px solid var(--ww-focus-ring);
}

input[type=checkbox],
input[type=radio] {
	margin-right: 10px;
	margin-left: 8px;
}

input.captcha {
	width: 273px;
}

/* hides dummy field for bots and autocomplete */
input.verify { display: none; }

/* flexible input and textarea fields */
.cols-100 {
	width: 98%;
	max-width: 800px;
}
.cols-80 {
	width: 98%;
	max-width: 700px;
}
.cols-50 {
	width: 98%;
	max-width: 500px;
}
.cols-20 {
	width: 98%;
	max-width: 200px;
}

fieldset {
	padding: 10px;
}

body {
	font-family: var(--ww-font-sans);
	font-size: var(--ww-font-size-base);
	line-height: var(--ww-line-height-normal);
	color: var(--ww-text);
	background-color: var(--ww-bg-primary);
	margin: 0;
	text-rendering: optimizeLegibility;
}

img,
svg,
video {
	max-width: 100%;
	height: auto;
	border-width: 0;
	vertical-align: middle;
}

audio {
	min-width: 100%;
	max-width: 100%;
}

/* Accessibility */
.visuallyhidden {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

/* Hyperlinks */
a {
	color: var(--ww-a-normal);
	text-decoration: none;
}

a:link {
	color: var(--ww-a-normal);
}

a:visited {
	color: var(--ww-a-visited);
}

a:hover {
	color: var(--ww-a-hover);
	text-decoration: underline;
}

a:active {
	color: var(--ww-a-active);
}

a:target {
	background-color: var(--ww-a-target-bg);
}

.heading {
	clear: both;
}
.heading > a.self-link::before {
	content: "§";
	visibility: hidden;
}
.heading:hover > a.self-link::before {
	content: "§";
	visibility: visible;
	text-decoration: none;
}

header h1 > a.edit-section,
.heading > a.edit-section {
	visibility: hidden;
}
header h1:hover > a.edit-section,
.heading:hover > a.edit-section {
	visibility: visible;
	text-decoration: none;
}

a.self-link {
	height: 2em;
	float: left;
	margin-left: -15px;
	padding-right: 4px;
	padding-top: 4px;
}
[dir="rtl"] a.self-link {
	float: right;
	margin-right: -15px;
	padding-left: 4px;
}
a.self-link:hover {
	text-decoration: none;
}
.heading > a.self-link {
	font-size: 83%;
}

/* a.self-link::before {
	content: "¶"; 
} */

a.edit-section {
	float: right;
	font-size: small;
}
[dir="rtl"] a.edit-section {
	float: left;
}

.clearfix,
#mainwrapper {
	display: flow-root;
}

form input.submitinput {
	color: var(--ww-text);
}

#header-site,
#header-site h1,
#header-site a,
#header-site a:visited {
	font-size: var(--ww-font-size-2xl);
	font-weight: normal;
	color: var(--ww-text-tertiary);
	text-decoration: none;
}

#header-files h1,
#header-comments h1 {
	font-size: var(--ww-font-size-base);
	line-height: 1.3;
	font-weight: normal;
	padding: 0;
	margin: 0;
}

.print {
	font-family: var(--ww-font-sans);
	font-size: var(--ww-font-size-xs);
}

/** message boxes ************************************************************/
.msg {
	position: relative;
	margin: .6rem 0;
	padding: .625rem 2.5rem;
	overflow: auto;
}
.msg::before {
	bottom: 0;
	content: '';
	left: 0;
	position: absolute;
	top: 0;
	width: 2.5rem;
}
.msg::after {
	position: absolute;
	height: 1rem;
	width: 1rem;
	margin-top: 0;
	top: .6rem;
	left: .6rem;
}
[dir=rtl] .msg::after {
	right: .6rem;
}

.error {
	background: #f8d4cc;
	color: #c33;
	font-weight: bold;
}
.error::after {
	content: url('./../icon/light/cross.svg') " ";
}

.comment-info {
	color: gray;
	border: 1px solid #d5d9e6;
}
.msg.comment-info::after {
	content: url('./../icon/light/comment.svg') " ";
}

.disabled {
	background: #ededed;
	border: 1px solid #cdcdcd;
	font-style: italic;
}
.msg.disabled::after {
	content: url('./../icon/light/info.svg') " ";
}

.revision-info {
	background: #f4fbff;
	border: 1px solid #d5d9e6;
	color: #c33;
	font-weight: bold;
}
.msg.revision-info::after {
	content: url('./../icon/light/revisions.svg') " ";
}

.revision-info button {
	float: left;
	margin-right: 5px;
}

.note {
	background: #f4fbff;
	border: 1px solid #d5d9e6;
	color: #c33;
	font-weight: bold;
}
.msg.note::after {
	content: url('./../icon/light/info.svg') " ";
}

.notice {
	background-color: #ffffef;
	border: 1px dotted #dda;
}
.msg.notice::after {
	content: url('./../icon/light/info.svg') " ";
}

.section-info {
	border: 1px solid #cdcdcd;
	color: gray;
}
.msg.section-info::after {
	content: url('./../icon/light/section.svg') " ";
}

.success {
	background: #e9ffd9;
	color: #008000;
	font-weight: bold;
}
.msg.success::after {
	content: url('./../icon/light/tick.svg') " ";
}

.warning {
	color: #d33;
	background: var(--ww-bg-primary);
	border: 1px dotted #d893a1;
	font-weight: bold;
}
.msg.warning::after {
	content: url('./../icon/light/warning.svg') " ";
}

.hint {
	color: #000;
	border: 1px solid #fe6;
	background: #ffd;
}
.msg.hint::after {
	content: url('./../icon/light/important.svg') " ";
}

.rev-overflow {
	overflow: visible;
}

/* Debugging information */
#debug {
	padding: 0 20px 20px;
	float: left;
}
[dir=rtl] #debug {
	float: right;
}
.debug,
#debug li,
#debug pre {
	font-size: 0.6875rem;
	color: #888;
}

.sqllog {
	position: relative;
	/* display: inline-block; */
}

.sqllog .backtrace {
	visibility: hidden;
	width: 30%;
	background-color: #131313;
	color: #fff;
	border-radius: 6px;
	padding: 7px;

	/* Position the tooltip */
	position: absolute;
	z-index: 1;
	top: 30px;
	left: 100px;
}

.sqllog:hover {
	border: 1px solid #93cee9;
}

.sqllog:hover .backtrace {
	visibility: visible;
}

pre.help {
	border: 1px solid lightgray;
	border-radius: 3px;
	padding: 10px;
}

header {
	padding: 0;
	width: 96%;
}

article header {
	width: 100%;
	display: inline-block;
}

#header-main {
	clear: both;
	overflow: hidden;
	float: left;
	background: var(--ww-bg-secondary);
	width: 100%;
	padding-bottom: 5px;
}

.menu-main {
	float: left;
	background: var(--ww-bg-secondary);
	width: 100%;
	padding-top: 5px;
}

.breadcrumb {
	background-color: var(--ww-bg-primary);
	border-bottom: 1px dotted #b2b0b0;
	border-top: 1px dotted #b2b0b0;
	color: var(--ww-text-secondary);
	font-size: var(--ww-font-size-xs);
	font-weight: normal;
	padding: 0.1em 20px;
	margin: 0 0 0 -20px;
	float: left;
	width: 100%;
}

/* top button */
.totop-button {
	right: 20px;
	border-width: 0;
	border-style: solid;
	border-radius: 100%;
	border-color: rgba(255, 255, 255, 1.0);
	display: flex;
	justify-content: space-around;
	align-items: center;
	position: fixed;
	bottom: 50px;
	width: 40px;
	height: 40px;
	z-index: 1;
	box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
	color: rgba(255, 255, 255, 1.0);
	background-color: transparent;
	transition: all 0.4s ease;
	cursor: pointer;
}
.chevron-up:before {
	content: "^";
}
a.chevron-up,
a.chevron-up:hover,
a.chevron-up:visited {
	color: rgb(51, 51, 51);
	text-decoration: none;
	margin-top: 5px;
	font-style: normal;
	line-height: 1;
	font-weight: 900;
	font-size: large;
	width: 100%;
	text-align: center;
}

/** Styles for the main content in the page. *********************************/
	/* Default settings */
#mainwrapper {
	margin: 0 auto 1rem;
}

@media (min-width: 700px) {
	#mainwrapper {
		width: 980px; 
		/* max-width: var(--ww-measure); */
	}
}

#mainwrapper > header,
main {
	background-color: var(--ww-bg-secondary);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
	padding: 9px 20px 0;
	float: left;
	width: 96%;
	clear: both;
}

article,
#section-content,
#page-show,
#page-edit {
	float: left;
	width: 100%;
}

#section-content,
#page-show,
#page-edit,
#page {
	background-color: var(--ww-bg-secondary);
	min-height: 200px;
}

#section-content,
#page {
	padding: 5px 0 20px;
}

#page-edit {
	border-bottom: none;
	padding: 5px 0 20px;
}

#page-edit form textarea {
	height: 400px;
	min-height: 5em;
}

#edit_page {
	clear: left;
}

.textarea-page,
.textarea-comment,
.input-title,
.input-summary {
	width: 100%;
}

.source-handler {
	min-height: 200px;
}

footer {
	float: left;
	width: 96%;
}

.footer {
	background-color: var(--ww-bg-tertiary);
	padding: 5px 20px;
	border-top: 1px dotted var(--ww-border);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
	margin: 0;
	float: left;
	height: auto;
	overflow: hidden;
	clear: both;
	width: 100%;
}

.article-header-meta {
	float: right;
	color: #808080;
	line-height: 1.24;
	white-space: nowrap;
}

.article-header-meta a {
	opacity: 0;
	pointer-events: none;
}
header:hover > span.article-header-meta a {
	opacity: 1;
	pointer-events: auto;
}

.page-meta {
	margin: 0 auto;
	overflow: hidden;
}

.page-meta ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.page-meta li {
	border-left: 1px dotted var(--ww-border);
	float: left;
	line-height: 1.2em;
	margin: 0 .5em 0 -.5em;
	padding: 0 .5em;
	white-space: nowrap;
}
[dir="rtl"] .page-meta li {
	border: dotted var(--ww-border);
	border-width: 0 1px 0 0;
	float: right;
	margin: 0 -.5em 0 .5em;
}
.page-meta ul li form {
	display: inline;
}

.page-properties {
	font-size: 0.6875rem;
	color: #aaa;
	text-align: right;
	float: right;
	width: 30%;
}

.section-level {
	color: #aaa;
}

[dir="rtl"] .page-properties {
	text-align: left;
	float: left;
}
.page-properties a {
	color: #aaa;
	font-size: 0.6875rem;
}

/** File and comment-related *************************************************/
	/* Headers (always visible) */
#header-files,
#header-comments {
	background-color: var(--ww-bg-tertiary);
	padding: 4px 20px;
	margin: 0 -20px;
	border-top: 1px dotted var(--ww-border);
	border-bottom: 1px solid #eee;
	float: left;
	width: 100%;
}

.files,
.comment,
.category {
	background-color: var(--ww-bg-secondary);
	padding: 10px 20px;
	margin: 0 -20px;
	border-bottom: 1px solid #eee;
	float: left;
	width: 100%;
}

.comment:target {
	border: 2px solid #ff6600;
	padding: 10px 18px;
}

.comment:hover {
	background-color: var(--ww-hover-secondary);
}

/* comments and files actions (only visible on hover) */
.comment-tools,
.file-tools,
.page-tools {
	visibility: hidden;
}

.newsarticle:hover .page-tools,
.comment:hover .comment-tools,
.file tr:hover .file-tools {
	visibility: visible;
}

.page-tools img,
.comment-tools img {
	float: right;
	padding: 2px;
}
[dir=rtl] .page-tools img,
[dir=rtl] .comment-tools img {
	float: left;
}

li.comment {
	overflow: hidden;
}
ol#comments {
	list-style: none outside none;
	margin: 10px 0 0;
	padding: 0;
}

/* reset nested list style */
ol#comments ul {
	list-style: disc;
}
ol#comments ul ul {
	list-style: circle;
}
ol#comments ul ul ul {
	list-style: square;
}

/* Comment author and date */
.comment-meta {
	color: #aaa;
	padding: 10px;
	float: right;
}
[dir=rtl] .comment-meta {
	float: left;
}
.comment-meta li {
	border: medium none;
	margin: 0;
	padding: 0;
	width: 320px;
	list-style-type: none;
}

.comment-text,
.comment-tool {
	float: left;
}
[dir=rtl] .comment-text,
[dir=rtl] .comment-tool {
	float: right;
}

.comment-text footer {
	width: 100%;
}

.comment-title h2 {
	font-size: var(--ww-font-size-base);
	line-height: var(--ww-line-height-normal);
	font-weight: bold;
	margin: 0 0 10px 0;
	border: none;
	clear: left;
}

.comment-preview {
	width: 800px;
}

/* Change summary */
.editnote {
	color: #555;
}

.review {
	font-weight: bold;
}

.filesform,
.commentform {
	padding: 10px 20px;
	margin: 0 -20px;
	background-color: var(--ww-bg-primary);
	float: left;
	width: 100%;
}

.commentform form {
	width: 100%;
}

.commentform form textarea {
	width: 100%;
	height: auto;
	padding: 0;
}

#credits {
	font-size: 0.6875rem;
	color: #aaa;
	text-align: right;
	padding: 5px 20px 0;
	float: left;
	width: 100%;
}
[dir=rtl] #credits {
	text-align: left;
	padding: 5px 0 0 20px;
	float: right;
}

#credits a {
	color: #aaa;
}

#credits a:active {
	color: var(--ww-a-active);
}
#credits ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
#credits li {
	font-size: 0.6875rem;
	margin-right: 20px;
	float: left;
}

/* Included pages: SYNTAX {{include page="xyz"}} */
.include-page {
	background-color: var(--ww-bg-primary);
	padding: 8px;
}

.include-meta {
	text-align: right;
	font-size: 0.6875rem;
}

/* Outgoing hyperlinks: SYNTAX ((https://slashdot.org nerds)) */
.outerlink {
	color: #990000;
}

.missingpage {
	border-bottom: 1px dashed orange;
}

/* search box */
.search input {
	width: 200px;
	padding-right: 25px;
	background-color: transparent;
}
[dir="rtl"] .search input {
	padding: 0 2px 0 25px;
}
.search button {
	height: 30px;
	padding: 1px 6px 4px;
	border-width: 0;
	background-color: transparent;
	margin-left: -30px;
}
[dir=rtl] .search button {
	margin: 0 -30px 0 0;
}
.search button img {
	padding-bottom: 3px;
}

/* replaces inline CSS */
.t-center {
	text-align: center;
}
.t-right {
	text-align: right;
}
.t-left {
	text-align: left;
}

.a-top {
	vertical-align: top;
}

.a-middle {
	vertical-align: middle;
}

a.btn-link {
	text-decoration: none;
}

.nowrap {
	white-space: nowrap;
}

/* files action */

.file {
	width: 100%;
}

.tbl-fixed {
	table-layout: fixed;
}

.file tr:hover {
	background: var(--ww-hover-primary);
}

.file th {
	color: var(--ww-text-tertiary);
	font-weight: normal;
	text-align: left;
	width: 130px;
}

.file td,
.file th {
	padding: 2px 5px;
	vertical-align: top;
}

.file td.dt-,
.file td.file- {
	white-space: nowrap;
	color: #000;
	vertical-align: top;
}

td.file- {
	width: 50%;
}

.file td.dt- {
	padding-right: 0;
}

.file td.tool- {
	padding-right: 0;
	white-space: nowrap;
	width: 9%;
}

.file td.size- {
	padding-right: 0;
	text-align: right;
}

.file td.desc- {
	font-size: 80%;
	color: var(--ww-text-tertiary);
}

.file td.dt- .dt2-,
.file td .file-tools a,
.file td.size- .size2- {
	font: 11px Tahoma;
	color: #666;
	padding: 5px;
	white-space: nowrap;
}

/* filemeta handler */

.filemeta {
	width: 100%;
}

.filemeta tr:hover {
	background: var(--ww-hover-primary);
}

.filemeta th {
	color: var(--ww-text-tertiary);
	font-weight: normal;
	text-align: left;
	width: 130px;
}
[dir=rtl] .filemeta th {
	text-align: right;
}

.filemeta td,
.filemeta th {
	padding: 2px 5px;
	vertical-align: top;
}

.filemeta li {
	list-style-type: none;
	padding-bottom: 5px;
	overflow-wrap: break-word;
}

.filemeta p {
	margin: 0;
}

.filemeta summary {
	color: var(--ww-text-tertiary);
}

.file-info {
	overflow-wrap: break-word;
}

.show-image a img {
	border: 4px solid white;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.3);
	margin: 10px 0;
}

.show-image a img:hover {
	box-shadow: 0 0 10px 0 #93cee9;
}

.show-image a img:active {
	box-shadow: 0 0 10px 0 var(--ww-focus-ring);
}

.upload-dropzone {
	border: 3px dashed var(--ww-border);
	border-radius: 8px;
	padding: 2rem;
	margin-bottom: 1rem;
	background: var(--ww-bg-secondary);
	transition: all 0.2s;
}
.upload-dropzone.dragover {
	border-color: #007acc;
	background: #e6f3ff;
}
.upload-dropzone .small { font-size: 0.9em; color: #666; }
.upload-message {
	padding: 0.5rem 1rem;
	margin: 0.25rem 0;
	border-radius: 4px;
}
.upload-success { /* background: #d4edda; */ color: #155724; }
.upload-error   { background: #f8d7da; color: #721c24; }

.upload-tabs { display: flex; margin-bottom: 1rem; border-bottom: 2px solid #ddd; }
.tab-btn { padding: 0.75rem 1.5rem; background: none; border: none; cursor: pointer; color: var(--ww-text); }
.tab-btn.active { border-bottom: 3px solid #007acc; font-weight: bold; color: var(--ww-text); }

.upload-tab-content.hidden { display: none; }

.upload-file-remove {
	background: #ccc;
	color: #333;
	border: none;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	cursor: pointer;
	font-size: var(--ww-font-size-lg);
	line-height: 1;
}
.upload-file-remove:hover { background: #e74c3c; color: white; }


.upload-file-item { 
	display: flex; 
	align-items: center; 
	padding: 0.75rem; 
	border: 1px solid #ddd; 
	margin: 0.5rem 0; 
	border-radius: 6px; 
	background: #fff; 
}
.upload-file-item:hover {
	background: var(--ww-hover-primary);
}
.upload-progress-container {
	flex: 1;
	margin: 0 1rem;
	height: 8px;
	background: #e0e0e0;
	border-radius: 4px;
	overflow: hidden;
}

.upload-progress-bar {
	width: 100%;
	height: 100%;
	background: #e0e0e0;
}

.upload-progress-fill {
	height: 100%;
	background: #007acc;	         /* blue progress */
	width: 0%;
	transition: width 0.4s ease-in-out;
}

.upload-success .upload-progress-fill {
	background: #28a745;           /* green when done */
}

.upload-success { color: #155724; }
.upload-error   { color: #721c24; }

.success-box { 
	background: #d4edda; 
	color: #155724; 
	padding: 1rem; 
	border-radius: 6px; 
	margin-top: 1rem; 
}

.upload-location {
	margin-top: 1.2rem;
	display: flex;
	flex-direction: column;
}


/* caption */
.caption {
	color: #1d1d1d;
	font-size: var(--ww-font-size-xs);
}

.caption-license {
	color: #888;
}

.preview {
	margin: .8em 2px 5px;
	padding: 10px;
	border: red 2px solid;
	display: table;
	width: 98%;
}

p.preview {
	color: red;
	font-weight: bold;
	margin: -1.5em 0 10px;
	padding: 0;
	border: 0;
}

.preview p span {
	background: var(--ww-bg-secondary);
	padding: 0 3px;
	margin-left: -3px;
}

.preview h1 {
	clear: both;
}

.layout-box {
	margin: .8em 2px 2px;
	padding: 10px;
	border: var(--ww-border) 1px dotted;
	border-radius: .1rem;
	background-color: var(--ww-bg-primary);
}

.layout-box > p {
	background: transparent;
	margin: -1.5em 0 10px;
	padding: 0;
	border: 0;
}

.layout-box > p span {
	background: var(--ww-bg-secondary);
	padding: 0 1px;
}

/* auto-generated footnotes */
.layout-box dd {
	margin: -20px 0 0 50px;
	padding: 0;
	line-height: var(--ww-line-height-normal);
}
[dir="rtl"] .layout-box dd {
	margin: -20px 50px 0 0;
}

*.heading:target,
.layout-box dd:target,
.footnote *:target,
p:target,
a:target {
	background-color: var(--ww-a-target-bg);
}

#footnotes dd:hover,
#footnotes dt:hover + dd {
	background-color: var(--ww-hover-secondary);
}




.session-expired-warning {
	margin: 12px 0;
	padding: 12px 16px;
	border-left: 5px solid #e74c3c;
}

.session-expired-warning button {
	background: #f8f9fa;
	border: 1px solid #ccc;
	border-radius: 4px;
	cursor: pointer;
}

.session-expired-warning button:hover {
	background: #e9ecef;
}

.session-expired-warning .btn-save-draft {
	background: #28a745;
	color: white;
	border-color: #28a745;
}

.session-expired-warning .btn-save-draft:hover {
	background: #218838;
}


/* CSS form formatter */
.cssform p {
	width: 320px;
	clear: left;
	margin: 0;
	padding: 5px 0 8px 155px;
	/*width of left column containing the label elements*/
	height: 1%;
}
[dir=rtl] .cssform p {
	clear: right;
	padding: 5px 155px 8px 0;
}

.cssform label {
	float: left;
	margin-left: -155px; /*width of left column*/
	width: 150px;
	/*width of labels. Should be smaller than left column (155px) to create some right margin*/
}
[dir=rtl] .cssform label {
	float: right;
	margin-left: unset;
	margin-right: -155px;
}

.cssform input[type="text"] {
	width: 180px;
}

.cssform textarea {
	width: 570px;
	height: 50px;
}

.form-tbl {
	width: 100%;
}

.form-tbl td,
.form-tbl th {
	padding: 3px;
	margin: 0;
}

.form-tbl td {
	text-align: left;
	vertical-align: top;
}
[dir=rtl] .form-tbl td {
	text-align: right;
}

.form-tbl td label {
	color: var(--ww-text-secondary);
}

.form-tbl th {
	color: var(--ww-text-tertiary);
	font-weight: bold;
	text-align: right;
	vertical-align: top;
	padding-right: 20px;
}

.form-options {
	background-color: #ededed; 
	border: 1px solid #cdcdcd; 
	padding: 10px;
}

.btn-right {
	float: right;
}

.permissions col:nth-child(1) {
	width: 10%;
}
.permissions col:nth-child(2) {
	width: 70%;
}

.account col:nth-child(1),
.properties col:nth-child(1) {
	width: 30%;
}
.account col:nth-child(2),
.properties col:nth-child(2) {
	width: 70%;
}

/* Actions --------------------------------------------------*/
.smaller {
	font-size: 0.8em;
}

/* calendar action */
.calendar { margin: 10px;}
.calendar:hover { background-color: var(--ww-hover-secondary);}
.calendar-month {}
.calendar th {padding: 5px;}
.calendar td {padding: 5px; text-align: right;}
.calendar-hl {color: red; font-weight: bold;}

/* feed action */
.feed {
	overflow: auto;
}

.feed-note {
	font-size: 0.6875rem;
	color: #777;
}

.feed-note a {
	color: #777;
}

.feed-note span {
	border-bottom: 1px dotted;
}

.feed-element-title {
	/* We're going to add some space next to the titles so we can fit the 16x16 favicon image. */
	background: transparent no-repeat 0 1px;
	padding-left: 0;
	font-size: var(--ww-font-size-base);
}

.feed h2 {
	font-size: var(--ww-font-size-sm);
	border-bottom: none;
}

/* search action */
.search-meta {
	color: #808080; 
	line-height: 1.24; 
	white-space: nowrap;
}

/* gallery action */
div.gallery,
table.gallery {
	width: 100%;
	text-align: center;
}

.gallery td:nth-child(n) {
	text-align: center;
}

.gallery figure {
	display: inline-table;
}

.gallery figure:hover {
	background-color: var(--ww-hover-primary);
}

.gallery figcaption {
	display: table-caption;
	caption-side: bottom;
}

/* Handlers --------------------------------------------------*/

/* languages */

.lang-link {
	float: right;
}

/* menu */

#menu-user {
	float: left;
}
[dir=rtl] #menu-user {
	float: right;
	text-align: right;
}

#menu-user li {
	border-left: 1px dotted #aaa;
	float: left;
	line-height: 1.2em;
	margin: 0 .5em 0 -.5em;
	padding: 0.2em 0.5em;
	white-space: nowrap;
}
[dir=rtl] #menu-user li {
	border: dotted #aaa;
	border-width: 0 1px 0 0;
	float: right;
}

#menu-user li:first-child {
	border-left: 1px none;
}
[dir=rtl] #menu-user li:first-child {
	border-right: 1px none;
}
#menu-user li:first-child.active {
	margin-left: -6px;
	padding-left: 6px;
}
[dir=rtl] #menu-user li:first-child.active {
	margin-left: unset;
	margin-right: -6px;
	padding-right: 6px;
}

#menu-user li.active {
	font-weight: 600;
	background: #439ce8 linear-gradient(to bottom, #43ace8, #4383e8) repeat-x;
	border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
	color: #fff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
#menu-user ul ul li {
	border-left: none;
	padding: 0 .5em;
}
#menu-user ul ul li.active,
#menu-user ul ul li:first-child.active {
	padding: 0;
	margin: 0;
}

#menu-user li a {
	display: inline;
	border: none;
	text-decoration: none;
}

#menu-user li a:visited {
	color: var(--ww-a-normal);
}

#menu-user li a:hover {
	color: var(--ww-a-hover);
	text-decoration: underline;
}

#menu-user li a:active {
	color: var(--ww-a-active);
}

#search-box {
	margin: 0 auto;
	overflow: hidden;
	float: right;
	text-align: left;
	position: relative;
	height: 25px;
}

#header-site {
	margin: 0 auto;
	overflow: hidden;
	float: left;
	text-align: left;
	position: relative;
	font-size: 1.3em;
}
[dir=rtl] #header-site {
	float: right;
	text-align: left;
}

#login-box {
	font-size: var(--ww-font-size-sm);
	margin: 0 auto;
	overflow: hidden;
	float: right;
	text-align: left;
	position: relative;
}
[dir=rtl] #login-box {
	float: left;
	text-align: left;
}

#login-box form {
	display: inline;
}

#login-box ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

#login-box li {
	border-left: 1px solid #aaa;
	float: left;
	line-height: 1.2em;
	margin: 0 .5em 0 -.5em;
	padding: 0 .5em;
	white-space: nowrap;
}

#login-box li a {
	display: inline;
	border: none;
	text-decoration: none;
}

#login-box li a:visited {
	color: var(--ww-a-normal);
}

#login-box li a:hover {
	color: var(--ww-a-hover);
	text-decoration: underline;
}

#login-box li a:active {
	color: var(--ww-a-active);
}

/* temp */
.topnav {
	float: right;
	font-size: 0.6875em;
	margin-top: 0.9375em;
}

.topnav ul,
.topnav li {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.topnav ul {
	display: block;
}

.topnav li {
	display: inline;
	margin-right: 1.1em;
}

/*search*/
.highlight {
	background-color: #ffa;
	font-style: normal;
	font-weight: bold;
}

#search-results li:hover {
	background-color: var(--ww-hover-secondary);
}

#search-results li {
	margin: 1em 0;
}

#search-results h3 {
	font-size: var(--ww-font-size-sm);
	border-bottom: 0 none;
}

/* lists */
.ul-list,
.revisions {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.ul-list ul {
	list-style-type: none;
	padding-left: 20px;
}

.ul-letters {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.ul-letters ul {
	list-style: none outside none;
	margin: 0;
	padding: 0;
}
.ul-letters li {
	border-left: 1px dotted #aaa;
	float: left;
	line-height: 1.2em;
	margin: 0 0.5em 0 -0.5em;
	padding: 0 0.5em;
	white-space: nowrap;
}
.ul-letters li:first-child {
	border-left: 1px none;
}

.ul-letters li.active   {
	background: var(--ww-hover-primary);
}

/* settings */
.lined td,
.lined th {
	border-bottom: 1px dotted #babfc7;
}

.separator {
	border-bottom: 1px solid #cfd6d9;
	padding-bottom: 20px;
}

.tree {
	text-align: left;
	list-style: none outside none;
	margin: 0;
	padding: 0;
}

.we-shortcuts-table tr:hover,
.topics tbody:hover,
.revisions li:hover,
.form-tbl tr:hover,
.hl-line li:hover,
.hl-line tr:hover,
tr.lined:hover {
	background: var(--ww-hover-primary);
}

.page-settings {
	float: left;
	width: 60%;
}
[dir="rtl"] .page-settings {
	float: right;
}
.sidebar {
	float: right;
	padding: 0 10px 10px;
}
[dir="rtl"] .sidebar {
	float: left;
}

.menu
{
	list-style: none outside none;
	float: right;
	margin: 0;
	padding: 0;
}
[dir="rtl"] .menu
{
	float: left;
}

.menu li:first-child {
	border-left: 1px none;
}
[dir="rtl"] .menu li:first-child {
	border-right: 1px none;
}

.menu li {
	border-left: 1px dotted var(--ww-border);
	float: left;
	line-height: 1.2em;
	margin: 0 0.5em 0 -0.5em;
	padding: 0 0.5em;
	white-space: nowrap;
}
[dir="rtl"] .menu li {
	border: dotted var(--ww-border);
	border-width: 0 1px 0 0;
	float: right;
}

.menu li.active {
	font-weight: bold;
}

/* news / blog extension ******************************************* */
.news {
	float: left;
	margin: 0;
	overflow: hidden;
	padding: 0;
	width: 100%;
}

article.feed:hover,
article.newsarticle:hover {
	background: var(--ww-hover-secondary);
}

.news-title {
	font-size: var(--ww-font-size-sm);
	font-weight: bold;
	border: 0 solid red;
	border-left-width: 4px;
	margin-top: 10px;
	padding-left: 9px;
}

.news-info {
	color: #666;
	margin: 4px 0 6px;
}

.news-info span {
	border-bottom: 1px dotted;
}

.news-meta {
	border-bottom: 1px dotted #666;
	height: 30px;
	margin-top: 15px;
	width: 100%;
}

.pagination {
	float: right;
}
[dir=rtl] .pagination {
	float: left;
}

table.formation {
	background-color: #ededed;
	border: 1px solid #cdcdcd;
	border-spacing: 3px;
	border-collapse: separate;
}
table.formation th,
tr.formation th {
	background-color: #ddd;
	letter-spacing: normal;
	border: 1px solid #cdcdcd;
}

table.formation td {
	padding: 3px;
}

/* revisions */
.rev-version {
	display: inline-block;
	width: 40px;
}

.rev-size {
	display: inline-block; 
	width: 170px;
}

.diff-zero {
	background-color: #eee;
	color: #777;
	font-style: italic;
}

.diff-pos {
	background-color: #efe;
	color: #080;
}

.diff-neg {
	background-color: #fee;
	color: #c00;
	font-style: italic;
}

/* menus -----------------------------------------*/

#menu-global {
	float: right;
	margin: 4px 30px 0 0;
}

#menu-global ol {
	list-style: outside none none;
	margin: 0;
	padding: 0;
}
#menu-global li {
	display: inline-block;
	font-size: smaller;
	font-weight: bold;
	padding: 0 5px;
}
#menu-global a {
	border: medium none;
	color: #babdb6;
	display: inline;
	padding: 0;
	text-decoration: none;
}
#menu-global a:link,
#menu-global a:visited {
	color: #babdb6;
}
#menu-global a:hover {
	color: var(--ww-a-hover);
	text-decoration: underline;
}

#page-handler {
	float: right;
}
[dir=rtl] #page-handler {
	float: left;
}

#page-handler li.search {
	padding-bottom: 0;
}

#page-handler li.active {
	border: 1px solid #aaa;
	border-bottom-width: 0;
	background-color: var(--ww-bg-primary);
}

#page-handler ul ul li.active {
	border: 1px solid #aaa;
	border-right-color: var(--ww-border);
	border-bottom: 0 var(--ww-border);
	background-color: var(--ww-bg-primary);
	width: 100%;
	padding: 0;
	margin-left: -1px;
}

/* submenu items */
.submenu ul {
	background: var(--ww-bg-secondary);
	list-style: none;
	margin: 0;
	padding-left: 0;
}
[dir=rtl] .submenu ul {
	padding-right: 0;
}

.submenu li {
	background: transparent;
	display: block;
	float: left;
	padding: 1px 6px 4px;
	position: relative;
	text-decoration: none;
	transition-duration: 0.5s;
}
[dir=rtl] .submenu li {
	float: right;
}

.submenu li:hover,
.submenu li:focus-within {
	cursor: pointer;
}

.submenu li:focus-within a {
	outline: none;
}

.submenu ul li ul {
	background: var(--ww-bg-secondary);
	visibility: hidden;
	opacity: 0;
	min-width: 5rem;
	position: absolute;
	transition: all 0.5s ease;
	margin-top: 0px;
	padding-top: 4px;
	left: 0;
	border: 1px solid var(--ww-border);
	border-top-width: 0;
	display: none;
	z-index: 1000;
}

.submenu ul li:hover > ul,
.submenu ul li:focus-within > ul,
.submenu ul li ul:hover,
.submenu ul li ul:focus {
	visibility: visible;
	opacity: 1;
	display: block;
}

.submenu ul li ul li {
	clear: both;
	width: 100%;
	white-space: nowrap;
	padding: 0 20px 0 0;
}
[dir=rtl] .submenu ul li ul li {
	padding: 0 0 0 20px;
}

.submenu ul li ul li a,
.submenu ul li ul li > span {
	display: block;
	float: left;
	font-weight: normal;
	line-height: var(--ww-line-height-normal);
	width: 100%;
	margin: 0;
	padding: 0.25em 20px 0.2em 0.5em;
}
[dir=rtl] .submenu ul li ul li a,
[dir=rtl] .submenu ul li ul li > span {
	float: right;
	padding: 0.25em 0.5em 0.2em 20px;
}

.submenu li:focus-within a {
	outline: none;
}

.dropdown-arrow {
	font-size: 85%;
	text-decoration: none;
}

.page-handler{
	list-style: none;
}

.page-handler img,
.page-handler a img,
#page-handler img,
#page-handler a img,
#page-handler span img {
	border: medium none;
	height: 1rem;
	width: 1rem;
}

.page-handler img {
	margin: 2px 5px 2px 0;
}
[dir=rtl] .page-handler img {
	margin: 2px 0 2px 5px;
}

li.m-new img {
	background: url('./../icon/light/page-add.svg') no-repeat;
}
li.m-categories img {
	background: url('./../icon/light/tag.svg') no-repeat;
}
li.m-attachments img {
	background: url('./../icon/light/attachment.svg') no-repeat;
}
li.m-upload img {
	background: url('./../icon/light/upload.svg') no-repeat;
}
li.m-clone img {
	background: url('./../icon/light/copy.svg') no-repeat;
}
li.m-edit img {
	background: url('./../icon/light/edit.svg') no-repeat;
}
li.m-languages img {
	background: url('./../icon/light/languages.svg') no-repeat;
}
li.m-referrers img {
	background: url('./../icon/light/link.svg') no-repeat;
}
li.m-revisions img {
	background: url('./../icon/light/revisions.svg') no-repeat;
}
li.m-remove img {
	background: url('./../icon/light/delete.svg') no-repeat;
}
li.m-purge img {
	background: url('./../icon/light/purge.svg') no-repeat;
}
li.m-rename img {
	background: url('./../icon/light/edit.svg') no-repeat;
}
li.m-properties img {
	background: url('./../icon/light/properties.svg') no-repeat;
}
li.m-permissions img {
	background: url('./../icon/light/permission.svg') no-repeat;
}
li.m-show img {
	background: url('./../icon/light/show.svg') no-repeat;
}
li.m-moderate img {
	background: url('./../icon/light/comment.svg') no-repeat;
}
li.m-print img {
	background: url('./../icon/light/print.svg') no-repeat;
}
li.m-xml img {
	background: url('./../icon/light/xml.svg') no-repeat;
}
li.m-word img {
	background: url('./../icon/light/document.svg') no-repeat;
}
li.m-source img {
	background: url('./../icon/light/text.svg') no-repeat;
}

@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) {
		li.m-new img {
			background: url('./../icon/dark/page-add.svg') no-repeat;
		}
		li.m-categories img {
			background: url('./../icon/dark/tag.svg') no-repeat;
		}
		li.m-attachments img {
			background: url('./../icon/dark/attachment.svg') no-repeat;
		}
		li.m-upload img {
			background: url('./../icon/dark/upload.svg') no-repeat;
		}
		li.m-clone img {
			background: url('./../icon/dark/copy.svg') no-repeat;
		}
		li.m-edit img {
			background: url('./../icon/dark/edit.svg') no-repeat;
		}
		li.m-languages img {
			background: url('./../icon/dark/languages.svg') no-repeat;
		}
		li.m-referrers img {
			background: url('./../icon/dark/link.svg') no-repeat;
		}
		li.m-revisions img {
			background: url('./../icon/dark/revisions.svg') no-repeat;
		}
		li.m-remove img {
			background: url('./../icon/dark/delete.svg') no-repeat;
		}
		li.m-purge img {
			background: url('./../icon/dark/purge.svg') no-repeat;
		}
		li.m-rename img {
			background: url('./../icon/dark/edit.svg') no-repeat;
		}
		li.m-properties img {
			background: url('./../icon/dark/properties.svg') no-repeat;
		}
		li.m-permissions img {
			background: url('./../icon/dark/permission.svg') no-repeat;
		}
		li.m-show img {
			background: url('./../icon/dark/show.svg') no-repeat;
		}
		li.m-moderate img {
			background: url('./../icon/dark/comment.svg') no-repeat;
		}
		li.m-print img {
			background: url('./../icon/dark/print.svg') no-repeat;
		}
		li.m-xml img {
			background: url('./../icon/dark/xml.svg') no-repeat;
		}
		li.m-word img {
			background: url('./../icon/dark/document.svg') no-repeat;
		}
		li.m-source img {
			background: url('./../icon/dark/text.svg') no-repeat;
		}
}}

:root[data-theme="dark"] {
	li.m-new img {
		background: url('./../icon/dark/page-add.svg') no-repeat;
	}
	li.m-categories img {
		background: url('./../icon/dark/tag.svg') no-repeat;
	}
	li.m-attachments img {
		background: url('./../icon/dark/attachment.svg') no-repeat;
	}
	li.m-upload img {
		background: url('./../icon/dark/upload.svg') no-repeat;
	}
	li.m-clone img {
		background: url('./../icon/dark/copy.svg') no-repeat;
	}
	li.m-edit img {
		background: url('./../icon/dark/edit.svg') no-repeat;
	}
	li.m-languages img {
		background: url('./../icon/dark/languages.svg') no-repeat;
	}
	li.m-referrers img {
		background: url('./../icon/dark/link.svg') no-repeat;
	}
	li.m-revisions img {
		background: url('./../icon/dark/revisions.svg') no-repeat;
	}
	li.m-remove img {
		background: url('./../icon/dark/delete.svg') no-repeat;
	}
	li.m-purge img {
		background: url('./../icon/dark/purge.svg') no-repeat;
	}
	li.m-rename img {
		background: url('./../icon/dark/edit.svg') no-repeat;
	}
	li.m-properties img {
		background: url('./../icon/dark/properties.svg') no-repeat;
	}
	li.m-permissions img {
		background: url('./../icon/dark/permission.svg') no-repeat;
	}
	li.m-show img {
		background: url('./../icon/dark/show.svg') no-repeat;
	}
	li.m-moderate img {
		background: url('./../icon/dark/comment.svg') no-repeat;
	}
	li.m-print img {
		background: url('./../icon/dark/print.svg') no-repeat;
	}
	li.m-xml img {
		background: url('./../icon/dark/xml.svg') no-repeat;
	}
	li.m-word img {
		background: url('./../icon/dark/document.svg') no-repeat;
	}
	li.m-source img {
		background: url('./../icon/dark/text.svg') no-repeat;
	}
}

.desc-rss-feed {
	float: right;
}
[dir=rtl] .desc-rss-feed {
	float: left;
}

.review1 img,
.review2 img,
.watch-off img,
.watch-on img {
	border: medium none;
	height: 1rem;
	width: 1rem;
}
.watch-off img {
	background: url('./../icon/light/watch-off.svg') no-repeat;
}
.watch-on img {
	background: url('./../icon/light/watch-on.svg') no-repeat;
}

@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) {
		.watch-off img {
			background: url('./../icon/dark/watch-off.svg') no-repeat;
		}
		.watch-on img {
			background: url('./../icon/dark/watch-on.svg') no-repeat;
		}
	}
}

:root[data-theme="dark"] {
	.watch-off img {
		background: url('./../icon/dark/watch-off.svg') no-repeat;
	}
	.watch-on img {
		background: url('./../icon/dark/watch-on.svg') no-repeat;
	}
}

.review1 img {
	background: url('./../icon/light/review1.svg') no-repeat;
}
.review2 img {
	background: url('./../icon/light/review2.svg') no-repeat;
}

.ico-sm {
	background-size: 1rem 1rem;
	height: 1rem;
	width: 1rem;
	display: inline-block;
}
.ico-md {
	background-size: 1.375rem 1.375rem;
	height: 1.375rem;
	width: 1.375rem;
	display: inline-block;
}
.ico-reload {
	background: url('./../icon/light/reload.svg') no-repeat;
}
.ico-menu {
	background: url('./../icon/light/menu.svg') no-repeat;
}

.ico-overflow-menu {
	background: url('./../icon/light/overflow-menu.svg') no-repeat;
}
.ico-addbookmark {
	background: url('./../icon/light/bookmark.svg') no-repeat;
}
.ico-removebookmark {
	background: url('./../icon/light/bookmark-remove.svg') no-repeat;
}
.ico-delete {
	background: url('./../icon/light/delete.svg') no-repeat;
}
.ico-edit {
	background: url('./../icon/light/edit.svg') no-repeat;
}
.ico-copy {
	background: url('./../icon/light/copy.svg') no-repeat;
}
.ico-source {
	background: url('./../icon/light/text.svg') no-repeat;
}
.ico-feed {
	background: url('./../icon/light/feed.svg') no-repeat;
}
.ico-info {
	background: url('./../icon/light/dialog-info.svg') no-repeat;
}
.ico-tick {
	background: url('./../icon/light/tick.svg') no-repeat;
}
.ico-warning {
	background: url('./../icon/light/warning.svg') no-repeat;
}
.ico-add-page {
	background: url('./../icon/light/page-add.svg') no-repeat;
}
.ico-page {
	background: url('./../icon/light/show.svg') no-repeat;
}
.ico-comment {
	background: url('./../icon/light/comment.svg') no-repeat;
}
.ico-attachment {
	background: url('./../icon/light/attachment.svg') no-repeat;
}
.ico-upload {
	background: url('./../icon/light/upload.svg') no-repeat;
}
.ico-unlocked {
	background: url('./../icon/light/unlocked.svg') no-repeat;
}
.ico-locked {
	background: url('./../icon/light/locked.svg') no-repeat;
}
.ico-search {
	background: url('./../icon/light/search.svg') no-repeat;
}
.ico-tag {
	background: url('./../icon/light/tag.svg') no-repeat;
}
.ico-languages {
	background: url('./../icon/light/languages.svg') no-repeat;
}
.ico-revisions {
	background: url('./../icon/light/revisions.svg') no-repeat;
}

@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) {
		.ico-reload {
			background: url('./../icon/light/reload.svg') no-repeat;
		}
		.ico-menu {
			background: url('./../icon/dark/menu.svg') no-repeat;
		}
		
		.ico-overflow-menu {
			background: url('./../icon/dark/overflow-menu.svg') no-repeat;
		}
		.ico-addbookmark {
			background: url('./../icon/dark/bookmark.svg') no-repeat;
		}
		.ico-removebookmark {
			background: url('./../icon/dark/bookmark-remove.svg') no-repeat;
		}
		.ico-delete {
			background: url('./../icon/dark/delete.svg') no-repeat;
		}
		.ico-edit {
			background: url('./../icon/dark/edit.svg') no-repeat;
		}
		.ico-copy {
			background: url('./../icon/dark/copy.svg') no-repeat;
		}
		.ico-source {
			background: url('./../icon/dark/text.svg') no-repeat;
		}
		.ico-feed {
			background: url('./../icon/dark/feed.svg') no-repeat;
		}
		.ico-info {
			background: url('./../icon/dark/dialog-info.svg') no-repeat;
		}
		.ico-tick {
			background: url('./../icon/dark/tick.svg') no-repeat;
		}
		.ico-warning {
			background: url('./../icon/dark/warning.svg') no-repeat;
		}
		.ico-add-page {
			background: url('./../icon/dark/page-add.svg') no-repeat;
		}
		.ico-page {
			background: url('./../icon/dark/show.svg') no-repeat;
		}
		.ico-comment {
			background: url('./../icon/dark/comment.svg') no-repeat;
		}
		.ico-attachment {
			background: url('./../icon/dark/attachment.svg') no-repeat;
		}
		.ico-upload {
			background: url('./../icon/dark/upload.svg') no-repeat;
		}
		.ico-unlocked {
			background: url('./../icon/dark/unlocked.svg') no-repeat;
		}
		.ico-locked {
			background: url('./../icon/dark/locked.svg') no-repeat;
		}
		.ico-search {
			background: url('./../icon/dark/search.svg') no-repeat;
		}
		.ico-tag {
			background: url('./../icon/dark/tag.svg') no-repeat;
		}
		.ico-languages {
			background: url('./../icon/dark/languages.svg') no-repeat;
		}
		.ico-revisions {
			background: url('./../icon/dark/revisions.svg') no-repeat;
		}
}}

:root[data-theme="dark"] {
	.ico-reload {
		background: url('./../icon/light/reload.svg') no-repeat;
	}
	.ico-menu {
		background: url('./../icon/dark/menu.svg') no-repeat;
	}
	
	.ico-overflow-menu {
		background: url('./../icon/dark/overflow-menu.svg') no-repeat;
	}
	.ico-addbookmark {
		background: url('./../icon/dark/bookmark.svg') no-repeat;
	}
	.ico-removebookmark {
		background: url('./../icon/dark/bookmark-remove.svg') no-repeat;
	}
	.ico-delete {
		background: url('./../icon/dark/delete.svg') no-repeat;
	}
	.ico-edit {
		background: url('./../icon/dark/edit.svg') no-repeat;
	}
	.ico-copy {
		background: url('./../icon/dark/copy.svg') no-repeat;
	}
	.ico-source {
		background: url('./../icon/dark/text.svg') no-repeat;
	}
	.ico-feed {
		background: url('./../icon/dark/feed.svg') no-repeat;
	}
	.ico-info {
		background: url('./../icon/dark/dialog-info.svg') no-repeat;
	}
	.ico-tick {
		background: url('./../icon/dark/tick.svg') no-repeat;
	}
	.ico-warning {
		background: url('./../icon/dark/warning.svg') no-repeat;
	}
	.ico-add-page {
		background: url('./../icon/dark/page-add.svg') no-repeat;
	}
	.ico-page {
		background: url('./../icon/dark/show.svg') no-repeat;
	}
	.ico-comment {
		background: url('./../icon/dark/comment.svg') no-repeat;
	}
	.ico-attachment {
		background: url('./../icon/dark/attachment.svg') no-repeat;
	}
	.ico-upload {
		background: url('./../icon/dark/upload.svg') no-repeat;
	}
	.ico-unlocked {
		background: url('./../icon/dark/unlocked.svg') no-repeat;
	}
	.ico-locked {
		background: url('./../icon/dark/locked.svg') no-repeat;
	}
	.ico-search {
		background: url('./../icon/dark/search.svg') no-repeat;
	}
	.ico-tag {
		background: url('./../icon/dark/tag.svg') no-repeat;
	}
	.ico-languages {
		background: url('./../icon/dark/languages.svg') no-repeat;
	}
	.ico-revisions {
		background: url('./../icon/dark/revisions.svg') no-repeat;
	}
}

.viewed {
	font-weight: 600;
}

.list-count {
	text-align: right; 
	width: 30px; 
	float: left; 
	padding-right: 10px;
}
.list-dt {
	padding-right: 10px;
}

/* most* actions ------------- */
.most-col-num td:nth-child(1)
{
	text-align: right; 
	width: 30px; 
	float: left; 
	padding-right: 10px;
}
.most-col-value td:nth-child(3)
{
	text-align: right; 
	width: 50px; 
	float: left; 
	padding-left: 10px;
}

/* navigation action ------------- */
.nav-chapter {
	background-color: rgb(241, 241, 241);
	padding: 10px;
}
.nav-chapter td:nth-child(1) {
	text-align: left;
	white-space: nowrap;
}
.nav-chapter td:nth-child(2) {
	text-align: center;
	width: 100%;
}
.nav-chapter td:nth-child(3) {
	text-align: right;
	white-space: nowrap;
}

/* upload action ------------- */
.upload-table {
	border-spacing: 3px; 
	border-collapse: separate;
}

.upload-table tr:hover {
	background: var(--ww-hover-primary);
}

.upload-table th {
	color: var(--ww-text-tertiary);
	font-weight: normal;
	text-align: left;
	width: 130px;
}

[dir=rtl] .upload-table th{
	text-align: right;
}

.upload-table td,
.upload-table th {
	vertical-align: top;
}

.upload-table td:nth-child(1){
	text-align: right;
	padding-right: 10px;
}

/* users action ------------- */
.user-profile {
	border-spacing: 3px; 
	border-collapse: separate;
}

.user-profile th {
	color: var(--ww-text-tertiary);
	font-weight: bold;
	width: 100px;
	white-space: nowrap;
	vertical-align: top;
	padding-right: 20px;
	text-align: left;
}
[dir=rtl] .user-profile th {
	padding: 0 0 0 20px;
	text-align: right;
}

.user-table {
	width: 100%; 
	border-spacing: 3px; 
	border-collapse: separate;
}

.user-table td:nth-child(n+2){
	text-align: center;
}

/* moderate handler ------------- */
table.moderate {
	width: 100%;
	border-spacing: 1px; 
	border-collapse: separate;
}
table.moderate td {
	padding: 4px;
}
.moderate td:nth-child(1) {
	vertical-align: middle;
	width: 10px;
}
.moderate td:nth-child(2) {
	padding-left: 5px;
}
.moderate td:nth-child(n+3) {
	text-align: center;
}
.moderate td:nth-child(4) {
	white-space: nowrap;
}

/* forum extension ******************************************* */

table.forum,
table.topics {
	border: 0 none;
	margin: 0;
	padding: 0;
	width: 100%;
	border-spacing: 3px;
	border-collapse: separate;
}
.forum col:nth-child(1) {
	width: 60%;
}
.forum td:nth-child(1),
.forum td:nth-child(4){
	vertical-align: top;
}
.forum td:nth-child(2),
.forum td:nth-child(3),
.topics td:nth-child(n+2) {
	text-align: center;
}
table.forum th,
table.topics th {
	font-size: var(--ww-font-size-xs);
	text-align: center;
	white-space: nowrap;
	padding: 5px;
}

table.forum td,
table.topics td {
	padding: 5px;
}
.topics tr.topic {
	background-color: var(--ww-bg-accent);
}

.forum tbody tr:hover,
.topics tr.topic:hover {
	background-color: var(--ww-hover-secondary);
}

#newtopic:target {
	background-color: var(--ww-a-target-bg);
	display: block;
}

.search-box-right {
	float: right;
}

form.add-topic {
	display: none;
}

/* categories tag ------------- */
.tag {
	background-color: var(--ww-bg-secondary);
	border: 1px solid lightgray;
	border-radius: 3px;
	display: inline-block;
	font-size: var(--ww-font-size-xs);
	line-height: 1;
	margin: 2px 2px 2px 0;
	padding: 0.4em 0.5em;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
}

/* visibility tag ------------- */
.acl-public,
a.acl-public {
	color: var(--ww-acl-public);
	border-color: var(--ww-acl-public);
}
.acl-registered,
a.acl-registered {
	color: var(--ww-acl-registered);
	border-color: var(--ww-acl-registered);
}
.acl-custom,
a.acl-custom {
	color: var(--ww-acl-custom);
	border-color: var(--ww-acl-custom);
}
.acl-private,
a.acl-private {
	color: var(--ww-acl-private);
	border-color: var(--ww-acl-private);
}

/* system message ------------- */
.sys-message {
	font-family: var(--ww-font-monospace);
	background: rgba(51, 51, 51, 0.9) none repeat scroll 0 0;
	bottom: 0;
	color: var(--ww-border);
	left: 0;
	position: fixed;
	text-align: center;
	width: 100%;
	z-index: 5000;
	padding: 20px 0 20px 20px;
}

@keyframes marquee {
	0%   { text-indent: 800px; }
	100% { text-indent: -800px; }
}
.marquee{
	animation: marquee 50s linear infinite;
	/* font-weight: 800; */
	white-space: nowrap;
	box-sizing: border-box;
	margin: 0 auto;
	overflow: hidden;
}

.marquee:hover {
	animation-play-state: paused;
}

/* noscript ------------- */
.errorbox-js {
	border: 1px solid red;
	font-family: var(--ww-font-monospace);
	margin: 0.5em 0;
	padding: 1em 0.5em;
	text-align: center;
}


/* category handles ------------- */
.set-category {
	border: 1px solid #eee;
	max-height: 400px;
	padding: 10px 0;
	margin-bottom: 27px;
	overflow: auto;
	width: auto;
}

.set-category legend {
	color: var(--ww-text-tertiary);
}

.category-browser {
	width: 100%;
}

/* TODO: vertical-align: middle; for input and label */
.category-browser td {
	vertical-align: top;
}

.item-multiplier-x,
.item-multiplier-count {
	color: #767676;
}

.hide-radio input[type="radio"] {
	visibility: hidden;
	/* display: none; */
}

.hide-radio li:hover input[type="radio"], 
.hide-radio li input[type="radio"]:checked
{
	visibility: visible;
}

/* authors action ------------- */
.license-CC-BY {
	background-image:	url('../../../image/cc-by.svg');
	background-repeat:	no-repeat;
	background-position:	0;
	height:	22px;
	width:	22px;
}
.license-CC-ZERO {
	background-image:	url('../../../image/cc-zero.svg');
	background-repeat:	no-repeat;
	background-position:	0;
	height:	22px;
	width:	22px;
}
.license-PD {
	background-image:	url('../../../image/cc-pd.svg');
	background-repeat:	no-repeat;
	background-position:	0;
	height:	22px;
	width:	22px;
}
.license-CC-BY-SA {
	background-image:	url('../../../image/cc-by.svg'),
						url('../../../image/cc-sa.svg');
	background-repeat:	no-repeat,
						no-repeat;
	background-position:	0,
							22px;
	height:	22px;
	width:	44px;
}
.license-CC-BY-ND {
	background-image:	url('../../../image/cc-by.svg'),
						url('../../../image/cc-nd.svg');
	background-repeat:	no-repeat,
						no-repeat;
	background-position:	0,
							22px;
	height:	22px;
	width:	44px;
}
.license-CC-BY-NC {
	background-image:	url('../../../image/cc-by.svg'),
						url('../../../image/cc-nc.svg');
	background-repeat:	no-repeat,
						no-repeat;
	background-position:	0,
							22px;
	height:	22px;
	width:	44px;
}
.license-CC-BY-NC-SA {
	background-image:	url('../../../image/cc-by.svg'),
						url('../../../image/cc-nc.svg'),
						url('../../../image/cc-sa.svg');
	background-repeat:	no-repeat,
						no-repeat,
						no-repeat;
	background-position:	0,
							22px,
							44px;
	height:	22px;
	width:	66px;
}
.license-CC-BY-NC-ND {
	background-image:	url('../../../image/cc-by.svg'),
						url('../../../image/cc-nc.svg'),
						url('../../../image/cc-nd.svg');
	background-repeat:	no-repeat,
						no-repeat,
						no-repeat;
	background-position:	0,
							22px,
							44px;
	height:	22px;
	width:	66px;
}

span.license {
	margin-left: 5px;
}

/* diff handler ------------- */

table.diff {
	width: 100%;
}

.diffmeta-a {
	width: 50%;
}
.diffmeta-b {
	width: 50%;
}

table.diff td {
	vertical-align: top;
}

.diffdown {
	position: relative;
	margin-right: 20px;
	z-index: 100;
}

.diffdown-content {
	display: none;
	position: absolute;
	background-color: var(--ww-bg-accent);
	min-width: 160px;
	box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2);
}

.diffdown-content a {
	color: black;
	padding: 2px 6px;
	text-decoration: none;
	display: block;
}

.diffdown-content a:hover {background-color: var(--ww-hover-primary);}

.diffdown-content span {
	display: inline-block; 
	width: 40px;
}

.diffdown-content .active,
.diffdown-content .active:hover {
	background-color: #4383e8;
	color: white;
}

.diffdown:hover .diffdown-content {
	display: block;
}

/* Toolbar Customizer Modal */
#we-toolbar-modal {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.75);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 10000;
}

#we-toolbar-modal > div {
	background: var(--ww-bg-secondary, #ffffff);
	width: 680px;
	max-width: 96%;
	max-height: 92vh;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
}

#we-toolbar-modal header {
	padding: 16px 20px;
	background: var(--ww-bg-accent, #f8f9fa);
	border-bottom: 1px solid #ddd;
}

#we-toolbar-modal h3 {
	margin: 0;
	font-size: 1.25rem;
}

#we-toolbar-modal .modal-description {
	margin: 4px 0 0;
	color: var(--ww-text-tertiary, #666);
}

#we-modal-content {
	padding: 20px;
	max-height: 62vh;
	overflow: auto;
}

#we-toolbar-modal footer {
	padding: 12px 20px;
	background: var(--ww-bg-accent, #f8f9fa);
	border-top: 1px solid #ddd;
	text-align: right;
}

#we-toolbar-modal button {
	padding: 8px 16px;
	margin-left: 8px;
	border: 1px solid #ccc;
	border-radius: 4px;
	cursor: pointer;
}

#we-toolbar-modal .we-modal-save {
	background: #007acc;
	color: white;
	border-color: #007acc;
}

