/* Buttons */
#portal.hero .tml .tml-button,
#portal #edit-profile-form .tml-button,
#portal #edit-profile-form input[type="submit"],
#portal #change-password-form .tml-button,
#portal .actions .action>*,
#portal .message-controls button,
#portal .controls>* {
	background: #1D315F;
    color: white;
    font-size: 1.8rem;
    font-weight: 500;
    padding: 10px 16px;
    border: 2px solid #1D315F;
    border-radius: 2px;
    transition: 0.3s all ease-in-out;
}
#portal .actions .action>* { line-height: 1em; display: inline-block; margin-bottom: 10px; width: 100%; text-align: center; }
#portal .controls>* { margin-bottom: 0; margin: 8px 0; padding: 8px 10px 5px; min-width: 75px; text-align: center; }
#portal .controls>*:not(:first-of-type),
#portal .controls .archive-restore-btn { margin-left: 5px; }
#portal.hero .tml .tml-button:hover,
#portal #edit-profile-form .tml-button:hover,
#portal #edit-profile-form input[type="submit"]:hover,
#portal #change-password-form .tml-button:hover,
#portal .actions .action>*:hover,
#portal .actions .action.active>*,
#portal .message-controls button:hover,
#portal .controls>*:hover { color: #1d315f; background-color: white; }

/* Actions panel - sidebar nav. */
#portal .content { display: flex; flex-wrap: wrap; }
#portal h1 { width: 100%; }
#portal .content .actions { margin-right: 30px; width: 200px; }
#portal .content .actions .action .university>i { margin-right: 10px; }
#portal .content .action-display { flex-grow: 1; max-width: calc(100% - 230px); }

/* Theme My Login content. */
#portal.hero .container { padding-left: 0; padding-right: 0; }
#portal.hero h1 { margin-top: 0; margin-bottom: 5rem; }
#portal.hero .tml {
	max-width: 75rem;
	width: 100%;
    padding: 6rem 8rem;
    background: white;
	box-shadow: 0px 0px 15px 4px rgba(0, 0, 0, 0.10);
}
#portal.hero .tml .tml-field-wrap { margin: 0 0 1.6rem; max-width: 55rem; }
#portal.hero .tml .tml-field-wrap label,
#portal.hero .tml .tml-field-wrap input { font-size: 1.8rem; color: #4A4D54; max-width: 42rem; }
#portal.hero .tml .tml-label { margin: 0 0 0.8rem; }
#portal.hero .tml .tml-description { font-style: normal; color: #4A4D54; }
#portal.hero .tml .indicator-hint { font-size: 1.4rem; color: #4A4D54; }
#portal.hero .tml .tml-is_on_mailing_list-wrap .tml-label { font-size: 1.8rem; font-weight: 500; }
#portal.hero .tml .tml-links { list-style: none; padding: 0; margin: 0; }
#portal.hero .tml .tml-links a { font-size: 2rem; font-weight: 800; text-decoration: underline; color: #4a4d54; }
#portal.hero .tml .tml-links>li:last-of-type a { font-size: 1.8rem; }
#portal.hero .tml .tml-links>li:not(:last-of-type) { margin: 0 0 1.2rem; }
#portal.hero .tml .tml-message {
	border: none;
	box-shadow: none;
	font-weight: 500;
	font-size: 20px;
	padding: 0;
	margin: 0;
}

