@charset "UTF-8";

/* colors */
:root {
	--color-base-text: #181621;
	--color-base-light: #f5f3f3;
	--color-base-nav: #0062be;
	--color-base-aside: #22303d;
	--color-base-alert: #fa8052;
	--color-base-good: #5eaabf;
	--color-base-bad: #b0425b;
	--color-base-grey: #e3e3e3;
	--color-base-grey-transparent: #d9d9d9bb;
	--color-base-stared: #fff6da;
	--color-base-unread: #fff3ed;
	--color-base-hover: #fff;

	--color-text-light: var(--color-base-light);
	--color-text-light-darker: color(from var(--color-base-light) hsl h s calc(l - 40%));
	--color-text-dark: var(--color-base-text);
	--color-text-nav: color(from var(--color-base-nav) hsl h s calc(l - 10%));
	--color-text-aside: var(--color-base-aside);
	--color-text-alert: var(--color-base-alert);
	--color-text-good: var(--color-base-good);
	--color-text-bad: var(--color-base-bad);
	--color-text-bad-lighter: color(from var(--color-base-bad) hsl h s calc(l + 10%));

	--color-text-shadow-light: var(--color-base-light);
	--color-box-shadow-light: color(from var(--color-base-light) hsl h s calc(l - 10%));

	--color-border-light: var(--color-base-light);
	--color-border-light-darker: color(from var(--color-base-light) hsl h s calc(l - 10%));
	--color-border-grey: var(--color-base-grey);
	--color-border-nav: color(from var(--color-base-nav) hsl h s calc(l - 10%));
	--color-border-bad: var(--color-base-bad);

	--color-background-light: var(--color-base-light);
	--color-background-light-darker: color(from var(--color-base-light) hsl h s calc(l - 10%));
	--color-background-light-darker-transparent: var(--color-base-grey-transparent);
	--color-background-dark: var(--color-base-text);
	--color-background-nav: var(--color-base-nav);
	--color-background-nav-darker: color(from var(--color-base-nav) hsl h s calc(l - 10%));
	--color-background-aside: var(--color-base-aside);
	--color-background-alert: var(--color-base-alert);
	--color-background-alert-darker: color(from var(--color-base-alert) hsl h s calc(l - 10%));
	--color-background-good: var(--color-base-good);
	--color-background-bad: color(from var(--color-base-bad) hsl h s calc(l + 10%));
	--color-background-stared: var(--color-base-stared);
	--color-background-unread: var(--color-base-unread);
	--color-background-hover: var(--color-base-hover);

	--frss-scrollbar-handle: rgba(0, 0, 0, 0.1);
	--frss-scrollbar-handle-hover: rgba(0, 0, 0, 0.4);
	--frss-scrollbar-track: rgba(0, 0, 0, 0.05);
	--frss-scrollbar-track-hover: rgba(0, 0, 0, 0.1);

	--min-height-input: 25px;
	--margin-top-input: 4px;
	--border-input-default: 2px solid var(--color-border-grey);
	--min-height-nav-list: 2.5em;
	--line-height-nav-list: 2.5;
	--padding-dropdown: 0 22px;
	--font-size-dropdown: 0.8rem;
	--line-height-dropdown: 2.5;
	--width-aside: 231px;
}

/* Compatibility: CSS Color Module Level 4, Relative Color */

@supports not (color: color(from white hsl h s calc(l - 10%))) {
	:root {
		--color-text-light-darker: #988484;
		--color-text-nav: #00488b;
		--color-text-bad-lighter: #c46178;
		--color-box-shadow-light: #ded7d7;
		--color-border-light-darker: #ded7d7;
		--color-border-nav: #00488b;
		--color-background-light-darker: #ded7d7;
		--color-background-nav-darker: #00488b;
		--color-background-alert-darker: #f95c20;
		--color-background-bad: #c46178;
	}
}

html,
body {
	color: var(--color-text-dark);
	font-family: Helvetica, Arial, sans-serif;
}

body:not(.normal):not(.reader) nav.configure a.dropdown-toggle,
li.tree-folder span.title {
	margin-left: 0.25rem;
}

