/* Оператор ТО — в одном стиле с CRM (insurance-calculator-plugin + style.css) */
.ins-to-operator-wrap {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	overflow-x: clip;
}

.ins-to-operator-tabs {
	margin-bottom: 20px;
}

.ins-to-operator-card {
	background: #fff;
	border: 1px solid #cbd5e1;
	border-radius: 10px;
	padding: 22px;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
}

.ins-to-operator-h {
	margin: 0 0 8px;
	font-size: 1.35rem;
	color: #0f172a;
}

.ins-to-operator-muted {
	margin: 0 0 16px;
	font-size: 14px;
	color: #64748b;
	line-height: 1.5;
}

.ins-to-operator-label {
	display: block;
	font-size: 13px;
	font-weight: 600;
	color: #334155;
	margin-bottom: 10px;
}

.ins-to-operator-login .ins-to-operator-pin-row {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: center;
	gap: 10px;
	margin-bottom: 16px;
	max-width: 100%;
}

.ins-to-operator-pin {
	flex: 0 0 auto;
	width: 48px !important;
	max-width: 56px;
	min-width: 44px;
	box-sizing: border-box;
	height: 52px;
	text-align: center;
	font-size: 22px;
	font-weight: 700;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	font-variant-numeric: tabular-nums;
}

.ins-to-operator-pin:focus {
	outline: none;
	border-color: #0c3a43;
	box-shadow: 0 0 0 3px rgba(12, 58, 67, 0.12);
}

.ins-to-operator-error {
	color: #b91c1c;
	font-size: 14px;
	margin: 0 0 12px;
}

.ins-to-operator-btn {
	border-radius: 8px;
	padding: 12px 22px;
	font-size: 15px;
	font-weight: 700;
	cursor: pointer;
	border: 1px solid #cbd5e1;
	background: #fff;
	color: #0f172a;
}

.ins-to-operator-btn--primary {
	background: #0c3a43;
	color: #fff;
	border-color: #0c3a43;
	box-shadow: 0 4px 12px rgba(12, 58, 67, 0.2);
}

.ins-to-operator-btn--primary:hover {
	filter: brightness(1.05);
}

.ins-to-operator-app-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 18px;
	flex-wrap: wrap;
}

.ins-to-operator-app-head .main-tab-btn {
	margin: 0;
}

.ins-to-operator-table {
	width: 100%;
	table-layout: auto;
	font-size: 13px;
}

.ins-to-operator-badge {
	display: inline-block;
	margin-left: 6px;
	padding: 1px 8px;
	font-size: 11px;
	font-weight: 600;
	text-transform: lowercase;
	color: #0c3a43;
	background: #e0f2f3;
	border-radius: 999px;
	vertical-align: middle;
}

.ins-to-operator-add-form-inner {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: flex-start;
	gap: 12px 16px;
	margin-bottom: 10px;
}

.ins-to-operator-add-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
	gap: 12px 14px;
	margin-bottom: 14px;
}

.ins-to-operator-add-form-inner .ins-to-operator-add-grid {
	flex: 1 1 0;
	min-width: min(100%, 240px);
	margin-bottom: 0;
}

.ins-to-operator-field {
	display: block;
	font-size: 12px;
	color: #475569;
}

.ins-to-operator-field span {
	display: block;
	font-weight: 600;
	margin-bottom: 6px;
	color: #334155;
}

.ins-to-operator-field input,
.ins-to-operator-field select {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	padding: 10px 12px;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	font-size: 14px;
}

.ins-to-operator-status-select {
	background: #fff;
	cursor: pointer;
}

.ins-to-operator-cell-status {
	max-width: 160px;
	min-width: 120px;
	vertical-align: middle;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .ins-to-operator-status-inline {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	padding: 6px 8px;
	font-size: 13px;
	border-radius: 6px;
}

.ins-to-operator-date-bar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 12px;
	margin-bottom: 18px;
	padding: 12px 14px;
	background: #f1f5f9;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
}

.ins-to-operator-date-field {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
}

.ins-to-operator-date-field .ins-to-operator-muted {
	margin: 0;
	font-size: 13px;
}

.ins-to-operator-date-field input[type='date'] {
	padding: 8px 12px;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	font-size: 14px;
	font-variant-numeric: tabular-nums;
	background: #fff;
}

