:root {
		--light-green: #aafdaa;
		--light-red: #fdaaaa;
}

body {
		background:#333;
		color:#fff;
		margin:0;
		font-family:system-ui, sans-serif;
}

h1,h2,h3,h4,h5,h6 {
		margin:0;
		padding-bottom:1em;
}

.page-title {
		font-size:2rem;
		font-weight:normal;
		position:relative;
		padding:0 0 .5em;
}

.page-title:after {
		content:"";
		border-bottom:5px solid #ccc;
		width:25%;
		position:absolute;
		left:0;
		bottom:0;
}

a {
		color:#236486;
}

a:hover {
		color:#333;
}

.button {
		background:#236486;
		color:#fff;
		padding:.5em 1em;
		border-radius:.25em;
		text-decoration:none;
		display:inline-block;
}

.button:hover {
		background:#333;
		color:#fff;
}

.delete-button {
		color:#862323;
		padding:.25em;
		border-radius:.25em;
		text-decoration:none;
		display:inline-block;
		margin-top:2em;
		font-size:.8rem;
		font-weight:bold;
}

.delete-button:hover {
		color:#333;
		cursor:pointer;
}

.page-actions {
		margin:2em 0;
}

.item-actions {
		margin:2em 0 0;
}

.message.success {
		background:var(--light-green);
		padding:1em;
		margin-bottom:2em;
}

.message.error, .error-message {
		background:var(--light-red);
		padding:1em;
		margin-bottom:2em;
		margin-top:.5em;
}

.pagination {
		padding:0;
		list-style-type:none;
		display:flex;
		justify-content:center;
		gap:1em;
		margin-top:3em;
}

.pagination .active a {
		color:#333;
		text-decoration:none;
}

main {
		background:#eee;
		color:#222;
}

main .center {
		max-width:1400px;
		margin:auto;
		min-height:60vh;
		padding:3em 1em;
}

@media (max-width:600px) {
		main .center {
				padding:1em .5em;
		}
}

label {
		display:block;
		margin-bottom:.25em;
		margin-top:.5em;
}

:is(.text, .email, .password) input,
textarea,
select {
		box-sizing:border-box;
		width:100%;
		padding:.5em;
		font-family:system-ui, sans-serif;
}

.submit input {
		background:#333;
		border:none;
		color:#fff;
		padding:.5em 1em;
		margin-top:2em;
		font-weight:bold;
		font-size:1rem;
}

.submit input:hover {
		cursor:pointer;
		background:#000;
}

.field-wrapper {
		padding:2em;
		background:#fff;
		color:#222;
		margin-top:1em;
		border:1px solid #ccc;
}

.file label {
		margin:0;
}

.file input {
		margin-top:1em;
}

/*
* Header
*/
header {
		background:#fff;
		color:#222;
		box-shadow:0 0 10px #0001;
		z-index:2;
		position:relative;
}

header .center {
		max-width:1600px;
		margin:auto;
		display:flex;
		align-items:center;
		justify-content:space-between;
}

@media (max-width:1400px) {
		header .center {
				display:block;
		}
}

.header-logo {
		color:currentColor;
		text-decoration:none;
}

.header-logo:hover {
		background:#f7f7f7;
}

.header-logo h1 {
		line-height:1;
		padding:1rem;
		font-size:1.5rem;
}

@media (max-width:1400px) {
		.header-logo h1 {
				text-align:center;
		}
}


@media (max-width:600px) {
		.header-logo h1 {
				font-size:1rem;
		}
}

.header-logo-rcl {
		font-weight:normal;
}

.header-logo-hp {
		color:#236486;
		font-size:1.48em;
		text-transform:uppercase;
		font-weight:900;
}

.header-nav ul {
		display:flex;
		flex-wrap:wrap;
		padding:0;
		margin:0;
		list-style-type:none;
		gap:1em 2em;
		padding:.5rem 1rem;
		justify-content:center;
}

.header-nav a {
		text-decoration:none;
		font-weight:bold;
		color:#236486;
		padding:.5em 0;
		display:inline-block;
}

.header-nav a:hover {
		color:#333;
		text-decoration:underline;
		text-underline-offset: .5em;
		text-decoration-thickness: .2em;
}