:root.file_query {
	.nav-pagination {
		margin-top: 6rem;
	}

	ul.pagination {
		a {
			padding: 0 0.2rem 0 0.2rem;
		}
	}

	.view-rss > .icon {
		filter: brightness(0);
	}

	main > h1:first-child {
		margin-top: 2rem;
	}
}

#slider-content #feed_update fieldset .form-group:last-child {
	margin-bottom: 0.4rem;
}

.configure.open-slider > .icon {
	filter: brightness(0.4);
}

a {
	color: var(--color-text-nav);
	outline: none;

	&#btn-subscription {
		width: 76%;
	}

	&#btn-add {
		width: 5%;
	}
}

img {
	&.icon:hover {
		background: none;
	}
}

sup {
	top: -0.3em;
}

legend {
	margin: 20px 0 5px;
	padding: 5px 20px;
	background-color: var(--color-background-aside);
	display: inline-block;
	width: auto;
	color: var(--color-text-light);
	font-size: 1.4em;
	clear: both;
}

label {
	min-height: var(--min-height-input);
}

:is(textarea, input, select) {
	min-height: var(--min-height-input);
	margin-top: var(--margin-top-input);
	background-color: var(--color-background-light);
	border: var(--border-input-default);

	&:focus {
		border: 2px solid var(--color-background-dark);
		outline: none;
	}

	&:user-invalid {
		padding-left: 5px;
		color: var(--color-text-bad);
		border-left-color: var(--color-border-bad);
		border-left-width: 5px;
		box-shadow: none;
	}

	&:disabled {
		background-color: var(--color-background-light);
	}
}

option {
	padding: 0 .5em;
}

table {
	border-collapse: collapse;
}

td,
th {
	border: 1px solid var(--color-border-light-darker);
}

th {
	background-color: var(--color-background-light);
}

form {
	td,
	th {
		font-weight: normal;
		text-align: center;
	}
}

.title.error::before {
	display: inline-block;
	padding-right: 7px;
	width: 16px;
	content: url(../Swage/icons/error.svg);
}

.form-group {
	padding: 5px;
	border: 1px solid transparent;

	&:hover {
		background-color: var(--color-background-light);
		border: 1px solid var(--color-border-light);
	}

	&.form-actions {
		margin: 15px 0 25px;
		padding: 5px 0;
		background-color: var(--color-background-light-darker-transparent);
		border-top: 3px solid var(--color-border-light-darker);

		.btn, a {
			margin-left: 1rem;
		}
	}

	.group-name {
		padding: 10px 0;
		text-align: right;
	}

	.group-controls {
		min-height: 25px;
		padding: 5px 0;

		.control {
			line-height: 2.0;
		}
	}
}

.form-group::after {
	display: block;
	clear: both;
}

.stick {
	select {
		margin-top: 0;
	}

	&.configure-feeds {
		margin: 0.5rem 0 1rem 0.3rem;
		width: var(--width-aside);
	}
}

.btn {
	margin: 0;
	padding: 0.25rem 0.5rem;
	background-color: var(--color-background-nav);
	color: var(--color-text-light);
	font-size: 0.9rem;
	border: none;
	min-height: 25px;
	min-width: 15px;
	vertical-align: middle;
	line-height: 1.5;
	text-decoration: none;

	&.active,
	&:active,
	&:hover {
		background-color: var(--color-background-nav-darker);
		text-decoration: none;
	}

	.icon {
		filter: brightness(3);
	}
}

.btn-important, .btn-attention {
	font-weight: normal;
	background-color: var(--color-background-alert);
	color: var(--color-text-light);

	&:hover,
	:active {
		background-color: var(--color-background-alert-darker) !important;
	}
}

.manage-list {
	.configure {
		.icon {
			filter: brightness(0.4);
			vertical-align: sub;
		}

		&:hover {
			filter: invert(56%) sepia(87%) saturate(1185%) hue-rotate(327deg) brightness(104%) contrast(96%);
		}
	}
}

.switch.active {
	background-color: var(--color-background-nav);

	&:hover {
		background-image: url('./icons/disabled-light.svg');
	}
}

