/* СВОИ (начало) */

.portal-navigation-menu{
	width: auto;
	border-radius:12px;
	margin: 0;
	padding: 1px 0;
	margin-bottom: 8px;
	padding-bottom: 2px;
	font-size: 12px;
}

.portal-navigation-menu ul{
	list-style-type: none;
	margin: 0;
	padding: 0;
	margin-bottom: 8px; /*bottom spacing between each UL and rest of content*/
}

.portal-navigation-menu ul li{
	padding-bottom: 2px; /*bottom spacing between menu items*/
}

/*.portal-navigation-menu ul li a{ */
/*	background-image: url("{T_THEME_PATH}/images/portal/alien.gif"); */
/*	background-repeat: no-repeat; */
/*	background-position: center left; /*custom bullet list image */
/*	display: block; */
/*	padding-left: 26px; /*link text is indented 19px */
/* } */

.portal-navigation-menu div.menutitle{
	padding: 3px 0;
	font-family: 'Scada', 'Trebuchet MS';
	font-size: 14px;
	font-weight: 600;
	text-decoration: underline;
}

.portal-navigation-menu tr.menutitle{
	font-family: 'Scada', 'Trebuchet MS';
	font-size: 16px;
	font-weight: 600;
	text-decoration: underline;
}

.portal_avatar img {
	border-radius: 10px;
	padding-bottom: 3px;
	}
.portal_user_menu {
	float:right; 
	font-family: Scada;
	font-weight: 500;
	padding:7px; 
	text-align:right;
	font-size:1.3em;
	}
	
.portal_user_menu i {
	color: #4e4780;
	font-size: 0.9em;
	}

li.header dt img {
	float:left;
	padding-right: 3px;
}


/****** RADIO *******/
.radio-button{
	color: #2B2B2B;
	padding:4px 10px;
	border-radius:5px;
	border: 1px solid #CFCFCF;
	background-color:#F5F5F5;
	text-shadow: 1px 1px 1px #D1D1D1;
}

.radio-button-big{
	color: #2B2B2B;
	padding:8px;
	border-radius:5px;
	border: 1px solid #CFCFCF;
	background-color:#F5F5F5;
}

.radio-button-big img{
	filter: alpha(Opacity=85);
	opacity: 0.85;
}

.radio-button-big img:hover{
	filter: alpha(Opacity=100);
	opacity: 1.00;
}

.radio-button-artist{
	color: #2B2B2B;
	padding:4px;
	border-radius:5px;
	border: 1px solid #CFCFCF;
	background-color:#F5F5F5;
	float:right;
}

.radio-button-artist img {
	border-radius:5px;
	width: 80px;
	height: 80px;
}

.portal-module-content table td {
   padding:2px;
}

/* Миагющая картиника Online */

/* Firefox old*/
@-moz-keyframes blink {
    0% {
        opacity:0.85;
    }
    50% {
        opacity:0;
    }
    100% {
        opacity:0.85;
    }
} 

@-webkit-keyframes blink {
    0% {
        opacity:0.85;
    }
    50% {
        opacity:0;
    }
    100% {
        opacity:0.85;
    }
}
/* IE */
@-ms-keyframes blink {
    0% {
        opacity:0.85;
    }
    50% {
        opacity:0;
    }
    100% {
        opacity:0.85;
    }
} 
/* Opera and prob css3 final iteration */
@keyframes blink {
    0% {
        opacity:0.85;
    }
    50% {
        opacity:0;
    }
    100% {
        opacity:0.85;
    }
} 
.blink-image {
    -moz-animation: blink normal 2s infinite ease-in-out; /* Firefox */
    -webkit-animation: blink normal 2s infinite ease-in-out; /* Webkit */
    -ms-animation: blink normal 2s infinite ease-in-out; /* IE */
    animation: blink normal 2s infinite ease-in-out; /* Opera and prob css3 final iteration */
	animation-iteration-count: 2;
	animation-delay: 4s;
}
/****** RADIO *******/




