a.active.focus,a.active:focus,a.focus,a:active.focus,a:active:focus,a:focus,button.active.focus,button.active:focus,button.focus,button:active.focus,button:active:focus,button:focus,.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus {
outline: 0!important;
outline-color: transparent!important;
outline-width: 0!important;
outline-style: none!important;
box-shadow: 0 0 0 0 rgba(255,255,255,0)!important;
}
.form-control {
	border-radius:0!important;
}
.form-control:focus {
  border-color: #ddd;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.custom-select:focus {
  border-color: #ddd;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.custom-control-input:focus {
  border-color: #ddd;
  -webkit-box-shadow: none;
  box-shadow: none;
}
*:focus {
    outline-style: none;
    outline-width: 0px !important;
    outline-color: none !important;
}

.close {
	text-shadow:0px 0px 0px #000!important;
}

a {text-decoration: none!important;}

.rounded-lg{
	border-radius:6px;
}

.logo-64 img{
	width:64px;height:64px;
	margin-right:1rem;
}
.logo-48 img{
	width:48px;height:48px;
	margin-right:1rem;
}
.logo-36 img{
	width:36px;height:36px;
	margin-right:0.5rem;
	vertical-align:middle;
}
.logo-24 img{
	width:24px;height:24px;
	margin-right:0.5rem;
}

.accordion button{
	margin-bottom:1px;
}

.menu-title {
	height:77px;
}

.search_result, .renew {
   cursor:pointer;
}
.search_result:hover {
   background:#f5f5f5;
}
.renew:hover {
   opacity:0.5;
}
.searh-light{
	background:#e6ee9c;
}
.bg-itogo{
	background:#abb7ff!important;
}

.paynum{
	cursor:pointer;
}
.paynum:hover{
	background:#f0f0f0;
}
.oked-rest{
	cursor:pointer;
}
.oked-rest:hover{
	background:#e8f5e9;
}
.resp{
	margin-top:10px;
}

.nav-tabs {
    border-bottom: 1px solid #304076;
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
    border-color: #5d73be #5d73be #dee2e6;
}
.nav-tabs .nav-link {
    border: 1px solid transparent;
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
}
.nav-tabs .nav-link.active, .nav-tabs .nav-item.show .nav-link {
    color: #495057;
    background-color: #fff;
    border-color: #304076 #304076 #fff;
}
.tab-pane{
	padding:1rem;
	border:1px solid #304076;
	border-top:0px;
}

.edit-pay, .status-e, .peniadd, .sp_show, .edit_plan, .stavka-edit, .saveic{
	cursor:pointer;
}
.edit-pay:hover, .status-e:hover, .peniadd:hover, .sp_show:hover, .edit_plan:hover, .stavka-edit:hover, .saveic:hover{
	opacity:0.6;
}

.point-this{
	cursor:pointer;
}

.error-mess{
	position:fixed;
	top:50px;
	right:50px;
	z-index:9999;
}

.dsort{
	float:right;
	cursor:pointer;
}
.s-up{
	position:absolute;
	top:-1px;
	right:1px;
}
.s-down{
	position:absolute;
	top:5px;
	right:1px;
}
.s-up:hover, .s-down:hover{
	opacity:0.6;
}
.fa-sort-up, .fa-sort-down{
	font-size:18px!important;
}

.expand-block, .noexpand-block{
	position:absolute;
	top:6px; right:12px;
	cursor:pointer;
}
.expand-block:hover, .noexpand-block:hover{
	opacity:0.6;
}