.nav-list {
	font-size: 0.9rem;

	.item {
		min-height: var(--min-height-nav-list);
		line-height: var(--line-height-nav-list);

		.nav-header {
			min-height: var(--min-height-nav-list);
			line-height: var(--line-height-nav-list);
			padding: 0 1rem;
			font-weight: bold;
			background-color: var(--color-background-aside);
			color: var(--color-text-light);
			cursor: default;
		}

		a:hover,
		.as-link:hover {
			background-color: var(--color-background-nav-darker);
			color: var(--color-text-light);
		}

		&.active {
			background: var(--color-background-nav-darker);
			color: var(--color-text-light);

			a,
			.as-link {
				color: var(--color-text-light);
			}
		}

		> a,
		.as-link {
			padding: 0 1.5rem;
		}

		.icon {
			filter: brightness(3);
		}
	}

	.nav-form {
		padding: 3px;
		text-align: center;
	}

	a:hover,
	.as-link:hover {
		text-decoration: none;
	}
}

.dropdown-menu {
	padding: 0.5rem 0 1rem 0;
	font-size: var(--font-size-dropdown);
	text-align: left;
	border: none;
	background-color: var(--color-background-nav-darker);

	.item > a,
	.item .as-link,
	.item > span {
		width: 96% !important;
	}

	.dropdown-header {
		cursor: default;
		padding: 0.5rem 10px 0.5rem 10px;
		font-weight: bold;
		color: var(--color-text-light);

		a,
		.as-link {
			padding: 0.1rem 0.3rem 0.3rem 0.3rem;
			position: absolute;
			right: 5px;
			margin-top: -3px;

			&:hover {
				background-color: var(--color-background-nav);
			}
		}
	}

	.dropdown-section {
		.dropdown-section-title {
			cursor: default;
			padding: 0.25rem 0.5rem 0.125rem 0.25rem;
			font-weight: bold;
			color: var(--color-text-light);
		}

		.item {
			a,
			.as-link {
				padding: var(--padding-dropdown);

				&:hover {
					background-color: var(--color-background-nav);
				}
			}
		}
	}

	& > .item {
		padding: 0 0 0 0.5rem;
	}

	.item {
		color: var(--color-text-light);
		font-size: var(--font-size-dropdown);
		line-height: var(--line-height-dropdown);

		> :is(a, .as-link, span), :is(button) {
			padding: var(--padding-dropdown);
			color: var(--color-text-light);
			font-size: var(--font-size-dropdown);
			line-height: var(--line-height-dropdown);
		}

		> a {
			min-width: initial;
			white-space: nowrap;
		}

		> :is(a):hover, :is(button):hover {
			background-color: var(--color-background-nav);
			color: var(--color-text-light);
		}
	}

	& > .item[aria-checked="true"] > a::before {
		font-weight: bold;
		margin: 0 0 0 -14px;
	}

	.help a {
		color: var(--color-text-light);
		text-decoration: underline;
		text-decoration-style: dotted;

		&:hover {
			text-decoration-style: solid;
		}
	}

	.input {
		select,
		input {
			margin: 0 auto 5px;
			padding: 2px 5px;
		}
	}
}

#dropdown-search-wrapper .dropdown-menu {
	padding-top: 1rem;
	padding-bottom: 0.25rem;

	a {
		padding: 0;
	}

	.stick.search {
		width: 100%;

		input[type="search"] {
			width: 100%;
			border: 0;
		}

		.btn:hover {
			filter: brightness(0.9);
		}
	}
}

.item ~ .dropdown-header,
.item.separator {
	border-top-color: var(--color-border-light-darker);
	cursor: default;
}

li.item.separator {
	padding-top: 0.4rem;
}

.alert {
	margin: 0.25rem auto;
	background-color: var(--color-background-light);
	color: var(--color-text-light-darker);
	font-size: 0.9em;
	border: none;
	text-shadow: 0 0 1px var(--color-text-shadow-light);

	> a {
		color: inherit;
		text-decoration: underline;
	}
}

.alert-head {
	font-size: 1.15em;
}

.alert-info,
.alert-warn,
.alert-success,
.alert-error {
	border: none;
}