/* .equalizer {
	background-image: url(images/portal/equalizer.gif);
	background-repeat: repeat-x;
    background-size: 58px 75px;
    background-color: rgba(250,250,250,0.7);
    background-blend-mode: lighten;
}

.equalizer-mobile {
	background-image: url(images/portal/equalizer.gif);
	background-repeat: repeat-x;
    background-size: 58px 75px;
    background-color: rgba(250,250,250,0.7);
    background-blend-mode: lighten;
	background-position-y: 50%;
} */

.equalizer {
	background-image: url(images/portal/equalizer.gif);
    background-repeat: repeat-x;
    background-size: 90px 36px;
    background-position-y: 32px;
    background-color: rgba(245,245,245,.85);
    background-blend-mode: lighten;
}

.equalizer-mobile {
	background-image: url(images/portal/equalizer.gif);
    background-repeat: repeat-x;
    background-size: 90px 37px;
    background-position-y: 12px;
    background-color: rgba(245,245,245,.85);
    background-blend-mode: lighten;
}

/* Articles */
.article {
	background-color: rgba(255, 255, 255, 0.85) !important; 
	padding: 10px 15px; 
	line-height: 1.8em;
}

.article-image {
	float:right;
	padding:0 3px 0 15px;
}

.article-image img {
	display: inline-block;
	border: 3px solid transparent;
	border-radius: 6px;
	transition: border-color 0.1s ease-out 0s;
	width: 120px;
}

.article-image-small {
	float:right;
	padding:0 10px;
}

.article-title {
	font-family:Oswald;
	font-size:1.45em;
	font-weight: bold;
	padding-bottom:4px;	
}

.article-title span {
    margin-left: 12px;
    font-size: 0.9em;
    color: gray;
    font-family: 'Scada';
    font-style: italic;
}

.article-text {
	font-family:Scada;
	font-size:1.4em;
	padding-bottom: 6px;
}

.article-text a {
	font-weight: bold;
}


/* СВОИ (конец) */





.content li {
	list-style-type: inherit !important;
}

/* a {
	display: inline;
}
 */

.fa-backward, .fa-forward {
	font-size: 1.4em;
	margin-bottom: 4px;
}



/* main menu, user menu and the links */

.portal-navigation{
	width: auto;
}

.portal-navigation ul{
	list-style-type: none;
	margin: 0;
	padding: 0;
	margin-bottom: 8px; /*bottom spacing between each UL and rest of content*/
}

.portal-navigation ul li{
	padding-bottom: 2px; /*bottom spacing between menu items*/
}

.portal-navigation ul li a{
	display: block;
	padding: 2px 0;
	font-weight: bold;
	font-size: 90%;
}

.portal-navigation div.menutitle{
	padding: 1px 0;
	font: bold 90% 'Trebuchet MS', 'Lucida Grande', Arial, sans-serif;
	font-size: 12px;
	text-decoration: underline;
}

.portal-navigation hr.dashed:last-child {
	display: none;
}

.rtl .portal-navigation .menutitle {
	text-align: right;
}

.calendar-info {
	list-style-type: none;
}

.portal-events li.row
{
	border-top: 0;
	list-style-type: none;
}

.portal-user-icon {
	padding-top: 16px;
	float: left;
	margin-bottom: 2px;
}

.rtl .portal-user-icon {
	float: right;
}

.portal-user-span {
	float: left;
	padding-left: 5px;
	padding-top: 2px;
}

.rtl .portal-user-span {
	float: right;
	padding: 2px 5px 0 0;
}

.portal-user-annotation {
	float: right;
	padding-top: 2px;
	padding-right: 10px;
}

.rtl .portal-user-annotation {
	float: left;
	padding-right: 0;
}

.portal-title-span {
	float: left;
	color: #555f74;
	margin-top: 16px;
	font: 1.3em Scada;
}

.portal-title-span a {
	color: #555f74;
}

.rtl .portal-title-span {
	float: right;
}

.rtl .portal-title-link {
	float: right;
	padding-right: 2px;
}

.portal-text-span {
	float: left;
	padding-right: 10px;
}

.rtl .portal-text-span {
	float: right;
	padding-right: 0;
	padding-left: 10px;
}

.portal-data-span {
	float: right;
	padding-right: 10px;
}

.rtl .portal-data-span {
	float: left;
	padding-right: 0;
	padding-left: 10px;
}