.header-nav a.button {
		background:#236486;
		color:#fff;
		padding:.5em 1em;
		border-radius:.25em;
}

.header-nav a.button:hover {
		background:#333;
		text-decoration:none;
}


/*
* Home
*/
.main-home .center {
		max-width:1200px;		
}

.home-top {
		display:grid;
		grid-template-columns:1fr 1fr;
		gap:.5em;
		margin:auto;
}

@media (max-width:1200px) {
		.home-top {
				grid-template-columns:2fr 1fr;
		}
}

@media (max-width:1000px) {
		.home-top {
				grid-template-columns:1fr;
				max-width:700px;
				margin:auto;
		}
}

.home-top-image {
		width:100%;
		height:100%;
		object-fit:cover;
}

.section-home-user-profile {
		background:#fff;
		padding:2em;
		display:flex;
		flex-direction:column;
		align-items:center;
		justify-content:center;
}

@media (max-width:1000px) {
		.section-home-user-profile {
				display:flex;
				flex-direction:column;
				align-items:center;
		}
}

.home-profile-photo {
		display:block;
		margin-bottom:1em;
}

.section-home-user-profile p {
		margin:0;
		padding-bottom:.25em;
}

.home-latest {
		display:grid;
		grid-template-columns:1fr 1fr 1fr;
		gap:.5em;
		margin-top:2em;
}

@media (max-width: 900px) {
		.home-latest {
				grid-template-columns:1fr;
				max-width:500px;
				margin-inline:auto;
		}
}
		
.home-latest section {
		padding-bottom:.5em;
		border-bottom:1em solid #1F3A4D;
}

@media (max-width: 900px) {
		.home-latest section {
				margin-bottom:1em;
		}
}

.home-section-title {
		background:#1F3A4D;
		color:#fff;
		padding:.5em;
		text-align:center;
		font-size:1.2rem;
}

.home-latest-image {
		width:100%;
		margin-top:.5em;
		display:block;
}

.home-latest a {
		text-decoration:none;
		color:#333;
}

.home-latest article {
		margin-top:.5em;
		min-height:7em;
		background:#fff;
		padding:1em;
		display:flex;
		flex-direction:column;
		justify-content:space-between;
		font-size:.8rem;
}

.home-latest a:hover article {
		background:#f7f7f7;
		color:#000;
}

@media (max-width: 1200px) {
		.home-latest article {
				min-height:8em;
		}
}

.home-latest article h3 {
		padding:0;
		margin-bottom:1em;
		font-size:1rem;
		font-weight:600;
}

/*
* Footer
*/
footer {
		margin-top:3em;
}

footer .center {
		max-width:1600px;
		margin:auto;
		text-align:center;
		padding:2em;
}

footer a {
		color:#fff;
}

footer a:hover {
		text-decoration:none;
}

.footer-logo:hover {
		opacity:.8;
}

/*
* Login
*/
.main-users-login .center {
		display:flex;
		align-items:center;
		justify-content:center;
}

.login {
		margin:auto;
		width:100%;
		max-width:400px;
		background:#fff;
		padding:2em;
}

/*
* Message Board
*/
.main-messages-index .center {
		max-width:1200px;
}

.message-board-message {
		background:#fff;
		padding:1em;
		gap:1em;
		margin-bottom:1em;
		display:grid;
		grid-template-columns:max(20%, 10em) 1fr;
}

@media (max-width:600px) {
		.message-board-message {
				grid-template-columns:1fr;
		}
}

.message-board-message .author-info {
		display:flex;
		flex-direction:column;
		justify-content:center;
		align-items:center;
}

.message-board-message .author-name {
		margin-top:1em;
		text-align:center;
}

.message-board-message .post-title {
		padding-bottom:.5em;
}

.message-board-message .post-attachments {
		margin-top:1em;
		background:#f7f7f7;
		padding:1em;
}

/* Messages - Discussion */
.main-messages-discussion .center {
		max-width:1000px;
}

.message-board-discussion {
		display:grid;
		grid-template-columns:max(20%, 10em) 1fr;
		gap:1em;
}

@media (max-width:600px) {
		.message-board-discussion {
				grid-template-columns:1fr;
		}
}

.message-board-full-message {
		line-height:1.6;
		margin-top:2em;
}