.alert-warn {
	background-color: var(--color-background-light);
	color: var(--color-text-alert);
}

.alert-info {
	background-color: var(--color-background-light);
	color: var(--color-text);
}

.alert-success {
	background-color: var(--color-background-light);
	color: var(--color-text-good);
}

.alert-error {
	background-color: var(--color-background-light);
	color: var(--color-text-bad);
}

.pagination {
	background: var(--color-background-light-darker);
	color: var(--color_text);

	.item a {
		color: var(--color_text);
	}
}

.content {
	padding: 20px 10px;

	hr {
		margin: 30px 10px;
		background: var(--color-background-light-darker);
		height: 1px;
		border: 0;
		box-shadow: 0 2px 5px var(--color-box-shadow-light);
	}

	pre {
		background-color: var(--color-background-dark);
		color: var(--color-text-light);

		code {
			background: transparent;
			color: var(--color-text-light);
			border: none;
		}
	}

	code {
		background-color: var(--color-background-light);
		color: var(--color-text-bad);
		border-color: var(--color-border-light);
	}

	blockquote {
		margin: 0;
		padding: 5px 20px;
		background-color: var(--color-background-light);
		display: block;
		color: var(--color-text-light-darker);
		border-top: 1px solid var(--color-border-light-darker);
		border-bottom: 1px solid var(--color-border-light-darker);

		p {
			margin: 0;
		}
	}

	> h1.title > a {
		color: var(--color_text);
	}
}

main.post .drop-section li.item.feed a .icon {
	filter: brightness(0.4);
}

main.post .drop-section li.item.feed a:hover .icon {
	filter: invert(56%) sepia(87%) saturate(1185%) hue-rotate(327deg) brightness(104%) contrast(96%);
}

.box {
	border: 1px solid var(--color-border-light-darker);

	.box-title {
		margin: 0;
		background-color: var(--color-background-aside);
		color: var(--color-text-light);
		border-bottom: 1px solid var(--color-border-light-darker);

		a {
			color: var(--color-text-light);
		}

		.configure {
			margin-right: 4px;

			.icon {
				&:hover {
					filter: invert(56%) sepia(87%) saturate(1185%) hue-rotate(327deg) brightness(104%) contrast(96%);
				}
			}
		}
	}

	.box-content {
		max-height: 260px;

		.item {
			padding: 0 10px;
			font-size: 0.9rem;

			.configure {
				.icon {
					vertical-align: middle;
					filter: brightness(0.4);

					&:hover {
						filter: invert(56%) sepia(87%) saturate(1185%) hue-rotate(327deg) brightness(104%) contrast(96%);
					}
				}
			}
		}
	}

	&.category {
		.box-title .title {
			font-weight: normal;
			text-decoration: none;
			text-align: left;
		}

		&:not([data-unread="0"]) .box-title {
			background-color: var(--color-background-nav);

			&:active {
				background: var(--color-background-nav-darker);
			}

			.title {
				font-weight: bold;
				color: var(--color-text-light);
			}
		}

		.title:not([data-unread="0"])::after {
			background: none;
			border: 0;
			box-shadow: none;
			position: absolute;
			top: 5px;
			right: 10px;
			font-weight: bold;
			text-shadow: none;
		}
	}

	&.visible-semi {
		border-style: solid;
	}
}

.tree {
	margin: 10px 0;
}

.aside_feed .tree-folder-title {
	padding: 0.3rem 0.75rem;
	background-color: var(--color-background-aside);
	font-size: 1rem;
	position: relative;

	.title {
		background: inherit;
		color: var(--color-text-light);

		&:hover {
			text-decoration: none;
		}
	}
}

.tree-folder-items {
	background-color: var(--color-background-aside);

	> .item {
		font-size: 0.8rem;

		&.active {
			background-color: var(--color-background-nav-darker);
		}

		> a {
			text-decoration: none;
			color: var(--color-text-light);
		}
	}
}

.item.search {
	display: none;
}