/* Messages */
#portal #entry-messages-container { min-height: 200px; }
#portal #entry-messages { min-height: 300px; max-height: 30vh; overflow-y: auto; margin-bottom: 10px; }
#portal #entry-messages p { margin-bottom: 10px; }
#portal #entry-messages .message { border: 1px solid #ccc; border-radius: 5px; min-width: 250px; max-width: 30vw; margin: 0 0 10px auto; background-color: white; }
#portal #entry-messages .message.unviewed { border: 2px solid green; }
#portal #entry-messages .message .message-content { padding: 10px; }
#portal #entry-messages .message .message-content p { line-height: 1; }
#portal #entry-messages .message .message-content p:last-of-type { margin-bottom: 0; }
#portal #entry-messages .message.current-user { margin: 0 auto 10px 0; background-color: aliceblue; }
#portal #entry-messages .message .accordion-header { cursor: pointer; padding: 10px; border: 1px solid #ddd; }
#portal #entry-messages .message .accordion-header p { line-height: 1; margin-bottom: 0; }
#portal #entry-messages .message .accordion-body { padding: 10px; border-top: none; border: 1px solid #ddd; }
#portal #entry-messages .message .accordion-body .update { display: flex; flex-wrap: wrap; }
#portal #entry-messages .message .accordion-body .update p { line-height: 1; }
#portal #entry-messages .message .accordion-body .update .field { width: 100%; margin-bottom: 5px; }
#portal #entry-messages .message .accordion-body .update .old { width: calc(50% - 5px); padding-right: 5px; }
#portal #entry-messages .message .accordion-body .update .new { width: calc(50% - 5px); padding-left: 5px; }
#portal #entry-messages .message .message-footer { padding: 10px; border-top: 1px solid #ddd; display: flex; }
#portal #entry-messages .message .message-footer p { line-height: 1; margin-bottom: 0; }
#portal #entry-messages .message .message-footer .date { padding-right: 10px; }

#portal .message-form,
#portal .message-form .tox-tinymce { margin-bottom: 4px; } 
#portal .message-form button>span>svg { fill: white; }
#portal .message-form button:hover>span>svg { fill: #222f3e; }

/* Filters */
#portal .entry-filters { display: flex; background-color: #ebeef2; margin-bottom: 20px; }
#portal .entry-filters .filters { display: flex; }
#portal .entry-filters .filter-set { border: 1px solid #b9bfc9; padding: 8px; }
#portal .entry-filters .filter-set:last-child { flex-grow: 1; }
#portal .entry-filters .entry-filter { padding: 0 8px; }
#portal .entry-filters h4 { font-weight: 700; }

/* Tables */
#portal #entriesTable .entry { border: 1px solid black; background-color: white; }
#portal #entriesTable .entry:nth-child(odd) { background-color: aliceblue; }
#portal #entriesTable .entry.unviewed { background-color: darkseagreen !important; }
#portal #entriesTable .entry.active { background-color: cornflowerblue !important; }
#portal #entriesTable .entry.archived { color: darkgray; }
#portal #entriesTable th, #portal #entriesTable .entry td { padding-left: 8px; }
#portal .entry .project-name { display: flex; }
#portal .entry .button-container { display: flex; justify-content: flex-end; align-items: center; }
#portal .entry .button-container .editing { padding: 4px; width: 26px; height: 26px; }
#portal .entry .controls { position: relative; display: flex; justify-content: flex-end; padding-right: 8px; }
#portal .entry .controls a { display: block; position: relative; z-index: 1; }
#portal .entry .custom-status .select-display { text-transform: capitalize; }

/* Edit Profile */
#portal #edit-profile-form .form-row { display: flex; flex-wrap: wrap; }
#portal #edit-profile-form .field { margin-bottom: 1.6rem; }
#portal #edit-profile-form .field.d-flex { display: flex; }
#portal #edit-profile-form .field.full-width { width: 100%; }
#portal #edit-profile-form .field:not(:last-of-type) { margin-right: 1rem; }
#portal #edit-profile-form .field>* { width: 100%; font-size: 1.8rem; color: #4a4d54; max-width: 71rem; }
#portal #edit-profile-form .field p { margin-bottom: 0; }
#portal #edit-profile-form .field #is_on_mailing_list { margin-top: 0; margin-right: 1rem; width: auto; }
#portal #edit-profile-form .field #is_on_mailing_list+label { margin-bottom: 0; }
#portal #edit-profile-form #password-strength-meter { font-weight: 700; padding: 0.5em; width: 100%; }
#portal #edit-profile-form #password-strength-meter[strength="very-weak"] { background-color: #f1adad; border: 1px solid #e35b5b; }
#portal #edit-profile-form #password-strength-meter[strength="weak"] { background-color: #fbc5a9; border: 1px solid #f78b53; }
#portal #edit-profile-form #password-strength-meter[strength="medium"] { background-color: #ffe399; border: 1px solid #ffc733; }
#portal #edit-profile-form #password-strength-meter[strength="strong"] { background-color: #c1e1b9; border: 1px solid #83c373; }