.portal-module-postbody {
	width: 100%;
}

.portal-module-content {
	min-height: 1em;
}

.portal-stylechanger-select {
	width: 150px;
}

.portal-whois-online-content {
	border-left: 0 !important;
}
.portal-whois-online-content p {
	margin: 0 5px 0 5px;
}

.portal-donation-center-content {
	border-left: 0;
}

.portal-donation-center-content > div {
	text-align: left;
	margin: 5px 5px 5px 5px;
}

.portal-donation-form {
	padding-top: 15px;
}

.portal-centered-content {
	text-align: center;
}

.portal-read-all-link {
	float: right;
	margin: 0 0 5px 0;
}

.portal-module-postbody .post:not(:last-child) {
	margin-bottom: 1px;
}

a.portal-forumtitle {
	font-weight: bold;
}

.portal-random-member-name {
	font-size: 12px;
	padding-top: 1px;
	margin-bottom: 5px;
}

.portal-recent-column {
	width: 33%;
	vertical-align: top;
}

.portal-paypal-icon {
	background-image: url("../../all/theme/images/portal/paypal.gif");
	background-repeat: no-repeat;
	padding-left: 73px;
	padding-top: 44px;
	float: left;
	margin: 5px;
}

.portal-poll-subtext {
	font-size: 1.0em !important;
}

.portal-poll-vote {
	border-top: none;
}

.portal-poll-side-option dt {
	width: 30% !important;
}

.portal-poll-side-option dt:first-child {
	width: 60% !important;
}

.portal-poll-side-option-info {
	width: 58% !important;
	float: right !important;
}

.portal-poll-side-checkbox {
	float: left;
}

.portal-poll-side-checkbox input {
	vertical-align: top;
	margin-left: 4px;
	margin-top: 0;
}

/**
* Calendar CSS rules
*/
.portal-calendar-go-previous {
	text-align: left;
}

.portal-calendar-current-month {
	text-align: center;
}

.portal-calendar-go-next {
	text-align: right;
}

.portal-calendar-days-title td, .portal-calendar-days td {
	width: 14%;
	text-align: center;
}

.portal-calendar-days-title span {
	font-weight: bold;
}

.portal-calendar-days td {
	text-align: center;
}

.portal-calendar-events-heading {
	font-weight: bold;
	font-size: 12px;
	text-decoration: underline;
}

.portal-calendar-event-listing {
	width: 100%;
	padding-left: 0;
	padding-bottom: 5px;
}

.portal-calendar-event-title {
	font-weight: bold;
}

.portal-calendar-event-description {
	font-style: italic;
}

.portal-calendar-divider {
	margin: 5px 0;
	border-top: 0;
}

/**
* Replacement for table layout
*/
#portal-left, #portal-right {
	position: relative;
	float: left;
}

.rtl #portal-left, .rtl #portal-right {
	float: right;
}

#portal-center-wrapper {
	width: 100%;
	float: left;
	display: block;
}

#portal-center-wrapper .panel, #portal-center-wrapper .post,
#portal-top .panel, #portal-top .post,
#portal-bottom .panel, #portal-bottom .post
{
	border-radius: 0;
}

@media (min-width: 700px) { /* углы только для ПК */
#portal-center-wrapper .panel {
	border-bottom-left-radius: 6px !important;
	border-bottom-right-radius: 6px !important;
}
}

.rtl #portal-center-wrapper {
	float: right;
}

#portal-column-area {
	width: 100%;
	margin: 0 auto;
}

#portal-left {
	margin-left: -100%;
}

.rtl #portal-left {
	margin-right: -100%;
	margin-left: 0;
}

/*
* top spacing between portal body table and headerbar spacing is usually 10px
*/
#portal-body {
	padding-top: 10px;
	width: 100%;
}

.portal-side {
	text-align: left;
	margin: 5px 5px 5px 5px
}

.rtl .portal-side {
	text-align: right;
}

.portal-side-wrapper {
	border-left: 0 !important;
	width: 100%;
}

/*
* This is needed in order to have the same spacing between blocks
* as we have between the top blocks and the headerbar
*/
#portal-left .forabg, #portal-center .forabg,
#portal-right .forabg, #portal-top .forabg,
#portal-bottom .forabg {
	margin-bottom: 0;
}