.header {
	height: auto;
	position: sticky;
	top: 0;
	z-index: 96; /* above .nav_menu (90) and .item.configure (95) */

	> .item {
		padding: 0;
		vertical-align: middle;

		&.title {
			position: absolute;
			text-align: center;

			a {
				padding: 0 1rem;

				&:hover {
					.logo {
						filter: grayscale(100%) brightness(100) opacity(90%);
					}
				}
			}

			.logo {
				display: inline-block;
				height: 26px;
				vertical-align: top;
				position: relative;
				top: 5px;
				filter: grayscale(100%) brightness(100);
			}
		}
	}

	.item.configure {
		position: absolute;
		top: 0;
		right: 0;
		z-index: 95;
		width: 35px;
		text-align: center;
		line-height: 0.8;

		> .icon {
			filter: brightness(3);
			margin-right: 5px;
			margin-top: 3px;
		}

		.dropdown .dropdown-menu {
			max-height: calc(100vh - 45px);
			overflow: auto;

			.icon {
				filter: brightness(3);
			}
		}
	}
}

.aside {
	background-color: var(--color-background-aside);
	padding-top: 2.5rem;

	&.aside_feed {
		.tree {
			margin: 0 0 50px;
		}

		.tree-folder {
			.tree-folder-title,
			.item.feed {
				&:hover {
					background-color: var(--color-background-nav-darker);
				}
			}
		}

		.nav-form {
			input,
			select {
				width: 140px;
			}

			.dropdown {
				.dropdown-menu {
					right: -20px;
				}

				.dropdown-menu::after {
					right: 33px;
				}
			}
		}
	}
}

#aside_feed > ul > li:first-child {
	margin-top: 0.4rem;
}

.aside_feed {
	.category .title:not([data-unread="0"])::after {
		margin: 0.5rem 0 0 0;
		background-color: var(--color-background-nav-darker);
		color: var(--color-text-light);
	}

	.feed .item-title:not([data-unread="0"])::after {
		background-color: var(--color-background-nav);
		color: var(--color-text-light);
	}

	.tree-folder-items .dropdown-menu::after {
		left: 2px;
	}

	.about {
		margin: 0.2rem 0 1rem 0;
		display: block;
		font-size: 0.8em;
		text-align: center;
		font-style: italic;
	}
}

.toggle_aside {
	margin-bottom: 1rem;
}

.aside.visible .toggle_aside {
	border-bottom: 1px solid var(--frss-border-color);
}

.reader {
	.aside {
		.toggle_aside {
			background-color: var(--color-background-aside);

			.icon {
				filter: brightness(3);
			}

			&:hover {
				background-color: var(--color-background-nav);
			}
		}
	}
}

.post {
	font-size: 0.9em;

	input {
		&.long {
			height: 33px;
			margin-top: 0px;
		}
	}
}

#global {
	height: 100vh;
}

#new-article {
	width: var(--width-aside);
	font-size: 1em;
	background-color: var(--color-background-nav);
	text-align: center;
	position: fixed;
	bottom: 48px;
	z-index: 900;
	left: 0;
	line-height: 1.5;

	> a {
		padding: 1rem;
		line-height: 1.5;
		font-weight: bold;
		color: var(--color-text-light);

		&:hover {
			text-decoration: none;
			background-color: var(--color-background-nav-darker);
		}
	}
}

.transition {
	padding: 0 10px;
	font-weight: bold;
	line-height: 3;
	text-align: center;

	.name {
		display: none;
	}
}

.nav {
	a,
	.as-link {
		color: var(--color-text-light);
	}
}


.nav_menu {
	padding: 0 0 0 2rem;
	width: 100%;
	box-sizing: border-box;
	font-size: 0;
	background-color: var(--color-background-nav);
	text-align: left;
	position: sticky;
	top: 0;
	z-index: 90;

	.item.search {
		display: inline-block;
		position: absolute;
		right: 40px;

		input {
			border-width: 0;
			line-height: 1.95;
		}
	}

	#nav_menu_toggle_aside {
		left: 0;
	}

	#toggle-unread,
	#toggle-starred {
		.icon {
			filter: brightness(1);
		}
	}

	.btn {
		box-sizing: content-box;
	}
}

