/* Nexus Docs - Modern Dark Login Theme */
* {
	box-sizing: border-box;
}

html {
	color: #e0e0e0;
	background: #1a1a1f;
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;
	font-size: 15px;
	line-height: 1.5;
	min-height: 100vh;
}

body {
	margin: 0;
	padding: 0;
	min-height: 100vh;
}

#wrap {
	max-width: 420px;
	margin: 0 auto;
	padding: 60px 24px 40px 24px;
}

#wrap.w {
	max-width: 90%;
}

/* Header / Welcome Area */
#b, #wrap > p {
	text-align: center;
	font-size: 1.1em;
	margin: 0 0 2em 0;
	color: #9ca3af;
}

#b small {
	display: block;
	margin-top: 0.5em;
	color: #6b7280;
}

#un {
	color: #4ec9b0;
}

#m {
	color: #9ca3af;
}

/* Section Headers */
h1 {
	color: #3b82f6;
	font-size: 1.25em;
	font-weight: 600;
	border: none;
	margin: 2em 0 1em 0;
	padding: 0;
}

/* Cards / Sections */
#wrap > div,
#msg {
	background: #23232a;
	border: 1px solid #333340;
	border-radius: 8px;
	padding: 24px;
	margin: 1em 0;
}

/* Login Form */
#lf {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

input[type="text"],
input[type="password"] {
	width: 100%;
	padding: 12px 16px;
	font-size: 1em;
	color: #e0e0e0;
	background: #1a1a1f;
	border: 1px solid #404050;
	border-radius: 6px;
	outline: none;
	transition: border-color 0.2s, box-shadow 0.2s;
}

input[type="text"]:focus,
input[type="password"]:focus {
	border-color: #3b82f6;
	box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);
}

input::placeholder {
	color: #6b7280;
	font-style: normal;
	opacity: 1;
}

input[type="submit"],
#ls {
	width: 100%;
	padding: 12px 24px;
	font-size: 1em;
	font-weight: 500;
	color: #ffffff;
	background: #3b82f6;
	border: none;
	border-radius: 6px;
	cursor: pointer;
	transition: background 0.2s;
	margin-top: 8px;
}

input[type="submit"]:hover,
#ls:hover {
	background: #2563eb;
}

/* Hidden inputs */
input[type="hidden"] {
	display: none;
}

/* Links - General */
a {
	color: #3b82f6;
	text-decoration: none;
	transition: color 0.2s;
	background: none;
	border: none;
	padding: 0;
	margin: 0;
	white-space: normal;
	border-radius: 0;
}

a:hover {
	color: #60a5fa;
	text-decoration: underline;
}

/* Top Action Links */
.af,
.logout {
	float: right;
	margin: 0 0 0 16px;
	padding: 8px 16px;
	background: #23232a;
	border: 1px solid #333340;
	border-radius: 6px;
	font-size: 0.9em;
}

.af:hover,
.logout:hover {
	background: #2d2d35;
	text-decoration: none;
}

.logout {
	color: #f87171;
	border-color: #5c3030;
}

.logout:hover {
	background: #3d2020;
	color: #fca5a5;
}

/* Volume Lists */
ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

li {
	margin: 0;
	padding: 0;
}

li a {
	display: block;
	padding: 12px 16px;
	background: #23232a;
	border: 1px solid #333340;
	border-radius: 6px;
	margin: 8px 0;
	transition: background 0.2s, border-color 0.2s;
}

li a:hover {
	background: #2d2d35;
	border-color: #3b82f6;
	text-decoration: none;
}

/* Tables */
table {
	border-collapse: collapse;
	width: 100%;
}

.vols {
	background: #23232a;
	border-radius: 8px;
	overflow: hidden;
}

.vols th {
	background: #1a1a1f;
	color: #9ca3af;
	font-weight: 500;
	text-transform: uppercase;
	font-size: 0.75em;
	letter-spacing: 0.05em;
}