.ins-to-operator-btn--icon {
	padding: 10px 14px;
	min-width: 44px;
	font-size: 18px;
	line-height: 1;
}

.ins-to-operator-field--grow {
	flex: 1;
	min-width: 200px;
}

.ins-to-operator-agent-create-row {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 12px;
	margin-bottom: 12px;
}

.ins-to-operator-btn--small {
	padding: 8px 14px;
	font-size: 13px;
}

.ins-to-operator-link-input {
	flex: 1;
	min-width: 0;
	font-size: 12px;
	padding: 8px 10px;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	max-width: 100%;
	box-sizing: border-box;
}

.ins-to-operator-agents-list {
	list-style: none;
	margin: 12px 0 0;
	padding: 0;
}

.ins-to-operator-agents-item {
	margin-bottom: 16px;
	padding-bottom: 14px;
	border-bottom: 1px solid #e2e8f0;
}

.ins-to-operator-agents-item:last-child {
	border-bottom: none;
}

.ins-to-copy-flash {
	margin-left: 8px;
	font-size: 13px;
	color: #15803d;
}

.ins-to-operator-success {
	color: #15803d;
	font-size: 14px;
	margin: 0 0 12px;
}

.ins-to-agent-intro {
	margin: 0 0 16px;
	font-size: 16px;
	color: #0f172a;
}

.ins-to-operator-sts-block {
	margin-bottom: 18px;
	padding: 14px 16px;
	border: 1px dashed #cbd5e1;
	border-radius: 10px;
	background: #f8fafc;
}

.ins-to-operator-sts-block .ins-to-operator-label {
	margin-bottom: 8px;
}

.ins-to-operator-sts-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}

.ins-to-operator-sts-row input[type='file'] {
	max-width: 100%;
	font-size: 13px;
}

.ins-to-operator-sts-hint {
	margin-top: 8px;
	margin-bottom: 0;
}

/* Распознавание СТС — только на телефоне / узком экране */
@media (min-width: 768px) {
	.ins-to-operator-sts-block--mobile-only {
		display: none !important;
	}
}

.ins-to-operator-add-form-inner .ins-to-operator-form-actions {
	margin-top: 0;
	margin-left: auto;
	flex: 0 0 auto;
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	padding-bottom: 2px;
}