.flux {
	padding-right: 10px;
	background-color: var(--color-background-light);

	&::after {
		margin: 0 auto;
		display: block;
		width: 90%;
		border-top: 1px solid var(--color-border-light-darker);
		clear: both;
	}

	.flux_header:hover {
		background-color: var(--color-background-hover);

		&:not(.current):hover .item .title {
			background-color: var(--color-background-hover);
		}
	}

	&.current {
		border-left: 2px solid var(--color-background-alert-darker);

		.flux_header {
			background-color: unset;
			margin-left: -2px; /* Compensate increased border-left-width */
		}

		.flux_header:hover {
			background: linear-gradient(to right, transparent 0, transparent 2px, var(--color-background-hover) 2px);
		}
	}

	&.favorite:not(.current) {
		background-color: var(--color-background-stared);

		&:hover .item .title {
			background-color: var(--color-background-stared);
		}
	}

	&.not_read:not(.current) {
		background-color: var(--color-background-unread);

		&:hover .item .title {
			background-color: var(--color-background-unread);
		}
	}

	.flux_header .date,
	.flux_content .bottom .date {
		color: var(--color-text-light-darker);
	}

	.bottom {
		font-size: 0.8rem;
		text-align: center;
	}

	label {
		color: var(--color-text-light);
		cursor: pointer;
	}
}

.flux_header {
	font-size: 0.8rem;
	cursor: pointer;

	.title {
		font-size: 0.9rem;
	}
}

.notification {
	padding: 10px 0;
	width: var(--width-aside);
	height: auto;
	color: var(--color-text-light-darker);
	font-size: 1em;
	border: none;
	background-color: var(--color-background-light-darker);
	text-align: center;
	font-weight: bold;
	vertical-align: middle;
	position: fixed;
	bottom: 48px;
	left: 0;
	top: auto;

	&.good,
	&.bad {
		color: var(--color-text-light);
	}

	&.good {
		background-color: var(--color-background-good);

		a.close:hover {
			background-color: var(--color-background-good);
		}
	}

	&.bad {
		background-color: var(--color-background-bad);

		a.close:hover {
			background-color: var(--color-background-bad);
		}
	}

	a.close {
		display: none;
	}
}

#bigMarkAsRead.big {
	text-align: center;
	text-decoration: none;
	background: var(--color-background-light-darker);

	&:hover {
		background-color: var(--color-background-aside);
		color: var(--color-text-light);
	}
}

#nav_entries {
	background-color: var(--color-background-aside);
}

.stat {
	margin: 10px 0 20px;

	th,
	td,
	tr {
		border: none;
	}

	> table {
		td,
		th {
			border-bottom: 1px solid var(--color-border-light-darker);
		}
	}
}

#overlay {
	z-index: 100;

	.close .icon {
		filter: brightness(3);
	}
}

#panel {
	z-index: 100;

	.nav_menu {
		position: relative;
	}
}

body:not(:has(nav#aside_feed)) {
	#global {
		height: 0;
	}

	.logo {
		right: 30px;
	}

	.header {
		background-color: var(--color-background-nav);
		height: 2.4rem;
		position: relative;

		> .item {
			&.configure {
				width: auto;
				position: absolute;
				white-space: nowrap;

				.icon {
					filter: brightness(3);
				}
			}
		}
	}
}

.controller_error div.alert-error {
	margin-top: 3rem;
}

body.register {
	form div:last-child > a {
		float: right;
		position: relative;
		right: 0.2rem;
	}
}

a.signin {
	color: var(--color-text-light);
	font-size: 70%;

	position: absolute;
	top: 0.5rem;
	right: 1.8rem;
	text-wrap: nowrap;
	transform: scale(1.5);

	.icon {
		filter: brightness(3);
	}
}

.log-item {
	&.log-error {
		background-color: var(--color-background-bad);
		color: var(--color-text-light);
	}

	&.log-warning {
		background-color: var(--color-background-alert);
		color: var(--color-text-light);
	}

	&.log-debug {
		background: var(--color-background-dark);
		color: var(--color-text-light);
	}
}