#portal-body td {
	vertical-align: top;
}

#portal-body .row .pagination {
	margin: 1px 0 1px 12px;
}

#portal-body #viewpoll {
	margin-left: 0;
	margin-right: 0;
}

#portal-left li, #portal-center li,
#portal-right li, #portal-top li,
#portal-bottom li {
	list-style-type: none;
}

.portal-news-pagination {
	height: 2em;
}

.portal-news-pagination .pagination {
	font-size: 1.1em;
}

/**
* margin spacing as in default prosilver for the forumlist
*/
#portal-forumlist .forabg {
	margin-bottom: 4px;
}

.portal-no-margin {
	margin: 0;
}

.portal-clear {
	clear: both;
}

/* RTL language fixes */
.rtl .portal-navigation ul li a{
	text-align: right;
}

ul.topiclist dt .list-inner {
	margin-right: 28%;
}

ul.topiclist dt {
	margin-right: -28%;
	/* Сдвиг для рождественской шапки: 9px; Обычный сдвиг: 7px*/
    margin-left: 7px;
}

.news-row dt {
	margin-left: 0 !important;
}

ul.responsive-portal-news dd:last-of-type, ul.responsive-portal-announcements dd:last-of-type,
#portal-forumlist ul dd:last-of-type {
	width: 25%;
}

dd.responsive-portal-news:last-of-type, dd.responsive-portal-announcements:last-of-type {
	width: 25%;
}

.rtl ul.topiclist dt .list-inner {
	margin-left: 60%;
}

.rtl ul.topiclist dt {
	margin-left: -60%;
}

.rtl ul.responsive-portal-news dd:last-of-type, ul.responsive-portal-announcements dd:last-of-type,
.rtl #portal-forumlist ul dd:last-of-type {
	width: 25%;
}

.rtl dd.responsive-portal-news:last-of-type, dd.responsive-portal-announcements:last-of-type {
	width: 25%;
}

/* Portal clock
-------------------------------------- */
.portal-clock-wrapper {
	text-align: center;
	min-height: 5em;
	margin: 0 10%;
	/* set a fixed height to get rid of the trembling clock in IE9 */
	height: 50px;
}

.rtl .portal-clock-wrapper {
	/* Arabic clocks are ltr */
	direction: ltr;
}

.portal-clock {
	position: relative;
	width: 100%;
	margin-top: 10px;
	margin-bottom: 10px;
}

.portal-clock-spacer-up {
	content: url("./images/portal/spacer_up.png");
}

.portal-clock-spacer-down {
	content: url("./images/portal/spacer_down.png");
}

.portal-clock * img {
	float: left;
}

.portal-clock-front, .portal-clock-back {
	position: absolute;
	top: 0;
}

.portal-clock-front-upper div {
	height: 21px;
	position: absolute;
	vertical-align: bottom;
	visibility: hidden;
}

.portal-clock-front-lower div {
	height: 20px;
	position: absolute;
	vertical-align: top;
	visibility: hidden;
}

.portal-clock-back-upper div {
	position: absolute;
	vertical-align: bottom;
}

.portal-clock-back-lower div {
	position: absolute;
	vertical-align: top;
}

.portal-clock-back-seconds-up-left, .portal-clock-back-seconds-up-right,
.portal-clock-front-minutes-up-left, .portal-clock-front-minutes-up-right,
.portal-clock-back-minutes-up-left, .portal-clock-back-minutes-up-right,
.portal-clock-front-seconds-up-left, .portal-clock-front-seconds-up-right,
.portal-clock-back-minutes-down-left, .portal-clock-back-minutes-down-right,
.portal-clock-back-seconds-down-left, .portal-clock-back-seconds-down-right,
.portal-clock-front-minutes-down-left, .portal-clock-front-minutes-down-right,
.portal-clock-front-seconds-down-left, .portal-clock-front-seconds-down-right {
	width: 21px;
	height: 21px;
	background-position: 0 0;
	background: url("../../all/theme/images/portal/portal_clock_single.png") no-repeat;
}

/* Minutes start
-------------------------------------- */
.portal-clock-back-minutes-up-left{
	background-position: 0 0;
	margin: 0 0 0 43px;
}