.ins-to-operator-form-actions {
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.ins-to-operator-btn--add-record {
	width: auto;
	min-width: 0;
	padding: 10px 20px;
	font-size: 15px;
	font-weight: 600;
	border-radius: 8px;
	box-sizing: border-box;
	box-shadow: 0 2px 8px rgba(12, 58, 67, 0.12);
	white-space: nowrap;
}

/* Журнал ТО: таблица */
.ins-to-operator-wrap .ins-to-operator-table-wrap {
	margin-top: 20px;
	width: 100%;
	max-width: 100%;
	border-radius: 12px;
	border: 0;
	background: #fff;
	box-shadow: 0 2px 10px rgba(15, 23, 42, 0.06);
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table {
	width: 100%;
	min-width: 1180px;
	border-collapse: separate;
	border-spacing: 0;
	table-layout: auto;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table thead th {
	padding: 11px 10px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #ffffff;
	background: #0f4a55;
	border: 0;
	white-space: nowrap;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody td {
	padding: 10px 10px;
	font-size: 13px;
	line-height: 1.35;
	color: #1e293b;
	border: 0;
	vertical-align: middle;
	word-break: break-word;
	max-width: none;
	text-align: left;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table thead th:nth-child(1),
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody td:nth-child(1) {
	min-width: 44px;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table thead th:nth-child(2),
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody td:nth-child(2) {
	min-width: 130px;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody td:first-child,
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table thead th:first-child {
	max-width: none;
	width: 44px;
	text-align: center;
	font-variant-numeric: tabular-nums;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody td:last-child,
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table thead th:last-child {
	max-width: none;
	white-space: nowrap;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table thead th:nth-child(3),
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody td:nth-child(3) {
	min-width: 170px;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table thead th:nth-child(4),
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody td:nth-child(4) {
	min-width: 170px;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table thead th:nth-child(5),
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody td:nth-child(5) {
	min-width: 120px;
	white-space: nowrap;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table thead th:nth-child(6),
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody td:nth-child(6) {
	min-width: 74px;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table thead th:nth-child(7),
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody td:nth-child(7) {
	min-width: 95px;
	white-space: nowrap;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table thead th:nth-child(8),
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody td:nth-child(8),
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table thead th:nth-child(9),
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody td:nth-child(9),
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table thead th:nth-child(10),
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody td:nth-child(10) {
	min-width: 120px;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table thead th:nth-child(11),
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody td:nth-child(11) {
	min-width: 110px;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table thead th:nth-child(2),
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody td:nth-child(2),
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table thead th:nth-child(4),
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody td:nth-child(4),
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table thead th:nth-child(5),
.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody td:nth-child(5) {
	text-align: left;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody tr:nth-child(even) td {
	background: #f3f9fa;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody tr:hover td {
	background: #eaf4f6;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody tr.ins-to-operator-row--done td {
	background: #ecfdf5;
	color: #14532d;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody tr.ins-to-operator-row--done:hover td {
	background: #d1fae5;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody tr.ins-to-operator-row--refusal td {
	background: #fef2f2;
	color: #991b1b;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody tr.ins-to-operator-row--refusal:hover td {
	background: #fee2e2;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table tbody tr:last-child td {
	border-bottom: none;
}

.ins-to-operator-wrap .ins-to-operator-table-wrap .crm-quotes-table.ins-to-operator-table .crm-quotes-empty {
	padding: 28px 16px !important;
	text-align: center;
	color: #64748b;
	font-size: 14px;
	max-width: none !important;
}

.ins-to-operator-plate-open {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 0;
	border: 0;
	background: transparent;
	color: #0b4a57;
	font-weight: 600;
	cursor: pointer;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.ins-to-operator-plate-open:hover {
	color: #0a6679;
}

.ins-to-operator-modal {
	position: fixed;
	inset: 0;
	z-index: 10000;
}

.ins-to-operator-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(15, 23, 42, 0.5);
}

.ins-to-operator-modal__dialog {
	position: relative;
	margin: min(8vh, 48px) auto;
	width: min(720px, calc(100vw - 24px));
	background: #fff;
	border: 1px solid #dbe4ee;
	border-radius: 12px;
	box-shadow: 0 16px 40px rgba(2, 8, 23, 0.24);
	padding: 16px;
}

.ins-to-operator-modal__close {
	position: absolute;
	top: 10px;
	right: 10px;
	width: 32px;
	height: 32px;
	border: 1px solid #cbd5e1;
	border-radius: 999px;
	background: #fff;
	color: #334155;
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
}

.ins-to-operator-modal__title {
	margin: 0 36px 10px 0;
	font-size: 18px;
	color: #0f172a;
}

.ins-to-operator-modal__error {
	margin-bottom: 8px;
}

.ins-to-operator-modal__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px 14px;
}

.ins-to-operator-modal__grid div {
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	background: #f8fafc;
	padding: 10px 12px;
}

.ins-to-operator-modal__grid span {
	display: block;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	color: #64748b;
	margin-bottom: 4px;
}

.ins-to-operator-modal__grid strong {
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: #1e293b;
	word-break: break-word;
}

body.ins-to-operator-modal-open {
	overflow: hidden;
}

@media (max-width: 900px) {
	.ins-to-operator-table {
		min-width: 1180px;
	}
}

@media (max-width: 640px) {
	.ins-to-operator-add-form-inner {
		flex-direction: column;
		align-items: stretch;
	}

	.ins-to-operator-add-form-inner .ins-to-operator-form-actions {
		margin-left: 0;
		justify-content: stretch;
	}

	.ins-to-operator-add-form-inner .ins-to-operator-btn--add-record {
		width: 100%;
		text-align: center;
	}
}

@media (max-width: 768px) {
	.ins-to-operator-pin {
		width: 44px;
		height: 48px;
		font-size: 20px;
	}

	.ins-to-operator-modal__dialog {
		margin-top: 12px;
		padding: 14px;
	}

	.ins-to-operator-modal__grid {
		grid-template-columns: 1fr;
	}
}