.message-board-discussion .author-info {
		display:flex;
		flex-direction:column;
		align-items:center;
		margin-top:2em;
}

.message-board-discussion .author-name {
		margin-top:1em;
}

.message-board-discussion .post-title {
		padding-bottom:.5em;
}

.message-board-discussion .post-attachments {
		margin-top:1em;
		background:#f7f7f7;
		padding:1em;
}

.message-board-discussion-comments {
		margin-top:2em;
}

.message-board-discussion-comments .page-title {
		margin-bottom:1em;
}

.message-board-discussion-add-comment {
		margin-top:2em;
		padding:1em;
		background:#f7f7f7;
}

.message-board-discussion-add-comment .page-title {
		margin-bottom:1em;
}

/* Message Board Add */
.message-board-add {
		max-width:700px;
		margin:auto;
}

/*
* Scams
*/
.main-scams-index .center {
		max-width:1800px;
}

.scam-board {
		display:grid;
		grid-template-columns:1fr 1fr 1fr 1fr;
		gap:1em;
		margin-top:3em;
}

@media (max-width:1600px) {
		.scam-board {
				grid-template-columns:1fr 1fr 1fr;
		}		
}

@media (max-width:1400px) {
		.scam-board {
				grid-template-columns:1fr 1fr;
		}
}

@media (max-width:900px) {
		.scam-board {
				grid-template-columns:1fr;
		}
}

.scam-board-scam {
		background:#fff;
		padding:2em;
		display:flex;
		flex-direction:column;
		justify-content:space-between;
}

.scam-board-scam .post-info {
		display:contents;
}

.scam-board-body {
		flex-grow:1;
}

.scam-board-scam .post-title {
		padding-bottom:0;
		word-break:break-word;
}

.scam-board-date {
		margin:0;
}

.scam-board .post-attachments {
		margin-top:1em;
		background:#f7f7f7;
		padding:1em;
}

/* Scam discussion */
.main-scams-discussion .center {
		max-width:800px;
}

.scam-board-full-scam {
		line-height:1.6;
		margin-top:2em;
}

.scam-board-discussion .post-attachments {
		margin-top:1em;
		background:#f7f7f7;
		padding:1em;
}

/* Scams add */
.scam-board-add {
		max-width:700px;
		margin:auto;
}

/*
* Library Items
*/
.main-libraryitems-index .center {
		max-width:1800px;
}

.libraryitem-board {
		margin-top:3em;
		display:grid;
		grid-template-columns:1fr 1fr 1fr 1fr 1fr;
		gap:1em;
}

@media (max-width:1600px) {
		.libraryitem-board {
				grid-template-columns:1fr 1fr 1fr 1fr;
		}		
}

@media (max-width:1400px) {
		.libraryitem-board {
				grid-template-columns:1fr 1fr 1fr;
		}		
}

@media (max-width:900px) {
		.libraryitem-board {
				grid-template-columns:1fr 1fr;
		}
}

@media (max-width:600px) {
		.libraryitem-board {
				grid-template-columns:1fr;
		}
}

.library-item-category-section {
		margin-top:2em;
		grid-column-start:1;
		grid-column-end:-1;
		border-bottom:2px solid #fff;
		text-transform:uppercase;
}

.libraryitem-board-libraryitem {
		padding:1em;
		background:#fff;
		display:flex;
		flex-direction:column;
		justify-content:space-between;
}

.libraryitem-board-libraryitem .post-info {
		display:contents;
}

.libraryitem-board-libraryitem .post-title {
		flex-grow:1;
}

.libraryitem-board .post-title,
.libraryitem-filename {
		word-break:break-word;
}

/* Library items Search */
.libraryitem-search {
		background:#fff;
		padding:2em;
		margin-top:3em;
}

.libraryitem-search form {
		max-width:600px;
		margin:auto;
}

/* Library items add */
.main-libraryitems-add .center {
		max-width:600px;
}


/*
* Video Files
*/
.main-videofiles-index .center {
		max-width:1800px;
}

.videofile-board {
		margin-top:3em;
		display:grid;
		grid-template-columns:1fr 1fr 1fr 1fr 1fr;
		gap:1em;
}