/* Иконка-подсказка с пояснением расчёта поля (попап по клику) */
.calc-help{
	position:relative;
	display:inline-block;
	cursor:pointer;
}
.calc-help > i{
	color:#1565c0;
}
.calc-help-box{
	display:none;
	position:absolute;
	left:22px;
	top:-8px;
	z-index:1050;
	width:360px;
	max-height:420px;
	overflow-y:auto;
	padding:14px 32px 14px 16px;
	background:#fff;
	border:1px solid #bdbdbd;
	border-radius:6px;
	box-shadow:0 6px 18px rgba(0,0,0,0.18);
	font-size:13px;
	line-height:1.5;
	color:#333;
	white-space:normal;
	text-align:left;
	font-weight:400;
}
.calc-help-box .ch-title,
.calc-help-box .ch-formula,
.calc-help-box .ch-note,
.calc-help-box .ch-list,
.calc-help-box .ch-li{
	display:block;
}
.calc-help-box .ch-title + *,
.calc-help-box .ch-formula + *,
.calc-help-box .ch-note + *,
.calc-help-box .ch-list + *{
	margin-top:8px;
}
.calc-help-box .ch-title{
	font-size:13px;
	font-weight:700;
	color:#1565c0;
	padding-bottom:6px;
	border-bottom:1px solid #e6e6e6;
	margin-bottom:10px;
}
.calc-help-box .ch-formula{
	background:#f5f7fa;
	border-left:3px solid #1565c0;
	padding:6px 10px;
	font-family:Menlo,Consolas,monospace;
	font-size:12px;
	color:#37474f;
	border-radius:0 3px 3px 0;
}
.calc-help-box .ch-note{
	color:#777;
	font-size:12px;
	font-style:italic;
}
.calc-help-box .ch-list{ padding-left:4px; }
.calc-help-box .ch-li{
	position:relative;
	padding-left:14px;
	margin-bottom:4px;
}
.calc-help-box .ch-li:last-child{ margin-bottom:0; }
.calc-help-box .ch-li::before{
	content:"•";
	position:absolute;
	left:2px;
	top:0;
	color:#1565c0;
	font-weight:700;
}
.calc-help-box b{ color:#222; }
.calc-help.open .calc-help-box{
	display:block;
}
.calc-help-close{
	position:absolute;
	top:3px; right:8px;
	cursor:pointer;
	color:#999;
	font-size:16px;
	line-height:1;
}
.calc-help-close:hover{
	color:#e53935;
}

/* Сворачивание бокового меню для полностраничного просмотра */
body.sidebar-collapsed .app-sidebar{
	display:none !important;
}
body.sidebar-collapsed .app-content{
	flex:0 0 100% !important;
	max-width:100% !important;
}
.sidebar-toggle{
	white-space:nowrap;
}

/* История изменений статуса договора */
.status-history-list{
	list-style:none;
	padding-left:0;
	margin:0;
	max-height:320px;
	overflow-y:auto;
}
.status-history-item{
	background:#fff;
	border:1px solid #ececec;
	border-radius:6px;
	padding:8px 10px;
	margin-bottom:8px;
	transition:box-shadow .15s ease, border-color .15s ease;
}
.status-history-item:last-child{
	margin-bottom:0;
}
.status-history-item:hover{
	border-color:#dcdcdc;
	box-shadow:0 1px 4px rgba(0,0,0,.06);
}
.status-history-item .sh-head{
	display:flex;
	align-items:center;
	gap:8px;
	flex-wrap:wrap;
}
.status-history-item .sh-meta{
	font-size:12px;
	color:#8a8a8a;
}
.status-history-item .sh-actions{
	margin-left:auto;
	display:inline-flex;
	gap:4px;
	white-space:nowrap;
}
.status-history-item .sh-btn{
	border:none;
	background:transparent;
	color:#9a9a9a;
	width:26px;
	height:26px;
	border-radius:50%;
	font-size:12px;
	line-height:1;
	cursor:pointer;
	transition:background .15s ease, color .15s ease;
}
.status-history-item .sh-btn:hover{
	background:#f0eefb;
	color:#673ab7;
}
.status-history-item .sh-btn.sh-btn-danger:hover{
	background:#fdeaea;
	color:#d50000;
}
.status-history-item .sh-comment-view{
	font-size:13px;
	margin-top:6px;
	padding:6px 10px;
	background:#f7f7f9;
	border-left:3px solid #d7d2ec;
	border-radius:0 4px 4px 0;
	word-break:break-word;
}
.status-history-item .sh-comment-view .text-muted{
	font-style:italic;
}
.status-history-item .sh-comment-edit-form{
	margin-top:6px;
}
/* Отсрочки платежа внутри записи «Отсрочка»: чип «план → новая дата» с
   отделённой кнопкой удаления (корзинка краснеет при наведении). */
.status-history-item .sh-ots{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:4px;
	margin-top:6px;
}
.sh-ots-chip{
	display:inline-flex;
	align-items:center;
	background:#e8f1fb;
	border:1px solid #c9def5;
	color:#1565c0;
	border-radius:4px;
	font-size:12px;
	overflow:hidden;
}
.sh-ots-chip .sh-ots-dates{
	padding:2px 8px;
}
.sh-ots-chip .ots-del{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	align-self:stretch;
	padding:0 7px;
	border-left:1px solid #c9def5;
	color:#90a4ae;
	cursor:pointer;
	transition:background .15s ease, color .15s ease;
}
.sh-ots-chip .ots-del:hover{
	background:#fdeaea;
	color:#d50000;
}
/* Чипы признаков начисления в истории статусов: «пеня: нет · дни: да» */
.sh-flag-chip{
	display:inline-flex;
	align-items:center;
	padding:2px 8px;
	background:#e8f5e9;
	border:1px solid #c8e6c9;
	color:#2e7d32;
	border-radius:4px;
	font-size:12px;
	white-space:nowrap;
}
.sh-flag-chip.sh-flag-off{
	background:#fdeaea;
	border-color:#f5c6c6;
	color:#c62828;
}
.status-badge{
	display:inline-block;
	padding:3px 8px;
	border-radius:3px;
	font-size:12px;
	line-height:1.2;
	white-space:nowrap;
	background:#f5f5f5;
	border:1px solid #e0e0e0;
	font-weight:500;
}