body.reader {
	#nav_menu_toggle_aside {
		margin-top: -2px;
		height: 32px;
	}

	nav.aside_feed > a.toggle_aside {
		text-align: center;
	}

	.aside.visible {
		padding-top: 0;
	}
}

main.global {
	margin: 1rem;
}

.dropdown .dropdown-section:last-child > ul:first-child {
	margin-top: 0.4rem;
}

.labels {
	span.emptyLabels {
		color: white;
		margin-left: 1rem;
	}

	ul.dropdown-menu-scrollable > li:nth-child(3) {
		margin-top: 0.5rem;
	}
}

@media (max-width: 840px) {
	body:not(.formLogin, .register) {
		.header {
			.item.title {
				display: none;
			}
		}
	}

	body.normal, body.reader, body.global {
		.item.configure {
			right: 76px;
		}

		a.signin {
			right: 0;
		}
	}

	.horizontal-list {
		.dropdown {
			position: inherit !important;
		}
	}

	#nav_menu_sort,
	#nav_menu_sort .dropdown,
	#toggle-order {
		position: fixed;
		right: 0;
	}

	#nav_menu_sort .dropdown-menu {
		position: absolute;
		right: 0;
	}

	#nav_menu_sort .dropdown-menu,
	.nav_menu_read_all .dropdown-menu,
	#dropdown-search-wrapper .dropdown-menu,
	#nav_menu_queries .dropdown-menu {
		top: 4.4rem;
	}

	#nav_menu_sort .dropdown-menu,
	.nav_menu_read_all .dropdown-menu,
	#nav_menu_actions .dropdown-menu {
		position: fixed;
	}

	body:not(.normal):not(.reader):not(.add) {
		nav.configure a.dropdown-toggle {
			position: fixed;
			top: 0;
		}

		&:not(.global) {
			.nav_menu {
				height: 2.2rem;
			}

			nav.configure a.dropdown-toggle {
				right: 0;
			}
		}

		&.global {
			nav.configure a.dropdown-toggle {
				right: 2.4rem;
			}
		}
	}

	body.repartition {
		.nav_menu {
			position: fixed;
			height: 3rem !important;
		}

		main.post {
			margin-top: 4rem;
		}

		.nav_menu .btn {
			display: block;
		}

		.nav_menu #feed_select {
			padding: 0;
			display: block;
			margin-left: 5rem;
			margin-bottom: 0.5rem;
		}
	}

	.form-group .group-name {
		padding-bottom: 0;
		text-align: left;
	}

	.dropdown {
		position: relative;

		.dropdown-menu {
			width: auto;
		}
	}

	#new-article {
		margin-top: 2rem;
		width: 100%;
	}

	.header {
		display: table;

		.item {
			padding: 0;
		}

		.item.configure {
			padding: 0;

			> .icon {
				margin-top: 5px;
			}
		}
	}

	button.read_all.btn {
		display: none;
	}

	.flux .item.manage,
	.flux_header .item.website {
		width: 35px;
		text-align: center;
	}

	.aside {
		padding: 0;
		width: 0;

		.toggle_aside {
			background-color: var(--color-background-aside);

			&:hover {
				background-color: var(--color-background-nav);
			}

			.icon {
				filter: brightness(3);
			}
		}

		&.aside_feed .configure-feeds {
			display: flex;
			margin-top: 0;
			margin-left: auto;
			margin-right: auto;
		}

		&:target {
			width: 78% !important;
			z-index: 1000;
		}
	}

	#slider {
		.toggle_aside {
			background-color: var(--color-background-aside);

			&:hover {
				background-color: var(--color-background-nav);
			}

			.icon {
				filter: brightness(3);
			}
		}
	}

	.nav_menu {
		height: 71px;

		.btn {
			margin: 0;
		}

		.stick,
		.group {
			margin: 0;

			.btn {
				margin: 0;
			}
		}

		.item.search {
			top: 3px;
			margin-left: 77px;
			width: calc(100% - 4 * 38px);
			position: relative;

			form {
				display: block;
			}

			input {
				width: 100%;
			}
		}

		#nav_menu_toggle_aside {
			position: absolute;
		}
	}

	#overlay .close,
	.dropdown-menu .toggle_aside {
		background-color: var(--color-background-aside);
		display: block;
		height: 50px;
		line-height: 3.5;
		text-align: center;
		padding-right: 10px;

		&:hover {
			background-color: var(--color-background-nav);
		}
	}

	.dropdown-target:target ~ .dropdown-toggle::after,
	.dropdown-target:target ~ .dropdown-toggle.btn::after {
		display: none;
	}

	.share .dropdown-menu {
		right: 3%;
		left: auto;
	}

	.transition .name {
		font-size: 1.1rem;
	}

	.notification {
		width: 100%;

		a.close {
			background: transparent;
			display: block;
			left: 0;

			&:hover {
				opacity: 0.5;
			}

			.icon {
				display: none;
			}
		}
	}

	#nav_entries {
		width: 100% !important;
	}

	.post {
		padding-left: 15px;
		padding-right: 15px;
	}

	div#stream {
		margin-top: 0px;
	}

	a.btn.toggle_aside {
		position: absolute;
		top: 0;
	}

	form.mark-read-menu,
	a#actualize,
	div#nav_menu_actions,
	div#nav_menu_views {
		position: absolute;
	}

	form.mark-read-menu {
		right: 38px;
		top: 0;
	}

	a#actualize {
		right: 0;
		top: 0;
	}

	a#toggle-order,
	div#nav_menu_actions,
	div#nav_menu_views {
		top: 36px;
	}

	div#nav_menu_actions {
		left: 0px;
	}

	div#nav_menu_views {
		right: 32px;
	}

	body:is(.normal, .reader, .global) {
		.nav_menu {
			display: flex;
			height: auto;
			flex-wrap: wrap;
			align-items: center;
			row-gap: 2px;
			padding-right: 3rem; /* room for absolute-positioned cog */
		}

		.nav_menu .item.search {
			position: static;
			top: auto;
			width: auto;
			flex: 1 1 140px;
			min-width: 100px;
			margin-left: 0;
		}

		.nav_menu form.mark-read-menu,
		.nav_menu a#actualize,
		.nav_menu div#nav_menu_actions,
		.nav_menu div#nav_menu_views,
		.nav_menu a#toggle-order,
		.nav_menu #nav_menu_sort,
		.nav_menu #nav_menu_sort .dropdown {
			position: static;
			top: auto;
			right: auto;
			left: auto;
		}

		.item.configure {
			right: 0;
		}
	}
}