.portal-clock-back-minutes-up-right {
	background-position: 0 -43px;
	margin: 0 0 0 64px;
}

.portal-clock-front-minutes-up-left {
	background-position: 0 0;
	margin: 0 0 0 43px;
}

.portal-clock-front-minutes-up-right {
	background-position: 0 -43px;
	margin: 0 0 0 63px;
}

.portal-clock-back-minutes-down-left{
	background-position: 0 -22px;
	margin: 21px 0 0 43px;
}

.portal-clock-back-minutes-down-right {
	background-position: 0 -65px;
	margin: 21px 0 0 64px;
}

.portal-clock-front-minutes-down-left {
	background-position: 0 -22px;
	margin: 21px 0 0 42px;
}

.portal-clock-front-minutes-down-right {
	background-position: 0 -65px;
	margin: 21px 0 0 63px;
}

/* Seconds start
---------------------------------------- */
.portal-clock-back-seconds-up-left{
	background-position: 0 0;
	margin: 0 0 0 85px;
}

.portal-clock-back-seconds-up-right {
	background-position: 0 -43px;
	margin: 0 0 0 106px;
}

.portal-clock-front-seconds-up-left {
	background-position: 0 0;
	margin: 0 0 0 84px;
}

.portal-clock-front-seconds-up-right {
	background-position: 0 -43px;
	margin: 0 0 0 105px;
}

.portal-clock-back-seconds-down-left{
	background-position: 0 -22px;
	margin: 21px 0 0 85px;
}

.portal-clock-back-seconds-down-right {
	background-position: 0 -65px;
	margin: 21px 0 0 106px;
}

.portal-clock-front-seconds-down-left {
	background-position: 0 -22px;
	margin: 21px 0 0 84px;
}

.portal-clock-front-seconds-down-right {
	background-position: 0 -65px;
	margin: 21px 0 0 105px;
}

/* Hours start
---------------------------------------- */
.portal-clock-back-hours-up, .portal-clock-front-hours-up {
	width: 42px;
	height: 21px;
	background: url("../../all/theme/images/portal/portal_clock_double.png") no-repeat;
	background-position: 0 0;
	vertical-align: bottom;
	display: inline-block;
	margin: 0 0 0 0;
}

.portal-clock-back-hours-down, .portal-clock-front-hours-down {
	width: 42px;
	height: 20px;
	background: url("../../all/theme/images/portal/portal_clock_double.png") no-repeat;
	background-position: 0 -44px;
	vertical-align: top;
	display: inline-block;
	margin: 21px 0 0 0;
}

@media all\0 {
	.portal-clock-back-hours-down, .portal-clock-front-hours-down {
		margin-left: -1px;
	}
}



/* свои */


.menu-items ul {
	font-family: Scada;
	font-weight: 500;
	font-size: 1.1em;
}
.menu-items ul li {
	padding: 2px;
}

.sp-letters {
	margin-top: 10px;
	font-family: Play, Lucida Console, Courier;
	font-size: 14px;
	font-weight: bold;
}

.sp-letter {
	display: inline-block;
	border: 1px solid #A1A1A1;
	padding: 4px 6px;
	border-radius: 5px;
	width: 11px;
	text-align: center;
	cursor: pointer;
}

.sp-letter:hover {
	background-color: #d6d6d6;
	text-decoration: none;
}

.portal-rules {
	font-family: 'Scada';
	font-size: 14px;
	text-align:center;
	padding: 5px 1px 5px 1px;
	display:block; 
	border: 1px solid #F79773;
}

.menu-items i {
	color: #4e4780;
}



.birthday_list .birthday_age {
	text-align: right;
}

.news_topic_title {
	font-family: 'Oswald';
    font-size: 17px;
    font-weight: normal;
    margin: 25px 0 2px -8px;
    padding: 0 0 0 10px;
	height: 30px;
    line-height: 8px;
	text-shadow: 1px 1px 5px #fff;
 /* background: linear-gradient(90deg, rgb(144 152 173 / 34%) 0%, rgba(160,174,177,0) 100%); */
	background-image: linear-gradient(90deg, rgb(144 152 173 / 34%) 0%, rgba(160, 174, 177, 0) 100%);
    background-repeat: no-repeat;
    background-size: 60% 100%;
    background-position: left center;
}