@media (max-width:1600px) {
		.videofile-board {
				grid-template-columns:1fr 1fr 1fr 1fr;
		}		
}

@media (max-width:1400px) {
		.videofile-board {
				grid-template-columns:1fr 1fr 1fr;
		}		
}

@media (max-width:900px) {
		.videofile-board {
				grid-template-columns:1fr 1fr;
		}
}

@media (max-width:600px) {
		.videofile-board {
				grid-template-columns:1fr;
		}
}

.library-item-category-section {
		margin-top:2em;
		grid-column-start:1;
		grid-column-end:-1;
		border-bottom:2px solid #fff;
		text-transform:uppercase;
}

.videofile-board-videofile {
		padding:1em;
		background:#fff;
		display:flex;
		flex-direction:column;
		justify-content:space-between;
}

.videofile-board-videofile .post-info {
		display:contents;
}

.videofile-board-videofile .post-title {
		flex-grow:1;
}

.videofile-board .post-title,
.videofile-filename {
		word-break:break-word;
}

/* Video Files Search */
.videofile-search {
		background:#fff;
		padding:2em;
		margin-top:3em;
}

.videofile-search form {
		max-width:600px;
		margin:auto;
}

/* Video Files add */
.main-videofiles-add .center {
		max-width:600px;
}

/* Video Files player */
.videofiles-player {
		width:100%;
		margin-top:3em;
}

/*
* MyFiles
*/
.main-myfiles-hp_files .center {
		max-width:900px;	
}

.myfiles-board {
		margin-top:3em;
}

.myfiles-files  {
		background:#fff;
		padding:1em;
		gap:1em;
		margin-bottom:1em;
		display:grid;
		grid-template-columns:max(20%, 15em) 1fr;
}

@media (max-width:600px) {
		.myfiles-files {
				grid-template-columns:1fr;
		}
}

.myfiles-files .author-info {
		display:flex;
		flex-direction:column;
		justify-content:center;
		align-items:center;
}

.myfiles-files .author-name {
		margin-top:1em;
		text-align:center;
}

.myfiles-files .post-title {
		padding-bottom:0;
}

/* Hp Files */
.myfiles-hp-upload {
		background:#f7f7f7;
		padding:2em;
		margin-bottom:3em;
}

.myfiles-hp-upload form {
		max-width:600px;
		margin:auto;
}

/* Admin Files *//*
.main-myfiles-admin_files .center {
		max-width:unset;
}

.myfiles-admin-board {
		display:grid;
		grid-template-columns:repeat(auto-fill,minmax(max(17em, 15%),1fr));
		gap:1em;
}

.myfiles-admin-file {
		display:flex;
		flex-direction:column;
		justify-content:space-between;
		margin-bottom:0;
}

.myfiles-admin-file * {
		word-break:break-word;
}

.myfiles-admin-file .post-info {
		display:contents;
}

.myfiles-admin-file .post-title {
		flex-grow:1;
}*/

/* Admin Company Upload */
.main-myfiles-adminCompanyUpload .center,
.main-myfiles-adminUpload .center,
.main-myfiles-documentTypes .center {
		max-width:600px;
}


/*
* Message Board
*/
.main-users-index .center {

}

.users-board {
		display:grid;
		grid-template-columns:1fr 1fr;
		gap:1em;
		margin-top:2em;
}

.users-board-user {
		background:#fff;
		padding:1em;
		gap:2em;
		display:grid;
		grid-template-columns:max(50%, 20em) 1fr;
}

@media (max-width:1200px) {
		.users-board {
				grid-template-columns: 1fr;
		}
		.users-board-user {
				grid-template-columns:max(20%, 15em) 1fr;
		}
}

@media (max-width:600px) {
		.users-board-user {
				grid-template-columns:1fr;
				text-align:center;
		}
}

.users-board-user .author-info {
		display:flex;
		flex-direction:column;
		justify-content:center;
		align-items:center;
}

.users-board-user .author-name {
		margin-top:1em;
		text-align:center;
}

.users-board-user .post-title {
		padding-bottom:.5em;
}

.users-board-user .post-attachments {
		margin-top:1em;
		background:#f7f7f7;
		padding:1em;
}

.main-users-add .center,
.main-users-edit .center {
		max-width:600px;
}