@media (max-width: 410px) {
	.nav_menu .stick {
		margin: 0;
	}
}

button.as-link {
	outline: none;
}

.dropdown-target:target ~ .btn.dropdown-toggle {
	background-color: var(--color-background-nav-darker);
}

.tree-folder.active .tree-folder-title {
	background-color: var(--color-background-nav-darker);
	font-weight: bold;
}

.feed.item {
	&.empty {
		color: var(--color-text-alert);

		&.active {
			background-color: var(--color-background-alert);
			color: var(--color-text-light);

			> a {
				color: var(--color-text-light);
			}
		}

		> a {
			color: var(--color-text-alert);
		}
	}

	&.error {
		color: var(--color-text-bad-lighter);

		&.active {
			background-color: var(--color-background-bad);
			color: var(--color-text-light);

			> a {
				color: var(--color-text-light);
			}
		}

		> a {
			color: var(--color-text-bad-lighter);
		}
	}
}

#stream.reader .flux {
	background-color: var(--color-background-light);
	color: var(--color-text-aside);
	border: none;

	&::after {
		border: none;
	}

	.flux_content {
		border-color: var(--color-border-grey);
	}

	.author {
		color: var(--color-text-light-darker);
	}
}

#nav_menu_actions {
	ul.dropdown-menu {
		left: 0;
		right: auto;

		&::after {
			display: none;
		}
	}

	.dropdown.only-mobile {
		display: initial !important;
	}
}

.nav_menu_read_all {
	ul.dropdown-menu {
		&::after {
			display: none;
		}
	}
}

#slider {
	label {
		min-height: initial;
	}
}

body:has(.aside:not(.visible)) .header .item.title,
body.reader .header .item.title {
	display: none;
}