@media (max-width: 800px) {
.news_topic_title {
		width: 100%;
	}
}

@media (max-width: 470px) {
.article-title span {
		display: block;
		margin-left: 0;
	}
}


.news_content {
	background-color: rgba(255, 255, 255, 0.85) !important; 
	padding: 10px 20px;
}

@media (max-width: 700px) {
.news_content {
	background-color: rgba(255, 255, 255, 0.85) !important; 
	padding: 0 5px;
	}
}



/* ImgPosts thumbnail frame in compact Portal News.
   Keep the base white frame local to the portal as well, so the unread
   animation in Cosmic can safely animate only border-color. */
.portal-news-topiclist .imgposts-topic-image-wrap.attach_image {
	border: 2px solid #fff;
	border-radius: 4px;
	box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.75);
	box-sizing: border-box;
}

/* Cosmic compact news topic artwork
----------------------------------------
The Cosmic style renders the status artwork inside a variable-size left slot.
For unread portal-news rows, make the transparent link cover that complete slot.
When ImgPosts supplies a thumbnail Cosmic hides this link and the thumbnail's
own anchor is used instead. */
.portal-news-topiclist dl.row-item[class*="_unread"] > dt > .row-item-link {
	z-index: 5;
	top: 50%;
	left: var(--cosmic-topic-slot-left, 6px);
	width: var(--cosmic-topic-slot-size, 50px);
	height: var(--cosmic-topic-slot-size, 50px);
	margin: 0;
	transform: translateY(-50%);
}

/* SPRU Board3 menus 2026 — scoped redesign for prosilver-derived styles.
   Does not restyle other portal modules or the mobile bottom navigation. */
.b3p-modern-menu,
.b3p-modern-user {
	--b3p-menu-accent: #4e4780;
	--b3p-menu-tint: rgba(78, 71, 128, .075);
	font-family: 'Scada', Arial, sans-serif;
	font-size: 13px;
	line-height: 1.35;
}

.b3p-modern-menu { padding: 1px 0 3px; }
.b3p-modern-menu__section + .b3p-modern-menu__section {
	margin-top: 7px;
	padding-top: 6px;
	border-top: 1px solid rgba(90, 90, 105, .19);
}
.b3p-modern-menu__title {
	margin: 0 0 4px;
	padding: 0 3px;
	font-size: 13px;
	line-height: 1.4;
	font-family: inherit;
	font-weight: 700;
	text-decoration: none;
	color: var(--b3p-menu-accent);
}
.b3p-modern-menu__links {
	display: grid;
	grid-template-columns: minmax(0, var(--b3p-menu-left-width, 60%)) minmax(0, 1fr);
	gap: 0 5px;
}
.b3p-modern-menu__column { min-width: 0; }
@media (max-width: 480px) {
	.b3p-modern-menu__links { grid-template-columns: minmax(0, 1fr); }
}
.b3p-modern-menu__link {
	display: flex;
	align-items: center;
	gap: 8px;
	min-width: 0;
	min-height: 23px;
	box-sizing: border-box;
	padding: 3px 6px;
	border-radius: 6px;
	text-decoration: none !important;
	transition: background-color .15s ease;
}
.b3p-modern-menu__link > i {
	flex: 0 0 17px;
	width: 17px;
	color: var(--b3p-menu-accent);
	text-align: center;
	font-size: 14px;
}
.b3p-modern-menu__link > span { min-width: 0; overflow-wrap: anywhere; }
.b3p-modern-menu__link:hover,
.b3p-modern-menu__link:focus-visible {
	background: var(--b3p-menu-tint);
}
.b3p-modern-menu__alphabet {
	display: flex;
	flex-wrap: wrap;
	gap: 3px;
	margin-top: 5px;
}
.b3p-modern-menu__alphabet > a,
.b3p-modern-menu__alphabet > button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	box-sizing: border-box;
	padding: 0;
	border: 1px solid rgba(90, 90, 105, .24);
	border-radius: 5px;
	background: rgba(255, 255, 255, .38);
	color: inherit;
	font: 600 14px/1 'Play', 'Scada', sans-serif;
	text-decoration: none !important;
	cursor: pointer;
}
.b3p-modern-menu__alphabet > a:hover,
.b3p-modern-menu__alphabet > a:focus-visible,
.b3p-modern-menu__alphabet > button:focus-visible {
	background: var(--b3p-menu-tint);
	border-color: var(--b3p-menu-accent);
}
.b3p-modern-menu__alphabet > .b3p-modern-menu__letter-info {
	opacity: .65;
	border-style: dashed;
}