.vols td,
.vols th {
	padding: 12px 16px;
	text-align: left;
	border-bottom: 1px solid #333340;
}

.vols tr:last-child td {
	border-bottom: none;
}

.vols td a {
	padding: 0;
	background: none;
	border: none;
}

.num {
	border-right: 1px solid #333340;
}

.num td {
	padding: 8px 16px;
}

.num td:first-child {
	text-align: right;
	color: #9ca3af;
}

/* Buttons Group */
.btns {
	display: flex;
	gap: 12px;
	margin: 1.5em 0;
}

.btns a {
	padding: 10px 20px;
	background: #23232a;
	border: 1px solid #333340;
	border-radius: 6px;
}

.btns a:hover {
	background: #2d2d35;
	text-decoration: none;
}

/* Other Stuff Section */
.agr {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.agr br {
	display: none;
}

.agr a,
#lo {
	padding: 10px 16px;
	background: #23232a;
	border: 1px solid #333340;
	border-radius: 6px;
	font-size: 0.9em;
	line-height: 1.4;
	margin: 0;
}

.agr a:hover,
#lo:hover {
	background: #2d2d35;
	text-decoration: none;
}

#lo {
	color: #f87171;
	border-color: #5c3030;
	cursor: pointer;
	font-size: 0.9em;
}

#lo:hover {
	background: #3d2020;
}

.agr form {
	display: inline;
	margin: 0;
	padding: 0;
}

/* Danger Links */
a.r {
	color: #f87171;
}

a.r:hover {
	color: #fca5a5;
}

/* Success Links */
a.g {
	color: #4ade80;
	background: rgba(74, 222, 128, 0.1);
	border: 1px solid rgba(74, 222, 128, 0.3);
	padding: 10px 20px;
	border-radius: 6px;
	box-shadow: none;
}

a.g:hover {
	background: rgba(74, 222, 128, 0.2);
}

/* HTTPS Switch */
#wb,
#w {
	color: #fbbf24;
	font-size: 0.85em;
}

/* Change Password Link */
#x {
	color: #9ca3af;
	font-size: 0.9em;
	margin-top: 8px;
	display: inline-block;
}

/* Blockquotes */
blockquote {
	margin: 12px 0;
	padding: 12px 16px;
	background: #1a1a1f;
	border-left: 3px solid #3b82f6;
	border-radius: 0 6px 6px 0;
	color: #9ca3af;
	font-size: 0.9em;
}

/* Code */
pre, code {
	color: #4ade80;
	background: #1a1a1f;
	font-family: 'SF Mono', Monaco, 'Cascadia Code', monospace;
	border: 1px solid #333340;
	border-radius: 4px;
	padding: 2px 6px;
	font-size: 0.9em;
}

pre b,
code b {
	color: #4ec9b0;
	font-weight: 600;
	text-shadow: none;
	border: none;
}

/* Messages */
#msg {
	border-color: #3b82f6;
	background: rgba(59, 130, 246, 0.1);
}

#msg h1 {
	margin-top: 0;
	color: #60a5fa;
}

/* Footer Elements */
#repl {
	position: fixed;
	bottom: 16px;
	left: 16px;
	color: #404050;
	font-size: 0.9em;
}

#pb {
	display: none; /* Hide powered by */
}

/* Tables in Admin Panel */
#wrap > table {
	display: flex;
	gap: 24px;
}

#wrap > table > tr {
	display: contents;
}

#wrap > table > tr > td {
	flex: 1;
}

/* Status colors */
.cn {
	text-align: center;
}

/* OS specific */
.os {
	line-height: 1.8;
}

.sph {
	margin-top: 3em;
}

.sph code {
	margin-left: 8px;
}

/* Responsive */
@media (max-width: 480px) {
	#wrap {
		padding: 40px 16px;
	}

	.af, .logout {
		float: none;
		display: inline-block;
		margin: 8px 8px 8px 0;
	}

	.btns {
		flex-direction: column;
	}

	.agr {
		flex-direction: column;
	}
}