.b3p-modern-user { padding: 3px 2px 5px; }
.b3p-modern-user__welcome {
	text-align: center;
	font-size: 14px;
	line-height: 1.5;
	margin: 0 0 5px;
}
.b3p-modern-user__welcome a { font-weight: 700; }
.b3p-modern-user__hello {
	/* Do not scale the original animated GIF. */
	width: auto;
	height: auto;
	max-width: none;
	max-height: none;
	vertical-align: middle;
}
.b3p-modern-user__identity {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	gap: 3px;
	min-width: 0;
	padding: 5px 4px 7px;
	margin-bottom: 4px;
	border-bottom: 1px solid rgba(90, 90, 105, .19);
}
.b3p-modern-user__avatar { flex: 0 0 auto; max-width: 100px; }
.b3p-modern-user__avatar a { display: block; line-height: 0; }
.b3p-modern-user__avatar img {
	display: block;
	width: auto;
	max-width: 100px;
	max-height: 100px;
	height: auto;
	padding: 0;
	border-radius: 9px;
	object-fit: cover;
}
.b3p-modern-user__rank { width: 100%; min-width: 0; overflow-wrap: anywhere; font-size: 12px; text-align: center; }
.b3p-modern-user__rank-title { margin: 2px 0 4px; font-weight: 600; }
.b3p-modern-user__rank-image { margin-top: 4px; }
.b3p-modern-user__rank-image img { max-width: min(112px, 100%); height: auto; }
.b3p-modern-user__links { list-style: none; padding: 0; margin: 0; }
.b3p-modern-user__links > li { list-style: none; margin: 0; padding: 0; }
.b3p-modern-user__links > li > a {
	display: flex;
	align-items: center;
	gap: 8px;
	min-height: 23px;
	box-sizing: border-box;
	padding: 2px 7px;
	border-radius: 6px;
	font-weight: 500;
	text-decoration: none !important;
	transition: background-color .15s ease;
}
.b3p-modern-user__links > li > a:hover,
.b3p-modern-user__links > li > a:focus-visible { background: var(--b3p-menu-tint); }
.b3p-modern-user__links > li > a > i {
	flex: 0 0 18px;
	width: 18px;
	text-align: center;
	font-size: 14px;
	color: var(--b3p-menu-accent);
}
.b3p-modern-user__links > li > a > span:nth-child(2) { flex: 1 1 auto; min-width: 0; }
.b3p-modern-user__count {
	flex: 0 0 auto;
	padding: 2px 6px;
	border-radius: 12px;
	background: rgba(90, 90, 105, .11);
	color: inherit;
	font-size: 11px;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
}
.b3p-modern-user__count--active { color: #fff; background: #d31141; }
.b3p-modern-user__separator {
	height: 0;
	margin: 3px 3px !important;
	border-top: 1px solid rgba(90, 90, 105, .19);
}
.b3p-modern-user__links > li > a.b3p-modern-user__logout { opacity: 1; }

@media (prefers-reduced-motion: reduce) {
	.b3p-modern-menu__link, .b3p-modern-user__links > li > a { transition: none; }
}



/* Personal actions are already available in the breadcrumbs / mobile dock. */
@media (max-width: 985px) {
    #portal-body .b3p-user-menu-module {
        display: none !important;
    }
}

/* Featured material: right of portal news, not the narrow right sidebar. */
#portal-bottom .b3p-featured-module { box-sizing: border-box; }
#portal-bottom .b3p-featured-module .b3p-featured-list { padding: 10px 14px; }
#portal-bottom .b3p-featured-entry { padding: 14px 2px 16px; border-bottom: 1px solid rgba(70, 80, 110, .14); min-height: 90px; }
#portal-bottom .b3p-featured-entry:first-child { padding-top: 7px; }
#portal-bottom .b3p-featured-entry:last-child { border-bottom: none; padding-bottom: 4px; }
#portal-bottom .b3p-featured-entry::after { content: ''; display: table; clear: both; }
#portal-bottom .b3p-featured-image { float: right; width: 120px; height: auto; max-width: 38%; margin: 2px 0 9px 14px; border-radius: 7px; }
#portal-bottom .b3p-featured-subtitle { display: block; color: #536179; font: 12px/1.35 Scada, sans-serif; }
#portal-bottom .b3p-featured-title { margin: 0 0 5px; font-family: Oswald, Scada, sans-serif; font-size: 19px; line-height: 1.3; overflow-wrap: anywhere; }
#portal-bottom .b3p-featured-date { display: block; margin: 1px 0 7px; font: 12px/1.4 Scada, sans-serif; color: #64738b; }
#portal-bottom .b3p-featured-description { margin: 5px 0 8px; font: 14px/1.55 Scada, sans-serif; white-space: pre-line; overflow-wrap: anywhere; }
#portal-bottom .b3p-featured-actions { display: flex; flex-wrap: wrap; gap: 6px 14px; margin: 10px 0 0; font: 13px/1.4 Scada, sans-serif; }
#portal-bottom .b3p-featured-actions a { text-decoration: none; font-weight: bold; }
#portal-bottom .b3p-featured-actions a:hover, #portal-bottom .b3p-featured-actions a:focus { text-decoration: underline; }
#portal-bottom .b3p-featured-actions .fa { margin-right: 4px; }
@media (min-width: 1280px) {
    #portal-bottom .b3p-featured-module.news-right { float: right; width: min(500px, 45%); margin-left: 10px; }
}
@media (max-width: 1279px) {
    #portal-bottom .b3p-featured-module.news-right { float: none; display: block; width: 100%; margin-left: 0; }
}
@media (max-width: 500px) {
    #portal-bottom .b3p-featured-image { width: 90px; max-width: 32%; }
    #portal-bottom .b3p-featured-title { font-size: 17px; }
}

/* Module headers: 2x/3x image resources stay crisp at the dimensions set in ACP. */
#portal-body .b3p-module-fa-icon { display: inline-block; vertical-align: middle; text-align: center; font-weight: normal; }
#portal-body .topiclist .header img { vertical-align: middle; object-fit: contain; }


/* Optional Smart Sticky Columns (desktop-only). Styles apply only while JS
 * selects the shorter column; original Board3 float widths are unchanged. */
#portal-columns::after {
    content: '';
    display: block;
    clear: both;
}
@media (min-width: 986px) {
    #portal-columns.b3p-smart-sticky-on .b3p-smart-sticky-target {
        position: sticky;
        top: var(--b3p-smart-sticky-top, 70px);
    }
    /* Center wrapper occupies the full row for Board3's negative-margin float
       layout. Only its visible center content should receive pointer events. */
    #portal-columns.b3p-smart-sticky-on #portal-center-wrapper.b3p-smart-sticky-target {
        pointer-events: none;
    }
    #portal-columns.b3p-smart-sticky-on #portal-center-wrapper.b3p-smart-sticky-target #portal-center {
        pointer-events: auto;
    }
}

/* Keep the Cosmic theme's repeating background visually aligned with
 * Smart Sticky Columns: it scrolls while a selected column moves, and
 * pauses only for the time that column is actually stationary.
 * The JS owns --b3p-wallpaper-y and enables this class only on the portal
 * when the existing Smart Sticky Columns ACP option is enabled. */
html.b3p-wallpaper-sync,
html.b3p-wallpaper-sync body {
    background-position-y: var(--b3p-wallpaper-y, 0px) !important;
}
@media (min-width: 986px) {
    html.b3p-wallpaper-sync,
    html.b3p-wallpaper-sync body {
        background-attachment: fixed !important;
    }
}
@media (max-width: 985px) {
    html.b3p-wallpaper-sync,
    html.b3p-wallpaper-sync body {
        background-attachment: scroll !important;
    }
}
